├── .eslintignore ├── .eslintrc.cjs ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── README.md ├── package.json ├── playwright.config.ts ├── pnpm-lock.yaml ├── src ├── app.d.ts ├── app.html ├── index.test.ts └── routes │ ├── +error.svelte │ ├── +layout.svelte │ ├── +layout.ts │ ├── +page.svelte │ └── user │ └── [id] │ ├── +page.svelte │ └── +page.ts ├── static ├── .htaccess └── favicon.png ├── svelte.config.js ├── tests └── test.ts ├── tsconfig.json └── vite.config.ts /.eslintignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | 10 | # Ignore files for PNPM, NPM and YARN 11 | pnpm-lock.yaml 12 | package-lock.json 13 | yarn.lock 14 | -------------------------------------------------------------------------------- /.eslintrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: '@typescript-eslint/parser', 4 | extends: ['eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier'], 5 | plugins: ['svelte3', '@typescript-eslint'], 6 | ignorePatterns: ['*.cjs'], 7 | overrides: [{ files: ['*.svelte'], processor: 'svelte3/svelte3' }], 8 | settings: { 9 | 'svelte3/typescript': () => require('typescript') 10 | }, 11 | parserOptions: { 12 | sourceType: 'module', 13 | ecmaVersion: 2020 14 | }, 15 | env: { 16 | browser: true, 17 | es2017: true, 18 | node: true 19 | } 20 | }; 21 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | vite.config.js.timestamp-* 10 | vite.config.ts.timestamp-* 11 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | 10 | # Ignore files for PNPM, NPM and YARN 11 | pnpm-lock.yaml 12 | package-lock.json 13 | yarn.lock 14 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "printWidth": 100, 6 | "plugins": ["prettier-plugin-svelte"], 7 | "pluginSearchDirs": ["."], 8 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] 9 | } 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # sveltekit-spa 2 | 3 | # DEPRECATED 4 | 5 | This project uses SvelteKit 1. **Don't use or fork it**, read the [Single-page apps](https://kit.svelte.dev/docs/single-page-apps) docs on the SvelteKit website instead, and use this only as a reference. 6 | 7 | --- 8 | 9 | ## Changes from default configuration 10 | 11 | Packages added: 12 | 13 | - `@sveltejs/adapter-static` - to generate static files that can be hosted anywhere 14 | 15 | **svelte.config.js** 16 | 17 | ```diff 18 | - import adapter from '@sveltejs/adapter-auto'; 19 | + import adapter from '@sveltejs/adapter-static'; 20 | import { vitePreprocess } from '@sveltejs/kit/vite'; 21 | 22 | /** @type {import('@sveltejs/kit').Config} */ 23 | const config = { 24 | // Consult https://kit.svelte.dev/docs/integrations#preprocessors 25 | // for more information about preprocessors 26 | preprocess: vitePreprocess(), 27 | 28 | kit: { 29 | - adapter: adapter() 30 | + adapter: adapter({ 31 | + fallback: '200.html' // Could be different depending on host 32 | + }) 33 | } 34 | }; 35 | 36 | export default config; 37 | ``` 38 | 39 | **src/routes/+layout.ts** 40 | 41 | ```ts 42 | export const ssr = false; 43 | ``` 44 | 45 | ## The fallback page 46 | 47 | Since the site is static, a request like `https://yoursite.com/user/3` will fail with a 404 since the file `public_html/user/3/index.html` doesn't exist (and shouldn't, since this site route is dynamic). Therefore the `fallback` option is set in the `svelte.config.js`, but the web host needs to be able to use it. 48 | 49 | ### Apache 50 | 51 | For traditional web hosts that are using Apache, this can be easily done with a `.htaccess` file, which is included in this project. 52 | 53 | **static/.htaccess** 54 | 55 | ``` 56 | 57 | RewriteEngine On 58 | RewriteBase / 59 | RewriteRule ^200\.html$ - [L] 60 | RewriteCond %{REQUEST_FILENAME} !-f 61 | RewriteCond %{REQUEST_FILENAME} !-d 62 | RewriteRule . /200.html [L] 63 | 64 | ``` 65 | 66 | ### Nginx 67 | 68 | Nginx can be configured in a similar way like this: 69 | 70 | ``` 71 | # nginx configuration by winginx.com 72 | 73 | location ~ ^/200\.html$ { } 74 | 75 | location / { 76 | if (!-e $request_filename){ 77 | rewrite ^(.*)$ /200.html break; 78 | } 79 | } 80 | ``` 81 | 82 | ### Other hosts 83 | 84 | For other hosts, read more in the [SvelteKit docs](https://kit.svelte.dev/docs/adapter-static#spa-mode-add-fallback-page). 85 | 86 | ## Developing 87 | 88 | Once you've created a project and installed dependencies with `npm install` (or `pnpm install` or `yarn`), start a development server: 89 | 90 | ```bash 91 | npm run dev 92 | 93 | # or start the server and open the app in a new browser tab 94 | npm run dev -- --open 95 | ``` 96 | 97 | ## Building 98 | 99 | To create a production version of your app: 100 | 101 | ```bash 102 | npm run build 103 | ``` 104 | 105 | Which will create a set of files in the `build` folder, which can be uploaded to your hosting service. 106 | 107 | You can preview the production build with `npm run preview`. 108 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "sveltekit-spa", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "dev": "vite dev", 7 | "build": "vite build", 8 | "preview": "vite preview", 9 | "test": "playwright test", 10 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 11 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 12 | "test:unit": "vitest", 13 | "lint": "prettier --plugin-search-dir . --check . && eslint .", 14 | "format": "prettier --plugin-search-dir . --write ." 15 | }, 16 | "devDependencies": { 17 | "@playwright/test": "^1.30.0", 18 | "@sveltejs/adapter-auto": "^1.0.2", 19 | "@sveltejs/adapter-static": "^1.0.6", 20 | "@sveltejs/kit": "^1.3.10", 21 | "@typescript-eslint/eslint-plugin": "^5.50.0", 22 | "@typescript-eslint/parser": "^5.50.0", 23 | "eslint": "^8.33.0", 24 | "eslint-config-prettier": "^8.6.0", 25 | "eslint-plugin-svelte3": "^4.0.0", 26 | "prettier": "^2.8.3", 27 | "prettier-plugin-svelte": "^2.9.0", 28 | "svelte": "^3.55.1", 29 | "svelte-check": "^3.0.3", 30 | "tslib": "^2.5.0", 31 | "typescript": "^4.9.5", 32 | "vite": "^4.1.1", 33 | "vitest": "^0.28.4" 34 | }, 35 | "type": "module" 36 | } 37 | -------------------------------------------------------------------------------- /playwright.config.ts: -------------------------------------------------------------------------------- 1 | import type { PlaywrightTestConfig } from '@playwright/test'; 2 | 3 | const config: PlaywrightTestConfig = { 4 | webServer: { 5 | command: 'npm run build && npm run preview', 6 | port: 4173 7 | }, 8 | testDir: 'tests' 9 | }; 10 | 11 | export default config; 12 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | '@playwright/test': ^1.30.0 5 | '@sveltejs/adapter-auto': ^1.0.2 6 | '@sveltejs/adapter-static': ^1.0.6 7 | '@sveltejs/kit': ^1.3.10 8 | '@typescript-eslint/eslint-plugin': ^5.50.0 9 | '@typescript-eslint/parser': ^5.50.0 10 | eslint: ^8.33.0 11 | eslint-config-prettier: ^8.6.0 12 | eslint-plugin-svelte3: ^4.0.0 13 | prettier: ^2.8.3 14 | prettier-plugin-svelte: ^2.9.0 15 | svelte: ^3.55.1 16 | svelte-check: ^3.0.3 17 | tslib: ^2.5.0 18 | typescript: ^4.9.5 19 | vite: ^4.1.1 20 | vitest: ^0.28.4 21 | 22 | devDependencies: 23 | '@playwright/test': 1.30.0 24 | '@sveltejs/adapter-auto': 1.0.2_@sveltejs+kit@1.3.10 25 | '@sveltejs/adapter-static': 1.0.6_@sveltejs+kit@1.3.10 26 | '@sveltejs/kit': 1.3.10_svelte@3.55.1+vite@4.1.1 27 | '@typescript-eslint/eslint-plugin': 5.50.0_go4drrxstycfikanvu45pi4vgq 28 | '@typescript-eslint/parser': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 29 | eslint: 8.33.0 30 | eslint-config-prettier: 8.6.0_eslint@8.33.0 31 | eslint-plugin-svelte3: 4.0.0_4omm2ewoudhgnmf7aocafatnc4 32 | prettier: 2.8.3 33 | prettier-plugin-svelte: 2.9.0_kdmmghgdi3ngrsq6otxkjilbry 34 | svelte: 3.55.1 35 | svelte-check: 3.0.3_svelte@3.55.1 36 | tslib: 2.5.0 37 | typescript: 4.9.5 38 | vite: 4.1.1 39 | vitest: 0.28.4 40 | 41 | packages: 42 | 43 | /@esbuild/android-arm/0.16.17: 44 | resolution: {integrity: sha512-N9x1CMXVhtWEAMS7pNNONyA14f71VPQN9Cnavj1XQh6T7bskqiLLrSca4O0Vr8Wdcga943eThxnVp3JLnBMYtw==} 45 | engines: {node: '>=12'} 46 | cpu: [arm] 47 | os: [android] 48 | requiresBuild: true 49 | dev: true 50 | optional: true 51 | 52 | /@esbuild/android-arm64/0.16.17: 53 | resolution: {integrity: sha512-MIGl6p5sc3RDTLLkYL1MyL8BMRN4tLMRCn+yRJJmEDvYZ2M7tmAf80hx1kbNEUX2KJ50RRtxZ4JHLvCfuB6kBg==} 54 | engines: {node: '>=12'} 55 | cpu: [arm64] 56 | os: [android] 57 | requiresBuild: true 58 | dev: true 59 | optional: true 60 | 61 | /@esbuild/android-x64/0.16.17: 62 | resolution: {integrity: sha512-a3kTv3m0Ghh4z1DaFEuEDfz3OLONKuFvI4Xqczqx4BqLyuFaFkuaG4j2MtA6fuWEFeC5x9IvqnX7drmRq/fyAQ==} 63 | engines: {node: '>=12'} 64 | cpu: [x64] 65 | os: [android] 66 | requiresBuild: true 67 | dev: true 68 | optional: true 69 | 70 | /@esbuild/darwin-arm64/0.16.17: 71 | resolution: {integrity: sha512-/2agbUEfmxWHi9ARTX6OQ/KgXnOWfsNlTeLcoV7HSuSTv63E4DqtAc+2XqGw1KHxKMHGZgbVCZge7HXWX9Vn+w==} 72 | engines: {node: '>=12'} 73 | cpu: [arm64] 74 | os: [darwin] 75 | requiresBuild: true 76 | dev: true 77 | optional: true 78 | 79 | /@esbuild/darwin-x64/0.16.17: 80 | resolution: {integrity: sha512-2By45OBHulkd9Svy5IOCZt376Aa2oOkiE9QWUK9fe6Tb+WDr8hXL3dpqi+DeLiMed8tVXspzsTAvd0jUl96wmg==} 81 | engines: {node: '>=12'} 82 | cpu: [x64] 83 | os: [darwin] 84 | requiresBuild: true 85 | dev: true 86 | optional: true 87 | 88 | /@esbuild/freebsd-arm64/0.16.17: 89 | resolution: {integrity: sha512-mt+cxZe1tVx489VTb4mBAOo2aKSnJ33L9fr25JXpqQqzbUIw/yzIzi+NHwAXK2qYV1lEFp4OoVeThGjUbmWmdw==} 90 | engines: {node: '>=12'} 91 | cpu: [arm64] 92 | os: [freebsd] 93 | requiresBuild: true 94 | dev: true 95 | optional: true 96 | 97 | /@esbuild/freebsd-x64/0.16.17: 98 | resolution: {integrity: sha512-8ScTdNJl5idAKjH8zGAsN7RuWcyHG3BAvMNpKOBaqqR7EbUhhVHOqXRdL7oZvz8WNHL2pr5+eIT5c65kA6NHug==} 99 | engines: {node: '>=12'} 100 | cpu: [x64] 101 | os: [freebsd] 102 | requiresBuild: true 103 | dev: true 104 | optional: true 105 | 106 | /@esbuild/linux-arm/0.16.17: 107 | resolution: {integrity: sha512-iihzrWbD4gIT7j3caMzKb/RsFFHCwqqbrbH9SqUSRrdXkXaygSZCZg1FybsZz57Ju7N/SHEgPyaR0LZ8Zbe9gQ==} 108 | engines: {node: '>=12'} 109 | cpu: [arm] 110 | os: [linux] 111 | requiresBuild: true 112 | dev: true 113 | optional: true 114 | 115 | /@esbuild/linux-arm64/0.16.17: 116 | resolution: {integrity: sha512-7S8gJnSlqKGVJunnMCrXHU9Q8Q/tQIxk/xL8BqAP64wchPCTzuM6W3Ra8cIa1HIflAvDnNOt2jaL17vaW+1V0g==} 117 | engines: {node: '>=12'} 118 | cpu: [arm64] 119 | os: [linux] 120 | requiresBuild: true 121 | dev: true 122 | optional: true 123 | 124 | /@esbuild/linux-ia32/0.16.17: 125 | resolution: {integrity: sha512-kiX69+wcPAdgl3Lonh1VI7MBr16nktEvOfViszBSxygRQqSpzv7BffMKRPMFwzeJGPxcio0pdD3kYQGpqQ2SSg==} 126 | engines: {node: '>=12'} 127 | cpu: [ia32] 128 | os: [linux] 129 | requiresBuild: true 130 | dev: true 131 | optional: true 132 | 133 | /@esbuild/linux-loong64/0.16.17: 134 | resolution: {integrity: sha512-dTzNnQwembNDhd654cA4QhbS9uDdXC3TKqMJjgOWsC0yNCbpzfWoXdZvp0mY7HU6nzk5E0zpRGGx3qoQg8T2DQ==} 135 | engines: {node: '>=12'} 136 | cpu: [loong64] 137 | os: [linux] 138 | requiresBuild: true 139 | dev: true 140 | optional: true 141 | 142 | /@esbuild/linux-mips64el/0.16.17: 143 | resolution: {integrity: sha512-ezbDkp2nDl0PfIUn0CsQ30kxfcLTlcx4Foz2kYv8qdC6ia2oX5Q3E/8m6lq84Dj/6b0FrkgD582fJMIfHhJfSw==} 144 | engines: {node: '>=12'} 145 | cpu: [mips64el] 146 | os: [linux] 147 | requiresBuild: true 148 | dev: true 149 | optional: true 150 | 151 | /@esbuild/linux-ppc64/0.16.17: 152 | resolution: {integrity: sha512-dzS678gYD1lJsW73zrFhDApLVdM3cUF2MvAa1D8K8KtcSKdLBPP4zZSLy6LFZ0jYqQdQ29bjAHJDgz0rVbLB3g==} 153 | engines: {node: '>=12'} 154 | cpu: [ppc64] 155 | os: [linux] 156 | requiresBuild: true 157 | dev: true 158 | optional: true 159 | 160 | /@esbuild/linux-riscv64/0.16.17: 161 | resolution: {integrity: sha512-ylNlVsxuFjZK8DQtNUwiMskh6nT0vI7kYl/4fZgV1llP5d6+HIeL/vmmm3jpuoo8+NuXjQVZxmKuhDApK0/cKw==} 162 | engines: {node: '>=12'} 163 | cpu: [riscv64] 164 | os: [linux] 165 | requiresBuild: true 166 | dev: true 167 | optional: true 168 | 169 | /@esbuild/linux-s390x/0.16.17: 170 | resolution: {integrity: sha512-gzy7nUTO4UA4oZ2wAMXPNBGTzZFP7mss3aKR2hH+/4UUkCOyqmjXiKpzGrY2TlEUhbbejzXVKKGazYcQTZWA/w==} 171 | engines: {node: '>=12'} 172 | cpu: [s390x] 173 | os: [linux] 174 | requiresBuild: true 175 | dev: true 176 | optional: true 177 | 178 | /@esbuild/linux-x64/0.16.17: 179 | resolution: {integrity: sha512-mdPjPxfnmoqhgpiEArqi4egmBAMYvaObgn4poorpUaqmvzzbvqbowRllQ+ZgzGVMGKaPkqUmPDOOFQRUFDmeUw==} 180 | engines: {node: '>=12'} 181 | cpu: [x64] 182 | os: [linux] 183 | requiresBuild: true 184 | dev: true 185 | optional: true 186 | 187 | /@esbuild/netbsd-x64/0.16.17: 188 | resolution: {integrity: sha512-/PzmzD/zyAeTUsduZa32bn0ORug+Jd1EGGAUJvqfeixoEISYpGnAezN6lnJoskauoai0Jrs+XSyvDhppCPoKOA==} 189 | engines: {node: '>=12'} 190 | cpu: [x64] 191 | os: [netbsd] 192 | requiresBuild: true 193 | dev: true 194 | optional: true 195 | 196 | /@esbuild/openbsd-x64/0.16.17: 197 | resolution: {integrity: sha512-2yaWJhvxGEz2RiftSk0UObqJa/b+rIAjnODJgv2GbGGpRwAfpgzyrg1WLK8rqA24mfZa9GvpjLcBBg8JHkoodg==} 198 | engines: {node: '>=12'} 199 | cpu: [x64] 200 | os: [openbsd] 201 | requiresBuild: true 202 | dev: true 203 | optional: true 204 | 205 | /@esbuild/sunos-x64/0.16.17: 206 | resolution: {integrity: sha512-xtVUiev38tN0R3g8VhRfN7Zl42YCJvyBhRKw1RJjwE1d2emWTVToPLNEQj/5Qxc6lVFATDiy6LjVHYhIPrLxzw==} 207 | engines: {node: '>=12'} 208 | cpu: [x64] 209 | os: [sunos] 210 | requiresBuild: true 211 | dev: true 212 | optional: true 213 | 214 | /@esbuild/win32-arm64/0.16.17: 215 | resolution: {integrity: sha512-ga8+JqBDHY4b6fQAmOgtJJue36scANy4l/rL97W+0wYmijhxKetzZdKOJI7olaBaMhWt8Pac2McJdZLxXWUEQw==} 216 | engines: {node: '>=12'} 217 | cpu: [arm64] 218 | os: [win32] 219 | requiresBuild: true 220 | dev: true 221 | optional: true 222 | 223 | /@esbuild/win32-ia32/0.16.17: 224 | resolution: {integrity: sha512-WnsKaf46uSSF/sZhwnqE4L/F89AYNMiD4YtEcYekBt9Q7nj0DiId2XH2Ng2PHM54qi5oPrQ8luuzGszqi/veig==} 225 | engines: {node: '>=12'} 226 | cpu: [ia32] 227 | os: [win32] 228 | requiresBuild: true 229 | dev: true 230 | optional: true 231 | 232 | /@esbuild/win32-x64/0.16.17: 233 | resolution: {integrity: sha512-y+EHuSchhL7FjHgvQL/0fnnFmO4T1bhvWANX6gcnqTjtnKWbTvUMCpGnv2+t+31d7RzyEAYAd4u2fnIhHL6N/Q==} 234 | engines: {node: '>=12'} 235 | cpu: [x64] 236 | os: [win32] 237 | requiresBuild: true 238 | dev: true 239 | optional: true 240 | 241 | /@eslint/eslintrc/1.4.1: 242 | resolution: {integrity: sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==} 243 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 244 | dependencies: 245 | ajv: 6.12.6 246 | debug: 4.3.4 247 | espree: 9.4.1 248 | globals: 13.20.0 249 | ignore: 5.2.4 250 | import-fresh: 3.3.0 251 | js-yaml: 4.1.0 252 | minimatch: 3.1.2 253 | strip-json-comments: 3.1.1 254 | transitivePeerDependencies: 255 | - supports-color 256 | dev: true 257 | 258 | /@humanwhocodes/config-array/0.11.8: 259 | resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==} 260 | engines: {node: '>=10.10.0'} 261 | dependencies: 262 | '@humanwhocodes/object-schema': 1.2.1 263 | debug: 4.3.4 264 | minimatch: 3.1.2 265 | transitivePeerDependencies: 266 | - supports-color 267 | dev: true 268 | 269 | /@humanwhocodes/module-importer/1.0.1: 270 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 271 | engines: {node: '>=12.22'} 272 | dev: true 273 | 274 | /@humanwhocodes/object-schema/1.2.1: 275 | resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} 276 | dev: true 277 | 278 | /@jridgewell/resolve-uri/3.1.0: 279 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 280 | engines: {node: '>=6.0.0'} 281 | dev: true 282 | 283 | /@jridgewell/sourcemap-codec/1.4.14: 284 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 285 | dev: true 286 | 287 | /@jridgewell/trace-mapping/0.3.17: 288 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} 289 | dependencies: 290 | '@jridgewell/resolve-uri': 3.1.0 291 | '@jridgewell/sourcemap-codec': 1.4.14 292 | dev: true 293 | 294 | /@nodelib/fs.scandir/2.1.5: 295 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 296 | engines: {node: '>= 8'} 297 | dependencies: 298 | '@nodelib/fs.stat': 2.0.5 299 | run-parallel: 1.2.0 300 | dev: true 301 | 302 | /@nodelib/fs.stat/2.0.5: 303 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 304 | engines: {node: '>= 8'} 305 | dev: true 306 | 307 | /@nodelib/fs.walk/1.2.8: 308 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 309 | engines: {node: '>= 8'} 310 | dependencies: 311 | '@nodelib/fs.scandir': 2.1.5 312 | fastq: 1.15.0 313 | dev: true 314 | 315 | /@playwright/test/1.30.0: 316 | resolution: {integrity: sha512-SVxkQw1xvn/Wk/EvBnqWIq6NLo1AppwbYOjNLmyU0R1RoQ3rLEBtmjTnElcnz8VEtn11fptj1ECxK0tgURhajw==} 317 | engines: {node: '>=14'} 318 | hasBin: true 319 | dependencies: 320 | '@types/node': 18.11.19 321 | playwright-core: 1.30.0 322 | dev: true 323 | 324 | /@polka/url/1.0.0-next.21: 325 | resolution: {integrity: sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==} 326 | dev: true 327 | 328 | /@sveltejs/adapter-auto/1.0.2_@sveltejs+kit@1.3.10: 329 | resolution: {integrity: sha512-UXpEO/gutERZnD+Z5Vi4J/ifD3WSRuCI7xwtLJTcKNQvJ6t5Xsj1X3Mw2F8Vv/XTUuxf7xPLYUgThU331r0Y9w==} 330 | peerDependencies: 331 | '@sveltejs/kit': ^1.0.0 332 | dependencies: 333 | '@sveltejs/kit': 1.3.10_svelte@3.55.1+vite@4.1.1 334 | import-meta-resolve: 2.2.1 335 | dev: true 336 | 337 | /@sveltejs/adapter-static/1.0.6_@sveltejs+kit@1.3.10: 338 | resolution: {integrity: sha512-gTus2jW6bEQAZoT1MdmPHWZZmcb6dfLWc0r6dFHnbzSDZ68kifqQ1E+dZDOMF7aXeRV91sgnPuAn2MtpinVdlA==} 339 | peerDependencies: 340 | '@sveltejs/kit': ^1.0.0 341 | dependencies: 342 | '@sveltejs/kit': 1.3.10_svelte@3.55.1+vite@4.1.1 343 | dev: true 344 | 345 | /@sveltejs/kit/1.3.10_svelte@3.55.1+vite@4.1.1: 346 | resolution: {integrity: sha512-I3DgWCwTYbTz4ZPCJIRkSDrKkMu0bsdk6ghqsOBVNqesf1wBdTdfkXhag3ESWgIEjUV3VUIWPQF7fnt7328mhQ==} 347 | engines: {node: ^16.14 || >=18} 348 | hasBin: true 349 | requiresBuild: true 350 | peerDependencies: 351 | svelte: ^3.54.0 352 | vite: ^4.0.0 353 | dependencies: 354 | '@sveltejs/vite-plugin-svelte': 2.0.2_svelte@3.55.1+vite@4.1.1 355 | '@types/cookie': 0.5.1 356 | cookie: 0.5.0 357 | devalue: 4.2.3 358 | esm-env: 1.0.0 359 | kleur: 4.1.5 360 | magic-string: 0.27.0 361 | mime: 3.0.0 362 | sade: 1.8.1 363 | set-cookie-parser: 2.5.1 364 | sirv: 2.0.2 365 | svelte: 3.55.1 366 | tiny-glob: 0.2.9 367 | undici: 5.16.0 368 | vite: 4.1.1 369 | transitivePeerDependencies: 370 | - supports-color 371 | dev: true 372 | 373 | /@sveltejs/vite-plugin-svelte/2.0.2_svelte@3.55.1+vite@4.1.1: 374 | resolution: {integrity: sha512-xCEan0/NNpQuL0l5aS42FjwQ6wwskdxC3pW1OeFtEKNZwRg7Evro9lac9HesGP6TdFsTv2xMes5ASQVKbCacxg==} 375 | engines: {node: ^14.18.0 || >= 16} 376 | peerDependencies: 377 | svelte: ^3.54.0 378 | vite: ^4.0.0 379 | dependencies: 380 | debug: 4.3.4 381 | deepmerge: 4.3.0 382 | kleur: 4.1.5 383 | magic-string: 0.27.0 384 | svelte: 3.55.1 385 | svelte-hmr: 0.15.1_svelte@3.55.1 386 | vite: 4.1.1 387 | vitefu: 0.2.4_vite@4.1.1 388 | transitivePeerDependencies: 389 | - supports-color 390 | dev: true 391 | 392 | /@types/chai-subset/1.3.3: 393 | resolution: {integrity: sha512-frBecisrNGz+F4T6bcc+NLeolfiojh5FxW2klu669+8BARtyQv2C/GkNW6FUodVe4BroGMP/wER/YDGc7rEllw==} 394 | dependencies: 395 | '@types/chai': 4.3.4 396 | dev: true 397 | 398 | /@types/chai/4.3.4: 399 | resolution: {integrity: sha512-KnRanxnpfpjUTqTCXslZSEdLfXExwgNxYPdiO2WGUj8+HDjFi8R3k5RVKPeSCzLjCcshCAtVO2QBbVuAV4kTnw==} 400 | dev: true 401 | 402 | /@types/cookie/0.5.1: 403 | resolution: {integrity: sha512-COUnqfB2+ckwXXSFInsFdOAWQzCCx+a5hq2ruyj+Vjund94RJQd4LG2u9hnvJrTgunKAaax7ancBYlDrNYxA0g==} 404 | dev: true 405 | 406 | /@types/json-schema/7.0.11: 407 | resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} 408 | dev: true 409 | 410 | /@types/node/18.11.19: 411 | resolution: {integrity: sha512-YUgMWAQBWLObABqrvx8qKO1enAvBUdjZOAWQ5grBAkp5LQv45jBvYKZ3oFS9iKRCQyFjqw6iuEa1vmFqtxYLZw==} 412 | dev: true 413 | 414 | /@types/pug/2.0.6: 415 | resolution: {integrity: sha512-SnHmG9wN1UVmagJOnyo/qkk0Z7gejYxOYYmaAwr5u2yFYfsupN3sg10kyzN8Hep/2zbHxCnsumxOoRIRMBwKCg==} 416 | dev: true 417 | 418 | /@types/sass/1.43.1: 419 | resolution: {integrity: sha512-BPdoIt1lfJ6B7rw35ncdwBZrAssjcwzI5LByIrYs+tpXlj/CAkuVdRsgZDdP4lq5EjyWzwxZCqAoFyHKFwp32g==} 420 | dependencies: 421 | '@types/node': 18.11.19 422 | dev: true 423 | 424 | /@types/semver/7.3.13: 425 | resolution: {integrity: sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==} 426 | dev: true 427 | 428 | /@typescript-eslint/eslint-plugin/5.50.0_go4drrxstycfikanvu45pi4vgq: 429 | resolution: {integrity: sha512-vwksQWSFZiUhgq3Kv7o1Jcj0DUNylwnIlGvKvLLYsq8pAWha6/WCnXUeaSoNNha/K7QSf2+jvmkxggC1u3pIwQ==} 430 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 431 | peerDependencies: 432 | '@typescript-eslint/parser': ^5.0.0 433 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 434 | typescript: '*' 435 | peerDependenciesMeta: 436 | typescript: 437 | optional: true 438 | dependencies: 439 | '@typescript-eslint/parser': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 440 | '@typescript-eslint/scope-manager': 5.50.0 441 | '@typescript-eslint/type-utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 442 | '@typescript-eslint/utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 443 | debug: 4.3.4 444 | eslint: 8.33.0 445 | grapheme-splitter: 1.0.4 446 | ignore: 5.2.4 447 | natural-compare-lite: 1.4.0 448 | regexpp: 3.2.0 449 | semver: 7.3.8 450 | tsutils: 3.21.0_typescript@4.9.5 451 | typescript: 4.9.5 452 | transitivePeerDependencies: 453 | - supports-color 454 | dev: true 455 | 456 | /@typescript-eslint/parser/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: 457 | resolution: {integrity: sha512-KCcSyNaogUDftK2G9RXfQyOCt51uB5yqC6pkUYqhYh8Kgt+DwR5M0EwEAxGPy/+DH6hnmKeGsNhiZRQxjH71uQ==} 458 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 459 | peerDependencies: 460 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 461 | typescript: '*' 462 | peerDependenciesMeta: 463 | typescript: 464 | optional: true 465 | dependencies: 466 | '@typescript-eslint/scope-manager': 5.50.0 467 | '@typescript-eslint/types': 5.50.0 468 | '@typescript-eslint/typescript-estree': 5.50.0_typescript@4.9.5 469 | debug: 4.3.4 470 | eslint: 8.33.0 471 | typescript: 4.9.5 472 | transitivePeerDependencies: 473 | - supports-color 474 | dev: true 475 | 476 | /@typescript-eslint/scope-manager/5.50.0: 477 | resolution: {integrity: sha512-rt03kaX+iZrhssaT974BCmoUikYtZI24Vp/kwTSy841XhiYShlqoshRFDvN1FKKvU2S3gK+kcBW1EA7kNUrogg==} 478 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 479 | dependencies: 480 | '@typescript-eslint/types': 5.50.0 481 | '@typescript-eslint/visitor-keys': 5.50.0 482 | dev: true 483 | 484 | /@typescript-eslint/type-utils/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: 485 | resolution: {integrity: sha512-dcnXfZ6OGrNCO7E5UY/i0ktHb7Yx1fV6fnQGGrlnfDhilcs6n19eIRcvLBqx6OQkrPaFlDPk3OJ0WlzQfrV0bQ==} 486 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 487 | peerDependencies: 488 | eslint: '*' 489 | typescript: '*' 490 | peerDependenciesMeta: 491 | typescript: 492 | optional: true 493 | dependencies: 494 | '@typescript-eslint/typescript-estree': 5.50.0_typescript@4.9.5 495 | '@typescript-eslint/utils': 5.50.0_4vsywjlpuriuw3tl5oq6zy5a64 496 | debug: 4.3.4 497 | eslint: 8.33.0 498 | tsutils: 3.21.0_typescript@4.9.5 499 | typescript: 4.9.5 500 | transitivePeerDependencies: 501 | - supports-color 502 | dev: true 503 | 504 | /@typescript-eslint/types/5.50.0: 505 | resolution: {integrity: sha512-atruOuJpir4OtyNdKahiHZobPKFvZnBnfDiyEaBf6d9vy9visE7gDjlmhl+y29uxZ2ZDgvXijcungGFjGGex7w==} 506 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 507 | dev: true 508 | 509 | /@typescript-eslint/typescript-estree/5.50.0_typescript@4.9.5: 510 | resolution: {integrity: sha512-Gq4zapso+OtIZlv8YNAStFtT6d05zyVCK7Fx3h5inlLBx2hWuc/0465C2mg/EQDDU2LKe52+/jN4f0g9bd+kow==} 511 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 512 | peerDependencies: 513 | typescript: '*' 514 | peerDependenciesMeta: 515 | typescript: 516 | optional: true 517 | dependencies: 518 | '@typescript-eslint/types': 5.50.0 519 | '@typescript-eslint/visitor-keys': 5.50.0 520 | debug: 4.3.4 521 | globby: 11.1.0 522 | is-glob: 4.0.3 523 | semver: 7.3.8 524 | tsutils: 3.21.0_typescript@4.9.5 525 | typescript: 4.9.5 526 | transitivePeerDependencies: 527 | - supports-color 528 | dev: true 529 | 530 | /@typescript-eslint/utils/5.50.0_4vsywjlpuriuw3tl5oq6zy5a64: 531 | resolution: {integrity: sha512-v/AnUFImmh8G4PH0NDkf6wA8hujNNcrwtecqW4vtQ1UOSNBaZl49zP1SHoZ/06e+UiwzHpgb5zP5+hwlYYWYAw==} 532 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 533 | peerDependencies: 534 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 535 | dependencies: 536 | '@types/json-schema': 7.0.11 537 | '@types/semver': 7.3.13 538 | '@typescript-eslint/scope-manager': 5.50.0 539 | '@typescript-eslint/types': 5.50.0 540 | '@typescript-eslint/typescript-estree': 5.50.0_typescript@4.9.5 541 | eslint: 8.33.0 542 | eslint-scope: 5.1.1 543 | eslint-utils: 3.0.0_eslint@8.33.0 544 | semver: 7.3.8 545 | transitivePeerDependencies: 546 | - supports-color 547 | - typescript 548 | dev: true 549 | 550 | /@typescript-eslint/visitor-keys/5.50.0: 551 | resolution: {integrity: sha512-cdMeD9HGu6EXIeGOh2yVW6oGf9wq8asBgZx7nsR/D36gTfQ0odE5kcRYe5M81vjEFAcPeugXrHg78Imu55F6gg==} 552 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 553 | dependencies: 554 | '@typescript-eslint/types': 5.50.0 555 | eslint-visitor-keys: 3.3.0 556 | dev: true 557 | 558 | /@vitest/expect/0.28.4: 559 | resolution: {integrity: sha512-JqK0NZ4brjvOSL8hXAnIsfi+jxDF7rH/ZWCGCt0FAqRnVFc1hXsfwXksQvEnKqD84avRt3gmeXoK4tNbmkoVsQ==} 560 | dependencies: 561 | '@vitest/spy': 0.28.4 562 | '@vitest/utils': 0.28.4 563 | chai: 4.3.7 564 | dev: true 565 | 566 | /@vitest/runner/0.28.4: 567 | resolution: {integrity: sha512-Q8UV6GjDvBSTfUoq0QXVCNpNOUrWu4P2qvRq7ssJWzn0+S0ojbVOxEjMt+8a32X6SdkhF8ak+2nkppsqV0JyNQ==} 568 | dependencies: 569 | '@vitest/utils': 0.28.4 570 | p-limit: 4.0.0 571 | pathe: 1.1.0 572 | dev: true 573 | 574 | /@vitest/spy/0.28.4: 575 | resolution: {integrity: sha512-8WuhfXLlvCXpNXEGJW6Gc+IKWI32435fQJLh43u70HnZ1otJOa2Cmg2Wy2Aym47ZnNCP4NolF+8cUPwd0MigKQ==} 576 | dependencies: 577 | tinyspy: 1.0.2 578 | dev: true 579 | 580 | /@vitest/utils/0.28.4: 581 | resolution: {integrity: sha512-l2QztOLdc2LkR+w/lP52RGh8hW+Ul4KESmCAgVE8q737I7e7bQoAfkARKpkPJ4JQtGpwW4deqlj1732VZD7TFw==} 582 | dependencies: 583 | cli-truncate: 3.1.0 584 | diff: 5.1.0 585 | loupe: 2.3.6 586 | picocolors: 1.0.0 587 | pretty-format: 27.5.1 588 | dev: true 589 | 590 | /acorn-jsx/5.3.2_acorn@8.8.2: 591 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 592 | peerDependencies: 593 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 594 | dependencies: 595 | acorn: 8.8.2 596 | dev: true 597 | 598 | /acorn-walk/8.2.0: 599 | resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==} 600 | engines: {node: '>=0.4.0'} 601 | dev: true 602 | 603 | /acorn/8.8.2: 604 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} 605 | engines: {node: '>=0.4.0'} 606 | hasBin: true 607 | dev: true 608 | 609 | /ajv/6.12.6: 610 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 611 | dependencies: 612 | fast-deep-equal: 3.1.3 613 | fast-json-stable-stringify: 2.1.0 614 | json-schema-traverse: 0.4.1 615 | uri-js: 4.4.1 616 | dev: true 617 | 618 | /ansi-regex/5.0.1: 619 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 620 | engines: {node: '>=8'} 621 | dev: true 622 | 623 | /ansi-regex/6.0.1: 624 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 625 | engines: {node: '>=12'} 626 | dev: true 627 | 628 | /ansi-styles/4.3.0: 629 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 630 | engines: {node: '>=8'} 631 | dependencies: 632 | color-convert: 2.0.1 633 | dev: true 634 | 635 | /ansi-styles/5.2.0: 636 | resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} 637 | engines: {node: '>=10'} 638 | dev: true 639 | 640 | /ansi-styles/6.2.1: 641 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 642 | engines: {node: '>=12'} 643 | dev: true 644 | 645 | /anymatch/3.1.3: 646 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 647 | engines: {node: '>= 8'} 648 | dependencies: 649 | normalize-path: 3.0.0 650 | picomatch: 2.3.1 651 | dev: true 652 | 653 | /argparse/2.0.1: 654 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 655 | dev: true 656 | 657 | /array-union/2.1.0: 658 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 659 | engines: {node: '>=8'} 660 | dev: true 661 | 662 | /assertion-error/1.1.0: 663 | resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} 664 | dev: true 665 | 666 | /balanced-match/1.0.2: 667 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 668 | dev: true 669 | 670 | /binary-extensions/2.2.0: 671 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 672 | engines: {node: '>=8'} 673 | dev: true 674 | 675 | /brace-expansion/1.1.11: 676 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 677 | dependencies: 678 | balanced-match: 1.0.2 679 | concat-map: 0.0.1 680 | dev: true 681 | 682 | /braces/3.0.2: 683 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 684 | engines: {node: '>=8'} 685 | dependencies: 686 | fill-range: 7.0.1 687 | dev: true 688 | 689 | /buffer-crc32/0.2.13: 690 | resolution: {integrity: sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==} 691 | dev: true 692 | 693 | /buffer-from/1.1.2: 694 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} 695 | dev: true 696 | 697 | /busboy/1.6.0: 698 | resolution: {integrity: sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==} 699 | engines: {node: '>=10.16.0'} 700 | dependencies: 701 | streamsearch: 1.1.0 702 | dev: true 703 | 704 | /cac/6.7.14: 705 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 706 | engines: {node: '>=8'} 707 | dev: true 708 | 709 | /callsites/3.1.0: 710 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 711 | engines: {node: '>=6'} 712 | dev: true 713 | 714 | /chai/4.3.7: 715 | resolution: {integrity: sha512-HLnAzZ2iupm25PlN0xFreAlBA5zaBSv3og0DdeGA4Ar6h6rJ3A0rolRUKJhSF2V10GZKDgWF/VmAEsNWjCRB+A==} 716 | engines: {node: '>=4'} 717 | dependencies: 718 | assertion-error: 1.1.0 719 | check-error: 1.0.2 720 | deep-eql: 4.1.3 721 | get-func-name: 2.0.0 722 | loupe: 2.3.6 723 | pathval: 1.1.1 724 | type-detect: 4.0.8 725 | dev: true 726 | 727 | /chalk/4.1.2: 728 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 729 | engines: {node: '>=10'} 730 | dependencies: 731 | ansi-styles: 4.3.0 732 | supports-color: 7.2.0 733 | dev: true 734 | 735 | /check-error/1.0.2: 736 | resolution: {integrity: sha512-BrgHpW9NURQgzoNyjfq0Wu6VFO6D7IZEmJNdtgNqpzGG8RuNFHt2jQxWlAs4HMe119chBnv+34syEZtc6IhLtA==} 737 | dev: true 738 | 739 | /chokidar/3.5.3: 740 | resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} 741 | engines: {node: '>= 8.10.0'} 742 | dependencies: 743 | anymatch: 3.1.3 744 | braces: 3.0.2 745 | glob-parent: 5.1.2 746 | is-binary-path: 2.1.0 747 | is-glob: 4.0.3 748 | normalize-path: 3.0.0 749 | readdirp: 3.6.0 750 | optionalDependencies: 751 | fsevents: 2.3.2 752 | dev: true 753 | 754 | /cli-truncate/3.1.0: 755 | resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} 756 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 757 | dependencies: 758 | slice-ansi: 5.0.0 759 | string-width: 5.1.2 760 | dev: true 761 | 762 | /color-convert/2.0.1: 763 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 764 | engines: {node: '>=7.0.0'} 765 | dependencies: 766 | color-name: 1.1.4 767 | dev: true 768 | 769 | /color-name/1.1.4: 770 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 771 | dev: true 772 | 773 | /concat-map/0.0.1: 774 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 775 | dev: true 776 | 777 | /cookie/0.5.0: 778 | resolution: {integrity: sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==} 779 | engines: {node: '>= 0.6'} 780 | dev: true 781 | 782 | /cross-spawn/7.0.3: 783 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 784 | engines: {node: '>= 8'} 785 | dependencies: 786 | path-key: 3.1.1 787 | shebang-command: 2.0.0 788 | which: 2.0.2 789 | dev: true 790 | 791 | /debug/4.3.4: 792 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 793 | engines: {node: '>=6.0'} 794 | peerDependencies: 795 | supports-color: '*' 796 | peerDependenciesMeta: 797 | supports-color: 798 | optional: true 799 | dependencies: 800 | ms: 2.1.2 801 | dev: true 802 | 803 | /deep-eql/4.1.3: 804 | resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} 805 | engines: {node: '>=6'} 806 | dependencies: 807 | type-detect: 4.0.8 808 | dev: true 809 | 810 | /deep-is/0.1.4: 811 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 812 | dev: true 813 | 814 | /deepmerge/4.3.0: 815 | resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} 816 | engines: {node: '>=0.10.0'} 817 | dev: true 818 | 819 | /detect-indent/6.1.0: 820 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 821 | engines: {node: '>=8'} 822 | dev: true 823 | 824 | /devalue/4.2.3: 825 | resolution: {integrity: sha512-JG6Q248aN0pgFL57e3zqTVeFraBe+5W2ugvv1mLXsJP6YYIYJhRZhAl7QP8haJrqob6X10F9NEkuCvNILZTPeQ==} 826 | dev: true 827 | 828 | /diff/5.1.0: 829 | resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} 830 | engines: {node: '>=0.3.1'} 831 | dev: true 832 | 833 | /dir-glob/3.0.1: 834 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 835 | engines: {node: '>=8'} 836 | dependencies: 837 | path-type: 4.0.0 838 | dev: true 839 | 840 | /doctrine/3.0.0: 841 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 842 | engines: {node: '>=6.0.0'} 843 | dependencies: 844 | esutils: 2.0.3 845 | dev: true 846 | 847 | /eastasianwidth/0.2.0: 848 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 849 | dev: true 850 | 851 | /emoji-regex/9.2.2: 852 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 853 | dev: true 854 | 855 | /es6-promise/3.3.1: 856 | resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} 857 | dev: true 858 | 859 | /esbuild/0.16.17: 860 | resolution: {integrity: sha512-G8LEkV0XzDMNwXKgM0Jwu3nY3lSTwSGY6XbxM9cr9+s0T/qSV1q1JVPBGzm3dcjhCic9+emZDmMffkwgPeOeLg==} 861 | engines: {node: '>=12'} 862 | hasBin: true 863 | requiresBuild: true 864 | optionalDependencies: 865 | '@esbuild/android-arm': 0.16.17 866 | '@esbuild/android-arm64': 0.16.17 867 | '@esbuild/android-x64': 0.16.17 868 | '@esbuild/darwin-arm64': 0.16.17 869 | '@esbuild/darwin-x64': 0.16.17 870 | '@esbuild/freebsd-arm64': 0.16.17 871 | '@esbuild/freebsd-x64': 0.16.17 872 | '@esbuild/linux-arm': 0.16.17 873 | '@esbuild/linux-arm64': 0.16.17 874 | '@esbuild/linux-ia32': 0.16.17 875 | '@esbuild/linux-loong64': 0.16.17 876 | '@esbuild/linux-mips64el': 0.16.17 877 | '@esbuild/linux-ppc64': 0.16.17 878 | '@esbuild/linux-riscv64': 0.16.17 879 | '@esbuild/linux-s390x': 0.16.17 880 | '@esbuild/linux-x64': 0.16.17 881 | '@esbuild/netbsd-x64': 0.16.17 882 | '@esbuild/openbsd-x64': 0.16.17 883 | '@esbuild/sunos-x64': 0.16.17 884 | '@esbuild/win32-arm64': 0.16.17 885 | '@esbuild/win32-ia32': 0.16.17 886 | '@esbuild/win32-x64': 0.16.17 887 | dev: true 888 | 889 | /escape-string-regexp/4.0.0: 890 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 891 | engines: {node: '>=10'} 892 | dev: true 893 | 894 | /eslint-config-prettier/8.6.0_eslint@8.33.0: 895 | resolution: {integrity: sha512-bAF0eLpLVqP5oEVUFKpMA+NnRFICwn9X8B5jrR9FcqnYBuPbqWEjTEspPWMj5ye6czoSLDweCzSo3Ko7gGrZaA==} 896 | hasBin: true 897 | peerDependencies: 898 | eslint: '>=7.0.0' 899 | dependencies: 900 | eslint: 8.33.0 901 | dev: true 902 | 903 | /eslint-plugin-svelte3/4.0.0_4omm2ewoudhgnmf7aocafatnc4: 904 | resolution: {integrity: sha512-OIx9lgaNzD02+MDFNLw0GEUbuovNcglg+wnd/UY0fbZmlQSz7GlQiQ1f+yX0XvC07XPcDOnFcichqI3xCwp71g==} 905 | peerDependencies: 906 | eslint: '>=8.0.0' 907 | svelte: ^3.2.0 908 | dependencies: 909 | eslint: 8.33.0 910 | svelte: 3.55.1 911 | dev: true 912 | 913 | /eslint-scope/5.1.1: 914 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 915 | engines: {node: '>=8.0.0'} 916 | dependencies: 917 | esrecurse: 4.3.0 918 | estraverse: 4.3.0 919 | dev: true 920 | 921 | /eslint-scope/7.1.1: 922 | resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} 923 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 924 | dependencies: 925 | esrecurse: 4.3.0 926 | estraverse: 5.3.0 927 | dev: true 928 | 929 | /eslint-utils/3.0.0_eslint@8.33.0: 930 | resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} 931 | engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} 932 | peerDependencies: 933 | eslint: '>=5' 934 | dependencies: 935 | eslint: 8.33.0 936 | eslint-visitor-keys: 2.1.0 937 | dev: true 938 | 939 | /eslint-visitor-keys/2.1.0: 940 | resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==} 941 | engines: {node: '>=10'} 942 | dev: true 943 | 944 | /eslint-visitor-keys/3.3.0: 945 | resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} 946 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 947 | dev: true 948 | 949 | /eslint/8.33.0: 950 | resolution: {integrity: sha512-WjOpFQgKK8VrCnAtl8We0SUOy/oVZ5NHykyMiagV1M9r8IFpIJX7DduK6n1mpfhlG7T1NLWm2SuD8QB7KFySaA==} 951 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 952 | hasBin: true 953 | dependencies: 954 | '@eslint/eslintrc': 1.4.1 955 | '@humanwhocodes/config-array': 0.11.8 956 | '@humanwhocodes/module-importer': 1.0.1 957 | '@nodelib/fs.walk': 1.2.8 958 | ajv: 6.12.6 959 | chalk: 4.1.2 960 | cross-spawn: 7.0.3 961 | debug: 4.3.4 962 | doctrine: 3.0.0 963 | escape-string-regexp: 4.0.0 964 | eslint-scope: 7.1.1 965 | eslint-utils: 3.0.0_eslint@8.33.0 966 | eslint-visitor-keys: 3.3.0 967 | espree: 9.4.1 968 | esquery: 1.4.0 969 | esutils: 2.0.3 970 | fast-deep-equal: 3.1.3 971 | file-entry-cache: 6.0.1 972 | find-up: 5.0.0 973 | glob-parent: 6.0.2 974 | globals: 13.20.0 975 | grapheme-splitter: 1.0.4 976 | ignore: 5.2.4 977 | import-fresh: 3.3.0 978 | imurmurhash: 0.1.4 979 | is-glob: 4.0.3 980 | is-path-inside: 3.0.3 981 | js-sdsl: 4.3.0 982 | js-yaml: 4.1.0 983 | json-stable-stringify-without-jsonify: 1.0.1 984 | levn: 0.4.1 985 | lodash.merge: 4.6.2 986 | minimatch: 3.1.2 987 | natural-compare: 1.4.0 988 | optionator: 0.9.1 989 | regexpp: 3.2.0 990 | strip-ansi: 6.0.1 991 | strip-json-comments: 3.1.1 992 | text-table: 0.2.0 993 | transitivePeerDependencies: 994 | - supports-color 995 | dev: true 996 | 997 | /esm-env/1.0.0: 998 | resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} 999 | dev: true 1000 | 1001 | /espree/9.4.1: 1002 | resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} 1003 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1004 | dependencies: 1005 | acorn: 8.8.2 1006 | acorn-jsx: 5.3.2_acorn@8.8.2 1007 | eslint-visitor-keys: 3.3.0 1008 | dev: true 1009 | 1010 | /esquery/1.4.0: 1011 | resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} 1012 | engines: {node: '>=0.10'} 1013 | dependencies: 1014 | estraverse: 5.3.0 1015 | dev: true 1016 | 1017 | /esrecurse/4.3.0: 1018 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1019 | engines: {node: '>=4.0'} 1020 | dependencies: 1021 | estraverse: 5.3.0 1022 | dev: true 1023 | 1024 | /estraverse/4.3.0: 1025 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 1026 | engines: {node: '>=4.0'} 1027 | dev: true 1028 | 1029 | /estraverse/5.3.0: 1030 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 1031 | engines: {node: '>=4.0'} 1032 | dev: true 1033 | 1034 | /esutils/2.0.3: 1035 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1036 | engines: {node: '>=0.10.0'} 1037 | dev: true 1038 | 1039 | /fast-deep-equal/3.1.3: 1040 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1041 | dev: true 1042 | 1043 | /fast-glob/3.2.12: 1044 | resolution: {integrity: sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==} 1045 | engines: {node: '>=8.6.0'} 1046 | dependencies: 1047 | '@nodelib/fs.stat': 2.0.5 1048 | '@nodelib/fs.walk': 1.2.8 1049 | glob-parent: 5.1.2 1050 | merge2: 1.4.1 1051 | micromatch: 4.0.5 1052 | dev: true 1053 | 1054 | /fast-json-stable-stringify/2.1.0: 1055 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1056 | dev: true 1057 | 1058 | /fast-levenshtein/2.0.6: 1059 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 1060 | dev: true 1061 | 1062 | /fastq/1.15.0: 1063 | resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} 1064 | dependencies: 1065 | reusify: 1.0.4 1066 | dev: true 1067 | 1068 | /file-entry-cache/6.0.1: 1069 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1070 | engines: {node: ^10.12.0 || >=12.0.0} 1071 | dependencies: 1072 | flat-cache: 3.0.4 1073 | dev: true 1074 | 1075 | /fill-range/7.0.1: 1076 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1077 | engines: {node: '>=8'} 1078 | dependencies: 1079 | to-regex-range: 5.0.1 1080 | dev: true 1081 | 1082 | /find-up/5.0.0: 1083 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1084 | engines: {node: '>=10'} 1085 | dependencies: 1086 | locate-path: 6.0.0 1087 | path-exists: 4.0.0 1088 | dev: true 1089 | 1090 | /flat-cache/3.0.4: 1091 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 1092 | engines: {node: ^10.12.0 || >=12.0.0} 1093 | dependencies: 1094 | flatted: 3.2.7 1095 | rimraf: 3.0.2 1096 | dev: true 1097 | 1098 | /flatted/3.2.7: 1099 | resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} 1100 | dev: true 1101 | 1102 | /fs.realpath/1.0.0: 1103 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1104 | dev: true 1105 | 1106 | /fsevents/2.3.2: 1107 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==} 1108 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1109 | os: [darwin] 1110 | requiresBuild: true 1111 | dev: true 1112 | optional: true 1113 | 1114 | /function-bind/1.1.1: 1115 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1116 | dev: true 1117 | 1118 | /get-func-name/2.0.0: 1119 | resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==} 1120 | dev: true 1121 | 1122 | /glob-parent/5.1.2: 1123 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1124 | engines: {node: '>= 6'} 1125 | dependencies: 1126 | is-glob: 4.0.3 1127 | dev: true 1128 | 1129 | /glob-parent/6.0.2: 1130 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1131 | engines: {node: '>=10.13.0'} 1132 | dependencies: 1133 | is-glob: 4.0.3 1134 | dev: true 1135 | 1136 | /glob/7.2.3: 1137 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1138 | dependencies: 1139 | fs.realpath: 1.0.0 1140 | inflight: 1.0.6 1141 | inherits: 2.0.4 1142 | minimatch: 3.1.2 1143 | once: 1.4.0 1144 | path-is-absolute: 1.0.1 1145 | dev: true 1146 | 1147 | /globals/13.20.0: 1148 | resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} 1149 | engines: {node: '>=8'} 1150 | dependencies: 1151 | type-fest: 0.20.2 1152 | dev: true 1153 | 1154 | /globalyzer/0.1.0: 1155 | resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} 1156 | dev: true 1157 | 1158 | /globby/11.1.0: 1159 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1160 | engines: {node: '>=10'} 1161 | dependencies: 1162 | array-union: 2.1.0 1163 | dir-glob: 3.0.1 1164 | fast-glob: 3.2.12 1165 | ignore: 5.2.4 1166 | merge2: 1.4.1 1167 | slash: 3.0.0 1168 | dev: true 1169 | 1170 | /globrex/0.1.2: 1171 | resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} 1172 | dev: true 1173 | 1174 | /graceful-fs/4.2.10: 1175 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 1176 | dev: true 1177 | 1178 | /grapheme-splitter/1.0.4: 1179 | resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} 1180 | dev: true 1181 | 1182 | /has-flag/4.0.0: 1183 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1184 | engines: {node: '>=8'} 1185 | dev: true 1186 | 1187 | /has/1.0.3: 1188 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1189 | engines: {node: '>= 0.4.0'} 1190 | dependencies: 1191 | function-bind: 1.1.1 1192 | dev: true 1193 | 1194 | /ignore/5.2.4: 1195 | resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} 1196 | engines: {node: '>= 4'} 1197 | dev: true 1198 | 1199 | /import-fresh/3.3.0: 1200 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1201 | engines: {node: '>=6'} 1202 | dependencies: 1203 | parent-module: 1.0.1 1204 | resolve-from: 4.0.0 1205 | dev: true 1206 | 1207 | /import-meta-resolve/2.2.1: 1208 | resolution: {integrity: sha512-C6lLL7EJPY44kBvA80gq4uMsVFw5x3oSKfuMl1cuZ2RkI5+UJqQXgn+6hlUew0y4ig7Ypt4CObAAIzU53Nfpuw==} 1209 | dev: true 1210 | 1211 | /imurmurhash/0.1.4: 1212 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1213 | engines: {node: '>=0.8.19'} 1214 | dev: true 1215 | 1216 | /inflight/1.0.6: 1217 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1218 | dependencies: 1219 | once: 1.4.0 1220 | wrappy: 1.0.2 1221 | dev: true 1222 | 1223 | /inherits/2.0.4: 1224 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1225 | dev: true 1226 | 1227 | /is-binary-path/2.1.0: 1228 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 1229 | engines: {node: '>=8'} 1230 | dependencies: 1231 | binary-extensions: 2.2.0 1232 | dev: true 1233 | 1234 | /is-core-module/2.11.0: 1235 | resolution: {integrity: sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==} 1236 | dependencies: 1237 | has: 1.0.3 1238 | dev: true 1239 | 1240 | /is-extglob/2.1.1: 1241 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1242 | engines: {node: '>=0.10.0'} 1243 | dev: true 1244 | 1245 | /is-fullwidth-code-point/4.0.0: 1246 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} 1247 | engines: {node: '>=12'} 1248 | dev: true 1249 | 1250 | /is-glob/4.0.3: 1251 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1252 | engines: {node: '>=0.10.0'} 1253 | dependencies: 1254 | is-extglob: 2.1.1 1255 | dev: true 1256 | 1257 | /is-number/7.0.0: 1258 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1259 | engines: {node: '>=0.12.0'} 1260 | dev: true 1261 | 1262 | /is-path-inside/3.0.3: 1263 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 1264 | engines: {node: '>=8'} 1265 | dev: true 1266 | 1267 | /isexe/2.0.0: 1268 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1269 | dev: true 1270 | 1271 | /js-sdsl/4.3.0: 1272 | resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==} 1273 | dev: true 1274 | 1275 | /js-yaml/4.1.0: 1276 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1277 | hasBin: true 1278 | dependencies: 1279 | argparse: 2.0.1 1280 | dev: true 1281 | 1282 | /json-schema-traverse/0.4.1: 1283 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1284 | dev: true 1285 | 1286 | /json-stable-stringify-without-jsonify/1.0.1: 1287 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1288 | dev: true 1289 | 1290 | /jsonc-parser/3.2.0: 1291 | resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} 1292 | dev: true 1293 | 1294 | /kleur/4.1.5: 1295 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1296 | engines: {node: '>=6'} 1297 | dev: true 1298 | 1299 | /levn/0.4.1: 1300 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1301 | engines: {node: '>= 0.8.0'} 1302 | dependencies: 1303 | prelude-ls: 1.2.1 1304 | type-check: 0.4.0 1305 | dev: true 1306 | 1307 | /local-pkg/0.4.3: 1308 | resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} 1309 | engines: {node: '>=14'} 1310 | dev: true 1311 | 1312 | /locate-path/6.0.0: 1313 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1314 | engines: {node: '>=10'} 1315 | dependencies: 1316 | p-locate: 5.0.0 1317 | dev: true 1318 | 1319 | /lodash.merge/4.6.2: 1320 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1321 | dev: true 1322 | 1323 | /loupe/2.3.6: 1324 | resolution: {integrity: sha512-RaPMZKiMy8/JruncMU5Bt6na1eftNoo++R4Y+N2FrxkDVTrGvcyzFTsaGif4QTeKESheMGegbhw6iUAq+5A8zA==} 1325 | dependencies: 1326 | get-func-name: 2.0.0 1327 | dev: true 1328 | 1329 | /lru-cache/6.0.0: 1330 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1331 | engines: {node: '>=10'} 1332 | dependencies: 1333 | yallist: 4.0.0 1334 | dev: true 1335 | 1336 | /magic-string/0.27.0: 1337 | resolution: {integrity: sha512-8UnnX2PeRAPZuN12svgR9j7M1uWMovg/CEnIwIG0LFkXSJJe4PdfUGiTGl8V9bsBHFUtfVINcSyYxd7q+kx9fA==} 1338 | engines: {node: '>=12'} 1339 | dependencies: 1340 | '@jridgewell/sourcemap-codec': 1.4.14 1341 | dev: true 1342 | 1343 | /merge2/1.4.1: 1344 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1345 | engines: {node: '>= 8'} 1346 | dev: true 1347 | 1348 | /micromatch/4.0.5: 1349 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1350 | engines: {node: '>=8.6'} 1351 | dependencies: 1352 | braces: 3.0.2 1353 | picomatch: 2.3.1 1354 | dev: true 1355 | 1356 | /mime/3.0.0: 1357 | resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} 1358 | engines: {node: '>=10.0.0'} 1359 | hasBin: true 1360 | dev: true 1361 | 1362 | /min-indent/1.0.1: 1363 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 1364 | engines: {node: '>=4'} 1365 | dev: true 1366 | 1367 | /minimatch/3.1.2: 1368 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1369 | dependencies: 1370 | brace-expansion: 1.1.11 1371 | dev: true 1372 | 1373 | /minimist/1.2.7: 1374 | resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} 1375 | dev: true 1376 | 1377 | /mkdirp/0.5.6: 1378 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} 1379 | hasBin: true 1380 | dependencies: 1381 | minimist: 1.2.7 1382 | dev: true 1383 | 1384 | /mlly/1.1.0: 1385 | resolution: {integrity: sha512-cwzBrBfwGC1gYJyfcy8TcZU1f+dbH/T+TuOhtYP2wLv/Fb51/uV7HJQfBPtEupZ2ORLRU1EKFS/QfS3eo9+kBQ==} 1386 | dependencies: 1387 | acorn: 8.8.2 1388 | pathe: 1.1.0 1389 | pkg-types: 1.0.1 1390 | ufo: 1.0.1 1391 | dev: true 1392 | 1393 | /mri/1.2.0: 1394 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1395 | engines: {node: '>=4'} 1396 | dev: true 1397 | 1398 | /mrmime/1.0.1: 1399 | resolution: {integrity: sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==} 1400 | engines: {node: '>=10'} 1401 | dev: true 1402 | 1403 | /ms/2.1.2: 1404 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1405 | dev: true 1406 | 1407 | /nanoid/3.3.4: 1408 | resolution: {integrity: sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==} 1409 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1410 | hasBin: true 1411 | dev: true 1412 | 1413 | /natural-compare-lite/1.4.0: 1414 | resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} 1415 | dev: true 1416 | 1417 | /natural-compare/1.4.0: 1418 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1419 | dev: true 1420 | 1421 | /normalize-path/3.0.0: 1422 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1423 | engines: {node: '>=0.10.0'} 1424 | dev: true 1425 | 1426 | /once/1.4.0: 1427 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1428 | dependencies: 1429 | wrappy: 1.0.2 1430 | dev: true 1431 | 1432 | /optionator/0.9.1: 1433 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} 1434 | engines: {node: '>= 0.8.0'} 1435 | dependencies: 1436 | deep-is: 0.1.4 1437 | fast-levenshtein: 2.0.6 1438 | levn: 0.4.1 1439 | prelude-ls: 1.2.1 1440 | type-check: 0.4.0 1441 | word-wrap: 1.2.3 1442 | dev: true 1443 | 1444 | /p-limit/3.1.0: 1445 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1446 | engines: {node: '>=10'} 1447 | dependencies: 1448 | yocto-queue: 0.1.0 1449 | dev: true 1450 | 1451 | /p-limit/4.0.0: 1452 | resolution: {integrity: sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==} 1453 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1454 | dependencies: 1455 | yocto-queue: 1.0.0 1456 | dev: true 1457 | 1458 | /p-locate/5.0.0: 1459 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1460 | engines: {node: '>=10'} 1461 | dependencies: 1462 | p-limit: 3.1.0 1463 | dev: true 1464 | 1465 | /parent-module/1.0.1: 1466 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1467 | engines: {node: '>=6'} 1468 | dependencies: 1469 | callsites: 3.1.0 1470 | dev: true 1471 | 1472 | /path-exists/4.0.0: 1473 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1474 | engines: {node: '>=8'} 1475 | dev: true 1476 | 1477 | /path-is-absolute/1.0.1: 1478 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1479 | engines: {node: '>=0.10.0'} 1480 | dev: true 1481 | 1482 | /path-key/3.1.1: 1483 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1484 | engines: {node: '>=8'} 1485 | dev: true 1486 | 1487 | /path-parse/1.0.7: 1488 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1489 | dev: true 1490 | 1491 | /path-type/4.0.0: 1492 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1493 | engines: {node: '>=8'} 1494 | dev: true 1495 | 1496 | /pathe/1.1.0: 1497 | resolution: {integrity: sha512-ODbEPR0KKHqECXW1GoxdDb+AZvULmXjVPy4rt+pGo2+TnjJTIPJQSVS6N63n8T2Ip+syHhbn52OewKicV0373w==} 1498 | dev: true 1499 | 1500 | /pathval/1.1.1: 1501 | resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} 1502 | dev: true 1503 | 1504 | /picocolors/1.0.0: 1505 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 1506 | dev: true 1507 | 1508 | /picomatch/2.3.1: 1509 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1510 | engines: {node: '>=8.6'} 1511 | dev: true 1512 | 1513 | /pkg-types/1.0.1: 1514 | resolution: {integrity: sha512-jHv9HB+Ho7dj6ItwppRDDl0iZRYBD0jsakHXtFgoLr+cHSF6xC+QL54sJmWxyGxOLYSHm0afhXhXcQDQqH9z8g==} 1515 | dependencies: 1516 | jsonc-parser: 3.2.0 1517 | mlly: 1.1.0 1518 | pathe: 1.1.0 1519 | dev: true 1520 | 1521 | /playwright-core/1.30.0: 1522 | resolution: {integrity: sha512-7AnRmTCf+GVYhHbLJsGUtskWTE33SwMZkybJ0v6rqR1boxq2x36U7p1vDRV7HO2IwTZgmycracLxPEJI49wu4g==} 1523 | engines: {node: '>=14'} 1524 | hasBin: true 1525 | dev: true 1526 | 1527 | /postcss/8.4.21: 1528 | resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} 1529 | engines: {node: ^10 || ^12 || >=14} 1530 | dependencies: 1531 | nanoid: 3.3.4 1532 | picocolors: 1.0.0 1533 | source-map-js: 1.0.2 1534 | dev: true 1535 | 1536 | /prelude-ls/1.2.1: 1537 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1538 | engines: {node: '>= 0.8.0'} 1539 | dev: true 1540 | 1541 | /prettier-plugin-svelte/2.9.0_kdmmghgdi3ngrsq6otxkjilbry: 1542 | resolution: {integrity: sha512-3doBi5NO4IVgaNPtwewvrgPpqAcvNv0NwJNflr76PIGgi9nf1oguQV1Hpdm9TI2ALIQVn/9iIwLpBO5UcD2Jiw==} 1543 | peerDependencies: 1544 | prettier: ^1.16.4 || ^2.0.0 1545 | svelte: ^3.2.0 1546 | dependencies: 1547 | prettier: 2.8.3 1548 | svelte: 3.55.1 1549 | dev: true 1550 | 1551 | /prettier/2.8.3: 1552 | resolution: {integrity: sha512-tJ/oJ4amDihPoufT5sM0Z1SKEuKay8LfVAMlbbhnnkvt6BUserZylqo2PN+p9KeljLr0OHa2rXHU1T8reeoTrw==} 1553 | engines: {node: '>=10.13.0'} 1554 | hasBin: true 1555 | dev: true 1556 | 1557 | /pretty-format/27.5.1: 1558 | resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==} 1559 | engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} 1560 | dependencies: 1561 | ansi-regex: 5.0.1 1562 | ansi-styles: 5.2.0 1563 | react-is: 17.0.2 1564 | dev: true 1565 | 1566 | /punycode/2.3.0: 1567 | resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} 1568 | engines: {node: '>=6'} 1569 | dev: true 1570 | 1571 | /queue-microtask/1.2.3: 1572 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1573 | dev: true 1574 | 1575 | /react-is/17.0.2: 1576 | resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==} 1577 | dev: true 1578 | 1579 | /readdirp/3.6.0: 1580 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 1581 | engines: {node: '>=8.10.0'} 1582 | dependencies: 1583 | picomatch: 2.3.1 1584 | dev: true 1585 | 1586 | /regexpp/3.2.0: 1587 | resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} 1588 | engines: {node: '>=8'} 1589 | dev: true 1590 | 1591 | /resolve-from/4.0.0: 1592 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1593 | engines: {node: '>=4'} 1594 | dev: true 1595 | 1596 | /resolve/1.22.1: 1597 | resolution: {integrity: sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==} 1598 | hasBin: true 1599 | dependencies: 1600 | is-core-module: 2.11.0 1601 | path-parse: 1.0.7 1602 | supports-preserve-symlinks-flag: 1.0.0 1603 | dev: true 1604 | 1605 | /reusify/1.0.4: 1606 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1607 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1608 | dev: true 1609 | 1610 | /rimraf/2.7.1: 1611 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} 1612 | hasBin: true 1613 | dependencies: 1614 | glob: 7.2.3 1615 | dev: true 1616 | 1617 | /rimraf/3.0.2: 1618 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1619 | hasBin: true 1620 | dependencies: 1621 | glob: 7.2.3 1622 | dev: true 1623 | 1624 | /rollup/3.14.0: 1625 | resolution: {integrity: sha512-o23sdgCLcLSe3zIplT9nQ1+r97okuaiR+vmAPZPTDYB7/f3tgWIYNyiQveMsZwshBT0is4eGax/HH83Q7CG+/Q==} 1626 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 1627 | hasBin: true 1628 | optionalDependencies: 1629 | fsevents: 2.3.2 1630 | dev: true 1631 | 1632 | /run-parallel/1.2.0: 1633 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1634 | dependencies: 1635 | queue-microtask: 1.2.3 1636 | dev: true 1637 | 1638 | /sade/1.8.1: 1639 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1640 | engines: {node: '>=6'} 1641 | dependencies: 1642 | mri: 1.2.0 1643 | dev: true 1644 | 1645 | /sander/0.5.1: 1646 | resolution: {integrity: sha512-3lVqBir7WuKDHGrKRDn/1Ye3kwpXaDOMsiRP1wd6wpZW56gJhsbp5RqQpA6JG/P+pkXizygnr1dKR8vzWaVsfA==} 1647 | dependencies: 1648 | es6-promise: 3.3.1 1649 | graceful-fs: 4.2.10 1650 | mkdirp: 0.5.6 1651 | rimraf: 2.7.1 1652 | dev: true 1653 | 1654 | /semver/7.3.8: 1655 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} 1656 | engines: {node: '>=10'} 1657 | hasBin: true 1658 | dependencies: 1659 | lru-cache: 6.0.0 1660 | dev: true 1661 | 1662 | /set-cookie-parser/2.5.1: 1663 | resolution: {integrity: sha512-1jeBGaKNGdEq4FgIrORu/N570dwoPYio8lSoYLWmX7sQ//0JY08Xh9o5pBcgmHQ/MbsYp/aZnOe1s1lIsbLprQ==} 1664 | dev: true 1665 | 1666 | /shebang-command/2.0.0: 1667 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1668 | engines: {node: '>=8'} 1669 | dependencies: 1670 | shebang-regex: 3.0.0 1671 | dev: true 1672 | 1673 | /shebang-regex/3.0.0: 1674 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1675 | engines: {node: '>=8'} 1676 | dev: true 1677 | 1678 | /siginfo/2.0.0: 1679 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 1680 | dev: true 1681 | 1682 | /sirv/2.0.2: 1683 | resolution: {integrity: sha512-4Qog6aE29nIjAOKe/wowFTxOdmbEZKb+3tsLljaBRzJwtqto0BChD2zzH0LhgCSXiI+V7X+Y45v14wBZQ1TK3w==} 1684 | engines: {node: '>= 10'} 1685 | dependencies: 1686 | '@polka/url': 1.0.0-next.21 1687 | mrmime: 1.0.1 1688 | totalist: 3.0.0 1689 | dev: true 1690 | 1691 | /slash/3.0.0: 1692 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1693 | engines: {node: '>=8'} 1694 | dev: true 1695 | 1696 | /slice-ansi/5.0.0: 1697 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} 1698 | engines: {node: '>=12'} 1699 | dependencies: 1700 | ansi-styles: 6.2.1 1701 | is-fullwidth-code-point: 4.0.0 1702 | dev: true 1703 | 1704 | /sorcery/0.11.0: 1705 | resolution: {integrity: sha512-J69LQ22xrQB1cIFJhPfgtLuI6BpWRiWu1Y3vSsIwK/eAScqJxd/+CJlUuHQRdX2C9NGFamq+KqNywGgaThwfHw==} 1706 | hasBin: true 1707 | dependencies: 1708 | '@jridgewell/sourcemap-codec': 1.4.14 1709 | buffer-crc32: 0.2.13 1710 | minimist: 1.2.7 1711 | sander: 0.5.1 1712 | dev: true 1713 | 1714 | /source-map-js/1.0.2: 1715 | resolution: {integrity: sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==} 1716 | engines: {node: '>=0.10.0'} 1717 | dev: true 1718 | 1719 | /source-map-support/0.5.21: 1720 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} 1721 | dependencies: 1722 | buffer-from: 1.1.2 1723 | source-map: 0.6.1 1724 | dev: true 1725 | 1726 | /source-map/0.6.1: 1727 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 1728 | engines: {node: '>=0.10.0'} 1729 | dev: true 1730 | 1731 | /stackback/0.0.2: 1732 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 1733 | dev: true 1734 | 1735 | /std-env/3.3.2: 1736 | resolution: {integrity: sha512-uUZI65yrV2Qva5gqE0+A7uVAvO40iPo6jGhs7s8keRfHCmtg+uB2X6EiLGCI9IgL1J17xGhvoOqSz79lzICPTA==} 1737 | dev: true 1738 | 1739 | /streamsearch/1.1.0: 1740 | resolution: {integrity: sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==} 1741 | engines: {node: '>=10.0.0'} 1742 | dev: true 1743 | 1744 | /string-width/5.1.2: 1745 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 1746 | engines: {node: '>=12'} 1747 | dependencies: 1748 | eastasianwidth: 0.2.0 1749 | emoji-regex: 9.2.2 1750 | strip-ansi: 7.0.1 1751 | dev: true 1752 | 1753 | /strip-ansi/6.0.1: 1754 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1755 | engines: {node: '>=8'} 1756 | dependencies: 1757 | ansi-regex: 5.0.1 1758 | dev: true 1759 | 1760 | /strip-ansi/7.0.1: 1761 | resolution: {integrity: sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==} 1762 | engines: {node: '>=12'} 1763 | dependencies: 1764 | ansi-regex: 6.0.1 1765 | dev: true 1766 | 1767 | /strip-indent/3.0.0: 1768 | resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} 1769 | engines: {node: '>=8'} 1770 | dependencies: 1771 | min-indent: 1.0.1 1772 | dev: true 1773 | 1774 | /strip-json-comments/3.1.1: 1775 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1776 | engines: {node: '>=8'} 1777 | dev: true 1778 | 1779 | /strip-literal/1.0.1: 1780 | resolution: {integrity: sha512-QZTsipNpa2Ppr6v1AmJHESqJ3Uz247MUS0OjrnnZjFAvEoWqxuyFuXn2xLgMtRnijJShAa1HL0gtJyUs7u7n3Q==} 1781 | dependencies: 1782 | acorn: 8.8.2 1783 | dev: true 1784 | 1785 | /supports-color/7.2.0: 1786 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1787 | engines: {node: '>=8'} 1788 | dependencies: 1789 | has-flag: 4.0.0 1790 | dev: true 1791 | 1792 | /supports-preserve-symlinks-flag/1.0.0: 1793 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1794 | engines: {node: '>= 0.4'} 1795 | dev: true 1796 | 1797 | /svelte-check/3.0.3_svelte@3.55.1: 1798 | resolution: {integrity: sha512-ByBFXo3bfHRGIsYEasHkdMhLkNleVfszX/Ns1oip58tPJlKdo5Ssr8kgVIuo5oq00hss8AIcdesuy0Xt0BcTvg==} 1799 | hasBin: true 1800 | peerDependencies: 1801 | svelte: ^3.55.0 1802 | dependencies: 1803 | '@jridgewell/trace-mapping': 0.3.17 1804 | chokidar: 3.5.3 1805 | fast-glob: 3.2.12 1806 | import-fresh: 3.3.0 1807 | picocolors: 1.0.0 1808 | sade: 1.8.1 1809 | svelte: 3.55.1 1810 | svelte-preprocess: 5.0.1_4x7phaipmicbaooxtnresslofa 1811 | typescript: 4.9.5 1812 | transitivePeerDependencies: 1813 | - '@babel/core' 1814 | - coffeescript 1815 | - less 1816 | - postcss 1817 | - postcss-load-config 1818 | - pug 1819 | - sass 1820 | - stylus 1821 | - sugarss 1822 | dev: true 1823 | 1824 | /svelte-hmr/0.15.1_svelte@3.55.1: 1825 | resolution: {integrity: sha512-BiKB4RZ8YSwRKCNVdNxK/GfY+r4Kjgp9jCLEy0DuqAKfmQtpL38cQK3afdpjw4sqSs4PLi3jIPJIFp259NkZtA==} 1826 | engines: {node: ^12.20 || ^14.13.1 || >= 16} 1827 | peerDependencies: 1828 | svelte: '>=3.19.0' 1829 | dependencies: 1830 | svelte: 3.55.1 1831 | dev: true 1832 | 1833 | /svelte-preprocess/5.0.1_4x7phaipmicbaooxtnresslofa: 1834 | resolution: {integrity: sha512-0HXyhCoc9rsW4zGOgtInylC6qj259E1hpFnJMJWTf+aIfeqh4O/QHT31KT2hvPEqQfdjmqBR/kO2JDkkciBLrQ==} 1835 | engines: {node: '>= 14.10.0'} 1836 | requiresBuild: true 1837 | peerDependencies: 1838 | '@babel/core': ^7.10.2 1839 | coffeescript: ^2.5.1 1840 | less: ^3.11.3 || ^4.0.0 1841 | postcss: ^7 || ^8 1842 | postcss-load-config: ^2.1.0 || ^3.0.0 || ^4.0.0 1843 | pug: ^3.0.0 1844 | sass: ^1.26.8 1845 | stylus: ^0.55.0 1846 | sugarss: ^2.0.0 || ^3.0.0 || ^4.0.0 1847 | svelte: ^3.23.0 1848 | typescript: ^3.9.5 || ^4.0.0 1849 | peerDependenciesMeta: 1850 | '@babel/core': 1851 | optional: true 1852 | coffeescript: 1853 | optional: true 1854 | less: 1855 | optional: true 1856 | postcss: 1857 | optional: true 1858 | postcss-load-config: 1859 | optional: true 1860 | pug: 1861 | optional: true 1862 | sass: 1863 | optional: true 1864 | stylus: 1865 | optional: true 1866 | sugarss: 1867 | optional: true 1868 | typescript: 1869 | optional: true 1870 | dependencies: 1871 | '@types/pug': 2.0.6 1872 | '@types/sass': 1.43.1 1873 | detect-indent: 6.1.0 1874 | magic-string: 0.27.0 1875 | sorcery: 0.11.0 1876 | strip-indent: 3.0.0 1877 | svelte: 3.55.1 1878 | typescript: 4.9.5 1879 | dev: true 1880 | 1881 | /svelte/3.55.1: 1882 | resolution: {integrity: sha512-S+87/P0Ve67HxKkEV23iCdAh/SX1xiSfjF1HOglno/YTbSTW7RniICMCofWGdJJbdjw3S+0PfFb1JtGfTXE0oQ==} 1883 | engines: {node: '>= 8'} 1884 | dev: true 1885 | 1886 | /text-table/0.2.0: 1887 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1888 | dev: true 1889 | 1890 | /tiny-glob/0.2.9: 1891 | resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} 1892 | dependencies: 1893 | globalyzer: 0.1.0 1894 | globrex: 0.1.2 1895 | dev: true 1896 | 1897 | /tinybench/2.3.1: 1898 | resolution: {integrity: sha512-hGYWYBMPr7p4g5IarQE7XhlyWveh1EKhy4wUBS1LrHXCKYgvz+4/jCqgmJqZxxldesn05vccrtME2RLLZNW7iA==} 1899 | dev: true 1900 | 1901 | /tinypool/0.3.1: 1902 | resolution: {integrity: sha512-zLA1ZXlstbU2rlpA4CIeVaqvWq41MTWqLY3FfsAXgC8+f7Pk7zroaJQxDgxn1xNudKW6Kmj4808rPFShUlIRmQ==} 1903 | engines: {node: '>=14.0.0'} 1904 | dev: true 1905 | 1906 | /tinyspy/1.0.2: 1907 | resolution: {integrity: sha512-bSGlgwLBYf7PnUsQ6WOc6SJ3pGOcd+d8AA6EUnLDDM0kWEstC1JIlSZA3UNliDXhd9ABoS7hiRBDCu+XP/sf1Q==} 1908 | engines: {node: '>=14.0.0'} 1909 | dev: true 1910 | 1911 | /to-regex-range/5.0.1: 1912 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1913 | engines: {node: '>=8.0'} 1914 | dependencies: 1915 | is-number: 7.0.0 1916 | dev: true 1917 | 1918 | /totalist/3.0.0: 1919 | resolution: {integrity: sha512-eM+pCBxXO/njtF7vdFsHuqb+ElbxqtI4r5EAvk6grfAFyJ6IvWlSkfZ5T9ozC6xWw3Fj1fGoSmrl0gUs46JVIw==} 1920 | engines: {node: '>=6'} 1921 | dev: true 1922 | 1923 | /tslib/1.14.1: 1924 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 1925 | dev: true 1926 | 1927 | /tslib/2.5.0: 1928 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} 1929 | dev: true 1930 | 1931 | /tsutils/3.21.0_typescript@4.9.5: 1932 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 1933 | engines: {node: '>= 6'} 1934 | peerDependencies: 1935 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 1936 | dependencies: 1937 | tslib: 1.14.1 1938 | typescript: 4.9.5 1939 | dev: true 1940 | 1941 | /type-check/0.4.0: 1942 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1943 | engines: {node: '>= 0.8.0'} 1944 | dependencies: 1945 | prelude-ls: 1.2.1 1946 | dev: true 1947 | 1948 | /type-detect/4.0.8: 1949 | resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} 1950 | engines: {node: '>=4'} 1951 | dev: true 1952 | 1953 | /type-fest/0.20.2: 1954 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 1955 | engines: {node: '>=10'} 1956 | dev: true 1957 | 1958 | /typescript/4.9.5: 1959 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 1960 | engines: {node: '>=4.2.0'} 1961 | hasBin: true 1962 | dev: true 1963 | 1964 | /ufo/1.0.1: 1965 | resolution: {integrity: sha512-boAm74ubXHY7KJQZLlXrtMz52qFvpsbOxDcZOnw/Wf+LS4Mmyu7JxmzD4tDLtUQtmZECypJ0FrCz4QIe6dvKRA==} 1966 | dev: true 1967 | 1968 | /undici/5.16.0: 1969 | resolution: {integrity: sha512-KWBOXNv6VX+oJQhchXieUznEmnJMqgXMbs0xxH2t8q/FUAWSJvOSr/rMaZKnX5RIVq7JDn0JbP4BOnKG2SGXLQ==} 1970 | engines: {node: '>=12.18'} 1971 | dependencies: 1972 | busboy: 1.6.0 1973 | dev: true 1974 | 1975 | /uri-js/4.4.1: 1976 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1977 | dependencies: 1978 | punycode: 2.3.0 1979 | dev: true 1980 | 1981 | /vite-node/0.28.4_@types+node@18.11.19: 1982 | resolution: {integrity: sha512-KM0Q0uSG/xHHKOJvVHc5xDBabgt0l70y7/lWTR7Q0pR5/MrYxadT+y32cJOE65FfjGmJgxpVEEY+69btJgcXOQ==} 1983 | engines: {node: '>=v14.16.0'} 1984 | hasBin: true 1985 | dependencies: 1986 | cac: 6.7.14 1987 | debug: 4.3.4 1988 | mlly: 1.1.0 1989 | pathe: 1.1.0 1990 | picocolors: 1.0.0 1991 | source-map: 0.6.1 1992 | source-map-support: 0.5.21 1993 | vite: 4.1.1_@types+node@18.11.19 1994 | transitivePeerDependencies: 1995 | - '@types/node' 1996 | - less 1997 | - sass 1998 | - stylus 1999 | - sugarss 2000 | - supports-color 2001 | - terser 2002 | dev: true 2003 | 2004 | /vite/4.1.1: 2005 | resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} 2006 | engines: {node: ^14.18.0 || >=16.0.0} 2007 | hasBin: true 2008 | peerDependencies: 2009 | '@types/node': '>= 14' 2010 | less: '*' 2011 | sass: '*' 2012 | stylus: '*' 2013 | sugarss: '*' 2014 | terser: ^5.4.0 2015 | peerDependenciesMeta: 2016 | '@types/node': 2017 | optional: true 2018 | less: 2019 | optional: true 2020 | sass: 2021 | optional: true 2022 | stylus: 2023 | optional: true 2024 | sugarss: 2025 | optional: true 2026 | terser: 2027 | optional: true 2028 | dependencies: 2029 | esbuild: 0.16.17 2030 | postcss: 8.4.21 2031 | resolve: 1.22.1 2032 | rollup: 3.14.0 2033 | optionalDependencies: 2034 | fsevents: 2.3.2 2035 | dev: true 2036 | 2037 | /vite/4.1.1_@types+node@18.11.19: 2038 | resolution: {integrity: sha512-LM9WWea8vsxhr782r9ntg+bhSFS06FJgCvvB0+8hf8UWtvaiDagKYWXndjfX6kGl74keHJUcpzrQliDXZlF5yg==} 2039 | engines: {node: ^14.18.0 || >=16.0.0} 2040 | hasBin: true 2041 | peerDependencies: 2042 | '@types/node': '>= 14' 2043 | less: '*' 2044 | sass: '*' 2045 | stylus: '*' 2046 | sugarss: '*' 2047 | terser: ^5.4.0 2048 | peerDependenciesMeta: 2049 | '@types/node': 2050 | optional: true 2051 | less: 2052 | optional: true 2053 | sass: 2054 | optional: true 2055 | stylus: 2056 | optional: true 2057 | sugarss: 2058 | optional: true 2059 | terser: 2060 | optional: true 2061 | dependencies: 2062 | '@types/node': 18.11.19 2063 | esbuild: 0.16.17 2064 | postcss: 8.4.21 2065 | resolve: 1.22.1 2066 | rollup: 3.14.0 2067 | optionalDependencies: 2068 | fsevents: 2.3.2 2069 | dev: true 2070 | 2071 | /vitefu/0.2.4_vite@4.1.1: 2072 | resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} 2073 | peerDependencies: 2074 | vite: ^3.0.0 || ^4.0.0 2075 | peerDependenciesMeta: 2076 | vite: 2077 | optional: true 2078 | dependencies: 2079 | vite: 4.1.1 2080 | dev: true 2081 | 2082 | /vitest/0.28.4: 2083 | resolution: {integrity: sha512-sfWIy0AdlbyGRhunm+TLQEJrFH9XuRPdApfubsyLcDbCRrUX717BRQKInTgzEfyl2Ipi1HWoHB84Nqtcwxogcg==} 2084 | engines: {node: '>=v14.16.0'} 2085 | hasBin: true 2086 | peerDependencies: 2087 | '@edge-runtime/vm': '*' 2088 | '@vitest/browser': '*' 2089 | '@vitest/ui': '*' 2090 | happy-dom: '*' 2091 | jsdom: '*' 2092 | peerDependenciesMeta: 2093 | '@edge-runtime/vm': 2094 | optional: true 2095 | '@vitest/browser': 2096 | optional: true 2097 | '@vitest/ui': 2098 | optional: true 2099 | happy-dom: 2100 | optional: true 2101 | jsdom: 2102 | optional: true 2103 | dependencies: 2104 | '@types/chai': 4.3.4 2105 | '@types/chai-subset': 1.3.3 2106 | '@types/node': 18.11.19 2107 | '@vitest/expect': 0.28.4 2108 | '@vitest/runner': 0.28.4 2109 | '@vitest/spy': 0.28.4 2110 | '@vitest/utils': 0.28.4 2111 | acorn: 8.8.2 2112 | acorn-walk: 8.2.0 2113 | cac: 6.7.14 2114 | chai: 4.3.7 2115 | debug: 4.3.4 2116 | local-pkg: 0.4.3 2117 | pathe: 1.1.0 2118 | picocolors: 1.0.0 2119 | source-map: 0.6.1 2120 | std-env: 3.3.2 2121 | strip-literal: 1.0.1 2122 | tinybench: 2.3.1 2123 | tinypool: 0.3.1 2124 | tinyspy: 1.0.2 2125 | vite: 4.1.1_@types+node@18.11.19 2126 | vite-node: 0.28.4_@types+node@18.11.19 2127 | why-is-node-running: 2.2.2 2128 | transitivePeerDependencies: 2129 | - less 2130 | - sass 2131 | - stylus 2132 | - sugarss 2133 | - supports-color 2134 | - terser 2135 | dev: true 2136 | 2137 | /which/2.0.2: 2138 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2139 | engines: {node: '>= 8'} 2140 | hasBin: true 2141 | dependencies: 2142 | isexe: 2.0.0 2143 | dev: true 2144 | 2145 | /why-is-node-running/2.2.2: 2146 | resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} 2147 | engines: {node: '>=8'} 2148 | hasBin: true 2149 | dependencies: 2150 | siginfo: 2.0.0 2151 | stackback: 0.0.2 2152 | dev: true 2153 | 2154 | /word-wrap/1.2.3: 2155 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} 2156 | engines: {node: '>=0.10.0'} 2157 | dev: true 2158 | 2159 | /wrappy/1.0.2: 2160 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 2161 | dev: true 2162 | 2163 | /yallist/4.0.0: 2164 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2165 | dev: true 2166 | 2167 | /yocto-queue/0.1.0: 2168 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2169 | engines: {node: '>=10'} 2170 | dev: true 2171 | 2172 | /yocto-queue/1.0.0: 2173 | resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} 2174 | engines: {node: '>=12.20'} 2175 | dev: true 2176 | -------------------------------------------------------------------------------- /src/app.d.ts: -------------------------------------------------------------------------------- 1 | // See https://kit.svelte.dev/docs/types#app 2 | // for information about these interfaces 3 | declare global { 4 | namespace App { 5 | // interface Error {} 6 | // interface Locals {} 7 | // interface PageData {} 8 | // interface Platform {} 9 | } 10 | } 11 | 12 | export {}; 13 | -------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | %sveltekit.head% 9 | 10 | 11 |
%sveltekit.body%
12 | 13 | 14 | -------------------------------------------------------------------------------- /src/index.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, it, expect } from 'vitest'; 2 | 3 | describe('sum test', () => { 4 | it('adds 1 + 2 to equal 3', () => { 5 | expect(1 + 2).toBe(3); 6 | }); 7 | }); 8 | -------------------------------------------------------------------------------- /src/routes/+error.svelte: -------------------------------------------------------------------------------- 1 | 8 | 9 |

{$page.status}

10 |

{message}

11 | -------------------------------------------------------------------------------- /src/routes/+layout.svelte: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
6 | 7 | 25 | -------------------------------------------------------------------------------- /src/routes/+layout.ts: -------------------------------------------------------------------------------- 1 | export const ssr = false; 2 | -------------------------------------------------------------------------------- /src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 |

Welcome to SvelteKit!

8 |

Visit kit.svelte.dev to read the documentation.

9 | 10 |

Internal routes

11 |

12 | Normal routes like /user/3, if used on the client, doesn't require a 13 | fallback page, but cannot be requested directly (from the browser address field, by search 14 | engines, etc) unless a fallback page exists. See 15 | this README section for 16 | how to create one. 17 |

18 | 19 |

Goto routes

20 |

21 | goto(`/user/${gotoId}`)}>This route is 22 | called with 23 | goto 24 | and has the same behavior as the previous one. 25 |

26 | 27 |

External routes

28 |

29 | (document.location = '/user/2')}>This route 30 | is redirected with document.location = "/user/2", simulating a browser address field 31 | request. It must have a fallback page, with the web host being able to redirect to it. 32 |

33 | 34 |

No routes

35 |

36 | If your page doesn't have any routes, no fallback is need, and you'll be fine with only src/routes, without subdirectories. 39 |

40 | 41 |

404 page

42 |

43 | If no fallback page exists, you'll get the default 404 page from the web host, compared to the one 44 | you can customize with SvelteKit (docs). 45 | Try to request a 404 here. 46 |

47 | -------------------------------------------------------------------------------- /src/routes/user/[id]/+page.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 |

{data.name}

8 |

Id: {data.id}

9 | 10 |

< Back to start

11 | -------------------------------------------------------------------------------- /src/routes/user/[id]/+page.ts: -------------------------------------------------------------------------------- 1 | import { error } from '@sveltejs/kit'; 2 | import type { PageLoad } from './$types'; 3 | 4 | export const load = (async ({ params, fetch }) => { 5 | const id = parseInt(params.id); 6 | if (!id) throw error(404, 'No user found.'); 7 | 8 | const user = await fetch(`https://jsonplaceholder.typicode.com/users/${id}`).then((res) => 9 | res.json() 10 | ); 11 | 12 | return user; 13 | }) satisfies PageLoad; 14 | -------------------------------------------------------------------------------- /static/.htaccess: -------------------------------------------------------------------------------- 1 | 2 | RewriteEngine On 3 | RewriteBase / 4 | RewriteRule ^200\.html$ - [L] 5 | RewriteCond %{REQUEST_FILENAME} !-f 6 | RewriteCond %{REQUEST_FILENAME} !-d 7 | RewriteRule . /200.html [L] 8 | -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ciscoheat/sveltekit-spa/faf6f2017acda2dca96ff3d054bf17e1fd7d4def/static/favicon.png -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-static'; 2 | import { vitePreprocess } from '@sveltejs/kit/vite'; 3 | 4 | /** @type {import('@sveltejs/kit').Config} */ 5 | const config = { 6 | // Consult https://kit.svelte.dev/docs/integrations#preprocessors 7 | // for more information about preprocessors 8 | preprocess: vitePreprocess(), 9 | 10 | kit: { 11 | adapter: adapter({ 12 | fallback: '200.html' 13 | }) 14 | } 15 | }; 16 | 17 | export default config; 18 | -------------------------------------------------------------------------------- /tests/test.ts: -------------------------------------------------------------------------------- 1 | import { expect, test } from '@playwright/test'; 2 | 3 | test('index page has expected h1', async ({ page }) => { 4 | await page.goto('/'); 5 | expect(await page.textContent('h1')).toBe('Welcome to SvelteKit'); 6 | }); 7 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./.svelte-kit/tsconfig.json", 3 | "compilerOptions": { 4 | "allowJs": true, 5 | "checkJs": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "resolveJsonModule": true, 9 | "skipLibCheck": true, 10 | "sourceMap": true, 11 | "strict": true 12 | } 13 | // Path aliases are handled by https://kit.svelte.dev/docs/configuration#alias 14 | // 15 | // If you want to overwrite includes/excludes, make sure to copy over the relevant includes/excludes 16 | // from the referenced tsconfig.json - TypeScript does not merge them in 17 | } 18 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import type { UserConfig } from 'vite'; 3 | 4 | const config: UserConfig = { 5 | plugins: [sveltekit()], 6 | test: { 7 | include: ['src/**/*.{test,spec}.{js,ts}'] 8 | } 9 | }; 10 | 11 | export default config; 12 | --------------------------------------------------------------------------------