├── .github
└── workflows
│ └── tauri-release.yml
├── .gitignore
├── .vscode
└── extensions.json
├── README.md
├── index.html
├── package-lock.json
├── package.json
├── src-tauri
├── .gitignore
├── 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
│ └── main.rs
└── tauri.conf.json
├── src
├── App.vue
├── main.js
├── plugins
│ └── router.js
├── store
│ └── store.js
└── views
│ └── Home.vue
└── vite.config.js
/.github/workflows/tauri-release.yml:
--------------------------------------------------------------------------------
1 | name: "publish"
2 | on:
3 | push:
4 | branches:
5 | - main
6 |
7 | jobs:
8 | publishtauri:
9 | permissions:
10 | contents: write
11 | strategy:
12 | fail-fast: false
13 | matrix:
14 | platform: [macos-latest, ubuntu-20.04, windows-latest]
15 |
16 | runs-on: ${{ matrix.platform }}
17 |
18 | outputs:
19 | releaseId: ${{ steps.tauri.outputs.releaseHtmlUrl }}
20 | steps:
21 | - uses: actions/checkout@v3
22 | - name: setup node
23 | uses: actions/setup-node@v3
24 | with:
25 | node-version: 16
26 | - name: install Rust stable
27 | uses: dtolnay/rust-toolchain@stable
28 | - name: Export variable (unix)
29 | if: matrix.platform != 'windows-latest'
30 | run: echo "TAURI_PRIVATE_KEY=${{ secrets.TAURI_PRIVATE_KEY }}" >> $GITHUB_ENV
31 | - name: Export variable (windows)
32 | if: matrix.platform == 'windows-latest'
33 | run: echo "TAURI_PRIVATE_KEY=${{ secrets.TAURI_PRIVATE_KEY }}" >> $GITHUB_ENV
34 | shell: bash
35 | - name: install dependencies (ubuntu only)
36 | if: matrix.platform == 'ubuntu-20.04'
37 | run: |
38 | sudo apt-get update
39 | sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.0-dev libappindicator3-dev librsvg2-dev patchelf
40 | - name: install frontend dependencies
41 | run: yarn install # change this to npm or pnpm depending on which one you use
42 | - uses: tauri-apps/tauri-action@v0
43 | id: tauri
44 | env:
45 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46 | with:
47 | tagName: v__VERSION__ # the action automatically replaces __VERSION__ with the app version
48 | releaseName: "v__VERSION__"
49 | releaseBody: "See the assets to download this version and install."
50 | releaseDraft: false
51 | prerelease: false
52 | includeUpdaterJson: true
53 | updaterJsonPreferNsis: true
54 | includeDebug: false
55 | includeRelease: true
56 |
57 | update-json:
58 | runs-on: ubuntu-latest
59 | needs: publishtauri
60 | steps:
61 | - name: Checkout code
62 | uses: actions/checkout@v2
63 | - name: Configure Git
64 | run: |
65 | git config user.name "GitHub Action"
66 | git config user.email "action@github.com"
67 | - name: Create or checkout branch
68 | run: |
69 | git checkout "update" || git checkout --orphan "update"
70 | - name: Remove all files
71 | run: |
72 | git rm -rf .
73 | - name: Fetch JSON file
74 | env:
75 | RELEASE_ID: ${{needs.publishtauri.outputs.releaseId}}
76 | run: |
77 | echo "$RELEASE_ID"
78 | RELEASE_TAG=$(basename $RELEASE_ID)
79 | echo "$RELEASE_TAG"
80 | RELEASE_URL="https://github.com/skymen/construct-crawler/releases/download/$RELEASE_TAG/latest.json"
81 | echo "$RELEASE_URL"
82 | curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -H "Accept: application/vnd.github.v3.raw" -o latest.json -L "$RELEASE_URL"
83 | cat latest.json
84 | - name: Commit and push changes
85 | run: |
86 | git add latest.json
87 | git commit -m "Update latest.json"
88 | git push -u origin update --force
89 |
--------------------------------------------------------------------------------
/.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 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "Vue.volar",
4 | "tauri-apps.tauri-vscode",
5 | "rust-lang.rust-analyzer"
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Installation
2 |
3 | Download the app from the releases page and run it.
4 |
5 | https://github.com/skymen/construct-crawler/releases/latest
6 |
7 | Note that opening a project as a c3p file does not apply the changes to the c3p.
8 | To actually apply the changes, you need to save the project as a project folder before opening it.
9 |
10 | # Development prerequisites
11 |
12 | ## Github Action
13 |
14 | You need to enable the github actions write authorization for the repository. This is needed to publish the releases and to create a branch for the updater.
15 |
16 | ## Updater
17 |
18 | Generate a publication key, add the private key to the repository secrets as `TAURI_PRIVATE_KEY` and add the public key to tauri.config.json as `updater/pubkey`.
19 | Also, change the endpoint to the correct name/repo in tauri.config.json.
20 |
21 | ## App name
22 |
23 | I have no idea how to properly change the name of the app when cloning it from this repo to a new one. Good luck!!!
24 |
25 | # Tech stack
26 |
27 | This template uses the following technologies:
28 |
29 | - [Vue 3](https://v3.vuejs.org/)
30 | - [Vite](https://vitejs.dev/)
31 | - [Tauri](https://tauri.studio/)
32 | - [Pinia](https://pinia.esm.dev/)
33 | - [Vue Router](https://next.router.vuejs.org/)
34 |
35 | It also includes the following features:
36 |
37 | - Auto publish release when committing to the `main` branch
38 | - Automatically support tauri's auto updater by generating and uploading the latest.json file to a separate branch
39 | - Template comes preinstalled and preconfigured with Pinia and Vue Router
40 |
41 | ## Recommended IDE Setup
42 |
43 | - [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
44 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Tauri + Vue 3 App
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tauri-template",
3 | "version": "0.0.0",
4 | "lockfileVersion": 2,
5 | "requires": true,
6 | "packages": {
7 | "": {
8 | "name": "tauri-template",
9 | "version": "0.0.0",
10 | "dependencies": {
11 | "@tauri-apps/api": "^1.4.0",
12 | "pinia": "^2.1.6",
13 | "vue": "^3.3.4",
14 | "vue-router": "^4.2.4"
15 | },
16 | "devDependencies": {
17 | "@tauri-apps/cli": "^1.4.0",
18 | "@vitejs/plugin-vue": "^4.2.3",
19 | "vite": "^4.4.4"
20 | }
21 | },
22 | "node_modules/@babel/parser": {
23 | "version": "7.22.7",
24 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz",
25 | "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==",
26 | "bin": {
27 | "parser": "bin/babel-parser.js"
28 | },
29 | "engines": {
30 | "node": ">=6.0.0"
31 | }
32 | },
33 | "node_modules/@esbuild/android-arm": {
34 | "version": "0.18.17",
35 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz",
36 | "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==",
37 | "cpu": [
38 | "arm"
39 | ],
40 | "dev": true,
41 | "optional": true,
42 | "os": [
43 | "android"
44 | ],
45 | "engines": {
46 | "node": ">=12"
47 | }
48 | },
49 | "node_modules/@esbuild/android-arm64": {
50 | "version": "0.18.17",
51 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz",
52 | "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==",
53 | "cpu": [
54 | "arm64"
55 | ],
56 | "dev": true,
57 | "optional": true,
58 | "os": [
59 | "android"
60 | ],
61 | "engines": {
62 | "node": ">=12"
63 | }
64 | },
65 | "node_modules/@esbuild/android-x64": {
66 | "version": "0.18.17",
67 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz",
68 | "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==",
69 | "cpu": [
70 | "x64"
71 | ],
72 | "dev": true,
73 | "optional": true,
74 | "os": [
75 | "android"
76 | ],
77 | "engines": {
78 | "node": ">=12"
79 | }
80 | },
81 | "node_modules/@esbuild/darwin-arm64": {
82 | "version": "0.18.17",
83 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz",
84 | "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==",
85 | "cpu": [
86 | "arm64"
87 | ],
88 | "dev": true,
89 | "optional": true,
90 | "os": [
91 | "darwin"
92 | ],
93 | "engines": {
94 | "node": ">=12"
95 | }
96 | },
97 | "node_modules/@esbuild/darwin-x64": {
98 | "version": "0.18.17",
99 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz",
100 | "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==",
101 | "cpu": [
102 | "x64"
103 | ],
104 | "dev": true,
105 | "optional": true,
106 | "os": [
107 | "darwin"
108 | ],
109 | "engines": {
110 | "node": ">=12"
111 | }
112 | },
113 | "node_modules/@esbuild/freebsd-arm64": {
114 | "version": "0.18.17",
115 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz",
116 | "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==",
117 | "cpu": [
118 | "arm64"
119 | ],
120 | "dev": true,
121 | "optional": true,
122 | "os": [
123 | "freebsd"
124 | ],
125 | "engines": {
126 | "node": ">=12"
127 | }
128 | },
129 | "node_modules/@esbuild/freebsd-x64": {
130 | "version": "0.18.17",
131 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz",
132 | "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==",
133 | "cpu": [
134 | "x64"
135 | ],
136 | "dev": true,
137 | "optional": true,
138 | "os": [
139 | "freebsd"
140 | ],
141 | "engines": {
142 | "node": ">=12"
143 | }
144 | },
145 | "node_modules/@esbuild/linux-arm": {
146 | "version": "0.18.17",
147 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz",
148 | "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==",
149 | "cpu": [
150 | "arm"
151 | ],
152 | "dev": true,
153 | "optional": true,
154 | "os": [
155 | "linux"
156 | ],
157 | "engines": {
158 | "node": ">=12"
159 | }
160 | },
161 | "node_modules/@esbuild/linux-arm64": {
162 | "version": "0.18.17",
163 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz",
164 | "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==",
165 | "cpu": [
166 | "arm64"
167 | ],
168 | "dev": true,
169 | "optional": true,
170 | "os": [
171 | "linux"
172 | ],
173 | "engines": {
174 | "node": ">=12"
175 | }
176 | },
177 | "node_modules/@esbuild/linux-ia32": {
178 | "version": "0.18.17",
179 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz",
180 | "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==",
181 | "cpu": [
182 | "ia32"
183 | ],
184 | "dev": true,
185 | "optional": true,
186 | "os": [
187 | "linux"
188 | ],
189 | "engines": {
190 | "node": ">=12"
191 | }
192 | },
193 | "node_modules/@esbuild/linux-loong64": {
194 | "version": "0.18.17",
195 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz",
196 | "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==",
197 | "cpu": [
198 | "loong64"
199 | ],
200 | "dev": true,
201 | "optional": true,
202 | "os": [
203 | "linux"
204 | ],
205 | "engines": {
206 | "node": ">=12"
207 | }
208 | },
209 | "node_modules/@esbuild/linux-mips64el": {
210 | "version": "0.18.17",
211 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz",
212 | "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==",
213 | "cpu": [
214 | "mips64el"
215 | ],
216 | "dev": true,
217 | "optional": true,
218 | "os": [
219 | "linux"
220 | ],
221 | "engines": {
222 | "node": ">=12"
223 | }
224 | },
225 | "node_modules/@esbuild/linux-ppc64": {
226 | "version": "0.18.17",
227 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz",
228 | "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==",
229 | "cpu": [
230 | "ppc64"
231 | ],
232 | "dev": true,
233 | "optional": true,
234 | "os": [
235 | "linux"
236 | ],
237 | "engines": {
238 | "node": ">=12"
239 | }
240 | },
241 | "node_modules/@esbuild/linux-riscv64": {
242 | "version": "0.18.17",
243 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz",
244 | "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==",
245 | "cpu": [
246 | "riscv64"
247 | ],
248 | "dev": true,
249 | "optional": true,
250 | "os": [
251 | "linux"
252 | ],
253 | "engines": {
254 | "node": ">=12"
255 | }
256 | },
257 | "node_modules/@esbuild/linux-s390x": {
258 | "version": "0.18.17",
259 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz",
260 | "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==",
261 | "cpu": [
262 | "s390x"
263 | ],
264 | "dev": true,
265 | "optional": true,
266 | "os": [
267 | "linux"
268 | ],
269 | "engines": {
270 | "node": ">=12"
271 | }
272 | },
273 | "node_modules/@esbuild/linux-x64": {
274 | "version": "0.18.17",
275 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz",
276 | "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==",
277 | "cpu": [
278 | "x64"
279 | ],
280 | "dev": true,
281 | "optional": true,
282 | "os": [
283 | "linux"
284 | ],
285 | "engines": {
286 | "node": ">=12"
287 | }
288 | },
289 | "node_modules/@esbuild/netbsd-x64": {
290 | "version": "0.18.17",
291 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz",
292 | "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==",
293 | "cpu": [
294 | "x64"
295 | ],
296 | "dev": true,
297 | "optional": true,
298 | "os": [
299 | "netbsd"
300 | ],
301 | "engines": {
302 | "node": ">=12"
303 | }
304 | },
305 | "node_modules/@esbuild/openbsd-x64": {
306 | "version": "0.18.17",
307 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz",
308 | "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==",
309 | "cpu": [
310 | "x64"
311 | ],
312 | "dev": true,
313 | "optional": true,
314 | "os": [
315 | "openbsd"
316 | ],
317 | "engines": {
318 | "node": ">=12"
319 | }
320 | },
321 | "node_modules/@esbuild/sunos-x64": {
322 | "version": "0.18.17",
323 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz",
324 | "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==",
325 | "cpu": [
326 | "x64"
327 | ],
328 | "dev": true,
329 | "optional": true,
330 | "os": [
331 | "sunos"
332 | ],
333 | "engines": {
334 | "node": ">=12"
335 | }
336 | },
337 | "node_modules/@esbuild/win32-arm64": {
338 | "version": "0.18.17",
339 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz",
340 | "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==",
341 | "cpu": [
342 | "arm64"
343 | ],
344 | "dev": true,
345 | "optional": true,
346 | "os": [
347 | "win32"
348 | ],
349 | "engines": {
350 | "node": ">=12"
351 | }
352 | },
353 | "node_modules/@esbuild/win32-ia32": {
354 | "version": "0.18.17",
355 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz",
356 | "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==",
357 | "cpu": [
358 | "ia32"
359 | ],
360 | "dev": true,
361 | "optional": true,
362 | "os": [
363 | "win32"
364 | ],
365 | "engines": {
366 | "node": ">=12"
367 | }
368 | },
369 | "node_modules/@esbuild/win32-x64": {
370 | "version": "0.18.17",
371 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz",
372 | "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==",
373 | "cpu": [
374 | "x64"
375 | ],
376 | "dev": true,
377 | "optional": true,
378 | "os": [
379 | "win32"
380 | ],
381 | "engines": {
382 | "node": ">=12"
383 | }
384 | },
385 | "node_modules/@jridgewell/sourcemap-codec": {
386 | "version": "1.4.15",
387 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
388 | "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
389 | },
390 | "node_modules/@tauri-apps/api": {
391 | "version": "1.4.0",
392 | "resolved": "https://registry.npmjs.org/@tauri-apps/api/-/api-1.4.0.tgz",
393 | "integrity": "sha512-Jd6HPoTM1PZSFIzq7FB8VmMu3qSSyo/3lSwLpoapW+lQ41CL5Dow2KryLg+gyazA/58DRWI9vu/XpEeHK4uMdw==",
394 | "engines": {
395 | "node": ">= 14.6.0",
396 | "npm": ">= 6.6.0",
397 | "yarn": ">= 1.19.1"
398 | },
399 | "funding": {
400 | "type": "opencollective",
401 | "url": "https://opencollective.com/tauri"
402 | }
403 | },
404 | "node_modules/@tauri-apps/cli": {
405 | "version": "1.4.0",
406 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli/-/cli-1.4.0.tgz",
407 | "integrity": "sha512-VXYr2i2iVFl98etQSQsqLzXgX96bnWiNZd1YADgatqwy/qecbd6Kl5ZAPB5R4ynsgE8A1gU7Fbzh7dCEQYFfmA==",
408 | "dev": true,
409 | "bin": {
410 | "tauri": "tauri.js"
411 | },
412 | "engines": {
413 | "node": ">= 10"
414 | },
415 | "funding": {
416 | "type": "opencollective",
417 | "url": "https://opencollective.com/tauri"
418 | },
419 | "optionalDependencies": {
420 | "@tauri-apps/cli-darwin-arm64": "1.4.0",
421 | "@tauri-apps/cli-darwin-x64": "1.4.0",
422 | "@tauri-apps/cli-linux-arm-gnueabihf": "1.4.0",
423 | "@tauri-apps/cli-linux-arm64-gnu": "1.4.0",
424 | "@tauri-apps/cli-linux-arm64-musl": "1.4.0",
425 | "@tauri-apps/cli-linux-x64-gnu": "1.4.0",
426 | "@tauri-apps/cli-linux-x64-musl": "1.4.0",
427 | "@tauri-apps/cli-win32-arm64-msvc": "1.4.0",
428 | "@tauri-apps/cli-win32-ia32-msvc": "1.4.0",
429 | "@tauri-apps/cli-win32-x64-msvc": "1.4.0"
430 | }
431 | },
432 | "node_modules/@tauri-apps/cli-darwin-arm64": {
433 | "version": "1.4.0",
434 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-arm64/-/cli-darwin-arm64-1.4.0.tgz",
435 | "integrity": "sha512-nA/ml0SfUt6/CYLVbHmT500Y+ijqsuv5+s9EBnVXYSLVg9kbPUZJJHluEYK+xKuOj6xzyuT/+rZFMRapmJD3jQ==",
436 | "cpu": [
437 | "arm64"
438 | ],
439 | "dev": true,
440 | "optional": true,
441 | "os": [
442 | "darwin"
443 | ],
444 | "engines": {
445 | "node": ">= 10"
446 | }
447 | },
448 | "node_modules/@tauri-apps/cli-darwin-x64": {
449 | "version": "1.4.0",
450 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-x64/-/cli-darwin-x64-1.4.0.tgz",
451 | "integrity": "sha512-ov/F6Zr+dg9B0PtRu65stFo2G0ow2TUlneqYYrkj+vA3n+moWDHfVty0raDjMLQbQt3rv3uayFMXGPMgble9OA==",
452 | "cpu": [
453 | "x64"
454 | ],
455 | "dev": true,
456 | "optional": true,
457 | "os": [
458 | "darwin"
459 | ],
460 | "engines": {
461 | "node": ">= 10"
462 | }
463 | },
464 | "node_modules/@tauri-apps/cli-linux-arm-gnueabihf": {
465 | "version": "1.4.0",
466 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm-gnueabihf/-/cli-linux-arm-gnueabihf-1.4.0.tgz",
467 | "integrity": "sha512-zwjbiMncycXDV7doovymyKD7sCg53ouAmfgpUqEBOTY3vgBi9TwijyPhJOqoG5vUVWhouNBC08akGmE4dja15g==",
468 | "cpu": [
469 | "arm"
470 | ],
471 | "dev": true,
472 | "optional": true,
473 | "os": [
474 | "linux"
475 | ],
476 | "engines": {
477 | "node": ">= 10"
478 | }
479 | },
480 | "node_modules/@tauri-apps/cli-linux-arm64-gnu": {
481 | "version": "1.4.0",
482 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-gnu/-/cli-linux-arm64-gnu-1.4.0.tgz",
483 | "integrity": "sha512-5MCBcziqXC72mMXnkZU68mutXIR6zavDxopArE2gQtK841IlE06bIgtLi0kUUhlFJk2nhPRgiDgdLbrPlyt7fw==",
484 | "cpu": [
485 | "arm64"
486 | ],
487 | "dev": true,
488 | "optional": true,
489 | "os": [
490 | "linux"
491 | ],
492 | "engines": {
493 | "node": ">= 10"
494 | }
495 | },
496 | "node_modules/@tauri-apps/cli-linux-arm64-musl": {
497 | "version": "1.4.0",
498 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.4.0.tgz",
499 | "integrity": "sha512-7J3pRB6n6uNYgIfCeKt2Oz8J7oSaz2s8GGFRRH2HPxuTHrBNCinzVYm68UhVpJrL3bnGkU0ziVZLsW/iaOGfUg==",
500 | "cpu": [
501 | "arm64"
502 | ],
503 | "dev": true,
504 | "optional": true,
505 | "os": [
506 | "linux"
507 | ],
508 | "engines": {
509 | "node": ">= 10"
510 | }
511 | },
512 | "node_modules/@tauri-apps/cli-linux-x64-gnu": {
513 | "version": "1.4.0",
514 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-gnu/-/cli-linux-x64-gnu-1.4.0.tgz",
515 | "integrity": "sha512-Zh5gfAJxOv5AVWxcwuueaQ2vIAhlg0d6nZui6nMyfIJ8dbf3aZQ5ZzP38sYow5h/fbvgL+3GSQxZRBIa3c2E1w==",
516 | "cpu": [
517 | "x64"
518 | ],
519 | "dev": true,
520 | "optional": true,
521 | "os": [
522 | "linux"
523 | ],
524 | "engines": {
525 | "node": ">= 10"
526 | }
527 | },
528 | "node_modules/@tauri-apps/cli-linux-x64-musl": {
529 | "version": "1.4.0",
530 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-musl/-/cli-linux-x64-musl-1.4.0.tgz",
531 | "integrity": "sha512-OLAYoICU3FaYiTdBsI+lQTKnDHeMmFMXIApN0M+xGiOkoIOQcV9CConMPjgmJQ867+NHRNgUGlvBEAh9CiJodQ==",
532 | "cpu": [
533 | "x64"
534 | ],
535 | "dev": true,
536 | "optional": true,
537 | "os": [
538 | "linux"
539 | ],
540 | "engines": {
541 | "node": ">= 10"
542 | }
543 | },
544 | "node_modules/@tauri-apps/cli-win32-arm64-msvc": {
545 | "version": "1.4.0",
546 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-arm64-msvc/-/cli-win32-arm64-msvc-1.4.0.tgz",
547 | "integrity": "sha512-gZ05GENFbI6CB5MlOUsLlU0kZ9UtHn9riYtSXKT6MYs8HSPRffPHaHSL0WxsJweWh9nR5Hgh/TUU8uW3sYCzCg==",
548 | "cpu": [
549 | "arm64"
550 | ],
551 | "dev": true,
552 | "optional": true,
553 | "os": [
554 | "win32"
555 | ],
556 | "engines": {
557 | "node": ">= 10"
558 | }
559 | },
560 | "node_modules/@tauri-apps/cli-win32-ia32-msvc": {
561 | "version": "1.4.0",
562 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-ia32-msvc/-/cli-win32-ia32-msvc-1.4.0.tgz",
563 | "integrity": "sha512-JsetT/lTx/Zq98eo8T5CiRyF1nKeX04RO8JlJrI3ZOYsZpp/A5RJvMd/szQ17iOzwiHdge+tx7k2jHysR6oBlQ==",
564 | "cpu": [
565 | "ia32"
566 | ],
567 | "dev": true,
568 | "optional": true,
569 | "os": [
570 | "win32"
571 | ],
572 | "engines": {
573 | "node": ">= 10"
574 | }
575 | },
576 | "node_modules/@tauri-apps/cli-win32-x64-msvc": {
577 | "version": "1.4.0",
578 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-x64-msvc/-/cli-win32-x64-msvc-1.4.0.tgz",
579 | "integrity": "sha512-z8Olcnwp5aYhzqUAarFjqF+oELCjuYWnB2HAJHlfsYNfDCAORY5kct3Fklz8PSsubC3U2EugWn8n42DwnThurg==",
580 | "cpu": [
581 | "x64"
582 | ],
583 | "dev": true,
584 | "optional": true,
585 | "os": [
586 | "win32"
587 | ],
588 | "engines": {
589 | "node": ">= 10"
590 | }
591 | },
592 | "node_modules/@vitejs/plugin-vue": {
593 | "version": "4.2.3",
594 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz",
595 | "integrity": "sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==",
596 | "dev": true,
597 | "engines": {
598 | "node": "^14.18.0 || >=16.0.0"
599 | },
600 | "peerDependencies": {
601 | "vite": "^4.0.0",
602 | "vue": "^3.2.25"
603 | }
604 | },
605 | "node_modules/@vue/compiler-core": {
606 | "version": "3.3.4",
607 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
608 | "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
609 | "dependencies": {
610 | "@babel/parser": "^7.21.3",
611 | "@vue/shared": "3.3.4",
612 | "estree-walker": "^2.0.2",
613 | "source-map-js": "^1.0.2"
614 | }
615 | },
616 | "node_modules/@vue/compiler-dom": {
617 | "version": "3.3.4",
618 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
619 | "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
620 | "dependencies": {
621 | "@vue/compiler-core": "3.3.4",
622 | "@vue/shared": "3.3.4"
623 | }
624 | },
625 | "node_modules/@vue/compiler-sfc": {
626 | "version": "3.3.4",
627 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz",
628 | "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==",
629 | "dependencies": {
630 | "@babel/parser": "^7.20.15",
631 | "@vue/compiler-core": "3.3.4",
632 | "@vue/compiler-dom": "3.3.4",
633 | "@vue/compiler-ssr": "3.3.4",
634 | "@vue/reactivity-transform": "3.3.4",
635 | "@vue/shared": "3.3.4",
636 | "estree-walker": "^2.0.2",
637 | "magic-string": "^0.30.0",
638 | "postcss": "^8.1.10",
639 | "source-map-js": "^1.0.2"
640 | }
641 | },
642 | "node_modules/@vue/compiler-ssr": {
643 | "version": "3.3.4",
644 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
645 | "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
646 | "dependencies": {
647 | "@vue/compiler-dom": "3.3.4",
648 | "@vue/shared": "3.3.4"
649 | }
650 | },
651 | "node_modules/@vue/devtools-api": {
652 | "version": "6.5.0",
653 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz",
654 | "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q=="
655 | },
656 | "node_modules/@vue/reactivity": {
657 | "version": "3.3.4",
658 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz",
659 | "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==",
660 | "dependencies": {
661 | "@vue/shared": "3.3.4"
662 | }
663 | },
664 | "node_modules/@vue/reactivity-transform": {
665 | "version": "3.3.4",
666 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz",
667 | "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==",
668 | "dependencies": {
669 | "@babel/parser": "^7.20.15",
670 | "@vue/compiler-core": "3.3.4",
671 | "@vue/shared": "3.3.4",
672 | "estree-walker": "^2.0.2",
673 | "magic-string": "^0.30.0"
674 | }
675 | },
676 | "node_modules/@vue/runtime-core": {
677 | "version": "3.3.4",
678 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz",
679 | "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==",
680 | "dependencies": {
681 | "@vue/reactivity": "3.3.4",
682 | "@vue/shared": "3.3.4"
683 | }
684 | },
685 | "node_modules/@vue/runtime-dom": {
686 | "version": "3.3.4",
687 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz",
688 | "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==",
689 | "dependencies": {
690 | "@vue/runtime-core": "3.3.4",
691 | "@vue/shared": "3.3.4",
692 | "csstype": "^3.1.1"
693 | }
694 | },
695 | "node_modules/@vue/server-renderer": {
696 | "version": "3.3.4",
697 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz",
698 | "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==",
699 | "dependencies": {
700 | "@vue/compiler-ssr": "3.3.4",
701 | "@vue/shared": "3.3.4"
702 | },
703 | "peerDependencies": {
704 | "vue": "3.3.4"
705 | }
706 | },
707 | "node_modules/@vue/shared": {
708 | "version": "3.3.4",
709 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
710 | "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
711 | },
712 | "node_modules/csstype": {
713 | "version": "3.1.2",
714 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
715 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
716 | },
717 | "node_modules/esbuild": {
718 | "version": "0.18.17",
719 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz",
720 | "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==",
721 | "dev": true,
722 | "hasInstallScript": true,
723 | "bin": {
724 | "esbuild": "bin/esbuild"
725 | },
726 | "engines": {
727 | "node": ">=12"
728 | },
729 | "optionalDependencies": {
730 | "@esbuild/android-arm": "0.18.17",
731 | "@esbuild/android-arm64": "0.18.17",
732 | "@esbuild/android-x64": "0.18.17",
733 | "@esbuild/darwin-arm64": "0.18.17",
734 | "@esbuild/darwin-x64": "0.18.17",
735 | "@esbuild/freebsd-arm64": "0.18.17",
736 | "@esbuild/freebsd-x64": "0.18.17",
737 | "@esbuild/linux-arm": "0.18.17",
738 | "@esbuild/linux-arm64": "0.18.17",
739 | "@esbuild/linux-ia32": "0.18.17",
740 | "@esbuild/linux-loong64": "0.18.17",
741 | "@esbuild/linux-mips64el": "0.18.17",
742 | "@esbuild/linux-ppc64": "0.18.17",
743 | "@esbuild/linux-riscv64": "0.18.17",
744 | "@esbuild/linux-s390x": "0.18.17",
745 | "@esbuild/linux-x64": "0.18.17",
746 | "@esbuild/netbsd-x64": "0.18.17",
747 | "@esbuild/openbsd-x64": "0.18.17",
748 | "@esbuild/sunos-x64": "0.18.17",
749 | "@esbuild/win32-arm64": "0.18.17",
750 | "@esbuild/win32-ia32": "0.18.17",
751 | "@esbuild/win32-x64": "0.18.17"
752 | }
753 | },
754 | "node_modules/estree-walker": {
755 | "version": "2.0.2",
756 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
757 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
758 | },
759 | "node_modules/fsevents": {
760 | "version": "2.3.2",
761 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
762 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
763 | "dev": true,
764 | "hasInstallScript": true,
765 | "optional": true,
766 | "os": [
767 | "darwin"
768 | ],
769 | "engines": {
770 | "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
771 | }
772 | },
773 | "node_modules/magic-string": {
774 | "version": "0.30.2",
775 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz",
776 | "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==",
777 | "dependencies": {
778 | "@jridgewell/sourcemap-codec": "^1.4.15"
779 | },
780 | "engines": {
781 | "node": ">=12"
782 | }
783 | },
784 | "node_modules/nanoid": {
785 | "version": "3.3.6",
786 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
787 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==",
788 | "funding": [
789 | {
790 | "type": "github",
791 | "url": "https://github.com/sponsors/ai"
792 | }
793 | ],
794 | "bin": {
795 | "nanoid": "bin/nanoid.cjs"
796 | },
797 | "engines": {
798 | "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
799 | }
800 | },
801 | "node_modules/picocolors": {
802 | "version": "1.0.0",
803 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
804 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
805 | },
806 | "node_modules/pinia": {
807 | "version": "2.1.6",
808 | "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.6.tgz",
809 | "integrity": "sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ==",
810 | "dependencies": {
811 | "@vue/devtools-api": "^6.5.0",
812 | "vue-demi": ">=0.14.5"
813 | },
814 | "funding": {
815 | "url": "https://github.com/sponsors/posva"
816 | },
817 | "peerDependencies": {
818 | "@vue/composition-api": "^1.4.0",
819 | "typescript": ">=4.4.4",
820 | "vue": "^2.6.14 || ^3.3.0"
821 | },
822 | "peerDependenciesMeta": {
823 | "@vue/composition-api": {
824 | "optional": true
825 | },
826 | "typescript": {
827 | "optional": true
828 | }
829 | }
830 | },
831 | "node_modules/pinia/node_modules/vue-demi": {
832 | "version": "0.14.5",
833 | "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.5.tgz",
834 | "integrity": "sha512-o9NUVpl/YlsGJ7t+xuqJKx8EBGf1quRhCiT6D/J0pfwmk9zUwYkC7yrF4SZCe6fETvSM3UNL2edcbYrSyc4QHA==",
835 | "hasInstallScript": true,
836 | "bin": {
837 | "vue-demi-fix": "bin/vue-demi-fix.js",
838 | "vue-demi-switch": "bin/vue-demi-switch.js"
839 | },
840 | "engines": {
841 | "node": ">=12"
842 | },
843 | "funding": {
844 | "url": "https://github.com/sponsors/antfu"
845 | },
846 | "peerDependencies": {
847 | "@vue/composition-api": "^1.0.0-rc.1",
848 | "vue": "^3.0.0-0 || ^2.6.0"
849 | },
850 | "peerDependenciesMeta": {
851 | "@vue/composition-api": {
852 | "optional": true
853 | }
854 | }
855 | },
856 | "node_modules/postcss": {
857 | "version": "8.4.27",
858 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz",
859 | "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==",
860 | "funding": [
861 | {
862 | "type": "opencollective",
863 | "url": "https://opencollective.com/postcss/"
864 | },
865 | {
866 | "type": "tidelift",
867 | "url": "https://tidelift.com/funding/github/npm/postcss"
868 | },
869 | {
870 | "type": "github",
871 | "url": "https://github.com/sponsors/ai"
872 | }
873 | ],
874 | "dependencies": {
875 | "nanoid": "^3.3.6",
876 | "picocolors": "^1.0.0",
877 | "source-map-js": "^1.0.2"
878 | },
879 | "engines": {
880 | "node": "^10 || ^12 || >=14"
881 | }
882 | },
883 | "node_modules/rollup": {
884 | "version": "3.27.2",
885 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.2.tgz",
886 | "integrity": "sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==",
887 | "dev": true,
888 | "bin": {
889 | "rollup": "dist/bin/rollup"
890 | },
891 | "engines": {
892 | "node": ">=14.18.0",
893 | "npm": ">=8.0.0"
894 | },
895 | "optionalDependencies": {
896 | "fsevents": "~2.3.2"
897 | }
898 | },
899 | "node_modules/source-map-js": {
900 | "version": "1.0.2",
901 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
902 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
903 | "engines": {
904 | "node": ">=0.10.0"
905 | }
906 | },
907 | "node_modules/vite": {
908 | "version": "4.4.8",
909 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.8.tgz",
910 | "integrity": "sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg==",
911 | "dev": true,
912 | "dependencies": {
913 | "esbuild": "^0.18.10",
914 | "postcss": "^8.4.26",
915 | "rollup": "^3.25.2"
916 | },
917 | "bin": {
918 | "vite": "bin/vite.js"
919 | },
920 | "engines": {
921 | "node": "^14.18.0 || >=16.0.0"
922 | },
923 | "funding": {
924 | "url": "https://github.com/vitejs/vite?sponsor=1"
925 | },
926 | "optionalDependencies": {
927 | "fsevents": "~2.3.2"
928 | },
929 | "peerDependencies": {
930 | "@types/node": ">= 14",
931 | "less": "*",
932 | "lightningcss": "^1.21.0",
933 | "sass": "*",
934 | "stylus": "*",
935 | "sugarss": "*",
936 | "terser": "^5.4.0"
937 | },
938 | "peerDependenciesMeta": {
939 | "@types/node": {
940 | "optional": true
941 | },
942 | "less": {
943 | "optional": true
944 | },
945 | "lightningcss": {
946 | "optional": true
947 | },
948 | "sass": {
949 | "optional": true
950 | },
951 | "stylus": {
952 | "optional": true
953 | },
954 | "sugarss": {
955 | "optional": true
956 | },
957 | "terser": {
958 | "optional": true
959 | }
960 | }
961 | },
962 | "node_modules/vue": {
963 | "version": "3.3.4",
964 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz",
965 | "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==",
966 | "dependencies": {
967 | "@vue/compiler-dom": "3.3.4",
968 | "@vue/compiler-sfc": "3.3.4",
969 | "@vue/runtime-dom": "3.3.4",
970 | "@vue/server-renderer": "3.3.4",
971 | "@vue/shared": "3.3.4"
972 | }
973 | },
974 | "node_modules/vue-router": {
975 | "version": "4.2.4",
976 | "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.2.4.tgz",
977 | "integrity": "sha512-9PISkmaCO02OzPVOMq2w82ilty6+xJmQrarYZDkjZBfl4RvYAlt4PKnEX21oW4KTtWfa9OuO/b3qk1Od3AEdCQ==",
978 | "dependencies": {
979 | "@vue/devtools-api": "^6.5.0"
980 | },
981 | "funding": {
982 | "url": "https://github.com/sponsors/posva"
983 | },
984 | "peerDependencies": {
985 | "vue": "^3.2.0"
986 | }
987 | }
988 | },
989 | "dependencies": {
990 | "@babel/parser": {
991 | "version": "7.22.7",
992 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz",
993 | "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q=="
994 | },
995 | "@esbuild/android-arm": {
996 | "version": "0.18.17",
997 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz",
998 | "integrity": "sha512-wHsmJG/dnL3OkpAcwbgoBTTMHVi4Uyou3F5mf58ZtmUyIKfcdA7TROav/6tCzET4A3QW2Q2FC+eFneMU+iyOxg==",
999 | "dev": true,
1000 | "optional": true
1001 | },
1002 | "@esbuild/android-arm64": {
1003 | "version": "0.18.17",
1004 | "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.18.17.tgz",
1005 | "integrity": "sha512-9np+YYdNDed5+Jgr1TdWBsozZ85U1Oa3xW0c7TWqH0y2aGghXtZsuT8nYRbzOMcl0bXZXjOGbksoTtVOlWrRZg==",
1006 | "dev": true,
1007 | "optional": true
1008 | },
1009 | "@esbuild/android-x64": {
1010 | "version": "0.18.17",
1011 | "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.18.17.tgz",
1012 | "integrity": "sha512-O+FeWB/+xya0aLg23hHEM2E3hbfwZzjqumKMSIqcHbNvDa+dza2D0yLuymRBQQnC34CWrsJUXyH2MG5VnLd6uw==",
1013 | "dev": true,
1014 | "optional": true
1015 | },
1016 | "@esbuild/darwin-arm64": {
1017 | "version": "0.18.17",
1018 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.18.17.tgz",
1019 | "integrity": "sha512-M9uJ9VSB1oli2BE/dJs3zVr9kcCBBsE883prage1NWz6pBS++1oNn/7soPNS3+1DGj0FrkSvnED4Bmlu1VAE9g==",
1020 | "dev": true,
1021 | "optional": true
1022 | },
1023 | "@esbuild/darwin-x64": {
1024 | "version": "0.18.17",
1025 | "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.18.17.tgz",
1026 | "integrity": "sha512-XDre+J5YeIJDMfp3n0279DFNrGCXlxOuGsWIkRb1NThMZ0BsrWXoTg23Jer7fEXQ9Ye5QjrvXpxnhzl3bHtk0g==",
1027 | "dev": true,
1028 | "optional": true
1029 | },
1030 | "@esbuild/freebsd-arm64": {
1031 | "version": "0.18.17",
1032 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.18.17.tgz",
1033 | "integrity": "sha512-cjTzGa3QlNfERa0+ptykyxs5A6FEUQQF0MuilYXYBGdBxD3vxJcKnzDlhDCa1VAJCmAxed6mYhA2KaJIbtiNuQ==",
1034 | "dev": true,
1035 | "optional": true
1036 | },
1037 | "@esbuild/freebsd-x64": {
1038 | "version": "0.18.17",
1039 | "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.18.17.tgz",
1040 | "integrity": "sha512-sOxEvR8d7V7Kw8QqzxWc7bFfnWnGdaFBut1dRUYtu+EIRXefBc/eIsiUiShnW0hM3FmQ5Zf27suDuHsKgZ5QrA==",
1041 | "dev": true,
1042 | "optional": true
1043 | },
1044 | "@esbuild/linux-arm": {
1045 | "version": "0.18.17",
1046 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.18.17.tgz",
1047 | "integrity": "sha512-2d3Lw6wkwgSLC2fIvXKoMNGVaeY8qdN0IC3rfuVxJp89CRfA3e3VqWifGDfuakPmp90+ZirmTfye1n4ncjv2lg==",
1048 | "dev": true,
1049 | "optional": true
1050 | },
1051 | "@esbuild/linux-arm64": {
1052 | "version": "0.18.17",
1053 | "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.18.17.tgz",
1054 | "integrity": "sha512-c9w3tE7qA3CYWjT+M3BMbwMt+0JYOp3vCMKgVBrCl1nwjAlOMYzEo+gG7QaZ9AtqZFj5MbUc885wuBBmu6aADQ==",
1055 | "dev": true,
1056 | "optional": true
1057 | },
1058 | "@esbuild/linux-ia32": {
1059 | "version": "0.18.17",
1060 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.18.17.tgz",
1061 | "integrity": "sha512-1DS9F966pn5pPnqXYz16dQqWIB0dmDfAQZd6jSSpiT9eX1NzKh07J6VKR3AoXXXEk6CqZMojiVDSZi1SlmKVdg==",
1062 | "dev": true,
1063 | "optional": true
1064 | },
1065 | "@esbuild/linux-loong64": {
1066 | "version": "0.18.17",
1067 | "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.18.17.tgz",
1068 | "integrity": "sha512-EvLsxCk6ZF0fpCB6w6eOI2Fc8KW5N6sHlIovNe8uOFObL2O+Mr0bflPHyHwLT6rwMg9r77WOAWb2FqCQrVnwFg==",
1069 | "dev": true,
1070 | "optional": true
1071 | },
1072 | "@esbuild/linux-mips64el": {
1073 | "version": "0.18.17",
1074 | "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.18.17.tgz",
1075 | "integrity": "sha512-e0bIdHA5p6l+lwqTE36NAW5hHtw2tNRmHlGBygZC14QObsA3bD4C6sXLJjvnDIjSKhW1/0S3eDy+QmX/uZWEYQ==",
1076 | "dev": true,
1077 | "optional": true
1078 | },
1079 | "@esbuild/linux-ppc64": {
1080 | "version": "0.18.17",
1081 | "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.18.17.tgz",
1082 | "integrity": "sha512-BAAilJ0M5O2uMxHYGjFKn4nJKF6fNCdP1E0o5t5fvMYYzeIqy2JdAP88Az5LHt9qBoUa4tDaRpfWt21ep5/WqQ==",
1083 | "dev": true,
1084 | "optional": true
1085 | },
1086 | "@esbuild/linux-riscv64": {
1087 | "version": "0.18.17",
1088 | "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.18.17.tgz",
1089 | "integrity": "sha512-Wh/HW2MPnC3b8BqRSIme/9Zhab36PPH+3zam5pqGRH4pE+4xTrVLx2+XdGp6fVS3L2x+DrsIcsbMleex8fbE6g==",
1090 | "dev": true,
1091 | "optional": true
1092 | },
1093 | "@esbuild/linux-s390x": {
1094 | "version": "0.18.17",
1095 | "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.18.17.tgz",
1096 | "integrity": "sha512-j/34jAl3ul3PNcK3pfI0NSlBANduT2UO5kZ7FCaK33XFv3chDhICLY8wJJWIhiQ+YNdQ9dxqQctRg2bvrMlYgg==",
1097 | "dev": true,
1098 | "optional": true
1099 | },
1100 | "@esbuild/linux-x64": {
1101 | "version": "0.18.17",
1102 | "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.18.17.tgz",
1103 | "integrity": "sha512-QM50vJ/y+8I60qEmFxMoxIx4de03pGo2HwxdBeFd4nMh364X6TIBZ6VQ5UQmPbQWUVWHWws5MmJXlHAXvJEmpQ==",
1104 | "dev": true,
1105 | "optional": true
1106 | },
1107 | "@esbuild/netbsd-x64": {
1108 | "version": "0.18.17",
1109 | "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.18.17.tgz",
1110 | "integrity": "sha512-/jGlhWR7Sj9JPZHzXyyMZ1RFMkNPjC6QIAan0sDOtIo2TYk3tZn5UDrkE0XgsTQCxWTTOcMPf9p6Rh2hXtl5TQ==",
1111 | "dev": true,
1112 | "optional": true
1113 | },
1114 | "@esbuild/openbsd-x64": {
1115 | "version": "0.18.17",
1116 | "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.18.17.tgz",
1117 | "integrity": "sha512-rSEeYaGgyGGf4qZM2NonMhMOP/5EHp4u9ehFiBrg7stH6BYEEjlkVREuDEcQ0LfIl53OXLxNbfuIj7mr5m29TA==",
1118 | "dev": true,
1119 | "optional": true
1120 | },
1121 | "@esbuild/sunos-x64": {
1122 | "version": "0.18.17",
1123 | "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.18.17.tgz",
1124 | "integrity": "sha512-Y7ZBbkLqlSgn4+zot4KUNYst0bFoO68tRgI6mY2FIM+b7ZbyNVtNbDP5y8qlu4/knZZ73fgJDlXID+ohY5zt5g==",
1125 | "dev": true,
1126 | "optional": true
1127 | },
1128 | "@esbuild/win32-arm64": {
1129 | "version": "0.18.17",
1130 | "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.18.17.tgz",
1131 | "integrity": "sha512-bwPmTJsEQcbZk26oYpc4c/8PvTY3J5/QK8jM19DVlEsAB41M39aWovWoHtNm78sd6ip6prilxeHosPADXtEJFw==",
1132 | "dev": true,
1133 | "optional": true
1134 | },
1135 | "@esbuild/win32-ia32": {
1136 | "version": "0.18.17",
1137 | "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.18.17.tgz",
1138 | "integrity": "sha512-H/XaPtPKli2MhW+3CQueo6Ni3Avggi6hP/YvgkEe1aSaxw+AeO8MFjq8DlgfTd9Iz4Yih3QCZI6YLMoyccnPRg==",
1139 | "dev": true,
1140 | "optional": true
1141 | },
1142 | "@esbuild/win32-x64": {
1143 | "version": "0.18.17",
1144 | "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.18.17.tgz",
1145 | "integrity": "sha512-fGEb8f2BSA3CW7riJVurug65ACLuQAzKq0SSqkY2b2yHHH0MzDfbLyKIGzHwOI/gkHcxM/leuSW6D5w/LMNitA==",
1146 | "dev": true,
1147 | "optional": true
1148 | },
1149 | "@jridgewell/sourcemap-codec": {
1150 | "version": "1.4.15",
1151 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
1152 | "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
1153 | },
1154 | "@tauri-apps/api": {
1155 | "version": "1.4.0",
1156 | "resolved": "https://registry.npmjs.org/@tauri-apps/api/-/api-1.4.0.tgz",
1157 | "integrity": "sha512-Jd6HPoTM1PZSFIzq7FB8VmMu3qSSyo/3lSwLpoapW+lQ41CL5Dow2KryLg+gyazA/58DRWI9vu/XpEeHK4uMdw=="
1158 | },
1159 | "@tauri-apps/cli": {
1160 | "version": "1.4.0",
1161 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli/-/cli-1.4.0.tgz",
1162 | "integrity": "sha512-VXYr2i2iVFl98etQSQsqLzXgX96bnWiNZd1YADgatqwy/qecbd6Kl5ZAPB5R4ynsgE8A1gU7Fbzh7dCEQYFfmA==",
1163 | "dev": true,
1164 | "requires": {
1165 | "@tauri-apps/cli-darwin-arm64": "1.4.0",
1166 | "@tauri-apps/cli-darwin-x64": "1.4.0",
1167 | "@tauri-apps/cli-linux-arm-gnueabihf": "1.4.0",
1168 | "@tauri-apps/cli-linux-arm64-gnu": "1.4.0",
1169 | "@tauri-apps/cli-linux-arm64-musl": "1.4.0",
1170 | "@tauri-apps/cli-linux-x64-gnu": "1.4.0",
1171 | "@tauri-apps/cli-linux-x64-musl": "1.4.0",
1172 | "@tauri-apps/cli-win32-arm64-msvc": "1.4.0",
1173 | "@tauri-apps/cli-win32-ia32-msvc": "1.4.0",
1174 | "@tauri-apps/cli-win32-x64-msvc": "1.4.0"
1175 | }
1176 | },
1177 | "@tauri-apps/cli-darwin-arm64": {
1178 | "version": "1.4.0",
1179 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-arm64/-/cli-darwin-arm64-1.4.0.tgz",
1180 | "integrity": "sha512-nA/ml0SfUt6/CYLVbHmT500Y+ijqsuv5+s9EBnVXYSLVg9kbPUZJJHluEYK+xKuOj6xzyuT/+rZFMRapmJD3jQ==",
1181 | "dev": true,
1182 | "optional": true
1183 | },
1184 | "@tauri-apps/cli-darwin-x64": {
1185 | "version": "1.4.0",
1186 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-darwin-x64/-/cli-darwin-x64-1.4.0.tgz",
1187 | "integrity": "sha512-ov/F6Zr+dg9B0PtRu65stFo2G0ow2TUlneqYYrkj+vA3n+moWDHfVty0raDjMLQbQt3rv3uayFMXGPMgble9OA==",
1188 | "dev": true,
1189 | "optional": true
1190 | },
1191 | "@tauri-apps/cli-linux-arm-gnueabihf": {
1192 | "version": "1.4.0",
1193 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm-gnueabihf/-/cli-linux-arm-gnueabihf-1.4.0.tgz",
1194 | "integrity": "sha512-zwjbiMncycXDV7doovymyKD7sCg53ouAmfgpUqEBOTY3vgBi9TwijyPhJOqoG5vUVWhouNBC08akGmE4dja15g==",
1195 | "dev": true,
1196 | "optional": true
1197 | },
1198 | "@tauri-apps/cli-linux-arm64-gnu": {
1199 | "version": "1.4.0",
1200 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-gnu/-/cli-linux-arm64-gnu-1.4.0.tgz",
1201 | "integrity": "sha512-5MCBcziqXC72mMXnkZU68mutXIR6zavDxopArE2gQtK841IlE06bIgtLi0kUUhlFJk2nhPRgiDgdLbrPlyt7fw==",
1202 | "dev": true,
1203 | "optional": true
1204 | },
1205 | "@tauri-apps/cli-linux-arm64-musl": {
1206 | "version": "1.4.0",
1207 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.4.0.tgz",
1208 | "integrity": "sha512-7J3pRB6n6uNYgIfCeKt2Oz8J7oSaz2s8GGFRRH2HPxuTHrBNCinzVYm68UhVpJrL3bnGkU0ziVZLsW/iaOGfUg==",
1209 | "dev": true,
1210 | "optional": true
1211 | },
1212 | "@tauri-apps/cli-linux-x64-gnu": {
1213 | "version": "1.4.0",
1214 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-gnu/-/cli-linux-x64-gnu-1.4.0.tgz",
1215 | "integrity": "sha512-Zh5gfAJxOv5AVWxcwuueaQ2vIAhlg0d6nZui6nMyfIJ8dbf3aZQ5ZzP38sYow5h/fbvgL+3GSQxZRBIa3c2E1w==",
1216 | "dev": true,
1217 | "optional": true
1218 | },
1219 | "@tauri-apps/cli-linux-x64-musl": {
1220 | "version": "1.4.0",
1221 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-linux-x64-musl/-/cli-linux-x64-musl-1.4.0.tgz",
1222 | "integrity": "sha512-OLAYoICU3FaYiTdBsI+lQTKnDHeMmFMXIApN0M+xGiOkoIOQcV9CConMPjgmJQ867+NHRNgUGlvBEAh9CiJodQ==",
1223 | "dev": true,
1224 | "optional": true
1225 | },
1226 | "@tauri-apps/cli-win32-arm64-msvc": {
1227 | "version": "1.4.0",
1228 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-arm64-msvc/-/cli-win32-arm64-msvc-1.4.0.tgz",
1229 | "integrity": "sha512-gZ05GENFbI6CB5MlOUsLlU0kZ9UtHn9riYtSXKT6MYs8HSPRffPHaHSL0WxsJweWh9nR5Hgh/TUU8uW3sYCzCg==",
1230 | "dev": true,
1231 | "optional": true
1232 | },
1233 | "@tauri-apps/cli-win32-ia32-msvc": {
1234 | "version": "1.4.0",
1235 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-ia32-msvc/-/cli-win32-ia32-msvc-1.4.0.tgz",
1236 | "integrity": "sha512-JsetT/lTx/Zq98eo8T5CiRyF1nKeX04RO8JlJrI3ZOYsZpp/A5RJvMd/szQ17iOzwiHdge+tx7k2jHysR6oBlQ==",
1237 | "dev": true,
1238 | "optional": true
1239 | },
1240 | "@tauri-apps/cli-win32-x64-msvc": {
1241 | "version": "1.4.0",
1242 | "resolved": "https://registry.npmjs.org/@tauri-apps/cli-win32-x64-msvc/-/cli-win32-x64-msvc-1.4.0.tgz",
1243 | "integrity": "sha512-z8Olcnwp5aYhzqUAarFjqF+oELCjuYWnB2HAJHlfsYNfDCAORY5kct3Fklz8PSsubC3U2EugWn8n42DwnThurg==",
1244 | "dev": true,
1245 | "optional": true
1246 | },
1247 | "@vitejs/plugin-vue": {
1248 | "version": "4.2.3",
1249 | "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-4.2.3.tgz",
1250 | "integrity": "sha512-R6JDUfiZbJA9cMiguQ7jxALsgiprjBeHL5ikpXfJCH62pPHtI+JdJ5xWj6Ev73yXSlYl86+blXn1kZHQ7uElxw==",
1251 | "dev": true,
1252 | "requires": {}
1253 | },
1254 | "@vue/compiler-core": {
1255 | "version": "3.3.4",
1256 | "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.3.4.tgz",
1257 | "integrity": "sha512-cquyDNvZ6jTbf/+x+AgM2Arrp6G4Dzbb0R64jiG804HRMfRiFXWI6kqUVqZ6ZR0bQhIoQjB4+2bhNtVwndW15g==",
1258 | "requires": {
1259 | "@babel/parser": "^7.21.3",
1260 | "@vue/shared": "3.3.4",
1261 | "estree-walker": "^2.0.2",
1262 | "source-map-js": "^1.0.2"
1263 | }
1264 | },
1265 | "@vue/compiler-dom": {
1266 | "version": "3.3.4",
1267 | "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.3.4.tgz",
1268 | "integrity": "sha512-wyM+OjOVpuUukIq6p5+nwHYtj9cFroz9cwkfmP9O1nzH68BenTTv0u7/ndggT8cIQlnBeOo6sUT/gvHcIkLA5w==",
1269 | "requires": {
1270 | "@vue/compiler-core": "3.3.4",
1271 | "@vue/shared": "3.3.4"
1272 | }
1273 | },
1274 | "@vue/compiler-sfc": {
1275 | "version": "3.3.4",
1276 | "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.3.4.tgz",
1277 | "integrity": "sha512-6y/d8uw+5TkCuzBkgLS0v3lSM3hJDntFEiUORM11pQ/hKvkhSKZrXW6i69UyXlJQisJxuUEJKAWEqWbWsLeNKQ==",
1278 | "requires": {
1279 | "@babel/parser": "^7.20.15",
1280 | "@vue/compiler-core": "3.3.4",
1281 | "@vue/compiler-dom": "3.3.4",
1282 | "@vue/compiler-ssr": "3.3.4",
1283 | "@vue/reactivity-transform": "3.3.4",
1284 | "@vue/shared": "3.3.4",
1285 | "estree-walker": "^2.0.2",
1286 | "magic-string": "^0.30.0",
1287 | "postcss": "^8.1.10",
1288 | "source-map-js": "^1.0.2"
1289 | }
1290 | },
1291 | "@vue/compiler-ssr": {
1292 | "version": "3.3.4",
1293 | "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.3.4.tgz",
1294 | "integrity": "sha512-m0v6oKpup2nMSehwA6Uuu+j+wEwcy7QmwMkVNVfrV9P2qE5KshC6RwOCq8fjGS/Eak/uNb8AaWekfiXxbBB6gQ==",
1295 | "requires": {
1296 | "@vue/compiler-dom": "3.3.4",
1297 | "@vue/shared": "3.3.4"
1298 | }
1299 | },
1300 | "@vue/devtools-api": {
1301 | "version": "6.5.0",
1302 | "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.5.0.tgz",
1303 | "integrity": "sha512-o9KfBeaBmCKl10usN4crU53fYtC1r7jJwdGKjPT24t348rHxgfpZ0xL3Xm/gLUYnc0oTp8LAmrxOeLyu6tbk2Q=="
1304 | },
1305 | "@vue/reactivity": {
1306 | "version": "3.3.4",
1307 | "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.3.4.tgz",
1308 | "integrity": "sha512-kLTDLwd0B1jG08NBF3R5rqULtv/f8x3rOFByTDz4J53ttIQEDmALqKqXY0J+XQeN0aV2FBxY8nJDf88yvOPAqQ==",
1309 | "requires": {
1310 | "@vue/shared": "3.3.4"
1311 | }
1312 | },
1313 | "@vue/reactivity-transform": {
1314 | "version": "3.3.4",
1315 | "resolved": "https://registry.npmjs.org/@vue/reactivity-transform/-/reactivity-transform-3.3.4.tgz",
1316 | "integrity": "sha512-MXgwjako4nu5WFLAjpBnCj/ieqcjE2aJBINUNQzkZQfzIZA4xn+0fV1tIYBJvvva3N3OvKGofRLvQIwEQPpaXw==",
1317 | "requires": {
1318 | "@babel/parser": "^7.20.15",
1319 | "@vue/compiler-core": "3.3.4",
1320 | "@vue/shared": "3.3.4",
1321 | "estree-walker": "^2.0.2",
1322 | "magic-string": "^0.30.0"
1323 | }
1324 | },
1325 | "@vue/runtime-core": {
1326 | "version": "3.3.4",
1327 | "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.3.4.tgz",
1328 | "integrity": "sha512-R+bqxMN6pWO7zGI4OMlmvePOdP2c93GsHFM/siJI7O2nxFRzj55pLwkpCedEY+bTMgp5miZ8CxfIZo3S+gFqvA==",
1329 | "requires": {
1330 | "@vue/reactivity": "3.3.4",
1331 | "@vue/shared": "3.3.4"
1332 | }
1333 | },
1334 | "@vue/runtime-dom": {
1335 | "version": "3.3.4",
1336 | "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.3.4.tgz",
1337 | "integrity": "sha512-Aj5bTJ3u5sFsUckRghsNjVTtxZQ1OyMWCr5dZRAPijF/0Vy4xEoRCwLyHXcj4D0UFbJ4lbx3gPTgg06K/GnPnQ==",
1338 | "requires": {
1339 | "@vue/runtime-core": "3.3.4",
1340 | "@vue/shared": "3.3.4",
1341 | "csstype": "^3.1.1"
1342 | }
1343 | },
1344 | "@vue/server-renderer": {
1345 | "version": "3.3.4",
1346 | "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.3.4.tgz",
1347 | "integrity": "sha512-Q6jDDzR23ViIb67v+vM1Dqntu+HUexQcsWKhhQa4ARVzxOY2HbC7QRW/ggkDBd5BU+uM1sV6XOAP0b216o34JQ==",
1348 | "requires": {
1349 | "@vue/compiler-ssr": "3.3.4",
1350 | "@vue/shared": "3.3.4"
1351 | }
1352 | },
1353 | "@vue/shared": {
1354 | "version": "3.3.4",
1355 | "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.3.4.tgz",
1356 | "integrity": "sha512-7OjdcV8vQ74eiz1TZLzZP4JwqM5fA94K6yntPS5Z25r9HDuGNzaGdgvwKYq6S+MxwF0TFRwe50fIR/MYnakdkQ=="
1357 | },
1358 | "csstype": {
1359 | "version": "3.1.2",
1360 | "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
1361 | "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
1362 | },
1363 | "esbuild": {
1364 | "version": "0.18.17",
1365 | "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.18.17.tgz",
1366 | "integrity": "sha512-1GJtYnUxsJreHYA0Y+iQz2UEykonY66HNWOb0yXYZi9/kNrORUEHVg87eQsCtqh59PEJ5YVZJO98JHznMJSWjg==",
1367 | "dev": true,
1368 | "requires": {
1369 | "@esbuild/android-arm": "0.18.17",
1370 | "@esbuild/android-arm64": "0.18.17",
1371 | "@esbuild/android-x64": "0.18.17",
1372 | "@esbuild/darwin-arm64": "0.18.17",
1373 | "@esbuild/darwin-x64": "0.18.17",
1374 | "@esbuild/freebsd-arm64": "0.18.17",
1375 | "@esbuild/freebsd-x64": "0.18.17",
1376 | "@esbuild/linux-arm": "0.18.17",
1377 | "@esbuild/linux-arm64": "0.18.17",
1378 | "@esbuild/linux-ia32": "0.18.17",
1379 | "@esbuild/linux-loong64": "0.18.17",
1380 | "@esbuild/linux-mips64el": "0.18.17",
1381 | "@esbuild/linux-ppc64": "0.18.17",
1382 | "@esbuild/linux-riscv64": "0.18.17",
1383 | "@esbuild/linux-s390x": "0.18.17",
1384 | "@esbuild/linux-x64": "0.18.17",
1385 | "@esbuild/netbsd-x64": "0.18.17",
1386 | "@esbuild/openbsd-x64": "0.18.17",
1387 | "@esbuild/sunos-x64": "0.18.17",
1388 | "@esbuild/win32-arm64": "0.18.17",
1389 | "@esbuild/win32-ia32": "0.18.17",
1390 | "@esbuild/win32-x64": "0.18.17"
1391 | }
1392 | },
1393 | "estree-walker": {
1394 | "version": "2.0.2",
1395 | "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
1396 | "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
1397 | },
1398 | "fsevents": {
1399 | "version": "2.3.2",
1400 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
1401 | "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
1402 | "dev": true,
1403 | "optional": true
1404 | },
1405 | "magic-string": {
1406 | "version": "0.30.2",
1407 | "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.2.tgz",
1408 | "integrity": "sha512-lNZdu7pewtq/ZvWUp9Wpf/x7WzMTsR26TWV03BRZrXFsv+BI6dy8RAiKgm1uM/kyR0rCfUcqvOlXKG66KhIGug==",
1409 | "requires": {
1410 | "@jridgewell/sourcemap-codec": "^1.4.15"
1411 | }
1412 | },
1413 | "nanoid": {
1414 | "version": "3.3.6",
1415 | "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz",
1416 | "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA=="
1417 | },
1418 | "picocolors": {
1419 | "version": "1.0.0",
1420 | "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
1421 | "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ=="
1422 | },
1423 | "pinia": {
1424 | "version": "2.1.6",
1425 | "resolved": "https://registry.npmjs.org/pinia/-/pinia-2.1.6.tgz",
1426 | "integrity": "sha512-bIU6QuE5qZviMmct5XwCesXelb5VavdOWKWaB17ggk++NUwQWWbP5YnsONTk3b752QkW9sACiR81rorpeOMSvQ==",
1427 | "requires": {
1428 | "@vue/devtools-api": "^6.5.0",
1429 | "vue-demi": ">=0.14.5"
1430 | },
1431 | "dependencies": {
1432 | "vue-demi": {
1433 | "version": "0.14.5",
1434 | "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.5.tgz",
1435 | "integrity": "sha512-o9NUVpl/YlsGJ7t+xuqJKx8EBGf1quRhCiT6D/J0pfwmk9zUwYkC7yrF4SZCe6fETvSM3UNL2edcbYrSyc4QHA==",
1436 | "requires": {}
1437 | }
1438 | }
1439 | },
1440 | "postcss": {
1441 | "version": "8.4.27",
1442 | "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.27.tgz",
1443 | "integrity": "sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==",
1444 | "requires": {
1445 | "nanoid": "^3.3.6",
1446 | "picocolors": "^1.0.0",
1447 | "source-map-js": "^1.0.2"
1448 | }
1449 | },
1450 | "rollup": {
1451 | "version": "3.27.2",
1452 | "resolved": "https://registry.npmjs.org/rollup/-/rollup-3.27.2.tgz",
1453 | "integrity": "sha512-YGwmHf7h2oUHkVBT248x0yt6vZkYQ3/rvE5iQuVBh3WO8GcJ6BNeOkpoX1yMHIiBm18EMLjBPIoUDkhgnyxGOQ==",
1454 | "dev": true,
1455 | "requires": {
1456 | "fsevents": "~2.3.2"
1457 | }
1458 | },
1459 | "source-map-js": {
1460 | "version": "1.0.2",
1461 | "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
1462 | "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw=="
1463 | },
1464 | "vite": {
1465 | "version": "4.4.8",
1466 | "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.8.tgz",
1467 | "integrity": "sha512-LONawOUUjxQridNWGQlNizfKH89qPigK36XhMI7COMGztz8KNY0JHim7/xDd71CZwGT4HtSRgI7Hy+RlhG0Gvg==",
1468 | "dev": true,
1469 | "requires": {
1470 | "esbuild": "^0.18.10",
1471 | "fsevents": "~2.3.2",
1472 | "postcss": "^8.4.26",
1473 | "rollup": "^3.25.2"
1474 | }
1475 | },
1476 | "vue": {
1477 | "version": "3.3.4",
1478 | "resolved": "https://registry.npmjs.org/vue/-/vue-3.3.4.tgz",
1479 | "integrity": "sha512-VTyEYn3yvIeY1Py0WaYGZsXnz3y5UnGi62GjVEqvEGPl6nxbOrCXbVOTQWBEJUqAyTUk2uJ5JLVnYJ6ZzGbrSw==",
1480 | "requires": {
1481 | "@vue/compiler-dom": "3.3.4",
1482 | "@vue/compiler-sfc": "3.3.4",
1483 | "@vue/runtime-dom": "3.3.4",
1484 | "@vue/server-renderer": "3.3.4",
1485 | "@vue/shared": "3.3.4"
1486 | }
1487 | },
1488 | "vue-router": {
1489 | "version": "4.2.4",
1490 | "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.2.4.tgz",
1491 | "integrity": "sha512-9PISkmaCO02OzPVOMq2w82ilty6+xJmQrarYZDkjZBfl4RvYAlt4PKnEX21oW4KTtWfa9OuO/b3qk1Od3AEdCQ==",
1492 | "requires": {
1493 | "@vue/devtools-api": "^6.5.0"
1494 | }
1495 | }
1496 | }
1497 | }
1498 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tauri-template",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "dev": "vite",
8 | "build": "vite build",
9 | "preview": "vite preview",
10 | "tauri": "tauri"
11 | },
12 | "dependencies": {
13 | "@tauri-apps/api": "^1.4.0",
14 | "pinia": "^2.1.6",
15 | "vue": "^3.3.4",
16 | "vue-router": "^4.2.4"
17 | },
18 | "devDependencies": {
19 | "@tauri-apps/cli": "^1.4.0",
20 | "@vitejs/plugin-vue": "^4.2.3",
21 | "vite": "^4.4.4"
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/src-tauri/.gitignore:
--------------------------------------------------------------------------------
1 | # Generated by Cargo
2 | # will have compiled files and executables
3 | /target/
4 |
5 |
--------------------------------------------------------------------------------
/src-tauri/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "tauri-template"
3 | version = "0.0.0"
4 | description = "A Tauri App"
5 | authors = ["you"]
6 | license = ""
7 | repository = ""
8 | edition = "2021"
9 |
10 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
11 |
12 | [build-dependencies]
13 | tauri-build = { version = "1.4", features = [] }
14 |
15 | [dependencies]
16 | tauri = { version = "1.4", features = ["shell-open"] }
17 | serde = { version = "1.0", features = ["derive"] }
18 | serde_json = "1.0"
19 |
20 | [features]
21 | # this feature is used for production builds or when `devPath` points to the filesystem
22 | # DO NOT REMOVE!!
23 | custom-protocol = ["tauri/custom-protocol"]
24 |
--------------------------------------------------------------------------------
/src-tauri/build.rs:
--------------------------------------------------------------------------------
1 | fn main() {
2 | tauri_build::build()
3 | }
4 |
--------------------------------------------------------------------------------
/src-tauri/icons/128x128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/128x128.png
--------------------------------------------------------------------------------
/src-tauri/icons/128x128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/128x128@2x.png
--------------------------------------------------------------------------------
/src-tauri/icons/32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/32x32.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square107x107Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square107x107Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square142x142Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square142x142Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square150x150Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square150x150Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square284x284Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square284x284Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square30x30Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square30x30Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square310x310Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square310x310Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square44x44Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square44x44Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square71x71Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square71x71Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square89x89Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/Square89x89Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/StoreLogo.png
--------------------------------------------------------------------------------
/src-tauri/icons/icon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/icon.icns
--------------------------------------------------------------------------------
/src-tauri/icons/icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/icon.ico
--------------------------------------------------------------------------------
/src-tauri/icons/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src-tauri/icons/icon.png
--------------------------------------------------------------------------------
/src-tauri/src/main.rs:
--------------------------------------------------------------------------------
1 | // Prevents additional console window on Windows in release, DO NOT REMOVE!!
2 | #![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
3 |
4 | // Learn more about Tauri commands at https://tauri.app/v1/guides/features/command
5 | #[tauri::command]
6 | fn greet(name: &str) -> String {
7 | format!("Hello, {}! You've been greeted from Rust!", name)
8 | }
9 |
10 | fn main() {
11 | tauri::Builder::default()
12 | .invoke_handler(tauri::generate_handler![greet])
13 | .run(tauri::generate_context!())
14 | .expect("error while running tauri application");
15 | }
16 |
--------------------------------------------------------------------------------
/src-tauri/tauri.conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "build": {
3 | "beforeDevCommand": "npm run dev",
4 | "beforeBuildCommand": "npm run build",
5 | "devPath": "http://localhost:1420",
6 | "distDir": "../dist",
7 | "withGlobalTauri": false
8 | },
9 | "package": {
10 | "productName": "tauri-template",
11 | "version": "0.0.0"
12 | },
13 | "tauri": {
14 | "allowlist": {
15 | "all": false,
16 | "shell": {
17 | "all": false,
18 | "open": true
19 | }
20 | },
21 | "bundle": {
22 | "active": true,
23 | "targets": "all",
24 | "identifier": "com.tauri.dev",
25 | "icon": [
26 | "icons/32x32.png",
27 | "icons/128x128.png",
28 | "icons/128x128@2x.png",
29 | "icons/icon.icns",
30 | "icons/icon.ico"
31 | ]
32 | },
33 | "security": {
34 | "csp": null
35 | },
36 | "windows": [
37 | {
38 | "fullscreen": false,
39 | "resizable": true,
40 | "center": true,
41 | "title": "tauri-template",
42 | "width": 800,
43 | "height": 600
44 | }
45 | ],
46 | "updater": {
47 | "active": true,
48 | "endpoints": [
49 | "https://raw.githubusercontent.com///update/latest.json"
50 | ],
51 | "dialog": true,
52 | "pubkey": "generate updater key: https://tauri.app/v1/guides/distribution/updater/",
53 | "windows": {
54 | "installMode": "passive"
55 | }
56 | }
57 | }
58 | }
59 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
47 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from "vue";
2 | import { createPinia } from "pinia";
3 | import App from "./App.vue";
4 | import { router } from "./plugins/router.js";
5 |
6 | const pinia = createPinia();
7 | const app = createApp(App);
8 |
9 | app.use(pinia);
10 | app.use(router);
11 |
12 | app.mount("#app");
13 |
--------------------------------------------------------------------------------
/src/plugins/router.js:
--------------------------------------------------------------------------------
1 | import { createRouter, createWebHistory } from "vue-router";
2 |
3 | const routes = [
4 | {
5 | path: "/",
6 | name: "Home",
7 | component: () => import("../views/Home.vue"),
8 | },
9 | ];
10 |
11 | const router = createRouter({
12 | history: createWebHistory(),
13 | routes,
14 | });
15 |
16 | export { routes, router };
17 |
--------------------------------------------------------------------------------
/src/store/store.js:
--------------------------------------------------------------------------------
1 | import { defineStore } from "pinia";
2 |
3 | export const useStore = defineStore("main", {
4 | state: () => ({}),
5 | getters: {},
6 | actions: {},
7 | });
8 |
--------------------------------------------------------------------------------
/src/views/Home.vue:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/skymen/tauri-vue-template/3f46f0bed12d81516702b59deccb204b6bd2c19a/src/views/Home.vue
--------------------------------------------------------------------------------
/vite.config.js:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "vite";
2 | import vue from "@vitejs/plugin-vue";
3 |
4 | // https://vitejs.dev/config/
5 | export default defineConfig(async () => ({
6 | plugins: [vue()],
7 |
8 | // Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
9 | //
10 | // 1. prevent vite from obscuring rust errors
11 | clearScreen: false,
12 | // 2. tauri expects a fixed port, fail if that port is not available
13 | server: {
14 | port: 1420,
15 | strictPort: true,
16 | },
17 | // 3. to make use of `TAURI_DEBUG` and other env variables
18 | // https://tauri.studio/v1/api/config#buildconfig.beforedevcommand
19 | envPrefix: ["VITE_", "TAURI_"],
20 | }));
21 |
--------------------------------------------------------------------------------