├── .changeset ├── README.md └── config.json ├── .github └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── .npmrc ├── .prettierignore ├── .prettierrc ├── CHANGELOG.md ├── LICENSE ├── README.md ├── eslint.config.js ├── package.json ├── pnpm-lock.yaml ├── src ├── app.d.ts ├── app.html ├── components │ └── Count.svelte ├── lib │ ├── Portal.svelte │ ├── Wormhole.svelte │ └── index.ts └── routes │ └── +page.svelte ├── static └── favicon.png ├── svelte.config.js ├── tests ├── Portal.test.ts ├── TestPortalDynamic.svelte ├── TestPortalElement.svelte └── TestPortalSelector.svelte ├── tsconfig.json └── vite.config.ts /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@3.0.3/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "public", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | pull_request: 8 | branches: 9 | - main 10 | 11 | jobs: 12 | test: 13 | runs-on: ${{ matrix.os }} 14 | strategy: 15 | matrix: 16 | node: [20.x] 17 | os: [ubuntu-latest, macos-latest] 18 | fail-fast: false 19 | 20 | steps: 21 | - name: Checkout Repo 22 | uses: actions/checkout@v4 23 | with: 24 | fetch-depth: 0 25 | - uses: pnpm/action-setup@v4 26 | with: 27 | version: 9.12.0 28 | 29 | - name: Set up Node.js ${{ matrix.node }} 30 | uses: actions/setup-node@v4 31 | with: 32 | node-version: ${{ matrix.node }} 33 | cache: pnpm 34 | 35 | - name: Install dependencies 36 | run: pnpm install --frozen-lockfile 37 | 38 | - name: Lint 39 | run: pnpm lint 40 | 41 | - name: Typecheck 42 | run: pnpm check 43 | 44 | - name: Build 45 | run: pnpm build 46 | 47 | - name: Test 48 | run: pnpm test 49 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release 2 | 3 | on: 4 | push: 5 | branches: 6 | - main 7 | 8 | concurrency: ${{ github.workflow }}-${{ github.ref }} 9 | 10 | jobs: 11 | release: 12 | permissions: 13 | contents: write # to create release (changesets/action) 14 | pull-requests: write # to create pull request (changesets/action) 15 | name: Release 16 | runs-on: ubuntu-latest 17 | steps: 18 | - name: Checkout Repo 19 | uses: actions/checkout@v4 20 | with: 21 | # This makes Actions fetch all Git history so that Changesets can generate changelogs with the correct commits 22 | fetch-depth: 0 23 | - uses: pnpm/action-setup@v4 24 | with: 25 | version: 9.12.0 26 | 27 | - name: Setup Node.js 28 | uses: actions/setup-node@v4 29 | with: 30 | node-version: 20.x 31 | cache: pnpm 32 | 33 | - name: Install dependencies 34 | run: pnpm install --frozen-lockfile 35 | 36 | - name: Create Release Pull Request or Publish to npm 37 | id: changesets 38 | uses: changesets/action@v1 39 | with: 40 | publish: pnpm release 41 | env: 42 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 43 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }} 44 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | 3 | # Output 4 | .output 5 | .vercel 6 | /.svelte-kit 7 | /build 8 | /dist 9 | 10 | # OS 11 | .DS_Store 12 | Thumbs.db 13 | 14 | # Env 15 | .env 16 | .env.* 17 | !.env.example 18 | !.env.test 19 | 20 | # Vite 21 | vite.config.js.timestamp-* 22 | vite.config.ts.timestamp-* 23 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | engine-strict=true 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | # Package Managers 2 | package-lock.json 3 | pnpm-lock.yaml 4 | yarn.lock 5 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "useTabs": true, 3 | "singleQuote": true, 4 | "trailingComma": "none", 5 | "printWidth": 100, 6 | "plugins": ["prettier-plugin-svelte"], 7 | "overrides": [{ "files": "*.svelte", "options": { "parser": "svelte" } }] 8 | } 9 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @jsrob/svelte-portal 2 | 3 | ## 0.2.1 4 | 5 | ### Patch Changes 6 | 7 | - c5162c3: Add caveat to readme 8 | 9 | ## 0.2.0 10 | 11 | ### Minor Changes 12 | 13 | - f527b5f: Bump Svelte 5 to stable 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Robert Soriano 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # svelte-portal 2 | 3 | A Svelte 5 component that lets you render some children into a different part of the DOM. 4 | 5 | ## Installation 6 | 7 | ```bash 8 | npm install @jsrob/svelte-portal 9 | ``` 10 | 11 | ## Usage 12 | 13 | To create a portal, use the `` component and pass in a target and children: 14 | 15 | ```svelte 16 | 19 | 20 | 21 |

This child is placed in the document body.

22 |
23 | ``` 24 | 25 | Another example, a modal that is rendered into the body when a button is clicked: 26 | 27 | ```svelte 28 | 33 | 34 | 35 | 36 | 37 | {#if open} 38 | 42 | {/if} 43 | 44 | 45 | 55 | ``` 56 | 57 | You can also pass components as children: 58 | 59 | ```svelte 60 | 64 | 65 | 66 | 67 | 68 | ``` 69 | 70 | ### Props 71 | 72 | All props can be changed dynamically. 73 | 74 | | Prop | Type | Description | Required | 75 | | ---------- | ----------------------- | --------------------------------------------------------------------------------------------------------- | -------- | 76 | | `target` | `string \| HTMLElement` | Specify target container. Can either be a selector or an actual element. | Yes | 77 | | `disabled` | `boolean` | When `true`, the content will remain in its original location instead of moved into the target container. | No | 78 | 79 | ### Caveats 80 | 81 | When updating the `target` or `disabled` prop value, components in the default snippet are unmounted and re-mounted, which means any changes to their local state are lost. 82 | 83 | If you need to persist state, use some sort of state management. 84 | 85 | ## License 86 | 87 | MIT 88 | -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- 1 | import eslint from '@eslint/js'; 2 | import prettier from 'eslint-config-prettier'; 3 | import svelte from 'eslint-plugin-svelte'; 4 | import globals from 'globals'; 5 | import tseslint from 'typescript-eslint'; 6 | 7 | export default tseslint.config( 8 | eslint.configs.recommended, 9 | ...tseslint.configs.recommended, 10 | ...svelte.configs['flat/recommended'], 11 | prettier, 12 | ...svelte.configs['flat/prettier'], 13 | { 14 | languageOptions: { 15 | globals: { 16 | ...globals.browser, 17 | ...globals.node 18 | } 19 | } 20 | }, 21 | { 22 | files: ['**/*.svelte'], 23 | languageOptions: { 24 | parserOptions: { 25 | parser: tseslint.parser 26 | } 27 | } 28 | }, 29 | { 30 | ignores: ['build/', '.svelte-kit/', 'dist/'] 31 | } 32 | ); 33 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@jsrob/svelte-portal", 3 | "description": "A Svelte component that lets you render some children into a different part of the DOM.", 4 | "license": "MIT", 5 | "keywords": [ 6 | "svelte", 7 | "portal", 8 | "teleport" 9 | ], 10 | "homepage": "https://github.com/wobsoriano/svelte-portal#readme", 11 | "repository": { 12 | "type": "git", 13 | "url": "git+https://github.com/wobsoriano/svelte-portal.git" 14 | }, 15 | "bugs": "https://github.com/wobsoriano/svelte-portal/issues", 16 | "version": "0.2.1", 17 | "scripts": { 18 | "dev": "vite dev", 19 | "build": "vite build && npm run package", 20 | "preview": "vite preview", 21 | "package": "svelte-kit sync && svelte-package && publint", 22 | "prepublishOnly": "npm run package", 23 | "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json", 24 | "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", 25 | "lint": "eslint . && prettier --check .", 26 | "format": "prettier --write .", 27 | "release": "pnpm build && changeset publish", 28 | "test": "vitest" 29 | }, 30 | "publishConfig": { 31 | "access": "public", 32 | "registry": "https://registry.npmjs.org/" 33 | }, 34 | "exports": { 35 | ".": { 36 | "types": "./dist/index.d.ts", 37 | "svelte": "./dist/index.js" 38 | } 39 | }, 40 | "files": [ 41 | "dist", 42 | "!dist/**/*.test.*", 43 | "!dist/**/*.spec.*" 44 | ], 45 | "peerDependencies": { 46 | "svelte": "^5.0.0" 47 | }, 48 | "devDependencies": { 49 | "@changesets/cli": "^2.27.9", 50 | "@sveltejs/adapter-auto": "^3.2.5", 51 | "@sveltejs/kit": "^2.7.2", 52 | "@sveltejs/package": "^2.3.5", 53 | "@sveltejs/vite-plugin-svelte": "^4.0.0", 54 | "@types/eslint": "^9.6.1", 55 | "@types/node": "^22.7.7", 56 | "eslint": "^9.13.0", 57 | "eslint-config-prettier": "^9.1.0", 58 | "eslint-plugin-svelte": "^2.46.0", 59 | "globals": "^15.11.0", 60 | "jsdom": "^25.0.1", 61 | "prettier": "^3.3.3", 62 | "prettier-plugin-svelte": "^3.2.7", 63 | "publint": "^0.2.11", 64 | "svelte": "^5.0.5", 65 | "svelte-check": "^4.0.5", 66 | "typescript": "^5.6.3", 67 | "typescript-eslint": "^8.11.0", 68 | "vite": "^5.4.9", 69 | "vitest": "^2.1.3" 70 | }, 71 | "svelte": "./dist/index.js", 72 | "types": "./dist/index.d.ts", 73 | "type": "module" 74 | } 75 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | '@changesets/cli': 12 | specifier: ^2.27.9 13 | version: 2.27.9 14 | '@sveltejs/adapter-auto': 15 | specifier: ^3.2.5 16 | version: 3.2.5(@sveltejs/kit@2.7.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7))) 17 | '@sveltejs/kit': 18 | specifier: ^2.7.2 19 | version: 2.7.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 20 | '@sveltejs/package': 21 | specifier: ^2.3.5 22 | version: 2.3.5(svelte@5.0.5)(typescript@5.6.3) 23 | '@sveltejs/vite-plugin-svelte': 24 | specifier: ^4.0.0 25 | version: 4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 26 | '@types/eslint': 27 | specifier: ^9.6.1 28 | version: 9.6.1 29 | '@types/node': 30 | specifier: ^22.7.7 31 | version: 22.7.7 32 | eslint: 33 | specifier: ^9.13.0 34 | version: 9.13.0(jiti@1.21.6) 35 | eslint-config-prettier: 36 | specifier: ^9.1.0 37 | version: 9.1.0(eslint@9.13.0(jiti@1.21.6)) 38 | eslint-plugin-svelte: 39 | specifier: ^2.46.0 40 | version: 2.46.0(eslint@9.13.0(jiti@1.21.6))(svelte@5.0.5) 41 | globals: 42 | specifier: ^15.11.0 43 | version: 15.11.0 44 | jsdom: 45 | specifier: ^25.0.1 46 | version: 25.0.1 47 | prettier: 48 | specifier: ^3.3.3 49 | version: 3.3.3 50 | prettier-plugin-svelte: 51 | specifier: ^3.2.7 52 | version: 3.2.7(prettier@3.3.3)(svelte@5.0.5) 53 | publint: 54 | specifier: ^0.2.11 55 | version: 0.2.11 56 | svelte: 57 | specifier: ^5.0.5 58 | version: 5.0.5 59 | svelte-check: 60 | specifier: ^4.0.5 61 | version: 4.0.5(svelte@5.0.5)(typescript@5.6.3) 62 | typescript: 63 | specifier: ^5.6.3 64 | version: 5.6.3 65 | typescript-eslint: 66 | specifier: ^8.11.0 67 | version: 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 68 | vite: 69 | specifier: ^5.4.9 70 | version: 5.4.9(@types/node@22.7.7) 71 | vitest: 72 | specifier: ^2.1.3 73 | version: 2.1.3(@types/node@22.7.7)(jsdom@25.0.1) 74 | 75 | packages: 76 | 77 | '@ampproject/remapping@2.3.0': 78 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 79 | engines: {node: '>=6.0.0'} 80 | 81 | '@babel/runtime@7.25.7': 82 | resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==} 83 | engines: {node: '>=6.9.0'} 84 | 85 | '@changesets/apply-release-plan@7.0.5': 86 | resolution: {integrity: sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==} 87 | 88 | '@changesets/assemble-release-plan@6.0.4': 89 | resolution: {integrity: sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q==} 90 | 91 | '@changesets/changelog-git@0.2.0': 92 | resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} 93 | 94 | '@changesets/cli@2.27.9': 95 | resolution: {integrity: sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==} 96 | hasBin: true 97 | 98 | '@changesets/config@3.0.3': 99 | resolution: {integrity: sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A==} 100 | 101 | '@changesets/errors@0.2.0': 102 | resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} 103 | 104 | '@changesets/get-dependents-graph@2.1.2': 105 | resolution: {integrity: sha512-sgcHRkiBY9i4zWYBwlVyAjEM9sAzs4wYVwJUdnbDLnVG3QwAaia1Mk5P8M7kraTOZN+vBET7n8KyB0YXCbFRLQ==} 106 | 107 | '@changesets/get-release-plan@4.0.4': 108 | resolution: {integrity: sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw==} 109 | 110 | '@changesets/get-version-range-type@0.4.0': 111 | resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} 112 | 113 | '@changesets/git@3.0.1': 114 | resolution: {integrity: sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ==} 115 | 116 | '@changesets/logger@0.1.1': 117 | resolution: {integrity: sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==} 118 | 119 | '@changesets/parse@0.4.0': 120 | resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} 121 | 122 | '@changesets/pre@2.0.1': 123 | resolution: {integrity: sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==} 124 | 125 | '@changesets/read@0.6.1': 126 | resolution: {integrity: sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ==} 127 | 128 | '@changesets/should-skip-package@0.1.1': 129 | resolution: {integrity: sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==} 130 | 131 | '@changesets/types@4.1.0': 132 | resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} 133 | 134 | '@changesets/types@6.0.0': 135 | resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} 136 | 137 | '@changesets/write@0.3.2': 138 | resolution: {integrity: sha512-kDxDrPNpUgsjDbWBvUo27PzKX4gqeKOlhibaOXDJA6kuBisGqNHv/HwGJrAu8U/dSf8ZEFIeHIPtvSlZI1kULw==} 139 | 140 | '@esbuild/aix-ppc64@0.21.5': 141 | resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} 142 | engines: {node: '>=12'} 143 | cpu: [ppc64] 144 | os: [aix] 145 | 146 | '@esbuild/android-arm64@0.21.5': 147 | resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} 148 | engines: {node: '>=12'} 149 | cpu: [arm64] 150 | os: [android] 151 | 152 | '@esbuild/android-arm@0.21.5': 153 | resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} 154 | engines: {node: '>=12'} 155 | cpu: [arm] 156 | os: [android] 157 | 158 | '@esbuild/android-x64@0.21.5': 159 | resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} 160 | engines: {node: '>=12'} 161 | cpu: [x64] 162 | os: [android] 163 | 164 | '@esbuild/darwin-arm64@0.21.5': 165 | resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} 166 | engines: {node: '>=12'} 167 | cpu: [arm64] 168 | os: [darwin] 169 | 170 | '@esbuild/darwin-x64@0.21.5': 171 | resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} 172 | engines: {node: '>=12'} 173 | cpu: [x64] 174 | os: [darwin] 175 | 176 | '@esbuild/freebsd-arm64@0.21.5': 177 | resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} 178 | engines: {node: '>=12'} 179 | cpu: [arm64] 180 | os: [freebsd] 181 | 182 | '@esbuild/freebsd-x64@0.21.5': 183 | resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} 184 | engines: {node: '>=12'} 185 | cpu: [x64] 186 | os: [freebsd] 187 | 188 | '@esbuild/linux-arm64@0.21.5': 189 | resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} 190 | engines: {node: '>=12'} 191 | cpu: [arm64] 192 | os: [linux] 193 | 194 | '@esbuild/linux-arm@0.21.5': 195 | resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} 196 | engines: {node: '>=12'} 197 | cpu: [arm] 198 | os: [linux] 199 | 200 | '@esbuild/linux-ia32@0.21.5': 201 | resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} 202 | engines: {node: '>=12'} 203 | cpu: [ia32] 204 | os: [linux] 205 | 206 | '@esbuild/linux-loong64@0.21.5': 207 | resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} 208 | engines: {node: '>=12'} 209 | cpu: [loong64] 210 | os: [linux] 211 | 212 | '@esbuild/linux-mips64el@0.21.5': 213 | resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} 214 | engines: {node: '>=12'} 215 | cpu: [mips64el] 216 | os: [linux] 217 | 218 | '@esbuild/linux-ppc64@0.21.5': 219 | resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} 220 | engines: {node: '>=12'} 221 | cpu: [ppc64] 222 | os: [linux] 223 | 224 | '@esbuild/linux-riscv64@0.21.5': 225 | resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} 226 | engines: {node: '>=12'} 227 | cpu: [riscv64] 228 | os: [linux] 229 | 230 | '@esbuild/linux-s390x@0.21.5': 231 | resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} 232 | engines: {node: '>=12'} 233 | cpu: [s390x] 234 | os: [linux] 235 | 236 | '@esbuild/linux-x64@0.21.5': 237 | resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} 238 | engines: {node: '>=12'} 239 | cpu: [x64] 240 | os: [linux] 241 | 242 | '@esbuild/netbsd-x64@0.21.5': 243 | resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} 244 | engines: {node: '>=12'} 245 | cpu: [x64] 246 | os: [netbsd] 247 | 248 | '@esbuild/openbsd-x64@0.21.5': 249 | resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} 250 | engines: {node: '>=12'} 251 | cpu: [x64] 252 | os: [openbsd] 253 | 254 | '@esbuild/sunos-x64@0.21.5': 255 | resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} 256 | engines: {node: '>=12'} 257 | cpu: [x64] 258 | os: [sunos] 259 | 260 | '@esbuild/win32-arm64@0.21.5': 261 | resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} 262 | engines: {node: '>=12'} 263 | cpu: [arm64] 264 | os: [win32] 265 | 266 | '@esbuild/win32-ia32@0.21.5': 267 | resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} 268 | engines: {node: '>=12'} 269 | cpu: [ia32] 270 | os: [win32] 271 | 272 | '@esbuild/win32-x64@0.21.5': 273 | resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} 274 | engines: {node: '>=12'} 275 | cpu: [x64] 276 | os: [win32] 277 | 278 | '@eslint-community/eslint-utils@4.4.0': 279 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 280 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 281 | peerDependencies: 282 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 283 | 284 | '@eslint-community/regexpp@4.11.1': 285 | resolution: {integrity: sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==} 286 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 287 | 288 | '@eslint/config-array@0.18.0': 289 | resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} 290 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 291 | 292 | '@eslint/core@0.7.0': 293 | resolution: {integrity: sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==} 294 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 295 | 296 | '@eslint/eslintrc@3.1.0': 297 | resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} 298 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 299 | 300 | '@eslint/js@9.13.0': 301 | resolution: {integrity: sha512-IFLyoY4d72Z5y/6o/BazFBezupzI/taV8sGumxTAVw3lXG9A6md1Dc34T9s1FoD/an9pJH8RHbAxsaEbBed9lA==} 302 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 303 | 304 | '@eslint/object-schema@2.1.4': 305 | resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} 306 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 307 | 308 | '@eslint/plugin-kit@0.2.0': 309 | resolution: {integrity: sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==} 310 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 311 | 312 | '@humanfs/core@0.19.0': 313 | resolution: {integrity: sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==} 314 | engines: {node: '>=18.18.0'} 315 | 316 | '@humanfs/node@0.16.5': 317 | resolution: {integrity: sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==} 318 | engines: {node: '>=18.18.0'} 319 | 320 | '@humanwhocodes/module-importer@1.0.1': 321 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 322 | engines: {node: '>=12.22'} 323 | 324 | '@humanwhocodes/retry@0.3.1': 325 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} 326 | engines: {node: '>=18.18'} 327 | 328 | '@jridgewell/gen-mapping@0.3.5': 329 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 330 | engines: {node: '>=6.0.0'} 331 | 332 | '@jridgewell/resolve-uri@3.1.2': 333 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 334 | engines: {node: '>=6.0.0'} 335 | 336 | '@jridgewell/set-array@1.2.1': 337 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 338 | engines: {node: '>=6.0.0'} 339 | 340 | '@jridgewell/sourcemap-codec@1.5.0': 341 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 342 | 343 | '@jridgewell/trace-mapping@0.3.25': 344 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 345 | 346 | '@manypkg/find-root@1.1.0': 347 | resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} 348 | 349 | '@manypkg/get-packages@1.1.3': 350 | resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} 351 | 352 | '@nodelib/fs.scandir@2.1.5': 353 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 354 | engines: {node: '>= 8'} 355 | 356 | '@nodelib/fs.stat@2.0.5': 357 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 358 | engines: {node: '>= 8'} 359 | 360 | '@nodelib/fs.walk@1.2.8': 361 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 362 | engines: {node: '>= 8'} 363 | 364 | '@polka/url@1.0.0-next.28': 365 | resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==} 366 | 367 | '@rollup/rollup-android-arm-eabi@4.24.0': 368 | resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==} 369 | cpu: [arm] 370 | os: [android] 371 | 372 | '@rollup/rollup-android-arm64@4.24.0': 373 | resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==} 374 | cpu: [arm64] 375 | os: [android] 376 | 377 | '@rollup/rollup-darwin-arm64@4.24.0': 378 | resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==} 379 | cpu: [arm64] 380 | os: [darwin] 381 | 382 | '@rollup/rollup-darwin-x64@4.24.0': 383 | resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==} 384 | cpu: [x64] 385 | os: [darwin] 386 | 387 | '@rollup/rollup-linux-arm-gnueabihf@4.24.0': 388 | resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==} 389 | cpu: [arm] 390 | os: [linux] 391 | 392 | '@rollup/rollup-linux-arm-musleabihf@4.24.0': 393 | resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==} 394 | cpu: [arm] 395 | os: [linux] 396 | 397 | '@rollup/rollup-linux-arm64-gnu@4.24.0': 398 | resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==} 399 | cpu: [arm64] 400 | os: [linux] 401 | 402 | '@rollup/rollup-linux-arm64-musl@4.24.0': 403 | resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==} 404 | cpu: [arm64] 405 | os: [linux] 406 | 407 | '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': 408 | resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==} 409 | cpu: [ppc64] 410 | os: [linux] 411 | 412 | '@rollup/rollup-linux-riscv64-gnu@4.24.0': 413 | resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==} 414 | cpu: [riscv64] 415 | os: [linux] 416 | 417 | '@rollup/rollup-linux-s390x-gnu@4.24.0': 418 | resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==} 419 | cpu: [s390x] 420 | os: [linux] 421 | 422 | '@rollup/rollup-linux-x64-gnu@4.24.0': 423 | resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==} 424 | cpu: [x64] 425 | os: [linux] 426 | 427 | '@rollup/rollup-linux-x64-musl@4.24.0': 428 | resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==} 429 | cpu: [x64] 430 | os: [linux] 431 | 432 | '@rollup/rollup-win32-arm64-msvc@4.24.0': 433 | resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==} 434 | cpu: [arm64] 435 | os: [win32] 436 | 437 | '@rollup/rollup-win32-ia32-msvc@4.24.0': 438 | resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==} 439 | cpu: [ia32] 440 | os: [win32] 441 | 442 | '@rollup/rollup-win32-x64-msvc@4.24.0': 443 | resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==} 444 | cpu: [x64] 445 | os: [win32] 446 | 447 | '@sveltejs/adapter-auto@3.2.5': 448 | resolution: {integrity: sha512-27LR+uKccZ62lgq4N/hvyU2G+hTP9fxWEAfnZcl70HnyfAjMSsGk1z/SjAPXNCD1mVJIE7IFu3TQ8cQ/UH3c0A==} 449 | peerDependencies: 450 | '@sveltejs/kit': ^2.0.0 451 | 452 | '@sveltejs/kit@2.7.2': 453 | resolution: {integrity: sha512-bFwrl+0bNr0/DHQZM0INwwSPNYqDjfsKRhUoa6rj9d8tDZzszBrJ3La6/HVFxWGONEigtG+SzHXa1BEa1BLdwA==} 454 | engines: {node: '>=18.13'} 455 | hasBin: true 456 | peerDependencies: 457 | '@sveltejs/vite-plugin-svelte': ^3.0.0 || ^4.0.0-next.1 458 | svelte: ^4.0.0 || ^5.0.0-next.0 459 | vite: ^5.0.3 460 | 461 | '@sveltejs/package@2.3.5': 462 | resolution: {integrity: sha512-fxWSG+pJHxWwcKltG+JoQ+P1CPO7NHVuZD1Gchi/1mNN6C60yD/voHeeXlqr0HHGkvIrpAjRIHLjsavI77Qsiw==} 463 | engines: {node: ^16.14 || >=18} 464 | hasBin: true 465 | peerDependencies: 466 | svelte: ^3.44.0 || ^4.0.0 || ^5.0.0-next.1 467 | 468 | '@sveltejs/vite-plugin-svelte-inspector@3.0.0-next.3': 469 | resolution: {integrity: sha512-kuGJ2CZ5lAw3gKF8Kw0AfKtUJWbwdlDHY14K413B0MCyrzvQvsKTorwmwZcky0+QqY6RnVIZ/5FttB9bQmkLXg==} 470 | engines: {node: ^18.0.0 || ^20.0.0 || >=22} 471 | peerDependencies: 472 | '@sveltejs/vite-plugin-svelte': ^4.0.0-next.0||^4.0.0 473 | svelte: ^5.0.0-next.96 || ^5.0.0 474 | vite: ^5.0.0 475 | 476 | '@sveltejs/vite-plugin-svelte@4.0.0': 477 | resolution: {integrity: sha512-kpVJwF+gNiMEsoHaw+FJL76IYiwBikkxYU83+BpqQLdVMff19KeRKLd2wisS8niNBMJ2omv5gG+iGDDwd8jzag==} 478 | engines: {node: ^18.0.0 || ^20.0.0 || >=22} 479 | peerDependencies: 480 | svelte: ^5.0.0-next.96 || ^5.0.0 481 | vite: ^5.0.0 482 | 483 | '@types/cookie@0.6.0': 484 | resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==} 485 | 486 | '@types/eslint@9.6.1': 487 | resolution: {integrity: sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==} 488 | 489 | '@types/estree@1.0.6': 490 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 491 | 492 | '@types/json-schema@7.0.15': 493 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 494 | 495 | '@types/node@12.20.55': 496 | resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} 497 | 498 | '@types/node@22.7.7': 499 | resolution: {integrity: sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q==} 500 | 501 | '@typescript-eslint/eslint-plugin@8.11.0': 502 | resolution: {integrity: sha512-KhGn2LjW1PJT2A/GfDpiyOfS4a8xHQv2myUagTM5+zsormOmBlYsnQ6pobJ8XxJmh6hnHwa2Mbe3fPrDJoDhbA==} 503 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 504 | peerDependencies: 505 | '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 506 | eslint: ^8.57.0 || ^9.0.0 507 | typescript: '*' 508 | peerDependenciesMeta: 509 | typescript: 510 | optional: true 511 | 512 | '@typescript-eslint/parser@8.11.0': 513 | resolution: {integrity: sha512-lmt73NeHdy1Q/2ul295Qy3uninSqi6wQI18XwSpm8w0ZbQXUpjCAWP1Vlv/obudoBiIjJVjlztjQ+d/Md98Yxg==} 514 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 515 | peerDependencies: 516 | eslint: ^8.57.0 || ^9.0.0 517 | typescript: '*' 518 | peerDependenciesMeta: 519 | typescript: 520 | optional: true 521 | 522 | '@typescript-eslint/scope-manager@8.11.0': 523 | resolution: {integrity: sha512-Uholz7tWhXmA4r6epo+vaeV7yjdKy5QFCERMjs1kMVsLRKIrSdM6o21W2He9ftp5PP6aWOVpD5zvrvuHZC0bMQ==} 524 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 525 | 526 | '@typescript-eslint/type-utils@8.11.0': 527 | resolution: {integrity: sha512-ItiMfJS6pQU0NIKAaybBKkuVzo6IdnAhPFZA/2Mba/uBjuPQPet/8+zh5GtLHwmuFRShZx+8lhIs7/QeDHflOg==} 528 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 529 | peerDependencies: 530 | typescript: '*' 531 | peerDependenciesMeta: 532 | typescript: 533 | optional: true 534 | 535 | '@typescript-eslint/types@8.11.0': 536 | resolution: {integrity: sha512-tn6sNMHf6EBAYMvmPUaKaVeYvhUsrE6x+bXQTxjQRp360h1giATU0WvgeEys1spbvb5R+VpNOZ+XJmjD8wOUHw==} 537 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 538 | 539 | '@typescript-eslint/typescript-estree@8.11.0': 540 | resolution: {integrity: sha512-yHC3s1z1RCHoCz5t06gf7jH24rr3vns08XXhfEqzYpd6Hll3z/3g23JRi0jM8A47UFKNc3u/y5KIMx8Ynbjohg==} 541 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 542 | peerDependencies: 543 | typescript: '*' 544 | peerDependenciesMeta: 545 | typescript: 546 | optional: true 547 | 548 | '@typescript-eslint/utils@8.11.0': 549 | resolution: {integrity: sha512-CYiX6WZcbXNJV7UNB4PLDIBtSdRmRI/nb0FMyqHPTQD1rMjA0foPLaPUV39C/MxkTd/QKSeX+Gb34PPsDVC35g==} 550 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 551 | peerDependencies: 552 | eslint: ^8.57.0 || ^9.0.0 553 | 554 | '@typescript-eslint/visitor-keys@8.11.0': 555 | resolution: {integrity: sha512-EaewX6lxSjRJnc+99+dqzTeoDZUfyrA52d2/HRrkI830kgovWsmIiTfmr0NZorzqic7ga+1bS60lRBUgR3n/Bw==} 556 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 557 | 558 | '@vitest/expect@2.1.3': 559 | resolution: {integrity: sha512-SNBoPubeCJhZ48agjXruCI57DvxcsivVDdWz+SSsmjTT4QN/DfHk3zB/xKsJqMs26bLZ/pNRLnCf0j679i0uWQ==} 560 | 561 | '@vitest/mocker@2.1.3': 562 | resolution: {integrity: sha512-eSpdY/eJDuOvuTA3ASzCjdithHa+GIF1L4PqtEELl6Qa3XafdMLBpBlZCIUCX2J+Q6sNmjmxtosAG62fK4BlqQ==} 563 | peerDependencies: 564 | '@vitest/spy': 2.1.3 565 | msw: ^2.3.5 566 | vite: ^5.0.0 567 | peerDependenciesMeta: 568 | msw: 569 | optional: true 570 | vite: 571 | optional: true 572 | 573 | '@vitest/pretty-format@2.1.3': 574 | resolution: {integrity: sha512-XH1XdtoLZCpqV59KRbPrIhFCOO0hErxrQCMcvnQete3Vibb9UeIOX02uFPfVn3Z9ZXsq78etlfyhnkmIZSzIwQ==} 575 | 576 | '@vitest/runner@2.1.3': 577 | resolution: {integrity: sha512-JGzpWqmFJ4fq5ZKHtVO3Xuy1iF2rHGV4d/pdzgkYHm1+gOzNZtqjvyiaDGJytRyMU54qkxpNzCx+PErzJ1/JqQ==} 578 | 579 | '@vitest/snapshot@2.1.3': 580 | resolution: {integrity: sha512-qWC2mWc7VAXmjAkEKxrScWHWFyCQx/cmiZtuGqMi+WwqQJ2iURsVY4ZfAK6dVo6K2smKRU6l3BPwqEBvhnpQGg==} 581 | 582 | '@vitest/spy@2.1.3': 583 | resolution: {integrity: sha512-Nb2UzbcUswzeSP7JksMDaqsI43Sj5+Kry6ry6jQJT4b5gAK+NS9NED6mDb8FlMRCX8m5guaHCDZmqYMMWRy5nQ==} 584 | 585 | '@vitest/utils@2.1.3': 586 | resolution: {integrity: sha512-xpiVfDSg1RrYT0tX6czgerkpcKFmFOF/gCr30+Mve5V2kewCy4Prn1/NDMSRwaSmT7PRaOF83wu+bEtsY1wrvA==} 587 | 588 | acorn-jsx@5.3.2: 589 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 590 | peerDependencies: 591 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 592 | 593 | acorn-typescript@1.4.13: 594 | resolution: {integrity: sha512-xsc9Xv0xlVfwp2o7sQ+GCQ1PgbkdcpWdTzrwXxO3xDMTAywVS3oXVOcOHuRjAPkS4P9b+yc/qNF15460v+jp4Q==} 595 | peerDependencies: 596 | acorn: '>=8.9.0' 597 | 598 | acorn@8.12.1: 599 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 600 | engines: {node: '>=0.4.0'} 601 | hasBin: true 602 | 603 | agent-base@7.1.1: 604 | resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} 605 | engines: {node: '>= 14'} 606 | 607 | ajv@6.12.6: 608 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 609 | 610 | ansi-colors@4.1.3: 611 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 612 | engines: {node: '>=6'} 613 | 614 | ansi-regex@5.0.1: 615 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 616 | engines: {node: '>=8'} 617 | 618 | ansi-styles@4.3.0: 619 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 620 | engines: {node: '>=8'} 621 | 622 | argparse@1.0.10: 623 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 624 | 625 | argparse@2.0.1: 626 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 627 | 628 | aria-query@5.3.2: 629 | resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} 630 | engines: {node: '>= 0.4'} 631 | 632 | array-union@2.1.0: 633 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 634 | engines: {node: '>=8'} 635 | 636 | assertion-error@2.0.1: 637 | resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} 638 | engines: {node: '>=12'} 639 | 640 | asynckit@0.4.0: 641 | resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} 642 | 643 | axobject-query@4.1.0: 644 | resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} 645 | engines: {node: '>= 0.4'} 646 | 647 | balanced-match@1.0.2: 648 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 649 | 650 | better-path-resolve@1.0.0: 651 | resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} 652 | engines: {node: '>=4'} 653 | 654 | brace-expansion@1.1.11: 655 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 656 | 657 | brace-expansion@2.0.1: 658 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 659 | 660 | braces@3.0.3: 661 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 662 | engines: {node: '>=8'} 663 | 664 | cac@6.7.14: 665 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 666 | engines: {node: '>=8'} 667 | 668 | callsites@3.1.0: 669 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 670 | engines: {node: '>=6'} 671 | 672 | chai@5.1.1: 673 | resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} 674 | engines: {node: '>=12'} 675 | 676 | chalk@4.1.2: 677 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 678 | engines: {node: '>=10'} 679 | 680 | chardet@0.7.0: 681 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} 682 | 683 | check-error@2.1.1: 684 | resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} 685 | engines: {node: '>= 16'} 686 | 687 | chokidar@4.0.1: 688 | resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} 689 | engines: {node: '>= 14.16.0'} 690 | 691 | ci-info@3.9.0: 692 | resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} 693 | engines: {node: '>=8'} 694 | 695 | color-convert@2.0.1: 696 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 697 | engines: {node: '>=7.0.0'} 698 | 699 | color-name@1.1.4: 700 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 701 | 702 | combined-stream@1.0.8: 703 | resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} 704 | engines: {node: '>= 0.8'} 705 | 706 | concat-map@0.0.1: 707 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 708 | 709 | cookie@0.6.0: 710 | resolution: {integrity: sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==} 711 | engines: {node: '>= 0.6'} 712 | 713 | cross-spawn@5.1.0: 714 | resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} 715 | 716 | cross-spawn@7.0.3: 717 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 718 | engines: {node: '>= 8'} 719 | 720 | cssesc@3.0.0: 721 | resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} 722 | engines: {node: '>=4'} 723 | hasBin: true 724 | 725 | cssstyle@4.1.0: 726 | resolution: {integrity: sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==} 727 | engines: {node: '>=18'} 728 | 729 | data-urls@5.0.0: 730 | resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} 731 | engines: {node: '>=18'} 732 | 733 | debug@4.3.7: 734 | resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==} 735 | engines: {node: '>=6.0'} 736 | peerDependencies: 737 | supports-color: '*' 738 | peerDependenciesMeta: 739 | supports-color: 740 | optional: true 741 | 742 | decimal.js@10.4.3: 743 | resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} 744 | 745 | dedent-js@1.0.1: 746 | resolution: {integrity: sha512-OUepMozQULMLUmhxS95Vudo0jb0UchLimi3+pQ2plj61Fcy8axbP9hbiD4Sz6DPqn6XG3kfmziVfQ1rSys5AJQ==} 747 | 748 | deep-eql@5.0.2: 749 | resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} 750 | engines: {node: '>=6'} 751 | 752 | deep-is@0.1.4: 753 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 754 | 755 | deepmerge@4.3.1: 756 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} 757 | engines: {node: '>=0.10.0'} 758 | 759 | delayed-stream@1.0.0: 760 | resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} 761 | engines: {node: '>=0.4.0'} 762 | 763 | detect-indent@6.1.0: 764 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 765 | engines: {node: '>=8'} 766 | 767 | devalue@5.1.1: 768 | resolution: {integrity: sha512-maua5KUiapvEwiEAe+XnlZ3Rh0GD+qI1J/nb9vrJc3muPXvcF/8gXYTWF76+5DAqHyDUtOIImEuo0YKE9mshVw==} 769 | 770 | dir-glob@3.0.1: 771 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 772 | engines: {node: '>=8'} 773 | 774 | enquirer@2.4.1: 775 | resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} 776 | engines: {node: '>=8.6'} 777 | 778 | entities@4.5.0: 779 | resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} 780 | engines: {node: '>=0.12'} 781 | 782 | esbuild@0.21.5: 783 | resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} 784 | engines: {node: '>=12'} 785 | hasBin: true 786 | 787 | escape-string-regexp@4.0.0: 788 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 789 | engines: {node: '>=10'} 790 | 791 | eslint-compat-utils@0.5.1: 792 | resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} 793 | engines: {node: '>=12'} 794 | peerDependencies: 795 | eslint: '>=6.0.0' 796 | 797 | eslint-config-prettier@9.1.0: 798 | resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} 799 | hasBin: true 800 | peerDependencies: 801 | eslint: '>=7.0.0' 802 | 803 | eslint-plugin-svelte@2.46.0: 804 | resolution: {integrity: sha512-1A7iEMkzmCZ9/Iz+EAfOGYL8IoIG6zeKEq1SmpxGeM5SXmoQq+ZNnCpXFVJpsxPWYx8jIVGMerQMzX20cqUl0g==} 805 | engines: {node: ^14.17.0 || >=16.0.0} 806 | peerDependencies: 807 | eslint: ^7.0.0 || ^8.0.0-0 || ^9.0.0-0 808 | svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 809 | peerDependenciesMeta: 810 | svelte: 811 | optional: true 812 | 813 | eslint-scope@7.2.2: 814 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 815 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 816 | 817 | eslint-scope@8.1.0: 818 | resolution: {integrity: sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==} 819 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 820 | 821 | eslint-visitor-keys@3.4.3: 822 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 823 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 824 | 825 | eslint-visitor-keys@4.1.0: 826 | resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==} 827 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 828 | 829 | eslint@9.13.0: 830 | resolution: {integrity: sha512-EYZK6SX6zjFHST/HRytOdA/zE72Cq/bfw45LSyuwrdvcclb/gqV8RRQxywOBEWO2+WDpva6UZa4CcDeJKzUCFA==} 831 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 832 | hasBin: true 833 | peerDependencies: 834 | jiti: '*' 835 | peerDependenciesMeta: 836 | jiti: 837 | optional: true 838 | 839 | esm-env@1.0.0: 840 | resolution: {integrity: sha512-Cf6VksWPsTuW01vU9Mk/3vRue91Zevka5SjyNf3nEpokFRuqt/KjUQoGAwq9qMmhpLTHmXzSIrFRw8zxWzmFBA==} 841 | 842 | espree@10.2.0: 843 | resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==} 844 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 845 | 846 | espree@9.6.1: 847 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 848 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 849 | 850 | esprima@4.0.1: 851 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 852 | engines: {node: '>=4'} 853 | hasBin: true 854 | 855 | esquery@1.6.0: 856 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 857 | engines: {node: '>=0.10'} 858 | 859 | esrap@1.2.2: 860 | resolution: {integrity: sha512-F2pSJklxx1BlQIQgooczXCPHmcWpn6EsP5oo73LQfonG9fIlIENQ8vMmfGXeojP9MrkzUNAfyU5vdFlR9shHAw==} 861 | 862 | esrecurse@4.3.0: 863 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 864 | engines: {node: '>=4.0'} 865 | 866 | estraverse@5.3.0: 867 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 868 | engines: {node: '>=4.0'} 869 | 870 | estree-walker@3.0.3: 871 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 872 | 873 | esutils@2.0.3: 874 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 875 | engines: {node: '>=0.10.0'} 876 | 877 | extendable-error@0.1.7: 878 | resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} 879 | 880 | external-editor@3.1.0: 881 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} 882 | engines: {node: '>=4'} 883 | 884 | fast-deep-equal@3.1.3: 885 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 886 | 887 | fast-glob@3.3.2: 888 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 889 | engines: {node: '>=8.6.0'} 890 | 891 | fast-json-stable-stringify@2.1.0: 892 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 893 | 894 | fast-levenshtein@2.0.6: 895 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 896 | 897 | fastq@1.17.1: 898 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 899 | 900 | fdir@6.4.0: 901 | resolution: {integrity: sha512-3oB133prH1o4j/L5lLW7uOCF1PlD+/It2L0eL/iAqWMB91RBbqTewABqxhj0ibBd90EEmWZq7ntIWzVaWcXTGQ==} 902 | peerDependencies: 903 | picomatch: ^3 || ^4 904 | peerDependenciesMeta: 905 | picomatch: 906 | optional: true 907 | 908 | file-entry-cache@8.0.0: 909 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} 910 | engines: {node: '>=16.0.0'} 911 | 912 | fill-range@7.1.1: 913 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 914 | engines: {node: '>=8'} 915 | 916 | find-up@4.1.0: 917 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 918 | engines: {node: '>=8'} 919 | 920 | find-up@5.0.0: 921 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 922 | engines: {node: '>=10'} 923 | 924 | flat-cache@4.0.1: 925 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} 926 | engines: {node: '>=16'} 927 | 928 | flatted@3.3.1: 929 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} 930 | 931 | form-data@4.0.1: 932 | resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==} 933 | engines: {node: '>= 6'} 934 | 935 | fs-extra@7.0.1: 936 | resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} 937 | engines: {node: '>=6 <7 || >=8'} 938 | 939 | fs-extra@8.1.0: 940 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 941 | engines: {node: '>=6 <7 || >=8'} 942 | 943 | fs.realpath@1.0.0: 944 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 945 | 946 | fsevents@2.3.3: 947 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 948 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 949 | os: [darwin] 950 | 951 | glob-parent@5.1.2: 952 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 953 | engines: {node: '>= 6'} 954 | 955 | glob-parent@6.0.2: 956 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 957 | engines: {node: '>=10.13.0'} 958 | 959 | glob@8.1.0: 960 | resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} 961 | engines: {node: '>=12'} 962 | deprecated: Glob versions prior to v9 are no longer supported 963 | 964 | globals@14.0.0: 965 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} 966 | engines: {node: '>=18'} 967 | 968 | globals@15.11.0: 969 | resolution: {integrity: sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw==} 970 | engines: {node: '>=18'} 971 | 972 | globalyzer@0.1.0: 973 | resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==} 974 | 975 | globby@11.1.0: 976 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 977 | engines: {node: '>=10'} 978 | 979 | globrex@0.1.2: 980 | resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} 981 | 982 | graceful-fs@4.2.11: 983 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 984 | 985 | graphemer@1.4.0: 986 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 987 | 988 | has-flag@4.0.0: 989 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 990 | engines: {node: '>=8'} 991 | 992 | html-encoding-sniffer@4.0.0: 993 | resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} 994 | engines: {node: '>=18'} 995 | 996 | http-proxy-agent@7.0.2: 997 | resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} 998 | engines: {node: '>= 14'} 999 | 1000 | https-proxy-agent@7.0.5: 1001 | resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} 1002 | engines: {node: '>= 14'} 1003 | 1004 | human-id@1.0.2: 1005 | resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} 1006 | 1007 | iconv-lite@0.4.24: 1008 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 1009 | engines: {node: '>=0.10.0'} 1010 | 1011 | iconv-lite@0.6.3: 1012 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} 1013 | engines: {node: '>=0.10.0'} 1014 | 1015 | ignore-walk@5.0.1: 1016 | resolution: {integrity: sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==} 1017 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1018 | 1019 | ignore@5.3.2: 1020 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 1021 | engines: {node: '>= 4'} 1022 | 1023 | import-fresh@3.3.0: 1024 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1025 | engines: {node: '>=6'} 1026 | 1027 | import-meta-resolve@4.1.0: 1028 | resolution: {integrity: sha512-I6fiaX09Xivtk+THaMfAwnA3MVA5Big1WHF1Dfx9hFuvNIWpXnorlkzhcQf6ehrqQiiZECRt1poOAkPmer3ruw==} 1029 | 1030 | imurmurhash@0.1.4: 1031 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1032 | engines: {node: '>=0.8.19'} 1033 | 1034 | inflight@1.0.6: 1035 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1036 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 1037 | 1038 | inherits@2.0.4: 1039 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1040 | 1041 | is-extglob@2.1.1: 1042 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1043 | engines: {node: '>=0.10.0'} 1044 | 1045 | is-glob@4.0.3: 1046 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1047 | engines: {node: '>=0.10.0'} 1048 | 1049 | is-number@7.0.0: 1050 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1051 | engines: {node: '>=0.12.0'} 1052 | 1053 | is-potential-custom-element-name@1.0.1: 1054 | resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} 1055 | 1056 | is-reference@3.0.2: 1057 | resolution: {integrity: sha512-v3rht/LgVcsdZa3O2Nqs+NMowLOxeOm7Ay9+/ARQ2F+qEoANRcqrjAZKGN0v8ymUetZGgkp26LTnGT7H0Qo9Pg==} 1058 | 1059 | is-subdir@1.2.0: 1060 | resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} 1061 | engines: {node: '>=4'} 1062 | 1063 | is-windows@1.0.2: 1064 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} 1065 | engines: {node: '>=0.10.0'} 1066 | 1067 | isexe@2.0.0: 1068 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1069 | 1070 | jiti@1.21.6: 1071 | resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} 1072 | hasBin: true 1073 | 1074 | js-yaml@3.14.1: 1075 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1076 | hasBin: true 1077 | 1078 | js-yaml@4.1.0: 1079 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1080 | hasBin: true 1081 | 1082 | jsdom@25.0.1: 1083 | resolution: {integrity: sha512-8i7LzZj7BF8uplX+ZyOlIz86V6TAsSs+np6m1kpW9u0JWi4z/1t+FzcK1aek+ybTnAC4KhBL4uXCNT0wcUIeCw==} 1084 | engines: {node: '>=18'} 1085 | peerDependencies: 1086 | canvas: ^2.11.2 1087 | peerDependenciesMeta: 1088 | canvas: 1089 | optional: true 1090 | 1091 | json-buffer@3.0.1: 1092 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1093 | 1094 | json-schema-traverse@0.4.1: 1095 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1096 | 1097 | json-stable-stringify-without-jsonify@1.0.1: 1098 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1099 | 1100 | jsonfile@4.0.0: 1101 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 1102 | 1103 | keyv@4.5.4: 1104 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 1105 | 1106 | kleur@4.1.5: 1107 | resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} 1108 | engines: {node: '>=6'} 1109 | 1110 | known-css-properties@0.35.0: 1111 | resolution: {integrity: sha512-a/RAk2BfKk+WFGhhOCAYqSiFLc34k8Mt/6NWRI4joER0EYUzXIcFivjjnoD3+XU1DggLn/tZc3DOAgke7l8a4A==} 1112 | 1113 | levn@0.4.1: 1114 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1115 | engines: {node: '>= 0.8.0'} 1116 | 1117 | lilconfig@2.1.0: 1118 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 1119 | engines: {node: '>=10'} 1120 | 1121 | locate-character@3.0.0: 1122 | resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} 1123 | 1124 | locate-path@5.0.0: 1125 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 1126 | engines: {node: '>=8'} 1127 | 1128 | locate-path@6.0.0: 1129 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1130 | engines: {node: '>=10'} 1131 | 1132 | lodash.merge@4.6.2: 1133 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1134 | 1135 | lodash.startcase@4.4.0: 1136 | resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} 1137 | 1138 | loupe@3.1.2: 1139 | resolution: {integrity: sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==} 1140 | 1141 | lower-case@2.0.2: 1142 | resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} 1143 | 1144 | lru-cache@4.1.5: 1145 | resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} 1146 | 1147 | magic-string@0.30.12: 1148 | resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==} 1149 | 1150 | merge2@1.4.1: 1151 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1152 | engines: {node: '>= 8'} 1153 | 1154 | micromatch@4.0.8: 1155 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 1156 | engines: {node: '>=8.6'} 1157 | 1158 | mime-db@1.52.0: 1159 | resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} 1160 | engines: {node: '>= 0.6'} 1161 | 1162 | mime-types@2.1.35: 1163 | resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} 1164 | engines: {node: '>= 0.6'} 1165 | 1166 | minimatch@3.1.2: 1167 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1168 | 1169 | minimatch@5.1.6: 1170 | resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 1171 | engines: {node: '>=10'} 1172 | 1173 | minimatch@9.0.5: 1174 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 1175 | engines: {node: '>=16 || 14 >=14.17'} 1176 | 1177 | mri@1.2.0: 1178 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1179 | engines: {node: '>=4'} 1180 | 1181 | mrmime@2.0.0: 1182 | resolution: {integrity: sha512-eu38+hdgojoyq63s+yTpN4XMBdt5l8HhMhc4VKLO9KM5caLIBvUm4thi7fFaxyTmCKeNnXZ5pAlBwCUnhA09uw==} 1183 | engines: {node: '>=10'} 1184 | 1185 | ms@2.1.3: 1186 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1187 | 1188 | nanoid@3.3.7: 1189 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 1190 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1191 | hasBin: true 1192 | 1193 | natural-compare@1.4.0: 1194 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1195 | 1196 | no-case@3.0.4: 1197 | resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} 1198 | 1199 | npm-bundled@2.0.1: 1200 | resolution: {integrity: sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==} 1201 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1202 | 1203 | npm-normalize-package-bin@2.0.0: 1204 | resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} 1205 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1206 | 1207 | npm-packlist@5.1.3: 1208 | resolution: {integrity: sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==} 1209 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1210 | hasBin: true 1211 | 1212 | nwsapi@2.2.13: 1213 | resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} 1214 | 1215 | once@1.4.0: 1216 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1217 | 1218 | optionator@0.9.4: 1219 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1220 | engines: {node: '>= 0.8.0'} 1221 | 1222 | os-tmpdir@1.0.2: 1223 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} 1224 | engines: {node: '>=0.10.0'} 1225 | 1226 | outdent@0.5.0: 1227 | resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} 1228 | 1229 | p-filter@2.1.0: 1230 | resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} 1231 | engines: {node: '>=8'} 1232 | 1233 | p-limit@2.3.0: 1234 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 1235 | engines: {node: '>=6'} 1236 | 1237 | p-limit@3.1.0: 1238 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1239 | engines: {node: '>=10'} 1240 | 1241 | p-locate@4.1.0: 1242 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 1243 | engines: {node: '>=8'} 1244 | 1245 | p-locate@5.0.0: 1246 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1247 | engines: {node: '>=10'} 1248 | 1249 | p-map@2.1.0: 1250 | resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} 1251 | engines: {node: '>=6'} 1252 | 1253 | p-try@2.2.0: 1254 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 1255 | engines: {node: '>=6'} 1256 | 1257 | package-manager-detector@0.2.2: 1258 | resolution: {integrity: sha512-VgXbyrSNsml4eHWIvxxG/nTL4wgybMTXCV2Un/+yEc3aDKKU6nQBZjbeP3Pl3qm9Qg92X/1ng4ffvCeD/zwHgg==} 1259 | 1260 | parent-module@1.0.1: 1261 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1262 | engines: {node: '>=6'} 1263 | 1264 | parse5@7.2.0: 1265 | resolution: {integrity: sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==} 1266 | 1267 | pascal-case@3.1.2: 1268 | resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} 1269 | 1270 | path-exists@4.0.0: 1271 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1272 | engines: {node: '>=8'} 1273 | 1274 | path-key@3.1.1: 1275 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1276 | engines: {node: '>=8'} 1277 | 1278 | path-type@4.0.0: 1279 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1280 | engines: {node: '>=8'} 1281 | 1282 | pathe@1.1.2: 1283 | resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} 1284 | 1285 | pathval@2.0.0: 1286 | resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} 1287 | engines: {node: '>= 14.16'} 1288 | 1289 | picocolors@1.1.0: 1290 | resolution: {integrity: sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==} 1291 | 1292 | picomatch@2.3.1: 1293 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1294 | engines: {node: '>=8.6'} 1295 | 1296 | pify@4.0.1: 1297 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 1298 | engines: {node: '>=6'} 1299 | 1300 | postcss-load-config@3.1.4: 1301 | resolution: {integrity: sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==} 1302 | engines: {node: '>= 10'} 1303 | peerDependencies: 1304 | postcss: '>=8.0.9' 1305 | ts-node: '>=9.0.0' 1306 | peerDependenciesMeta: 1307 | postcss: 1308 | optional: true 1309 | ts-node: 1310 | optional: true 1311 | 1312 | postcss-safe-parser@6.0.0: 1313 | resolution: {integrity: sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==} 1314 | engines: {node: '>=12.0'} 1315 | peerDependencies: 1316 | postcss: ^8.3.3 1317 | 1318 | postcss-scss@4.0.9: 1319 | resolution: {integrity: sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==} 1320 | engines: {node: '>=12.0'} 1321 | peerDependencies: 1322 | postcss: ^8.4.29 1323 | 1324 | postcss-selector-parser@6.1.2: 1325 | resolution: {integrity: sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==} 1326 | engines: {node: '>=4'} 1327 | 1328 | postcss@8.4.47: 1329 | resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==} 1330 | engines: {node: ^10 || ^12 || >=14} 1331 | 1332 | prelude-ls@1.2.1: 1333 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1334 | engines: {node: '>= 0.8.0'} 1335 | 1336 | prettier-plugin-svelte@3.2.7: 1337 | resolution: {integrity: sha512-/Dswx/ea0lV34If1eDcG3nulQ63YNr5KPDfMsjbdtpSWOxKKJ7nAc2qlVuYwEvCr4raIuredNoR7K4JCkmTGaQ==} 1338 | peerDependencies: 1339 | prettier: ^3.0.0 1340 | svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 1341 | 1342 | prettier@2.8.8: 1343 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 1344 | engines: {node: '>=10.13.0'} 1345 | hasBin: true 1346 | 1347 | prettier@3.3.3: 1348 | resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} 1349 | engines: {node: '>=14'} 1350 | hasBin: true 1351 | 1352 | pseudomap@1.0.2: 1353 | resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} 1354 | 1355 | publint@0.2.11: 1356 | resolution: {integrity: sha512-/kxbd+sD/uEG515N/ZYpC6gYs8h89cQ4UIsAq1y6VT4qlNh8xmiSwcP2xU2MbzXFl8J0l2IdONKFweLfYoqhcA==} 1357 | engines: {node: '>=16'} 1358 | hasBin: true 1359 | 1360 | punycode@2.3.1: 1361 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 1362 | engines: {node: '>=6'} 1363 | 1364 | queue-microtask@1.2.3: 1365 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1366 | 1367 | read-yaml-file@1.1.0: 1368 | resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} 1369 | engines: {node: '>=6'} 1370 | 1371 | readdirp@4.0.2: 1372 | resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} 1373 | engines: {node: '>= 14.16.0'} 1374 | 1375 | regenerator-runtime@0.14.1: 1376 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 1377 | 1378 | resolve-from@4.0.0: 1379 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1380 | engines: {node: '>=4'} 1381 | 1382 | resolve-from@5.0.0: 1383 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1384 | engines: {node: '>=8'} 1385 | 1386 | reusify@1.0.4: 1387 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1388 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1389 | 1390 | rollup@4.24.0: 1391 | resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==} 1392 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1393 | hasBin: true 1394 | 1395 | rrweb-cssom@0.7.1: 1396 | resolution: {integrity: sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==} 1397 | 1398 | run-parallel@1.2.0: 1399 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1400 | 1401 | sade@1.8.1: 1402 | resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} 1403 | engines: {node: '>=6'} 1404 | 1405 | safer-buffer@2.1.2: 1406 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 1407 | 1408 | saxes@6.0.0: 1409 | resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} 1410 | engines: {node: '>=v12.22.7'} 1411 | 1412 | semver@7.6.3: 1413 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} 1414 | engines: {node: '>=10'} 1415 | hasBin: true 1416 | 1417 | set-cookie-parser@2.7.0: 1418 | resolution: {integrity: sha512-lXLOiqpkUumhRdFF3k1osNXCy9akgx/dyPZ5p8qAg9seJzXr5ZrlqZuWIMuY6ejOsVLE6flJ5/h3lsn57fQ/PQ==} 1419 | 1420 | shebang-command@1.2.0: 1421 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 1422 | engines: {node: '>=0.10.0'} 1423 | 1424 | shebang-command@2.0.0: 1425 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1426 | engines: {node: '>=8'} 1427 | 1428 | shebang-regex@1.0.0: 1429 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 1430 | engines: {node: '>=0.10.0'} 1431 | 1432 | shebang-regex@3.0.0: 1433 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1434 | engines: {node: '>=8'} 1435 | 1436 | siginfo@2.0.0: 1437 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 1438 | 1439 | signal-exit@3.0.7: 1440 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1441 | 1442 | sirv@3.0.0: 1443 | resolution: {integrity: sha512-BPwJGUeDaDCHihkORDchNyyTvWFhcusy1XMmhEVTQTwGeybFbp8YEmB+njbPnth1FibULBSBVwCQni25XlCUDg==} 1444 | engines: {node: '>=18'} 1445 | 1446 | slash@3.0.0: 1447 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1448 | engines: {node: '>=8'} 1449 | 1450 | source-map-js@1.2.1: 1451 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 1452 | engines: {node: '>=0.10.0'} 1453 | 1454 | spawndamnit@2.0.0: 1455 | resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} 1456 | 1457 | sprintf-js@1.0.3: 1458 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 1459 | 1460 | stackback@0.0.2: 1461 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 1462 | 1463 | std-env@3.7.0: 1464 | resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} 1465 | 1466 | strip-ansi@6.0.1: 1467 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1468 | engines: {node: '>=8'} 1469 | 1470 | strip-bom@3.0.0: 1471 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 1472 | engines: {node: '>=4'} 1473 | 1474 | strip-json-comments@3.1.1: 1475 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1476 | engines: {node: '>=8'} 1477 | 1478 | supports-color@7.2.0: 1479 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1480 | engines: {node: '>=8'} 1481 | 1482 | svelte-check@4.0.5: 1483 | resolution: {integrity: sha512-icBTBZ3ibBaywbXUat3cK6hB5Du+Kq9Z8CRuyLmm64XIe2/r+lQcbuBx/IQgsbrC+kT2jQ0weVpZSSRIPwB6jQ==} 1484 | engines: {node: '>= 18.0.0'} 1485 | hasBin: true 1486 | peerDependencies: 1487 | svelte: ^4.0.0 || ^5.0.0-next.0 1488 | typescript: '>=5.0.0' 1489 | 1490 | svelte-eslint-parser@0.43.0: 1491 | resolution: {integrity: sha512-GpU52uPKKcVnh8tKN5P4UZpJ/fUDndmq7wfsvoVXsyP+aY0anol7Yqo01fyrlaWGMFfm4av5DyrjlaXdLRJvGA==} 1492 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1493 | peerDependencies: 1494 | svelte: ^3.37.0 || ^4.0.0 || ^5.0.0 1495 | peerDependenciesMeta: 1496 | svelte: 1497 | optional: true 1498 | 1499 | svelte2tsx@0.7.21: 1500 | resolution: {integrity: sha512-cdYR5gYBK0Ys3/jzGu9yfW9oxGLtLAnxcKtS7oJy2pjLhLLYSZcWeeeuaY9SMULwlqMZ1HfngGH3n5VdquRC3Q==} 1501 | peerDependencies: 1502 | svelte: ^3.55 || ^4.0.0-next.0 || ^4.0 || ^5.0.0-next.0 1503 | typescript: ^4.9.4 || ^5.0.0 1504 | 1505 | svelte@5.0.5: 1506 | resolution: {integrity: sha512-f4WBlP5g8W6pEoDfx741lewMlemy+LIGpEqjGPWqnHVP92wqlQXl87U5O5Bi2tkSUrO95OxOoqwU8qlqiHmFKA==} 1507 | engines: {node: '>=18'} 1508 | 1509 | symbol-tree@3.2.4: 1510 | resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} 1511 | 1512 | term-size@2.2.1: 1513 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} 1514 | engines: {node: '>=8'} 1515 | 1516 | text-table@0.2.0: 1517 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1518 | 1519 | tiny-glob@0.2.9: 1520 | resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==} 1521 | 1522 | tinybench@2.9.0: 1523 | resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} 1524 | 1525 | tinyexec@0.3.0: 1526 | resolution: {integrity: sha512-tVGE0mVJPGb0chKhqmsoosjsS+qUnJVGJpZgsHYQcGoPlG3B51R3PouqTgEGH2Dc9jjFyOqOpix6ZHNMXp1FZg==} 1527 | 1528 | tinypool@1.0.1: 1529 | resolution: {integrity: sha512-URZYihUbRPcGv95En+sz6MfghfIc2OJ1sv/RmhWZLouPY0/8Vo80viwPvg3dlaS9fuq7fQMEfgRRK7BBZThBEA==} 1530 | engines: {node: ^18.0.0 || >=20.0.0} 1531 | 1532 | tinyrainbow@1.2.0: 1533 | resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} 1534 | engines: {node: '>=14.0.0'} 1535 | 1536 | tinyspy@3.0.2: 1537 | resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} 1538 | engines: {node: '>=14.0.0'} 1539 | 1540 | tldts-core@6.1.51: 1541 | resolution: {integrity: sha512-bu9oCYYWC1iRjx+3UnAjqCsfrWNZV1ghNQf49b3w5xE8J/tNShHTzp5syWJfwGH+pxUgTTLUnzHnfuydW7wmbg==} 1542 | 1543 | tldts@6.1.51: 1544 | resolution: {integrity: sha512-33lfQoL0JsDogIbZ8fgRyvv77GnRtwkNE/MOKocwUgPO1WrSfsq7+vQRKxRQZai5zd+zg97Iv9fpFQSzHyWdLA==} 1545 | hasBin: true 1546 | 1547 | tmp@0.0.33: 1548 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} 1549 | engines: {node: '>=0.6.0'} 1550 | 1551 | to-regex-range@5.0.1: 1552 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1553 | engines: {node: '>=8.0'} 1554 | 1555 | totalist@3.0.1: 1556 | resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} 1557 | engines: {node: '>=6'} 1558 | 1559 | tough-cookie@5.0.0: 1560 | resolution: {integrity: sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==} 1561 | engines: {node: '>=16'} 1562 | 1563 | tr46@5.0.0: 1564 | resolution: {integrity: sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==} 1565 | engines: {node: '>=18'} 1566 | 1567 | ts-api-utils@1.3.0: 1568 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 1569 | engines: {node: '>=16'} 1570 | peerDependencies: 1571 | typescript: '>=4.2.0' 1572 | 1573 | tslib@2.7.0: 1574 | resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} 1575 | 1576 | type-check@0.4.0: 1577 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1578 | engines: {node: '>= 0.8.0'} 1579 | 1580 | typescript-eslint@8.11.0: 1581 | resolution: {integrity: sha512-cBRGnW3FSlxaYwU8KfAewxFK5uzeOAp0l2KebIlPDOT5olVi65KDG/yjBooPBG0kGW/HLkoz1c/iuBFehcS3IA==} 1582 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1583 | peerDependencies: 1584 | typescript: '*' 1585 | peerDependenciesMeta: 1586 | typescript: 1587 | optional: true 1588 | 1589 | typescript@5.6.3: 1590 | resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==} 1591 | engines: {node: '>=14.17'} 1592 | hasBin: true 1593 | 1594 | undici-types@6.19.8: 1595 | resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} 1596 | 1597 | universalify@0.1.2: 1598 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 1599 | engines: {node: '>= 4.0.0'} 1600 | 1601 | uri-js@4.4.1: 1602 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1603 | 1604 | util-deprecate@1.0.2: 1605 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1606 | 1607 | vite-node@2.1.3: 1608 | resolution: {integrity: sha512-I1JadzO+xYX887S39Do+paRePCKoiDrWRRjp9kkG5he0t7RXNvPAJPCQSJqbGN4uCrFFeS3Kj3sLqY8NMYBEdA==} 1609 | engines: {node: ^18.0.0 || >=20.0.0} 1610 | hasBin: true 1611 | 1612 | vite@5.4.9: 1613 | resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==} 1614 | engines: {node: ^18.0.0 || >=20.0.0} 1615 | hasBin: true 1616 | peerDependencies: 1617 | '@types/node': ^18.0.0 || >=20.0.0 1618 | less: '*' 1619 | lightningcss: ^1.21.0 1620 | sass: '*' 1621 | sass-embedded: '*' 1622 | stylus: '*' 1623 | sugarss: '*' 1624 | terser: ^5.4.0 1625 | peerDependenciesMeta: 1626 | '@types/node': 1627 | optional: true 1628 | less: 1629 | optional: true 1630 | lightningcss: 1631 | optional: true 1632 | sass: 1633 | optional: true 1634 | sass-embedded: 1635 | optional: true 1636 | stylus: 1637 | optional: true 1638 | sugarss: 1639 | optional: true 1640 | terser: 1641 | optional: true 1642 | 1643 | vitefu@1.0.3: 1644 | resolution: {integrity: sha512-iKKfOMBHob2WxEJbqbJjHAkmYgvFDPhuqrO82om83S8RLk+17FtyMBfcyeH8GqD0ihShtkMW/zzJgiA51hCNCQ==} 1645 | peerDependencies: 1646 | vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0-beta.0 1647 | peerDependenciesMeta: 1648 | vite: 1649 | optional: true 1650 | 1651 | vitest@2.1.3: 1652 | resolution: {integrity: sha512-Zrxbg/WiIvUP2uEzelDNTXmEMJXuzJ1kCpbDvaKByFA9MNeO95V+7r/3ti0qzJzrxdyuUw5VduN7k+D3VmVOSA==} 1653 | engines: {node: ^18.0.0 || >=20.0.0} 1654 | hasBin: true 1655 | peerDependencies: 1656 | '@edge-runtime/vm': '*' 1657 | '@types/node': ^18.0.0 || >=20.0.0 1658 | '@vitest/browser': 2.1.3 1659 | '@vitest/ui': 2.1.3 1660 | happy-dom: '*' 1661 | jsdom: '*' 1662 | peerDependenciesMeta: 1663 | '@edge-runtime/vm': 1664 | optional: true 1665 | '@types/node': 1666 | optional: true 1667 | '@vitest/browser': 1668 | optional: true 1669 | '@vitest/ui': 1670 | optional: true 1671 | happy-dom: 1672 | optional: true 1673 | jsdom: 1674 | optional: true 1675 | 1676 | w3c-xmlserializer@5.0.0: 1677 | resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} 1678 | engines: {node: '>=18'} 1679 | 1680 | webidl-conversions@7.0.0: 1681 | resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} 1682 | engines: {node: '>=12'} 1683 | 1684 | whatwg-encoding@3.1.1: 1685 | resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} 1686 | engines: {node: '>=18'} 1687 | 1688 | whatwg-mimetype@4.0.0: 1689 | resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} 1690 | engines: {node: '>=18'} 1691 | 1692 | whatwg-url@14.0.0: 1693 | resolution: {integrity: sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==} 1694 | engines: {node: '>=18'} 1695 | 1696 | which@1.3.1: 1697 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 1698 | hasBin: true 1699 | 1700 | which@2.0.2: 1701 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1702 | engines: {node: '>= 8'} 1703 | hasBin: true 1704 | 1705 | why-is-node-running@2.3.0: 1706 | resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} 1707 | engines: {node: '>=8'} 1708 | hasBin: true 1709 | 1710 | word-wrap@1.2.5: 1711 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1712 | engines: {node: '>=0.10.0'} 1713 | 1714 | wrappy@1.0.2: 1715 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 1716 | 1717 | ws@8.18.0: 1718 | resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} 1719 | engines: {node: '>=10.0.0'} 1720 | peerDependencies: 1721 | bufferutil: ^4.0.1 1722 | utf-8-validate: '>=5.0.2' 1723 | peerDependenciesMeta: 1724 | bufferutil: 1725 | optional: true 1726 | utf-8-validate: 1727 | optional: true 1728 | 1729 | xml-name-validator@5.0.0: 1730 | resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} 1731 | engines: {node: '>=18'} 1732 | 1733 | xmlchars@2.2.0: 1734 | resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} 1735 | 1736 | yallist@2.1.2: 1737 | resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} 1738 | 1739 | yaml@1.10.2: 1740 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 1741 | engines: {node: '>= 6'} 1742 | 1743 | yocto-queue@0.1.0: 1744 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1745 | engines: {node: '>=10'} 1746 | 1747 | zimmerframe@1.1.2: 1748 | resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} 1749 | 1750 | snapshots: 1751 | 1752 | '@ampproject/remapping@2.3.0': 1753 | dependencies: 1754 | '@jridgewell/gen-mapping': 0.3.5 1755 | '@jridgewell/trace-mapping': 0.3.25 1756 | 1757 | '@babel/runtime@7.25.7': 1758 | dependencies: 1759 | regenerator-runtime: 0.14.1 1760 | 1761 | '@changesets/apply-release-plan@7.0.5': 1762 | dependencies: 1763 | '@changesets/config': 3.0.3 1764 | '@changesets/get-version-range-type': 0.4.0 1765 | '@changesets/git': 3.0.1 1766 | '@changesets/should-skip-package': 0.1.1 1767 | '@changesets/types': 6.0.0 1768 | '@manypkg/get-packages': 1.1.3 1769 | detect-indent: 6.1.0 1770 | fs-extra: 7.0.1 1771 | lodash.startcase: 4.4.0 1772 | outdent: 0.5.0 1773 | prettier: 2.8.8 1774 | resolve-from: 5.0.0 1775 | semver: 7.6.3 1776 | 1777 | '@changesets/assemble-release-plan@6.0.4': 1778 | dependencies: 1779 | '@changesets/errors': 0.2.0 1780 | '@changesets/get-dependents-graph': 2.1.2 1781 | '@changesets/should-skip-package': 0.1.1 1782 | '@changesets/types': 6.0.0 1783 | '@manypkg/get-packages': 1.1.3 1784 | semver: 7.6.3 1785 | 1786 | '@changesets/changelog-git@0.2.0': 1787 | dependencies: 1788 | '@changesets/types': 6.0.0 1789 | 1790 | '@changesets/cli@2.27.9': 1791 | dependencies: 1792 | '@changesets/apply-release-plan': 7.0.5 1793 | '@changesets/assemble-release-plan': 6.0.4 1794 | '@changesets/changelog-git': 0.2.0 1795 | '@changesets/config': 3.0.3 1796 | '@changesets/errors': 0.2.0 1797 | '@changesets/get-dependents-graph': 2.1.2 1798 | '@changesets/get-release-plan': 4.0.4 1799 | '@changesets/git': 3.0.1 1800 | '@changesets/logger': 0.1.1 1801 | '@changesets/pre': 2.0.1 1802 | '@changesets/read': 0.6.1 1803 | '@changesets/should-skip-package': 0.1.1 1804 | '@changesets/types': 6.0.0 1805 | '@changesets/write': 0.3.2 1806 | '@manypkg/get-packages': 1.1.3 1807 | ansi-colors: 4.1.3 1808 | ci-info: 3.9.0 1809 | enquirer: 2.4.1 1810 | external-editor: 3.1.0 1811 | fs-extra: 7.0.1 1812 | mri: 1.2.0 1813 | p-limit: 2.3.0 1814 | package-manager-detector: 0.2.2 1815 | picocolors: 1.1.0 1816 | resolve-from: 5.0.0 1817 | semver: 7.6.3 1818 | spawndamnit: 2.0.0 1819 | term-size: 2.2.1 1820 | 1821 | '@changesets/config@3.0.3': 1822 | dependencies: 1823 | '@changesets/errors': 0.2.0 1824 | '@changesets/get-dependents-graph': 2.1.2 1825 | '@changesets/logger': 0.1.1 1826 | '@changesets/types': 6.0.0 1827 | '@manypkg/get-packages': 1.1.3 1828 | fs-extra: 7.0.1 1829 | micromatch: 4.0.8 1830 | 1831 | '@changesets/errors@0.2.0': 1832 | dependencies: 1833 | extendable-error: 0.1.7 1834 | 1835 | '@changesets/get-dependents-graph@2.1.2': 1836 | dependencies: 1837 | '@changesets/types': 6.0.0 1838 | '@manypkg/get-packages': 1.1.3 1839 | picocolors: 1.1.0 1840 | semver: 7.6.3 1841 | 1842 | '@changesets/get-release-plan@4.0.4': 1843 | dependencies: 1844 | '@changesets/assemble-release-plan': 6.0.4 1845 | '@changesets/config': 3.0.3 1846 | '@changesets/pre': 2.0.1 1847 | '@changesets/read': 0.6.1 1848 | '@changesets/types': 6.0.0 1849 | '@manypkg/get-packages': 1.1.3 1850 | 1851 | '@changesets/get-version-range-type@0.4.0': {} 1852 | 1853 | '@changesets/git@3.0.1': 1854 | dependencies: 1855 | '@changesets/errors': 0.2.0 1856 | '@manypkg/get-packages': 1.1.3 1857 | is-subdir: 1.2.0 1858 | micromatch: 4.0.8 1859 | spawndamnit: 2.0.0 1860 | 1861 | '@changesets/logger@0.1.1': 1862 | dependencies: 1863 | picocolors: 1.1.0 1864 | 1865 | '@changesets/parse@0.4.0': 1866 | dependencies: 1867 | '@changesets/types': 6.0.0 1868 | js-yaml: 3.14.1 1869 | 1870 | '@changesets/pre@2.0.1': 1871 | dependencies: 1872 | '@changesets/errors': 0.2.0 1873 | '@changesets/types': 6.0.0 1874 | '@manypkg/get-packages': 1.1.3 1875 | fs-extra: 7.0.1 1876 | 1877 | '@changesets/read@0.6.1': 1878 | dependencies: 1879 | '@changesets/git': 3.0.1 1880 | '@changesets/logger': 0.1.1 1881 | '@changesets/parse': 0.4.0 1882 | '@changesets/types': 6.0.0 1883 | fs-extra: 7.0.1 1884 | p-filter: 2.1.0 1885 | picocolors: 1.1.0 1886 | 1887 | '@changesets/should-skip-package@0.1.1': 1888 | dependencies: 1889 | '@changesets/types': 6.0.0 1890 | '@manypkg/get-packages': 1.1.3 1891 | 1892 | '@changesets/types@4.1.0': {} 1893 | 1894 | '@changesets/types@6.0.0': {} 1895 | 1896 | '@changesets/write@0.3.2': 1897 | dependencies: 1898 | '@changesets/types': 6.0.0 1899 | fs-extra: 7.0.1 1900 | human-id: 1.0.2 1901 | prettier: 2.8.8 1902 | 1903 | '@esbuild/aix-ppc64@0.21.5': 1904 | optional: true 1905 | 1906 | '@esbuild/android-arm64@0.21.5': 1907 | optional: true 1908 | 1909 | '@esbuild/android-arm@0.21.5': 1910 | optional: true 1911 | 1912 | '@esbuild/android-x64@0.21.5': 1913 | optional: true 1914 | 1915 | '@esbuild/darwin-arm64@0.21.5': 1916 | optional: true 1917 | 1918 | '@esbuild/darwin-x64@0.21.5': 1919 | optional: true 1920 | 1921 | '@esbuild/freebsd-arm64@0.21.5': 1922 | optional: true 1923 | 1924 | '@esbuild/freebsd-x64@0.21.5': 1925 | optional: true 1926 | 1927 | '@esbuild/linux-arm64@0.21.5': 1928 | optional: true 1929 | 1930 | '@esbuild/linux-arm@0.21.5': 1931 | optional: true 1932 | 1933 | '@esbuild/linux-ia32@0.21.5': 1934 | optional: true 1935 | 1936 | '@esbuild/linux-loong64@0.21.5': 1937 | optional: true 1938 | 1939 | '@esbuild/linux-mips64el@0.21.5': 1940 | optional: true 1941 | 1942 | '@esbuild/linux-ppc64@0.21.5': 1943 | optional: true 1944 | 1945 | '@esbuild/linux-riscv64@0.21.5': 1946 | optional: true 1947 | 1948 | '@esbuild/linux-s390x@0.21.5': 1949 | optional: true 1950 | 1951 | '@esbuild/linux-x64@0.21.5': 1952 | optional: true 1953 | 1954 | '@esbuild/netbsd-x64@0.21.5': 1955 | optional: true 1956 | 1957 | '@esbuild/openbsd-x64@0.21.5': 1958 | optional: true 1959 | 1960 | '@esbuild/sunos-x64@0.21.5': 1961 | optional: true 1962 | 1963 | '@esbuild/win32-arm64@0.21.5': 1964 | optional: true 1965 | 1966 | '@esbuild/win32-ia32@0.21.5': 1967 | optional: true 1968 | 1969 | '@esbuild/win32-x64@0.21.5': 1970 | optional: true 1971 | 1972 | '@eslint-community/eslint-utils@4.4.0(eslint@9.13.0(jiti@1.21.6))': 1973 | dependencies: 1974 | eslint: 9.13.0(jiti@1.21.6) 1975 | eslint-visitor-keys: 3.4.3 1976 | 1977 | '@eslint-community/regexpp@4.11.1': {} 1978 | 1979 | '@eslint/config-array@0.18.0': 1980 | dependencies: 1981 | '@eslint/object-schema': 2.1.4 1982 | debug: 4.3.7 1983 | minimatch: 3.1.2 1984 | transitivePeerDependencies: 1985 | - supports-color 1986 | 1987 | '@eslint/core@0.7.0': {} 1988 | 1989 | '@eslint/eslintrc@3.1.0': 1990 | dependencies: 1991 | ajv: 6.12.6 1992 | debug: 4.3.7 1993 | espree: 10.2.0 1994 | globals: 14.0.0 1995 | ignore: 5.3.2 1996 | import-fresh: 3.3.0 1997 | js-yaml: 4.1.0 1998 | minimatch: 3.1.2 1999 | strip-json-comments: 3.1.1 2000 | transitivePeerDependencies: 2001 | - supports-color 2002 | 2003 | '@eslint/js@9.13.0': {} 2004 | 2005 | '@eslint/object-schema@2.1.4': {} 2006 | 2007 | '@eslint/plugin-kit@0.2.0': 2008 | dependencies: 2009 | levn: 0.4.1 2010 | 2011 | '@humanfs/core@0.19.0': {} 2012 | 2013 | '@humanfs/node@0.16.5': 2014 | dependencies: 2015 | '@humanfs/core': 0.19.0 2016 | '@humanwhocodes/retry': 0.3.1 2017 | 2018 | '@humanwhocodes/module-importer@1.0.1': {} 2019 | 2020 | '@humanwhocodes/retry@0.3.1': {} 2021 | 2022 | '@jridgewell/gen-mapping@0.3.5': 2023 | dependencies: 2024 | '@jridgewell/set-array': 1.2.1 2025 | '@jridgewell/sourcemap-codec': 1.5.0 2026 | '@jridgewell/trace-mapping': 0.3.25 2027 | 2028 | '@jridgewell/resolve-uri@3.1.2': {} 2029 | 2030 | '@jridgewell/set-array@1.2.1': {} 2031 | 2032 | '@jridgewell/sourcemap-codec@1.5.0': {} 2033 | 2034 | '@jridgewell/trace-mapping@0.3.25': 2035 | dependencies: 2036 | '@jridgewell/resolve-uri': 3.1.2 2037 | '@jridgewell/sourcemap-codec': 1.5.0 2038 | 2039 | '@manypkg/find-root@1.1.0': 2040 | dependencies: 2041 | '@babel/runtime': 7.25.7 2042 | '@types/node': 12.20.55 2043 | find-up: 4.1.0 2044 | fs-extra: 8.1.0 2045 | 2046 | '@manypkg/get-packages@1.1.3': 2047 | dependencies: 2048 | '@babel/runtime': 7.25.7 2049 | '@changesets/types': 4.1.0 2050 | '@manypkg/find-root': 1.1.0 2051 | fs-extra: 8.1.0 2052 | globby: 11.1.0 2053 | read-yaml-file: 1.1.0 2054 | 2055 | '@nodelib/fs.scandir@2.1.5': 2056 | dependencies: 2057 | '@nodelib/fs.stat': 2.0.5 2058 | run-parallel: 1.2.0 2059 | 2060 | '@nodelib/fs.stat@2.0.5': {} 2061 | 2062 | '@nodelib/fs.walk@1.2.8': 2063 | dependencies: 2064 | '@nodelib/fs.scandir': 2.1.5 2065 | fastq: 1.17.1 2066 | 2067 | '@polka/url@1.0.0-next.28': {} 2068 | 2069 | '@rollup/rollup-android-arm-eabi@4.24.0': 2070 | optional: true 2071 | 2072 | '@rollup/rollup-android-arm64@4.24.0': 2073 | optional: true 2074 | 2075 | '@rollup/rollup-darwin-arm64@4.24.0': 2076 | optional: true 2077 | 2078 | '@rollup/rollup-darwin-x64@4.24.0': 2079 | optional: true 2080 | 2081 | '@rollup/rollup-linux-arm-gnueabihf@4.24.0': 2082 | optional: true 2083 | 2084 | '@rollup/rollup-linux-arm-musleabihf@4.24.0': 2085 | optional: true 2086 | 2087 | '@rollup/rollup-linux-arm64-gnu@4.24.0': 2088 | optional: true 2089 | 2090 | '@rollup/rollup-linux-arm64-musl@4.24.0': 2091 | optional: true 2092 | 2093 | '@rollup/rollup-linux-powerpc64le-gnu@4.24.0': 2094 | optional: true 2095 | 2096 | '@rollup/rollup-linux-riscv64-gnu@4.24.0': 2097 | optional: true 2098 | 2099 | '@rollup/rollup-linux-s390x-gnu@4.24.0': 2100 | optional: true 2101 | 2102 | '@rollup/rollup-linux-x64-gnu@4.24.0': 2103 | optional: true 2104 | 2105 | '@rollup/rollup-linux-x64-musl@4.24.0': 2106 | optional: true 2107 | 2108 | '@rollup/rollup-win32-arm64-msvc@4.24.0': 2109 | optional: true 2110 | 2111 | '@rollup/rollup-win32-ia32-msvc@4.24.0': 2112 | optional: true 2113 | 2114 | '@rollup/rollup-win32-x64-msvc@4.24.0': 2115 | optional: true 2116 | 2117 | '@sveltejs/adapter-auto@3.2.5(@sveltejs/kit@2.7.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))': 2118 | dependencies: 2119 | '@sveltejs/kit': 2.7.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 2120 | import-meta-resolve: 4.1.0 2121 | 2122 | '@sveltejs/kit@2.7.2(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7))': 2123 | dependencies: 2124 | '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 2125 | '@types/cookie': 0.6.0 2126 | cookie: 0.6.0 2127 | devalue: 5.1.1 2128 | esm-env: 1.0.0 2129 | import-meta-resolve: 4.1.0 2130 | kleur: 4.1.5 2131 | magic-string: 0.30.12 2132 | mrmime: 2.0.0 2133 | sade: 1.8.1 2134 | set-cookie-parser: 2.7.0 2135 | sirv: 3.0.0 2136 | svelte: 5.0.5 2137 | tiny-glob: 0.2.9 2138 | vite: 5.4.9(@types/node@22.7.7) 2139 | 2140 | '@sveltejs/package@2.3.5(svelte@5.0.5)(typescript@5.6.3)': 2141 | dependencies: 2142 | chokidar: 4.0.1 2143 | kleur: 4.1.5 2144 | sade: 1.8.1 2145 | semver: 7.6.3 2146 | svelte: 5.0.5 2147 | svelte2tsx: 0.7.21(svelte@5.0.5)(typescript@5.6.3) 2148 | transitivePeerDependencies: 2149 | - typescript 2150 | 2151 | '@sveltejs/vite-plugin-svelte-inspector@3.0.0-next.3(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7))': 2152 | dependencies: 2153 | '@sveltejs/vite-plugin-svelte': 4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 2154 | debug: 4.3.7 2155 | svelte: 5.0.5 2156 | vite: 5.4.9(@types/node@22.7.7) 2157 | transitivePeerDependencies: 2158 | - supports-color 2159 | 2160 | '@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7))': 2161 | dependencies: 2162 | '@sveltejs/vite-plugin-svelte-inspector': 3.0.0-next.3(@sveltejs/vite-plugin-svelte@4.0.0(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)))(svelte@5.0.5)(vite@5.4.9(@types/node@22.7.7)) 2163 | debug: 4.3.7 2164 | deepmerge: 4.3.1 2165 | kleur: 4.1.5 2166 | magic-string: 0.30.12 2167 | svelte: 5.0.5 2168 | vite: 5.4.9(@types/node@22.7.7) 2169 | vitefu: 1.0.3(vite@5.4.9(@types/node@22.7.7)) 2170 | transitivePeerDependencies: 2171 | - supports-color 2172 | 2173 | '@types/cookie@0.6.0': {} 2174 | 2175 | '@types/eslint@9.6.1': 2176 | dependencies: 2177 | '@types/estree': 1.0.6 2178 | '@types/json-schema': 7.0.15 2179 | 2180 | '@types/estree@1.0.6': {} 2181 | 2182 | '@types/json-schema@7.0.15': {} 2183 | 2184 | '@types/node@12.20.55': {} 2185 | 2186 | '@types/node@22.7.7': 2187 | dependencies: 2188 | undici-types: 6.19.8 2189 | 2190 | '@typescript-eslint/eslint-plugin@8.11.0(@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3)': 2191 | dependencies: 2192 | '@eslint-community/regexpp': 4.11.1 2193 | '@typescript-eslint/parser': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 2194 | '@typescript-eslint/scope-manager': 8.11.0 2195 | '@typescript-eslint/type-utils': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 2196 | '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 2197 | '@typescript-eslint/visitor-keys': 8.11.0 2198 | eslint: 9.13.0(jiti@1.21.6) 2199 | graphemer: 1.4.0 2200 | ignore: 5.3.2 2201 | natural-compare: 1.4.0 2202 | ts-api-utils: 1.3.0(typescript@5.6.3) 2203 | optionalDependencies: 2204 | typescript: 5.6.3 2205 | transitivePeerDependencies: 2206 | - supports-color 2207 | 2208 | '@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3)': 2209 | dependencies: 2210 | '@typescript-eslint/scope-manager': 8.11.0 2211 | '@typescript-eslint/types': 8.11.0 2212 | '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3) 2213 | '@typescript-eslint/visitor-keys': 8.11.0 2214 | debug: 4.3.7 2215 | eslint: 9.13.0(jiti@1.21.6) 2216 | optionalDependencies: 2217 | typescript: 5.6.3 2218 | transitivePeerDependencies: 2219 | - supports-color 2220 | 2221 | '@typescript-eslint/scope-manager@8.11.0': 2222 | dependencies: 2223 | '@typescript-eslint/types': 8.11.0 2224 | '@typescript-eslint/visitor-keys': 8.11.0 2225 | 2226 | '@typescript-eslint/type-utils@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3)': 2227 | dependencies: 2228 | '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3) 2229 | '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 2230 | debug: 4.3.7 2231 | ts-api-utils: 1.3.0(typescript@5.6.3) 2232 | optionalDependencies: 2233 | typescript: 5.6.3 2234 | transitivePeerDependencies: 2235 | - eslint 2236 | - supports-color 2237 | 2238 | '@typescript-eslint/types@8.11.0': {} 2239 | 2240 | '@typescript-eslint/typescript-estree@8.11.0(typescript@5.6.3)': 2241 | dependencies: 2242 | '@typescript-eslint/types': 8.11.0 2243 | '@typescript-eslint/visitor-keys': 8.11.0 2244 | debug: 4.3.7 2245 | fast-glob: 3.3.2 2246 | is-glob: 4.0.3 2247 | minimatch: 9.0.5 2248 | semver: 7.6.3 2249 | ts-api-utils: 1.3.0(typescript@5.6.3) 2250 | optionalDependencies: 2251 | typescript: 5.6.3 2252 | transitivePeerDependencies: 2253 | - supports-color 2254 | 2255 | '@typescript-eslint/utils@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3)': 2256 | dependencies: 2257 | '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@1.21.6)) 2258 | '@typescript-eslint/scope-manager': 8.11.0 2259 | '@typescript-eslint/types': 8.11.0 2260 | '@typescript-eslint/typescript-estree': 8.11.0(typescript@5.6.3) 2261 | eslint: 9.13.0(jiti@1.21.6) 2262 | transitivePeerDependencies: 2263 | - supports-color 2264 | - typescript 2265 | 2266 | '@typescript-eslint/visitor-keys@8.11.0': 2267 | dependencies: 2268 | '@typescript-eslint/types': 8.11.0 2269 | eslint-visitor-keys: 3.4.3 2270 | 2271 | '@vitest/expect@2.1.3': 2272 | dependencies: 2273 | '@vitest/spy': 2.1.3 2274 | '@vitest/utils': 2.1.3 2275 | chai: 5.1.1 2276 | tinyrainbow: 1.2.0 2277 | 2278 | '@vitest/mocker@2.1.3(@vitest/spy@2.1.3)(vite@5.4.9(@types/node@22.7.7))': 2279 | dependencies: 2280 | '@vitest/spy': 2.1.3 2281 | estree-walker: 3.0.3 2282 | magic-string: 0.30.12 2283 | optionalDependencies: 2284 | vite: 5.4.9(@types/node@22.7.7) 2285 | 2286 | '@vitest/pretty-format@2.1.3': 2287 | dependencies: 2288 | tinyrainbow: 1.2.0 2289 | 2290 | '@vitest/runner@2.1.3': 2291 | dependencies: 2292 | '@vitest/utils': 2.1.3 2293 | pathe: 1.1.2 2294 | 2295 | '@vitest/snapshot@2.1.3': 2296 | dependencies: 2297 | '@vitest/pretty-format': 2.1.3 2298 | magic-string: 0.30.12 2299 | pathe: 1.1.2 2300 | 2301 | '@vitest/spy@2.1.3': 2302 | dependencies: 2303 | tinyspy: 3.0.2 2304 | 2305 | '@vitest/utils@2.1.3': 2306 | dependencies: 2307 | '@vitest/pretty-format': 2.1.3 2308 | loupe: 3.1.2 2309 | tinyrainbow: 1.2.0 2310 | 2311 | acorn-jsx@5.3.2(acorn@8.12.1): 2312 | dependencies: 2313 | acorn: 8.12.1 2314 | 2315 | acorn-typescript@1.4.13(acorn@8.12.1): 2316 | dependencies: 2317 | acorn: 8.12.1 2318 | 2319 | acorn@8.12.1: {} 2320 | 2321 | agent-base@7.1.1: 2322 | dependencies: 2323 | debug: 4.3.7 2324 | transitivePeerDependencies: 2325 | - supports-color 2326 | 2327 | ajv@6.12.6: 2328 | dependencies: 2329 | fast-deep-equal: 3.1.3 2330 | fast-json-stable-stringify: 2.1.0 2331 | json-schema-traverse: 0.4.1 2332 | uri-js: 4.4.1 2333 | 2334 | ansi-colors@4.1.3: {} 2335 | 2336 | ansi-regex@5.0.1: {} 2337 | 2338 | ansi-styles@4.3.0: 2339 | dependencies: 2340 | color-convert: 2.0.1 2341 | 2342 | argparse@1.0.10: 2343 | dependencies: 2344 | sprintf-js: 1.0.3 2345 | 2346 | argparse@2.0.1: {} 2347 | 2348 | aria-query@5.3.2: {} 2349 | 2350 | array-union@2.1.0: {} 2351 | 2352 | assertion-error@2.0.1: {} 2353 | 2354 | asynckit@0.4.0: {} 2355 | 2356 | axobject-query@4.1.0: {} 2357 | 2358 | balanced-match@1.0.2: {} 2359 | 2360 | better-path-resolve@1.0.0: 2361 | dependencies: 2362 | is-windows: 1.0.2 2363 | 2364 | brace-expansion@1.1.11: 2365 | dependencies: 2366 | balanced-match: 1.0.2 2367 | concat-map: 0.0.1 2368 | 2369 | brace-expansion@2.0.1: 2370 | dependencies: 2371 | balanced-match: 1.0.2 2372 | 2373 | braces@3.0.3: 2374 | dependencies: 2375 | fill-range: 7.1.1 2376 | 2377 | cac@6.7.14: {} 2378 | 2379 | callsites@3.1.0: {} 2380 | 2381 | chai@5.1.1: 2382 | dependencies: 2383 | assertion-error: 2.0.1 2384 | check-error: 2.1.1 2385 | deep-eql: 5.0.2 2386 | loupe: 3.1.2 2387 | pathval: 2.0.0 2388 | 2389 | chalk@4.1.2: 2390 | dependencies: 2391 | ansi-styles: 4.3.0 2392 | supports-color: 7.2.0 2393 | 2394 | chardet@0.7.0: {} 2395 | 2396 | check-error@2.1.1: {} 2397 | 2398 | chokidar@4.0.1: 2399 | dependencies: 2400 | readdirp: 4.0.2 2401 | 2402 | ci-info@3.9.0: {} 2403 | 2404 | color-convert@2.0.1: 2405 | dependencies: 2406 | color-name: 1.1.4 2407 | 2408 | color-name@1.1.4: {} 2409 | 2410 | combined-stream@1.0.8: 2411 | dependencies: 2412 | delayed-stream: 1.0.0 2413 | 2414 | concat-map@0.0.1: {} 2415 | 2416 | cookie@0.6.0: {} 2417 | 2418 | cross-spawn@5.1.0: 2419 | dependencies: 2420 | lru-cache: 4.1.5 2421 | shebang-command: 1.2.0 2422 | which: 1.3.1 2423 | 2424 | cross-spawn@7.0.3: 2425 | dependencies: 2426 | path-key: 3.1.1 2427 | shebang-command: 2.0.0 2428 | which: 2.0.2 2429 | 2430 | cssesc@3.0.0: {} 2431 | 2432 | cssstyle@4.1.0: 2433 | dependencies: 2434 | rrweb-cssom: 0.7.1 2435 | 2436 | data-urls@5.0.0: 2437 | dependencies: 2438 | whatwg-mimetype: 4.0.0 2439 | whatwg-url: 14.0.0 2440 | 2441 | debug@4.3.7: 2442 | dependencies: 2443 | ms: 2.1.3 2444 | 2445 | decimal.js@10.4.3: {} 2446 | 2447 | dedent-js@1.0.1: {} 2448 | 2449 | deep-eql@5.0.2: {} 2450 | 2451 | deep-is@0.1.4: {} 2452 | 2453 | deepmerge@4.3.1: {} 2454 | 2455 | delayed-stream@1.0.0: {} 2456 | 2457 | detect-indent@6.1.0: {} 2458 | 2459 | devalue@5.1.1: {} 2460 | 2461 | dir-glob@3.0.1: 2462 | dependencies: 2463 | path-type: 4.0.0 2464 | 2465 | enquirer@2.4.1: 2466 | dependencies: 2467 | ansi-colors: 4.1.3 2468 | strip-ansi: 6.0.1 2469 | 2470 | entities@4.5.0: {} 2471 | 2472 | esbuild@0.21.5: 2473 | optionalDependencies: 2474 | '@esbuild/aix-ppc64': 0.21.5 2475 | '@esbuild/android-arm': 0.21.5 2476 | '@esbuild/android-arm64': 0.21.5 2477 | '@esbuild/android-x64': 0.21.5 2478 | '@esbuild/darwin-arm64': 0.21.5 2479 | '@esbuild/darwin-x64': 0.21.5 2480 | '@esbuild/freebsd-arm64': 0.21.5 2481 | '@esbuild/freebsd-x64': 0.21.5 2482 | '@esbuild/linux-arm': 0.21.5 2483 | '@esbuild/linux-arm64': 0.21.5 2484 | '@esbuild/linux-ia32': 0.21.5 2485 | '@esbuild/linux-loong64': 0.21.5 2486 | '@esbuild/linux-mips64el': 0.21.5 2487 | '@esbuild/linux-ppc64': 0.21.5 2488 | '@esbuild/linux-riscv64': 0.21.5 2489 | '@esbuild/linux-s390x': 0.21.5 2490 | '@esbuild/linux-x64': 0.21.5 2491 | '@esbuild/netbsd-x64': 0.21.5 2492 | '@esbuild/openbsd-x64': 0.21.5 2493 | '@esbuild/sunos-x64': 0.21.5 2494 | '@esbuild/win32-arm64': 0.21.5 2495 | '@esbuild/win32-ia32': 0.21.5 2496 | '@esbuild/win32-x64': 0.21.5 2497 | 2498 | escape-string-regexp@4.0.0: {} 2499 | 2500 | eslint-compat-utils@0.5.1(eslint@9.13.0(jiti@1.21.6)): 2501 | dependencies: 2502 | eslint: 9.13.0(jiti@1.21.6) 2503 | semver: 7.6.3 2504 | 2505 | eslint-config-prettier@9.1.0(eslint@9.13.0(jiti@1.21.6)): 2506 | dependencies: 2507 | eslint: 9.13.0(jiti@1.21.6) 2508 | 2509 | eslint-plugin-svelte@2.46.0(eslint@9.13.0(jiti@1.21.6))(svelte@5.0.5): 2510 | dependencies: 2511 | '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@1.21.6)) 2512 | '@jridgewell/sourcemap-codec': 1.5.0 2513 | eslint: 9.13.0(jiti@1.21.6) 2514 | eslint-compat-utils: 0.5.1(eslint@9.13.0(jiti@1.21.6)) 2515 | esutils: 2.0.3 2516 | known-css-properties: 0.35.0 2517 | postcss: 8.4.47 2518 | postcss-load-config: 3.1.4(postcss@8.4.47) 2519 | postcss-safe-parser: 6.0.0(postcss@8.4.47) 2520 | postcss-selector-parser: 6.1.2 2521 | semver: 7.6.3 2522 | svelte-eslint-parser: 0.43.0(svelte@5.0.5) 2523 | optionalDependencies: 2524 | svelte: 5.0.5 2525 | transitivePeerDependencies: 2526 | - ts-node 2527 | 2528 | eslint-scope@7.2.2: 2529 | dependencies: 2530 | esrecurse: 4.3.0 2531 | estraverse: 5.3.0 2532 | 2533 | eslint-scope@8.1.0: 2534 | dependencies: 2535 | esrecurse: 4.3.0 2536 | estraverse: 5.3.0 2537 | 2538 | eslint-visitor-keys@3.4.3: {} 2539 | 2540 | eslint-visitor-keys@4.1.0: {} 2541 | 2542 | eslint@9.13.0(jiti@1.21.6): 2543 | dependencies: 2544 | '@eslint-community/eslint-utils': 4.4.0(eslint@9.13.0(jiti@1.21.6)) 2545 | '@eslint-community/regexpp': 4.11.1 2546 | '@eslint/config-array': 0.18.0 2547 | '@eslint/core': 0.7.0 2548 | '@eslint/eslintrc': 3.1.0 2549 | '@eslint/js': 9.13.0 2550 | '@eslint/plugin-kit': 0.2.0 2551 | '@humanfs/node': 0.16.5 2552 | '@humanwhocodes/module-importer': 1.0.1 2553 | '@humanwhocodes/retry': 0.3.1 2554 | '@types/estree': 1.0.6 2555 | '@types/json-schema': 7.0.15 2556 | ajv: 6.12.6 2557 | chalk: 4.1.2 2558 | cross-spawn: 7.0.3 2559 | debug: 4.3.7 2560 | escape-string-regexp: 4.0.0 2561 | eslint-scope: 8.1.0 2562 | eslint-visitor-keys: 4.1.0 2563 | espree: 10.2.0 2564 | esquery: 1.6.0 2565 | esutils: 2.0.3 2566 | fast-deep-equal: 3.1.3 2567 | file-entry-cache: 8.0.0 2568 | find-up: 5.0.0 2569 | glob-parent: 6.0.2 2570 | ignore: 5.3.2 2571 | imurmurhash: 0.1.4 2572 | is-glob: 4.0.3 2573 | json-stable-stringify-without-jsonify: 1.0.1 2574 | lodash.merge: 4.6.2 2575 | minimatch: 3.1.2 2576 | natural-compare: 1.4.0 2577 | optionator: 0.9.4 2578 | text-table: 0.2.0 2579 | optionalDependencies: 2580 | jiti: 1.21.6 2581 | transitivePeerDependencies: 2582 | - supports-color 2583 | 2584 | esm-env@1.0.0: {} 2585 | 2586 | espree@10.2.0: 2587 | dependencies: 2588 | acorn: 8.12.1 2589 | acorn-jsx: 5.3.2(acorn@8.12.1) 2590 | eslint-visitor-keys: 4.1.0 2591 | 2592 | espree@9.6.1: 2593 | dependencies: 2594 | acorn: 8.12.1 2595 | acorn-jsx: 5.3.2(acorn@8.12.1) 2596 | eslint-visitor-keys: 3.4.3 2597 | 2598 | esprima@4.0.1: {} 2599 | 2600 | esquery@1.6.0: 2601 | dependencies: 2602 | estraverse: 5.3.0 2603 | 2604 | esrap@1.2.2: 2605 | dependencies: 2606 | '@jridgewell/sourcemap-codec': 1.5.0 2607 | '@types/estree': 1.0.6 2608 | 2609 | esrecurse@4.3.0: 2610 | dependencies: 2611 | estraverse: 5.3.0 2612 | 2613 | estraverse@5.3.0: {} 2614 | 2615 | estree-walker@3.0.3: 2616 | dependencies: 2617 | '@types/estree': 1.0.6 2618 | 2619 | esutils@2.0.3: {} 2620 | 2621 | extendable-error@0.1.7: {} 2622 | 2623 | external-editor@3.1.0: 2624 | dependencies: 2625 | chardet: 0.7.0 2626 | iconv-lite: 0.4.24 2627 | tmp: 0.0.33 2628 | 2629 | fast-deep-equal@3.1.3: {} 2630 | 2631 | fast-glob@3.3.2: 2632 | dependencies: 2633 | '@nodelib/fs.stat': 2.0.5 2634 | '@nodelib/fs.walk': 1.2.8 2635 | glob-parent: 5.1.2 2636 | merge2: 1.4.1 2637 | micromatch: 4.0.8 2638 | 2639 | fast-json-stable-stringify@2.1.0: {} 2640 | 2641 | fast-levenshtein@2.0.6: {} 2642 | 2643 | fastq@1.17.1: 2644 | dependencies: 2645 | reusify: 1.0.4 2646 | 2647 | fdir@6.4.0: {} 2648 | 2649 | file-entry-cache@8.0.0: 2650 | dependencies: 2651 | flat-cache: 4.0.1 2652 | 2653 | fill-range@7.1.1: 2654 | dependencies: 2655 | to-regex-range: 5.0.1 2656 | 2657 | find-up@4.1.0: 2658 | dependencies: 2659 | locate-path: 5.0.0 2660 | path-exists: 4.0.0 2661 | 2662 | find-up@5.0.0: 2663 | dependencies: 2664 | locate-path: 6.0.0 2665 | path-exists: 4.0.0 2666 | 2667 | flat-cache@4.0.1: 2668 | dependencies: 2669 | flatted: 3.3.1 2670 | keyv: 4.5.4 2671 | 2672 | flatted@3.3.1: {} 2673 | 2674 | form-data@4.0.1: 2675 | dependencies: 2676 | asynckit: 0.4.0 2677 | combined-stream: 1.0.8 2678 | mime-types: 2.1.35 2679 | 2680 | fs-extra@7.0.1: 2681 | dependencies: 2682 | graceful-fs: 4.2.11 2683 | jsonfile: 4.0.0 2684 | universalify: 0.1.2 2685 | 2686 | fs-extra@8.1.0: 2687 | dependencies: 2688 | graceful-fs: 4.2.11 2689 | jsonfile: 4.0.0 2690 | universalify: 0.1.2 2691 | 2692 | fs.realpath@1.0.0: {} 2693 | 2694 | fsevents@2.3.3: 2695 | optional: true 2696 | 2697 | glob-parent@5.1.2: 2698 | dependencies: 2699 | is-glob: 4.0.3 2700 | 2701 | glob-parent@6.0.2: 2702 | dependencies: 2703 | is-glob: 4.0.3 2704 | 2705 | glob@8.1.0: 2706 | dependencies: 2707 | fs.realpath: 1.0.0 2708 | inflight: 1.0.6 2709 | inherits: 2.0.4 2710 | minimatch: 5.1.6 2711 | once: 1.4.0 2712 | 2713 | globals@14.0.0: {} 2714 | 2715 | globals@15.11.0: {} 2716 | 2717 | globalyzer@0.1.0: {} 2718 | 2719 | globby@11.1.0: 2720 | dependencies: 2721 | array-union: 2.1.0 2722 | dir-glob: 3.0.1 2723 | fast-glob: 3.3.2 2724 | ignore: 5.3.2 2725 | merge2: 1.4.1 2726 | slash: 3.0.0 2727 | 2728 | globrex@0.1.2: {} 2729 | 2730 | graceful-fs@4.2.11: {} 2731 | 2732 | graphemer@1.4.0: {} 2733 | 2734 | has-flag@4.0.0: {} 2735 | 2736 | html-encoding-sniffer@4.0.0: 2737 | dependencies: 2738 | whatwg-encoding: 3.1.1 2739 | 2740 | http-proxy-agent@7.0.2: 2741 | dependencies: 2742 | agent-base: 7.1.1 2743 | debug: 4.3.7 2744 | transitivePeerDependencies: 2745 | - supports-color 2746 | 2747 | https-proxy-agent@7.0.5: 2748 | dependencies: 2749 | agent-base: 7.1.1 2750 | debug: 4.3.7 2751 | transitivePeerDependencies: 2752 | - supports-color 2753 | 2754 | human-id@1.0.2: {} 2755 | 2756 | iconv-lite@0.4.24: 2757 | dependencies: 2758 | safer-buffer: 2.1.2 2759 | 2760 | iconv-lite@0.6.3: 2761 | dependencies: 2762 | safer-buffer: 2.1.2 2763 | 2764 | ignore-walk@5.0.1: 2765 | dependencies: 2766 | minimatch: 5.1.6 2767 | 2768 | ignore@5.3.2: {} 2769 | 2770 | import-fresh@3.3.0: 2771 | dependencies: 2772 | parent-module: 1.0.1 2773 | resolve-from: 4.0.0 2774 | 2775 | import-meta-resolve@4.1.0: {} 2776 | 2777 | imurmurhash@0.1.4: {} 2778 | 2779 | inflight@1.0.6: 2780 | dependencies: 2781 | once: 1.4.0 2782 | wrappy: 1.0.2 2783 | 2784 | inherits@2.0.4: {} 2785 | 2786 | is-extglob@2.1.1: {} 2787 | 2788 | is-glob@4.0.3: 2789 | dependencies: 2790 | is-extglob: 2.1.1 2791 | 2792 | is-number@7.0.0: {} 2793 | 2794 | is-potential-custom-element-name@1.0.1: {} 2795 | 2796 | is-reference@3.0.2: 2797 | dependencies: 2798 | '@types/estree': 1.0.6 2799 | 2800 | is-subdir@1.2.0: 2801 | dependencies: 2802 | better-path-resolve: 1.0.0 2803 | 2804 | is-windows@1.0.2: {} 2805 | 2806 | isexe@2.0.0: {} 2807 | 2808 | jiti@1.21.6: 2809 | optional: true 2810 | 2811 | js-yaml@3.14.1: 2812 | dependencies: 2813 | argparse: 1.0.10 2814 | esprima: 4.0.1 2815 | 2816 | js-yaml@4.1.0: 2817 | dependencies: 2818 | argparse: 2.0.1 2819 | 2820 | jsdom@25.0.1: 2821 | dependencies: 2822 | cssstyle: 4.1.0 2823 | data-urls: 5.0.0 2824 | decimal.js: 10.4.3 2825 | form-data: 4.0.1 2826 | html-encoding-sniffer: 4.0.0 2827 | http-proxy-agent: 7.0.2 2828 | https-proxy-agent: 7.0.5 2829 | is-potential-custom-element-name: 1.0.1 2830 | nwsapi: 2.2.13 2831 | parse5: 7.2.0 2832 | rrweb-cssom: 0.7.1 2833 | saxes: 6.0.0 2834 | symbol-tree: 3.2.4 2835 | tough-cookie: 5.0.0 2836 | w3c-xmlserializer: 5.0.0 2837 | webidl-conversions: 7.0.0 2838 | whatwg-encoding: 3.1.1 2839 | whatwg-mimetype: 4.0.0 2840 | whatwg-url: 14.0.0 2841 | ws: 8.18.0 2842 | xml-name-validator: 5.0.0 2843 | transitivePeerDependencies: 2844 | - bufferutil 2845 | - supports-color 2846 | - utf-8-validate 2847 | 2848 | json-buffer@3.0.1: {} 2849 | 2850 | json-schema-traverse@0.4.1: {} 2851 | 2852 | json-stable-stringify-without-jsonify@1.0.1: {} 2853 | 2854 | jsonfile@4.0.0: 2855 | optionalDependencies: 2856 | graceful-fs: 4.2.11 2857 | 2858 | keyv@4.5.4: 2859 | dependencies: 2860 | json-buffer: 3.0.1 2861 | 2862 | kleur@4.1.5: {} 2863 | 2864 | known-css-properties@0.35.0: {} 2865 | 2866 | levn@0.4.1: 2867 | dependencies: 2868 | prelude-ls: 1.2.1 2869 | type-check: 0.4.0 2870 | 2871 | lilconfig@2.1.0: {} 2872 | 2873 | locate-character@3.0.0: {} 2874 | 2875 | locate-path@5.0.0: 2876 | dependencies: 2877 | p-locate: 4.1.0 2878 | 2879 | locate-path@6.0.0: 2880 | dependencies: 2881 | p-locate: 5.0.0 2882 | 2883 | lodash.merge@4.6.2: {} 2884 | 2885 | lodash.startcase@4.4.0: {} 2886 | 2887 | loupe@3.1.2: {} 2888 | 2889 | lower-case@2.0.2: 2890 | dependencies: 2891 | tslib: 2.7.0 2892 | 2893 | lru-cache@4.1.5: 2894 | dependencies: 2895 | pseudomap: 1.0.2 2896 | yallist: 2.1.2 2897 | 2898 | magic-string@0.30.12: 2899 | dependencies: 2900 | '@jridgewell/sourcemap-codec': 1.5.0 2901 | 2902 | merge2@1.4.1: {} 2903 | 2904 | micromatch@4.0.8: 2905 | dependencies: 2906 | braces: 3.0.3 2907 | picomatch: 2.3.1 2908 | 2909 | mime-db@1.52.0: {} 2910 | 2911 | mime-types@2.1.35: 2912 | dependencies: 2913 | mime-db: 1.52.0 2914 | 2915 | minimatch@3.1.2: 2916 | dependencies: 2917 | brace-expansion: 1.1.11 2918 | 2919 | minimatch@5.1.6: 2920 | dependencies: 2921 | brace-expansion: 2.0.1 2922 | 2923 | minimatch@9.0.5: 2924 | dependencies: 2925 | brace-expansion: 2.0.1 2926 | 2927 | mri@1.2.0: {} 2928 | 2929 | mrmime@2.0.0: {} 2930 | 2931 | ms@2.1.3: {} 2932 | 2933 | nanoid@3.3.7: {} 2934 | 2935 | natural-compare@1.4.0: {} 2936 | 2937 | no-case@3.0.4: 2938 | dependencies: 2939 | lower-case: 2.0.2 2940 | tslib: 2.7.0 2941 | 2942 | npm-bundled@2.0.1: 2943 | dependencies: 2944 | npm-normalize-package-bin: 2.0.0 2945 | 2946 | npm-normalize-package-bin@2.0.0: {} 2947 | 2948 | npm-packlist@5.1.3: 2949 | dependencies: 2950 | glob: 8.1.0 2951 | ignore-walk: 5.0.1 2952 | npm-bundled: 2.0.1 2953 | npm-normalize-package-bin: 2.0.0 2954 | 2955 | nwsapi@2.2.13: {} 2956 | 2957 | once@1.4.0: 2958 | dependencies: 2959 | wrappy: 1.0.2 2960 | 2961 | optionator@0.9.4: 2962 | dependencies: 2963 | deep-is: 0.1.4 2964 | fast-levenshtein: 2.0.6 2965 | levn: 0.4.1 2966 | prelude-ls: 1.2.1 2967 | type-check: 0.4.0 2968 | word-wrap: 1.2.5 2969 | 2970 | os-tmpdir@1.0.2: {} 2971 | 2972 | outdent@0.5.0: {} 2973 | 2974 | p-filter@2.1.0: 2975 | dependencies: 2976 | p-map: 2.1.0 2977 | 2978 | p-limit@2.3.0: 2979 | dependencies: 2980 | p-try: 2.2.0 2981 | 2982 | p-limit@3.1.0: 2983 | dependencies: 2984 | yocto-queue: 0.1.0 2985 | 2986 | p-locate@4.1.0: 2987 | dependencies: 2988 | p-limit: 2.3.0 2989 | 2990 | p-locate@5.0.0: 2991 | dependencies: 2992 | p-limit: 3.1.0 2993 | 2994 | p-map@2.1.0: {} 2995 | 2996 | p-try@2.2.0: {} 2997 | 2998 | package-manager-detector@0.2.2: {} 2999 | 3000 | parent-module@1.0.1: 3001 | dependencies: 3002 | callsites: 3.1.0 3003 | 3004 | parse5@7.2.0: 3005 | dependencies: 3006 | entities: 4.5.0 3007 | 3008 | pascal-case@3.1.2: 3009 | dependencies: 3010 | no-case: 3.0.4 3011 | tslib: 2.7.0 3012 | 3013 | path-exists@4.0.0: {} 3014 | 3015 | path-key@3.1.1: {} 3016 | 3017 | path-type@4.0.0: {} 3018 | 3019 | pathe@1.1.2: {} 3020 | 3021 | pathval@2.0.0: {} 3022 | 3023 | picocolors@1.1.0: {} 3024 | 3025 | picomatch@2.3.1: {} 3026 | 3027 | pify@4.0.1: {} 3028 | 3029 | postcss-load-config@3.1.4(postcss@8.4.47): 3030 | dependencies: 3031 | lilconfig: 2.1.0 3032 | yaml: 1.10.2 3033 | optionalDependencies: 3034 | postcss: 8.4.47 3035 | 3036 | postcss-safe-parser@6.0.0(postcss@8.4.47): 3037 | dependencies: 3038 | postcss: 8.4.47 3039 | 3040 | postcss-scss@4.0.9(postcss@8.4.47): 3041 | dependencies: 3042 | postcss: 8.4.47 3043 | 3044 | postcss-selector-parser@6.1.2: 3045 | dependencies: 3046 | cssesc: 3.0.0 3047 | util-deprecate: 1.0.2 3048 | 3049 | postcss@8.4.47: 3050 | dependencies: 3051 | nanoid: 3.3.7 3052 | picocolors: 1.1.0 3053 | source-map-js: 1.2.1 3054 | 3055 | prelude-ls@1.2.1: {} 3056 | 3057 | prettier-plugin-svelte@3.2.7(prettier@3.3.3)(svelte@5.0.5): 3058 | dependencies: 3059 | prettier: 3.3.3 3060 | svelte: 5.0.5 3061 | 3062 | prettier@2.8.8: {} 3063 | 3064 | prettier@3.3.3: {} 3065 | 3066 | pseudomap@1.0.2: {} 3067 | 3068 | publint@0.2.11: 3069 | dependencies: 3070 | npm-packlist: 5.1.3 3071 | picocolors: 1.1.0 3072 | sade: 1.8.1 3073 | 3074 | punycode@2.3.1: {} 3075 | 3076 | queue-microtask@1.2.3: {} 3077 | 3078 | read-yaml-file@1.1.0: 3079 | dependencies: 3080 | graceful-fs: 4.2.11 3081 | js-yaml: 3.14.1 3082 | pify: 4.0.1 3083 | strip-bom: 3.0.0 3084 | 3085 | readdirp@4.0.2: {} 3086 | 3087 | regenerator-runtime@0.14.1: {} 3088 | 3089 | resolve-from@4.0.0: {} 3090 | 3091 | resolve-from@5.0.0: {} 3092 | 3093 | reusify@1.0.4: {} 3094 | 3095 | rollup@4.24.0: 3096 | dependencies: 3097 | '@types/estree': 1.0.6 3098 | optionalDependencies: 3099 | '@rollup/rollup-android-arm-eabi': 4.24.0 3100 | '@rollup/rollup-android-arm64': 4.24.0 3101 | '@rollup/rollup-darwin-arm64': 4.24.0 3102 | '@rollup/rollup-darwin-x64': 4.24.0 3103 | '@rollup/rollup-linux-arm-gnueabihf': 4.24.0 3104 | '@rollup/rollup-linux-arm-musleabihf': 4.24.0 3105 | '@rollup/rollup-linux-arm64-gnu': 4.24.0 3106 | '@rollup/rollup-linux-arm64-musl': 4.24.0 3107 | '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0 3108 | '@rollup/rollup-linux-riscv64-gnu': 4.24.0 3109 | '@rollup/rollup-linux-s390x-gnu': 4.24.0 3110 | '@rollup/rollup-linux-x64-gnu': 4.24.0 3111 | '@rollup/rollup-linux-x64-musl': 4.24.0 3112 | '@rollup/rollup-win32-arm64-msvc': 4.24.0 3113 | '@rollup/rollup-win32-ia32-msvc': 4.24.0 3114 | '@rollup/rollup-win32-x64-msvc': 4.24.0 3115 | fsevents: 2.3.3 3116 | 3117 | rrweb-cssom@0.7.1: {} 3118 | 3119 | run-parallel@1.2.0: 3120 | dependencies: 3121 | queue-microtask: 1.2.3 3122 | 3123 | sade@1.8.1: 3124 | dependencies: 3125 | mri: 1.2.0 3126 | 3127 | safer-buffer@2.1.2: {} 3128 | 3129 | saxes@6.0.0: 3130 | dependencies: 3131 | xmlchars: 2.2.0 3132 | 3133 | semver@7.6.3: {} 3134 | 3135 | set-cookie-parser@2.7.0: {} 3136 | 3137 | shebang-command@1.2.0: 3138 | dependencies: 3139 | shebang-regex: 1.0.0 3140 | 3141 | shebang-command@2.0.0: 3142 | dependencies: 3143 | shebang-regex: 3.0.0 3144 | 3145 | shebang-regex@1.0.0: {} 3146 | 3147 | shebang-regex@3.0.0: {} 3148 | 3149 | siginfo@2.0.0: {} 3150 | 3151 | signal-exit@3.0.7: {} 3152 | 3153 | sirv@3.0.0: 3154 | dependencies: 3155 | '@polka/url': 1.0.0-next.28 3156 | mrmime: 2.0.0 3157 | totalist: 3.0.1 3158 | 3159 | slash@3.0.0: {} 3160 | 3161 | source-map-js@1.2.1: {} 3162 | 3163 | spawndamnit@2.0.0: 3164 | dependencies: 3165 | cross-spawn: 5.1.0 3166 | signal-exit: 3.0.7 3167 | 3168 | sprintf-js@1.0.3: {} 3169 | 3170 | stackback@0.0.2: {} 3171 | 3172 | std-env@3.7.0: {} 3173 | 3174 | strip-ansi@6.0.1: 3175 | dependencies: 3176 | ansi-regex: 5.0.1 3177 | 3178 | strip-bom@3.0.0: {} 3179 | 3180 | strip-json-comments@3.1.1: {} 3181 | 3182 | supports-color@7.2.0: 3183 | dependencies: 3184 | has-flag: 4.0.0 3185 | 3186 | svelte-check@4.0.5(svelte@5.0.5)(typescript@5.6.3): 3187 | dependencies: 3188 | '@jridgewell/trace-mapping': 0.3.25 3189 | chokidar: 4.0.1 3190 | fdir: 6.4.0 3191 | picocolors: 1.1.0 3192 | sade: 1.8.1 3193 | svelte: 5.0.5 3194 | typescript: 5.6.3 3195 | transitivePeerDependencies: 3196 | - picomatch 3197 | 3198 | svelte-eslint-parser@0.43.0(svelte@5.0.5): 3199 | dependencies: 3200 | eslint-scope: 7.2.2 3201 | eslint-visitor-keys: 3.4.3 3202 | espree: 9.6.1 3203 | postcss: 8.4.47 3204 | postcss-scss: 4.0.9(postcss@8.4.47) 3205 | optionalDependencies: 3206 | svelte: 5.0.5 3207 | 3208 | svelte2tsx@0.7.21(svelte@5.0.5)(typescript@5.6.3): 3209 | dependencies: 3210 | dedent-js: 1.0.1 3211 | pascal-case: 3.1.2 3212 | svelte: 5.0.5 3213 | typescript: 5.6.3 3214 | 3215 | svelte@5.0.5: 3216 | dependencies: 3217 | '@ampproject/remapping': 2.3.0 3218 | '@jridgewell/sourcemap-codec': 1.5.0 3219 | '@types/estree': 1.0.6 3220 | acorn: 8.12.1 3221 | acorn-typescript: 1.4.13(acorn@8.12.1) 3222 | aria-query: 5.3.2 3223 | axobject-query: 4.1.0 3224 | esm-env: 1.0.0 3225 | esrap: 1.2.2 3226 | is-reference: 3.0.2 3227 | locate-character: 3.0.0 3228 | magic-string: 0.30.12 3229 | zimmerframe: 1.1.2 3230 | 3231 | symbol-tree@3.2.4: {} 3232 | 3233 | term-size@2.2.1: {} 3234 | 3235 | text-table@0.2.0: {} 3236 | 3237 | tiny-glob@0.2.9: 3238 | dependencies: 3239 | globalyzer: 0.1.0 3240 | globrex: 0.1.2 3241 | 3242 | tinybench@2.9.0: {} 3243 | 3244 | tinyexec@0.3.0: {} 3245 | 3246 | tinypool@1.0.1: {} 3247 | 3248 | tinyrainbow@1.2.0: {} 3249 | 3250 | tinyspy@3.0.2: {} 3251 | 3252 | tldts-core@6.1.51: {} 3253 | 3254 | tldts@6.1.51: 3255 | dependencies: 3256 | tldts-core: 6.1.51 3257 | 3258 | tmp@0.0.33: 3259 | dependencies: 3260 | os-tmpdir: 1.0.2 3261 | 3262 | to-regex-range@5.0.1: 3263 | dependencies: 3264 | is-number: 7.0.0 3265 | 3266 | totalist@3.0.1: {} 3267 | 3268 | tough-cookie@5.0.0: 3269 | dependencies: 3270 | tldts: 6.1.51 3271 | 3272 | tr46@5.0.0: 3273 | dependencies: 3274 | punycode: 2.3.1 3275 | 3276 | ts-api-utils@1.3.0(typescript@5.6.3): 3277 | dependencies: 3278 | typescript: 5.6.3 3279 | 3280 | tslib@2.7.0: {} 3281 | 3282 | type-check@0.4.0: 3283 | dependencies: 3284 | prelude-ls: 1.2.1 3285 | 3286 | typescript-eslint@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3): 3287 | dependencies: 3288 | '@typescript-eslint/eslint-plugin': 8.11.0(@typescript-eslint/parser@8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 3289 | '@typescript-eslint/parser': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 3290 | '@typescript-eslint/utils': 8.11.0(eslint@9.13.0(jiti@1.21.6))(typescript@5.6.3) 3291 | optionalDependencies: 3292 | typescript: 5.6.3 3293 | transitivePeerDependencies: 3294 | - eslint 3295 | - supports-color 3296 | 3297 | typescript@5.6.3: {} 3298 | 3299 | undici-types@6.19.8: {} 3300 | 3301 | universalify@0.1.2: {} 3302 | 3303 | uri-js@4.4.1: 3304 | dependencies: 3305 | punycode: 2.3.1 3306 | 3307 | util-deprecate@1.0.2: {} 3308 | 3309 | vite-node@2.1.3(@types/node@22.7.7): 3310 | dependencies: 3311 | cac: 6.7.14 3312 | debug: 4.3.7 3313 | pathe: 1.1.2 3314 | vite: 5.4.9(@types/node@22.7.7) 3315 | transitivePeerDependencies: 3316 | - '@types/node' 3317 | - less 3318 | - lightningcss 3319 | - sass 3320 | - sass-embedded 3321 | - stylus 3322 | - sugarss 3323 | - supports-color 3324 | - terser 3325 | 3326 | vite@5.4.9(@types/node@22.7.7): 3327 | dependencies: 3328 | esbuild: 0.21.5 3329 | postcss: 8.4.47 3330 | rollup: 4.24.0 3331 | optionalDependencies: 3332 | '@types/node': 22.7.7 3333 | fsevents: 2.3.3 3334 | 3335 | vitefu@1.0.3(vite@5.4.9(@types/node@22.7.7)): 3336 | optionalDependencies: 3337 | vite: 5.4.9(@types/node@22.7.7) 3338 | 3339 | vitest@2.1.3(@types/node@22.7.7)(jsdom@25.0.1): 3340 | dependencies: 3341 | '@vitest/expect': 2.1.3 3342 | '@vitest/mocker': 2.1.3(@vitest/spy@2.1.3)(vite@5.4.9(@types/node@22.7.7)) 3343 | '@vitest/pretty-format': 2.1.3 3344 | '@vitest/runner': 2.1.3 3345 | '@vitest/snapshot': 2.1.3 3346 | '@vitest/spy': 2.1.3 3347 | '@vitest/utils': 2.1.3 3348 | chai: 5.1.1 3349 | debug: 4.3.7 3350 | magic-string: 0.30.12 3351 | pathe: 1.1.2 3352 | std-env: 3.7.0 3353 | tinybench: 2.9.0 3354 | tinyexec: 0.3.0 3355 | tinypool: 1.0.1 3356 | tinyrainbow: 1.2.0 3357 | vite: 5.4.9(@types/node@22.7.7) 3358 | vite-node: 2.1.3(@types/node@22.7.7) 3359 | why-is-node-running: 2.3.0 3360 | optionalDependencies: 3361 | '@types/node': 22.7.7 3362 | jsdom: 25.0.1 3363 | transitivePeerDependencies: 3364 | - less 3365 | - lightningcss 3366 | - msw 3367 | - sass 3368 | - sass-embedded 3369 | - stylus 3370 | - sugarss 3371 | - supports-color 3372 | - terser 3373 | 3374 | w3c-xmlserializer@5.0.0: 3375 | dependencies: 3376 | xml-name-validator: 5.0.0 3377 | 3378 | webidl-conversions@7.0.0: {} 3379 | 3380 | whatwg-encoding@3.1.1: 3381 | dependencies: 3382 | iconv-lite: 0.6.3 3383 | 3384 | whatwg-mimetype@4.0.0: {} 3385 | 3386 | whatwg-url@14.0.0: 3387 | dependencies: 3388 | tr46: 5.0.0 3389 | webidl-conversions: 7.0.0 3390 | 3391 | which@1.3.1: 3392 | dependencies: 3393 | isexe: 2.0.0 3394 | 3395 | which@2.0.2: 3396 | dependencies: 3397 | isexe: 2.0.0 3398 | 3399 | why-is-node-running@2.3.0: 3400 | dependencies: 3401 | siginfo: 2.0.0 3402 | stackback: 0.0.2 3403 | 3404 | word-wrap@1.2.5: {} 3405 | 3406 | wrappy@1.0.2: {} 3407 | 3408 | ws@8.18.0: {} 3409 | 3410 | xml-name-validator@5.0.0: {} 3411 | 3412 | xmlchars@2.2.0: {} 3413 | 3414 | yallist@2.1.2: {} 3415 | 3416 | yaml@1.10.2: {} 3417 | 3418 | yocto-queue@0.1.0: {} 3419 | 3420 | zimmerframe@1.1.2: {} 3421 | -------------------------------------------------------------------------------- /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 PageState {} 9 | // interface Platform {} 10 | } 11 | } 12 | 13 | export {}; 14 | -------------------------------------------------------------------------------- /src/app.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | %sveltekit.head% 8 | 9 | 10 |
%sveltekit.body%
11 |
12 |
13 | 14 | 15 | -------------------------------------------------------------------------------- /src/components/Count.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /src/lib/Portal.svelte: -------------------------------------------------------------------------------- 1 | 60 | 61 | {#if disabled} 62 | {@render children()} 63 | {/if} 64 | -------------------------------------------------------------------------------- /src/lib/Wormhole.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 | {@render children?.()} 8 | -------------------------------------------------------------------------------- /src/lib/index.ts: -------------------------------------------------------------------------------- 1 | export { default as Portal } from './Portal.svelte'; 2 | -------------------------------------------------------------------------------- /src/routes/+page.svelte: -------------------------------------------------------------------------------- 1 | 17 | 18 | 19 | 20 | {#if target} 21 | 22 | 23 | 24 | {/if} 25 | 26 | 27 | {#if open} 28 | 32 | {/if} 33 | 34 | 35 | 45 | -------------------------------------------------------------------------------- /static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/wobsoriano/svelte-portal/75cb145cc74231b8265535575937f12ffaa8db35/static/favicon.png -------------------------------------------------------------------------------- /svelte.config.js: -------------------------------------------------------------------------------- 1 | import adapter from '@sveltejs/adapter-auto'; 2 | import { vitePreprocess } from '@sveltejs/vite-plugin-svelte'; 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-auto only supports some environments, see https://kit.svelte.dev/docs/adapter-auto for a list. 12 | // If your environment is not supported, or you settled on a specific environment, switch out the adapter. 13 | // See https://kit.svelte.dev/docs/adapters for more information about adapters. 14 | adapter: adapter() 15 | } 16 | }; 17 | 18 | export default config; 19 | -------------------------------------------------------------------------------- /tests/Portal.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, it, beforeEach, expect, afterEach } from 'vitest'; 2 | import TestPortalSelector from './TestPortalSelector.svelte'; 3 | import TestPortalElement from './TestPortalElement.svelte'; 4 | import TestPortalDynamic from './TestPortalDynamic.svelte'; 5 | import { mount, flushSync, unmount } from 'svelte'; 6 | 7 | type Mount = ReturnType; 8 | 9 | describe('', () => { 10 | let target: HTMLDivElement; 11 | let app: Mount; 12 | 13 | beforeEach(() => { 14 | target = document.createElement('div'); 15 | target.id = 'target'; 16 | document.body.appendChild(target); 17 | }); 18 | 19 | afterEach(() => { 20 | document.body.removeChild(target); 21 | unmount(app); 22 | }); 23 | 24 | it('should be rendered in a specific HTML element using selector', () => { 25 | app = mount(TestPortalSelector, { target }); 26 | 27 | flushSync(); 28 | 29 | const renderedInTargetSelector = target.querySelector('#renderedInTargetSelector'); 30 | 31 | expect(renderedInTargetSelector).not.toBe(null); 32 | }); 33 | 34 | it('should be rendered in a specific HTML element using actual node', () => { 35 | app = mount(TestPortalElement, { target }); 36 | 37 | flushSync(); 38 | 39 | const renderedInTargetElement = target.querySelector('#renderedInTargetElement'); 40 | 41 | expect(renderedInTargetElement).not.toBe(null); 42 | }); 43 | 44 | it('should be rendered in a dynamic target', async () => { 45 | app = mount(TestPortalDynamic, { target: document.body }); 46 | 47 | flushSync(); 48 | 49 | let renderedInTargetElement = target.querySelector('#renderedInTargetElement'); 50 | 51 | expect(renderedInTargetElement).toBe(null); 52 | 53 | document.body.querySelector('button')?.click(); 54 | 55 | flushSync(); 56 | 57 | renderedInTargetElement = target.querySelector('#renderedInTargetElement'); 58 | 59 | expect(renderedInTargetElement).not.toBe(null); 60 | }); 61 | }); 62 | -------------------------------------------------------------------------------- /tests/TestPortalDynamic.svelte: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | 10 |
11 |
12 | -------------------------------------------------------------------------------- /tests/TestPortalElement.svelte: -------------------------------------------------------------------------------- 1 | 10 | 11 | {#if target} 12 | 13 |
14 |
15 | {/if} 16 | -------------------------------------------------------------------------------- /tests/TestPortalSelector.svelte: -------------------------------------------------------------------------------- 1 | 4 | 5 | 6 |
7 |
8 | -------------------------------------------------------------------------------- /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 | "module": "NodeNext", 13 | "moduleResolution": "NodeNext" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- 1 | import { sveltekit } from '@sveltejs/kit/vite'; 2 | import { defineConfig } from 'vitest/config'; 3 | 4 | export default defineConfig({ 5 | test: { 6 | include: ['{src,tests}/**/*.{test,spec}.{js,ts}'], 7 | environment: 'jsdom' 8 | }, 9 | // Fix to issue https://github.com/sveltejs/svelte/discussions/12037 10 | resolve: process.env.VITEST 11 | ? { 12 | conditions: ['browser'] 13 | } 14 | : undefined, 15 | plugins: [sveltekit()] 16 | }); 17 | --------------------------------------------------------------------------------