├── .npmrc ├── .github ├── funding.yml └── workflows │ └── main.yml ├── src ├── index.ts ├── twitter-utils-error.ts ├── __snapshots__ │ └── twitter-utils.test.ts.snap ├── twitter-utils.test.ts └── twitter-utils.ts ├── .gitignore ├── .prettierignore ├── .editorconfig ├── tsup.config.ts ├── .prettierrc.cjs ├── tsconfig.json ├── license ├── package.json ├── readme.md └── pnpm-lock.yaml /.npmrc: -------------------------------------------------------------------------------- 1 | enable-pre-post-scripts=true 2 | -------------------------------------------------------------------------------- /.github/funding.yml: -------------------------------------------------------------------------------- 1 | github: [transitive-bullshit] 2 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | export * from './twitter-utils.js' 2 | export * from './twitter-utils-error.js' 3 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | dist 2 | node_modules 3 | .env 4 | *.log 5 | .idea 6 | .vscode 7 | .DS_Store 8 | .tsimp 9 | out -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | *.env 2 | *.log 3 | *.jsonl 4 | **/node_modules 5 | **/dist 6 | **/build 7 | **/dbschema 8 | **/public 9 | .next 10 | .tsimp -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 2 6 | tab_width = 2 7 | end_of_line = lf 8 | charset = utf-8 9 | trim_trailing_whitespace = true 10 | insert_final_newline = true 11 | -------------------------------------------------------------------------------- /tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsup' 2 | 3 | export default defineConfig([ 4 | { 5 | entry: ['src/index.ts'], 6 | outDir: 'dist', 7 | target: 'node16', 8 | platform: 'neutral', 9 | format: ['esm'], 10 | splitting: false, 11 | sourcemap: true, 12 | minify: false, 13 | shims: true, 14 | dts: true 15 | } 16 | ]) 17 | -------------------------------------------------------------------------------- /src/twitter-utils-error.ts: -------------------------------------------------------------------------------- 1 | export type TwitterUtilsErrorType = 'empty-tweet' | 'invalid-tweet' 2 | 3 | export class TwitterUtilsError extends Error { 4 | type: TwitterUtilsErrorType 5 | 6 | constructor( 7 | message: string, 8 | { 9 | type, 10 | ...opts 11 | }: ErrorOptions & { 12 | type: TwitterUtilsErrorType 13 | } 14 | ) { 15 | super(message, opts) 16 | 17 | this.type = type 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /.prettierrc.cjs: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [require('@trivago/prettier-plugin-sort-imports')], 3 | singleQuote: true, 4 | jsxSingleQuote: true, 5 | semi: false, 6 | useTabs: false, 7 | tabWidth: 2, 8 | bracketSpacing: true, 9 | bracketSameLine: false, 10 | arrowParens: 'always', 11 | trailingComma: 'none', 12 | importOrderParserPlugins: ['typescript'], 13 | importOrder: ['^node:.*', '', '^(@/(.*)$)', '^[./]'], 14 | importOrderSeparation: true, 15 | importOrderSortSpecifiers: true, 16 | importOrderGroupNamespaceSpecifiers: true 17 | } 18 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2020", 4 | "lib": ["ESNext"], 5 | "esModuleInterop": true, 6 | "skipLibCheck": true, 7 | "verbatimModuleSyntax": true, 8 | "allowJs": true, 9 | "resolveJsonModule": true, 10 | "moduleDetection": "force", 11 | "isolatedModules": true, 12 | "useDefineForClassFields": true, 13 | "experimentalDecorators": false, 14 | 15 | "strict": true, 16 | "noUncheckedIndexedAccess": true, 17 | "forceConsistentCasingInFileNames": true, 18 | 19 | "module": "NodeNext", 20 | "moduleResolution": "NodeNext", 21 | "outDir": "dist", 22 | "sourceMap": true 23 | }, 24 | "include": ["src"] 25 | } 26 | -------------------------------------------------------------------------------- /license: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2024 Travis Fischer 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 | -------------------------------------------------------------------------------- /src/__snapshots__/twitter-utils.test.ts.snap: -------------------------------------------------------------------------------- 1 | // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html 2 | 3 | exports[`sanitizeTweetText 1`] = ` 4 | "Lex Fridman and Guillaume Verdon discussed key topics on the Lex Fridman Podcast including: 5 | • AI's development as an evolutionary process akin to animal domestication. 6 | • The integration of quantum computing with deep learning via TensorFlow Quantum... https://example.com" 7 | `; 8 | 9 | exports[`sanitizeTweetText 2`] = `"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit..."`; 10 | 11 | exports[`sanitizeTweetText 3`] = `"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure... https://example.com/foo/bar"`; 12 | 13 | exports[`sanitizeTweetText 4`] = `"Lorem ipsum dolor sit amet, https://nala.ai/test consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo con... https://example.com/foo/bar"`; 14 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: CI 2 | 3 | on: [push, pull_request] 4 | 5 | jobs: 6 | test: 7 | name: Test Node.js ${{ matrix.node-version }} 8 | runs-on: ubuntu-latest 9 | strategy: 10 | fail-fast: true 11 | matrix: 12 | node-version: 13 | - 20 14 | - 19 15 | - 18 16 | - 16 17 | 18 | steps: 19 | - name: Checkout 20 | uses: actions/checkout@v4 21 | 22 | - name: Install Node.js 23 | uses: actions/setup-node@v4 24 | with: 25 | node-version: ${{ matrix.node-version }} 26 | 27 | - name: Install pnpm 28 | uses: pnpm/action-setup@v3 29 | id: pnpm-install 30 | with: 31 | version: 8 32 | run_install: false 33 | 34 | - name: Get pnpm store directory 35 | shell: bash 36 | run: | 37 | echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV 38 | 39 | - name: Setup pnpm cache 40 | uses: actions/cache@v4 41 | with: 42 | path: ${{ env.STORE_PATH }} 43 | key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} 44 | restore-keys: | 45 | ${{ runner.os }}-pnpm-store- 46 | 47 | - name: Install dependencies 48 | run: pnpm install --frozen-lockfile 49 | 50 | - name: Run test 51 | run: pnpm run test 52 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "twitter-utils", 3 | "version": "0.4.1", 4 | "description": "Twitter / tweet utils that I find myself reusing often.", 5 | "license": "MIT", 6 | "author": "Travis Fischer ", 7 | "repository": { 8 | "type": "git", 9 | "url": "transitive-bullshit/twitter-utils" 10 | }, 11 | "packageManager": "pnpm@8.15.3", 12 | "engines": { 13 | "node": ">=16" 14 | }, 15 | "type": "module", 16 | "source": "./src/index.ts", 17 | "types": "./dist/index.d.ts", 18 | "exports": { 19 | ".": { 20 | "types": "./dist/index.d.ts", 21 | "import": "./dist/index.js", 22 | "default": "./dist/index.js" 23 | } 24 | }, 25 | "files": [ 26 | "dist" 27 | ], 28 | "scripts": { 29 | "build": "tsup", 30 | "dev": "tsup --watch", 31 | "clean": "del dist", 32 | "prebuild": "run-s clean", 33 | "predev": "run-s clean", 34 | "pretest": "run-s build", 35 | "prepare": "husky install", 36 | "test": "run-s test:*", 37 | "test:format": "prettier --check \"**/*.{js,ts,tsx}\"", 38 | "test:lint": "eslint --cache --cache-location ./node_modules/.cache/eslint .", 39 | "test:typecheck": "tsc --noEmit", 40 | "test:unit": "vitest run" 41 | }, 42 | "dependencies": { 43 | "tiny-invariant": "^1.3.3", 44 | "twitter-text": "^3.1.0", 45 | "url-regex": "^5.0.0" 46 | }, 47 | "devDependencies": { 48 | "@dexaai/eslint-config": "^1.3.0", 49 | "@trivago/prettier-plugin-sort-imports": "^4.3.0", 50 | "@types/node": "^20.12.12", 51 | "@types/twitter-text": "^3.1.10", 52 | "del-cli": "^5.1.0", 53 | "eslint": "^8.56.0", 54 | "husky": "^9.0.11", 55 | "lint-staged": "^15.2.2", 56 | "npm-run-all": "^4.1.5", 57 | "prettier": "^2.8.8", 58 | "tsup": "^8.0.2", 59 | "tsx": "^4.10.3", 60 | "typescript": "^5.4.5", 61 | "vitest": "^1.6.0" 62 | }, 63 | "lint-staged": { 64 | "*.{ts,tsx}": [ 65 | "prettier --ignore-unknown --write" 66 | ] 67 | }, 68 | "eslintConfig": { 69 | "root": true, 70 | "extends": [ 71 | "@dexaai/eslint-config", 72 | "@dexaai/eslint-config/node" 73 | ], 74 | "rules": { 75 | "import/order": "off" 76 | } 77 | }, 78 | "keywords": [ 79 | "twitter", 80 | "tweet", 81 | "text", 82 | "truncate", 83 | "utils" 84 | ] 85 | } 86 | -------------------------------------------------------------------------------- /readme.md: -------------------------------------------------------------------------------- 1 |

2 | NPM 3 | Build Status 4 | MIT License 5 | Prettier Code Formatting 6 |

7 | 8 | # twitter-utils 9 | 10 | > Twitter / tweet utils that I find myself reusing often. 11 | 12 | ## Install 13 | 14 | ```bash 15 | npm install twitter-utils 16 | ``` 17 | 18 | ## Usage 19 | 20 | ```ts 21 | import { 22 | getTweetUrl, 23 | maxTwitterId, 24 | minTwitterId, 25 | sanitizeTweetText, 26 | stripUserMentions 27 | } from 'twitter-utils' 28 | 29 | // This can be a really long tweet with diff URLs and it will truncate the text 30 | // intelligently while preserving URLs 31 | const tweetText = sanitizeTweetText( 32 | 'Lorem ipsum dolor sit amet, https://dexa.ai consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum https://transitivebullsh.it/about' 33 | ) 34 | // tweetText = 'Lorem ipsum dolor sit amet, https://dexa.ai consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequa... https://transitivebullsh.it/about' 35 | 36 | const tweetUrl = getTweetUrl({ 37 | username: 'transitive_bs', 38 | id: '1643017583917174784' 39 | }) 40 | // tweetUrl = 'https://twitter.com/transitive_bs/status/1643017583917174784' 41 | 42 | const id0 = minTwitterId('1759532018956656921', '1733299213503787018') 43 | // id0 = '1733299213503787018' 44 | const id1 = maxTwitterId('1726313076444795273', undefined) 45 | // id1 = '1726313076444795273' 46 | 47 | const text = stripUserMentions('hey @transitive_bs ') 48 | // text = 'hey' 49 | ``` 50 | 51 | ## License 52 | 53 | MIT © [Travis Fischer](https://transitivebullsh.it) 54 | 55 | If you found this project interesting, please consider [sponsoring me](https://github.com/sponsors/transitive-bullshit) or following me on twitter twitter 56 | -------------------------------------------------------------------------------- /src/twitter-utils.test.ts: -------------------------------------------------------------------------------- 1 | import { assert, expect, test } from 'vitest' 2 | 3 | import { 4 | getTweetUrl, 5 | maxTwitterId, 6 | minTwitterId, 7 | sanitizeTweetText, 8 | tweetComparator, 9 | tweetIdComparator 10 | } from './twitter-utils.js' 11 | 12 | test('maxTwitterId', () => { 13 | expect(maxTwitterId('123', '456')).toBe('456') 14 | expect(maxTwitterId('1230', '999')).toBe('1230') 15 | expect(maxTwitterId('', '999')).toBe('999') 16 | expect(maxTwitterId('0', '1')).toBe('1') 17 | expect(maxTwitterId('123', '0')).toBe('123') 18 | expect(maxTwitterId('999', '')).toBe('999') 19 | expect(maxTwitterId('', undefined)).toBe(undefined) 20 | expect(maxTwitterId('948392', '948392')).toBe('948392') 21 | }) 22 | 23 | test('minTwitterId', () => { 24 | expect(minTwitterId('123', '456')).toBe('123') 25 | expect(minTwitterId('1230', '999')).toBe('999') 26 | expect(minTwitterId('', '999')).toBe('999') 27 | expect(minTwitterId('999', '')).toBe('999') 28 | expect(minTwitterId('0', '1')).toBe('0') 29 | expect(minTwitterId('123', '0')).toBe('0') 30 | expect(minTwitterId('', undefined)).toBe(undefined) 31 | expect(minTwitterId('948392', '948392')).toBe('948392') 32 | }) 33 | 34 | test('tweetIdComparator', () => { 35 | expect(tweetIdComparator('100', '0')).toBe(1) 36 | expect(tweetIdComparator('0', '100009898')).toBe(-1) 37 | expect(tweetIdComparator('100', '200')).toBe(-1) 38 | expect(tweetIdComparator('3000', '999')).toBe(1) 39 | expect(tweetIdComparator('3001', '3001')).toBe(0) 40 | expect(tweetIdComparator('0', '1')).toBe(-1) 41 | expect(tweetIdComparator('123', '0')).toBe(1) 42 | expect(tweetIdComparator('0', '0')).toBe(0) 43 | expect(tweetIdComparator(undefined, undefined)).toBe(0) 44 | }) 45 | 46 | test('tweetComparator', () => { 47 | expect(tweetComparator({ id: '100' }, { id: '200' })).toBe(-1) 48 | expect(tweetComparator({ id: '3000' }, { id: '999' })).toBe(1) 49 | expect(tweetComparator({ id: '3001' }, { id: '3001' })).toBe(0) 50 | 51 | assert.deepEqual( 52 | [ 53 | { id: '5' }, 54 | { id: '1000' }, 55 | { id: '9999' }, 56 | { id: '5' }, 57 | { id: '15' }, 58 | { id: '500' } 59 | ].sort(tweetComparator), 60 | [ 61 | { id: '5' }, 62 | { id: '5' }, 63 | { id: '15' }, 64 | { id: '500' }, 65 | { id: '1000' }, 66 | { id: '9999' } 67 | ] 68 | ) 69 | }) 70 | 71 | test('getTweetUrl', async () => { 72 | expect( 73 | getTweetUrl({ username: 'foo', id: '123' }), 74 | 'https://twitter.com/foo/status/123' 75 | ) 76 | 77 | expect( 78 | getTweetUrl({ username: 'foo-abc', id: '12345678' }), 79 | 'https://twitter.com/foo-abc/status/12345678' 80 | ) 81 | 82 | expect(getTweetUrl({ id: '123' })).toBe(undefined) 83 | expect(getTweetUrl({ username: 'foo', id: '' })).toBe(undefined) 84 | expect(getTweetUrl({ username: 'foo' })).toBe(undefined) 85 | expect(getTweetUrl({ username: '', id: '855' })).toBe(undefined) 86 | }) 87 | 88 | test('sanitizeTweetText', async () => { 89 | expect( 90 | sanitizeTweetText(`Lex Fridman and Guillaume Verdon discussed key topics on the Lex Fridman Podcast including: 91 | • AI's development as an evolutionary process akin to animal domestication. 92 | • The integration of quantum computing with deep learning via TensorFlow Quantum. 93 | • Continuous yada 94 | https://example.com`) 95 | ).toMatchSnapshot() 96 | 97 | expect(sanitizeTweetText('hello world')).toBe('hello world') 98 | expect(sanitizeTweetText('https://dexa.ai')).toBe('https://dexa.ai') 99 | expect( 100 | sanitizeTweetText( 101 | 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum' 102 | ) 103 | ).toMatchSnapshot() 104 | expect( 105 | sanitizeTweetText( 106 | 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum https://example.com/foo/bar' 107 | ) 108 | ).toMatchSnapshot() 109 | expect( 110 | sanitizeTweetText( 111 | 'Lorem ipsum dolor sit amet, https://nala.ai/test consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum https://example.com/foo/bar' 112 | ) 113 | ).toMatchSnapshot() 114 | }) 115 | 116 | test('sanitizeTweetText invalid', async () => { 117 | assert.throws(() => sanitizeTweetText('')) 118 | assert.throws(() => sanitizeTweetText(' ')) 119 | assert.throws(() => sanitizeTweetText('\n \n')) 120 | }) 121 | -------------------------------------------------------------------------------- /src/twitter-utils.ts: -------------------------------------------------------------------------------- 1 | import assert from 'tiny-invariant' 2 | import twitterText from 'twitter-text' 3 | import urlRegex from 'url-regex' 4 | 5 | import { TwitterUtilsError } from './twitter-utils-error.js' 6 | 7 | export const rUrl = urlRegex() 8 | 9 | /** 10 | * Returns the larger of two Twitter IDs, which is used in several places to 11 | * keep track of the most recent tweet we've seen or processed. 12 | */ 13 | export function maxTwitterId( 14 | tweetIdA?: string, 15 | tweetIdB?: string 16 | ): string | undefined { 17 | if (!tweetIdA && !tweetIdB) { 18 | return undefined 19 | } 20 | 21 | if (!tweetIdA) { 22 | return tweetIdB 23 | } 24 | 25 | if (!tweetIdB) { 26 | return tweetIdA 27 | } 28 | 29 | if (tweetIdA.length < tweetIdB.length) { 30 | return tweetIdB 31 | } else if (tweetIdA.length > tweetIdB.length) { 32 | return tweetIdA 33 | } 34 | 35 | if (tweetIdA < tweetIdB) { 36 | return tweetIdB 37 | } 38 | 39 | return tweetIdA 40 | } 41 | 42 | /** 43 | * Returns the smaller of two Twitter IDs, which is used in several places to 44 | * keep track of the least recent tweet we've seen or processed. 45 | */ 46 | export function minTwitterId( 47 | tweetIdA?: string, 48 | tweetIdB?: string 49 | ): string | undefined { 50 | if (!tweetIdA && !tweetIdB) { 51 | return undefined 52 | } 53 | 54 | if (!tweetIdA) { 55 | return tweetIdB 56 | } 57 | 58 | if (!tweetIdB) { 59 | return tweetIdA 60 | } 61 | 62 | if (tweetIdA.length < tweetIdB.length) { 63 | return tweetIdA 64 | } else if (tweetIdA.length > tweetIdB.length) { 65 | return tweetIdB 66 | } 67 | 68 | if (tweetIdA < tweetIdB) { 69 | return tweetIdA 70 | } 71 | 72 | return tweetIdB 73 | } 74 | 75 | /** 76 | * JS comparator function for comparing two Tweet IDs. 77 | */ 78 | export function tweetIdComparator(a?: string, b?: string): number { 79 | if (a === b) { 80 | return 0 81 | } 82 | 83 | const max = maxTwitterId(a, b) 84 | if (max === a) { 85 | return 1 86 | } else { 87 | return -1 88 | } 89 | } 90 | 91 | /** 92 | * JS comparator function for comparing two tweet-like objects. 93 | */ 94 | export function tweetComparator( 95 | tweetA: { id?: string }, 96 | tweetB: { id?: string } 97 | ): number { 98 | const a = tweetA.id 99 | const b = tweetB.id 100 | return tweetIdComparator(a, b) 101 | } 102 | 103 | export function getTweetUrl({ 104 | username, 105 | id 106 | }: { 107 | username?: string 108 | id?: string 109 | }): string | undefined { 110 | if (username && id) { 111 | return `https://twitter.com/${username}/status/${id}` 112 | } 113 | } 114 | 115 | /** 116 | * Takes in tweet body plaintext and returns a sanitized version of it that 117 | * conforms to Twitter's tweet character limits and other restrictions. 118 | */ 119 | export function sanitizeTweetText( 120 | text: string, 121 | { 122 | label = '', 123 | maxTweetLength = 275 124 | }: { label?: string; maxTweetLength?: number } = {} 125 | ): string { 126 | text = text.trim() 127 | 128 | if (!twitterText.isInvalidTweet(text)) { 129 | return text 130 | } 131 | 132 | if (!text) { 133 | throw new TwitterUtilsError(`Empty tweet body: ${label}`, { 134 | type: 'empty-tweet' 135 | }) 136 | } 137 | 138 | const twitterUrlCharacterCount = 23 139 | 140 | // Temporarily remove URLs so we can properly truncate the text 141 | const urlsWithIndices = twitterText.extractUrlsWithIndices(text) 142 | for (let i = urlsWithIndices.length; i--; ) { 143 | const { indices } = urlsWithIndices[i]! 144 | text = text.slice(0, indices[0]) + text.slice(indices[1]) 145 | } 146 | 147 | const maxTweetLengthSansUrls = Math.max( 148 | 3, 149 | maxTweetLength - 1 - twitterUrlCharacterCount * urlsWithIndices.length 150 | ) 151 | 152 | // Truncate text to fit within the max tweet length 153 | text = text.slice(0, maxTweetLengthSansUrls - 3).trim() + '... ' 154 | 155 | const textWithoutUrls = 156 | text.slice(0, maxTweetLengthSansUrls - 3).trim() + '... ' 157 | 158 | // Re-add urls 159 | for (let i = urlsWithIndices.length; i--; ) { 160 | const { url, indices } = urlsWithIndices[i]! 161 | const suffixOffset = Math.max(indices[1] - url.length, 0) 162 | const suffix = 163 | suffixOffset < maxTweetLengthSansUrls ? text.slice(suffixOffset) : '' 164 | 165 | // console.log('1', text, { 166 | // url, 167 | // indices, 168 | // maxTweetLengthSansUrls, 169 | // suffixOffset, 170 | // suffix 171 | // }) 172 | 173 | text = text.slice(0, indices[0]) + url + suffix 174 | } 175 | 176 | text = text.trim() 177 | // console.log('\n\n' + text + '\n\n') 178 | 179 | if (!twitterText.isInvalidTweet(text)) { 180 | return text 181 | } 182 | 183 | // TODO: We've already intelligently truncated; now naively truncate, though 184 | // if our logic above is correct, this should never happen in theory... 185 | const parsedTweet = twitterText.parseTweet(text) 186 | assert(!parsedTweet.valid) 187 | 188 | text = textWithoutUrls 189 | if (!twitterText.isInvalidTweet(text)) { 190 | return text 191 | } 192 | 193 | // Something is wrong with this tweet that twitter's validation lib really 194 | // doesn't like; bail 195 | throw new TwitterUtilsError(`Invalid tweet text ${label}: ${text}`, { 196 | type: 'invalid-tweet' 197 | }) 198 | } 199 | 200 | export function stripUserMentions(text: string) { 201 | return text.replaceAll(/\b@([a-zA-Z0-9_]+\b)/g, '$1').trim() 202 | } 203 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | tiny-invariant: 9 | specifier: ^1.3.3 10 | version: 1.3.3 11 | twitter-text: 12 | specifier: ^3.1.0 13 | version: 3.1.0 14 | url-regex: 15 | specifier: ^5.0.0 16 | version: 5.0.0 17 | 18 | devDependencies: 19 | '@dexaai/eslint-config': 20 | specifier: ^1.3.0 21 | version: 1.3.0(eslint@8.56.0)(typescript@5.4.5) 22 | '@trivago/prettier-plugin-sort-imports': 23 | specifier: ^4.3.0 24 | version: 4.3.0(prettier@2.8.8) 25 | '@types/node': 26 | specifier: ^20.12.12 27 | version: 20.12.12 28 | '@types/twitter-text': 29 | specifier: ^3.1.10 30 | version: 3.1.10 31 | del-cli: 32 | specifier: ^5.1.0 33 | version: 5.1.0 34 | eslint: 35 | specifier: ^8.56.0 36 | version: 8.56.0 37 | husky: 38 | specifier: ^9.0.11 39 | version: 9.0.11 40 | lint-staged: 41 | specifier: ^15.2.2 42 | version: 15.2.2 43 | npm-run-all: 44 | specifier: ^4.1.5 45 | version: 4.1.5 46 | prettier: 47 | specifier: ^2.8.8 48 | version: 2.8.8 49 | tsup: 50 | specifier: ^8.0.2 51 | version: 8.0.2(typescript@5.4.5) 52 | tsx: 53 | specifier: ^4.10.3 54 | version: 4.10.3 55 | typescript: 56 | specifier: ^5.4.5 57 | version: 5.4.5 58 | vitest: 59 | specifier: ^1.6.0 60 | version: 1.6.0(@types/node@20.12.12) 61 | 62 | packages: 63 | 64 | /@aashutoshrathi/word-wrap@1.2.6: 65 | resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==} 66 | engines: {node: '>=0.10.0'} 67 | dev: true 68 | 69 | /@babel/code-frame@7.23.5: 70 | resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} 71 | engines: {node: '>=6.9.0'} 72 | dependencies: 73 | '@babel/highlight': 7.23.4 74 | chalk: 2.4.2 75 | dev: true 76 | 77 | /@babel/generator@7.17.7: 78 | resolution: {integrity: sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w==} 79 | engines: {node: '>=6.9.0'} 80 | dependencies: 81 | '@babel/types': 7.17.0 82 | jsesc: 2.5.2 83 | source-map: 0.5.7 84 | dev: true 85 | 86 | /@babel/generator@7.23.6: 87 | resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} 88 | engines: {node: '>=6.9.0'} 89 | dependencies: 90 | '@babel/types': 7.23.9 91 | '@jridgewell/gen-mapping': 0.3.3 92 | '@jridgewell/trace-mapping': 0.3.22 93 | jsesc: 2.5.2 94 | dev: true 95 | 96 | /@babel/helper-environment-visitor@7.22.20: 97 | resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} 98 | engines: {node: '>=6.9.0'} 99 | dev: true 100 | 101 | /@babel/helper-function-name@7.23.0: 102 | resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} 103 | engines: {node: '>=6.9.0'} 104 | dependencies: 105 | '@babel/template': 7.23.9 106 | '@babel/types': 7.23.9 107 | dev: true 108 | 109 | /@babel/helper-hoist-variables@7.22.5: 110 | resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} 111 | engines: {node: '>=6.9.0'} 112 | dependencies: 113 | '@babel/types': 7.23.9 114 | dev: true 115 | 116 | /@babel/helper-split-export-declaration@7.22.6: 117 | resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} 118 | engines: {node: '>=6.9.0'} 119 | dependencies: 120 | '@babel/types': 7.23.9 121 | dev: true 122 | 123 | /@babel/helper-string-parser@7.23.4: 124 | resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} 125 | engines: {node: '>=6.9.0'} 126 | dev: true 127 | 128 | /@babel/helper-validator-identifier@7.22.20: 129 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} 130 | engines: {node: '>=6.9.0'} 131 | dev: true 132 | 133 | /@babel/highlight@7.23.4: 134 | resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} 135 | engines: {node: '>=6.9.0'} 136 | dependencies: 137 | '@babel/helper-validator-identifier': 7.22.20 138 | chalk: 2.4.2 139 | js-tokens: 4.0.0 140 | dev: true 141 | 142 | /@babel/parser@7.23.9: 143 | resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==} 144 | engines: {node: '>=6.0.0'} 145 | hasBin: true 146 | dependencies: 147 | '@babel/types': 7.17.0 148 | dev: true 149 | 150 | /@babel/runtime@7.23.9: 151 | resolution: {integrity: sha512-0CX6F+BI2s9dkUqr08KFrAIZgNFj75rdBU/DjCyYLIaV/quFjkk6T+EJ2LkZHyZTbEV4L5p97mNkUsHl2wLFAw==} 152 | engines: {node: '>=6.9.0'} 153 | dependencies: 154 | regenerator-runtime: 0.14.1 155 | dev: false 156 | 157 | /@babel/runtime@7.24.5: 158 | resolution: {integrity: sha512-Nms86NXrsaeU9vbBJKni6gXiEXZ4CVpYVzEjDH9Sb8vmZ3UljyA1GSOJl/6LGPO8EHLuSF9H+IxNXHPX8QHJ4g==} 159 | engines: {node: '>=6.9.0'} 160 | dependencies: 161 | regenerator-runtime: 0.14.1 162 | dev: true 163 | 164 | /@babel/template@7.23.9: 165 | resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==} 166 | engines: {node: '>=6.9.0'} 167 | dependencies: 168 | '@babel/code-frame': 7.23.5 169 | '@babel/parser': 7.23.9 170 | '@babel/types': 7.23.9 171 | dev: true 172 | 173 | /@babel/traverse@7.23.2: 174 | resolution: {integrity: sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==} 175 | engines: {node: '>=6.9.0'} 176 | dependencies: 177 | '@babel/code-frame': 7.23.5 178 | '@babel/generator': 7.23.6 179 | '@babel/helper-environment-visitor': 7.22.20 180 | '@babel/helper-function-name': 7.23.0 181 | '@babel/helper-hoist-variables': 7.22.5 182 | '@babel/helper-split-export-declaration': 7.22.6 183 | '@babel/parser': 7.23.9 184 | '@babel/types': 7.23.9 185 | debug: 4.3.4 186 | globals: 11.12.0 187 | transitivePeerDependencies: 188 | - supports-color 189 | dev: true 190 | 191 | /@babel/types@7.17.0: 192 | resolution: {integrity: sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw==} 193 | engines: {node: '>=6.9.0'} 194 | dependencies: 195 | '@babel/helper-validator-identifier': 7.22.20 196 | to-fast-properties: 2.0.0 197 | dev: true 198 | 199 | /@babel/types@7.23.9: 200 | resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==} 201 | engines: {node: '>=6.9.0'} 202 | dependencies: 203 | '@babel/helper-string-parser': 7.23.4 204 | '@babel/helper-validator-identifier': 7.22.20 205 | to-fast-properties: 2.0.0 206 | dev: true 207 | 208 | /@dexaai/eslint-config@1.3.0(eslint@8.56.0)(typescript@5.4.5): 209 | resolution: {integrity: sha512-Z5qkTRvkix3f85BwyEwOhsChAVmjVWY1F02DLwOe4fEwoV85zx7OI+SWzaXQZect8PFVOT2SqjjCIW9iFPeKtQ==} 210 | engines: {node: '>=18.0.0'} 211 | peerDependencies: 212 | eslint: ^8.0.0 213 | typescript: ^5.0.0 214 | dependencies: 215 | '@rushstack/eslint-patch': 1.10.2 216 | '@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.56.0)(typescript@5.4.5) 217 | '@typescript-eslint/parser': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 218 | '@typescript-eslint/utils': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 219 | eslint: 8.56.0 220 | eslint-config-prettier: 9.1.0(eslint@8.56.0) 221 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) 222 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) 223 | eslint-plugin-jest: 27.9.0(@typescript-eslint/eslint-plugin@7.9.0)(eslint@8.56.0)(typescript@5.4.5) 224 | eslint-plugin-jest-dom: 5.4.0(eslint@8.56.0) 225 | eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0) 226 | eslint-plugin-react: 7.34.1(eslint@8.56.0) 227 | eslint-plugin-react-hooks: 4.6.2(eslint@8.56.0) 228 | eslint-plugin-simple-import-sort: 12.1.0(eslint@8.56.0) 229 | typescript: 5.4.5 230 | transitivePeerDependencies: 231 | - '@testing-library/dom' 232 | - eslint-import-resolver-node 233 | - eslint-import-resolver-webpack 234 | - jest 235 | - supports-color 236 | dev: true 237 | 238 | /@esbuild/aix-ppc64@0.19.12: 239 | resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} 240 | engines: {node: '>=12'} 241 | cpu: [ppc64] 242 | os: [aix] 243 | requiresBuild: true 244 | dev: true 245 | optional: true 246 | 247 | /@esbuild/aix-ppc64@0.20.2: 248 | resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} 249 | engines: {node: '>=12'} 250 | cpu: [ppc64] 251 | os: [aix] 252 | requiresBuild: true 253 | dev: true 254 | optional: true 255 | 256 | /@esbuild/android-arm64@0.19.12: 257 | resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} 258 | engines: {node: '>=12'} 259 | cpu: [arm64] 260 | os: [android] 261 | requiresBuild: true 262 | dev: true 263 | optional: true 264 | 265 | /@esbuild/android-arm64@0.20.2: 266 | resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} 267 | engines: {node: '>=12'} 268 | cpu: [arm64] 269 | os: [android] 270 | requiresBuild: true 271 | dev: true 272 | optional: true 273 | 274 | /@esbuild/android-arm@0.19.12: 275 | resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} 276 | engines: {node: '>=12'} 277 | cpu: [arm] 278 | os: [android] 279 | requiresBuild: true 280 | dev: true 281 | optional: true 282 | 283 | /@esbuild/android-arm@0.20.2: 284 | resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} 285 | engines: {node: '>=12'} 286 | cpu: [arm] 287 | os: [android] 288 | requiresBuild: true 289 | dev: true 290 | optional: true 291 | 292 | /@esbuild/android-x64@0.19.12: 293 | resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} 294 | engines: {node: '>=12'} 295 | cpu: [x64] 296 | os: [android] 297 | requiresBuild: true 298 | dev: true 299 | optional: true 300 | 301 | /@esbuild/android-x64@0.20.2: 302 | resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} 303 | engines: {node: '>=12'} 304 | cpu: [x64] 305 | os: [android] 306 | requiresBuild: true 307 | dev: true 308 | optional: true 309 | 310 | /@esbuild/darwin-arm64@0.19.12: 311 | resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} 312 | engines: {node: '>=12'} 313 | cpu: [arm64] 314 | os: [darwin] 315 | requiresBuild: true 316 | dev: true 317 | optional: true 318 | 319 | /@esbuild/darwin-arm64@0.20.2: 320 | resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} 321 | engines: {node: '>=12'} 322 | cpu: [arm64] 323 | os: [darwin] 324 | requiresBuild: true 325 | dev: true 326 | optional: true 327 | 328 | /@esbuild/darwin-x64@0.19.12: 329 | resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} 330 | engines: {node: '>=12'} 331 | cpu: [x64] 332 | os: [darwin] 333 | requiresBuild: true 334 | dev: true 335 | optional: true 336 | 337 | /@esbuild/darwin-x64@0.20.2: 338 | resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} 339 | engines: {node: '>=12'} 340 | cpu: [x64] 341 | os: [darwin] 342 | requiresBuild: true 343 | dev: true 344 | optional: true 345 | 346 | /@esbuild/freebsd-arm64@0.19.12: 347 | resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} 348 | engines: {node: '>=12'} 349 | cpu: [arm64] 350 | os: [freebsd] 351 | requiresBuild: true 352 | dev: true 353 | optional: true 354 | 355 | /@esbuild/freebsd-arm64@0.20.2: 356 | resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} 357 | engines: {node: '>=12'} 358 | cpu: [arm64] 359 | os: [freebsd] 360 | requiresBuild: true 361 | dev: true 362 | optional: true 363 | 364 | /@esbuild/freebsd-x64@0.19.12: 365 | resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} 366 | engines: {node: '>=12'} 367 | cpu: [x64] 368 | os: [freebsd] 369 | requiresBuild: true 370 | dev: true 371 | optional: true 372 | 373 | /@esbuild/freebsd-x64@0.20.2: 374 | resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} 375 | engines: {node: '>=12'} 376 | cpu: [x64] 377 | os: [freebsd] 378 | requiresBuild: true 379 | dev: true 380 | optional: true 381 | 382 | /@esbuild/linux-arm64@0.19.12: 383 | resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} 384 | engines: {node: '>=12'} 385 | cpu: [arm64] 386 | os: [linux] 387 | requiresBuild: true 388 | dev: true 389 | optional: true 390 | 391 | /@esbuild/linux-arm64@0.20.2: 392 | resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} 393 | engines: {node: '>=12'} 394 | cpu: [arm64] 395 | os: [linux] 396 | requiresBuild: true 397 | dev: true 398 | optional: true 399 | 400 | /@esbuild/linux-arm@0.19.12: 401 | resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} 402 | engines: {node: '>=12'} 403 | cpu: [arm] 404 | os: [linux] 405 | requiresBuild: true 406 | dev: true 407 | optional: true 408 | 409 | /@esbuild/linux-arm@0.20.2: 410 | resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} 411 | engines: {node: '>=12'} 412 | cpu: [arm] 413 | os: [linux] 414 | requiresBuild: true 415 | dev: true 416 | optional: true 417 | 418 | /@esbuild/linux-ia32@0.19.12: 419 | resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} 420 | engines: {node: '>=12'} 421 | cpu: [ia32] 422 | os: [linux] 423 | requiresBuild: true 424 | dev: true 425 | optional: true 426 | 427 | /@esbuild/linux-ia32@0.20.2: 428 | resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} 429 | engines: {node: '>=12'} 430 | cpu: [ia32] 431 | os: [linux] 432 | requiresBuild: true 433 | dev: true 434 | optional: true 435 | 436 | /@esbuild/linux-loong64@0.19.12: 437 | resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} 438 | engines: {node: '>=12'} 439 | cpu: [loong64] 440 | os: [linux] 441 | requiresBuild: true 442 | dev: true 443 | optional: true 444 | 445 | /@esbuild/linux-loong64@0.20.2: 446 | resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} 447 | engines: {node: '>=12'} 448 | cpu: [loong64] 449 | os: [linux] 450 | requiresBuild: true 451 | dev: true 452 | optional: true 453 | 454 | /@esbuild/linux-mips64el@0.19.12: 455 | resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} 456 | engines: {node: '>=12'} 457 | cpu: [mips64el] 458 | os: [linux] 459 | requiresBuild: true 460 | dev: true 461 | optional: true 462 | 463 | /@esbuild/linux-mips64el@0.20.2: 464 | resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} 465 | engines: {node: '>=12'} 466 | cpu: [mips64el] 467 | os: [linux] 468 | requiresBuild: true 469 | dev: true 470 | optional: true 471 | 472 | /@esbuild/linux-ppc64@0.19.12: 473 | resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} 474 | engines: {node: '>=12'} 475 | cpu: [ppc64] 476 | os: [linux] 477 | requiresBuild: true 478 | dev: true 479 | optional: true 480 | 481 | /@esbuild/linux-ppc64@0.20.2: 482 | resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} 483 | engines: {node: '>=12'} 484 | cpu: [ppc64] 485 | os: [linux] 486 | requiresBuild: true 487 | dev: true 488 | optional: true 489 | 490 | /@esbuild/linux-riscv64@0.19.12: 491 | resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} 492 | engines: {node: '>=12'} 493 | cpu: [riscv64] 494 | os: [linux] 495 | requiresBuild: true 496 | dev: true 497 | optional: true 498 | 499 | /@esbuild/linux-riscv64@0.20.2: 500 | resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} 501 | engines: {node: '>=12'} 502 | cpu: [riscv64] 503 | os: [linux] 504 | requiresBuild: true 505 | dev: true 506 | optional: true 507 | 508 | /@esbuild/linux-s390x@0.19.12: 509 | resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} 510 | engines: {node: '>=12'} 511 | cpu: [s390x] 512 | os: [linux] 513 | requiresBuild: true 514 | dev: true 515 | optional: true 516 | 517 | /@esbuild/linux-s390x@0.20.2: 518 | resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} 519 | engines: {node: '>=12'} 520 | cpu: [s390x] 521 | os: [linux] 522 | requiresBuild: true 523 | dev: true 524 | optional: true 525 | 526 | /@esbuild/linux-x64@0.19.12: 527 | resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} 528 | engines: {node: '>=12'} 529 | cpu: [x64] 530 | os: [linux] 531 | requiresBuild: true 532 | dev: true 533 | optional: true 534 | 535 | /@esbuild/linux-x64@0.20.2: 536 | resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} 537 | engines: {node: '>=12'} 538 | cpu: [x64] 539 | os: [linux] 540 | requiresBuild: true 541 | dev: true 542 | optional: true 543 | 544 | /@esbuild/netbsd-x64@0.19.12: 545 | resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} 546 | engines: {node: '>=12'} 547 | cpu: [x64] 548 | os: [netbsd] 549 | requiresBuild: true 550 | dev: true 551 | optional: true 552 | 553 | /@esbuild/netbsd-x64@0.20.2: 554 | resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} 555 | engines: {node: '>=12'} 556 | cpu: [x64] 557 | os: [netbsd] 558 | requiresBuild: true 559 | dev: true 560 | optional: true 561 | 562 | /@esbuild/openbsd-x64@0.19.12: 563 | resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} 564 | engines: {node: '>=12'} 565 | cpu: [x64] 566 | os: [openbsd] 567 | requiresBuild: true 568 | dev: true 569 | optional: true 570 | 571 | /@esbuild/openbsd-x64@0.20.2: 572 | resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} 573 | engines: {node: '>=12'} 574 | cpu: [x64] 575 | os: [openbsd] 576 | requiresBuild: true 577 | dev: true 578 | optional: true 579 | 580 | /@esbuild/sunos-x64@0.19.12: 581 | resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} 582 | engines: {node: '>=12'} 583 | cpu: [x64] 584 | os: [sunos] 585 | requiresBuild: true 586 | dev: true 587 | optional: true 588 | 589 | /@esbuild/sunos-x64@0.20.2: 590 | resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} 591 | engines: {node: '>=12'} 592 | cpu: [x64] 593 | os: [sunos] 594 | requiresBuild: true 595 | dev: true 596 | optional: true 597 | 598 | /@esbuild/win32-arm64@0.19.12: 599 | resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} 600 | engines: {node: '>=12'} 601 | cpu: [arm64] 602 | os: [win32] 603 | requiresBuild: true 604 | dev: true 605 | optional: true 606 | 607 | /@esbuild/win32-arm64@0.20.2: 608 | resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} 609 | engines: {node: '>=12'} 610 | cpu: [arm64] 611 | os: [win32] 612 | requiresBuild: true 613 | dev: true 614 | optional: true 615 | 616 | /@esbuild/win32-ia32@0.19.12: 617 | resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} 618 | engines: {node: '>=12'} 619 | cpu: [ia32] 620 | os: [win32] 621 | requiresBuild: true 622 | dev: true 623 | optional: true 624 | 625 | /@esbuild/win32-ia32@0.20.2: 626 | resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} 627 | engines: {node: '>=12'} 628 | cpu: [ia32] 629 | os: [win32] 630 | requiresBuild: true 631 | dev: true 632 | optional: true 633 | 634 | /@esbuild/win32-x64@0.19.12: 635 | resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} 636 | engines: {node: '>=12'} 637 | cpu: [x64] 638 | os: [win32] 639 | requiresBuild: true 640 | dev: true 641 | optional: true 642 | 643 | /@esbuild/win32-x64@0.20.2: 644 | resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} 645 | engines: {node: '>=12'} 646 | cpu: [x64] 647 | os: [win32] 648 | requiresBuild: true 649 | dev: true 650 | optional: true 651 | 652 | /@eslint-community/eslint-utils@4.4.0(eslint@8.56.0): 653 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 654 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 655 | peerDependencies: 656 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 657 | dependencies: 658 | eslint: 8.56.0 659 | eslint-visitor-keys: 3.4.3 660 | dev: true 661 | 662 | /@eslint-community/regexpp@4.10.0: 663 | resolution: {integrity: sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==} 664 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 665 | dev: true 666 | 667 | /@eslint/eslintrc@2.1.4: 668 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 669 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 670 | dependencies: 671 | ajv: 6.12.6 672 | debug: 4.3.4 673 | espree: 9.6.1 674 | globals: 13.24.0 675 | ignore: 5.3.1 676 | import-fresh: 3.3.0 677 | js-yaml: 4.1.0 678 | minimatch: 3.1.2 679 | strip-json-comments: 3.1.1 680 | transitivePeerDependencies: 681 | - supports-color 682 | dev: true 683 | 684 | /@eslint/js@8.56.0: 685 | resolution: {integrity: sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==} 686 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 687 | dev: true 688 | 689 | /@humanwhocodes/config-array@0.11.14: 690 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 691 | engines: {node: '>=10.10.0'} 692 | dependencies: 693 | '@humanwhocodes/object-schema': 2.0.2 694 | debug: 4.3.4 695 | minimatch: 3.1.2 696 | transitivePeerDependencies: 697 | - supports-color 698 | dev: true 699 | 700 | /@humanwhocodes/module-importer@1.0.1: 701 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 702 | engines: {node: '>=12.22'} 703 | dev: true 704 | 705 | /@humanwhocodes/object-schema@2.0.2: 706 | resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} 707 | dev: true 708 | 709 | /@isaacs/cliui@8.0.2: 710 | resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} 711 | engines: {node: '>=12'} 712 | dependencies: 713 | string-width: 5.1.2 714 | string-width-cjs: /string-width@4.2.3 715 | strip-ansi: 7.1.0 716 | strip-ansi-cjs: /strip-ansi@6.0.1 717 | wrap-ansi: 8.1.0 718 | wrap-ansi-cjs: /wrap-ansi@7.0.0 719 | dev: true 720 | 721 | /@jest/schemas@29.6.3: 722 | resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} 723 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 724 | dependencies: 725 | '@sinclair/typebox': 0.27.8 726 | dev: true 727 | 728 | /@jridgewell/gen-mapping@0.3.3: 729 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} 730 | engines: {node: '>=6.0.0'} 731 | dependencies: 732 | '@jridgewell/set-array': 1.1.2 733 | '@jridgewell/sourcemap-codec': 1.4.15 734 | '@jridgewell/trace-mapping': 0.3.22 735 | dev: true 736 | 737 | /@jridgewell/resolve-uri@3.1.2: 738 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 739 | engines: {node: '>=6.0.0'} 740 | dev: true 741 | 742 | /@jridgewell/set-array@1.1.2: 743 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 744 | engines: {node: '>=6.0.0'} 745 | dev: true 746 | 747 | /@jridgewell/sourcemap-codec@1.4.15: 748 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} 749 | dev: true 750 | 751 | /@jridgewell/trace-mapping@0.3.22: 752 | resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==} 753 | dependencies: 754 | '@jridgewell/resolve-uri': 3.1.2 755 | '@jridgewell/sourcemap-codec': 1.4.15 756 | dev: true 757 | 758 | /@nodelib/fs.scandir@2.1.5: 759 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 760 | engines: {node: '>= 8'} 761 | dependencies: 762 | '@nodelib/fs.stat': 2.0.5 763 | run-parallel: 1.2.0 764 | dev: true 765 | 766 | /@nodelib/fs.stat@2.0.5: 767 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 768 | engines: {node: '>= 8'} 769 | dev: true 770 | 771 | /@nodelib/fs.walk@1.2.8: 772 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 773 | engines: {node: '>= 8'} 774 | dependencies: 775 | '@nodelib/fs.scandir': 2.1.5 776 | fastq: 1.17.1 777 | dev: true 778 | 779 | /@pkgjs/parseargs@0.11.0: 780 | resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} 781 | engines: {node: '>=14'} 782 | requiresBuild: true 783 | dev: true 784 | optional: true 785 | 786 | /@rollup/rollup-android-arm-eabi@4.12.0: 787 | resolution: {integrity: sha512-+ac02NL/2TCKRrJu2wffk1kZ+RyqxVUlbjSagNgPm94frxtr+XDL12E5Ll1enWskLrtrZ2r8L3wED1orIibV/w==} 788 | cpu: [arm] 789 | os: [android] 790 | requiresBuild: true 791 | dev: true 792 | optional: true 793 | 794 | /@rollup/rollup-android-arm-eabi@4.17.2: 795 | resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==} 796 | cpu: [arm] 797 | os: [android] 798 | requiresBuild: true 799 | dev: true 800 | optional: true 801 | 802 | /@rollup/rollup-android-arm64@4.12.0: 803 | resolution: {integrity: sha512-OBqcX2BMe6nvjQ0Nyp7cC90cnumt8PXmO7Dp3gfAju/6YwG0Tj74z1vKrfRz7qAv23nBcYM8BCbhrsWqO7PzQQ==} 804 | cpu: [arm64] 805 | os: [android] 806 | requiresBuild: true 807 | dev: true 808 | optional: true 809 | 810 | /@rollup/rollup-android-arm64@4.17.2: 811 | resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} 812 | cpu: [arm64] 813 | os: [android] 814 | requiresBuild: true 815 | dev: true 816 | optional: true 817 | 818 | /@rollup/rollup-darwin-arm64@4.12.0: 819 | resolution: {integrity: sha512-X64tZd8dRE/QTrBIEs63kaOBG0b5GVEd3ccoLtyf6IdXtHdh8h+I56C2yC3PtC9Ucnv0CpNFJLqKFVgCYe0lOQ==} 820 | cpu: [arm64] 821 | os: [darwin] 822 | requiresBuild: true 823 | dev: true 824 | optional: true 825 | 826 | /@rollup/rollup-darwin-arm64@4.17.2: 827 | resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} 828 | cpu: [arm64] 829 | os: [darwin] 830 | requiresBuild: true 831 | dev: true 832 | optional: true 833 | 834 | /@rollup/rollup-darwin-x64@4.12.0: 835 | resolution: {integrity: sha512-cc71KUZoVbUJmGP2cOuiZ9HSOP14AzBAThn3OU+9LcA1+IUqswJyR1cAJj3Mg55HbjZP6OLAIscbQsQLrpgTOg==} 836 | cpu: [x64] 837 | os: [darwin] 838 | requiresBuild: true 839 | dev: true 840 | optional: true 841 | 842 | /@rollup/rollup-darwin-x64@4.17.2: 843 | resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} 844 | cpu: [x64] 845 | os: [darwin] 846 | requiresBuild: true 847 | dev: true 848 | optional: true 849 | 850 | /@rollup/rollup-linux-arm-gnueabihf@4.12.0: 851 | resolution: {integrity: sha512-a6w/Y3hyyO6GlpKL2xJ4IOh/7d+APaqLYdMf86xnczU3nurFTaVN9s9jOXQg97BE4nYm/7Ga51rjec5nfRdrvA==} 852 | cpu: [arm] 853 | os: [linux] 854 | requiresBuild: true 855 | dev: true 856 | optional: true 857 | 858 | /@rollup/rollup-linux-arm-gnueabihf@4.17.2: 859 | resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} 860 | cpu: [arm] 861 | os: [linux] 862 | requiresBuild: true 863 | dev: true 864 | optional: true 865 | 866 | /@rollup/rollup-linux-arm-musleabihf@4.17.2: 867 | resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} 868 | cpu: [arm] 869 | os: [linux] 870 | requiresBuild: true 871 | dev: true 872 | optional: true 873 | 874 | /@rollup/rollup-linux-arm64-gnu@4.12.0: 875 | resolution: {integrity: sha512-0fZBq27b+D7Ar5CQMofVN8sggOVhEtzFUwOwPppQt0k+VR+7UHMZZY4y+64WJ06XOhBTKXtQB/Sv0NwQMXyNAA==} 876 | cpu: [arm64] 877 | os: [linux] 878 | requiresBuild: true 879 | dev: true 880 | optional: true 881 | 882 | /@rollup/rollup-linux-arm64-gnu@4.17.2: 883 | resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} 884 | cpu: [arm64] 885 | os: [linux] 886 | requiresBuild: true 887 | dev: true 888 | optional: true 889 | 890 | /@rollup/rollup-linux-arm64-musl@4.12.0: 891 | resolution: {integrity: sha512-eTvzUS3hhhlgeAv6bfigekzWZjaEX9xP9HhxB0Dvrdbkk5w/b+1Sxct2ZuDxNJKzsRStSq1EaEkVSEe7A7ipgQ==} 892 | cpu: [arm64] 893 | os: [linux] 894 | requiresBuild: true 895 | dev: true 896 | optional: true 897 | 898 | /@rollup/rollup-linux-arm64-musl@4.17.2: 899 | resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} 900 | cpu: [arm64] 901 | os: [linux] 902 | requiresBuild: true 903 | dev: true 904 | optional: true 905 | 906 | /@rollup/rollup-linux-powerpc64le-gnu@4.17.2: 907 | resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} 908 | cpu: [ppc64] 909 | os: [linux] 910 | requiresBuild: true 911 | dev: true 912 | optional: true 913 | 914 | /@rollup/rollup-linux-riscv64-gnu@4.12.0: 915 | resolution: {integrity: sha512-ix+qAB9qmrCRiaO71VFfY8rkiAZJL8zQRXveS27HS+pKdjwUfEhqo2+YF2oI+H/22Xsiski+qqwIBxVewLK7sw==} 916 | cpu: [riscv64] 917 | os: [linux] 918 | requiresBuild: true 919 | dev: true 920 | optional: true 921 | 922 | /@rollup/rollup-linux-riscv64-gnu@4.17.2: 923 | resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} 924 | cpu: [riscv64] 925 | os: [linux] 926 | requiresBuild: true 927 | dev: true 928 | optional: true 929 | 930 | /@rollup/rollup-linux-s390x-gnu@4.17.2: 931 | resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} 932 | cpu: [s390x] 933 | os: [linux] 934 | requiresBuild: true 935 | dev: true 936 | optional: true 937 | 938 | /@rollup/rollup-linux-x64-gnu@4.12.0: 939 | resolution: {integrity: sha512-TenQhZVOtw/3qKOPa7d+QgkeM6xY0LtwzR8OplmyL5LrgTWIXpTQg2Q2ycBf8jm+SFW2Wt/DTn1gf7nFp3ssVA==} 940 | cpu: [x64] 941 | os: [linux] 942 | requiresBuild: true 943 | dev: true 944 | optional: true 945 | 946 | /@rollup/rollup-linux-x64-gnu@4.17.2: 947 | resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} 948 | cpu: [x64] 949 | os: [linux] 950 | requiresBuild: true 951 | dev: true 952 | optional: true 953 | 954 | /@rollup/rollup-linux-x64-musl@4.12.0: 955 | resolution: {integrity: sha512-LfFdRhNnW0zdMvdCb5FNuWlls2WbbSridJvxOvYWgSBOYZtgBfW9UGNJG//rwMqTX1xQE9BAodvMH9tAusKDUw==} 956 | cpu: [x64] 957 | os: [linux] 958 | requiresBuild: true 959 | dev: true 960 | optional: true 961 | 962 | /@rollup/rollup-linux-x64-musl@4.17.2: 963 | resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} 964 | cpu: [x64] 965 | os: [linux] 966 | requiresBuild: true 967 | dev: true 968 | optional: true 969 | 970 | /@rollup/rollup-win32-arm64-msvc@4.12.0: 971 | resolution: {integrity: sha512-JPDxovheWNp6d7AHCgsUlkuCKvtu3RB55iNEkaQcf0ttsDU/JZF+iQnYcQJSk/7PtT4mjjVG8N1kpwnI9SLYaw==} 972 | cpu: [arm64] 973 | os: [win32] 974 | requiresBuild: true 975 | dev: true 976 | optional: true 977 | 978 | /@rollup/rollup-win32-arm64-msvc@4.17.2: 979 | resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} 980 | cpu: [arm64] 981 | os: [win32] 982 | requiresBuild: true 983 | dev: true 984 | optional: true 985 | 986 | /@rollup/rollup-win32-ia32-msvc@4.12.0: 987 | resolution: {integrity: sha512-fjtuvMWRGJn1oZacG8IPnzIV6GF2/XG+h71FKn76OYFqySXInJtseAqdprVTDTyqPxQOG9Exak5/E9Z3+EJ8ZA==} 988 | cpu: [ia32] 989 | os: [win32] 990 | requiresBuild: true 991 | dev: true 992 | optional: true 993 | 994 | /@rollup/rollup-win32-ia32-msvc@4.17.2: 995 | resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} 996 | cpu: [ia32] 997 | os: [win32] 998 | requiresBuild: true 999 | dev: true 1000 | optional: true 1001 | 1002 | /@rollup/rollup-win32-x64-msvc@4.12.0: 1003 | resolution: {integrity: sha512-ZYmr5mS2wd4Dew/JjT0Fqi2NPB/ZhZ2VvPp7SmvPZb4Y1CG/LRcS6tcRo2cYU7zLK5A7cdbhWnnWmUjoI4qapg==} 1004 | cpu: [x64] 1005 | os: [win32] 1006 | requiresBuild: true 1007 | dev: true 1008 | optional: true 1009 | 1010 | /@rollup/rollup-win32-x64-msvc@4.17.2: 1011 | resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} 1012 | cpu: [x64] 1013 | os: [win32] 1014 | requiresBuild: true 1015 | dev: true 1016 | optional: true 1017 | 1018 | /@rushstack/eslint-patch@1.10.2: 1019 | resolution: {integrity: sha512-hw437iINopmQuxWPSUEvqE56NCPsiU8N4AYtfHmJFckclktzK9YQJieD3XkDCDH4OjL+C7zgPUh73R/nrcHrqw==} 1020 | dev: true 1021 | 1022 | /@sinclair/typebox@0.27.8: 1023 | resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} 1024 | dev: true 1025 | 1026 | /@trivago/prettier-plugin-sort-imports@4.3.0(prettier@2.8.8): 1027 | resolution: {integrity: sha512-r3n0onD3BTOVUNPhR4lhVK4/pABGpbA7bW3eumZnYdKaHkf1qEC+Mag6DPbGNuuh0eG8AaYj+YqmVHSiGslaTQ==} 1028 | peerDependencies: 1029 | '@vue/compiler-sfc': 3.x 1030 | prettier: 2.x - 3.x 1031 | peerDependenciesMeta: 1032 | '@vue/compiler-sfc': 1033 | optional: true 1034 | dependencies: 1035 | '@babel/generator': 7.17.7 1036 | '@babel/parser': 7.23.9 1037 | '@babel/traverse': 7.23.2 1038 | '@babel/types': 7.17.0 1039 | javascript-natural-sort: 0.7.1 1040 | lodash: 4.17.21 1041 | prettier: 2.8.8 1042 | transitivePeerDependencies: 1043 | - supports-color 1044 | dev: true 1045 | 1046 | /@types/estree@1.0.5: 1047 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 1048 | dev: true 1049 | 1050 | /@types/json-schema@7.0.15: 1051 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 1052 | dev: true 1053 | 1054 | /@types/json5@0.0.29: 1055 | resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} 1056 | dev: true 1057 | 1058 | /@types/minimist@1.2.5: 1059 | resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} 1060 | dev: true 1061 | 1062 | /@types/node@20.12.12: 1063 | resolution: {integrity: sha512-eWLDGF/FOSPtAvEqeRAQ4C8LSA7M1I7i0ky1I8U7kD1J5ITyW3AsRhQrKVoWf5pFKZ2kILsEGJhsI9r93PYnOw==} 1064 | dependencies: 1065 | undici-types: 5.26.5 1066 | dev: true 1067 | 1068 | /@types/normalize-package-data@2.4.4: 1069 | resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} 1070 | dev: true 1071 | 1072 | /@types/semver@7.5.8: 1073 | resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} 1074 | dev: true 1075 | 1076 | /@types/twitter-text@3.1.10: 1077 | resolution: {integrity: sha512-+wF6TYQtvokyCc42VKF9OAvEgro0JIAEMor+A7eZsZtkgD/LPAIJx5+g7529nQUzRpas2hlmJEPfZgkzxr0xnA==} 1078 | dev: true 1079 | 1080 | /@typescript-eslint/eslint-plugin@7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.56.0)(typescript@5.4.5): 1081 | resolution: {integrity: sha512-6e+X0X3sFe/G/54aC3jt0txuMTURqLyekmEHViqyA2VnxhLMpvA6nqmcjIy+Cr9tLDHPssA74BP5Mx9HQIxBEA==} 1082 | engines: {node: ^18.18.0 || >=20.0.0} 1083 | peerDependencies: 1084 | '@typescript-eslint/parser': ^7.0.0 1085 | eslint: ^8.56.0 1086 | typescript: '*' 1087 | peerDependenciesMeta: 1088 | typescript: 1089 | optional: true 1090 | dependencies: 1091 | '@eslint-community/regexpp': 4.10.0 1092 | '@typescript-eslint/parser': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 1093 | '@typescript-eslint/scope-manager': 7.9.0 1094 | '@typescript-eslint/type-utils': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 1095 | '@typescript-eslint/utils': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 1096 | '@typescript-eslint/visitor-keys': 7.9.0 1097 | eslint: 8.56.0 1098 | graphemer: 1.4.0 1099 | ignore: 5.3.1 1100 | natural-compare: 1.4.0 1101 | ts-api-utils: 1.3.0(typescript@5.4.5) 1102 | typescript: 5.4.5 1103 | transitivePeerDependencies: 1104 | - supports-color 1105 | dev: true 1106 | 1107 | /@typescript-eslint/parser@7.9.0(eslint@8.56.0)(typescript@5.4.5): 1108 | resolution: {integrity: sha512-qHMJfkL5qvgQB2aLvhUSXxbK7OLnDkwPzFalg458pxQgfxKDfT1ZDbHQM/I6mDIf/svlMkj21kzKuQ2ixJlatQ==} 1109 | engines: {node: ^18.18.0 || >=20.0.0} 1110 | peerDependencies: 1111 | eslint: ^8.56.0 1112 | typescript: '*' 1113 | peerDependenciesMeta: 1114 | typescript: 1115 | optional: true 1116 | dependencies: 1117 | '@typescript-eslint/scope-manager': 7.9.0 1118 | '@typescript-eslint/types': 7.9.0 1119 | '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) 1120 | '@typescript-eslint/visitor-keys': 7.9.0 1121 | debug: 4.3.4 1122 | eslint: 8.56.0 1123 | typescript: 5.4.5 1124 | transitivePeerDependencies: 1125 | - supports-color 1126 | dev: true 1127 | 1128 | /@typescript-eslint/scope-manager@5.62.0: 1129 | resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} 1130 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1131 | dependencies: 1132 | '@typescript-eslint/types': 5.62.0 1133 | '@typescript-eslint/visitor-keys': 5.62.0 1134 | dev: true 1135 | 1136 | /@typescript-eslint/scope-manager@7.9.0: 1137 | resolution: {integrity: sha512-ZwPK4DeCDxr3GJltRz5iZejPFAAr4Wk3+2WIBaj1L5PYK5RgxExu/Y68FFVclN0y6GGwH8q+KgKRCvaTmFBbgQ==} 1138 | engines: {node: ^18.18.0 || >=20.0.0} 1139 | dependencies: 1140 | '@typescript-eslint/types': 7.9.0 1141 | '@typescript-eslint/visitor-keys': 7.9.0 1142 | dev: true 1143 | 1144 | /@typescript-eslint/type-utils@7.9.0(eslint@8.56.0)(typescript@5.4.5): 1145 | resolution: {integrity: sha512-6Qy8dfut0PFrFRAZsGzuLoM4hre4gjzWJB6sUvdunCYZsYemTkzZNwF1rnGea326PHPT3zn5Lmg32M/xfJfByA==} 1146 | engines: {node: ^18.18.0 || >=20.0.0} 1147 | peerDependencies: 1148 | eslint: ^8.56.0 1149 | typescript: '*' 1150 | peerDependenciesMeta: 1151 | typescript: 1152 | optional: true 1153 | dependencies: 1154 | '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) 1155 | '@typescript-eslint/utils': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 1156 | debug: 4.3.4 1157 | eslint: 8.56.0 1158 | ts-api-utils: 1.3.0(typescript@5.4.5) 1159 | typescript: 5.4.5 1160 | transitivePeerDependencies: 1161 | - supports-color 1162 | dev: true 1163 | 1164 | /@typescript-eslint/types@5.62.0: 1165 | resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} 1166 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1167 | dev: true 1168 | 1169 | /@typescript-eslint/types@7.9.0: 1170 | resolution: {integrity: sha512-oZQD9HEWQanl9UfsbGVcZ2cGaR0YT5476xfWE0oE5kQa2sNK2frxOlkeacLOTh9po4AlUT5rtkGyYM5kew0z5w==} 1171 | engines: {node: ^18.18.0 || >=20.0.0} 1172 | dev: true 1173 | 1174 | /@typescript-eslint/typescript-estree@5.62.0(typescript@5.4.5): 1175 | resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} 1176 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1177 | peerDependencies: 1178 | typescript: '*' 1179 | peerDependenciesMeta: 1180 | typescript: 1181 | optional: true 1182 | dependencies: 1183 | '@typescript-eslint/types': 5.62.0 1184 | '@typescript-eslint/visitor-keys': 5.62.0 1185 | debug: 4.3.4 1186 | globby: 11.1.0 1187 | is-glob: 4.0.3 1188 | semver: 7.6.2 1189 | tsutils: 3.21.0(typescript@5.4.5) 1190 | typescript: 5.4.5 1191 | transitivePeerDependencies: 1192 | - supports-color 1193 | dev: true 1194 | 1195 | /@typescript-eslint/typescript-estree@7.9.0(typescript@5.4.5): 1196 | resolution: {integrity: sha512-zBCMCkrb2YjpKV3LA0ZJubtKCDxLttxfdGmwZvTqqWevUPN0FZvSI26FalGFFUZU/9YQK/A4xcQF9o/VVaCKAg==} 1197 | engines: {node: ^18.18.0 || >=20.0.0} 1198 | peerDependencies: 1199 | typescript: '*' 1200 | peerDependenciesMeta: 1201 | typescript: 1202 | optional: true 1203 | dependencies: 1204 | '@typescript-eslint/types': 7.9.0 1205 | '@typescript-eslint/visitor-keys': 7.9.0 1206 | debug: 4.3.4 1207 | globby: 11.1.0 1208 | is-glob: 4.0.3 1209 | minimatch: 9.0.4 1210 | semver: 7.6.2 1211 | ts-api-utils: 1.3.0(typescript@5.4.5) 1212 | typescript: 5.4.5 1213 | transitivePeerDependencies: 1214 | - supports-color 1215 | dev: true 1216 | 1217 | /@typescript-eslint/utils@5.62.0(eslint@8.56.0)(typescript@5.4.5): 1218 | resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} 1219 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1220 | peerDependencies: 1221 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 1222 | dependencies: 1223 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) 1224 | '@types/json-schema': 7.0.15 1225 | '@types/semver': 7.5.8 1226 | '@typescript-eslint/scope-manager': 5.62.0 1227 | '@typescript-eslint/types': 5.62.0 1228 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.4.5) 1229 | eslint: 8.56.0 1230 | eslint-scope: 5.1.1 1231 | semver: 7.6.2 1232 | transitivePeerDependencies: 1233 | - supports-color 1234 | - typescript 1235 | dev: true 1236 | 1237 | /@typescript-eslint/utils@7.9.0(eslint@8.56.0)(typescript@5.4.5): 1238 | resolution: {integrity: sha512-5KVRQCzZajmT4Ep+NEgjXCvjuypVvYHUW7RHlXzNPuak2oWpVoD1jf5xCP0dPAuNIchjC7uQyvbdaSTFaLqSdA==} 1239 | engines: {node: ^18.18.0 || >=20.0.0} 1240 | peerDependencies: 1241 | eslint: ^8.56.0 1242 | dependencies: 1243 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) 1244 | '@typescript-eslint/scope-manager': 7.9.0 1245 | '@typescript-eslint/types': 7.9.0 1246 | '@typescript-eslint/typescript-estree': 7.9.0(typescript@5.4.5) 1247 | eslint: 8.56.0 1248 | transitivePeerDependencies: 1249 | - supports-color 1250 | - typescript 1251 | dev: true 1252 | 1253 | /@typescript-eslint/visitor-keys@5.62.0: 1254 | resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} 1255 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 1256 | dependencies: 1257 | '@typescript-eslint/types': 5.62.0 1258 | eslint-visitor-keys: 3.4.3 1259 | dev: true 1260 | 1261 | /@typescript-eslint/visitor-keys@7.9.0: 1262 | resolution: {integrity: sha512-iESPx2TNLDNGQLyjKhUvIKprlP49XNEK+MvIf9nIO7ZZaZdbnfWKHnXAgufpxqfA0YryH8XToi4+CjBgVnFTSQ==} 1263 | engines: {node: ^18.18.0 || >=20.0.0} 1264 | dependencies: 1265 | '@typescript-eslint/types': 7.9.0 1266 | eslint-visitor-keys: 3.4.3 1267 | dev: true 1268 | 1269 | /@ungap/structured-clone@1.2.0: 1270 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 1271 | dev: true 1272 | 1273 | /@vitest/expect@1.6.0: 1274 | resolution: {integrity: sha512-ixEvFVQjycy/oNgHjqsL6AZCDduC+tflRluaHIzKIsdbzkLn2U/iBnVeJwB6HsIjQBdfMR8Z0tRxKUsvFJEeWQ==} 1275 | dependencies: 1276 | '@vitest/spy': 1.6.0 1277 | '@vitest/utils': 1.6.0 1278 | chai: 4.4.1 1279 | dev: true 1280 | 1281 | /@vitest/runner@1.6.0: 1282 | resolution: {integrity: sha512-P4xgwPjwesuBiHisAVz/LSSZtDjOTPYZVmNAnpHHSR6ONrf8eCJOFRvUwdHn30F5M1fxhqtl7QZQUk2dprIXAg==} 1283 | dependencies: 1284 | '@vitest/utils': 1.6.0 1285 | p-limit: 5.0.0 1286 | pathe: 1.1.2 1287 | dev: true 1288 | 1289 | /@vitest/snapshot@1.6.0: 1290 | resolution: {integrity: sha512-+Hx43f8Chus+DCmygqqfetcAZrDJwvTj0ymqjQq4CvmpKFSTVteEOBzCusu1x2tt4OJcvBflyHUE0DZSLgEMtQ==} 1291 | dependencies: 1292 | magic-string: 0.30.10 1293 | pathe: 1.1.2 1294 | pretty-format: 29.7.0 1295 | dev: true 1296 | 1297 | /@vitest/spy@1.6.0: 1298 | resolution: {integrity: sha512-leUTap6B/cqi/bQkXUu6bQV5TZPx7pmMBKBQiI0rJA8c3pB56ZsaTbREnF7CJfmvAS4V2cXIBAh/3rVwrrCYgw==} 1299 | dependencies: 1300 | tinyspy: 2.2.1 1301 | dev: true 1302 | 1303 | /@vitest/utils@1.6.0: 1304 | resolution: {integrity: sha512-21cPiuGMoMZwiOHa2i4LXkMkMkCGzA+MVFV70jRwHo95dL4x/ts5GZhML1QWuy7yfp3WzK3lRvZi3JnXTYqrBw==} 1305 | dependencies: 1306 | diff-sequences: 29.6.3 1307 | estree-walker: 3.0.3 1308 | loupe: 2.3.7 1309 | pretty-format: 29.7.0 1310 | dev: true 1311 | 1312 | /acorn-jsx@5.3.2(acorn@8.11.3): 1313 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 1314 | peerDependencies: 1315 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 1316 | dependencies: 1317 | acorn: 8.11.3 1318 | dev: true 1319 | 1320 | /acorn-walk@8.3.2: 1321 | resolution: {integrity: sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==} 1322 | engines: {node: '>=0.4.0'} 1323 | dev: true 1324 | 1325 | /acorn@8.11.3: 1326 | resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} 1327 | engines: {node: '>=0.4.0'} 1328 | hasBin: true 1329 | dev: true 1330 | 1331 | /aggregate-error@4.0.1: 1332 | resolution: {integrity: sha512-0poP0T7el6Vq3rstR8Mn4V/IQrpBLO6POkUSrN7RhyY+GF/InCFShQzsQ39T25gkHhLgSLByyAz+Kjb+c2L98w==} 1333 | engines: {node: '>=12'} 1334 | dependencies: 1335 | clean-stack: 4.2.0 1336 | indent-string: 5.0.0 1337 | dev: true 1338 | 1339 | /ajv@6.12.6: 1340 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 1341 | dependencies: 1342 | fast-deep-equal: 3.1.3 1343 | fast-json-stable-stringify: 2.1.0 1344 | json-schema-traverse: 0.4.1 1345 | uri-js: 4.4.1 1346 | dev: true 1347 | 1348 | /ansi-escapes@6.2.0: 1349 | resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} 1350 | engines: {node: '>=14.16'} 1351 | dependencies: 1352 | type-fest: 3.13.1 1353 | dev: true 1354 | 1355 | /ansi-regex@5.0.1: 1356 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1357 | engines: {node: '>=8'} 1358 | dev: true 1359 | 1360 | /ansi-regex@6.0.1: 1361 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 1362 | engines: {node: '>=12'} 1363 | dev: true 1364 | 1365 | /ansi-styles@3.2.1: 1366 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 1367 | engines: {node: '>=4'} 1368 | dependencies: 1369 | color-convert: 1.9.3 1370 | dev: true 1371 | 1372 | /ansi-styles@4.3.0: 1373 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1374 | engines: {node: '>=8'} 1375 | dependencies: 1376 | color-convert: 2.0.1 1377 | dev: true 1378 | 1379 | /ansi-styles@5.2.0: 1380 | resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} 1381 | engines: {node: '>=10'} 1382 | dev: true 1383 | 1384 | /ansi-styles@6.2.1: 1385 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 1386 | engines: {node: '>=12'} 1387 | dev: true 1388 | 1389 | /any-promise@1.3.0: 1390 | resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} 1391 | dev: true 1392 | 1393 | /anymatch@3.1.3: 1394 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} 1395 | engines: {node: '>= 8'} 1396 | dependencies: 1397 | normalize-path: 3.0.0 1398 | picomatch: 2.3.1 1399 | dev: true 1400 | 1401 | /argparse@2.0.1: 1402 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 1403 | dev: true 1404 | 1405 | /aria-query@5.3.0: 1406 | resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} 1407 | dependencies: 1408 | dequal: 2.0.3 1409 | dev: true 1410 | 1411 | /array-buffer-byte-length@1.0.1: 1412 | resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==} 1413 | engines: {node: '>= 0.4'} 1414 | dependencies: 1415 | call-bind: 1.0.7 1416 | is-array-buffer: 3.0.4 1417 | dev: true 1418 | 1419 | /array-includes@3.1.8: 1420 | resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} 1421 | engines: {node: '>= 0.4'} 1422 | dependencies: 1423 | call-bind: 1.0.7 1424 | define-properties: 1.2.1 1425 | es-abstract: 1.23.3 1426 | es-object-atoms: 1.0.0 1427 | get-intrinsic: 1.2.4 1428 | is-string: 1.0.7 1429 | dev: true 1430 | 1431 | /array-union@2.1.0: 1432 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 1433 | engines: {node: '>=8'} 1434 | dev: true 1435 | 1436 | /array.prototype.findlast@1.2.5: 1437 | resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} 1438 | engines: {node: '>= 0.4'} 1439 | dependencies: 1440 | call-bind: 1.0.7 1441 | define-properties: 1.2.1 1442 | es-abstract: 1.23.3 1443 | es-errors: 1.3.0 1444 | es-object-atoms: 1.0.0 1445 | es-shim-unscopables: 1.0.2 1446 | dev: true 1447 | 1448 | /array.prototype.findlastindex@1.2.5: 1449 | resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} 1450 | engines: {node: '>= 0.4'} 1451 | dependencies: 1452 | call-bind: 1.0.7 1453 | define-properties: 1.2.1 1454 | es-abstract: 1.23.3 1455 | es-errors: 1.3.0 1456 | es-object-atoms: 1.0.0 1457 | es-shim-unscopables: 1.0.2 1458 | dev: true 1459 | 1460 | /array.prototype.flat@1.3.2: 1461 | resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} 1462 | engines: {node: '>= 0.4'} 1463 | dependencies: 1464 | call-bind: 1.0.7 1465 | define-properties: 1.2.1 1466 | es-abstract: 1.23.3 1467 | es-shim-unscopables: 1.0.2 1468 | dev: true 1469 | 1470 | /array.prototype.flatmap@1.3.2: 1471 | resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} 1472 | engines: {node: '>= 0.4'} 1473 | dependencies: 1474 | call-bind: 1.0.7 1475 | define-properties: 1.2.1 1476 | es-abstract: 1.23.3 1477 | es-shim-unscopables: 1.0.2 1478 | dev: true 1479 | 1480 | /array.prototype.toreversed@1.1.2: 1481 | resolution: {integrity: sha512-wwDCoT4Ck4Cz7sLtgUmzR5UV3YF5mFHUlbChCzZBQZ+0m2cl/DH3tKgvphv1nKgFsJ48oCSg6p91q2Vm0I/ZMA==} 1482 | dependencies: 1483 | call-bind: 1.0.7 1484 | define-properties: 1.2.1 1485 | es-abstract: 1.23.3 1486 | es-shim-unscopables: 1.0.2 1487 | dev: true 1488 | 1489 | /array.prototype.tosorted@1.1.3: 1490 | resolution: {integrity: sha512-/DdH4TiTmOKzyQbp/eadcCVexiCb36xJg7HshYOYJnNZFDj33GEv0P7GxsynpShhq4OLYJzbGcBDkLsDt7MnNg==} 1491 | dependencies: 1492 | call-bind: 1.0.7 1493 | define-properties: 1.2.1 1494 | es-abstract: 1.23.3 1495 | es-errors: 1.3.0 1496 | es-shim-unscopables: 1.0.2 1497 | dev: true 1498 | 1499 | /arraybuffer.prototype.slice@1.0.3: 1500 | resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} 1501 | engines: {node: '>= 0.4'} 1502 | dependencies: 1503 | array-buffer-byte-length: 1.0.1 1504 | call-bind: 1.0.7 1505 | define-properties: 1.2.1 1506 | es-abstract: 1.22.4 1507 | es-errors: 1.3.0 1508 | get-intrinsic: 1.2.4 1509 | is-array-buffer: 3.0.4 1510 | is-shared-array-buffer: 1.0.2 1511 | dev: true 1512 | 1513 | /arrify@1.0.1: 1514 | resolution: {integrity: sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==} 1515 | engines: {node: '>=0.10.0'} 1516 | dev: true 1517 | 1518 | /assertion-error@1.1.0: 1519 | resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} 1520 | dev: true 1521 | 1522 | /ast-types-flow@0.0.8: 1523 | resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==} 1524 | dev: true 1525 | 1526 | /available-typed-arrays@1.0.7: 1527 | resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} 1528 | engines: {node: '>= 0.4'} 1529 | dependencies: 1530 | possible-typed-array-names: 1.0.0 1531 | dev: true 1532 | 1533 | /axe-core@4.7.0: 1534 | resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} 1535 | engines: {node: '>=4'} 1536 | dev: true 1537 | 1538 | /axobject-query@3.2.1: 1539 | resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} 1540 | dependencies: 1541 | dequal: 2.0.3 1542 | dev: true 1543 | 1544 | /balanced-match@1.0.2: 1545 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1546 | dev: true 1547 | 1548 | /binary-extensions@2.2.0: 1549 | resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} 1550 | engines: {node: '>=8'} 1551 | dev: true 1552 | 1553 | /brace-expansion@1.1.11: 1554 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1555 | dependencies: 1556 | balanced-match: 1.0.2 1557 | concat-map: 0.0.1 1558 | dev: true 1559 | 1560 | /brace-expansion@2.0.1: 1561 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1562 | dependencies: 1563 | balanced-match: 1.0.2 1564 | dev: true 1565 | 1566 | /braces@3.0.2: 1567 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1568 | engines: {node: '>=8'} 1569 | dependencies: 1570 | fill-range: 7.0.1 1571 | dev: true 1572 | 1573 | /bundle-require@4.0.2(esbuild@0.19.12): 1574 | resolution: {integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==} 1575 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1576 | peerDependencies: 1577 | esbuild: '>=0.17' 1578 | dependencies: 1579 | esbuild: 0.19.12 1580 | load-tsconfig: 0.2.5 1581 | dev: true 1582 | 1583 | /cac@6.7.14: 1584 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 1585 | engines: {node: '>=8'} 1586 | dev: true 1587 | 1588 | /call-bind@1.0.7: 1589 | resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} 1590 | engines: {node: '>= 0.4'} 1591 | dependencies: 1592 | es-define-property: 1.0.0 1593 | es-errors: 1.3.0 1594 | function-bind: 1.1.2 1595 | get-intrinsic: 1.2.4 1596 | set-function-length: 1.2.1 1597 | dev: true 1598 | 1599 | /callsites@3.1.0: 1600 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1601 | engines: {node: '>=6'} 1602 | dev: true 1603 | 1604 | /camelcase-keys@7.0.2: 1605 | resolution: {integrity: sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==} 1606 | engines: {node: '>=12'} 1607 | dependencies: 1608 | camelcase: 6.3.0 1609 | map-obj: 4.3.0 1610 | quick-lru: 5.1.1 1611 | type-fest: 1.4.0 1612 | dev: true 1613 | 1614 | /camelcase@6.3.0: 1615 | resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} 1616 | engines: {node: '>=10'} 1617 | dev: true 1618 | 1619 | /chai@4.4.1: 1620 | resolution: {integrity: sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==} 1621 | engines: {node: '>=4'} 1622 | dependencies: 1623 | assertion-error: 1.1.0 1624 | check-error: 1.0.3 1625 | deep-eql: 4.1.3 1626 | get-func-name: 2.0.2 1627 | loupe: 2.3.7 1628 | pathval: 1.1.1 1629 | type-detect: 4.0.8 1630 | dev: true 1631 | 1632 | /chalk@2.4.2: 1633 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 1634 | engines: {node: '>=4'} 1635 | dependencies: 1636 | ansi-styles: 3.2.1 1637 | escape-string-regexp: 1.0.5 1638 | supports-color: 5.5.0 1639 | dev: true 1640 | 1641 | /chalk@4.1.2: 1642 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1643 | engines: {node: '>=10'} 1644 | dependencies: 1645 | ansi-styles: 4.3.0 1646 | supports-color: 7.2.0 1647 | dev: true 1648 | 1649 | /chalk@5.3.0: 1650 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 1651 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 1652 | dev: true 1653 | 1654 | /check-error@1.0.3: 1655 | resolution: {integrity: sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==} 1656 | dependencies: 1657 | get-func-name: 2.0.2 1658 | dev: true 1659 | 1660 | /chokidar@3.6.0: 1661 | resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} 1662 | engines: {node: '>= 8.10.0'} 1663 | dependencies: 1664 | anymatch: 3.1.3 1665 | braces: 3.0.2 1666 | glob-parent: 5.1.2 1667 | is-binary-path: 2.1.0 1668 | is-glob: 4.0.3 1669 | normalize-path: 3.0.0 1670 | readdirp: 3.6.0 1671 | optionalDependencies: 1672 | fsevents: 2.3.3 1673 | dev: true 1674 | 1675 | /clean-stack@4.2.0: 1676 | resolution: {integrity: sha512-LYv6XPxoyODi36Dp976riBtSY27VmFo+MKqEU9QCCWyTrdEPDog+RWA7xQWHi6Vbp61j5c4cdzzX1NidnwtUWg==} 1677 | engines: {node: '>=12'} 1678 | dependencies: 1679 | escape-string-regexp: 5.0.0 1680 | dev: true 1681 | 1682 | /cli-cursor@4.0.0: 1683 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} 1684 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1685 | dependencies: 1686 | restore-cursor: 4.0.0 1687 | dev: true 1688 | 1689 | /cli-truncate@4.0.0: 1690 | resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} 1691 | engines: {node: '>=18'} 1692 | dependencies: 1693 | slice-ansi: 5.0.0 1694 | string-width: 7.1.0 1695 | dev: true 1696 | 1697 | /color-convert@1.9.3: 1698 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1699 | dependencies: 1700 | color-name: 1.1.3 1701 | dev: true 1702 | 1703 | /color-convert@2.0.1: 1704 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1705 | engines: {node: '>=7.0.0'} 1706 | dependencies: 1707 | color-name: 1.1.4 1708 | dev: true 1709 | 1710 | /color-name@1.1.3: 1711 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1712 | dev: true 1713 | 1714 | /color-name@1.1.4: 1715 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1716 | dev: true 1717 | 1718 | /colorette@2.0.20: 1719 | resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} 1720 | dev: true 1721 | 1722 | /commander@11.1.0: 1723 | resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} 1724 | engines: {node: '>=16'} 1725 | dev: true 1726 | 1727 | /commander@4.1.1: 1728 | resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} 1729 | engines: {node: '>= 6'} 1730 | dev: true 1731 | 1732 | /concat-map@0.0.1: 1733 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1734 | dev: true 1735 | 1736 | /confbox@0.1.7: 1737 | resolution: {integrity: sha512-uJcB/FKZtBMCJpK8MQji6bJHgu1tixKPxRLeGkNzBoOZzpnZUJm0jm2/sBDWcuBx1dYgxV4JU+g5hmNxCyAmdA==} 1738 | dev: true 1739 | 1740 | /core-js@2.6.12: 1741 | resolution: {integrity: sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==} 1742 | deprecated: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js. 1743 | requiresBuild: true 1744 | dev: false 1745 | 1746 | /cross-spawn@6.0.5: 1747 | resolution: {integrity: sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==} 1748 | engines: {node: '>=4.8'} 1749 | dependencies: 1750 | nice-try: 1.0.5 1751 | path-key: 2.0.1 1752 | semver: 5.7.2 1753 | shebang-command: 1.2.0 1754 | which: 1.3.1 1755 | dev: true 1756 | 1757 | /cross-spawn@7.0.3: 1758 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1759 | engines: {node: '>= 8'} 1760 | dependencies: 1761 | path-key: 3.1.1 1762 | shebang-command: 2.0.0 1763 | which: 2.0.2 1764 | dev: true 1765 | 1766 | /damerau-levenshtein@1.0.8: 1767 | resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==} 1768 | dev: true 1769 | 1770 | /data-view-buffer@1.0.1: 1771 | resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==} 1772 | engines: {node: '>= 0.4'} 1773 | dependencies: 1774 | call-bind: 1.0.7 1775 | es-errors: 1.3.0 1776 | is-data-view: 1.0.1 1777 | dev: true 1778 | 1779 | /data-view-byte-length@1.0.1: 1780 | resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} 1781 | engines: {node: '>= 0.4'} 1782 | dependencies: 1783 | call-bind: 1.0.7 1784 | es-errors: 1.3.0 1785 | is-data-view: 1.0.1 1786 | dev: true 1787 | 1788 | /data-view-byte-offset@1.0.0: 1789 | resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} 1790 | engines: {node: '>= 0.4'} 1791 | dependencies: 1792 | call-bind: 1.0.7 1793 | es-errors: 1.3.0 1794 | is-data-view: 1.0.1 1795 | dev: true 1796 | 1797 | /debug@3.2.7: 1798 | resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} 1799 | peerDependencies: 1800 | supports-color: '*' 1801 | peerDependenciesMeta: 1802 | supports-color: 1803 | optional: true 1804 | dependencies: 1805 | ms: 2.1.3 1806 | dev: true 1807 | 1808 | /debug@4.3.4: 1809 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1810 | engines: {node: '>=6.0'} 1811 | peerDependencies: 1812 | supports-color: '*' 1813 | peerDependenciesMeta: 1814 | supports-color: 1815 | optional: true 1816 | dependencies: 1817 | ms: 2.1.2 1818 | dev: true 1819 | 1820 | /decamelize-keys@1.1.1: 1821 | resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} 1822 | engines: {node: '>=0.10.0'} 1823 | dependencies: 1824 | decamelize: 1.2.0 1825 | map-obj: 1.0.1 1826 | dev: true 1827 | 1828 | /decamelize@1.2.0: 1829 | resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} 1830 | engines: {node: '>=0.10.0'} 1831 | dev: true 1832 | 1833 | /decamelize@5.0.1: 1834 | resolution: {integrity: sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==} 1835 | engines: {node: '>=10'} 1836 | dev: true 1837 | 1838 | /deep-eql@4.1.3: 1839 | resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} 1840 | engines: {node: '>=6'} 1841 | dependencies: 1842 | type-detect: 4.0.8 1843 | dev: true 1844 | 1845 | /deep-is@0.1.4: 1846 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 1847 | dev: true 1848 | 1849 | /define-data-property@1.1.4: 1850 | resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==} 1851 | engines: {node: '>= 0.4'} 1852 | dependencies: 1853 | es-define-property: 1.0.0 1854 | es-errors: 1.3.0 1855 | gopd: 1.0.1 1856 | dev: true 1857 | 1858 | /define-properties@1.2.1: 1859 | resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==} 1860 | engines: {node: '>= 0.4'} 1861 | dependencies: 1862 | define-data-property: 1.1.4 1863 | has-property-descriptors: 1.0.2 1864 | object-keys: 1.1.1 1865 | dev: true 1866 | 1867 | /del-cli@5.1.0: 1868 | resolution: {integrity: sha512-xwMeh2acluWeccsfzE7VLsG3yTr7nWikbfw+xhMnpRrF15pGSkw+3/vJZWlGoE4I86UiLRNHicmKt4tkIX9Jtg==} 1869 | engines: {node: '>=14.16'} 1870 | hasBin: true 1871 | dependencies: 1872 | del: 7.1.0 1873 | meow: 10.1.5 1874 | dev: true 1875 | 1876 | /del@7.1.0: 1877 | resolution: {integrity: sha512-v2KyNk7efxhlyHpjEvfyxaAihKKK0nWCuf6ZtqZcFFpQRG0bJ12Qsr0RpvsICMjAAZ8DOVCxrlqpxISlMHC4Kg==} 1878 | engines: {node: '>=14.16'} 1879 | dependencies: 1880 | globby: 13.2.2 1881 | graceful-fs: 4.2.11 1882 | is-glob: 4.0.3 1883 | is-path-cwd: 3.0.0 1884 | is-path-inside: 4.0.0 1885 | p-map: 5.5.0 1886 | rimraf: 3.0.2 1887 | slash: 4.0.0 1888 | dev: true 1889 | 1890 | /dequal@2.0.3: 1891 | resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} 1892 | engines: {node: '>=6'} 1893 | dev: true 1894 | 1895 | /diff-sequences@29.6.3: 1896 | resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} 1897 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 1898 | dev: true 1899 | 1900 | /dir-glob@3.0.1: 1901 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 1902 | engines: {node: '>=8'} 1903 | dependencies: 1904 | path-type: 4.0.0 1905 | dev: true 1906 | 1907 | /doctrine@2.1.0: 1908 | resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==} 1909 | engines: {node: '>=0.10.0'} 1910 | dependencies: 1911 | esutils: 2.0.3 1912 | dev: true 1913 | 1914 | /doctrine@3.0.0: 1915 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 1916 | engines: {node: '>=6.0.0'} 1917 | dependencies: 1918 | esutils: 2.0.3 1919 | dev: true 1920 | 1921 | /eastasianwidth@0.2.0: 1922 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 1923 | dev: true 1924 | 1925 | /emoji-regex@10.3.0: 1926 | resolution: {integrity: sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==} 1927 | dev: true 1928 | 1929 | /emoji-regex@8.0.0: 1930 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1931 | dev: true 1932 | 1933 | /emoji-regex@9.2.2: 1934 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 1935 | dev: true 1936 | 1937 | /enhanced-resolve@5.16.1: 1938 | resolution: {integrity: sha512-4U5pNsuDl0EhuZpq46M5xPslstkviJuhrdobaRDBk2Jy2KO37FDAJl4lb2KlNabxT0m4MTK2UHNrsAcphE8nyw==} 1939 | engines: {node: '>=10.13.0'} 1940 | dependencies: 1941 | graceful-fs: 4.2.11 1942 | tapable: 2.2.1 1943 | dev: true 1944 | 1945 | /error-ex@1.3.2: 1946 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 1947 | dependencies: 1948 | is-arrayish: 0.2.1 1949 | dev: true 1950 | 1951 | /es-abstract@1.22.4: 1952 | resolution: {integrity: sha512-vZYJlk2u6qHYxBOTjAeg7qUxHdNfih64Uu2J8QqWgXZ2cri0ZpJAkzDUK/q593+mvKwlxyaxr6F1Q+3LKoQRgg==} 1953 | engines: {node: '>= 0.4'} 1954 | dependencies: 1955 | array-buffer-byte-length: 1.0.1 1956 | arraybuffer.prototype.slice: 1.0.3 1957 | available-typed-arrays: 1.0.7 1958 | call-bind: 1.0.7 1959 | es-define-property: 1.0.0 1960 | es-errors: 1.3.0 1961 | es-set-tostringtag: 2.0.2 1962 | es-to-primitive: 1.2.1 1963 | function.prototype.name: 1.1.6 1964 | get-intrinsic: 1.2.4 1965 | get-symbol-description: 1.0.2 1966 | globalthis: 1.0.3 1967 | gopd: 1.0.1 1968 | has-property-descriptors: 1.0.2 1969 | has-proto: 1.0.3 1970 | has-symbols: 1.0.3 1971 | hasown: 2.0.1 1972 | internal-slot: 1.0.7 1973 | is-array-buffer: 3.0.4 1974 | is-callable: 1.2.7 1975 | is-negative-zero: 2.0.3 1976 | is-regex: 1.1.4 1977 | is-shared-array-buffer: 1.0.2 1978 | is-string: 1.0.7 1979 | is-typed-array: 1.1.13 1980 | is-weakref: 1.0.2 1981 | object-inspect: 1.13.1 1982 | object-keys: 1.1.1 1983 | object.assign: 4.1.5 1984 | regexp.prototype.flags: 1.5.2 1985 | safe-array-concat: 1.1.0 1986 | safe-regex-test: 1.0.3 1987 | string.prototype.trim: 1.2.8 1988 | string.prototype.trimend: 1.0.7 1989 | string.prototype.trimstart: 1.0.7 1990 | typed-array-buffer: 1.0.2 1991 | typed-array-byte-length: 1.0.0 1992 | typed-array-byte-offset: 1.0.1 1993 | typed-array-length: 1.0.4 1994 | unbox-primitive: 1.0.2 1995 | which-typed-array: 1.1.14 1996 | dev: true 1997 | 1998 | /es-abstract@1.23.3: 1999 | resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} 2000 | engines: {node: '>= 0.4'} 2001 | dependencies: 2002 | array-buffer-byte-length: 1.0.1 2003 | arraybuffer.prototype.slice: 1.0.3 2004 | available-typed-arrays: 1.0.7 2005 | call-bind: 1.0.7 2006 | data-view-buffer: 1.0.1 2007 | data-view-byte-length: 1.0.1 2008 | data-view-byte-offset: 1.0.0 2009 | es-define-property: 1.0.0 2010 | es-errors: 1.3.0 2011 | es-object-atoms: 1.0.0 2012 | es-set-tostringtag: 2.0.3 2013 | es-to-primitive: 1.2.1 2014 | function.prototype.name: 1.1.6 2015 | get-intrinsic: 1.2.4 2016 | get-symbol-description: 1.0.2 2017 | globalthis: 1.0.4 2018 | gopd: 1.0.1 2019 | has-property-descriptors: 1.0.2 2020 | has-proto: 1.0.3 2021 | has-symbols: 1.0.3 2022 | hasown: 2.0.2 2023 | internal-slot: 1.0.7 2024 | is-array-buffer: 3.0.4 2025 | is-callable: 1.2.7 2026 | is-data-view: 1.0.1 2027 | is-negative-zero: 2.0.3 2028 | is-regex: 1.1.4 2029 | is-shared-array-buffer: 1.0.3 2030 | is-string: 1.0.7 2031 | is-typed-array: 1.1.13 2032 | is-weakref: 1.0.2 2033 | object-inspect: 1.13.1 2034 | object-keys: 1.1.1 2035 | object.assign: 4.1.5 2036 | regexp.prototype.flags: 1.5.2 2037 | safe-array-concat: 1.1.2 2038 | safe-regex-test: 1.0.3 2039 | string.prototype.trim: 1.2.9 2040 | string.prototype.trimend: 1.0.8 2041 | string.prototype.trimstart: 1.0.8 2042 | typed-array-buffer: 1.0.2 2043 | typed-array-byte-length: 1.0.1 2044 | typed-array-byte-offset: 1.0.2 2045 | typed-array-length: 1.0.6 2046 | unbox-primitive: 1.0.2 2047 | which-typed-array: 1.1.15 2048 | dev: true 2049 | 2050 | /es-define-property@1.0.0: 2051 | resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} 2052 | engines: {node: '>= 0.4'} 2053 | dependencies: 2054 | get-intrinsic: 1.2.4 2055 | dev: true 2056 | 2057 | /es-errors@1.3.0: 2058 | resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} 2059 | engines: {node: '>= 0.4'} 2060 | dev: true 2061 | 2062 | /es-iterator-helpers@1.0.19: 2063 | resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==} 2064 | engines: {node: '>= 0.4'} 2065 | dependencies: 2066 | call-bind: 1.0.7 2067 | define-properties: 1.2.1 2068 | es-abstract: 1.23.3 2069 | es-errors: 1.3.0 2070 | es-set-tostringtag: 2.0.3 2071 | function-bind: 1.1.2 2072 | get-intrinsic: 1.2.4 2073 | globalthis: 1.0.4 2074 | has-property-descriptors: 1.0.2 2075 | has-proto: 1.0.3 2076 | has-symbols: 1.0.3 2077 | internal-slot: 1.0.7 2078 | iterator.prototype: 1.1.2 2079 | safe-array-concat: 1.1.2 2080 | dev: true 2081 | 2082 | /es-object-atoms@1.0.0: 2083 | resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==} 2084 | engines: {node: '>= 0.4'} 2085 | dependencies: 2086 | es-errors: 1.3.0 2087 | dev: true 2088 | 2089 | /es-set-tostringtag@2.0.2: 2090 | resolution: {integrity: sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==} 2091 | engines: {node: '>= 0.4'} 2092 | dependencies: 2093 | get-intrinsic: 1.2.4 2094 | has-tostringtag: 1.0.2 2095 | hasown: 2.0.1 2096 | dev: true 2097 | 2098 | /es-set-tostringtag@2.0.3: 2099 | resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} 2100 | engines: {node: '>= 0.4'} 2101 | dependencies: 2102 | get-intrinsic: 1.2.4 2103 | has-tostringtag: 1.0.2 2104 | hasown: 2.0.2 2105 | dev: true 2106 | 2107 | /es-shim-unscopables@1.0.2: 2108 | resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} 2109 | dependencies: 2110 | hasown: 2.0.2 2111 | dev: true 2112 | 2113 | /es-to-primitive@1.2.1: 2114 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 2115 | engines: {node: '>= 0.4'} 2116 | dependencies: 2117 | is-callable: 1.2.7 2118 | is-date-object: 1.0.5 2119 | is-symbol: 1.0.4 2120 | dev: true 2121 | 2122 | /esbuild@0.19.12: 2123 | resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} 2124 | engines: {node: '>=12'} 2125 | hasBin: true 2126 | requiresBuild: true 2127 | optionalDependencies: 2128 | '@esbuild/aix-ppc64': 0.19.12 2129 | '@esbuild/android-arm': 0.19.12 2130 | '@esbuild/android-arm64': 0.19.12 2131 | '@esbuild/android-x64': 0.19.12 2132 | '@esbuild/darwin-arm64': 0.19.12 2133 | '@esbuild/darwin-x64': 0.19.12 2134 | '@esbuild/freebsd-arm64': 0.19.12 2135 | '@esbuild/freebsd-x64': 0.19.12 2136 | '@esbuild/linux-arm': 0.19.12 2137 | '@esbuild/linux-arm64': 0.19.12 2138 | '@esbuild/linux-ia32': 0.19.12 2139 | '@esbuild/linux-loong64': 0.19.12 2140 | '@esbuild/linux-mips64el': 0.19.12 2141 | '@esbuild/linux-ppc64': 0.19.12 2142 | '@esbuild/linux-riscv64': 0.19.12 2143 | '@esbuild/linux-s390x': 0.19.12 2144 | '@esbuild/linux-x64': 0.19.12 2145 | '@esbuild/netbsd-x64': 0.19.12 2146 | '@esbuild/openbsd-x64': 0.19.12 2147 | '@esbuild/sunos-x64': 0.19.12 2148 | '@esbuild/win32-arm64': 0.19.12 2149 | '@esbuild/win32-ia32': 0.19.12 2150 | '@esbuild/win32-x64': 0.19.12 2151 | dev: true 2152 | 2153 | /esbuild@0.20.2: 2154 | resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} 2155 | engines: {node: '>=12'} 2156 | hasBin: true 2157 | requiresBuild: true 2158 | optionalDependencies: 2159 | '@esbuild/aix-ppc64': 0.20.2 2160 | '@esbuild/android-arm': 0.20.2 2161 | '@esbuild/android-arm64': 0.20.2 2162 | '@esbuild/android-x64': 0.20.2 2163 | '@esbuild/darwin-arm64': 0.20.2 2164 | '@esbuild/darwin-x64': 0.20.2 2165 | '@esbuild/freebsd-arm64': 0.20.2 2166 | '@esbuild/freebsd-x64': 0.20.2 2167 | '@esbuild/linux-arm': 0.20.2 2168 | '@esbuild/linux-arm64': 0.20.2 2169 | '@esbuild/linux-ia32': 0.20.2 2170 | '@esbuild/linux-loong64': 0.20.2 2171 | '@esbuild/linux-mips64el': 0.20.2 2172 | '@esbuild/linux-ppc64': 0.20.2 2173 | '@esbuild/linux-riscv64': 0.20.2 2174 | '@esbuild/linux-s390x': 0.20.2 2175 | '@esbuild/linux-x64': 0.20.2 2176 | '@esbuild/netbsd-x64': 0.20.2 2177 | '@esbuild/openbsd-x64': 0.20.2 2178 | '@esbuild/sunos-x64': 0.20.2 2179 | '@esbuild/win32-arm64': 0.20.2 2180 | '@esbuild/win32-ia32': 0.20.2 2181 | '@esbuild/win32-x64': 0.20.2 2182 | dev: true 2183 | 2184 | /escape-string-regexp@1.0.5: 2185 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 2186 | engines: {node: '>=0.8.0'} 2187 | dev: true 2188 | 2189 | /escape-string-regexp@4.0.0: 2190 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 2191 | engines: {node: '>=10'} 2192 | dev: true 2193 | 2194 | /escape-string-regexp@5.0.0: 2195 | resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} 2196 | engines: {node: '>=12'} 2197 | dev: true 2198 | 2199 | /eslint-config-prettier@9.1.0(eslint@8.56.0): 2200 | resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} 2201 | hasBin: true 2202 | peerDependencies: 2203 | eslint: '>=7.0.0' 2204 | dependencies: 2205 | eslint: 8.56.0 2206 | dev: true 2207 | 2208 | /eslint-import-resolver-node@0.3.9: 2209 | resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} 2210 | dependencies: 2211 | debug: 3.2.7 2212 | is-core-module: 2.13.1 2213 | resolve: 1.22.8 2214 | transitivePeerDependencies: 2215 | - supports-color 2216 | dev: true 2217 | 2218 | /eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0): 2219 | resolution: {integrity: sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==} 2220 | engines: {node: ^14.18.0 || >=16.0.0} 2221 | peerDependencies: 2222 | eslint: '*' 2223 | eslint-plugin-import: '*' 2224 | dependencies: 2225 | debug: 4.3.4 2226 | enhanced-resolve: 5.16.1 2227 | eslint: 8.56.0 2228 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) 2229 | eslint-plugin-import: 2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) 2230 | fast-glob: 3.3.2 2231 | get-tsconfig: 4.7.5 2232 | is-core-module: 2.13.1 2233 | is-glob: 4.0.3 2234 | transitivePeerDependencies: 2235 | - '@typescript-eslint/parser' 2236 | - eslint-import-resolver-node 2237 | - eslint-import-resolver-webpack 2238 | - supports-color 2239 | dev: true 2240 | 2241 | /eslint-module-utils@2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): 2242 | resolution: {integrity: sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==} 2243 | engines: {node: '>=4'} 2244 | peerDependencies: 2245 | '@typescript-eslint/parser': '*' 2246 | eslint: '*' 2247 | eslint-import-resolver-node: '*' 2248 | eslint-import-resolver-typescript: '*' 2249 | eslint-import-resolver-webpack: '*' 2250 | peerDependenciesMeta: 2251 | '@typescript-eslint/parser': 2252 | optional: true 2253 | eslint: 2254 | optional: true 2255 | eslint-import-resolver-node: 2256 | optional: true 2257 | eslint-import-resolver-typescript: 2258 | optional: true 2259 | eslint-import-resolver-webpack: 2260 | optional: true 2261 | dependencies: 2262 | '@typescript-eslint/parser': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 2263 | debug: 3.2.7 2264 | eslint: 8.56.0 2265 | eslint-import-resolver-node: 0.3.9 2266 | eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@7.9.0)(eslint-plugin-import@2.29.1)(eslint@8.56.0) 2267 | transitivePeerDependencies: 2268 | - supports-color 2269 | dev: true 2270 | 2271 | /eslint-plugin-import@2.29.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0): 2272 | resolution: {integrity: sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==} 2273 | engines: {node: '>=4'} 2274 | peerDependencies: 2275 | '@typescript-eslint/parser': '*' 2276 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 2277 | peerDependenciesMeta: 2278 | '@typescript-eslint/parser': 2279 | optional: true 2280 | dependencies: 2281 | '@typescript-eslint/parser': 7.9.0(eslint@8.56.0)(typescript@5.4.5) 2282 | array-includes: 3.1.8 2283 | array.prototype.findlastindex: 1.2.5 2284 | array.prototype.flat: 1.3.2 2285 | array.prototype.flatmap: 1.3.2 2286 | debug: 3.2.7 2287 | doctrine: 2.1.0 2288 | eslint: 8.56.0 2289 | eslint-import-resolver-node: 0.3.9 2290 | eslint-module-utils: 2.8.1(@typescript-eslint/parser@7.9.0)(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@8.56.0) 2291 | hasown: 2.0.2 2292 | is-core-module: 2.13.1 2293 | is-glob: 4.0.3 2294 | minimatch: 3.1.2 2295 | object.fromentries: 2.0.8 2296 | object.groupby: 1.0.3 2297 | object.values: 1.2.0 2298 | semver: 6.3.1 2299 | tsconfig-paths: 3.15.0 2300 | transitivePeerDependencies: 2301 | - eslint-import-resolver-typescript 2302 | - eslint-import-resolver-webpack 2303 | - supports-color 2304 | dev: true 2305 | 2306 | /eslint-plugin-jest-dom@5.4.0(eslint@8.56.0): 2307 | resolution: {integrity: sha512-yBqvFsnpS5Sybjoq61cJiUsenRkC9K32hYQBFS9doBR7nbQZZ5FyO+X7MlmfM1C48Ejx/qTuOCgukDUNyzKZ7A==} 2308 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6', yarn: '>=1'} 2309 | peerDependencies: 2310 | '@testing-library/dom': ^8.0.0 || ^9.0.0 || ^10.0.0 2311 | eslint: ^6.8.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 2312 | peerDependenciesMeta: 2313 | '@testing-library/dom': 2314 | optional: true 2315 | dependencies: 2316 | '@babel/runtime': 7.24.5 2317 | eslint: 8.56.0 2318 | requireindex: 1.2.0 2319 | dev: true 2320 | 2321 | /eslint-plugin-jest@27.9.0(@typescript-eslint/eslint-plugin@7.9.0)(eslint@8.56.0)(typescript@5.4.5): 2322 | resolution: {integrity: sha512-QIT7FH7fNmd9n4se7FFKHbsLKGQiw885Ds6Y/sxKgCZ6natwCsXdgPOADnYVxN2QrRweF0FZWbJ6S7Rsn7llug==} 2323 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 2324 | peerDependencies: 2325 | '@typescript-eslint/eslint-plugin': ^5.0.0 || ^6.0.0 || ^7.0.0 2326 | eslint: ^7.0.0 || ^8.0.0 2327 | jest: '*' 2328 | peerDependenciesMeta: 2329 | '@typescript-eslint/eslint-plugin': 2330 | optional: true 2331 | jest: 2332 | optional: true 2333 | dependencies: 2334 | '@typescript-eslint/eslint-plugin': 7.9.0(@typescript-eslint/parser@7.9.0)(eslint@8.56.0)(typescript@5.4.5) 2335 | '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@5.4.5) 2336 | eslint: 8.56.0 2337 | transitivePeerDependencies: 2338 | - supports-color 2339 | - typescript 2340 | dev: true 2341 | 2342 | /eslint-plugin-jsx-a11y@6.8.0(eslint@8.56.0): 2343 | resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} 2344 | engines: {node: '>=4.0'} 2345 | peerDependencies: 2346 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 2347 | dependencies: 2348 | '@babel/runtime': 7.24.5 2349 | aria-query: 5.3.0 2350 | array-includes: 3.1.8 2351 | array.prototype.flatmap: 1.3.2 2352 | ast-types-flow: 0.0.8 2353 | axe-core: 4.7.0 2354 | axobject-query: 3.2.1 2355 | damerau-levenshtein: 1.0.8 2356 | emoji-regex: 9.2.2 2357 | es-iterator-helpers: 1.0.19 2358 | eslint: 8.56.0 2359 | hasown: 2.0.2 2360 | jsx-ast-utils: 3.3.5 2361 | language-tags: 1.0.9 2362 | minimatch: 3.1.2 2363 | object.entries: 1.1.8 2364 | object.fromentries: 2.0.8 2365 | dev: true 2366 | 2367 | /eslint-plugin-react-hooks@4.6.2(eslint@8.56.0): 2368 | resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} 2369 | engines: {node: '>=10'} 2370 | peerDependencies: 2371 | eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 2372 | dependencies: 2373 | eslint: 8.56.0 2374 | dev: true 2375 | 2376 | /eslint-plugin-react@7.34.1(eslint@8.56.0): 2377 | resolution: {integrity: sha512-N97CxlouPT1AHt8Jn0mhhN2RrADlUAsk1/atcT2KyA/l9Q/E6ll7OIGwNumFmWfZ9skV3XXccYS19h80rHtgkw==} 2378 | engines: {node: '>=4'} 2379 | peerDependencies: 2380 | eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 2381 | dependencies: 2382 | array-includes: 3.1.8 2383 | array.prototype.findlast: 1.2.5 2384 | array.prototype.flatmap: 1.3.2 2385 | array.prototype.toreversed: 1.1.2 2386 | array.prototype.tosorted: 1.1.3 2387 | doctrine: 2.1.0 2388 | es-iterator-helpers: 1.0.19 2389 | eslint: 8.56.0 2390 | estraverse: 5.3.0 2391 | jsx-ast-utils: 3.3.5 2392 | minimatch: 3.1.2 2393 | object.entries: 1.1.8 2394 | object.fromentries: 2.0.8 2395 | object.hasown: 1.1.4 2396 | object.values: 1.2.0 2397 | prop-types: 15.8.1 2398 | resolve: 2.0.0-next.5 2399 | semver: 6.3.1 2400 | string.prototype.matchall: 4.0.11 2401 | dev: true 2402 | 2403 | /eslint-plugin-simple-import-sort@12.1.0(eslint@8.56.0): 2404 | resolution: {integrity: sha512-Y2fqAfC11TcG/WP3TrI1Gi3p3nc8XJyEOJYHyEPEGI/UAgNx6akxxlX74p7SbAQdLcgASKhj8M0GKvH3vq/+ig==} 2405 | peerDependencies: 2406 | eslint: '>=5.0.0' 2407 | dependencies: 2408 | eslint: 8.56.0 2409 | dev: true 2410 | 2411 | /eslint-scope@5.1.1: 2412 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 2413 | engines: {node: '>=8.0.0'} 2414 | dependencies: 2415 | esrecurse: 4.3.0 2416 | estraverse: 4.3.0 2417 | dev: true 2418 | 2419 | /eslint-scope@7.2.2: 2420 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 2421 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 2422 | dependencies: 2423 | esrecurse: 4.3.0 2424 | estraverse: 5.3.0 2425 | dev: true 2426 | 2427 | /eslint-visitor-keys@3.4.3: 2428 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 2429 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 2430 | dev: true 2431 | 2432 | /eslint@8.56.0: 2433 | resolution: {integrity: sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==} 2434 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 2435 | hasBin: true 2436 | dependencies: 2437 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.56.0) 2438 | '@eslint-community/regexpp': 4.10.0 2439 | '@eslint/eslintrc': 2.1.4 2440 | '@eslint/js': 8.56.0 2441 | '@humanwhocodes/config-array': 0.11.14 2442 | '@humanwhocodes/module-importer': 1.0.1 2443 | '@nodelib/fs.walk': 1.2.8 2444 | '@ungap/structured-clone': 1.2.0 2445 | ajv: 6.12.6 2446 | chalk: 4.1.2 2447 | cross-spawn: 7.0.3 2448 | debug: 4.3.4 2449 | doctrine: 3.0.0 2450 | escape-string-regexp: 4.0.0 2451 | eslint-scope: 7.2.2 2452 | eslint-visitor-keys: 3.4.3 2453 | espree: 9.6.1 2454 | esquery: 1.5.0 2455 | esutils: 2.0.3 2456 | fast-deep-equal: 3.1.3 2457 | file-entry-cache: 6.0.1 2458 | find-up: 5.0.0 2459 | glob-parent: 6.0.2 2460 | globals: 13.24.0 2461 | graphemer: 1.4.0 2462 | ignore: 5.3.1 2463 | imurmurhash: 0.1.4 2464 | is-glob: 4.0.3 2465 | is-path-inside: 3.0.3 2466 | js-yaml: 4.1.0 2467 | json-stable-stringify-without-jsonify: 1.0.1 2468 | levn: 0.4.1 2469 | lodash.merge: 4.6.2 2470 | minimatch: 3.1.2 2471 | natural-compare: 1.4.0 2472 | optionator: 0.9.3 2473 | strip-ansi: 6.0.1 2474 | text-table: 0.2.0 2475 | transitivePeerDependencies: 2476 | - supports-color 2477 | dev: true 2478 | 2479 | /espree@9.6.1: 2480 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 2481 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 2482 | dependencies: 2483 | acorn: 8.11.3 2484 | acorn-jsx: 5.3.2(acorn@8.11.3) 2485 | eslint-visitor-keys: 3.4.3 2486 | dev: true 2487 | 2488 | /esquery@1.5.0: 2489 | resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} 2490 | engines: {node: '>=0.10'} 2491 | dependencies: 2492 | estraverse: 5.3.0 2493 | dev: true 2494 | 2495 | /esrecurse@4.3.0: 2496 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 2497 | engines: {node: '>=4.0'} 2498 | dependencies: 2499 | estraverse: 5.3.0 2500 | dev: true 2501 | 2502 | /estraverse@4.3.0: 2503 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 2504 | engines: {node: '>=4.0'} 2505 | dev: true 2506 | 2507 | /estraverse@5.3.0: 2508 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 2509 | engines: {node: '>=4.0'} 2510 | dev: true 2511 | 2512 | /estree-walker@3.0.3: 2513 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 2514 | dependencies: 2515 | '@types/estree': 1.0.5 2516 | dev: true 2517 | 2518 | /esutils@2.0.3: 2519 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 2520 | engines: {node: '>=0.10.0'} 2521 | dev: true 2522 | 2523 | /eventemitter3@5.0.1: 2524 | resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 2525 | dev: true 2526 | 2527 | /execa@5.1.1: 2528 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} 2529 | engines: {node: '>=10'} 2530 | dependencies: 2531 | cross-spawn: 7.0.3 2532 | get-stream: 6.0.1 2533 | human-signals: 2.1.0 2534 | is-stream: 2.0.1 2535 | merge-stream: 2.0.0 2536 | npm-run-path: 4.0.1 2537 | onetime: 5.1.2 2538 | signal-exit: 3.0.7 2539 | strip-final-newline: 2.0.0 2540 | dev: true 2541 | 2542 | /execa@8.0.1: 2543 | resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} 2544 | engines: {node: '>=16.17'} 2545 | dependencies: 2546 | cross-spawn: 7.0.3 2547 | get-stream: 8.0.1 2548 | human-signals: 5.0.0 2549 | is-stream: 3.0.0 2550 | merge-stream: 2.0.0 2551 | npm-run-path: 5.2.0 2552 | onetime: 6.0.0 2553 | signal-exit: 4.1.0 2554 | strip-final-newline: 3.0.0 2555 | dev: true 2556 | 2557 | /fast-deep-equal@3.1.3: 2558 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 2559 | dev: true 2560 | 2561 | /fast-glob@3.3.2: 2562 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 2563 | engines: {node: '>=8.6.0'} 2564 | dependencies: 2565 | '@nodelib/fs.stat': 2.0.5 2566 | '@nodelib/fs.walk': 1.2.8 2567 | glob-parent: 5.1.2 2568 | merge2: 1.4.1 2569 | micromatch: 4.0.5 2570 | dev: true 2571 | 2572 | /fast-json-stable-stringify@2.1.0: 2573 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 2574 | dev: true 2575 | 2576 | /fast-levenshtein@2.0.6: 2577 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 2578 | dev: true 2579 | 2580 | /fastq@1.17.1: 2581 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 2582 | dependencies: 2583 | reusify: 1.0.4 2584 | dev: true 2585 | 2586 | /file-entry-cache@6.0.1: 2587 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 2588 | engines: {node: ^10.12.0 || >=12.0.0} 2589 | dependencies: 2590 | flat-cache: 3.2.0 2591 | dev: true 2592 | 2593 | /fill-range@7.0.1: 2594 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 2595 | engines: {node: '>=8'} 2596 | dependencies: 2597 | to-regex-range: 5.0.1 2598 | dev: true 2599 | 2600 | /find-up@5.0.0: 2601 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 2602 | engines: {node: '>=10'} 2603 | dependencies: 2604 | locate-path: 6.0.0 2605 | path-exists: 4.0.0 2606 | dev: true 2607 | 2608 | /flat-cache@3.2.0: 2609 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} 2610 | engines: {node: ^10.12.0 || >=12.0.0} 2611 | dependencies: 2612 | flatted: 3.3.1 2613 | keyv: 4.5.4 2614 | rimraf: 3.0.2 2615 | dev: true 2616 | 2617 | /flatted@3.3.1: 2618 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} 2619 | dev: true 2620 | 2621 | /for-each@0.3.3: 2622 | resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} 2623 | dependencies: 2624 | is-callable: 1.2.7 2625 | dev: true 2626 | 2627 | /foreground-child@3.1.1: 2628 | resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} 2629 | engines: {node: '>=14'} 2630 | dependencies: 2631 | cross-spawn: 7.0.3 2632 | signal-exit: 4.1.0 2633 | dev: true 2634 | 2635 | /fs.realpath@1.0.0: 2636 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 2637 | dev: true 2638 | 2639 | /fsevents@2.3.3: 2640 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 2641 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 2642 | os: [darwin] 2643 | requiresBuild: true 2644 | dev: true 2645 | optional: true 2646 | 2647 | /function-bind@1.1.2: 2648 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 2649 | dev: true 2650 | 2651 | /function.prototype.name@1.1.6: 2652 | resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} 2653 | engines: {node: '>= 0.4'} 2654 | dependencies: 2655 | call-bind: 1.0.7 2656 | define-properties: 1.2.1 2657 | es-abstract: 1.22.4 2658 | functions-have-names: 1.2.3 2659 | dev: true 2660 | 2661 | /functions-have-names@1.2.3: 2662 | resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} 2663 | dev: true 2664 | 2665 | /get-east-asian-width@1.2.0: 2666 | resolution: {integrity: sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==} 2667 | engines: {node: '>=18'} 2668 | dev: true 2669 | 2670 | /get-func-name@2.0.2: 2671 | resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} 2672 | dev: true 2673 | 2674 | /get-intrinsic@1.2.4: 2675 | resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} 2676 | engines: {node: '>= 0.4'} 2677 | dependencies: 2678 | es-errors: 1.3.0 2679 | function-bind: 1.1.2 2680 | has-proto: 1.0.3 2681 | has-symbols: 1.0.3 2682 | hasown: 2.0.1 2683 | dev: true 2684 | 2685 | /get-stream@6.0.1: 2686 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 2687 | engines: {node: '>=10'} 2688 | dev: true 2689 | 2690 | /get-stream@8.0.1: 2691 | resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} 2692 | engines: {node: '>=16'} 2693 | dev: true 2694 | 2695 | /get-symbol-description@1.0.2: 2696 | resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==} 2697 | engines: {node: '>= 0.4'} 2698 | dependencies: 2699 | call-bind: 1.0.7 2700 | es-errors: 1.3.0 2701 | get-intrinsic: 1.2.4 2702 | dev: true 2703 | 2704 | /get-tsconfig@4.7.5: 2705 | resolution: {integrity: sha512-ZCuZCnlqNzjb4QprAzXKdpp/gh6KTxSJuw3IBsPnV/7fV4NxC9ckB+vPTt8w7fJA0TaSD7c55BR47JD6MEDyDw==} 2706 | dependencies: 2707 | resolve-pkg-maps: 1.0.0 2708 | dev: true 2709 | 2710 | /glob-parent@5.1.2: 2711 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 2712 | engines: {node: '>= 6'} 2713 | dependencies: 2714 | is-glob: 4.0.3 2715 | dev: true 2716 | 2717 | /glob-parent@6.0.2: 2718 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 2719 | engines: {node: '>=10.13.0'} 2720 | dependencies: 2721 | is-glob: 4.0.3 2722 | dev: true 2723 | 2724 | /glob@10.3.10: 2725 | resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} 2726 | engines: {node: '>=16 || 14 >=14.17'} 2727 | hasBin: true 2728 | dependencies: 2729 | foreground-child: 3.1.1 2730 | jackspeak: 2.3.6 2731 | minimatch: 9.0.3 2732 | minipass: 5.0.0 2733 | path-scurry: 1.10.1 2734 | dev: true 2735 | 2736 | /glob@7.2.3: 2737 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 2738 | dependencies: 2739 | fs.realpath: 1.0.0 2740 | inflight: 1.0.6 2741 | inherits: 2.0.4 2742 | minimatch: 3.1.2 2743 | once: 1.4.0 2744 | path-is-absolute: 1.0.1 2745 | dev: true 2746 | 2747 | /globals@11.12.0: 2748 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 2749 | engines: {node: '>=4'} 2750 | dev: true 2751 | 2752 | /globals@13.24.0: 2753 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 2754 | engines: {node: '>=8'} 2755 | dependencies: 2756 | type-fest: 0.20.2 2757 | dev: true 2758 | 2759 | /globalthis@1.0.3: 2760 | resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} 2761 | engines: {node: '>= 0.4'} 2762 | dependencies: 2763 | define-properties: 1.2.1 2764 | dev: true 2765 | 2766 | /globalthis@1.0.4: 2767 | resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} 2768 | engines: {node: '>= 0.4'} 2769 | dependencies: 2770 | define-properties: 1.2.1 2771 | gopd: 1.0.1 2772 | dev: true 2773 | 2774 | /globby@11.1.0: 2775 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 2776 | engines: {node: '>=10'} 2777 | dependencies: 2778 | array-union: 2.1.0 2779 | dir-glob: 3.0.1 2780 | fast-glob: 3.3.2 2781 | ignore: 5.3.1 2782 | merge2: 1.4.1 2783 | slash: 3.0.0 2784 | dev: true 2785 | 2786 | /globby@13.2.2: 2787 | resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} 2788 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 2789 | dependencies: 2790 | dir-glob: 3.0.1 2791 | fast-glob: 3.3.2 2792 | ignore: 5.3.1 2793 | merge2: 1.4.1 2794 | slash: 4.0.0 2795 | dev: true 2796 | 2797 | /gopd@1.0.1: 2798 | resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} 2799 | dependencies: 2800 | get-intrinsic: 1.2.4 2801 | dev: true 2802 | 2803 | /graceful-fs@4.2.11: 2804 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 2805 | dev: true 2806 | 2807 | /graphemer@1.4.0: 2808 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 2809 | dev: true 2810 | 2811 | /hard-rejection@2.1.0: 2812 | resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==} 2813 | engines: {node: '>=6'} 2814 | dev: true 2815 | 2816 | /has-bigints@1.0.2: 2817 | resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==} 2818 | dev: true 2819 | 2820 | /has-flag@3.0.0: 2821 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 2822 | engines: {node: '>=4'} 2823 | dev: true 2824 | 2825 | /has-flag@4.0.0: 2826 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 2827 | engines: {node: '>=8'} 2828 | dev: true 2829 | 2830 | /has-property-descriptors@1.0.2: 2831 | resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} 2832 | dependencies: 2833 | es-define-property: 1.0.0 2834 | dev: true 2835 | 2836 | /has-proto@1.0.3: 2837 | resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} 2838 | engines: {node: '>= 0.4'} 2839 | dev: true 2840 | 2841 | /has-symbols@1.0.3: 2842 | resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} 2843 | engines: {node: '>= 0.4'} 2844 | dev: true 2845 | 2846 | /has-tostringtag@1.0.2: 2847 | resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} 2848 | engines: {node: '>= 0.4'} 2849 | dependencies: 2850 | has-symbols: 1.0.3 2851 | dev: true 2852 | 2853 | /hasown@2.0.1: 2854 | resolution: {integrity: sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==} 2855 | engines: {node: '>= 0.4'} 2856 | dependencies: 2857 | function-bind: 1.1.2 2858 | dev: true 2859 | 2860 | /hasown@2.0.2: 2861 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 2862 | engines: {node: '>= 0.4'} 2863 | dependencies: 2864 | function-bind: 1.1.2 2865 | dev: true 2866 | 2867 | /hosted-git-info@2.8.9: 2868 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 2869 | dev: true 2870 | 2871 | /hosted-git-info@4.1.0: 2872 | resolution: {integrity: sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==} 2873 | engines: {node: '>=10'} 2874 | dependencies: 2875 | lru-cache: 6.0.0 2876 | dev: true 2877 | 2878 | /human-signals@2.1.0: 2879 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} 2880 | engines: {node: '>=10.17.0'} 2881 | dev: true 2882 | 2883 | /human-signals@5.0.0: 2884 | resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} 2885 | engines: {node: '>=16.17.0'} 2886 | dev: true 2887 | 2888 | /husky@9.0.11: 2889 | resolution: {integrity: sha512-AB6lFlbwwyIqMdHYhwPe+kjOC3Oc5P3nThEoW/AaO2BX3vJDjWPFxYLxokUZOo6RNX20He3AaT8sESs9NJcmEw==} 2890 | engines: {node: '>=18'} 2891 | hasBin: true 2892 | dev: true 2893 | 2894 | /ignore@5.3.1: 2895 | resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} 2896 | engines: {node: '>= 4'} 2897 | dev: true 2898 | 2899 | /import-fresh@3.3.0: 2900 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 2901 | engines: {node: '>=6'} 2902 | dependencies: 2903 | parent-module: 1.0.1 2904 | resolve-from: 4.0.0 2905 | dev: true 2906 | 2907 | /imurmurhash@0.1.4: 2908 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 2909 | engines: {node: '>=0.8.19'} 2910 | dev: true 2911 | 2912 | /indent-string@5.0.0: 2913 | resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} 2914 | engines: {node: '>=12'} 2915 | dev: true 2916 | 2917 | /inflight@1.0.6: 2918 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 2919 | dependencies: 2920 | once: 1.4.0 2921 | wrappy: 1.0.2 2922 | dev: true 2923 | 2924 | /inherits@2.0.4: 2925 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 2926 | dev: true 2927 | 2928 | /internal-slot@1.0.7: 2929 | resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} 2930 | engines: {node: '>= 0.4'} 2931 | dependencies: 2932 | es-errors: 1.3.0 2933 | hasown: 2.0.1 2934 | side-channel: 1.0.5 2935 | dev: true 2936 | 2937 | /ip-regex@4.3.0: 2938 | resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==} 2939 | engines: {node: '>=8'} 2940 | dev: false 2941 | 2942 | /is-array-buffer@3.0.4: 2943 | resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} 2944 | engines: {node: '>= 0.4'} 2945 | dependencies: 2946 | call-bind: 1.0.7 2947 | get-intrinsic: 1.2.4 2948 | dev: true 2949 | 2950 | /is-arrayish@0.2.1: 2951 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 2952 | dev: true 2953 | 2954 | /is-async-function@2.0.0: 2955 | resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} 2956 | engines: {node: '>= 0.4'} 2957 | dependencies: 2958 | has-tostringtag: 1.0.2 2959 | dev: true 2960 | 2961 | /is-bigint@1.0.4: 2962 | resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} 2963 | dependencies: 2964 | has-bigints: 1.0.2 2965 | dev: true 2966 | 2967 | /is-binary-path@2.1.0: 2968 | resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} 2969 | engines: {node: '>=8'} 2970 | dependencies: 2971 | binary-extensions: 2.2.0 2972 | dev: true 2973 | 2974 | /is-boolean-object@1.1.2: 2975 | resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} 2976 | engines: {node: '>= 0.4'} 2977 | dependencies: 2978 | call-bind: 1.0.7 2979 | has-tostringtag: 1.0.2 2980 | dev: true 2981 | 2982 | /is-callable@1.2.7: 2983 | resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} 2984 | engines: {node: '>= 0.4'} 2985 | dev: true 2986 | 2987 | /is-core-module@2.13.1: 2988 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} 2989 | dependencies: 2990 | hasown: 2.0.1 2991 | dev: true 2992 | 2993 | /is-data-view@1.0.1: 2994 | resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} 2995 | engines: {node: '>= 0.4'} 2996 | dependencies: 2997 | is-typed-array: 1.1.13 2998 | dev: true 2999 | 3000 | /is-date-object@1.0.5: 3001 | resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} 3002 | engines: {node: '>= 0.4'} 3003 | dependencies: 3004 | has-tostringtag: 1.0.2 3005 | dev: true 3006 | 3007 | /is-extglob@2.1.1: 3008 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 3009 | engines: {node: '>=0.10.0'} 3010 | dev: true 3011 | 3012 | /is-finalizationregistry@1.0.2: 3013 | resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} 3014 | dependencies: 3015 | call-bind: 1.0.7 3016 | dev: true 3017 | 3018 | /is-fullwidth-code-point@3.0.0: 3019 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 3020 | engines: {node: '>=8'} 3021 | dev: true 3022 | 3023 | /is-fullwidth-code-point@4.0.0: 3024 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} 3025 | engines: {node: '>=12'} 3026 | dev: true 3027 | 3028 | /is-fullwidth-code-point@5.0.0: 3029 | resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} 3030 | engines: {node: '>=18'} 3031 | dependencies: 3032 | get-east-asian-width: 1.2.0 3033 | dev: true 3034 | 3035 | /is-generator-function@1.0.10: 3036 | resolution: {integrity: sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==} 3037 | engines: {node: '>= 0.4'} 3038 | dependencies: 3039 | has-tostringtag: 1.0.2 3040 | dev: true 3041 | 3042 | /is-glob@4.0.3: 3043 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 3044 | engines: {node: '>=0.10.0'} 3045 | dependencies: 3046 | is-extglob: 2.1.1 3047 | dev: true 3048 | 3049 | /is-map@2.0.3: 3050 | resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} 3051 | engines: {node: '>= 0.4'} 3052 | dev: true 3053 | 3054 | /is-negative-zero@2.0.3: 3055 | resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} 3056 | engines: {node: '>= 0.4'} 3057 | dev: true 3058 | 3059 | /is-number-object@1.0.7: 3060 | resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} 3061 | engines: {node: '>= 0.4'} 3062 | dependencies: 3063 | has-tostringtag: 1.0.2 3064 | dev: true 3065 | 3066 | /is-number@7.0.0: 3067 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 3068 | engines: {node: '>=0.12.0'} 3069 | dev: true 3070 | 3071 | /is-path-cwd@3.0.0: 3072 | resolution: {integrity: sha512-kyiNFFLU0Ampr6SDZitD/DwUo4Zs1nSdnygUBqsu3LooL00Qvb5j+UnvApUn/TTj1J3OuE6BTdQ5rudKmU2ZaA==} 3073 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3074 | dev: true 3075 | 3076 | /is-path-inside@3.0.3: 3077 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 3078 | engines: {node: '>=8'} 3079 | dev: true 3080 | 3081 | /is-path-inside@4.0.0: 3082 | resolution: {integrity: sha512-lJJV/5dYS+RcL8uQdBDW9c9uWFLLBNRyFhnAKXw5tVqLlKZ4RMGZKv+YQ/IA3OhD+RpbJa1LLFM1FQPGyIXvOA==} 3083 | engines: {node: '>=12'} 3084 | dev: true 3085 | 3086 | /is-plain-obj@1.1.0: 3087 | resolution: {integrity: sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==} 3088 | engines: {node: '>=0.10.0'} 3089 | dev: true 3090 | 3091 | /is-regex@1.1.4: 3092 | resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} 3093 | engines: {node: '>= 0.4'} 3094 | dependencies: 3095 | call-bind: 1.0.7 3096 | has-tostringtag: 1.0.2 3097 | dev: true 3098 | 3099 | /is-set@2.0.3: 3100 | resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} 3101 | engines: {node: '>= 0.4'} 3102 | dev: true 3103 | 3104 | /is-shared-array-buffer@1.0.2: 3105 | resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==} 3106 | dependencies: 3107 | call-bind: 1.0.7 3108 | dev: true 3109 | 3110 | /is-shared-array-buffer@1.0.3: 3111 | resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} 3112 | engines: {node: '>= 0.4'} 3113 | dependencies: 3114 | call-bind: 1.0.7 3115 | dev: true 3116 | 3117 | /is-stream@2.0.1: 3118 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 3119 | engines: {node: '>=8'} 3120 | dev: true 3121 | 3122 | /is-stream@3.0.0: 3123 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} 3124 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3125 | dev: true 3126 | 3127 | /is-string@1.0.7: 3128 | resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} 3129 | engines: {node: '>= 0.4'} 3130 | dependencies: 3131 | has-tostringtag: 1.0.2 3132 | dev: true 3133 | 3134 | /is-symbol@1.0.4: 3135 | resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} 3136 | engines: {node: '>= 0.4'} 3137 | dependencies: 3138 | has-symbols: 1.0.3 3139 | dev: true 3140 | 3141 | /is-typed-array@1.1.13: 3142 | resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} 3143 | engines: {node: '>= 0.4'} 3144 | dependencies: 3145 | which-typed-array: 1.1.14 3146 | dev: true 3147 | 3148 | /is-weakmap@2.0.2: 3149 | resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} 3150 | engines: {node: '>= 0.4'} 3151 | dev: true 3152 | 3153 | /is-weakref@1.0.2: 3154 | resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} 3155 | dependencies: 3156 | call-bind: 1.0.7 3157 | dev: true 3158 | 3159 | /is-weakset@2.0.3: 3160 | resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} 3161 | engines: {node: '>= 0.4'} 3162 | dependencies: 3163 | call-bind: 1.0.7 3164 | get-intrinsic: 1.2.4 3165 | dev: true 3166 | 3167 | /isarray@2.0.5: 3168 | resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} 3169 | dev: true 3170 | 3171 | /isexe@2.0.0: 3172 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 3173 | dev: true 3174 | 3175 | /iterator.prototype@1.1.2: 3176 | resolution: {integrity: sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==} 3177 | dependencies: 3178 | define-properties: 1.2.1 3179 | get-intrinsic: 1.2.4 3180 | has-symbols: 1.0.3 3181 | reflect.getprototypeof: 1.0.6 3182 | set-function-name: 2.0.2 3183 | dev: true 3184 | 3185 | /jackspeak@2.3.6: 3186 | resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} 3187 | engines: {node: '>=14'} 3188 | dependencies: 3189 | '@isaacs/cliui': 8.0.2 3190 | optionalDependencies: 3191 | '@pkgjs/parseargs': 0.11.0 3192 | dev: true 3193 | 3194 | /javascript-natural-sort@0.7.1: 3195 | resolution: {integrity: sha512-nO6jcEfZWQXDhOiBtG2KvKyEptz7RVbpGP4vTD2hLBdmNQSsCiicO2Ioinv6UI4y9ukqnBpy+XZ9H6uLNgJTlw==} 3196 | dev: true 3197 | 3198 | /joycon@3.1.1: 3199 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} 3200 | engines: {node: '>=10'} 3201 | dev: true 3202 | 3203 | /js-tokens@4.0.0: 3204 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 3205 | dev: true 3206 | 3207 | /js-tokens@9.0.0: 3208 | resolution: {integrity: sha512-WriZw1luRMlmV3LGJaR6QOJjWwgLUTf89OwT2lUOyjX2dJGBwgmIkbcz+7WFZjrZM635JOIR517++e/67CP9dQ==} 3209 | dev: true 3210 | 3211 | /js-yaml@4.1.0: 3212 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 3213 | hasBin: true 3214 | dependencies: 3215 | argparse: 2.0.1 3216 | dev: true 3217 | 3218 | /jsesc@2.5.2: 3219 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 3220 | engines: {node: '>=4'} 3221 | hasBin: true 3222 | dev: true 3223 | 3224 | /json-buffer@3.0.1: 3225 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 3226 | dev: true 3227 | 3228 | /json-parse-better-errors@1.0.2: 3229 | resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} 3230 | dev: true 3231 | 3232 | /json-parse-even-better-errors@2.3.1: 3233 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 3234 | dev: true 3235 | 3236 | /json-schema-traverse@0.4.1: 3237 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 3238 | dev: true 3239 | 3240 | /json-stable-stringify-without-jsonify@1.0.1: 3241 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 3242 | dev: true 3243 | 3244 | /json5@1.0.2: 3245 | resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==} 3246 | hasBin: true 3247 | dependencies: 3248 | minimist: 1.2.8 3249 | dev: true 3250 | 3251 | /jsx-ast-utils@3.3.5: 3252 | resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==} 3253 | engines: {node: '>=4.0'} 3254 | dependencies: 3255 | array-includes: 3.1.8 3256 | array.prototype.flat: 1.3.2 3257 | object.assign: 4.1.5 3258 | object.values: 1.2.0 3259 | dev: true 3260 | 3261 | /keyv@4.5.4: 3262 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 3263 | dependencies: 3264 | json-buffer: 3.0.1 3265 | dev: true 3266 | 3267 | /kind-of@6.0.3: 3268 | resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} 3269 | engines: {node: '>=0.10.0'} 3270 | dev: true 3271 | 3272 | /language-subtag-registry@0.3.22: 3273 | resolution: {integrity: sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==} 3274 | dev: true 3275 | 3276 | /language-tags@1.0.9: 3277 | resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==} 3278 | engines: {node: '>=0.10'} 3279 | dependencies: 3280 | language-subtag-registry: 0.3.22 3281 | dev: true 3282 | 3283 | /levn@0.4.1: 3284 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 3285 | engines: {node: '>= 0.8.0'} 3286 | dependencies: 3287 | prelude-ls: 1.2.1 3288 | type-check: 0.4.0 3289 | dev: true 3290 | 3291 | /lilconfig@3.0.0: 3292 | resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==} 3293 | engines: {node: '>=14'} 3294 | dev: true 3295 | 3296 | /lines-and-columns@1.2.4: 3297 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 3298 | dev: true 3299 | 3300 | /lint-staged@15.2.2: 3301 | resolution: {integrity: sha512-TiTt93OPh1OZOsb5B7k96A/ATl2AjIZo+vnzFZ6oHK5FuTk63ByDtxGQpHm+kFETjEWqgkF95M8FRXKR/LEBcw==} 3302 | engines: {node: '>=18.12.0'} 3303 | hasBin: true 3304 | dependencies: 3305 | chalk: 5.3.0 3306 | commander: 11.1.0 3307 | debug: 4.3.4 3308 | execa: 8.0.1 3309 | lilconfig: 3.0.0 3310 | listr2: 8.0.1 3311 | micromatch: 4.0.5 3312 | pidtree: 0.6.0 3313 | string-argv: 0.3.2 3314 | yaml: 2.3.4 3315 | transitivePeerDependencies: 3316 | - supports-color 3317 | dev: true 3318 | 3319 | /listr2@8.0.1: 3320 | resolution: {integrity: sha512-ovJXBXkKGfq+CwmKTjluEqFi3p4h8xvkxGQQAQan22YCgef4KZ1mKGjzfGh6PL6AW5Csw0QiQPNuQyH+6Xk3hA==} 3321 | engines: {node: '>=18.0.0'} 3322 | dependencies: 3323 | cli-truncate: 4.0.0 3324 | colorette: 2.0.20 3325 | eventemitter3: 5.0.1 3326 | log-update: 6.0.0 3327 | rfdc: 1.3.1 3328 | wrap-ansi: 9.0.0 3329 | dev: true 3330 | 3331 | /load-json-file@4.0.0: 3332 | resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} 3333 | engines: {node: '>=4'} 3334 | dependencies: 3335 | graceful-fs: 4.2.11 3336 | parse-json: 4.0.0 3337 | pify: 3.0.0 3338 | strip-bom: 3.0.0 3339 | dev: true 3340 | 3341 | /load-tsconfig@0.2.5: 3342 | resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} 3343 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3344 | dev: true 3345 | 3346 | /local-pkg@0.5.0: 3347 | resolution: {integrity: sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==} 3348 | engines: {node: '>=14'} 3349 | dependencies: 3350 | mlly: 1.7.0 3351 | pkg-types: 1.1.1 3352 | dev: true 3353 | 3354 | /locate-path@6.0.0: 3355 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 3356 | engines: {node: '>=10'} 3357 | dependencies: 3358 | p-locate: 5.0.0 3359 | dev: true 3360 | 3361 | /lodash.merge@4.6.2: 3362 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 3363 | dev: true 3364 | 3365 | /lodash.sortby@4.7.0: 3366 | resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} 3367 | dev: true 3368 | 3369 | /lodash@4.17.21: 3370 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 3371 | dev: true 3372 | 3373 | /log-update@6.0.0: 3374 | resolution: {integrity: sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==} 3375 | engines: {node: '>=18'} 3376 | dependencies: 3377 | ansi-escapes: 6.2.0 3378 | cli-cursor: 4.0.0 3379 | slice-ansi: 7.1.0 3380 | strip-ansi: 7.1.0 3381 | wrap-ansi: 9.0.0 3382 | dev: true 3383 | 3384 | /loose-envify@1.4.0: 3385 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 3386 | hasBin: true 3387 | dependencies: 3388 | js-tokens: 4.0.0 3389 | dev: true 3390 | 3391 | /loupe@2.3.7: 3392 | resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} 3393 | dependencies: 3394 | get-func-name: 2.0.2 3395 | dev: true 3396 | 3397 | /lru-cache@10.2.0: 3398 | resolution: {integrity: sha512-2bIM8x+VAf6JT4bKAljS1qUWgMsqZRPGJS6FSahIMPVvctcNhyVp7AJu7quxOW9jwkryBReKZY5tY5JYv2n/7Q==} 3399 | engines: {node: 14 || >=16.14} 3400 | dev: true 3401 | 3402 | /lru-cache@6.0.0: 3403 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 3404 | engines: {node: '>=10'} 3405 | dependencies: 3406 | yallist: 4.0.0 3407 | dev: true 3408 | 3409 | /magic-string@0.30.10: 3410 | resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} 3411 | dependencies: 3412 | '@jridgewell/sourcemap-codec': 1.4.15 3413 | dev: true 3414 | 3415 | /map-obj@1.0.1: 3416 | resolution: {integrity: sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==} 3417 | engines: {node: '>=0.10.0'} 3418 | dev: true 3419 | 3420 | /map-obj@4.3.0: 3421 | resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} 3422 | engines: {node: '>=8'} 3423 | dev: true 3424 | 3425 | /memorystream@0.3.1: 3426 | resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} 3427 | engines: {node: '>= 0.10.0'} 3428 | dev: true 3429 | 3430 | /meow@10.1.5: 3431 | resolution: {integrity: sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==} 3432 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3433 | dependencies: 3434 | '@types/minimist': 1.2.5 3435 | camelcase-keys: 7.0.2 3436 | decamelize: 5.0.1 3437 | decamelize-keys: 1.1.1 3438 | hard-rejection: 2.1.0 3439 | minimist-options: 4.1.0 3440 | normalize-package-data: 3.0.3 3441 | read-pkg-up: 8.0.0 3442 | redent: 4.0.0 3443 | trim-newlines: 4.1.1 3444 | type-fest: 1.4.0 3445 | yargs-parser: 20.2.9 3446 | dev: true 3447 | 3448 | /merge-stream@2.0.0: 3449 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 3450 | dev: true 3451 | 3452 | /merge2@1.4.1: 3453 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 3454 | engines: {node: '>= 8'} 3455 | dev: true 3456 | 3457 | /micromatch@4.0.5: 3458 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 3459 | engines: {node: '>=8.6'} 3460 | dependencies: 3461 | braces: 3.0.2 3462 | picomatch: 2.3.1 3463 | dev: true 3464 | 3465 | /mimic-fn@2.1.0: 3466 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 3467 | engines: {node: '>=6'} 3468 | dev: true 3469 | 3470 | /mimic-fn@4.0.0: 3471 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} 3472 | engines: {node: '>=12'} 3473 | dev: true 3474 | 3475 | /min-indent@1.0.1: 3476 | resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==} 3477 | engines: {node: '>=4'} 3478 | dev: true 3479 | 3480 | /minimatch@3.1.2: 3481 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 3482 | dependencies: 3483 | brace-expansion: 1.1.11 3484 | dev: true 3485 | 3486 | /minimatch@9.0.3: 3487 | resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} 3488 | engines: {node: '>=16 || 14 >=14.17'} 3489 | dependencies: 3490 | brace-expansion: 2.0.1 3491 | dev: true 3492 | 3493 | /minimatch@9.0.4: 3494 | resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} 3495 | engines: {node: '>=16 || 14 >=14.17'} 3496 | dependencies: 3497 | brace-expansion: 2.0.1 3498 | dev: true 3499 | 3500 | /minimist-options@4.1.0: 3501 | resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} 3502 | engines: {node: '>= 6'} 3503 | dependencies: 3504 | arrify: 1.0.1 3505 | is-plain-obj: 1.1.0 3506 | kind-of: 6.0.3 3507 | dev: true 3508 | 3509 | /minimist@1.2.8: 3510 | resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} 3511 | dev: true 3512 | 3513 | /minipass@5.0.0: 3514 | resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} 3515 | engines: {node: '>=8'} 3516 | dev: true 3517 | 3518 | /mlly@1.7.0: 3519 | resolution: {integrity: sha512-U9SDaXGEREBYQgfejV97coK0UL1r+qnF2SyO9A3qcI8MzKnsIFKHNVEkrDyNncQTKQQumsasmeq84eNMdBfsNQ==} 3520 | dependencies: 3521 | acorn: 8.11.3 3522 | pathe: 1.1.2 3523 | pkg-types: 1.1.1 3524 | ufo: 1.5.3 3525 | dev: true 3526 | 3527 | /ms@2.1.2: 3528 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 3529 | dev: true 3530 | 3531 | /ms@2.1.3: 3532 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 3533 | dev: true 3534 | 3535 | /mz@2.7.0: 3536 | resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} 3537 | dependencies: 3538 | any-promise: 1.3.0 3539 | object-assign: 4.1.1 3540 | thenify-all: 1.6.0 3541 | dev: true 3542 | 3543 | /nanoid@3.3.7: 3544 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 3545 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 3546 | hasBin: true 3547 | dev: true 3548 | 3549 | /natural-compare@1.4.0: 3550 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 3551 | dev: true 3552 | 3553 | /nice-try@1.0.5: 3554 | resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==} 3555 | dev: true 3556 | 3557 | /normalize-package-data@2.5.0: 3558 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 3559 | dependencies: 3560 | hosted-git-info: 2.8.9 3561 | resolve: 1.22.8 3562 | semver: 5.7.2 3563 | validate-npm-package-license: 3.0.4 3564 | dev: true 3565 | 3566 | /normalize-package-data@3.0.3: 3567 | resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} 3568 | engines: {node: '>=10'} 3569 | dependencies: 3570 | hosted-git-info: 4.1.0 3571 | is-core-module: 2.13.1 3572 | semver: 7.6.0 3573 | validate-npm-package-license: 3.0.4 3574 | dev: true 3575 | 3576 | /normalize-path@3.0.0: 3577 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 3578 | engines: {node: '>=0.10.0'} 3579 | dev: true 3580 | 3581 | /npm-run-all@4.1.5: 3582 | resolution: {integrity: sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==} 3583 | engines: {node: '>= 4'} 3584 | hasBin: true 3585 | dependencies: 3586 | ansi-styles: 3.2.1 3587 | chalk: 2.4.2 3588 | cross-spawn: 6.0.5 3589 | memorystream: 0.3.1 3590 | minimatch: 3.1.2 3591 | pidtree: 0.3.1 3592 | read-pkg: 3.0.0 3593 | shell-quote: 1.8.1 3594 | string.prototype.padend: 3.1.5 3595 | dev: true 3596 | 3597 | /npm-run-path@4.0.1: 3598 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 3599 | engines: {node: '>=8'} 3600 | dependencies: 3601 | path-key: 3.1.1 3602 | dev: true 3603 | 3604 | /npm-run-path@5.2.0: 3605 | resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} 3606 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 3607 | dependencies: 3608 | path-key: 4.0.0 3609 | dev: true 3610 | 3611 | /object-assign@4.1.1: 3612 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 3613 | engines: {node: '>=0.10.0'} 3614 | dev: true 3615 | 3616 | /object-inspect@1.13.1: 3617 | resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} 3618 | dev: true 3619 | 3620 | /object-keys@1.1.1: 3621 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 3622 | engines: {node: '>= 0.4'} 3623 | dev: true 3624 | 3625 | /object.assign@4.1.5: 3626 | resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==} 3627 | engines: {node: '>= 0.4'} 3628 | dependencies: 3629 | call-bind: 1.0.7 3630 | define-properties: 1.2.1 3631 | has-symbols: 1.0.3 3632 | object-keys: 1.1.1 3633 | dev: true 3634 | 3635 | /object.entries@1.1.8: 3636 | resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} 3637 | engines: {node: '>= 0.4'} 3638 | dependencies: 3639 | call-bind: 1.0.7 3640 | define-properties: 1.2.1 3641 | es-object-atoms: 1.0.0 3642 | dev: true 3643 | 3644 | /object.fromentries@2.0.8: 3645 | resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} 3646 | engines: {node: '>= 0.4'} 3647 | dependencies: 3648 | call-bind: 1.0.7 3649 | define-properties: 1.2.1 3650 | es-abstract: 1.23.3 3651 | es-object-atoms: 1.0.0 3652 | dev: true 3653 | 3654 | /object.groupby@1.0.3: 3655 | resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==} 3656 | engines: {node: '>= 0.4'} 3657 | dependencies: 3658 | call-bind: 1.0.7 3659 | define-properties: 1.2.1 3660 | es-abstract: 1.23.3 3661 | dev: true 3662 | 3663 | /object.hasown@1.1.4: 3664 | resolution: {integrity: sha512-FZ9LZt9/RHzGySlBARE3VF+gE26TxR38SdmqOqliuTnl9wrKulaQs+4dee1V+Io8VfxqzAfHu6YuRgUy8OHoTg==} 3665 | engines: {node: '>= 0.4'} 3666 | dependencies: 3667 | define-properties: 1.2.1 3668 | es-abstract: 1.23.3 3669 | es-object-atoms: 1.0.0 3670 | dev: true 3671 | 3672 | /object.values@1.2.0: 3673 | resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} 3674 | engines: {node: '>= 0.4'} 3675 | dependencies: 3676 | call-bind: 1.0.7 3677 | define-properties: 1.2.1 3678 | es-object-atoms: 1.0.0 3679 | dev: true 3680 | 3681 | /once@1.4.0: 3682 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 3683 | dependencies: 3684 | wrappy: 1.0.2 3685 | dev: true 3686 | 3687 | /onetime@5.1.2: 3688 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 3689 | engines: {node: '>=6'} 3690 | dependencies: 3691 | mimic-fn: 2.1.0 3692 | dev: true 3693 | 3694 | /onetime@6.0.0: 3695 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} 3696 | engines: {node: '>=12'} 3697 | dependencies: 3698 | mimic-fn: 4.0.0 3699 | dev: true 3700 | 3701 | /optionator@0.9.3: 3702 | resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} 3703 | engines: {node: '>= 0.8.0'} 3704 | dependencies: 3705 | '@aashutoshrathi/word-wrap': 1.2.6 3706 | deep-is: 0.1.4 3707 | fast-levenshtein: 2.0.6 3708 | levn: 0.4.1 3709 | prelude-ls: 1.2.1 3710 | type-check: 0.4.0 3711 | dev: true 3712 | 3713 | /p-limit@3.1.0: 3714 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 3715 | engines: {node: '>=10'} 3716 | dependencies: 3717 | yocto-queue: 0.1.0 3718 | dev: true 3719 | 3720 | /p-limit@5.0.0: 3721 | resolution: {integrity: sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==} 3722 | engines: {node: '>=18'} 3723 | dependencies: 3724 | yocto-queue: 1.0.0 3725 | dev: true 3726 | 3727 | /p-locate@5.0.0: 3728 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 3729 | engines: {node: '>=10'} 3730 | dependencies: 3731 | p-limit: 3.1.0 3732 | dev: true 3733 | 3734 | /p-map@5.5.0: 3735 | resolution: {integrity: sha512-VFqfGDHlx87K66yZrNdI4YGtD70IRyd+zSvgks6mzHPRNkoKy+9EKP4SFC77/vTTQYmRmti7dvqC+m5jBrBAcg==} 3736 | engines: {node: '>=12'} 3737 | dependencies: 3738 | aggregate-error: 4.0.1 3739 | dev: true 3740 | 3741 | /parent-module@1.0.1: 3742 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 3743 | engines: {node: '>=6'} 3744 | dependencies: 3745 | callsites: 3.1.0 3746 | dev: true 3747 | 3748 | /parse-json@4.0.0: 3749 | resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} 3750 | engines: {node: '>=4'} 3751 | dependencies: 3752 | error-ex: 1.3.2 3753 | json-parse-better-errors: 1.0.2 3754 | dev: true 3755 | 3756 | /parse-json@5.2.0: 3757 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 3758 | engines: {node: '>=8'} 3759 | dependencies: 3760 | '@babel/code-frame': 7.23.5 3761 | error-ex: 1.3.2 3762 | json-parse-even-better-errors: 2.3.1 3763 | lines-and-columns: 1.2.4 3764 | dev: true 3765 | 3766 | /path-exists@4.0.0: 3767 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 3768 | engines: {node: '>=8'} 3769 | dev: true 3770 | 3771 | /path-is-absolute@1.0.1: 3772 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 3773 | engines: {node: '>=0.10.0'} 3774 | dev: true 3775 | 3776 | /path-key@2.0.1: 3777 | resolution: {integrity: sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==} 3778 | engines: {node: '>=4'} 3779 | dev: true 3780 | 3781 | /path-key@3.1.1: 3782 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 3783 | engines: {node: '>=8'} 3784 | dev: true 3785 | 3786 | /path-key@4.0.0: 3787 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} 3788 | engines: {node: '>=12'} 3789 | dev: true 3790 | 3791 | /path-parse@1.0.7: 3792 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 3793 | dev: true 3794 | 3795 | /path-scurry@1.10.1: 3796 | resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} 3797 | engines: {node: '>=16 || 14 >=14.17'} 3798 | dependencies: 3799 | lru-cache: 10.2.0 3800 | minipass: 5.0.0 3801 | dev: true 3802 | 3803 | /path-type@3.0.0: 3804 | resolution: {integrity: sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==} 3805 | engines: {node: '>=4'} 3806 | dependencies: 3807 | pify: 3.0.0 3808 | dev: true 3809 | 3810 | /path-type@4.0.0: 3811 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 3812 | engines: {node: '>=8'} 3813 | dev: true 3814 | 3815 | /pathe@1.1.2: 3816 | resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} 3817 | dev: true 3818 | 3819 | /pathval@1.1.1: 3820 | resolution: {integrity: sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==} 3821 | dev: true 3822 | 3823 | /picocolors@1.0.1: 3824 | resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} 3825 | dev: true 3826 | 3827 | /picomatch@2.3.1: 3828 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 3829 | engines: {node: '>=8.6'} 3830 | dev: true 3831 | 3832 | /pidtree@0.3.1: 3833 | resolution: {integrity: sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==} 3834 | engines: {node: '>=0.10'} 3835 | hasBin: true 3836 | dev: true 3837 | 3838 | /pidtree@0.6.0: 3839 | resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} 3840 | engines: {node: '>=0.10'} 3841 | hasBin: true 3842 | dev: true 3843 | 3844 | /pify@3.0.0: 3845 | resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} 3846 | engines: {node: '>=4'} 3847 | dev: true 3848 | 3849 | /pirates@4.0.6: 3850 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} 3851 | engines: {node: '>= 6'} 3852 | dev: true 3853 | 3854 | /pkg-types@1.1.1: 3855 | resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} 3856 | dependencies: 3857 | confbox: 0.1.7 3858 | mlly: 1.7.0 3859 | pathe: 1.1.2 3860 | dev: true 3861 | 3862 | /possible-typed-array-names@1.0.0: 3863 | resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} 3864 | engines: {node: '>= 0.4'} 3865 | dev: true 3866 | 3867 | /postcss-load-config@4.0.2: 3868 | resolution: {integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==} 3869 | engines: {node: '>= 14'} 3870 | peerDependencies: 3871 | postcss: '>=8.0.9' 3872 | ts-node: '>=9.0.0' 3873 | peerDependenciesMeta: 3874 | postcss: 3875 | optional: true 3876 | ts-node: 3877 | optional: true 3878 | dependencies: 3879 | lilconfig: 3.0.0 3880 | yaml: 2.3.4 3881 | dev: true 3882 | 3883 | /postcss@8.4.38: 3884 | resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} 3885 | engines: {node: ^10 || ^12 || >=14} 3886 | dependencies: 3887 | nanoid: 3.3.7 3888 | picocolors: 1.0.1 3889 | source-map-js: 1.2.0 3890 | dev: true 3891 | 3892 | /prelude-ls@1.2.1: 3893 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 3894 | engines: {node: '>= 0.8.0'} 3895 | dev: true 3896 | 3897 | /prettier@2.8.8: 3898 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 3899 | engines: {node: '>=10.13.0'} 3900 | hasBin: true 3901 | dev: true 3902 | 3903 | /pretty-format@29.7.0: 3904 | resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} 3905 | engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} 3906 | dependencies: 3907 | '@jest/schemas': 29.6.3 3908 | ansi-styles: 5.2.0 3909 | react-is: 18.3.1 3910 | dev: true 3911 | 3912 | /prop-types@15.8.1: 3913 | resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==} 3914 | dependencies: 3915 | loose-envify: 1.4.0 3916 | object-assign: 4.1.1 3917 | react-is: 16.13.1 3918 | dev: true 3919 | 3920 | /punycode@1.4.1: 3921 | resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} 3922 | dev: false 3923 | 3924 | /punycode@2.3.1: 3925 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 3926 | engines: {node: '>=6'} 3927 | dev: true 3928 | 3929 | /queue-microtask@1.2.3: 3930 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 3931 | dev: true 3932 | 3933 | /quick-lru@5.1.1: 3934 | resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} 3935 | engines: {node: '>=10'} 3936 | dev: true 3937 | 3938 | /react-is@16.13.1: 3939 | resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==} 3940 | dev: true 3941 | 3942 | /react-is@18.3.1: 3943 | resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} 3944 | dev: true 3945 | 3946 | /read-pkg-up@8.0.0: 3947 | resolution: {integrity: sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==} 3948 | engines: {node: '>=12'} 3949 | dependencies: 3950 | find-up: 5.0.0 3951 | read-pkg: 6.0.0 3952 | type-fest: 1.4.0 3953 | dev: true 3954 | 3955 | /read-pkg@3.0.0: 3956 | resolution: {integrity: sha512-BLq/cCO9two+lBgiTYNqD6GdtK8s4NpaWrl6/rCO9w0TUS8oJl7cmToOZfRYllKTISY6nt1U7jQ53brmKqY6BA==} 3957 | engines: {node: '>=4'} 3958 | dependencies: 3959 | load-json-file: 4.0.0 3960 | normalize-package-data: 2.5.0 3961 | path-type: 3.0.0 3962 | dev: true 3963 | 3964 | /read-pkg@6.0.0: 3965 | resolution: {integrity: sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==} 3966 | engines: {node: '>=12'} 3967 | dependencies: 3968 | '@types/normalize-package-data': 2.4.4 3969 | normalize-package-data: 3.0.3 3970 | parse-json: 5.2.0 3971 | type-fest: 1.4.0 3972 | dev: true 3973 | 3974 | /readdirp@3.6.0: 3975 | resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} 3976 | engines: {node: '>=8.10.0'} 3977 | dependencies: 3978 | picomatch: 2.3.1 3979 | dev: true 3980 | 3981 | /redent@4.0.0: 3982 | resolution: {integrity: sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==} 3983 | engines: {node: '>=12'} 3984 | dependencies: 3985 | indent-string: 5.0.0 3986 | strip-indent: 4.0.0 3987 | dev: true 3988 | 3989 | /reflect.getprototypeof@1.0.6: 3990 | resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} 3991 | engines: {node: '>= 0.4'} 3992 | dependencies: 3993 | call-bind: 1.0.7 3994 | define-properties: 1.2.1 3995 | es-abstract: 1.23.3 3996 | es-errors: 1.3.0 3997 | get-intrinsic: 1.2.4 3998 | globalthis: 1.0.4 3999 | which-builtin-type: 1.1.3 4000 | dev: true 4001 | 4002 | /regenerator-runtime@0.14.1: 4003 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 4004 | 4005 | /regexp.prototype.flags@1.5.2: 4006 | resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} 4007 | engines: {node: '>= 0.4'} 4008 | dependencies: 4009 | call-bind: 1.0.7 4010 | define-properties: 1.2.1 4011 | es-errors: 1.3.0 4012 | set-function-name: 2.0.2 4013 | dev: true 4014 | 4015 | /requireindex@1.2.0: 4016 | resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==} 4017 | engines: {node: '>=0.10.5'} 4018 | dev: true 4019 | 4020 | /resolve-from@4.0.0: 4021 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 4022 | engines: {node: '>=4'} 4023 | dev: true 4024 | 4025 | /resolve-from@5.0.0: 4026 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 4027 | engines: {node: '>=8'} 4028 | dev: true 4029 | 4030 | /resolve-pkg-maps@1.0.0: 4031 | resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} 4032 | dev: true 4033 | 4034 | /resolve@1.22.8: 4035 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 4036 | hasBin: true 4037 | dependencies: 4038 | is-core-module: 2.13.1 4039 | path-parse: 1.0.7 4040 | supports-preserve-symlinks-flag: 1.0.0 4041 | dev: true 4042 | 4043 | /resolve@2.0.0-next.5: 4044 | resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} 4045 | hasBin: true 4046 | dependencies: 4047 | is-core-module: 2.13.1 4048 | path-parse: 1.0.7 4049 | supports-preserve-symlinks-flag: 1.0.0 4050 | dev: true 4051 | 4052 | /restore-cursor@4.0.0: 4053 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} 4054 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 4055 | dependencies: 4056 | onetime: 5.1.2 4057 | signal-exit: 3.0.7 4058 | dev: true 4059 | 4060 | /reusify@1.0.4: 4061 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 4062 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 4063 | dev: true 4064 | 4065 | /rfdc@1.3.1: 4066 | resolution: {integrity: sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==} 4067 | dev: true 4068 | 4069 | /rimraf@3.0.2: 4070 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 4071 | hasBin: true 4072 | dependencies: 4073 | glob: 7.2.3 4074 | dev: true 4075 | 4076 | /rollup@4.12.0: 4077 | resolution: {integrity: sha512-wz66wn4t1OHIJw3+XU7mJJQV/2NAfw5OAk6G6Hoo3zcvz/XOfQ52Vgi+AN4Uxoxi0KBBwk2g8zPrTDA4btSB/Q==} 4078 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 4079 | hasBin: true 4080 | dependencies: 4081 | '@types/estree': 1.0.5 4082 | optionalDependencies: 4083 | '@rollup/rollup-android-arm-eabi': 4.12.0 4084 | '@rollup/rollup-android-arm64': 4.12.0 4085 | '@rollup/rollup-darwin-arm64': 4.12.0 4086 | '@rollup/rollup-darwin-x64': 4.12.0 4087 | '@rollup/rollup-linux-arm-gnueabihf': 4.12.0 4088 | '@rollup/rollup-linux-arm64-gnu': 4.12.0 4089 | '@rollup/rollup-linux-arm64-musl': 4.12.0 4090 | '@rollup/rollup-linux-riscv64-gnu': 4.12.0 4091 | '@rollup/rollup-linux-x64-gnu': 4.12.0 4092 | '@rollup/rollup-linux-x64-musl': 4.12.0 4093 | '@rollup/rollup-win32-arm64-msvc': 4.12.0 4094 | '@rollup/rollup-win32-ia32-msvc': 4.12.0 4095 | '@rollup/rollup-win32-x64-msvc': 4.12.0 4096 | fsevents: 2.3.3 4097 | dev: true 4098 | 4099 | /rollup@4.17.2: 4100 | resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==} 4101 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 4102 | hasBin: true 4103 | dependencies: 4104 | '@types/estree': 1.0.5 4105 | optionalDependencies: 4106 | '@rollup/rollup-android-arm-eabi': 4.17.2 4107 | '@rollup/rollup-android-arm64': 4.17.2 4108 | '@rollup/rollup-darwin-arm64': 4.17.2 4109 | '@rollup/rollup-darwin-x64': 4.17.2 4110 | '@rollup/rollup-linux-arm-gnueabihf': 4.17.2 4111 | '@rollup/rollup-linux-arm-musleabihf': 4.17.2 4112 | '@rollup/rollup-linux-arm64-gnu': 4.17.2 4113 | '@rollup/rollup-linux-arm64-musl': 4.17.2 4114 | '@rollup/rollup-linux-powerpc64le-gnu': 4.17.2 4115 | '@rollup/rollup-linux-riscv64-gnu': 4.17.2 4116 | '@rollup/rollup-linux-s390x-gnu': 4.17.2 4117 | '@rollup/rollup-linux-x64-gnu': 4.17.2 4118 | '@rollup/rollup-linux-x64-musl': 4.17.2 4119 | '@rollup/rollup-win32-arm64-msvc': 4.17.2 4120 | '@rollup/rollup-win32-ia32-msvc': 4.17.2 4121 | '@rollup/rollup-win32-x64-msvc': 4.17.2 4122 | fsevents: 2.3.3 4123 | dev: true 4124 | 4125 | /run-parallel@1.2.0: 4126 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 4127 | dependencies: 4128 | queue-microtask: 1.2.3 4129 | dev: true 4130 | 4131 | /safe-array-concat@1.1.0: 4132 | resolution: {integrity: sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==} 4133 | engines: {node: '>=0.4'} 4134 | dependencies: 4135 | call-bind: 1.0.7 4136 | get-intrinsic: 1.2.4 4137 | has-symbols: 1.0.3 4138 | isarray: 2.0.5 4139 | dev: true 4140 | 4141 | /safe-array-concat@1.1.2: 4142 | resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} 4143 | engines: {node: '>=0.4'} 4144 | dependencies: 4145 | call-bind: 1.0.7 4146 | get-intrinsic: 1.2.4 4147 | has-symbols: 1.0.3 4148 | isarray: 2.0.5 4149 | dev: true 4150 | 4151 | /safe-regex-test@1.0.3: 4152 | resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} 4153 | engines: {node: '>= 0.4'} 4154 | dependencies: 4155 | call-bind: 1.0.7 4156 | es-errors: 1.3.0 4157 | is-regex: 1.1.4 4158 | dev: true 4159 | 4160 | /semver@5.7.2: 4161 | resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} 4162 | hasBin: true 4163 | dev: true 4164 | 4165 | /semver@6.3.1: 4166 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} 4167 | hasBin: true 4168 | dev: true 4169 | 4170 | /semver@7.6.0: 4171 | resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} 4172 | engines: {node: '>=10'} 4173 | hasBin: true 4174 | dependencies: 4175 | lru-cache: 6.0.0 4176 | dev: true 4177 | 4178 | /semver@7.6.2: 4179 | resolution: {integrity: sha512-FNAIBWCx9qcRhoHcgcJ0gvU7SN1lYU2ZXuSfl04bSC5OpvDHFyJCjdNHomPXxjQlCBU67YW64PzY7/VIEH7F2w==} 4180 | engines: {node: '>=10'} 4181 | hasBin: true 4182 | dev: true 4183 | 4184 | /set-function-length@1.2.1: 4185 | resolution: {integrity: sha512-j4t6ccc+VsKwYHso+kElc5neZpjtq9EnRICFZtWyBsLojhmeF/ZBd/elqm22WJh/BziDe/SBiOeAt0m2mfLD0g==} 4186 | engines: {node: '>= 0.4'} 4187 | dependencies: 4188 | define-data-property: 1.1.4 4189 | es-errors: 1.3.0 4190 | function-bind: 1.1.2 4191 | get-intrinsic: 1.2.4 4192 | gopd: 1.0.1 4193 | has-property-descriptors: 1.0.2 4194 | dev: true 4195 | 4196 | /set-function-name@2.0.2: 4197 | resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==} 4198 | engines: {node: '>= 0.4'} 4199 | dependencies: 4200 | define-data-property: 1.1.4 4201 | es-errors: 1.3.0 4202 | functions-have-names: 1.2.3 4203 | has-property-descriptors: 1.0.2 4204 | dev: true 4205 | 4206 | /shebang-command@1.2.0: 4207 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 4208 | engines: {node: '>=0.10.0'} 4209 | dependencies: 4210 | shebang-regex: 1.0.0 4211 | dev: true 4212 | 4213 | /shebang-command@2.0.0: 4214 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 4215 | engines: {node: '>=8'} 4216 | dependencies: 4217 | shebang-regex: 3.0.0 4218 | dev: true 4219 | 4220 | /shebang-regex@1.0.0: 4221 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 4222 | engines: {node: '>=0.10.0'} 4223 | dev: true 4224 | 4225 | /shebang-regex@3.0.0: 4226 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 4227 | engines: {node: '>=8'} 4228 | dev: true 4229 | 4230 | /shell-quote@1.8.1: 4231 | resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} 4232 | dev: true 4233 | 4234 | /side-channel@1.0.5: 4235 | resolution: {integrity: sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==} 4236 | engines: {node: '>= 0.4'} 4237 | dependencies: 4238 | call-bind: 1.0.7 4239 | es-errors: 1.3.0 4240 | get-intrinsic: 1.2.4 4241 | object-inspect: 1.13.1 4242 | dev: true 4243 | 4244 | /side-channel@1.0.6: 4245 | resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} 4246 | engines: {node: '>= 0.4'} 4247 | dependencies: 4248 | call-bind: 1.0.7 4249 | es-errors: 1.3.0 4250 | get-intrinsic: 1.2.4 4251 | object-inspect: 1.13.1 4252 | dev: true 4253 | 4254 | /siginfo@2.0.0: 4255 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 4256 | dev: true 4257 | 4258 | /signal-exit@3.0.7: 4259 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 4260 | dev: true 4261 | 4262 | /signal-exit@4.1.0: 4263 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 4264 | engines: {node: '>=14'} 4265 | dev: true 4266 | 4267 | /slash@3.0.0: 4268 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 4269 | engines: {node: '>=8'} 4270 | dev: true 4271 | 4272 | /slash@4.0.0: 4273 | resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} 4274 | engines: {node: '>=12'} 4275 | dev: true 4276 | 4277 | /slice-ansi@5.0.0: 4278 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} 4279 | engines: {node: '>=12'} 4280 | dependencies: 4281 | ansi-styles: 6.2.1 4282 | is-fullwidth-code-point: 4.0.0 4283 | dev: true 4284 | 4285 | /slice-ansi@7.1.0: 4286 | resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} 4287 | engines: {node: '>=18'} 4288 | dependencies: 4289 | ansi-styles: 6.2.1 4290 | is-fullwidth-code-point: 5.0.0 4291 | dev: true 4292 | 4293 | /source-map-js@1.2.0: 4294 | resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} 4295 | engines: {node: '>=0.10.0'} 4296 | dev: true 4297 | 4298 | /source-map@0.5.7: 4299 | resolution: {integrity: sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==} 4300 | engines: {node: '>=0.10.0'} 4301 | dev: true 4302 | 4303 | /source-map@0.8.0-beta.0: 4304 | resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} 4305 | engines: {node: '>= 8'} 4306 | dependencies: 4307 | whatwg-url: 7.1.0 4308 | dev: true 4309 | 4310 | /spdx-correct@3.2.0: 4311 | resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} 4312 | dependencies: 4313 | spdx-expression-parse: 3.0.1 4314 | spdx-license-ids: 3.0.17 4315 | dev: true 4316 | 4317 | /spdx-exceptions@2.5.0: 4318 | resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==} 4319 | dev: true 4320 | 4321 | /spdx-expression-parse@3.0.1: 4322 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 4323 | dependencies: 4324 | spdx-exceptions: 2.5.0 4325 | spdx-license-ids: 3.0.17 4326 | dev: true 4327 | 4328 | /spdx-license-ids@3.0.17: 4329 | resolution: {integrity: sha512-sh8PWc/ftMqAAdFiBu6Fy6JUOYjqDJBJvIhpfDMyHrr0Rbp5liZqd4TjtQ/RgfLjKFZb+LMx5hpml5qOWy0qvg==} 4330 | dev: true 4331 | 4332 | /stackback@0.0.2: 4333 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 4334 | dev: true 4335 | 4336 | /std-env@3.7.0: 4337 | resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} 4338 | dev: true 4339 | 4340 | /string-argv@0.3.2: 4341 | resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} 4342 | engines: {node: '>=0.6.19'} 4343 | dev: true 4344 | 4345 | /string-width@4.2.3: 4346 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 4347 | engines: {node: '>=8'} 4348 | dependencies: 4349 | emoji-regex: 8.0.0 4350 | is-fullwidth-code-point: 3.0.0 4351 | strip-ansi: 6.0.1 4352 | dev: true 4353 | 4354 | /string-width@5.1.2: 4355 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 4356 | engines: {node: '>=12'} 4357 | dependencies: 4358 | eastasianwidth: 0.2.0 4359 | emoji-regex: 9.2.2 4360 | strip-ansi: 7.1.0 4361 | dev: true 4362 | 4363 | /string-width@7.1.0: 4364 | resolution: {integrity: sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==} 4365 | engines: {node: '>=18'} 4366 | dependencies: 4367 | emoji-regex: 10.3.0 4368 | get-east-asian-width: 1.2.0 4369 | strip-ansi: 7.1.0 4370 | dev: true 4371 | 4372 | /string.prototype.matchall@4.0.11: 4373 | resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} 4374 | engines: {node: '>= 0.4'} 4375 | dependencies: 4376 | call-bind: 1.0.7 4377 | define-properties: 1.2.1 4378 | es-abstract: 1.23.3 4379 | es-errors: 1.3.0 4380 | es-object-atoms: 1.0.0 4381 | get-intrinsic: 1.2.4 4382 | gopd: 1.0.1 4383 | has-symbols: 1.0.3 4384 | internal-slot: 1.0.7 4385 | regexp.prototype.flags: 1.5.2 4386 | set-function-name: 2.0.2 4387 | side-channel: 1.0.6 4388 | dev: true 4389 | 4390 | /string.prototype.padend@3.1.5: 4391 | resolution: {integrity: sha512-DOB27b/2UTTD+4myKUFh+/fXWcu/UDyASIXfg+7VzoCNNGOfWvoyU/x5pvVHr++ztyt/oSYI1BcWBBG/hmlNjA==} 4392 | engines: {node: '>= 0.4'} 4393 | dependencies: 4394 | call-bind: 1.0.7 4395 | define-properties: 1.2.1 4396 | es-abstract: 1.22.4 4397 | dev: true 4398 | 4399 | /string.prototype.trim@1.2.8: 4400 | resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} 4401 | engines: {node: '>= 0.4'} 4402 | dependencies: 4403 | call-bind: 1.0.7 4404 | define-properties: 1.2.1 4405 | es-abstract: 1.22.4 4406 | dev: true 4407 | 4408 | /string.prototype.trim@1.2.9: 4409 | resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} 4410 | engines: {node: '>= 0.4'} 4411 | dependencies: 4412 | call-bind: 1.0.7 4413 | define-properties: 1.2.1 4414 | es-abstract: 1.23.3 4415 | es-object-atoms: 1.0.0 4416 | dev: true 4417 | 4418 | /string.prototype.trimend@1.0.7: 4419 | resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} 4420 | dependencies: 4421 | call-bind: 1.0.7 4422 | define-properties: 1.2.1 4423 | es-abstract: 1.22.4 4424 | dev: true 4425 | 4426 | /string.prototype.trimend@1.0.8: 4427 | resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} 4428 | dependencies: 4429 | call-bind: 1.0.7 4430 | define-properties: 1.2.1 4431 | es-object-atoms: 1.0.0 4432 | dev: true 4433 | 4434 | /string.prototype.trimstart@1.0.7: 4435 | resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} 4436 | dependencies: 4437 | call-bind: 1.0.7 4438 | define-properties: 1.2.1 4439 | es-abstract: 1.22.4 4440 | dev: true 4441 | 4442 | /string.prototype.trimstart@1.0.8: 4443 | resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} 4444 | engines: {node: '>= 0.4'} 4445 | dependencies: 4446 | call-bind: 1.0.7 4447 | define-properties: 1.2.1 4448 | es-object-atoms: 1.0.0 4449 | dev: true 4450 | 4451 | /strip-ansi@6.0.1: 4452 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 4453 | engines: {node: '>=8'} 4454 | dependencies: 4455 | ansi-regex: 5.0.1 4456 | dev: true 4457 | 4458 | /strip-ansi@7.1.0: 4459 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 4460 | engines: {node: '>=12'} 4461 | dependencies: 4462 | ansi-regex: 6.0.1 4463 | dev: true 4464 | 4465 | /strip-bom@3.0.0: 4466 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 4467 | engines: {node: '>=4'} 4468 | dev: true 4469 | 4470 | /strip-final-newline@2.0.0: 4471 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 4472 | engines: {node: '>=6'} 4473 | dev: true 4474 | 4475 | /strip-final-newline@3.0.0: 4476 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} 4477 | engines: {node: '>=12'} 4478 | dev: true 4479 | 4480 | /strip-indent@4.0.0: 4481 | resolution: {integrity: sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==} 4482 | engines: {node: '>=12'} 4483 | dependencies: 4484 | min-indent: 1.0.1 4485 | dev: true 4486 | 4487 | /strip-json-comments@3.1.1: 4488 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 4489 | engines: {node: '>=8'} 4490 | dev: true 4491 | 4492 | /strip-literal@2.1.0: 4493 | resolution: {integrity: sha512-Op+UycaUt/8FbN/Z2TWPBLge3jWrP3xj10f3fnYxf052bKuS3EKs1ZQcVGjnEMdsNVAM+plXRdmjrZ/KgG3Skw==} 4494 | dependencies: 4495 | js-tokens: 9.0.0 4496 | dev: true 4497 | 4498 | /sucrase@3.35.0: 4499 | resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} 4500 | engines: {node: '>=16 || 14 >=14.17'} 4501 | hasBin: true 4502 | dependencies: 4503 | '@jridgewell/gen-mapping': 0.3.3 4504 | commander: 4.1.1 4505 | glob: 10.3.10 4506 | lines-and-columns: 1.2.4 4507 | mz: 2.7.0 4508 | pirates: 4.0.6 4509 | ts-interface-checker: 0.1.13 4510 | dev: true 4511 | 4512 | /supports-color@5.5.0: 4513 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 4514 | engines: {node: '>=4'} 4515 | dependencies: 4516 | has-flag: 3.0.0 4517 | dev: true 4518 | 4519 | /supports-color@7.2.0: 4520 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 4521 | engines: {node: '>=8'} 4522 | dependencies: 4523 | has-flag: 4.0.0 4524 | dev: true 4525 | 4526 | /supports-preserve-symlinks-flag@1.0.0: 4527 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 4528 | engines: {node: '>= 0.4'} 4529 | dev: true 4530 | 4531 | /tapable@2.2.1: 4532 | resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==} 4533 | engines: {node: '>=6'} 4534 | dev: true 4535 | 4536 | /text-table@0.2.0: 4537 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 4538 | dev: true 4539 | 4540 | /thenify-all@1.6.0: 4541 | resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} 4542 | engines: {node: '>=0.8'} 4543 | dependencies: 4544 | thenify: 3.3.1 4545 | dev: true 4546 | 4547 | /thenify@3.3.1: 4548 | resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} 4549 | dependencies: 4550 | any-promise: 1.3.0 4551 | dev: true 4552 | 4553 | /tiny-invariant@1.3.3: 4554 | resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==} 4555 | dev: false 4556 | 4557 | /tinybench@2.8.0: 4558 | resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} 4559 | dev: true 4560 | 4561 | /tinypool@0.8.4: 4562 | resolution: {integrity: sha512-i11VH5gS6IFeLY3gMBQ00/MmLncVP7JLXOw1vlgkytLmJK7QnEr7NXf0LBdxfmNPAeyetukOk0bOYrJrFGjYJQ==} 4563 | engines: {node: '>=14.0.0'} 4564 | dev: true 4565 | 4566 | /tinyspy@2.2.1: 4567 | resolution: {integrity: sha512-KYad6Vy5VDWV4GH3fjpseMQ/XU2BhIYP7Vzd0LG44qRWm/Yt2WCOTicFdvmgo6gWaqooMQCawTtILVQJupKu7A==} 4568 | engines: {node: '>=14.0.0'} 4569 | dev: true 4570 | 4571 | /tlds@1.250.0: 4572 | resolution: {integrity: sha512-rWsBfFCWKrjM/o2Q1TTUeYQv6tHSd/umUutDjVs6taTuEgRDIreVYIBgWRWW4ot7jp6n0UVUuxhTLWBtUmPu/w==} 4573 | hasBin: true 4574 | dev: false 4575 | 4576 | /to-fast-properties@2.0.0: 4577 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} 4578 | engines: {node: '>=4'} 4579 | dev: true 4580 | 4581 | /to-regex-range@5.0.1: 4582 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 4583 | engines: {node: '>=8.0'} 4584 | dependencies: 4585 | is-number: 7.0.0 4586 | dev: true 4587 | 4588 | /tr46@1.0.1: 4589 | resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} 4590 | dependencies: 4591 | punycode: 2.3.1 4592 | dev: true 4593 | 4594 | /tree-kill@1.2.2: 4595 | resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} 4596 | hasBin: true 4597 | dev: true 4598 | 4599 | /trim-newlines@4.1.1: 4600 | resolution: {integrity: sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==} 4601 | engines: {node: '>=12'} 4602 | dev: true 4603 | 4604 | /ts-api-utils@1.3.0(typescript@5.4.5): 4605 | resolution: {integrity: sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==} 4606 | engines: {node: '>=16'} 4607 | peerDependencies: 4608 | typescript: '>=4.2.0' 4609 | dependencies: 4610 | typescript: 5.4.5 4611 | dev: true 4612 | 4613 | /ts-interface-checker@0.1.13: 4614 | resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} 4615 | dev: true 4616 | 4617 | /tsconfig-paths@3.15.0: 4618 | resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} 4619 | dependencies: 4620 | '@types/json5': 0.0.29 4621 | json5: 1.0.2 4622 | minimist: 1.2.8 4623 | strip-bom: 3.0.0 4624 | dev: true 4625 | 4626 | /tslib@1.14.1: 4627 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 4628 | dev: true 4629 | 4630 | /tsup@8.0.2(typescript@5.4.5): 4631 | resolution: {integrity: sha512-NY8xtQXdH7hDUAZwcQdY/Vzlw9johQsaqf7iwZ6g1DOUlFYQ5/AtVAjTvihhEyeRlGo4dLRVHtrRaL35M1daqQ==} 4632 | engines: {node: '>=18'} 4633 | hasBin: true 4634 | peerDependencies: 4635 | '@microsoft/api-extractor': ^7.36.0 4636 | '@swc/core': ^1 4637 | postcss: ^8.4.12 4638 | typescript: '>=4.5.0' 4639 | peerDependenciesMeta: 4640 | '@microsoft/api-extractor': 4641 | optional: true 4642 | '@swc/core': 4643 | optional: true 4644 | postcss: 4645 | optional: true 4646 | typescript: 4647 | optional: true 4648 | dependencies: 4649 | bundle-require: 4.0.2(esbuild@0.19.12) 4650 | cac: 6.7.14 4651 | chokidar: 3.6.0 4652 | debug: 4.3.4 4653 | esbuild: 0.19.12 4654 | execa: 5.1.1 4655 | globby: 11.1.0 4656 | joycon: 3.1.1 4657 | postcss-load-config: 4.0.2 4658 | resolve-from: 5.0.0 4659 | rollup: 4.12.0 4660 | source-map: 0.8.0-beta.0 4661 | sucrase: 3.35.0 4662 | tree-kill: 1.2.2 4663 | typescript: 5.4.5 4664 | transitivePeerDependencies: 4665 | - supports-color 4666 | - ts-node 4667 | dev: true 4668 | 4669 | /tsutils@3.21.0(typescript@5.4.5): 4670 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 4671 | engines: {node: '>= 6'} 4672 | peerDependencies: 4673 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 4674 | dependencies: 4675 | tslib: 1.14.1 4676 | typescript: 5.4.5 4677 | dev: true 4678 | 4679 | /tsx@4.10.3: 4680 | resolution: {integrity: sha512-f0g60aFSVRVkzcQkEflh8fPLRfmt+HJHgWi/plG5UgvVaV+9TcpOwJ0sZJSACXmwmjMPg9yQR0BhTLbhkfV2uA==} 4681 | engines: {node: '>=18.0.0'} 4682 | hasBin: true 4683 | dependencies: 4684 | esbuild: 0.20.2 4685 | get-tsconfig: 4.7.5 4686 | optionalDependencies: 4687 | fsevents: 2.3.3 4688 | dev: true 4689 | 4690 | /twemoji-parser@11.0.2: 4691 | resolution: {integrity: sha512-5kO2XCcpAql6zjdLwRwJjYvAZyDy3+Uj7v1ipBzLthQmDL7Ce19bEqHr3ImSNeoSW2OA8u02XmARbXHaNO8GhA==} 4692 | dev: false 4693 | 4694 | /twitter-text@3.1.0: 4695 | resolution: {integrity: sha512-nulfUi3FN6z0LUjYipJid+eiwXvOLb8Ass7Jy/6zsXmZK3URte043m8fL3FyDzrK+WLpyqhHuR/TcARTN/iuGQ==} 4696 | dependencies: 4697 | '@babel/runtime': 7.23.9 4698 | core-js: 2.6.12 4699 | punycode: 1.4.1 4700 | twemoji-parser: 11.0.2 4701 | dev: false 4702 | 4703 | /type-check@0.4.0: 4704 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 4705 | engines: {node: '>= 0.8.0'} 4706 | dependencies: 4707 | prelude-ls: 1.2.1 4708 | dev: true 4709 | 4710 | /type-detect@4.0.8: 4711 | resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} 4712 | engines: {node: '>=4'} 4713 | dev: true 4714 | 4715 | /type-fest@0.20.2: 4716 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 4717 | engines: {node: '>=10'} 4718 | dev: true 4719 | 4720 | /type-fest@1.4.0: 4721 | resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} 4722 | engines: {node: '>=10'} 4723 | dev: true 4724 | 4725 | /type-fest@3.13.1: 4726 | resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} 4727 | engines: {node: '>=14.16'} 4728 | dev: true 4729 | 4730 | /typed-array-buffer@1.0.2: 4731 | resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==} 4732 | engines: {node: '>= 0.4'} 4733 | dependencies: 4734 | call-bind: 1.0.7 4735 | es-errors: 1.3.0 4736 | is-typed-array: 1.1.13 4737 | dev: true 4738 | 4739 | /typed-array-byte-length@1.0.0: 4740 | resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==} 4741 | engines: {node: '>= 0.4'} 4742 | dependencies: 4743 | call-bind: 1.0.7 4744 | for-each: 0.3.3 4745 | has-proto: 1.0.3 4746 | is-typed-array: 1.1.13 4747 | dev: true 4748 | 4749 | /typed-array-byte-length@1.0.1: 4750 | resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} 4751 | engines: {node: '>= 0.4'} 4752 | dependencies: 4753 | call-bind: 1.0.7 4754 | for-each: 0.3.3 4755 | gopd: 1.0.1 4756 | has-proto: 1.0.3 4757 | is-typed-array: 1.1.13 4758 | dev: true 4759 | 4760 | /typed-array-byte-offset@1.0.1: 4761 | resolution: {integrity: sha512-tcqKMrTRXjqvHN9S3553NPCaGL0VPgFI92lXszmrE8DMhiDPLBYLlvo8Uu4WZAAX/aGqp/T1sbA4ph8EWjDF9Q==} 4762 | engines: {node: '>= 0.4'} 4763 | dependencies: 4764 | available-typed-arrays: 1.0.7 4765 | call-bind: 1.0.7 4766 | for-each: 0.3.3 4767 | gopd: 1.0.1 4768 | has-proto: 1.0.3 4769 | is-typed-array: 1.1.13 4770 | dev: true 4771 | 4772 | /typed-array-byte-offset@1.0.2: 4773 | resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} 4774 | engines: {node: '>= 0.4'} 4775 | dependencies: 4776 | available-typed-arrays: 1.0.7 4777 | call-bind: 1.0.7 4778 | for-each: 0.3.3 4779 | gopd: 1.0.1 4780 | has-proto: 1.0.3 4781 | is-typed-array: 1.1.13 4782 | dev: true 4783 | 4784 | /typed-array-length@1.0.4: 4785 | resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} 4786 | dependencies: 4787 | call-bind: 1.0.7 4788 | for-each: 0.3.3 4789 | is-typed-array: 1.1.13 4790 | dev: true 4791 | 4792 | /typed-array-length@1.0.6: 4793 | resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} 4794 | engines: {node: '>= 0.4'} 4795 | dependencies: 4796 | call-bind: 1.0.7 4797 | for-each: 0.3.3 4798 | gopd: 1.0.1 4799 | has-proto: 1.0.3 4800 | is-typed-array: 1.1.13 4801 | possible-typed-array-names: 1.0.0 4802 | dev: true 4803 | 4804 | /typescript@5.4.5: 4805 | resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} 4806 | engines: {node: '>=14.17'} 4807 | hasBin: true 4808 | dev: true 4809 | 4810 | /ufo@1.5.3: 4811 | resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} 4812 | dev: true 4813 | 4814 | /unbox-primitive@1.0.2: 4815 | resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==} 4816 | dependencies: 4817 | call-bind: 1.0.7 4818 | has-bigints: 1.0.2 4819 | has-symbols: 1.0.3 4820 | which-boxed-primitive: 1.0.2 4821 | dev: true 4822 | 4823 | /undici-types@5.26.5: 4824 | resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} 4825 | dev: true 4826 | 4827 | /uri-js@4.4.1: 4828 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 4829 | dependencies: 4830 | punycode: 2.3.1 4831 | dev: true 4832 | 4833 | /url-regex@5.0.0: 4834 | resolution: {integrity: sha512-O08GjTiAFNsSlrUWfqF1jH0H1W3m35ZyadHrGv5krdnmPPoxP27oDTqux/579PtaroiSGm5yma6KT1mHFH6Y/g==} 4835 | engines: {node: '>=8'} 4836 | dependencies: 4837 | ip-regex: 4.3.0 4838 | tlds: 1.250.0 4839 | dev: false 4840 | 4841 | /validate-npm-package-license@3.0.4: 4842 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 4843 | dependencies: 4844 | spdx-correct: 3.2.0 4845 | spdx-expression-parse: 3.0.1 4846 | dev: true 4847 | 4848 | /vite-node@1.6.0(@types/node@20.12.12): 4849 | resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==} 4850 | engines: {node: ^18.0.0 || >=20.0.0} 4851 | hasBin: true 4852 | dependencies: 4853 | cac: 6.7.14 4854 | debug: 4.3.4 4855 | pathe: 1.1.2 4856 | picocolors: 1.0.1 4857 | vite: 5.2.11(@types/node@20.12.12) 4858 | transitivePeerDependencies: 4859 | - '@types/node' 4860 | - less 4861 | - lightningcss 4862 | - sass 4863 | - stylus 4864 | - sugarss 4865 | - supports-color 4866 | - terser 4867 | dev: true 4868 | 4869 | /vite@5.2.11(@types/node@20.12.12): 4870 | resolution: {integrity: sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==} 4871 | engines: {node: ^18.0.0 || >=20.0.0} 4872 | hasBin: true 4873 | peerDependencies: 4874 | '@types/node': ^18.0.0 || >=20.0.0 4875 | less: '*' 4876 | lightningcss: ^1.21.0 4877 | sass: '*' 4878 | stylus: '*' 4879 | sugarss: '*' 4880 | terser: ^5.4.0 4881 | peerDependenciesMeta: 4882 | '@types/node': 4883 | optional: true 4884 | less: 4885 | optional: true 4886 | lightningcss: 4887 | optional: true 4888 | sass: 4889 | optional: true 4890 | stylus: 4891 | optional: true 4892 | sugarss: 4893 | optional: true 4894 | terser: 4895 | optional: true 4896 | dependencies: 4897 | '@types/node': 20.12.12 4898 | esbuild: 0.20.2 4899 | postcss: 8.4.38 4900 | rollup: 4.17.2 4901 | optionalDependencies: 4902 | fsevents: 2.3.3 4903 | dev: true 4904 | 4905 | /vitest@1.6.0(@types/node@20.12.12): 4906 | resolution: {integrity: sha512-H5r/dN06swuFnzNFhq/dnz37bPXnq8xB2xB5JOVk8K09rUtoeNN+LHWkoQ0A/i3hvbUKKcCei9KpbxqHMLhLLA==} 4907 | engines: {node: ^18.0.0 || >=20.0.0} 4908 | hasBin: true 4909 | peerDependencies: 4910 | '@edge-runtime/vm': '*' 4911 | '@types/node': ^18.0.0 || >=20.0.0 4912 | '@vitest/browser': 1.6.0 4913 | '@vitest/ui': 1.6.0 4914 | happy-dom: '*' 4915 | jsdom: '*' 4916 | peerDependenciesMeta: 4917 | '@edge-runtime/vm': 4918 | optional: true 4919 | '@types/node': 4920 | optional: true 4921 | '@vitest/browser': 4922 | optional: true 4923 | '@vitest/ui': 4924 | optional: true 4925 | happy-dom: 4926 | optional: true 4927 | jsdom: 4928 | optional: true 4929 | dependencies: 4930 | '@types/node': 20.12.12 4931 | '@vitest/expect': 1.6.0 4932 | '@vitest/runner': 1.6.0 4933 | '@vitest/snapshot': 1.6.0 4934 | '@vitest/spy': 1.6.0 4935 | '@vitest/utils': 1.6.0 4936 | acorn-walk: 8.3.2 4937 | chai: 4.4.1 4938 | debug: 4.3.4 4939 | execa: 8.0.1 4940 | local-pkg: 0.5.0 4941 | magic-string: 0.30.10 4942 | pathe: 1.1.2 4943 | picocolors: 1.0.1 4944 | std-env: 3.7.0 4945 | strip-literal: 2.1.0 4946 | tinybench: 2.8.0 4947 | tinypool: 0.8.4 4948 | vite: 5.2.11(@types/node@20.12.12) 4949 | vite-node: 1.6.0(@types/node@20.12.12) 4950 | why-is-node-running: 2.2.2 4951 | transitivePeerDependencies: 4952 | - less 4953 | - lightningcss 4954 | - sass 4955 | - stylus 4956 | - sugarss 4957 | - supports-color 4958 | - terser 4959 | dev: true 4960 | 4961 | /webidl-conversions@4.0.2: 4962 | resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} 4963 | dev: true 4964 | 4965 | /whatwg-url@7.1.0: 4966 | resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} 4967 | dependencies: 4968 | lodash.sortby: 4.7.0 4969 | tr46: 1.0.1 4970 | webidl-conversions: 4.0.2 4971 | dev: true 4972 | 4973 | /which-boxed-primitive@1.0.2: 4974 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 4975 | dependencies: 4976 | is-bigint: 1.0.4 4977 | is-boolean-object: 1.1.2 4978 | is-number-object: 1.0.7 4979 | is-string: 1.0.7 4980 | is-symbol: 1.0.4 4981 | dev: true 4982 | 4983 | /which-builtin-type@1.1.3: 4984 | resolution: {integrity: sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==} 4985 | engines: {node: '>= 0.4'} 4986 | dependencies: 4987 | function.prototype.name: 1.1.6 4988 | has-tostringtag: 1.0.2 4989 | is-async-function: 2.0.0 4990 | is-date-object: 1.0.5 4991 | is-finalizationregistry: 1.0.2 4992 | is-generator-function: 1.0.10 4993 | is-regex: 1.1.4 4994 | is-weakref: 1.0.2 4995 | isarray: 2.0.5 4996 | which-boxed-primitive: 1.0.2 4997 | which-collection: 1.0.2 4998 | which-typed-array: 1.1.15 4999 | dev: true 5000 | 5001 | /which-collection@1.0.2: 5002 | resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} 5003 | engines: {node: '>= 0.4'} 5004 | dependencies: 5005 | is-map: 2.0.3 5006 | is-set: 2.0.3 5007 | is-weakmap: 2.0.2 5008 | is-weakset: 2.0.3 5009 | dev: true 5010 | 5011 | /which-typed-array@1.1.14: 5012 | resolution: {integrity: sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==} 5013 | engines: {node: '>= 0.4'} 5014 | dependencies: 5015 | available-typed-arrays: 1.0.7 5016 | call-bind: 1.0.7 5017 | for-each: 0.3.3 5018 | gopd: 1.0.1 5019 | has-tostringtag: 1.0.2 5020 | dev: true 5021 | 5022 | /which-typed-array@1.1.15: 5023 | resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} 5024 | engines: {node: '>= 0.4'} 5025 | dependencies: 5026 | available-typed-arrays: 1.0.7 5027 | call-bind: 1.0.7 5028 | for-each: 0.3.3 5029 | gopd: 1.0.1 5030 | has-tostringtag: 1.0.2 5031 | dev: true 5032 | 5033 | /which@1.3.1: 5034 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 5035 | hasBin: true 5036 | dependencies: 5037 | isexe: 2.0.0 5038 | dev: true 5039 | 5040 | /which@2.0.2: 5041 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 5042 | engines: {node: '>= 8'} 5043 | hasBin: true 5044 | dependencies: 5045 | isexe: 2.0.0 5046 | dev: true 5047 | 5048 | /why-is-node-running@2.2.2: 5049 | resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} 5050 | engines: {node: '>=8'} 5051 | hasBin: true 5052 | dependencies: 5053 | siginfo: 2.0.0 5054 | stackback: 0.0.2 5055 | dev: true 5056 | 5057 | /wrap-ansi@7.0.0: 5058 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 5059 | engines: {node: '>=10'} 5060 | dependencies: 5061 | ansi-styles: 4.3.0 5062 | string-width: 4.2.3 5063 | strip-ansi: 6.0.1 5064 | dev: true 5065 | 5066 | /wrap-ansi@8.1.0: 5067 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 5068 | engines: {node: '>=12'} 5069 | dependencies: 5070 | ansi-styles: 6.2.1 5071 | string-width: 5.1.2 5072 | strip-ansi: 7.1.0 5073 | dev: true 5074 | 5075 | /wrap-ansi@9.0.0: 5076 | resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} 5077 | engines: {node: '>=18'} 5078 | dependencies: 5079 | ansi-styles: 6.2.1 5080 | string-width: 7.1.0 5081 | strip-ansi: 7.1.0 5082 | dev: true 5083 | 5084 | /wrappy@1.0.2: 5085 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 5086 | dev: true 5087 | 5088 | /yallist@4.0.0: 5089 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 5090 | dev: true 5091 | 5092 | /yaml@2.3.4: 5093 | resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} 5094 | engines: {node: '>= 14'} 5095 | dev: true 5096 | 5097 | /yargs-parser@20.2.9: 5098 | resolution: {integrity: sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==} 5099 | engines: {node: '>=10'} 5100 | dev: true 5101 | 5102 | /yocto-queue@0.1.0: 5103 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 5104 | engines: {node: '>=10'} 5105 | dev: true 5106 | 5107 | /yocto-queue@1.0.0: 5108 | resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} 5109 | engines: {node: '>=12.20'} 5110 | dev: true 5111 | --------------------------------------------------------------------------------