├── tsup.config.ts ├── .prettierignore ├── .github ├── renovate.json └── workflows │ ├── ci.yml │ └── release.yml ├── vitest.config.ts ├── eslint.config.mjs ├── tsconfig.json ├── LICENSE ├── src ├── index.test.ts ├── index.ts └── typings.ts ├── package.json ├── .gitignore ├── README.md └── pnpm-lock.yaml /tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsup'; 2 | 3 | export default defineConfig({ 4 | clean: true, 5 | dts: true, 6 | entry: ['src/index.ts'], 7 | format: ['cjs', 'esm'], 8 | target: 'esnext', 9 | outDir: 'dist', 10 | }); 11 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | .changeset 3 | node_modules 4 | build 5 | dist 6 | 7 | .gitignore 8 | .prettierignore 9 | 10 | .env 11 | .env.* 12 | !.env.example 13 | 14 | # Ignore files for PNPM, NPM and YARN 15 | pnpm-lock.yaml 16 | package-lock.json 17 | yarn.lock 18 | 19 | -------------------------------------------------------------------------------- /.github/renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json", 3 | "extends": ["config:base"], 4 | "packageRules": [ 5 | { 6 | "groupName": "All Dependencies", 7 | "groupSlug": "minor-patch", 8 | "matchPackagePatterns": ["*"], 9 | "matchUpdateTypes": ["minor", "patch"] 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { resolve } from 'node:path'; 2 | import { defineConfig } from 'vitest/config'; 3 | 4 | export default defineConfig({ 5 | test: { 6 | environment: 'node', 7 | testTimeout: 20000, 8 | globals: true, 9 | }, 10 | resolve: { 11 | alias: { 12 | '@': resolve(__dirname, 'src'), 13 | }, 14 | }, 15 | }); 16 | -------------------------------------------------------------------------------- /eslint.config.mjs: -------------------------------------------------------------------------------- 1 | import { defineConfig } from '@shahrad/eslint-config'; 2 | import globals from 'globals'; 3 | 4 | export default defineConfig( 5 | { 6 | ignores: ['dist/**'], 7 | }, 8 | 9 | { 10 | languageOptions: { 11 | ecmaVersion: 'latest', 12 | sourceType: 'module', 13 | globals: { 14 | ...globals.node, 15 | }, 16 | }, 17 | rules: { 18 | 'no-console': 'error', 19 | }, 20 | } 21 | ); 22 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://json.schemastore.org/tsconfig", 3 | "extends": "@sindresorhus/tsconfig", 4 | "compilerOptions": { 5 | "lib": ["ESNext", "ES2022"], 6 | "target": "ESNext", 7 | "module": "ESNext", 8 | "moduleResolution": "Bundler", 9 | "allowSyntheticDefaultImports": true, 10 | "esModuleInterop": true, 11 | "baseUrl": ".", 12 | "paths": { 13 | "@/*": ["src/*"] 14 | } 15 | }, 16 | "include": ["**/*.ts"], 17 | "exclude": ["node_modules", "dist"] 18 | } 19 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2025 Shahrad Elahi 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 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: 4 | push: 5 | branches: [main] 6 | pull_request: 7 | 8 | jobs: 9 | format: 10 | runs-on: ubuntu-latest 11 | steps: 12 | - uses: actions/checkout@v4 13 | - uses: pnpm/action-setup@v4 14 | - uses: actions/setup-node@v4 15 | with: 16 | node-version: 22 17 | cache: 'pnpm' 18 | 19 | - run: pnpm install --frozen-lockfile 20 | - run: pnpm format:check 21 | 22 | lint: 23 | runs-on: ubuntu-latest 24 | steps: 25 | - uses: actions/checkout@v4 26 | - uses: pnpm/action-setup@v4 27 | - uses: actions/setup-node@v4 28 | with: 29 | node-version: 22 30 | cache: 'pnpm' 31 | 32 | - run: pnpm install --frozen-lockfile 33 | - run: pnpm lint 34 | 35 | test: 36 | runs-on: ubuntu-latest 37 | steps: 38 | - uses: actions/checkout@v4 39 | - uses: pnpm/action-setup@v4 40 | - uses: actions/setup-node@v4 41 | with: 42 | node-version: 22 43 | cache: 'pnpm' 44 | 45 | - run: pnpm install --frozen-lockfile 46 | - run: pnpm test 47 | -------------------------------------------------------------------------------- /src/index.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, test } from 'vitest'; 2 | 3 | import { encode, MSGPack } from '@/index'; 4 | 5 | describe('MSGPack', () => { 6 | describe('encode', () => { 7 | test('should encode an object', () => { 8 | const input = { a: 'a', b: 1 }; 9 | const encoded = encode(input); 10 | const expected = new Uint8Array([0x82, 0xa1, 0x61, 0xa1, 0x61, 0xa1, 0x62, 0x01]); 11 | expect(encoded).toEqual(expected); 12 | }); 13 | 14 | test('should encode sorted object', () => { 15 | const input = { b: 1, a: 'a' }; 16 | const encoded = encode(input, { sortKeys: true }); 17 | expect(encoded).toEqual(encode({ a: 'a', b: 1 })); 18 | }); 19 | }); 20 | 21 | describe('stringify', () => { 22 | test('should stringify an object', () => { 23 | const input = { a: 'a', b: 1 }; 24 | const encoded = MSGPack.stringify(input); 25 | const expected = Buffer.from([0x82, 0xa1, 0x61, 0xa1, 0x61, 0xa1, 0x62, 0x01]).toString( 26 | 'base64' 27 | ); 28 | expect(encoded).toEqual(expected); 29 | }); 30 | 31 | test('should stringify values beyond the basic Latin1 range', () => { 32 | const input = { hello: '👋', world: '🌍' }; 33 | const encoded = MSGPack.stringify(input); 34 | const decoded = MSGPack.parse(encoded); 35 | expect(decoded).toEqual(input); 36 | }); 37 | }); 38 | }); 39 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release Package 2 | 3 | on: 4 | push: 5 | tags: 6 | - v* 7 | 8 | jobs: 9 | create-github-release: 10 | permissions: 11 | contents: write 12 | runs-on: ubuntu-latest 13 | if: startsWith(github.ref, 'refs/tags/v') 14 | steps: 15 | - name: Calculate release name 16 | run: | 17 | GITHUB_REF=${{ github.ref }} 18 | RELEASE_NAME=${GITHUB_REF#"refs/tags/"} 19 | echo "RELEASE_NAME=${RELEASE_NAME}" >> $GITHUB_ENV 20 | 21 | - name: Publish release 22 | uses: actions/create-release@v1 23 | env: 24 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 25 | with: 26 | tag_name: ${{ github.ref }} 27 | release_name: ${{ env.RELEASE_NAME }} 28 | draft: false 29 | prerelease: false 30 | 31 | publish-npm-release: 32 | runs-on: ubuntu-latest 33 | permissions: 34 | contents: read 35 | id-token: write 36 | steps: 37 | - uses: actions/checkout@v4 38 | - uses: pnpm/action-setup@v4 39 | - uses: actions/setup-node@v4 40 | with: 41 | node-version: 22 42 | cache: 'pnpm' 43 | registry-url: 'https://registry.npmjs.org' 44 | 45 | - run: pnpm install --frozen-lockfile 46 | - run: npm publish --provenance --access public 47 | env: 48 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} 49 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@se-oss/msgpack", 3 | "version": "1.0.0", 4 | "description": "Encode objects and buffers to base64 MessagePack and decode them back with ease.", 5 | "keywords": [ 6 | "msgpack", 7 | "base64", 8 | "encode", 9 | "decode", 10 | "serialization", 11 | "deserialization", 12 | "buffer", 13 | "binary", 14 | "json" 15 | ], 16 | "homepage": "https://github.com/shahradelahi/msgpack", 17 | "repository": "github:shahradelahi/msgpack", 18 | "license": "MIT", 19 | "author": "Shahrad Elahi (https://github.com/shahradelahi)", 20 | "type": "module", 21 | "exports": { 22 | ".": { 23 | "types": "./dist/index.d.ts", 24 | "import": "./dist/index.js", 25 | "default": "./dist/index.cjs" 26 | } 27 | }, 28 | "main": "dist/index.cjs", 29 | "module": "dist/index.js", 30 | "types": "dist/index.d.ts", 31 | "files": [ 32 | "dist/**", 33 | "!**/*.d.cts" 34 | ], 35 | "scripts": { 36 | "build": "tsup", 37 | "dev": "tsup --watch", 38 | "format": "prettier --write .", 39 | "format:check": "prettier --check .", 40 | "lint": "pnpm typecheck && eslint .", 41 | "lint:fix": "eslint --fix .", 42 | "prepublishOnly": "pnpm lint && pnpm build && pnpm format:check && pnpm test", 43 | "test": "vitest --run", 44 | "typecheck": "tsc --noEmit" 45 | }, 46 | "prettier": "@shahrad/prettier-config", 47 | "dependencies": { 48 | "@msgpack/msgpack": "^3.1" 49 | }, 50 | "devDependencies": { 51 | "@shahrad/eslint-config": "^1.0.0", 52 | "@shahrad/prettier-config": "^1.2.0", 53 | "@sindresorhus/tsconfig": "^7.0.0", 54 | "@types/node": "22.13.5", 55 | "eslint": "^9.21.0", 56 | "globals": "^16.0.0", 57 | "prettier": "^3.5.2", 58 | "tsup": "^8.3.6", 59 | "typescript": "^5.7.3", 60 | "vitest": "^3.0.7" 61 | }, 62 | "peerDependencies": { 63 | "@msgpack/msgpack": "^3.1" 64 | }, 65 | "packageManager": "pnpm@9.15.5" 66 | } 67 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import { decode as _decode, encode as _encode } from '@msgpack/msgpack'; 2 | 3 | import type { BufferLike, DecoderOptions, EncoderOptions, ObjectLike } from '@/typings'; 4 | 5 | export class MSGPack { 6 | /** 7 | * Parses a base64 encoded string into its original form. 8 | * 9 | * @param input - A base64 encoded string to be parsed. 10 | * @param options - Optional decoder options for the msgpack decode function. 11 | * @returns The decoded object or value. 12 | * @throws {TypeError} If the input is not a valid base64 encoded string. 13 | */ 14 | public static parse(input: string, options?: Partial): unknown { 15 | if (typeof (input as unknown) !== 'string') { 16 | throw new TypeError('input must be a string encoded in base64'); 17 | } 18 | 19 | // Feature for the times you want to move from JSON to msgpack 20 | if (input.at(0) === '{') { 21 | return JSON.parse(input); 22 | } 23 | 24 | const buffer = Buffer.from(input, 'base64'); 25 | return decode(buffer, options); 26 | } 27 | 28 | /** 29 | * Stringifies an object or value into a base64 encoded string. 30 | * 31 | * @param {ObjectLike} input - An object or value to be stringified. 32 | * @param options - Optional encoder options for the msgpack encode function. 33 | * @returns A base64 encoded string representing the input object or value. 34 | * @throws {TypeError} If the input is not an object. 35 | */ 36 | public static stringify(input: ObjectLike, options?: Partial): string { 37 | return Buffer.from(encode(input, options)).toString('base64'); 38 | } 39 | } 40 | 41 | export function encode(input: ObjectLike, options?: Partial): Uint8Array { 42 | if (!isObjectLike(input)) { 43 | throw new TypeError('input must be an object'); 44 | } 45 | 46 | return _encode(input, options); 47 | } 48 | 49 | export function decode(input: BufferLike, options?: Partial): unknown { 50 | return _decode(input, options); 51 | } 52 | 53 | export function isObjectLike(input: unknown): boolean { 54 | return typeof input === 'object' && input !== null; 55 | } 56 | 57 | export function isBase64(input: any): boolean { 58 | if (typeof input !== 'string') { 59 | return false; 60 | } 61 | 62 | return /^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$/.test(input); 63 | } 64 | 65 | export default MSGPack; 66 | 67 | export type { EncoderOptions, DecoderOptions, ObjectLike, KeyDecoder } from './typings'; 68 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | .pnpm-debug.log* 9 | 10 | # Diagnostic reports (https://nodejs.org/api/report.html) 11 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 12 | 13 | # Runtime data 14 | pids 15 | *.pid 16 | *.seed 17 | *.pid.lock 18 | 19 | # Directory for instrumented libs generated by jscoverage/JSCover 20 | lib-cov 21 | 22 | # Coverage directory used by tools like istanbul 23 | coverage 24 | *.lcov 25 | 26 | # nyc test coverage 27 | .nyc_output 28 | 29 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 30 | .grunt 31 | 32 | # Bower dependency directory (https://bower.io/) 33 | bower_components 34 | 35 | # node-waf configuration 36 | .lock-wscript 37 | 38 | # Compiled binary addons (https://nodejs.org/api/addons.html) 39 | build/Release 40 | 41 | # Dependency directories 42 | node_modules/ 43 | jspm_packages/ 44 | 45 | # Snowpack dependency directory (https://snowpack.dev/) 46 | web_modules/ 47 | 48 | # TypeScript cache 49 | *.tsbuildinfo 50 | 51 | # Optional npm cache directory 52 | .npm 53 | 54 | # Optional eslint cache 55 | .eslintcache 56 | 57 | # Optional stylelint cache 58 | .stylelintcache 59 | 60 | # Microbundle cache 61 | .rpt2_cache/ 62 | .rts2_cache_cjs/ 63 | .rts2_cache_es/ 64 | .rts2_cache_umd/ 65 | 66 | # Optional REPL history 67 | .node_repl_history 68 | 69 | # Output of 'npm pack' 70 | *.tgz 71 | 72 | # Yarn Integrity file 73 | .yarn-integrity 74 | 75 | # dotenv environment variable files 76 | .env 77 | .env.development.local 78 | .env.test.local 79 | .env.production.local 80 | .env.local 81 | 82 | # parcel-bundler cache (https://parceljs.org/) 83 | .cache 84 | .parcel-cache 85 | 86 | # Next.js build output 87 | .next 88 | out 89 | 90 | # Nuxt.js build / generate output 91 | .nuxt 92 | dist 93 | 94 | # Gatsby files 95 | .cache/ 96 | # Comment in the public line in if your project uses Gatsby and not Next.js 97 | # https://nextjs.org/blog/next-9-1#public-directory-support 98 | # public 99 | 100 | # vuepress build output 101 | .vuepress/dist 102 | 103 | # vuepress v2.x temp and cache directory 104 | .temp 105 | .cache 106 | 107 | # Docusaurus cache and generated files 108 | .docusaurus 109 | 110 | # Serverless directories 111 | .serverless/ 112 | 113 | # FuseBox cache 114 | .fusebox/ 115 | 116 | # DynamoDB Local files 117 | .dynamodb/ 118 | 119 | # TernJS port file 120 | .tern-port 121 | 122 | # Stores VSCode versions used for testing VSCode extensions 123 | .vscode-test 124 | 125 | # yarn v2 126 | .yarn/cache 127 | .yarn/unplugged 128 | .yarn/build-state.yml 129 | .yarn/install-state.gz 130 | .pnp.* 131 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # @se-oss/msgpack 2 | 3 | [![CI](https://github.com/shahradelahi/msgpack/actions/workflows/ci.yml/badge.svg)](https://github.com/shahradelahi/msgpack/actions/workflows/ci.yml) 4 | [![NPM Version](https://img.shields.io/npm/v/@se-oss/msgpack.svg)](https://www.npmjs.com/package/@se-oss/msgpack) 5 | [![MIT License](https://img.shields.io/badge/License-MIT-blue.svg?style=flat)](/LICENSE) 6 | [![Install Size](https://packagephobia.com/badge?p=@se-oss/msgpack)](https://packagephobia.com/result?p=@se-oss/msgpack) 7 | 8 | A lightweight utility for encoding objects and buffers into base64 MessagePack and decoding them back to their original form. Provides seamless conversion between JSON and MessagePack, with support for custom encoding and decoding options. 9 | 10 | --- 11 | 12 | - [Installation](#-installation) 13 | - [Usage](#-usage) 14 | - [Documentation](#-documentation) 15 | - [Contributing](#-contributing) 16 | - [License](#license) 17 | 18 | ## 📦 Installation 19 | 20 | ```bash 21 | npm install @se-oss/msgpack 22 | ``` 23 | 24 | ## 📖 Usage 25 | 26 | ```typescript 27 | import { MSGPack } from '@se-oss/msgpack'; 28 | 29 | // Basic usage example to stringify object to Base64 30 | const obj = { hello: 'world', numbers: [1, 2, 3], nested: { a: 1, b: 2 } }; 31 | const encoded = MSGPack.stringify(obj); 32 | console.log('Encoded:', encoded); 33 | 34 | const decoded = MSGPack.parse(encoded); 35 | console.log('Decoded:', decoded); 36 | 37 | // Using with custom options 38 | const customEncoded = MSGPack.stringify(obj, { 39 | maxDepth: 3, 40 | ignoreUndefined: true, 41 | }); 42 | console.log('Custom encoded:', customEncoded); 43 | ``` 44 | 45 | ## 📚 Documentation 46 | 47 | For all configuration options, please see [the API docs](https://www.jsdocs.io/package/@se-oss/msgpack). 48 | 49 | ##### API 50 | 51 | 52 | ```typescript 53 | class MSGPack { 54 | /** 55 | * Parses a base64 encoded string into its original form. 56 | * 57 | * @param input - A base64 encoded string to be parsed. 58 | * @param options - Optional decoder options for the msgpack decode function. 59 | * @returns The decoded object or value. 60 | * @throws {TypeError} If the input is not a valid base64 encoded string. 61 | */ 62 | static parse(input: string, options?: Partial): unknown; 63 | 64 | /** 65 | * Stringifies an object or value into a base64 encoded string. 66 | * 67 | * @param {ObjectLike} input - An object or value to be stringified. 68 | * @param options - Optional encoder options for the msgpack encode function. 69 | * @returns A base64 encoded string representing the input object or value. 70 | * @throws {TypeError} If the input is not an object. 71 | */ 72 | static stringify(input: ObjectLike, options?: Partial ): string; 73 | } 74 | ``` 75 | 76 | ## 🤝 Contributing 77 | 78 | Want to contribute? Awesome! To show your support is to star the project, or to raise issues on [GitHub](https://github.com/shahradelahi/msgpack) 79 | 80 | Thanks again for your support, it is much appreciated! 🙏 81 | 82 | ## Relevant 83 | 84 | - [MessagePack](https://msgpack.org/) 85 | - [@msgpack/msgpack](https://github.com/msgpack/msgpack-javascript) 86 | 87 | ## License 88 | 89 | [MIT](/LICENSE) © [Shahrad Elahi](https://github.com/shahradelahi) and [contributors](https://github.com/shahradelahi/msgpack/graphs/contributors). 90 | -------------------------------------------------------------------------------- /src/typings.ts: -------------------------------------------------------------------------------- 1 | export type ObjectLike = 2 | | Record 3 | | Array 4 | | BufferLike 5 | | object; 6 | 7 | export type BufferLike = 8 | | Buffer 9 | | Uint8Array 10 | | ArrayLike 11 | | ArrayBufferView 12 | | ArrayBufferLike; 13 | 14 | export interface EncoderOptions { 15 | /** 16 | * Encodes bigint as Int64 or Uint64 if it's set to true. 17 | * {@link forceIntegerToFloat} does not affect bigint. 18 | * Depends on ES2020's {@link DataView#setBigInt64} and 19 | * {@link DataView#setBigUint64}. 20 | * 21 | * Defaults to false. 22 | */ 23 | useBigInt64: boolean; 24 | 25 | /** 26 | * The maximum depth in nested objects and arrays. 27 | * 28 | * Defaults to 100. 29 | */ 30 | maxDepth: number; 31 | 32 | /** 33 | * The initial size of the internal buffer. 34 | * 35 | * Defaults to 2048. 36 | */ 37 | initialBufferSize: number; 38 | 39 | /** 40 | * If `true`, the keys of an object is sorted. In other words, the encoded 41 | * binary is canonical and thus comparable to another encoded binary. 42 | * 43 | * Defaults to `false`. If enabled, it spends more time in encoding objects. 44 | */ 45 | sortKeys: boolean; 46 | /** 47 | * If `true`, non-integer numbers are encoded in float32, not in float64 (the default). 48 | * 49 | * Only use it if precisions don't matter. 50 | * 51 | * Defaults to `false`. 52 | */ 53 | forceFloat32: boolean; 54 | 55 | /** 56 | * If `true`, an object property with `undefined` value are ignored. 57 | * e.g. `{ foo: undefined }` will be encoded as `{}`, as `JSON.stringify()` does. 58 | * 59 | * Defaults to `false`. If enabled, it spends more time in encoding objects. 60 | */ 61 | ignoreUndefined: boolean; 62 | 63 | /** 64 | * If `true`, integer numbers are encoded as floating point numbers, 65 | * with the `forceFloat32` option taken into account. 66 | * 67 | * Defaults to `false`. 68 | */ 69 | forceIntegerToFloat: boolean; 70 | } 71 | 72 | export interface DecoderOptions { 73 | /** 74 | * Decodes Int64 and Uint64 as bigint if it's set to true. 75 | * Depends on ES2020's {@link DataView#getBigInt64} and 76 | * {@link DataView#getBigUint64}. 77 | * 78 | * Defaults to false. 79 | */ 80 | useBigInt64: boolean; 81 | 82 | /** 83 | * Maximum string length. 84 | * 85 | * Defaults to 4_294_967_295 (UINT32_MAX). 86 | */ 87 | maxStrLength: number; 88 | /** 89 | * Maximum binary length. 90 | * 91 | * Defaults to 4_294_967_295 (UINT32_MAX). 92 | */ 93 | maxBinLength: number; 94 | /** 95 | * Maximum array length. 96 | * 97 | * Defaults to 4_294_967_295 (UINT32_MAX). 98 | */ 99 | maxArrayLength: number; 100 | /** 101 | * Maximum map length. 102 | * 103 | * Defaults to 4_294_967_295 (UINT32_MAX). 104 | */ 105 | maxMapLength: number; 106 | /** 107 | * Maximum extension length. 108 | * 109 | * Defaults to 4_294_967_295 (UINT32_MAX). 110 | */ 111 | maxExtLength: number; 112 | 113 | /** 114 | * An object key decoder. 115 | * `null` is a special value to disable the use of the key decoder at all. 116 | */ 117 | keyDecoder: KeyDecoder | null; 118 | } 119 | 120 | export interface KeyDecoder { 121 | canBeCached(byteLength: number): boolean; 122 | decode(bytes: Uint8Array, inputOffset: number, byteLength: number): string; 123 | } 124 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@msgpack/msgpack': 12 | specifier: ^3.1 13 | version: 3.1.0 14 | devDependencies: 15 | '@shahrad/eslint-config': 16 | specifier: ^1.0.0 17 | version: 1.0.0(typescript@5.7.3) 18 | '@shahrad/prettier-config': 19 | specifier: ^1.2.0 20 | version: 1.2.0(prettier@3.5.2) 21 | '@sindresorhus/tsconfig': 22 | specifier: ^7.0.0 23 | version: 7.0.0 24 | '@types/node': 25 | specifier: 22.13.5 26 | version: 22.13.5 27 | eslint: 28 | specifier: ^9.21.0 29 | version: 9.21.0 30 | globals: 31 | specifier: ^16.0.0 32 | version: 16.0.0 33 | prettier: 34 | specifier: ^3.5.2 35 | version: 3.5.2 36 | tsup: 37 | specifier: ^8.3.6 38 | version: 8.3.6(postcss@8.5.3)(typescript@5.7.3) 39 | typescript: 40 | specifier: ^5.7.3 41 | version: 5.7.3 42 | vitest: 43 | specifier: ^3.0.7 44 | version: 3.0.7(@types/node@22.13.5) 45 | 46 | packages: 47 | 48 | '@babel/code-frame@7.26.2': 49 | resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} 50 | engines: {node: '>=6.9.0'} 51 | 52 | '@babel/generator@7.26.9': 53 | resolution: {integrity: sha512-kEWdzjOAUMW4hAyrzJ0ZaTOu9OmpyDIQicIh0zg0EEcEkYXZb2TjtBhnHi2ViX7PKwZqF4xwqfAm299/QMP3lg==} 54 | engines: {node: '>=6.9.0'} 55 | 56 | '@babel/helper-string-parser@7.25.9': 57 | resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} 58 | engines: {node: '>=6.9.0'} 59 | 60 | '@babel/helper-validator-identifier@7.25.9': 61 | resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} 62 | engines: {node: '>=6.9.0'} 63 | 64 | '@babel/parser@7.26.9': 65 | resolution: {integrity: sha512-81NWa1njQblgZbQHxWHpxxCzNsa3ZwvFqpUg7P+NNUU6f3UU2jBEg4OlF/J6rl8+PQGh1q6/zWScd001YwcA5A==} 66 | engines: {node: '>=6.0.0'} 67 | hasBin: true 68 | 69 | '@babel/template@7.26.9': 70 | resolution: {integrity: sha512-qyRplbeIpNZhmzOysF/wFMuP9sctmh2cFzRAZOn1YapxBsE1i9bJIY586R/WBLfLcmcBlM8ROBiQURnnNy+zfA==} 71 | engines: {node: '>=6.9.0'} 72 | 73 | '@babel/traverse@7.26.9': 74 | resolution: {integrity: sha512-ZYW7L+pL8ahU5fXmNbPF+iZFHCv5scFak7MZ9bwaRPLUhHh7QQEMjZUg0HevihoqCM5iSYHN61EyCoZvqC+bxg==} 75 | engines: {node: '>=6.9.0'} 76 | 77 | '@babel/types@7.26.9': 78 | resolution: {integrity: sha512-Y3IR1cRnOxOCDvMmNiym7XpXQ93iGDDPHx+Zj+NM+rg0fBaShfQLkg+hKPaZCEvg5N/LeCo4+Rj/i3FuJsIQaw==} 79 | engines: {node: '>=6.9.0'} 80 | 81 | '@esbuild/aix-ppc64@0.24.2': 82 | resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==} 83 | engines: {node: '>=18'} 84 | cpu: [ppc64] 85 | os: [aix] 86 | 87 | '@esbuild/aix-ppc64@0.25.0': 88 | resolution: {integrity: sha512-O7vun9Sf8DFjH2UtqK8Ku3LkquL9SZL8OLY1T5NZkA34+wG3OQF7cl4Ql8vdNzM6fzBbYfLaiRLIOZ+2FOCgBQ==} 89 | engines: {node: '>=18'} 90 | cpu: [ppc64] 91 | os: [aix] 92 | 93 | '@esbuild/android-arm64@0.24.2': 94 | resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==} 95 | engines: {node: '>=18'} 96 | cpu: [arm64] 97 | os: [android] 98 | 99 | '@esbuild/android-arm64@0.25.0': 100 | resolution: {integrity: sha512-grvv8WncGjDSyUBjN9yHXNt+cq0snxXbDxy5pJtzMKGmmpPxeAmAhWxXI+01lU5rwZomDgD3kJwulEnhTRUd6g==} 101 | engines: {node: '>=18'} 102 | cpu: [arm64] 103 | os: [android] 104 | 105 | '@esbuild/android-arm@0.24.2': 106 | resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==} 107 | engines: {node: '>=18'} 108 | cpu: [arm] 109 | os: [android] 110 | 111 | '@esbuild/android-arm@0.25.0': 112 | resolution: {integrity: sha512-PTyWCYYiU0+1eJKmw21lWtC+d08JDZPQ5g+kFyxP0V+es6VPPSUhM6zk8iImp2jbV6GwjX4pap0JFbUQN65X1g==} 113 | engines: {node: '>=18'} 114 | cpu: [arm] 115 | os: [android] 116 | 117 | '@esbuild/android-x64@0.24.2': 118 | resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==} 119 | engines: {node: '>=18'} 120 | cpu: [x64] 121 | os: [android] 122 | 123 | '@esbuild/android-x64@0.25.0': 124 | resolution: {integrity: sha512-m/ix7SfKG5buCnxasr52+LI78SQ+wgdENi9CqyCXwjVR2X4Jkz+BpC3le3AoBPYTC9NHklwngVXvbJ9/Akhrfg==} 125 | engines: {node: '>=18'} 126 | cpu: [x64] 127 | os: [android] 128 | 129 | '@esbuild/darwin-arm64@0.24.2': 130 | resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==} 131 | engines: {node: '>=18'} 132 | cpu: [arm64] 133 | os: [darwin] 134 | 135 | '@esbuild/darwin-arm64@0.25.0': 136 | resolution: {integrity: sha512-mVwdUb5SRkPayVadIOI78K7aAnPamoeFR2bT5nszFUZ9P8UpK4ratOdYbZZXYSqPKMHfS1wdHCJk1P1EZpRdvw==} 137 | engines: {node: '>=18'} 138 | cpu: [arm64] 139 | os: [darwin] 140 | 141 | '@esbuild/darwin-x64@0.24.2': 142 | resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==} 143 | engines: {node: '>=18'} 144 | cpu: [x64] 145 | os: [darwin] 146 | 147 | '@esbuild/darwin-x64@0.25.0': 148 | resolution: {integrity: sha512-DgDaYsPWFTS4S3nWpFcMn/33ZZwAAeAFKNHNa1QN0rI4pUjgqf0f7ONmXf6d22tqTY+H9FNdgeaAa+YIFUn2Rg==} 149 | engines: {node: '>=18'} 150 | cpu: [x64] 151 | os: [darwin] 152 | 153 | '@esbuild/freebsd-arm64@0.24.2': 154 | resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==} 155 | engines: {node: '>=18'} 156 | cpu: [arm64] 157 | os: [freebsd] 158 | 159 | '@esbuild/freebsd-arm64@0.25.0': 160 | resolution: {integrity: sha512-VN4ocxy6dxefN1MepBx/iD1dH5K8qNtNe227I0mnTRjry8tj5MRk4zprLEdG8WPyAPb93/e4pSgi1SoHdgOa4w==} 161 | engines: {node: '>=18'} 162 | cpu: [arm64] 163 | os: [freebsd] 164 | 165 | '@esbuild/freebsd-x64@0.24.2': 166 | resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==} 167 | engines: {node: '>=18'} 168 | cpu: [x64] 169 | os: [freebsd] 170 | 171 | '@esbuild/freebsd-x64@0.25.0': 172 | resolution: {integrity: sha512-mrSgt7lCh07FY+hDD1TxiTyIHyttn6vnjesnPoVDNmDfOmggTLXRv8Id5fNZey1gl/V2dyVK1VXXqVsQIiAk+A==} 173 | engines: {node: '>=18'} 174 | cpu: [x64] 175 | os: [freebsd] 176 | 177 | '@esbuild/linux-arm64@0.24.2': 178 | resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==} 179 | engines: {node: '>=18'} 180 | cpu: [arm64] 181 | os: [linux] 182 | 183 | '@esbuild/linux-arm64@0.25.0': 184 | resolution: {integrity: sha512-9QAQjTWNDM/Vk2bgBl17yWuZxZNQIF0OUUuPZRKoDtqF2k4EtYbpyiG5/Dk7nqeK6kIJWPYldkOcBqjXjrUlmg==} 185 | engines: {node: '>=18'} 186 | cpu: [arm64] 187 | os: [linux] 188 | 189 | '@esbuild/linux-arm@0.24.2': 190 | resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==} 191 | engines: {node: '>=18'} 192 | cpu: [arm] 193 | os: [linux] 194 | 195 | '@esbuild/linux-arm@0.25.0': 196 | resolution: {integrity: sha512-vkB3IYj2IDo3g9xX7HqhPYxVkNQe8qTK55fraQyTzTX/fxaDtXiEnavv9geOsonh2Fd2RMB+i5cbhu2zMNWJwg==} 197 | engines: {node: '>=18'} 198 | cpu: [arm] 199 | os: [linux] 200 | 201 | '@esbuild/linux-ia32@0.24.2': 202 | resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==} 203 | engines: {node: '>=18'} 204 | cpu: [ia32] 205 | os: [linux] 206 | 207 | '@esbuild/linux-ia32@0.25.0': 208 | resolution: {integrity: sha512-43ET5bHbphBegyeqLb7I1eYn2P/JYGNmzzdidq/w0T8E2SsYL1U6un2NFROFRg1JZLTzdCoRomg8Rvf9M6W6Gg==} 209 | engines: {node: '>=18'} 210 | cpu: [ia32] 211 | os: [linux] 212 | 213 | '@esbuild/linux-loong64@0.24.2': 214 | resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==} 215 | engines: {node: '>=18'} 216 | cpu: [loong64] 217 | os: [linux] 218 | 219 | '@esbuild/linux-loong64@0.25.0': 220 | resolution: {integrity: sha512-fC95c/xyNFueMhClxJmeRIj2yrSMdDfmqJnyOY4ZqsALkDrrKJfIg5NTMSzVBr5YW1jf+l7/cndBfP3MSDpoHw==} 221 | engines: {node: '>=18'} 222 | cpu: [loong64] 223 | os: [linux] 224 | 225 | '@esbuild/linux-mips64el@0.24.2': 226 | resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==} 227 | engines: {node: '>=18'} 228 | cpu: [mips64el] 229 | os: [linux] 230 | 231 | '@esbuild/linux-mips64el@0.25.0': 232 | resolution: {integrity: sha512-nkAMFju7KDW73T1DdH7glcyIptm95a7Le8irTQNO/qtkoyypZAnjchQgooFUDQhNAy4iu08N79W4T4pMBwhPwQ==} 233 | engines: {node: '>=18'} 234 | cpu: [mips64el] 235 | os: [linux] 236 | 237 | '@esbuild/linux-ppc64@0.24.2': 238 | resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==} 239 | engines: {node: '>=18'} 240 | cpu: [ppc64] 241 | os: [linux] 242 | 243 | '@esbuild/linux-ppc64@0.25.0': 244 | resolution: {integrity: sha512-NhyOejdhRGS8Iwv+KKR2zTq2PpysF9XqY+Zk77vQHqNbo/PwZCzB5/h7VGuREZm1fixhs4Q/qWRSi5zmAiO4Fw==} 245 | engines: {node: '>=18'} 246 | cpu: [ppc64] 247 | os: [linux] 248 | 249 | '@esbuild/linux-riscv64@0.24.2': 250 | resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==} 251 | engines: {node: '>=18'} 252 | cpu: [riscv64] 253 | os: [linux] 254 | 255 | '@esbuild/linux-riscv64@0.25.0': 256 | resolution: {integrity: sha512-5S/rbP5OY+GHLC5qXp1y/Mx//e92L1YDqkiBbO9TQOvuFXM+iDqUNG5XopAnXoRH3FjIUDkeGcY1cgNvnXp/kA==} 257 | engines: {node: '>=18'} 258 | cpu: [riscv64] 259 | os: [linux] 260 | 261 | '@esbuild/linux-s390x@0.24.2': 262 | resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==} 263 | engines: {node: '>=18'} 264 | cpu: [s390x] 265 | os: [linux] 266 | 267 | '@esbuild/linux-s390x@0.25.0': 268 | resolution: {integrity: sha512-XM2BFsEBz0Fw37V0zU4CXfcfuACMrppsMFKdYY2WuTS3yi8O1nFOhil/xhKTmE1nPmVyvQJjJivgDT+xh8pXJA==} 269 | engines: {node: '>=18'} 270 | cpu: [s390x] 271 | os: [linux] 272 | 273 | '@esbuild/linux-x64@0.24.2': 274 | resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==} 275 | engines: {node: '>=18'} 276 | cpu: [x64] 277 | os: [linux] 278 | 279 | '@esbuild/linux-x64@0.25.0': 280 | resolution: {integrity: sha512-9yl91rHw/cpwMCNytUDxwj2XjFpxML0y9HAOH9pNVQDpQrBxHy01Dx+vaMu0N1CKa/RzBD2hB4u//nfc+Sd3Cw==} 281 | engines: {node: '>=18'} 282 | cpu: [x64] 283 | os: [linux] 284 | 285 | '@esbuild/netbsd-arm64@0.24.2': 286 | resolution: {integrity: sha512-wuLK/VztRRpMt9zyHSazyCVdCXlpHkKm34WUyinD2lzK07FAHTq0KQvZZlXikNWkDGoT6x3TD51jKQ7gMVpopw==} 287 | engines: {node: '>=18'} 288 | cpu: [arm64] 289 | os: [netbsd] 290 | 291 | '@esbuild/netbsd-arm64@0.25.0': 292 | resolution: {integrity: sha512-RuG4PSMPFfrkH6UwCAqBzauBWTygTvb1nxWasEJooGSJ/NwRw7b2HOwyRTQIU97Hq37l3npXoZGYMy3b3xYvPw==} 293 | engines: {node: '>=18'} 294 | cpu: [arm64] 295 | os: [netbsd] 296 | 297 | '@esbuild/netbsd-x64@0.24.2': 298 | resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==} 299 | engines: {node: '>=18'} 300 | cpu: [x64] 301 | os: [netbsd] 302 | 303 | '@esbuild/netbsd-x64@0.25.0': 304 | resolution: {integrity: sha512-jl+qisSB5jk01N5f7sPCsBENCOlPiS/xptD5yxOx2oqQfyourJwIKLRA2yqWdifj3owQZCL2sn6o08dBzZGQzA==} 305 | engines: {node: '>=18'} 306 | cpu: [x64] 307 | os: [netbsd] 308 | 309 | '@esbuild/openbsd-arm64@0.24.2': 310 | resolution: {integrity: sha512-YQbi46SBct6iKnszhSvdluqDmxCJA+Pu280Av9WICNwQmMxV7nLRHZfjQzwbPs3jeWnuAhE9Jy0NrnJ12Oz+0A==} 311 | engines: {node: '>=18'} 312 | cpu: [arm64] 313 | os: [openbsd] 314 | 315 | '@esbuild/openbsd-arm64@0.25.0': 316 | resolution: {integrity: sha512-21sUNbq2r84YE+SJDfaQRvdgznTD8Xc0oc3p3iW/a1EVWeNj/SdUCbm5U0itZPQYRuRTW20fPMWMpcrciH2EJw==} 317 | engines: {node: '>=18'} 318 | cpu: [arm64] 319 | os: [openbsd] 320 | 321 | '@esbuild/openbsd-x64@0.24.2': 322 | resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==} 323 | engines: {node: '>=18'} 324 | cpu: [x64] 325 | os: [openbsd] 326 | 327 | '@esbuild/openbsd-x64@0.25.0': 328 | resolution: {integrity: sha512-2gwwriSMPcCFRlPlKx3zLQhfN/2WjJ2NSlg5TKLQOJdV0mSxIcYNTMhk3H3ulL/cak+Xj0lY1Ym9ysDV1igceg==} 329 | engines: {node: '>=18'} 330 | cpu: [x64] 331 | os: [openbsd] 332 | 333 | '@esbuild/sunos-x64@0.24.2': 334 | resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==} 335 | engines: {node: '>=18'} 336 | cpu: [x64] 337 | os: [sunos] 338 | 339 | '@esbuild/sunos-x64@0.25.0': 340 | resolution: {integrity: sha512-bxI7ThgLzPrPz484/S9jLlvUAHYMzy6I0XiU1ZMeAEOBcS0VePBFxh1JjTQt3Xiat5b6Oh4x7UC7IwKQKIJRIg==} 341 | engines: {node: '>=18'} 342 | cpu: [x64] 343 | os: [sunos] 344 | 345 | '@esbuild/win32-arm64@0.24.2': 346 | resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==} 347 | engines: {node: '>=18'} 348 | cpu: [arm64] 349 | os: [win32] 350 | 351 | '@esbuild/win32-arm64@0.25.0': 352 | resolution: {integrity: sha512-ZUAc2YK6JW89xTbXvftxdnYy3m4iHIkDtK3CLce8wg8M2L+YZhIvO1DKpxrd0Yr59AeNNkTiic9YLf6FTtXWMw==} 353 | engines: {node: '>=18'} 354 | cpu: [arm64] 355 | os: [win32] 356 | 357 | '@esbuild/win32-ia32@0.24.2': 358 | resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==} 359 | engines: {node: '>=18'} 360 | cpu: [ia32] 361 | os: [win32] 362 | 363 | '@esbuild/win32-ia32@0.25.0': 364 | resolution: {integrity: sha512-eSNxISBu8XweVEWG31/JzjkIGbGIJN/TrRoiSVZwZ6pkC6VX4Im/WV2cz559/TXLcYbcrDN8JtKgd9DJVIo8GA==} 365 | engines: {node: '>=18'} 366 | cpu: [ia32] 367 | os: [win32] 368 | 369 | '@esbuild/win32-x64@0.24.2': 370 | resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==} 371 | engines: {node: '>=18'} 372 | cpu: [x64] 373 | os: [win32] 374 | 375 | '@esbuild/win32-x64@0.25.0': 376 | resolution: {integrity: sha512-ZENoHJBxA20C2zFzh6AI4fT6RraMzjYw4xKWemRTRmRVtN9c5DcH9r/f2ihEkMjOW5eGgrwCslG/+Y/3bL+DHQ==} 377 | engines: {node: '>=18'} 378 | cpu: [x64] 379 | os: [win32] 380 | 381 | '@eslint-community/eslint-utils@4.4.1': 382 | resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} 383 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 384 | peerDependencies: 385 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 386 | 387 | '@eslint-community/regexpp@4.12.1': 388 | resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} 389 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 390 | 391 | '@eslint/config-array@0.19.2': 392 | resolution: {integrity: sha512-GNKqxfHG2ySmJOBSHg7LxeUx4xpuCoFjacmlCoYWEbaPXLwvfIjixRI12xCQZeULksQb23uiA8F40w5TojpV7w==} 393 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 394 | 395 | '@eslint/core@0.12.0': 396 | resolution: {integrity: sha512-cmrR6pytBuSMTaBweKoGMwu3EiHiEC+DoyupPmlZ0HxBJBtIxwe+j/E4XPIKNx+Q74c8lXKPwYawBf5glsTkHg==} 397 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 398 | 399 | '@eslint/eslintrc@3.3.0': 400 | resolution: {integrity: sha512-yaVPAiNAalnCZedKLdR21GOGILMLKPyqSLWaAjQFvYA2i/ciDi8ArYVr69Anohb6cH2Ukhqti4aFnYyPm8wdwQ==} 401 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 402 | 403 | '@eslint/js@9.21.0': 404 | resolution: {integrity: sha512-BqStZ3HX8Yz6LvsF5ByXYrtigrV5AXADWLAGc7PH/1SxOb7/FIYYMszZZWiUou/GB9P2lXWk2SV4d+Z8h0nknw==} 405 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 406 | 407 | '@eslint/object-schema@2.1.6': 408 | resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} 409 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 410 | 411 | '@eslint/plugin-kit@0.2.7': 412 | resolution: {integrity: sha512-JubJ5B2pJ4k4yGxaNLdbjrnk9d/iDz6/q8wOilpIowd6PJPgaxCuHBnBszq7Ce2TyMrywm5r4PnKm6V3iiZF+g==} 413 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 414 | 415 | '@humanfs/core@0.19.1': 416 | resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} 417 | engines: {node: '>=18.18.0'} 418 | 419 | '@humanfs/node@0.16.6': 420 | resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} 421 | engines: {node: '>=18.18.0'} 422 | 423 | '@humanwhocodes/module-importer@1.0.1': 424 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 425 | engines: {node: '>=12.22'} 426 | 427 | '@humanwhocodes/retry@0.3.1': 428 | resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} 429 | engines: {node: '>=18.18'} 430 | 431 | '@humanwhocodes/retry@0.4.2': 432 | resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} 433 | engines: {node: '>=18.18'} 434 | 435 | '@ianvs/prettier-plugin-sort-imports@4.4.1': 436 | resolution: {integrity: sha512-F0/Hrcfpy8WuxlQyAWJTEren/uxKhYonOGY4OyWmwRdeTvkh9mMSCxowZLjNkhwi/2ipqCgtXwwOk7tW0mWXkA==} 437 | peerDependencies: 438 | '@vue/compiler-sfc': 2.7.x || 3.x 439 | prettier: 2 || 3 440 | peerDependenciesMeta: 441 | '@vue/compiler-sfc': 442 | optional: true 443 | 444 | '@isaacs/cliui@8.0.2': 445 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 446 | engines: {node: '>=12'} 447 | 448 | '@jridgewell/gen-mapping@0.3.8': 449 | resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} 450 | engines: {node: '>=6.0.0'} 451 | 452 | '@jridgewell/resolve-uri@3.1.2': 453 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 454 | engines: {node: '>=6.0.0'} 455 | 456 | '@jridgewell/set-array@1.2.1': 457 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 458 | engines: {node: '>=6.0.0'} 459 | 460 | '@jridgewell/sourcemap-codec@1.5.0': 461 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 462 | 463 | '@jridgewell/trace-mapping@0.3.25': 464 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 465 | 466 | '@msgpack/msgpack@3.1.0': 467 | resolution: {integrity: sha512-igBxaq5JHWdJ0lDyKkCo00pDu+bNVuBAs/cHra6a3ndCw6vlZK9BGLuG7Fvmar/DXK2uJ25zvgcAZEl+AvLpjQ==} 468 | engines: {node: '>= 18'} 469 | 470 | '@nodelib/fs.scandir@2.1.5': 471 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 472 | engines: {node: '>= 8'} 473 | 474 | '@nodelib/fs.stat@2.0.5': 475 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 476 | engines: {node: '>= 8'} 477 | 478 | '@nodelib/fs.walk@1.2.8': 479 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 480 | engines: {node: '>= 8'} 481 | 482 | '@pkgjs/parseargs@0.11.0': 483 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 484 | engines: {node: '>=14'} 485 | 486 | '@pkgr/core@0.1.1': 487 | resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} 488 | engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} 489 | 490 | '@rollup/rollup-android-arm-eabi@4.34.8': 491 | resolution: {integrity: sha512-q217OSE8DTp8AFHuNHXo0Y86e1wtlfVrXiAlwkIvGRQv9zbc6mE3sjIVfwI8sYUyNxwOg0j/Vm1RKM04JcWLJw==} 492 | cpu: [arm] 493 | os: [android] 494 | 495 | '@rollup/rollup-android-arm64@4.34.8': 496 | resolution: {integrity: sha512-Gigjz7mNWaOL9wCggvoK3jEIUUbGul656opstjaUSGC3eT0BM7PofdAJaBfPFWWkXNVAXbaQtC99OCg4sJv70Q==} 497 | cpu: [arm64] 498 | os: [android] 499 | 500 | '@rollup/rollup-darwin-arm64@4.34.8': 501 | resolution: {integrity: sha512-02rVdZ5tgdUNRxIUrFdcMBZQoaPMrxtwSb+/hOfBdqkatYHR3lZ2A2EGyHq2sGOd0Owk80oV3snlDASC24He3Q==} 502 | cpu: [arm64] 503 | os: [darwin] 504 | 505 | '@rollup/rollup-darwin-x64@4.34.8': 506 | resolution: {integrity: sha512-qIP/elwR/tq/dYRx3lgwK31jkZvMiD6qUtOycLhTzCvrjbZ3LjQnEM9rNhSGpbLXVJYQ3rq39A6Re0h9tU2ynw==} 507 | cpu: [x64] 508 | os: [darwin] 509 | 510 | '@rollup/rollup-freebsd-arm64@4.34.8': 511 | resolution: {integrity: sha512-IQNVXL9iY6NniYbTaOKdrlVP3XIqazBgJOVkddzJlqnCpRi/yAeSOa8PLcECFSQochzqApIOE1GHNu3pCz+BDA==} 512 | cpu: [arm64] 513 | os: [freebsd] 514 | 515 | '@rollup/rollup-freebsd-x64@4.34.8': 516 | resolution: {integrity: sha512-TYXcHghgnCqYFiE3FT5QwXtOZqDj5GmaFNTNt3jNC+vh22dc/ukG2cG+pi75QO4kACohZzidsq7yKTKwq/Jq7Q==} 517 | cpu: [x64] 518 | os: [freebsd] 519 | 520 | '@rollup/rollup-linux-arm-gnueabihf@4.34.8': 521 | resolution: {integrity: sha512-A4iphFGNkWRd+5m3VIGuqHnG3MVnqKe7Al57u9mwgbyZ2/xF9Jio72MaY7xxh+Y87VAHmGQr73qoKL9HPbXj1g==} 522 | cpu: [arm] 523 | os: [linux] 524 | 525 | '@rollup/rollup-linux-arm-musleabihf@4.34.8': 526 | resolution: {integrity: sha512-S0lqKLfTm5u+QTxlFiAnb2J/2dgQqRy/XvziPtDd1rKZFXHTyYLoVL58M/XFwDI01AQCDIevGLbQrMAtdyanpA==} 527 | cpu: [arm] 528 | os: [linux] 529 | 530 | '@rollup/rollup-linux-arm64-gnu@4.34.8': 531 | resolution: {integrity: sha512-jpz9YOuPiSkL4G4pqKrus0pn9aYwpImGkosRKwNi+sJSkz+WU3anZe6hi73StLOQdfXYXC7hUfsQlTnjMd3s1A==} 532 | cpu: [arm64] 533 | os: [linux] 534 | 535 | '@rollup/rollup-linux-arm64-musl@4.34.8': 536 | resolution: {integrity: sha512-KdSfaROOUJXgTVxJNAZ3KwkRc5nggDk+06P6lgi1HLv1hskgvxHUKZ4xtwHkVYJ1Rep4GNo+uEfycCRRxht7+Q==} 537 | cpu: [arm64] 538 | os: [linux] 539 | 540 | '@rollup/rollup-linux-loongarch64-gnu@4.34.8': 541 | resolution: {integrity: sha512-NyF4gcxwkMFRjgXBM6g2lkT58OWztZvw5KkV2K0qqSnUEqCVcqdh2jN4gQrTn/YUpAcNKyFHfoOZEer9nwo6uQ==} 542 | cpu: [loong64] 543 | os: [linux] 544 | 545 | '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': 546 | resolution: {integrity: sha512-LMJc999GkhGvktHU85zNTDImZVUCJ1z/MbAJTnviiWmmjyckP5aQsHtcujMjpNdMZPT2rQEDBlJfubhs3jsMfw==} 547 | cpu: [ppc64] 548 | os: [linux] 549 | 550 | '@rollup/rollup-linux-riscv64-gnu@4.34.8': 551 | resolution: {integrity: sha512-xAQCAHPj8nJq1PI3z8CIZzXuXCstquz7cIOL73HHdXiRcKk8Ywwqtx2wrIy23EcTn4aZ2fLJNBB8d0tQENPCmw==} 552 | cpu: [riscv64] 553 | os: [linux] 554 | 555 | '@rollup/rollup-linux-s390x-gnu@4.34.8': 556 | resolution: {integrity: sha512-DdePVk1NDEuc3fOe3dPPTb+rjMtuFw89gw6gVWxQFAuEqqSdDKnrwzZHrUYdac7A7dXl9Q2Vflxpme15gUWQFA==} 557 | cpu: [s390x] 558 | os: [linux] 559 | 560 | '@rollup/rollup-linux-x64-gnu@4.34.8': 561 | resolution: {integrity: sha512-8y7ED8gjxITUltTUEJLQdgpbPh1sUQ0kMTmufRF/Ns5tI9TNMNlhWtmPKKHCU0SilX+3MJkZ0zERYYGIVBYHIA==} 562 | cpu: [x64] 563 | os: [linux] 564 | 565 | '@rollup/rollup-linux-x64-musl@4.34.8': 566 | resolution: {integrity: sha512-SCXcP0ZpGFIe7Ge+McxY5zKxiEI5ra+GT3QRxL0pMMtxPfpyLAKleZODi1zdRHkz5/BhueUrYtYVgubqe9JBNQ==} 567 | cpu: [x64] 568 | os: [linux] 569 | 570 | '@rollup/rollup-win32-arm64-msvc@4.34.8': 571 | resolution: {integrity: sha512-YHYsgzZgFJzTRbth4h7Or0m5O74Yda+hLin0irAIobkLQFRQd1qWmnoVfwmKm9TXIZVAD0nZ+GEb2ICicLyCnQ==} 572 | cpu: [arm64] 573 | os: [win32] 574 | 575 | '@rollup/rollup-win32-ia32-msvc@4.34.8': 576 | resolution: {integrity: sha512-r3NRQrXkHr4uWy5TOjTpTYojR9XmF0j/RYgKCef+Ag46FWUTltm5ziticv8LdNsDMehjJ543x/+TJAek/xBA2w==} 577 | cpu: [ia32] 578 | os: [win32] 579 | 580 | '@rollup/rollup-win32-x64-msvc@4.34.8': 581 | resolution: {integrity: sha512-U0FaE5O1BCpZSeE6gBl3c5ObhePQSfk9vDRToMmTkbhCOgW4jqvtS5LGyQ76L1fH8sM0keRp4uDTsbjiUyjk0g==} 582 | cpu: [x64] 583 | os: [win32] 584 | 585 | '@shahrad/eslint-config@1.0.0': 586 | resolution: {integrity: sha512-J/RJBYyva4REnQr9C/pvT/9ydPX8zKwoV1ltzmKicX5IQKqN5S/1nrFmkZvSg8MoaXM2WM4AsNZVklTxDeW0+g==} 587 | 588 | '@shahrad/prettier-config@1.2.0': 589 | resolution: {integrity: sha512-vC4mYYsg7OMylfUtrRPdp1ZYU1DLRy/JUd3fpZ94TjaTpA6W6gMzmNJJ3tzKK55pnbGhS9ft0yY/U6iRj7dqrQ==} 590 | peerDependencies: 591 | prettier: '>=3.0.0' 592 | 593 | '@sindresorhus/tsconfig@7.0.0': 594 | resolution: {integrity: sha512-i5K04hLAP44Af16zmDjG07E1NHuDgCM07SJAT4gY0LZSRrWYzwt4qkLem6TIbIVh0k51RkN2bF+lP+lM5eC9fw==} 595 | engines: {node: '>=18'} 596 | 597 | '@types/estree@1.0.6': 598 | resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} 599 | 600 | '@types/json-schema@7.0.15': 601 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 602 | 603 | '@types/node@22.13.5': 604 | resolution: {integrity: sha512-+lTU0PxZXn0Dr1NBtC7Y8cR21AJr87dLLU953CWA6pMxxv/UDc7jYAY90upcrie1nRcD6XNG5HOYEDtgW5TxAg==} 605 | 606 | '@typescript-eslint/eslint-plugin@8.25.0': 607 | resolution: {integrity: sha512-VM7bpzAe7JO/BFf40pIT1lJqS/z1F8OaSsUB3rpFJucQA4cOSuH2RVVVkFULN+En0Djgr29/jb4EQnedUo95KA==} 608 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 609 | peerDependencies: 610 | '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 611 | eslint: ^8.57.0 || ^9.0.0 612 | typescript: '>=4.8.4 <5.8.0' 613 | 614 | '@typescript-eslint/parser@8.25.0': 615 | resolution: {integrity: sha512-4gbs64bnbSzu4FpgMiQ1A+D+urxkoJk/kqlDJ2W//5SygaEiAP2B4GoS7TEdxgwol2el03gckFV9lJ4QOMiiHg==} 616 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 617 | peerDependencies: 618 | eslint: ^8.57.0 || ^9.0.0 619 | typescript: '>=4.8.4 <5.8.0' 620 | 621 | '@typescript-eslint/scope-manager@8.25.0': 622 | resolution: {integrity: sha512-6PPeiKIGbgStEyt4NNXa2ru5pMzQ8OYKO1hX1z53HMomrmiSB+R5FmChgQAP1ro8jMtNawz+TRQo/cSXrauTpg==} 623 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 624 | 625 | '@typescript-eslint/type-utils@8.25.0': 626 | resolution: {integrity: sha512-d77dHgHWnxmXOPJuDWO4FDWADmGQkN5+tt6SFRZz/RtCWl4pHgFl3+WdYCn16+3teG09DY6XtEpf3gGD0a186g==} 627 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 628 | peerDependencies: 629 | eslint: ^8.57.0 || ^9.0.0 630 | typescript: '>=4.8.4 <5.8.0' 631 | 632 | '@typescript-eslint/types@8.25.0': 633 | resolution: {integrity: sha512-+vUe0Zb4tkNgznQwicsvLUJgZIRs6ITeWSCclX1q85pR1iOiaj+4uZJIUp//Z27QWu5Cseiw3O3AR8hVpax7Aw==} 634 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 635 | 636 | '@typescript-eslint/typescript-estree@8.25.0': 637 | resolution: {integrity: sha512-ZPaiAKEZ6Blt/TPAx5Ot0EIB/yGtLI2EsGoY6F7XKklfMxYQyvtL+gT/UCqkMzO0BVFHLDlzvFqQzurYahxv9Q==} 638 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 639 | peerDependencies: 640 | typescript: '>=4.8.4 <5.8.0' 641 | 642 | '@typescript-eslint/utils@8.25.0': 643 | resolution: {integrity: sha512-syqRbrEv0J1wywiLsK60XzHnQe/kRViI3zwFALrNEgnntn1l24Ra2KvOAWwWbWZ1lBZxZljPDGOq967dsl6fkA==} 644 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 645 | peerDependencies: 646 | eslint: ^8.57.0 || ^9.0.0 647 | typescript: '>=4.8.4 <5.8.0' 648 | 649 | '@typescript-eslint/visitor-keys@8.25.0': 650 | resolution: {integrity: sha512-kCYXKAum9CecGVHGij7muybDfTS2sD3t0L4bJsEZLkyrXUImiCTq1M3LG2SRtOhiHFwMR9wAFplpT6XHYjTkwQ==} 651 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 652 | 653 | '@vitest/expect@3.0.7': 654 | resolution: {integrity: sha512-QP25f+YJhzPfHrHfYHtvRn+uvkCFCqFtW9CktfBxmB+25QqWsx7VB2As6f4GmwllHLDhXNHvqedwhvMmSnNmjw==} 655 | 656 | '@vitest/mocker@3.0.7': 657 | resolution: {integrity: sha512-qui+3BLz9Eonx4EAuR/i+QlCX6AUZ35taDQgwGkK/Tw6/WgwodSrjN1X2xf69IA/643ZX5zNKIn2svvtZDrs4w==} 658 | peerDependencies: 659 | msw: ^2.4.9 660 | vite: ^5.0.0 || ^6.0.0 661 | peerDependenciesMeta: 662 | msw: 663 | optional: true 664 | vite: 665 | optional: true 666 | 667 | '@vitest/pretty-format@3.0.7': 668 | resolution: {integrity: sha512-CiRY0BViD/V8uwuEzz9Yapyao+M9M008/9oMOSQydwbwb+CMokEq3XVaF3XK/VWaOK0Jm9z7ENhybg70Gtxsmg==} 669 | 670 | '@vitest/runner@3.0.7': 671 | resolution: {integrity: sha512-WeEl38Z0S2ZcuRTeyYqaZtm4e26tq6ZFqh5y8YD9YxfWuu0OFiGFUbnxNynwLjNRHPsXyee2M9tV7YxOTPZl2g==} 672 | 673 | '@vitest/snapshot@3.0.7': 674 | resolution: {integrity: sha512-eqTUryJWQN0Rtf5yqCGTQWsCFOQe4eNz5Twsu21xYEcnFJtMU5XvmG0vgebhdLlrHQTSq5p8vWHJIeJQV8ovsA==} 675 | 676 | '@vitest/spy@3.0.7': 677 | resolution: {integrity: sha512-4T4WcsibB0B6hrKdAZTM37ekuyFZt2cGbEGd2+L0P8ov15J1/HUsUaqkXEQPNAWr4BtPPe1gI+FYfMHhEKfR8w==} 678 | 679 | '@vitest/utils@3.0.7': 680 | resolution: {integrity: sha512-xePVpCRfooFX3rANQjwoditoXgWb1MaFbzmGuPP59MK6i13mrnDw/yEIyJudLeW6/38mCNcwCiJIGmpDPibAIg==} 681 | 682 | acorn-jsx@5.3.2: 683 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 684 | peerDependencies: 685 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 686 | 687 | acorn@8.14.0: 688 | resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} 689 | engines: {node: '>=0.4.0'} 690 | hasBin: true 691 | 692 | ajv@6.12.6: 693 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 694 | 695 | ansi-regex@5.0.1: 696 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 697 | engines: {node: '>=8'} 698 | 699 | ansi-regex@6.1.0: 700 | resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} 701 | engines: {node: '>=12'} 702 | 703 | ansi-styles@4.3.0: 704 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 705 | engines: {node: '>=8'} 706 | 707 | ansi-styles@6.2.1: 708 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 709 | engines: {node: '>=12'} 710 | 711 | any-promise@1.3.0: 712 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 713 | 714 | argparse@2.0.1: 715 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 716 | 717 | assertion-error@2.0.1: 718 | resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} 719 | engines: {node: '>=12'} 720 | 721 | balanced-match@1.0.2: 722 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 723 | 724 | brace-expansion@1.1.11: 725 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 726 | 727 | brace-expansion@2.0.1: 728 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 729 | 730 | braces@3.0.3: 731 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 732 | engines: {node: '>=8'} 733 | 734 | bundle-require@5.1.0: 735 | resolution: {integrity: sha512-3WrrOuZiyaaZPWiEt4G3+IffISVC9HYlWueJEBWED4ZH4aIAC2PnkdnuRrR94M+w6yGWn4AglWtJtBI8YqvgoA==} 736 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 737 | peerDependencies: 738 | esbuild: '>=0.18' 739 | 740 | cac@6.7.14: 741 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 742 | engines: {node: '>=8'} 743 | 744 | callsites@3.1.0: 745 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 746 | engines: {node: '>=6'} 747 | 748 | chai@5.2.0: 749 | resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} 750 | engines: {node: '>=12'} 751 | 752 | chalk@4.1.2: 753 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 754 | engines: {node: '>=10'} 755 | 756 | check-error@2.1.1: 757 | resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} 758 | engines: {node: '>= 16'} 759 | 760 | chokidar@4.0.3: 761 | resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} 762 | engines: {node: '>= 14.16.0'} 763 | 764 | color-convert@2.0.1: 765 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 766 | engines: {node: '>=7.0.0'} 767 | 768 | color-name@1.1.4: 769 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 770 | 771 | commander@4.1.1: 772 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 773 | engines: {node: '>= 6'} 774 | 775 | concat-map@0.0.1: 776 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 777 | 778 | consola@3.4.0: 779 | resolution: {integrity: sha512-EiPU8G6dQG0GFHNR8ljnZFki/8a+cQwEQ+7wpxdChl02Q8HXlwEZWD5lqAF8vC2sEC3Tehr8hy7vErz88LHyUA==} 780 | engines: {node: ^14.18.0 || >=16.10.0} 781 | 782 | cross-spawn@7.0.6: 783 | resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} 784 | engines: {node: '>= 8'} 785 | 786 | debug@4.4.0: 787 | resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} 788 | engines: {node: '>=6.0'} 789 | peerDependencies: 790 | supports-color: '*' 791 | peerDependenciesMeta: 792 | supports-color: 793 | optional: true 794 | 795 | deep-eql@5.0.2: 796 | resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} 797 | engines: {node: '>=6'} 798 | 799 | deep-is@0.1.4: 800 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 801 | 802 | detect-indent@7.0.1: 803 | resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} 804 | engines: {node: '>=12.20'} 805 | 806 | detect-newline@4.0.1: 807 | resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} 808 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 809 | 810 | eastasianwidth@0.2.0: 811 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 812 | 813 | emoji-regex@8.0.0: 814 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 815 | 816 | emoji-regex@9.2.2: 817 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 818 | 819 | es-module-lexer@1.6.0: 820 | resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==} 821 | 822 | esbuild@0.24.2: 823 | resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==} 824 | engines: {node: '>=18'} 825 | hasBin: true 826 | 827 | esbuild@0.25.0: 828 | resolution: {integrity: sha512-BXq5mqc8ltbaN34cDqWuYKyNhX8D/Z0J1xdtdQ8UcIIIyJyz+ZMKUt58tF3SrZ85jcfN/PZYhjR5uDQAYNVbuw==} 829 | engines: {node: '>=18'} 830 | hasBin: true 831 | 832 | escape-string-regexp@4.0.0: 833 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 834 | engines: {node: '>=10'} 835 | 836 | eslint-scope@8.2.0: 837 | resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} 838 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 839 | 840 | eslint-visitor-keys@3.4.3: 841 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 842 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 843 | 844 | eslint-visitor-keys@4.2.0: 845 | resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} 846 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 847 | 848 | eslint@9.21.0: 849 | resolution: {integrity: sha512-KjeihdFqTPhOMXTt7StsDxriV4n66ueuF/jfPNC3j/lduHwr/ijDwJMsF+wyMJethgiKi5wniIE243vi07d3pg==} 850 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 851 | hasBin: true 852 | peerDependencies: 853 | jiti: '*' 854 | peerDependenciesMeta: 855 | jiti: 856 | optional: true 857 | 858 | espree@10.3.0: 859 | resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} 860 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 861 | 862 | esquery@1.6.0: 863 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 864 | engines: {node: '>=0.10'} 865 | 866 | esrecurse@4.3.0: 867 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 868 | engines: {node: '>=4.0'} 869 | 870 | estraverse@5.3.0: 871 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 872 | engines: {node: '>=4.0'} 873 | 874 | estree-walker@3.0.3: 875 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 876 | 877 | esutils@2.0.3: 878 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 879 | engines: {node: '>=0.10.0'} 880 | 881 | expect-type@1.1.0: 882 | resolution: {integrity: sha512-bFi65yM+xZgk+u/KRIpekdSYkTB5W1pEf0Lt8Q8Msh7b+eQ7LXVtIB1Bkm4fvclDEL1b2CZkMhv2mOeF8tMdkA==} 883 | engines: {node: '>=12.0.0'} 884 | 885 | fast-deep-equal@3.1.3: 886 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 887 | 888 | fast-glob@3.3.3: 889 | resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==} 890 | engines: {node: '>=8.6.0'} 891 | 892 | fast-json-stable-stringify@2.1.0: 893 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 894 | 895 | fast-levenshtein@2.0.6: 896 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 897 | 898 | fastq@1.19.0: 899 | resolution: {integrity: sha512-7SFSRCNjBQIZH/xZR3iy5iQYR8aGBE0h3VG6/cwlbrpdciNYBMotQav8c1XI3HjHH+NikUpP53nPdlZSdWmFzA==} 900 | 901 | fdir@6.4.3: 902 | resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==} 903 | peerDependencies: 904 | picomatch: ^3 || ^4 905 | peerDependenciesMeta: 906 | picomatch: 907 | optional: true 908 | 909 | file-entry-cache@8.0.0: 910 | resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} 911 | engines: {node: '>=16.0.0'} 912 | 913 | fill-range@7.1.1: 914 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 915 | engines: {node: '>=8'} 916 | 917 | find-up@5.0.0: 918 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 919 | engines: {node: '>=10'} 920 | 921 | flat-cache@4.0.1: 922 | resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} 923 | engines: {node: '>=16'} 924 | 925 | flatted@3.3.3: 926 | resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} 927 | 928 | foreground-child@3.3.1: 929 | resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==} 930 | engines: {node: '>=14'} 931 | 932 | fsevents@2.3.3: 933 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 934 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 935 | os: [darwin] 936 | 937 | get-stdin@9.0.0: 938 | resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} 939 | engines: {node: '>=12'} 940 | 941 | git-hooks-list@3.2.0: 942 | resolution: {integrity: sha512-ZHG9a1gEhUMX1TvGrLdyWb9kDopCBbTnI8z4JgRMYxsijWipgjSEYoPWqBuIB0DnRnvqlQSEeVmzpeuPm7NdFQ==} 943 | 944 | glob-parent@5.1.2: 945 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 946 | engines: {node: '>= 6'} 947 | 948 | glob-parent@6.0.2: 949 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 950 | engines: {node: '>=10.13.0'} 951 | 952 | glob@10.4.5: 953 | resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==} 954 | hasBin: true 955 | 956 | globals@11.12.0: 957 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 958 | engines: {node: '>=4'} 959 | 960 | globals@14.0.0: 961 | resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} 962 | engines: {node: '>=18'} 963 | 964 | globals@16.0.0: 965 | resolution: {integrity: sha512-iInW14XItCXET01CQFqudPOWP2jYMl7T+QRQT+UNcR/iQncN/F0UNpgd76iFkBPgNQb4+X3LV9tLJYzwh+Gl3A==} 966 | engines: {node: '>=18'} 967 | 968 | graphemer@1.4.0: 969 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 970 | 971 | has-flag@4.0.0: 972 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 973 | engines: {node: '>=8'} 974 | 975 | ignore@5.3.2: 976 | resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} 977 | engines: {node: '>= 4'} 978 | 979 | import-fresh@3.3.1: 980 | resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} 981 | engines: {node: '>=6'} 982 | 983 | imurmurhash@0.1.4: 984 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 985 | engines: {node: '>=0.8.19'} 986 | 987 | is-extglob@2.1.1: 988 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 989 | engines: {node: '>=0.10.0'} 990 | 991 | is-fullwidth-code-point@3.0.0: 992 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 993 | engines: {node: '>=8'} 994 | 995 | is-glob@4.0.3: 996 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 997 | engines: {node: '>=0.10.0'} 998 | 999 | is-number@7.0.0: 1000 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1001 | engines: {node: '>=0.12.0'} 1002 | 1003 | is-plain-obj@4.1.0: 1004 | resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} 1005 | engines: {node: '>=12'} 1006 | 1007 | isexe@2.0.0: 1008 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1009 | 1010 | jackspeak@3.4.3: 1011 | resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 1012 | 1013 | joycon@3.1.1: 1014 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} 1015 | engines: {node: '>=10'} 1016 | 1017 | js-tokens@4.0.0: 1018 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1019 | 1020 | js-yaml@4.1.0: 1021 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1022 | hasBin: true 1023 | 1024 | jsesc@3.1.0: 1025 | resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} 1026 | engines: {node: '>=6'} 1027 | hasBin: true 1028 | 1029 | json-buffer@3.0.1: 1030 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1031 | 1032 | json-schema-traverse@0.4.1: 1033 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1034 | 1035 | json-stable-stringify-without-jsonify@1.0.1: 1036 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1037 | 1038 | keyv@4.5.4: 1039 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 1040 | 1041 | levn@0.4.1: 1042 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1043 | engines: {node: '>= 0.8.0'} 1044 | 1045 | lilconfig@3.1.3: 1046 | resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} 1047 | engines: {node: '>=14'} 1048 | 1049 | lines-and-columns@1.2.4: 1050 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 1051 | 1052 | load-tsconfig@0.2.5: 1053 | resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} 1054 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1055 | 1056 | locate-path@6.0.0: 1057 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1058 | engines: {node: '>=10'} 1059 | 1060 | lodash.merge@4.6.2: 1061 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1062 | 1063 | lodash.sortby@4.7.0: 1064 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} 1065 | 1066 | loupe@3.1.3: 1067 | resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} 1068 | 1069 | lru-cache@10.4.3: 1070 | resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} 1071 | 1072 | magic-string@0.30.17: 1073 | resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} 1074 | 1075 | merge2@1.4.1: 1076 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1077 | engines: {node: '>= 8'} 1078 | 1079 | micromatch@4.0.8: 1080 | resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} 1081 | engines: {node: '>=8.6'} 1082 | 1083 | minimatch@3.1.2: 1084 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1085 | 1086 | minimatch@9.0.5: 1087 | resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} 1088 | engines: {node: '>=16 || 14 >=14.17'} 1089 | 1090 | minipass@7.1.2: 1091 | resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==} 1092 | engines: {node: '>=16 || 14 >=14.17'} 1093 | 1094 | ms@2.1.3: 1095 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 1096 | 1097 | mvdan-sh@0.10.1: 1098 | resolution: {integrity: sha512-kMbrH0EObaKmK3nVRKUIIya1dpASHIEusM13S4V1ViHFuxuNxCo+arxoa6j/dbV22YBGjl7UKJm9QQKJ2Crzhg==} 1099 | 1100 | mz@2.7.0: 1101 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 1102 | 1103 | nanoid@3.3.8: 1104 | resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} 1105 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1106 | hasBin: true 1107 | 1108 | natural-compare@1.4.0: 1109 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1110 | 1111 | object-assign@4.1.1: 1112 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 1113 | engines: {node: '>=0.10.0'} 1114 | 1115 | optionator@0.9.4: 1116 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1117 | engines: {node: '>= 0.8.0'} 1118 | 1119 | p-limit@3.1.0: 1120 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1121 | engines: {node: '>=10'} 1122 | 1123 | p-locate@5.0.0: 1124 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1125 | engines: {node: '>=10'} 1126 | 1127 | package-json-from-dist@1.0.1: 1128 | resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} 1129 | 1130 | parent-module@1.0.1: 1131 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1132 | engines: {node: '>=6'} 1133 | 1134 | path-exists@4.0.0: 1135 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1136 | engines: {node: '>=8'} 1137 | 1138 | path-key@3.1.1: 1139 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1140 | engines: {node: '>=8'} 1141 | 1142 | path-scurry@1.11.1: 1143 | resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} 1144 | engines: {node: '>=16 || 14 >=14.18'} 1145 | 1146 | pathe@2.0.3: 1147 | resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} 1148 | 1149 | pathval@2.0.0: 1150 | resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} 1151 | engines: {node: '>= 14.16'} 1152 | 1153 | picocolors@1.1.1: 1154 | resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} 1155 | 1156 | picomatch@2.3.1: 1157 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1158 | engines: {node: '>=8.6'} 1159 | 1160 | picomatch@4.0.2: 1161 | resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} 1162 | engines: {node: '>=12'} 1163 | 1164 | pirates@4.0.6: 1165 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 1166 | engines: {node: '>= 6'} 1167 | 1168 | postcss-load-config@6.0.1: 1169 | resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} 1170 | engines: {node: '>= 18'} 1171 | peerDependencies: 1172 | jiti: '>=1.21.0' 1173 | postcss: '>=8.0.9' 1174 | tsx: ^4.8.1 1175 | yaml: ^2.4.2 1176 | peerDependenciesMeta: 1177 | jiti: 1178 | optional: true 1179 | postcss: 1180 | optional: true 1181 | tsx: 1182 | optional: true 1183 | yaml: 1184 | optional: true 1185 | 1186 | postcss@8.5.3: 1187 | resolution: {integrity: sha512-dle9A3yYxlBSrt8Fu+IpjGT8SY8hN0mlaA6GY8t0P5PjIOZemULz/E2Bnm/2dcUOena75OTNkHI76uZBNUUq3A==} 1188 | engines: {node: ^10 || ^12 || >=14} 1189 | 1190 | prelude-ls@1.2.1: 1191 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1192 | engines: {node: '>= 0.8.0'} 1193 | 1194 | prettier-plugin-packagejson@2.5.8: 1195 | resolution: {integrity: sha512-BaGOF63I0IJZoudxpuQe17naV93BRtK8b3byWktkJReKEMX9CC4qdGUzThPDVO/AUhPzlqDiAXbp18U6X8wLKA==} 1196 | peerDependencies: 1197 | prettier: '>= 1.16.0' 1198 | peerDependenciesMeta: 1199 | prettier: 1200 | optional: true 1201 | 1202 | prettier-plugin-sh@0.14.0: 1203 | resolution: {integrity: sha512-hfXulj5+zEl/ulrO5kMuuTPKmXvOg0bnLHY1hKFNN/N+/903iZbNp8NyZBTsgI8dtkSgFfAEIQq0IQTyP1ZVFQ==} 1204 | engines: {node: '>=16.0.0'} 1205 | peerDependencies: 1206 | prettier: ^3.0.3 1207 | 1208 | prettier@3.5.2: 1209 | resolution: {integrity: sha512-lc6npv5PH7hVqozBR7lkBNOGXV9vMwROAPlumdBkX0wTbbzPu/U1hk5yL8p2pt4Xoc+2mkT8t/sow2YrV/M5qg==} 1210 | engines: {node: '>=14'} 1211 | hasBin: true 1212 | 1213 | punycode@2.3.1: 1214 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 1215 | engines: {node: '>=6'} 1216 | 1217 | queue-microtask@1.2.3: 1218 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1219 | 1220 | readdirp@4.1.2: 1221 | resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==} 1222 | engines: {node: '>= 14.18.0'} 1223 | 1224 | resolve-from@4.0.0: 1225 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1226 | engines: {node: '>=4'} 1227 | 1228 | resolve-from@5.0.0: 1229 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1230 | engines: {node: '>=8'} 1231 | 1232 | reusify@1.1.0: 1233 | resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} 1234 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1235 | 1236 | rollup@4.34.8: 1237 | resolution: {integrity: sha512-489gTVMzAYdiZHFVA/ig/iYFllCcWFHMvUHI1rpFmkoUtRlQxqh6/yiNqnYibjMZ2b/+FUQwldG+aLsEt6bglQ==} 1238 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1239 | hasBin: true 1240 | 1241 | run-parallel@1.2.0: 1242 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1243 | 1244 | semver@7.7.1: 1245 | resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} 1246 | engines: {node: '>=10'} 1247 | hasBin: true 1248 | 1249 | sh-syntax@0.4.2: 1250 | resolution: {integrity: sha512-/l2UZ5fhGZLVZa16XQM9/Vq/hezGGbdHeVEA01uWjOL1+7Ek/gt6FquW0iKKws4a9AYPYvlz6RyVvjh3JxOteg==} 1251 | engines: {node: '>=16.0.0'} 1252 | 1253 | shebang-command@2.0.0: 1254 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1255 | engines: {node: '>=8'} 1256 | 1257 | shebang-regex@3.0.0: 1258 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1259 | engines: {node: '>=8'} 1260 | 1261 | siginfo@2.0.0: 1262 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 1263 | 1264 | signal-exit@4.1.0: 1265 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 1266 | engines: {node: '>=14'} 1267 | 1268 | sort-object-keys@1.1.3: 1269 | resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} 1270 | 1271 | sort-package-json@2.14.0: 1272 | resolution: {integrity: sha512-xBRdmMjFB/KW3l51mP31dhlaiFmqkHLfWTfZAno8prb/wbDxwBPWFpxB16GZbiPbYr3wL41H8Kx22QIDWRe8WQ==} 1273 | hasBin: true 1274 | 1275 | source-map-js@1.2.1: 1276 | resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} 1277 | engines: {node: '>=0.10.0'} 1278 | 1279 | source-map@0.8.0-beta.0: 1280 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 1281 | engines: {node: '>= 8'} 1282 | 1283 | stackback@0.0.2: 1284 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 1285 | 1286 | std-env@3.8.0: 1287 | resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==} 1288 | 1289 | string-width@4.2.3: 1290 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1291 | engines: {node: '>=8'} 1292 | 1293 | string-width@5.1.2: 1294 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 1295 | engines: {node: '>=12'} 1296 | 1297 | strip-ansi@6.0.1: 1298 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1299 | engines: {node: '>=8'} 1300 | 1301 | strip-ansi@7.1.0: 1302 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 1303 | engines: {node: '>=12'} 1304 | 1305 | strip-json-comments@3.1.1: 1306 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1307 | engines: {node: '>=8'} 1308 | 1309 | sucrase@3.35.0: 1310 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 1311 | engines: {node: '>=16 || 14 >=14.17'} 1312 | hasBin: true 1313 | 1314 | supports-color@7.2.0: 1315 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1316 | engines: {node: '>=8'} 1317 | 1318 | synckit@0.9.2: 1319 | resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} 1320 | engines: {node: ^14.18.0 || >=16.0.0} 1321 | 1322 | thenify-all@1.6.0: 1323 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 1324 | engines: {node: '>=0.8'} 1325 | 1326 | thenify@3.3.1: 1327 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 1328 | 1329 | tinybench@2.9.0: 1330 | resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==} 1331 | 1332 | tinyexec@0.3.2: 1333 | resolution: {integrity: sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA==} 1334 | 1335 | tinyglobby@0.2.12: 1336 | resolution: {integrity: sha512-qkf4trmKSIiMTs/E63cxH+ojC2unam7rJ0WrauAzpT3ECNTxGRMlaXxVbfxMUC/w0LaYk6jQ4y/nGR9uBO3tww==} 1337 | engines: {node: '>=12.0.0'} 1338 | 1339 | tinypool@1.0.2: 1340 | resolution: {integrity: sha512-al6n+QEANGFOMf/dmUMsuS5/r9B06uwlyNjZZql/zv8J7ybHCgoihBNORZCY2mzUuAnomQa2JdhyHKzZxPCrFA==} 1341 | engines: {node: ^18.0.0 || >=20.0.0} 1342 | 1343 | tinyrainbow@2.0.0: 1344 | resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==} 1345 | engines: {node: '>=14.0.0'} 1346 | 1347 | tinyspy@3.0.2: 1348 | resolution: {integrity: sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==} 1349 | engines: {node: '>=14.0.0'} 1350 | 1351 | to-regex-range@5.0.1: 1352 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1353 | engines: {node: '>=8.0'} 1354 | 1355 | tr46@1.0.1: 1356 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} 1357 | 1358 | tree-kill@1.2.2: 1359 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 1360 | hasBin: true 1361 | 1362 | ts-api-utils@2.0.1: 1363 | resolution: {integrity: sha512-dnlgjFSVetynI8nzgJ+qF62efpglpWRk8isUEWZGWlJYySCTD6aKvbUDu+zbPeDakk3bg5H4XpitHukgfL1m9w==} 1364 | engines: {node: '>=18.12'} 1365 | peerDependencies: 1366 | typescript: '>=4.8.4' 1367 | 1368 | ts-interface-checker@0.1.13: 1369 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 1370 | 1371 | tslib@2.8.1: 1372 | resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} 1373 | 1374 | tsup@8.3.6: 1375 | resolution: {integrity: sha512-XkVtlDV/58S9Ye0JxUUTcrQk4S+EqlOHKzg6Roa62rdjL1nGWNUstG0xgI4vanHdfIpjP448J8vlN0oK6XOJ5g==} 1376 | engines: {node: '>=18'} 1377 | hasBin: true 1378 | peerDependencies: 1379 | '@microsoft/api-extractor': ^7.36.0 1380 | '@swc/core': ^1 1381 | postcss: ^8.4.12 1382 | typescript: '>=4.5.0' 1383 | peerDependenciesMeta: 1384 | '@microsoft/api-extractor': 1385 | optional: true 1386 | '@swc/core': 1387 | optional: true 1388 | postcss: 1389 | optional: true 1390 | typescript: 1391 | optional: true 1392 | 1393 | type-check@0.4.0: 1394 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1395 | engines: {node: '>= 0.8.0'} 1396 | 1397 | typescript-eslint@8.25.0: 1398 | resolution: {integrity: sha512-TxRdQQLH4g7JkoFlYG3caW5v1S6kEkz8rqt80iQJZUYPq1zD1Ra7HfQBJJ88ABRaMvHAXnwRvRB4V+6sQ9xN5Q==} 1399 | engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} 1400 | peerDependencies: 1401 | eslint: ^8.57.0 || ^9.0.0 1402 | typescript: '>=4.8.4 <5.8.0' 1403 | 1404 | typescript@5.7.3: 1405 | resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} 1406 | engines: {node: '>=14.17'} 1407 | hasBin: true 1408 | 1409 | undici-types@6.20.0: 1410 | resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} 1411 | 1412 | uri-js@4.4.1: 1413 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1414 | 1415 | vite-node@3.0.7: 1416 | resolution: {integrity: sha512-2fX0QwX4GkkkpULXdT1Pf4q0tC1i1lFOyseKoonavXUNlQ77KpW2XqBGGNIm/J4Ows4KxgGJzDguYVPKwG/n5A==} 1417 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} 1418 | hasBin: true 1419 | 1420 | vite@6.2.0: 1421 | resolution: {integrity: sha512-7dPxoo+WsT/64rDcwoOjk76XHj+TqNTIvHKcuMQ1k4/SeHDaQt5GFAeLYzrimZrMpn/O6DtdI03WUjdxuPM0oQ==} 1422 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} 1423 | hasBin: true 1424 | peerDependencies: 1425 | '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 1426 | jiti: '>=1.21.0' 1427 | less: '*' 1428 | lightningcss: ^1.21.0 1429 | sass: '*' 1430 | sass-embedded: '*' 1431 | stylus: '*' 1432 | sugarss: '*' 1433 | terser: ^5.16.0 1434 | tsx: ^4.8.1 1435 | yaml: ^2.4.2 1436 | peerDependenciesMeta: 1437 | '@types/node': 1438 | optional: true 1439 | jiti: 1440 | optional: true 1441 | less: 1442 | optional: true 1443 | lightningcss: 1444 | optional: true 1445 | sass: 1446 | optional: true 1447 | sass-embedded: 1448 | optional: true 1449 | stylus: 1450 | optional: true 1451 | sugarss: 1452 | optional: true 1453 | terser: 1454 | optional: true 1455 | tsx: 1456 | optional: true 1457 | yaml: 1458 | optional: true 1459 | 1460 | vitest@3.0.7: 1461 | resolution: {integrity: sha512-IP7gPK3LS3Fvn44x30X1dM9vtawm0aesAa2yBIZ9vQf+qB69NXC5776+Qmcr7ohUXIQuLhk7xQR0aSUIDPqavg==} 1462 | engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0} 1463 | hasBin: true 1464 | peerDependencies: 1465 | '@edge-runtime/vm': '*' 1466 | '@types/debug': ^4.1.12 1467 | '@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0 1468 | '@vitest/browser': 3.0.7 1469 | '@vitest/ui': 3.0.7 1470 | happy-dom: '*' 1471 | jsdom: '*' 1472 | peerDependenciesMeta: 1473 | '@edge-runtime/vm': 1474 | optional: true 1475 | '@types/debug': 1476 | optional: true 1477 | '@types/node': 1478 | optional: true 1479 | '@vitest/browser': 1480 | optional: true 1481 | '@vitest/ui': 1482 | optional: true 1483 | happy-dom: 1484 | optional: true 1485 | jsdom: 1486 | optional: true 1487 | 1488 | webidl-conversions@4.0.2: 1489 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 1490 | 1491 | whatwg-url@7.1.0: 1492 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 1493 | 1494 | which@2.0.2: 1495 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1496 | engines: {node: '>= 8'} 1497 | hasBin: true 1498 | 1499 | why-is-node-running@2.3.0: 1500 | resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} 1501 | engines: {node: '>=8'} 1502 | hasBin: true 1503 | 1504 | word-wrap@1.2.5: 1505 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1506 | engines: {node: '>=0.10.0'} 1507 | 1508 | wrap-ansi@7.0.0: 1509 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 1510 | engines: {node: '>=10'} 1511 | 1512 | wrap-ansi@8.1.0: 1513 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 1514 | engines: {node: '>=12'} 1515 | 1516 | yocto-queue@0.1.0: 1517 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1518 | engines: {node: '>=10'} 1519 | 1520 | snapshots: 1521 | 1522 | '@babel/code-frame@7.26.2': 1523 | dependencies: 1524 | '@babel/helper-validator-identifier': 7.25.9 1525 | js-tokens: 4.0.0 1526 | picocolors: 1.1.1 1527 | 1528 | '@babel/generator@7.26.9': 1529 | dependencies: 1530 | '@babel/parser': 7.26.9 1531 | '@babel/types': 7.26.9 1532 | '@jridgewell/gen-mapping': 0.3.8 1533 | '@jridgewell/trace-mapping': 0.3.25 1534 | jsesc: 3.1.0 1535 | 1536 | '@babel/helper-string-parser@7.25.9': {} 1537 | 1538 | '@babel/helper-validator-identifier@7.25.9': {} 1539 | 1540 | '@babel/parser@7.26.9': 1541 | dependencies: 1542 | '@babel/types': 7.26.9 1543 | 1544 | '@babel/template@7.26.9': 1545 | dependencies: 1546 | '@babel/code-frame': 7.26.2 1547 | '@babel/parser': 7.26.9 1548 | '@babel/types': 7.26.9 1549 | 1550 | '@babel/traverse@7.26.9': 1551 | dependencies: 1552 | '@babel/code-frame': 7.26.2 1553 | '@babel/generator': 7.26.9 1554 | '@babel/parser': 7.26.9 1555 | '@babel/template': 7.26.9 1556 | '@babel/types': 7.26.9 1557 | debug: 4.4.0 1558 | globals: 11.12.0 1559 | transitivePeerDependencies: 1560 | - supports-color 1561 | 1562 | '@babel/types@7.26.9': 1563 | dependencies: 1564 | '@babel/helper-string-parser': 7.25.9 1565 | '@babel/helper-validator-identifier': 7.25.9 1566 | 1567 | '@esbuild/aix-ppc64@0.24.2': 1568 | optional: true 1569 | 1570 | '@esbuild/aix-ppc64@0.25.0': 1571 | optional: true 1572 | 1573 | '@esbuild/android-arm64@0.24.2': 1574 | optional: true 1575 | 1576 | '@esbuild/android-arm64@0.25.0': 1577 | optional: true 1578 | 1579 | '@esbuild/android-arm@0.24.2': 1580 | optional: true 1581 | 1582 | '@esbuild/android-arm@0.25.0': 1583 | optional: true 1584 | 1585 | '@esbuild/android-x64@0.24.2': 1586 | optional: true 1587 | 1588 | '@esbuild/android-x64@0.25.0': 1589 | optional: true 1590 | 1591 | '@esbuild/darwin-arm64@0.24.2': 1592 | optional: true 1593 | 1594 | '@esbuild/darwin-arm64@0.25.0': 1595 | optional: true 1596 | 1597 | '@esbuild/darwin-x64@0.24.2': 1598 | optional: true 1599 | 1600 | '@esbuild/darwin-x64@0.25.0': 1601 | optional: true 1602 | 1603 | '@esbuild/freebsd-arm64@0.24.2': 1604 | optional: true 1605 | 1606 | '@esbuild/freebsd-arm64@0.25.0': 1607 | optional: true 1608 | 1609 | '@esbuild/freebsd-x64@0.24.2': 1610 | optional: true 1611 | 1612 | '@esbuild/freebsd-x64@0.25.0': 1613 | optional: true 1614 | 1615 | '@esbuild/linux-arm64@0.24.2': 1616 | optional: true 1617 | 1618 | '@esbuild/linux-arm64@0.25.0': 1619 | optional: true 1620 | 1621 | '@esbuild/linux-arm@0.24.2': 1622 | optional: true 1623 | 1624 | '@esbuild/linux-arm@0.25.0': 1625 | optional: true 1626 | 1627 | '@esbuild/linux-ia32@0.24.2': 1628 | optional: true 1629 | 1630 | '@esbuild/linux-ia32@0.25.0': 1631 | optional: true 1632 | 1633 | '@esbuild/linux-loong64@0.24.2': 1634 | optional: true 1635 | 1636 | '@esbuild/linux-loong64@0.25.0': 1637 | optional: true 1638 | 1639 | '@esbuild/linux-mips64el@0.24.2': 1640 | optional: true 1641 | 1642 | '@esbuild/linux-mips64el@0.25.0': 1643 | optional: true 1644 | 1645 | '@esbuild/linux-ppc64@0.24.2': 1646 | optional: true 1647 | 1648 | '@esbuild/linux-ppc64@0.25.0': 1649 | optional: true 1650 | 1651 | '@esbuild/linux-riscv64@0.24.2': 1652 | optional: true 1653 | 1654 | '@esbuild/linux-riscv64@0.25.0': 1655 | optional: true 1656 | 1657 | '@esbuild/linux-s390x@0.24.2': 1658 | optional: true 1659 | 1660 | '@esbuild/linux-s390x@0.25.0': 1661 | optional: true 1662 | 1663 | '@esbuild/linux-x64@0.24.2': 1664 | optional: true 1665 | 1666 | '@esbuild/linux-x64@0.25.0': 1667 | optional: true 1668 | 1669 | '@esbuild/netbsd-arm64@0.24.2': 1670 | optional: true 1671 | 1672 | '@esbuild/netbsd-arm64@0.25.0': 1673 | optional: true 1674 | 1675 | '@esbuild/netbsd-x64@0.24.2': 1676 | optional: true 1677 | 1678 | '@esbuild/netbsd-x64@0.25.0': 1679 | optional: true 1680 | 1681 | '@esbuild/openbsd-arm64@0.24.2': 1682 | optional: true 1683 | 1684 | '@esbuild/openbsd-arm64@0.25.0': 1685 | optional: true 1686 | 1687 | '@esbuild/openbsd-x64@0.24.2': 1688 | optional: true 1689 | 1690 | '@esbuild/openbsd-x64@0.25.0': 1691 | optional: true 1692 | 1693 | '@esbuild/sunos-x64@0.24.2': 1694 | optional: true 1695 | 1696 | '@esbuild/sunos-x64@0.25.0': 1697 | optional: true 1698 | 1699 | '@esbuild/win32-arm64@0.24.2': 1700 | optional: true 1701 | 1702 | '@esbuild/win32-arm64@0.25.0': 1703 | optional: true 1704 | 1705 | '@esbuild/win32-ia32@0.24.2': 1706 | optional: true 1707 | 1708 | '@esbuild/win32-ia32@0.25.0': 1709 | optional: true 1710 | 1711 | '@esbuild/win32-x64@0.24.2': 1712 | optional: true 1713 | 1714 | '@esbuild/win32-x64@0.25.0': 1715 | optional: true 1716 | 1717 | '@eslint-community/eslint-utils@4.4.1(eslint@9.21.0)': 1718 | dependencies: 1719 | eslint: 9.21.0 1720 | eslint-visitor-keys: 3.4.3 1721 | 1722 | '@eslint-community/regexpp@4.12.1': {} 1723 | 1724 | '@eslint/config-array@0.19.2': 1725 | dependencies: 1726 | '@eslint/object-schema': 2.1.6 1727 | debug: 4.4.0 1728 | minimatch: 3.1.2 1729 | transitivePeerDependencies: 1730 | - supports-color 1731 | 1732 | '@eslint/core@0.12.0': 1733 | dependencies: 1734 | '@types/json-schema': 7.0.15 1735 | 1736 | '@eslint/eslintrc@3.3.0': 1737 | dependencies: 1738 | ajv: 6.12.6 1739 | debug: 4.4.0 1740 | espree: 10.3.0 1741 | globals: 14.0.0 1742 | ignore: 5.3.2 1743 | import-fresh: 3.3.1 1744 | js-yaml: 4.1.0 1745 | minimatch: 3.1.2 1746 | strip-json-comments: 3.1.1 1747 | transitivePeerDependencies: 1748 | - supports-color 1749 | 1750 | '@eslint/js@9.21.0': {} 1751 | 1752 | '@eslint/object-schema@2.1.6': {} 1753 | 1754 | '@eslint/plugin-kit@0.2.7': 1755 | dependencies: 1756 | '@eslint/core': 0.12.0 1757 | levn: 0.4.1 1758 | 1759 | '@humanfs/core@0.19.1': {} 1760 | 1761 | '@humanfs/node@0.16.6': 1762 | dependencies: 1763 | '@humanfs/core': 0.19.1 1764 | '@humanwhocodes/retry': 0.3.1 1765 | 1766 | '@humanwhocodes/module-importer@1.0.1': {} 1767 | 1768 | '@humanwhocodes/retry@0.3.1': {} 1769 | 1770 | '@humanwhocodes/retry@0.4.2': {} 1771 | 1772 | '@ianvs/prettier-plugin-sort-imports@4.4.1(prettier@3.5.2)': 1773 | dependencies: 1774 | '@babel/generator': 7.26.9 1775 | '@babel/parser': 7.26.9 1776 | '@babel/traverse': 7.26.9 1777 | '@babel/types': 7.26.9 1778 | prettier: 3.5.2 1779 | semver: 7.7.1 1780 | transitivePeerDependencies: 1781 | - supports-color 1782 | 1783 | '@isaacs/cliui@8.0.2': 1784 | dependencies: 1785 | string-width: 5.1.2 1786 | string-width-cjs: string-width@4.2.3 1787 | strip-ansi: 7.1.0 1788 | strip-ansi-cjs: strip-ansi@6.0.1 1789 | wrap-ansi: 8.1.0 1790 | wrap-ansi-cjs: wrap-ansi@7.0.0 1791 | 1792 | '@jridgewell/gen-mapping@0.3.8': 1793 | dependencies: 1794 | '@jridgewell/set-array': 1.2.1 1795 | '@jridgewell/sourcemap-codec': 1.5.0 1796 | '@jridgewell/trace-mapping': 0.3.25 1797 | 1798 | '@jridgewell/resolve-uri@3.1.2': {} 1799 | 1800 | '@jridgewell/set-array@1.2.1': {} 1801 | 1802 | '@jridgewell/sourcemap-codec@1.5.0': {} 1803 | 1804 | '@jridgewell/trace-mapping@0.3.25': 1805 | dependencies: 1806 | '@jridgewell/resolve-uri': 3.1.2 1807 | '@jridgewell/sourcemap-codec': 1.5.0 1808 | 1809 | '@msgpack/msgpack@3.1.0': {} 1810 | 1811 | '@nodelib/fs.scandir@2.1.5': 1812 | dependencies: 1813 | '@nodelib/fs.stat': 2.0.5 1814 | run-parallel: 1.2.0 1815 | 1816 | '@nodelib/fs.stat@2.0.5': {} 1817 | 1818 | '@nodelib/fs.walk@1.2.8': 1819 | dependencies: 1820 | '@nodelib/fs.scandir': 2.1.5 1821 | fastq: 1.19.0 1822 | 1823 | '@pkgjs/parseargs@0.11.0': 1824 | optional: true 1825 | 1826 | '@pkgr/core@0.1.1': {} 1827 | 1828 | '@rollup/rollup-android-arm-eabi@4.34.8': 1829 | optional: true 1830 | 1831 | '@rollup/rollup-android-arm64@4.34.8': 1832 | optional: true 1833 | 1834 | '@rollup/rollup-darwin-arm64@4.34.8': 1835 | optional: true 1836 | 1837 | '@rollup/rollup-darwin-x64@4.34.8': 1838 | optional: true 1839 | 1840 | '@rollup/rollup-freebsd-arm64@4.34.8': 1841 | optional: true 1842 | 1843 | '@rollup/rollup-freebsd-x64@4.34.8': 1844 | optional: true 1845 | 1846 | '@rollup/rollup-linux-arm-gnueabihf@4.34.8': 1847 | optional: true 1848 | 1849 | '@rollup/rollup-linux-arm-musleabihf@4.34.8': 1850 | optional: true 1851 | 1852 | '@rollup/rollup-linux-arm64-gnu@4.34.8': 1853 | optional: true 1854 | 1855 | '@rollup/rollup-linux-arm64-musl@4.34.8': 1856 | optional: true 1857 | 1858 | '@rollup/rollup-linux-loongarch64-gnu@4.34.8': 1859 | optional: true 1860 | 1861 | '@rollup/rollup-linux-powerpc64le-gnu@4.34.8': 1862 | optional: true 1863 | 1864 | '@rollup/rollup-linux-riscv64-gnu@4.34.8': 1865 | optional: true 1866 | 1867 | '@rollup/rollup-linux-s390x-gnu@4.34.8': 1868 | optional: true 1869 | 1870 | '@rollup/rollup-linux-x64-gnu@4.34.8': 1871 | optional: true 1872 | 1873 | '@rollup/rollup-linux-x64-musl@4.34.8': 1874 | optional: true 1875 | 1876 | '@rollup/rollup-win32-arm64-msvc@4.34.8': 1877 | optional: true 1878 | 1879 | '@rollup/rollup-win32-ia32-msvc@4.34.8': 1880 | optional: true 1881 | 1882 | '@rollup/rollup-win32-x64-msvc@4.34.8': 1883 | optional: true 1884 | 1885 | '@shahrad/eslint-config@1.0.0(typescript@5.7.3)': 1886 | dependencies: 1887 | '@eslint/js': 9.21.0 1888 | eslint: 9.21.0 1889 | typescript-eslint: 8.25.0(eslint@9.21.0)(typescript@5.7.3) 1890 | transitivePeerDependencies: 1891 | - jiti 1892 | - supports-color 1893 | - typescript 1894 | 1895 | '@shahrad/prettier-config@1.2.0(prettier@3.5.2)': 1896 | dependencies: 1897 | '@ianvs/prettier-plugin-sort-imports': 4.4.1(prettier@3.5.2) 1898 | prettier: 3.5.2 1899 | prettier-plugin-packagejson: 2.5.8(prettier@3.5.2) 1900 | prettier-plugin-sh: 0.14.0(prettier@3.5.2) 1901 | transitivePeerDependencies: 1902 | - '@vue/compiler-sfc' 1903 | - supports-color 1904 | 1905 | '@sindresorhus/tsconfig@7.0.0': {} 1906 | 1907 | '@types/estree@1.0.6': {} 1908 | 1909 | '@types/json-schema@7.0.15': {} 1910 | 1911 | '@types/node@22.13.5': 1912 | dependencies: 1913 | undici-types: 6.20.0 1914 | 1915 | '@typescript-eslint/eslint-plugin@8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0)(typescript@5.7.3))(eslint@9.21.0)(typescript@5.7.3)': 1916 | dependencies: 1917 | '@eslint-community/regexpp': 4.12.1 1918 | '@typescript-eslint/parser': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 1919 | '@typescript-eslint/scope-manager': 8.25.0 1920 | '@typescript-eslint/type-utils': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 1921 | '@typescript-eslint/utils': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 1922 | '@typescript-eslint/visitor-keys': 8.25.0 1923 | eslint: 9.21.0 1924 | graphemer: 1.4.0 1925 | ignore: 5.3.2 1926 | natural-compare: 1.4.0 1927 | ts-api-utils: 2.0.1(typescript@5.7.3) 1928 | typescript: 5.7.3 1929 | transitivePeerDependencies: 1930 | - supports-color 1931 | 1932 | '@typescript-eslint/parser@8.25.0(eslint@9.21.0)(typescript@5.7.3)': 1933 | dependencies: 1934 | '@typescript-eslint/scope-manager': 8.25.0 1935 | '@typescript-eslint/types': 8.25.0 1936 | '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) 1937 | '@typescript-eslint/visitor-keys': 8.25.0 1938 | debug: 4.4.0 1939 | eslint: 9.21.0 1940 | typescript: 5.7.3 1941 | transitivePeerDependencies: 1942 | - supports-color 1943 | 1944 | '@typescript-eslint/scope-manager@8.25.0': 1945 | dependencies: 1946 | '@typescript-eslint/types': 8.25.0 1947 | '@typescript-eslint/visitor-keys': 8.25.0 1948 | 1949 | '@typescript-eslint/type-utils@8.25.0(eslint@9.21.0)(typescript@5.7.3)': 1950 | dependencies: 1951 | '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) 1952 | '@typescript-eslint/utils': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 1953 | debug: 4.4.0 1954 | eslint: 9.21.0 1955 | ts-api-utils: 2.0.1(typescript@5.7.3) 1956 | typescript: 5.7.3 1957 | transitivePeerDependencies: 1958 | - supports-color 1959 | 1960 | '@typescript-eslint/types@8.25.0': {} 1961 | 1962 | '@typescript-eslint/typescript-estree@8.25.0(typescript@5.7.3)': 1963 | dependencies: 1964 | '@typescript-eslint/types': 8.25.0 1965 | '@typescript-eslint/visitor-keys': 8.25.0 1966 | debug: 4.4.0 1967 | fast-glob: 3.3.3 1968 | is-glob: 4.0.3 1969 | minimatch: 9.0.5 1970 | semver: 7.7.1 1971 | ts-api-utils: 2.0.1(typescript@5.7.3) 1972 | typescript: 5.7.3 1973 | transitivePeerDependencies: 1974 | - supports-color 1975 | 1976 | '@typescript-eslint/utils@8.25.0(eslint@9.21.0)(typescript@5.7.3)': 1977 | dependencies: 1978 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0) 1979 | '@typescript-eslint/scope-manager': 8.25.0 1980 | '@typescript-eslint/types': 8.25.0 1981 | '@typescript-eslint/typescript-estree': 8.25.0(typescript@5.7.3) 1982 | eslint: 9.21.0 1983 | typescript: 5.7.3 1984 | transitivePeerDependencies: 1985 | - supports-color 1986 | 1987 | '@typescript-eslint/visitor-keys@8.25.0': 1988 | dependencies: 1989 | '@typescript-eslint/types': 8.25.0 1990 | eslint-visitor-keys: 4.2.0 1991 | 1992 | '@vitest/expect@3.0.7': 1993 | dependencies: 1994 | '@vitest/spy': 3.0.7 1995 | '@vitest/utils': 3.0.7 1996 | chai: 5.2.0 1997 | tinyrainbow: 2.0.0 1998 | 1999 | '@vitest/mocker@3.0.7(vite@6.2.0(@types/node@22.13.5))': 2000 | dependencies: 2001 | '@vitest/spy': 3.0.7 2002 | estree-walker: 3.0.3 2003 | magic-string: 0.30.17 2004 | optionalDependencies: 2005 | vite: 6.2.0(@types/node@22.13.5) 2006 | 2007 | '@vitest/pretty-format@3.0.7': 2008 | dependencies: 2009 | tinyrainbow: 2.0.0 2010 | 2011 | '@vitest/runner@3.0.7': 2012 | dependencies: 2013 | '@vitest/utils': 3.0.7 2014 | pathe: 2.0.3 2015 | 2016 | '@vitest/snapshot@3.0.7': 2017 | dependencies: 2018 | '@vitest/pretty-format': 3.0.7 2019 | magic-string: 0.30.17 2020 | pathe: 2.0.3 2021 | 2022 | '@vitest/spy@3.0.7': 2023 | dependencies: 2024 | tinyspy: 3.0.2 2025 | 2026 | '@vitest/utils@3.0.7': 2027 | dependencies: 2028 | '@vitest/pretty-format': 3.0.7 2029 | loupe: 3.1.3 2030 | tinyrainbow: 2.0.0 2031 | 2032 | acorn-jsx@5.3.2(acorn@8.14.0): 2033 | dependencies: 2034 | acorn: 8.14.0 2035 | 2036 | acorn@8.14.0: {} 2037 | 2038 | ajv@6.12.6: 2039 | dependencies: 2040 | fast-deep-equal: 3.1.3 2041 | fast-json-stable-stringify: 2.1.0 2042 | json-schema-traverse: 0.4.1 2043 | uri-js: 4.4.1 2044 | 2045 | ansi-regex@5.0.1: {} 2046 | 2047 | ansi-regex@6.1.0: {} 2048 | 2049 | ansi-styles@4.3.0: 2050 | dependencies: 2051 | color-convert: 2.0.1 2052 | 2053 | ansi-styles@6.2.1: {} 2054 | 2055 | any-promise@1.3.0: {} 2056 | 2057 | argparse@2.0.1: {} 2058 | 2059 | assertion-error@2.0.1: {} 2060 | 2061 | balanced-match@1.0.2: {} 2062 | 2063 | brace-expansion@1.1.11: 2064 | dependencies: 2065 | balanced-match: 1.0.2 2066 | concat-map: 0.0.1 2067 | 2068 | brace-expansion@2.0.1: 2069 | dependencies: 2070 | balanced-match: 1.0.2 2071 | 2072 | braces@3.0.3: 2073 | dependencies: 2074 | fill-range: 7.1.1 2075 | 2076 | bundle-require@5.1.0(esbuild@0.24.2): 2077 | dependencies: 2078 | esbuild: 0.24.2 2079 | load-tsconfig: 0.2.5 2080 | 2081 | cac@6.7.14: {} 2082 | 2083 | callsites@3.1.0: {} 2084 | 2085 | chai@5.2.0: 2086 | dependencies: 2087 | assertion-error: 2.0.1 2088 | check-error: 2.1.1 2089 | deep-eql: 5.0.2 2090 | loupe: 3.1.3 2091 | pathval: 2.0.0 2092 | 2093 | chalk@4.1.2: 2094 | dependencies: 2095 | ansi-styles: 4.3.0 2096 | supports-color: 7.2.0 2097 | 2098 | check-error@2.1.1: {} 2099 | 2100 | chokidar@4.0.3: 2101 | dependencies: 2102 | readdirp: 4.1.2 2103 | 2104 | color-convert@2.0.1: 2105 | dependencies: 2106 | color-name: 1.1.4 2107 | 2108 | color-name@1.1.4: {} 2109 | 2110 | commander@4.1.1: {} 2111 | 2112 | concat-map@0.0.1: {} 2113 | 2114 | consola@3.4.0: {} 2115 | 2116 | cross-spawn@7.0.6: 2117 | dependencies: 2118 | path-key: 3.1.1 2119 | shebang-command: 2.0.0 2120 | which: 2.0.2 2121 | 2122 | debug@4.4.0: 2123 | dependencies: 2124 | ms: 2.1.3 2125 | 2126 | deep-eql@5.0.2: {} 2127 | 2128 | deep-is@0.1.4: {} 2129 | 2130 | detect-indent@7.0.1: {} 2131 | 2132 | detect-newline@4.0.1: {} 2133 | 2134 | eastasianwidth@0.2.0: {} 2135 | 2136 | emoji-regex@8.0.0: {} 2137 | 2138 | emoji-regex@9.2.2: {} 2139 | 2140 | es-module-lexer@1.6.0: {} 2141 | 2142 | esbuild@0.24.2: 2143 | optionalDependencies: 2144 | '@esbuild/aix-ppc64': 0.24.2 2145 | '@esbuild/android-arm': 0.24.2 2146 | '@esbuild/android-arm64': 0.24.2 2147 | '@esbuild/android-x64': 0.24.2 2148 | '@esbuild/darwin-arm64': 0.24.2 2149 | '@esbuild/darwin-x64': 0.24.2 2150 | '@esbuild/freebsd-arm64': 0.24.2 2151 | '@esbuild/freebsd-x64': 0.24.2 2152 | '@esbuild/linux-arm': 0.24.2 2153 | '@esbuild/linux-arm64': 0.24.2 2154 | '@esbuild/linux-ia32': 0.24.2 2155 | '@esbuild/linux-loong64': 0.24.2 2156 | '@esbuild/linux-mips64el': 0.24.2 2157 | '@esbuild/linux-ppc64': 0.24.2 2158 | '@esbuild/linux-riscv64': 0.24.2 2159 | '@esbuild/linux-s390x': 0.24.2 2160 | '@esbuild/linux-x64': 0.24.2 2161 | '@esbuild/netbsd-arm64': 0.24.2 2162 | '@esbuild/netbsd-x64': 0.24.2 2163 | '@esbuild/openbsd-arm64': 0.24.2 2164 | '@esbuild/openbsd-x64': 0.24.2 2165 | '@esbuild/sunos-x64': 0.24.2 2166 | '@esbuild/win32-arm64': 0.24.2 2167 | '@esbuild/win32-ia32': 0.24.2 2168 | '@esbuild/win32-x64': 0.24.2 2169 | 2170 | esbuild@0.25.0: 2171 | optionalDependencies: 2172 | '@esbuild/aix-ppc64': 0.25.0 2173 | '@esbuild/android-arm': 0.25.0 2174 | '@esbuild/android-arm64': 0.25.0 2175 | '@esbuild/android-x64': 0.25.0 2176 | '@esbuild/darwin-arm64': 0.25.0 2177 | '@esbuild/darwin-x64': 0.25.0 2178 | '@esbuild/freebsd-arm64': 0.25.0 2179 | '@esbuild/freebsd-x64': 0.25.0 2180 | '@esbuild/linux-arm': 0.25.0 2181 | '@esbuild/linux-arm64': 0.25.0 2182 | '@esbuild/linux-ia32': 0.25.0 2183 | '@esbuild/linux-loong64': 0.25.0 2184 | '@esbuild/linux-mips64el': 0.25.0 2185 | '@esbuild/linux-ppc64': 0.25.0 2186 | '@esbuild/linux-riscv64': 0.25.0 2187 | '@esbuild/linux-s390x': 0.25.0 2188 | '@esbuild/linux-x64': 0.25.0 2189 | '@esbuild/netbsd-arm64': 0.25.0 2190 | '@esbuild/netbsd-x64': 0.25.0 2191 | '@esbuild/openbsd-arm64': 0.25.0 2192 | '@esbuild/openbsd-x64': 0.25.0 2193 | '@esbuild/sunos-x64': 0.25.0 2194 | '@esbuild/win32-arm64': 0.25.0 2195 | '@esbuild/win32-ia32': 0.25.0 2196 | '@esbuild/win32-x64': 0.25.0 2197 | 2198 | escape-string-regexp@4.0.0: {} 2199 | 2200 | eslint-scope@8.2.0: 2201 | dependencies: 2202 | esrecurse: 4.3.0 2203 | estraverse: 5.3.0 2204 | 2205 | eslint-visitor-keys@3.4.3: {} 2206 | 2207 | eslint-visitor-keys@4.2.0: {} 2208 | 2209 | eslint@9.21.0: 2210 | dependencies: 2211 | '@eslint-community/eslint-utils': 4.4.1(eslint@9.21.0) 2212 | '@eslint-community/regexpp': 4.12.1 2213 | '@eslint/config-array': 0.19.2 2214 | '@eslint/core': 0.12.0 2215 | '@eslint/eslintrc': 3.3.0 2216 | '@eslint/js': 9.21.0 2217 | '@eslint/plugin-kit': 0.2.7 2218 | '@humanfs/node': 0.16.6 2219 | '@humanwhocodes/module-importer': 1.0.1 2220 | '@humanwhocodes/retry': 0.4.2 2221 | '@types/estree': 1.0.6 2222 | '@types/json-schema': 7.0.15 2223 | ajv: 6.12.6 2224 | chalk: 4.1.2 2225 | cross-spawn: 7.0.6 2226 | debug: 4.4.0 2227 | escape-string-regexp: 4.0.0 2228 | eslint-scope: 8.2.0 2229 | eslint-visitor-keys: 4.2.0 2230 | espree: 10.3.0 2231 | esquery: 1.6.0 2232 | esutils: 2.0.3 2233 | fast-deep-equal: 3.1.3 2234 | file-entry-cache: 8.0.0 2235 | find-up: 5.0.0 2236 | glob-parent: 6.0.2 2237 | ignore: 5.3.2 2238 | imurmurhash: 0.1.4 2239 | is-glob: 4.0.3 2240 | json-stable-stringify-without-jsonify: 1.0.1 2241 | lodash.merge: 4.6.2 2242 | minimatch: 3.1.2 2243 | natural-compare: 1.4.0 2244 | optionator: 0.9.4 2245 | transitivePeerDependencies: 2246 | - supports-color 2247 | 2248 | espree@10.3.0: 2249 | dependencies: 2250 | acorn: 8.14.0 2251 | acorn-jsx: 5.3.2(acorn@8.14.0) 2252 | eslint-visitor-keys: 4.2.0 2253 | 2254 | esquery@1.6.0: 2255 | dependencies: 2256 | estraverse: 5.3.0 2257 | 2258 | esrecurse@4.3.0: 2259 | dependencies: 2260 | estraverse: 5.3.0 2261 | 2262 | estraverse@5.3.0: {} 2263 | 2264 | estree-walker@3.0.3: 2265 | dependencies: 2266 | '@types/estree': 1.0.6 2267 | 2268 | esutils@2.0.3: {} 2269 | 2270 | expect-type@1.1.0: {} 2271 | 2272 | fast-deep-equal@3.1.3: {} 2273 | 2274 | fast-glob@3.3.3: 2275 | dependencies: 2276 | '@nodelib/fs.stat': 2.0.5 2277 | '@nodelib/fs.walk': 1.2.8 2278 | glob-parent: 5.1.2 2279 | merge2: 1.4.1 2280 | micromatch: 4.0.8 2281 | 2282 | fast-json-stable-stringify@2.1.0: {} 2283 | 2284 | fast-levenshtein@2.0.6: {} 2285 | 2286 | fastq@1.19.0: 2287 | dependencies: 2288 | reusify: 1.1.0 2289 | 2290 | fdir@6.4.3(picomatch@4.0.2): 2291 | optionalDependencies: 2292 | picomatch: 4.0.2 2293 | 2294 | file-entry-cache@8.0.0: 2295 | dependencies: 2296 | flat-cache: 4.0.1 2297 | 2298 | fill-range@7.1.1: 2299 | dependencies: 2300 | to-regex-range: 5.0.1 2301 | 2302 | find-up@5.0.0: 2303 | dependencies: 2304 | locate-path: 6.0.0 2305 | path-exists: 4.0.0 2306 | 2307 | flat-cache@4.0.1: 2308 | dependencies: 2309 | flatted: 3.3.3 2310 | keyv: 4.5.4 2311 | 2312 | flatted@3.3.3: {} 2313 | 2314 | foreground-child@3.3.1: 2315 | dependencies: 2316 | cross-spawn: 7.0.6 2317 | signal-exit: 4.1.0 2318 | 2319 | fsevents@2.3.3: 2320 | optional: true 2321 | 2322 | get-stdin@9.0.0: {} 2323 | 2324 | git-hooks-list@3.2.0: {} 2325 | 2326 | glob-parent@5.1.2: 2327 | dependencies: 2328 | is-glob: 4.0.3 2329 | 2330 | glob-parent@6.0.2: 2331 | dependencies: 2332 | is-glob: 4.0.3 2333 | 2334 | glob@10.4.5: 2335 | dependencies: 2336 | foreground-child: 3.3.1 2337 | jackspeak: 3.4.3 2338 | minimatch: 9.0.5 2339 | minipass: 7.1.2 2340 | package-json-from-dist: 1.0.1 2341 | path-scurry: 1.11.1 2342 | 2343 | globals@11.12.0: {} 2344 | 2345 | globals@14.0.0: {} 2346 | 2347 | globals@16.0.0: {} 2348 | 2349 | graphemer@1.4.0: {} 2350 | 2351 | has-flag@4.0.0: {} 2352 | 2353 | ignore@5.3.2: {} 2354 | 2355 | import-fresh@3.3.1: 2356 | dependencies: 2357 | parent-module: 1.0.1 2358 | resolve-from: 4.0.0 2359 | 2360 | imurmurhash@0.1.4: {} 2361 | 2362 | is-extglob@2.1.1: {} 2363 | 2364 | is-fullwidth-code-point@3.0.0: {} 2365 | 2366 | is-glob@4.0.3: 2367 | dependencies: 2368 | is-extglob: 2.1.1 2369 | 2370 | is-number@7.0.0: {} 2371 | 2372 | is-plain-obj@4.1.0: {} 2373 | 2374 | isexe@2.0.0: {} 2375 | 2376 | jackspeak@3.4.3: 2377 | dependencies: 2378 | '@isaacs/cliui': 8.0.2 2379 | optionalDependencies: 2380 | '@pkgjs/parseargs': 0.11.0 2381 | 2382 | joycon@3.1.1: {} 2383 | 2384 | js-tokens@4.0.0: {} 2385 | 2386 | js-yaml@4.1.0: 2387 | dependencies: 2388 | argparse: 2.0.1 2389 | 2390 | jsesc@3.1.0: {} 2391 | 2392 | json-buffer@3.0.1: {} 2393 | 2394 | json-schema-traverse@0.4.1: {} 2395 | 2396 | json-stable-stringify-without-jsonify@1.0.1: {} 2397 | 2398 | keyv@4.5.4: 2399 | dependencies: 2400 | json-buffer: 3.0.1 2401 | 2402 | levn@0.4.1: 2403 | dependencies: 2404 | prelude-ls: 1.2.1 2405 | type-check: 0.4.0 2406 | 2407 | lilconfig@3.1.3: {} 2408 | 2409 | lines-and-columns@1.2.4: {} 2410 | 2411 | load-tsconfig@0.2.5: {} 2412 | 2413 | locate-path@6.0.0: 2414 | dependencies: 2415 | p-locate: 5.0.0 2416 | 2417 | lodash.merge@4.6.2: {} 2418 | 2419 | lodash.sortby@4.7.0: {} 2420 | 2421 | loupe@3.1.3: {} 2422 | 2423 | lru-cache@10.4.3: {} 2424 | 2425 | magic-string@0.30.17: 2426 | dependencies: 2427 | '@jridgewell/sourcemap-codec': 1.5.0 2428 | 2429 | merge2@1.4.1: {} 2430 | 2431 | micromatch@4.0.8: 2432 | dependencies: 2433 | braces: 3.0.3 2434 | picomatch: 2.3.1 2435 | 2436 | minimatch@3.1.2: 2437 | dependencies: 2438 | brace-expansion: 1.1.11 2439 | 2440 | minimatch@9.0.5: 2441 | dependencies: 2442 | brace-expansion: 2.0.1 2443 | 2444 | minipass@7.1.2: {} 2445 | 2446 | ms@2.1.3: {} 2447 | 2448 | mvdan-sh@0.10.1: {} 2449 | 2450 | mz@2.7.0: 2451 | dependencies: 2452 | any-promise: 1.3.0 2453 | object-assign: 4.1.1 2454 | thenify-all: 1.6.0 2455 | 2456 | nanoid@3.3.8: {} 2457 | 2458 | natural-compare@1.4.0: {} 2459 | 2460 | object-assign@4.1.1: {} 2461 | 2462 | optionator@0.9.4: 2463 | dependencies: 2464 | deep-is: 0.1.4 2465 | fast-levenshtein: 2.0.6 2466 | levn: 0.4.1 2467 | prelude-ls: 1.2.1 2468 | type-check: 0.4.0 2469 | word-wrap: 1.2.5 2470 | 2471 | p-limit@3.1.0: 2472 | dependencies: 2473 | yocto-queue: 0.1.0 2474 | 2475 | p-locate@5.0.0: 2476 | dependencies: 2477 | p-limit: 3.1.0 2478 | 2479 | package-json-from-dist@1.0.1: {} 2480 | 2481 | parent-module@1.0.1: 2482 | dependencies: 2483 | callsites: 3.1.0 2484 | 2485 | path-exists@4.0.0: {} 2486 | 2487 | path-key@3.1.1: {} 2488 | 2489 | path-scurry@1.11.1: 2490 | dependencies: 2491 | lru-cache: 10.4.3 2492 | minipass: 7.1.2 2493 | 2494 | pathe@2.0.3: {} 2495 | 2496 | pathval@2.0.0: {} 2497 | 2498 | picocolors@1.1.1: {} 2499 | 2500 | picomatch@2.3.1: {} 2501 | 2502 | picomatch@4.0.2: {} 2503 | 2504 | pirates@4.0.6: {} 2505 | 2506 | postcss-load-config@6.0.1(postcss@8.5.3): 2507 | dependencies: 2508 | lilconfig: 3.1.3 2509 | optionalDependencies: 2510 | postcss: 8.5.3 2511 | 2512 | postcss@8.5.3: 2513 | dependencies: 2514 | nanoid: 3.3.8 2515 | picocolors: 1.1.1 2516 | source-map-js: 1.2.1 2517 | 2518 | prelude-ls@1.2.1: {} 2519 | 2520 | prettier-plugin-packagejson@2.5.8(prettier@3.5.2): 2521 | dependencies: 2522 | sort-package-json: 2.14.0 2523 | synckit: 0.9.2 2524 | optionalDependencies: 2525 | prettier: 3.5.2 2526 | 2527 | prettier-plugin-sh@0.14.0(prettier@3.5.2): 2528 | dependencies: 2529 | mvdan-sh: 0.10.1 2530 | prettier: 3.5.2 2531 | sh-syntax: 0.4.2 2532 | 2533 | prettier@3.5.2: {} 2534 | 2535 | punycode@2.3.1: {} 2536 | 2537 | queue-microtask@1.2.3: {} 2538 | 2539 | readdirp@4.1.2: {} 2540 | 2541 | resolve-from@4.0.0: {} 2542 | 2543 | resolve-from@5.0.0: {} 2544 | 2545 | reusify@1.1.0: {} 2546 | 2547 | rollup@4.34.8: 2548 | dependencies: 2549 | '@types/estree': 1.0.6 2550 | optionalDependencies: 2551 | '@rollup/rollup-android-arm-eabi': 4.34.8 2552 | '@rollup/rollup-android-arm64': 4.34.8 2553 | '@rollup/rollup-darwin-arm64': 4.34.8 2554 | '@rollup/rollup-darwin-x64': 4.34.8 2555 | '@rollup/rollup-freebsd-arm64': 4.34.8 2556 | '@rollup/rollup-freebsd-x64': 4.34.8 2557 | '@rollup/rollup-linux-arm-gnueabihf': 4.34.8 2558 | '@rollup/rollup-linux-arm-musleabihf': 4.34.8 2559 | '@rollup/rollup-linux-arm64-gnu': 4.34.8 2560 | '@rollup/rollup-linux-arm64-musl': 4.34.8 2561 | '@rollup/rollup-linux-loongarch64-gnu': 4.34.8 2562 | '@rollup/rollup-linux-powerpc64le-gnu': 4.34.8 2563 | '@rollup/rollup-linux-riscv64-gnu': 4.34.8 2564 | '@rollup/rollup-linux-s390x-gnu': 4.34.8 2565 | '@rollup/rollup-linux-x64-gnu': 4.34.8 2566 | '@rollup/rollup-linux-x64-musl': 4.34.8 2567 | '@rollup/rollup-win32-arm64-msvc': 4.34.8 2568 | '@rollup/rollup-win32-ia32-msvc': 4.34.8 2569 | '@rollup/rollup-win32-x64-msvc': 4.34.8 2570 | fsevents: 2.3.3 2571 | 2572 | run-parallel@1.2.0: 2573 | dependencies: 2574 | queue-microtask: 1.2.3 2575 | 2576 | semver@7.7.1: {} 2577 | 2578 | sh-syntax@0.4.2: 2579 | dependencies: 2580 | tslib: 2.8.1 2581 | 2582 | shebang-command@2.0.0: 2583 | dependencies: 2584 | shebang-regex: 3.0.0 2585 | 2586 | shebang-regex@3.0.0: {} 2587 | 2588 | siginfo@2.0.0: {} 2589 | 2590 | signal-exit@4.1.0: {} 2591 | 2592 | sort-object-keys@1.1.3: {} 2593 | 2594 | sort-package-json@2.14.0: 2595 | dependencies: 2596 | detect-indent: 7.0.1 2597 | detect-newline: 4.0.1 2598 | get-stdin: 9.0.0 2599 | git-hooks-list: 3.2.0 2600 | is-plain-obj: 4.1.0 2601 | semver: 7.7.1 2602 | sort-object-keys: 1.1.3 2603 | tinyglobby: 0.2.12 2604 | 2605 | source-map-js@1.2.1: {} 2606 | 2607 | source-map@0.8.0-beta.0: 2608 | dependencies: 2609 | whatwg-url: 7.1.0 2610 | 2611 | stackback@0.0.2: {} 2612 | 2613 | std-env@3.8.0: {} 2614 | 2615 | string-width@4.2.3: 2616 | dependencies: 2617 | emoji-regex: 8.0.0 2618 | is-fullwidth-code-point: 3.0.0 2619 | strip-ansi: 6.0.1 2620 | 2621 | string-width@5.1.2: 2622 | dependencies: 2623 | eastasianwidth: 0.2.0 2624 | emoji-regex: 9.2.2 2625 | strip-ansi: 7.1.0 2626 | 2627 | strip-ansi@6.0.1: 2628 | dependencies: 2629 | ansi-regex: 5.0.1 2630 | 2631 | strip-ansi@7.1.0: 2632 | dependencies: 2633 | ansi-regex: 6.1.0 2634 | 2635 | strip-json-comments@3.1.1: {} 2636 | 2637 | sucrase@3.35.0: 2638 | dependencies: 2639 | '@jridgewell/gen-mapping': 0.3.8 2640 | commander: 4.1.1 2641 | glob: 10.4.5 2642 | lines-and-columns: 1.2.4 2643 | mz: 2.7.0 2644 | pirates: 4.0.6 2645 | ts-interface-checker: 0.1.13 2646 | 2647 | supports-color@7.2.0: 2648 | dependencies: 2649 | has-flag: 4.0.0 2650 | 2651 | synckit@0.9.2: 2652 | dependencies: 2653 | '@pkgr/core': 0.1.1 2654 | tslib: 2.8.1 2655 | 2656 | thenify-all@1.6.0: 2657 | dependencies: 2658 | thenify: 3.3.1 2659 | 2660 | thenify@3.3.1: 2661 | dependencies: 2662 | any-promise: 1.3.0 2663 | 2664 | tinybench@2.9.0: {} 2665 | 2666 | tinyexec@0.3.2: {} 2667 | 2668 | tinyglobby@0.2.12: 2669 | dependencies: 2670 | fdir: 6.4.3(picomatch@4.0.2) 2671 | picomatch: 4.0.2 2672 | 2673 | tinypool@1.0.2: {} 2674 | 2675 | tinyrainbow@2.0.0: {} 2676 | 2677 | tinyspy@3.0.2: {} 2678 | 2679 | to-regex-range@5.0.1: 2680 | dependencies: 2681 | is-number: 7.0.0 2682 | 2683 | tr46@1.0.1: 2684 | dependencies: 2685 | punycode: 2.3.1 2686 | 2687 | tree-kill@1.2.2: {} 2688 | 2689 | ts-api-utils@2.0.1(typescript@5.7.3): 2690 | dependencies: 2691 | typescript: 5.7.3 2692 | 2693 | ts-interface-checker@0.1.13: {} 2694 | 2695 | tslib@2.8.1: {} 2696 | 2697 | tsup@8.3.6(postcss@8.5.3)(typescript@5.7.3): 2698 | dependencies: 2699 | bundle-require: 5.1.0(esbuild@0.24.2) 2700 | cac: 6.7.14 2701 | chokidar: 4.0.3 2702 | consola: 3.4.0 2703 | debug: 4.4.0 2704 | esbuild: 0.24.2 2705 | joycon: 3.1.1 2706 | picocolors: 1.1.1 2707 | postcss-load-config: 6.0.1(postcss@8.5.3) 2708 | resolve-from: 5.0.0 2709 | rollup: 4.34.8 2710 | source-map: 0.8.0-beta.0 2711 | sucrase: 3.35.0 2712 | tinyexec: 0.3.2 2713 | tinyglobby: 0.2.12 2714 | tree-kill: 1.2.2 2715 | optionalDependencies: 2716 | postcss: 8.5.3 2717 | typescript: 5.7.3 2718 | transitivePeerDependencies: 2719 | - jiti 2720 | - supports-color 2721 | - tsx 2722 | - yaml 2723 | 2724 | type-check@0.4.0: 2725 | dependencies: 2726 | prelude-ls: 1.2.1 2727 | 2728 | typescript-eslint@8.25.0(eslint@9.21.0)(typescript@5.7.3): 2729 | dependencies: 2730 | '@typescript-eslint/eslint-plugin': 8.25.0(@typescript-eslint/parser@8.25.0(eslint@9.21.0)(typescript@5.7.3))(eslint@9.21.0)(typescript@5.7.3) 2731 | '@typescript-eslint/parser': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 2732 | '@typescript-eslint/utils': 8.25.0(eslint@9.21.0)(typescript@5.7.3) 2733 | eslint: 9.21.0 2734 | typescript: 5.7.3 2735 | transitivePeerDependencies: 2736 | - supports-color 2737 | 2738 | typescript@5.7.3: {} 2739 | 2740 | undici-types@6.20.0: {} 2741 | 2742 | uri-js@4.4.1: 2743 | dependencies: 2744 | punycode: 2.3.1 2745 | 2746 | vite-node@3.0.7(@types/node@22.13.5): 2747 | dependencies: 2748 | cac: 6.7.14 2749 | debug: 4.4.0 2750 | es-module-lexer: 1.6.0 2751 | pathe: 2.0.3 2752 | vite: 6.2.0(@types/node@22.13.5) 2753 | transitivePeerDependencies: 2754 | - '@types/node' 2755 | - jiti 2756 | - less 2757 | - lightningcss 2758 | - sass 2759 | - sass-embedded 2760 | - stylus 2761 | - sugarss 2762 | - supports-color 2763 | - terser 2764 | - tsx 2765 | - yaml 2766 | 2767 | vite@6.2.0(@types/node@22.13.5): 2768 | dependencies: 2769 | esbuild: 0.25.0 2770 | postcss: 8.5.3 2771 | rollup: 4.34.8 2772 | optionalDependencies: 2773 | '@types/node': 22.13.5 2774 | fsevents: 2.3.3 2775 | 2776 | vitest@3.0.7(@types/node@22.13.5): 2777 | dependencies: 2778 | '@vitest/expect': 3.0.7 2779 | '@vitest/mocker': 3.0.7(vite@6.2.0(@types/node@22.13.5)) 2780 | '@vitest/pretty-format': 3.0.7 2781 | '@vitest/runner': 3.0.7 2782 | '@vitest/snapshot': 3.0.7 2783 | '@vitest/spy': 3.0.7 2784 | '@vitest/utils': 3.0.7 2785 | chai: 5.2.0 2786 | debug: 4.4.0 2787 | expect-type: 1.1.0 2788 | magic-string: 0.30.17 2789 | pathe: 2.0.3 2790 | std-env: 3.8.0 2791 | tinybench: 2.9.0 2792 | tinyexec: 0.3.2 2793 | tinypool: 1.0.2 2794 | tinyrainbow: 2.0.0 2795 | vite: 6.2.0(@types/node@22.13.5) 2796 | vite-node: 3.0.7(@types/node@22.13.5) 2797 | why-is-node-running: 2.3.0 2798 | optionalDependencies: 2799 | '@types/node': 22.13.5 2800 | transitivePeerDependencies: 2801 | - jiti 2802 | - less 2803 | - lightningcss 2804 | - msw 2805 | - sass 2806 | - sass-embedded 2807 | - stylus 2808 | - sugarss 2809 | - supports-color 2810 | - terser 2811 | - tsx 2812 | - yaml 2813 | 2814 | webidl-conversions@4.0.2: {} 2815 | 2816 | whatwg-url@7.1.0: 2817 | dependencies: 2818 | lodash.sortby: 4.7.0 2819 | tr46: 1.0.1 2820 | webidl-conversions: 4.0.2 2821 | 2822 | which@2.0.2: 2823 | dependencies: 2824 | isexe: 2.0.0 2825 | 2826 | why-is-node-running@2.3.0: 2827 | dependencies: 2828 | siginfo: 2.0.0 2829 | stackback: 0.0.2 2830 | 2831 | word-wrap@1.2.5: {} 2832 | 2833 | wrap-ansi@7.0.0: 2834 | dependencies: 2835 | ansi-styles: 4.3.0 2836 | string-width: 4.2.3 2837 | strip-ansi: 6.0.1 2838 | 2839 | wrap-ansi@8.1.0: 2840 | dependencies: 2841 | ansi-styles: 6.2.1 2842 | string-width: 5.1.2 2843 | strip-ansi: 7.1.0 2844 | 2845 | yocto-queue@0.1.0: {} 2846 | --------------------------------------------------------------------------------