├── .gitignore
├── .vscode
└── extensions.json
├── LICENSE
├── README.md
├── index.html
├── package-lock.json
├── package.json
├── pnpm-lock.yaml
├── public
├── tauri.svg
└── vite.svg
├── scripts
└── generate-macros.py
├── src-tauri
├── .gitignore
├── 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
│ ├── autogen
│ │ └── constants.rs
│ ├── main.rs
│ └── states
│ │ └── states.rs
└── tauri.conf.json
├── src
├── App.css
├── App.tsx
├── assets
│ └── react.svg
├── constants
│ ├── events.ts
│ ├── global.ts
│ └── index.ts
├── main.tsx
├── states
│ └── global-state.ts
├── styles.css
├── types
│ └── state.ts
└── vite-env.d.ts
├── tsconfig.json
├── tsconfig.node.json
└── vite.config.ts
/.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": ["tauri-apps.tauri-vscode", "rust-lang.rust-analyzer"]
3 | }
4 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2023 Sushant S Samuel
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Tauri Global State Management
2 |
3 | A Tauri application with global state management. The local state for individual frontend windows is managed using Zustand, while the global state is managed and synced across all frontend windows using the Rust backend.
4 |
5 | ## Project Structure
6 |
7 | ```bash
8 | Project Root
9 | ├── scripts
10 | │ └── generate-macros.py
11 | ├── src
12 | │ ├── assets
13 | │ ├── constants
14 | │ │ ├── events.ts
15 | │ │ ├── global.ts
16 | │ │ └── index.ts
17 | │ ├── states
18 | │ │ └── global-state.ts
19 | │ ├── types
20 | │ │ └── state.ts
21 | │ ├── App.tsx
22 | │ ├── App.css
23 | │ ├── main.tsx
24 | │ ├── styles.css
25 | │ └── vite-env.d.ts
26 | ├── src-tauri
27 | │ ├── src
28 | │ │ ├── autogen
29 | │ │ │ └── constants.rs
30 | │ │ ├── states
31 | │ │ │ └── states.rs
32 | │ │ └── main.rs
33 | │ └── ... other files and folders
34 | └── ... other files and folders
35 | ```
36 |
37 | ## Installation
38 |
39 | Clone the repository:
40 |
41 | ```bash
42 | git clone https://github.com/robosushie/tauri-global-state-management.git
43 | ```
44 |
45 | Navigate into the project directory:
46 |
47 | ```bash
48 | cd tauri-global-state-management
49 | ```
50 |
51 | Install the dependencies:
52 |
53 | ```bash
54 | pnpm install
55 | ```
56 |
57 | Generate the Rust constants and enums:
58 |
59 | ```bash
60 | pnpm run autogen
61 | ```
62 |
63 | ## Usage
64 |
65 | Start the Tauri application in development mode:
66 |
67 | ```bash
68 | pnpm run dev
69 | ```
70 |
71 | You can interact with the frontend by clicking the increment, decrement, and toggle buttons. The global state should be updated and synced across all frontend windows.
72 |
73 | ## Future Roadmap
74 |
75 | - [ ] Add a STATE_FETCH event to fetch the state when different frontend windows come up at different times. This will also be useful when a webview window comes up after a crash.
76 |
77 | - [ ] Convert this into a single plugin with most of the backend state management code written with autogeneration.
78 |
79 | ## License
80 |
81 | This project is licensed under the MIT License.
82 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Tauri + React + TS
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "tauri-global-state-management",
3 | "private": true,
4 | "version": "0.0.0",
5 | "type": "module",
6 | "scripts": {
7 | "autogen": "python scripts/generate-macros.py",
8 | "dev": "pnpm run autogen && vite",
9 | "build": "tsc && pnpm run autogen && vite build",
10 | "preview": "vite preview",
11 | "tauri": "tauri"
12 | },
13 | "dependencies": {
14 | "@tauri-apps/api": "^1.4.0",
15 | "react": "^18.2.0",
16 | "react-dom": "^18.2.0",
17 | "zustand": "^4.3.9"
18 | },
19 | "devDependencies": {
20 | "@tauri-apps/cli": "^1.4.0",
21 | "@types/node": "^20.4.4",
22 | "@types/react": "^18.2.15",
23 | "@types/react-dom": "^18.2.7",
24 | "@vitejs/plugin-react": "^4.0.3",
25 | "typescript": "^5.0.2",
26 | "vite": "^4.4.4"
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '6.0'
2 |
3 | dependencies:
4 | '@tauri-apps/api':
5 | specifier: ^1.4.0
6 | version: 1.4.0
7 | '@types/node':
8 | specifier: ^20.4.4
9 | version: 20.4.4
10 | react:
11 | specifier: ^18.2.0
12 | version: 18.2.0
13 | react-dom:
14 | specifier: ^18.2.0
15 | version: 18.2.0(react@18.2.0)
16 | zustand:
17 | specifier: ^4.3.9
18 | version: 4.3.9(react@18.2.0)
19 |
20 | devDependencies:
21 | '@tauri-apps/cli':
22 | specifier: ^1.4.0
23 | version: 1.4.0
24 | '@types/react':
25 | specifier: ^18.2.15
26 | version: 18.2.15
27 | '@types/react-dom':
28 | specifier: ^18.2.7
29 | version: 18.2.7
30 | '@vitejs/plugin-react':
31 | specifier: ^4.0.3
32 | version: 4.0.3(vite@4.4.4)
33 | typescript:
34 | specifier: ^5.0.2
35 | version: 5.0.2
36 | vite:
37 | specifier: ^4.4.4
38 | version: 4.4.4(@types/node@20.4.4)
39 |
40 | packages:
41 |
42 | /@ampproject/remapping@2.2.1:
43 | resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
44 | engines: {node: '>=6.0.0'}
45 | dependencies:
46 | '@jridgewell/gen-mapping': 0.3.3
47 | '@jridgewell/trace-mapping': 0.3.18
48 | dev: true
49 |
50 | /@babel/code-frame@7.22.5:
51 | resolution: {integrity: sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==}
52 | engines: {node: '>=6.9.0'}
53 | dependencies:
54 | '@babel/highlight': 7.22.5
55 | dev: true
56 |
57 | /@babel/compat-data@7.22.9:
58 | resolution: {integrity: sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==}
59 | engines: {node: '>=6.9.0'}
60 | dev: true
61 |
62 | /@babel/core@7.22.9:
63 | resolution: {integrity: sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==}
64 | engines: {node: '>=6.9.0'}
65 | dependencies:
66 | '@ampproject/remapping': 2.2.1
67 | '@babel/code-frame': 7.22.5
68 | '@babel/generator': 7.22.9
69 | '@babel/helper-compilation-targets': 7.22.9(@babel/core@7.22.9)
70 | '@babel/helper-module-transforms': 7.22.9(@babel/core@7.22.9)
71 | '@babel/helpers': 7.22.6
72 | '@babel/parser': 7.22.7
73 | '@babel/template': 7.22.5
74 | '@babel/traverse': 7.22.8
75 | '@babel/types': 7.22.5
76 | convert-source-map: 1.9.0
77 | debug: 4.3.4
78 | gensync: 1.0.0-beta.2
79 | json5: 2.2.3
80 | semver: 6.3.1
81 | transitivePeerDependencies:
82 | - supports-color
83 | dev: true
84 |
85 | /@babel/generator@7.22.9:
86 | resolution: {integrity: sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==}
87 | engines: {node: '>=6.9.0'}
88 | dependencies:
89 | '@babel/types': 7.22.5
90 | '@jridgewell/gen-mapping': 0.3.3
91 | '@jridgewell/trace-mapping': 0.3.18
92 | jsesc: 2.5.2
93 | dev: true
94 |
95 | /@babel/helper-compilation-targets@7.22.9(@babel/core@7.22.9):
96 | resolution: {integrity: sha512-7qYrNM6HjpnPHJbopxmb8hSPoZ0gsX8IvUS32JGVoy+pU9e5N0nLr1VjJoR6kA4d9dmGLxNYOjeB8sUDal2WMw==}
97 | engines: {node: '>=6.9.0'}
98 | peerDependencies:
99 | '@babel/core': ^7.0.0
100 | dependencies:
101 | '@babel/compat-data': 7.22.9
102 | '@babel/core': 7.22.9
103 | '@babel/helper-validator-option': 7.22.5
104 | browserslist: 4.21.9
105 | lru-cache: 5.1.1
106 | semver: 6.3.1
107 | dev: true
108 |
109 | /@babel/helper-environment-visitor@7.22.5:
110 | resolution: {integrity: sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==}
111 | engines: {node: '>=6.9.0'}
112 | dev: true
113 |
114 | /@babel/helper-function-name@7.22.5:
115 | resolution: {integrity: sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==}
116 | engines: {node: '>=6.9.0'}
117 | dependencies:
118 | '@babel/template': 7.22.5
119 | '@babel/types': 7.22.5
120 | dev: true
121 |
122 | /@babel/helper-hoist-variables@7.22.5:
123 | resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
124 | engines: {node: '>=6.9.0'}
125 | dependencies:
126 | '@babel/types': 7.22.5
127 | dev: true
128 |
129 | /@babel/helper-module-imports@7.22.5:
130 | resolution: {integrity: sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==}
131 | engines: {node: '>=6.9.0'}
132 | dependencies:
133 | '@babel/types': 7.22.5
134 | dev: true
135 |
136 | /@babel/helper-module-transforms@7.22.9(@babel/core@7.22.9):
137 | resolution: {integrity: sha512-t+WA2Xn5K+rTeGtC8jCsdAH52bjggG5TKRuRrAGNM/mjIbO4GxvlLMFOEz9wXY5I2XQ60PMFsAG2WIcG82dQMQ==}
138 | engines: {node: '>=6.9.0'}
139 | peerDependencies:
140 | '@babel/core': ^7.0.0
141 | dependencies:
142 | '@babel/core': 7.22.9
143 | '@babel/helper-environment-visitor': 7.22.5
144 | '@babel/helper-module-imports': 7.22.5
145 | '@babel/helper-simple-access': 7.22.5
146 | '@babel/helper-split-export-declaration': 7.22.6
147 | '@babel/helper-validator-identifier': 7.22.5
148 | dev: true
149 |
150 | /@babel/helper-plugin-utils@7.22.5:
151 | resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==}
152 | engines: {node: '>=6.9.0'}
153 | dev: true
154 |
155 | /@babel/helper-simple-access@7.22.5:
156 | resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
157 | engines: {node: '>=6.9.0'}
158 | dependencies:
159 | '@babel/types': 7.22.5
160 | dev: true
161 |
162 | /@babel/helper-split-export-declaration@7.22.6:
163 | resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
164 | engines: {node: '>=6.9.0'}
165 | dependencies:
166 | '@babel/types': 7.22.5
167 | dev: true
168 |
169 | /@babel/helper-string-parser@7.22.5:
170 | resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==}
171 | engines: {node: '>=6.9.0'}
172 | dev: true
173 |
174 | /@babel/helper-validator-identifier@7.22.5:
175 | resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==}
176 | engines: {node: '>=6.9.0'}
177 | dev: true
178 |
179 | /@babel/helper-validator-option@7.22.5:
180 | resolution: {integrity: sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==}
181 | engines: {node: '>=6.9.0'}
182 | dev: true
183 |
184 | /@babel/helpers@7.22.6:
185 | resolution: {integrity: sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==}
186 | engines: {node: '>=6.9.0'}
187 | dependencies:
188 | '@babel/template': 7.22.5
189 | '@babel/traverse': 7.22.8
190 | '@babel/types': 7.22.5
191 | transitivePeerDependencies:
192 | - supports-color
193 | dev: true
194 |
195 | /@babel/highlight@7.22.5:
196 | resolution: {integrity: sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==}
197 | engines: {node: '>=6.9.0'}
198 | dependencies:
199 | '@babel/helper-validator-identifier': 7.22.5
200 | chalk: 2.4.2
201 | js-tokens: 4.0.0
202 | dev: true
203 |
204 | /@babel/parser@7.22.7:
205 | resolution: {integrity: sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==}
206 | engines: {node: '>=6.0.0'}
207 | hasBin: true
208 | dependencies:
209 | '@babel/types': 7.22.5
210 | dev: true
211 |
212 | /@babel/plugin-transform-react-jsx-self@7.22.5(@babel/core@7.22.9):
213 | resolution: {integrity: sha512-nTh2ogNUtxbiSbxaT4Ds6aXnXEipHweN9YRgOX/oNXdf0cCrGn/+2LozFa3lnPV5D90MkjhgckCPBrsoSc1a7g==}
214 | engines: {node: '>=6.9.0'}
215 | peerDependencies:
216 | '@babel/core': ^7.0.0-0
217 | dependencies:
218 | '@babel/core': 7.22.9
219 | '@babel/helper-plugin-utils': 7.22.5
220 | dev: true
221 |
222 | /@babel/plugin-transform-react-jsx-source@7.22.5(@babel/core@7.22.9):
223 | resolution: {integrity: sha512-yIiRO6yobeEIaI0RTbIr8iAK9FcBHLtZq0S89ZPjDLQXBA4xvghaKqI0etp/tF3htTM0sazJKKLz9oEiGRtu7w==}
224 | engines: {node: '>=6.9.0'}
225 | peerDependencies:
226 | '@babel/core': ^7.0.0-0
227 | dependencies:
228 | '@babel/core': 7.22.9
229 | '@babel/helper-plugin-utils': 7.22.5
230 | dev: true
231 |
232 | /@babel/template@7.22.5:
233 | resolution: {integrity: sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==}
234 | engines: {node: '>=6.9.0'}
235 | dependencies:
236 | '@babel/code-frame': 7.22.5
237 | '@babel/parser': 7.22.7
238 | '@babel/types': 7.22.5
239 | dev: true
240 |
241 | /@babel/traverse@7.22.8:
242 | resolution: {integrity: sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==}
243 | engines: {node: '>=6.9.0'}
244 | dependencies:
245 | '@babel/code-frame': 7.22.5
246 | '@babel/generator': 7.22.9
247 | '@babel/helper-environment-visitor': 7.22.5
248 | '@babel/helper-function-name': 7.22.5
249 | '@babel/helper-hoist-variables': 7.22.5
250 | '@babel/helper-split-export-declaration': 7.22.6
251 | '@babel/parser': 7.22.7
252 | '@babel/types': 7.22.5
253 | debug: 4.3.4
254 | globals: 11.12.0
255 | transitivePeerDependencies:
256 | - supports-color
257 | dev: true
258 |
259 | /@babel/types@7.22.5:
260 | resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==}
261 | engines: {node: '>=6.9.0'}
262 | dependencies:
263 | '@babel/helper-string-parser': 7.22.5
264 | '@babel/helper-validator-identifier': 7.22.5
265 | to-fast-properties: 2.0.0
266 | dev: true
267 |
268 | /@esbuild/android-arm64@0.18.16:
269 | resolution: {integrity: sha512-wsCqSPqLz+6Ov+OM4EthU43DyYVVyfn15S4j1bJzylDpc1r1jZFFfJQNfDuT8SlgwuqpmpJXK4uPlHGw6ve7eA==}
270 | engines: {node: '>=12'}
271 | cpu: [arm64]
272 | os: [android]
273 | requiresBuild: true
274 | dev: true
275 | optional: true
276 |
277 | /@esbuild/android-arm@0.18.16:
278 | resolution: {integrity: sha512-gCHjjQmA8L0soklKbLKA6pgsLk1byULuHe94lkZDzcO3/Ta+bbeewJioEn1Fr7kgy9NWNFy/C+MrBwC6I/WCug==}
279 | engines: {node: '>=12'}
280 | cpu: [arm]
281 | os: [android]
282 | requiresBuild: true
283 | dev: true
284 | optional: true
285 |
286 | /@esbuild/android-x64@0.18.16:
287 | resolution: {integrity: sha512-ldsTXolyA3eTQ1//4DS+E15xl0H/3DTRJaRL0/0PgkqDsI0fV/FlOtD+h0u/AUJr+eOTlZv4aC9gvfppo3C4sw==}
288 | engines: {node: '>=12'}
289 | cpu: [x64]
290 | os: [android]
291 | requiresBuild: true
292 | dev: true
293 | optional: true
294 |
295 | /@esbuild/darwin-arm64@0.18.16:
296 | resolution: {integrity: sha512-aBxruWCII+OtluORR/KvisEw0ALuw/qDQWvkoosA+c/ngC/Kwk0lLaZ+B++LLS481/VdydB2u6tYpWxUfnLAIw==}
297 | engines: {node: '>=12'}
298 | cpu: [arm64]
299 | os: [darwin]
300 | requiresBuild: true
301 | dev: true
302 | optional: true
303 |
304 | /@esbuild/darwin-x64@0.18.16:
305 | resolution: {integrity: sha512-6w4Dbue280+rp3LnkgmriS1icOUZDyPuZo/9VsuMUTns7SYEiOaJ7Ca1cbhu9KVObAWfmdjUl4gwy9TIgiO5eA==}
306 | engines: {node: '>=12'}
307 | cpu: [x64]
308 | os: [darwin]
309 | requiresBuild: true
310 | dev: true
311 | optional: true
312 |
313 | /@esbuild/freebsd-arm64@0.18.16:
314 | resolution: {integrity: sha512-x35fCebhe9s979DGKbVAwXUOcTmCIE32AIqB9CB1GralMIvxdnMLAw5CnID17ipEw9/3MvDsusj/cspYt2ZLNQ==}
315 | engines: {node: '>=12'}
316 | cpu: [arm64]
317 | os: [freebsd]
318 | requiresBuild: true
319 | dev: true
320 | optional: true
321 |
322 | /@esbuild/freebsd-x64@0.18.16:
323 | resolution: {integrity: sha512-YM98f+PeNXF3GbxIJlUsj+McUWG1irguBHkszCIwfr3BXtXZsXo0vqybjUDFfu9a8Wr7uUD/YSmHib+EeGAFlg==}
324 | engines: {node: '>=12'}
325 | cpu: [x64]
326 | os: [freebsd]
327 | requiresBuild: true
328 | dev: true
329 | optional: true
330 |
331 | /@esbuild/linux-arm64@0.18.16:
332 | resolution: {integrity: sha512-XIqhNUxJiuy+zsR77+H5Z2f7s4YRlriSJKtvx99nJuG5ATuJPjmZ9n0ANgnGlPCpXGSReFpgcJ7O3SMtzIFeiQ==}
333 | engines: {node: '>=12'}
334 | cpu: [arm64]
335 | os: [linux]
336 | requiresBuild: true
337 | dev: true
338 | optional: true
339 |
340 | /@esbuild/linux-arm@0.18.16:
341 | resolution: {integrity: sha512-b5ABb+5Ha2C9JkeZXV+b+OruR1tJ33ePmv9ZwMeETSEKlmu/WJ45XTTG+l6a2KDsQtJJ66qo/hbSGBtk0XVLHw==}
342 | engines: {node: '>=12'}
343 | cpu: [arm]
344 | os: [linux]
345 | requiresBuild: true
346 | dev: true
347 | optional: true
348 |
349 | /@esbuild/linux-ia32@0.18.16:
350 | resolution: {integrity: sha512-no+pfEpwnRvIyH+txbBAWtjxPU9grslmTBfsmDndj7bnBmr55rOo/PfQmRfz7Qg9isswt1FP5hBbWb23fRWnow==}
351 | engines: {node: '>=12'}
352 | cpu: [ia32]
353 | os: [linux]
354 | requiresBuild: true
355 | dev: true
356 | optional: true
357 |
358 | /@esbuild/linux-loong64@0.18.16:
359 | resolution: {integrity: sha512-Zbnczs9ZXjmo0oZSS0zbNlJbcwKXa/fcNhYQjahDs4Xg18UumpXG/lwM2lcSvHS3mTrRyCYZvJbmzYc4laRI1g==}
360 | engines: {node: '>=12'}
361 | cpu: [loong64]
362 | os: [linux]
363 | requiresBuild: true
364 | dev: true
365 | optional: true
366 |
367 | /@esbuild/linux-mips64el@0.18.16:
368 | resolution: {integrity: sha512-YMF7hih1HVR/hQVa/ot4UVffc5ZlrzEb3k2ip0nZr1w6fnYypll9td2qcoMLvd3o8j3y6EbJM3MyIcXIVzXvQQ==}
369 | engines: {node: '>=12'}
370 | cpu: [mips64el]
371 | os: [linux]
372 | requiresBuild: true
373 | dev: true
374 | optional: true
375 |
376 | /@esbuild/linux-ppc64@0.18.16:
377 | resolution: {integrity: sha512-Wkz++LZ29lDwUyTSEnzDaaP5OveOgTU69q9IyIw9WqLRxM4BjTBjz9un4G6TOvehWpf/J3gYVFN96TjGHrbcNQ==}
378 | engines: {node: '>=12'}
379 | cpu: [ppc64]
380 | os: [linux]
381 | requiresBuild: true
382 | dev: true
383 | optional: true
384 |
385 | /@esbuild/linux-riscv64@0.18.16:
386 | resolution: {integrity: sha512-LFMKZ30tk78/mUv1ygvIP+568bwf4oN6reG/uczXnz6SvFn4e2QUFpUpZY9iSJT6Qpgstrhef/nMykIXZtZWGQ==}
387 | engines: {node: '>=12'}
388 | cpu: [riscv64]
389 | os: [linux]
390 | requiresBuild: true
391 | dev: true
392 | optional: true
393 |
394 | /@esbuild/linux-s390x@0.18.16:
395 | resolution: {integrity: sha512-3ZC0BgyYHYKfZo3AV2/66TD/I9tlSBaW7eWTEIkrQQKfJIifKMMttXl9FrAg+UT0SGYsCRLI35Gwdmm96vlOjg==}
396 | engines: {node: '>=12'}
397 | cpu: [s390x]
398 | os: [linux]
399 | requiresBuild: true
400 | dev: true
401 | optional: true
402 |
403 | /@esbuild/linux-x64@0.18.16:
404 | resolution: {integrity: sha512-xu86B3647DihHJHv/wx3NCz2Dg1gjQ8bbf9cVYZzWKY+gsvxYmn/lnVlqDRazObc3UMwoHpUhNYaZset4X8IPA==}
405 | engines: {node: '>=12'}
406 | cpu: [x64]
407 | os: [linux]
408 | requiresBuild: true
409 | dev: true
410 | optional: true
411 |
412 | /@esbuild/netbsd-x64@0.18.16:
413 | resolution: {integrity: sha512-uVAgpimx9Ffw3xowtg/7qQPwHFx94yCje+DoBx+LNm2ePDpQXHrzE+Sb0Si2VBObYz+LcRps15cq+95YM7gkUw==}
414 | engines: {node: '>=12'}
415 | cpu: [x64]
416 | os: [netbsd]
417 | requiresBuild: true
418 | dev: true
419 | optional: true
420 |
421 | /@esbuild/openbsd-x64@0.18.16:
422 | resolution: {integrity: sha512-6OjCQM9wf7z8/MBi6BOWaTL2AS/SZudsZtBziXMtNI8r/U41AxS9x7jn0ATOwVy08OotwkPqGRMkpPR2wcTJXA==}
423 | engines: {node: '>=12'}
424 | cpu: [x64]
425 | os: [openbsd]
426 | requiresBuild: true
427 | dev: true
428 | optional: true
429 |
430 | /@esbuild/sunos-x64@0.18.16:
431 | resolution: {integrity: sha512-ZoNkruFYJp9d1LbUYCh8awgQDvB9uOMZqlQ+gGEZR7v6C+N6u7vPr86c+Chih8niBR81Q/bHOSKGBK3brJyvkQ==}
432 | engines: {node: '>=12'}
433 | cpu: [x64]
434 | os: [sunos]
435 | requiresBuild: true
436 | dev: true
437 | optional: true
438 |
439 | /@esbuild/win32-arm64@0.18.16:
440 | resolution: {integrity: sha512-+j4anzQ9hrs+iqO+/wa8UE6TVkKua1pXUb0XWFOx0FiAj6R9INJ+WE//1/Xo6FG1vB5EpH3ko+XcgwiDXTxcdw==}
441 | engines: {node: '>=12'}
442 | cpu: [arm64]
443 | os: [win32]
444 | requiresBuild: true
445 | dev: true
446 | optional: true
447 |
448 | /@esbuild/win32-ia32@0.18.16:
449 | resolution: {integrity: sha512-5PFPmq3sSKTp9cT9dzvI67WNfRZGvEVctcZa1KGjDDu4n3H8k59Inbk0du1fz0KrAbKKNpJbdFXQMDUz7BG4rQ==}
450 | engines: {node: '>=12'}
451 | cpu: [ia32]
452 | os: [win32]
453 | requiresBuild: true
454 | dev: true
455 | optional: true
456 |
457 | /@esbuild/win32-x64@0.18.16:
458 | resolution: {integrity: sha512-sCIVrrtcWN5Ua7jYXNG1xD199IalrbfV2+0k/2Zf2OyV2FtnQnMgdzgpRAbi4AWlKJj1jkX+M+fEGPQj6BQB4w==}
459 | engines: {node: '>=12'}
460 | cpu: [x64]
461 | os: [win32]
462 | requiresBuild: true
463 | dev: true
464 | optional: true
465 |
466 | /@jridgewell/gen-mapping@0.3.3:
467 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
468 | engines: {node: '>=6.0.0'}
469 | dependencies:
470 | '@jridgewell/set-array': 1.1.2
471 | '@jridgewell/sourcemap-codec': 1.4.15
472 | '@jridgewell/trace-mapping': 0.3.18
473 | dev: true
474 |
475 | /@jridgewell/resolve-uri@3.1.0:
476 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
477 | engines: {node: '>=6.0.0'}
478 | dev: true
479 |
480 | /@jridgewell/set-array@1.1.2:
481 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
482 | engines: {node: '>=6.0.0'}
483 | dev: true
484 |
485 | /@jridgewell/sourcemap-codec@1.4.14:
486 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
487 | dev: true
488 |
489 | /@jridgewell/sourcemap-codec@1.4.15:
490 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
491 | dev: true
492 |
493 | /@jridgewell/trace-mapping@0.3.18:
494 | resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==}
495 | dependencies:
496 | '@jridgewell/resolve-uri': 3.1.0
497 | '@jridgewell/sourcemap-codec': 1.4.14
498 | dev: true
499 |
500 | /@tauri-apps/api@1.4.0:
501 | resolution: {integrity: sha512-Jd6HPoTM1PZSFIzq7FB8VmMu3qSSyo/3lSwLpoapW+lQ41CL5Dow2KryLg+gyazA/58DRWI9vu/XpEeHK4uMdw==}
502 | engines: {node: '>= 14.6.0', npm: '>= 6.6.0', yarn: '>= 1.19.1'}
503 | dev: false
504 |
505 | /@tauri-apps/cli-darwin-arm64@1.4.0:
506 | resolution: {integrity: sha512-nA/ml0SfUt6/CYLVbHmT500Y+ijqsuv5+s9EBnVXYSLVg9kbPUZJJHluEYK+xKuOj6xzyuT/+rZFMRapmJD3jQ==}
507 | engines: {node: '>= 10'}
508 | cpu: [arm64]
509 | os: [darwin]
510 | requiresBuild: true
511 | dev: true
512 | optional: true
513 |
514 | /@tauri-apps/cli-darwin-x64@1.4.0:
515 | resolution: {integrity: sha512-ov/F6Zr+dg9B0PtRu65stFo2G0ow2TUlneqYYrkj+vA3n+moWDHfVty0raDjMLQbQt3rv3uayFMXGPMgble9OA==}
516 | engines: {node: '>= 10'}
517 | cpu: [x64]
518 | os: [darwin]
519 | requiresBuild: true
520 | dev: true
521 | optional: true
522 |
523 | /@tauri-apps/cli-linux-arm-gnueabihf@1.4.0:
524 | resolution: {integrity: sha512-zwjbiMncycXDV7doovymyKD7sCg53ouAmfgpUqEBOTY3vgBi9TwijyPhJOqoG5vUVWhouNBC08akGmE4dja15g==}
525 | engines: {node: '>= 10'}
526 | cpu: [arm]
527 | os: [linux]
528 | requiresBuild: true
529 | dev: true
530 | optional: true
531 |
532 | /@tauri-apps/cli-linux-arm64-gnu@1.4.0:
533 | resolution: {integrity: sha512-5MCBcziqXC72mMXnkZU68mutXIR6zavDxopArE2gQtK841IlE06bIgtLi0kUUhlFJk2nhPRgiDgdLbrPlyt7fw==}
534 | engines: {node: '>= 10'}
535 | cpu: [arm64]
536 | os: [linux]
537 | requiresBuild: true
538 | dev: true
539 | optional: true
540 |
541 | /@tauri-apps/cli-linux-arm64-musl@1.4.0:
542 | resolution: {integrity: sha512-7J3pRB6n6uNYgIfCeKt2Oz8J7oSaz2s8GGFRRH2HPxuTHrBNCinzVYm68UhVpJrL3bnGkU0ziVZLsW/iaOGfUg==}
543 | engines: {node: '>= 10'}
544 | cpu: [arm64]
545 | os: [linux]
546 | requiresBuild: true
547 | dev: true
548 | optional: true
549 |
550 | /@tauri-apps/cli-linux-x64-gnu@1.4.0:
551 | resolution: {integrity: sha512-Zh5gfAJxOv5AVWxcwuueaQ2vIAhlg0d6nZui6nMyfIJ8dbf3aZQ5ZzP38sYow5h/fbvgL+3GSQxZRBIa3c2E1w==}
552 | engines: {node: '>= 10'}
553 | cpu: [x64]
554 | os: [linux]
555 | requiresBuild: true
556 | dev: true
557 | optional: true
558 |
559 | /@tauri-apps/cli-linux-x64-musl@1.4.0:
560 | resolution: {integrity: sha512-OLAYoICU3FaYiTdBsI+lQTKnDHeMmFMXIApN0M+xGiOkoIOQcV9CConMPjgmJQ867+NHRNgUGlvBEAh9CiJodQ==}
561 | engines: {node: '>= 10'}
562 | cpu: [x64]
563 | os: [linux]
564 | requiresBuild: true
565 | dev: true
566 | optional: true
567 |
568 | /@tauri-apps/cli-win32-arm64-msvc@1.4.0:
569 | resolution: {integrity: sha512-gZ05GENFbI6CB5MlOUsLlU0kZ9UtHn9riYtSXKT6MYs8HSPRffPHaHSL0WxsJweWh9nR5Hgh/TUU8uW3sYCzCg==}
570 | engines: {node: '>= 10'}
571 | cpu: [arm64]
572 | os: [win32]
573 | requiresBuild: true
574 | dev: true
575 | optional: true
576 |
577 | /@tauri-apps/cli-win32-ia32-msvc@1.4.0:
578 | resolution: {integrity: sha512-JsetT/lTx/Zq98eo8T5CiRyF1nKeX04RO8JlJrI3ZOYsZpp/A5RJvMd/szQ17iOzwiHdge+tx7k2jHysR6oBlQ==}
579 | engines: {node: '>= 10'}
580 | cpu: [ia32]
581 | os: [win32]
582 | requiresBuild: true
583 | dev: true
584 | optional: true
585 |
586 | /@tauri-apps/cli-win32-x64-msvc@1.4.0:
587 | resolution: {integrity: sha512-z8Olcnwp5aYhzqUAarFjqF+oELCjuYWnB2HAJHlfsYNfDCAORY5kct3Fklz8PSsubC3U2EugWn8n42DwnThurg==}
588 | engines: {node: '>= 10'}
589 | cpu: [x64]
590 | os: [win32]
591 | requiresBuild: true
592 | dev: true
593 | optional: true
594 |
595 | /@tauri-apps/cli@1.4.0:
596 | resolution: {integrity: sha512-VXYr2i2iVFl98etQSQsqLzXgX96bnWiNZd1YADgatqwy/qecbd6Kl5ZAPB5R4ynsgE8A1gU7Fbzh7dCEQYFfmA==}
597 | engines: {node: '>= 10'}
598 | hasBin: true
599 | optionalDependencies:
600 | '@tauri-apps/cli-darwin-arm64': 1.4.0
601 | '@tauri-apps/cli-darwin-x64': 1.4.0
602 | '@tauri-apps/cli-linux-arm-gnueabihf': 1.4.0
603 | '@tauri-apps/cli-linux-arm64-gnu': 1.4.0
604 | '@tauri-apps/cli-linux-arm64-musl': 1.4.0
605 | '@tauri-apps/cli-linux-x64-gnu': 1.4.0
606 | '@tauri-apps/cli-linux-x64-musl': 1.4.0
607 | '@tauri-apps/cli-win32-arm64-msvc': 1.4.0
608 | '@tauri-apps/cli-win32-ia32-msvc': 1.4.0
609 | '@tauri-apps/cli-win32-x64-msvc': 1.4.0
610 | dev: true
611 |
612 | /@types/node@20.4.4:
613 | resolution: {integrity: sha512-CukZhumInROvLq3+b5gLev+vgpsIqC2D0deQr/yS1WnxvmYLlJXZpaQrQiseMY+6xusl79E04UjWoqyr+t1/Ew==}
614 |
615 | /@types/prop-types@15.7.5:
616 | resolution: {integrity: sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==}
617 | dev: true
618 |
619 | /@types/react-dom@18.2.7:
620 | resolution: {integrity: sha512-GRaAEriuT4zp9N4p1i8BDBYmEyfo+xQ3yHjJU4eiK5NDa1RmUZG+unZABUTK4/Ox/M+GaHwb6Ow8rUITrtjszA==}
621 | dependencies:
622 | '@types/react': 18.2.15
623 | dev: true
624 |
625 | /@types/react@18.2.15:
626 | resolution: {integrity: sha512-oEjE7TQt1fFTFSbf8kkNuc798ahTUzn3Le67/PWjE8MAfYAD/qB7O8hSTcromLFqHCt9bcdOg5GXMokzTjJ5SA==}
627 | dependencies:
628 | '@types/prop-types': 15.7.5
629 | '@types/scheduler': 0.16.3
630 | csstype: 3.1.2
631 | dev: true
632 |
633 | /@types/scheduler@0.16.3:
634 | resolution: {integrity: sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==}
635 | dev: true
636 |
637 | /@vitejs/plugin-react@4.0.3(vite@4.4.4):
638 | resolution: {integrity: sha512-pwXDog5nwwvSIzwrvYYmA2Ljcd/ZNlcsSG2Q9CNDBwnsd55UGAyr2doXtB5j+2uymRCnCfExlznzzSFbBRcoCg==}
639 | engines: {node: ^14.18.0 || >=16.0.0}
640 | peerDependencies:
641 | vite: ^4.2.0
642 | dependencies:
643 | '@babel/core': 7.22.9
644 | '@babel/plugin-transform-react-jsx-self': 7.22.5(@babel/core@7.22.9)
645 | '@babel/plugin-transform-react-jsx-source': 7.22.5(@babel/core@7.22.9)
646 | react-refresh: 0.14.0
647 | vite: 4.4.4(@types/node@20.4.4)
648 | transitivePeerDependencies:
649 | - supports-color
650 | dev: true
651 |
652 | /ansi-styles@3.2.1:
653 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
654 | engines: {node: '>=4'}
655 | dependencies:
656 | color-convert: 1.9.3
657 | dev: true
658 |
659 | /browserslist@4.21.9:
660 | resolution: {integrity: sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==}
661 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
662 | hasBin: true
663 | dependencies:
664 | caniuse-lite: 1.0.30001517
665 | electron-to-chromium: 1.4.468
666 | node-releases: 2.0.13
667 | update-browserslist-db: 1.0.11(browserslist@4.21.9)
668 | dev: true
669 |
670 | /caniuse-lite@1.0.30001517:
671 | resolution: {integrity: sha512-Vdhm5S11DaFVLlyiKu4hiUTkpZu+y1KA/rZZqVQfOD5YdDT/eQKlkt7NaE0WGOFgX32diqt9MiP9CAiFeRklaA==}
672 | dev: true
673 |
674 | /chalk@2.4.2:
675 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
676 | engines: {node: '>=4'}
677 | dependencies:
678 | ansi-styles: 3.2.1
679 | escape-string-regexp: 1.0.5
680 | supports-color: 5.5.0
681 | dev: true
682 |
683 | /color-convert@1.9.3:
684 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
685 | dependencies:
686 | color-name: 1.1.3
687 | dev: true
688 |
689 | /color-name@1.1.3:
690 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
691 | dev: true
692 |
693 | /convert-source-map@1.9.0:
694 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
695 | dev: true
696 |
697 | /csstype@3.1.2:
698 | resolution: {integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==}
699 | dev: true
700 |
701 | /debug@4.3.4:
702 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
703 | engines: {node: '>=6.0'}
704 | peerDependencies:
705 | supports-color: '*'
706 | peerDependenciesMeta:
707 | supports-color:
708 | optional: true
709 | dependencies:
710 | ms: 2.1.2
711 | dev: true
712 |
713 | /electron-to-chromium@1.4.468:
714 | resolution: {integrity: sha512-6M1qyhaJOt7rQtNti1lBA0GwclPH+oKCmsra/hkcWs5INLxfXXD/dtdnaKUYQu/pjOBP/8Osoe4mAcNvvzoFag==}
715 | dev: true
716 |
717 | /esbuild@0.18.16:
718 | resolution: {integrity: sha512-1xLsOXrDqwdHxyXb/x/SOyg59jpf/SH7YMvU5RNSU7z3TInaASNJWNFJ6iRvLvLETZMasF3d1DdZLg7sgRimRQ==}
719 | engines: {node: '>=12'}
720 | hasBin: true
721 | requiresBuild: true
722 | optionalDependencies:
723 | '@esbuild/android-arm': 0.18.16
724 | '@esbuild/android-arm64': 0.18.16
725 | '@esbuild/android-x64': 0.18.16
726 | '@esbuild/darwin-arm64': 0.18.16
727 | '@esbuild/darwin-x64': 0.18.16
728 | '@esbuild/freebsd-arm64': 0.18.16
729 | '@esbuild/freebsd-x64': 0.18.16
730 | '@esbuild/linux-arm': 0.18.16
731 | '@esbuild/linux-arm64': 0.18.16
732 | '@esbuild/linux-ia32': 0.18.16
733 | '@esbuild/linux-loong64': 0.18.16
734 | '@esbuild/linux-mips64el': 0.18.16
735 | '@esbuild/linux-ppc64': 0.18.16
736 | '@esbuild/linux-riscv64': 0.18.16
737 | '@esbuild/linux-s390x': 0.18.16
738 | '@esbuild/linux-x64': 0.18.16
739 | '@esbuild/netbsd-x64': 0.18.16
740 | '@esbuild/openbsd-x64': 0.18.16
741 | '@esbuild/sunos-x64': 0.18.16
742 | '@esbuild/win32-arm64': 0.18.16
743 | '@esbuild/win32-ia32': 0.18.16
744 | '@esbuild/win32-x64': 0.18.16
745 | dev: true
746 |
747 | /escalade@3.1.1:
748 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
749 | engines: {node: '>=6'}
750 | dev: true
751 |
752 | /escape-string-regexp@1.0.5:
753 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
754 | engines: {node: '>=0.8.0'}
755 | dev: true
756 |
757 | /fsevents@2.3.2:
758 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
759 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
760 | os: [darwin]
761 | requiresBuild: true
762 | dev: true
763 | optional: true
764 |
765 | /gensync@1.0.0-beta.2:
766 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
767 | engines: {node: '>=6.9.0'}
768 | dev: true
769 |
770 | /globals@11.12.0:
771 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
772 | engines: {node: '>=4'}
773 | dev: true
774 |
775 | /has-flag@3.0.0:
776 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
777 | engines: {node: '>=4'}
778 | dev: true
779 |
780 | /js-tokens@4.0.0:
781 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
782 |
783 | /jsesc@2.5.2:
784 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
785 | engines: {node: '>=4'}
786 | hasBin: true
787 | dev: true
788 |
789 | /json5@2.2.3:
790 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
791 | engines: {node: '>=6'}
792 | hasBin: true
793 | dev: true
794 |
795 | /loose-envify@1.4.0:
796 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
797 | hasBin: true
798 | dependencies:
799 | js-tokens: 4.0.0
800 | dev: false
801 |
802 | /lru-cache@5.1.1:
803 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
804 | dependencies:
805 | yallist: 3.1.1
806 | dev: true
807 |
808 | /ms@2.1.2:
809 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
810 | dev: true
811 |
812 | /nanoid@3.3.6:
813 | resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==}
814 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
815 | hasBin: true
816 | dev: true
817 |
818 | /node-releases@2.0.13:
819 | resolution: {integrity: sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==}
820 | dev: true
821 |
822 | /picocolors@1.0.0:
823 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
824 | dev: true
825 |
826 | /postcss@8.4.27:
827 | resolution: {integrity: sha512-gY/ACJtJPSmUFPDCHtX78+01fHa64FaU4zaaWfuh1MhGJISufJAH4cun6k/8fwsHYeK4UQmENQK+tRLCFJE8JQ==}
828 | engines: {node: ^10 || ^12 || >=14}
829 | dependencies:
830 | nanoid: 3.3.6
831 | picocolors: 1.0.0
832 | source-map-js: 1.0.2
833 | dev: true
834 |
835 | /react-dom@18.2.0(react@18.2.0):
836 | resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==}
837 | peerDependencies:
838 | react: ^18.2.0
839 | dependencies:
840 | loose-envify: 1.4.0
841 | react: 18.2.0
842 | scheduler: 0.23.0
843 | dev: false
844 |
845 | /react-refresh@0.14.0:
846 | resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==}
847 | engines: {node: '>=0.10.0'}
848 | dev: true
849 |
850 | /react@18.2.0:
851 | resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==}
852 | engines: {node: '>=0.10.0'}
853 | dependencies:
854 | loose-envify: 1.4.0
855 | dev: false
856 |
857 | /rollup@3.26.3:
858 | resolution: {integrity: sha512-7Tin0C8l86TkpcMtXvQu6saWH93nhG3dGQ1/+l5V2TDMceTxO7kDiK6GzbfLWNNxqJXm591PcEZUozZm51ogwQ==}
859 | engines: {node: '>=14.18.0', npm: '>=8.0.0'}
860 | hasBin: true
861 | optionalDependencies:
862 | fsevents: 2.3.2
863 | dev: true
864 |
865 | /scheduler@0.23.0:
866 | resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==}
867 | dependencies:
868 | loose-envify: 1.4.0
869 | dev: false
870 |
871 | /semver@6.3.1:
872 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
873 | hasBin: true
874 | dev: true
875 |
876 | /source-map-js@1.0.2:
877 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==}
878 | engines: {node: '>=0.10.0'}
879 | dev: true
880 |
881 | /supports-color@5.5.0:
882 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
883 | engines: {node: '>=4'}
884 | dependencies:
885 | has-flag: 3.0.0
886 | dev: true
887 |
888 | /to-fast-properties@2.0.0:
889 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
890 | engines: {node: '>=4'}
891 | dev: true
892 |
893 | /typescript@5.0.2:
894 | resolution: {integrity: sha512-wVORMBGO/FAs/++blGNeAVdbNKtIh1rbBL2EyQ1+J9lClJ93KiiKe8PmFIVdXhHcyv44SL9oglmfeSsndo0jRw==}
895 | engines: {node: '>=12.20'}
896 | hasBin: true
897 | dev: true
898 |
899 | /update-browserslist-db@1.0.11(browserslist@4.21.9):
900 | resolution: {integrity: sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==}
901 | hasBin: true
902 | peerDependencies:
903 | browserslist: '>= 4.21.0'
904 | dependencies:
905 | browserslist: 4.21.9
906 | escalade: 3.1.1
907 | picocolors: 1.0.0
908 | dev: true
909 |
910 | /use-sync-external-store@1.2.0(react@18.2.0):
911 | resolution: {integrity: sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==}
912 | peerDependencies:
913 | react: ^16.8.0 || ^17.0.0 || ^18.0.0
914 | dependencies:
915 | react: 18.2.0
916 | dev: false
917 |
918 | /vite@4.4.4(@types/node@20.4.4):
919 | resolution: {integrity: sha512-4mvsTxjkveWrKDJI70QmelfVqTm+ihFAb6+xf4sjEU2TmUCTlVX87tmg/QooPEMQb/lM9qGHT99ebqPziEd3wg==}
920 | engines: {node: ^14.18.0 || >=16.0.0}
921 | hasBin: true
922 | peerDependencies:
923 | '@types/node': '>= 14'
924 | less: '*'
925 | lightningcss: ^1.21.0
926 | sass: '*'
927 | stylus: '*'
928 | sugarss: '*'
929 | terser: ^5.4.0
930 | peerDependenciesMeta:
931 | '@types/node':
932 | optional: true
933 | less:
934 | optional: true
935 | lightningcss:
936 | optional: true
937 | sass:
938 | optional: true
939 | stylus:
940 | optional: true
941 | sugarss:
942 | optional: true
943 | terser:
944 | optional: true
945 | dependencies:
946 | '@types/node': 20.4.4
947 | esbuild: 0.18.16
948 | postcss: 8.4.27
949 | rollup: 3.26.3
950 | optionalDependencies:
951 | fsevents: 2.3.2
952 | dev: true
953 |
954 | /yallist@3.1.1:
955 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
956 | dev: true
957 |
958 | /zustand@4.3.9(react@18.2.0):
959 | resolution: {integrity: sha512-Tat5r8jOMG1Vcsj8uldMyqYKC5IZvQif8zetmLHs9WoZlntTHmIoNM8TpLRY31ExncuUvUOXehd0kvahkuHjDw==}
960 | engines: {node: '>=12.7.0'}
961 | peerDependencies:
962 | immer: '>=9.0'
963 | react: '>=16.8'
964 | peerDependenciesMeta:
965 | immer:
966 | optional: true
967 | react:
968 | optional: true
969 | dependencies:
970 | react: 18.2.0
971 | use-sync-external-store: 1.2.0(react@18.2.0)
972 | dev: false
973 |
--------------------------------------------------------------------------------
/public/tauri.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/public/vite.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/scripts/generate-macros.py:
--------------------------------------------------------------------------------
1 | import re
2 | inputDirectory = 'src/constants/'
3 | outputDirectory = 'src-tauri/src/autogen/'
4 | inputFileList = ['events.ts', 'global.ts']
5 | outputFile = 'constants.rs'
6 |
7 | finalOutput = '#![allow(non_camel_case_types)]\n\n// Autogenerated file do not edit !!!!!\n\n'
8 |
9 | expressionList = {
10 | # 'enum': r"(enum\s+\w+\s+\{[^}]*\})",
11 | # 'const': "(const.*?})"
12 | 'enum': r"enum (\w+) \{([^}]+)\}",
13 | 'const': r"const (\w+): \{([^}]+)\} = \{([^}]+)\};"
14 | }
15 |
16 | def enumParse(matches):
17 | rust_code = ""
18 | for enum_name, enum_body in matches:
19 | enum_items = [item.strip() for item in enum_body.split(",") if item.strip()]
20 | rust_code += f"pub enum {enum_name} {{\n"
21 | for i, item in enumerate(enum_items):
22 | rust_code += f" {item.split('=')[0].strip()} = {i},\n"
23 | rust_code += "}\n\n"
24 |
25 | # Implement From for the enum
26 | rust_code += f"impl From for {enum_name} {{\n"
27 | rust_code += " fn from(item: u32) -> Self {\n"
28 | rust_code += " match item {\n"
29 | for i, item in enumerate(enum_items):
30 | rust_code += f" {i} => {enum_name}::{item.split('=')[0].strip()},\n"
31 | rust_code += f" _ => panic!(\"Not a valid value for the enum {enum_name}\"),\n"
32 | rust_code += " }\n"
33 | rust_code += " }\n"
34 | rust_code += "}\n\n"
35 |
36 | # Implement Into for the enum
37 | rust_code += f"impl Into for {enum_name} {{\n"
38 | rust_code += " fn into(self) -> u32 {\n"
39 | rust_code += " match self {\n"
40 | for i, item in enumerate(enum_items):
41 | rust_code += f" {enum_name}::{item.split('=')[0].strip()} => {i},\n"
42 | rust_code += " }\n"
43 | rust_code += " }\n"
44 | rust_code += "}\n\n"
45 |
46 | return rust_code
47 |
48 | def constParse(matches):
49 | rust_code = ""
50 | for match in matches:
51 | const_name, const_types, const_values = match
52 | types = re.findall(r"(\w+): (\w+);", const_types)
53 | values = re.findall(r"(\w+): \"?([^\",]+)\"?,?", const_values)
54 |
55 | for (name, _type), (_, value) in zip(types, values):
56 | rust_type = {
57 | "string": "&str",
58 | "bool": "bool",
59 | "number": "i32",
60 | }.get(_type, "&str") # Default to &str if type is not recognized
61 |
62 | rust_code += f"pub const {name.upper()}: {rust_type} = "
63 | if rust_type == "&str":
64 | rust_code += f"\"{value}\";\n"
65 | else:
66 | rust_code += f"{value};\n"
67 |
68 | return rust_code
69 |
70 |
71 | for inputFile in inputFileList:
72 | with open(inputDirectory+inputFile, 'r') as file:
73 | contents = file.read()
74 | for key in expressionList:
75 | matches = re.findall(expressionList[key], contents)
76 | if key == 'enum':
77 | finalOutput += enumParse(matches)
78 | if key == 'const':
79 | finalOutput += constParse(matches)
80 |
81 | print(finalOutput)
82 |
83 | with open(outputDirectory+outputFile, 'w') as file:
84 | file.write(finalOutput)
85 |
--------------------------------------------------------------------------------
/src-tauri/.gitignore:
--------------------------------------------------------------------------------
1 | # Generated by Cargo
2 | # will have compiled files and executables
3 | /target/
4 |
5 |
--------------------------------------------------------------------------------
/src-tauri/Cargo.lock:
--------------------------------------------------------------------------------
1 | # This file is automatically @generated by Cargo.
2 | # It is not intended for manual editing.
3 | version = 3
4 |
5 | [[package]]
6 | name = "addr2line"
7 | version = "0.20.0"
8 | source = "registry+https://github.com/rust-lang/crates.io-index"
9 | checksum = "f4fa78e18c64fce05e902adecd7a5eed15a5e0a3439f7b0e169f0252214865e3"
10 | dependencies = [
11 | "gimli",
12 | ]
13 |
14 | [[package]]
15 | name = "adler"
16 | version = "1.0.2"
17 | source = "registry+https://github.com/rust-lang/crates.io-index"
18 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe"
19 |
20 | [[package]]
21 | name = "aho-corasick"
22 | version = "1.0.2"
23 | source = "registry+https://github.com/rust-lang/crates.io-index"
24 | checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41"
25 | dependencies = [
26 | "memchr",
27 | ]
28 |
29 | [[package]]
30 | name = "alloc-no-stdlib"
31 | version = "2.0.4"
32 | source = "registry+https://github.com/rust-lang/crates.io-index"
33 | checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3"
34 |
35 | [[package]]
36 | name = "alloc-stdlib"
37 | version = "0.2.2"
38 | source = "registry+https://github.com/rust-lang/crates.io-index"
39 | checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece"
40 | dependencies = [
41 | "alloc-no-stdlib",
42 | ]
43 |
44 | [[package]]
45 | name = "android-tzdata"
46 | version = "0.1.1"
47 | source = "registry+https://github.com/rust-lang/crates.io-index"
48 | checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0"
49 |
50 | [[package]]
51 | name = "android_system_properties"
52 | version = "0.1.5"
53 | source = "registry+https://github.com/rust-lang/crates.io-index"
54 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
55 | dependencies = [
56 | "libc",
57 | ]
58 |
59 | [[package]]
60 | name = "anyhow"
61 | version = "1.0.72"
62 | source = "registry+https://github.com/rust-lang/crates.io-index"
63 | checksum = "3b13c32d80ecc7ab747b80c3784bce54ee8a7a0cc4fbda9bf4cda2cf6fe90854"
64 |
65 | [[package]]
66 | name = "atk"
67 | version = "0.15.1"
68 | source = "registry+https://github.com/rust-lang/crates.io-index"
69 | checksum = "2c3d816ce6f0e2909a96830d6911c2aff044370b1ef92d7f267b43bae5addedd"
70 | dependencies = [
71 | "atk-sys",
72 | "bitflags 1.3.2",
73 | "glib",
74 | "libc",
75 | ]
76 |
77 | [[package]]
78 | name = "atk-sys"
79 | version = "0.15.1"
80 | source = "registry+https://github.com/rust-lang/crates.io-index"
81 | checksum = "58aeb089fb698e06db8089971c7ee317ab9644bade33383f63631437b03aafb6"
82 | dependencies = [
83 | "glib-sys",
84 | "gobject-sys",
85 | "libc",
86 | "system-deps 6.1.1",
87 | ]
88 |
89 | [[package]]
90 | name = "autocfg"
91 | version = "1.1.0"
92 | source = "registry+https://github.com/rust-lang/crates.io-index"
93 | checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa"
94 |
95 | [[package]]
96 | name = "backtrace"
97 | version = "0.3.68"
98 | source = "registry+https://github.com/rust-lang/crates.io-index"
99 | checksum = "4319208da049c43661739c5fade2ba182f09d1dc2299b32298d3a31692b17e12"
100 | dependencies = [
101 | "addr2line",
102 | "cc",
103 | "cfg-if",
104 | "libc",
105 | "miniz_oxide",
106 | "object",
107 | "rustc-demangle",
108 | ]
109 |
110 | [[package]]
111 | name = "base64"
112 | version = "0.13.1"
113 | source = "registry+https://github.com/rust-lang/crates.io-index"
114 | checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
115 |
116 | [[package]]
117 | name = "base64"
118 | version = "0.21.2"
119 | source = "registry+https://github.com/rust-lang/crates.io-index"
120 | checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d"
121 |
122 | [[package]]
123 | name = "bitflags"
124 | version = "1.3.2"
125 | source = "registry+https://github.com/rust-lang/crates.io-index"
126 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
127 |
128 | [[package]]
129 | name = "bitflags"
130 | version = "2.3.3"
131 | source = "registry+https://github.com/rust-lang/crates.io-index"
132 | checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
133 |
134 | [[package]]
135 | name = "block"
136 | version = "0.1.6"
137 | source = "registry+https://github.com/rust-lang/crates.io-index"
138 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
139 |
140 | [[package]]
141 | name = "block-buffer"
142 | version = "0.10.4"
143 | source = "registry+https://github.com/rust-lang/crates.io-index"
144 | checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
145 | dependencies = [
146 | "generic-array",
147 | ]
148 |
149 | [[package]]
150 | name = "brotli"
151 | version = "3.3.4"
152 | source = "registry+https://github.com/rust-lang/crates.io-index"
153 | checksum = "a1a0b1dbcc8ae29329621f8d4f0d835787c1c38bb1401979b49d13b0b305ff68"
154 | dependencies = [
155 | "alloc-no-stdlib",
156 | "alloc-stdlib",
157 | "brotli-decompressor",
158 | ]
159 |
160 | [[package]]
161 | name = "brotli-decompressor"
162 | version = "2.3.4"
163 | source = "registry+https://github.com/rust-lang/crates.io-index"
164 | checksum = "4b6561fd3f895a11e8f72af2cb7d22e08366bebc2b6b57f7744c4bda27034744"
165 | dependencies = [
166 | "alloc-no-stdlib",
167 | "alloc-stdlib",
168 | ]
169 |
170 | [[package]]
171 | name = "bstr"
172 | version = "1.6.0"
173 | source = "registry+https://github.com/rust-lang/crates.io-index"
174 | checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
175 | dependencies = [
176 | "memchr",
177 | "serde",
178 | ]
179 |
180 | [[package]]
181 | name = "bumpalo"
182 | version = "3.13.0"
183 | source = "registry+https://github.com/rust-lang/crates.io-index"
184 | checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1"
185 |
186 | [[package]]
187 | name = "bytemuck"
188 | version = "1.13.1"
189 | source = "registry+https://github.com/rust-lang/crates.io-index"
190 | checksum = "17febce684fd15d89027105661fec94afb475cb995fbc59d2865198446ba2eea"
191 |
192 | [[package]]
193 | name = "byteorder"
194 | version = "1.4.3"
195 | source = "registry+https://github.com/rust-lang/crates.io-index"
196 | checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
197 |
198 | [[package]]
199 | name = "bytes"
200 | version = "1.4.0"
201 | source = "registry+https://github.com/rust-lang/crates.io-index"
202 | checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
203 |
204 | [[package]]
205 | name = "cairo-rs"
206 | version = "0.15.12"
207 | source = "registry+https://github.com/rust-lang/crates.io-index"
208 | checksum = "c76ee391b03d35510d9fa917357c7f1855bd9a6659c95a1b392e33f49b3369bc"
209 | dependencies = [
210 | "bitflags 1.3.2",
211 | "cairo-sys-rs",
212 | "glib",
213 | "libc",
214 | "thiserror",
215 | ]
216 |
217 | [[package]]
218 | name = "cairo-sys-rs"
219 | version = "0.15.1"
220 | source = "registry+https://github.com/rust-lang/crates.io-index"
221 | checksum = "3c55d429bef56ac9172d25fecb85dc8068307d17acd74b377866b7a1ef25d3c8"
222 | dependencies = [
223 | "glib-sys",
224 | "libc",
225 | "system-deps 6.1.1",
226 | ]
227 |
228 | [[package]]
229 | name = "cargo_toml"
230 | version = "0.15.3"
231 | source = "registry+https://github.com/rust-lang/crates.io-index"
232 | checksum = "599aa35200ffff8f04c1925aa1acc92fa2e08874379ef42e210a80e527e60838"
233 | dependencies = [
234 | "serde",
235 | "toml 0.7.6",
236 | ]
237 |
238 | [[package]]
239 | name = "cc"
240 | version = "1.0.79"
241 | source = "registry+https://github.com/rust-lang/crates.io-index"
242 | checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
243 |
244 | [[package]]
245 | name = "cesu8"
246 | version = "1.1.0"
247 | source = "registry+https://github.com/rust-lang/crates.io-index"
248 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
249 |
250 | [[package]]
251 | name = "cfb"
252 | version = "0.7.3"
253 | source = "registry+https://github.com/rust-lang/crates.io-index"
254 | checksum = "d38f2da7a0a2c4ccf0065be06397cc26a81f4e528be095826eee9d4adbb8c60f"
255 | dependencies = [
256 | "byteorder",
257 | "fnv",
258 | "uuid",
259 | ]
260 |
261 | [[package]]
262 | name = "cfg-expr"
263 | version = "0.9.1"
264 | source = "registry+https://github.com/rust-lang/crates.io-index"
265 | checksum = "3431df59f28accaf4cb4eed4a9acc66bea3f3c3753aa6cdc2f024174ef232af7"
266 | dependencies = [
267 | "smallvec",
268 | ]
269 |
270 | [[package]]
271 | name = "cfg-expr"
272 | version = "0.15.3"
273 | source = "registry+https://github.com/rust-lang/crates.io-index"
274 | checksum = "215c0072ecc28f92eeb0eea38ba63ddfcb65c2828c46311d646f1a3ff5f9841c"
275 | dependencies = [
276 | "smallvec",
277 | "target-lexicon",
278 | ]
279 |
280 | [[package]]
281 | name = "cfg-if"
282 | version = "1.0.0"
283 | source = "registry+https://github.com/rust-lang/crates.io-index"
284 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
285 |
286 | [[package]]
287 | name = "chrono"
288 | version = "0.4.26"
289 | source = "registry+https://github.com/rust-lang/crates.io-index"
290 | checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5"
291 | dependencies = [
292 | "android-tzdata",
293 | "iana-time-zone",
294 | "num-traits",
295 | "serde",
296 | "winapi",
297 | ]
298 |
299 | [[package]]
300 | name = "cocoa"
301 | version = "0.24.1"
302 | source = "registry+https://github.com/rust-lang/crates.io-index"
303 | checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a"
304 | dependencies = [
305 | "bitflags 1.3.2",
306 | "block",
307 | "cocoa-foundation",
308 | "core-foundation",
309 | "core-graphics",
310 | "foreign-types",
311 | "libc",
312 | "objc",
313 | ]
314 |
315 | [[package]]
316 | name = "cocoa-foundation"
317 | version = "0.1.1"
318 | source = "registry+https://github.com/rust-lang/crates.io-index"
319 | checksum = "931d3837c286f56e3c58423ce4eba12d08db2374461a785c86f672b08b5650d6"
320 | dependencies = [
321 | "bitflags 1.3.2",
322 | "block",
323 | "core-foundation",
324 | "core-graphics-types",
325 | "foreign-types",
326 | "libc",
327 | "objc",
328 | ]
329 |
330 | [[package]]
331 | name = "color_quant"
332 | version = "1.1.0"
333 | source = "registry+https://github.com/rust-lang/crates.io-index"
334 | checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
335 |
336 | [[package]]
337 | name = "combine"
338 | version = "4.6.6"
339 | source = "registry+https://github.com/rust-lang/crates.io-index"
340 | checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4"
341 | dependencies = [
342 | "bytes",
343 | "memchr",
344 | ]
345 |
346 | [[package]]
347 | name = "convert_case"
348 | version = "0.4.0"
349 | source = "registry+https://github.com/rust-lang/crates.io-index"
350 | checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e"
351 |
352 | [[package]]
353 | name = "core-foundation"
354 | version = "0.9.3"
355 | source = "registry+https://github.com/rust-lang/crates.io-index"
356 | checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
357 | dependencies = [
358 | "core-foundation-sys",
359 | "libc",
360 | ]
361 |
362 | [[package]]
363 | name = "core-foundation-sys"
364 | version = "0.8.4"
365 | source = "registry+https://github.com/rust-lang/crates.io-index"
366 | checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
367 |
368 | [[package]]
369 | name = "core-graphics"
370 | version = "0.22.3"
371 | source = "registry+https://github.com/rust-lang/crates.io-index"
372 | checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb"
373 | dependencies = [
374 | "bitflags 1.3.2",
375 | "core-foundation",
376 | "core-graphics-types",
377 | "foreign-types",
378 | "libc",
379 | ]
380 |
381 | [[package]]
382 | name = "core-graphics-types"
383 | version = "0.1.2"
384 | source = "registry+https://github.com/rust-lang/crates.io-index"
385 | checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33"
386 | dependencies = [
387 | "bitflags 1.3.2",
388 | "core-foundation",
389 | "libc",
390 | ]
391 |
392 | [[package]]
393 | name = "cpufeatures"
394 | version = "0.2.9"
395 | source = "registry+https://github.com/rust-lang/crates.io-index"
396 | checksum = "a17b76ff3a4162b0b27f354a0c87015ddad39d35f9c0c36607a3bdd175dde1f1"
397 | dependencies = [
398 | "libc",
399 | ]
400 |
401 | [[package]]
402 | name = "crc32fast"
403 | version = "1.3.2"
404 | source = "registry+https://github.com/rust-lang/crates.io-index"
405 | checksum = "b540bd8bc810d3885c6ea91e2018302f68baba2129ab3e88f32389ee9370880d"
406 | dependencies = [
407 | "cfg-if",
408 | ]
409 |
410 | [[package]]
411 | name = "crossbeam-channel"
412 | version = "0.5.8"
413 | source = "registry+https://github.com/rust-lang/crates.io-index"
414 | checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
415 | dependencies = [
416 | "cfg-if",
417 | "crossbeam-utils",
418 | ]
419 |
420 | [[package]]
421 | name = "crossbeam-utils"
422 | version = "0.8.16"
423 | source = "registry+https://github.com/rust-lang/crates.io-index"
424 | checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294"
425 | dependencies = [
426 | "cfg-if",
427 | ]
428 |
429 | [[package]]
430 | name = "crypto-common"
431 | version = "0.1.6"
432 | source = "registry+https://github.com/rust-lang/crates.io-index"
433 | checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"
434 | dependencies = [
435 | "generic-array",
436 | "typenum",
437 | ]
438 |
439 | [[package]]
440 | name = "cssparser"
441 | version = "0.27.2"
442 | source = "registry+https://github.com/rust-lang/crates.io-index"
443 | checksum = "754b69d351cdc2d8ee09ae203db831e005560fc6030da058f86ad60c92a9cb0a"
444 | dependencies = [
445 | "cssparser-macros",
446 | "dtoa-short",
447 | "itoa 0.4.8",
448 | "matches",
449 | "phf 0.8.0",
450 | "proc-macro2",
451 | "quote",
452 | "smallvec",
453 | "syn 1.0.109",
454 | ]
455 |
456 | [[package]]
457 | name = "cssparser-macros"
458 | version = "0.6.1"
459 | source = "registry+https://github.com/rust-lang/crates.io-index"
460 | checksum = "13b588ba4ac1a99f7f2964d24b3d896ddc6bf847ee3855dbd4366f058cfcd331"
461 | dependencies = [
462 | "quote",
463 | "syn 2.0.27",
464 | ]
465 |
466 | [[package]]
467 | name = "ctor"
468 | version = "0.1.26"
469 | source = "registry+https://github.com/rust-lang/crates.io-index"
470 | checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
471 | dependencies = [
472 | "quote",
473 | "syn 1.0.109",
474 | ]
475 |
476 | [[package]]
477 | name = "darling"
478 | version = "0.20.3"
479 | source = "registry+https://github.com/rust-lang/crates.io-index"
480 | checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e"
481 | dependencies = [
482 | "darling_core",
483 | "darling_macro",
484 | ]
485 |
486 | [[package]]
487 | name = "darling_core"
488 | version = "0.20.3"
489 | source = "registry+https://github.com/rust-lang/crates.io-index"
490 | checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621"
491 | dependencies = [
492 | "fnv",
493 | "ident_case",
494 | "proc-macro2",
495 | "quote",
496 | "strsim",
497 | "syn 2.0.27",
498 | ]
499 |
500 | [[package]]
501 | name = "darling_macro"
502 | version = "0.20.3"
503 | source = "registry+https://github.com/rust-lang/crates.io-index"
504 | checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5"
505 | dependencies = [
506 | "darling_core",
507 | "quote",
508 | "syn 2.0.27",
509 | ]
510 |
511 | [[package]]
512 | name = "derive_more"
513 | version = "0.99.17"
514 | source = "registry+https://github.com/rust-lang/crates.io-index"
515 | checksum = "4fb810d30a7c1953f91334de7244731fc3f3c10d7fe163338a35b9f640960321"
516 | dependencies = [
517 | "convert_case",
518 | "proc-macro2",
519 | "quote",
520 | "rustc_version",
521 | "syn 1.0.109",
522 | ]
523 |
524 | [[package]]
525 | name = "digest"
526 | version = "0.10.7"
527 | source = "registry+https://github.com/rust-lang/crates.io-index"
528 | checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
529 | dependencies = [
530 | "block-buffer",
531 | "crypto-common",
532 | ]
533 |
534 | [[package]]
535 | name = "dirs-next"
536 | version = "2.0.0"
537 | source = "registry+https://github.com/rust-lang/crates.io-index"
538 | checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
539 | dependencies = [
540 | "cfg-if",
541 | "dirs-sys-next",
542 | ]
543 |
544 | [[package]]
545 | name = "dirs-sys-next"
546 | version = "0.1.2"
547 | source = "registry+https://github.com/rust-lang/crates.io-index"
548 | checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
549 | dependencies = [
550 | "libc",
551 | "redox_users",
552 | "winapi",
553 | ]
554 |
555 | [[package]]
556 | name = "dispatch"
557 | version = "0.2.0"
558 | source = "registry+https://github.com/rust-lang/crates.io-index"
559 | checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
560 |
561 | [[package]]
562 | name = "dtoa"
563 | version = "1.0.9"
564 | source = "registry+https://github.com/rust-lang/crates.io-index"
565 | checksum = "dcbb2bf8e87535c23f7a8a321e364ce21462d0ff10cb6407820e8e96dfff6653"
566 |
567 | [[package]]
568 | name = "dtoa-short"
569 | version = "0.3.4"
570 | source = "registry+https://github.com/rust-lang/crates.io-index"
571 | checksum = "dbaceec3c6e4211c79e7b1800fb9680527106beb2f9c51904a3210c03a448c74"
572 | dependencies = [
573 | "dtoa",
574 | ]
575 |
576 | [[package]]
577 | name = "dunce"
578 | version = "1.0.4"
579 | source = "registry+https://github.com/rust-lang/crates.io-index"
580 | checksum = "56ce8c6da7551ec6c462cbaf3bfbc75131ebbfa1c944aeaa9dab51ca1c5f0c3b"
581 |
582 | [[package]]
583 | name = "embed-resource"
584 | version = "2.2.0"
585 | source = "registry+https://github.com/rust-lang/crates.io-index"
586 | checksum = "f7f1e82a60222fc67bfd50d752a9c89da5cce4c39ed39decc84a443b07bbd69a"
587 | dependencies = [
588 | "cc",
589 | "rustc_version",
590 | "toml 0.7.6",
591 | "vswhom",
592 | "winreg",
593 | ]
594 |
595 | [[package]]
596 | name = "embed_plist"
597 | version = "1.2.2"
598 | source = "registry+https://github.com/rust-lang/crates.io-index"
599 | checksum = "4ef6b89e5b37196644d8796de5268852ff179b44e96276cf4290264843743bb7"
600 |
601 | [[package]]
602 | name = "encoding_rs"
603 | version = "0.8.32"
604 | source = "registry+https://github.com/rust-lang/crates.io-index"
605 | checksum = "071a31f4ee85403370b58aca746f01041ede6f0da2730960ad001edc2b71b394"
606 | dependencies = [
607 | "cfg-if",
608 | ]
609 |
610 | [[package]]
611 | name = "equivalent"
612 | version = "1.0.1"
613 | source = "registry+https://github.com/rust-lang/crates.io-index"
614 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
615 |
616 | [[package]]
617 | name = "errno"
618 | version = "0.3.1"
619 | source = "registry+https://github.com/rust-lang/crates.io-index"
620 | checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a"
621 | dependencies = [
622 | "errno-dragonfly",
623 | "libc",
624 | "windows-sys 0.48.0",
625 | ]
626 |
627 | [[package]]
628 | name = "errno-dragonfly"
629 | version = "0.1.2"
630 | source = "registry+https://github.com/rust-lang/crates.io-index"
631 | checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf"
632 | dependencies = [
633 | "cc",
634 | "libc",
635 | ]
636 |
637 | [[package]]
638 | name = "fastrand"
639 | version = "2.0.0"
640 | source = "registry+https://github.com/rust-lang/crates.io-index"
641 | checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764"
642 |
643 | [[package]]
644 | name = "fdeflate"
645 | version = "0.3.0"
646 | source = "registry+https://github.com/rust-lang/crates.io-index"
647 | checksum = "d329bdeac514ee06249dabc27877490f17f5d371ec693360768b838e19f3ae10"
648 | dependencies = [
649 | "simd-adler32",
650 | ]
651 |
652 | [[package]]
653 | name = "field-offset"
654 | version = "0.3.6"
655 | source = "registry+https://github.com/rust-lang/crates.io-index"
656 | checksum = "38e2275cc4e4fc009b0669731a1e5ab7ebf11f469eaede2bab9309a5b4d6057f"
657 | dependencies = [
658 | "memoffset",
659 | "rustc_version",
660 | ]
661 |
662 | [[package]]
663 | name = "filetime"
664 | version = "0.2.21"
665 | source = "registry+https://github.com/rust-lang/crates.io-index"
666 | checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153"
667 | dependencies = [
668 | "cfg-if",
669 | "libc",
670 | "redox_syscall 0.2.16",
671 | "windows-sys 0.48.0",
672 | ]
673 |
674 | [[package]]
675 | name = "flate2"
676 | version = "1.0.26"
677 | source = "registry+https://github.com/rust-lang/crates.io-index"
678 | checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743"
679 | dependencies = [
680 | "crc32fast",
681 | "miniz_oxide",
682 | ]
683 |
684 | [[package]]
685 | name = "fnv"
686 | version = "1.0.7"
687 | source = "registry+https://github.com/rust-lang/crates.io-index"
688 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
689 |
690 | [[package]]
691 | name = "foreign-types"
692 | version = "0.3.2"
693 | source = "registry+https://github.com/rust-lang/crates.io-index"
694 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
695 | dependencies = [
696 | "foreign-types-shared",
697 | ]
698 |
699 | [[package]]
700 | name = "foreign-types-shared"
701 | version = "0.1.1"
702 | source = "registry+https://github.com/rust-lang/crates.io-index"
703 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
704 |
705 | [[package]]
706 | name = "form_urlencoded"
707 | version = "1.2.0"
708 | source = "registry+https://github.com/rust-lang/crates.io-index"
709 | checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652"
710 | dependencies = [
711 | "percent-encoding",
712 | ]
713 |
714 | [[package]]
715 | name = "futf"
716 | version = "0.1.5"
717 | source = "registry+https://github.com/rust-lang/crates.io-index"
718 | checksum = "df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843"
719 | dependencies = [
720 | "mac",
721 | "new_debug_unreachable",
722 | ]
723 |
724 | [[package]]
725 | name = "futures-channel"
726 | version = "0.3.28"
727 | source = "registry+https://github.com/rust-lang/crates.io-index"
728 | checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
729 | dependencies = [
730 | "futures-core",
731 | ]
732 |
733 | [[package]]
734 | name = "futures-core"
735 | version = "0.3.28"
736 | source = "registry+https://github.com/rust-lang/crates.io-index"
737 | checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
738 |
739 | [[package]]
740 | name = "futures-executor"
741 | version = "0.3.28"
742 | source = "registry+https://github.com/rust-lang/crates.io-index"
743 | checksum = "ccecee823288125bd88b4d7f565c9e58e41858e47ab72e8ea2d64e93624386e0"
744 | dependencies = [
745 | "futures-core",
746 | "futures-task",
747 | "futures-util",
748 | ]
749 |
750 | [[package]]
751 | name = "futures-io"
752 | version = "0.3.28"
753 | source = "registry+https://github.com/rust-lang/crates.io-index"
754 | checksum = "4fff74096e71ed47f8e023204cfd0aa1289cd54ae5430a9523be060cdb849964"
755 |
756 | [[package]]
757 | name = "futures-macro"
758 | version = "0.3.28"
759 | source = "registry+https://github.com/rust-lang/crates.io-index"
760 | checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
761 | dependencies = [
762 | "proc-macro2",
763 | "quote",
764 | "syn 2.0.27",
765 | ]
766 |
767 | [[package]]
768 | name = "futures-task"
769 | version = "0.3.28"
770 | source = "registry+https://github.com/rust-lang/crates.io-index"
771 | checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
772 |
773 | [[package]]
774 | name = "futures-util"
775 | version = "0.3.28"
776 | source = "registry+https://github.com/rust-lang/crates.io-index"
777 | checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
778 | dependencies = [
779 | "futures-core",
780 | "futures-macro",
781 | "futures-task",
782 | "pin-project-lite",
783 | "pin-utils",
784 | "slab",
785 | ]
786 |
787 | [[package]]
788 | name = "fxhash"
789 | version = "0.2.1"
790 | source = "registry+https://github.com/rust-lang/crates.io-index"
791 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
792 | dependencies = [
793 | "byteorder",
794 | ]
795 |
796 | [[package]]
797 | name = "gdk"
798 | version = "0.15.4"
799 | source = "registry+https://github.com/rust-lang/crates.io-index"
800 | checksum = "a6e05c1f572ab0e1f15be94217f0dc29088c248b14f792a5ff0af0d84bcda9e8"
801 | dependencies = [
802 | "bitflags 1.3.2",
803 | "cairo-rs",
804 | "gdk-pixbuf",
805 | "gdk-sys",
806 | "gio",
807 | "glib",
808 | "libc",
809 | "pango",
810 | ]
811 |
812 | [[package]]
813 | name = "gdk-pixbuf"
814 | version = "0.15.11"
815 | source = "registry+https://github.com/rust-lang/crates.io-index"
816 | checksum = "ad38dd9cc8b099cceecdf41375bb6d481b1b5a7cd5cd603e10a69a9383f8619a"
817 | dependencies = [
818 | "bitflags 1.3.2",
819 | "gdk-pixbuf-sys",
820 | "gio",
821 | "glib",
822 | "libc",
823 | ]
824 |
825 | [[package]]
826 | name = "gdk-pixbuf-sys"
827 | version = "0.15.10"
828 | source = "registry+https://github.com/rust-lang/crates.io-index"
829 | checksum = "140b2f5378256527150350a8346dbdb08fadc13453a7a2d73aecd5fab3c402a7"
830 | dependencies = [
831 | "gio-sys",
832 | "glib-sys",
833 | "gobject-sys",
834 | "libc",
835 | "system-deps 6.1.1",
836 | ]
837 |
838 | [[package]]
839 | name = "gdk-sys"
840 | version = "0.15.1"
841 | source = "registry+https://github.com/rust-lang/crates.io-index"
842 | checksum = "32e7a08c1e8f06f4177fb7e51a777b8c1689f743a7bc11ea91d44d2226073a88"
843 | dependencies = [
844 | "cairo-sys-rs",
845 | "gdk-pixbuf-sys",
846 | "gio-sys",
847 | "glib-sys",
848 | "gobject-sys",
849 | "libc",
850 | "pango-sys",
851 | "pkg-config",
852 | "system-deps 6.1.1",
853 | ]
854 |
855 | [[package]]
856 | name = "gdkwayland-sys"
857 | version = "0.15.3"
858 | source = "registry+https://github.com/rust-lang/crates.io-index"
859 | checksum = "cca49a59ad8cfdf36ef7330fe7bdfbe1d34323220cc16a0de2679ee773aee2c2"
860 | dependencies = [
861 | "gdk-sys",
862 | "glib-sys",
863 | "gobject-sys",
864 | "libc",
865 | "pkg-config",
866 | "system-deps 6.1.1",
867 | ]
868 |
869 | [[package]]
870 | name = "gdkx11-sys"
871 | version = "0.15.1"
872 | source = "registry+https://github.com/rust-lang/crates.io-index"
873 | checksum = "b4b7f8c7a84b407aa9b143877e267e848ff34106578b64d1e0a24bf550716178"
874 | dependencies = [
875 | "gdk-sys",
876 | "glib-sys",
877 | "libc",
878 | "system-deps 6.1.1",
879 | "x11",
880 | ]
881 |
882 | [[package]]
883 | name = "generator"
884 | version = "0.7.5"
885 | source = "registry+https://github.com/rust-lang/crates.io-index"
886 | checksum = "5cc16584ff22b460a382b7feec54b23d2908d858152e5739a120b949293bd74e"
887 | dependencies = [
888 | "cc",
889 | "libc",
890 | "log",
891 | "rustversion",
892 | "windows 0.48.0",
893 | ]
894 |
895 | [[package]]
896 | name = "generic-array"
897 | version = "0.14.7"
898 | source = "registry+https://github.com/rust-lang/crates.io-index"
899 | checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
900 | dependencies = [
901 | "typenum",
902 | "version_check",
903 | ]
904 |
905 | [[package]]
906 | name = "getrandom"
907 | version = "0.1.16"
908 | source = "registry+https://github.com/rust-lang/crates.io-index"
909 | checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce"
910 | dependencies = [
911 | "cfg-if",
912 | "libc",
913 | "wasi 0.9.0+wasi-snapshot-preview1",
914 | ]
915 |
916 | [[package]]
917 | name = "getrandom"
918 | version = "0.2.10"
919 | source = "registry+https://github.com/rust-lang/crates.io-index"
920 | checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
921 | dependencies = [
922 | "cfg-if",
923 | "libc",
924 | "wasi 0.11.0+wasi-snapshot-preview1",
925 | ]
926 |
927 | [[package]]
928 | name = "gimli"
929 | version = "0.27.3"
930 | source = "registry+https://github.com/rust-lang/crates.io-index"
931 | checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e"
932 |
933 | [[package]]
934 | name = "gio"
935 | version = "0.15.12"
936 | source = "registry+https://github.com/rust-lang/crates.io-index"
937 | checksum = "68fdbc90312d462781a395f7a16d96a2b379bb6ef8cd6310a2df272771c4283b"
938 | dependencies = [
939 | "bitflags 1.3.2",
940 | "futures-channel",
941 | "futures-core",
942 | "futures-io",
943 | "gio-sys",
944 | "glib",
945 | "libc",
946 | "once_cell",
947 | "thiserror",
948 | ]
949 |
950 | [[package]]
951 | name = "gio-sys"
952 | version = "0.15.10"
953 | source = "registry+https://github.com/rust-lang/crates.io-index"
954 | checksum = "32157a475271e2c4a023382e9cab31c4584ee30a97da41d3c4e9fdd605abcf8d"
955 | dependencies = [
956 | "glib-sys",
957 | "gobject-sys",
958 | "libc",
959 | "system-deps 6.1.1",
960 | "winapi",
961 | ]
962 |
963 | [[package]]
964 | name = "glib"
965 | version = "0.15.12"
966 | source = "registry+https://github.com/rust-lang/crates.io-index"
967 | checksum = "edb0306fbad0ab5428b0ca674a23893db909a98582969c9b537be4ced78c505d"
968 | dependencies = [
969 | "bitflags 1.3.2",
970 | "futures-channel",
971 | "futures-core",
972 | "futures-executor",
973 | "futures-task",
974 | "glib-macros",
975 | "glib-sys",
976 | "gobject-sys",
977 | "libc",
978 | "once_cell",
979 | "smallvec",
980 | "thiserror",
981 | ]
982 |
983 | [[package]]
984 | name = "glib-macros"
985 | version = "0.15.13"
986 | source = "registry+https://github.com/rust-lang/crates.io-index"
987 | checksum = "10c6ae9f6fa26f4fb2ac16b528d138d971ead56141de489f8111e259b9df3c4a"
988 | dependencies = [
989 | "anyhow",
990 | "heck 0.4.1",
991 | "proc-macro-crate",
992 | "proc-macro-error",
993 | "proc-macro2",
994 | "quote",
995 | "syn 1.0.109",
996 | ]
997 |
998 | [[package]]
999 | name = "glib-sys"
1000 | version = "0.15.10"
1001 | source = "registry+https://github.com/rust-lang/crates.io-index"
1002 | checksum = "ef4b192f8e65e9cf76cbf4ea71fa8e3be4a0e18ffe3d68b8da6836974cc5bad4"
1003 | dependencies = [
1004 | "libc",
1005 | "system-deps 6.1.1",
1006 | ]
1007 |
1008 | [[package]]
1009 | name = "glob"
1010 | version = "0.3.1"
1011 | source = "registry+https://github.com/rust-lang/crates.io-index"
1012 | checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
1013 |
1014 | [[package]]
1015 | name = "globset"
1016 | version = "0.4.11"
1017 | source = "registry+https://github.com/rust-lang/crates.io-index"
1018 | checksum = "1391ab1f92ffcc08911957149833e682aa3fe252b9f45f966d2ef972274c97df"
1019 | dependencies = [
1020 | "aho-corasick",
1021 | "bstr",
1022 | "fnv",
1023 | "log",
1024 | "regex",
1025 | ]
1026 |
1027 | [[package]]
1028 | name = "gobject-sys"
1029 | version = "0.15.10"
1030 | source = "registry+https://github.com/rust-lang/crates.io-index"
1031 | checksum = "0d57ce44246becd17153bd035ab4d32cfee096a657fc01f2231c9278378d1e0a"
1032 | dependencies = [
1033 | "glib-sys",
1034 | "libc",
1035 | "system-deps 6.1.1",
1036 | ]
1037 |
1038 | [[package]]
1039 | name = "gtk"
1040 | version = "0.15.5"
1041 | source = "registry+https://github.com/rust-lang/crates.io-index"
1042 | checksum = "92e3004a2d5d6d8b5057d2b57b3712c9529b62e82c77f25c1fecde1fd5c23bd0"
1043 | dependencies = [
1044 | "atk",
1045 | "bitflags 1.3.2",
1046 | "cairo-rs",
1047 | "field-offset",
1048 | "futures-channel",
1049 | "gdk",
1050 | "gdk-pixbuf",
1051 | "gio",
1052 | "glib",
1053 | "gtk-sys",
1054 | "gtk3-macros",
1055 | "libc",
1056 | "once_cell",
1057 | "pango",
1058 | "pkg-config",
1059 | ]
1060 |
1061 | [[package]]
1062 | name = "gtk-sys"
1063 | version = "0.15.3"
1064 | source = "registry+https://github.com/rust-lang/crates.io-index"
1065 | checksum = "d5bc2f0587cba247f60246a0ca11fe25fb733eabc3de12d1965fc07efab87c84"
1066 | dependencies = [
1067 | "atk-sys",
1068 | "cairo-sys-rs",
1069 | "gdk-pixbuf-sys",
1070 | "gdk-sys",
1071 | "gio-sys",
1072 | "glib-sys",
1073 | "gobject-sys",
1074 | "libc",
1075 | "pango-sys",
1076 | "system-deps 6.1.1",
1077 | ]
1078 |
1079 | [[package]]
1080 | name = "gtk3-macros"
1081 | version = "0.15.6"
1082 | source = "registry+https://github.com/rust-lang/crates.io-index"
1083 | checksum = "684c0456c086e8e7e9af73ec5b84e35938df394712054550e81558d21c44ab0d"
1084 | dependencies = [
1085 | "anyhow",
1086 | "proc-macro-crate",
1087 | "proc-macro-error",
1088 | "proc-macro2",
1089 | "quote",
1090 | "syn 1.0.109",
1091 | ]
1092 |
1093 | [[package]]
1094 | name = "hashbrown"
1095 | version = "0.12.3"
1096 | source = "registry+https://github.com/rust-lang/crates.io-index"
1097 | checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
1098 |
1099 | [[package]]
1100 | name = "hashbrown"
1101 | version = "0.14.0"
1102 | source = "registry+https://github.com/rust-lang/crates.io-index"
1103 | checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a"
1104 |
1105 | [[package]]
1106 | name = "heck"
1107 | version = "0.3.3"
1108 | source = "registry+https://github.com/rust-lang/crates.io-index"
1109 | checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c"
1110 | dependencies = [
1111 | "unicode-segmentation",
1112 | ]
1113 |
1114 | [[package]]
1115 | name = "heck"
1116 | version = "0.4.1"
1117 | source = "registry+https://github.com/rust-lang/crates.io-index"
1118 | checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8"
1119 |
1120 | [[package]]
1121 | name = "hermit-abi"
1122 | version = "0.3.2"
1123 | source = "registry+https://github.com/rust-lang/crates.io-index"
1124 | checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b"
1125 |
1126 | [[package]]
1127 | name = "hex"
1128 | version = "0.4.3"
1129 | source = "registry+https://github.com/rust-lang/crates.io-index"
1130 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70"
1131 |
1132 | [[package]]
1133 | name = "html5ever"
1134 | version = "0.25.2"
1135 | source = "registry+https://github.com/rust-lang/crates.io-index"
1136 | checksum = "e5c13fb08e5d4dfc151ee5e88bae63f7773d61852f3bdc73c9f4b9e1bde03148"
1137 | dependencies = [
1138 | "log",
1139 | "mac",
1140 | "markup5ever",
1141 | "proc-macro2",
1142 | "quote",
1143 | "syn 1.0.109",
1144 | ]
1145 |
1146 | [[package]]
1147 | name = "http"
1148 | version = "0.2.9"
1149 | source = "registry+https://github.com/rust-lang/crates.io-index"
1150 | checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
1151 | dependencies = [
1152 | "bytes",
1153 | "fnv",
1154 | "itoa 1.0.9",
1155 | ]
1156 |
1157 | [[package]]
1158 | name = "http-range"
1159 | version = "0.1.5"
1160 | source = "registry+https://github.com/rust-lang/crates.io-index"
1161 | checksum = "21dec9db110f5f872ed9699c3ecf50cf16f423502706ba5c72462e28d3157573"
1162 |
1163 | [[package]]
1164 | name = "iana-time-zone"
1165 | version = "0.1.57"
1166 | source = "registry+https://github.com/rust-lang/crates.io-index"
1167 | checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613"
1168 | dependencies = [
1169 | "android_system_properties",
1170 | "core-foundation-sys",
1171 | "iana-time-zone-haiku",
1172 | "js-sys",
1173 | "wasm-bindgen",
1174 | "windows 0.48.0",
1175 | ]
1176 |
1177 | [[package]]
1178 | name = "iana-time-zone-haiku"
1179 | version = "0.1.2"
1180 | source = "registry+https://github.com/rust-lang/crates.io-index"
1181 | checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
1182 | dependencies = [
1183 | "cc",
1184 | ]
1185 |
1186 | [[package]]
1187 | name = "ico"
1188 | version = "0.3.0"
1189 | source = "registry+https://github.com/rust-lang/crates.io-index"
1190 | checksum = "e3804960be0bb5e4edb1e1ad67afd321a9ecfd875c3e65c099468fd2717d7cae"
1191 | dependencies = [
1192 | "byteorder",
1193 | "png",
1194 | ]
1195 |
1196 | [[package]]
1197 | name = "ident_case"
1198 | version = "1.0.1"
1199 | source = "registry+https://github.com/rust-lang/crates.io-index"
1200 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
1201 |
1202 | [[package]]
1203 | name = "idna"
1204 | version = "0.4.0"
1205 | source = "registry+https://github.com/rust-lang/crates.io-index"
1206 | checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c"
1207 | dependencies = [
1208 | "unicode-bidi",
1209 | "unicode-normalization",
1210 | ]
1211 |
1212 | [[package]]
1213 | name = "ignore"
1214 | version = "0.4.20"
1215 | source = "registry+https://github.com/rust-lang/crates.io-index"
1216 | checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
1217 | dependencies = [
1218 | "globset",
1219 | "lazy_static",
1220 | "log",
1221 | "memchr",
1222 | "regex",
1223 | "same-file",
1224 | "thread_local",
1225 | "walkdir",
1226 | "winapi-util",
1227 | ]
1228 |
1229 | [[package]]
1230 | name = "image"
1231 | version = "0.24.6"
1232 | source = "registry+https://github.com/rust-lang/crates.io-index"
1233 | checksum = "527909aa81e20ac3a44803521443a765550f09b5130c2c2fa1ea59c2f8f50a3a"
1234 | dependencies = [
1235 | "bytemuck",
1236 | "byteorder",
1237 | "color_quant",
1238 | "num-rational",
1239 | "num-traits",
1240 | ]
1241 |
1242 | [[package]]
1243 | name = "indexmap"
1244 | version = "1.9.3"
1245 | source = "registry+https://github.com/rust-lang/crates.io-index"
1246 | checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
1247 | dependencies = [
1248 | "autocfg",
1249 | "hashbrown 0.12.3",
1250 | "serde",
1251 | ]
1252 |
1253 | [[package]]
1254 | name = "indexmap"
1255 | version = "2.0.0"
1256 | source = "registry+https://github.com/rust-lang/crates.io-index"
1257 | checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d"
1258 | dependencies = [
1259 | "equivalent",
1260 | "hashbrown 0.14.0",
1261 | ]
1262 |
1263 | [[package]]
1264 | name = "infer"
1265 | version = "0.12.0"
1266 | source = "registry+https://github.com/rust-lang/crates.io-index"
1267 | checksum = "a898e4b7951673fce96614ce5751d13c40fc5674bc2d759288e46c3ab62598b3"
1268 | dependencies = [
1269 | "cfb",
1270 | ]
1271 |
1272 | [[package]]
1273 | name = "instant"
1274 | version = "0.1.12"
1275 | source = "registry+https://github.com/rust-lang/crates.io-index"
1276 | checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c"
1277 | dependencies = [
1278 | "cfg-if",
1279 | ]
1280 |
1281 | [[package]]
1282 | name = "itoa"
1283 | version = "0.4.8"
1284 | source = "registry+https://github.com/rust-lang/crates.io-index"
1285 | checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4"
1286 |
1287 | [[package]]
1288 | name = "itoa"
1289 | version = "1.0.9"
1290 | source = "registry+https://github.com/rust-lang/crates.io-index"
1291 | checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38"
1292 |
1293 | [[package]]
1294 | name = "javascriptcore-rs"
1295 | version = "0.16.0"
1296 | source = "registry+https://github.com/rust-lang/crates.io-index"
1297 | checksum = "bf053e7843f2812ff03ef5afe34bb9c06ffee120385caad4f6b9967fcd37d41c"
1298 | dependencies = [
1299 | "bitflags 1.3.2",
1300 | "glib",
1301 | "javascriptcore-rs-sys",
1302 | ]
1303 |
1304 | [[package]]
1305 | name = "javascriptcore-rs-sys"
1306 | version = "0.4.0"
1307 | source = "registry+https://github.com/rust-lang/crates.io-index"
1308 | checksum = "905fbb87419c5cde6e3269537e4ea7d46431f3008c5d057e915ef3f115e7793c"
1309 | dependencies = [
1310 | "glib-sys",
1311 | "gobject-sys",
1312 | "libc",
1313 | "system-deps 5.0.0",
1314 | ]
1315 |
1316 | [[package]]
1317 | name = "jni"
1318 | version = "0.20.0"
1319 | source = "registry+https://github.com/rust-lang/crates.io-index"
1320 | checksum = "039022cdf4d7b1cf548d31f60ae783138e5fd42013f6271049d7df7afadef96c"
1321 | dependencies = [
1322 | "cesu8",
1323 | "combine",
1324 | "jni-sys",
1325 | "log",
1326 | "thiserror",
1327 | "walkdir",
1328 | ]
1329 |
1330 | [[package]]
1331 | name = "jni-sys"
1332 | version = "0.3.0"
1333 | source = "registry+https://github.com/rust-lang/crates.io-index"
1334 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
1335 |
1336 | [[package]]
1337 | name = "js-sys"
1338 | version = "0.3.64"
1339 | source = "registry+https://github.com/rust-lang/crates.io-index"
1340 | checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a"
1341 | dependencies = [
1342 | "wasm-bindgen",
1343 | ]
1344 |
1345 | [[package]]
1346 | name = "json-patch"
1347 | version = "1.0.0"
1348 | source = "registry+https://github.com/rust-lang/crates.io-index"
1349 | checksum = "1f54898088ccb91df1b492cc80029a6fdf1c48ca0db7c6822a8babad69c94658"
1350 | dependencies = [
1351 | "serde",
1352 | "serde_json",
1353 | "thiserror",
1354 | "treediff",
1355 | ]
1356 |
1357 | [[package]]
1358 | name = "kuchiki"
1359 | version = "0.8.1"
1360 | source = "registry+https://github.com/rust-lang/crates.io-index"
1361 | checksum = "1ea8e9c6e031377cff82ee3001dc8026cdf431ed4e2e6b51f98ab8c73484a358"
1362 | dependencies = [
1363 | "cssparser",
1364 | "html5ever",
1365 | "matches",
1366 | "selectors",
1367 | ]
1368 |
1369 | [[package]]
1370 | name = "lazy_static"
1371 | version = "1.4.0"
1372 | source = "registry+https://github.com/rust-lang/crates.io-index"
1373 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
1374 |
1375 | [[package]]
1376 | name = "libc"
1377 | version = "0.2.147"
1378 | source = "registry+https://github.com/rust-lang/crates.io-index"
1379 | checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
1380 |
1381 | [[package]]
1382 | name = "line-wrap"
1383 | version = "0.1.1"
1384 | source = "registry+https://github.com/rust-lang/crates.io-index"
1385 | checksum = "f30344350a2a51da54c1d53be93fade8a237e545dbcc4bdbe635413f2117cab9"
1386 | dependencies = [
1387 | "safemem",
1388 | ]
1389 |
1390 | [[package]]
1391 | name = "linux-raw-sys"
1392 | version = "0.4.3"
1393 | source = "registry+https://github.com/rust-lang/crates.io-index"
1394 | checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
1395 |
1396 | [[package]]
1397 | name = "lock_api"
1398 | version = "0.4.10"
1399 | source = "registry+https://github.com/rust-lang/crates.io-index"
1400 | checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16"
1401 | dependencies = [
1402 | "autocfg",
1403 | "scopeguard",
1404 | ]
1405 |
1406 | [[package]]
1407 | name = "log"
1408 | version = "0.4.19"
1409 | source = "registry+https://github.com/rust-lang/crates.io-index"
1410 | checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4"
1411 |
1412 | [[package]]
1413 | name = "loom"
1414 | version = "0.5.6"
1415 | source = "registry+https://github.com/rust-lang/crates.io-index"
1416 | checksum = "ff50ecb28bb86013e935fb6683ab1f6d3a20016f123c76fd4c27470076ac30f5"
1417 | dependencies = [
1418 | "cfg-if",
1419 | "generator",
1420 | "scoped-tls",
1421 | "serde",
1422 | "serde_json",
1423 | "tracing",
1424 | "tracing-subscriber",
1425 | ]
1426 |
1427 | [[package]]
1428 | name = "mac"
1429 | version = "0.1.1"
1430 | source = "registry+https://github.com/rust-lang/crates.io-index"
1431 | checksum = "c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4"
1432 |
1433 | [[package]]
1434 | name = "malloc_buf"
1435 | version = "0.0.6"
1436 | source = "registry+https://github.com/rust-lang/crates.io-index"
1437 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
1438 | dependencies = [
1439 | "libc",
1440 | ]
1441 |
1442 | [[package]]
1443 | name = "markup5ever"
1444 | version = "0.10.1"
1445 | source = "registry+https://github.com/rust-lang/crates.io-index"
1446 | checksum = "a24f40fb03852d1cdd84330cddcaf98e9ec08a7b7768e952fad3b4cf048ec8fd"
1447 | dependencies = [
1448 | "log",
1449 | "phf 0.8.0",
1450 | "phf_codegen",
1451 | "string_cache",
1452 | "string_cache_codegen",
1453 | "tendril",
1454 | ]
1455 |
1456 | [[package]]
1457 | name = "matchers"
1458 | version = "0.1.0"
1459 | source = "registry+https://github.com/rust-lang/crates.io-index"
1460 | checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
1461 | dependencies = [
1462 | "regex-automata 0.1.10",
1463 | ]
1464 |
1465 | [[package]]
1466 | name = "matches"
1467 | version = "0.1.10"
1468 | source = "registry+https://github.com/rust-lang/crates.io-index"
1469 | checksum = "2532096657941c2fea9c289d370a250971c689d4f143798ff67113ec042024a5"
1470 |
1471 | [[package]]
1472 | name = "memchr"
1473 | version = "2.5.0"
1474 | source = "registry+https://github.com/rust-lang/crates.io-index"
1475 | checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
1476 |
1477 | [[package]]
1478 | name = "memoffset"
1479 | version = "0.9.0"
1480 | source = "registry+https://github.com/rust-lang/crates.io-index"
1481 | checksum = "5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c"
1482 | dependencies = [
1483 | "autocfg",
1484 | ]
1485 |
1486 | [[package]]
1487 | name = "miniz_oxide"
1488 | version = "0.7.1"
1489 | source = "registry+https://github.com/rust-lang/crates.io-index"
1490 | checksum = "e7810e0be55b428ada41041c41f32c9f1a42817901b4ccf45fa3d4b6561e74c7"
1491 | dependencies = [
1492 | "adler",
1493 | "simd-adler32",
1494 | ]
1495 |
1496 | [[package]]
1497 | name = "ndk"
1498 | version = "0.6.0"
1499 | source = "registry+https://github.com/rust-lang/crates.io-index"
1500 | checksum = "2032c77e030ddee34a6787a64166008da93f6a352b629261d0fee232b8742dd4"
1501 | dependencies = [
1502 | "bitflags 1.3.2",
1503 | "jni-sys",
1504 | "ndk-sys",
1505 | "num_enum",
1506 | "thiserror",
1507 | ]
1508 |
1509 | [[package]]
1510 | name = "ndk-context"
1511 | version = "0.1.1"
1512 | source = "registry+https://github.com/rust-lang/crates.io-index"
1513 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
1514 |
1515 | [[package]]
1516 | name = "ndk-sys"
1517 | version = "0.3.0"
1518 | source = "registry+https://github.com/rust-lang/crates.io-index"
1519 | checksum = "6e5a6ae77c8ee183dcbbba6150e2e6b9f3f4196a7666c02a715a95692ec1fa97"
1520 | dependencies = [
1521 | "jni-sys",
1522 | ]
1523 |
1524 | [[package]]
1525 | name = "new_debug_unreachable"
1526 | version = "1.0.4"
1527 | source = "registry+https://github.com/rust-lang/crates.io-index"
1528 | checksum = "e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54"
1529 |
1530 | [[package]]
1531 | name = "nodrop"
1532 | version = "0.1.14"
1533 | source = "registry+https://github.com/rust-lang/crates.io-index"
1534 | checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
1535 |
1536 | [[package]]
1537 | name = "nu-ansi-term"
1538 | version = "0.46.0"
1539 | source = "registry+https://github.com/rust-lang/crates.io-index"
1540 | checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
1541 | dependencies = [
1542 | "overload",
1543 | "winapi",
1544 | ]
1545 |
1546 | [[package]]
1547 | name = "num-integer"
1548 | version = "0.1.45"
1549 | source = "registry+https://github.com/rust-lang/crates.io-index"
1550 | checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
1551 | dependencies = [
1552 | "autocfg",
1553 | "num-traits",
1554 | ]
1555 |
1556 | [[package]]
1557 | name = "num-rational"
1558 | version = "0.4.1"
1559 | source = "registry+https://github.com/rust-lang/crates.io-index"
1560 | checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
1561 | dependencies = [
1562 | "autocfg",
1563 | "num-integer",
1564 | "num-traits",
1565 | ]
1566 |
1567 | [[package]]
1568 | name = "num-traits"
1569 | version = "0.2.16"
1570 | source = "registry+https://github.com/rust-lang/crates.io-index"
1571 | checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2"
1572 | dependencies = [
1573 | "autocfg",
1574 | ]
1575 |
1576 | [[package]]
1577 | name = "num_cpus"
1578 | version = "1.16.0"
1579 | source = "registry+https://github.com/rust-lang/crates.io-index"
1580 | checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43"
1581 | dependencies = [
1582 | "hermit-abi",
1583 | "libc",
1584 | ]
1585 |
1586 | [[package]]
1587 | name = "num_enum"
1588 | version = "0.5.11"
1589 | source = "registry+https://github.com/rust-lang/crates.io-index"
1590 | checksum = "1f646caf906c20226733ed5b1374287eb97e3c2a5c227ce668c1f2ce20ae57c9"
1591 | dependencies = [
1592 | "num_enum_derive",
1593 | ]
1594 |
1595 | [[package]]
1596 | name = "num_enum_derive"
1597 | version = "0.5.11"
1598 | source = "registry+https://github.com/rust-lang/crates.io-index"
1599 | checksum = "dcbff9bc912032c62bf65ef1d5aea88983b420f4f839db1e9b0c281a25c9c799"
1600 | dependencies = [
1601 | "proc-macro-crate",
1602 | "proc-macro2",
1603 | "quote",
1604 | "syn 1.0.109",
1605 | ]
1606 |
1607 | [[package]]
1608 | name = "objc"
1609 | version = "0.2.7"
1610 | source = "registry+https://github.com/rust-lang/crates.io-index"
1611 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
1612 | dependencies = [
1613 | "malloc_buf",
1614 | "objc_exception",
1615 | ]
1616 |
1617 | [[package]]
1618 | name = "objc_exception"
1619 | version = "0.1.2"
1620 | source = "registry+https://github.com/rust-lang/crates.io-index"
1621 | checksum = "ad970fb455818ad6cba4c122ad012fae53ae8b4795f86378bce65e4f6bab2ca4"
1622 | dependencies = [
1623 | "cc",
1624 | ]
1625 |
1626 | [[package]]
1627 | name = "objc_id"
1628 | version = "0.1.1"
1629 | source = "registry+https://github.com/rust-lang/crates.io-index"
1630 | checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
1631 | dependencies = [
1632 | "objc",
1633 | ]
1634 |
1635 | [[package]]
1636 | name = "object"
1637 | version = "0.31.1"
1638 | source = "registry+https://github.com/rust-lang/crates.io-index"
1639 | checksum = "8bda667d9f2b5051b8833f59f3bf748b28ef54f850f4fcb389a252aa383866d1"
1640 | dependencies = [
1641 | "memchr",
1642 | ]
1643 |
1644 | [[package]]
1645 | name = "once_cell"
1646 | version = "1.18.0"
1647 | source = "registry+https://github.com/rust-lang/crates.io-index"
1648 | checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d"
1649 |
1650 | [[package]]
1651 | name = "open"
1652 | version = "3.2.0"
1653 | source = "registry+https://github.com/rust-lang/crates.io-index"
1654 | checksum = "2078c0039e6a54a0c42c28faa984e115fb4c2d5bf2208f77d1961002df8576f8"
1655 | dependencies = [
1656 | "pathdiff",
1657 | "windows-sys 0.42.0",
1658 | ]
1659 |
1660 | [[package]]
1661 | name = "overload"
1662 | version = "0.1.1"
1663 | source = "registry+https://github.com/rust-lang/crates.io-index"
1664 | checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
1665 |
1666 | [[package]]
1667 | name = "pango"
1668 | version = "0.15.10"
1669 | source = "registry+https://github.com/rust-lang/crates.io-index"
1670 | checksum = "22e4045548659aee5313bde6c582b0d83a627b7904dd20dc2d9ef0895d414e4f"
1671 | dependencies = [
1672 | "bitflags 1.3.2",
1673 | "glib",
1674 | "libc",
1675 | "once_cell",
1676 | "pango-sys",
1677 | ]
1678 |
1679 | [[package]]
1680 | name = "pango-sys"
1681 | version = "0.15.10"
1682 | source = "registry+https://github.com/rust-lang/crates.io-index"
1683 | checksum = "d2a00081cde4661982ed91d80ef437c20eacaf6aa1a5962c0279ae194662c3aa"
1684 | dependencies = [
1685 | "glib-sys",
1686 | "gobject-sys",
1687 | "libc",
1688 | "system-deps 6.1.1",
1689 | ]
1690 |
1691 | [[package]]
1692 | name = "parking_lot"
1693 | version = "0.12.1"
1694 | source = "registry+https://github.com/rust-lang/crates.io-index"
1695 | checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f"
1696 | dependencies = [
1697 | "lock_api",
1698 | "parking_lot_core",
1699 | ]
1700 |
1701 | [[package]]
1702 | name = "parking_lot_core"
1703 | version = "0.9.8"
1704 | source = "registry+https://github.com/rust-lang/crates.io-index"
1705 | checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447"
1706 | dependencies = [
1707 | "cfg-if",
1708 | "libc",
1709 | "redox_syscall 0.3.5",
1710 | "smallvec",
1711 | "windows-targets",
1712 | ]
1713 |
1714 | [[package]]
1715 | name = "pathdiff"
1716 | version = "0.2.1"
1717 | source = "registry+https://github.com/rust-lang/crates.io-index"
1718 | checksum = "8835116a5c179084a830efb3adc117ab007512b535bc1a21c991d3b32a6b44dd"
1719 |
1720 | [[package]]
1721 | name = "percent-encoding"
1722 | version = "2.3.0"
1723 | source = "registry+https://github.com/rust-lang/crates.io-index"
1724 | checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94"
1725 |
1726 | [[package]]
1727 | name = "phf"
1728 | version = "0.8.0"
1729 | source = "registry+https://github.com/rust-lang/crates.io-index"
1730 | checksum = "3dfb61232e34fcb633f43d12c58f83c1df82962dcdfa565a4e866ffc17dafe12"
1731 | dependencies = [
1732 | "phf_macros 0.8.0",
1733 | "phf_shared 0.8.0",
1734 | "proc-macro-hack",
1735 | ]
1736 |
1737 | [[package]]
1738 | name = "phf"
1739 | version = "0.10.1"
1740 | source = "registry+https://github.com/rust-lang/crates.io-index"
1741 | checksum = "fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259"
1742 | dependencies = [
1743 | "phf_macros 0.10.0",
1744 | "phf_shared 0.10.0",
1745 | "proc-macro-hack",
1746 | ]
1747 |
1748 | [[package]]
1749 | name = "phf_codegen"
1750 | version = "0.8.0"
1751 | source = "registry+https://github.com/rust-lang/crates.io-index"
1752 | checksum = "cbffee61585b0411840d3ece935cce9cb6321f01c45477d30066498cd5e1a815"
1753 | dependencies = [
1754 | "phf_generator 0.8.0",
1755 | "phf_shared 0.8.0",
1756 | ]
1757 |
1758 | [[package]]
1759 | name = "phf_generator"
1760 | version = "0.8.0"
1761 | source = "registry+https://github.com/rust-lang/crates.io-index"
1762 | checksum = "17367f0cc86f2d25802b2c26ee58a7b23faeccf78a396094c13dced0d0182526"
1763 | dependencies = [
1764 | "phf_shared 0.8.0",
1765 | "rand 0.7.3",
1766 | ]
1767 |
1768 | [[package]]
1769 | name = "phf_generator"
1770 | version = "0.10.0"
1771 | source = "registry+https://github.com/rust-lang/crates.io-index"
1772 | checksum = "5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6"
1773 | dependencies = [
1774 | "phf_shared 0.10.0",
1775 | "rand 0.8.5",
1776 | ]
1777 |
1778 | [[package]]
1779 | name = "phf_macros"
1780 | version = "0.8.0"
1781 | source = "registry+https://github.com/rust-lang/crates.io-index"
1782 | checksum = "7f6fde18ff429ffc8fe78e2bf7f8b7a5a5a6e2a8b58bc5a9ac69198bbda9189c"
1783 | dependencies = [
1784 | "phf_generator 0.8.0",
1785 | "phf_shared 0.8.0",
1786 | "proc-macro-hack",
1787 | "proc-macro2",
1788 | "quote",
1789 | "syn 1.0.109",
1790 | ]
1791 |
1792 | [[package]]
1793 | name = "phf_macros"
1794 | version = "0.10.0"
1795 | source = "registry+https://github.com/rust-lang/crates.io-index"
1796 | checksum = "58fdf3184dd560f160dd73922bea2d5cd6e8f064bf4b13110abd81b03697b4e0"
1797 | dependencies = [
1798 | "phf_generator 0.10.0",
1799 | "phf_shared 0.10.0",
1800 | "proc-macro-hack",
1801 | "proc-macro2",
1802 | "quote",
1803 | "syn 1.0.109",
1804 | ]
1805 |
1806 | [[package]]
1807 | name = "phf_shared"
1808 | version = "0.8.0"
1809 | source = "registry+https://github.com/rust-lang/crates.io-index"
1810 | checksum = "c00cf8b9eafe68dde5e9eaa2cef8ee84a9336a47d566ec55ca16589633b65af7"
1811 | dependencies = [
1812 | "siphasher",
1813 | ]
1814 |
1815 | [[package]]
1816 | name = "phf_shared"
1817 | version = "0.10.0"
1818 | source = "registry+https://github.com/rust-lang/crates.io-index"
1819 | checksum = "b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096"
1820 | dependencies = [
1821 | "siphasher",
1822 | ]
1823 |
1824 | [[package]]
1825 | name = "pin-project-lite"
1826 | version = "0.2.10"
1827 | source = "registry+https://github.com/rust-lang/crates.io-index"
1828 | checksum = "4c40d25201921e5ff0c862a505c6557ea88568a4e3ace775ab55e93f2f4f9d57"
1829 |
1830 | [[package]]
1831 | name = "pin-utils"
1832 | version = "0.1.0"
1833 | source = "registry+https://github.com/rust-lang/crates.io-index"
1834 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184"
1835 |
1836 | [[package]]
1837 | name = "pkg-config"
1838 | version = "0.3.27"
1839 | source = "registry+https://github.com/rust-lang/crates.io-index"
1840 | checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964"
1841 |
1842 | [[package]]
1843 | name = "plist"
1844 | version = "1.5.0"
1845 | source = "registry+https://github.com/rust-lang/crates.io-index"
1846 | checksum = "bdc0001cfea3db57a2e24bc0d818e9e20e554b5f97fabb9bc231dc240269ae06"
1847 | dependencies = [
1848 | "base64 0.21.2",
1849 | "indexmap 1.9.3",
1850 | "line-wrap",
1851 | "quick-xml",
1852 | "serde",
1853 | "time",
1854 | ]
1855 |
1856 | [[package]]
1857 | name = "png"
1858 | version = "0.17.9"
1859 | source = "registry+https://github.com/rust-lang/crates.io-index"
1860 | checksum = "59871cc5b6cce7eaccca5a802b4173377a1c2ba90654246789a8fa2334426d11"
1861 | dependencies = [
1862 | "bitflags 1.3.2",
1863 | "crc32fast",
1864 | "fdeflate",
1865 | "flate2",
1866 | "miniz_oxide",
1867 | ]
1868 |
1869 | [[package]]
1870 | name = "ppv-lite86"
1871 | version = "0.2.17"
1872 | source = "registry+https://github.com/rust-lang/crates.io-index"
1873 | checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
1874 |
1875 | [[package]]
1876 | name = "precomputed-hash"
1877 | version = "0.1.1"
1878 | source = "registry+https://github.com/rust-lang/crates.io-index"
1879 | checksum = "925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c"
1880 |
1881 | [[package]]
1882 | name = "proc-macro-crate"
1883 | version = "1.3.1"
1884 | source = "registry+https://github.com/rust-lang/crates.io-index"
1885 | checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919"
1886 | dependencies = [
1887 | "once_cell",
1888 | "toml_edit",
1889 | ]
1890 |
1891 | [[package]]
1892 | name = "proc-macro-error"
1893 | version = "1.0.4"
1894 | source = "registry+https://github.com/rust-lang/crates.io-index"
1895 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c"
1896 | dependencies = [
1897 | "proc-macro-error-attr",
1898 | "proc-macro2",
1899 | "quote",
1900 | "syn 1.0.109",
1901 | "version_check",
1902 | ]
1903 |
1904 | [[package]]
1905 | name = "proc-macro-error-attr"
1906 | version = "1.0.4"
1907 | source = "registry+https://github.com/rust-lang/crates.io-index"
1908 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869"
1909 | dependencies = [
1910 | "proc-macro2",
1911 | "quote",
1912 | "version_check",
1913 | ]
1914 |
1915 | [[package]]
1916 | name = "proc-macro-hack"
1917 | version = "0.5.20+deprecated"
1918 | source = "registry+https://github.com/rust-lang/crates.io-index"
1919 | checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068"
1920 |
1921 | [[package]]
1922 | name = "proc-macro2"
1923 | version = "1.0.66"
1924 | source = "registry+https://github.com/rust-lang/crates.io-index"
1925 | checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
1926 | dependencies = [
1927 | "unicode-ident",
1928 | ]
1929 |
1930 | [[package]]
1931 | name = "quick-xml"
1932 | version = "0.29.0"
1933 | source = "registry+https://github.com/rust-lang/crates.io-index"
1934 | checksum = "81b9228215d82c7b61490fec1de287136b5de6f5700f6e58ea9ad61a7964ca51"
1935 | dependencies = [
1936 | "memchr",
1937 | ]
1938 |
1939 | [[package]]
1940 | name = "quote"
1941 | version = "1.0.32"
1942 | source = "registry+https://github.com/rust-lang/crates.io-index"
1943 | checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965"
1944 | dependencies = [
1945 | "proc-macro2",
1946 | ]
1947 |
1948 | [[package]]
1949 | name = "rand"
1950 | version = "0.7.3"
1951 | source = "registry+https://github.com/rust-lang/crates.io-index"
1952 | checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03"
1953 | dependencies = [
1954 | "getrandom 0.1.16",
1955 | "libc",
1956 | "rand_chacha 0.2.2",
1957 | "rand_core 0.5.1",
1958 | "rand_hc",
1959 | "rand_pcg",
1960 | ]
1961 |
1962 | [[package]]
1963 | name = "rand"
1964 | version = "0.8.5"
1965 | source = "registry+https://github.com/rust-lang/crates.io-index"
1966 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
1967 | dependencies = [
1968 | "libc",
1969 | "rand_chacha 0.3.1",
1970 | "rand_core 0.6.4",
1971 | ]
1972 |
1973 | [[package]]
1974 | name = "rand_chacha"
1975 | version = "0.2.2"
1976 | source = "registry+https://github.com/rust-lang/crates.io-index"
1977 | checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402"
1978 | dependencies = [
1979 | "ppv-lite86",
1980 | "rand_core 0.5.1",
1981 | ]
1982 |
1983 | [[package]]
1984 | name = "rand_chacha"
1985 | version = "0.3.1"
1986 | source = "registry+https://github.com/rust-lang/crates.io-index"
1987 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
1988 | dependencies = [
1989 | "ppv-lite86",
1990 | "rand_core 0.6.4",
1991 | ]
1992 |
1993 | [[package]]
1994 | name = "rand_core"
1995 | version = "0.5.1"
1996 | source = "registry+https://github.com/rust-lang/crates.io-index"
1997 | checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19"
1998 | dependencies = [
1999 | "getrandom 0.1.16",
2000 | ]
2001 |
2002 | [[package]]
2003 | name = "rand_core"
2004 | version = "0.6.4"
2005 | source = "registry+https://github.com/rust-lang/crates.io-index"
2006 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
2007 | dependencies = [
2008 | "getrandom 0.2.10",
2009 | ]
2010 |
2011 | [[package]]
2012 | name = "rand_hc"
2013 | version = "0.2.0"
2014 | source = "registry+https://github.com/rust-lang/crates.io-index"
2015 | checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c"
2016 | dependencies = [
2017 | "rand_core 0.5.1",
2018 | ]
2019 |
2020 | [[package]]
2021 | name = "rand_pcg"
2022 | version = "0.2.1"
2023 | source = "registry+https://github.com/rust-lang/crates.io-index"
2024 | checksum = "16abd0c1b639e9eb4d7c50c0b8100b0d0f849be2349829c740fe8e6eb4816429"
2025 | dependencies = [
2026 | "rand_core 0.5.1",
2027 | ]
2028 |
2029 | [[package]]
2030 | name = "raw-window-handle"
2031 | version = "0.5.2"
2032 | source = "registry+https://github.com/rust-lang/crates.io-index"
2033 | checksum = "f2ff9a1f06a88b01621b7ae906ef0211290d1c8a168a15542486a8f61c0833b9"
2034 |
2035 | [[package]]
2036 | name = "redox_syscall"
2037 | version = "0.2.16"
2038 | source = "registry+https://github.com/rust-lang/crates.io-index"
2039 | checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
2040 | dependencies = [
2041 | "bitflags 1.3.2",
2042 | ]
2043 |
2044 | [[package]]
2045 | name = "redox_syscall"
2046 | version = "0.3.5"
2047 | source = "registry+https://github.com/rust-lang/crates.io-index"
2048 | checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29"
2049 | dependencies = [
2050 | "bitflags 1.3.2",
2051 | ]
2052 |
2053 | [[package]]
2054 | name = "redox_users"
2055 | version = "0.4.3"
2056 | source = "registry+https://github.com/rust-lang/crates.io-index"
2057 | checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b"
2058 | dependencies = [
2059 | "getrandom 0.2.10",
2060 | "redox_syscall 0.2.16",
2061 | "thiserror",
2062 | ]
2063 |
2064 | [[package]]
2065 | name = "regex"
2066 | version = "1.9.1"
2067 | source = "registry+https://github.com/rust-lang/crates.io-index"
2068 | checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
2069 | dependencies = [
2070 | "aho-corasick",
2071 | "memchr",
2072 | "regex-automata 0.3.3",
2073 | "regex-syntax 0.7.4",
2074 | ]
2075 |
2076 | [[package]]
2077 | name = "regex-automata"
2078 | version = "0.1.10"
2079 | source = "registry+https://github.com/rust-lang/crates.io-index"
2080 | checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
2081 | dependencies = [
2082 | "regex-syntax 0.6.29",
2083 | ]
2084 |
2085 | [[package]]
2086 | name = "regex-automata"
2087 | version = "0.3.3"
2088 | source = "registry+https://github.com/rust-lang/crates.io-index"
2089 | checksum = "39354c10dd07468c2e73926b23bb9c2caca74c5501e38a35da70406f1d923310"
2090 | dependencies = [
2091 | "aho-corasick",
2092 | "memchr",
2093 | "regex-syntax 0.7.4",
2094 | ]
2095 |
2096 | [[package]]
2097 | name = "regex-syntax"
2098 | version = "0.6.29"
2099 | source = "registry+https://github.com/rust-lang/crates.io-index"
2100 | checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
2101 |
2102 | [[package]]
2103 | name = "regex-syntax"
2104 | version = "0.7.4"
2105 | source = "registry+https://github.com/rust-lang/crates.io-index"
2106 | checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
2107 |
2108 | [[package]]
2109 | name = "rustc-demangle"
2110 | version = "0.1.23"
2111 | source = "registry+https://github.com/rust-lang/crates.io-index"
2112 | checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76"
2113 |
2114 | [[package]]
2115 | name = "rustc_version"
2116 | version = "0.4.0"
2117 | source = "registry+https://github.com/rust-lang/crates.io-index"
2118 | checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366"
2119 | dependencies = [
2120 | "semver",
2121 | ]
2122 |
2123 | [[package]]
2124 | name = "rustix"
2125 | version = "0.38.4"
2126 | source = "registry+https://github.com/rust-lang/crates.io-index"
2127 | checksum = "0a962918ea88d644592894bc6dc55acc6c0956488adcebbfb6e273506b7fd6e5"
2128 | dependencies = [
2129 | "bitflags 2.3.3",
2130 | "errno",
2131 | "libc",
2132 | "linux-raw-sys",
2133 | "windows-sys 0.48.0",
2134 | ]
2135 |
2136 | [[package]]
2137 | name = "rustversion"
2138 | version = "1.0.14"
2139 | source = "registry+https://github.com/rust-lang/crates.io-index"
2140 | checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4"
2141 |
2142 | [[package]]
2143 | name = "ryu"
2144 | version = "1.0.15"
2145 | source = "registry+https://github.com/rust-lang/crates.io-index"
2146 | checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741"
2147 |
2148 | [[package]]
2149 | name = "safemem"
2150 | version = "0.3.3"
2151 | source = "registry+https://github.com/rust-lang/crates.io-index"
2152 | checksum = "ef703b7cb59335eae2eb93ceb664c0eb7ea6bf567079d843e09420219668e072"
2153 |
2154 | [[package]]
2155 | name = "same-file"
2156 | version = "1.0.6"
2157 | source = "registry+https://github.com/rust-lang/crates.io-index"
2158 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
2159 | dependencies = [
2160 | "winapi-util",
2161 | ]
2162 |
2163 | [[package]]
2164 | name = "scoped-tls"
2165 | version = "1.0.1"
2166 | source = "registry+https://github.com/rust-lang/crates.io-index"
2167 | checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
2168 |
2169 | [[package]]
2170 | name = "scopeguard"
2171 | version = "1.2.0"
2172 | source = "registry+https://github.com/rust-lang/crates.io-index"
2173 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
2174 |
2175 | [[package]]
2176 | name = "selectors"
2177 | version = "0.22.0"
2178 | source = "registry+https://github.com/rust-lang/crates.io-index"
2179 | checksum = "df320f1889ac4ba6bc0cdc9c9af7af4bd64bb927bccdf32d81140dc1f9be12fe"
2180 | dependencies = [
2181 | "bitflags 1.3.2",
2182 | "cssparser",
2183 | "derive_more",
2184 | "fxhash",
2185 | "log",
2186 | "matches",
2187 | "phf 0.8.0",
2188 | "phf_codegen",
2189 | "precomputed-hash",
2190 | "servo_arc",
2191 | "smallvec",
2192 | "thin-slice",
2193 | ]
2194 |
2195 | [[package]]
2196 | name = "semver"
2197 | version = "1.0.18"
2198 | source = "registry+https://github.com/rust-lang/crates.io-index"
2199 | checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918"
2200 | dependencies = [
2201 | "serde",
2202 | ]
2203 |
2204 | [[package]]
2205 | name = "serde"
2206 | version = "1.0.175"
2207 | source = "registry+https://github.com/rust-lang/crates.io-index"
2208 | checksum = "5d25439cd7397d044e2748a6fe2432b5e85db703d6d097bd014b3c0ad1ebff0b"
2209 | dependencies = [
2210 | "serde_derive",
2211 | ]
2212 |
2213 | [[package]]
2214 | name = "serde_derive"
2215 | version = "1.0.175"
2216 | source = "registry+https://github.com/rust-lang/crates.io-index"
2217 | checksum = "b23f7ade6f110613c0d63858ddb8b94c1041f550eab58a16b371bdf2c9c80ab4"
2218 | dependencies = [
2219 | "proc-macro2",
2220 | "quote",
2221 | "syn 2.0.27",
2222 | ]
2223 |
2224 | [[package]]
2225 | name = "serde_json"
2226 | version = "1.0.103"
2227 | source = "registry+https://github.com/rust-lang/crates.io-index"
2228 | checksum = "d03b412469450d4404fe8499a268edd7f8b79fecb074b0d812ad64ca21f4031b"
2229 | dependencies = [
2230 | "itoa 1.0.9",
2231 | "ryu",
2232 | "serde",
2233 | ]
2234 |
2235 | [[package]]
2236 | name = "serde_repr"
2237 | version = "0.1.15"
2238 | source = "registry+https://github.com/rust-lang/crates.io-index"
2239 | checksum = "e168eaaf71e8f9bd6037feb05190485708e019f4fd87d161b3c0a0d37daf85e5"
2240 | dependencies = [
2241 | "proc-macro2",
2242 | "quote",
2243 | "syn 2.0.27",
2244 | ]
2245 |
2246 | [[package]]
2247 | name = "serde_spanned"
2248 | version = "0.6.3"
2249 | source = "registry+https://github.com/rust-lang/crates.io-index"
2250 | checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186"
2251 | dependencies = [
2252 | "serde",
2253 | ]
2254 |
2255 | [[package]]
2256 | name = "serde_with"
2257 | version = "3.1.0"
2258 | source = "registry+https://github.com/rust-lang/crates.io-index"
2259 | checksum = "21e47d95bc83ed33b2ecf84f4187ad1ab9685d18ff28db000c99deac8ce180e3"
2260 | dependencies = [
2261 | "base64 0.21.2",
2262 | "chrono",
2263 | "hex",
2264 | "indexmap 1.9.3",
2265 | "serde",
2266 | "serde_json",
2267 | "serde_with_macros",
2268 | "time",
2269 | ]
2270 |
2271 | [[package]]
2272 | name = "serde_with_macros"
2273 | version = "3.1.0"
2274 | source = "registry+https://github.com/rust-lang/crates.io-index"
2275 | checksum = "ea3cee93715c2e266b9338b7544da68a9f24e227722ba482bd1c024367c77c65"
2276 | dependencies = [
2277 | "darling",
2278 | "proc-macro2",
2279 | "quote",
2280 | "syn 2.0.27",
2281 | ]
2282 |
2283 | [[package]]
2284 | name = "serialize-to-javascript"
2285 | version = "0.1.1"
2286 | source = "registry+https://github.com/rust-lang/crates.io-index"
2287 | checksum = "c9823f2d3b6a81d98228151fdeaf848206a7855a7a042bbf9bf870449a66cafb"
2288 | dependencies = [
2289 | "serde",
2290 | "serde_json",
2291 | "serialize-to-javascript-impl",
2292 | ]
2293 |
2294 | [[package]]
2295 | name = "serialize-to-javascript-impl"
2296 | version = "0.1.1"
2297 | source = "registry+https://github.com/rust-lang/crates.io-index"
2298 | checksum = "74064874e9f6a15f04c1f3cb627902d0e6b410abbf36668afa873c61889f1763"
2299 | dependencies = [
2300 | "proc-macro2",
2301 | "quote",
2302 | "syn 1.0.109",
2303 | ]
2304 |
2305 | [[package]]
2306 | name = "servo_arc"
2307 | version = "0.1.1"
2308 | source = "registry+https://github.com/rust-lang/crates.io-index"
2309 | checksum = "d98238b800e0d1576d8b6e3de32827c2d74bee68bb97748dcf5071fb53965432"
2310 | dependencies = [
2311 | "nodrop",
2312 | "stable_deref_trait",
2313 | ]
2314 |
2315 | [[package]]
2316 | name = "sha2"
2317 | version = "0.10.7"
2318 | source = "registry+https://github.com/rust-lang/crates.io-index"
2319 | checksum = "479fb9d862239e610720565ca91403019f2f00410f1864c5aa7479b950a76ed8"
2320 | dependencies = [
2321 | "cfg-if",
2322 | "cpufeatures",
2323 | "digest",
2324 | ]
2325 |
2326 | [[package]]
2327 | name = "sharded-slab"
2328 | version = "0.1.4"
2329 | source = "registry+https://github.com/rust-lang/crates.io-index"
2330 | checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31"
2331 | dependencies = [
2332 | "lazy_static",
2333 | ]
2334 |
2335 | [[package]]
2336 | name = "simd-adler32"
2337 | version = "0.3.6"
2338 | source = "registry+https://github.com/rust-lang/crates.io-index"
2339 | checksum = "c72d35cdc6eb62d243faa568cd524a56f2600d548c5dafb44b4c21f391c3d816"
2340 |
2341 | [[package]]
2342 | name = "siphasher"
2343 | version = "0.3.10"
2344 | source = "registry+https://github.com/rust-lang/crates.io-index"
2345 | checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
2346 |
2347 | [[package]]
2348 | name = "slab"
2349 | version = "0.4.8"
2350 | source = "registry+https://github.com/rust-lang/crates.io-index"
2351 | checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
2352 | dependencies = [
2353 | "autocfg",
2354 | ]
2355 |
2356 | [[package]]
2357 | name = "smallvec"
2358 | version = "1.11.0"
2359 | source = "registry+https://github.com/rust-lang/crates.io-index"
2360 | checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9"
2361 |
2362 | [[package]]
2363 | name = "soup2"
2364 | version = "0.2.1"
2365 | source = "registry+https://github.com/rust-lang/crates.io-index"
2366 | checksum = "b2b4d76501d8ba387cf0fefbe055c3e0a59891d09f0f995ae4e4b16f6b60f3c0"
2367 | dependencies = [
2368 | "bitflags 1.3.2",
2369 | "gio",
2370 | "glib",
2371 | "libc",
2372 | "once_cell",
2373 | "soup2-sys",
2374 | ]
2375 |
2376 | [[package]]
2377 | name = "soup2-sys"
2378 | version = "0.2.0"
2379 | source = "registry+https://github.com/rust-lang/crates.io-index"
2380 | checksum = "009ef427103fcb17f802871647a7fa6c60cbb654b4c4e4c0ac60a31c5f6dc9cf"
2381 | dependencies = [
2382 | "bitflags 1.3.2",
2383 | "gio-sys",
2384 | "glib-sys",
2385 | "gobject-sys",
2386 | "libc",
2387 | "system-deps 5.0.0",
2388 | ]
2389 |
2390 | [[package]]
2391 | name = "stable_deref_trait"
2392 | version = "1.2.0"
2393 | source = "registry+https://github.com/rust-lang/crates.io-index"
2394 | checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
2395 |
2396 | [[package]]
2397 | name = "state"
2398 | version = "0.5.3"
2399 | source = "registry+https://github.com/rust-lang/crates.io-index"
2400 | checksum = "dbe866e1e51e8260c9eed836a042a5e7f6726bb2b411dffeaa712e19c388f23b"
2401 | dependencies = [
2402 | "loom",
2403 | ]
2404 |
2405 | [[package]]
2406 | name = "string_cache"
2407 | version = "0.8.7"
2408 | source = "registry+https://github.com/rust-lang/crates.io-index"
2409 | checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
2410 | dependencies = [
2411 | "new_debug_unreachable",
2412 | "once_cell",
2413 | "parking_lot",
2414 | "phf_shared 0.10.0",
2415 | "precomputed-hash",
2416 | "serde",
2417 | ]
2418 |
2419 | [[package]]
2420 | name = "string_cache_codegen"
2421 | version = "0.5.2"
2422 | source = "registry+https://github.com/rust-lang/crates.io-index"
2423 | checksum = "6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988"
2424 | dependencies = [
2425 | "phf_generator 0.10.0",
2426 | "phf_shared 0.10.0",
2427 | "proc-macro2",
2428 | "quote",
2429 | ]
2430 |
2431 | [[package]]
2432 | name = "strsim"
2433 | version = "0.10.0"
2434 | source = "registry+https://github.com/rust-lang/crates.io-index"
2435 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623"
2436 |
2437 | [[package]]
2438 | name = "syn"
2439 | version = "1.0.109"
2440 | source = "registry+https://github.com/rust-lang/crates.io-index"
2441 | checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
2442 | dependencies = [
2443 | "proc-macro2",
2444 | "quote",
2445 | "unicode-ident",
2446 | ]
2447 |
2448 | [[package]]
2449 | name = "syn"
2450 | version = "2.0.27"
2451 | source = "registry+https://github.com/rust-lang/crates.io-index"
2452 | checksum = "b60f673f44a8255b9c8c657daf66a596d435f2da81a555b06dc644d080ba45e0"
2453 | dependencies = [
2454 | "proc-macro2",
2455 | "quote",
2456 | "unicode-ident",
2457 | ]
2458 |
2459 | [[package]]
2460 | name = "system-deps"
2461 | version = "5.0.0"
2462 | source = "registry+https://github.com/rust-lang/crates.io-index"
2463 | checksum = "18db855554db7bd0e73e06cf7ba3df39f97812cb11d3f75e71c39bf45171797e"
2464 | dependencies = [
2465 | "cfg-expr 0.9.1",
2466 | "heck 0.3.3",
2467 | "pkg-config",
2468 | "toml 0.5.11",
2469 | "version-compare 0.0.11",
2470 | ]
2471 |
2472 | [[package]]
2473 | name = "system-deps"
2474 | version = "6.1.1"
2475 | source = "registry+https://github.com/rust-lang/crates.io-index"
2476 | checksum = "30c2de8a4d8f4b823d634affc9cd2a74ec98c53a756f317e529a48046cbf71f3"
2477 | dependencies = [
2478 | "cfg-expr 0.15.3",
2479 | "heck 0.4.1",
2480 | "pkg-config",
2481 | "toml 0.7.6",
2482 | "version-compare 0.1.1",
2483 | ]
2484 |
2485 | [[package]]
2486 | name = "tao"
2487 | version = "0.16.2"
2488 | source = "registry+https://github.com/rust-lang/crates.io-index"
2489 | checksum = "6a6d198e01085564cea63e976ad1566c1ba2c2e4cc79578e35d9f05521505e31"
2490 | dependencies = [
2491 | "bitflags 1.3.2",
2492 | "cairo-rs",
2493 | "cc",
2494 | "cocoa",
2495 | "core-foundation",
2496 | "core-graphics",
2497 | "crossbeam-channel",
2498 | "dispatch",
2499 | "gdk",
2500 | "gdk-pixbuf",
2501 | "gdk-sys",
2502 | "gdkwayland-sys",
2503 | "gdkx11-sys",
2504 | "gio",
2505 | "glib",
2506 | "glib-sys",
2507 | "gtk",
2508 | "image",
2509 | "instant",
2510 | "jni",
2511 | "lazy_static",
2512 | "libc",
2513 | "log",
2514 | "ndk",
2515 | "ndk-context",
2516 | "ndk-sys",
2517 | "objc",
2518 | "once_cell",
2519 | "parking_lot",
2520 | "png",
2521 | "raw-window-handle",
2522 | "scopeguard",
2523 | "serde",
2524 | "tao-macros",
2525 | "unicode-segmentation",
2526 | "uuid",
2527 | "windows 0.39.0",
2528 | "windows-implement",
2529 | "x11-dl",
2530 | ]
2531 |
2532 | [[package]]
2533 | name = "tao-macros"
2534 | version = "0.1.1"
2535 | source = "registry+https://github.com/rust-lang/crates.io-index"
2536 | checksum = "3b27a4bcc5eb524658234589bdffc7e7bfb996dbae6ce9393bfd39cb4159b445"
2537 | dependencies = [
2538 | "proc-macro2",
2539 | "quote",
2540 | "syn 1.0.109",
2541 | ]
2542 |
2543 | [[package]]
2544 | name = "tar"
2545 | version = "0.4.39"
2546 | source = "registry+https://github.com/rust-lang/crates.io-index"
2547 | checksum = "ec96d2ffad078296368d46ff1cb309be1c23c513b4ab0e22a45de0185275ac96"
2548 | dependencies = [
2549 | "filetime",
2550 | "libc",
2551 | "xattr",
2552 | ]
2553 |
2554 | [[package]]
2555 | name = "target-lexicon"
2556 | version = "0.12.10"
2557 | source = "registry+https://github.com/rust-lang/crates.io-index"
2558 | checksum = "1d2faeef5759ab89935255b1a4cd98e0baf99d1085e37d36599c625dac49ae8e"
2559 |
2560 | [[package]]
2561 | name = "tauri"
2562 | version = "1.4.1"
2563 | source = "registry+https://github.com/rust-lang/crates.io-index"
2564 | checksum = "7fbe522898e35407a8e60dc3870f7579fea2fc262a6a6072eccdd37ae1e1d91e"
2565 | dependencies = [
2566 | "anyhow",
2567 | "cocoa",
2568 | "dirs-next",
2569 | "embed_plist",
2570 | "encoding_rs",
2571 | "flate2",
2572 | "futures-util",
2573 | "glib",
2574 | "glob",
2575 | "gtk",
2576 | "heck 0.4.1",
2577 | "http",
2578 | "ignore",
2579 | "objc",
2580 | "once_cell",
2581 | "open",
2582 | "percent-encoding",
2583 | "rand 0.8.5",
2584 | "raw-window-handle",
2585 | "regex",
2586 | "semver",
2587 | "serde",
2588 | "serde_json",
2589 | "serde_repr",
2590 | "serialize-to-javascript",
2591 | "state",
2592 | "tar",
2593 | "tauri-macros",
2594 | "tauri-runtime",
2595 | "tauri-runtime-wry",
2596 | "tauri-utils",
2597 | "tempfile",
2598 | "thiserror",
2599 | "tokio",
2600 | "url",
2601 | "uuid",
2602 | "webkit2gtk",
2603 | "webview2-com",
2604 | "windows 0.39.0",
2605 | ]
2606 |
2607 | [[package]]
2608 | name = "tauri-build"
2609 | version = "1.4.0"
2610 | source = "registry+https://github.com/rust-lang/crates.io-index"
2611 | checksum = "7d2edd6a259b5591c8efdeb9d5702cb53515b82a6affebd55c7fd6d3a27b7d1b"
2612 | dependencies = [
2613 | "anyhow",
2614 | "cargo_toml",
2615 | "heck 0.4.1",
2616 | "json-patch",
2617 | "semver",
2618 | "serde",
2619 | "serde_json",
2620 | "tauri-utils",
2621 | "tauri-winres",
2622 | ]
2623 |
2624 | [[package]]
2625 | name = "tauri-codegen"
2626 | version = "1.4.0"
2627 | source = "registry+https://github.com/rust-lang/crates.io-index"
2628 | checksum = "54ad2d49fdeab4a08717f5b49a163bdc72efc3b1950b6758245fcde79b645e1a"
2629 | dependencies = [
2630 | "base64 0.21.2",
2631 | "brotli",
2632 | "ico",
2633 | "json-patch",
2634 | "plist",
2635 | "png",
2636 | "proc-macro2",
2637 | "quote",
2638 | "regex",
2639 | "semver",
2640 | "serde",
2641 | "serde_json",
2642 | "sha2",
2643 | "tauri-utils",
2644 | "thiserror",
2645 | "time",
2646 | "uuid",
2647 | "walkdir",
2648 | ]
2649 |
2650 | [[package]]
2651 | name = "tauri-global-state-management"
2652 | version = "0.0.0"
2653 | dependencies = [
2654 | "serde",
2655 | "serde_json",
2656 | "tauri",
2657 | "tauri-build",
2658 | ]
2659 |
2660 | [[package]]
2661 | name = "tauri-macros"
2662 | version = "1.4.0"
2663 | source = "registry+https://github.com/rust-lang/crates.io-index"
2664 | checksum = "8eb12a2454e747896929338d93b0642144bb51e0dddbb36e579035731f0d76b7"
2665 | dependencies = [
2666 | "heck 0.4.1",
2667 | "proc-macro2",
2668 | "quote",
2669 | "syn 1.0.109",
2670 | "tauri-codegen",
2671 | "tauri-utils",
2672 | ]
2673 |
2674 | [[package]]
2675 | name = "tauri-runtime"
2676 | version = "0.14.0"
2677 | source = "registry+https://github.com/rust-lang/crates.io-index"
2678 | checksum = "108683199cb18f96d2d4134187bb789964143c845d2d154848dda209191fd769"
2679 | dependencies = [
2680 | "gtk",
2681 | "http",
2682 | "http-range",
2683 | "rand 0.8.5",
2684 | "raw-window-handle",
2685 | "serde",
2686 | "serde_json",
2687 | "tauri-utils",
2688 | "thiserror",
2689 | "url",
2690 | "uuid",
2691 | "webview2-com",
2692 | "windows 0.39.0",
2693 | ]
2694 |
2695 | [[package]]
2696 | name = "tauri-runtime-wry"
2697 | version = "0.14.0"
2698 | source = "registry+https://github.com/rust-lang/crates.io-index"
2699 | checksum = "0b7aa256a1407a3a091b5d843eccc1a5042289baf0a43d1179d9f0fcfea37c1b"
2700 | dependencies = [
2701 | "cocoa",
2702 | "gtk",
2703 | "percent-encoding",
2704 | "rand 0.8.5",
2705 | "raw-window-handle",
2706 | "tauri-runtime",
2707 | "tauri-utils",
2708 | "uuid",
2709 | "webkit2gtk",
2710 | "webview2-com",
2711 | "windows 0.39.0",
2712 | "wry",
2713 | ]
2714 |
2715 | [[package]]
2716 | name = "tauri-utils"
2717 | version = "1.4.0"
2718 | source = "registry+https://github.com/rust-lang/crates.io-index"
2719 | checksum = "03fc02bb6072bb397e1d473c6f76c953cda48b4a2d0cce605df284aa74a12e84"
2720 | dependencies = [
2721 | "brotli",
2722 | "ctor",
2723 | "dunce",
2724 | "glob",
2725 | "heck 0.4.1",
2726 | "html5ever",
2727 | "infer",
2728 | "json-patch",
2729 | "kuchiki",
2730 | "memchr",
2731 | "phf 0.10.1",
2732 | "proc-macro2",
2733 | "quote",
2734 | "semver",
2735 | "serde",
2736 | "serde_json",
2737 | "serde_with",
2738 | "thiserror",
2739 | "url",
2740 | "walkdir",
2741 | "windows 0.39.0",
2742 | ]
2743 |
2744 | [[package]]
2745 | name = "tauri-winres"
2746 | version = "0.1.1"
2747 | source = "registry+https://github.com/rust-lang/crates.io-index"
2748 | checksum = "5993dc129e544393574288923d1ec447c857f3f644187f4fbf7d9a875fbfc4fb"
2749 | dependencies = [
2750 | "embed-resource",
2751 | "toml 0.7.6",
2752 | ]
2753 |
2754 | [[package]]
2755 | name = "tempfile"
2756 | version = "3.7.0"
2757 | source = "registry+https://github.com/rust-lang/crates.io-index"
2758 | checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998"
2759 | dependencies = [
2760 | "cfg-if",
2761 | "fastrand",
2762 | "redox_syscall 0.3.5",
2763 | "rustix",
2764 | "windows-sys 0.48.0",
2765 | ]
2766 |
2767 | [[package]]
2768 | name = "tendril"
2769 | version = "0.4.3"
2770 | source = "registry+https://github.com/rust-lang/crates.io-index"
2771 | checksum = "d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0"
2772 | dependencies = [
2773 | "futf",
2774 | "mac",
2775 | "utf-8",
2776 | ]
2777 |
2778 | [[package]]
2779 | name = "thin-slice"
2780 | version = "0.1.1"
2781 | source = "registry+https://github.com/rust-lang/crates.io-index"
2782 | checksum = "8eaa81235c7058867fa8c0e7314f33dcce9c215f535d1913822a2b3f5e289f3c"
2783 |
2784 | [[package]]
2785 | name = "thiserror"
2786 | version = "1.0.44"
2787 | source = "registry+https://github.com/rust-lang/crates.io-index"
2788 | checksum = "611040a08a0439f8248d1990b111c95baa9c704c805fa1f62104b39655fd7f90"
2789 | dependencies = [
2790 | "thiserror-impl",
2791 | ]
2792 |
2793 | [[package]]
2794 | name = "thiserror-impl"
2795 | version = "1.0.44"
2796 | source = "registry+https://github.com/rust-lang/crates.io-index"
2797 | checksum = "090198534930841fab3a5d1bb637cde49e339654e606195f8d9c76eeb081dc96"
2798 | dependencies = [
2799 | "proc-macro2",
2800 | "quote",
2801 | "syn 2.0.27",
2802 | ]
2803 |
2804 | [[package]]
2805 | name = "thread_local"
2806 | version = "1.1.7"
2807 | source = "registry+https://github.com/rust-lang/crates.io-index"
2808 | checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
2809 | dependencies = [
2810 | "cfg-if",
2811 | "once_cell",
2812 | ]
2813 |
2814 | [[package]]
2815 | name = "time"
2816 | version = "0.3.23"
2817 | source = "registry+https://github.com/rust-lang/crates.io-index"
2818 | checksum = "59e399c068f43a5d116fedaf73b203fa4f9c519f17e2b34f63221d3792f81446"
2819 | dependencies = [
2820 | "itoa 1.0.9",
2821 | "serde",
2822 | "time-core",
2823 | "time-macros",
2824 | ]
2825 |
2826 | [[package]]
2827 | name = "time-core"
2828 | version = "0.1.1"
2829 | source = "registry+https://github.com/rust-lang/crates.io-index"
2830 | checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb"
2831 |
2832 | [[package]]
2833 | name = "time-macros"
2834 | version = "0.2.10"
2835 | source = "registry+https://github.com/rust-lang/crates.io-index"
2836 | checksum = "96ba15a897f3c86766b757e5ac7221554c6750054d74d5b28844fce5fb36a6c4"
2837 | dependencies = [
2838 | "time-core",
2839 | ]
2840 |
2841 | [[package]]
2842 | name = "tinyvec"
2843 | version = "1.6.0"
2844 | source = "registry+https://github.com/rust-lang/crates.io-index"
2845 | checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50"
2846 | dependencies = [
2847 | "tinyvec_macros",
2848 | ]
2849 |
2850 | [[package]]
2851 | name = "tinyvec_macros"
2852 | version = "0.1.1"
2853 | source = "registry+https://github.com/rust-lang/crates.io-index"
2854 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
2855 |
2856 | [[package]]
2857 | name = "tokio"
2858 | version = "1.29.1"
2859 | source = "registry+https://github.com/rust-lang/crates.io-index"
2860 | checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da"
2861 | dependencies = [
2862 | "autocfg",
2863 | "backtrace",
2864 | "bytes",
2865 | "num_cpus",
2866 | "pin-project-lite",
2867 | ]
2868 |
2869 | [[package]]
2870 | name = "toml"
2871 | version = "0.5.11"
2872 | source = "registry+https://github.com/rust-lang/crates.io-index"
2873 | checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
2874 | dependencies = [
2875 | "serde",
2876 | ]
2877 |
2878 | [[package]]
2879 | name = "toml"
2880 | version = "0.7.6"
2881 | source = "registry+https://github.com/rust-lang/crates.io-index"
2882 | checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542"
2883 | dependencies = [
2884 | "serde",
2885 | "serde_spanned",
2886 | "toml_datetime",
2887 | "toml_edit",
2888 | ]
2889 |
2890 | [[package]]
2891 | name = "toml_datetime"
2892 | version = "0.6.3"
2893 | source = "registry+https://github.com/rust-lang/crates.io-index"
2894 | checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
2895 | dependencies = [
2896 | "serde",
2897 | ]
2898 |
2899 | [[package]]
2900 | name = "toml_edit"
2901 | version = "0.19.14"
2902 | source = "registry+https://github.com/rust-lang/crates.io-index"
2903 | checksum = "f8123f27e969974a3dfba720fdb560be359f57b44302d280ba72e76a74480e8a"
2904 | dependencies = [
2905 | "indexmap 2.0.0",
2906 | "serde",
2907 | "serde_spanned",
2908 | "toml_datetime",
2909 | "winnow",
2910 | ]
2911 |
2912 | [[package]]
2913 | name = "tracing"
2914 | version = "0.1.37"
2915 | source = "registry+https://github.com/rust-lang/crates.io-index"
2916 | checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
2917 | dependencies = [
2918 | "cfg-if",
2919 | "pin-project-lite",
2920 | "tracing-attributes",
2921 | "tracing-core",
2922 | ]
2923 |
2924 | [[package]]
2925 | name = "tracing-attributes"
2926 | version = "0.1.26"
2927 | source = "registry+https://github.com/rust-lang/crates.io-index"
2928 | checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
2929 | dependencies = [
2930 | "proc-macro2",
2931 | "quote",
2932 | "syn 2.0.27",
2933 | ]
2934 |
2935 | [[package]]
2936 | name = "tracing-core"
2937 | version = "0.1.31"
2938 | source = "registry+https://github.com/rust-lang/crates.io-index"
2939 | checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
2940 | dependencies = [
2941 | "once_cell",
2942 | "valuable",
2943 | ]
2944 |
2945 | [[package]]
2946 | name = "tracing-log"
2947 | version = "0.1.3"
2948 | source = "registry+https://github.com/rust-lang/crates.io-index"
2949 | checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922"
2950 | dependencies = [
2951 | "lazy_static",
2952 | "log",
2953 | "tracing-core",
2954 | ]
2955 |
2956 | [[package]]
2957 | name = "tracing-subscriber"
2958 | version = "0.3.17"
2959 | source = "registry+https://github.com/rust-lang/crates.io-index"
2960 | checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
2961 | dependencies = [
2962 | "matchers",
2963 | "nu-ansi-term",
2964 | "once_cell",
2965 | "regex",
2966 | "sharded-slab",
2967 | "smallvec",
2968 | "thread_local",
2969 | "tracing",
2970 | "tracing-core",
2971 | "tracing-log",
2972 | ]
2973 |
2974 | [[package]]
2975 | name = "treediff"
2976 | version = "4.0.2"
2977 | source = "registry+https://github.com/rust-lang/crates.io-index"
2978 | checksum = "52984d277bdf2a751072b5df30ec0377febdb02f7696d64c2d7d54630bac4303"
2979 | dependencies = [
2980 | "serde_json",
2981 | ]
2982 |
2983 | [[package]]
2984 | name = "typenum"
2985 | version = "1.16.0"
2986 | source = "registry+https://github.com/rust-lang/crates.io-index"
2987 | checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba"
2988 |
2989 | [[package]]
2990 | name = "unicode-bidi"
2991 | version = "0.3.13"
2992 | source = "registry+https://github.com/rust-lang/crates.io-index"
2993 | checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
2994 |
2995 | [[package]]
2996 | name = "unicode-ident"
2997 | version = "1.0.11"
2998 | source = "registry+https://github.com/rust-lang/crates.io-index"
2999 | checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c"
3000 |
3001 | [[package]]
3002 | name = "unicode-normalization"
3003 | version = "0.1.22"
3004 | source = "registry+https://github.com/rust-lang/crates.io-index"
3005 | checksum = "5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921"
3006 | dependencies = [
3007 | "tinyvec",
3008 | ]
3009 |
3010 | [[package]]
3011 | name = "unicode-segmentation"
3012 | version = "1.10.1"
3013 | source = "registry+https://github.com/rust-lang/crates.io-index"
3014 | checksum = "1dd624098567895118886609431a7c3b8f516e41d30e0643f03d94592a147e36"
3015 |
3016 | [[package]]
3017 | name = "url"
3018 | version = "2.4.0"
3019 | source = "registry+https://github.com/rust-lang/crates.io-index"
3020 | checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb"
3021 | dependencies = [
3022 | "form_urlencoded",
3023 | "idna",
3024 | "percent-encoding",
3025 | "serde",
3026 | ]
3027 |
3028 | [[package]]
3029 | name = "utf-8"
3030 | version = "0.7.6"
3031 | source = "registry+https://github.com/rust-lang/crates.io-index"
3032 | checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
3033 |
3034 | [[package]]
3035 | name = "uuid"
3036 | version = "1.4.1"
3037 | source = "registry+https://github.com/rust-lang/crates.io-index"
3038 | checksum = "79daa5ed5740825c40b389c5e50312b9c86df53fccd33f281df655642b43869d"
3039 | dependencies = [
3040 | "getrandom 0.2.10",
3041 | ]
3042 |
3043 | [[package]]
3044 | name = "valuable"
3045 | version = "0.1.0"
3046 | source = "registry+https://github.com/rust-lang/crates.io-index"
3047 | checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
3048 |
3049 | [[package]]
3050 | name = "version-compare"
3051 | version = "0.0.11"
3052 | source = "registry+https://github.com/rust-lang/crates.io-index"
3053 | checksum = "1c18c859eead79d8b95d09e4678566e8d70105c4e7b251f707a03df32442661b"
3054 |
3055 | [[package]]
3056 | name = "version-compare"
3057 | version = "0.1.1"
3058 | source = "registry+https://github.com/rust-lang/crates.io-index"
3059 | checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
3060 |
3061 | [[package]]
3062 | name = "version_check"
3063 | version = "0.9.4"
3064 | source = "registry+https://github.com/rust-lang/crates.io-index"
3065 | checksum = "49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f"
3066 |
3067 | [[package]]
3068 | name = "vswhom"
3069 | version = "0.1.0"
3070 | source = "registry+https://github.com/rust-lang/crates.io-index"
3071 | checksum = "be979b7f07507105799e854203b470ff7c78a1639e330a58f183b5fea574608b"
3072 | dependencies = [
3073 | "libc",
3074 | "vswhom-sys",
3075 | ]
3076 |
3077 | [[package]]
3078 | name = "vswhom-sys"
3079 | version = "0.1.2"
3080 | source = "registry+https://github.com/rust-lang/crates.io-index"
3081 | checksum = "d3b17ae1f6c8a2b28506cd96d412eebf83b4a0ff2cbefeeb952f2f9dfa44ba18"
3082 | dependencies = [
3083 | "cc",
3084 | "libc",
3085 | ]
3086 |
3087 | [[package]]
3088 | name = "walkdir"
3089 | version = "2.3.3"
3090 | source = "registry+https://github.com/rust-lang/crates.io-index"
3091 | checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
3092 | dependencies = [
3093 | "same-file",
3094 | "winapi-util",
3095 | ]
3096 |
3097 | [[package]]
3098 | name = "wasi"
3099 | version = "0.9.0+wasi-snapshot-preview1"
3100 | source = "registry+https://github.com/rust-lang/crates.io-index"
3101 | checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519"
3102 |
3103 | [[package]]
3104 | name = "wasi"
3105 | version = "0.11.0+wasi-snapshot-preview1"
3106 | source = "registry+https://github.com/rust-lang/crates.io-index"
3107 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
3108 |
3109 | [[package]]
3110 | name = "wasm-bindgen"
3111 | version = "0.2.87"
3112 | source = "registry+https://github.com/rust-lang/crates.io-index"
3113 | checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342"
3114 | dependencies = [
3115 | "cfg-if",
3116 | "wasm-bindgen-macro",
3117 | ]
3118 |
3119 | [[package]]
3120 | name = "wasm-bindgen-backend"
3121 | version = "0.2.87"
3122 | source = "registry+https://github.com/rust-lang/crates.io-index"
3123 | checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd"
3124 | dependencies = [
3125 | "bumpalo",
3126 | "log",
3127 | "once_cell",
3128 | "proc-macro2",
3129 | "quote",
3130 | "syn 2.0.27",
3131 | "wasm-bindgen-shared",
3132 | ]
3133 |
3134 | [[package]]
3135 | name = "wasm-bindgen-macro"
3136 | version = "0.2.87"
3137 | source = "registry+https://github.com/rust-lang/crates.io-index"
3138 | checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d"
3139 | dependencies = [
3140 | "quote",
3141 | "wasm-bindgen-macro-support",
3142 | ]
3143 |
3144 | [[package]]
3145 | name = "wasm-bindgen-macro-support"
3146 | version = "0.2.87"
3147 | source = "registry+https://github.com/rust-lang/crates.io-index"
3148 | checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
3149 | dependencies = [
3150 | "proc-macro2",
3151 | "quote",
3152 | "syn 2.0.27",
3153 | "wasm-bindgen-backend",
3154 | "wasm-bindgen-shared",
3155 | ]
3156 |
3157 | [[package]]
3158 | name = "wasm-bindgen-shared"
3159 | version = "0.2.87"
3160 | source = "registry+https://github.com/rust-lang/crates.io-index"
3161 | checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1"
3162 |
3163 | [[package]]
3164 | name = "webkit2gtk"
3165 | version = "0.18.2"
3166 | source = "registry+https://github.com/rust-lang/crates.io-index"
3167 | checksum = "b8f859735e4a452aeb28c6c56a852967a8a76c8eb1cc32dbf931ad28a13d6370"
3168 | dependencies = [
3169 | "bitflags 1.3.2",
3170 | "cairo-rs",
3171 | "gdk",
3172 | "gdk-sys",
3173 | "gio",
3174 | "gio-sys",
3175 | "glib",
3176 | "glib-sys",
3177 | "gobject-sys",
3178 | "gtk",
3179 | "gtk-sys",
3180 | "javascriptcore-rs",
3181 | "libc",
3182 | "once_cell",
3183 | "soup2",
3184 | "webkit2gtk-sys",
3185 | ]
3186 |
3187 | [[package]]
3188 | name = "webkit2gtk-sys"
3189 | version = "0.18.0"
3190 | source = "registry+https://github.com/rust-lang/crates.io-index"
3191 | checksum = "4d76ca6ecc47aeba01ec61e480139dda143796abcae6f83bcddf50d6b5b1dcf3"
3192 | dependencies = [
3193 | "atk-sys",
3194 | "bitflags 1.3.2",
3195 | "cairo-sys-rs",
3196 | "gdk-pixbuf-sys",
3197 | "gdk-sys",
3198 | "gio-sys",
3199 | "glib-sys",
3200 | "gobject-sys",
3201 | "gtk-sys",
3202 | "javascriptcore-rs-sys",
3203 | "libc",
3204 | "pango-sys",
3205 | "pkg-config",
3206 | "soup2-sys",
3207 | "system-deps 6.1.1",
3208 | ]
3209 |
3210 | [[package]]
3211 | name = "webview2-com"
3212 | version = "0.19.1"
3213 | source = "registry+https://github.com/rust-lang/crates.io-index"
3214 | checksum = "b4a769c9f1a64a8734bde70caafac2b96cada12cd4aefa49196b3a386b8b4178"
3215 | dependencies = [
3216 | "webview2-com-macros",
3217 | "webview2-com-sys",
3218 | "windows 0.39.0",
3219 | "windows-implement",
3220 | ]
3221 |
3222 | [[package]]
3223 | name = "webview2-com-macros"
3224 | version = "0.6.0"
3225 | source = "registry+https://github.com/rust-lang/crates.io-index"
3226 | checksum = "eaebe196c01691db62e9e4ca52c5ef1e4fd837dcae27dae3ada599b5a8fd05ac"
3227 | dependencies = [
3228 | "proc-macro2",
3229 | "quote",
3230 | "syn 1.0.109",
3231 | ]
3232 |
3233 | [[package]]
3234 | name = "webview2-com-sys"
3235 | version = "0.19.0"
3236 | source = "registry+https://github.com/rust-lang/crates.io-index"
3237 | checksum = "aac48ef20ddf657755fdcda8dfed2a7b4fc7e4581acce6fe9b88c3d64f29dee7"
3238 | dependencies = [
3239 | "regex",
3240 | "serde",
3241 | "serde_json",
3242 | "thiserror",
3243 | "windows 0.39.0",
3244 | "windows-bindgen",
3245 | "windows-metadata",
3246 | ]
3247 |
3248 | [[package]]
3249 | name = "winapi"
3250 | version = "0.3.9"
3251 | source = "registry+https://github.com/rust-lang/crates.io-index"
3252 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
3253 | dependencies = [
3254 | "winapi-i686-pc-windows-gnu",
3255 | "winapi-x86_64-pc-windows-gnu",
3256 | ]
3257 |
3258 | [[package]]
3259 | name = "winapi-i686-pc-windows-gnu"
3260 | version = "0.4.0"
3261 | source = "registry+https://github.com/rust-lang/crates.io-index"
3262 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
3263 |
3264 | [[package]]
3265 | name = "winapi-util"
3266 | version = "0.1.5"
3267 | source = "registry+https://github.com/rust-lang/crates.io-index"
3268 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178"
3269 | dependencies = [
3270 | "winapi",
3271 | ]
3272 |
3273 | [[package]]
3274 | name = "winapi-x86_64-pc-windows-gnu"
3275 | version = "0.4.0"
3276 | source = "registry+https://github.com/rust-lang/crates.io-index"
3277 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
3278 |
3279 | [[package]]
3280 | name = "windows"
3281 | version = "0.39.0"
3282 | source = "registry+https://github.com/rust-lang/crates.io-index"
3283 | checksum = "f1c4bd0a50ac6020f65184721f758dba47bb9fbc2133df715ec74a237b26794a"
3284 | dependencies = [
3285 | "windows-implement",
3286 | "windows_aarch64_msvc 0.39.0",
3287 | "windows_i686_gnu 0.39.0",
3288 | "windows_i686_msvc 0.39.0",
3289 | "windows_x86_64_gnu 0.39.0",
3290 | "windows_x86_64_msvc 0.39.0",
3291 | ]
3292 |
3293 | [[package]]
3294 | name = "windows"
3295 | version = "0.48.0"
3296 | source = "registry+https://github.com/rust-lang/crates.io-index"
3297 | checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
3298 | dependencies = [
3299 | "windows-targets",
3300 | ]
3301 |
3302 | [[package]]
3303 | name = "windows-bindgen"
3304 | version = "0.39.0"
3305 | source = "registry+https://github.com/rust-lang/crates.io-index"
3306 | checksum = "68003dbd0e38abc0fb85b939240f4bce37c43a5981d3df37ccbaaa981b47cb41"
3307 | dependencies = [
3308 | "windows-metadata",
3309 | "windows-tokens",
3310 | ]
3311 |
3312 | [[package]]
3313 | name = "windows-implement"
3314 | version = "0.39.0"
3315 | source = "registry+https://github.com/rust-lang/crates.io-index"
3316 | checksum = "ba01f98f509cb5dc05f4e5fc95e535f78260f15fea8fe1a8abdd08f774f1cee7"
3317 | dependencies = [
3318 | "syn 1.0.109",
3319 | "windows-tokens",
3320 | ]
3321 |
3322 | [[package]]
3323 | name = "windows-metadata"
3324 | version = "0.39.0"
3325 | source = "registry+https://github.com/rust-lang/crates.io-index"
3326 | checksum = "9ee5e275231f07c6e240d14f34e1b635bf1faa1c76c57cfd59a5cdb9848e4278"
3327 |
3328 | [[package]]
3329 | name = "windows-sys"
3330 | version = "0.42.0"
3331 | source = "registry+https://github.com/rust-lang/crates.io-index"
3332 | checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
3333 | dependencies = [
3334 | "windows_aarch64_gnullvm 0.42.2",
3335 | "windows_aarch64_msvc 0.42.2",
3336 | "windows_i686_gnu 0.42.2",
3337 | "windows_i686_msvc 0.42.2",
3338 | "windows_x86_64_gnu 0.42.2",
3339 | "windows_x86_64_gnullvm 0.42.2",
3340 | "windows_x86_64_msvc 0.42.2",
3341 | ]
3342 |
3343 | [[package]]
3344 | name = "windows-sys"
3345 | version = "0.48.0"
3346 | source = "registry+https://github.com/rust-lang/crates.io-index"
3347 | checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
3348 | dependencies = [
3349 | "windows-targets",
3350 | ]
3351 |
3352 | [[package]]
3353 | name = "windows-targets"
3354 | version = "0.48.1"
3355 | source = "registry+https://github.com/rust-lang/crates.io-index"
3356 | checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f"
3357 | dependencies = [
3358 | "windows_aarch64_gnullvm 0.48.0",
3359 | "windows_aarch64_msvc 0.48.0",
3360 | "windows_i686_gnu 0.48.0",
3361 | "windows_i686_msvc 0.48.0",
3362 | "windows_x86_64_gnu 0.48.0",
3363 | "windows_x86_64_gnullvm 0.48.0",
3364 | "windows_x86_64_msvc 0.48.0",
3365 | ]
3366 |
3367 | [[package]]
3368 | name = "windows-tokens"
3369 | version = "0.39.0"
3370 | source = "registry+https://github.com/rust-lang/crates.io-index"
3371 | checksum = "f838de2fe15fe6bac988e74b798f26499a8b21a9d97edec321e79b28d1d7f597"
3372 |
3373 | [[package]]
3374 | name = "windows_aarch64_gnullvm"
3375 | version = "0.42.2"
3376 | source = "registry+https://github.com/rust-lang/crates.io-index"
3377 | checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
3378 |
3379 | [[package]]
3380 | name = "windows_aarch64_gnullvm"
3381 | version = "0.48.0"
3382 | source = "registry+https://github.com/rust-lang/crates.io-index"
3383 | checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
3384 |
3385 | [[package]]
3386 | name = "windows_aarch64_msvc"
3387 | version = "0.39.0"
3388 | source = "registry+https://github.com/rust-lang/crates.io-index"
3389 | checksum = "ec7711666096bd4096ffa835238905bb33fb87267910e154b18b44eaabb340f2"
3390 |
3391 | [[package]]
3392 | name = "windows_aarch64_msvc"
3393 | version = "0.42.2"
3394 | source = "registry+https://github.com/rust-lang/crates.io-index"
3395 | checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
3396 |
3397 | [[package]]
3398 | name = "windows_aarch64_msvc"
3399 | version = "0.48.0"
3400 | source = "registry+https://github.com/rust-lang/crates.io-index"
3401 | checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
3402 |
3403 | [[package]]
3404 | name = "windows_i686_gnu"
3405 | version = "0.39.0"
3406 | source = "registry+https://github.com/rust-lang/crates.io-index"
3407 | checksum = "763fc57100a5f7042e3057e7e8d9bdd7860d330070251a73d003563a3bb49e1b"
3408 |
3409 | [[package]]
3410 | name = "windows_i686_gnu"
3411 | version = "0.42.2"
3412 | source = "registry+https://github.com/rust-lang/crates.io-index"
3413 | checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
3414 |
3415 | [[package]]
3416 | name = "windows_i686_gnu"
3417 | version = "0.48.0"
3418 | source = "registry+https://github.com/rust-lang/crates.io-index"
3419 | checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
3420 |
3421 | [[package]]
3422 | name = "windows_i686_msvc"
3423 | version = "0.39.0"
3424 | source = "registry+https://github.com/rust-lang/crates.io-index"
3425 | checksum = "7bc7cbfe58828921e10a9f446fcaaf649204dcfe6c1ddd712c5eebae6bda1106"
3426 |
3427 | [[package]]
3428 | name = "windows_i686_msvc"
3429 | version = "0.42.2"
3430 | source = "registry+https://github.com/rust-lang/crates.io-index"
3431 | checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
3432 |
3433 | [[package]]
3434 | name = "windows_i686_msvc"
3435 | version = "0.48.0"
3436 | source = "registry+https://github.com/rust-lang/crates.io-index"
3437 | checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00"
3438 |
3439 | [[package]]
3440 | name = "windows_x86_64_gnu"
3441 | version = "0.39.0"
3442 | source = "registry+https://github.com/rust-lang/crates.io-index"
3443 | checksum = "6868c165637d653ae1e8dc4d82c25d4f97dd6605eaa8d784b5c6e0ab2a252b65"
3444 |
3445 | [[package]]
3446 | name = "windows_x86_64_gnu"
3447 | version = "0.42.2"
3448 | source = "registry+https://github.com/rust-lang/crates.io-index"
3449 | checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
3450 |
3451 | [[package]]
3452 | name = "windows_x86_64_gnu"
3453 | version = "0.48.0"
3454 | source = "registry+https://github.com/rust-lang/crates.io-index"
3455 | checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
3456 |
3457 | [[package]]
3458 | name = "windows_x86_64_gnullvm"
3459 | version = "0.42.2"
3460 | source = "registry+https://github.com/rust-lang/crates.io-index"
3461 | checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
3462 |
3463 | [[package]]
3464 | name = "windows_x86_64_gnullvm"
3465 | version = "0.48.0"
3466 | source = "registry+https://github.com/rust-lang/crates.io-index"
3467 | checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953"
3468 |
3469 | [[package]]
3470 | name = "windows_x86_64_msvc"
3471 | version = "0.39.0"
3472 | source = "registry+https://github.com/rust-lang/crates.io-index"
3473 | checksum = "5e4d40883ae9cae962787ca76ba76390ffa29214667a111db9e0a1ad8377e809"
3474 |
3475 | [[package]]
3476 | name = "windows_x86_64_msvc"
3477 | version = "0.42.2"
3478 | source = "registry+https://github.com/rust-lang/crates.io-index"
3479 | checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
3480 |
3481 | [[package]]
3482 | name = "windows_x86_64_msvc"
3483 | version = "0.48.0"
3484 | source = "registry+https://github.com/rust-lang/crates.io-index"
3485 | checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
3486 |
3487 | [[package]]
3488 | name = "winnow"
3489 | version = "0.5.0"
3490 | source = "registry+https://github.com/rust-lang/crates.io-index"
3491 | checksum = "81fac9742fd1ad1bd9643b991319f72dd031016d44b77039a26977eb667141e7"
3492 | dependencies = [
3493 | "memchr",
3494 | ]
3495 |
3496 | [[package]]
3497 | name = "winreg"
3498 | version = "0.11.0"
3499 | source = "registry+https://github.com/rust-lang/crates.io-index"
3500 | checksum = "76a1a57ff50e9b408431e8f97d5456f2807f8eb2a2cd79b06068fc87f8ecf189"
3501 | dependencies = [
3502 | "cfg-if",
3503 | "winapi",
3504 | ]
3505 |
3506 | [[package]]
3507 | name = "wry"
3508 | version = "0.24.3"
3509 | source = "registry+https://github.com/rust-lang/crates.io-index"
3510 | checksum = "33748f35413c8a98d45f7a08832d848c0c5915501803d1faade5a4ebcd258cea"
3511 | dependencies = [
3512 | "base64 0.13.1",
3513 | "block",
3514 | "cocoa",
3515 | "core-graphics",
3516 | "crossbeam-channel",
3517 | "dunce",
3518 | "gdk",
3519 | "gio",
3520 | "glib",
3521 | "gtk",
3522 | "html5ever",
3523 | "http",
3524 | "kuchiki",
3525 | "libc",
3526 | "log",
3527 | "objc",
3528 | "objc_id",
3529 | "once_cell",
3530 | "serde",
3531 | "serde_json",
3532 | "sha2",
3533 | "soup2",
3534 | "tao",
3535 | "thiserror",
3536 | "url",
3537 | "webkit2gtk",
3538 | "webkit2gtk-sys",
3539 | "webview2-com",
3540 | "windows 0.39.0",
3541 | "windows-implement",
3542 | ]
3543 |
3544 | [[package]]
3545 | name = "x11"
3546 | version = "2.21.0"
3547 | source = "registry+https://github.com/rust-lang/crates.io-index"
3548 | checksum = "502da5464ccd04011667b11c435cb992822c2c0dbde1770c988480d312a0db2e"
3549 | dependencies = [
3550 | "libc",
3551 | "pkg-config",
3552 | ]
3553 |
3554 | [[package]]
3555 | name = "x11-dl"
3556 | version = "2.21.0"
3557 | source = "registry+https://github.com/rust-lang/crates.io-index"
3558 | checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
3559 | dependencies = [
3560 | "libc",
3561 | "once_cell",
3562 | "pkg-config",
3563 | ]
3564 |
3565 | [[package]]
3566 | name = "xattr"
3567 | version = "0.2.3"
3568 | source = "registry+https://github.com/rust-lang/crates.io-index"
3569 | checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc"
3570 | dependencies = [
3571 | "libc",
3572 | ]
3573 |
--------------------------------------------------------------------------------
/src-tauri/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "tauri-global-state-management"
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/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/128x128.png
--------------------------------------------------------------------------------
/src-tauri/icons/128x128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/128x128@2x.png
--------------------------------------------------------------------------------
/src-tauri/icons/32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/32x32.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square107x107Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square107x107Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square142x142Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square142x142Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square150x150Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square150x150Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square284x284Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square284x284Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square30x30Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square30x30Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square310x310Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square310x310Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square44x44Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square44x44Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square71x71Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square71x71Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/Square89x89Logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/Square89x89Logo.png
--------------------------------------------------------------------------------
/src-tauri/icons/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/StoreLogo.png
--------------------------------------------------------------------------------
/src-tauri/icons/icon.icns:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/icon.icns
--------------------------------------------------------------------------------
/src-tauri/icons/icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/icon.ico
--------------------------------------------------------------------------------
/src-tauri/icons/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/robosushie/tauri-global-state-management/e6c5995cd40f80949ca26e54060b49efbb9d5938/src-tauri/icons/icon.png
--------------------------------------------------------------------------------
/src-tauri/src/autogen/constants.rs:
--------------------------------------------------------------------------------
1 | #![allow(non_camel_case_types)]
2 |
3 | // Autogenerated file do not edit !!!!!
4 |
5 | pub const STATE_CHANGE_EVENT: &str = "state_change_event";
6 | pub const STATE_SYNC_EVENT: &str = "state_sync_event";
7 | pub enum GLOBAL_APP_STATE_MACRO {
8 | COUNT = 0,
9 | CHECK = 1,
10 | }
11 |
12 | impl From for GLOBAL_APP_STATE_MACRO {
13 | fn from(item: u32) -> Self {
14 | match item {
15 | 0 => GLOBAL_APP_STATE_MACRO::COUNT,
16 | 1 => GLOBAL_APP_STATE_MACRO::CHECK,
17 | _ => panic!("Not a valid value for the enum GLOBAL_APP_STATE_MACRO"),
18 | }
19 | }
20 | }
21 |
22 | impl Into for GLOBAL_APP_STATE_MACRO {
23 | fn into(self) -> u32 {
24 | match self {
25 | GLOBAL_APP_STATE_MACRO::COUNT => 0,
26 | GLOBAL_APP_STATE_MACRO::CHECK => 1,
27 | }
28 | }
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/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 | mod autogen{
5 | pub mod constants;
6 | }
7 |
8 | mod states{
9 | pub mod states;
10 | }
11 |
12 | use crate::states::states::subscribe_state_events;
13 |
14 | fn main() {
15 | tauri::Builder::default()
16 | .setup(|app| {
17 | subscribe_state_events(app.handle());
18 | Ok(())
19 | })
20 | .manage(states::states::set_default_state())
21 | .run(tauri::generate_context!())
22 | .expect("error while running tauri application");
23 | }
24 |
--------------------------------------------------------------------------------
/src-tauri/src/states/states.rs:
--------------------------------------------------------------------------------
1 | use std::sync::Mutex;
2 | use tauri::Manager;
3 | use tauri::AppHandle;
4 |
5 | use crate::autogen::constants::STATE_CHANGE_EVENT;
6 | use crate::autogen::constants::STATE_SYNC_EVENT;
7 | use crate::autogen::constants::GLOBAL_APP_STATE_MACRO;
8 |
9 | #[derive(Clone, serde::Serialize, serde::Deserialize)]
10 | #[serde(untagged)]
11 | enum Value {
12 | Bool(bool),
13 | String(String),
14 | Number(i32),
15 | }
16 |
17 | // the payload type must implement `Serialize` and `Clone`.
18 | #[derive(Clone, serde::Serialize, serde::Deserialize)]
19 | struct Payload {
20 | key: u32,
21 | value: Value,
22 | }
23 |
24 |
25 | pub struct GlobalAppState {
26 | count : Mutex,
27 | check: Mutex
28 | }
29 |
30 | pub fn set_default_state() -> GlobalAppState {
31 | GlobalAppState {
32 | count: Mutex::new(0),
33 | check: Mutex::new(false)
34 | }
35 | }
36 |
37 | fn emit_state_sync(payload: Payload, app_handle: AppHandle) {
38 | let state = app_handle.state::();
39 | match GLOBAL_APP_STATE_MACRO::from(payload.key) {
40 | GLOBAL_APP_STATE_MACRO::COUNT => {
41 | let mut count = state.count.lock().unwrap();
42 | if let Value::Number(data) = payload.value {
43 | *count = data;
44 | app_handle.emit_all(STATE_SYNC_EVENT, Payload{key: payload.key, value:Value::Number(data)}).unwrap();
45 | }
46 |
47 | },
48 | GLOBAL_APP_STATE_MACRO::CHECK => {
49 | let mut check = state.check.lock().unwrap();
50 | if let Value::Bool(data) = payload.value {
51 | *check = data;
52 | app_handle.emit_all(STATE_SYNC_EVENT, Payload{key: payload.key, value:Value::Bool(data)}).unwrap();
53 | }
54 | }
55 | }
56 | }
57 |
58 |
59 |
60 | pub fn subscribe_state_events(app_handle: tauri::AppHandle) {
61 | let app_handle_clone = app_handle.clone();
62 | let _id = app_handle.listen_global(STATE_CHANGE_EVENT, move |event| {
63 | if let Some(payload) = event.payload() {
64 | let data: Result = serde_json::from_str(payload);
65 | match data {
66 | Ok(data) =>{
67 | emit_state_sync(data, app_handle_clone.clone())
68 | }
69 | Err(e) => {
70 | println!("Failed to deserialize payload: {}", e);
71 | }
72 | }
73 | }
74 | });
75 | }
76 |
77 |
--------------------------------------------------------------------------------
/src-tauri/tauri.conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "build": {
3 | "beforeDevCommand": "pnpm dev",
4 | "beforeBuildCommand": "pnpm build",
5 | "devPath": "http://localhost:1420",
6 | "distDir": "../dist",
7 | "withGlobalTauri": false
8 | },
9 | "package": {
10 | "productName": "tauri-global-state-management",
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 | "label": "secondary",
39 | "fullscreen": false,
40 | "resizable": true,
41 | "title": "Secondary Window",
42 | "width": 800,
43 | "height": 600,
44 | "url": "index.html"
45 | },
46 | {
47 | "fullscreen": false,
48 | "resizable": true,
49 | "title": "Main Window",
50 | "width": 800,
51 | "height": 600
52 | }
53 | ]
54 | }
55 | }
56 |
--------------------------------------------------------------------------------
/src/App.css:
--------------------------------------------------------------------------------
1 | .app_container {
2 | width: 100vw;
3 | height: 100vh;
4 | display: flex;
5 | flex-direction: column;
6 | }
7 |
8 | .menu_container {
9 | width: 100%;
10 | flex-grow: 1;
11 | display: flex;
12 | flex-direction: column;
13 | justify-content: center;
14 | align-items: center;
15 | }
16 |
17 | .menu_item {
18 | width: 50%;
19 | padding: 40px;
20 | display: flex;
21 | flex-direction: column;
22 | gap: 20px;
23 | }
24 |
25 | .menu_heading {
26 | font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
27 | }
28 |
29 | .menu_button_container {
30 | width: 100%;
31 | display: flex;
32 | justify-content: space-between;
33 | }
34 |
35 | .count_btn {
36 | width: 40%;
37 | }
38 | .menu_button {
39 | font-size: medium;
40 | font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
41 | color: white;
42 | background-color: #008cba;
43 | padding: 10px;
44 | }
45 |
--------------------------------------------------------------------------------
/src/App.tsx:
--------------------------------------------------------------------------------
1 | import { useEffect } from "react";
2 | import useGlobalAppStore, { subscribeStateSync } from "@states/global-state";
3 |
4 | import "./App.css";
5 |
6 | function App() {
7 | const { count, setCount, check, setCheck } = useGlobalAppStore();
8 |
9 | useEffect(() => {
10 | const unsubscribeStateSync = subscribeStateSync();
11 | return () => {
12 | unsubscribeStateSync.then((unsubscribe) => unsubscribe());
13 | };
14 | }, []);
15 |
16 | return (
17 |
18 |
19 |
20 |
Count: {count}
21 |
22 | setCount(count + 1)}
25 | >
26 | Increment
27 |
28 | setCount(count - 1)}
31 | >
32 | Decrement
33 |
34 |
35 |
36 |
37 |
Check: {check.toString()}
38 | setCheck(!check)}>
39 | Toggle
40 |
41 |
42 |
43 |
44 | );
45 | }
46 |
47 | export default App;
48 |
--------------------------------------------------------------------------------
/src/assets/react.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/src/constants/events.ts:
--------------------------------------------------------------------------------
1 | // Thie file is used for autogenerating rust code so make sure you maintain the structure otherwise it would create unwanted issues
2 |
3 | const EVENTS: {
4 | STATE_CHANGE_EVENT: string;
5 | STATE_SYNC_EVENT: string;
6 | } = {
7 | STATE_CHANGE_EVENT: "state_change_event",
8 | STATE_SYNC_EVENT: "state_sync_event",
9 | };
10 |
11 | export default EVENTS;
12 |
--------------------------------------------------------------------------------
/src/constants/global.ts:
--------------------------------------------------------------------------------
1 | enum GLOBAL_APP_STATE_MACRO {
2 | COUNT = 0,
3 | CHECK,
4 | }
5 |
6 | export default GLOBAL_APP_STATE_MACRO;
7 |
--------------------------------------------------------------------------------
/src/constants/index.ts:
--------------------------------------------------------------------------------
1 | import GLOBAL_APP_STATE_MACRO from "./global";
2 | import EVENTS from "./events";
3 |
4 | export { EVENTS, GLOBAL_APP_STATE_MACRO };
5 |
--------------------------------------------------------------------------------
/src/main.tsx:
--------------------------------------------------------------------------------
1 | import React from "react";
2 | import ReactDOM from "react-dom/client";
3 | import App from "./App";
4 | import "./styles.css";
5 |
6 | ReactDOM.createRoot(document.getElementById("root") as HTMLElement).render(
7 |
8 |
9 | ,
10 | );
11 |
--------------------------------------------------------------------------------
/src/states/global-state.ts:
--------------------------------------------------------------------------------
1 | import { emit as emitStateEvent, listen } from "@tauri-apps/api/event";
2 | import { GlobalAppState } from "@app/types/state";
3 | import { create } from "zustand";
4 |
5 | import { EVENTS, GLOBAL_APP_STATE_MACRO } from "@app/constants";
6 |
7 | const emit = (key: number, value: any) => {
8 | console.log(Object.keys(value)[0]);
9 | emitStateEvent(EVENTS.STATE_CHANGE_EVENT, {
10 | key: key,
11 | value: value,
12 | });
13 | };
14 |
15 | const useGlobalAppStore = create(() => ({
16 | count: 0,
17 | check: false,
18 | setCount: (count: number) => {
19 | emit(GLOBAL_APP_STATE_MACRO.COUNT, count);
20 | },
21 | setCheck: (check: boolean) => {
22 | emit(GLOBAL_APP_STATE_MACRO.CHECK, check);
23 | },
24 | }));
25 |
26 | const getKey = (key: number) => {
27 | if (key == GLOBAL_APP_STATE_MACRO.COUNT) {
28 | return "count";
29 | } else if (key == GLOBAL_APP_STATE_MACRO.CHECK) {
30 | return "check";
31 | }
32 | };
33 |
34 | const subscribeStateSync = async () => {
35 | const unsubscribeStateSyncListener = await listen(
36 | EVENTS.STATE_SYNC_EVENT,
37 | (event) => {
38 | const key = (event.payload as any).key;
39 | const value = (event.payload as any).value;
40 | console.log(event);
41 | useGlobalAppStore.setState({ [getKey(key) as string]: value });
42 | }
43 | );
44 |
45 | return async () => {
46 | unsubscribeStateSyncListener();
47 | };
48 | };
49 |
50 | export default useGlobalAppStore;
51 | export { subscribeStateSync };
52 |
--------------------------------------------------------------------------------
/src/styles.css:
--------------------------------------------------------------------------------
1 | * {
2 | box-sizing: border-box;
3 | margin: 0;
4 | padding: 0;
5 | }
6 |
--------------------------------------------------------------------------------
/src/types/state.ts:
--------------------------------------------------------------------------------
1 | export interface GlobalAppState {
2 | count: number;
3 | check: boolean;
4 | setCount: (count: number) => void;
5 | setCheck: (check: boolean) => void;
6 | }
7 |
--------------------------------------------------------------------------------
/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES2020",
4 | "useDefineForClassFields": true,
5 | "lib": ["ES2020", "DOM", "DOM.Iterable"],
6 | "module": "ESNext",
7 | "skipLibCheck": true,
8 |
9 | /* Bundler mode */
10 | "moduleResolution": "bundler",
11 | "allowImportingTsExtensions": true,
12 | "resolveJsonModule": true,
13 | "isolatedModules": true,
14 | "noEmit": true,
15 | "jsx": "react-jsx",
16 | "baseUrl": ".",
17 | "paths": {
18 | "@app/*": ["src/*"],
19 | "@assets/*": ["src/assets/*"],
20 | "@constants/*": ["src/constants/*"],
21 | "@states/*": ["src/states/*"],
22 | "@types/*": ["src/types/*"]
23 | },
24 |
25 | /* Linting */
26 | "strict": true,
27 | "noUnusedLocals": true,
28 | "noUnusedParameters": true,
29 | "noFallthroughCasesInSwitch": true
30 | },
31 | "include": ["src"],
32 | "references": [{ "path": "./tsconfig.node.json" }]
33 | }
34 |
--------------------------------------------------------------------------------
/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "skipLibCheck": true,
5 | "module": "ESNext",
6 | "moduleResolution": "bundler",
7 | "allowSyntheticDefaultImports": true
8 | },
9 | "include": ["vite.config.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/vite.config.ts:
--------------------------------------------------------------------------------
1 | import { defineConfig } from "vite";
2 | import react from "@vitejs/plugin-react";
3 | import path from "path";
4 |
5 | // https://vitejs.dev/config/
6 | export default defineConfig(async () => ({
7 | plugins: [react()],
8 |
9 | // Vite options tailored for Tauri development and only applied in `tauri dev` or `tauri build`
10 | //
11 | // 1. prevent vite from obscuring rust errors
12 | clearScreen: false,
13 | // 2. tauri expects a fixed port, fail if that port is not available
14 | server: {
15 | port: 1420,
16 | strictPort: true,
17 | },
18 | // 3. to make use of `TAURI_DEBUG` and other env variables
19 | // https://tauri.studio/v1/api/config#buildconfig.beforedevcommand
20 | envPrefix: ["VITE_", "TAURI_"],
21 | resolve: {
22 | alias: {
23 | "@app": path.resolve(__dirname, "src/"),
24 | "@assets": path.resolve(__dirname, "src/assets/"),
25 | "@constants": path.resolve(__dirname, "src/constants/"),
26 | "@states": path.resolve(__dirname, "src/states/"),
27 | "@types": path.resolve(__dirname, "src/types/"),
28 | },
29 | },
30 | }));
31 |
--------------------------------------------------------------------------------