feat: add features package
This commit is contained in:
BIN
.yarn/cache/@jest-core-npm-28.1.2-d632a1ee2e-dd67cc911c.zip
vendored
Normal file
BIN
.yarn/cache/@jest-core-npm-28.1.2-d632a1ee2e-dd67cc911c.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-environment-npm-28.1.2-5ba92d7c1b-5bffc464e9.zip
vendored
Normal file
BIN
.yarn/cache/@jest-environment-npm-28.1.2-5ba92d7c1b-5bffc464e9.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-expect-npm-28.1.2-c1ba663cb5-ee470cdd3a.zip
vendored
Normal file
BIN
.yarn/cache/@jest-expect-npm-28.1.2-c1ba663cb5-ee470cdd3a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-expect-utils-npm-28.1.1-1823a850d9-46a2ad754b.zip
vendored
Normal file
BIN
.yarn/cache/@jest-expect-utils-npm-28.1.1-1823a850d9-46a2ad754b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-fake-timers-npm-28.1.2-708e436e77-d6e6b1a12f.zip
vendored
Normal file
BIN
.yarn/cache/@jest-fake-timers-npm-28.1.2-708e436e77-d6e6b1a12f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-globals-npm-28.1.2-a3b0bd62de-f07b7d0a2d.zip
vendored
Normal file
BIN
.yarn/cache/@jest-globals-npm-28.1.2-a3b0bd62de-f07b7d0a2d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-reporters-npm-28.1.2-8a0dea0c1e-26aa66e8ea.zip
vendored
Normal file
BIN
.yarn/cache/@jest-reporters-npm-28.1.2-8a0dea0c1e-26aa66e8ea.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-source-map-npm-28.1.2-c3d608514f-b82a5c2e93.zip
vendored
Normal file
BIN
.yarn/cache/@jest-source-map-npm-28.1.2-c3d608514f-b82a5c2e93.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-test-sequencer-npm-28.1.1-d7bbefa803-acfa3b7ff1.zip
vendored
Normal file
BIN
.yarn/cache/@jest-test-sequencer-npm-28.1.1-d7bbefa803-acfa3b7ff1.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@jest-transform-npm-28.1.2-6f3b28178a-cd8d1bdf1a.zip
vendored
Normal file
BIN
.yarn/cache/@jest-transform-npm-28.1.2-6f3b28178a-cd8d1bdf1a.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/@sinonjs-fake-timers-npm-9.1.2-3ff37ab7fb-7d3aef54e1.zip
vendored
Normal file
BIN
.yarn/cache/@sinonjs-fake-timers-npm-9.1.2-3ff37ab7fb-7d3aef54e1.zip
vendored
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
.yarn/cache/@types-jest-npm-28.1.4-0d5921a434-97e22c6003.zip
vendored
Normal file
BIN
.yarn/cache/@types-jest-npm-28.1.4-0d5921a434-97e22c6003.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/babel-jest-npm-28.1.2-9fe49235c4-1aa605ef4d.zip
vendored
Normal file
BIN
.yarn/cache/babel-jest-npm-28.1.2-9fe49235c4-1aa605ef4d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/babel-plugin-jest-hoist-npm-28.1.1-aaeb3ac36a-5fb9ad012e.zip
vendored
Normal file
BIN
.yarn/cache/babel-plugin-jest-hoist-npm-28.1.1-aaeb3ac36a-5fb9ad012e.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/babel-preset-jest-npm-28.1.1-05a1e38dd1-c581a81967.zip
vendored
Normal file
BIN
.yarn/cache/babel-preset-jest-npm-28.1.1-05a1e38dd1-c581a81967.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/expect-npm-28.1.1-0260491458-6e557b681f.zip
vendored
Normal file
BIN
.yarn/cache/expect-npm-28.1.1-0260491458-6e557b681f.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-changed-files-npm-28.0.2-86f0227b65-389d4de4b2.zip
vendored
Normal file
BIN
.yarn/cache/jest-changed-files-npm-28.0.2-86f0227b65-389d4de4b2.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-circus-npm-28.1.2-7f50bea781-c8f2e024e4.zip
vendored
Normal file
BIN
.yarn/cache/jest-circus-npm-28.1.2-7f50bea781-c8f2e024e4.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-cli-npm-28.1.2-cbf6c8906a-527873c257.zip
vendored
Normal file
BIN
.yarn/cache/jest-cli-npm-28.1.2-cbf6c8906a-527873c257.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-config-npm-28.1.2-56df4d8edb-ddc4de7a28.zip
vendored
Normal file
BIN
.yarn/cache/jest-config-npm-28.1.2-56df4d8edb-ddc4de7a28.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-docblock-npm-28.1.1-92269e3ff0-22fca68d98.zip
vendored
Normal file
BIN
.yarn/cache/jest-docblock-npm-28.1.1-92269e3ff0-22fca68d98.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-each-npm-28.1.1-299702462d-91965603f8.zip
vendored
Normal file
BIN
.yarn/cache/jest-each-npm-28.1.1-299702462d-91965603f8.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-environment-node-npm-28.1.2-a3cfa6adac-cee61a3e25.zip
vendored
Normal file
BIN
.yarn/cache/jest-environment-node-npm-28.1.2-a3cfa6adac-cee61a3e25.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-haste-map-npm-28.1.1-184dfbeed0-db31a2a839.zip
vendored
Normal file
BIN
.yarn/cache/jest-haste-map-npm-28.1.1-184dfbeed0-db31a2a839.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-leak-detector-npm-28.1.1-99f9cda79d-379a15ad7b.zip
vendored
Normal file
BIN
.yarn/cache/jest-leak-detector-npm-28.1.1-99f9cda79d-379a15ad7b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-mock-npm-28.1.1-66f9031b26-285716d062.zip
vendored
Normal file
BIN
.yarn/cache/jest-mock-npm-28.1.1-66f9031b26-285716d062.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-npm-28.1.2-0cb80d72d4-8ad37088c4.zip
vendored
Normal file
BIN
.yarn/cache/jest-npm-28.1.2-0cb80d72d4-8ad37088c4.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-resolve-dependencies-npm-28.1.2-3bd416d27e-2f822678b5.zip
vendored
Normal file
BIN
.yarn/cache/jest-resolve-dependencies-npm-28.1.2-3bd416d27e-2f822678b5.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-resolve-npm-28.1.1-5f1937a1f8-cda5c472fe.zip
vendored
Normal file
BIN
.yarn/cache/jest-resolve-npm-28.1.1-5f1937a1f8-cda5c472fe.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-runner-npm-28.1.2-f1340306c4-51e46779e6.zip
vendored
Normal file
BIN
.yarn/cache/jest-runner-npm-28.1.2-f1340306c4-51e46779e6.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-runtime-npm-28.1.2-ae8fb2675f-d9a2f45a7b.zip
vendored
Normal file
BIN
.yarn/cache/jest-runtime-npm-28.1.2-ae8fb2675f-d9a2f45a7b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-snapshot-npm-28.1.2-c457ca7d89-5c33c8b05d.zip
vendored
Normal file
BIN
.yarn/cache/jest-snapshot-npm-28.1.2-c457ca7d89-5c33c8b05d.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/jest-validate-npm-28.1.1-3a8ac7efbd-7bb5427d9b.zip
vendored
Normal file
BIN
.yarn/cache/jest-validate-npm-28.1.1-3a8ac7efbd-7bb5427d9b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/source-map-support-npm-0.5.13-377dfd7321-933550047b.zip
vendored
Normal file
BIN
.yarn/cache/source-map-support-npm-0.5.13-377dfd7321-933550047b.zip
vendored
Normal file
Binary file not shown.
BIN
.yarn/cache/v8-to-istanbul-npm-9.0.1-58bbce7857-a49c34bf0a.zip
vendored
Normal file
BIN
.yarn/cache/v8-to-istanbul-npm-9.0.1-58bbce7857-a49c34bf0a.zip
vendored
Normal file
Binary file not shown.
@@ -27,7 +27,7 @@
|
||||
"devDependencies": {
|
||||
"@standardnotes/deterministic-zip": "^1.2.0",
|
||||
"@standardnotes/eslint-config-extensions": "^1.0.4",
|
||||
"@standardnotes/features": "^1.45.1",
|
||||
"@standardnotes/features": "workspace:*",
|
||||
"copy-webpack-plugin": "^11.0.0",
|
||||
"mini-css-extract-plugin": "^2.6.0",
|
||||
"minimatch": "^5.1.0",
|
||||
|
||||
2
packages/features/.eslintignore
Normal file
2
packages/features/.eslintignore
Normal file
@@ -0,0 +1,2 @@
|
||||
node_modules
|
||||
dist
|
||||
6
packages/features/.eslintrc
Normal file
6
packages/features/.eslintrc
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"extends": "../../.eslintrc",
|
||||
"parserOptions": {
|
||||
"project": "./linter.tsconfig.json"
|
||||
}
|
||||
}
|
||||
680
packages/features/CHANGELOG.md
Normal file
680
packages/features/CHANGELOG.md
Normal file
@@ -0,0 +1,680 @@
|
||||
# Change Log
|
||||
|
||||
All notable changes to this project will be documented in this file.
|
||||
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
||||
|
||||
## [1.47.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.47.0...@standardnotes/features@1.47.1) (2022-07-04)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add missing reflect-metadata package to all packages ([ce3a5bb](https://github.com/standardnotes/snjs/commit/ce3a5bbf3f1d2276ac4abc3eec3c6a44c8c3ba9b))
|
||||
* unit tests running ([9ddc55c](https://github.com/standardnotes/snjs/commit/9ddc55c59c781e2bcc366304a6d0cc88d0e0865d))
|
||||
|
||||
# [1.47.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.46.0...@standardnotes/features@1.47.0) (2022-06-29)
|
||||
|
||||
### Features
|
||||
|
||||
* undeprecate markdown pro editor ([#774](https://github.com/standardnotes/snjs/issues/774)) ([5b0d582](https://github.com/standardnotes/snjs/commit/5b0d5826a7a1e1432c0026fa04dc26b4bfff44d7))
|
||||
|
||||
# [1.46.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.6...@standardnotes/features@1.46.0) (2022-06-27)
|
||||
|
||||
### Features
|
||||
|
||||
* deprecate non-primary editors ([#772](https://github.com/standardnotes/snjs/issues/772)) ([60c8f2a](https://github.com/standardnotes/snjs/commit/60c8f2a6a057ac1a097b077143ed85a7607eba20))
|
||||
|
||||
## [1.45.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.5...@standardnotes/features@1.45.6) (2022-06-27)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.45.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.4...@standardnotes/features@1.45.5) (2022-06-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.45.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.3...@standardnotes/features@1.45.4) (2022-06-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.45.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.2...@standardnotes/features@1.45.3) (2022-06-15)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.45.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.1...@standardnotes/features@1.45.2) (2022-06-10)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.45.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.45.0...@standardnotes/features@1.45.1) (2022-06-09)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* get ExperimentalFeatures identifiers from experimentalFeatures() ([#762](https://github.com/standardnotes/snjs/issues/762)) ([6b2af78](https://github.com/standardnotes/snjs/commit/6b2af783f25260b47211b1eefb8e0f6742bb3b07))
|
||||
|
||||
# [1.45.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.7...@standardnotes/features@1.45.0) (2022-06-09)
|
||||
|
||||
### Features
|
||||
|
||||
* advanced checklist ([#759](https://github.com/standardnotes/snjs/issues/759)) ([600c88a](https://github.com/standardnotes/snjs/commit/600c88a81e5871a91793c2e7ca2aea9f358d839e))
|
||||
|
||||
## [1.44.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.6...@standardnotes/features@1.44.7) (2022-06-03)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* define getters on items used in predicates so keypath lookups are not undefined ([#756](https://github.com/standardnotes/snjs/issues/756)) ([3297077](https://github.com/standardnotes/snjs/commit/32970774897a48fd9a12b329ca204ed6882a47ab))
|
||||
|
||||
## [1.44.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.5...@standardnotes/features@1.44.6) (2022-05-30)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.44.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.4...@standardnotes/features@1.44.5) (2022-05-27)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.44.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.3...@standardnotes/features@1.44.4) (2022-05-24)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.44.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.2...@standardnotes/features@1.44.3) (2022-05-24)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.44.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.1...@standardnotes/features@1.44.2) (2022-05-22)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.44.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.44.0...@standardnotes/features@1.44.1) (2022-05-20)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.44.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.43.2...@standardnotes/features@1.44.0) (2022-05-17)
|
||||
|
||||
### Features
|
||||
|
||||
* remove basic user role and core subscription plan ([#741](https://github.com/standardnotes/snjs/issues/741)) ([7800ecd](https://github.com/standardnotes/snjs/commit/7800ecd119e7bbb5872d48bd7806b5d0f5522c0e))
|
||||
|
||||
## [1.43.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.43.1...@standardnotes/features@1.43.2) (2022-05-17)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.43.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.43.0...@standardnotes/features@1.43.1) (2022-05-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.43.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.42.1...@standardnotes/features@1.43.0) (2022-05-16)
|
||||
|
||||
### Features
|
||||
|
||||
* remove basic user role and core subscription plan names ([304e232](https://github.com/standardnotes/snjs/commit/304e232e738456a93374de869117b5579e8a8f57))
|
||||
|
||||
## [1.42.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.42.0...@standardnotes/features@1.42.1) (2022-05-12)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove "Unlimited history" from Plus plan features list ([#729](https://github.com/standardnotes/snjs/issues/729)) ([a4d5c64](https://github.com/standardnotes/snjs/commit/a4d5c6424753ae22ebb46ab31666396c28fcd77f))
|
||||
|
||||
# [1.42.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.41.0...@standardnotes/features@1.42.0) (2022-05-09)
|
||||
|
||||
### Features
|
||||
|
||||
* plain text feature identifier ([be17b56](https://github.com/standardnotes/snjs/commit/be17b5691b0a4bc45ea9914870dba2093cbb0cbf))
|
||||
|
||||
# [1.41.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.40.2...@standardnotes/features@1.41.0) (2022-05-05)
|
||||
|
||||
### Features
|
||||
|
||||
* availableInSubscriptions in each feature description ([#723](https://github.com/standardnotes/snjs/issues/723)) ([2f0527c](https://github.com/standardnotes/snjs/commit/2f0527c6ff5e9dc70a61fa6d189aad9e60d09ab0))
|
||||
|
||||
## [1.40.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.40.0...@standardnotes/features@1.40.2) (2022-05-04)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.40.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.40.0...@standardnotes/features@1.40.1) (2022-05-04)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.40.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.39.0...@standardnotes/features@1.40.0) (2022-05-03)
|
||||
|
||||
### Features
|
||||
|
||||
* editors => note types ([#722](https://github.com/standardnotes/snjs/issues/722)) ([898f27a](https://github.com/standardnotes/snjs/commit/898f27ab9928a46b33662c0454ec6489884ec276))
|
||||
|
||||
# [1.39.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.38.1...@standardnotes/features@1.39.0) (2022-05-02)
|
||||
|
||||
### Features
|
||||
|
||||
* take Markdown Visual out of beta ([#720](https://github.com/standardnotes/snjs/issues/720)) ([e03acf7](https://github.com/standardnotes/snjs/commit/e03acf700d7a29b8504af548381131f55696726b))
|
||||
|
||||
## [1.38.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.38.0...@standardnotes/features@1.38.1) (2022-04-27)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove deprecated 2FA manager permission and feature ([47df3e4](https://github.com/standardnotes/snjs/commit/47df3e41ea9e5b6b721d47b6319ccd590b6f566c))
|
||||
|
||||
# [1.38.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.9...@standardnotes/features@1.38.0) (2022-04-25)
|
||||
|
||||
### Features
|
||||
|
||||
* rename feature and permissions related to storage tiers ([b4c18b9](https://github.com/standardnotes/snjs/commit/b4c18b91516d771e5c6bf3f510ab09ca621896ea))
|
||||
|
||||
## [1.37.9](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.8...@standardnotes/features@1.37.9) (2022-04-22)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.8](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.7...@standardnotes/features@1.37.8) (2022-04-21)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.6...@standardnotes/features@1.37.7) (2022-04-20)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.5...@standardnotes/features@1.37.6) (2022-04-20)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.4...@standardnotes/features@1.37.5) (2022-04-15)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.3...@standardnotes/features@1.37.4) (2022-04-15)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.2...@standardnotes/features@1.37.3) (2022-04-12)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.1...@standardnotes/features@1.37.2) (2022-04-11)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.37.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.37.0...@standardnotes/features@1.37.1) (2022-04-01)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.37.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.36.3...@standardnotes/features@1.37.0) (2022-04-01)
|
||||
|
||||
### Features
|
||||
|
||||
* content interfaces and model type strictness ([#685](https://github.com/standardnotes/snjs/issues/685)) ([e2450c5](https://github.com/standardnotes/snjs/commit/e2450c59e8309d7080efaa03905b2abc728d9403))
|
||||
|
||||
## [1.36.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.36.2...@standardnotes/features@1.36.3) (2022-03-31)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.36.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.36.1...@standardnotes/features@1.36.2) (2022-03-31)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.36.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.36.0...@standardnotes/features@1.36.1) (2022-03-31)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.36.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.6...@standardnotes/features@1.36.0) (2022-03-30)
|
||||
|
||||
### Features
|
||||
|
||||
* files-beta role ([#678](https://github.com/standardnotes/snjs/issues/678)) ([f1ae62f](https://github.com/standardnotes/snjs/commit/f1ae62ff05e361dc551f1a0d047feabd129d0f76))
|
||||
|
||||
## [1.35.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.5...@standardnotes/features@1.35.6) (2022-03-23)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.35.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.4...@standardnotes/features@1.35.5) (2022-03-23)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.35.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.3...@standardnotes/features@1.35.4) (2022-03-22)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.35.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.2...@standardnotes/features@1.35.3) (2022-03-21)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.35.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.1...@standardnotes/features@1.35.2) (2022-03-21)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.35.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.35.0...@standardnotes/features@1.35.1) (2022-03-18)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.35.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.12...@standardnotes/features@1.35.0) (2022-03-16)
|
||||
|
||||
### Features
|
||||
|
||||
* restricted component permissions ([e90b2d6](https://github.com/standardnotes/snjs/commit/e90b2d6847920e4cd7a281145204ce2f346af88e))
|
||||
|
||||
## [1.34.12](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.10...@standardnotes/features@1.34.12) (2022-03-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.11](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.10...@standardnotes/features@1.34.11) (2022-03-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.10](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.9...@standardnotes/features@1.34.10) (2022-03-11)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.9](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.8...@standardnotes/features@1.34.9) (2022-03-11)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.8](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.7...@standardnotes/features@1.34.8) (2022-03-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* updated markdown visual ([6a2acb7](https://github.com/standardnotes/snjs/commit/6a2acb70961135394a30fe30d2c6f10f2204c1b9))
|
||||
|
||||
## [1.34.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.6...@standardnotes/features@1.34.7) (2022-03-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **temp:** remove markdown visual ([4ba193b](https://github.com/standardnotes/snjs/commit/4ba193b6848c15a94bbdb0e61edb30fea6c02c18))
|
||||
|
||||
## [1.34.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.5...@standardnotes/features@1.34.6) (2022-03-10)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* feature description ([d8a020d](https://github.com/standardnotes/snjs/commit/d8a020d85cae94490cb40be41c041939ec8f0031))
|
||||
|
||||
## [1.34.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.4...@standardnotes/features@1.34.5) (2022-03-09)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.3...@standardnotes/features@1.34.4) (2022-03-08)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.34.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.2...@standardnotes/features@1.34.3) (2022-03-08)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove AccountSwitcher from experimental features list ([#638](https://github.com/standardnotes/snjs/issues/638)) ([3b37107](https://github.com/standardnotes/snjs/commit/3b37107490d6daad17d0fcb89545bb252cd52732))
|
||||
|
||||
## [1.34.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.1...@standardnotes/features@1.34.2) (2022-03-07)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* changes to enable experimental features ([#632](https://github.com/standardnotes/snjs/issues/632)) ([a60d981](https://github.com/standardnotes/snjs/commit/a60d981eda8f0634c0885cfcc0dfce0d02748072))
|
||||
|
||||
## [1.34.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.34.0...@standardnotes/features@1.34.1) (2022-03-04)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.34.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.33.3...@standardnotes/features@1.34.0) (2022-03-01)
|
||||
|
||||
### Features
|
||||
|
||||
* add experimental feature support ([#622](https://github.com/standardnotes/snjs/issues/622)) ([533c920](https://github.com/standardnotes/snjs/commit/533c92074826e496e6240dff2f11410f72064d8a))
|
||||
|
||||
## [1.33.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.33.1...@standardnotes/features@1.33.3) (2022-02-28)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add pseudo change to get lerna to trigger ([41e6817](https://github.com/standardnotes/snjs/commit/41e6817bbf726b0932cdf16f58622328b9e42803))
|
||||
|
||||
## [1.33.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.33.1...@standardnotes/features@1.33.2) (2022-02-28)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add pseudo change to get lerna to trigger ([41e6817](https://github.com/standardnotes/snjs/commit/41e6817bbf726b0932cdf16f58622328b9e42803))
|
||||
|
||||
## [1.33.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.33.0...@standardnotes/features@1.33.1) (2022-02-27)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.33.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.12...@standardnotes/features@1.33.0) (2022-02-25)
|
||||
|
||||
### Features
|
||||
|
||||
* extract core functionalities to separate packages ([#610](https://github.com/standardnotes/snjs/issues/610)) ([801547a](https://github.com/standardnotes/snjs/commit/801547a71614ad51a92fb249eaa184ed46a44aac))
|
||||
|
||||
## [1.32.12](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.11...@standardnotes/features@1.32.12) (2022-02-24)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.11](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.10...@standardnotes/features@1.32.11) (2022-02-22)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* deprecated features should still be packaged ([#606](https://github.com/standardnotes/snjs/issues/606)) ([5176080](https://github.com/standardnotes/snjs/commit/5176080753a5720a0abf434923b1d8103b1261d0))
|
||||
|
||||
## [1.32.10](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.9...@standardnotes/features@1.32.10) (2022-02-22)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.9](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.8...@standardnotes/features@1.32.9) (2022-02-22)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.8](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.7...@standardnotes/features@1.32.8) (2022-02-18)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.6...@standardnotes/features@1.32.7) (2022-02-17)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.5...@standardnotes/features@1.32.6) (2022-02-16)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* return newly added features ([395747f](https://github.com/standardnotes/snjs/commit/395747f6fa768ef9e87d10fb6b50e76f039115fd))
|
||||
|
||||
## [1.32.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.4...@standardnotes/features@1.32.5) (2022-02-16)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add new feature identifiers ([6a2623f](https://github.com/standardnotes/snjs/commit/6a2623f1dadb2d275e0c8b265d39f77c844ba26c))
|
||||
|
||||
## [1.32.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.3...@standardnotes/features@1.32.4) (2022-02-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.2...@standardnotes/features@1.32.3) (2022-02-16)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.1...@standardnotes/features@1.32.2) (2022-02-15)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.32.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.32.0...@standardnotes/features@1.32.1) (2022-02-14)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.32.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.31.0...@standardnotes/features@1.32.0) (2022-02-11)
|
||||
|
||||
### Features
|
||||
|
||||
* deprecated feature identifiers ([8e870f3](https://github.com/standardnotes/snjs/commit/8e870f352b022af768799a13473580d65150ff4b))
|
||||
|
||||
# [1.31.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.30.1...@standardnotes/features@1.31.0) (2022-02-10)
|
||||
|
||||
### Features
|
||||
|
||||
* remove role name and subscription name from auth in favor of common ([14ec74c](https://github.com/standardnotes/snjs/commit/14ec74c3d98febf1117073f32442504cfad428e8))
|
||||
|
||||
## [1.30.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.30.0...@standardnotes/features@1.30.1) (2022-02-10)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.30.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.29.0...@standardnotes/features@1.30.0) (2022-02-09)
|
||||
|
||||
### Features
|
||||
|
||||
* remove filesafe ([1cee4dd](https://github.com/standardnotes/snjs/commit/1cee4dd595003600d89adfd71fedf7b5454880b8))
|
||||
|
||||
# [1.29.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.28.0...@standardnotes/features@1.29.0) (2022-02-08)
|
||||
|
||||
### Features
|
||||
|
||||
* markdown visual editor ([#589](https://github.com/standardnotes/snjs/issues/589)) ([a6c9e74](https://github.com/standardnotes/snjs/commit/a6c9e742acef2c8d027646bf0f7a963b4de712ce))
|
||||
|
||||
# [1.28.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.27.0...@standardnotes/features@1.28.0) (2022-02-07)
|
||||
|
||||
### Features
|
||||
|
||||
* dynamic features based on runtime env ([#590](https://github.com/standardnotes/snjs/issues/590)) ([060861a](https://github.com/standardnotes/snjs/commit/060861a6c5bc179e3e1987c2b63490888e153bbb))
|
||||
|
||||
# [1.27.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.26.1...@standardnotes/features@1.27.0) (2022-02-01)
|
||||
|
||||
### Features
|
||||
|
||||
* enable spellcheck control for editors ([#578](https://github.com/standardnotes/snjs/issues/578)) ([24e7add](https://github.com/standardnotes/snjs/commit/24e7add3b6217703d142509b2dfd2ecfcc3ceb74))
|
||||
|
||||
## [1.26.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.26.0...@standardnotes/features@1.26.1) (2022-01-28)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.26.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.25.0...@standardnotes/features@1.26.0) (2022-01-27)
|
||||
|
||||
### Features
|
||||
|
||||
* add names to some unnamed features ([#575](https://github.com/standardnotes/snjs/issues/575)) ([1e14494](https://github.com/standardnotes/snjs/commit/1e144941ef0cd9ad3fe5dfa80b4700127c13b5d2))
|
||||
|
||||
# [1.25.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.7...@standardnotes/features@1.25.0) (2022-01-19)
|
||||
|
||||
### Features
|
||||
|
||||
* onPresyncSave ([0e5f451](https://github.com/standardnotes/snjs/commit/0e5f451e85cfd7cb58ff1f0a87425e4dd43f6030))
|
||||
|
||||
## [1.24.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.6...@standardnotes/features@1.24.7) (2022-01-19)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* bump editors ([9e109b1](https://github.com/standardnotes/snjs/commit/9e109b1a29a3767f8fd3126bab0ccfcf4a2487a4))
|
||||
|
||||
## [1.24.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.5...@standardnotes/features@1.24.6) (2022-01-19)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.24.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.4...@standardnotes/features@1.24.5) (2022-01-19)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.24.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.3...@standardnotes/features@1.24.4) (2022-01-18)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.24.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.2...@standardnotes/features@1.24.3) (2022-01-17)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.24.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.1...@standardnotes/features@1.24.2) (2022-01-17)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.24.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.24.0...@standardnotes/features@1.24.1) (2022-01-17)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.24.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.23.1...@standardnotes/features@1.24.0) (2022-01-15)
|
||||
|
||||
### Features
|
||||
|
||||
* remove server extension type ([#552](https://github.com/standardnotes/snjs/issues/552)) ([aa542f3](https://github.com/standardnotes/snjs/commit/aa542f3124c60fa81a0b271030b3c35415c54a62))
|
||||
|
||||
## [1.23.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.23.0...@standardnotes/features@1.23.1) (2022-01-15)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.23.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.22.0...@standardnotes/features@1.23.0) (2022-01-14)
|
||||
|
||||
### Features
|
||||
|
||||
* markdown pro, bold editor ([0bc5add](https://github.com/standardnotes/snjs/commit/0bc5addabc7033149d207d1140f9c5e1b7dc7fb6))
|
||||
|
||||
# [1.22.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.21.0...@standardnotes/features@1.22.0) (2022-01-14)
|
||||
|
||||
### Features
|
||||
|
||||
* plus editor 1.6.0 ([6bdf5a7](https://github.com/standardnotes/snjs/commit/6bdf5a7519559f75d72016a1f4e6f715e55d437a))
|
||||
|
||||
# [1.21.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.8...@standardnotes/features@1.21.0) (2022-01-14)
|
||||
|
||||
### Features
|
||||
|
||||
* spellcheck control per note ([#557](https://github.com/standardnotes/snjs/issues/557)) ([76cc637](https://github.com/standardnotes/snjs/commit/76cc63781e3568bbb48b44001ab51644af0985b3))
|
||||
|
||||
## [1.20.8](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.7...@standardnotes/features@1.20.8) (2022-01-14)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* cross-package dependencies and content type imports ([#556](https://github.com/standardnotes/snjs/issues/556)) ([26ba1e0](https://github.com/standardnotes/snjs/commit/26ba1e0c38e7e0ae572996125150a4c3d27f1c0a))
|
||||
|
||||
## [1.20.7](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.6...@standardnotes/features@1.20.7) (2022-01-12)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.20.6](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.5...@standardnotes/features@1.20.6) (2022-01-10)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.20.5](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.4...@standardnotes/features@1.20.5) (2022-01-05)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* filesafe index path ([7cdfe46](https://github.com/standardnotes/snjs/commit/7cdfe46bc74b6671b1e26972363d6f3d0048d29a))
|
||||
|
||||
## [1.20.4](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.3...@standardnotes/features@1.20.4) (2022-01-03)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
## [1.20.3](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.2...@standardnotes/features@1.20.3) (2021-12-30)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* component versions ([cb7407a](https://github.com/standardnotes/snjs/commit/cb7407a7002516f17974c6fcd693738c53c6293c))
|
||||
|
||||
## [1.20.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.1...@standardnotes/features@1.20.2) (2021-12-30)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* missing code editor vendor dir ([1b9cedd](https://github.com/standardnotes/snjs/commit/1b9cedde303d4334d0d816c2e650513bb17b8b49))
|
||||
|
||||
## [1.20.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.20.0...@standardnotes/features@1.20.1) (2021-12-30)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* linter errors in features package ([#534](https://github.com/standardnotes/snjs/issues/534)) ([640012e](https://github.com/standardnotes/snjs/commit/640012e2aa0d956b9a7ffd92a1435e9bd072229f))
|
||||
|
||||
# [1.20.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.19.1...@standardnotes/features@1.20.0) (2021-12-29)
|
||||
|
||||
### Features
|
||||
|
||||
* **components:** add deterministic zipping ([66d0c61](https://github.com/standardnotes/snjs/commit/66d0c61c966d5c8a8bfa33a6069acf3c24407842))
|
||||
|
||||
## [1.19.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.19.0...@standardnotes/features@1.19.1) (2021-12-29)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.19.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.18.2...@standardnotes/features@1.19.0) (2021-12-29)
|
||||
|
||||
### Features
|
||||
|
||||
* new components package ([95dd5aa](https://github.com/standardnotes/snjs/commit/95dd5aab0c2124192554be3f20f14ace62d9c46b))
|
||||
|
||||
## [1.18.2](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.18.1...@standardnotes/features@1.18.2) (2021-12-29)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* correct gitignore paths ([cefc0cf](https://github.com/standardnotes/snjs/commit/cefc0cfcf98e3e5378e055b8c46931b53b23195e))
|
||||
* include dist in static components ([d17ce0f](https://github.com/standardnotes/snjs/commit/d17ce0f67045c6e4c97bf4577709aa58794e72e6))
|
||||
|
||||
## [1.18.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.18.0...@standardnotes/features@1.18.1) (2021-12-29)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* include components cp in build script ([4733ec9](https://github.com/standardnotes/snjs/commit/4733ec9ece77d867280fabe20c63ba827d4834b7))
|
||||
|
||||
# [1.18.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.16.0...@standardnotes/features@1.18.0) (2021-12-29)
|
||||
|
||||
### Features
|
||||
|
||||
* native components ([#525](https://github.com/standardnotes/snjs/issues/525)) ([ca7f8e8](https://github.com/standardnotes/snjs/commit/ca7f8e876bccdaff60daf2cdee3d3b2020954e53))
|
||||
|
||||
# [1.16.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.15.1...@standardnotes/features@1.16.0) (2021-12-29)
|
||||
|
||||
### Features
|
||||
|
||||
* add smart tags as a feature / premium option ([#526](https://github.com/standardnotes/snjs/issues/526)) ([02cd04c](https://github.com/standardnotes/snjs/commit/02cd04c8b144c3c6a5aa51ff24d746c39afb1b57))
|
||||
|
||||
## [1.15.1](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.15.0...@standardnotes/features@1.15.1) (2021-12-27)
|
||||
|
||||
**Note:** Version bump only for package @standardnotes/features
|
||||
|
||||
# [1.15.0](https://github.com/standardnotes/snjs/compare/@standardnotes/features@1.14.0...@standardnotes/features@1.15.0) (2021-12-27)
|
||||
|
||||
### Features
|
||||
|
||||
* Remove theme:no-distraction permission ([#515](https://github.com/standardnotes/snjs/issues/515)) ([e8031fe](https://github.com/standardnotes/snjs/commit/e8031fe5a8f68add24de922b4f171ec69affa286))
|
||||
|
||||
# 1.14.0 (2021-12-23)
|
||||
|
||||
### Features
|
||||
|
||||
* rename email backup setting to email backup frequency ([25e7b46](https://github.com/standardnotes/snjs/commit/25e7b4620834711ac7f513ae893898c5eab1af53))
|
||||
|
||||
## 1.13.3 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* lock package versions ([8aa2ce6](https://github.com/standardnotes/snjs/commit/8aa2ce676b57598ab72840adf851869d8e769022))
|
||||
|
||||
## 1.13.2 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add publishing from package version by lerna ([80433d0](https://github.com/standardnotes/snjs/commit/80433d044f258095753482b8322d73aba3d9a9e4))
|
||||
|
||||
## 1.13.1 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove the ammend commit from lerna versioning ([f0400d9](https://github.com/standardnotes/snjs/commit/f0400d9a2f5a04eaece2e4c16da71166a2ddb251))
|
||||
|
||||
# 1.13.0 (2021-12-23)
|
||||
|
||||
### Features
|
||||
|
||||
* add one drive backup frequency setting ([#522](https://github.com/standardnotes/snjs/issues/522)) ([c27827f](https://github.com/standardnotes/snjs/commit/c27827f8c7969dd32511c9c75122ece372132c83))
|
||||
|
||||
## 1.12.4 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* remove running tests upon deployment - ensured on PR status checks ([#523](https://github.com/standardnotes/snjs/issues/523)) ([5c795d1](https://github.com/standardnotes/snjs/commit/5c795d17b583d02955773576384e622c3ef7f418))
|
||||
|
||||
## 1.12.3 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* pr template ([#518](https://github.com/standardnotes/snjs/issues/518)) ([b445bb6](https://github.com/standardnotes/snjs/commit/b445bb64841217ae27c2514887629235be95d2a3))
|
||||
|
||||
## 1.12.2 (2021-12-23)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* checkout with personal access token ([773c1ef](https://github.com/standardnotes/snjs/commit/773c1ef91c4452ad411e928342060dcb59428e3c))
|
||||
|
||||
## 1.12.1 (2021-12-22)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* gpg signing with CI StandardNotes user ([d72f61c](https://github.com/standardnotes/snjs/commit/d72f61c23cd15b31d37340cc756d16526634b9ee))
|
||||
|
||||
# 1.12.0 (2021-12-22)
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* add "Markdown Math" to features and permissions list, also add missing fields for CloudLink ([#389](https://github.com/standardnotes/snjs/issues/389)) ([66b1392](https://github.com/standardnotes/snjs/commit/66b13922b573ac81fc822cec8861126193e11de4))
|
||||
* add new props to features type ([#458](https://github.com/standardnotes/snjs/issues/458)) ([7a3e911](https://github.com/standardnotes/snjs/commit/7a3e9114414646a564a4de0879d68a801686e34f))
|
||||
* export feature identifier ([fc55d5c](https://github.com/standardnotes/snjs/commit/fc55d5cba9218548f2effdbb3d1456d4539398ad))
|
||||
* make borderColor snake-cased in features list ([#413](https://github.com/standardnotes/snjs/issues/413)) ([d96237c](https://github.com/standardnotes/snjs/commit/d96237c81288aa35d3f1e7757f0a2c4143a5fe29))
|
||||
* make features package independent of auth ([#371](https://github.com/standardnotes/snjs/issues/371)) ([cfb9e7d](https://github.com/standardnotes/snjs/commit/cfb9e7d5820f5fbb40f9aa253cd4f1a60049ca9d))
|
||||
* make remaining camel-cased feature keys to be snake-cased ([#416](https://github.com/standardnotes/snjs/issues/416)) ([98fe4c8](https://github.com/standardnotes/snjs/commit/98fe4c82e6d8da8d2922d01b984e2bd15d5a34db))
|
||||
* missing exports for permission model ([044744b](https://github.com/standardnotes/snjs/commit/044744bbf61ad4f294896cb2fd80e310ef025c01))
|
||||
* replace permissions with features in auth token ([#373](https://github.com/standardnotes/snjs/issues/373)) ([739c956](https://github.com/standardnotes/snjs/commit/739c95604bd119a893d0d43dd2b35794cb5cb770))
|
||||
* two factor auth feature id ([98720b8](https://github.com/standardnotes/snjs/commit/98720b83e93b383b703d008a66828ad250a2e50c))
|
||||
* versioning and package dependencies ([#509](https://github.com/standardnotes/snjs/issues/509)) ([fe1df94](https://github.com/standardnotes/snjs/commit/fe1df94eff3e90bcf9ba0cf45bdc44ac49204c71))
|
||||
|
||||
### Features
|
||||
|
||||
* add deprecation_message to feature description ([19113db](https://github.com/standardnotes/snjs/commit/19113db0213962b04b9d53f4ddd03377a1ad653f))
|
||||
* add feature identifier to features ([05d4951](https://github.com/standardnotes/snjs/commit/05d49511f744d5ba0b130780aeb26760bda8e62b))
|
||||
* add features data ([#369](https://github.com/standardnotes/snjs/issues/369)) ([1094bea](https://github.com/standardnotes/snjs/commit/1094beabeed272db6f91332523b8a521de41f170))
|
||||
* Add Focus Mode feature ([#487](https://github.com/standardnotes/snjs/issues/487)) ([7f22590](https://github.com/standardnotes/snjs/commit/7f2259003e150db83f0182c9878493ce775360cc))
|
||||
* add missing features ([693048b](https://github.com/standardnotes/snjs/commit/693048bccfce57df7b88f8f87c1e3ccbe34fd93a))
|
||||
* add role name to features and refactor package structure ([#481](https://github.com/standardnotes/snjs/issues/481)) ([3651629](https://github.com/standardnotes/snjs/commit/365162948127653d2f199f9f8660123edfe24682))
|
||||
* editor note and file types ([#456](https://github.com/standardnotes/snjs/issues/456)) ([8b9d264](https://github.com/standardnotes/snjs/commit/8b9d264f465227d5ca846969b1a1885382b583ad))
|
||||
* features instead of permissions ([#385](https://github.com/standardnotes/snjs/issues/385)) ([b53e967](https://github.com/standardnotes/snjs/commit/b53e967297bc472ed11aed79af79d0ae5b36d101))
|
||||
* map only some features to items ([#404](https://github.com/standardnotes/snjs/issues/404)) ([7f521ef](https://github.com/standardnotes/snjs/commit/7f521efe621d3f2128881aed8a31bf7bd2399a74))
|
||||
* Remove "No Distraction" as it's replaced by Focused Writing ([#506](https://github.com/standardnotes/snjs/issues/506)) ([527e676](https://github.com/standardnotes/snjs/commit/527e67673652721ebc947c752815c12007f8d263))
|
||||
* remove ContentType from features in favor of common ([#402](https://github.com/standardnotes/snjs/issues/402)) ([ba0ac62](https://github.com/standardnotes/snjs/commit/ba0ac62fd2631541cd0aa615e9163af1b59fd824))
|
||||
* upgrade node engine versions to latest active LTS ([#462](https://github.com/standardnotes/snjs/issues/462)) ([686fc15](https://github.com/standardnotes/snjs/commit/686fc15030d302b474ebb7ef1cd4dcc48ec42359))
|
||||
|
||||
### Reverts
|
||||
|
||||
* Revert "refactor: make features depend on snjs" ([c0dfdc1](https://github.com/standardnotes/snjs/commit/c0dfdc110de5b73967fb9b3a3d93ba4cf872d24f))
|
||||
11
packages/features/jest.config.js
Normal file
11
packages/features/jest.config.js
Normal file
@@ -0,0 +1,11 @@
|
||||
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||
const base = require('../../node_modules/@standardnotes/config/src/jest.json');
|
||||
|
||||
module.exports = {
|
||||
...base,
|
||||
globals: {
|
||||
'ts-jest': {
|
||||
tsconfig: 'tsconfig.json',
|
||||
},
|
||||
}
|
||||
};
|
||||
4
packages/features/linter.tsconfig.json
Normal file
4
packages/features/linter.tsconfig.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"exclude": ["dist"]
|
||||
}
|
||||
39
packages/features/package.json
Normal file
39
packages/features/package.json
Normal file
@@ -0,0 +1,39 @@
|
||||
{
|
||||
"name": "@standardnotes/features",
|
||||
"version": "1.47.1",
|
||||
"engines": {
|
||||
"node": ">=16.0.0 <17.0.0"
|
||||
},
|
||||
"description": "Features SDK for Standard Notes projects",
|
||||
"main": "dist/index.js",
|
||||
"author": "Standard Notes",
|
||||
"types": "dist/index.d.ts",
|
||||
"files": [
|
||||
"dist"
|
||||
],
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
},
|
||||
"license": "AGPL-3.0-or-later",
|
||||
"scripts": {
|
||||
"clean": "rm -fr dist",
|
||||
"prestart": "yarn clean",
|
||||
"start": "tsc -p tsconfig.json --watch",
|
||||
"prebuild": "yarn clean",
|
||||
"build": "tsc -p tsconfig.json",
|
||||
"lint": "eslint . --ext .ts",
|
||||
"test:unit": "jest"
|
||||
},
|
||||
"dependencies": {
|
||||
"@standardnotes/auth": "^3.19.4",
|
||||
"@standardnotes/common": "^1.23.1",
|
||||
"reflect-metadata": "^0.1.13"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/jest": "^28.1.4",
|
||||
"@typescript-eslint/eslint-plugin": "^5.30.0",
|
||||
"eslint-plugin-prettier": "^4.2.1",
|
||||
"jest": "^28.1.2",
|
||||
"ts-jest": "^28.0.5"
|
||||
}
|
||||
}
|
||||
25
packages/features/src/Domain/Component/ComponentAction.ts
Normal file
25
packages/features/src/Domain/Component/ComponentAction.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
export enum ComponentAction {
|
||||
SetSize = 'set-size',
|
||||
StreamItems = 'stream-items',
|
||||
StreamContextItem = 'stream-context-item',
|
||||
SaveItems = 'save-items',
|
||||
SelectItem = 'select-item',
|
||||
AssociateItem = 'associate-item',
|
||||
DeassociateItem = 'deassociate-item',
|
||||
ClearSelection = 'clear-selection',
|
||||
CreateItem = 'create-item',
|
||||
CreateItems = 'create-items',
|
||||
DeleteItems = 'delete-items',
|
||||
SetComponentData = 'set-component-data',
|
||||
ToggleActivateComponent = 'toggle-activate-component',
|
||||
RequestPermissions = 'request-permissions',
|
||||
PresentConflictResolution = 'present-conflict-resolution',
|
||||
DuplicateItem = 'duplicate-item',
|
||||
ComponentRegistered = 'component-registered',
|
||||
ActivateThemes = 'themes',
|
||||
Reply = 'reply',
|
||||
ThemesActivated = 'themes-activated',
|
||||
KeyDown = 'key-down',
|
||||
KeyUp = 'key-up',
|
||||
Click = 'click',
|
||||
}
|
||||
5
packages/features/src/Domain/Component/ComponentArea.ts
Normal file
5
packages/features/src/Domain/Component/ComponentArea.ts
Normal file
@@ -0,0 +1,5 @@
|
||||
export enum ComponentArea {
|
||||
Editor = 'editor-editor',
|
||||
Themes = 'themes',
|
||||
EditorStack = 'editor-stack',
|
||||
}
|
||||
4
packages/features/src/Domain/Component/ComponentFlag.ts
Normal file
4
packages/features/src/Domain/Component/ComponentFlag.ts
Normal file
@@ -0,0 +1,4 @@
|
||||
export enum ComponentFlag {
|
||||
New = 'New',
|
||||
Deprecated = 'Deprecated',
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
import { ContentType } from '@standardnotes/common'
|
||||
import { ComponentAction } from './ComponentAction'
|
||||
|
||||
export type ComponentPermission = {
|
||||
name: ComponentAction
|
||||
content_types?: ContentType[]
|
||||
}
|
||||
8
packages/features/src/Domain/Component/NoteType.ts
Normal file
8
packages/features/src/Domain/Component/NoteType.ts
Normal file
@@ -0,0 +1,8 @@
|
||||
export enum NoteType {
|
||||
Authentication = 'authentication',
|
||||
Code = 'code',
|
||||
Markdown = 'markdown',
|
||||
RichText = 'rich-text',
|
||||
Spreadsheet = 'spreadsheet',
|
||||
Task = 'task',
|
||||
}
|
||||
7
packages/features/src/Domain/Component/ThemeDockIcon.ts
Normal file
7
packages/features/src/Domain/Component/ThemeDockIcon.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
export type ThemeDockIcon = {
|
||||
type: 'svg' | 'circle'
|
||||
background_color: string
|
||||
foreground_color: string
|
||||
border_color: string
|
||||
source?: string
|
||||
}
|
||||
78
packages/features/src/Domain/Feature/FeatureDescription.ts
Normal file
78
packages/features/src/Domain/Feature/FeatureDescription.ts
Normal file
@@ -0,0 +1,78 @@
|
||||
import { ComponentPermission } from '../Component/ComponentPermission'
|
||||
import { ContentType, RoleName, SubscriptionName } from '@standardnotes/common'
|
||||
import { ComponentArea } from '../Component/ComponentArea'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from './FeatureIdentifier'
|
||||
import { ComponentFlag } from '../Component/ComponentFlag'
|
||||
import { NoteType } from '../Component/NoteType'
|
||||
import { ThemeDockIcon } from '../Component/ThemeDockIcon'
|
||||
|
||||
type RoleFields = {
|
||||
/** Server populated */
|
||||
role_name?: RoleName
|
||||
|
||||
/** Statically populated. Non-influencing; used as a reference by other static consumers (such as email service) */
|
||||
availableInSubscriptions: SubscriptionName[]
|
||||
}
|
||||
|
||||
export type BaseFeatureDescription = RoleFields & {
|
||||
deletion_warning?: string
|
||||
deprecated?: boolean
|
||||
deprecation_message?: string
|
||||
description?: string
|
||||
expires_at?: number
|
||||
|
||||
flags?: ComponentFlag[]
|
||||
identifier: FeatureIdentifier
|
||||
marketing_url?: string
|
||||
name?: string
|
||||
no_expire?: boolean
|
||||
no_mobile?: boolean
|
||||
thumbnail_url?: string
|
||||
permission_name: PermissionName
|
||||
}
|
||||
|
||||
export type ServerFeatureDescription = RoleFields & {
|
||||
name?: string
|
||||
identifier: FeatureIdentifier
|
||||
permission_name: PermissionName
|
||||
}
|
||||
|
||||
export type ClientFeatureDescription = RoleFields & {
|
||||
identifier: FeatureIdentifier
|
||||
permission_name: PermissionName
|
||||
description: string
|
||||
name: string
|
||||
}
|
||||
|
||||
export type ComponentFeatureDescription = BaseFeatureDescription & {
|
||||
/** The relative path of the index.html file or the main css file if theme, within the component folder itself */
|
||||
index_path: string
|
||||
content_type: ContentType
|
||||
area: ComponentArea
|
||||
}
|
||||
|
||||
export type ThirdPartyFeatureDescription = ComponentFeatureDescription & {
|
||||
url: string
|
||||
}
|
||||
|
||||
export type IframeComponentFeatureDescription = ComponentFeatureDescription & {
|
||||
component_permissions: ComponentPermission[]
|
||||
}
|
||||
|
||||
export type EditorFeatureDescription = IframeComponentFeatureDescription & {
|
||||
file_type: 'txt' | 'html' | 'md' | 'json'
|
||||
/** Whether an editor is interchangable with another editor that has the same file_type */
|
||||
interchangeable: boolean
|
||||
note_type: NoteType
|
||||
spellcheckControl?: boolean
|
||||
}
|
||||
|
||||
export type ThemeFeatureDescription = ComponentFeatureDescription & {
|
||||
/** Some themes can be layered on top of other themes */
|
||||
layerable?: boolean
|
||||
dock_icon?: ThemeDockIcon
|
||||
}
|
||||
|
||||
export type FeatureDescription = BaseFeatureDescription &
|
||||
Partial<ComponentFeatureDescription & EditorFeatureDescription & ThemeFeatureDescription>
|
||||
53
packages/features/src/Domain/Feature/FeatureIdentifier.ts
Normal file
53
packages/features/src/Domain/Feature/FeatureIdentifier.ts
Normal file
@@ -0,0 +1,53 @@
|
||||
export enum FeatureIdentifier {
|
||||
AccountSwitcher = 'com.standardnotes.account-switcher',
|
||||
CloudLink = 'org.standardnotes.cloudlink',
|
||||
DailyDropboxBackup = 'org.standardnotes.daily-dropbox-backup',
|
||||
DailyEmailBackup = 'org.standardnotes.daily-email-backup',
|
||||
DailyGDriveBackup = 'org.standardnotes.daily-gdrive-backup',
|
||||
DailyOneDriveBackup = 'org.standardnotes.daily-onedrive-backup',
|
||||
Files = 'org.standardnotes.files',
|
||||
FilesBeta = 'org.standardnotes.files-beta',
|
||||
FilesLowStorageTier = 'org.standardnotes.files-low-storage-tier',
|
||||
FilesMaximumStorageTier = 'org.standardnotes.files-max-storage-tier',
|
||||
ListedCustomDomain = 'org.standardnotes.listed-custom-domain',
|
||||
NoteHistory30Days = 'org.standardnotes.note-history-30',
|
||||
NoteHistory365Days = 'org.standardnotes.note-history-365',
|
||||
NoteHistoryUnlimited = 'org.standardnotes.note-history-unlimited',
|
||||
SignInAlerts = 'com.standardnotes.sign-in-alerts',
|
||||
SmartFilters = 'org.standardnotes.smart-filters',
|
||||
TagNesting = 'org.standardnotes.tag-nesting',
|
||||
TwoFactorAuth = 'org.standardnotes.two-factor-auth',
|
||||
|
||||
AutobiographyTheme = 'org.standardnotes.theme-autobiography',
|
||||
DynamicTheme = 'org.standardnotes.theme-dynamic',
|
||||
FocusedTheme = 'org.standardnotes.theme-focus',
|
||||
FocusMode = 'org.standardnotes.focus-mode',
|
||||
FuturaTheme = 'org.standardnotes.theme-futura',
|
||||
MidnightTheme = 'org.standardnotes.theme-midnight',
|
||||
SolarizedDarkTheme = 'org.standardnotes.theme-solarized-dark',
|
||||
TitaniumTheme = 'org.standardnotes.theme-titanium',
|
||||
|
||||
AdvancedChecklist = 'org.standardnotes.advanced-checklist',
|
||||
CodeEditor = 'org.standardnotes.code-editor',
|
||||
MarkdownProEditor = 'org.standardnotes.advanced-markdown-editor',
|
||||
MarkdownVisualEditor = 'org.standardnotes.markdown-visual-editor',
|
||||
PlainTextEditor = 'org.standardnotes.plain-text-editor',
|
||||
PlusEditor = 'org.standardnotes.plus-editor',
|
||||
SheetsEditor = 'org.standardnotes.standard-sheets',
|
||||
TaskEditor = 'org.standardnotes.simple-task-editor',
|
||||
TokenVaultEditor = 'org.standardnotes.token-vault',
|
||||
|
||||
DeprecatedBoldEditor = 'org.standardnotes.bold-editor',
|
||||
DeprecatedMarkdownBasicEditor = 'org.standardnotes.simple-markdown-editor',
|
||||
DeprecatedMarkdownMathEditor = 'org.standardnotes.fancy-markdown-editor',
|
||||
DeprecatedMarkdownMinimistEditor = 'org.standardnotes.minimal-markdown-editor',
|
||||
DeprecatedFoldersComponent = 'org.standardnotes.folders',
|
||||
DeprecatedFileSafe = 'org.standardnotes.file-safe',
|
||||
}
|
||||
|
||||
/**
|
||||
* Identifier for standalone filesafe instance offered as legacy installable via extensions-server
|
||||
*/
|
||||
export const LegacyFileSafeIdentifier = 'org.standardnotes.legacy.file-safe'
|
||||
|
||||
export const ExperimentalFeatures = [FeatureIdentifier.AdvancedChecklist]
|
||||
19
packages/features/src/Domain/Feature/Features.spec.ts
Normal file
19
packages/features/src/Domain/Feature/Features.spec.ts
Normal file
@@ -0,0 +1,19 @@
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
import { GetFeatures, GetFeaturesForSubscription } from './Features'
|
||||
|
||||
describe('features', () => {
|
||||
it('all features should have availableInSubscriptions populated', () => {
|
||||
const features = GetFeatures()
|
||||
|
||||
for (const feature of features) {
|
||||
expect(feature.availableInSubscriptions.length).toBeGreaterThan(0)
|
||||
}
|
||||
})
|
||||
it('gets features for plus plan', () => {
|
||||
const features = GetFeaturesForSubscription(SubscriptionName.PlusPlan)
|
||||
|
||||
for (const feature of features) {
|
||||
expect(feature.availableInSubscriptions.includes(SubscriptionName.PlusPlan))
|
||||
}
|
||||
})
|
||||
})
|
||||
28
packages/features/src/Domain/Feature/Features.ts
Normal file
28
packages/features/src/Domain/Feature/Features.ts
Normal file
@@ -0,0 +1,28 @@
|
||||
import { FeatureDescription } from './FeatureDescription'
|
||||
import { FeatureIdentifier } from './FeatureIdentifier'
|
||||
import { editors } from '../Lists/Editors'
|
||||
import { themes } from '../Lists/Themes'
|
||||
import { serverFeatures } from '../Lists/ServerFeatures'
|
||||
import { clientFeatures } from '../Lists/ClientFeatures'
|
||||
import { GetDeprecatedFeatures } from '../Lists/DeprecatedFeatures'
|
||||
import { experimentalFeatures } from '../Lists/ExperimentalFeatures'
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
|
||||
export function GetFeatures(): FeatureDescription[] {
|
||||
return [
|
||||
...themes(),
|
||||
...editors(),
|
||||
...serverFeatures(),
|
||||
...clientFeatures(),
|
||||
...experimentalFeatures(),
|
||||
...GetDeprecatedFeatures(),
|
||||
]
|
||||
}
|
||||
|
||||
export function GetFeaturesForSubscription(subscription: SubscriptionName): FeatureDescription[] {
|
||||
return GetFeatures().filter((feature) => feature.availableInSubscriptions.includes(subscription))
|
||||
}
|
||||
|
||||
export function FindNativeFeature(identifier: FeatureIdentifier): FeatureDescription | undefined {
|
||||
return GetFeatures().find((f) => f.identifier === identifier)
|
||||
}
|
||||
58
packages/features/src/Domain/Lists/ClientFeatures.ts
Normal file
58
packages/features/src/Domain/Lists/ClientFeatures.ts
Normal file
@@ -0,0 +1,58 @@
|
||||
import { ClientFeatureDescription } from '../Feature/FeatureDescription'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
|
||||
export function clientFeatures(): ClientFeatureDescription[] {
|
||||
return [
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Tag Nesting',
|
||||
identifier: FeatureIdentifier.TagNesting,
|
||||
permission_name: PermissionName.TagNesting,
|
||||
description: 'Organize your tags into folders.',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Smart Filters',
|
||||
identifier: FeatureIdentifier.SmartFilters,
|
||||
permission_name: PermissionName.SmartFilters,
|
||||
description: 'Create smart filters for viewing notes matching specific criteria.',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Encrypted files (coming soon)',
|
||||
identifier: FeatureIdentifier.Files,
|
||||
permission_name: PermissionName.Files,
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Encrypted files beta',
|
||||
identifier: FeatureIdentifier.FilesBeta,
|
||||
permission_name: PermissionName.FilesBeta,
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Focus Mode',
|
||||
identifier: FeatureIdentifier.FocusMode,
|
||||
permission_name: PermissionName.FocusMode,
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Listed Custom Domain',
|
||||
identifier: FeatureIdentifier.ListedCustomDomain,
|
||||
permission_name: PermissionName.ListedCustomDomain,
|
||||
description: '',
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Multiple accounts',
|
||||
identifier: FeatureIdentifier.AccountSwitcher,
|
||||
permission_name: PermissionName.AccountSwitcher,
|
||||
description: '',
|
||||
},
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
import { GetDeprecatedFeatures } from './DeprecatedFeatures'
|
||||
|
||||
it('all deprecated features should have deprecated flag true', async () => {
|
||||
for (const feature of GetDeprecatedFeatures()) {
|
||||
expect(feature.deprecated).toEqual(true)
|
||||
}
|
||||
})
|
||||
110
packages/features/src/Domain/Lists/DeprecatedFeatures.ts
Normal file
110
packages/features/src/Domain/Lists/DeprecatedFeatures.ts
Normal file
@@ -0,0 +1,110 @@
|
||||
import { ContentType, SubscriptionName } from '@standardnotes/common'
|
||||
import {
|
||||
EditorFeatureDescription,
|
||||
IframeComponentFeatureDescription,
|
||||
FeatureDescription,
|
||||
} from '../Feature/FeatureDescription'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { NoteType } from '../Component/NoteType'
|
||||
import { FillEditorComponentDefaults } from './Utilities/FillEditorComponentDefaults'
|
||||
import { ComponentAction } from '../Component/ComponentAction'
|
||||
import { ComponentArea } from '../Component/ComponentArea'
|
||||
|
||||
export function GetDeprecatedFeatures(): FeatureDescription[] {
|
||||
const bold: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Alternative Rich Text',
|
||||
identifier: FeatureIdentifier.DeprecatedBoldEditor,
|
||||
note_type: NoteType.RichText,
|
||||
file_type: 'html',
|
||||
component_permissions: [
|
||||
{
|
||||
name: ComponentAction.StreamContextItem,
|
||||
content_types: [ContentType.Note],
|
||||
},
|
||||
{
|
||||
name: ComponentAction.StreamItems,
|
||||
content_types: [
|
||||
ContentType.FilesafeCredentials,
|
||||
ContentType.FilesafeFileMetadata,
|
||||
ContentType.FilesafeIntegration,
|
||||
],
|
||||
},
|
||||
],
|
||||
spellcheckControl: true,
|
||||
deprecated: true,
|
||||
permission_name: PermissionName.BoldEditor,
|
||||
description: 'A simple and peaceful rich editor that helps you write and think clearly.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/bold.jpg',
|
||||
})
|
||||
|
||||
const markdownBasic: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Basic Markdown',
|
||||
identifier: FeatureIdentifier.DeprecatedMarkdownBasicEditor,
|
||||
note_type: NoteType.Markdown,
|
||||
spellcheckControl: true,
|
||||
file_type: 'md',
|
||||
deprecated: true,
|
||||
permission_name: PermissionName.MarkdownBasicEditor,
|
||||
description: 'A Markdown editor with dynamic split-pane preview.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/simple-markdown.jpg',
|
||||
})
|
||||
|
||||
const markdownMinimist: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Minimal Markdown',
|
||||
identifier: FeatureIdentifier.DeprecatedMarkdownMinimistEditor,
|
||||
note_type: NoteType.Markdown,
|
||||
file_type: 'md',
|
||||
index_path: 'index.html',
|
||||
permission_name: PermissionName.MarkdownMinimistEditor,
|
||||
spellcheckControl: true,
|
||||
deprecated: true,
|
||||
description: 'A minimal Markdown editor with live rendering and in-text search via Ctrl/Cmd + F',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/min-markdown.jpg',
|
||||
})
|
||||
|
||||
const markdownMath: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Markdown with Math',
|
||||
identifier: FeatureIdentifier.DeprecatedMarkdownMathEditor,
|
||||
spellcheckControl: true,
|
||||
permission_name: PermissionName.MarkdownMathEditor,
|
||||
note_type: NoteType.Markdown,
|
||||
file_type: 'md',
|
||||
deprecated: true,
|
||||
index_path: 'index.html',
|
||||
description: 'A beautiful split-pane Markdown editor with synced-scroll, LaTeX support, and colorful syntax.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/fancy-markdown.jpg',
|
||||
})
|
||||
|
||||
const filesafe: IframeComponentFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'FileSafe',
|
||||
identifier: FeatureIdentifier.DeprecatedFileSafe,
|
||||
component_permissions: [
|
||||
{
|
||||
name: ComponentAction.StreamContextItem,
|
||||
content_types: [ContentType.Note],
|
||||
},
|
||||
{
|
||||
name: ComponentAction.StreamItems,
|
||||
content_types: [
|
||||
ContentType.FilesafeCredentials,
|
||||
ContentType.FilesafeFileMetadata,
|
||||
ContentType.FilesafeIntegration,
|
||||
],
|
||||
},
|
||||
],
|
||||
permission_name: PermissionName.ComponentFilesafe,
|
||||
area: ComponentArea.EditorStack,
|
||||
deprecated: true,
|
||||
description:
|
||||
'Encrypted attachments for your notes using your Dropbox, Google Drive, or WebDAV server. Limited to 50MB per file.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/FileSafe-banner.png',
|
||||
})
|
||||
|
||||
return [bold, markdownBasic, markdownMinimist, markdownMath, filesafe]
|
||||
}
|
||||
105
packages/features/src/Domain/Lists/Editors.ts
Normal file
105
packages/features/src/Domain/Lists/Editors.ts
Normal file
@@ -0,0 +1,105 @@
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
import { EditorFeatureDescription } from '../Feature/FeatureDescription'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { NoteType } from '../Component/NoteType'
|
||||
import { FillEditorComponentDefaults } from './Utilities/FillEditorComponentDefaults'
|
||||
|
||||
export function editors(): EditorFeatureDescription[] {
|
||||
const code: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Code',
|
||||
spellcheckControl: true,
|
||||
identifier: FeatureIdentifier.CodeEditor,
|
||||
permission_name: PermissionName.CodeEditor,
|
||||
note_type: NoteType.Code,
|
||||
file_type: 'txt',
|
||||
interchangeable: true,
|
||||
index_path: 'index.html',
|
||||
description:
|
||||
'Syntax highlighting and convenient keyboard shortcuts for over 120 programming' +
|
||||
' languages. Ideal for code snippets and procedures.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/code.jpg',
|
||||
})
|
||||
|
||||
const plus: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Rich Text',
|
||||
note_type: NoteType.RichText,
|
||||
file_type: 'html',
|
||||
identifier: FeatureIdentifier.PlusEditor,
|
||||
permission_name: PermissionName.PlusEditor,
|
||||
spellcheckControl: true,
|
||||
description:
|
||||
'From highlighting to custom font sizes and colors, to tables and lists, this editor is perfect for crafting any document.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/plus-editor.jpg',
|
||||
})
|
||||
|
||||
const markdown: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Markdown',
|
||||
identifier: FeatureIdentifier.MarkdownProEditor,
|
||||
note_type: NoteType.Markdown,
|
||||
file_type: 'md',
|
||||
permission_name: PermissionName.MarkdownProEditor,
|
||||
spellcheckControl: true,
|
||||
description:
|
||||
'A fully featured Markdown editor that supports live preview, a styling toolbar, and split pane support.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/adv-markdown.jpg',
|
||||
})
|
||||
|
||||
const markdownAlt: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Markdown Alternative',
|
||||
identifier: FeatureIdentifier.MarkdownVisualEditor,
|
||||
note_type: NoteType.Markdown,
|
||||
file_type: 'md',
|
||||
permission_name: PermissionName.MarkdownVisualEditor,
|
||||
spellcheckControl: true,
|
||||
description:
|
||||
'A WYSIWYG-style Markdown editor that renders Markdown in preview-mode while you type without displaying any syntax.',
|
||||
index_path: 'build/index.html',
|
||||
})
|
||||
|
||||
const task: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Checklist',
|
||||
identifier: FeatureIdentifier.TaskEditor,
|
||||
note_type: NoteType.Task,
|
||||
spellcheckControl: true,
|
||||
file_type: 'md',
|
||||
interchangeable: false,
|
||||
permission_name: PermissionName.TaskEditor,
|
||||
description:
|
||||
'A great way to manage short-term and long-term to-do"s. You can mark tasks as completed, change their order, and edit the text naturally in place.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/task-editor.jpg',
|
||||
})
|
||||
|
||||
const tokenvault: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Authenticator',
|
||||
note_type: NoteType.Authentication,
|
||||
file_type: 'json',
|
||||
interchangeable: false,
|
||||
identifier: FeatureIdentifier.TokenVaultEditor,
|
||||
permission_name: PermissionName.TokenVaultEditor,
|
||||
description:
|
||||
'Encrypt and protect your 2FA secrets for all your internet accounts. Authenticator handles your 2FA secrets so that you never lose them again, or have to start over when you get a new device.',
|
||||
thumbnail_url: 'https://standard-notes.s3.amazonaws.com/screenshots/models/editors/token-vault.png',
|
||||
})
|
||||
|
||||
const spreadsheets: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Spreadsheet',
|
||||
identifier: FeatureIdentifier.SheetsEditor,
|
||||
note_type: NoteType.Spreadsheet,
|
||||
file_type: 'json',
|
||||
interchangeable: false,
|
||||
permission_name: PermissionName.SheetsEditor,
|
||||
description:
|
||||
'A powerful spreadsheet editor with formatting and formula support. Not recommended for large data sets, as encryption of such data may decrease editor performance.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/editors/spreadsheets.png',
|
||||
})
|
||||
|
||||
return [code, plus, markdown, markdownAlt, task, tokenvault, spreadsheets]
|
||||
}
|
||||
23
packages/features/src/Domain/Lists/ExperimentalFeatures.ts
Normal file
23
packages/features/src/Domain/Lists/ExperimentalFeatures.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
import { NoteType } from '../Component/NoteType'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { EditorFeatureDescription, FeatureDescription } from '../Feature/FeatureDescription'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { FillEditorComponentDefaults } from './Utilities/FillEditorComponentDefaults'
|
||||
|
||||
export function experimentalFeatures(): FeatureDescription[] {
|
||||
const advancedChecklist: EditorFeatureDescription = FillEditorComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Advanced Checklist [Alpha]',
|
||||
identifier: FeatureIdentifier.AdvancedChecklist,
|
||||
note_type: NoteType.Task,
|
||||
spellcheckControl: true,
|
||||
file_type: 'json',
|
||||
interchangeable: false,
|
||||
permission_name: PermissionName.AdvancedChecklist,
|
||||
description: 'A task editor with grouping functionality.',
|
||||
index_path: 'build/index.html',
|
||||
})
|
||||
|
||||
return [advancedChecklist]
|
||||
}
|
||||
64
packages/features/src/Domain/Lists/ServerFeatures.ts
Normal file
64
packages/features/src/Domain/Lists/ServerFeatures.ts
Normal file
@@ -0,0 +1,64 @@
|
||||
import { ServerFeatureDescription } from '../Feature/FeatureDescription'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
|
||||
export function serverFeatures(): ServerFeatureDescription[] {
|
||||
return [
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Two factor authentication',
|
||||
identifier: FeatureIdentifier.TwoFactorAuth,
|
||||
permission_name: PermissionName.TwoFactorAuth,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.ProPlan],
|
||||
name: 'Unlimited note history',
|
||||
identifier: FeatureIdentifier.NoteHistoryUnlimited,
|
||||
permission_name: PermissionName.NoteHistoryUnlimited,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan],
|
||||
name: '365 days note history',
|
||||
identifier: FeatureIdentifier.NoteHistory365Days,
|
||||
permission_name: PermissionName.NoteHistory365Days,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Email backups',
|
||||
identifier: FeatureIdentifier.DailyEmailBackup,
|
||||
permission_name: PermissionName.DailyEmailBackup,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Sign-in email alerts',
|
||||
identifier: FeatureIdentifier.SignInAlerts,
|
||||
permission_name: PermissionName.SignInAlerts,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
identifier: FeatureIdentifier.DailyDropboxBackup,
|
||||
permission_name: PermissionName.DailyDropboxBackup,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
identifier: FeatureIdentifier.DailyGDriveBackup,
|
||||
permission_name: PermissionName.DailyGDriveBackup,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
identifier: FeatureIdentifier.DailyOneDriveBackup,
|
||||
permission_name: PermissionName.DailyOneDriveBackup,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.ProPlan],
|
||||
identifier: FeatureIdentifier.FilesMaximumStorageTier,
|
||||
permission_name: PermissionName.FilesMaximumStorageTier,
|
||||
},
|
||||
{
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan],
|
||||
identifier: FeatureIdentifier.FilesLowStorageTier,
|
||||
permission_name: PermissionName.FilesLowStorageTier,
|
||||
},
|
||||
]
|
||||
}
|
||||
109
packages/features/src/Domain/Lists/Themes.ts
Normal file
109
packages/features/src/Domain/Lists/Themes.ts
Normal file
@@ -0,0 +1,109 @@
|
||||
import { ThemeFeatureDescription } from '../Feature/FeatureDescription'
|
||||
import { PermissionName } from '../Permission/PermissionName'
|
||||
import { FeatureIdentifier } from '../Feature/FeatureIdentifier'
|
||||
import { FillThemeComponentDefaults } from './Utilities/FillThemeComponentDefaults'
|
||||
import { SubscriptionName } from '@standardnotes/common'
|
||||
|
||||
export function themes(): ThemeFeatureDescription[] {
|
||||
const midnight: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Midnight',
|
||||
identifier: FeatureIdentifier.MidnightTheme,
|
||||
permission_name: PermissionName.MidnightTheme,
|
||||
description: 'Elegant utilitarianism.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/midnight-with-mobile.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#086DD6',
|
||||
foreground_color: '#ffffff',
|
||||
border_color: '#086DD6',
|
||||
},
|
||||
})
|
||||
|
||||
const futura: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Futura',
|
||||
identifier: FeatureIdentifier.FuturaTheme,
|
||||
permission_name: PermissionName.FuturaTheme,
|
||||
description: 'Calm and relaxed. Take some time off.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/futura-with-mobile.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#fca429',
|
||||
foreground_color: '#ffffff',
|
||||
border_color: '#fca429',
|
||||
},
|
||||
})
|
||||
|
||||
const solarizedDark: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Solarized Dark',
|
||||
identifier: FeatureIdentifier.SolarizedDarkTheme,
|
||||
permission_name: PermissionName.SolarizedDarkTheme,
|
||||
description: 'The perfect theme for any time.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/solarized-dark.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#2AA198',
|
||||
foreground_color: '#ffffff',
|
||||
border_color: '#2AA198',
|
||||
},
|
||||
})
|
||||
|
||||
const autobiography: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Autobiography',
|
||||
identifier: FeatureIdentifier.AutobiographyTheme,
|
||||
permission_name: PermissionName.AutobiographyTheme,
|
||||
description: 'A theme for writers and readers.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/autobiography.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#9D7441',
|
||||
foreground_color: '#ECE4DB',
|
||||
border_color: '#9D7441',
|
||||
},
|
||||
})
|
||||
|
||||
const focus: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Focus',
|
||||
identifier: FeatureIdentifier.FocusedTheme,
|
||||
permission_name: PermissionName.FocusedTheme,
|
||||
description: 'For when you need to go in.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/focus-with-mobile.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#a464c2',
|
||||
foreground_color: '#ffffff',
|
||||
border_color: '#a464c2',
|
||||
},
|
||||
})
|
||||
|
||||
const titanium: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Titanium',
|
||||
identifier: FeatureIdentifier.TitaniumTheme,
|
||||
permission_name: PermissionName.TitaniumTheme,
|
||||
description: 'Light on the eyes, heavy on the spirit.',
|
||||
thumbnail_url: 'https://s3.amazonaws.com/standard-notes/screenshots/models/themes/titanium-with-mobile.jpg',
|
||||
dock_icon: {
|
||||
type: 'circle',
|
||||
background_color: '#6e2b9e',
|
||||
foreground_color: '#ffffff',
|
||||
border_color: '#6e2b9e',
|
||||
},
|
||||
})
|
||||
|
||||
const dynamic: ThemeFeatureDescription = FillThemeComponentDefaults({
|
||||
availableInSubscriptions: [SubscriptionName.PlusPlan, SubscriptionName.ProPlan],
|
||||
name: 'Dynamic Panels',
|
||||
identifier: FeatureIdentifier.DynamicTheme,
|
||||
permission_name: PermissionName.ThemeDynamic,
|
||||
layerable: true,
|
||||
no_mobile: true,
|
||||
description: 'A smart theme that minimizes the tags and notes panels when they are not in use.',
|
||||
})
|
||||
|
||||
return [midnight, futura, solarizedDark, autobiography, focus, titanium, dynamic]
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
import { ComponentAction } from '../../Component/ComponentAction'
|
||||
import { ContentType } from '@standardnotes/common'
|
||||
import { EditorFeatureDescription } from '../../Feature/FeatureDescription'
|
||||
import { ComponentArea } from '../../Component/ComponentArea'
|
||||
|
||||
export type RequiredEditorFields = Pick<EditorFeatureDescription, 'availableInSubscriptions'>
|
||||
|
||||
export function FillEditorComponentDefaults(
|
||||
component: Partial<EditorFeatureDescription> & RequiredEditorFields,
|
||||
): EditorFeatureDescription {
|
||||
if (!component.index_path) {
|
||||
component.index_path = 'dist/index.html'
|
||||
}
|
||||
|
||||
if (!component.component_permissions) {
|
||||
component.component_permissions = [
|
||||
{
|
||||
name: ComponentAction.StreamContextItem,
|
||||
content_types: [ContentType.Note],
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
component.content_type = ContentType.Component
|
||||
if (!component.area) {
|
||||
component.area = ComponentArea.Editor
|
||||
}
|
||||
|
||||
if (component.interchangeable == undefined) {
|
||||
component.interchangeable = true
|
||||
}
|
||||
|
||||
return component as EditorFeatureDescription
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
import { ContentType } from '@standardnotes/common'
|
||||
import { ThemeFeatureDescription } from '../../Feature/FeatureDescription'
|
||||
import { ComponentArea } from '../../Component/ComponentArea'
|
||||
|
||||
type RequiredThemeFields = Pick<ThemeFeatureDescription, 'availableInSubscriptions'>
|
||||
|
||||
export function FillThemeComponentDefaults(
|
||||
theme: Partial<ThemeFeatureDescription> & RequiredThemeFields,
|
||||
): ThemeFeatureDescription {
|
||||
if (!theme.index_path) {
|
||||
theme.index_path = 'dist/dist.css'
|
||||
}
|
||||
|
||||
theme.content_type = ContentType.Theme
|
||||
|
||||
if (!theme.area) {
|
||||
theme.area = ComponentArea.Themes
|
||||
}
|
||||
|
||||
return theme as ThemeFeatureDescription
|
||||
}
|
||||
8
packages/features/src/Domain/Permission/Permission.ts
Normal file
8
packages/features/src/Domain/Permission/Permission.ts
Normal file
@@ -0,0 +1,8 @@
|
||||
import { Uuid } from '@standardnotes/common'
|
||||
|
||||
import { PermissionName } from './PermissionName'
|
||||
|
||||
export type Permission = {
|
||||
uuid: Uuid
|
||||
name: PermissionName
|
||||
}
|
||||
42
packages/features/src/Domain/Permission/PermissionName.ts
Normal file
42
packages/features/src/Domain/Permission/PermissionName.ts
Normal file
@@ -0,0 +1,42 @@
|
||||
export enum PermissionName {
|
||||
AccountSwitcher = 'app:account-switcher',
|
||||
AdvancedChecklist = 'editor:advanced-checklist',
|
||||
AutobiographyTheme = 'theme:autobiography',
|
||||
BoldEditor = 'editor:bold',
|
||||
CloudLink = 'component:cloud-link',
|
||||
CodeEditor = 'editor:code-editor',
|
||||
ComponentFilesafe = 'component:filesafe',
|
||||
ComponentFolders = 'component:folders',
|
||||
DailyDropboxBackup = 'server:daily-dropbox-backup',
|
||||
DailyEmailBackup = 'server:daily-email-backup',
|
||||
DailyGDriveBackup = 'server:daily-gdrive-backup',
|
||||
DailyOneDriveBackup = 'server:daily-onedrive-backup',
|
||||
FilesBeta = 'app:files-beta',
|
||||
Files = 'app:files',
|
||||
FilesMaximumStorageTier = 'server:files-max-storage-tier',
|
||||
FilesLowStorageTier = 'server:files-low-storage-tier',
|
||||
FocusedTheme = 'theme:focused',
|
||||
FocusMode = 'app:focus-mode',
|
||||
FuturaTheme = 'theme:futura',
|
||||
ListedCustomDomain = 'listed:custom-domain',
|
||||
MarkdownBasicEditor = 'editor:markdown-basic',
|
||||
MarkdownMathEditor = 'editor:markdown-math',
|
||||
MarkdownMinimistEditor = 'editor:markdown-minimist',
|
||||
MarkdownProEditor = 'editor:markdown-pro',
|
||||
MarkdownVisualEditor = 'editor:markdown-visual',
|
||||
MidnightTheme = 'theme:midnight',
|
||||
NoteHistory30Days = 'server:note-history-30-days',
|
||||
NoteHistory365Days = 'server:note-history-365-days',
|
||||
NoteHistoryUnlimited = 'server:note-history-unlimited',
|
||||
PlusEditor = 'editor:plus',
|
||||
SheetsEditor = 'editor:sheets',
|
||||
SignInAlerts = 'server:sign-in-alerts',
|
||||
SmartFilters = 'app:smart-filters',
|
||||
SolarizedDarkTheme = 'theme:solarized-dark',
|
||||
TagNesting = 'app:tag-nesting',
|
||||
TaskEditor = 'editor:task-editor',
|
||||
ThemeDynamic = 'theme:dynamic',
|
||||
TitaniumTheme = 'theme:titanium',
|
||||
TokenVaultEditor = 'editor:token-vault',
|
||||
TwoFactorAuth = 'server:two-factor-auth',
|
||||
}
|
||||
13
packages/features/src/Domain/index.ts
Normal file
13
packages/features/src/Domain/index.ts
Normal file
@@ -0,0 +1,13 @@
|
||||
export * from './Feature/FeatureDescription'
|
||||
export * from './Feature/FeatureIdentifier'
|
||||
export * from './Feature/Features'
|
||||
|
||||
export * from './Permission/Permission'
|
||||
export * from './Permission/PermissionName'
|
||||
|
||||
export * from './Component/ComponentAction'
|
||||
export * from './Component/ComponentArea'
|
||||
export * from './Component/ComponentFlag'
|
||||
export * from './Component/ComponentPermission'
|
||||
export * from './Component/NoteType'
|
||||
export * from './Component/ThemeDockIcon'
|
||||
1
packages/features/src/index.ts
Normal file
1
packages/features/src/index.ts
Normal file
@@ -0,0 +1 @@
|
||||
export * from './Domain'
|
||||
13
packages/features/tsconfig.json
Normal file
13
packages/features/tsconfig.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"extends": "../../node_modules/@standardnotes/config/src/tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"skipLibCheck": true,
|
||||
"rootDir": "./src",
|
||||
"outDir": "./dist",
|
||||
},
|
||||
"include": [
|
||||
"src/**/*"
|
||||
],
|
||||
"references": [],
|
||||
"exclude": ["**/*.spec.ts", "dist", "node_modules"]
|
||||
}
|
||||
656
yarn.lock
656
yarn.lock
@@ -287,7 +287,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@babel/core@npm:^7.1.0, @babel/core@npm:^7.1.6, @babel/core@npm:^7.11.1, @babel/core@npm:^7.12.10, @babel/core@npm:^7.12.16, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.10, @babel/core@npm:^7.13.13, @babel/core@npm:^7.13.14, @babel/core@npm:^7.13.8, @babel/core@npm:^7.14.0, @babel/core@npm:^7.14.6, @babel/core@npm:^7.15.5, @babel/core@npm:^7.16.0, @babel/core@npm:^7.17.10, @babel/core@npm:^7.17.9, @babel/core@npm:^7.18.2, @babel/core@npm:^7.18.5, @babel/core@npm:^7.7.0, @babel/core@npm:^7.7.2, @babel/core@npm:^7.7.7, @babel/core@npm:^7.8.0":
|
||||
"@babel/core@npm:^7.1.0, @babel/core@npm:^7.1.6, @babel/core@npm:^7.11.1, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.10, @babel/core@npm:^7.12.16, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.10, @babel/core@npm:^7.13.13, @babel/core@npm:^7.13.14, @babel/core@npm:^7.13.8, @babel/core@npm:^7.14.0, @babel/core@npm:^7.14.6, @babel/core@npm:^7.15.5, @babel/core@npm:^7.16.0, @babel/core@npm:^7.17.10, @babel/core@npm:^7.17.9, @babel/core@npm:^7.18.2, @babel/core@npm:^7.18.5, @babel/core@npm:^7.7.0, @babel/core@npm:^7.7.2, @babel/core@npm:^7.7.7, @babel/core@npm:^7.8.0":
|
||||
version: 7.18.6
|
||||
resolution: "@babel/core@npm:7.18.6"
|
||||
dependencies:
|
||||
@@ -3653,6 +3653,48 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/core@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/core@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/console": ^28.1.1
|
||||
"@jest/reporters": ^28.1.2
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/transform": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
ansi-escapes: ^4.2.1
|
||||
chalk: ^4.0.0
|
||||
ci-info: ^3.2.0
|
||||
exit: ^0.1.2
|
||||
graceful-fs: ^4.2.9
|
||||
jest-changed-files: ^28.0.2
|
||||
jest-config: ^28.1.2
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-resolve: ^28.1.1
|
||||
jest-resolve-dependencies: ^28.1.2
|
||||
jest-runner: ^28.1.2
|
||||
jest-runtime: ^28.1.2
|
||||
jest-snapshot: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
jest-validate: ^28.1.1
|
||||
jest-watcher: ^28.1.1
|
||||
micromatch: ^4.0.4
|
||||
pretty-format: ^28.1.1
|
||||
rimraf: ^3.0.0
|
||||
slash: ^3.0.0
|
||||
strip-ansi: ^6.0.0
|
||||
peerDependencies:
|
||||
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
|
||||
peerDependenciesMeta:
|
||||
node-notifier:
|
||||
optional: true
|
||||
checksum: dd67cc911cf770550b3bdde39ec78d2cc3814d66008e3b0184c6a2b66380bb425fed07e81d6488eaf459257f38207822f04fcf7f05626a366b8b36542dce7137
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/create-cache-key-function@npm:^27.0.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/create-cache-key-function@npm:27.5.1"
|
||||
@@ -3674,6 +3716,37 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/environment@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/environment@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/fake-timers": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
jest-mock: ^28.1.1
|
||||
checksum: 5bffc464e9d2fdf7561305bc02844faebfed2ffed54c015561a8d39a3ea129d375aa408b724546fef6246881100770ff43637c2da667db80f0b26235b6a40c98
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/expect-utils@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "@jest/expect-utils@npm:28.1.1"
|
||||
dependencies:
|
||||
jest-get-type: ^28.0.2
|
||||
checksum: 46a2ad754b10bc649c36a5914f887bea33a43bb868946508892a73f1da99065b17167dc3c0e3e299c7cea82c6be1e9d816986e120d7ae3e1be511f64cfc1d3d3
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/expect@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/expect@npm:28.1.2"
|
||||
dependencies:
|
||||
expect: ^28.1.1
|
||||
jest-snapshot: ^28.1.2
|
||||
checksum: ee470cdd3a6a64a251ba66629cf95c508cc8b2b9ce1928459baacffa0bf297f5ad715c2352e73f24e7d3880e3699b03923e037919b712901e6db259293ad73a6
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/fake-timers@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/fake-timers@npm:27.5.1"
|
||||
@@ -3688,6 +3761,20 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/fake-timers@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/fake-timers@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/types": ^28.1.1
|
||||
"@sinonjs/fake-timers": ^9.1.2
|
||||
"@types/node": "*"
|
||||
jest-message-util: ^28.1.1
|
||||
jest-mock: ^28.1.1
|
||||
jest-util: ^28.1.1
|
||||
checksum: d6e6b1a12fe84335d9cc6087b4e590c3b9b855edaff11742d2167827f415459704ab1eae9b3543603898b6a0789b2cc7863f12469f8479257315effb844fe6bd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/globals@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/globals@npm:27.5.1"
|
||||
@@ -3699,6 +3786,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/globals@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/globals@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/environment": ^28.1.2
|
||||
"@jest/expect": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
checksum: f07b7d0a2d08bd4b1e5f0862d835b522578495301ad50109d08c13d367b18a712c2406b62fe0c0a6513998d2caeb3eb650da47d14b22fde7850983537e309045
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/reporters@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/reporters@npm:27.5.1"
|
||||
@@ -3737,6 +3835,44 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/reporters@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/reporters@npm:28.1.2"
|
||||
dependencies:
|
||||
"@bcoe/v8-coverage": ^0.2.3
|
||||
"@jest/console": ^28.1.1
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/transform": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@jridgewell/trace-mapping": ^0.3.13
|
||||
"@types/node": "*"
|
||||
chalk: ^4.0.0
|
||||
collect-v8-coverage: ^1.0.0
|
||||
exit: ^0.1.2
|
||||
glob: ^7.1.3
|
||||
graceful-fs: ^4.2.9
|
||||
istanbul-lib-coverage: ^3.0.0
|
||||
istanbul-lib-instrument: ^5.1.0
|
||||
istanbul-lib-report: ^3.0.0
|
||||
istanbul-lib-source-maps: ^4.0.0
|
||||
istanbul-reports: ^3.1.3
|
||||
jest-message-util: ^28.1.1
|
||||
jest-util: ^28.1.1
|
||||
jest-worker: ^28.1.1
|
||||
slash: ^3.0.0
|
||||
string-length: ^4.0.1
|
||||
strip-ansi: ^6.0.0
|
||||
terminal-link: ^2.0.0
|
||||
v8-to-istanbul: ^9.0.1
|
||||
peerDependencies:
|
||||
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
|
||||
peerDependenciesMeta:
|
||||
node-notifier:
|
||||
optional: true
|
||||
checksum: 26aa66e8eae2599f9bf6c5f594fce7d3a42f821678a10aa7014022cd4dd13d1aea7feba31abd1f01599ae416c7ab828232a74a97d8c352b8b58c699888955bdd
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/schemas@npm:^28.0.2":
|
||||
version: 28.0.2
|
||||
resolution: "@jest/schemas@npm:28.0.2"
|
||||
@@ -3757,6 +3893,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/source-map@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/source-map@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jridgewell/trace-mapping": ^0.3.13
|
||||
callsites: ^3.0.0
|
||||
graceful-fs: ^4.2.9
|
||||
checksum: b82a5c2e93d35d86779c61a02ccb967d1b5cd2e9dd67d26d8add44958637cbbb99daeeb8129c7653389cb440dc2a2f5ae4d2183dc453c67669ff98938b775a3a
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/test-result@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/test-result@npm:27.5.1"
|
||||
@@ -3793,6 +3940,18 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/test-sequencer@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "@jest/test-sequencer@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/test-result": ^28.1.1
|
||||
graceful-fs: ^4.2.9
|
||||
jest-haste-map: ^28.1.1
|
||||
slash: ^3.0.0
|
||||
checksum: acfa3b7ff18478aaa9ac54d6013f951e1be2133a09ea5ca6b248eb80340e5cac71420f1357ef87d2780cb2adb2411fbacbbffcb6ac7f93a0b24cc76be5a42afa
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/transform@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "@jest/transform@npm:27.5.1"
|
||||
@@ -3816,6 +3975,29 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/transform@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "@jest/transform@npm:28.1.2"
|
||||
dependencies:
|
||||
"@babel/core": ^7.11.6
|
||||
"@jest/types": ^28.1.1
|
||||
"@jridgewell/trace-mapping": ^0.3.13
|
||||
babel-plugin-istanbul: ^6.1.1
|
||||
chalk: ^4.0.0
|
||||
convert-source-map: ^1.4.0
|
||||
fast-json-stable-stringify: ^2.0.0
|
||||
graceful-fs: ^4.2.9
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-util: ^28.1.1
|
||||
micromatch: ^4.0.4
|
||||
pirates: ^4.0.4
|
||||
slash: ^3.0.0
|
||||
write-file-atomic: ^4.0.1
|
||||
checksum: cd8d1bdf1a5831cdf91934dd0af1d29d4d2bcad92feb9bf7555fc0e1152cb01a9206410380af0f6221a623ffc9b6f6e6dded429d01d87b85b0777cf9d4425127
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jest/types@npm:^26.6.2":
|
||||
version: 26.6.2
|
||||
resolution: "@jest/types@npm:26.6.2"
|
||||
@@ -3918,7 +4100,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.8, @jridgewell/trace-mapping@npm:^0.3.9":
|
||||
"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.8, @jridgewell/trace-mapping@npm:^0.3.9":
|
||||
version: 0.3.14
|
||||
resolution: "@jridgewell/trace-mapping@npm:0.3.14"
|
||||
dependencies:
|
||||
@@ -5924,6 +6106,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@sinonjs/fake-timers@npm:^9.1.2":
|
||||
version: 9.1.2
|
||||
resolution: "@sinonjs/fake-timers@npm:9.1.2"
|
||||
dependencies:
|
||||
"@sinonjs/commons": ^1.7.0
|
||||
checksum: 7d3aef54e17c1073101cb64d953157c19d62a40e261a30923fa1ee337b049c5f29cc47b1f0c477880f42b5659848ba9ab897607ac8ea4acd5c30ddcfac57fca6
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@slorber/static-site-generator-webpack-plugin@npm:^4.0.4":
|
||||
version: 4.0.7
|
||||
resolution: "@slorber/static-site-generator-webpack-plugin@npm:4.0.7"
|
||||
@@ -6176,7 +6367,7 @@ __metadata:
|
||||
dependencies:
|
||||
"@standardnotes/deterministic-zip": ^1.2.0
|
||||
"@standardnotes/eslint-config-extensions": ^1.0.4
|
||||
"@standardnotes/features": ^1.45.1
|
||||
"@standardnotes/features": "workspace:*"
|
||||
"@standardnotes/styles": "workspace:*"
|
||||
copy-webpack-plugin: ^11.0.0
|
||||
mini-css-extract-plugin: ^2.6.0
|
||||
@@ -6390,25 +6581,20 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@standardnotes/features@npm:^1.45.1, @standardnotes/features@npm:^1.46.0":
|
||||
version: 1.46.0
|
||||
resolution: "@standardnotes/features@npm:1.46.0"
|
||||
"@standardnotes/features@^1.46.0, @standardnotes/features@^1.47.0, @standardnotes/features@workspace:*, @standardnotes/features@workspace:packages/features":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "@standardnotes/features@workspace:packages/features"
|
||||
dependencies:
|
||||
"@standardnotes/auth": ^3.19.4
|
||||
"@standardnotes/common": ^1.23.1
|
||||
checksum: 0653b9b425e86cf0f2e6a80fb68316c841aaf7feb23ca39131e3d09546735d199879532ef9e89f424000b916dd5ac2d7e6ea0e60ac755712ef37c3fecdf48d94
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@standardnotes/features@npm:^1.47.0":
|
||||
version: 1.47.0
|
||||
resolution: "@standardnotes/features@npm:1.47.0"
|
||||
dependencies:
|
||||
"@standardnotes/auth": ^3.19.4
|
||||
"@standardnotes/common": ^1.23.1
|
||||
checksum: bd0ddd6017867e7c905dfdbac4875889713b3f10e79a2e702cc76c3f5db4c9a5ac1a2418e54358aaee4f4404e4d62b208faa755c61bc2eb3e5a2a17777dfbdd0
|
||||
languageName: node
|
||||
linkType: hard
|
||||
"@types/jest": ^28.1.4
|
||||
"@typescript-eslint/eslint-plugin": ^5.30.0
|
||||
eslint-plugin-prettier: ^4.2.1
|
||||
jest: ^28.1.2
|
||||
reflect-metadata: ^0.1.13
|
||||
ts-jest: ^28.0.5
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"@standardnotes/filepicker@npm:1.16.23, @standardnotes/filepicker@npm:^1.16.23":
|
||||
version: 1.16.23
|
||||
@@ -7976,7 +8162,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@types/graceful-fs@npm:^4.1.2":
|
||||
"@types/graceful-fs@npm:^4.1.2, @types/graceful-fs@npm:^4.1.3":
|
||||
version: 4.1.5
|
||||
resolution: "@types/graceful-fs@npm:4.1.5"
|
||||
dependencies:
|
||||
@@ -8096,6 +8282,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@types/jest@npm:^28.1.4":
|
||||
version: 28.1.4
|
||||
resolution: "@types/jest@npm:28.1.4"
|
||||
dependencies:
|
||||
jest-matcher-utils: ^28.0.0
|
||||
pretty-format: ^28.0.0
|
||||
checksum: 97e22c600397bb4f30e39b595f8285ae92e4eb29a1ef6d1689749e4a4da683d88ecfe717b64492f6adc4c17c1c989520c3546f938c84a7d435c6ac3acf1a2bdc
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"@types/js-base64@npm:^3.3.1":
|
||||
version: 3.3.1
|
||||
resolution: "@types/js-base64@npm:3.3.1"
|
||||
@@ -10905,6 +11101,23 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-jest@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "babel-jest@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/transform": ^28.1.2
|
||||
"@types/babel__core": ^7.1.14
|
||||
babel-plugin-istanbul: ^6.1.1
|
||||
babel-preset-jest: ^28.1.1
|
||||
chalk: ^4.0.0
|
||||
graceful-fs: ^4.2.9
|
||||
slash: ^3.0.0
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.8.0
|
||||
checksum: 1aa605ef4dfae3a557fbed8b9d1ba1c2678ba910d0ff3931fad8dc2a150a8ef220a456a86f3b441f5cd4f97f973c2f721fc74ea6a26432766c5ab501a967f8c8
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-loader@npm:^8.0.6, babel-loader@npm:^8.1.0, babel-loader@npm:^8.2.2, babel-loader@npm:^8.2.3, babel-loader@npm:^8.2.5":
|
||||
version: 8.2.5
|
||||
resolution: "babel-loader@npm:8.2.5"
|
||||
@@ -10993,6 +11206,18 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-plugin-jest-hoist@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "babel-plugin-jest-hoist@npm:28.1.1"
|
||||
dependencies:
|
||||
"@babel/template": ^7.3.3
|
||||
"@babel/types": ^7.3.3
|
||||
"@types/babel__core": ^7.1.14
|
||||
"@types/babel__traverse": ^7.0.6
|
||||
checksum: 5fb9ad012e4613e7d321b61a875371dd10e171ef3df2e9c87be25fda62c3c7ad759821e40a9da18f611054727309c38f10e3502583f697312cb9cd1e92616756
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-plugin-macros@npm:^2.6.1":
|
||||
version: 2.8.0
|
||||
resolution: "babel-plugin-macros@npm:2.8.0"
|
||||
@@ -11187,6 +11412,18 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-preset-jest@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "babel-preset-jest@npm:28.1.1"
|
||||
dependencies:
|
||||
babel-plugin-jest-hoist: ^28.1.1
|
||||
babel-preset-current-node-syntax: ^1.0.0
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0
|
||||
checksum: c581a81967aa30eba71a5a5a28eca2cc082901f3e6823c17e5b4ef7ba10f1347494a8e77d785b09ba7e86d3f902f2e13f5b75854d2af7bf9b489924629a87bad
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"babel-preset-react-app@npm:^10.0.1":
|
||||
version: 10.0.1
|
||||
resolution: "babel-preset-react-app@npm:10.0.1"
|
||||
@@ -17831,6 +18068,19 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"expect@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "expect@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/expect-utils": ^28.1.1
|
||||
jest-get-type: ^28.0.2
|
||||
jest-matcher-utils: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-util: ^28.1.1
|
||||
checksum: 6e557b681f4cfb0bf61efad50c5787cc6eb4596a3c299be69adc83fcad0265b5f329b997c2bb7ec92290e609681485616e51e16301a7f0ba3c57139b337c9351
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"express@npm:^4.17.1, express@npm:^4.17.3":
|
||||
version: 4.18.1
|
||||
resolution: "express@npm:4.18.1"
|
||||
@@ -22225,6 +22475,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-changed-files@npm:^28.0.2":
|
||||
version: 28.0.2
|
||||
resolution: "jest-changed-files@npm:28.0.2"
|
||||
dependencies:
|
||||
execa: ^5.0.0
|
||||
throat: ^6.0.1
|
||||
checksum: 389d4de4b26de3d2c6e23783ef4e23f827a9a79cfebd2db7c6ff74727198814469ee1e1a89f0e6d28a94e3c632ec45b044c2400a0793b8591e18d07b4b421784
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-circus@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-circus@npm:27.5.1"
|
||||
@@ -22252,6 +22512,33 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-circus@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-circus@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/environment": ^28.1.2
|
||||
"@jest/expect": ^28.1.2
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
chalk: ^4.0.0
|
||||
co: ^4.6.0
|
||||
dedent: ^0.7.0
|
||||
is-generator-fn: ^2.0.0
|
||||
jest-each: ^28.1.1
|
||||
jest-matcher-utils: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-runtime: ^28.1.2
|
||||
jest-snapshot: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
pretty-format: ^28.1.1
|
||||
slash: ^3.0.0
|
||||
stack-utils: ^2.0.3
|
||||
throat: ^6.0.1
|
||||
checksum: c8f2e024e438f4ca9a6fb8c4f2dfbf843761fad63e82f603a8b167ead5ea3d2d1b99b695242a12017a32c17f8cb2a338e2eb8cdf37d5d71478fcf1650fd9c391
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-cli@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-cli@npm:27.5.1"
|
||||
@@ -22279,6 +22566,33 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-cli@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-cli@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/core": ^28.1.2
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/types": ^28.1.1
|
||||
chalk: ^4.0.0
|
||||
exit: ^0.1.2
|
||||
graceful-fs: ^4.2.9
|
||||
import-local: ^3.0.2
|
||||
jest-config: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
jest-validate: ^28.1.1
|
||||
prompts: ^2.0.1
|
||||
yargs: ^17.3.1
|
||||
peerDependencies:
|
||||
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
|
||||
peerDependenciesMeta:
|
||||
node-notifier:
|
||||
optional: true
|
||||
bin:
|
||||
jest: bin/jest.js
|
||||
checksum: 527873c25755f5a8fc630d61bf856d6f933aace9ff9b35fcc47ac954e5f957ae621ec499bf571b8da51d7fd3760b220f9bf02ccf1710c9821430173e34073c41
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-config@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-config@npm:27.5.1"
|
||||
@@ -22316,6 +22630,44 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-config@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-config@npm:28.1.2"
|
||||
dependencies:
|
||||
"@babel/core": ^7.11.6
|
||||
"@jest/test-sequencer": ^28.1.1
|
||||
"@jest/types": ^28.1.1
|
||||
babel-jest: ^28.1.2
|
||||
chalk: ^4.0.0
|
||||
ci-info: ^3.2.0
|
||||
deepmerge: ^4.2.2
|
||||
glob: ^7.1.3
|
||||
graceful-fs: ^4.2.9
|
||||
jest-circus: ^28.1.2
|
||||
jest-environment-node: ^28.1.2
|
||||
jest-get-type: ^28.0.2
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-resolve: ^28.1.1
|
||||
jest-runner: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
jest-validate: ^28.1.1
|
||||
micromatch: ^4.0.4
|
||||
parse-json: ^5.2.0
|
||||
pretty-format: ^28.1.1
|
||||
slash: ^3.0.0
|
||||
strip-json-comments: ^3.1.1
|
||||
peerDependencies:
|
||||
"@types/node": "*"
|
||||
ts-node: ">=9.0.0"
|
||||
peerDependenciesMeta:
|
||||
"@types/node":
|
||||
optional: true
|
||||
ts-node:
|
||||
optional: true
|
||||
checksum: ddc4de7a286d087a0f88813171498a85d64eb6b22aa8915ab6860661e0b445d1d5773d61b928ff9c3f5c47b20576838dc4565d20f4d77c94ba886421d61544d4
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-diff@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-diff@npm:27.5.1"
|
||||
@@ -22349,6 +22701,15 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-docblock@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-docblock@npm:28.1.1"
|
||||
dependencies:
|
||||
detect-newline: ^3.0.0
|
||||
checksum: 22fca68d988ecb2933bc65f448facdca85fc71b4bd0a188ea09a5ae1b0cc3a049a2a6ec7e7eaa2542c1d5cb5e5145e420a3df4fa280f5070f486c44da1d36151
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-each@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-each@npm:27.5.1"
|
||||
@@ -22362,6 +22723,19 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-each@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-each@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/types": ^28.1.1
|
||||
chalk: ^4.0.0
|
||||
jest-get-type: ^28.0.2
|
||||
jest-util: ^28.1.1
|
||||
pretty-format: ^28.1.1
|
||||
checksum: 91965603f898d5e29150995333f5b193aa37f36b232fc9ffd1be546236e7e47f5df4eca1f25ee45eb549e0866f4769d6a8045591703454b505d18e9fe2b18572
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-environment-jsdom@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-environment-jsdom@npm:27.5.1"
|
||||
@@ -22391,6 +22765,20 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-environment-node@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-environment-node@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/environment": ^28.1.2
|
||||
"@jest/fake-timers": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
jest-mock: ^28.1.1
|
||||
jest-util: ^28.1.1
|
||||
checksum: cee61a3e25cc032ce6a3320ce8829dae9295fa84ea2f220fddd496ba876807cdc88397dc5a6362e60e44b7e14a91d7b448ffb2031bda7955276f69c9e1bd93fc
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-get-type@npm:^26.3.0":
|
||||
version: 26.3.0
|
||||
resolution: "jest-get-type@npm:26.3.0"
|
||||
@@ -22461,6 +22849,29 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-haste-map@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-haste-map@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/graceful-fs": ^4.1.3
|
||||
"@types/node": "*"
|
||||
anymatch: ^3.0.3
|
||||
fb-watchman: ^2.0.0
|
||||
fsevents: ^2.3.2
|
||||
graceful-fs: ^4.2.9
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-util: ^28.1.1
|
||||
jest-worker: ^28.1.1
|
||||
micromatch: ^4.0.4
|
||||
walker: ^1.0.8
|
||||
dependenciesMeta:
|
||||
fsevents:
|
||||
optional: true
|
||||
checksum: db31a2a83906277d96b79017742c433c1573b322d061632a011fb1e184cf6f151f94134da09da7366e4477e8716f280efa676b4cc04a8544c13ce466a44102e8
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-jasmine2@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-jasmine2@npm:27.5.1"
|
||||
@@ -22496,6 +22907,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-leak-detector@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-leak-detector@npm:28.1.1"
|
||||
dependencies:
|
||||
jest-get-type: ^28.0.2
|
||||
pretty-format: ^28.1.1
|
||||
checksum: 379a15ad7bed4f6d11414cc0131a5a592ac9c0b12a5933c522b292209a325b12a852e2330144fb59c82420a89712e46f2c244a881722473e241ad1c487fc476d
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-matcher-utils@npm:^27.0.0, jest-matcher-utils@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-matcher-utils@npm:27.5.1"
|
||||
@@ -22508,7 +22929,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-matcher-utils@npm:^28.0.0":
|
||||
"jest-matcher-utils@npm:^28.0.0, jest-matcher-utils@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-matcher-utils@npm:28.1.1"
|
||||
dependencies:
|
||||
@@ -22564,6 +22985,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-mock@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-mock@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
checksum: 285716d062bd9403830d9f5c90dc414a17495a4e31b82e7789806dac5ea924364fe308a1a8a3151f1055b87cf811e09fab2e2699e53be9972a2657883dd48614
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-pnp-resolver@npm:^1.2.2":
|
||||
version: 1.2.2
|
||||
resolution: "jest-pnp-resolver@npm:1.2.2"
|
||||
@@ -22590,7 +23021,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-regex-util@npm:^28.0.0":
|
||||
"jest-regex-util@npm:^28.0.0, jest-regex-util@npm:^28.0.2":
|
||||
version: 28.0.2
|
||||
resolution: "jest-regex-util@npm:28.0.2"
|
||||
checksum: 0ea8c5c82ec88bc85e273c0ec82e0c0f35f7a1e2d055070e50f0cc2a2177f848eec55f73e37ae0d045c3db5014c42b2f90ac62c1ab3fdb354d2abd66a9e08add
|
||||
@@ -22608,6 +23039,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-resolve-dependencies@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-resolve-dependencies@npm:28.1.2"
|
||||
dependencies:
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-snapshot: ^28.1.2
|
||||
checksum: 2f822678b5469019abab398d0e72eb804a68a9f9ab01b707dd16ebf6f294fe5d4345121e83ad63811c30fe77b7f9bb59003fb03a7215f5f140a2bd5dd193d193
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-resolve@npm:^27.4.2, jest-resolve@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-resolve@npm:27.5.1"
|
||||
@@ -22626,6 +23067,23 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-resolve@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-resolve@npm:28.1.1"
|
||||
dependencies:
|
||||
chalk: ^4.0.0
|
||||
graceful-fs: ^4.2.9
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-pnp-resolver: ^1.2.2
|
||||
jest-util: ^28.1.1
|
||||
jest-validate: ^28.1.1
|
||||
resolve: ^1.20.0
|
||||
resolve.exports: ^1.1.0
|
||||
slash: ^3.0.0
|
||||
checksum: cda5c472fe5b50b91696d90d5c3a72d0f5ff188ecad18816b4085fbac0bad53c0a9abff94c3bf41c7ced24256cf8e34f0b03f1c9e05464e8efcd0f03560d6699
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-runner@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-runner@npm:27.5.1"
|
||||
@@ -22655,6 +23113,35 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-runner@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-runner@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/console": ^28.1.1
|
||||
"@jest/environment": ^28.1.2
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/transform": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/node": "*"
|
||||
chalk: ^4.0.0
|
||||
emittery: ^0.10.2
|
||||
graceful-fs: ^4.2.9
|
||||
jest-docblock: ^28.1.1
|
||||
jest-environment-node: ^28.1.2
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-leak-detector: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-resolve: ^28.1.1
|
||||
jest-runtime: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
jest-watcher: ^28.1.1
|
||||
jest-worker: ^28.1.1
|
||||
source-map-support: 0.5.13
|
||||
throat: ^6.0.1
|
||||
checksum: 51e46779e6c834269de22ba20528b4a1f1df2fe0785dfacb6e5188a552089cef625a49f480db7fa93ed8a11e49de197c9a204c390515cd2f7f4e24474a4f2c6b
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-runtime@npm:^27.5.1":
|
||||
version: 27.5.1
|
||||
resolution: "jest-runtime@npm:27.5.1"
|
||||
@@ -22685,6 +23172,36 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-runtime@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-runtime@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/environment": ^28.1.2
|
||||
"@jest/fake-timers": ^28.1.2
|
||||
"@jest/globals": ^28.1.2
|
||||
"@jest/source-map": ^28.1.2
|
||||
"@jest/test-result": ^28.1.1
|
||||
"@jest/transform": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
chalk: ^4.0.0
|
||||
cjs-module-lexer: ^1.0.0
|
||||
collect-v8-coverage: ^1.0.0
|
||||
execa: ^5.0.0
|
||||
glob: ^7.1.3
|
||||
graceful-fs: ^4.2.9
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-mock: ^28.1.1
|
||||
jest-regex-util: ^28.0.2
|
||||
jest-resolve: ^28.1.1
|
||||
jest-snapshot: ^28.1.2
|
||||
jest-util: ^28.1.1
|
||||
slash: ^3.0.0
|
||||
strip-bom: ^4.0.0
|
||||
checksum: d9a2f45a7b21f239b12448e4fb82c0893e94fdd644fa9315a936251ffbe128d73e9daf3645bc1526a0f3850e79d271bd5b71aa7699a9990c0cd52e51ee13b2f2
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-serializer@npm:^26.6.2":
|
||||
version: 26.6.2
|
||||
resolution: "jest-serializer@npm:26.6.2"
|
||||
@@ -22735,6 +23252,37 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-snapshot@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest-snapshot@npm:28.1.2"
|
||||
dependencies:
|
||||
"@babel/core": ^7.11.6
|
||||
"@babel/generator": ^7.7.2
|
||||
"@babel/plugin-syntax-typescript": ^7.7.2
|
||||
"@babel/traverse": ^7.7.2
|
||||
"@babel/types": ^7.3.3
|
||||
"@jest/expect-utils": ^28.1.1
|
||||
"@jest/transform": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
"@types/babel__traverse": ^7.0.6
|
||||
"@types/prettier": ^2.1.5
|
||||
babel-preset-current-node-syntax: ^1.0.0
|
||||
chalk: ^4.0.0
|
||||
expect: ^28.1.1
|
||||
graceful-fs: ^4.2.9
|
||||
jest-diff: ^28.1.1
|
||||
jest-get-type: ^28.0.2
|
||||
jest-haste-map: ^28.1.1
|
||||
jest-matcher-utils: ^28.1.1
|
||||
jest-message-util: ^28.1.1
|
||||
jest-util: ^28.1.1
|
||||
natural-compare: ^1.4.0
|
||||
pretty-format: ^28.1.1
|
||||
semver: ^7.3.5
|
||||
checksum: 5c33c8b05d387d4fa4516556dc6fdeca4d7c0a1d48bfb31d05d5bf182988713800a35b0f7d4d9e40e3646edbde095aba36bb1b64a8d9bac40e34f76e90ddb482
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-util@npm:^26.6.2":
|
||||
version: 26.6.2
|
||||
resolution: "jest-util@npm:26.6.2"
|
||||
@@ -22805,6 +23353,20 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-validate@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-validate@npm:28.1.1"
|
||||
dependencies:
|
||||
"@jest/types": ^28.1.1
|
||||
camelcase: ^6.2.0
|
||||
chalk: ^4.0.0
|
||||
jest-get-type: ^28.0.2
|
||||
leven: ^3.1.0
|
||||
pretty-format: ^28.1.1
|
||||
checksum: 7bb5427d9b5ef4efc218aaf1f2a4282ebcc66458a6c40aa9fd2914aab967d3157352fb37ea46c83c1bc640ccf997ca3edee4d7aa109dccc02a7c821bac192104
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-watch-typeahead@npm:^1.0.0":
|
||||
version: 1.1.0
|
||||
resolution: "jest-watch-typeahead@npm:1.1.0"
|
||||
@@ -22837,7 +23399,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-watcher@npm:^28.0.0":
|
||||
"jest-watcher@npm:^28.0.0, jest-watcher@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-watcher@npm:28.1.1"
|
||||
dependencies:
|
||||
@@ -22875,7 +23437,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest-worker@npm:^28.0.2":
|
||||
"jest-worker@npm:^28.0.2, jest-worker@npm:^28.1.1":
|
||||
version: 28.1.1
|
||||
resolution: "jest-worker@npm:28.1.1"
|
||||
dependencies:
|
||||
@@ -22904,6 +23466,25 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jest@npm:^28.1.2":
|
||||
version: 28.1.2
|
||||
resolution: "jest@npm:28.1.2"
|
||||
dependencies:
|
||||
"@jest/core": ^28.1.2
|
||||
"@jest/types": ^28.1.1
|
||||
import-local: ^3.0.2
|
||||
jest-cli: ^28.1.2
|
||||
peerDependencies:
|
||||
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
|
||||
peerDependenciesMeta:
|
||||
node-notifier:
|
||||
optional: true
|
||||
bin:
|
||||
jest: bin/jest.js
|
||||
checksum: 8ad37088c42cd5a6decb54c61dfe6a45131a50dfe4c805aef1228cae4ca91b0fc7dfe2991ea771d88118151f5f1697d113b6f45c9b0d88b2ece2aac229e77150
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"jetifier@npm:^1.6.2":
|
||||
version: 1.6.8
|
||||
resolution: "jetifier@npm:1.6.8"
|
||||
@@ -34308,6 +34889,16 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"source-map-support@npm:0.5.13":
|
||||
version: 0.5.13
|
||||
resolution: "source-map-support@npm:0.5.13"
|
||||
dependencies:
|
||||
buffer-from: ^1.0.0
|
||||
source-map: ^0.6.0
|
||||
checksum: 933550047b6c1a2328599a21d8b7666507427c0f5ef5eaadd56b5da0fd9505e239053c66fe181bf1df469a3b7af9d775778eee283cbb7ae16b902ddc09e93a97
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"source-map-support@npm:^0.4.15":
|
||||
version: 0.4.18
|
||||
resolution: "source-map-support@npm:0.4.18"
|
||||
@@ -36166,7 +36757,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ts-jest@npm:^28.0.3":
|
||||
"ts-jest@npm:^28.0.3, ts-jest@npm:^28.0.5":
|
||||
version: 28.0.5
|
||||
resolution: "ts-jest@npm:28.0.5"
|
||||
dependencies:
|
||||
@@ -37380,6 +37971,17 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"v8-to-istanbul@npm:^9.0.1":
|
||||
version: 9.0.1
|
||||
resolution: "v8-to-istanbul@npm:9.0.1"
|
||||
dependencies:
|
||||
"@jridgewell/trace-mapping": ^0.3.12
|
||||
"@types/istanbul-lib-coverage": ^2.0.1
|
||||
convert-source-map: ^1.6.0
|
||||
checksum: a49c34bf0a3af0c11041a3952a2600913904a983bd1bc87148b5c033bc5c1d02d5a13620fcdbfa2c60bc582a2e2970185780f0c844b4c3a220abf405f8af6311
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"v8flags@npm:^2.1.1":
|
||||
version: 2.1.1
|
||||
resolution: "v8flags@npm:2.1.1"
|
||||
@@ -37594,7 +38196,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"walker@npm:^1.0.7, walker@npm:~1.0.5":
|
||||
"walker@npm:^1.0.7, walker@npm:^1.0.8, walker@npm:~1.0.5":
|
||||
version: 1.0.8
|
||||
resolution: "walker@npm:1.0.8"
|
||||
dependencies:
|
||||
@@ -38988,7 +39590,7 @@ __metadata:
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"yargs@npm:^17.0.0, yargs@npm:^17.0.1, yargs@npm:^17.2.1, yargs@npm:^17.5.1":
|
||||
"yargs@npm:^17.0.0, yargs@npm:^17.0.1, yargs@npm:^17.2.1, yargs@npm:^17.3.1, yargs@npm:^17.5.1":
|
||||
version: 17.5.1
|
||||
resolution: "yargs@npm:17.5.1"
|
||||
dependencies:
|
||||
|
||||
Reference in New Issue
Block a user