├── .editorconfig
├── .eslintrc
├── .github
└── workflows
│ └── publish.yml
├── .gitignore
├── CHANGELOG.md
├── LICENSE
├── README.md
├── icon.png
├── index.html
├── package.json
├── pnpm-lock.yaml
├── screencast.gif
├── src
└── main.ts
├── tsconfig.json
└── vite.config.ts
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = space
5 | indent_size = 2
6 | charset = utf-8
7 | trim_trailing_whitespace = true
8 | insert_final_newline = true
9 |
10 | [*.md]
11 | max_line_length = off
12 | trim_trailing_whitespace = false
13 |
--------------------------------------------------------------------------------
/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "es6": true,
4 | "browser": true
5 | },
6 | "globals": {
7 | "Atomics": "readonly",
8 | "SharedArrayBuffer": "readonly"
9 | },
10 | "parser": "@typescript-eslint/parser",
11 | "parserOptions": {
12 | "ecmaVersion": 2015,
13 | "sourceType": "module"
14 | },
15 | "plugins": [
16 | "@typescript-eslint"
17 | ],
18 | "rules": {
19 | "quotes": [
20 | "warn",
21 | "single",
22 | {
23 | "allowTemplateLiterals": true
24 | }
25 | ],
26 | "arrow-parens": [
27 | "warn",
28 | "as-needed"
29 | ],
30 | "comma-spacing": [
31 | "warn",
32 | {
33 | "after": true
34 | }
35 | ],
36 | "linebreak-style": [
37 | "error",
38 | "unix"
39 | ],
40 | "object-curly-spacing": [
41 | "error",
42 | "always"
43 | ],
44 | "@typescript-eslint/semi": [
45 | "warn"
46 | ]
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/.github/workflows/publish.yml:
--------------------------------------------------------------------------------
1 | name: Build plugin
2 |
3 | on:
4 | push:
5 | # Sequence of patterns matched against refs/tags
6 | tags:
7 | - "*" # Push events to matching any tag format, i.e. 1.0, 20.15.10
8 |
9 | env:
10 | PLUGIN_NAME: logseq-plugin-task-management-shortcuts
11 |
12 | jobs:
13 | build:
14 | runs-on: ubuntu-latest
15 |
16 | steps:
17 | - uses: actions/checkout@v2
18 | - name: Use Node.js
19 | uses: actions/setup-node@v1
20 | with:
21 | node-version: "16.x" # You might need to adjust this value to your own version
22 | - name: Build
23 | id: build
24 | run: |
25 | npm install -g pnpm
26 | pnpm install
27 | pnpm build
28 | mv dist ${{ env.PLUGIN_NAME }}
29 | zip -r ${{ env.PLUGIN_NAME }}.zip ${{ env.PLUGIN_NAME }}
30 | tar -cvzf ${{ env.PLUGIN_NAME }}.tar.gz -C ${{ env.PLUGIN_NAME }} .
31 | ls
32 | echo "::set-output name=tag_name::$(git tag --sort version:refname | tail -n 1)"
33 |
34 | - name: Create Release
35 | uses: ncipollo/release-action@v1
36 | id: create_release
37 | env:
38 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
39 | VERSION: ${{ github.ref }}
40 | with:
41 | allowUpdates: true
42 | draft: false
43 | prerelease: false
44 |
45 | - name: Upload zip file
46 | id: upload_zip
47 | uses: actions/upload-release-asset@v1
48 | env:
49 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
50 | with:
51 | upload_url: ${{ steps.create_release.outputs.upload_url }}
52 | asset_path: ./${{ env.PLUGIN_NAME }}.zip
53 | asset_name: ${{ env.PLUGIN_NAME }}-${{ steps.build.outputs.tag_name }}.zip
54 | asset_content_type: application/zip
55 |
56 | - name: Upload tar.gz file
57 | id: upload_metadata
58 | uses: actions/upload-release-asset@v1
59 | env:
60 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
61 | with:
62 | upload_url: ${{ steps.create_release.outputs.upload_url }}
63 | asset_path: ./${{ env.PLUGIN_NAME }}.tar.gz
64 | asset_name: ${{ env.PLUGIN_NAME }}-${{ steps.build.outputs.tag_name }}.tar.gz
65 | asset_content_type: application/json
66 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules/
2 | dist/
3 |
4 | .vscode/
5 | .DS_Store
6 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # CHANGELOG
2 |
3 | ## v0.0.3
4 |
5 | - infra: upgrade deps.
6 | - feat: add CANCELLED task tag #2
7 | ## v0.0.2
8 |
9 | - feat: support multiple blocks selection shortcuts.
10 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # logseq-plugin-task-management-shortcuts
2 |
3 | [](https://github.com/vipzhicheng/logseq-plugin-task-management-shortcuts/releases)
4 |
5 | Add shortcuts for Logseq task management, mainly borrowed from [Heading Level Shortcuts](https://github.com/vipzhicheng/logseq-plugin-heading-level-shortcuts)
6 |
7 | 
8 |
9 | ## Installation
10 |
11 | ### Preparation
12 |
13 | * Click the 3 dots in the righthand corner and go to `Settings`.
14 | * Got to advanced and enable Developer mode.
15 | * Restart the app.
16 | * Click 3 dots and go to `Plugins`.
17 |
18 | ### Install plugins from Marketplace (recommended)
19 |
20 | * Click `Marketplace` button and then click `Plugins`.
21 | * Find the plugin and click `Install`.
22 |
23 | ### Install plugins manually
24 |
25 | * Download released version assets from Github.
26 | * Unzip it.
27 | * Click `Load unpacked plugin`, and select destination directory to the unziped folder.
28 |
29 | ## Default shortcuts
30 |
31 | * `ctrl+1`: Change to `TODO` task.
32 | * `ctrl+2`: Change to `DOING` task.
33 | * `ctrl+3`: Change to `DONE` task.
34 | * `ctrl+4`: Change to `LATER` task.
35 | * `ctrl+5`: Change to `NOW` task.
36 | * `ctrl+6`: Change to `WAITING` task.
37 | * `ctrl+7`: Change to `CANCELLED` task.
38 | * `ctrl+0`: Change to non-task.
39 |
40 | ## Customization
41 |
42 | You may want to change to binding order, remap actions or shortcuts. You can do this by manually editing plugin config file which is JSON format, and you can find it on Plugin page, locate it on the gear dropdown menu.
43 |
44 | The default config seems like below.
45 |
46 | ```json
47 | {
48 | "disabled": false,
49 | "keyBindings": {
50 | "0": "ctrl+0",
51 | "1": "ctrl+1",
52 | "2": "ctrl+2",
53 | "3": "ctrl+3",
54 | "4": "ctrl+4",
55 | "5": "ctrl+5",
56 | "6": "ctrl+6"
57 | "7": "ctrl+7"
58 | },
59 | "tasks": [
60 | "TODO",
61 | "DOING",
62 | "DONE",
63 | "LATER",
64 | "NOW",
65 | "WAITING",
66 | "CANCELLED"
67 | ],
68 | "settingsVersion": "v1"
69 | }
70 | ```
71 |
72 | You can adjust the tasks order, add new statuses which supported by Logseq, change key bindings there, and don't forget to save your changes. Note: the key `0` always means remove task tag. so 1~6 in `keyBindings` map to `tasks` array orderly.
73 |
74 | Here is an example, not suggestion.
75 |
76 | ```json
77 | {
78 | "disabled": false,
79 | "keyBindings": {
80 | "0": "a a",
81 | "1": "a s",
82 | "2": "a d",
83 | "3": "a f",
84 | "4": "a w",
85 | "5": "a e",
86 | "6": "a r"
87 | },
88 | "tasks": [
89 | "LATER",
90 | "NOW",
91 | "WAITING"
92 | "TODO",
93 | "DOING",
94 | "DONE",
95 | ],
96 | "settingsVersion": "v1"
97 | }
98 | ```
99 |
100 | ## Licence
101 | MIT
102 |
--------------------------------------------------------------------------------
/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vipzhicheng/logseq-plugin-task-management-shortcuts/b3f9afb44ab3ade456779b74af54d9d42b632350/icon.png
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Task Management Shortcuts
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "logseq-plugin-task-management-shortcuts",
3 | "version": "0.0.3",
4 | "license": "MIT",
5 | "main": "index.html",
6 | "logseq": {
7 | "icon": "./icon.png",
8 | "id": "logseq-plugin-task-management-shortcuts",
9 | "title": "Task Management Shortcuts"
10 | },
11 | "scripts": {
12 | "dev": "vite",
13 | "build": "vite build && cp README.md LICENSE icon.png package.json dist/"
14 | },
15 | "devDependencies": {
16 | "@types/node": "^18.8.5",
17 | "@typescript-eslint/eslint-plugin": "^5.40.0",
18 | "@typescript-eslint/parser": "^5.40.0",
19 | "eslint": "^8.25.0",
20 | "typescript": "^4.8.4",
21 | "vite": "^3.1.8"
22 | },
23 | "dependencies": {
24 | "@logseq/libs": "0.0.9"
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | specifiers:
4 | '@logseq/libs': 0.0.9
5 | '@types/node': ^18.8.5
6 | '@typescript-eslint/eslint-plugin': ^5.40.0
7 | '@typescript-eslint/parser': ^5.40.0
8 | eslint: ^8.25.0
9 | typescript: ^4.8.4
10 | vite: ^3.1.8
11 |
12 | dependencies:
13 | '@logseq/libs': 0.0.9
14 |
15 | devDependencies:
16 | '@types/node': 18.8.5
17 | '@typescript-eslint/eslint-plugin': 5.40.0_25sstg4uu2sk4pm7xcyzuov7xq
18 | '@typescript-eslint/parser': 5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q
19 | eslint: 8.25.0
20 | typescript: 4.8.4
21 | vite: 3.1.8
22 |
23 | packages:
24 |
25 | /@esbuild/android-arm/0.15.10:
26 | resolution: {integrity: sha512-FNONeQPy/ox+5NBkcSbYJxoXj9GWu8gVGJTVmUyoOCKQFDTrHVKgNSzChdNt0I8Aj/iKcsDf2r9BFwv+FSNUXg==}
27 | engines: {node: '>=12'}
28 | cpu: [arm]
29 | os: [android]
30 | requiresBuild: true
31 | dev: true
32 | optional: true
33 |
34 | /@esbuild/linux-loong64/0.15.10:
35 | resolution: {integrity: sha512-w0Ou3Z83LOYEkwaui2M8VwIp+nLi/NA60lBLMvaJ+vXVMcsARYdEzLNE7RSm4+lSg4zq4d7fAVuzk7PNQ5JFgg==}
36 | engines: {node: '>=12'}
37 | cpu: [loong64]
38 | os: [linux]
39 | requiresBuild: true
40 | dev: true
41 | optional: true
42 |
43 | /@eslint/eslintrc/1.3.3:
44 | resolution: {integrity: sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==}
45 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
46 | dependencies:
47 | ajv: 6.12.6
48 | debug: 4.3.3
49 | espree: 9.4.0
50 | globals: 13.17.0
51 | ignore: 5.2.0
52 | import-fresh: 3.3.0
53 | js-yaml: 4.1.0
54 | minimatch: 3.1.2
55 | strip-json-comments: 3.1.1
56 | transitivePeerDependencies:
57 | - supports-color
58 | dev: true
59 |
60 | /@humanwhocodes/config-array/0.10.7:
61 | resolution: {integrity: sha512-MDl6D6sBsaV452/QSdX+4CXIjZhIcI0PELsxUjk4U828yd58vk3bTIvk/6w5FY+4hIy9sLW0sfrV7K7Kc++j/w==}
62 | engines: {node: '>=10.10.0'}
63 | dependencies:
64 | '@humanwhocodes/object-schema': 1.2.1
65 | debug: 4.3.3
66 | minimatch: 3.1.2
67 | transitivePeerDependencies:
68 | - supports-color
69 | dev: true
70 |
71 | /@humanwhocodes/module-importer/1.0.1:
72 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
73 | engines: {node: '>=12.22'}
74 | dev: true
75 |
76 | /@humanwhocodes/object-schema/1.2.1:
77 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==}
78 | dev: true
79 |
80 | /@logseq/libs/0.0.9:
81 | resolution: {integrity: sha512-cNqjZxJ2+JB/C+BjtQhUMQV2/223cqpx3+WnFS9RFDUUAhNq0jvT8pukqeYyDaPu7vV1lJRWtn76/8f/ThYuYg==}
82 | dependencies:
83 | csstype: 3.1.0
84 | debug: 4.3.4
85 | dompurify: 2.3.8
86 | eventemitter3: 4.0.7
87 | fast-deep-equal: 3.1.3
88 | lodash-es: 4.17.21
89 | path: 0.12.7
90 | snake-case: 3.0.4
91 | transitivePeerDependencies:
92 | - supports-color
93 | dev: false
94 |
95 | /@nodelib/fs.scandir/2.1.5:
96 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
97 | engines: {node: '>= 8'}
98 | dependencies:
99 | '@nodelib/fs.stat': 2.0.5
100 | run-parallel: 1.2.0
101 | dev: true
102 |
103 | /@nodelib/fs.stat/2.0.5:
104 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
105 | engines: {node: '>= 8'}
106 | dev: true
107 |
108 | /@nodelib/fs.walk/1.2.8:
109 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
110 | engines: {node: '>= 8'}
111 | dependencies:
112 | '@nodelib/fs.scandir': 2.1.5
113 | fastq: 1.13.0
114 | dev: true
115 |
116 | /@types/json-schema/7.0.9:
117 | resolution: {integrity: sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==}
118 | dev: true
119 |
120 | /@types/node/18.8.5:
121 | resolution: {integrity: sha512-Bq7G3AErwe5A/Zki5fdD3O6+0zDChhg671NfPjtIcbtzDNZTv4NPKMRFr7gtYPG7y+B8uTiNK4Ngd9T0FTar6Q==}
122 | dev: true
123 |
124 | /@typescript-eslint/eslint-plugin/5.40.0_25sstg4uu2sk4pm7xcyzuov7xq:
125 | resolution: {integrity: sha512-FIBZgS3DVJgqPwJzvZTuH4HNsZhHMa9SjxTKAZTlMsPw/UzpEjcf9f4dfgDJEHjK+HboUJo123Eshl6niwEm/Q==}
126 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
127 | peerDependencies:
128 | '@typescript-eslint/parser': ^5.0.0
129 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
130 | typescript: '*'
131 | peerDependenciesMeta:
132 | typescript:
133 | optional: true
134 | dependencies:
135 | '@typescript-eslint/parser': 5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q
136 | '@typescript-eslint/scope-manager': 5.40.0
137 | '@typescript-eslint/type-utils': 5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q
138 | '@typescript-eslint/utils': 5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q
139 | debug: 4.3.4
140 | eslint: 8.25.0
141 | ignore: 5.2.0
142 | regexpp: 3.2.0
143 | semver: 7.3.8
144 | tsutils: 3.21.0_typescript@4.8.4
145 | typescript: 4.8.4
146 | transitivePeerDependencies:
147 | - supports-color
148 | dev: true
149 |
150 | /@typescript-eslint/parser/5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q:
151 | resolution: {integrity: sha512-Ah5gqyX2ySkiuYeOIDg7ap51/b63QgWZA7w6AHtFrag7aH0lRQPbLzUjk0c9o5/KZ6JRkTTDKShL4AUrQa6/hw==}
152 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
153 | peerDependencies:
154 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
155 | typescript: '*'
156 | peerDependenciesMeta:
157 | typescript:
158 | optional: true
159 | dependencies:
160 | '@typescript-eslint/scope-manager': 5.40.0
161 | '@typescript-eslint/types': 5.40.0
162 | '@typescript-eslint/typescript-estree': 5.40.0_typescript@4.8.4
163 | debug: 4.3.4
164 | eslint: 8.25.0
165 | typescript: 4.8.4
166 | transitivePeerDependencies:
167 | - supports-color
168 | dev: true
169 |
170 | /@typescript-eslint/scope-manager/5.40.0:
171 | resolution: {integrity: sha512-d3nPmjUeZtEWRvyReMI4I1MwPGC63E8pDoHy0BnrYjnJgilBD3hv7XOiETKLY/zTwI7kCnBDf2vWTRUVpYw0Uw==}
172 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
173 | dependencies:
174 | '@typescript-eslint/types': 5.40.0
175 | '@typescript-eslint/visitor-keys': 5.40.0
176 | dev: true
177 |
178 | /@typescript-eslint/type-utils/5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q:
179 | resolution: {integrity: sha512-nfuSdKEZY2TpnPz5covjJqav+g5qeBqwSHKBvz7Vm1SAfy93SwKk/JeSTymruDGItTwNijSsno5LhOHRS1pcfw==}
180 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
181 | peerDependencies:
182 | eslint: '*'
183 | typescript: '*'
184 | peerDependenciesMeta:
185 | typescript:
186 | optional: true
187 | dependencies:
188 | '@typescript-eslint/typescript-estree': 5.40.0_typescript@4.8.4
189 | '@typescript-eslint/utils': 5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q
190 | debug: 4.3.4
191 | eslint: 8.25.0
192 | tsutils: 3.21.0_typescript@4.8.4
193 | typescript: 4.8.4
194 | transitivePeerDependencies:
195 | - supports-color
196 | dev: true
197 |
198 | /@typescript-eslint/types/5.40.0:
199 | resolution: {integrity: sha512-V1KdQRTXsYpf1Y1fXCeZ+uhjW48Niiw0VGt4V8yzuaDTU8Z1Xl7yQDyQNqyAFcVhpYXIVCEuxSIWTsLDpHgTbw==}
200 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
201 | dev: true
202 |
203 | /@typescript-eslint/typescript-estree/5.40.0_typescript@4.8.4:
204 | resolution: {integrity: sha512-b0GYlDj8TLTOqwX7EGbw2gL5EXS2CPEWhF9nGJiGmEcmlpNBjyHsTwbqpyIEPVpl6br4UcBOYlcI2FJVtJkYhg==}
205 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
206 | peerDependencies:
207 | typescript: '*'
208 | peerDependenciesMeta:
209 | typescript:
210 | optional: true
211 | dependencies:
212 | '@typescript-eslint/types': 5.40.0
213 | '@typescript-eslint/visitor-keys': 5.40.0
214 | debug: 4.3.4
215 | globby: 11.1.0
216 | is-glob: 4.0.3
217 | semver: 7.3.8
218 | tsutils: 3.21.0_typescript@4.8.4
219 | typescript: 4.8.4
220 | transitivePeerDependencies:
221 | - supports-color
222 | dev: true
223 |
224 | /@typescript-eslint/utils/5.40.0_z4bbprzjrhnsfa24uvmcbu7f5q:
225 | resolution: {integrity: sha512-MO0y3T5BQ5+tkkuYZJBjePewsY+cQnfkYeRqS6tPh28niiIwPnQ1t59CSRcs1ZwJJNOdWw7rv9pF8aP58IMihA==}
226 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
227 | peerDependencies:
228 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
229 | dependencies:
230 | '@types/json-schema': 7.0.9
231 | '@typescript-eslint/scope-manager': 5.40.0
232 | '@typescript-eslint/types': 5.40.0
233 | '@typescript-eslint/typescript-estree': 5.40.0_typescript@4.8.4
234 | eslint: 8.25.0
235 | eslint-scope: 5.1.1
236 | eslint-utils: 3.0.0_eslint@8.25.0
237 | semver: 7.3.8
238 | transitivePeerDependencies:
239 | - supports-color
240 | - typescript
241 | dev: true
242 |
243 | /@typescript-eslint/visitor-keys/5.40.0:
244 | resolution: {integrity: sha512-ijJ+6yig+x9XplEpG2K6FUdJeQGGj/15U3S56W9IqXKJqleuD7zJ2AX/miLezwxpd7ZxDAqO87zWufKg+RPZyQ==}
245 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
246 | dependencies:
247 | '@typescript-eslint/types': 5.40.0
248 | eslint-visitor-keys: 3.3.0
249 | dev: true
250 |
251 | /acorn-jsx/5.3.2_acorn@8.8.0:
252 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
253 | peerDependencies:
254 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
255 | dependencies:
256 | acorn: 8.8.0
257 | dev: true
258 |
259 | /acorn/8.8.0:
260 | resolution: {integrity: sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w==}
261 | engines: {node: '>=0.4.0'}
262 | hasBin: true
263 | dev: true
264 |
265 | /ajv/6.12.6:
266 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==}
267 | dependencies:
268 | fast-deep-equal: 3.1.3
269 | fast-json-stable-stringify: 2.1.0
270 | json-schema-traverse: 0.4.1
271 | uri-js: 4.4.1
272 | dev: true
273 |
274 | /ansi-regex/5.0.1:
275 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
276 | engines: {node: '>=8'}
277 | dev: true
278 |
279 | /ansi-styles/4.3.0:
280 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
281 | engines: {node: '>=8'}
282 | dependencies:
283 | color-convert: 2.0.1
284 | dev: true
285 |
286 | /argparse/2.0.1:
287 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
288 | dev: true
289 |
290 | /array-union/2.1.0:
291 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
292 | engines: {node: '>=8'}
293 | dev: true
294 |
295 | /balanced-match/1.0.2:
296 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
297 | dev: true
298 |
299 | /brace-expansion/1.1.11:
300 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
301 | dependencies:
302 | balanced-match: 1.0.2
303 | concat-map: 0.0.1
304 | dev: true
305 |
306 | /braces/3.0.2:
307 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
308 | engines: {node: '>=8'}
309 | dependencies:
310 | fill-range: 7.0.1
311 | dev: true
312 |
313 | /callsites/3.1.0:
314 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
315 | engines: {node: '>=6'}
316 | dev: true
317 |
318 | /chalk/4.1.2:
319 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
320 | engines: {node: '>=10'}
321 | dependencies:
322 | ansi-styles: 4.3.0
323 | supports-color: 7.2.0
324 | dev: true
325 |
326 | /color-convert/2.0.1:
327 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
328 | engines: {node: '>=7.0.0'}
329 | dependencies:
330 | color-name: 1.1.4
331 | dev: true
332 |
333 | /color-name/1.1.4:
334 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
335 | dev: true
336 |
337 | /concat-map/0.0.1:
338 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
339 | dev: true
340 |
341 | /cross-spawn/7.0.3:
342 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
343 | engines: {node: '>= 8'}
344 | dependencies:
345 | path-key: 3.1.1
346 | shebang-command: 2.0.0
347 | which: 2.0.2
348 | dev: true
349 |
350 | /csstype/3.1.0:
351 | resolution: {integrity: sha512-uX1KG+x9h5hIJsaKR9xHUeUraxf8IODOwq9JLNPq6BwB04a/xgpq3rcx47l5BZu5zBPlgD342tdke3Hom/nJRA==}
352 | dev: false
353 |
354 | /debug/4.3.3:
355 | resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==}
356 | engines: {node: '>=6.0'}
357 | peerDependencies:
358 | supports-color: '*'
359 | peerDependenciesMeta:
360 | supports-color:
361 | optional: true
362 | dependencies:
363 | ms: 2.1.2
364 | dev: true
365 |
366 | /debug/4.3.4:
367 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
368 | engines: {node: '>=6.0'}
369 | peerDependencies:
370 | supports-color: '*'
371 | peerDependenciesMeta:
372 | supports-color:
373 | optional: true
374 | dependencies:
375 | ms: 2.1.2
376 |
377 | /deep-is/0.1.4:
378 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
379 | dev: true
380 |
381 | /dir-glob/3.0.1:
382 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
383 | engines: {node: '>=8'}
384 | dependencies:
385 | path-type: 4.0.0
386 | dev: true
387 |
388 | /doctrine/3.0.0:
389 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
390 | engines: {node: '>=6.0.0'}
391 | dependencies:
392 | esutils: 2.0.3
393 | dev: true
394 |
395 | /dompurify/2.3.8:
396 | resolution: {integrity: sha512-eVhaWoVibIzqdGYjwsBWodIQIaXFSB+cKDf4cfxLMsK0xiud6SE+/WCVx/Xw/UwQsa4cS3T2eITcdtmTg2UKcw==}
397 | dev: false
398 |
399 | /dot-case/3.0.4:
400 | resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
401 | dependencies:
402 | no-case: 3.0.4
403 | tslib: 2.3.1
404 | dev: false
405 |
406 | /esbuild-android-64/0.15.10:
407 | resolution: {integrity: sha512-UI7krF8OYO1N7JYTgLT9ML5j4+45ra3amLZKx7LO3lmLt1Ibn8t3aZbX5Pu4BjWiqDuJ3m/hsvhPhK/5Y/YpnA==}
408 | engines: {node: '>=12'}
409 | cpu: [x64]
410 | os: [android]
411 | requiresBuild: true
412 | dev: true
413 | optional: true
414 |
415 | /esbuild-android-arm64/0.15.10:
416 | resolution: {integrity: sha512-EOt55D6xBk5O05AK8brXUbZmoFj4chM8u3riGflLa6ziEoVvNjRdD7Cnp82NHQGfSHgYR06XsPI8/sMuA/cUwg==}
417 | engines: {node: '>=12'}
418 | cpu: [arm64]
419 | os: [android]
420 | requiresBuild: true
421 | dev: true
422 | optional: true
423 |
424 | /esbuild-darwin-64/0.15.10:
425 | resolution: {integrity: sha512-hbDJugTicqIm+WKZgp208d7FcXcaK8j2c0l+fqSJ3d2AzQAfjEYDRM3Z2oMeqSJ9uFxyj/muSACLdix7oTstRA==}
426 | engines: {node: '>=12'}
427 | cpu: [x64]
428 | os: [darwin]
429 | requiresBuild: true
430 | dev: true
431 | optional: true
432 |
433 | /esbuild-darwin-arm64/0.15.10:
434 | resolution: {integrity: sha512-M1t5+Kj4IgSbYmunf2BB6EKLkWUq+XlqaFRiGOk8bmBapu9bCDrxjf4kUnWn59Dka3I27EiuHBKd1rSO4osLFQ==}
435 | engines: {node: '>=12'}
436 | cpu: [arm64]
437 | os: [darwin]
438 | requiresBuild: true
439 | dev: true
440 | optional: true
441 |
442 | /esbuild-freebsd-64/0.15.10:
443 | resolution: {integrity: sha512-KMBFMa7C8oc97nqDdoZwtDBX7gfpolkk6Bcmj6YFMrtCMVgoU/x2DI1p74DmYl7CSS6Ppa3xgemrLrr5IjIn0w==}
444 | engines: {node: '>=12'}
445 | cpu: [x64]
446 | os: [freebsd]
447 | requiresBuild: true
448 | dev: true
449 | optional: true
450 |
451 | /esbuild-freebsd-arm64/0.15.10:
452 | resolution: {integrity: sha512-m2KNbuCX13yQqLlbSojFMHpewbn8wW5uDS6DxRpmaZKzyq8Dbsku6hHvh2U+BcLwWY4mpgXzFUoENEf7IcioGg==}
453 | engines: {node: '>=12'}
454 | cpu: [arm64]
455 | os: [freebsd]
456 | requiresBuild: true
457 | dev: true
458 | optional: true
459 |
460 | /esbuild-linux-32/0.15.10:
461 | resolution: {integrity: sha512-guXrwSYFAvNkuQ39FNeV4sNkNms1bLlA5vF1H0cazZBOLdLFIny6BhT+TUbK/hdByMQhtWQ5jI9VAmPKbVPu1w==}
462 | engines: {node: '>=12'}
463 | cpu: [ia32]
464 | os: [linux]
465 | requiresBuild: true
466 | dev: true
467 | optional: true
468 |
469 | /esbuild-linux-64/0.15.10:
470 | resolution: {integrity: sha512-jd8XfaSJeucMpD63YNMO1JCrdJhckHWcMv6O233bL4l6ogQKQOxBYSRP/XLWP+6kVTu0obXovuckJDcA0DKtQA==}
471 | engines: {node: '>=12'}
472 | cpu: [x64]
473 | os: [linux]
474 | requiresBuild: true
475 | dev: true
476 | optional: true
477 |
478 | /esbuild-linux-arm/0.15.10:
479 | resolution: {integrity: sha512-6N8vThLL/Lysy9y4Ex8XoLQAlbZKUyExCWyayGi2KgTBelKpPgj6RZnUaKri0dHNPGgReJriKVU6+KDGQwn10A==}
480 | engines: {node: '>=12'}
481 | cpu: [arm]
482 | os: [linux]
483 | requiresBuild: true
484 | dev: true
485 | optional: true
486 |
487 | /esbuild-linux-arm64/0.15.10:
488 | resolution: {integrity: sha512-GByBi4fgkvZFTHFDYNftu1DQ1GzR23jws0oWyCfhnI7eMOe+wgwWrc78dbNk709Ivdr/evefm2PJiUBMiusS1A==}
489 | engines: {node: '>=12'}
490 | cpu: [arm64]
491 | os: [linux]
492 | requiresBuild: true
493 | dev: true
494 | optional: true
495 |
496 | /esbuild-linux-mips64le/0.15.10:
497 | resolution: {integrity: sha512-BxP+LbaGVGIdQNJUNF7qpYjEGWb0YyHVSKqYKrn+pTwH/SiHUxFyJYSP3pqkku61olQiSBnSmWZ+YUpj78Tw7Q==}
498 | engines: {node: '>=12'}
499 | cpu: [mips64el]
500 | os: [linux]
501 | requiresBuild: true
502 | dev: true
503 | optional: true
504 |
505 | /esbuild-linux-ppc64le/0.15.10:
506 | resolution: {integrity: sha512-LoSQCd6498PmninNgqd/BR7z3Bsk/mabImBWuQ4wQgmQEeanzWd5BQU2aNi9mBURCLgyheuZS6Xhrw5luw3OkQ==}
507 | engines: {node: '>=12'}
508 | cpu: [ppc64]
509 | os: [linux]
510 | requiresBuild: true
511 | dev: true
512 | optional: true
513 |
514 | /esbuild-linux-riscv64/0.15.10:
515 | resolution: {integrity: sha512-Lrl9Cr2YROvPV4wmZ1/g48httE8z/5SCiXIyebiB5N8VT7pX3t6meI7TQVHw/wQpqP/AF4SksDuFImPTM7Z32Q==}
516 | engines: {node: '>=12'}
517 | cpu: [riscv64]
518 | os: [linux]
519 | requiresBuild: true
520 | dev: true
521 | optional: true
522 |
523 | /esbuild-linux-s390x/0.15.10:
524 | resolution: {integrity: sha512-ReP+6q3eLVVP2lpRrvl5EodKX7EZ1bS1/z5j6hsluAlZP5aHhk6ghT6Cq3IANvvDdscMMCB4QEbI+AjtvoOFpA==}
525 | engines: {node: '>=12'}
526 | cpu: [s390x]
527 | os: [linux]
528 | requiresBuild: true
529 | dev: true
530 | optional: true
531 |
532 | /esbuild-netbsd-64/0.15.10:
533 | resolution: {integrity: sha512-iGDYtJCMCqldMskQ4eIV+QSS/CuT7xyy9i2/FjpKvxAuCzrESZXiA1L64YNj6/afuzfBe9i8m/uDkFHy257hTw==}
534 | engines: {node: '>=12'}
535 | cpu: [x64]
536 | os: [netbsd]
537 | requiresBuild: true
538 | dev: true
539 | optional: true
540 |
541 | /esbuild-openbsd-64/0.15.10:
542 | resolution: {integrity: sha512-ftMMIwHWrnrYnvuJQRJs/Smlcb28F9ICGde/P3FUTCgDDM0N7WA0o9uOR38f5Xe2/OhNCgkjNeb7QeaE3cyWkQ==}
543 | engines: {node: '>=12'}
544 | cpu: [x64]
545 | os: [openbsd]
546 | requiresBuild: true
547 | dev: true
548 | optional: true
549 |
550 | /esbuild-sunos-64/0.15.10:
551 | resolution: {integrity: sha512-mf7hBL9Uo2gcy2r3rUFMjVpTaGpFJJE5QTDDqUFf1632FxteYANffDZmKbqX0PfeQ2XjUDE604IcE7OJeoHiyg==}
552 | engines: {node: '>=12'}
553 | cpu: [x64]
554 | os: [sunos]
555 | requiresBuild: true
556 | dev: true
557 | optional: true
558 |
559 | /esbuild-windows-32/0.15.10:
560 | resolution: {integrity: sha512-ttFVo+Cg8b5+qHmZHbEc8Vl17kCleHhLzgT8X04y8zudEApo0PxPg9Mz8Z2cKH1bCYlve1XL8LkyXGFjtUYeGg==}
561 | engines: {node: '>=12'}
562 | cpu: [ia32]
563 | os: [win32]
564 | requiresBuild: true
565 | dev: true
566 | optional: true
567 |
568 | /esbuild-windows-64/0.15.10:
569 | resolution: {integrity: sha512-2H0gdsyHi5x+8lbng3hLbxDWR7mKHWh5BXZGKVG830KUmXOOWFE2YKJ4tHRkejRduOGDrBvHBriYsGtmTv3ntA==}
570 | engines: {node: '>=12'}
571 | cpu: [x64]
572 | os: [win32]
573 | requiresBuild: true
574 | dev: true
575 | optional: true
576 |
577 | /esbuild-windows-arm64/0.15.10:
578 | resolution: {integrity: sha512-S+th4F+F8VLsHLR0zrUcG+Et4hx0RKgK1eyHc08kztmLOES8BWwMiaGdoW9hiXuzznXQ0I/Fg904MNbr11Nktw==}
579 | engines: {node: '>=12'}
580 | cpu: [arm64]
581 | os: [win32]
582 | requiresBuild: true
583 | dev: true
584 | optional: true
585 |
586 | /esbuild/0.15.10:
587 | resolution: {integrity: sha512-N7wBhfJ/E5fzn/SpNgX+oW2RLRjwaL8Y0ezqNqhjD6w0H2p0rDuEz2FKZqpqLnO8DCaWumKe8dsC/ljvVSSxng==}
588 | engines: {node: '>=12'}
589 | hasBin: true
590 | requiresBuild: true
591 | optionalDependencies:
592 | '@esbuild/android-arm': 0.15.10
593 | '@esbuild/linux-loong64': 0.15.10
594 | esbuild-android-64: 0.15.10
595 | esbuild-android-arm64: 0.15.10
596 | esbuild-darwin-64: 0.15.10
597 | esbuild-darwin-arm64: 0.15.10
598 | esbuild-freebsd-64: 0.15.10
599 | esbuild-freebsd-arm64: 0.15.10
600 | esbuild-linux-32: 0.15.10
601 | esbuild-linux-64: 0.15.10
602 | esbuild-linux-arm: 0.15.10
603 | esbuild-linux-arm64: 0.15.10
604 | esbuild-linux-mips64le: 0.15.10
605 | esbuild-linux-ppc64le: 0.15.10
606 | esbuild-linux-riscv64: 0.15.10
607 | esbuild-linux-s390x: 0.15.10
608 | esbuild-netbsd-64: 0.15.10
609 | esbuild-openbsd-64: 0.15.10
610 | esbuild-sunos-64: 0.15.10
611 | esbuild-windows-32: 0.15.10
612 | esbuild-windows-64: 0.15.10
613 | esbuild-windows-arm64: 0.15.10
614 | dev: true
615 |
616 | /escape-string-regexp/4.0.0:
617 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
618 | engines: {node: '>=10'}
619 | dev: true
620 |
621 | /eslint-scope/5.1.1:
622 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
623 | engines: {node: '>=8.0.0'}
624 | dependencies:
625 | esrecurse: 4.3.0
626 | estraverse: 4.3.0
627 | dev: true
628 |
629 | /eslint-scope/7.1.1:
630 | resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==}
631 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
632 | dependencies:
633 | esrecurse: 4.3.0
634 | estraverse: 5.3.0
635 | dev: true
636 |
637 | /eslint-utils/3.0.0_eslint@8.25.0:
638 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==}
639 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0}
640 | peerDependencies:
641 | eslint: '>=5'
642 | dependencies:
643 | eslint: 8.25.0
644 | eslint-visitor-keys: 2.1.0
645 | dev: true
646 |
647 | /eslint-visitor-keys/2.1.0:
648 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==}
649 | engines: {node: '>=10'}
650 | dev: true
651 |
652 | /eslint-visitor-keys/3.3.0:
653 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==}
654 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
655 | dev: true
656 |
657 | /eslint/8.25.0:
658 | resolution: {integrity: sha512-DVlJOZ4Pn50zcKW5bYH7GQK/9MsoQG2d5eDH0ebEkE8PbgzTTmtt/VTH9GGJ4BfeZCpBLqFfvsjX35UacUL83A==}
659 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
660 | hasBin: true
661 | dependencies:
662 | '@eslint/eslintrc': 1.3.3
663 | '@humanwhocodes/config-array': 0.10.7
664 | '@humanwhocodes/module-importer': 1.0.1
665 | ajv: 6.12.6
666 | chalk: 4.1.2
667 | cross-spawn: 7.0.3
668 | debug: 4.3.3
669 | doctrine: 3.0.0
670 | escape-string-regexp: 4.0.0
671 | eslint-scope: 7.1.1
672 | eslint-utils: 3.0.0_eslint@8.25.0
673 | eslint-visitor-keys: 3.3.0
674 | espree: 9.4.0
675 | esquery: 1.4.0
676 | esutils: 2.0.3
677 | fast-deep-equal: 3.1.3
678 | file-entry-cache: 6.0.1
679 | find-up: 5.0.0
680 | glob-parent: 6.0.2
681 | globals: 13.17.0
682 | globby: 11.1.0
683 | grapheme-splitter: 1.0.4
684 | ignore: 5.2.0
685 | import-fresh: 3.3.0
686 | imurmurhash: 0.1.4
687 | is-glob: 4.0.3
688 | js-sdsl: 4.1.5
689 | js-yaml: 4.1.0
690 | json-stable-stringify-without-jsonify: 1.0.1
691 | levn: 0.4.1
692 | lodash.merge: 4.6.2
693 | minimatch: 3.1.2
694 | natural-compare: 1.4.0
695 | optionator: 0.9.1
696 | regexpp: 3.2.0
697 | strip-ansi: 6.0.1
698 | strip-json-comments: 3.1.1
699 | text-table: 0.2.0
700 | transitivePeerDependencies:
701 | - supports-color
702 | dev: true
703 |
704 | /espree/9.4.0:
705 | resolution: {integrity: sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw==}
706 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
707 | dependencies:
708 | acorn: 8.8.0
709 | acorn-jsx: 5.3.2_acorn@8.8.0
710 | eslint-visitor-keys: 3.3.0
711 | dev: true
712 |
713 | /esquery/1.4.0:
714 | resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==}
715 | engines: {node: '>=0.10'}
716 | dependencies:
717 | estraverse: 5.3.0
718 | dev: true
719 |
720 | /esrecurse/4.3.0:
721 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
722 | engines: {node: '>=4.0'}
723 | dependencies:
724 | estraverse: 5.3.0
725 | dev: true
726 |
727 | /estraverse/4.3.0:
728 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
729 | engines: {node: '>=4.0'}
730 | dev: true
731 |
732 | /estraverse/5.3.0:
733 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
734 | engines: {node: '>=4.0'}
735 | dev: true
736 |
737 | /esutils/2.0.3:
738 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
739 | engines: {node: '>=0.10.0'}
740 | dev: true
741 |
742 | /eventemitter3/4.0.7:
743 | resolution: {integrity: sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==}
744 | dev: false
745 |
746 | /fast-deep-equal/3.1.3:
747 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
748 |
749 | /fast-glob/3.2.11:
750 | resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==}
751 | engines: {node: '>=8.6.0'}
752 | dependencies:
753 | '@nodelib/fs.stat': 2.0.5
754 | '@nodelib/fs.walk': 1.2.8
755 | glob-parent: 5.1.2
756 | merge2: 1.4.1
757 | micromatch: 4.0.4
758 | dev: true
759 |
760 | /fast-json-stable-stringify/2.1.0:
761 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
762 | dev: true
763 |
764 | /fast-levenshtein/2.0.6:
765 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
766 | dev: true
767 |
768 | /fastq/1.13.0:
769 | resolution: {integrity: sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==}
770 | dependencies:
771 | reusify: 1.0.4
772 | dev: true
773 |
774 | /file-entry-cache/6.0.1:
775 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
776 | engines: {node: ^10.12.0 || >=12.0.0}
777 | dependencies:
778 | flat-cache: 3.0.4
779 | dev: true
780 |
781 | /fill-range/7.0.1:
782 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
783 | engines: {node: '>=8'}
784 | dependencies:
785 | to-regex-range: 5.0.1
786 | dev: true
787 |
788 | /find-up/5.0.0:
789 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
790 | engines: {node: '>=10'}
791 | dependencies:
792 | locate-path: 6.0.0
793 | path-exists: 4.0.0
794 | dev: true
795 |
796 | /flat-cache/3.0.4:
797 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==}
798 | engines: {node: ^10.12.0 || >=12.0.0}
799 | dependencies:
800 | flatted: 3.2.5
801 | rimraf: 3.0.2
802 | dev: true
803 |
804 | /flatted/3.2.5:
805 | resolution: {integrity: sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==}
806 | dev: true
807 |
808 | /fs.realpath/1.0.0:
809 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
810 | dev: true
811 |
812 | /fsevents/2.3.2:
813 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
814 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
815 | os: [darwin]
816 | requiresBuild: true
817 | dev: true
818 | optional: true
819 |
820 | /function-bind/1.1.1:
821 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
822 | dev: true
823 |
824 | /glob-parent/5.1.2:
825 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
826 | engines: {node: '>= 6'}
827 | dependencies:
828 | is-glob: 4.0.3
829 | dev: true
830 |
831 | /glob-parent/6.0.2:
832 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
833 | engines: {node: '>=10.13.0'}
834 | dependencies:
835 | is-glob: 4.0.3
836 | dev: true
837 |
838 | /glob/7.2.0:
839 | resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==}
840 | dependencies:
841 | fs.realpath: 1.0.0
842 | inflight: 1.0.6
843 | inherits: 2.0.4
844 | minimatch: 3.1.2
845 | once: 1.4.0
846 | path-is-absolute: 1.0.1
847 | dev: true
848 |
849 | /globals/13.17.0:
850 | resolution: {integrity: sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==}
851 | engines: {node: '>=8'}
852 | dependencies:
853 | type-fest: 0.20.2
854 | dev: true
855 |
856 | /globby/11.1.0:
857 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
858 | engines: {node: '>=10'}
859 | dependencies:
860 | array-union: 2.1.0
861 | dir-glob: 3.0.1
862 | fast-glob: 3.2.11
863 | ignore: 5.2.0
864 | merge2: 1.4.1
865 | slash: 3.0.0
866 | dev: true
867 |
868 | /grapheme-splitter/1.0.4:
869 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==}
870 | dev: true
871 |
872 | /has-flag/4.0.0:
873 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
874 | engines: {node: '>=8'}
875 | dev: true
876 |
877 | /has/1.0.3:
878 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
879 | engines: {node: '>= 0.4.0'}
880 | dependencies:
881 | function-bind: 1.1.1
882 | dev: true
883 |
884 | /ignore/5.2.0:
885 | resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==}
886 | engines: {node: '>= 4'}
887 | dev: true
888 |
889 | /import-fresh/3.3.0:
890 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==}
891 | engines: {node: '>=6'}
892 | dependencies:
893 | parent-module: 1.0.1
894 | resolve-from: 4.0.0
895 | dev: true
896 |
897 | /imurmurhash/0.1.4:
898 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
899 | engines: {node: '>=0.8.19'}
900 | dev: true
901 |
902 | /inflight/1.0.6:
903 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
904 | dependencies:
905 | once: 1.4.0
906 | wrappy: 1.0.2
907 | dev: true
908 |
909 | /inherits/2.0.3:
910 | resolution: {integrity: sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==}
911 | dev: false
912 |
913 | /inherits/2.0.4:
914 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
915 | dev: true
916 |
917 | /is-core-module/2.10.0:
918 | resolution: {integrity: sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==}
919 | dependencies:
920 | has: 1.0.3
921 | dev: true
922 |
923 | /is-extglob/2.1.1:
924 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
925 | engines: {node: '>=0.10.0'}
926 | dev: true
927 |
928 | /is-glob/4.0.3:
929 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
930 | engines: {node: '>=0.10.0'}
931 | dependencies:
932 | is-extglob: 2.1.1
933 | dev: true
934 |
935 | /is-number/7.0.0:
936 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
937 | engines: {node: '>=0.12.0'}
938 | dev: true
939 |
940 | /isexe/2.0.0:
941 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
942 | dev: true
943 |
944 | /js-sdsl/4.1.5:
945 | resolution: {integrity: sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q==}
946 | dev: true
947 |
948 | /js-yaml/4.1.0:
949 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==}
950 | hasBin: true
951 | dependencies:
952 | argparse: 2.0.1
953 | dev: true
954 |
955 | /json-schema-traverse/0.4.1:
956 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
957 | dev: true
958 |
959 | /json-stable-stringify-without-jsonify/1.0.1:
960 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
961 | dev: true
962 |
963 | /levn/0.4.1:
964 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
965 | engines: {node: '>= 0.8.0'}
966 | dependencies:
967 | prelude-ls: 1.2.1
968 | type-check: 0.4.0
969 | dev: true
970 |
971 | /locate-path/6.0.0:
972 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
973 | engines: {node: '>=10'}
974 | dependencies:
975 | p-locate: 5.0.0
976 | dev: true
977 |
978 | /lodash-es/4.17.21:
979 | resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
980 | dev: false
981 |
982 | /lodash.merge/4.6.2:
983 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
984 | dev: true
985 |
986 | /lower-case/2.0.2:
987 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
988 | dependencies:
989 | tslib: 2.3.1
990 | dev: false
991 |
992 | /lru-cache/6.0.0:
993 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
994 | engines: {node: '>=10'}
995 | dependencies:
996 | yallist: 4.0.0
997 | dev: true
998 |
999 | /merge2/1.4.1:
1000 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
1001 | engines: {node: '>= 8'}
1002 | dev: true
1003 |
1004 | /micromatch/4.0.4:
1005 | resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==}
1006 | engines: {node: '>=8.6'}
1007 | dependencies:
1008 | braces: 3.0.2
1009 | picomatch: 2.3.1
1010 | dev: true
1011 |
1012 | /minimatch/3.1.2:
1013 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1014 | dependencies:
1015 | brace-expansion: 1.1.11
1016 | dev: true
1017 |
1018 | /ms/2.1.2:
1019 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
1020 |
1021 | /nanoid/3.3.4:
1022 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
1023 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1024 | hasBin: true
1025 | dev: true
1026 |
1027 | /natural-compare/1.4.0:
1028 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
1029 | dev: true
1030 |
1031 | /no-case/3.0.4:
1032 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
1033 | dependencies:
1034 | lower-case: 2.0.2
1035 | tslib: 2.3.1
1036 | dev: false
1037 |
1038 | /once/1.4.0:
1039 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
1040 | dependencies:
1041 | wrappy: 1.0.2
1042 | dev: true
1043 |
1044 | /optionator/0.9.1:
1045 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==}
1046 | engines: {node: '>= 0.8.0'}
1047 | dependencies:
1048 | deep-is: 0.1.4
1049 | fast-levenshtein: 2.0.6
1050 | levn: 0.4.1
1051 | prelude-ls: 1.2.1
1052 | type-check: 0.4.0
1053 | word-wrap: 1.2.3
1054 | dev: true
1055 |
1056 | /p-limit/3.1.0:
1057 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
1058 | engines: {node: '>=10'}
1059 | dependencies:
1060 | yocto-queue: 0.1.0
1061 | dev: true
1062 |
1063 | /p-locate/5.0.0:
1064 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
1065 | engines: {node: '>=10'}
1066 | dependencies:
1067 | p-limit: 3.1.0
1068 | dev: true
1069 |
1070 | /parent-module/1.0.1:
1071 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
1072 | engines: {node: '>=6'}
1073 | dependencies:
1074 | callsites: 3.1.0
1075 | dev: true
1076 |
1077 | /path-exists/4.0.0:
1078 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1079 | engines: {node: '>=8'}
1080 | dev: true
1081 |
1082 | /path-is-absolute/1.0.1:
1083 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
1084 | engines: {node: '>=0.10.0'}
1085 | dev: true
1086 |
1087 | /path-key/3.1.1:
1088 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
1089 | engines: {node: '>=8'}
1090 | dev: true
1091 |
1092 | /path-parse/1.0.7:
1093 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1094 | dev: true
1095 |
1096 | /path-type/4.0.0:
1097 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
1098 | engines: {node: '>=8'}
1099 | dev: true
1100 |
1101 | /path/0.12.7:
1102 | resolution: {integrity: sha512-aXXC6s+1w7otVF9UletFkFcDsJeO7lSZBPUQhtb5O0xJe8LtYhj/GxldoL09bBj9+ZmE2hNoHqQSFMN5fikh4Q==}
1103 | dependencies:
1104 | process: 0.11.10
1105 | util: 0.10.4
1106 | dev: false
1107 |
1108 | /picocolors/1.0.0:
1109 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1110 | dev: true
1111 |
1112 | /picomatch/2.3.1:
1113 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1114 | engines: {node: '>=8.6'}
1115 | dev: true
1116 |
1117 | /postcss/8.4.18:
1118 | resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==}
1119 | engines: {node: ^10 || ^12 || >=14}
1120 | dependencies:
1121 | nanoid: 3.3.4
1122 | picocolors: 1.0.0
1123 | source-map-js: 1.0.2
1124 | dev: true
1125 |
1126 | /prelude-ls/1.2.1:
1127 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
1128 | engines: {node: '>= 0.8.0'}
1129 | dev: true
1130 |
1131 | /process/0.11.10:
1132 | resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
1133 | engines: {node: '>= 0.6.0'}
1134 | dev: false
1135 |
1136 | /punycode/2.1.1:
1137 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==}
1138 | engines: {node: '>=6'}
1139 | dev: true
1140 |
1141 | /queue-microtask/1.2.3:
1142 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
1143 | dev: true
1144 |
1145 | /regexpp/3.2.0:
1146 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==}
1147 | engines: {node: '>=8'}
1148 | dev: true
1149 |
1150 | /resolve-from/4.0.0:
1151 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
1152 | engines: {node: '>=4'}
1153 | dev: true
1154 |
1155 | /resolve/1.22.1:
1156 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
1157 | hasBin: true
1158 | dependencies:
1159 | is-core-module: 2.10.0
1160 | path-parse: 1.0.7
1161 | supports-preserve-symlinks-flag: 1.0.0
1162 | dev: true
1163 |
1164 | /reusify/1.0.4:
1165 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==}
1166 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
1167 | dev: true
1168 |
1169 | /rimraf/3.0.2:
1170 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
1171 | hasBin: true
1172 | dependencies:
1173 | glob: 7.2.0
1174 | dev: true
1175 |
1176 | /rollup/2.78.1:
1177 | resolution: {integrity: sha512-VeeCgtGi4P+o9hIg+xz4qQpRl6R401LWEXBmxYKOV4zlF82lyhgh2hTZnheFUbANE8l2A41F458iwj2vEYaXJg==}
1178 | engines: {node: '>=10.0.0'}
1179 | hasBin: true
1180 | optionalDependencies:
1181 | fsevents: 2.3.2
1182 | dev: true
1183 |
1184 | /run-parallel/1.2.0:
1185 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
1186 | dependencies:
1187 | queue-microtask: 1.2.3
1188 | dev: true
1189 |
1190 | /semver/7.3.8:
1191 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==}
1192 | engines: {node: '>=10'}
1193 | hasBin: true
1194 | dependencies:
1195 | lru-cache: 6.0.0
1196 | dev: true
1197 |
1198 | /shebang-command/2.0.0:
1199 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1200 | engines: {node: '>=8'}
1201 | dependencies:
1202 | shebang-regex: 3.0.0
1203 | dev: true
1204 |
1205 | /shebang-regex/3.0.0:
1206 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1207 | engines: {node: '>=8'}
1208 | dev: true
1209 |
1210 | /slash/3.0.0:
1211 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1212 | engines: {node: '>=8'}
1213 | dev: true
1214 |
1215 | /snake-case/3.0.4:
1216 | resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
1217 | dependencies:
1218 | dot-case: 3.0.4
1219 | tslib: 2.3.1
1220 | dev: false
1221 |
1222 | /source-map-js/1.0.2:
1223 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
1224 | engines: {node: '>=0.10.0'}
1225 | dev: true
1226 |
1227 | /strip-ansi/6.0.1:
1228 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1229 | engines: {node: '>=8'}
1230 | dependencies:
1231 | ansi-regex: 5.0.1
1232 | dev: true
1233 |
1234 | /strip-json-comments/3.1.1:
1235 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
1236 | engines: {node: '>=8'}
1237 | dev: true
1238 |
1239 | /supports-color/7.2.0:
1240 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1241 | engines: {node: '>=8'}
1242 | dependencies:
1243 | has-flag: 4.0.0
1244 | dev: true
1245 |
1246 | /supports-preserve-symlinks-flag/1.0.0:
1247 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1248 | engines: {node: '>= 0.4'}
1249 | dev: true
1250 |
1251 | /text-table/0.2.0:
1252 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
1253 | dev: true
1254 |
1255 | /to-regex-range/5.0.1:
1256 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1257 | engines: {node: '>=8.0'}
1258 | dependencies:
1259 | is-number: 7.0.0
1260 | dev: true
1261 |
1262 | /tslib/1.14.1:
1263 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
1264 | dev: true
1265 |
1266 | /tslib/2.3.1:
1267 | resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==}
1268 | dev: false
1269 |
1270 | /tsutils/3.21.0_typescript@4.8.4:
1271 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
1272 | engines: {node: '>= 6'}
1273 | peerDependencies:
1274 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
1275 | dependencies:
1276 | tslib: 1.14.1
1277 | typescript: 4.8.4
1278 | dev: true
1279 |
1280 | /type-check/0.4.0:
1281 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
1282 | engines: {node: '>= 0.8.0'}
1283 | dependencies:
1284 | prelude-ls: 1.2.1
1285 | dev: true
1286 |
1287 | /type-fest/0.20.2:
1288 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
1289 | engines: {node: '>=10'}
1290 | dev: true
1291 |
1292 | /typescript/4.8.4:
1293 | resolution: {integrity: sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ==}
1294 | engines: {node: '>=4.2.0'}
1295 | hasBin: true
1296 | dev: true
1297 |
1298 | /uri-js/4.4.1:
1299 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
1300 | dependencies:
1301 | punycode: 2.1.1
1302 | dev: true
1303 |
1304 | /util/0.10.4:
1305 | resolution: {integrity: sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==}
1306 | dependencies:
1307 | inherits: 2.0.3
1308 | dev: false
1309 |
1310 | /vite/3.1.8:
1311 | resolution: {integrity: sha512-m7jJe3nufUbuOfotkntGFupinL/fmuTNuQmiVE7cH2IZMuf4UbfbGYMUT3jVWgGYuRVLY9j8NnrRqgw5rr5QTg==}
1312 | engines: {node: ^14.18.0 || >=16.0.0}
1313 | hasBin: true
1314 | peerDependencies:
1315 | less: '*'
1316 | sass: '*'
1317 | stylus: '*'
1318 | terser: ^5.4.0
1319 | peerDependenciesMeta:
1320 | less:
1321 | optional: true
1322 | sass:
1323 | optional: true
1324 | stylus:
1325 | optional: true
1326 | terser:
1327 | optional: true
1328 | dependencies:
1329 | esbuild: 0.15.10
1330 | postcss: 8.4.18
1331 | resolve: 1.22.1
1332 | rollup: 2.78.1
1333 | optionalDependencies:
1334 | fsevents: 2.3.2
1335 | dev: true
1336 |
1337 | /which/2.0.2:
1338 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1339 | engines: {node: '>= 8'}
1340 | hasBin: true
1341 | dependencies:
1342 | isexe: 2.0.0
1343 | dev: true
1344 |
1345 | /word-wrap/1.2.3:
1346 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
1347 | engines: {node: '>=0.10.0'}
1348 | dev: true
1349 |
1350 | /wrappy/1.0.2:
1351 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1352 | dev: true
1353 |
1354 | /yallist/4.0.0:
1355 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
1356 | dev: true
1357 |
1358 | /yocto-queue/0.1.0:
1359 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1360 | engines: {node: '>=10'}
1361 | dev: true
1362 |
--------------------------------------------------------------------------------
/screencast.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/vipzhicheng/logseq-plugin-task-management-shortcuts/b3f9afb44ab3ade456779b74af54d9d42b632350/screencast.gif
--------------------------------------------------------------------------------
/src/main.ts:
--------------------------------------------------------------------------------
1 | import '@logseq/libs';
2 |
3 | const settingsVersion = 'v2';
4 | export const defaultSettings = {
5 | keyBindings: {
6 | 1: 'ctrl+1',
7 | 2: 'ctrl+2',
8 | 3: 'ctrl+3',
9 | 4: 'ctrl+4',
10 | 5: 'ctrl+5',
11 | 6: 'ctrl+6',
12 | 7: 'ctrl+7',
13 | 0: 'ctrl+0',
14 | },
15 | tasks: ['TODO', 'DOING', 'DONE', 'LATER', 'NOW', 'WAITING', 'CANCELLED'],
16 | settingsVersion,
17 | disabled: false,
18 | };
19 |
20 | export type DefaultSettingsType = typeof defaultSettings;
21 |
22 | const initSettings = () => {
23 | let settings = logseq.settings;
24 |
25 | const shouldUpdateSettings =
26 | !settings || settings.settingsVersion != defaultSettings.settingsVersion;
27 |
28 | if (shouldUpdateSettings) {
29 | settings = defaultSettings;
30 | logseq.updateSettings(settings);
31 | }
32 | };
33 |
34 | const getSettings = (
35 | key: string | undefined,
36 | defaultValue: any = undefined
37 | ) => {
38 | let settings = logseq.settings;
39 | const merged = Object.assign(defaultSettings, settings);
40 | return key ? (merged[key] ? merged[key] : defaultValue) : merged;
41 | };
42 |
43 | async function main() {
44 | // settings
45 | initSettings();
46 |
47 | const keyBindings = getSettings('keyBindings', {});
48 | const tasks = getSettings('tasks', []);
49 |
50 | async function setTask(taskBindedId: number) {
51 | if (tasks.length < taskBindedId) {
52 | return;
53 | }
54 |
55 | const selected = await logseq.Editor.getSelectedBlocks();
56 | if (selected && selected?.length > 1) {
57 | for (let block of selected) {
58 | if (block?.uuid) {
59 | const regx = new RegExp(`^${tasks.join('|')}`, 'gm');
60 | let content = regx.test(block.content)
61 | ? block.content.replace(regx, '').trimStart()
62 | : block.content;
63 | if (taskBindedId > 0) {
64 | await logseq.Editor.updateBlock(
65 | block.uuid,
66 | tasks[taskBindedId - 1] + ' ' + content
67 | );
68 | } else {
69 | await logseq.Editor.updateBlock(block.uuid, content);
70 | }
71 | }
72 | }
73 | } else {
74 | const block = await logseq.Editor.getCurrentBlock();
75 | if (block?.uuid) {
76 | const regx = new RegExp(`^${tasks.join('|')}`, 'gm');
77 | let content = regx.test(block.content)
78 | ? block.content.replace(regx, '').trimStart()
79 | : block.content;
80 | if (taskBindedId > 0) {
81 | await logseq.Editor.updateBlock(
82 | block.uuid,
83 | tasks[taskBindedId - 1] + ' ' + content
84 | );
85 | } else {
86 | await logseq.Editor.updateBlock(block.uuid, content);
87 | }
88 | }
89 | }
90 | }
91 |
92 | for (let taskBindedId of [...new Array(tasks.length + 1).keys()]) {
93 | logseq.App.registerCommandPalette(
94 | {
95 | key: `task-management-shortcuts-task-${taskBindedId}`,
96 | label: `Set block to task ${taskBindedId}`,
97 | keybinding: {
98 | mode: 'global',
99 | binding: keyBindings[taskBindedId] || 'ctrl+' + taskBindedId,
100 | },
101 | },
102 | async () => {
103 | await setTask(taskBindedId);
104 | }
105 | );
106 | }
107 | }
108 |
109 | logseq.ready(main).catch(console.error);
110 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | /* Visit https://aka.ms/tsconfig.json to read more about this file */
4 |
5 | /* Basic Options */
6 | // "incremental": true, /* Enable incremental compilation */
7 | "target": "ESNext" /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019', 'ES2020', or 'ESNEXT'. */,
8 | "module": "commonjs" /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', 'es2020', or 'ESNext'. */,
9 | "lib": [
10 | "ESNext",
11 | "DOM"
12 | ] /* Specify library files to be included in the compilation. */,
13 | // "allowJs": true, /* Allow javascript files to be compiled. */
14 | // "checkJs": true, /* Report errors in .js files. */
15 | // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */
16 | // "declaration": true, /* Generates corresponding '.d.ts' file. */
17 | // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */
18 | "sourceMap": true /* Generates corresponding '.map' file. */,
19 | // "outFile": "./", /* Concatenate and emit output to single file. */
20 | // "outDir": "./", /* Redirect output structure to the directory. */
21 | // "rootDir": "./", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */
22 | // "composite": true, /* Enable project compilation */
23 | // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */
24 | // "removeComments": true, /* Do not emit comments to output. */
25 | // "noEmit": true, /* Do not emit outputs. */
26 | // "importHelpers": true, /* Import emit helpers from 'tslib'. */
27 | // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */
28 | // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */
29 |
30 | /* Strict Type-Checking Options */
31 | "strict": true /* Enable all strict type-checking options. */,
32 | // "noImplicitAny": true, /* Raise error on expressions and declarations with an implied 'any' type. */
33 | // "strictNullChecks": true, /* Enable strict null checks. */
34 | // "strictFunctionTypes": true, /* Enable strict checking of function types. */
35 | // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */
36 | // "strictPropertyInitialization": true, /* Enable strict checking of property initialization in classes. */
37 | // "noImplicitThis": true, /* Raise error on 'this' expressions with an implied 'any' type. */
38 | // "alwaysStrict": true, /* Parse in strict mode and emit "use strict" for each source file. */
39 |
40 | /* Additional Checks */
41 | // "noUnusedLocals": true, /* Report errors on unused locals. */
42 | // "noUnusedParameters": true, /* Report errors on unused parameters. */
43 | // "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
44 | // "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
45 |
46 | /* Module Resolution Options */
47 | // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */
48 | "baseUrl": "./" /* Base directory to resolve non-absolute module names. */,
49 | "paths": {
50 | "@/*": ["src/*"]
51 | } /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */,
52 | // "rootDirs": [], /* List of root folders whose combined content represents the structure of the project at runtime. */
53 | // "typeRoots": [], /* List of folders to include type definitions from. */
54 | // "types": [], /* Type declaration files to be included in compilation. */
55 | // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */
56 | "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */,
57 | // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */
58 | // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
59 |
60 | /* Source Map Options */
61 | // "sourceRoot": "", /* Specify the location where debugger should locate TypeScript files instead of source locations. */
62 | // "mapRoot": "", /* Specify the location where debugger should locate map files instead of generated locations. */
63 | // "inlineSourceMap": true, /* Emit a single file with source maps instead of having a separate file. */
64 | // "inlineSources": true, /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
65 |
66 | /* Experimental Options */
67 | "experimentalDecorators": true /* Enables experimental support for ES7 decorators. */,
68 | // "emitDecoratorMetadata": true, /* Enables experimental support for emitting type metadata for decorators. */
69 |
70 | /* Advanced Options */
71 | "skipLibCheck": true /* Skip type checking of declaration files. */,
72 | "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */
73 | }
74 | }
75 |
--------------------------------------------------------------------------------
/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from 'vite';
2 | import path from 'path';
3 |
4 | export default defineConfig({
5 | base: './',
6 | build: {
7 | sourcemap: false,
8 | target: 'esnext',
9 | minify: 'esbuild',
10 | chunkSizeWarningLimit: 1024,
11 | rollupOptions: {
12 | output: {
13 | manualChunks: {
14 | logseq: ['@logseq/libs'],
15 | },
16 | },
17 | },
18 | },
19 | resolve: {
20 | alias: {
21 | '@': path.resolve(__dirname, './src'),
22 | },
23 | },
24 | });
25 |
--------------------------------------------------------------------------------