├── .github
└── workflows
│ └── release.yml
├── .gitignore
├── .vscode
└── extensions.json
├── README.md
├── env.d.ts
├── index.html
├── package.json
├── pnpm-lock.yaml
├── public
├── favicon.ico
└── icon.png
├── scripts
└── update.mjs
├── src-tauri
├── .gitignore
├── .taurignore
├── Cargo.lock
├── Cargo.toml
├── build.rs
├── icons
│ ├── 128x128.png
│ ├── 128x128@2x.png
│ ├── 32x32.png
│ ├── Square107x107Logo.png
│ ├── Square142x142Logo.png
│ ├── Square150x150Logo.png
│ ├── Square284x284Logo.png
│ ├── Square30x30Logo.png
│ ├── Square310x310Logo.png
│ ├── Square44x44Logo.png
│ ├── Square71x71Logo.png
│ ├── Square89x89Logo.png
│ ├── StoreLogo.png
│ ├── icon.icns
│ ├── icon.ico
│ └── icon.png
├── src
│ ├── app_menu.rs
│ ├── db_controller.rs
│ ├── gpt
│ │ └── mod.rs
│ ├── main.rs
│ └── models.rs
└── tauri.conf.json
├── src
├── App.vue
├── assets
│ ├── base.css
│ ├── logo.svg
│ └── main.css
├── components
│ ├── CCanvas.vue
│ ├── ItemEditor.vue
│ ├── TaskItem.vue
│ ├── TaskItems
│ │ ├── TaskItem.vue
│ │ ├── TaskItemForm.vue
│ │ └── TaskTypeItems.vue
│ ├── TheWelcome.vue
│ ├── WelcomeItem.vue
│ └── icons
│ │ ├── IconCommunity.vue
│ │ ├── IconDelete.vue
│ │ ├── IconDocumentation.vue
│ │ ├── IconEcosystem.vue
│ │ ├── IconEdit.vue
│ │ ├── IconSupport.vue
│ │ └── IconTooling.vue
├── libs
│ └── bridge.ts
├── main.ts
├── router
│ └── index.ts
├── stores
│ ├── counter.ts
│ └── task.ts
├── types
│ └── index.d.ts
└── views
│ ├── AboutView.vue
│ ├── AiView.vue
│ ├── HomeView.vue
│ ├── TaskView.vue
│ └── ToDoItem.vue
├── tsconfig.config.json
├── tsconfig.json
└── vite.config.ts
/.github/workflows/release.yml:
--------------------------------------------------------------------------------
1 | name: Release
2 |
3 | on:
4 | push:
5 | tags:
6 | - 'v*'
7 |
8 | jobs:
9 | release:
10 | strategy:
11 | fail-fast: false
12 | matrix:
13 | platform: [macos-latest, ubuntu-latest, windows-latest]
14 | runs-on: ${{ matrix.platform }}
15 | steps:
16 | - name: Checkout repository
17 | uses: actions/checkout@v2
18 |
19 | - name: Install Node
20 | uses: actions/setup-node@v1
21 | with:
22 | node-version: 16
23 |
24 | - name: Install Rust stable
25 | uses: actions-rs/toolchain@v1
26 | with:
27 | toolchain: stable
28 |
29 | - name: Install Dependencies (ubuntu only)
30 | if: matrix.platform == 'ubuntu-latest'
31 | run: |
32 | sudo apt-get update
33 | sudo apt-get install -y libgtk-3-dev webkit2gtk-4.0 libappindicator3-dev librsvg2-dev patchelf
34 |
35 | - run: yarn
36 |
37 | - name: Build Tauri
38 | uses: tauri-apps/tauri-action@v0
39 | env:
40 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
41 | TAURI_PRIVATE_KEY: ${{ secrets.TAURI_PRIVATE_KEY }}
42 | TAURI_KEY_PASSWORD: ''
43 | with:
44 | tagName: v__VERSION__
45 | releaseName: v__VERSION__
46 | update:
47 | needs: release
48 | runs-on: macos-latest
49 | steps:
50 | - name: Checkout repository
51 | uses: actions/checkout@v2
52 |
53 | - name: Install Node
54 | uses: actions/setup-node@v1
55 | with:
56 | node-version: 16
57 |
58 | - run: yarn
59 |
60 | - name: Create Update
61 | run: yarn update
62 | env:
63 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
64 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | .DS_Store
12 | dist
13 | dist-ssr
14 | coverage
15 | *.local
16 |
17 | /cypress/videos/
18 | /cypress/screenshots/
19 |
20 | # Editor directories and files
21 | .vscode/*
22 | !.vscode/extensions.json
23 | .idea
24 | *.suo
25 | *.ntvs*
26 | *.njsproj
27 | *.sln
28 | *.sw?
29 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
3 | }
4 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
随手记
10 |
11 |
12 | > 随手记
13 |
14 | [](./README.md)
15 | [](./README.md)
16 |
17 | ## 👀 预览
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | ---
28 |
29 |
30 |
31 | ## ❓常见问题
32 |
33 | ### 安全吗?
34 |
35 | 他是安全的,代码完全开源,而且数据内容存在本地的sqlite数据库,无任何网络请求。
36 |
37 | #### 开始
38 |
39 | ```bash
40 | # step1:
41 | git clone https://github.com/shijianzhong/tarui-vue3-handle-note
42 |
43 | # step2:
44 | cd tarui-vue3-handle-note
45 |
46 | # step3: install deps
47 | pnpm i
48 |
49 | # step4:
50 | cargo tauri dev
51 |
52 | # step5:
53 | # bundle path: src-tauri/target/release/bundle
54 | cargo tauri build
55 | ```
56 |
57 | ## 用户
58 |
59 | 国内用户如果遇到使用问题或者想交流该项目,可以关注公众号“码农知道的事”,后续文章会更新到这个公众号。开源不易,如果这个项目对你有帮助可以分享给更多人,或者微信扫码赏。
60 |
61 |
62 |
63 |
64 | ## License
65 |
66 | Apache License
67 |
--------------------------------------------------------------------------------
/env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | Vite App
14 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "vue-project",
3 | "version": "0.0.0",
4 | "scripts": {
5 | "dev": "vite",
6 | "build": "run-p type-check build-only",
7 | "preview": "vite preview",
8 | "build-only": "vite build",
9 | "type-check": "vue-tsc --noEmit"
10 | },
11 | "dependencies": {
12 | "@element-plus/icons-vue": "^2.0.10",
13 | "@tauri-apps/api": "1.2.0",
14 | "element-plus": "^2.2.21",
15 | "fabric": "^5.3.0",
16 | "mavon-editor": "3.0.0-beta",
17 | "pinia": "^2.0.23",
18 | "vue": "^3.2.41",
19 | "vue-router": "^4.1.5",
20 | "vuedraggable": "^4.1.0"
21 | },
22 | "devDependencies": {
23 | "@types/node": "^16.11.68",
24 | "@vitejs/plugin-vue": "^3.1.2",
25 | "@vitejs/plugin-vue-jsx": "^2.0.1",
26 | "@vue/tsconfig": "^0.1.3",
27 | "npm-run-all": "^4.1.5",
28 | "sass": "^1.56.1",
29 | "typescript": "~4.7.4",
30 | "vite": "^3.1.8",
31 | "vue-tsc": "^1.0.8"
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.4
2 |
3 | specifiers:
4 | '@element-plus/icons-vue': ^2.0.10
5 | '@tauri-apps/api': 1.2.0
6 | '@types/node': ^16.11.68
7 | '@vitejs/plugin-vue': ^3.1.2
8 | '@vitejs/plugin-vue-jsx': ^2.0.1
9 | '@vue/tsconfig': ^0.1.3
10 | element-plus: ^2.2.21
11 | fabric: ^5.3.0
12 | mavon-editor: 3.0.0-beta
13 | npm-run-all: ^4.1.5
14 | pinia: ^2.0.23
15 | sass: ^1.56.1
16 | typescript: ~4.7.4
17 | vite: ^3.1.8
18 | vue: ^3.2.41
19 | vue-router: ^4.1.5
20 | vue-tsc: ^1.0.8
21 | vuedraggable: ^4.1.0
22 |
23 | dependencies:
24 | '@element-plus/icons-vue': 2.0.10_vue@3.2.41
25 | '@tauri-apps/api': 1.2.0
26 | element-plus: 2.2.21_vue@3.2.41
27 | fabric: 5.3.0
28 | mavon-editor: 3.0.0-beta
29 | pinia: 2.0.23_lrjaoqkmph6q2hmgd3qeuy6rom
30 | vue: 3.2.41
31 | vue-router: 4.1.6_vue@3.2.41
32 | vuedraggable: 4.1.0_vue@3.2.41
33 |
34 | devDependencies:
35 | '@types/node': 16.18.3
36 | '@vitejs/plugin-vue': 3.2.0_vite@3.2.2+vue@3.2.41
37 | '@vitejs/plugin-vue-jsx': 2.1.0_vite@3.2.2+vue@3.2.41
38 | '@vue/tsconfig': 0.1.3_@types+node@16.18.3
39 | npm-run-all: 4.1.5
40 | sass: 1.56.1
41 | typescript: 4.7.4
42 | vite: 3.2.2_sass@1.56.1
43 | vue-tsc: 1.0.9_typescript@4.7.4
44 |
45 | packages:
46 |
47 | /@ampproject/remapping/2.2.0:
48 | resolution: {integrity: sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==}
49 | engines: {node: '>=6.0.0'}
50 | dependencies:
51 | '@jridgewell/gen-mapping': 0.1.1
52 | '@jridgewell/trace-mapping': 0.3.17
53 | dev: true
54 |
55 | /@babel/code-frame/7.18.6:
56 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==}
57 | engines: {node: '>=6.9.0'}
58 | dependencies:
59 | '@babel/highlight': 7.18.6
60 | dev: true
61 |
62 | /@babel/compat-data/7.20.0:
63 | resolution: {integrity: sha512-Gt9jszFJYq7qzXVK4slhc6NzJXnOVmRECWcVjF/T23rNXD9NtWQ0W3qxdg+p9wWIB+VQw3GYV/U2Ha9bRTfs4w==}
64 | engines: {node: '>=6.9.0'}
65 | dev: true
66 |
67 | /@babel/core/7.19.6:
68 | resolution: {integrity: sha512-D2Ue4KHpc6Ys2+AxpIx1BZ8+UegLLLE2p3KJEuJRKmokHOtl49jQ5ny1773KsGLZs8MQvBidAF6yWUJxRqtKtg==}
69 | engines: {node: '>=6.9.0'}
70 | dependencies:
71 | '@ampproject/remapping': 2.2.0
72 | '@babel/code-frame': 7.18.6
73 | '@babel/generator': 7.20.0
74 | '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.19.6
75 | '@babel/helper-module-transforms': 7.19.6
76 | '@babel/helpers': 7.20.0
77 | '@babel/parser': 7.20.0
78 | '@babel/template': 7.18.10
79 | '@babel/traverse': 7.20.0
80 | '@babel/types': 7.20.0
81 | convert-source-map: 1.9.0
82 | debug: 4.3.4
83 | gensync: 1.0.0-beta.2
84 | json5: 2.2.1
85 | semver: 6.3.0
86 | transitivePeerDependencies:
87 | - supports-color
88 | dev: true
89 |
90 | /@babel/generator/7.20.0:
91 | resolution: {integrity: sha512-GUPcXxWibClgmYJuIwC2Bc2Lg+8b9VjaJ+HlNdACEVt+Wlr1eoU1OPZjZRm7Hzl0gaTsUZNQfeihvZJhG7oc3w==}
92 | engines: {node: '>=6.9.0'}
93 | dependencies:
94 | '@babel/types': 7.20.0
95 | '@jridgewell/gen-mapping': 0.3.2
96 | jsesc: 2.5.2
97 | dev: true
98 |
99 | /@babel/helper-annotate-as-pure/7.18.6:
100 | resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==}
101 | engines: {node: '>=6.9.0'}
102 | dependencies:
103 | '@babel/types': 7.20.0
104 | dev: true
105 |
106 | /@babel/helper-compilation-targets/7.20.0_@babel+core@7.19.6:
107 | resolution: {integrity: sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==}
108 | engines: {node: '>=6.9.0'}
109 | peerDependencies:
110 | '@babel/core': ^7.0.0
111 | dependencies:
112 | '@babel/compat-data': 7.20.0
113 | '@babel/core': 7.19.6
114 | '@babel/helper-validator-option': 7.18.6
115 | browserslist: 4.21.4
116 | semver: 6.3.0
117 | dev: true
118 |
119 | /@babel/helper-create-class-features-plugin/7.19.0_@babel+core@7.19.6:
120 | resolution: {integrity: sha512-NRz8DwF4jT3UfrmUoZjd0Uph9HQnP30t7Ash+weACcyNkiYTywpIjDBgReJMKgr+n86sn2nPVVmJ28Dm053Kqw==}
121 | engines: {node: '>=6.9.0'}
122 | peerDependencies:
123 | '@babel/core': ^7.0.0
124 | dependencies:
125 | '@babel/core': 7.19.6
126 | '@babel/helper-annotate-as-pure': 7.18.6
127 | '@babel/helper-environment-visitor': 7.18.9
128 | '@babel/helper-function-name': 7.19.0
129 | '@babel/helper-member-expression-to-functions': 7.18.9
130 | '@babel/helper-optimise-call-expression': 7.18.6
131 | '@babel/helper-replace-supers': 7.19.1
132 | '@babel/helper-split-export-declaration': 7.18.6
133 | transitivePeerDependencies:
134 | - supports-color
135 | dev: true
136 |
137 | /@babel/helper-environment-visitor/7.18.9:
138 | resolution: {integrity: sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==}
139 | engines: {node: '>=6.9.0'}
140 | dev: true
141 |
142 | /@babel/helper-function-name/7.19.0:
143 | resolution: {integrity: sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==}
144 | engines: {node: '>=6.9.0'}
145 | dependencies:
146 | '@babel/template': 7.18.10
147 | '@babel/types': 7.20.0
148 | dev: true
149 |
150 | /@babel/helper-hoist-variables/7.18.6:
151 | resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==}
152 | engines: {node: '>=6.9.0'}
153 | dependencies:
154 | '@babel/types': 7.20.0
155 | dev: true
156 |
157 | /@babel/helper-member-expression-to-functions/7.18.9:
158 | resolution: {integrity: sha512-RxifAh2ZoVU67PyKIO4AMi1wTenGfMR/O/ae0CCRqwgBAt5v7xjdtRw7UoSbsreKrQn5t7r89eruK/9JjYHuDg==}
159 | engines: {node: '>=6.9.0'}
160 | dependencies:
161 | '@babel/types': 7.20.0
162 | dev: true
163 |
164 | /@babel/helper-module-imports/7.18.6:
165 | resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==}
166 | engines: {node: '>=6.9.0'}
167 | dependencies:
168 | '@babel/types': 7.20.0
169 | dev: true
170 |
171 | /@babel/helper-module-transforms/7.19.6:
172 | resolution: {integrity: sha512-fCmcfQo/KYr/VXXDIyd3CBGZ6AFhPFy1TfSEJ+PilGVlQT6jcbqtHAM4C1EciRqMza7/TpOUZliuSH+U6HAhJw==}
173 | engines: {node: '>=6.9.0'}
174 | dependencies:
175 | '@babel/helper-environment-visitor': 7.18.9
176 | '@babel/helper-module-imports': 7.18.6
177 | '@babel/helper-simple-access': 7.19.4
178 | '@babel/helper-split-export-declaration': 7.18.6
179 | '@babel/helper-validator-identifier': 7.19.1
180 | '@babel/template': 7.18.10
181 | '@babel/traverse': 7.20.0
182 | '@babel/types': 7.20.0
183 | transitivePeerDependencies:
184 | - supports-color
185 | dev: true
186 |
187 | /@babel/helper-optimise-call-expression/7.18.6:
188 | resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==}
189 | engines: {node: '>=6.9.0'}
190 | dependencies:
191 | '@babel/types': 7.20.0
192 | dev: true
193 |
194 | /@babel/helper-plugin-utils/7.19.0:
195 | resolution: {integrity: sha512-40Ryx7I8mT+0gaNxm8JGTZFUITNqdLAgdg0hXzeVZxVD6nFsdhQvip6v8dqkRHzsz1VFpFAaOCHNn0vKBL7Czw==}
196 | engines: {node: '>=6.9.0'}
197 | dev: true
198 |
199 | /@babel/helper-replace-supers/7.19.1:
200 | resolution: {integrity: sha512-T7ahH7wV0Hfs46SFh5Jz3s0B6+o8g3c+7TMxu7xKfmHikg7EAZ3I2Qk9LFhjxXq8sL7UkP5JflezNwoZa8WvWw==}
201 | engines: {node: '>=6.9.0'}
202 | dependencies:
203 | '@babel/helper-environment-visitor': 7.18.9
204 | '@babel/helper-member-expression-to-functions': 7.18.9
205 | '@babel/helper-optimise-call-expression': 7.18.6
206 | '@babel/traverse': 7.20.0
207 | '@babel/types': 7.20.0
208 | transitivePeerDependencies:
209 | - supports-color
210 | dev: true
211 |
212 | /@babel/helper-simple-access/7.19.4:
213 | resolution: {integrity: sha512-f9Xq6WqBFqaDfbCzn2w85hwklswz5qsKlh7f08w4Y9yhJHpnNC0QemtSkK5YyOY8kPGvyiwdzZksGUhnGdaUIg==}
214 | engines: {node: '>=6.9.0'}
215 | dependencies:
216 | '@babel/types': 7.20.0
217 | dev: true
218 |
219 | /@babel/helper-split-export-declaration/7.18.6:
220 | resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==}
221 | engines: {node: '>=6.9.0'}
222 | dependencies:
223 | '@babel/types': 7.20.0
224 | dev: true
225 |
226 | /@babel/helper-string-parser/7.19.4:
227 | resolution: {integrity: sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==}
228 | engines: {node: '>=6.9.0'}
229 |
230 | /@babel/helper-validator-identifier/7.19.1:
231 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
232 | engines: {node: '>=6.9.0'}
233 |
234 | /@babel/helper-validator-option/7.18.6:
235 | resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==}
236 | engines: {node: '>=6.9.0'}
237 | dev: true
238 |
239 | /@babel/helpers/7.20.0:
240 | resolution: {integrity: sha512-aGMjYraN0zosCEthoGLdqot1oRsmxVTQRHadsUPz5QM44Zej2PYRz7XiDE7GqnkZnNtLbOuxqoZw42vkU7+XEQ==}
241 | engines: {node: '>=6.9.0'}
242 | dependencies:
243 | '@babel/template': 7.18.10
244 | '@babel/traverse': 7.20.0
245 | '@babel/types': 7.20.0
246 | transitivePeerDependencies:
247 | - supports-color
248 | dev: true
249 |
250 | /@babel/highlight/7.18.6:
251 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==}
252 | engines: {node: '>=6.9.0'}
253 | dependencies:
254 | '@babel/helper-validator-identifier': 7.19.1
255 | chalk: 2.4.2
256 | js-tokens: 4.0.0
257 | dev: true
258 |
259 | /@babel/parser/7.20.0:
260 | resolution: {integrity: sha512-G9VgAhEaICnz8iiJeGJQyVl6J2nTjbW0xeisva0PK6XcKsga7BIaqm4ZF8Rg1Wbaqmy6znspNqhPaPkyukujzg==}
261 | engines: {node: '>=6.0.0'}
262 | hasBin: true
263 | dependencies:
264 | '@babel/types': 7.20.0
265 |
266 | /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.19.6:
267 | resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==}
268 | engines: {node: '>=6.9.0'}
269 | peerDependencies:
270 | '@babel/core': ^7.0.0-0
271 | dependencies:
272 | '@babel/core': 7.19.6
273 | '@babel/helper-plugin-utils': 7.19.0
274 | dev: true
275 |
276 | /@babel/plugin-syntax-typescript/7.20.0_@babel+core@7.19.6:
277 | resolution: {integrity: sha512-rd9TkG+u1CExzS4SM1BlMEhMXwFLKVjOAFFCDx9PbX5ycJWDoWMcwdJH9RhkPu1dOgn5TrxLot/Gx6lWFuAUNQ==}
278 | engines: {node: '>=6.9.0'}
279 | peerDependencies:
280 | '@babel/core': ^7.0.0-0
281 | dependencies:
282 | '@babel/core': 7.19.6
283 | '@babel/helper-plugin-utils': 7.19.0
284 | dev: true
285 |
286 | /@babel/plugin-transform-typescript/7.20.0_@babel+core@7.19.6:
287 | resolution: {integrity: sha512-xOAsAFaun3t9hCwZ13Qe7gq423UgMZ6zAgmLxeGGapFqlT/X3L5qT2btjiVLlFn7gWtMaVyceS5VxGAuKbgizw==}
288 | engines: {node: '>=6.9.0'}
289 | peerDependencies:
290 | '@babel/core': ^7.0.0-0
291 | dependencies:
292 | '@babel/core': 7.19.6
293 | '@babel/helper-create-class-features-plugin': 7.19.0_@babel+core@7.19.6
294 | '@babel/helper-plugin-utils': 7.19.0
295 | '@babel/plugin-syntax-typescript': 7.20.0_@babel+core@7.19.6
296 | transitivePeerDependencies:
297 | - supports-color
298 | dev: true
299 |
300 | /@babel/template/7.18.10:
301 | resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==}
302 | engines: {node: '>=6.9.0'}
303 | dependencies:
304 | '@babel/code-frame': 7.18.6
305 | '@babel/parser': 7.20.0
306 | '@babel/types': 7.20.0
307 | dev: true
308 |
309 | /@babel/traverse/7.20.0:
310 | resolution: {integrity: sha512-5+cAXQNARgjRUK0JWu2UBwja4JLSO/rBMPJzpsKb+oBF5xlUuCfljQepS4XypBQoiigL0VQjTZy6WiONtUdScQ==}
311 | engines: {node: '>=6.9.0'}
312 | dependencies:
313 | '@babel/code-frame': 7.18.6
314 | '@babel/generator': 7.20.0
315 | '@babel/helper-environment-visitor': 7.18.9
316 | '@babel/helper-function-name': 7.19.0
317 | '@babel/helper-hoist-variables': 7.18.6
318 | '@babel/helper-split-export-declaration': 7.18.6
319 | '@babel/parser': 7.20.0
320 | '@babel/types': 7.20.0
321 | debug: 4.3.4
322 | globals: 11.12.0
323 | transitivePeerDependencies:
324 | - supports-color
325 | dev: true
326 |
327 | /@babel/types/7.20.0:
328 | resolution: {integrity: sha512-Jlgt3H0TajCW164wkTOTzHkZb075tMQMULzrLUoUeKmO7eFL96GgDxf7/Axhc5CAuKE3KFyVW1p6ysKsi2oXAg==}
329 | engines: {node: '>=6.9.0'}
330 | dependencies:
331 | '@babel/helper-string-parser': 7.19.4
332 | '@babel/helper-validator-identifier': 7.19.1
333 | to-fast-properties: 2.0.0
334 |
335 | /@ctrl/tinycolor/3.4.1:
336 | resolution: {integrity: sha512-ej5oVy6lykXsvieQtqZxCOaLT+xD4+QNarq78cIYISHmZXshCvROLudpQN3lfL8G0NL7plMSSK+zlyvCaIJ4Iw==}
337 | engines: {node: '>=10'}
338 | dev: false
339 |
340 | /@element-plus/icons-vue/2.0.10_vue@3.2.41:
341 | resolution: {integrity: sha512-ygEZ1mwPjcPo/OulhzLE7mtDrQBWI8vZzEWSNB2W/RNCRjoQGwbaK4N8lV4rid7Ts4qvySU3njMN7YCiSlSaTQ==}
342 | peerDependencies:
343 | vue: ^3.2.0
344 | dependencies:
345 | vue: 3.2.41
346 | dev: false
347 |
348 | /@esbuild/android-arm/0.15.12:
349 | resolution: {integrity: sha512-IC7TqIqiyE0MmvAhWkl/8AEzpOtbhRNDo7aph47We1NbE5w2bt/Q+giAhe0YYeVpYnIhGMcuZY92qDK6dQauvA==}
350 | engines: {node: '>=12'}
351 | cpu: [arm]
352 | os: [android]
353 | requiresBuild: true
354 | dev: true
355 | optional: true
356 |
357 | /@esbuild/linux-loong64/0.15.12:
358 | resolution: {integrity: sha512-tZEowDjvU7O7I04GYvWQOS4yyP9E/7YlsB0jjw1Ycukgr2ycEzKyIk5tms5WnLBymaewc6VmRKnn5IJWgK4eFw==}
359 | engines: {node: '>=12'}
360 | cpu: [loong64]
361 | os: [linux]
362 | requiresBuild: true
363 | dev: true
364 | optional: true
365 |
366 | /@floating-ui/core/1.0.1:
367 | resolution: {integrity: sha512-bO37brCPfteXQfFY0DyNDGB3+IMe4j150KFQcgJ5aBP295p9nBGeHEs/p0czrRbtlHq4Px/yoPXO/+dOCcF4uA==}
368 | dev: false
369 |
370 | /@floating-ui/dom/1.0.4:
371 | resolution: {integrity: sha512-maYJRv+sAXTy4K9mzdv0JPyNW5YPVHrqtY90tEdI6XNpuLOP26Ci2pfwPsKBA/Wh4Z3FX5sUrtUFTdMYj9v+ug==}
372 | dependencies:
373 | '@floating-ui/core': 1.0.1
374 | dev: false
375 |
376 | /@jridgewell/gen-mapping/0.1.1:
377 | resolution: {integrity: sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==}
378 | engines: {node: '>=6.0.0'}
379 | dependencies:
380 | '@jridgewell/set-array': 1.1.2
381 | '@jridgewell/sourcemap-codec': 1.4.14
382 | dev: true
383 |
384 | /@jridgewell/gen-mapping/0.3.2:
385 | resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==}
386 | engines: {node: '>=6.0.0'}
387 | dependencies:
388 | '@jridgewell/set-array': 1.1.2
389 | '@jridgewell/sourcemap-codec': 1.4.14
390 | '@jridgewell/trace-mapping': 0.3.17
391 | dev: true
392 |
393 | /@jridgewell/resolve-uri/3.1.0:
394 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
395 | engines: {node: '>=6.0.0'}
396 | dev: true
397 |
398 | /@jridgewell/set-array/1.1.2:
399 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
400 | engines: {node: '>=6.0.0'}
401 | dev: true
402 |
403 | /@jridgewell/sourcemap-codec/1.4.14:
404 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
405 | dev: true
406 |
407 | /@jridgewell/trace-mapping/0.3.17:
408 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==}
409 | dependencies:
410 | '@jridgewell/resolve-uri': 3.1.0
411 | '@jridgewell/sourcemap-codec': 1.4.14
412 | dev: true
413 |
414 | /@mapbox/node-pre-gyp/1.0.10:
415 | resolution: {integrity: sha512-4ySo4CjzStuprMwk35H5pPbkymjv1SF3jGLj6rAHp/xT/RF7TL7bd9CTm1xDY49K2qF7jmR/g7k+SkLETP6opA==}
416 | hasBin: true
417 | dependencies:
418 | detect-libc: 2.0.1
419 | https-proxy-agent: 5.0.1
420 | make-dir: 3.1.0
421 | node-fetch: 2.6.9
422 | nopt: 5.0.0
423 | npmlog: 5.0.1
424 | rimraf: 3.0.2
425 | semver: 7.3.8
426 | tar: 6.1.13
427 | transitivePeerDependencies:
428 | - encoding
429 | - supports-color
430 | dev: false
431 | optional: true
432 |
433 | /@sxzz/popperjs-es/2.11.7:
434 | resolution: {integrity: sha512-Ccy0NlLkzr0Ex2FKvh2X+OyERHXJ88XJ1MXtsI9y9fGexlaXaVTPzBCRBwIxFkORuOb+uBqeu+RqnpgYTEZRUQ==}
435 | dev: false
436 |
437 | /@tauri-apps/api/1.2.0:
438 | resolution: {integrity: sha512-lsI54KI6HGf7VImuf/T9pnoejfgkNoXveP14pVV7XarrQ46rOejIVJLFqHI9sRReJMGdh2YuCoI3cc/yCWCsrw==}
439 | engines: {node: '>= 14.6.0', npm: '>= 6.6.0', yarn: '>= 1.19.1'}
440 | dev: false
441 |
442 | /@tootallnate/once/2.0.0:
443 | resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
444 | engines: {node: '>= 10'}
445 | dev: false
446 | optional: true
447 |
448 | /@types/lodash-es/4.17.6:
449 | resolution: {integrity: sha512-R+zTeVUKDdfoRxpAryaQNRKk3105Rrgx2CFRClIgRGaqDTdjsm8h6IYA8ir584W3ePzkZfst5xIgDwYrlh9HLg==}
450 | dependencies:
451 | '@types/lodash': 4.14.189
452 | dev: false
453 |
454 | /@types/lodash/4.14.189:
455 | resolution: {integrity: sha512-kb9/98N6X8gyME9Cf7YaqIMvYGnBSWqEci6tiettE6iJWH1XdJz/PO8LB0GtLCG7x8dU3KWhZT+lA1a35127tA==}
456 | dev: false
457 |
458 | /@types/node/16.18.3:
459 | resolution: {integrity: sha512-jh6m0QUhIRcZpNv7Z/rpN+ZWXOicUUQbSoWks7Htkbb9IjFQj4kzcX/xFCkjstCj5flMsN8FiSvt+q+Tcs4Llg==}
460 | dev: true
461 |
462 | /@types/web-bluetooth/0.0.16:
463 | resolution: {integrity: sha512-oh8q2Zc32S6gd/j50GowEjKLoOVOwHP/bWVjKJInBwQqdOYMdPrf1oVlelTlyfFK3CKxL1uahMDAr+vy8T7yMQ==}
464 | dev: false
465 |
466 | /@vitejs/plugin-vue-jsx/2.1.0_vite@3.2.2+vue@3.2.41:
467 | resolution: {integrity: sha512-vvL8MHKN0hUf5LE+/rCk1rduwzW6NihD6xEfM4s1gGCSWQFYd5zLdxBs++z3S7AV/ynr7Yig5Xp1Bm0wlB4IAA==}
468 | engines: {node: ^14.18.0 || >=16.0.0}
469 | peerDependencies:
470 | vite: ^3.0.0
471 | vue: ^3.0.0
472 | dependencies:
473 | '@babel/core': 7.19.6
474 | '@babel/plugin-transform-typescript': 7.20.0_@babel+core@7.19.6
475 | '@vue/babel-plugin-jsx': 1.1.1_@babel+core@7.19.6
476 | vite: 3.2.2_sass@1.56.1
477 | vue: 3.2.41
478 | transitivePeerDependencies:
479 | - supports-color
480 | dev: true
481 |
482 | /@vitejs/plugin-vue/3.2.0_vite@3.2.2+vue@3.2.41:
483 | resolution: {integrity: sha512-E0tnaL4fr+qkdCNxJ+Xd0yM31UwMkQje76fsDVBBUCoGOUPexu2VDUYHL8P4CwV+zMvWw6nlRw19OnRKmYAJpw==}
484 | engines: {node: ^14.18.0 || >=16.0.0}
485 | peerDependencies:
486 | vite: ^3.0.0
487 | vue: ^3.2.25
488 | dependencies:
489 | vite: 3.2.2_sass@1.56.1
490 | vue: 3.2.41
491 | dev: true
492 |
493 | /@volar/language-core/1.0.9:
494 | resolution: {integrity: sha512-5Fty3slLet6svXiJw2YxhYeo6c7wFdtILrql5bZymYLM+HbiZtJbryW1YnUEKAP7MO9Mbeh+TNH4Z0HFxHgIqw==}
495 | dependencies:
496 | '@volar/source-map': 1.0.9
497 | '@vue/reactivity': 3.2.41
498 | muggle-string: 0.1.0
499 | dev: true
500 |
501 | /@volar/source-map/1.0.9:
502 | resolution: {integrity: sha512-fazB/vy5ZEJ3yKx4fabJyGNI3CBkdLkfEIRVu6+1P3VixK0Mn+eqyUIkLBrzGYaeFM3GybhCLCvsVdNz0Fu/CQ==}
503 | dependencies:
504 | muggle-string: 0.1.0
505 | dev: true
506 |
507 | /@volar/typescript/1.0.9:
508 | resolution: {integrity: sha512-dVziu+ShQUWuMukM6bvK2v2O446/gG6l1XkTh2vfkccw1IzjfbiP1TWQoNo1ipTfZOtu5YJGYAx+o5HNrGXWfQ==}
509 | dependencies:
510 | '@volar/language-core': 1.0.9
511 | dev: true
512 |
513 | /@volar/vue-language-core/1.0.9:
514 | resolution: {integrity: sha512-tofNoR8ShPFenHT1YVMuvoXtXWwoQE+fiXVqSmW0dSKZqEDjWQ3YeXSd0a6aqyKaIbvR7kWWGp34WbpQlwf9Ww==}
515 | dependencies:
516 | '@volar/language-core': 1.0.9
517 | '@volar/source-map': 1.0.9
518 | '@vue/compiler-dom': 3.2.41
519 | '@vue/compiler-sfc': 3.2.41
520 | '@vue/reactivity': 3.2.41
521 | '@vue/shared': 3.2.41
522 | minimatch: 5.1.0
523 | vue-template-compiler: 2.7.13
524 | dev: true
525 |
526 | /@volar/vue-typescript/1.0.9:
527 | resolution: {integrity: sha512-ZLe4y9YNbviACa7uAMCilzxA76gbbSlKfjspXBzk6fCobd8QCIig+VyDYcjANIlm2HhgSCX8jYTzhCKlegh4mw==}
528 | dependencies:
529 | '@volar/typescript': 1.0.9
530 | '@volar/vue-language-core': 1.0.9
531 | dev: true
532 |
533 | /@vue/babel-helper-vue-transform-on/1.0.2:
534 | resolution: {integrity: sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==}
535 | dev: true
536 |
537 | /@vue/babel-plugin-jsx/1.1.1_@babel+core@7.19.6:
538 | resolution: {integrity: sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==}
539 | dependencies:
540 | '@babel/helper-module-imports': 7.18.6
541 | '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.19.6
542 | '@babel/template': 7.18.10
543 | '@babel/traverse': 7.20.0
544 | '@babel/types': 7.20.0
545 | '@vue/babel-helper-vue-transform-on': 1.0.2
546 | camelcase: 6.3.0
547 | html-tags: 3.2.0
548 | svg-tags: 1.0.0
549 | transitivePeerDependencies:
550 | - '@babel/core'
551 | - supports-color
552 | dev: true
553 |
554 | /@vue/compiler-core/3.2.41:
555 | resolution: {integrity: sha512-oA4mH6SA78DT+96/nsi4p9DX97PHcNROxs51lYk7gb9Z4BPKQ3Mh+BLn6CQZBw857Iuhu28BfMSRHAlPvD4vlw==}
556 | dependencies:
557 | '@babel/parser': 7.20.0
558 | '@vue/shared': 3.2.41
559 | estree-walker: 2.0.2
560 | source-map: 0.6.1
561 |
562 | /@vue/compiler-dom/3.2.41:
563 | resolution: {integrity: sha512-xe5TbbIsonjENxJsYRbDJvthzqxLNk+tb3d/c47zgREDa/PCp6/Y4gC/skM4H6PIuX5DAxm7fFJdbjjUH2QTMw==}
564 | dependencies:
565 | '@vue/compiler-core': 3.2.41
566 | '@vue/shared': 3.2.41
567 |
568 | /@vue/compiler-sfc/3.2.41:
569 | resolution: {integrity: sha512-+1P2m5kxOeaxVmJNXnBskAn3BenbTmbxBxWOtBq3mQTCokIreuMULFantBUclP0+KnzNCMOvcnKinqQZmiOF8w==}
570 | dependencies:
571 | '@babel/parser': 7.20.0
572 | '@vue/compiler-core': 3.2.41
573 | '@vue/compiler-dom': 3.2.41
574 | '@vue/compiler-ssr': 3.2.41
575 | '@vue/reactivity-transform': 3.2.41
576 | '@vue/shared': 3.2.41
577 | estree-walker: 2.0.2
578 | magic-string: 0.25.9
579 | postcss: 8.4.18
580 | source-map: 0.6.1
581 |
582 | /@vue/compiler-ssr/3.2.41:
583 | resolution: {integrity: sha512-Y5wPiNIiaMz/sps8+DmhaKfDm1xgj6GrH99z4gq2LQenfVQcYXmHIOBcs5qPwl7jaW3SUQWjkAPKMfQemEQZwQ==}
584 | dependencies:
585 | '@vue/compiler-dom': 3.2.41
586 | '@vue/shared': 3.2.41
587 |
588 | /@vue/devtools-api/6.4.5:
589 | resolution: {integrity: sha512-JD5fcdIuFxU4fQyXUu3w2KpAJHzTVdN+p4iOX2lMWSHMOoQdMAcpFLZzm9Z/2nmsoZ1a96QEhZ26e50xLBsgOQ==}
590 | dev: false
591 |
592 | /@vue/reactivity-transform/3.2.41:
593 | resolution: {integrity: sha512-mK5+BNMsL4hHi+IR3Ft/ho6Za+L3FA5j8WvreJ7XzHrqkPq8jtF/SMo7tuc9gHjLDwKZX1nP1JQOKo9IEAn54A==}
594 | dependencies:
595 | '@babel/parser': 7.20.0
596 | '@vue/compiler-core': 3.2.41
597 | '@vue/shared': 3.2.41
598 | estree-walker: 2.0.2
599 | magic-string: 0.25.9
600 |
601 | /@vue/reactivity/3.2.41:
602 | resolution: {integrity: sha512-9JvCnlj8uc5xRiQGZ28MKGjuCoPhhTwcoAdv3o31+cfGgonwdPNuvqAXLhlzu4zwqavFEG5tvaoINQEfxz+l6g==}
603 | dependencies:
604 | '@vue/shared': 3.2.41
605 |
606 | /@vue/runtime-core/3.2.41:
607 | resolution: {integrity: sha512-0LBBRwqnI0p4FgIkO9q2aJBBTKDSjzhnxrxHYengkAF6dMOjeAIZFDADAlcf2h3GDALWnblbeprYYpItiulSVQ==}
608 | dependencies:
609 | '@vue/reactivity': 3.2.41
610 | '@vue/shared': 3.2.41
611 |
612 | /@vue/runtime-dom/3.2.41:
613 | resolution: {integrity: sha512-U7zYuR1NVIP8BL6jmOqmapRAHovEFp7CSw4pR2FacqewXNGqZaRfHoNLQsqQvVQ8yuZNZtxSZy0FFyC70YXPpA==}
614 | dependencies:
615 | '@vue/runtime-core': 3.2.41
616 | '@vue/shared': 3.2.41
617 | csstype: 2.6.21
618 |
619 | /@vue/server-renderer/3.2.41_vue@3.2.41:
620 | resolution: {integrity: sha512-7YHLkfJdTlsZTV0ae5sPwl9Gn/EGr2hrlbcS/8naXm2CDpnKUwC68i1wGlrYAfIgYWL7vUZwk2GkYLQH5CvFig==}
621 | peerDependencies:
622 | vue: 3.2.41
623 | dependencies:
624 | '@vue/compiler-ssr': 3.2.41
625 | '@vue/shared': 3.2.41
626 | vue: 3.2.41
627 |
628 | /@vue/shared/3.2.41:
629 | resolution: {integrity: sha512-W9mfWLHmJhkfAmV+7gDjcHeAWALQtgGT3JErxULl0oz6R6+3ug91I7IErs93eCFhPCZPHBs4QJS7YWEV7A3sxw==}
630 |
631 | /@vue/tsconfig/0.1.3_@types+node@16.18.3:
632 | resolution: {integrity: sha512-kQVsh8yyWPvHpb8gIc9l/HIDiiVUy1amynLNpCy8p+FoCiZXCo6fQos5/097MmnNZc9AtseDsCrfkhqCrJ8Olg==}
633 | peerDependencies:
634 | '@types/node': '*'
635 | peerDependenciesMeta:
636 | '@types/node':
637 | optional: true
638 | dependencies:
639 | '@types/node': 16.18.3
640 | dev: true
641 |
642 | /@vueuse/core/9.5.0_vue@3.2.41:
643 | resolution: {integrity: sha512-6GsWBsJHEb3sYw15mbLrcbslAVY45pkzjJYTKYKCXv88z7srAF0VEW0q+oXKsl58tCbqooplInahXFg8Yo1m4w==}
644 | dependencies:
645 | '@types/web-bluetooth': 0.0.16
646 | '@vueuse/metadata': 9.5.0
647 | '@vueuse/shared': 9.5.0_vue@3.2.41
648 | vue-demi: 0.13.11_vue@3.2.41
649 | transitivePeerDependencies:
650 | - '@vue/composition-api'
651 | - vue
652 | dev: false
653 |
654 | /@vueuse/metadata/9.5.0:
655 | resolution: {integrity: sha512-4M1AyPZmIv41pym+K5+4wup3bKuYebbH8w8BROY1hmT7rIwcyS4tEL+UsGz0Hiu1FCOxcoBrwtAizc0YmBJjyQ==}
656 | dev: false
657 |
658 | /@vueuse/shared/9.5.0_vue@3.2.41:
659 | resolution: {integrity: sha512-HnnCWU1Vg9CVWRCcI8ohDKDRB2Sc4bTgT1XAIaoLSfVHHn+TKbrox6pd3klCSw4UDxkhDfOk8cAdcK+Z5KleCA==}
660 | dependencies:
661 | vue-demi: 0.13.11_vue@3.2.41
662 | transitivePeerDependencies:
663 | - '@vue/composition-api'
664 | - vue
665 | dev: false
666 |
667 | /abab/2.0.6:
668 | resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
669 | dev: false
670 | optional: true
671 |
672 | /abbrev/1.1.1:
673 | resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==}
674 | dev: false
675 | optional: true
676 |
677 | /acorn-globals/6.0.0:
678 | resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==}
679 | dependencies:
680 | acorn: 7.4.1
681 | acorn-walk: 7.2.0
682 | dev: false
683 | optional: true
684 |
685 | /acorn-walk/7.2.0:
686 | resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
687 | engines: {node: '>=0.4.0'}
688 | dev: false
689 | optional: true
690 |
691 | /acorn/7.4.1:
692 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==}
693 | engines: {node: '>=0.4.0'}
694 | hasBin: true
695 | dev: false
696 | optional: true
697 |
698 | /acorn/8.8.2:
699 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==}
700 | engines: {node: '>=0.4.0'}
701 | hasBin: true
702 | dev: false
703 | optional: true
704 |
705 | /agent-base/6.0.2:
706 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
707 | engines: {node: '>= 6.0.0'}
708 | dependencies:
709 | debug: 4.3.4
710 | transitivePeerDependencies:
711 | - supports-color
712 | dev: false
713 | optional: true
714 |
715 | /ansi-regex/5.0.1:
716 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
717 | engines: {node: '>=8'}
718 | dev: false
719 | optional: true
720 |
721 | /ansi-styles/3.2.1:
722 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
723 | engines: {node: '>=4'}
724 | dependencies:
725 | color-convert: 1.9.3
726 | dev: true
727 |
728 | /anymatch/3.1.2:
729 | resolution: {integrity: sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==}
730 | engines: {node: '>= 8'}
731 | dependencies:
732 | normalize-path: 3.0.0
733 | picomatch: 2.3.1
734 | dev: true
735 |
736 | /aproba/2.0.0:
737 | resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==}
738 | dev: false
739 | optional: true
740 |
741 | /are-we-there-yet/2.0.0:
742 | resolution: {integrity: sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==}
743 | engines: {node: '>=10'}
744 | dependencies:
745 | delegates: 1.0.0
746 | readable-stream: 3.6.0
747 | dev: false
748 | optional: true
749 |
750 | /async-validator/4.2.5:
751 | resolution: {integrity: sha512-7HhHjtERjqlNbZtqNqy2rckN/SpOOlmDliet+lP7k+eKZEjPk3DgyeU9lIXLdeLz0uBbbVp+9Qdow9wJWgwwfg==}
752 | dev: false
753 |
754 | /asynckit/0.4.0:
755 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
756 | dev: false
757 | optional: true
758 |
759 | /balanced-match/1.0.2:
760 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
761 |
762 | /binary-extensions/2.2.0:
763 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
764 | engines: {node: '>=8'}
765 | dev: true
766 |
767 | /brace-expansion/1.1.11:
768 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
769 | dependencies:
770 | balanced-match: 1.0.2
771 | concat-map: 0.0.1
772 |
773 | /brace-expansion/2.0.1:
774 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
775 | dependencies:
776 | balanced-match: 1.0.2
777 | dev: true
778 |
779 | /braces/3.0.2:
780 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
781 | engines: {node: '>=8'}
782 | dependencies:
783 | fill-range: 7.0.1
784 | dev: true
785 |
786 | /browser-process-hrtime/1.0.0:
787 | resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
788 | dev: false
789 | optional: true
790 |
791 | /browserslist/4.21.4:
792 | resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==}
793 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
794 | hasBin: true
795 | dependencies:
796 | caniuse-lite: 1.0.30001429
797 | electron-to-chromium: 1.4.284
798 | node-releases: 2.0.6
799 | update-browserslist-db: 1.0.10_browserslist@4.21.4
800 | dev: true
801 |
802 | /call-bind/1.0.2:
803 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
804 | dependencies:
805 | function-bind: 1.1.1
806 | get-intrinsic: 1.1.3
807 | dev: true
808 |
809 | /camelcase/6.3.0:
810 | resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
811 | engines: {node: '>=10'}
812 | dev: true
813 |
814 | /caniuse-lite/1.0.30001429:
815 | resolution: {integrity: sha512-511ThLu1hF+5RRRt0zYCf2U2yRr9GPF6m5y90SBCWsvSoYoW7yAGlv/elyPaNfvGCkp6kj/KFZWU0BMA69Prsg==}
816 | dev: true
817 |
818 | /canvas/2.11.0:
819 | resolution: {integrity: sha512-bdTjFexjKJEwtIo0oRx8eD4G2yWoUOXP9lj279jmQ2zMnTQhT8C3512OKz3s+ZOaQlLbE7TuVvRDYDB3Llyy5g==}
820 | engines: {node: '>=6'}
821 | requiresBuild: true
822 | dependencies:
823 | '@mapbox/node-pre-gyp': 1.0.10
824 | nan: 2.17.0
825 | simple-get: 3.1.1
826 | transitivePeerDependencies:
827 | - encoding
828 | - supports-color
829 | dev: false
830 | optional: true
831 |
832 | /chalk/2.4.2:
833 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
834 | engines: {node: '>=4'}
835 | dependencies:
836 | ansi-styles: 3.2.1
837 | escape-string-regexp: 1.0.5
838 | supports-color: 5.5.0
839 | dev: true
840 |
841 | /chokidar/3.5.3:
842 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==}
843 | engines: {node: '>= 8.10.0'}
844 | dependencies:
845 | anymatch: 3.1.2
846 | braces: 3.0.2
847 | glob-parent: 5.1.2
848 | is-binary-path: 2.1.0
849 | is-glob: 4.0.3
850 | normalize-path: 3.0.0
851 | readdirp: 3.6.0
852 | optionalDependencies:
853 | fsevents: 2.3.2
854 | dev: true
855 |
856 | /chownr/2.0.0:
857 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==}
858 | engines: {node: '>=10'}
859 | dev: false
860 | optional: true
861 |
862 | /color-convert/1.9.3:
863 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
864 | dependencies:
865 | color-name: 1.1.3
866 | dev: true
867 |
868 | /color-name/1.1.3:
869 | resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=}
870 | dev: true
871 |
872 | /color-support/1.1.3:
873 | resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==}
874 | hasBin: true
875 | dev: false
876 | optional: true
877 |
878 | /combined-stream/1.0.8:
879 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
880 | engines: {node: '>= 0.8'}
881 | dependencies:
882 | delayed-stream: 1.0.0
883 | dev: false
884 | optional: true
885 |
886 | /commander/2.20.3:
887 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
888 | dev: false
889 |
890 | /concat-map/0.0.1:
891 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
892 |
893 | /console-control-strings/1.1.0:
894 | resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==}
895 | dev: false
896 | optional: true
897 |
898 | /convert-source-map/1.9.0:
899 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
900 | dev: true
901 |
902 | /cross-spawn/6.0.5:
903 | resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==}
904 | engines: {node: '>=4.8'}
905 | dependencies:
906 | nice-try: 1.0.5
907 | path-key: 2.0.1
908 | semver: 5.7.1
909 | shebang-command: 1.2.0
910 | which: 1.3.1
911 | dev: true
912 |
913 | /cssfilter/0.0.10:
914 | resolution: {integrity: sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==}
915 | dev: false
916 |
917 | /cssom/0.3.8:
918 | resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==}
919 | dev: false
920 | optional: true
921 |
922 | /cssom/0.5.0:
923 | resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==}
924 | dev: false
925 | optional: true
926 |
927 | /cssstyle/2.3.0:
928 | resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==}
929 | engines: {node: '>=8'}
930 | dependencies:
931 | cssom: 0.3.8
932 | dev: false
933 | optional: true
934 |
935 | /csstype/2.6.21:
936 | resolution: {integrity: sha512-Z1PhmomIfypOpoMjRQB70jfvy/wxT50qW08YXO5lMIJkrdq4yOTR+AW7FqutScmB9NkLwxo+jU+kZLbofZZq/w==}
937 |
938 | /data-urls/3.0.2:
939 | resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==}
940 | engines: {node: '>=12'}
941 | dependencies:
942 | abab: 2.0.6
943 | whatwg-mimetype: 3.0.0
944 | whatwg-url: 11.0.0
945 | dev: false
946 | optional: true
947 |
948 | /dayjs/1.11.6:
949 | resolution: {integrity: sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==}
950 | dev: false
951 |
952 | /de-indent/1.0.2:
953 | resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==}
954 | dev: true
955 |
956 | /debug/4.3.4:
957 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
958 | engines: {node: '>=6.0'}
959 | peerDependencies:
960 | supports-color: '*'
961 | peerDependenciesMeta:
962 | supports-color:
963 | optional: true
964 | dependencies:
965 | ms: 2.1.2
966 |
967 | /decimal.js/10.4.3:
968 | resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==}
969 | dev: false
970 | optional: true
971 |
972 | /decompress-response/4.2.1:
973 | resolution: {integrity: sha512-jOSne2qbyE+/r8G1VU+G/82LBs2Fs4LAsTiLSHOCOMZQl2OKZ6i8i4IyHemTe+/yIXOtTcRQMzPcgyhoFlqPkw==}
974 | engines: {node: '>=8'}
975 | dependencies:
976 | mimic-response: 2.1.0
977 | dev: false
978 | optional: true
979 |
980 | /deep-is/0.1.4:
981 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
982 | dev: false
983 | optional: true
984 |
985 | /define-properties/1.1.4:
986 | resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==}
987 | engines: {node: '>= 0.4'}
988 | dependencies:
989 | has-property-descriptors: 1.0.0
990 | object-keys: 1.1.1
991 | dev: true
992 |
993 | /delayed-stream/1.0.0:
994 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
995 | engines: {node: '>=0.4.0'}
996 | dev: false
997 | optional: true
998 |
999 | /delegates/1.0.0:
1000 | resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==}
1001 | dev: false
1002 | optional: true
1003 |
1004 | /detect-libc/2.0.1:
1005 | resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==}
1006 | engines: {node: '>=8'}
1007 | dev: false
1008 | optional: true
1009 |
1010 | /domexception/4.0.0:
1011 | resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==}
1012 | engines: {node: '>=12'}
1013 | dependencies:
1014 | webidl-conversions: 7.0.0
1015 | dev: false
1016 | optional: true
1017 |
1018 | /electron-to-chromium/1.4.284:
1019 | resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==}
1020 | dev: true
1021 |
1022 | /element-plus/2.2.21_vue@3.2.41:
1023 | resolution: {integrity: sha512-wZUePoXZ1zuCkzENK/8mn+mekuLJ9OoGYiudjUujzCf+T8HfOQl+TKQStwOkGBNk93fK8e9YdFIty4jH4AX6dg==}
1024 | peerDependencies:
1025 | vue: ^3.2.0
1026 | dependencies:
1027 | '@ctrl/tinycolor': 3.4.1
1028 | '@element-plus/icons-vue': 2.0.10_vue@3.2.41
1029 | '@floating-ui/dom': 1.0.4
1030 | '@popperjs/core': /@sxzz/popperjs-es/2.11.7
1031 | '@types/lodash': 4.14.189
1032 | '@types/lodash-es': 4.17.6
1033 | '@vueuse/core': 9.5.0_vue@3.2.41
1034 | async-validator: 4.2.5
1035 | dayjs: 1.11.6
1036 | escape-html: 1.0.3
1037 | lodash: 4.17.21
1038 | lodash-es: 4.17.21
1039 | lodash-unified: 1.0.3_3ib2ivapxullxkx3xftsimdk7u
1040 | memoize-one: 6.0.0
1041 | normalize-wheel-es: 1.2.0
1042 | vue: 3.2.41
1043 | transitivePeerDependencies:
1044 | - '@vue/composition-api'
1045 | dev: false
1046 |
1047 | /emoji-regex/8.0.0:
1048 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
1049 | dev: false
1050 | optional: true
1051 |
1052 | /error-ex/1.3.2:
1053 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
1054 | dependencies:
1055 | is-arrayish: 0.2.1
1056 | dev: true
1057 |
1058 | /es-abstract/1.20.4:
1059 | resolution: {integrity: sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==}
1060 | engines: {node: '>= 0.4'}
1061 | dependencies:
1062 | call-bind: 1.0.2
1063 | es-to-primitive: 1.2.1
1064 | function-bind: 1.1.1
1065 | function.prototype.name: 1.1.5
1066 | get-intrinsic: 1.1.3
1067 | get-symbol-description: 1.0.0
1068 | has: 1.0.3
1069 | has-property-descriptors: 1.0.0
1070 | has-symbols: 1.0.3
1071 | internal-slot: 1.0.3
1072 | is-callable: 1.2.7
1073 | is-negative-zero: 2.0.2
1074 | is-regex: 1.1.4
1075 | is-shared-array-buffer: 1.0.2
1076 | is-string: 1.0.7
1077 | is-weakref: 1.0.2
1078 | object-inspect: 1.12.2
1079 | object-keys: 1.1.1
1080 | object.assign: 4.1.4
1081 | regexp.prototype.flags: 1.4.3
1082 | safe-regex-test: 1.0.0
1083 | string.prototype.trimend: 1.0.5
1084 | string.prototype.trimstart: 1.0.5
1085 | unbox-primitive: 1.0.2
1086 | dev: true
1087 |
1088 | /es-to-primitive/1.2.1:
1089 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
1090 | engines: {node: '>= 0.4'}
1091 | dependencies:
1092 | is-callable: 1.2.7
1093 | is-date-object: 1.0.5
1094 | is-symbol: 1.0.4
1095 | dev: true
1096 |
1097 | /esbuild-android-64/0.15.12:
1098 | resolution: {integrity: sha512-MJKXwvPY9g0rGps0+U65HlTsM1wUs9lbjt5CU19RESqycGFDRijMDQsh68MtbzkqWSRdEtiKS1mtPzKneaAI0Q==}
1099 | engines: {node: '>=12'}
1100 | cpu: [x64]
1101 | os: [android]
1102 | requiresBuild: true
1103 | dev: true
1104 | optional: true
1105 |
1106 | /esbuild-android-arm64/0.15.12:
1107 | resolution: {integrity: sha512-Hc9SEcZbIMhhLcvhr1DH+lrrec9SFTiRzfJ7EGSBZiiw994gfkVV6vG0sLWqQQ6DD7V4+OggB+Hn0IRUdDUqvA==}
1108 | engines: {node: '>=12'}
1109 | cpu: [arm64]
1110 | os: [android]
1111 | requiresBuild: true
1112 | dev: true
1113 | optional: true
1114 |
1115 | /esbuild-darwin-64/0.15.12:
1116 | resolution: {integrity: sha512-qkmqrTVYPFiePt5qFjP8w/S+GIUMbt6k8qmiPraECUWfPptaPJUGkCKrWEfYFRWB7bY23FV95rhvPyh/KARP8Q==}
1117 | engines: {node: '>=12'}
1118 | cpu: [x64]
1119 | os: [darwin]
1120 | requiresBuild: true
1121 | dev: true
1122 | optional: true
1123 |
1124 | /esbuild-darwin-arm64/0.15.12:
1125 | resolution: {integrity: sha512-z4zPX02tQ41kcXMyN3c/GfZpIjKoI/BzHrdKUwhC/Ki5BAhWv59A9M8H+iqaRbwpzYrYidTybBwiZAIWCLJAkw==}
1126 | engines: {node: '>=12'}
1127 | cpu: [arm64]
1128 | os: [darwin]
1129 | requiresBuild: true
1130 | dev: true
1131 | optional: true
1132 |
1133 | /esbuild-freebsd-64/0.15.12:
1134 | resolution: {integrity: sha512-XFL7gKMCKXLDiAiBjhLG0XECliXaRLTZh6hsyzqUqPUf/PY4C6EJDTKIeqqPKXaVJ8+fzNek88285krSz1QECw==}
1135 | engines: {node: '>=12'}
1136 | cpu: [x64]
1137 | os: [freebsd]
1138 | requiresBuild: true
1139 | dev: true
1140 | optional: true
1141 |
1142 | /esbuild-freebsd-arm64/0.15.12:
1143 | resolution: {integrity: sha512-jwEIu5UCUk6TjiG1X+KQnCGISI+ILnXzIzt9yDVrhjug2fkYzlLbl0K43q96Q3KB66v6N1UFF0r5Ks4Xo7i72g==}
1144 | engines: {node: '>=12'}
1145 | cpu: [arm64]
1146 | os: [freebsd]
1147 | requiresBuild: true
1148 | dev: true
1149 | optional: true
1150 |
1151 | /esbuild-linux-32/0.15.12:
1152 | resolution: {integrity: sha512-uSQuSEyF1kVzGzuIr4XM+v7TPKxHjBnLcwv2yPyCz8riV8VUCnO/C4BF3w5dHiVpCd5Z1cebBtZJNlC4anWpwA==}
1153 | engines: {node: '>=12'}
1154 | cpu: [ia32]
1155 | os: [linux]
1156 | requiresBuild: true
1157 | dev: true
1158 | optional: true
1159 |
1160 | /esbuild-linux-64/0.15.12:
1161 | resolution: {integrity: sha512-QcgCKb7zfJxqT9o5z9ZUeGH1k8N6iX1Y7VNsEi5F9+HzN1OIx7ESxtQXDN9jbeUSPiRH1n9cw6gFT3H4qbdvcA==}
1162 | engines: {node: '>=12'}
1163 | cpu: [x64]
1164 | os: [linux]
1165 | requiresBuild: true
1166 | dev: true
1167 | optional: true
1168 |
1169 | /esbuild-linux-arm/0.15.12:
1170 | resolution: {integrity: sha512-Wf7T0aNylGcLu7hBnzMvsTfEXdEdJY/hY3u36Vla21aY66xR0MS5I1Hw8nVquXjTN0A6fk/vnr32tkC/C2lb0A==}
1171 | engines: {node: '>=12'}
1172 | cpu: [arm]
1173 | os: [linux]
1174 | requiresBuild: true
1175 | dev: true
1176 | optional: true
1177 |
1178 | /esbuild-linux-arm64/0.15.12:
1179 | resolution: {integrity: sha512-HtNq5xm8fUpZKwWKS2/YGwSfTF+339L4aIA8yphNKYJckd5hVdhfdl6GM2P3HwLSCORS++++7++//ApEwXEuAQ==}
1180 | engines: {node: '>=12'}
1181 | cpu: [arm64]
1182 | os: [linux]
1183 | requiresBuild: true
1184 | dev: true
1185 | optional: true
1186 |
1187 | /esbuild-linux-mips64le/0.15.12:
1188 | resolution: {integrity: sha512-Qol3+AvivngUZkTVFgLpb0H6DT+N5/zM3V1YgTkryPYFeUvuT5JFNDR3ZiS6LxhyF8EE+fiNtzwlPqMDqVcc6A==}
1189 | engines: {node: '>=12'}
1190 | cpu: [mips64el]
1191 | os: [linux]
1192 | requiresBuild: true
1193 | dev: true
1194 | optional: true
1195 |
1196 | /esbuild-linux-ppc64le/0.15.12:
1197 | resolution: {integrity: sha512-4D8qUCo+CFKaR0cGXtGyVsOI7w7k93Qxb3KFXWr75An0DHamYzq8lt7TNZKoOq/Gh8c40/aKaxvcZnTgQ0TJNg==}
1198 | engines: {node: '>=12'}
1199 | cpu: [ppc64]
1200 | os: [linux]
1201 | requiresBuild: true
1202 | dev: true
1203 | optional: true
1204 |
1205 | /esbuild-linux-riscv64/0.15.12:
1206 | resolution: {integrity: sha512-G9w6NcuuCI6TUUxe6ka0enjZHDnSVK8bO+1qDhMOCtl7Tr78CcZilJj8SGLN00zO5iIlwNRZKHjdMpfFgNn1VA==}
1207 | engines: {node: '>=12'}
1208 | cpu: [riscv64]
1209 | os: [linux]
1210 | requiresBuild: true
1211 | dev: true
1212 | optional: true
1213 |
1214 | /esbuild-linux-s390x/0.15.12:
1215 | resolution: {integrity: sha512-Lt6BDnuXbXeqSlVuuUM5z18GkJAZf3ERskGZbAWjrQoi9xbEIsj/hEzVnSAFLtkfLuy2DE4RwTcX02tZFunXww==}
1216 | engines: {node: '>=12'}
1217 | cpu: [s390x]
1218 | os: [linux]
1219 | requiresBuild: true
1220 | dev: true
1221 | optional: true
1222 |
1223 | /esbuild-netbsd-64/0.15.12:
1224 | resolution: {integrity: sha512-jlUxCiHO1dsqoURZDQts+HK100o0hXfi4t54MNRMCAqKGAV33JCVvMplLAa2FwviSojT/5ZG5HUfG3gstwAG8w==}
1225 | engines: {node: '>=12'}
1226 | cpu: [x64]
1227 | os: [netbsd]
1228 | requiresBuild: true
1229 | dev: true
1230 | optional: true
1231 |
1232 | /esbuild-openbsd-64/0.15.12:
1233 | resolution: {integrity: sha512-1o1uAfRTMIWNOmpf8v7iudND0L6zRBYSH45sofCZywrcf7NcZA+c7aFsS1YryU+yN7aRppTqdUK1PgbZVaB1Dw==}
1234 | engines: {node: '>=12'}
1235 | cpu: [x64]
1236 | os: [openbsd]
1237 | requiresBuild: true
1238 | dev: true
1239 | optional: true
1240 |
1241 | /esbuild-sunos-64/0.15.12:
1242 | resolution: {integrity: sha512-nkl251DpoWoBO9Eq9aFdoIt2yYmp4I3kvQjba3jFKlMXuqQ9A4q+JaqdkCouG3DHgAGnzshzaGu6xofGcXyPXg==}
1243 | engines: {node: '>=12'}
1244 | cpu: [x64]
1245 | os: [sunos]
1246 | requiresBuild: true
1247 | dev: true
1248 | optional: true
1249 |
1250 | /esbuild-windows-32/0.15.12:
1251 | resolution: {integrity: sha512-WlGeBZHgPC00O08luIp5B2SP4cNCp/PcS+3Pcg31kdcJPopHxLkdCXtadLU9J82LCfw4TVls21A6lilQ9mzHrw==}
1252 | engines: {node: '>=12'}
1253 | cpu: [ia32]
1254 | os: [win32]
1255 | requiresBuild: true
1256 | dev: true
1257 | optional: true
1258 |
1259 | /esbuild-windows-64/0.15.12:
1260 | resolution: {integrity: sha512-VActO3WnWZSN//xjSfbiGOSyC+wkZtI8I4KlgrTo5oHJM6z3MZZBCuFaZHd8hzf/W9KPhF0lY8OqlmWC9HO5AA==}
1261 | engines: {node: '>=12'}
1262 | cpu: [x64]
1263 | os: [win32]
1264 | requiresBuild: true
1265 | dev: true
1266 | optional: true
1267 |
1268 | /esbuild-windows-arm64/0.15.12:
1269 | resolution: {integrity: sha512-Of3MIacva1OK/m4zCNIvBfz8VVROBmQT+gRX6pFTLPngFYcj6TFH/12VveAqq1k9VB2l28EoVMNMUCcmsfwyuA==}
1270 | engines: {node: '>=12'}
1271 | cpu: [arm64]
1272 | os: [win32]
1273 | requiresBuild: true
1274 | dev: true
1275 | optional: true
1276 |
1277 | /esbuild/0.15.12:
1278 | resolution: {integrity: sha512-PcT+/wyDqJQsRVhaE9uX/Oq4XLrFh0ce/bs2TJh4CSaw9xuvI+xFrH2nAYOADbhQjUgAhNWC5LKoUsakm4dxng==}
1279 | engines: {node: '>=12'}
1280 | hasBin: true
1281 | requiresBuild: true
1282 | optionalDependencies:
1283 | '@esbuild/android-arm': 0.15.12
1284 | '@esbuild/linux-loong64': 0.15.12
1285 | esbuild-android-64: 0.15.12
1286 | esbuild-android-arm64: 0.15.12
1287 | esbuild-darwin-64: 0.15.12
1288 | esbuild-darwin-arm64: 0.15.12
1289 | esbuild-freebsd-64: 0.15.12
1290 | esbuild-freebsd-arm64: 0.15.12
1291 | esbuild-linux-32: 0.15.12
1292 | esbuild-linux-64: 0.15.12
1293 | esbuild-linux-arm: 0.15.12
1294 | esbuild-linux-arm64: 0.15.12
1295 | esbuild-linux-mips64le: 0.15.12
1296 | esbuild-linux-ppc64le: 0.15.12
1297 | esbuild-linux-riscv64: 0.15.12
1298 | esbuild-linux-s390x: 0.15.12
1299 | esbuild-netbsd-64: 0.15.12
1300 | esbuild-openbsd-64: 0.15.12
1301 | esbuild-sunos-64: 0.15.12
1302 | esbuild-windows-32: 0.15.12
1303 | esbuild-windows-64: 0.15.12
1304 | esbuild-windows-arm64: 0.15.12
1305 | dev: true
1306 |
1307 | /escalade/3.1.1:
1308 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
1309 | engines: {node: '>=6'}
1310 | dev: true
1311 |
1312 | /escape-html/1.0.3:
1313 | resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==}
1314 | dev: false
1315 |
1316 | /escape-string-regexp/1.0.5:
1317 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
1318 | engines: {node: '>=0.8.0'}
1319 | dev: true
1320 |
1321 | /escodegen/2.0.0:
1322 | resolution: {integrity: sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw==}
1323 | engines: {node: '>=6.0'}
1324 | hasBin: true
1325 | dependencies:
1326 | esprima: 4.0.1
1327 | estraverse: 5.3.0
1328 | esutils: 2.0.3
1329 | optionator: 0.8.3
1330 | optionalDependencies:
1331 | source-map: 0.6.1
1332 | dev: false
1333 | optional: true
1334 |
1335 | /esprima/4.0.1:
1336 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
1337 | engines: {node: '>=4'}
1338 | hasBin: true
1339 | dev: false
1340 | optional: true
1341 |
1342 | /estraverse/5.3.0:
1343 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
1344 | engines: {node: '>=4.0'}
1345 | dev: false
1346 | optional: true
1347 |
1348 | /estree-walker/2.0.2:
1349 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
1350 |
1351 | /esutils/2.0.3:
1352 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
1353 | engines: {node: '>=0.10.0'}
1354 | dev: false
1355 | optional: true
1356 |
1357 | /fabric/5.3.0:
1358 | resolution: {integrity: sha512-AVayKuzWoXM5cTn7iD3yNWBlfEa8r1tHaOe2g8NsZrmWKAHjryTxT/j6f9ncRfOWOF0I1Ci1AId3y78cC+GExQ==}
1359 | engines: {node: '>=14.0.0'}
1360 | optionalDependencies:
1361 | canvas: 2.11.0
1362 | jsdom: 19.0.0_canvas@2.11.0
1363 | transitivePeerDependencies:
1364 | - bufferutil
1365 | - encoding
1366 | - supports-color
1367 | - utf-8-validate
1368 | dev: false
1369 |
1370 | /fast-levenshtein/2.0.6:
1371 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
1372 | dev: false
1373 | optional: true
1374 |
1375 | /fill-range/7.0.1:
1376 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
1377 | engines: {node: '>=8'}
1378 | dependencies:
1379 | to-regex-range: 5.0.1
1380 | dev: true
1381 |
1382 | /form-data/4.0.0:
1383 | resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
1384 | engines: {node: '>= 6'}
1385 | dependencies:
1386 | asynckit: 0.4.0
1387 | combined-stream: 1.0.8
1388 | mime-types: 2.1.35
1389 | dev: false
1390 | optional: true
1391 |
1392 | /fs-minipass/2.1.0:
1393 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==}
1394 | engines: {node: '>= 8'}
1395 | dependencies:
1396 | minipass: 3.3.6
1397 | dev: false
1398 | optional: true
1399 |
1400 | /fs.realpath/1.0.0:
1401 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
1402 | dev: false
1403 | optional: true
1404 |
1405 | /fsevents/2.3.2:
1406 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
1407 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
1408 | os: [darwin]
1409 | requiresBuild: true
1410 | dev: true
1411 | optional: true
1412 |
1413 | /function-bind/1.1.1:
1414 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
1415 | dev: true
1416 |
1417 | /function.prototype.name/1.1.5:
1418 | resolution: {integrity: sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==}
1419 | engines: {node: '>= 0.4'}
1420 | dependencies:
1421 | call-bind: 1.0.2
1422 | define-properties: 1.1.4
1423 | es-abstract: 1.20.4
1424 | functions-have-names: 1.2.3
1425 | dev: true
1426 |
1427 | /functions-have-names/1.2.3:
1428 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
1429 | dev: true
1430 |
1431 | /gauge/3.0.2:
1432 | resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==}
1433 | engines: {node: '>=10'}
1434 | dependencies:
1435 | aproba: 2.0.0
1436 | color-support: 1.1.3
1437 | console-control-strings: 1.1.0
1438 | has-unicode: 2.0.1
1439 | object-assign: 4.1.1
1440 | signal-exit: 3.0.7
1441 | string-width: 4.2.3
1442 | strip-ansi: 6.0.1
1443 | wide-align: 1.1.5
1444 | dev: false
1445 | optional: true
1446 |
1447 | /gensync/1.0.0-beta.2:
1448 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
1449 | engines: {node: '>=6.9.0'}
1450 | dev: true
1451 |
1452 | /get-intrinsic/1.1.3:
1453 | resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==}
1454 | dependencies:
1455 | function-bind: 1.1.1
1456 | has: 1.0.3
1457 | has-symbols: 1.0.3
1458 | dev: true
1459 |
1460 | /get-symbol-description/1.0.0:
1461 | resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
1462 | engines: {node: '>= 0.4'}
1463 | dependencies:
1464 | call-bind: 1.0.2
1465 | get-intrinsic: 1.1.3
1466 | dev: true
1467 |
1468 | /glob-parent/5.1.2:
1469 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
1470 | engines: {node: '>= 6'}
1471 | dependencies:
1472 | is-glob: 4.0.3
1473 | dev: true
1474 |
1475 | /glob/7.2.3:
1476 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
1477 | dependencies:
1478 | fs.realpath: 1.0.0
1479 | inflight: 1.0.6
1480 | inherits: 2.0.4
1481 | minimatch: 3.1.2
1482 | once: 1.4.0
1483 | path-is-absolute: 1.0.1
1484 | dev: false
1485 | optional: true
1486 |
1487 | /globals/11.12.0:
1488 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
1489 | engines: {node: '>=4'}
1490 | dev: true
1491 |
1492 | /graceful-fs/4.2.10:
1493 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
1494 | dev: true
1495 |
1496 | /has-bigints/1.0.2:
1497 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
1498 | dev: true
1499 |
1500 | /has-flag/3.0.0:
1501 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
1502 | engines: {node: '>=4'}
1503 | dev: true
1504 |
1505 | /has-property-descriptors/1.0.0:
1506 | resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
1507 | dependencies:
1508 | get-intrinsic: 1.1.3
1509 | dev: true
1510 |
1511 | /has-symbols/1.0.3:
1512 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
1513 | engines: {node: '>= 0.4'}
1514 | dev: true
1515 |
1516 | /has-tostringtag/1.0.0:
1517 | resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
1518 | engines: {node: '>= 0.4'}
1519 | dependencies:
1520 | has-symbols: 1.0.3
1521 | dev: true
1522 |
1523 | /has-unicode/2.0.1:
1524 | resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==}
1525 | dev: false
1526 | optional: true
1527 |
1528 | /has/1.0.3:
1529 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
1530 | engines: {node: '>= 0.4.0'}
1531 | dependencies:
1532 | function-bind: 1.1.1
1533 | dev: true
1534 |
1535 | /he/1.2.0:
1536 | resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
1537 | hasBin: true
1538 | dev: true
1539 |
1540 | /highlight.js-async-webpack/1.0.4:
1541 | resolution: {integrity: sha512-IC0AwUgNr7BU8pqheaCEvOQvOtIZwO3I4rtbmT489Ndz8loE31IRmBmT6C4qDCbfZjzNO+k2w3VceZjTQ3JQ8Q==}
1542 | dev: false
1543 |
1544 | /highlight.js/9.18.5:
1545 | resolution: {integrity: sha512-a5bFyofd/BHCX52/8i8uJkjr9DYwXIPnM/plwI6W7ezItLGqzt7X2G2nXuYSfsIJdkwwj/g9DG1LkcGJI/dDoA==}
1546 | deprecated: Support has ended for 9.x series. Upgrade to @latest
1547 | requiresBuild: true
1548 | dev: false
1549 |
1550 | /hosted-git-info/2.8.9:
1551 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
1552 | dev: true
1553 |
1554 | /html-encoding-sniffer/3.0.0:
1555 | resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==}
1556 | engines: {node: '>=12'}
1557 | dependencies:
1558 | whatwg-encoding: 2.0.0
1559 | dev: false
1560 | optional: true
1561 |
1562 | /html-tags/3.2.0:
1563 | resolution: {integrity: sha512-vy7ClnArOZwCnqZgvv+ddgHgJiAFXe3Ge9ML5/mBctVJoUoYPCdxVucOywjDARn6CVoh3dRSFdPHy2sX80L0Wg==}
1564 | engines: {node: '>=8'}
1565 | dev: true
1566 |
1567 | /http-proxy-agent/5.0.0:
1568 | resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==}
1569 | engines: {node: '>= 6'}
1570 | dependencies:
1571 | '@tootallnate/once': 2.0.0
1572 | agent-base: 6.0.2
1573 | debug: 4.3.4
1574 | transitivePeerDependencies:
1575 | - supports-color
1576 | dev: false
1577 | optional: true
1578 |
1579 | /https-proxy-agent/5.0.1:
1580 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
1581 | engines: {node: '>= 6'}
1582 | dependencies:
1583 | agent-base: 6.0.2
1584 | debug: 4.3.4
1585 | transitivePeerDependencies:
1586 | - supports-color
1587 | dev: false
1588 | optional: true
1589 |
1590 | /iconv-lite/0.6.3:
1591 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
1592 | engines: {node: '>=0.10.0'}
1593 | dependencies:
1594 | safer-buffer: 2.1.2
1595 | dev: false
1596 | optional: true
1597 |
1598 | /immutable/4.1.0:
1599 | resolution: {integrity: sha512-oNkuqVTA8jqG1Q6c+UglTOD1xhC1BtjKI7XkCXRkZHrN5m18/XsnUp8Q89GkQO/z+0WjonSvl0FLhDYftp46nQ==}
1600 | dev: true
1601 |
1602 | /inflight/1.0.6:
1603 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
1604 | dependencies:
1605 | once: 1.4.0
1606 | wrappy: 1.0.2
1607 | dev: false
1608 | optional: true
1609 |
1610 | /inherits/2.0.4:
1611 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
1612 | dev: false
1613 | optional: true
1614 |
1615 | /internal-slot/1.0.3:
1616 | resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==}
1617 | engines: {node: '>= 0.4'}
1618 | dependencies:
1619 | get-intrinsic: 1.1.3
1620 | has: 1.0.3
1621 | side-channel: 1.0.4
1622 | dev: true
1623 |
1624 | /is-arrayish/0.2.1:
1625 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
1626 | dev: true
1627 |
1628 | /is-bigint/1.0.4:
1629 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
1630 | dependencies:
1631 | has-bigints: 1.0.2
1632 | dev: true
1633 |
1634 | /is-binary-path/2.1.0:
1635 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
1636 | engines: {node: '>=8'}
1637 | dependencies:
1638 | binary-extensions: 2.2.0
1639 | dev: true
1640 |
1641 | /is-boolean-object/1.1.2:
1642 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
1643 | engines: {node: '>= 0.4'}
1644 | dependencies:
1645 | call-bind: 1.0.2
1646 | has-tostringtag: 1.0.0
1647 | dev: true
1648 |
1649 | /is-callable/1.2.7:
1650 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
1651 | engines: {node: '>= 0.4'}
1652 | dev: true
1653 |
1654 | /is-core-module/2.11.0:
1655 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==}
1656 | dependencies:
1657 | has: 1.0.3
1658 | dev: true
1659 |
1660 | /is-date-object/1.0.5:
1661 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
1662 | engines: {node: '>= 0.4'}
1663 | dependencies:
1664 | has-tostringtag: 1.0.0
1665 | dev: true
1666 |
1667 | /is-extglob/2.1.1:
1668 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
1669 | engines: {node: '>=0.10.0'}
1670 | dev: true
1671 |
1672 | /is-fullwidth-code-point/3.0.0:
1673 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
1674 | engines: {node: '>=8'}
1675 | dev: false
1676 | optional: true
1677 |
1678 | /is-glob/4.0.3:
1679 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
1680 | engines: {node: '>=0.10.0'}
1681 | dependencies:
1682 | is-extglob: 2.1.1
1683 | dev: true
1684 |
1685 | /is-negative-zero/2.0.2:
1686 | resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
1687 | engines: {node: '>= 0.4'}
1688 | dev: true
1689 |
1690 | /is-number-object/1.0.7:
1691 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
1692 | engines: {node: '>= 0.4'}
1693 | dependencies:
1694 | has-tostringtag: 1.0.0
1695 | dev: true
1696 |
1697 | /is-number/7.0.0:
1698 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
1699 | engines: {node: '>=0.12.0'}
1700 | dev: true
1701 |
1702 | /is-potential-custom-element-name/1.0.1:
1703 | resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
1704 | dev: false
1705 | optional: true
1706 |
1707 | /is-regex/1.1.4:
1708 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
1709 | engines: {node: '>= 0.4'}
1710 | dependencies:
1711 | call-bind: 1.0.2
1712 | has-tostringtag: 1.0.0
1713 | dev: true
1714 |
1715 | /is-shared-array-buffer/1.0.2:
1716 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
1717 | dependencies:
1718 | call-bind: 1.0.2
1719 | dev: true
1720 |
1721 | /is-string/1.0.7:
1722 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
1723 | engines: {node: '>= 0.4'}
1724 | dependencies:
1725 | has-tostringtag: 1.0.0
1726 | dev: true
1727 |
1728 | /is-symbol/1.0.4:
1729 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
1730 | engines: {node: '>= 0.4'}
1731 | dependencies:
1732 | has-symbols: 1.0.3
1733 | dev: true
1734 |
1735 | /is-weakref/1.0.2:
1736 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
1737 | dependencies:
1738 | call-bind: 1.0.2
1739 | dev: true
1740 |
1741 | /isexe/2.0.0:
1742 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
1743 | dev: true
1744 |
1745 | /js-tokens/4.0.0:
1746 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
1747 | dev: true
1748 |
1749 | /jsdom/19.0.0_canvas@2.11.0:
1750 | resolution: {integrity: sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A==}
1751 | engines: {node: '>=12'}
1752 | requiresBuild: true
1753 | peerDependencies:
1754 | canvas: ^2.5.0
1755 | peerDependenciesMeta:
1756 | canvas:
1757 | optional: true
1758 | dependencies:
1759 | abab: 2.0.6
1760 | acorn: 8.8.2
1761 | acorn-globals: 6.0.0
1762 | canvas: 2.11.0
1763 | cssom: 0.5.0
1764 | cssstyle: 2.3.0
1765 | data-urls: 3.0.2
1766 | decimal.js: 10.4.3
1767 | domexception: 4.0.0
1768 | escodegen: 2.0.0
1769 | form-data: 4.0.0
1770 | html-encoding-sniffer: 3.0.0
1771 | http-proxy-agent: 5.0.0
1772 | https-proxy-agent: 5.0.1
1773 | is-potential-custom-element-name: 1.0.1
1774 | nwsapi: 2.2.2
1775 | parse5: 6.0.1
1776 | saxes: 5.0.1
1777 | symbol-tree: 3.2.4
1778 | tough-cookie: 4.1.2
1779 | w3c-hr-time: 1.0.2
1780 | w3c-xmlserializer: 3.0.0
1781 | webidl-conversions: 7.0.0
1782 | whatwg-encoding: 2.0.0
1783 | whatwg-mimetype: 3.0.0
1784 | whatwg-url: 10.0.0
1785 | ws: 8.12.0
1786 | xml-name-validator: 4.0.0
1787 | transitivePeerDependencies:
1788 | - bufferutil
1789 | - supports-color
1790 | - utf-8-validate
1791 | dev: false
1792 | optional: true
1793 |
1794 | /jsesc/2.5.2:
1795 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
1796 | engines: {node: '>=4'}
1797 | hasBin: true
1798 | dev: true
1799 |
1800 | /json-parse-better-errors/1.0.2:
1801 | resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==}
1802 | dev: true
1803 |
1804 | /json5/2.2.1:
1805 | resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
1806 | engines: {node: '>=6'}
1807 | hasBin: true
1808 | dev: true
1809 |
1810 | /levn/0.3.0:
1811 | resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==}
1812 | engines: {node: '>= 0.8.0'}
1813 | dependencies:
1814 | prelude-ls: 1.1.2
1815 | type-check: 0.3.2
1816 | dev: false
1817 | optional: true
1818 |
1819 | /load-json-file/4.0.0:
1820 | resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==}
1821 | engines: {node: '>=4'}
1822 | dependencies:
1823 | graceful-fs: 4.2.10
1824 | parse-json: 4.0.0
1825 | pify: 3.0.0
1826 | strip-bom: 3.0.0
1827 | dev: true
1828 |
1829 | /lodash-es/4.17.21:
1830 | resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
1831 | dev: false
1832 |
1833 | /lodash-unified/1.0.3_3ib2ivapxullxkx3xftsimdk7u:
1834 | resolution: {integrity: sha512-WK9qSozxXOD7ZJQlpSqOT+om2ZfcT4yO+03FuzAHD0wF6S0l0090LRPDx3vhTTLZ8cFKpBn+IOcVXK6qOcIlfQ==}
1835 | peerDependencies:
1836 | '@types/lodash-es': '*'
1837 | lodash: '*'
1838 | lodash-es: '*'
1839 | dependencies:
1840 | '@types/lodash-es': 4.17.6
1841 | lodash: 4.17.21
1842 | lodash-es: 4.17.21
1843 | dev: false
1844 |
1845 | /lodash/4.17.21:
1846 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
1847 | dev: false
1848 |
1849 | /lru-cache/6.0.0:
1850 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
1851 | engines: {node: '>=10'}
1852 | dependencies:
1853 | yallist: 4.0.0
1854 | dev: false
1855 | optional: true
1856 |
1857 | /magic-string/0.25.9:
1858 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
1859 | dependencies:
1860 | sourcemap-codec: 1.4.8
1861 |
1862 | /make-dir/3.1.0:
1863 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
1864 | engines: {node: '>=8'}
1865 | dependencies:
1866 | semver: 6.3.0
1867 | dev: false
1868 | optional: true
1869 |
1870 | /mavon-editor/3.0.0-beta:
1871 | resolution: {integrity: sha512-cmGKbkgrlvFtrhEVyEUIO2X30R+0p0cWpWcYZ97p2E7zn5flKakgv3gq/4mrzjb6UTmhUiHis38k+a6fP6XUEQ==}
1872 | dependencies:
1873 | highlight.js: 9.18.5
1874 | highlight.js-async-webpack: 1.0.4
1875 | xss: 1.0.14
1876 | dev: false
1877 |
1878 | /memoize-one/6.0.0:
1879 | resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
1880 | dev: false
1881 |
1882 | /memorystream/0.3.1:
1883 | resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==}
1884 | engines: {node: '>= 0.10.0'}
1885 | dev: true
1886 |
1887 | /mime-db/1.52.0:
1888 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
1889 | engines: {node: '>= 0.6'}
1890 | dev: false
1891 | optional: true
1892 |
1893 | /mime-types/2.1.35:
1894 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
1895 | engines: {node: '>= 0.6'}
1896 | dependencies:
1897 | mime-db: 1.52.0
1898 | dev: false
1899 | optional: true
1900 |
1901 | /mimic-response/2.1.0:
1902 | resolution: {integrity: sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==}
1903 | engines: {node: '>=8'}
1904 | dev: false
1905 | optional: true
1906 |
1907 | /minimatch/3.1.2:
1908 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
1909 | dependencies:
1910 | brace-expansion: 1.1.11
1911 |
1912 | /minimatch/5.1.0:
1913 | resolution: {integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==}
1914 | engines: {node: '>=10'}
1915 | dependencies:
1916 | brace-expansion: 2.0.1
1917 | dev: true
1918 |
1919 | /minipass/3.3.6:
1920 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==}
1921 | engines: {node: '>=8'}
1922 | dependencies:
1923 | yallist: 4.0.0
1924 | dev: false
1925 | optional: true
1926 |
1927 | /minipass/4.0.3:
1928 | resolution: {integrity: sha512-OW2r4sQ0sI+z5ckEt5c1Tri4xTgZwYDxpE54eqWlQloQRoWtXjqt9udJ5Z4dSv7wK+nfFI7FRXyCpBSft+gpFw==}
1929 | engines: {node: '>=8'}
1930 | dev: false
1931 | optional: true
1932 |
1933 | /minizlib/2.1.2:
1934 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==}
1935 | engines: {node: '>= 8'}
1936 | dependencies:
1937 | minipass: 3.3.6
1938 | yallist: 4.0.0
1939 | dev: false
1940 | optional: true
1941 |
1942 | /mkdirp/1.0.4:
1943 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
1944 | engines: {node: '>=10'}
1945 | hasBin: true
1946 | dev: false
1947 | optional: true
1948 |
1949 | /ms/2.1.2:
1950 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
1951 |
1952 | /muggle-string/0.1.0:
1953 | resolution: {integrity: sha512-Tr1knR3d2mKvvWthlk7202rywKbiOm4rVFLsfAaSIhJ6dt9o47W4S+JMtWhd/PW9Wrdew2/S2fSvhz3E2gkfEg==}
1954 | dev: true
1955 |
1956 | /nan/2.17.0:
1957 | resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==}
1958 | dev: false
1959 | optional: true
1960 |
1961 | /nanoid/3.3.4:
1962 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==}
1963 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
1964 | hasBin: true
1965 |
1966 | /nice-try/1.0.5:
1967 | resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==}
1968 | dev: true
1969 |
1970 | /node-fetch/2.6.9:
1971 | resolution: {integrity: sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==}
1972 | engines: {node: 4.x || >=6.0.0}
1973 | peerDependencies:
1974 | encoding: ^0.1.0
1975 | peerDependenciesMeta:
1976 | encoding:
1977 | optional: true
1978 | dependencies:
1979 | whatwg-url: 5.0.0
1980 | dev: false
1981 | optional: true
1982 |
1983 | /node-releases/2.0.6:
1984 | resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==}
1985 | dev: true
1986 |
1987 | /nopt/5.0.0:
1988 | resolution: {integrity: sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==}
1989 | engines: {node: '>=6'}
1990 | hasBin: true
1991 | dependencies:
1992 | abbrev: 1.1.1
1993 | dev: false
1994 | optional: true
1995 |
1996 | /normalize-package-data/2.5.0:
1997 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
1998 | dependencies:
1999 | hosted-git-info: 2.8.9
2000 | resolve: 1.22.1
2001 | semver: 5.7.1
2002 | validate-npm-package-license: 3.0.4
2003 | dev: true
2004 |
2005 | /normalize-path/3.0.0:
2006 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
2007 | engines: {node: '>=0.10.0'}
2008 | dev: true
2009 |
2010 | /normalize-wheel-es/1.2.0:
2011 | resolution: {integrity: sha512-Wj7+EJQ8mSuXr2iWfnujrimU35R2W4FAErEyTmJoJ7ucwTn2hOUSsRehMb5RSYkxXGTM7Y9QpvPmp++w5ftoJw==}
2012 | dev: false
2013 |
2014 | /npm-run-all/4.1.5:
2015 | resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==}
2016 | engines: {node: '>= 4'}
2017 | hasBin: true
2018 | dependencies:
2019 | ansi-styles: 3.2.1
2020 | chalk: 2.4.2
2021 | cross-spawn: 6.0.5
2022 | memorystream: 0.3.1
2023 | minimatch: 3.1.2
2024 | pidtree: 0.3.1
2025 | read-pkg: 3.0.0
2026 | shell-quote: 1.7.4
2027 | string.prototype.padend: 3.1.3
2028 | dev: true
2029 |
2030 | /npmlog/5.0.1:
2031 | resolution: {integrity: sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==}
2032 | dependencies:
2033 | are-we-there-yet: 2.0.0
2034 | console-control-strings: 1.1.0
2035 | gauge: 3.0.2
2036 | set-blocking: 2.0.0
2037 | dev: false
2038 | optional: true
2039 |
2040 | /nwsapi/2.2.2:
2041 | resolution: {integrity: sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==}
2042 | dev: false
2043 | optional: true
2044 |
2045 | /object-assign/4.1.1:
2046 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
2047 | engines: {node: '>=0.10.0'}
2048 | dev: false
2049 | optional: true
2050 |
2051 | /object-inspect/1.12.2:
2052 | resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==}
2053 | dev: true
2054 |
2055 | /object-keys/1.1.1:
2056 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
2057 | engines: {node: '>= 0.4'}
2058 | dev: true
2059 |
2060 | /object.assign/4.1.4:
2061 | resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==}
2062 | engines: {node: '>= 0.4'}
2063 | dependencies:
2064 | call-bind: 1.0.2
2065 | define-properties: 1.1.4
2066 | has-symbols: 1.0.3
2067 | object-keys: 1.1.1
2068 | dev: true
2069 |
2070 | /once/1.4.0:
2071 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
2072 | dependencies:
2073 | wrappy: 1.0.2
2074 | dev: false
2075 | optional: true
2076 |
2077 | /optionator/0.8.3:
2078 | resolution: {integrity: sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==}
2079 | engines: {node: '>= 0.8.0'}
2080 | dependencies:
2081 | deep-is: 0.1.4
2082 | fast-levenshtein: 2.0.6
2083 | levn: 0.3.0
2084 | prelude-ls: 1.1.2
2085 | type-check: 0.3.2
2086 | word-wrap: 1.2.3
2087 | dev: false
2088 | optional: true
2089 |
2090 | /parse-json/4.0.0:
2091 | resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
2092 | engines: {node: '>=4'}
2093 | dependencies:
2094 | error-ex: 1.3.2
2095 | json-parse-better-errors: 1.0.2
2096 | dev: true
2097 |
2098 | /parse5/6.0.1:
2099 | resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
2100 | dev: false
2101 | optional: true
2102 |
2103 | /path-is-absolute/1.0.1:
2104 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
2105 | engines: {node: '>=0.10.0'}
2106 | dev: false
2107 | optional: true
2108 |
2109 | /path-key/2.0.1:
2110 | resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==}
2111 | engines: {node: '>=4'}
2112 | dev: true
2113 |
2114 | /path-parse/1.0.7:
2115 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
2116 | dev: true
2117 |
2118 | /path-type/3.0.0:
2119 | resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==}
2120 | engines: {node: '>=4'}
2121 | dependencies:
2122 | pify: 3.0.0
2123 | dev: true
2124 |
2125 | /picocolors/1.0.0:
2126 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
2127 |
2128 | /picomatch/2.3.1:
2129 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
2130 | engines: {node: '>=8.6'}
2131 | dev: true
2132 |
2133 | /pidtree/0.3.1:
2134 | resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==}
2135 | engines: {node: '>=0.10'}
2136 | hasBin: true
2137 | dev: true
2138 |
2139 | /pify/3.0.0:
2140 | resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==}
2141 | engines: {node: '>=4'}
2142 | dev: true
2143 |
2144 | /pinia/2.0.23_lrjaoqkmph6q2hmgd3qeuy6rom:
2145 | resolution: {integrity: sha512-N15hFf4o5STrxpNrib1IEb1GOArvPYf1zPvQVRGOO1G1d74Ak0J0lVyalX/SmrzdT4Q0nlEFjbURsmBmIGUR5Q==}
2146 | peerDependencies:
2147 | '@vue/composition-api': ^1.4.0
2148 | typescript: '>=4.4.4'
2149 | vue: ^2.6.14 || ^3.2.0
2150 | peerDependenciesMeta:
2151 | '@vue/composition-api':
2152 | optional: true
2153 | typescript:
2154 | optional: true
2155 | dependencies:
2156 | '@vue/devtools-api': 6.4.5
2157 | typescript: 4.7.4
2158 | vue: 3.2.41
2159 | vue-demi: 0.13.11_vue@3.2.41
2160 | dev: false
2161 |
2162 | /postcss/8.4.18:
2163 | resolution: {integrity: sha512-Wi8mWhncLJm11GATDaQKobXSNEYGUHeQLiQqDFG1qQ5UTDPTEvKw0Xt5NsTpktGTwLps3ByrWsBrG0rB8YQ9oA==}
2164 | engines: {node: ^10 || ^12 || >=14}
2165 | dependencies:
2166 | nanoid: 3.3.4
2167 | picocolors: 1.0.0
2168 | source-map-js: 1.0.2
2169 |
2170 | /prelude-ls/1.1.2:
2171 | resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==}
2172 | engines: {node: '>= 0.8.0'}
2173 | dev: false
2174 | optional: true
2175 |
2176 | /psl/1.9.0:
2177 | resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
2178 | dev: false
2179 | optional: true
2180 |
2181 | /punycode/2.3.0:
2182 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==}
2183 | engines: {node: '>=6'}
2184 | dev: false
2185 | optional: true
2186 |
2187 | /querystringify/2.2.0:
2188 | resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
2189 | dev: false
2190 | optional: true
2191 |
2192 | /read-pkg/3.0.0:
2193 | resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==}
2194 | engines: {node: '>=4'}
2195 | dependencies:
2196 | load-json-file: 4.0.0
2197 | normalize-package-data: 2.5.0
2198 | path-type: 3.0.0
2199 | dev: true
2200 |
2201 | /readable-stream/3.6.0:
2202 | resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==}
2203 | engines: {node: '>= 6'}
2204 | dependencies:
2205 | inherits: 2.0.4
2206 | string_decoder: 1.3.0
2207 | util-deprecate: 1.0.2
2208 | dev: false
2209 | optional: true
2210 |
2211 | /readdirp/3.6.0:
2212 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
2213 | engines: {node: '>=8.10.0'}
2214 | dependencies:
2215 | picomatch: 2.3.1
2216 | dev: true
2217 |
2218 | /regexp.prototype.flags/1.4.3:
2219 | resolution: {integrity: sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==}
2220 | engines: {node: '>= 0.4'}
2221 | dependencies:
2222 | call-bind: 1.0.2
2223 | define-properties: 1.1.4
2224 | functions-have-names: 1.2.3
2225 | dev: true
2226 |
2227 | /requires-port/1.0.0:
2228 | resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
2229 | dev: false
2230 | optional: true
2231 |
2232 | /resolve/1.22.1:
2233 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==}
2234 | hasBin: true
2235 | dependencies:
2236 | is-core-module: 2.11.0
2237 | path-parse: 1.0.7
2238 | supports-preserve-symlinks-flag: 1.0.0
2239 | dev: true
2240 |
2241 | /rimraf/3.0.2:
2242 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
2243 | hasBin: true
2244 | dependencies:
2245 | glob: 7.2.3
2246 | dev: false
2247 | optional: true
2248 |
2249 | /rollup/2.79.1:
2250 | resolution: {integrity: sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==}
2251 | engines: {node: '>=10.0.0'}
2252 | hasBin: true
2253 | optionalDependencies:
2254 | fsevents: 2.3.2
2255 | dev: true
2256 |
2257 | /safe-buffer/5.2.1:
2258 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
2259 | dev: false
2260 | optional: true
2261 |
2262 | /safe-regex-test/1.0.0:
2263 | resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==}
2264 | dependencies:
2265 | call-bind: 1.0.2
2266 | get-intrinsic: 1.1.3
2267 | is-regex: 1.1.4
2268 | dev: true
2269 |
2270 | /safer-buffer/2.1.2:
2271 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
2272 | dev: false
2273 | optional: true
2274 |
2275 | /sass/1.56.1:
2276 | resolution: {integrity: sha512-VpEyKpyBPCxE7qGDtOcdJ6fFbcpOM+Emu7uZLxVrkX8KVU/Dp5UF7WLvzqRuUhB6mqqQt1xffLoG+AndxTZrCQ==}
2277 | engines: {node: '>=12.0.0'}
2278 | hasBin: true
2279 | dependencies:
2280 | chokidar: 3.5.3
2281 | immutable: 4.1.0
2282 | source-map-js: 1.0.2
2283 | dev: true
2284 |
2285 | /saxes/5.0.1:
2286 | resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
2287 | engines: {node: '>=10'}
2288 | dependencies:
2289 | xmlchars: 2.2.0
2290 | dev: false
2291 | optional: true
2292 |
2293 | /semver/5.7.1:
2294 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==}
2295 | hasBin: true
2296 | dev: true
2297 |
2298 | /semver/6.3.0:
2299 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
2300 | hasBin: true
2301 |
2302 | /semver/7.3.8:
2303 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==}
2304 | engines: {node: '>=10'}
2305 | hasBin: true
2306 | dependencies:
2307 | lru-cache: 6.0.0
2308 | dev: false
2309 | optional: true
2310 |
2311 | /set-blocking/2.0.0:
2312 | resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
2313 | dev: false
2314 | optional: true
2315 |
2316 | /shebang-command/1.2.0:
2317 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==}
2318 | engines: {node: '>=0.10.0'}
2319 | dependencies:
2320 | shebang-regex: 1.0.0
2321 | dev: true
2322 |
2323 | /shebang-regex/1.0.0:
2324 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==}
2325 | engines: {node: '>=0.10.0'}
2326 | dev: true
2327 |
2328 | /shell-quote/1.7.4:
2329 | resolution: {integrity: sha512-8o/QEhSSRb1a5i7TFR0iM4G16Z0vYB2OQVs4G3aAFXjn3T6yEx8AZxy1PgDF7I00LZHYA3WxaSYIf5e5sAX8Rw==}
2330 | dev: true
2331 |
2332 | /side-channel/1.0.4:
2333 | resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
2334 | dependencies:
2335 | call-bind: 1.0.2
2336 | get-intrinsic: 1.1.3
2337 | object-inspect: 1.12.2
2338 | dev: true
2339 |
2340 | /signal-exit/3.0.7:
2341 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
2342 | dev: false
2343 | optional: true
2344 |
2345 | /simple-concat/1.0.1:
2346 | resolution: {integrity: sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==}
2347 | dev: false
2348 | optional: true
2349 |
2350 | /simple-get/3.1.1:
2351 | resolution: {integrity: sha512-CQ5LTKGfCpvE1K0n2us+kuMPbk/q0EKl82s4aheV9oXjFEz6W/Y7oQFVJuU6QG77hRT4Ghb5RURteF5vnWjupA==}
2352 | dependencies:
2353 | decompress-response: 4.2.1
2354 | once: 1.4.0
2355 | simple-concat: 1.0.1
2356 | dev: false
2357 | optional: true
2358 |
2359 | /sortablejs/1.14.0:
2360 | resolution: {integrity: sha512-pBXvQCs5/33fdN1/39pPL0NZF20LeRbLQ5jtnheIPN9JQAaufGjKdWduZn4U7wCtVuzKhmRkI0DFYHYRbB2H1w==}
2361 | dev: false
2362 |
2363 | /source-map-js/1.0.2:
2364 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
2365 | engines: {node: '>=0.10.0'}
2366 |
2367 | /source-map/0.6.1:
2368 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
2369 | engines: {node: '>=0.10.0'}
2370 |
2371 | /sourcemap-codec/1.4.8:
2372 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
2373 |
2374 | /spdx-correct/3.1.1:
2375 | resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==}
2376 | dependencies:
2377 | spdx-expression-parse: 3.0.1
2378 | spdx-license-ids: 3.0.12
2379 | dev: true
2380 |
2381 | /spdx-exceptions/2.3.0:
2382 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
2383 | dev: true
2384 |
2385 | /spdx-expression-parse/3.0.1:
2386 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
2387 | dependencies:
2388 | spdx-exceptions: 2.3.0
2389 | spdx-license-ids: 3.0.12
2390 | dev: true
2391 |
2392 | /spdx-license-ids/3.0.12:
2393 | resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==}
2394 | dev: true
2395 |
2396 | /string-width/4.2.3:
2397 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
2398 | engines: {node: '>=8'}
2399 | dependencies:
2400 | emoji-regex: 8.0.0
2401 | is-fullwidth-code-point: 3.0.0
2402 | strip-ansi: 6.0.1
2403 | dev: false
2404 | optional: true
2405 |
2406 | /string.prototype.padend/3.1.3:
2407 | resolution: {integrity: sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg==}
2408 | engines: {node: '>= 0.4'}
2409 | dependencies:
2410 | call-bind: 1.0.2
2411 | define-properties: 1.1.4
2412 | es-abstract: 1.20.4
2413 | dev: true
2414 |
2415 | /string.prototype.trimend/1.0.5:
2416 | resolution: {integrity: sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==}
2417 | dependencies:
2418 | call-bind: 1.0.2
2419 | define-properties: 1.1.4
2420 | es-abstract: 1.20.4
2421 | dev: true
2422 |
2423 | /string.prototype.trimstart/1.0.5:
2424 | resolution: {integrity: sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==}
2425 | dependencies:
2426 | call-bind: 1.0.2
2427 | define-properties: 1.1.4
2428 | es-abstract: 1.20.4
2429 | dev: true
2430 |
2431 | /string_decoder/1.3.0:
2432 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
2433 | dependencies:
2434 | safe-buffer: 5.2.1
2435 | dev: false
2436 | optional: true
2437 |
2438 | /strip-ansi/6.0.1:
2439 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
2440 | engines: {node: '>=8'}
2441 | dependencies:
2442 | ansi-regex: 5.0.1
2443 | dev: false
2444 | optional: true
2445 |
2446 | /strip-bom/3.0.0:
2447 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
2448 | engines: {node: '>=4'}
2449 | dev: true
2450 |
2451 | /supports-color/5.5.0:
2452 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
2453 | engines: {node: '>=4'}
2454 | dependencies:
2455 | has-flag: 3.0.0
2456 | dev: true
2457 |
2458 | /supports-preserve-symlinks-flag/1.0.0:
2459 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
2460 | engines: {node: '>= 0.4'}
2461 | dev: true
2462 |
2463 | /svg-tags/1.0.0:
2464 | resolution: {integrity: sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==}
2465 | dev: true
2466 |
2467 | /symbol-tree/3.2.4:
2468 | resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
2469 | dev: false
2470 | optional: true
2471 |
2472 | /tar/6.1.13:
2473 | resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==}
2474 | engines: {node: '>=10'}
2475 | dependencies:
2476 | chownr: 2.0.0
2477 | fs-minipass: 2.1.0
2478 | minipass: 4.0.3
2479 | minizlib: 2.1.2
2480 | mkdirp: 1.0.4
2481 | yallist: 4.0.0
2482 | dev: false
2483 | optional: true
2484 |
2485 | /to-fast-properties/2.0.0:
2486 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
2487 | engines: {node: '>=4'}
2488 |
2489 | /to-regex-range/5.0.1:
2490 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
2491 | engines: {node: '>=8.0'}
2492 | dependencies:
2493 | is-number: 7.0.0
2494 | dev: true
2495 |
2496 | /tough-cookie/4.1.2:
2497 | resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==}
2498 | engines: {node: '>=6'}
2499 | dependencies:
2500 | psl: 1.9.0
2501 | punycode: 2.3.0
2502 | universalify: 0.2.0
2503 | url-parse: 1.5.10
2504 | dev: false
2505 | optional: true
2506 |
2507 | /tr46/0.0.3:
2508 | resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
2509 | dev: false
2510 | optional: true
2511 |
2512 | /tr46/3.0.0:
2513 | resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==}
2514 | engines: {node: '>=12'}
2515 | dependencies:
2516 | punycode: 2.3.0
2517 | dev: false
2518 | optional: true
2519 |
2520 | /type-check/0.3.2:
2521 | resolution: {integrity: sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==}
2522 | engines: {node: '>= 0.8.0'}
2523 | dependencies:
2524 | prelude-ls: 1.1.2
2525 | dev: false
2526 | optional: true
2527 |
2528 | /typescript/4.7.4:
2529 | resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==}
2530 | engines: {node: '>=4.2.0'}
2531 | hasBin: true
2532 |
2533 | /unbox-primitive/1.0.2:
2534 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
2535 | dependencies:
2536 | call-bind: 1.0.2
2537 | has-bigints: 1.0.2
2538 | has-symbols: 1.0.3
2539 | which-boxed-primitive: 1.0.2
2540 | dev: true
2541 |
2542 | /universalify/0.2.0:
2543 | resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
2544 | engines: {node: '>= 4.0.0'}
2545 | dev: false
2546 | optional: true
2547 |
2548 | /update-browserslist-db/1.0.10_browserslist@4.21.4:
2549 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==}
2550 | hasBin: true
2551 | peerDependencies:
2552 | browserslist: '>= 4.21.0'
2553 | dependencies:
2554 | browserslist: 4.21.4
2555 | escalade: 3.1.1
2556 | picocolors: 1.0.0
2557 | dev: true
2558 |
2559 | /url-parse/1.5.10:
2560 | resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
2561 | dependencies:
2562 | querystringify: 2.2.0
2563 | requires-port: 1.0.0
2564 | dev: false
2565 | optional: true
2566 |
2567 | /util-deprecate/1.0.2:
2568 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
2569 | dev: false
2570 | optional: true
2571 |
2572 | /validate-npm-package-license/3.0.4:
2573 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
2574 | dependencies:
2575 | spdx-correct: 3.1.1
2576 | spdx-expression-parse: 3.0.1
2577 | dev: true
2578 |
2579 | /vite/3.2.2_sass@1.56.1:
2580 | resolution: {integrity: sha512-pLrhatFFOWO9kS19bQ658CnRYzv0WLbsPih6R+iFeEEhDOuYgYCX2rztUViMz/uy/V8cLCJvLFeiOK7RJEzHcw==}
2581 | engines: {node: ^14.18.0 || >=16.0.0}
2582 | hasBin: true
2583 | peerDependencies:
2584 | less: '*'
2585 | sass: '*'
2586 | stylus: '*'
2587 | sugarss: '*'
2588 | terser: ^5.4.0
2589 | peerDependenciesMeta:
2590 | less:
2591 | optional: true
2592 | sass:
2593 | optional: true
2594 | stylus:
2595 | optional: true
2596 | sugarss:
2597 | optional: true
2598 | terser:
2599 | optional: true
2600 | dependencies:
2601 | esbuild: 0.15.12
2602 | postcss: 8.4.18
2603 | resolve: 1.22.1
2604 | rollup: 2.79.1
2605 | sass: 1.56.1
2606 | optionalDependencies:
2607 | fsevents: 2.3.2
2608 | dev: true
2609 |
2610 | /vue-demi/0.13.11_vue@3.2.41:
2611 | resolution: {integrity: sha512-IR8HoEEGM65YY3ZJYAjMlKygDQn25D5ajNFNoKh9RSDMQtlzCxtfQjdQgv9jjK+m3377SsJXY8ysq8kLCZL25A==}
2612 | engines: {node: '>=12'}
2613 | hasBin: true
2614 | requiresBuild: true
2615 | peerDependencies:
2616 | '@vue/composition-api': ^1.0.0-rc.1
2617 | vue: ^3.0.0-0 || ^2.6.0
2618 | peerDependenciesMeta:
2619 | '@vue/composition-api':
2620 | optional: true
2621 | dependencies:
2622 | vue: 3.2.41
2623 | dev: false
2624 |
2625 | /vue-router/4.1.6_vue@3.2.41:
2626 | resolution: {integrity: sha512-DYWYwsG6xNPmLq/FmZn8Ip+qrhFEzA14EI12MsMgVxvHFDYvlr4NXpVF5hrRH1wVcDP8fGi5F4rxuJSl8/r+EQ==}
2627 | peerDependencies:
2628 | vue: ^3.2.0
2629 | dependencies:
2630 | '@vue/devtools-api': 6.4.5
2631 | vue: 3.2.41
2632 | dev: false
2633 |
2634 | /vue-template-compiler/2.7.13:
2635 | resolution: {integrity: sha512-jYM6TClwDS9YqP48gYrtAtaOhRKkbYmbzE+Q51gX5YDr777n7tNI/IZk4QV4l/PjQPNh/FVa/E92sh/RqKMrog==}
2636 | dependencies:
2637 | de-indent: 1.0.2
2638 | he: 1.2.0
2639 | dev: true
2640 |
2641 | /vue-tsc/1.0.9_typescript@4.7.4:
2642 | resolution: {integrity: sha512-vRmHD1K6DmBymNhoHjQy/aYKTRQNLGOu2/ESasChG9Vy113K6CdP0NlhR0bzgFJfv2eFB9Ez/9L5kIciUajBxQ==}
2643 | hasBin: true
2644 | peerDependencies:
2645 | typescript: '*'
2646 | dependencies:
2647 | '@volar/vue-language-core': 1.0.9
2648 | '@volar/vue-typescript': 1.0.9
2649 | typescript: 4.7.4
2650 | dev: true
2651 |
2652 | /vue/3.2.41:
2653 | resolution: {integrity: sha512-uuuvnrDXEeZ9VUPljgHkqB5IaVO8SxhPpqF2eWOukVrBnRBx2THPSGQBnVRt0GrIG1gvCmFXMGbd7FqcT1ixNQ==}
2654 | dependencies:
2655 | '@vue/compiler-dom': 3.2.41
2656 | '@vue/compiler-sfc': 3.2.41
2657 | '@vue/runtime-dom': 3.2.41
2658 | '@vue/server-renderer': 3.2.41_vue@3.2.41
2659 | '@vue/shared': 3.2.41
2660 |
2661 | /vuedraggable/4.1.0_vue@3.2.41:
2662 | resolution: {integrity: sha512-FU5HCWBmsf20GpP3eudURW3WdWTKIbEIQxh9/8GE806hydR9qZqRRxRE3RjqX7PkuLuMQG/A7n3cfj9rCEchww==}
2663 | peerDependencies:
2664 | vue: ^3.0.1
2665 | dependencies:
2666 | sortablejs: 1.14.0
2667 | vue: 3.2.41
2668 | dev: false
2669 |
2670 | /w3c-hr-time/1.0.2:
2671 | resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
2672 | dependencies:
2673 | browser-process-hrtime: 1.0.0
2674 | dev: false
2675 | optional: true
2676 |
2677 | /w3c-xmlserializer/3.0.0:
2678 | resolution: {integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==}
2679 | engines: {node: '>=12'}
2680 | dependencies:
2681 | xml-name-validator: 4.0.0
2682 | dev: false
2683 | optional: true
2684 |
2685 | /webidl-conversions/3.0.1:
2686 | resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
2687 | dev: false
2688 | optional: true
2689 |
2690 | /webidl-conversions/7.0.0:
2691 | resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
2692 | engines: {node: '>=12'}
2693 | dev: false
2694 | optional: true
2695 |
2696 | /whatwg-encoding/2.0.0:
2697 | resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==}
2698 | engines: {node: '>=12'}
2699 | dependencies:
2700 | iconv-lite: 0.6.3
2701 | dev: false
2702 | optional: true
2703 |
2704 | /whatwg-mimetype/3.0.0:
2705 | resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==}
2706 | engines: {node: '>=12'}
2707 | dev: false
2708 | optional: true
2709 |
2710 | /whatwg-url/10.0.0:
2711 | resolution: {integrity: sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w==}
2712 | engines: {node: '>=12'}
2713 | dependencies:
2714 | tr46: 3.0.0
2715 | webidl-conversions: 7.0.0
2716 | dev: false
2717 | optional: true
2718 |
2719 | /whatwg-url/11.0.0:
2720 | resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==}
2721 | engines: {node: '>=12'}
2722 | dependencies:
2723 | tr46: 3.0.0
2724 | webidl-conversions: 7.0.0
2725 | dev: false
2726 | optional: true
2727 |
2728 | /whatwg-url/5.0.0:
2729 | resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
2730 | dependencies:
2731 | tr46: 0.0.3
2732 | webidl-conversions: 3.0.1
2733 | dev: false
2734 | optional: true
2735 |
2736 | /which-boxed-primitive/1.0.2:
2737 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
2738 | dependencies:
2739 | is-bigint: 1.0.4
2740 | is-boolean-object: 1.1.2
2741 | is-number-object: 1.0.7
2742 | is-string: 1.0.7
2743 | is-symbol: 1.0.4
2744 | dev: true
2745 |
2746 | /which/1.3.1:
2747 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==}
2748 | hasBin: true
2749 | dependencies:
2750 | isexe: 2.0.0
2751 | dev: true
2752 |
2753 | /wide-align/1.1.5:
2754 | resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==}
2755 | dependencies:
2756 | string-width: 4.2.3
2757 | dev: false
2758 | optional: true
2759 |
2760 | /word-wrap/1.2.3:
2761 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==}
2762 | engines: {node: '>=0.10.0'}
2763 | dev: false
2764 | optional: true
2765 |
2766 | /wrappy/1.0.2:
2767 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
2768 | dev: false
2769 | optional: true
2770 |
2771 | /ws/8.12.0:
2772 | resolution: {integrity: sha512-kU62emKIdKVeEIOIKVegvqpXMSTAMLJozpHZaJNDYqBjzlSYXQGviYwN1osDLJ9av68qHd4a2oSjd7yD4pacig==}
2773 | engines: {node: '>=10.0.0'}
2774 | peerDependencies:
2775 | bufferutil: ^4.0.1
2776 | utf-8-validate: '>=5.0.2'
2777 | peerDependenciesMeta:
2778 | bufferutil:
2779 | optional: true
2780 | utf-8-validate:
2781 | optional: true
2782 | dev: false
2783 | optional: true
2784 |
2785 | /xml-name-validator/4.0.0:
2786 | resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
2787 | engines: {node: '>=12'}
2788 | dev: false
2789 | optional: true
2790 |
2791 | /xmlchars/2.2.0:
2792 | resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
2793 | dev: false
2794 | optional: true
2795 |
2796 | /xss/1.0.14:
2797 | resolution: {integrity: sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==}
2798 | engines: {node: '>= 0.10.0'}
2799 | hasBin: true
2800 | dependencies:
2801 | commander: 2.20.3
2802 | cssfilter: 0.0.10
2803 | dev: false
2804 |
2805 | /yallist/4.0.0:
2806 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
2807 | dev: false
2808 | optional: true
2809 |
--------------------------------------------------------------------------------
/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/public/favicon.ico
--------------------------------------------------------------------------------
/public/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/public/icon.png
--------------------------------------------------------------------------------
/scripts/update.mjs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2023-02-08 16:10:14
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-08 16:10:53
5 | * @FilePath: /vue-project/scripts/update.mjs
6 | */
7 |
8 | // @ts-nocheck
9 | import fetch from 'node-fetch';
10 | import { getOctokit, context } from '@actions/github';
11 |
12 | const UPDATE_TAG_NAME = 'updater';
13 | const UPDATE_FILE_NAME = 'update.json';
14 |
15 | const getSignature = async (url) => {
16 | const response = await fetch(url, {
17 | method: 'GET',
18 | headers: { 'Content-Type': 'application/octet-stream' }
19 | });
20 | return response.text();
21 | };
22 |
23 | const updateData = {
24 | name: '',
25 | pub_date: new Date().toISOString(),
26 | platforms: {
27 | win64: { signature: '', url: '' },
28 | linux: { signature: '', url: '' },
29 | darwin: { signature: '', url: '' },
30 | 'linux-x86_64': { signature: '', url: '' },
31 | 'windows-x86_64': { signature: '', url: '' }
32 | }
33 | };
34 |
35 | const octokit = getOctokit(process.env.GITHUB_TOKEN);
36 | const options = { owner: context.repo.owner, repo: context.repo.repo };
37 |
38 | const { data: release } = await octokit.rest.repos.getLatestRelease(options);
39 | updateData.name = release.tag_name;
40 | // eslint-disable-next-line camelcase
41 | for (const { name, browser_download_url } of release.assets) {
42 | if (name.endsWith('.msi.zip')) {
43 | // eslint-disable-next-line camelcase
44 | updateData.platforms.win64.url = browser_download_url;
45 | // eslint-disable-next-line camelcase
46 | updateData.platforms['windows-x86_64'].url = browser_download_url;
47 | } else if (name.endsWith('.msi.zip.sig')) {
48 | // eslint-disable-next-line no-await-in-loop
49 | const signature = await getSignature(browser_download_url);
50 | updateData.platforms.win64.signature = signature;
51 | updateData.platforms['windows-x86_64'].signature = signature;
52 | } else if (name.endsWith('.app.tar.gz')) {
53 | // eslint-disable-next-line camelcase
54 | updateData.platforms.darwin.url = browser_download_url;
55 | } else if (name.endsWith('.app.tar.gz.sig')) {
56 | // eslint-disable-next-line no-await-in-loop
57 | const signature = await getSignature(browser_download_url);
58 | updateData.platforms.darwin.signature = signature;
59 | } else if (name.endsWith('.AppImage.tar.gz')) {
60 | // eslint-disable-next-line camelcase
61 | updateData.platforms.linux.url = browser_download_url;
62 | // eslint-disable-next-line camelcase
63 | updateData.platforms['linux-x86_64'].url = browser_download_url;
64 | } else if (name.endsWith('.AppImage.tar.gz.sig')) {
65 | // eslint-disable-next-line no-await-in-loop
66 | const signature = await getSignature(browser_download_url);
67 | updateData.platforms.linux.signature = signature;
68 | updateData.platforms['linux-x86_64'].signature = signature;
69 | }
70 | }
71 |
72 | const { data: updater } = await octokit.rest.repos.getReleaseByTag({
73 | ...options,
74 | tag: UPDATE_TAG_NAME
75 | });
76 |
77 | for (const { id, name } of updater.assets) {
78 | if (name === UPDATE_FILE_NAME) {
79 | // eslint-disable-next-line no-await-in-loop
80 | await octokit.rest.repos.deleteReleaseAsset({ ...options, asset_id: id });
81 | break;
82 | }
83 | }
84 |
85 | await octokit.rest.repos.uploadReleaseAsset({
86 | ...options,
87 | release_id: updater.id,
88 | name: UPDATE_FILE_NAME,
89 | data: JSON.stringify(updateData)
90 | });
91 |
--------------------------------------------------------------------------------
/src-tauri/.gitignore:
--------------------------------------------------------------------------------
1 | # Generated by Cargo
2 | # will have compiled files and executables
3 | /target/
4 |
--------------------------------------------------------------------------------
/src-tauri/.taurignore:
--------------------------------------------------------------------------------
1 | # 忽略src-tauri目录下的所有文件变更
--------------------------------------------------------------------------------
/src-tauri/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "app"
3 | version = "0.1.0"
4 | description = "A Tauri App"
5 | authors = ["you"]
6 | license = ""
7 | repository = ""
8 | default-run = "app"
9 | edition = "2021"
10 | rust-version = "1.57"
11 |
12 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
13 |
14 | [build-dependencies]
15 | tauri-build = { version = "1.1.1", features = [] }
16 |
17 | [dependencies]
18 | serde_json = "1.0"
19 | serde_derive = "1.0.145"
20 | serde = { version = "1.0", features = ["derive"] }
21 | hyper = { version = "0.14.20", features = ["full"] }
22 | hyper-tls = "0.5.0"
23 | tauri = { version = "1.1.1", features = ["api-all", "updater"] }
24 | rusqlite = { version = "0.28.0", features = ["bundled"] }
25 | dirs = "4.0"
26 | uuid = { version="1.0.0",feature = ["v4","fast-rng","macro-diagnostics"] }
27 | tokio = { version = "1", features = ["full"] }
28 | [features]
29 | # by default Tauri runs in production mode
30 | # when `tauri dev` runs it is executed with `cargo run --no-default-features` if `devPath` is an URL
31 | default = [ "custom-protocol" ]
32 | # this feature is used for production builds where `devPath` points to the filesystem
33 | # DO NOT remove this
34 | custom-protocol = [ "tauri/custom-protocol" ]
35 |
36 |
--------------------------------------------------------------------------------
/src-tauri/build.rs:
--------------------------------------------------------------------------------
1 | fn main() {
2 | tauri_build::build()
3 | }
4 |
--------------------------------------------------------------------------------
/src-tauri/icons/128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/128x128.png
--------------------------------------------------------------------------------
/src-tauri/icons/128x128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/128x128@2x.png
--------------------------------------------------------------------------------
/src-tauri/icons/32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/32x32.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square107x107Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square107x107Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square142x142Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square142x142Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square150x150Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square150x150Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square284x284Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square284x284Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square30x30Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square30x30Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square310x310Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square310x310Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square44x44Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square44x44Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square71x71Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square71x71Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square89x89Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/Square89x89Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/StoreLogo.png
--------------------------------------------------------------------------------
/src-tauri/icons/icon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/icon.icns
--------------------------------------------------------------------------------
/src-tauri/icons/icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/icon.ico
--------------------------------------------------------------------------------
/src-tauri/icons/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/shijianzhong/tarui-vue3-handle-note/fab424f3310701d721e94f80a948bd4939eeb900/src-tauri/icons/icon.png
--------------------------------------------------------------------------------
/src-tauri/src/app_menu.rs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-26 22:34:27
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-16 16:21:12
5 | * @FilePath: /vue-project/src-tauri/src/app_menu.rs
6 | */
7 | // use tauri::api::dialog::message;
8 | use tauri::utils::assets::EmbeddedAssets;
9 | use tauri::{AboutMetadata, Context, CustomMenuItem, Menu, MenuItem, Submenu, WindowMenuEvent};
10 |
11 | use crate::MAIN_WINDOW;
12 | pub fn init(context: &Context) -> Menu {
13 | // 应用名称
14 | let name = &context.package_info().name;
15 | // tauri::Menu::os_default(name)
16 | // 应用主菜单
17 |
18 | let mut about_meta_data = AboutMetadata::new();
19 | about_meta_data.comments =Some(String::from("sking"));
20 | about_meta_data.version =Some(String::from("v0.0.1"));
21 | println!("{:#?}",about_meta_data);
22 | // let app_menu = Submenu::new(
23 | // "",
24 | // // MenuItem::About 为原生菜单
25 | // Menu::new().add_native_item(MenuItem::About(name.into(), about_meta_data)),
26 | // );
27 | let app_menu = Submenu::new(
28 | name,
29 | Menu::with_items([
30 | #[cfg(target_os = "macos")]
31 | MenuItem::About(name.into(), AboutMetadata::default()).into(),
32 | #[cfg(not(target_os = "macos"))]
33 | CustomMenuItem::new("about".to_string(), "About").into(),
34 | CustomMenuItem::new("check_update".to_string(), "Check for Updates").into(),
35 | MenuItem::Services.into(),
36 | MenuItem::Hide.into(),
37 | MenuItem::HideOthers.into(),
38 | MenuItem::ShowAll.into(),
39 | MenuItem::Separator.into(),
40 | MenuItem::Quit.into(),
41 | ])
42 | );
43 | // 文件菜单(自定义菜单)
44 | let file_menu = Submenu::new(
45 | "事项",
46 | Menu::new()
47 | .add_item(CustomMenuItem::new("new_item_type".to_string(), "新建类型"))
48 | .add_item(CustomMenuItem::new("new_item".to_string(), "新建事项")),
49 | );
50 | // 编辑菜单(自定义菜单)
51 | let edit_menu = Submenu::new(
52 | "能力",
53 | Menu::new()
54 | .add_item(CustomMenuItem::new("open_ai".to_string(), "智能问答"))
55 | .add_item(CustomMenuItem::new("note".to_string(), "笔记")),
56 | );
57 |
58 | Menu::new()
59 | .add_submenu(app_menu)
60 | .add_submenu(file_menu)
61 | .add_submenu(edit_menu)
62 | }
63 | // 应用菜单处理事件
64 | pub fn handler(event: WindowMenuEvent) {
65 | // 菜单所属的窗口
66 | // let win = Some(event.window());
67 | // 匹配菜单 id
68 | match event.menu_item_id() {
69 | "new_item_type" => {
70 | // debug 信息(终端输出)
71 | event_to_front("new_item_type");
72 | }
73 | "new_item" => {
74 | // 发送信息到菜单所属窗口(弹窗形式)
75 | // message(win, "Eidt File", "TODO");
76 | dbg!("edit file");
77 | event_to_front("new_item");
78 | }
79 | "open_ai" =>{
80 | dbg!("open_ai");
81 | event_to_front("open_ai");
82 | }
83 | "note" => {
84 | event_to_front("note");
85 | }
86 | "redo" => {
87 | dbg!("redo");
88 | }
89 | _ => {}
90 | }
91 | }
92 | #[derive(Clone, serde::Serialize)]
93 | struct ToFrontMessage {
94 | message: String,
95 | }
96 | fn event_to_front(emit_type: &str) {
97 | unsafe {
98 | let window = MAIN_WINDOW.clone().unwrap();
99 | window
100 | .emit(
101 | "rust_event",
102 | ToFrontMessage {
103 | message: emit_type.to_string(),
104 | },
105 | )
106 | .unwrap();
107 | }
108 | }
109 |
--------------------------------------------------------------------------------
/src-tauri/src/db_controller.rs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-27 10:00:09
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-08 13:39:18
5 | * @FilePath: /vue-project/src-tauri/src/db_controller.rs
6 | */
7 |
8 | use crate::models::matter_item::ItemType;
9 | use crate::Item;
10 | use rusqlite::{params, Connection, Result};
11 | use uuid::Uuid;
12 | pub struct Dao {
13 | con: Connection,
14 | }
15 | impl Dao {
16 | pub fn create_table(&self) {
17 | let sql = "CREATE TABLE 'todo_items' (
18 | 'item_id' text NOT NULL ON CONFLICT FAIL,
19 | 'item_name' TEXT,
20 | 'item_type' integer,
21 | 'item_desc' TEXT,
22 | 'item_state' integer,
23 | 'item_priority' integer,
24 | 'item_start' TEXT,
25 | 'item_end' TEXT,
26 | 'item_delete_flag' integer DEFAULT 0,
27 | 'item_desc_type' text,
28 | CONSTRAINT 'item_type' FOREIGN KEY ('item_type') REFERENCES 'item_type' ('item_type') ON DELETE CASCADE ON UPDATE CASCADE );
29 | ";
30 | self.con.execute(sql, params![]).unwrap();
31 | let sql1: &str = "CREATE TABLE 'item_type' (
32 | 'item_type' integer NOT NULL,
33 | 'item_type_name' TEXT NOT NULL,
34 | 'item_type_desc' TEXT,
35 | PRIMARY KEY ('item_type')
36 | );";
37 | self.con.execute(sql1, params![]).unwrap();
38 | }
39 | pub fn check_table_existed_else_created(&self, table_name: &str) -> bool {
40 | let sql = "select count(`name`) from 'sqlite_master' where `type` = 'table' and `name` = ?";
41 | let mut stmt = self.con.prepare(sql).unwrap();
42 | let rs = stmt.query_row(params![table_name], |row| {
43 | return row.get(0) as Result;
44 | });
45 | let count = rs.unwrap();
46 | // println!("长度::::{}", count);
47 | if count > 0 {
48 | return true;
49 | } else {
50 | self.create_table();
51 | return true;
52 | }
53 | }
54 | pub fn create() -> Dao {
55 | let db_file_path = dirs::data_dir()
56 | .unwrap()
57 | .into_os_string()
58 | .into_string()
59 | .unwrap();
60 | let db_file_path = format!("{}/do.db", db_file_path.as_str());
61 | let con = Connection::open(&db_file_path).unwrap();
62 | Dao { con }
63 | }
64 | pub fn delete_item(&self, item_id: String) -> bool {
65 | let sql: String = format!("DELETE FROM `todo_items` where `item_id` = '{}';", item_id);
66 | // println!("{}", &sql);
67 | let size = self.con.execute(&sql, []);
68 | match size {
69 | Ok(_) => return true,
70 | Err(_) => return false,
71 | }
72 | }
73 | pub fn vitural_delete_item(&self, item_id: String) -> bool {
74 | let sql: String = format!(
75 | "update `todo_items` set `item_delete_flag`= 1,
76 | item_type =1024
77 | where `item_id` ='{}';",
78 | item_id
79 | );
80 | let size = self.con.execute(&sql, []);
81 | match size {
82 | Ok(_) => true,
83 | Err(_) => false,
84 | }
85 | }
86 | pub fn update_item(&self, item: Item) -> bool {
87 | // println!("{:#?}", item);
88 | let sql: String = format!(
89 | "update `todo_items` set `item_name`= '{}',
90 | `item_type`={},`item_desc`='{}',`item_state`={},
91 | `item_priority`={},`item_start`='{}',`item_end`='{}',`item_desc_type`='{}'
92 | where `item_id` ='{}';",
93 | item.item_name,
94 | item.item_type,
95 | item.item_desc,
96 | item.item_state,
97 | item.item_priority,
98 | item.item_start,
99 | item.item_end,
100 | item.item_desc_type,
101 | item.item_id
102 | );
103 | // println!("sql语句::::{}", sql);
104 | let size = self.con.execute(&sql, []);
105 | // println!("{:#?}", size);
106 | match size {
107 | Ok(_) => true,
108 | Err(_) => false,
109 | }
110 | }
111 | pub fn add_item(&self, item: Item) -> Option {
112 | let sql = format!(
113 | "INSERT INTO `todo_items` (item_id,item_name,
114 | item_type,item_desc,item_state,item_priority,item_start,item_end,item_desc_type
115 | ) VALUES('{}','{}',{},'{}',{},{},'{}','{}','{}');",
116 | Uuid::new_v4(),
117 | item.item_name.as_str(),
118 | item.item_type.as_str(),
119 | item.item_desc.as_str(),
120 | item.item_state,
121 | item.item_priority.as_str(),
122 | item.item_start.as_str(),
123 | item.item_end.as_str(),
124 | item.item_desc_type.as_str()
125 | );
126 | // println!("{}", sql);
127 | let size = self.con.execute(&sql, []);
128 | match size {
129 | Ok(v) => Some(v == 1),
130 | Err(e) => {
131 | eprintln!("错误:{}", e);
132 | return Some(false);
133 | }
134 | }
135 | }
136 | pub fn add_item_type(&self, item_type: ItemType) -> Option {
137 | let sql = format!(
138 | "INSERT INTO `item_type` VALUES(null,'{}','{}');",
139 | item_type.item_type_name.as_str(),
140 | item_type.item_type_desc.as_str()
141 | );
142 | // println!("add_item_type::::{}", sql);
143 | let size = self.con.execute(&sql, []);
144 | match size {
145 | Ok(v) => Some(v == 1),
146 | Err(e) => {
147 | eprintln!("错误:{}", e);
148 | return Some(false);
149 | }
150 | }
151 | }
152 | pub fn list_item_type(&self) -> Result> {
153 | let sql = "select t1.item_type,t1.item_type_name,t1.item_type_desc from item_type as t1";
154 | let mut stmt = self.con.prepare(sql).unwrap();
155 | let item_iterator = stmt
156 | .query_map([], |row| {
157 | Ok(ItemType {
158 | item_type: row.get::(0)?.to_string(),
159 | item_type_name: row.get(1)?,
160 | item_type_desc: row.get(2)?,
161 | })
162 | })
163 | .unwrap();
164 | let mut items = Vec::new();
165 | for item in item_iterator {
166 | // println!("{:#?}", item);
167 | items.push(item?);
168 | }
169 | Ok(items)
170 | }
171 | pub fn list_items(&self) -> Result> {
172 | // let sql = "select * from `todo_items`";
173 | // and t1.item_delete_flag=0
174 | let sql ="SELECT t1.item_id,
175 | t1.item_name, t1.item_type, t2.item_type_name,
176 | t1.item_desc,t1.item_state,t1.item_priority,t1.item_start,t1.item_end,t1.item_desc_type FROM todo_items AS t1, item_type AS t2 WHERE t1.item_type=t2.item_type ;";
177 | let mut stmt = self.con.prepare(sql).unwrap();
178 | let item_iterator = stmt
179 | .query_map([], |row| {
180 | Ok(Item {
181 | item_id: row.get(0)?,
182 | item_name: row.get(1)?,
183 | item_type: row.get::(2)?.to_string(),
184 | item_type_name: row.get(3)?,
185 | item_desc: row.get(4)?,
186 | item_state: row.get(5)?,
187 | item_priority: row.get::(6)?.to_string(),
188 | item_start: row.get(7)?,
189 | item_end: row.get(8)?,
190 | item_desc_type: row.get(9)?,
191 | })
192 | })
193 | .unwrap();
194 | let mut items = Vec::new();
195 | for item in item_iterator {
196 | // println!("{:#?}", item);
197 | items.push(item?);
198 | }
199 | Ok(items)
200 | }
201 |
202 | pub fn list_trash_items(&self) -> Result> {
203 | let sql ="SELECT t1.item_id,
204 | t1.item_name, t1.item_type,
205 | t1.item_desc,t1.item_state,t1.item_priority,t1.item_start,t1.item_end,t1.item_desc_type FROM todo_items AS t1 WHERE t1.item_type=1024 ;";
206 | let mut stmt = self.con.prepare(sql).unwrap();
207 | let item_iterator = stmt
208 | .query_map([], |row| {
209 | Ok(Item {
210 | item_id: row.get(0)?,
211 | item_name: row.get(1)?,
212 | item_type: row.get::(2)?.to_string(),
213 | item_type_name: "废纸篓".to_string(),
214 | item_desc: row.get(3)?,
215 | item_state: row.get(4)?,
216 | item_priority: row.get::(5)?.to_string(),
217 | item_start: row.get(6)?,
218 | item_end: row.get(7)?,
219 | item_desc_type: row.get(8)?,
220 | })
221 | })
222 | .unwrap();
223 | let mut items = Vec::new();
224 | for item in item_iterator {
225 | // println!("{:#?}", item);
226 | items.push(item?);
227 | }
228 | Ok(items)
229 | }
230 | }
231 |
--------------------------------------------------------------------------------
/src-tauri/src/gpt/mod.rs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2023-02-17 08:10:02
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-21 10:08:54
5 | * @FilePath: /vue-project/src-tauri/src/gpt/mod.rs
6 | */
7 |
8 | pub mod openai {
9 | use hyper::{body::Buf, header, Body, Client, Request};
10 | use hyper_tls::HttpsConnector;
11 | use std::{env};
12 | use crate::models::open_ai_mod::{OpenAIResponse,OpenAIRequest};
13 | pub async fn qs(user_input:String) -> Result> {
14 | let api_key = match env::var("OPENAI_KEY") {
15 | Ok(key) => key,
16 | Err(e) => {
17 | println!("{:#?}", e);
18 | println!("Error: please create an environment variable OPENAI_KEY");
19 | std::process::exit(1);
20 | }
21 | };
22 | let uri = "https://api.openai.com/v1/completions";
23 | let https = HttpsConnector::new();
24 | let client = Client::builder().build(https);
25 | let model = String::from("text-davinci-003");
26 | let stop = String::from("Text");
27 | println!("{}", api_key);
28 | let auth_header_val = format!("Bearer {}", api_key);
29 | // let default_prompt =
30 | // "Given text, return 1 bash command. Text:list contents of a directory. Command:ls";
31 | let before_qs:String = String::from("");
32 | let openai_request = OpenAIRequest {
33 | model,
34 | prompt: format!("Text:{}. Human:", user_input),
35 | temperature:0.9,
36 | max_tokens: 2500,
37 | stop,
38 | top_p:1,
39 | frequency_penalty:0.0,
40 | presence_penalty:0.6
41 | };
42 | println!("执行我了&*(");
43 | let body = Body::from(serde_json::to_vec(&openai_request)?);
44 |
45 | let req = Request::post(uri)
46 | .header(header::CONTENT_TYPE, "application/json")
47 | .header("Authorization", &auth_header_val)
48 | .body(body)
49 | .unwrap();
50 |
51 | let res = client.request(req).await?;
52 |
53 | let body = hyper::body::aggregate(res).await?;
54 |
55 | match serde_json::from_reader(body.reader()) {
56 | Ok(response) => Ok(response),
57 | Err(_) => {
58 | println!("Error");
59 | std::process::exit(1);
60 | }
61 | }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/src-tauri/src/main.rs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-01 14:27:55
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-21 09:16:09
5 | * @FilePath: /vue-project/src-tauri/src/main.rs
6 | */
7 | #![cfg_attr(
8 | all(not(debug_assertions), target_os = "windows"),
9 | windows_subsystem = "windows"
10 | )]
11 | extern crate dirs;
12 | mod app_menu;
13 | mod db_controller;
14 | use db_controller::Dao;
15 | mod models;
16 | use models::matter_item::{Item,ItemType};
17 | use tauri::{ Manager, Window};
18 | mod gpt;
19 | use gpt::openai;
20 | // use models::open_ai_mod::{OpenAIResponse,OpenAIRequest};
21 | // static mut CURRENT_APP: &App;
22 | static mut MAIN_WINDOW: Option = None;
23 | fn main() {
24 | let context = tauri::generate_context!();
25 | tauri::Builder::default()
26 | .setup(move |app| {
27 | unsafe {
28 | MAIN_WINDOW = app.get_window("main");
29 | }
30 | Ok(())
31 | })
32 | .menu(app_menu::init(&context))
33 | .on_menu_event(app_menu::handler)
34 | .invoke_handler(tauri::generate_handler![greet, get_items, add_item,add_item_type,vitural_delete_item,
35 | get_item_types,delete_item,update_item,get_trash_items,ai_qs])
36 | .run(context)
37 | .expect("error while running tauri application");
38 | }
39 |
40 | #[tauri::command]
41 | async fn ai_qs(user_input:String)->String{
42 | println!("进来了哈哈");
43 | let tmp = openai::qs(user_input.to_string()).await;
44 | match tmp{
45 | Ok(o)=>{
46 | println!("{:#?}",o);
47 | let data = serde_json::to_string(&o).unwrap();
48 | data
49 | },
50 | Err(_)=> String::from("error")
51 | }
52 |
53 | }
54 |
55 | #[tauri::command]
56 | fn greet(name: &str) -> String {
57 | format!("Hello,{}", name)
58 | }
59 | #[tauri::command]
60 | fn get_items() -> String {
61 | let dao = Dao::create();
62 | if dao.check_table_existed_else_created("todo_items") {}
63 | let tmp = dao.list_items().unwrap();
64 | let data = serde_json::to_string(&tmp).unwrap();
65 | data
66 | }
67 | #[tauri::command]
68 | fn get_trash_items() -> String {
69 | let dao = Dao::create();
70 | if dao.check_table_existed_else_created("todo_items") {}
71 | let tmp = dao.list_trash_items().unwrap();
72 | let data = serde_json::to_string(&tmp).unwrap();
73 | data
74 | }
75 | #[tauri::command]
76 | fn get_item_types() -> String {
77 | let dao = Dao::create();
78 | if dao.check_table_existed_else_created("todo_items") {}
79 | let tmp = dao.list_item_type().unwrap();
80 | let data = serde_json::to_string(&tmp).unwrap();
81 | data
82 | }
83 | #[tauri::command]
84 | fn vitural_delete_item(item_id:String) -> bool {
85 | // println!("收到假删除参数{}",item_id);
86 | let dao = Dao::create();
87 | dao.vitural_delete_item(item_id) //假删除
88 | }
89 | #[tauri::command]
90 | fn delete_item(item_id:String) -> bool {
91 | // println!("收到真的删除参数{}",item_id);
92 | let dao = Dao::create();
93 | dao.delete_item(item_id) //真删除
94 | }
95 | #[tauri::command]
96 | fn update_item(item:String) -> bool {
97 | // println!("更新item对象:{}",item);
98 | let dao = Dao::create();
99 | let parsed:Item = serde_json::from_str(item.as_str()).unwrap();
100 | dao.update_item(parsed) //
101 | }
102 | #[tauri::command]
103 | fn add_item(form: &str) -> String {
104 | // println!("this is fe's value :{}", form);
105 | let parsed: Item = serde_json::from_str(form).unwrap();
106 | // println!("{:#?}", parsed);
107 | let dao = Dao::create();
108 | if dao.check_table_existed_else_created("todo_items") {
109 | // println!("nothing");
110 | }
111 | let r = dao.add_item(parsed);
112 | if let Some(true) = r {
113 | "1".to_string()
114 | } else {
115 | "0".to_string()
116 | }
117 | }
118 | #[tauri::command]
119 | fn add_item_type(form: &str) -> bool {
120 | // println!("this is fe's value :{}", form);
121 | let parsed: ItemType = serde_json::from_str(form).unwrap();
122 | // print!("{:#?}", parsed);
123 | let dao = Dao::create();
124 | if dao.check_table_existed_else_created("todo_items") {
125 | // println!("nothing");
126 | }
127 | let r = dao.add_item_type(parsed);
128 | if let Some(true) = r {
129 | true
130 | } else {
131 | false
132 | }
133 | }
--------------------------------------------------------------------------------
/src-tauri/src/models.rs:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-27 11:45:31
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-21 09:36:08
5 | * @FilePath: /vue-project/src-tauri/src/models.rs
6 | */
7 | pub mod matter_item {
8 | use serde::{Deserialize, Serialize};
9 | #[derive(Debug, Deserialize, Serialize)]
10 | #[warn(dead_code)]
11 | pub struct Item {
12 | pub item_id: String,
13 | pub item_name: String,
14 | pub item_type: String, //类型
15 | pub item_type_name: String,
16 | pub item_state: u8,
17 | pub item_desc: String,
18 | pub item_priority: String,
19 | pub item_start: String,
20 | pub item_end: String,
21 | pub item_desc_type: String, //内容类型,1为markdown 2为画板
22 | }
23 |
24 | #[derive(Debug, Deserialize, Serialize)]
25 | #[warn(dead_code)]
26 | pub struct ItemType {
27 | pub item_type: String,
28 | pub item_type_name: String,
29 | pub item_type_desc: String,
30 | }
31 | }
32 | pub mod open_ai_mod {
33 | use serde::{Deserialize, Serialize};
34 | #[derive(Deserialize,Serialize, Debug)]
35 | pub struct OpenAIChoices {
36 | pub text: String,
37 | }
38 |
39 | #[derive(Deserialize,Serialize, Debug)]
40 | pub struct OpenAIResponse {
41 | pub choices: Vec,
42 | }
43 |
44 | #[derive(Deserialize,Serialize, Debug)]
45 | pub struct OpenAIRequest {
46 | pub model: String,
47 | pub prompt: String,
48 | pub max_tokens: u32,
49 | pub stop: String,
50 | pub temperature :f32,
51 | pub top_p:u32,
52 | pub frequency_penalty:f32,
53 | pub presence_penalty:f32
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/src-tauri/tauri.conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "build": {
3 | "beforeBuildCommand": "npm run build",
4 | "beforeDevCommand": "npm run dev",
5 | "devPath": "http://localhost:5173",
6 | "distDir": "../dist",
7 | "withGlobalTauri":true
8 | },
9 | "package": {
10 | "productName": "随手记",
11 | "version": "0.1.0"
12 | },
13 |
14 | "tauri": {
15 | "allowlist": {
16 | "all": true,
17 | "path": {
18 | "all": true
19 | }
20 | },
21 | "bundle": {
22 | "active": true,
23 | "category": "DeveloperTool",
24 | "copyright": "",
25 | "deb": {
26 | "depends": []
27 | },
28 | "externalBin": [],
29 | "icon": [
30 | "icons/32x32.png",
31 | "icons/128x128.png",
32 | "icons/128x128@2x.png",
33 | "icons/icon.icns",
34 | "icons/icon.ico"
35 | ],
36 | "identifier": "com.tauri.sking",
37 | "longDescription": "",
38 | "macOS": {
39 | "entitlements": null,
40 | "exceptionDomain": "",
41 | "frameworks": [],
42 | "providerShortName": null,
43 | "signingIdentity": null
44 | },
45 | "resources": [
46 |
47 | ],
48 | "shortDescription": "",
49 | "targets": "all",
50 | "windows": {
51 | "certificateThumbprint": null,
52 | "digestAlgorithm": "sha256",
53 | "timestampUrl": "",
54 | "wix":{
55 | "language":"zh-CN"
56 | }
57 | }
58 | },
59 | "security": {
60 | "csp": null
61 | },
62 | "updater": {
63 | "active": true,
64 | "endpoints":[
65 | "https://github.com/shijianzhong/tarui-vue3-handle-note/releases/download/updater/update.json"
66 | ],
67 | "dialog":false,
68 | "pubkey":"dW50cnVzdGVkIGNvbW1lbnQ6IG1pbmlzaWduIHB1YmxpYyBrZXk6IDlFMDhENTdBMjE5MUIyMzAKUldRd3NwRWhldFVJbmdqL3dxaGpodVA5SFl6alNab1dhZmhuQm9xcXhBNDJqVlU1WUpYZ0VseUcK"
69 | },
70 | "windows": [
71 | {
72 | "fullscreen": false,
73 | "height": 800,
74 | "resizable": true,
75 | "title": "随手记",
76 | "width": 1000
77 | }
78 | ]
79 | }
80 | }
81 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/src/assets/base.css:
--------------------------------------------------------------------------------
1 | /* color palette from */
2 | :root {
3 | --vt-c-white: #ffffff;
4 | --vt-c-white-soft: #f8f8f8;
5 | --vt-c-white-mute: #f2f2f2;
6 |
7 | --vt-c-black: #181818;
8 | --vt-c-black-soft: #222222;
9 | --vt-c-black-mute: #282828;
10 |
11 | --vt-c-indigo: #2c3e50;
12 |
13 | --vt-c-divider-light-1: rgba(60, 60, 60, 0.29);
14 | --vt-c-divider-light-2: rgba(60, 60, 60, 0.12);
15 | --vt-c-divider-dark-1: rgba(84, 84, 84, 0.65);
16 | --vt-c-divider-dark-2: rgba(84, 84, 84, 0.48);
17 |
18 | --vt-c-text-light-1: var(--vt-c-indigo);
19 | --vt-c-text-light-2: rgba(60, 60, 60, 0.66);
20 | --vt-c-text-dark-1: var(--vt-c-white);
21 | --vt-c-text-dark-2: rgba(235, 235, 235, 0.64);
22 | }
23 |
24 | /* semantic color variables for this project */
25 | :root {
26 | --color-background: var(--vt-c-white);
27 | --color-background-soft: var(--vt-c-white-soft);
28 | --color-background-mute: var(--vt-c-white-mute);
29 |
30 | --color-border: var(--vt-c-divider-light-2);
31 | --color-border-hover: var(--vt-c-divider-light-1);
32 |
33 | --color-heading: var(--vt-c-text-light-1);
34 | --color-text: var(--vt-c-text-light-1);
35 |
36 | --section-gap: 160px;
37 | }
38 |
39 | @media (prefers-color-scheme: dark) {
40 | :root {
41 | --color-background: var(--vt-c-black);
42 | --color-background-soft: var(--vt-c-black-soft);
43 | --color-background-mute: var(--vt-c-black-mute);
44 |
45 | --color-border: var(--vt-c-divider-dark-2);
46 | --color-border-hover: var(--vt-c-divider-dark-1);
47 |
48 | --color-heading: var(--vt-c-text-dark-1);
49 | --color-text: var(--vt-c-text-dark-2);
50 | }
51 | }
52 |
53 | *,
54 | *::before,
55 | *::after {
56 | box-sizing: border-box;
57 | margin: 0;
58 | position: relative;
59 | font-weight: normal;
60 | }
61 |
62 | body {
63 | min-height: 100vh;
64 | color: var(--color-text);
65 | background: var(--color-background);
66 | transition: color 0.5s, background-color 0.5s;
67 | line-height: 1.6;
68 | font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu,
69 | Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
70 | font-size: 15px;
71 | text-rendering: optimizeLegibility;
72 | -webkit-font-smoothing: antialiased;
73 | -moz-osx-font-smoothing: grayscale;
74 | }
75 |
--------------------------------------------------------------------------------
/src/assets/logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/assets/main.css:
--------------------------------------------------------------------------------
1 | @import './base.css';
2 |
3 | /* #app {
4 | max-width: 1280px;
5 | margin: 0 auto;
6 | padding: 2rem;
7 |
8 | font-weight: normal;
9 | }
10 |
11 | a,
12 | .green {
13 | text-decoration: none;
14 | color: hsla(160, 100%, 37%, 1);
15 | transition: 0.4s;
16 | }
17 |
18 | @media (hover: hover) {
19 | a:hover {
20 | background-color: hsla(160, 100%, 37%, 0.2);
21 | }
22 | }
23 |
24 | @media (min-width: 1024px) {
25 | body {
26 | display: flex;
27 | place-items: center;
28 | }
29 |
30 | #app {
31 | display: grid;
32 | grid-template-columns: 1fr 1fr;
33 | padding: 0 2rem;
34 | }
35 | } */
36 |
--------------------------------------------------------------------------------
/src/components/CCanvas.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 画笔
5 | 画笔
6 | 圆
7 | 三角形
8 | 方形
9 |
11 |
13 |
14 |
16 | 选中删除
17 | 全擦除
18 |
19 |
20 |
21 |
22 |
23 |
211 |
--------------------------------------------------------------------------------
/src/components/ItemEditor.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
136 |
--------------------------------------------------------------------------------
/src/components/TaskItem.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
{{ item?.item_name }}
14 |
{{ item?.item_end }}
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
26 |
27 |
28 |
29 |
30 |
31 |
61 |
--------------------------------------------------------------------------------
/src/components/TaskItems/TaskItem.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | {{item?.item_name}}
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | 未完成
24 |
25 |
26 |
27 |
28 |
34 |
--------------------------------------------------------------------------------
/src/components/TaskItems/TaskItemForm.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | 一般
24 | 重要
25 | 紧急
26 |
27 |
28 |
29 |
31 |
33 |
34 |
35 | Create
36 | Cancel
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/src/components/TaskItems/TaskTypeItems.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | 新增
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
49 |
--------------------------------------------------------------------------------
/src/components/TheWelcome.vue:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | Documentation
16 |
17 | Vue’s
18 | official documentation
19 | provides you with all information you need to get started.
20 |
21 |
22 |
23 |
24 |
25 |
26 | Tooling
27 |
28 | This project is served and bundled with
29 | Vite . The
30 | recommended IDE setup is
31 | VSCode +
32 | Volar . If
33 | you need to test your components and web pages, check out
34 | Cypress and
35 | Cypress Component Testing .
36 |
37 |
38 |
39 | More instructions are available in README.md
.
40 |
41 |
42 |
43 |
44 |
45 |
46 | Ecosystem
47 |
48 | Get official tools and libraries for your project:
49 | Pinia ,
50 | Vue Router ,
51 | Vue Test Utils , and
52 | Vue Dev Tools . If
53 | you need more resources, we suggest paying
54 | Awesome Vue
55 | a visit.
56 |
57 |
58 |
59 |
60 |
61 |
62 | Community
63 |
64 | Got stuck? Ask your question on
65 | Vue Land , our official
66 | Discord server, or
67 | StackOverflow . You should also subscribe to
70 | our mailing list and follow
71 | the official
72 | @vuejs
73 | twitter account for latest news in the Vue world.
74 |
75 |
76 |
77 |
78 |
79 |
80 | Support Vue
81 |
82 | As an independent project, Vue relies on community backing for its sustainability. You can help
83 | us by
84 | becoming a sponsor .
85 |
86 |
87 |
--------------------------------------------------------------------------------
/src/components/WelcomeItem.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
23 |
95 |
--------------------------------------------------------------------------------
/src/components/icons/IconCommunity.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/components/icons/IconDelete.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
10 |
13 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/components/icons/IconDocumentation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/components/icons/IconEcosystem.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/components/icons/IconEdit.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
10 |
13 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/src/components/icons/IconSupport.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/src/components/icons/IconTooling.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/src/libs/bridge.ts:
--------------------------------------------------------------------------------
1 | // @ts-nocheck
2 | /*
3 | * @Date: 2022-11-17 15:02:39
4 | * @LastEditors: shijianzhong 994129509@qq.com
5 | * @LastEditTime: 2023-02-17 14:18:39
6 | * @FilePath: /vue-project/src/libs/bridge.ts
7 | */
8 | import { ref, onMounted, onUnmounted, watch } from 'vue'
9 | import { invoke } from '@tauri-apps/api';
10 |
11 | export function useGreet() {
12 | const greetRes = ref(null)
13 | const greetErr = ref(null)
14 | let res = invoke('greet', { name: 'world' })
15 | .then(res => greetRes.value = res)
16 | .catch(err => greetErr.value = err)
17 | return { greetRes, greetErr }
18 | }
19 | export function useAi(user_input) {
20 | return new Promise((resolve, reject) => {
21 | invoke('ai_qs', { userInput:`${user_input}` })
22 | .then(res => resolve(res))
23 | .catch(err => reject(err))
24 | })
25 |
26 | }
27 | export function useDeleteItemByItemId(item_id, real = false) {
28 | return new Promise((resolve, reject) => {
29 | invoke(real ? 'delete_item' : 'vitural_delete_item', { itemId: `${item_id}` })
30 | .then(res => {
31 | resolve(res)
32 | })
33 | .catch(e => reject(e))
34 | })
35 | }
36 | export function useUpdateItem(item) {
37 | return new Promise((resolve, reject) => {
38 | invoke('update_item', { item: JSON.stringify(item) })
39 | .then(res => {
40 | resolve(res)
41 | })
42 | .catch(e => reject(e))
43 | })
44 | }
45 | export function useGetItems() {
46 | return new Promise((resolve, reject) => {
47 | invoke('get_items')
48 | .then(res => {
49 | let val = JSON.parse(res)
50 | let _data = new Map();
51 | val.forEach(element => {
52 | let _key = element.item_type;
53 | if (_data.has(_key)) {
54 | _data.get(_key).push(element)
55 | } else {
56 | _data.set(_key, [
57 | element
58 | ])
59 | }
60 | });
61 | invoke('get_trash_items')
62 | .then(res => {
63 | let val = JSON.parse(res)
64 | val.forEach(element => {
65 | let _key = "1024";
66 | if (_data.has(_key)) {
67 | _data.get(_key).push(element)
68 | } else {
69 | _data.set(_key, [
70 | element
71 | ])
72 | }
73 | });
74 | resolve(_data)
75 | })
76 |
77 | })
78 | .catch(e => reject(e))
79 | })
80 | }
81 | export function useGetItemTypes() {
82 | return new Promise((resolve, reject) => {
83 | invoke('get_item_types')
84 | .then(res => {
85 | let val = JSON.parse(res)
86 | resolve(val)
87 | })
88 | .catch(e => reject(e))
89 | })
90 | }
91 | // get_item_types
92 | export function useAddData(item, apiStr) {
93 | return new Promise((resolve, reject) => {
94 | invoke(apiStr, { form: JSON.stringify(item) })
95 | .then(res => {
96 | resolve(res)
97 | })
98 | .catch(err => reject(err))
99 | })
100 | }
101 | // 按照惯例,组合式函数名以“use”开头
102 | export function useBridge() {
103 | // 被组合式函数封装和管理的状态
104 | const x = ref(0)
105 | const y = ref(0)
106 |
107 | // 组合式函数可以随时更改其状态。
108 | function update(event) {
109 | x.value = event.pageX
110 | y.value = event.pageY
111 | }
112 |
113 | // 一个组合式函数也可以挂靠在所属组件的生命周期上
114 | // 来启动和卸载副作用
115 | onMounted(() => window.addEventListener('mousemove', update))
116 | onUnmounted(() => window.removeEventListener('mousemove', update))
117 |
118 | // 通过返回值暴露所管理的状态
119 | return { x, y }
120 | }
--------------------------------------------------------------------------------
/src/main.ts:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-01 14:14:04
3 | * @LastEditors: shijianzhong shijianzhong
4 | * @LastEditTime: 2022-11-30 09:19:01
5 | * @FilePath: /vue-project/src/main.ts
6 | */
7 | import { createApp } from 'vue'
8 | import { createPinia } from 'pinia'
9 | import ElementPlus from 'element-plus'
10 | import 'element-plus/dist/index.css'
11 | import App from './App.vue'
12 | import router from './router'
13 | import mavonEditor from 'mavon-editor'
14 | import 'mavon-editor/dist/css/index.css'
15 | import './assets/main.css'
16 |
17 | const app = createApp(App)
18 | app.use(mavonEditor)
19 | app.use(ElementPlus)
20 | app.use(createPinia())
21 | app.use(router)
22 |
23 | app.mount('#app')
24 |
--------------------------------------------------------------------------------
/src/router/index.ts:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-01 14:14:04
3 | * @LastEditors: shijianzhong 994129509@qq.com
4 | * @LastEditTime: 2023-02-16 15:45:18
5 | * @FilePath: /vue-project/src/router/index.ts
6 | */
7 | import { createRouter, createWebHistory } from 'vue-router'
8 | import HomeView from '../views/HomeView.vue'
9 |
10 | const router = createRouter({
11 | history: createWebHistory(import.meta.env.BASE_URL),
12 | routes: [
13 | {
14 | path: '/',
15 | name: 'home',
16 | component: () => import('../views/HomeView.vue')
17 | },
18 | {
19 | path: '/about',
20 | name: 'about',
21 | // route level code-splitting
22 | // this generates a separate chunk (About.[hash].js) for this route
23 | // which is lazy-loaded when the route is visited.
24 | component: () => import('../views/AboutView.vue')
25 | },
26 | {
27 | path: '/ai',
28 | name: 'ai',
29 | component: () => import('../views/AiView.vue')
30 | },
31 | ]
32 | })
33 |
34 | export default router
35 |
--------------------------------------------------------------------------------
/src/stores/counter.ts:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-11-01 14:14:04
3 | * @LastEditors: shijianzhong shijianzhong
4 | * @LastEditTime: 2022-11-16 19:27:59
5 | * @FilePath: /vue-project/src/stores/counter.ts
6 | */
7 | import { ref, computed } from 'vue'
8 | import { defineStore } from 'pinia'
9 |
10 | export const useCounterStore = defineStore('counter', () => {
11 | const count = ref(0)
12 | const doubleCount = computed(() => count.value * 2)
13 | function increment() {
14 | count.value++
15 | }
16 |
17 | return { count, doubleCount, increment }
18 | })
19 |
--------------------------------------------------------------------------------
/src/stores/task.ts:
--------------------------------------------------------------------------------
1 | // @ts-nocheck
2 | /*
3 | * @Date: 2022-11-01 14:14:04
4 | * @LastEditors: shijianzhong shijianzhong
5 | * @LastEditTime: 2022-11-30 15:46:29
6 | */
7 | import { ref, computed, reactive } from 'vue'
8 | import { defineStore } from 'pinia'
9 | // import {useGetItems} from '@/libs/bridge'
10 | export const useTaskStore = defineStore('task', () => {
11 | let typeItemsStore =reactive(new Map())
12 | /**
13 | * 类目
14 | */
15 | let itemTypes = ref([]);
16 |
17 | /**
18 | * 设置类目
19 | * @param val
20 | */
21 | function setItemTypes(val){
22 | itemTypes.value =val;
23 | }
24 | //初始化数据
25 | function setAllData(data){
26 | this.typeItemsStore = data;
27 | }
28 | return { typeItemsStore, setAllData,setItemTypes,itemTypes}
29 | })
30 |
--------------------------------------------------------------------------------
/src/types/index.d.ts:
--------------------------------------------------------------------------------
1 | /*
2 | * @Date: 2022-12-02 13:52:01
3 | * @LastEditors: shijianzhong shijianzhong
4 | * @LastEditTime: 2022-12-02 13:52:26
5 | * @FilePath: /vue-project/src/types/index.d.ts
6 | */
7 | declare module 'fabric';
--------------------------------------------------------------------------------
/src/views/AboutView.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
This is an about page111122
10 |
11 |
12 |
29 |
30 |
39 |
--------------------------------------------------------------------------------
/src/views/AiView.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
{{ item.content }}
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | 发送
23 | 一键生产笔记
24 |
25 |
26 |
27 |
95 |
--------------------------------------------------------------------------------
/src/views/HomeView.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | {{ item.item_type_name }}
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 | 新建类型
54 |
55 | 新建事项
56 |
57 |
58 | chatGpt
59 |
60 |
61 |
62 |
63 |
64 |
218 |
--------------------------------------------------------------------------------
/src/views/TaskView.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
29 |
--------------------------------------------------------------------------------
/src/views/ToDoItem.vue:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
每日清单
10 |
双击文字内容编辑修改
11 |
双击条目的空白部分删除该条目
12 |
13 |
14 |
15 | {{item}}
16 |
17 |
18 |
19 |
20 |
32 |
--------------------------------------------------------------------------------
/tsconfig.config.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@vue/tsconfig/tsconfig.node.json",
3 | "include": ["vite.config.*", "vitest.config.*", "cypress.config.*", "playwright.config.*"],
4 | "compilerOptions": {
5 | "strict": false,
6 | "composite": true,
7 | "types": ["node"]
8 | },
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "@vue/tsconfig/tsconfig.web.json",
3 | "include": ["env.d.ts", "src/**/*", "src/**/*.vue"],
4 | "compilerOptions": {
5 | "baseUrl": ".",
6 | "strict": false,
7 | "paths": {
8 | "@/*": ["./src/*"]
9 | },
10 | "types": ["element-plus/global"]
11 | },
12 |
13 | "references": [
14 | {
15 | "path": "./tsconfig.config.json"
16 | }
17 | ]
18 | }
19 |
--------------------------------------------------------------------------------
/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { fileURLToPath, URL } from 'node:url'
2 |
3 | import { defineConfig } from 'vite'
4 | import vue from '@vitejs/plugin-vue'
5 | import vueJsx from '@vitejs/plugin-vue-jsx'
6 |
7 | // https://vitejs.dev/config/
8 | export default defineConfig({
9 | plugins: [vue(), vueJsx()],
10 | resolve: {
11 | alias: {
12 | '@': fileURLToPath(new URL('./src', import.meta.url))
13 | }
14 | }
15 | })
16 |
--------------------------------------------------------------------------------