├── babel.config.js ├── src ├── Constants.ts ├── index.tsx ├── Server.ts ├── GeeTest.tsx ├── interface.ts └── hooks │ └── useGeeTest.ts ├── .prettierrc ├── tsup.config.ts ├── .prettierignore ├── .github └── workflows │ ├── ci.yml │ └── release.yml ├── tsconfig.json ├── examples ├── server │ └── nextjs-handler.ts └── client │ └── geetest-popup.tsx ├── LICENSE ├── package.json ├── tests └── server.test.ts ├── README.md ├── .gitignore ├── jest.config.js └── pnpm-lock.yaml /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: [['@babel/preset-env', { targets: { node: 'current' } }], '@babel/preset-typescript'], 3 | }; 4 | -------------------------------------------------------------------------------- /src/Constants.ts: -------------------------------------------------------------------------------- 1 | export const VALIDATE_URL = 'https://gcaptcha4.geetest.com/validate'; 2 | 3 | export const GT4_JS = 'https://static.geetest.com/v4/gt4.js'; 4 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "endOfLine": "lf", 3 | "semi": true, 4 | "singleQuote": true, 5 | "tabWidth": 2, 6 | "trailingComma": "all", 7 | "proseWrap": "never", 8 | "printWidth": 100 9 | } 10 | -------------------------------------------------------------------------------- /tsup.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'tsup'; 2 | 3 | export default defineConfig({ 4 | clean: true, 5 | dts: true, 6 | entry: ['src/index.tsx'], 7 | format: ['esm', 'cjs'], 8 | sourcemap: true, 9 | target: 'esnext', 10 | outDir: 'dist', 11 | }); 12 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules 3 | /build 4 | /.svelte-kit 5 | /package 6 | .env 7 | .env.* 8 | !.env.example 9 | 10 | # Ignore files for PNPM, NPM and YARN 11 | pnpm-lock.yaml 12 | package-lock.json 13 | yarn.lock 14 | .changeset/ 15 | .prettierrc 16 | package.json 17 | .vercel 18 | .contentlayer 19 | dist 20 | 21 | vite.config.js.timestamp-* 22 | vite.config.ts.timestamp-* 23 | 24 | .storybookd 25 | public 26 | .site 27 | _site 28 | .umi 29 | .doc 30 | .umi-production 31 | .umi-test 32 | tsconfig.json 33 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: CI Job 2 | 3 | on: 4 | push: 5 | branches: 6 | - master 7 | 8 | jobs: 9 | check: 10 | runs-on: ubuntu-latest 11 | permissions: 12 | contents: read 13 | packages: write 14 | 15 | steps: 16 | - uses: actions/checkout@v4 17 | - uses: pnpm/action-setup@v2 18 | with: 19 | version: 8 20 | - uses: actions/setup-node@v4 21 | with: 22 | node-version: 18 23 | cache: 'pnpm' 24 | 25 | - run: pnpm install 26 | - run: pnpm format:check 27 | - run: pnpm typecheck 28 | -------------------------------------------------------------------------------- /src/index.tsx: -------------------------------------------------------------------------------- 1 | import type { GeeTestProps } from './GeeTest'; 2 | import GeeTest from './GeeTest'; 3 | import type { GeeTestValidateParams } from './Server'; 4 | import { generateSignToken, validateCaptcha } from './Server'; 5 | import type { GeeTestEventCallbacks, GeeTestRef, GeeTestValidateResult } from './interface'; 6 | 7 | export { validateCaptcha, generateSignToken }; 8 | export type { 9 | GeeTestProps, 10 | GeeTestValidateParams, 11 | GeeTestValidateResult, 12 | GeeTestRef, 13 | GeeTestEventCallbacks, 14 | }; 15 | 16 | export { useGeeTest } from './hooks/useGeeTest'; 17 | export type { UseGeeTestOptions } from './hooks/useGeeTest'; 18 | 19 | export default GeeTest; 20 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release Package 2 | 3 | on: 4 | release: 5 | types: [created] 6 | 7 | jobs: 8 | build: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions/checkout@v3 12 | - uses: actions/setup-node@v3 13 | with: 14 | node-version: 18 15 | - run: npm ci 16 | - run: npm run build 17 | 18 | publish-npm: 19 | needs: build 20 | runs-on: ubuntu-latest 21 | steps: 22 | - uses: actions/checkout@v3 23 | - uses: actions/setup-node@v3 24 | with: 25 | node-version: 18 26 | registry-url: https://registry.npmjs.org/ 27 | - run: npm version ${{ github.event.release.tag_name }} --no-git-tag-version 28 | - run: npm install 29 | - run: npm publish 30 | env: 31 | NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} 32 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "composite": false, 4 | "declaration": true, 5 | "declarationMap": true, 6 | "esModuleInterop": true, 7 | "forceConsistentCasingInFileNames": true, 8 | "inlineSources": false, 9 | "isolatedModules": true, 10 | "moduleResolution": "node", 11 | "module": "ESNext", 12 | "noUnusedLocals": false, 13 | "noUnusedParameters": false, 14 | "preserveWatchOutput": true, 15 | "skipLibCheck": true, 16 | "strict": true, 17 | "downlevelIteration": true, 18 | "jsx": "react", 19 | "target": "es2022", 20 | "allowJs": true, 21 | "allowSyntheticDefaultImports": true, 22 | "resolveJsonModule": true, 23 | "rootDir": "./src", 24 | "outDir": "build", 25 | "baseUrl": ".", 26 | "paths": { 27 | "react-geetest-v4": [ "src/index.tsx" ], 28 | } 29 | }, 30 | "include": [ "src/**/*" ], 31 | "exclude": [ "node_modules", "dist", "examples" ] 32 | } 33 | -------------------------------------------------------------------------------- /examples/server/nextjs-handler.ts: -------------------------------------------------------------------------------- 1 | import type { NextApiRequest, NextApiResponse } from 'next'; 2 | import { generateSignToken, validateCaptcha } from 'react-geetest-v4'; 3 | 4 | // geetest public key 5 | const CAPTCHA_ID = '647f5ed2ed8acb4be36784e01556bb71'; 6 | 7 | // geetest secret key 8 | const CAPTCHA_KEY = 'b09a7aafbfd83f73b35a9b530d0337bf'; 9 | 10 | export default async function handler(req: NextApiRequest, res: NextApiResponse) { 11 | const { captcha_output, gen_time, lot_number, pass_token } = req.body; 12 | 13 | if (!captcha_output || !gen_time || !lot_number || !pass_token) { 14 | return res.status(400).json({ error: 'Missing required parameters' }); 15 | } 16 | 17 | const { status, result } = await validateCaptcha({ 18 | captcha_id: CAPTCHA_ID, 19 | lot_number, 20 | captcha_output, 21 | pass_token, 22 | gen_time, 23 | sign_token: generateSignToken(lot_number, CAPTCHA_KEY), 24 | }); 25 | 26 | return res.status(200).json({ ok: result }); 27 | } 28 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Shahrad Elahi 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /examples/client/geetest-popup.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import GeeTest from 'react-geetest-v4'; 3 | 4 | export default function GeeTestPage() { 5 | const handleSubmit = (event: any) => { 6 | event.preventDefault(); 7 | console.log('handleSubmit', event); 8 | }; 9 | 10 | const onSuccess = async (result: any) => { 11 | console.log('onSuccess: result: ', result); 12 | const res = await fetch('/api/geetest/verify', { 13 | method: 'POST', 14 | headers: { 15 | 'Content-Type': 'application/json', 16 | }, 17 | body: JSON.stringify({ 18 | pass_token: result.pass_token, 19 | captcha_output: result.captcha_output, 20 | gen_time: result.gen_time, 21 | lot_number: result.lot_number, 22 | }), 23 | }); 24 | console.log('onSuccess: validate: ', await res.json()); 25 | }; 26 | 27 | return ( 28 |
29 |
30 | 31 | 32 |
33 |
34 |
35 | 36 | 37 |
38 |
39 | 44 |
45 |
46 | 47 |
48 | 49 | ); 50 | } 51 | -------------------------------------------------------------------------------- /src/Server.ts: -------------------------------------------------------------------------------- 1 | import crypto from 'crypto-js'; 2 | import { VALIDATE_URL } from './Constants'; 3 | import { GeeTestValidateResult } from './interface'; 4 | 5 | export type GeeTestValidateParams = GeeTestValidateResult & { 6 | sign_token: string; 7 | validator_endpoint_url?: string; 8 | }; 9 | 10 | export type GeeTestValidateResponse = { status: 'success' | 'error' } & { 11 | result: 'success' | 'fail'; 12 | reason: string; 13 | captcha_args: { 14 | [key: string]: string; 15 | used_type: string; 16 | user_ip: string; 17 | lot_number: string; 18 | scene: string; 19 | referer: string; 20 | }; 21 | } & { 22 | code: string; 23 | msg: string; 24 | desc: object; 25 | }; 26 | 27 | export function validateCaptcha(params: GeeTestValidateParams): Promise { 28 | const { captcha_id, validator_endpoint_url, ...postPrams } = params; 29 | 30 | const url = new URL(validator_endpoint_url || VALIDATE_URL); 31 | url.searchParams.set('captcha_id', captcha_id); 32 | 33 | return new Promise(async (resolve, reject) => { 34 | const res = await fetch(url.toString(), { 35 | method: 'POST', 36 | headers: { 37 | 'Content-Type': 'application/x-www-form-urlencoded', 38 | }, 39 | body: new URLSearchParams(postPrams).toString(), 40 | }); 41 | 42 | // When the request geetest service interface is abnormal, it shall be released to avoid blocking normal business. 43 | if (!res.status.toString().startsWith('2')) { 44 | return reject(new Error('server reposed with an error status code')); 45 | } 46 | 47 | return resolve(await res.json()); 48 | }); 49 | } 50 | 51 | export function generateSignToken(lotNumber: string, captchaKey: string): string { 52 | return crypto.HmacSHA256(lotNumber, captchaKey).toString(); 53 | } 54 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "react-geetest-v4", 3 | "version": "1.1.3", 4 | "description": "React library for GeeTest captcha v4 integration", 5 | "main": "./dist/index.js", 6 | "module": "./dist/index.mjs", 7 | "types": "./dist/index.d.ts", 8 | "scripts": { 9 | "dev": "tsup --watch", 10 | "build": "tsup", 11 | "test": "jest", 12 | "typecheck": "tsc --noEmit", 13 | "format:check": "prettier --check \"**/*.{ts,md}\"", 14 | "format": "prettier --write .", 15 | "prepublishOnly": "pnpm run format:check && pnpm run typecheck && pnpm run build" 16 | }, 17 | "files": [ 18 | "dist/**" 19 | ], 20 | "exports": { 21 | ".": { 22 | "import": { 23 | "types": "./dist/index.d.mts", 24 | "default": "./dist/index.mjs" 25 | }, 26 | "require": { 27 | "types": "./dist/index.d.ts", 28 | "default": "./dist/index.js" 29 | } 30 | } 31 | }, 32 | "repository": { 33 | "type": "git", 34 | "url": "git+https://github.com/shahradelahi/react-geetest.git" 35 | }, 36 | "bugs": { 37 | "url": "https://github.com/shahradelahi/react-geetest/issues" 38 | }, 39 | "keywords": [ 40 | "react", 41 | "geetest", 42 | "captcha" 43 | ], 44 | "peerDependencies": { 45 | "react": ">= 17.0.0", 46 | "react-dom": ">= 17.0.0" 47 | }, 48 | "author": "Shahrad Elahi (https://github.com/shahradelahi)", 49 | "license": "MIT", 50 | "packageManager": "pnpm@8.11.0", 51 | "devDependencies": { 52 | "@babel/core": "^7.21.4", 53 | "@babel/preset-env": "^7.21.4", 54 | "@babel/preset-typescript": "^7.21.4", 55 | "@jest/globals": "^29.5.0", 56 | "@types/crypto-js": "^4.1.1", 57 | "@types/react": "^18.0.35", 58 | "babel-jest": "^29.5.0", 59 | "jest": "^29.5.0", 60 | "prettier": "^2.8.7", 61 | "tsup": "^8.0.1", 62 | "typescript": "^4.8.4" 63 | }, 64 | "dependencies": { 65 | "crypto-js": "^4.1.1" 66 | } 67 | } 68 | -------------------------------------------------------------------------------- /tests/server.test.ts: -------------------------------------------------------------------------------- 1 | import { describe, expect, it } from '@jest/globals'; 2 | import { generateSignToken, validateCaptcha } from 'react-geetest-v4'; 3 | 4 | describe('server validate captcha', () => { 5 | it('should throw error for invalid captcha_id', async function () { 6 | const result = await validateCaptcha({ 7 | captcha_id: '', 8 | lot_number: '', 9 | gen_time: '', 10 | pass_token: '', 11 | sign_token: '', 12 | captcha_output: '', 13 | }); 14 | 15 | console.log(result); 16 | expect(result.status).toBe('error'); 17 | 18 | if (result.status === 'error') { 19 | expect(result.code).toBe('-50101'); 20 | expect(result.msg).toBe('not captcha_id'); 21 | } 22 | }); 23 | it('should fail for invalid sign_token', async function () { 24 | const result = await validateCaptcha({ 25 | captcha_id: '647f5ed2ed8acb4be36784e01556bb71', 26 | lot_number: 'c4c69a52999045aea1d34b57f1ef29f2', 27 | gen_time: '1682136049', 28 | pass_token: '', 29 | sign_token: generateSignToken('c4c69a52999045aea1d34b57f1ef29f2', ''), 30 | captcha_output: '', 31 | }); 32 | 33 | console.log(result); 34 | expect(result.status).toBe('success'); 35 | 36 | if (result.status === 'success') { 37 | expect(result.result).toBe('fail'); 38 | expect(result.reason).toBe('sign_token error'); 39 | } 40 | }); 41 | it('should fail for invalid pass_token', async function () { 42 | const result = await validateCaptcha({ 43 | captcha_id: '647f5ed2ed8acb4be36784e01556bb71', 44 | lot_number: 'c4c69a52999045aea1d34b57f1ef29f2', 45 | gen_time: '1682136049', 46 | pass_token: '4b774095664ce55ad3ffe5c73b26af02430119056ec18bd5f25f21301bb19608', 47 | sign_token: generateSignToken( 48 | 'c4c69a52999045aea1d34b57f1ef29f2', 49 | 'b09a7aafbfd83f73b35a9b530d0337bf', 50 | ), 51 | captcha_output: 52 | 'r-npFi9qNlfgy-zgvhB4k0519xpmbTQLGXBC19aY4E0ES20Xp1YUyWcx8mbeo0WHPYWCUNvyGcNcVQqInczQnHdbL1F472wKz3OVJKgwhUik2v2XSNdVZFdqGAnnHR7-zi_Wq5ozdMLv0J4vF9ruveeSSnRd0uYHSNw4EnySYKpmleNmlaAtivXRAIbAeUyCTXeTU60_lAKapXsobRaEgG3Qf39RlAdTbK9HD0ixB1w=', 53 | }); 54 | 55 | console.log(result); 56 | expect(result.status).toBe('success'); 57 | 58 | if (result.status === 'success') { 59 | expect(result.result).toBe('fail'); 60 | expect(result.reason).toBe('pass_token error'); 61 | } 62 | }); 63 | }); 64 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # GeeTest integration for React 2 | 3 | A very simple React component to integrate [GeeTest captcha](https://docs.geetest.com/BehaviorVerification/overview/start/). 4 | 5 | ## Installation 6 | 7 | ```bash 8 | npm install react-geetest-v4 9 | ``` 10 | 11 | ## Usage 12 | 13 | #### Normal practice 14 | 15 | ```tsx 16 | import React from 'react'; 17 | import GeeTest, { GeeTestRef } from 'react-geetest-v4'; 18 | 19 | export default function Home(): JSX.Element { 20 | const captchaRef = React.useRef(null); // Access: showCaptcha, reset, ... 21 | return ( 22 |
23 | console.log('success. result: ', result)} 27 | onReady={() => console.log('ready')} 28 | /> 29 |
30 | console.log('success')} 35 | > 36 | 37 | 38 |
39 | ); 40 | } 41 | ``` 42 | 43 | #### Using hooks 44 | 45 | ```tsx 46 | import React from 'react'; 47 | import { useGeeTest } from 'react-geetest-v4'; 48 | 49 | export default function Home(): JSX.Element { 50 | const { captcha, state } = useGeeTest('your captcha id', { 51 | product: 'bind', 52 | protocol: 'https://', 53 | containerId: 'geetest-captcha', 54 | }); 55 | 56 | const onClick = () => { 57 | captcha?.showCaptcha(); 58 | }; 59 | 60 | return ( 61 |
62 | 63 |
64 | ); 65 | } 66 | ``` 67 | 68 | #### Server validation 69 | 70 | On this example we're using Next.JS handlers, but you can use any other framework. 71 | 72 | ```typescript 73 | import type { NextApiRequest, NextApiResponse } from 'next'; 74 | import { validateCaptcha, generateSignToken } from 'react-geetest-v4'; 75 | 76 | const CAPTCHA_ID = '647f5ed2ed8acb4be36784e01556bb71'; 77 | const CAPTCHA_KEY = 'b09a7aafbfd83f73b35a9b530d0337bf'; 78 | 79 | export default async function handler(req: NextApiRequest, res: NextApiResponse) { 80 | const { captcha_output, gen_time, lot_number, pass_token } = req.body; 81 | if (!captcha_output || !gen_time || !lot_number || !pass_token) { 82 | return res.status(400).json({ error: 'Missing required parameters' }); 83 | } 84 | 85 | const { result } = await validateCaptcha({ 86 | captcha_id: CAPTCHA_ID, 87 | lot_number, 88 | captcha_output, 89 | pass_token, 90 | gen_time, 91 | sign_token: generateSignToken(lot_number, CAPTCHA_KEY), 92 | }); 93 | 94 | return res.status(200).json({ ok: result === 'success' }); 95 | } 96 | ``` 97 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | lerna-debug.log* 8 | .pnpm-debug.log* 9 | 10 | # Diagnostic reports (https://nodejs.org/api/report.html) 11 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json 12 | 13 | # Runtime data 14 | pids 15 | *.pid 16 | *.seed 17 | *.pid.lock 18 | 19 | # Directory for instrumented libs generated by jscoverage/JSCover 20 | lib-cov 21 | 22 | # Coverage directory used by tools like istanbul 23 | coverage 24 | *.lcov 25 | 26 | # nyc test coverage 27 | .nyc_output 28 | 29 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) 30 | .grunt 31 | 32 | # Bower dependency directory (https://bower.io/) 33 | bower_components 34 | 35 | # node-waf configuration 36 | .lock-wscript 37 | 38 | # Compiled binary addons (https://nodejs.org/api/addons.html) 39 | build/Release 40 | 41 | # Dependency directories 42 | node_modules/ 43 | jspm_packages/ 44 | 45 | # Snowpack dependency directory (https://snowpack.dev/) 46 | web_modules/ 47 | 48 | # TypeScript cache 49 | *.tsbuildinfo 50 | 51 | # Optional npm cache directory 52 | .npm 53 | 54 | # Optional eslint cache 55 | .eslintcache 56 | 57 | # Optional stylelint cache 58 | .stylelintcache 59 | 60 | # Microbundle cache 61 | .rpt2_cache/ 62 | .rts2_cache_cjs/ 63 | .rts2_cache_es/ 64 | .rts2_cache_umd/ 65 | 66 | # Optional REPL history 67 | .node_repl_history 68 | 69 | # Output of 'npm pack' 70 | *.tgz 71 | 72 | # Yarn Integrity file 73 | .yarn-integrity 74 | 75 | # dotenv environment variable files 76 | .env 77 | .env.development.local 78 | .env.test.local 79 | .env.production.local 80 | .env.local 81 | 82 | # parcel-bundler cache (https://parceljs.org/) 83 | .cache 84 | .parcel-cache 85 | 86 | # Next.js build output 87 | .next 88 | out 89 | 90 | # Nuxt.js build / generate output 91 | .nuxt 92 | dist 93 | 94 | # Gatsby files 95 | .cache/ 96 | # Comment in the public line in if your project uses Gatsby and not Next.js 97 | # https://nextjs.org/blog/next-9-1#public-directory-support 98 | # public 99 | 100 | # vuepress build output 101 | .vuepress/dist 102 | 103 | # vuepress v2.x temp and cache directory 104 | .temp 105 | .cache 106 | 107 | # Docusaurus cache and generated files 108 | .docusaurus 109 | 110 | # Serverless directories 111 | .serverless/ 112 | 113 | # FuseBox cache 114 | .fusebox/ 115 | 116 | # DynamoDB Local files 117 | .dynamodb/ 118 | 119 | # TernJS port file 120 | .tern-port 121 | 122 | # Stores VSCode versions used for testing VSCode extensions 123 | .vscode-test 124 | 125 | # yarn v2 126 | .yarn/cache 127 | .yarn/unplugged 128 | .yarn/build-state.yml 129 | .yarn/install-state.gz 130 | .pnp.* 131 | 132 | # IntelliJ IDEA 133 | .idea/ 134 | -------------------------------------------------------------------------------- /src/GeeTest.tsx: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { useGeeTest } from './hooks/useGeeTest'; 3 | import { 4 | GeeTestError, 5 | GeeTestEventCallbacks, 6 | GeeTestProduct, 7 | GeeTestRef, 8 | GeeTestValidateResult, 9 | InitConfig, 10 | OnErrorFn, 11 | OnFailFn, 12 | OnSuccessFn, 13 | } from './interface'; 14 | 15 | export type GeeTestProps = GeeTestProduct & 16 | Omit & 17 | Partial & { 18 | captchaId: string; 19 | containerId?: string; 20 | container?: { 21 | width?: string; 22 | height?: string; 23 | }; 24 | rootClassName?: string; 25 | }; 26 | 27 | const GeeTest = React.forwardRef(function (props, ref): JSX.Element { 28 | const uniqueId = React.useId(); 29 | const { container, containerId, rootClassName, product, ...rest } = props; 30 | const { onError, onReady, onNextReady, onSuccess, onClose, onFail, ...config } = rest; 31 | 32 | const { captcha, state } = useGeeTest(props.captchaId, { 33 | product: product as InitConfig['product'], 34 | ...config, 35 | }); 36 | 37 | React.useImperativeHandle(ref, () => ({ 38 | reset: () => captcha?.reset(), 39 | destroy: () => captcha?.destroy(), 40 | showCaptcha: () => captcha?.showCaptcha(), 41 | getValidate: () => captcha?.getValidate(), 42 | })); 43 | 44 | React.useEffect(() => { 45 | if (state === 'ready' && product !== 'bind') { 46 | captcha?.appendTo(`#${props.containerId || `captcha-${uniqueId}`}`); 47 | } 48 | }, [state]); 49 | 50 | React.useEffect(() => { 51 | if (captcha) { 52 | captcha.onReady(() => handleOnEvent('onReady')); 53 | captcha.onNextReady(() => handleOnEvent('onNextReady')); 54 | captcha.onSuccess(() => handleOnEvent('onSuccess')); 55 | captcha.onClose(() => handleOnEvent('onClose')); 56 | captcha.onFail((e) => handleOnEvent('onFail', e)); 57 | captcha.onError((e) => handleOnEvent('onError', e)); 58 | } 59 | }, [captcha]); 60 | 61 | const handleOnEvent = (event: string, arg?: GeeTestError | GeeTestValidateResult) => { 62 | const callback = props[event as keyof GeeTestEventCallbacks]; 63 | if (!callback) { 64 | // callback is not registered 65 | return; 66 | } 67 | if (event === 'onSuccess') { 68 | (callback as OnSuccessFn)(captcha?.getValidate()); 69 | return; 70 | } 71 | if (event === 'onError' || event === 'onFail') { 72 | (callback as OnErrorFn | OnFailFn)(arg as GeeTestError); 73 | return; 74 | } 75 | (callback as () => void)(); 76 | }; 77 | 78 | return ( 79 |
captcha?.showCaptcha(), 88 | children: props.children, 89 | })} 90 | /> 91 | ); 92 | }); 93 | 94 | export default GeeTest; 95 | -------------------------------------------------------------------------------- /src/interface.ts: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | export type GeeTestState = 'loading' | 'ready' | 'success' | 'closed' | 'error'; 4 | 5 | export type GeeTestBind = { 6 | product: 'bind'; 7 | children: React.ReactNode; 8 | }; 9 | 10 | export type GeeTestPopup = { 11 | product: 'popup'; 12 | }; 13 | 14 | export type GeeTestFlat = { 15 | product: 'flat'; 16 | }; 17 | 18 | export type GeeTestProduct = GeeTestBind | GeeTestPopup | GeeTestFlat; 19 | 20 | export type GeeTestRef = { 21 | reset: () => void; 22 | destroy: () => void; 23 | showCaptcha: () => void; 24 | getValidate: () => GeeTestValidateResult | undefined; 25 | }; 26 | 27 | export type InitConfig = { 28 | captchaId: string; 29 | product: 'float' | 'popup' | 'bind'; 30 | nativeButton?: { 31 | width?: string; 32 | height?: string; 33 | }; 34 | rem?: number; 35 | language?: 36 | | string 37 | | 'zho' 38 | | 'eng' 39 | | 'zho-tw' 40 | | 'zho-hk' 41 | | 'udm' 42 | | 'jpn' 43 | | 'ind' 44 | | 'kor' 45 | | 'rus' 46 | | 'ara' 47 | | 'spa' 48 | | 'pon' 49 | | 'por' 50 | | 'fra' 51 | | 'deu'; 52 | protocol?: 'http://' | 'https://' | 'file://'; 53 | script?: string; 54 | timeout?: number; 55 | hideBar?: string[]; 56 | mask?: { 57 | outside?: boolean; 58 | bgColor?: string; 59 | }; 60 | overrideWithForce?: GeeTestOverrideParams; 61 | apiServers?: string[]; 62 | nextWidth?: string; 63 | riskType?: string; 64 | offlineCb?: () => void; 65 | onError?: (error: GeeTestError) => void; 66 | hideSuccess?: boolean; 67 | userInfo?: string; 68 | }; 69 | 70 | export function initGeetest4(config: InitConfig, callback: (captchaObj: GeeTest) => void): void { 71 | if (typeof window === 'undefined') { 72 | throw new Error('initGeetest4 can only be called in browser'); 73 | } 74 | return window.initGeetest4(config, callback); 75 | } 76 | 77 | export type GeeTest = GeeTestEvents & { 78 | appendTo: (element: HTMLElement | string) => void; 79 | getValidate: () => GeeTestValidateResult; 80 | reset: () => void; 81 | showCaptcha: () => void; 82 | destroy: () => void; 83 | }; 84 | 85 | export type GeeTestValidateResult = { 86 | captcha_id: string; 87 | captcha_output: string; 88 | gen_time: string; 89 | lot_number: string; 90 | pass_token: string; 91 | }; 92 | 93 | type GeeTestEvents = { 94 | onReady: (callback: OnReadyFn) => void; 95 | onNextReady: (callback: OnNextReadyFn) => void; 96 | onSuccess: (callback: OnSuccessFn) => void; 97 | onFail: (callback: OnFailFn) => void; 98 | onError: (callback: OnErrorFn) => void; 99 | onClose: (callback: OnCloseFn) => void; 100 | }; 101 | 102 | export type OnReadyFn = () => void; 103 | export type OnNextReadyFn = () => void; 104 | export type OnSuccessFn = (result: GeeTestValidateResult | undefined) => void; 105 | export type OnFailFn = (error: GeeTestError) => void; 106 | export type OnErrorFn = (error: GeeTestError) => void; 107 | export type OnCloseFn = () => void; 108 | 109 | export type GeeTestEventCallbacks = { 110 | onReady: OnReadyFn; 111 | onNextReady: OnNextReadyFn; 112 | onSuccess: OnSuccessFn; 113 | onFail: OnFailFn; 114 | onError: OnErrorFn; 115 | onClose: OnCloseFn; 116 | }; 117 | 118 | export type GeeTestEvent = keyof GeeTestEvents; 119 | 120 | export type GeeTestError = { 121 | code: string; 122 | msg: string; 123 | desc: { 124 | detail: string; 125 | }; 126 | }; 127 | 128 | export type GeeTestOverrideParams = Record & { 129 | arrow?: string; 130 | show_voice?: boolean; 131 | feedback?: string; 132 | logo?: boolean; 133 | guard?: boolean; 134 | language?: string; 135 | }; 136 | 137 | declare global { 138 | interface Window { 139 | initGeetest4: typeof initGeetest4; 140 | } 141 | } 142 | -------------------------------------------------------------------------------- /src/hooks/useGeeTest.ts: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import { GeeTest, GeeTestOverrideParams, GeeTestState, InitConfig } from '../interface'; 3 | import { GT4_JS } from '../Constants'; 4 | 5 | export type UseGeeTestOptions = Omit; 6 | 7 | type UseGeeTestReturns = { 8 | captcha?: GeeTest; 9 | state: GeeTestState; 10 | }; 11 | 12 | export function useGeeTest(captchaId: string, options: UseGeeTestOptions): UseGeeTestReturns { 13 | const [captchaObj, setCaptchaObj] = React.useState(); 14 | const [currentState, setCurrentSate] = React.useState('loading'); 15 | const [scriptLoaded, setScriptLoaded] = React.useState(false); 16 | const { script: staticScript, overrideWithForce, ...opts } = options; 17 | 18 | React.useEffect(() => { 19 | if (typeof window === 'undefined' || scriptLoaded) { 20 | return; 21 | } 22 | 23 | if (overrideWithForce) { 24 | // downloads gt4 script and modifies the content 25 | fetch(GT4_JS) 26 | .then((res) => res.text()) 27 | .then((text) => { 28 | const script = document.createElement('script'); 29 | script.innerHTML = forceChange({ ...opts, overrideWithForce }, text); 30 | script.type = 'text/javascript'; 31 | document.head.appendChild(script); 32 | setScriptLoaded(true); 33 | }) 34 | .catch((err) => { 35 | console.error('Error when downloading gt4 script', err); 36 | }); 37 | } 38 | 39 | // if force is false, it will use the origin 40 | else { 41 | const script = document.createElement('script'); 42 | script.src = staticScript || GT4_JS; 43 | script.crossOrigin = 'anonymous'; 44 | script.onload = () => { 45 | setScriptLoaded(true); 46 | }; 47 | document.head.appendChild(script); 48 | } 49 | }, []); 50 | 51 | React.useEffect(() => { 52 | if (typeof window !== 'undefined' && scriptLoaded) { 53 | const defaultOptions: Partial = { 54 | protocol: 'https://', 55 | }; 56 | 57 | window.initGeetest4({ captchaId: captchaId, ...defaultOptions, ...opts }, (captchaObj) => { 58 | setCaptchaObj(captchaObj); 59 | }); 60 | } 61 | 62 | return () => { 63 | if (captchaObj) { 64 | captchaObj.destroy(); 65 | } 66 | }; 67 | }, [scriptLoaded, captchaId]); 68 | 69 | React.useEffect(() => { 70 | if (captchaObj) { 71 | captchaObj.onReady(() => { 72 | setCurrentSate('ready'); 73 | }); 74 | 75 | captchaObj.onSuccess(() => { 76 | setCurrentSate('success'); 77 | }); 78 | 79 | captchaObj.onError(() => { 80 | setCurrentSate('error'); 81 | }); 82 | 83 | captchaObj.onClose(() => { 84 | setCurrentSate('closed'); 85 | }); 86 | } 87 | }, [captchaObj]); 88 | 89 | return { 90 | captcha: captchaObj, 91 | state: currentState, 92 | }; 93 | } 94 | 95 | type ForceChangeConfig = Omit & { 96 | overrideWithForce: GeeTestOverrideParams; 97 | }; 98 | 99 | function forceChange(config: ForceChangeConfig, scriptTxt: string): string { 100 | let modifiedScript = scriptTxt; 101 | 102 | const newConfigStr = 'var newConfig = camelizeKeys(newConfig);'; 103 | 104 | if (config.overrideWithForce) { 105 | Object.keys(config.overrideWithForce).forEach((key: any) => { 106 | const rowData: string | number | boolean = config.overrideWithForce[key]; 107 | const data = typeof rowData === 'string' ? `'${rowData}'` : rowData; 108 | modifiedScript = modifiedScript.replaceAll( 109 | newConfigStr, 110 | newConfigStr + `newConfig.${key} = ${data};`, 111 | ); 112 | }); 113 | } 114 | 115 | return modifiedScript; 116 | } 117 | -------------------------------------------------------------------------------- /jest.config.js: -------------------------------------------------------------------------------- 1 | /* 2 | * For a detailed explanation regarding each configuration property, visit: 3 | * https://jestjs.io/docs/configuration 4 | */ 5 | 6 | module.exports = { 7 | // All imported modules in your tests should be mocked automatically 8 | // automock: false, 9 | 10 | // Stop running tests after `n` failures 11 | // bail: 0, 12 | 13 | // The directory where Jest should store its cached dependency information 14 | // cacheDirectory: "C:\\Users\\Jesus\\AppData\\Local\\Temp\\jest", 15 | 16 | // Automatically clear mock calls, instances, contexts and results before every test 17 | // clearMocks: false, 18 | 19 | // Indicates whether the coverage information should be collected while executing the test 20 | // collectCoverage: false, 21 | 22 | // An array of glob patterns indicating a set of files for which coverage information should be collected 23 | // collectCoverageFrom: undefined, 24 | 25 | // The directory where Jest should output its coverage files 26 | // coverageDirectory: undefined, 27 | 28 | // An array of regexp pattern strings used to skip coverage collection 29 | // coveragePathIgnorePatterns: [ 30 | // "\\\\node_modules\\\\" 31 | // ], 32 | 33 | // Indicates which provider should be used to instrument code for coverage 34 | coverageProvider: 'v8', 35 | 36 | // A list of reporter names that Jest uses when writing coverage reports 37 | // coverageReporters: [ 38 | // "json", 39 | // "text", 40 | // "lcov", 41 | // "clover" 42 | // ], 43 | 44 | // An object that configures minimum threshold enforcement for coverage results 45 | // coverageThreshold: undefined, 46 | 47 | // A path to a custom dependency extractor 48 | // dependencyExtractor: undefined, 49 | 50 | // Make calling deprecated APIs throw helpful error messages 51 | // errorOnDeprecated: false, 52 | 53 | // The default configuration for fake timers 54 | // fakeTimers: { 55 | // "enableGlobally": false 56 | // }, 57 | 58 | // Force coverage collection from ignored files using an array of glob patterns 59 | // forceCoverageMatch: [], 60 | 61 | // A path to a module which exports an async function that is triggered once before all test suites 62 | // globalSetup: undefined, 63 | 64 | // A path to a module which exports an async function that is triggered once after all test suites 65 | // globalTeardown: undefined, 66 | 67 | // A set of global variables that need to be available in all test environments 68 | // globals: {}, 69 | 70 | // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. 71 | // maxWorkers: "50%", 72 | 73 | // An array of directory names to be searched recursively up from the requiring module's location 74 | // moduleDirectories: [ 75 | // "node_modules" 76 | // ], 77 | 78 | // An array of file extensions your modules use 79 | // moduleFileExtensions: [ 80 | // "js", 81 | // "mjs", 82 | // "cjs", 83 | // "jsx", 84 | // "ts", 85 | // "tsx", 86 | // "json", 87 | // "node" 88 | // ], 89 | 90 | // A map from regular expressions to module names or to arrays of module names that allow to stub out resources with a single module 91 | moduleNameMapper: { 92 | '^react-geetest-v4/(.*)$': '/src/$1', 93 | }, 94 | 95 | // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader 96 | // modulePathIgnorePatterns: [], 97 | 98 | // Activates notifications for test results 99 | // notify: false, 100 | 101 | // An enum that specifies notification mode. Requires { notify: true } 102 | // notifyMode: "failure-change", 103 | 104 | // A preset that is used as a base for Jest's configuration 105 | // preset: undefined, 106 | 107 | // Run tests from one or more projects 108 | // projects: undefined, 109 | 110 | // Use this configuration option to add custom reporters to Jest 111 | // reporters: undefined, 112 | 113 | // Automatically reset mock state before every test 114 | // resetMocks: false, 115 | 116 | // Reset the module registry before running each individual test 117 | // resetModules: false, 118 | 119 | // A path to a custom resolver 120 | // resolver: undefined, 121 | 122 | // Automatically restore mock state and implementation before every test 123 | // restoreMocks: false, 124 | 125 | // The root directory that Jest should scan for tests and modules within 126 | // rootDir: undefined, 127 | 128 | // A list of paths to directories that Jest should use to search for files in 129 | // roots: [ 130 | // "" 131 | // ], 132 | 133 | // Allows you to use a custom runner instead of Jest's default test runner 134 | // runner: "jest-runner", 135 | 136 | // The paths to modules that run some code to configure or set up the testing environment before each test 137 | // setupFiles: [], 138 | 139 | // A list of paths to modules that run some code to configure or set up the testing framework before each test 140 | // setupFilesAfterEnv: [], 141 | 142 | // The number of seconds after which a test is considered as slow and reported as such in the results. 143 | // slowTestThreshold: 5, 144 | 145 | // A list of paths to snapshot serializer modules Jest should use for snapshot testing 146 | // snapshotSerializers: [], 147 | 148 | // The test environment that will be used for testing 149 | // testEnvironment: "jest-environment-node", 150 | 151 | // Options that will be passed to the testEnvironment 152 | // testEnvironmentOptions: {}, 153 | 154 | // Adds a location field to test results 155 | // testLocationInResults: false, 156 | 157 | // The glob patterns Jest uses to detect test files 158 | // testMatch: [ 159 | // "**/__tests__/**/*.[jt]s?(x)", 160 | // "**/?(*.)+(spec|test).[tj]s?(x)" 161 | // ], 162 | 163 | // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped 164 | // testPathIgnorePatterns: [ 165 | // "\\\\node_modules\\\\" 166 | // ], 167 | 168 | // The regexp pattern or array of patterns that Jest uses to detect test files 169 | // testRegex: [], 170 | 171 | // This option allows the use of a custom results processor 172 | // testResultsProcessor: undefined, 173 | 174 | // This option allows use of a custom test runner 175 | // testRunner: "jest-circus/runner", 176 | 177 | // A map from regular expressions to paths to transformers 178 | // transform: undefined, 179 | 180 | // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation 181 | // transformIgnorePatterns: [ 182 | // "\\\\node_modules\\\\", 183 | // "\\.pnp\\.[^\\\\]+$" 184 | // ], 185 | 186 | // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them 187 | // unmockedModulePathPatterns: undefined, 188 | 189 | // Indicates whether each individual test should be reported during the run 190 | // verbose: undefined, 191 | 192 | // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode 193 | // watchPathIgnorePatterns: [], 194 | 195 | // Whether to use watchman for file crawling 196 | // watchman: true, 197 | }; 198 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '6.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | dependencies: 8 | crypto-js: 9 | specifier: ^4.1.1 10 | version: 4.2.0 11 | react: 12 | specifier: '>= 17.0.0' 13 | version: 18.2.0 14 | react-dom: 15 | specifier: '>= 17.0.0' 16 | version: 18.2.0(react@18.2.0) 17 | 18 | devDependencies: 19 | '@babel/core': 20 | specifier: ^7.21.4 21 | version: 7.23.5 22 | '@babel/preset-env': 23 | specifier: ^7.21.4 24 | version: 7.23.5(@babel/core@7.23.5) 25 | '@babel/preset-typescript': 26 | specifier: ^7.21.4 27 | version: 7.23.3(@babel/core@7.23.5) 28 | '@jest/globals': 29 | specifier: ^29.5.0 30 | version: 29.7.0 31 | '@types/crypto-js': 32 | specifier: ^4.1.1 33 | version: 4.2.1 34 | '@types/react': 35 | specifier: ^18.0.35 36 | version: 18.2.41 37 | babel-jest: 38 | specifier: ^29.5.0 39 | version: 29.7.0(@babel/core@7.23.5) 40 | jest: 41 | specifier: ^29.5.0 42 | version: 29.7.0 43 | prettier: 44 | specifier: ^2.8.7 45 | version: 2.8.8 46 | tsup: 47 | specifier: ^8.0.1 48 | version: 8.0.1(typescript@4.9.5) 49 | typescript: 50 | specifier: ^4.8.4 51 | version: 4.9.5 52 | 53 | packages: 54 | /@ampproject/remapping@2.2.1: 55 | resolution: 56 | { 57 | integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==, 58 | } 59 | engines: { node: '>=6.0.0' } 60 | dependencies: 61 | '@jridgewell/gen-mapping': 0.3.3 62 | '@jridgewell/trace-mapping': 0.3.20 63 | dev: true 64 | 65 | /@babel/code-frame@7.23.5: 66 | resolution: 67 | { 68 | integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==, 69 | } 70 | engines: { node: '>=6.9.0' } 71 | dependencies: 72 | '@babel/highlight': 7.23.4 73 | chalk: 2.4.2 74 | dev: true 75 | 76 | /@babel/compat-data@7.23.5: 77 | resolution: 78 | { 79 | integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==, 80 | } 81 | engines: { node: '>=6.9.0' } 82 | dev: true 83 | 84 | /@babel/core@7.23.5: 85 | resolution: 86 | { 87 | integrity: sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==, 88 | } 89 | engines: { node: '>=6.9.0' } 90 | dependencies: 91 | '@ampproject/remapping': 2.2.1 92 | '@babel/code-frame': 7.23.5 93 | '@babel/generator': 7.23.5 94 | '@babel/helper-compilation-targets': 7.22.15 95 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) 96 | '@babel/helpers': 7.23.5 97 | '@babel/parser': 7.23.5 98 | '@babel/template': 7.22.15 99 | '@babel/traverse': 7.23.5 100 | '@babel/types': 7.23.5 101 | convert-source-map: 2.0.0 102 | debug: 4.3.4 103 | gensync: 1.0.0-beta.2 104 | json5: 2.2.3 105 | semver: 6.3.1 106 | transitivePeerDependencies: 107 | - supports-color 108 | dev: true 109 | 110 | /@babel/generator@7.23.5: 111 | resolution: 112 | { 113 | integrity: sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==, 114 | } 115 | engines: { node: '>=6.9.0' } 116 | dependencies: 117 | '@babel/types': 7.23.5 118 | '@jridgewell/gen-mapping': 0.3.3 119 | '@jridgewell/trace-mapping': 0.3.20 120 | jsesc: 2.5.2 121 | dev: true 122 | 123 | /@babel/helper-annotate-as-pure@7.22.5: 124 | resolution: 125 | { 126 | integrity: sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==, 127 | } 128 | engines: { node: '>=6.9.0' } 129 | dependencies: 130 | '@babel/types': 7.23.5 131 | dev: true 132 | 133 | /@babel/helper-builder-binary-assignment-operator-visitor@7.22.15: 134 | resolution: 135 | { 136 | integrity: sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==, 137 | } 138 | engines: { node: '>=6.9.0' } 139 | dependencies: 140 | '@babel/types': 7.23.5 141 | dev: true 142 | 143 | /@babel/helper-compilation-targets@7.22.15: 144 | resolution: 145 | { 146 | integrity: sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==, 147 | } 148 | engines: { node: '>=6.9.0' } 149 | dependencies: 150 | '@babel/compat-data': 7.23.5 151 | '@babel/helper-validator-option': 7.23.5 152 | browserslist: 4.22.2 153 | lru-cache: 5.1.1 154 | semver: 6.3.1 155 | dev: true 156 | 157 | /@babel/helper-create-class-features-plugin@7.23.5(@babel/core@7.23.5): 158 | resolution: 159 | { 160 | integrity: sha512-QELlRWxSpgdwdJzSJn4WAhKC+hvw/AtHbbrIoncKHkhKKR/luAlKkgBDcri1EzWAo8f8VvYVryEHN4tax/V67A==, 161 | } 162 | engines: { node: '>=6.9.0' } 163 | peerDependencies: 164 | '@babel/core': ^7.0.0 165 | dependencies: 166 | '@babel/core': 7.23.5 167 | '@babel/helper-annotate-as-pure': 7.22.5 168 | '@babel/helper-environment-visitor': 7.22.20 169 | '@babel/helper-function-name': 7.23.0 170 | '@babel/helper-member-expression-to-functions': 7.23.0 171 | '@babel/helper-optimise-call-expression': 7.22.5 172 | '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) 173 | '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 174 | '@babel/helper-split-export-declaration': 7.22.6 175 | semver: 6.3.1 176 | dev: true 177 | 178 | /@babel/helper-create-regexp-features-plugin@7.22.15(@babel/core@7.23.5): 179 | resolution: 180 | { 181 | integrity: sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==, 182 | } 183 | engines: { node: '>=6.9.0' } 184 | peerDependencies: 185 | '@babel/core': ^7.0.0 186 | dependencies: 187 | '@babel/core': 7.23.5 188 | '@babel/helper-annotate-as-pure': 7.22.5 189 | regexpu-core: 5.3.2 190 | semver: 6.3.1 191 | dev: true 192 | 193 | /@babel/helper-define-polyfill-provider@0.4.3(@babel/core@7.23.5): 194 | resolution: 195 | { 196 | integrity: sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==, 197 | } 198 | peerDependencies: 199 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 200 | dependencies: 201 | '@babel/core': 7.23.5 202 | '@babel/helper-compilation-targets': 7.22.15 203 | '@babel/helper-plugin-utils': 7.22.5 204 | debug: 4.3.4 205 | lodash.debounce: 4.0.8 206 | resolve: 1.22.8 207 | transitivePeerDependencies: 208 | - supports-color 209 | dev: true 210 | 211 | /@babel/helper-environment-visitor@7.22.20: 212 | resolution: 213 | { 214 | integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==, 215 | } 216 | engines: { node: '>=6.9.0' } 217 | dev: true 218 | 219 | /@babel/helper-function-name@7.23.0: 220 | resolution: 221 | { 222 | integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==, 223 | } 224 | engines: { node: '>=6.9.0' } 225 | dependencies: 226 | '@babel/template': 7.22.15 227 | '@babel/types': 7.23.5 228 | dev: true 229 | 230 | /@babel/helper-hoist-variables@7.22.5: 231 | resolution: 232 | { 233 | integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==, 234 | } 235 | engines: { node: '>=6.9.0' } 236 | dependencies: 237 | '@babel/types': 7.23.5 238 | dev: true 239 | 240 | /@babel/helper-member-expression-to-functions@7.23.0: 241 | resolution: 242 | { 243 | integrity: sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==, 244 | } 245 | engines: { node: '>=6.9.0' } 246 | dependencies: 247 | '@babel/types': 7.23.5 248 | dev: true 249 | 250 | /@babel/helper-module-imports@7.22.15: 251 | resolution: 252 | { 253 | integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==, 254 | } 255 | engines: { node: '>=6.9.0' } 256 | dependencies: 257 | '@babel/types': 7.23.5 258 | dev: true 259 | 260 | /@babel/helper-module-transforms@7.23.3(@babel/core@7.23.5): 261 | resolution: 262 | { 263 | integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==, 264 | } 265 | engines: { node: '>=6.9.0' } 266 | peerDependencies: 267 | '@babel/core': ^7.0.0 268 | dependencies: 269 | '@babel/core': 7.23.5 270 | '@babel/helper-environment-visitor': 7.22.20 271 | '@babel/helper-module-imports': 7.22.15 272 | '@babel/helper-simple-access': 7.22.5 273 | '@babel/helper-split-export-declaration': 7.22.6 274 | '@babel/helper-validator-identifier': 7.22.20 275 | dev: true 276 | 277 | /@babel/helper-optimise-call-expression@7.22.5: 278 | resolution: 279 | { 280 | integrity: sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==, 281 | } 282 | engines: { node: '>=6.9.0' } 283 | dependencies: 284 | '@babel/types': 7.23.5 285 | dev: true 286 | 287 | /@babel/helper-plugin-utils@7.22.5: 288 | resolution: 289 | { 290 | integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==, 291 | } 292 | engines: { node: '>=6.9.0' } 293 | dev: true 294 | 295 | /@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.23.5): 296 | resolution: 297 | { 298 | integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==, 299 | } 300 | engines: { node: '>=6.9.0' } 301 | peerDependencies: 302 | '@babel/core': ^7.0.0 303 | dependencies: 304 | '@babel/core': 7.23.5 305 | '@babel/helper-annotate-as-pure': 7.22.5 306 | '@babel/helper-environment-visitor': 7.22.20 307 | '@babel/helper-wrap-function': 7.22.20 308 | dev: true 309 | 310 | /@babel/helper-replace-supers@7.22.20(@babel/core@7.23.5): 311 | resolution: 312 | { 313 | integrity: sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==, 314 | } 315 | engines: { node: '>=6.9.0' } 316 | peerDependencies: 317 | '@babel/core': ^7.0.0 318 | dependencies: 319 | '@babel/core': 7.23.5 320 | '@babel/helper-environment-visitor': 7.22.20 321 | '@babel/helper-member-expression-to-functions': 7.23.0 322 | '@babel/helper-optimise-call-expression': 7.22.5 323 | dev: true 324 | 325 | /@babel/helper-simple-access@7.22.5: 326 | resolution: 327 | { 328 | integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==, 329 | } 330 | engines: { node: '>=6.9.0' } 331 | dependencies: 332 | '@babel/types': 7.23.5 333 | dev: true 334 | 335 | /@babel/helper-skip-transparent-expression-wrappers@7.22.5: 336 | resolution: 337 | { 338 | integrity: sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==, 339 | } 340 | engines: { node: '>=6.9.0' } 341 | dependencies: 342 | '@babel/types': 7.23.5 343 | dev: true 344 | 345 | /@babel/helper-split-export-declaration@7.22.6: 346 | resolution: 347 | { 348 | integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==, 349 | } 350 | engines: { node: '>=6.9.0' } 351 | dependencies: 352 | '@babel/types': 7.23.5 353 | dev: true 354 | 355 | /@babel/helper-string-parser@7.23.4: 356 | resolution: 357 | { 358 | integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==, 359 | } 360 | engines: { node: '>=6.9.0' } 361 | dev: true 362 | 363 | /@babel/helper-validator-identifier@7.22.20: 364 | resolution: 365 | { 366 | integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==, 367 | } 368 | engines: { node: '>=6.9.0' } 369 | dev: true 370 | 371 | /@babel/helper-validator-option@7.23.5: 372 | resolution: 373 | { 374 | integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==, 375 | } 376 | engines: { node: '>=6.9.0' } 377 | dev: true 378 | 379 | /@babel/helper-wrap-function@7.22.20: 380 | resolution: 381 | { 382 | integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==, 383 | } 384 | engines: { node: '>=6.9.0' } 385 | dependencies: 386 | '@babel/helper-function-name': 7.23.0 387 | '@babel/template': 7.22.15 388 | '@babel/types': 7.23.5 389 | dev: true 390 | 391 | /@babel/helpers@7.23.5: 392 | resolution: 393 | { 394 | integrity: sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==, 395 | } 396 | engines: { node: '>=6.9.0' } 397 | dependencies: 398 | '@babel/template': 7.22.15 399 | '@babel/traverse': 7.23.5 400 | '@babel/types': 7.23.5 401 | transitivePeerDependencies: 402 | - supports-color 403 | dev: true 404 | 405 | /@babel/highlight@7.23.4: 406 | resolution: 407 | { 408 | integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==, 409 | } 410 | engines: { node: '>=6.9.0' } 411 | dependencies: 412 | '@babel/helper-validator-identifier': 7.22.20 413 | chalk: 2.4.2 414 | js-tokens: 4.0.0 415 | dev: true 416 | 417 | /@babel/parser@7.23.5: 418 | resolution: 419 | { 420 | integrity: sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==, 421 | } 422 | engines: { node: '>=6.0.0' } 423 | hasBin: true 424 | dependencies: 425 | '@babel/types': 7.23.5 426 | dev: true 427 | 428 | /@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.23.3(@babel/core@7.23.5): 429 | resolution: 430 | { 431 | integrity: sha512-iRkKcCqb7iGnq9+3G6rZ+Ciz5VywC4XNRHe57lKM+jOeYAoR0lVqdeeDRfh0tQcTfw/+vBhHn926FmQhLtlFLQ==, 432 | } 433 | engines: { node: '>=6.9.0' } 434 | peerDependencies: 435 | '@babel/core': ^7.0.0 436 | dependencies: 437 | '@babel/core': 7.23.5 438 | '@babel/helper-plugin-utils': 7.22.5 439 | dev: true 440 | 441 | /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.23.3(@babel/core@7.23.5): 442 | resolution: 443 | { 444 | integrity: sha512-WwlxbfMNdVEpQjZmK5mhm7oSwD3dS6eU+Iwsi4Knl9wAletWem7kaRsGOG+8UEbRyqxY4SS5zvtfXwX+jMxUwQ==, 445 | } 446 | engines: { node: '>=6.9.0' } 447 | peerDependencies: 448 | '@babel/core': ^7.13.0 449 | dependencies: 450 | '@babel/core': 7.23.5 451 | '@babel/helper-plugin-utils': 7.22.5 452 | '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 453 | '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.5) 454 | dev: true 455 | 456 | /@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.23.3(@babel/core@7.23.5): 457 | resolution: 458 | { 459 | integrity: sha512-XaJak1qcityzrX0/IU5nKHb34VaibwP3saKqG6a/tppelgllOH13LUann4ZCIBcVOeE6H18K4Vx9QKkVww3z/w==, 460 | } 461 | engines: { node: '>=6.9.0' } 462 | peerDependencies: 463 | '@babel/core': ^7.0.0 464 | dependencies: 465 | '@babel/core': 7.23.5 466 | '@babel/helper-environment-visitor': 7.22.20 467 | '@babel/helper-plugin-utils': 7.22.5 468 | dev: true 469 | 470 | /@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.5): 471 | resolution: 472 | { 473 | integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==, 474 | } 475 | engines: { node: '>=6.9.0' } 476 | peerDependencies: 477 | '@babel/core': ^7.0.0-0 478 | dependencies: 479 | '@babel/core': 7.23.5 480 | dev: true 481 | 482 | /@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.5): 483 | resolution: 484 | { 485 | integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==, 486 | } 487 | peerDependencies: 488 | '@babel/core': ^7.0.0-0 489 | dependencies: 490 | '@babel/core': 7.23.5 491 | '@babel/helper-plugin-utils': 7.22.5 492 | dev: true 493 | 494 | /@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.5): 495 | resolution: 496 | { 497 | integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==, 498 | } 499 | peerDependencies: 500 | '@babel/core': ^7.0.0-0 501 | dependencies: 502 | '@babel/core': 7.23.5 503 | '@babel/helper-plugin-utils': 7.22.5 504 | dev: true 505 | 506 | /@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.5): 507 | resolution: 508 | { 509 | integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==, 510 | } 511 | peerDependencies: 512 | '@babel/core': ^7.0.0-0 513 | dependencies: 514 | '@babel/core': 7.23.5 515 | '@babel/helper-plugin-utils': 7.22.5 516 | dev: true 517 | 518 | /@babel/plugin-syntax-class-static-block@7.14.5(@babel/core@7.23.5): 519 | resolution: 520 | { 521 | integrity: sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==, 522 | } 523 | engines: { node: '>=6.9.0' } 524 | peerDependencies: 525 | '@babel/core': ^7.0.0-0 526 | dependencies: 527 | '@babel/core': 7.23.5 528 | '@babel/helper-plugin-utils': 7.22.5 529 | dev: true 530 | 531 | /@babel/plugin-syntax-dynamic-import@7.8.3(@babel/core@7.23.5): 532 | resolution: 533 | { 534 | integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==, 535 | } 536 | peerDependencies: 537 | '@babel/core': ^7.0.0-0 538 | dependencies: 539 | '@babel/core': 7.23.5 540 | '@babel/helper-plugin-utils': 7.22.5 541 | dev: true 542 | 543 | /@babel/plugin-syntax-export-namespace-from@7.8.3(@babel/core@7.23.5): 544 | resolution: 545 | { 546 | integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==, 547 | } 548 | peerDependencies: 549 | '@babel/core': ^7.0.0-0 550 | dependencies: 551 | '@babel/core': 7.23.5 552 | '@babel/helper-plugin-utils': 7.22.5 553 | dev: true 554 | 555 | /@babel/plugin-syntax-import-assertions@7.23.3(@babel/core@7.23.5): 556 | resolution: 557 | { 558 | integrity: sha512-lPgDSU+SJLK3xmFDTV2ZRQAiM7UuUjGidwBywFavObCiZc1BeAAcMtHJKUya92hPHO+at63JJPLygilZard8jw==, 559 | } 560 | engines: { node: '>=6.9.0' } 561 | peerDependencies: 562 | '@babel/core': ^7.0.0-0 563 | dependencies: 564 | '@babel/core': 7.23.5 565 | '@babel/helper-plugin-utils': 7.22.5 566 | dev: true 567 | 568 | /@babel/plugin-syntax-import-attributes@7.23.3(@babel/core@7.23.5): 569 | resolution: 570 | { 571 | integrity: sha512-pawnE0P9g10xgoP7yKr6CK63K2FMsTE+FZidZO/1PwRdzmAPVs+HS1mAURUsgaoxammTJvULUdIkEK0gOcU2tA==, 572 | } 573 | engines: { node: '>=6.9.0' } 574 | peerDependencies: 575 | '@babel/core': ^7.0.0-0 576 | dependencies: 577 | '@babel/core': 7.23.5 578 | '@babel/helper-plugin-utils': 7.22.5 579 | dev: true 580 | 581 | /@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.5): 582 | resolution: 583 | { 584 | integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==, 585 | } 586 | peerDependencies: 587 | '@babel/core': ^7.0.0-0 588 | dependencies: 589 | '@babel/core': 7.23.5 590 | '@babel/helper-plugin-utils': 7.22.5 591 | dev: true 592 | 593 | /@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.5): 594 | resolution: 595 | { 596 | integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==, 597 | } 598 | peerDependencies: 599 | '@babel/core': ^7.0.0-0 600 | dependencies: 601 | '@babel/core': 7.23.5 602 | '@babel/helper-plugin-utils': 7.22.5 603 | dev: true 604 | 605 | /@babel/plugin-syntax-jsx@7.23.3(@babel/core@7.23.5): 606 | resolution: 607 | { 608 | integrity: sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==, 609 | } 610 | engines: { node: '>=6.9.0' } 611 | peerDependencies: 612 | '@babel/core': ^7.0.0-0 613 | dependencies: 614 | '@babel/core': 7.23.5 615 | '@babel/helper-plugin-utils': 7.22.5 616 | dev: true 617 | 618 | /@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.5): 619 | resolution: 620 | { 621 | integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==, 622 | } 623 | peerDependencies: 624 | '@babel/core': ^7.0.0-0 625 | dependencies: 626 | '@babel/core': 7.23.5 627 | '@babel/helper-plugin-utils': 7.22.5 628 | dev: true 629 | 630 | /@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.5): 631 | resolution: 632 | { 633 | integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==, 634 | } 635 | peerDependencies: 636 | '@babel/core': ^7.0.0-0 637 | dependencies: 638 | '@babel/core': 7.23.5 639 | '@babel/helper-plugin-utils': 7.22.5 640 | dev: true 641 | 642 | /@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.5): 643 | resolution: 644 | { 645 | integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==, 646 | } 647 | peerDependencies: 648 | '@babel/core': ^7.0.0-0 649 | dependencies: 650 | '@babel/core': 7.23.5 651 | '@babel/helper-plugin-utils': 7.22.5 652 | dev: true 653 | 654 | /@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.5): 655 | resolution: 656 | { 657 | integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==, 658 | } 659 | peerDependencies: 660 | '@babel/core': ^7.0.0-0 661 | dependencies: 662 | '@babel/core': 7.23.5 663 | '@babel/helper-plugin-utils': 7.22.5 664 | dev: true 665 | 666 | /@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.5): 667 | resolution: 668 | { 669 | integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==, 670 | } 671 | peerDependencies: 672 | '@babel/core': ^7.0.0-0 673 | dependencies: 674 | '@babel/core': 7.23.5 675 | '@babel/helper-plugin-utils': 7.22.5 676 | dev: true 677 | 678 | /@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.5): 679 | resolution: 680 | { 681 | integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==, 682 | } 683 | peerDependencies: 684 | '@babel/core': ^7.0.0-0 685 | dependencies: 686 | '@babel/core': 7.23.5 687 | '@babel/helper-plugin-utils': 7.22.5 688 | dev: true 689 | 690 | /@babel/plugin-syntax-private-property-in-object@7.14.5(@babel/core@7.23.5): 691 | resolution: 692 | { 693 | integrity: sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==, 694 | } 695 | engines: { node: '>=6.9.0' } 696 | peerDependencies: 697 | '@babel/core': ^7.0.0-0 698 | dependencies: 699 | '@babel/core': 7.23.5 700 | '@babel/helper-plugin-utils': 7.22.5 701 | dev: true 702 | 703 | /@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.5): 704 | resolution: 705 | { 706 | integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==, 707 | } 708 | engines: { node: '>=6.9.0' } 709 | peerDependencies: 710 | '@babel/core': ^7.0.0-0 711 | dependencies: 712 | '@babel/core': 7.23.5 713 | '@babel/helper-plugin-utils': 7.22.5 714 | dev: true 715 | 716 | /@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.5): 717 | resolution: 718 | { 719 | integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==, 720 | } 721 | engines: { node: '>=6.9.0' } 722 | peerDependencies: 723 | '@babel/core': ^7.0.0-0 724 | dependencies: 725 | '@babel/core': 7.23.5 726 | '@babel/helper-plugin-utils': 7.22.5 727 | dev: true 728 | 729 | /@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.23.5): 730 | resolution: 731 | { 732 | integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==, 733 | } 734 | engines: { node: '>=6.9.0' } 735 | peerDependencies: 736 | '@babel/core': ^7.0.0 737 | dependencies: 738 | '@babel/core': 7.23.5 739 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 740 | '@babel/helper-plugin-utils': 7.22.5 741 | dev: true 742 | 743 | /@babel/plugin-transform-arrow-functions@7.23.3(@babel/core@7.23.5): 744 | resolution: 745 | { 746 | integrity: sha512-NzQcQrzaQPkaEwoTm4Mhyl8jI1huEL/WWIEvudjTCMJ9aBZNpsJbMASx7EQECtQQPS/DcnFpo0FIh3LvEO9cxQ==, 747 | } 748 | engines: { node: '>=6.9.0' } 749 | peerDependencies: 750 | '@babel/core': ^7.0.0-0 751 | dependencies: 752 | '@babel/core': 7.23.5 753 | '@babel/helper-plugin-utils': 7.22.5 754 | dev: true 755 | 756 | /@babel/plugin-transform-async-generator-functions@7.23.4(@babel/core@7.23.5): 757 | resolution: 758 | { 759 | integrity: sha512-efdkfPhHYTtn0G6n2ddrESE91fgXxjlqLsnUtPWnJs4a4mZIbUaK7ffqKIIUKXSHwcDvaCVX6GXkaJJFqtX7jw==, 760 | } 761 | engines: { node: '>=6.9.0' } 762 | peerDependencies: 763 | '@babel/core': ^7.0.0-0 764 | dependencies: 765 | '@babel/core': 7.23.5 766 | '@babel/helper-environment-visitor': 7.22.20 767 | '@babel/helper-plugin-utils': 7.22.5 768 | '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.5) 769 | '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.5) 770 | dev: true 771 | 772 | /@babel/plugin-transform-async-to-generator@7.23.3(@babel/core@7.23.5): 773 | resolution: 774 | { 775 | integrity: sha512-A7LFsKi4U4fomjqXJlZg/u0ft/n8/7n7lpffUP/ZULx/DtV9SGlNKZolHH6PE8Xl1ngCc0M11OaeZptXVkfKSw==, 776 | } 777 | engines: { node: '>=6.9.0' } 778 | peerDependencies: 779 | '@babel/core': ^7.0.0-0 780 | dependencies: 781 | '@babel/core': 7.23.5 782 | '@babel/helper-module-imports': 7.22.15 783 | '@babel/helper-plugin-utils': 7.22.5 784 | '@babel/helper-remap-async-to-generator': 7.22.20(@babel/core@7.23.5) 785 | dev: true 786 | 787 | /@babel/plugin-transform-block-scoped-functions@7.23.3(@babel/core@7.23.5): 788 | resolution: 789 | { 790 | integrity: sha512-vI+0sIaPIO6CNuM9Kk5VmXcMVRiOpDh7w2zZt9GXzmE/9KD70CUEVhvPR/etAeNK/FAEkhxQtXOzVF3EuRL41A==, 791 | } 792 | engines: { node: '>=6.9.0' } 793 | peerDependencies: 794 | '@babel/core': ^7.0.0-0 795 | dependencies: 796 | '@babel/core': 7.23.5 797 | '@babel/helper-plugin-utils': 7.22.5 798 | dev: true 799 | 800 | /@babel/plugin-transform-block-scoping@7.23.4(@babel/core@7.23.5): 801 | resolution: 802 | { 803 | integrity: sha512-0QqbP6B6HOh7/8iNR4CQU2Th/bbRtBp4KS9vcaZd1fZ0wSh5Fyssg0UCIHwxh+ka+pNDREbVLQnHCMHKZfPwfw==, 804 | } 805 | engines: { node: '>=6.9.0' } 806 | peerDependencies: 807 | '@babel/core': ^7.0.0-0 808 | dependencies: 809 | '@babel/core': 7.23.5 810 | '@babel/helper-plugin-utils': 7.22.5 811 | dev: true 812 | 813 | /@babel/plugin-transform-class-properties@7.23.3(@babel/core@7.23.5): 814 | resolution: 815 | { 816 | integrity: sha512-uM+AN8yCIjDPccsKGlw271xjJtGii+xQIF/uMPS8H15L12jZTsLfF4o5vNO7d/oUguOyfdikHGc/yi9ge4SGIg==, 817 | } 818 | engines: { node: '>=6.9.0' } 819 | peerDependencies: 820 | '@babel/core': ^7.0.0-0 821 | dependencies: 822 | '@babel/core': 7.23.5 823 | '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.5) 824 | '@babel/helper-plugin-utils': 7.22.5 825 | dev: true 826 | 827 | /@babel/plugin-transform-class-static-block@7.23.4(@babel/core@7.23.5): 828 | resolution: 829 | { 830 | integrity: sha512-nsWu/1M+ggti1SOALj3hfx5FXzAY06fwPJsUZD4/A5e1bWi46VUIWtD+kOX6/IdhXGsXBWllLFDSnqSCdUNydQ==, 831 | } 832 | engines: { node: '>=6.9.0' } 833 | peerDependencies: 834 | '@babel/core': ^7.12.0 835 | dependencies: 836 | '@babel/core': 7.23.5 837 | '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.5) 838 | '@babel/helper-plugin-utils': 7.22.5 839 | '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.5) 840 | dev: true 841 | 842 | /@babel/plugin-transform-classes@7.23.5(@babel/core@7.23.5): 843 | resolution: 844 | { 845 | integrity: sha512-jvOTR4nicqYC9yzOHIhXG5emiFEOpappSJAl73SDSEDcybD+Puuze8Tnpb9p9qEyYup24tq891gkaygIFvWDqg==, 846 | } 847 | engines: { node: '>=6.9.0' } 848 | peerDependencies: 849 | '@babel/core': ^7.0.0-0 850 | dependencies: 851 | '@babel/core': 7.23.5 852 | '@babel/helper-annotate-as-pure': 7.22.5 853 | '@babel/helper-compilation-targets': 7.22.15 854 | '@babel/helper-environment-visitor': 7.22.20 855 | '@babel/helper-function-name': 7.23.0 856 | '@babel/helper-optimise-call-expression': 7.22.5 857 | '@babel/helper-plugin-utils': 7.22.5 858 | '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) 859 | '@babel/helper-split-export-declaration': 7.22.6 860 | globals: 11.12.0 861 | dev: true 862 | 863 | /@babel/plugin-transform-computed-properties@7.23.3(@babel/core@7.23.5): 864 | resolution: 865 | { 866 | integrity: sha512-dTj83UVTLw/+nbiHqQSFdwO9CbTtwq1DsDqm3CUEtDrZNET5rT5E6bIdTlOftDTDLMYxvxHNEYO4B9SLl8SLZw==, 867 | } 868 | engines: { node: '>=6.9.0' } 869 | peerDependencies: 870 | '@babel/core': ^7.0.0-0 871 | dependencies: 872 | '@babel/core': 7.23.5 873 | '@babel/helper-plugin-utils': 7.22.5 874 | '@babel/template': 7.22.15 875 | dev: true 876 | 877 | /@babel/plugin-transform-destructuring@7.23.3(@babel/core@7.23.5): 878 | resolution: 879 | { 880 | integrity: sha512-n225npDqjDIr967cMScVKHXJs7rout1q+tt50inyBCPkyZ8KxeI6d+GIbSBTT/w/9WdlWDOej3V9HE5Lgk57gw==, 881 | } 882 | engines: { node: '>=6.9.0' } 883 | peerDependencies: 884 | '@babel/core': ^7.0.0-0 885 | dependencies: 886 | '@babel/core': 7.23.5 887 | '@babel/helper-plugin-utils': 7.22.5 888 | dev: true 889 | 890 | /@babel/plugin-transform-dotall-regex@7.23.3(@babel/core@7.23.5): 891 | resolution: 892 | { 893 | integrity: sha512-vgnFYDHAKzFaTVp+mneDsIEbnJ2Np/9ng9iviHw3P/KVcgONxpNULEW/51Z/BaFojG2GI2GwwXck5uV1+1NOYQ==, 894 | } 895 | engines: { node: '>=6.9.0' } 896 | peerDependencies: 897 | '@babel/core': ^7.0.0-0 898 | dependencies: 899 | '@babel/core': 7.23.5 900 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 901 | '@babel/helper-plugin-utils': 7.22.5 902 | dev: true 903 | 904 | /@babel/plugin-transform-duplicate-keys@7.23.3(@babel/core@7.23.5): 905 | resolution: 906 | { 907 | integrity: sha512-RrqQ+BQmU3Oyav3J+7/myfvRCq7Tbz+kKLLshUmMwNlDHExbGL7ARhajvoBJEvc+fCguPPu887N+3RRXBVKZUA==, 908 | } 909 | engines: { node: '>=6.9.0' } 910 | peerDependencies: 911 | '@babel/core': ^7.0.0-0 912 | dependencies: 913 | '@babel/core': 7.23.5 914 | '@babel/helper-plugin-utils': 7.22.5 915 | dev: true 916 | 917 | /@babel/plugin-transform-dynamic-import@7.23.4(@babel/core@7.23.5): 918 | resolution: 919 | { 920 | integrity: sha512-V6jIbLhdJK86MaLh4Jpghi8ho5fGzt3imHOBu/x0jlBaPYqDoWz4RDXjmMOfnh+JWNaQleEAByZLV0QzBT4YQQ==, 921 | } 922 | engines: { node: '>=6.9.0' } 923 | peerDependencies: 924 | '@babel/core': ^7.0.0-0 925 | dependencies: 926 | '@babel/core': 7.23.5 927 | '@babel/helper-plugin-utils': 7.22.5 928 | '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.5) 929 | dev: true 930 | 931 | /@babel/plugin-transform-exponentiation-operator@7.23.3(@babel/core@7.23.5): 932 | resolution: 933 | { 934 | integrity: sha512-5fhCsl1odX96u7ILKHBj4/Y8vipoqwsJMh4csSA8qFfxrZDEA4Ssku2DyNvMJSmZNOEBT750LfFPbtrnTP90BQ==, 935 | } 936 | engines: { node: '>=6.9.0' } 937 | peerDependencies: 938 | '@babel/core': ^7.0.0-0 939 | dependencies: 940 | '@babel/core': 7.23.5 941 | '@babel/helper-builder-binary-assignment-operator-visitor': 7.22.15 942 | '@babel/helper-plugin-utils': 7.22.5 943 | dev: true 944 | 945 | /@babel/plugin-transform-export-namespace-from@7.23.4(@babel/core@7.23.5): 946 | resolution: 947 | { 948 | integrity: sha512-GzuSBcKkx62dGzZI1WVgTWvkkz84FZO5TC5T8dl/Tht/rAla6Dg/Mz9Yhypg+ezVACf/rgDuQt3kbWEv7LdUDQ==, 949 | } 950 | engines: { node: '>=6.9.0' } 951 | peerDependencies: 952 | '@babel/core': ^7.0.0-0 953 | dependencies: 954 | '@babel/core': 7.23.5 955 | '@babel/helper-plugin-utils': 7.22.5 956 | '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.5) 957 | dev: true 958 | 959 | /@babel/plugin-transform-for-of@7.23.3(@babel/core@7.23.5): 960 | resolution: 961 | { 962 | integrity: sha512-X8jSm8X1CMwxmK878qsUGJRmbysKNbdpTv/O1/v0LuY/ZkZrng5WYiekYSdg9m09OTmDDUWeEDsTE+17WYbAZw==, 963 | } 964 | engines: { node: '>=6.9.0' } 965 | peerDependencies: 966 | '@babel/core': ^7.0.0-0 967 | dependencies: 968 | '@babel/core': 7.23.5 969 | '@babel/helper-plugin-utils': 7.22.5 970 | dev: true 971 | 972 | /@babel/plugin-transform-function-name@7.23.3(@babel/core@7.23.5): 973 | resolution: 974 | { 975 | integrity: sha512-I1QXp1LxIvt8yLaib49dRW5Okt7Q4oaxao6tFVKS/anCdEOMtYwWVKoiOA1p34GOWIZjUK0E+zCp7+l1pfQyiw==, 976 | } 977 | engines: { node: '>=6.9.0' } 978 | peerDependencies: 979 | '@babel/core': ^7.0.0-0 980 | dependencies: 981 | '@babel/core': 7.23.5 982 | '@babel/helper-compilation-targets': 7.22.15 983 | '@babel/helper-function-name': 7.23.0 984 | '@babel/helper-plugin-utils': 7.22.5 985 | dev: true 986 | 987 | /@babel/plugin-transform-json-strings@7.23.4(@babel/core@7.23.5): 988 | resolution: 989 | { 990 | integrity: sha512-81nTOqM1dMwZ/aRXQ59zVubN9wHGqk6UtqRK+/q+ciXmRy8fSolhGVvG09HHRGo4l6fr/c4ZhXUQH0uFW7PZbg==, 991 | } 992 | engines: { node: '>=6.9.0' } 993 | peerDependencies: 994 | '@babel/core': ^7.0.0-0 995 | dependencies: 996 | '@babel/core': 7.23.5 997 | '@babel/helper-plugin-utils': 7.22.5 998 | '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.5) 999 | dev: true 1000 | 1001 | /@babel/plugin-transform-literals@7.23.3(@babel/core@7.23.5): 1002 | resolution: 1003 | { 1004 | integrity: sha512-wZ0PIXRxnwZvl9AYpqNUxpZ5BiTGrYt7kueGQ+N5FiQ7RCOD4cm8iShd6S6ggfVIWaJf2EMk8eRzAh52RfP4rQ==, 1005 | } 1006 | engines: { node: '>=6.9.0' } 1007 | peerDependencies: 1008 | '@babel/core': ^7.0.0-0 1009 | dependencies: 1010 | '@babel/core': 7.23.5 1011 | '@babel/helper-plugin-utils': 7.22.5 1012 | dev: true 1013 | 1014 | /@babel/plugin-transform-logical-assignment-operators@7.23.4(@babel/core@7.23.5): 1015 | resolution: 1016 | { 1017 | integrity: sha512-Mc/ALf1rmZTP4JKKEhUwiORU+vcfarFVLfcFiolKUo6sewoxSEgl36ak5t+4WamRsNr6nzjZXQjM35WsU+9vbg==, 1018 | } 1019 | engines: { node: '>=6.9.0' } 1020 | peerDependencies: 1021 | '@babel/core': ^7.0.0-0 1022 | dependencies: 1023 | '@babel/core': 7.23.5 1024 | '@babel/helper-plugin-utils': 7.22.5 1025 | '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.5) 1026 | dev: true 1027 | 1028 | /@babel/plugin-transform-member-expression-literals@7.23.3(@babel/core@7.23.5): 1029 | resolution: 1030 | { 1031 | integrity: sha512-sC3LdDBDi5x96LA+Ytekz2ZPk8i/Ck+DEuDbRAll5rknJ5XRTSaPKEYwomLcs1AA8wg9b3KjIQRsnApj+q51Ag==, 1032 | } 1033 | engines: { node: '>=6.9.0' } 1034 | peerDependencies: 1035 | '@babel/core': ^7.0.0-0 1036 | dependencies: 1037 | '@babel/core': 7.23.5 1038 | '@babel/helper-plugin-utils': 7.22.5 1039 | dev: true 1040 | 1041 | /@babel/plugin-transform-modules-amd@7.23.3(@babel/core@7.23.5): 1042 | resolution: 1043 | { 1044 | integrity: sha512-vJYQGxeKM4t8hYCKVBlZX/gtIY2I7mRGFNcm85sgXGMTBcoV3QdVtdpbcWEbzbfUIUZKwvgFT82mRvaQIebZzw==, 1045 | } 1046 | engines: { node: '>=6.9.0' } 1047 | peerDependencies: 1048 | '@babel/core': ^7.0.0-0 1049 | dependencies: 1050 | '@babel/core': 7.23.5 1051 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) 1052 | '@babel/helper-plugin-utils': 7.22.5 1053 | dev: true 1054 | 1055 | /@babel/plugin-transform-modules-commonjs@7.23.3(@babel/core@7.23.5): 1056 | resolution: 1057 | { 1058 | integrity: sha512-aVS0F65LKsdNOtcz6FRCpE4OgsP2OFnW46qNxNIX9h3wuzaNcSQsJysuMwqSibC98HPrf2vCgtxKNwS0DAlgcA==, 1059 | } 1060 | engines: { node: '>=6.9.0' } 1061 | peerDependencies: 1062 | '@babel/core': ^7.0.0-0 1063 | dependencies: 1064 | '@babel/core': 7.23.5 1065 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) 1066 | '@babel/helper-plugin-utils': 7.22.5 1067 | '@babel/helper-simple-access': 7.22.5 1068 | dev: true 1069 | 1070 | /@babel/plugin-transform-modules-systemjs@7.23.3(@babel/core@7.23.5): 1071 | resolution: 1072 | { 1073 | integrity: sha512-ZxyKGTkF9xT9YJuKQRo19ewf3pXpopuYQd8cDXqNzc3mUNbOME0RKMoZxviQk74hwzfQsEe66dE92MaZbdHKNQ==, 1074 | } 1075 | engines: { node: '>=6.9.0' } 1076 | peerDependencies: 1077 | '@babel/core': ^7.0.0-0 1078 | dependencies: 1079 | '@babel/core': 7.23.5 1080 | '@babel/helper-hoist-variables': 7.22.5 1081 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) 1082 | '@babel/helper-plugin-utils': 7.22.5 1083 | '@babel/helper-validator-identifier': 7.22.20 1084 | dev: true 1085 | 1086 | /@babel/plugin-transform-modules-umd@7.23.3(@babel/core@7.23.5): 1087 | resolution: 1088 | { 1089 | integrity: sha512-zHsy9iXX2nIsCBFPud3jKn1IRPWg3Ing1qOZgeKV39m1ZgIdpJqvlWVeiHBZC6ITRG0MfskhYe9cLgntfSFPIg==, 1090 | } 1091 | engines: { node: '>=6.9.0' } 1092 | peerDependencies: 1093 | '@babel/core': ^7.0.0-0 1094 | dependencies: 1095 | '@babel/core': 7.23.5 1096 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.5) 1097 | '@babel/helper-plugin-utils': 7.22.5 1098 | dev: true 1099 | 1100 | /@babel/plugin-transform-named-capturing-groups-regex@7.22.5(@babel/core@7.23.5): 1101 | resolution: 1102 | { 1103 | integrity: sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==, 1104 | } 1105 | engines: { node: '>=6.9.0' } 1106 | peerDependencies: 1107 | '@babel/core': ^7.0.0 1108 | dependencies: 1109 | '@babel/core': 7.23.5 1110 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 1111 | '@babel/helper-plugin-utils': 7.22.5 1112 | dev: true 1113 | 1114 | /@babel/plugin-transform-new-target@7.23.3(@babel/core@7.23.5): 1115 | resolution: 1116 | { 1117 | integrity: sha512-YJ3xKqtJMAT5/TIZnpAR3I+K+WaDowYbN3xyxI8zxx/Gsypwf9B9h0VB+1Nh6ACAAPRS5NSRje0uVv5i79HYGQ==, 1118 | } 1119 | engines: { node: '>=6.9.0' } 1120 | peerDependencies: 1121 | '@babel/core': ^7.0.0-0 1122 | dependencies: 1123 | '@babel/core': 7.23.5 1124 | '@babel/helper-plugin-utils': 7.22.5 1125 | dev: true 1126 | 1127 | /@babel/plugin-transform-nullish-coalescing-operator@7.23.4(@babel/core@7.23.5): 1128 | resolution: 1129 | { 1130 | integrity: sha512-jHE9EVVqHKAQx+VePv5LLGHjmHSJR76vawFPTdlxR/LVJPfOEGxREQwQfjuZEOPTwG92X3LINSh3M40Rv4zpVA==, 1131 | } 1132 | engines: { node: '>=6.9.0' } 1133 | peerDependencies: 1134 | '@babel/core': ^7.0.0-0 1135 | dependencies: 1136 | '@babel/core': 7.23.5 1137 | '@babel/helper-plugin-utils': 7.22.5 1138 | '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.5) 1139 | dev: true 1140 | 1141 | /@babel/plugin-transform-numeric-separator@7.23.4(@babel/core@7.23.5): 1142 | resolution: 1143 | { 1144 | integrity: sha512-mps6auzgwjRrwKEZA05cOwuDc9FAzoyFS4ZsG/8F43bTLf/TgkJg7QXOrPO1JO599iA3qgK9MXdMGOEC8O1h6Q==, 1145 | } 1146 | engines: { node: '>=6.9.0' } 1147 | peerDependencies: 1148 | '@babel/core': ^7.0.0-0 1149 | dependencies: 1150 | '@babel/core': 7.23.5 1151 | '@babel/helper-plugin-utils': 7.22.5 1152 | '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.5) 1153 | dev: true 1154 | 1155 | /@babel/plugin-transform-object-rest-spread@7.23.4(@babel/core@7.23.5): 1156 | resolution: 1157 | { 1158 | integrity: sha512-9x9K1YyeQVw0iOXJlIzwm8ltobIIv7j2iLyP2jIhEbqPRQ7ScNgwQufU2I0Gq11VjyG4gI4yMXt2VFags+1N3g==, 1159 | } 1160 | engines: { node: '>=6.9.0' } 1161 | peerDependencies: 1162 | '@babel/core': ^7.0.0-0 1163 | dependencies: 1164 | '@babel/compat-data': 7.23.5 1165 | '@babel/core': 7.23.5 1166 | '@babel/helper-compilation-targets': 7.22.15 1167 | '@babel/helper-plugin-utils': 7.22.5 1168 | '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.5) 1169 | '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.5) 1170 | dev: true 1171 | 1172 | /@babel/plugin-transform-object-super@7.23.3(@babel/core@7.23.5): 1173 | resolution: 1174 | { 1175 | integrity: sha512-BwQ8q0x2JG+3lxCVFohg+KbQM7plfpBwThdW9A6TMtWwLsbDA01Ek2Zb/AgDN39BiZsExm4qrXxjk+P1/fzGrA==, 1176 | } 1177 | engines: { node: '>=6.9.0' } 1178 | peerDependencies: 1179 | '@babel/core': ^7.0.0-0 1180 | dependencies: 1181 | '@babel/core': 7.23.5 1182 | '@babel/helper-plugin-utils': 7.22.5 1183 | '@babel/helper-replace-supers': 7.22.20(@babel/core@7.23.5) 1184 | dev: true 1185 | 1186 | /@babel/plugin-transform-optional-catch-binding@7.23.4(@babel/core@7.23.5): 1187 | resolution: 1188 | { 1189 | integrity: sha512-XIq8t0rJPHf6Wvmbn9nFxU6ao4c7WhghTR5WyV8SrJfUFzyxhCm4nhC+iAp3HFhbAKLfYpgzhJ6t4XCtVwqO5A==, 1190 | } 1191 | engines: { node: '>=6.9.0' } 1192 | peerDependencies: 1193 | '@babel/core': ^7.0.0-0 1194 | dependencies: 1195 | '@babel/core': 7.23.5 1196 | '@babel/helper-plugin-utils': 7.22.5 1197 | '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.5) 1198 | dev: true 1199 | 1200 | /@babel/plugin-transform-optional-chaining@7.23.4(@babel/core@7.23.5): 1201 | resolution: 1202 | { 1203 | integrity: sha512-ZU8y5zWOfjM5vZ+asjgAPwDaBjJzgufjES89Rs4Lpq63O300R/kOz30WCLo6BxxX6QVEilwSlpClnG5cZaikTA==, 1204 | } 1205 | engines: { node: '>=6.9.0' } 1206 | peerDependencies: 1207 | '@babel/core': ^7.0.0-0 1208 | dependencies: 1209 | '@babel/core': 7.23.5 1210 | '@babel/helper-plugin-utils': 7.22.5 1211 | '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 1212 | '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.5) 1213 | dev: true 1214 | 1215 | /@babel/plugin-transform-parameters@7.23.3(@babel/core@7.23.5): 1216 | resolution: 1217 | { 1218 | integrity: sha512-09lMt6UsUb3/34BbECKVbVwrT9bO6lILWln237z7sLaWnMsTi7Yc9fhX5DLpkJzAGfaReXI22wP41SZmnAA3Vw==, 1219 | } 1220 | engines: { node: '>=6.9.0' } 1221 | peerDependencies: 1222 | '@babel/core': ^7.0.0-0 1223 | dependencies: 1224 | '@babel/core': 7.23.5 1225 | '@babel/helper-plugin-utils': 7.22.5 1226 | dev: true 1227 | 1228 | /@babel/plugin-transform-private-methods@7.23.3(@babel/core@7.23.5): 1229 | resolution: 1230 | { 1231 | integrity: sha512-UzqRcRtWsDMTLrRWFvUBDwmw06tCQH9Rl1uAjfh6ijMSmGYQ+fpdB+cnqRC8EMh5tuuxSv0/TejGL+7vyj+50g==, 1232 | } 1233 | engines: { node: '>=6.9.0' } 1234 | peerDependencies: 1235 | '@babel/core': ^7.0.0-0 1236 | dependencies: 1237 | '@babel/core': 7.23.5 1238 | '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.5) 1239 | '@babel/helper-plugin-utils': 7.22.5 1240 | dev: true 1241 | 1242 | /@babel/plugin-transform-private-property-in-object@7.23.4(@babel/core@7.23.5): 1243 | resolution: 1244 | { 1245 | integrity: sha512-9G3K1YqTq3F4Vt88Djx1UZ79PDyj+yKRnUy7cZGSMe+a7jkwD259uKKuUzQlPkGam7R+8RJwh5z4xO27fA1o2A==, 1246 | } 1247 | engines: { node: '>=6.9.0' } 1248 | peerDependencies: 1249 | '@babel/core': ^7.0.0-0 1250 | dependencies: 1251 | '@babel/core': 7.23.5 1252 | '@babel/helper-annotate-as-pure': 7.22.5 1253 | '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.5) 1254 | '@babel/helper-plugin-utils': 7.22.5 1255 | '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.5) 1256 | dev: true 1257 | 1258 | /@babel/plugin-transform-property-literals@7.23.3(@babel/core@7.23.5): 1259 | resolution: 1260 | { 1261 | integrity: sha512-jR3Jn3y7cZp4oEWPFAlRsSWjxKe4PZILGBSd4nis1TsC5qeSpb+nrtihJuDhNI7QHiVbUaiXa0X2RZY3/TI6Nw==, 1262 | } 1263 | engines: { node: '>=6.9.0' } 1264 | peerDependencies: 1265 | '@babel/core': ^7.0.0-0 1266 | dependencies: 1267 | '@babel/core': 7.23.5 1268 | '@babel/helper-plugin-utils': 7.22.5 1269 | dev: true 1270 | 1271 | /@babel/plugin-transform-regenerator@7.23.3(@babel/core@7.23.5): 1272 | resolution: 1273 | { 1274 | integrity: sha512-KP+75h0KghBMcVpuKisx3XTu9Ncut8Q8TuvGO4IhY+9D5DFEckQefOuIsB/gQ2tG71lCke4NMrtIPS8pOj18BQ==, 1275 | } 1276 | engines: { node: '>=6.9.0' } 1277 | peerDependencies: 1278 | '@babel/core': ^7.0.0-0 1279 | dependencies: 1280 | '@babel/core': 7.23.5 1281 | '@babel/helper-plugin-utils': 7.22.5 1282 | regenerator-transform: 0.15.2 1283 | dev: true 1284 | 1285 | /@babel/plugin-transform-reserved-words@7.23.3(@babel/core@7.23.5): 1286 | resolution: 1287 | { 1288 | integrity: sha512-QnNTazY54YqgGxwIexMZva9gqbPa15t/x9VS+0fsEFWplwVpXYZivtgl43Z1vMpc1bdPP2PP8siFeVcnFvA3Cg==, 1289 | } 1290 | engines: { node: '>=6.9.0' } 1291 | peerDependencies: 1292 | '@babel/core': ^7.0.0-0 1293 | dependencies: 1294 | '@babel/core': 7.23.5 1295 | '@babel/helper-plugin-utils': 7.22.5 1296 | dev: true 1297 | 1298 | /@babel/plugin-transform-shorthand-properties@7.23.3(@babel/core@7.23.5): 1299 | resolution: 1300 | { 1301 | integrity: sha512-ED2fgqZLmexWiN+YNFX26fx4gh5qHDhn1O2gvEhreLW2iI63Sqm4llRLCXALKrCnbN4Jy0VcMQZl/SAzqug/jg==, 1302 | } 1303 | engines: { node: '>=6.9.0' } 1304 | peerDependencies: 1305 | '@babel/core': ^7.0.0-0 1306 | dependencies: 1307 | '@babel/core': 7.23.5 1308 | '@babel/helper-plugin-utils': 7.22.5 1309 | dev: true 1310 | 1311 | /@babel/plugin-transform-spread@7.23.3(@babel/core@7.23.5): 1312 | resolution: 1313 | { 1314 | integrity: sha512-VvfVYlrlBVu+77xVTOAoxQ6mZbnIq5FM0aGBSFEcIh03qHf+zNqA4DC/3XMUozTg7bZV3e3mZQ0i13VB6v5yUg==, 1315 | } 1316 | engines: { node: '>=6.9.0' } 1317 | peerDependencies: 1318 | '@babel/core': ^7.0.0-0 1319 | dependencies: 1320 | '@babel/core': 7.23.5 1321 | '@babel/helper-plugin-utils': 7.22.5 1322 | '@babel/helper-skip-transparent-expression-wrappers': 7.22.5 1323 | dev: true 1324 | 1325 | /@babel/plugin-transform-sticky-regex@7.23.3(@babel/core@7.23.5): 1326 | resolution: 1327 | { 1328 | integrity: sha512-HZOyN9g+rtvnOU3Yh7kSxXrKbzgrm5X4GncPY1QOquu7epga5MxKHVpYu2hvQnry/H+JjckSYRb93iNfsioAGg==, 1329 | } 1330 | engines: { node: '>=6.9.0' } 1331 | peerDependencies: 1332 | '@babel/core': ^7.0.0-0 1333 | dependencies: 1334 | '@babel/core': 7.23.5 1335 | '@babel/helper-plugin-utils': 7.22.5 1336 | dev: true 1337 | 1338 | /@babel/plugin-transform-template-literals@7.23.3(@babel/core@7.23.5): 1339 | resolution: 1340 | { 1341 | integrity: sha512-Flok06AYNp7GV2oJPZZcP9vZdszev6vPBkHLwxwSpaIqx75wn6mUd3UFWsSsA0l8nXAKkyCmL/sR02m8RYGeHg==, 1342 | } 1343 | engines: { node: '>=6.9.0' } 1344 | peerDependencies: 1345 | '@babel/core': ^7.0.0-0 1346 | dependencies: 1347 | '@babel/core': 7.23.5 1348 | '@babel/helper-plugin-utils': 7.22.5 1349 | dev: true 1350 | 1351 | /@babel/plugin-transform-typeof-symbol@7.23.3(@babel/core@7.23.5): 1352 | resolution: 1353 | { 1354 | integrity: sha512-4t15ViVnaFdrPC74be1gXBSMzXk3B4Us9lP7uLRQHTFpV5Dvt33pn+2MyyNxmN3VTTm3oTrZVMUmuw3oBnQ2oQ==, 1355 | } 1356 | engines: { node: '>=6.9.0' } 1357 | peerDependencies: 1358 | '@babel/core': ^7.0.0-0 1359 | dependencies: 1360 | '@babel/core': 7.23.5 1361 | '@babel/helper-plugin-utils': 7.22.5 1362 | dev: true 1363 | 1364 | /@babel/plugin-transform-typescript@7.23.5(@babel/core@7.23.5): 1365 | resolution: 1366 | { 1367 | integrity: sha512-2fMkXEJkrmwgu2Bsv1Saxgj30IXZdJ+84lQcKKI7sm719oXs0BBw2ZENKdJdR1PjWndgLCEBNXJOri0fk7RYQA==, 1368 | } 1369 | engines: { node: '>=6.9.0' } 1370 | peerDependencies: 1371 | '@babel/core': ^7.0.0-0 1372 | dependencies: 1373 | '@babel/core': 7.23.5 1374 | '@babel/helper-annotate-as-pure': 7.22.5 1375 | '@babel/helper-create-class-features-plugin': 7.23.5(@babel/core@7.23.5) 1376 | '@babel/helper-plugin-utils': 7.22.5 1377 | '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.5) 1378 | dev: true 1379 | 1380 | /@babel/plugin-transform-unicode-escapes@7.23.3(@babel/core@7.23.5): 1381 | resolution: 1382 | { 1383 | integrity: sha512-OMCUx/bU6ChE3r4+ZdylEqAjaQgHAgipgW8nsCfu5pGqDcFytVd91AwRvUJSBZDz0exPGgnjoqhgRYLRjFZc9Q==, 1384 | } 1385 | engines: { node: '>=6.9.0' } 1386 | peerDependencies: 1387 | '@babel/core': ^7.0.0-0 1388 | dependencies: 1389 | '@babel/core': 7.23.5 1390 | '@babel/helper-plugin-utils': 7.22.5 1391 | dev: true 1392 | 1393 | /@babel/plugin-transform-unicode-property-regex@7.23.3(@babel/core@7.23.5): 1394 | resolution: 1395 | { 1396 | integrity: sha512-KcLIm+pDZkWZQAFJ9pdfmh89EwVfmNovFBcXko8szpBeF8z68kWIPeKlmSOkT9BXJxs2C0uk+5LxoxIv62MROA==, 1397 | } 1398 | engines: { node: '>=6.9.0' } 1399 | peerDependencies: 1400 | '@babel/core': ^7.0.0-0 1401 | dependencies: 1402 | '@babel/core': 7.23.5 1403 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 1404 | '@babel/helper-plugin-utils': 7.22.5 1405 | dev: true 1406 | 1407 | /@babel/plugin-transform-unicode-regex@7.23.3(@babel/core@7.23.5): 1408 | resolution: 1409 | { 1410 | integrity: sha512-wMHpNA4x2cIA32b/ci3AfwNgheiva2W0WUKWTK7vBHBhDKfPsc5cFGNWm69WBqpwd86u1qwZ9PWevKqm1A3yAw==, 1411 | } 1412 | engines: { node: '>=6.9.0' } 1413 | peerDependencies: 1414 | '@babel/core': ^7.0.0-0 1415 | dependencies: 1416 | '@babel/core': 7.23.5 1417 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 1418 | '@babel/helper-plugin-utils': 7.22.5 1419 | dev: true 1420 | 1421 | /@babel/plugin-transform-unicode-sets-regex@7.23.3(@babel/core@7.23.5): 1422 | resolution: 1423 | { 1424 | integrity: sha512-W7lliA/v9bNR83Qc3q1ip9CQMZ09CcHDbHfbLRDNuAhn1Mvkr1ZNF7hPmztMQvtTGVLJ9m8IZqWsTkXOml8dbw==, 1425 | } 1426 | engines: { node: '>=6.9.0' } 1427 | peerDependencies: 1428 | '@babel/core': ^7.0.0 1429 | dependencies: 1430 | '@babel/core': 7.23.5 1431 | '@babel/helper-create-regexp-features-plugin': 7.22.15(@babel/core@7.23.5) 1432 | '@babel/helper-plugin-utils': 7.22.5 1433 | dev: true 1434 | 1435 | /@babel/preset-env@7.23.5(@babel/core@7.23.5): 1436 | resolution: 1437 | { 1438 | integrity: sha512-0d/uxVD6tFGWXGDSfyMD1p2otoaKmu6+GD+NfAx0tMaH+dxORnp7T9TaVQ6mKyya7iBtCIVxHjWT7MuzzM9z+A==, 1439 | } 1440 | engines: { node: '>=6.9.0' } 1441 | peerDependencies: 1442 | '@babel/core': ^7.0.0-0 1443 | dependencies: 1444 | '@babel/compat-data': 7.23.5 1445 | '@babel/core': 7.23.5 1446 | '@babel/helper-compilation-targets': 7.22.15 1447 | '@babel/helper-plugin-utils': 7.22.5 1448 | '@babel/helper-validator-option': 7.23.5 1449 | '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.23.3(@babel/core@7.23.5) 1450 | '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.23.3(@babel/core@7.23.5) 1451 | '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.23.3(@babel/core@7.23.5) 1452 | '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.23.5) 1453 | '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.5) 1454 | '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.5) 1455 | '@babel/plugin-syntax-class-static-block': 7.14.5(@babel/core@7.23.5) 1456 | '@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.23.5) 1457 | '@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.23.5) 1458 | '@babel/plugin-syntax-import-assertions': 7.23.3(@babel/core@7.23.5) 1459 | '@babel/plugin-syntax-import-attributes': 7.23.3(@babel/core@7.23.5) 1460 | '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.5) 1461 | '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.5) 1462 | '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.5) 1463 | '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.5) 1464 | '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.5) 1465 | '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.5) 1466 | '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.5) 1467 | '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.5) 1468 | '@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.23.5) 1469 | '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.5) 1470 | '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.23.5) 1471 | '@babel/plugin-transform-arrow-functions': 7.23.3(@babel/core@7.23.5) 1472 | '@babel/plugin-transform-async-generator-functions': 7.23.4(@babel/core@7.23.5) 1473 | '@babel/plugin-transform-async-to-generator': 7.23.3(@babel/core@7.23.5) 1474 | '@babel/plugin-transform-block-scoped-functions': 7.23.3(@babel/core@7.23.5) 1475 | '@babel/plugin-transform-block-scoping': 7.23.4(@babel/core@7.23.5) 1476 | '@babel/plugin-transform-class-properties': 7.23.3(@babel/core@7.23.5) 1477 | '@babel/plugin-transform-class-static-block': 7.23.4(@babel/core@7.23.5) 1478 | '@babel/plugin-transform-classes': 7.23.5(@babel/core@7.23.5) 1479 | '@babel/plugin-transform-computed-properties': 7.23.3(@babel/core@7.23.5) 1480 | '@babel/plugin-transform-destructuring': 7.23.3(@babel/core@7.23.5) 1481 | '@babel/plugin-transform-dotall-regex': 7.23.3(@babel/core@7.23.5) 1482 | '@babel/plugin-transform-duplicate-keys': 7.23.3(@babel/core@7.23.5) 1483 | '@babel/plugin-transform-dynamic-import': 7.23.4(@babel/core@7.23.5) 1484 | '@babel/plugin-transform-exponentiation-operator': 7.23.3(@babel/core@7.23.5) 1485 | '@babel/plugin-transform-export-namespace-from': 7.23.4(@babel/core@7.23.5) 1486 | '@babel/plugin-transform-for-of': 7.23.3(@babel/core@7.23.5) 1487 | '@babel/plugin-transform-function-name': 7.23.3(@babel/core@7.23.5) 1488 | '@babel/plugin-transform-json-strings': 7.23.4(@babel/core@7.23.5) 1489 | '@babel/plugin-transform-literals': 7.23.3(@babel/core@7.23.5) 1490 | '@babel/plugin-transform-logical-assignment-operators': 7.23.4(@babel/core@7.23.5) 1491 | '@babel/plugin-transform-member-expression-literals': 7.23.3(@babel/core@7.23.5) 1492 | '@babel/plugin-transform-modules-amd': 7.23.3(@babel/core@7.23.5) 1493 | '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.5) 1494 | '@babel/plugin-transform-modules-systemjs': 7.23.3(@babel/core@7.23.5) 1495 | '@babel/plugin-transform-modules-umd': 7.23.3(@babel/core@7.23.5) 1496 | '@babel/plugin-transform-named-capturing-groups-regex': 7.22.5(@babel/core@7.23.5) 1497 | '@babel/plugin-transform-new-target': 7.23.3(@babel/core@7.23.5) 1498 | '@babel/plugin-transform-nullish-coalescing-operator': 7.23.4(@babel/core@7.23.5) 1499 | '@babel/plugin-transform-numeric-separator': 7.23.4(@babel/core@7.23.5) 1500 | '@babel/plugin-transform-object-rest-spread': 7.23.4(@babel/core@7.23.5) 1501 | '@babel/plugin-transform-object-super': 7.23.3(@babel/core@7.23.5) 1502 | '@babel/plugin-transform-optional-catch-binding': 7.23.4(@babel/core@7.23.5) 1503 | '@babel/plugin-transform-optional-chaining': 7.23.4(@babel/core@7.23.5) 1504 | '@babel/plugin-transform-parameters': 7.23.3(@babel/core@7.23.5) 1505 | '@babel/plugin-transform-private-methods': 7.23.3(@babel/core@7.23.5) 1506 | '@babel/plugin-transform-private-property-in-object': 7.23.4(@babel/core@7.23.5) 1507 | '@babel/plugin-transform-property-literals': 7.23.3(@babel/core@7.23.5) 1508 | '@babel/plugin-transform-regenerator': 7.23.3(@babel/core@7.23.5) 1509 | '@babel/plugin-transform-reserved-words': 7.23.3(@babel/core@7.23.5) 1510 | '@babel/plugin-transform-shorthand-properties': 7.23.3(@babel/core@7.23.5) 1511 | '@babel/plugin-transform-spread': 7.23.3(@babel/core@7.23.5) 1512 | '@babel/plugin-transform-sticky-regex': 7.23.3(@babel/core@7.23.5) 1513 | '@babel/plugin-transform-template-literals': 7.23.3(@babel/core@7.23.5) 1514 | '@babel/plugin-transform-typeof-symbol': 7.23.3(@babel/core@7.23.5) 1515 | '@babel/plugin-transform-unicode-escapes': 7.23.3(@babel/core@7.23.5) 1516 | '@babel/plugin-transform-unicode-property-regex': 7.23.3(@babel/core@7.23.5) 1517 | '@babel/plugin-transform-unicode-regex': 7.23.3(@babel/core@7.23.5) 1518 | '@babel/plugin-transform-unicode-sets-regex': 7.23.3(@babel/core@7.23.5) 1519 | '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.23.5) 1520 | babel-plugin-polyfill-corejs2: 0.4.6(@babel/core@7.23.5) 1521 | babel-plugin-polyfill-corejs3: 0.8.6(@babel/core@7.23.5) 1522 | babel-plugin-polyfill-regenerator: 0.5.3(@babel/core@7.23.5) 1523 | core-js-compat: 3.33.3 1524 | semver: 6.3.1 1525 | transitivePeerDependencies: 1526 | - supports-color 1527 | dev: true 1528 | 1529 | /@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.23.5): 1530 | resolution: 1531 | { 1532 | integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==, 1533 | } 1534 | peerDependencies: 1535 | '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 1536 | dependencies: 1537 | '@babel/core': 7.23.5 1538 | '@babel/helper-plugin-utils': 7.22.5 1539 | '@babel/types': 7.23.5 1540 | esutils: 2.0.3 1541 | dev: true 1542 | 1543 | /@babel/preset-typescript@7.23.3(@babel/core@7.23.5): 1544 | resolution: 1545 | { 1546 | integrity: sha512-17oIGVlqz6CchO9RFYn5U6ZpWRZIngayYCtrPRSgANSwC2V1Jb+iP74nVxzzXJte8b8BYxrL1yY96xfhTBrNNQ==, 1547 | } 1548 | engines: { node: '>=6.9.0' } 1549 | peerDependencies: 1550 | '@babel/core': ^7.0.0-0 1551 | dependencies: 1552 | '@babel/core': 7.23.5 1553 | '@babel/helper-plugin-utils': 7.22.5 1554 | '@babel/helper-validator-option': 7.23.5 1555 | '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.5) 1556 | '@babel/plugin-transform-modules-commonjs': 7.23.3(@babel/core@7.23.5) 1557 | '@babel/plugin-transform-typescript': 7.23.5(@babel/core@7.23.5) 1558 | dev: true 1559 | 1560 | /@babel/regjsgen@0.8.0: 1561 | resolution: 1562 | { 1563 | integrity: sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==, 1564 | } 1565 | dev: true 1566 | 1567 | /@babel/runtime@7.23.5: 1568 | resolution: 1569 | { 1570 | integrity: sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==, 1571 | } 1572 | engines: { node: '>=6.9.0' } 1573 | dependencies: 1574 | regenerator-runtime: 0.14.0 1575 | dev: true 1576 | 1577 | /@babel/template@7.22.15: 1578 | resolution: 1579 | { 1580 | integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==, 1581 | } 1582 | engines: { node: '>=6.9.0' } 1583 | dependencies: 1584 | '@babel/code-frame': 7.23.5 1585 | '@babel/parser': 7.23.5 1586 | '@babel/types': 7.23.5 1587 | dev: true 1588 | 1589 | /@babel/traverse@7.23.5: 1590 | resolution: 1591 | { 1592 | integrity: sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==, 1593 | } 1594 | engines: { node: '>=6.9.0' } 1595 | dependencies: 1596 | '@babel/code-frame': 7.23.5 1597 | '@babel/generator': 7.23.5 1598 | '@babel/helper-environment-visitor': 7.22.20 1599 | '@babel/helper-function-name': 7.23.0 1600 | '@babel/helper-hoist-variables': 7.22.5 1601 | '@babel/helper-split-export-declaration': 7.22.6 1602 | '@babel/parser': 7.23.5 1603 | '@babel/types': 7.23.5 1604 | debug: 4.3.4 1605 | globals: 11.12.0 1606 | transitivePeerDependencies: 1607 | - supports-color 1608 | dev: true 1609 | 1610 | /@babel/types@7.23.5: 1611 | resolution: 1612 | { 1613 | integrity: sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==, 1614 | } 1615 | engines: { node: '>=6.9.0' } 1616 | dependencies: 1617 | '@babel/helper-string-parser': 7.23.4 1618 | '@babel/helper-validator-identifier': 7.22.20 1619 | to-fast-properties: 2.0.0 1620 | dev: true 1621 | 1622 | /@bcoe/v8-coverage@0.2.3: 1623 | resolution: 1624 | { 1625 | integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==, 1626 | } 1627 | dev: true 1628 | 1629 | /@esbuild/android-arm64@0.19.8: 1630 | resolution: 1631 | { 1632 | integrity: sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==, 1633 | } 1634 | engines: { node: '>=12' } 1635 | cpu: [arm64] 1636 | os: [android] 1637 | requiresBuild: true 1638 | dev: true 1639 | optional: true 1640 | 1641 | /@esbuild/android-arm@0.19.8: 1642 | resolution: 1643 | { 1644 | integrity: sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==, 1645 | } 1646 | engines: { node: '>=12' } 1647 | cpu: [arm] 1648 | os: [android] 1649 | requiresBuild: true 1650 | dev: true 1651 | optional: true 1652 | 1653 | /@esbuild/android-x64@0.19.8: 1654 | resolution: 1655 | { 1656 | integrity: sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==, 1657 | } 1658 | engines: { node: '>=12' } 1659 | cpu: [x64] 1660 | os: [android] 1661 | requiresBuild: true 1662 | dev: true 1663 | optional: true 1664 | 1665 | /@esbuild/darwin-arm64@0.19.8: 1666 | resolution: 1667 | { 1668 | integrity: sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==, 1669 | } 1670 | engines: { node: '>=12' } 1671 | cpu: [arm64] 1672 | os: [darwin] 1673 | requiresBuild: true 1674 | dev: true 1675 | optional: true 1676 | 1677 | /@esbuild/darwin-x64@0.19.8: 1678 | resolution: 1679 | { 1680 | integrity: sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==, 1681 | } 1682 | engines: { node: '>=12' } 1683 | cpu: [x64] 1684 | os: [darwin] 1685 | requiresBuild: true 1686 | dev: true 1687 | optional: true 1688 | 1689 | /@esbuild/freebsd-arm64@0.19.8: 1690 | resolution: 1691 | { 1692 | integrity: sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==, 1693 | } 1694 | engines: { node: '>=12' } 1695 | cpu: [arm64] 1696 | os: [freebsd] 1697 | requiresBuild: true 1698 | dev: true 1699 | optional: true 1700 | 1701 | /@esbuild/freebsd-x64@0.19.8: 1702 | resolution: 1703 | { 1704 | integrity: sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==, 1705 | } 1706 | engines: { node: '>=12' } 1707 | cpu: [x64] 1708 | os: [freebsd] 1709 | requiresBuild: true 1710 | dev: true 1711 | optional: true 1712 | 1713 | /@esbuild/linux-arm64@0.19.8: 1714 | resolution: 1715 | { 1716 | integrity: sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==, 1717 | } 1718 | engines: { node: '>=12' } 1719 | cpu: [arm64] 1720 | os: [linux] 1721 | requiresBuild: true 1722 | dev: true 1723 | optional: true 1724 | 1725 | /@esbuild/linux-arm@0.19.8: 1726 | resolution: 1727 | { 1728 | integrity: sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==, 1729 | } 1730 | engines: { node: '>=12' } 1731 | cpu: [arm] 1732 | os: [linux] 1733 | requiresBuild: true 1734 | dev: true 1735 | optional: true 1736 | 1737 | /@esbuild/linux-ia32@0.19.8: 1738 | resolution: 1739 | { 1740 | integrity: sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==, 1741 | } 1742 | engines: { node: '>=12' } 1743 | cpu: [ia32] 1744 | os: [linux] 1745 | requiresBuild: true 1746 | dev: true 1747 | optional: true 1748 | 1749 | /@esbuild/linux-loong64@0.19.8: 1750 | resolution: 1751 | { 1752 | integrity: sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==, 1753 | } 1754 | engines: { node: '>=12' } 1755 | cpu: [loong64] 1756 | os: [linux] 1757 | requiresBuild: true 1758 | dev: true 1759 | optional: true 1760 | 1761 | /@esbuild/linux-mips64el@0.19.8: 1762 | resolution: 1763 | { 1764 | integrity: sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==, 1765 | } 1766 | engines: { node: '>=12' } 1767 | cpu: [mips64el] 1768 | os: [linux] 1769 | requiresBuild: true 1770 | dev: true 1771 | optional: true 1772 | 1773 | /@esbuild/linux-ppc64@0.19.8: 1774 | resolution: 1775 | { 1776 | integrity: sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==, 1777 | } 1778 | engines: { node: '>=12' } 1779 | cpu: [ppc64] 1780 | os: [linux] 1781 | requiresBuild: true 1782 | dev: true 1783 | optional: true 1784 | 1785 | /@esbuild/linux-riscv64@0.19.8: 1786 | resolution: 1787 | { 1788 | integrity: sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==, 1789 | } 1790 | engines: { node: '>=12' } 1791 | cpu: [riscv64] 1792 | os: [linux] 1793 | requiresBuild: true 1794 | dev: true 1795 | optional: true 1796 | 1797 | /@esbuild/linux-s390x@0.19.8: 1798 | resolution: 1799 | { 1800 | integrity: sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==, 1801 | } 1802 | engines: { node: '>=12' } 1803 | cpu: [s390x] 1804 | os: [linux] 1805 | requiresBuild: true 1806 | dev: true 1807 | optional: true 1808 | 1809 | /@esbuild/linux-x64@0.19.8: 1810 | resolution: 1811 | { 1812 | integrity: sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==, 1813 | } 1814 | engines: { node: '>=12' } 1815 | cpu: [x64] 1816 | os: [linux] 1817 | requiresBuild: true 1818 | dev: true 1819 | optional: true 1820 | 1821 | /@esbuild/netbsd-x64@0.19.8: 1822 | resolution: 1823 | { 1824 | integrity: sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==, 1825 | } 1826 | engines: { node: '>=12' } 1827 | cpu: [x64] 1828 | os: [netbsd] 1829 | requiresBuild: true 1830 | dev: true 1831 | optional: true 1832 | 1833 | /@esbuild/openbsd-x64@0.19.8: 1834 | resolution: 1835 | { 1836 | integrity: sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==, 1837 | } 1838 | engines: { node: '>=12' } 1839 | cpu: [x64] 1840 | os: [openbsd] 1841 | requiresBuild: true 1842 | dev: true 1843 | optional: true 1844 | 1845 | /@esbuild/sunos-x64@0.19.8: 1846 | resolution: 1847 | { 1848 | integrity: sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==, 1849 | } 1850 | engines: { node: '>=12' } 1851 | cpu: [x64] 1852 | os: [sunos] 1853 | requiresBuild: true 1854 | dev: true 1855 | optional: true 1856 | 1857 | /@esbuild/win32-arm64@0.19.8: 1858 | resolution: 1859 | { 1860 | integrity: sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==, 1861 | } 1862 | engines: { node: '>=12' } 1863 | cpu: [arm64] 1864 | os: [win32] 1865 | requiresBuild: true 1866 | dev: true 1867 | optional: true 1868 | 1869 | /@esbuild/win32-ia32@0.19.8: 1870 | resolution: 1871 | { 1872 | integrity: sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==, 1873 | } 1874 | engines: { node: '>=12' } 1875 | cpu: [ia32] 1876 | os: [win32] 1877 | requiresBuild: true 1878 | dev: true 1879 | optional: true 1880 | 1881 | /@esbuild/win32-x64@0.19.8: 1882 | resolution: 1883 | { 1884 | integrity: sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==, 1885 | } 1886 | engines: { node: '>=12' } 1887 | cpu: [x64] 1888 | os: [win32] 1889 | requiresBuild: true 1890 | dev: true 1891 | optional: true 1892 | 1893 | /@istanbuljs/load-nyc-config@1.1.0: 1894 | resolution: 1895 | { 1896 | integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==, 1897 | } 1898 | engines: { node: '>=8' } 1899 | dependencies: 1900 | camelcase: 5.3.1 1901 | find-up: 4.1.0 1902 | get-package-type: 0.1.0 1903 | js-yaml: 3.14.1 1904 | resolve-from: 5.0.0 1905 | dev: true 1906 | 1907 | /@istanbuljs/schema@0.1.3: 1908 | resolution: 1909 | { 1910 | integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==, 1911 | } 1912 | engines: { node: '>=8' } 1913 | dev: true 1914 | 1915 | /@jest/console@29.7.0: 1916 | resolution: 1917 | { 1918 | integrity: sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==, 1919 | } 1920 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 1921 | dependencies: 1922 | '@jest/types': 29.6.3 1923 | '@types/node': 20.10.2 1924 | chalk: 4.1.2 1925 | jest-message-util: 29.7.0 1926 | jest-util: 29.7.0 1927 | slash: 3.0.0 1928 | dev: true 1929 | 1930 | /@jest/core@29.7.0: 1931 | resolution: 1932 | { 1933 | integrity: sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==, 1934 | } 1935 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 1936 | peerDependencies: 1937 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 1938 | peerDependenciesMeta: 1939 | node-notifier: 1940 | optional: true 1941 | dependencies: 1942 | '@jest/console': 29.7.0 1943 | '@jest/reporters': 29.7.0 1944 | '@jest/test-result': 29.7.0 1945 | '@jest/transform': 29.7.0 1946 | '@jest/types': 29.6.3 1947 | '@types/node': 20.10.2 1948 | ansi-escapes: 4.3.2 1949 | chalk: 4.1.2 1950 | ci-info: 3.9.0 1951 | exit: 0.1.2 1952 | graceful-fs: 4.2.11 1953 | jest-changed-files: 29.7.0 1954 | jest-config: 29.7.0(@types/node@20.10.2) 1955 | jest-haste-map: 29.7.0 1956 | jest-message-util: 29.7.0 1957 | jest-regex-util: 29.6.3 1958 | jest-resolve: 29.7.0 1959 | jest-resolve-dependencies: 29.7.0 1960 | jest-runner: 29.7.0 1961 | jest-runtime: 29.7.0 1962 | jest-snapshot: 29.7.0 1963 | jest-util: 29.7.0 1964 | jest-validate: 29.7.0 1965 | jest-watcher: 29.7.0 1966 | micromatch: 4.0.5 1967 | pretty-format: 29.7.0 1968 | slash: 3.0.0 1969 | strip-ansi: 6.0.1 1970 | transitivePeerDependencies: 1971 | - babel-plugin-macros 1972 | - supports-color 1973 | - ts-node 1974 | dev: true 1975 | 1976 | /@jest/environment@29.7.0: 1977 | resolution: 1978 | { 1979 | integrity: sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==, 1980 | } 1981 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 1982 | dependencies: 1983 | '@jest/fake-timers': 29.7.0 1984 | '@jest/types': 29.6.3 1985 | '@types/node': 20.10.2 1986 | jest-mock: 29.7.0 1987 | dev: true 1988 | 1989 | /@jest/expect-utils@29.7.0: 1990 | resolution: 1991 | { 1992 | integrity: sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==, 1993 | } 1994 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 1995 | dependencies: 1996 | jest-get-type: 29.6.3 1997 | dev: true 1998 | 1999 | /@jest/expect@29.7.0: 2000 | resolution: 2001 | { 2002 | integrity: sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==, 2003 | } 2004 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2005 | dependencies: 2006 | expect: 29.7.0 2007 | jest-snapshot: 29.7.0 2008 | transitivePeerDependencies: 2009 | - supports-color 2010 | dev: true 2011 | 2012 | /@jest/fake-timers@29.7.0: 2013 | resolution: 2014 | { 2015 | integrity: sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==, 2016 | } 2017 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2018 | dependencies: 2019 | '@jest/types': 29.6.3 2020 | '@sinonjs/fake-timers': 10.3.0 2021 | '@types/node': 20.10.2 2022 | jest-message-util: 29.7.0 2023 | jest-mock: 29.7.0 2024 | jest-util: 29.7.0 2025 | dev: true 2026 | 2027 | /@jest/globals@29.7.0: 2028 | resolution: 2029 | { 2030 | integrity: sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==, 2031 | } 2032 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2033 | dependencies: 2034 | '@jest/environment': 29.7.0 2035 | '@jest/expect': 29.7.0 2036 | '@jest/types': 29.6.3 2037 | jest-mock: 29.7.0 2038 | transitivePeerDependencies: 2039 | - supports-color 2040 | dev: true 2041 | 2042 | /@jest/reporters@29.7.0: 2043 | resolution: 2044 | { 2045 | integrity: sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==, 2046 | } 2047 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2048 | peerDependencies: 2049 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 2050 | peerDependenciesMeta: 2051 | node-notifier: 2052 | optional: true 2053 | dependencies: 2054 | '@bcoe/v8-coverage': 0.2.3 2055 | '@jest/console': 29.7.0 2056 | '@jest/test-result': 29.7.0 2057 | '@jest/transform': 29.7.0 2058 | '@jest/types': 29.6.3 2059 | '@jridgewell/trace-mapping': 0.3.20 2060 | '@types/node': 20.10.2 2061 | chalk: 4.1.2 2062 | collect-v8-coverage: 1.0.2 2063 | exit: 0.1.2 2064 | glob: 7.2.3 2065 | graceful-fs: 4.2.11 2066 | istanbul-lib-coverage: 3.2.2 2067 | istanbul-lib-instrument: 6.0.1 2068 | istanbul-lib-report: 3.0.1 2069 | istanbul-lib-source-maps: 4.0.1 2070 | istanbul-reports: 3.1.6 2071 | jest-message-util: 29.7.0 2072 | jest-util: 29.7.0 2073 | jest-worker: 29.7.0 2074 | slash: 3.0.0 2075 | string-length: 4.0.2 2076 | strip-ansi: 6.0.1 2077 | v8-to-istanbul: 9.2.0 2078 | transitivePeerDependencies: 2079 | - supports-color 2080 | dev: true 2081 | 2082 | /@jest/schemas@29.6.3: 2083 | resolution: 2084 | { 2085 | integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==, 2086 | } 2087 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2088 | dependencies: 2089 | '@sinclair/typebox': 0.27.8 2090 | dev: true 2091 | 2092 | /@jest/source-map@29.6.3: 2093 | resolution: 2094 | { 2095 | integrity: sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==, 2096 | } 2097 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2098 | dependencies: 2099 | '@jridgewell/trace-mapping': 0.3.20 2100 | callsites: 3.1.0 2101 | graceful-fs: 4.2.11 2102 | dev: true 2103 | 2104 | /@jest/test-result@29.7.0: 2105 | resolution: 2106 | { 2107 | integrity: sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==, 2108 | } 2109 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2110 | dependencies: 2111 | '@jest/console': 29.7.0 2112 | '@jest/types': 29.6.3 2113 | '@types/istanbul-lib-coverage': 2.0.6 2114 | collect-v8-coverage: 1.0.2 2115 | dev: true 2116 | 2117 | /@jest/test-sequencer@29.7.0: 2118 | resolution: 2119 | { 2120 | integrity: sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==, 2121 | } 2122 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2123 | dependencies: 2124 | '@jest/test-result': 29.7.0 2125 | graceful-fs: 4.2.11 2126 | jest-haste-map: 29.7.0 2127 | slash: 3.0.0 2128 | dev: true 2129 | 2130 | /@jest/transform@29.7.0: 2131 | resolution: 2132 | { 2133 | integrity: sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==, 2134 | } 2135 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2136 | dependencies: 2137 | '@babel/core': 7.23.5 2138 | '@jest/types': 29.6.3 2139 | '@jridgewell/trace-mapping': 0.3.20 2140 | babel-plugin-istanbul: 6.1.1 2141 | chalk: 4.1.2 2142 | convert-source-map: 2.0.0 2143 | fast-json-stable-stringify: 2.1.0 2144 | graceful-fs: 4.2.11 2145 | jest-haste-map: 29.7.0 2146 | jest-regex-util: 29.6.3 2147 | jest-util: 29.7.0 2148 | micromatch: 4.0.5 2149 | pirates: 4.0.6 2150 | slash: 3.0.0 2151 | write-file-atomic: 4.0.2 2152 | transitivePeerDependencies: 2153 | - supports-color 2154 | dev: true 2155 | 2156 | /@jest/types@29.6.3: 2157 | resolution: 2158 | { 2159 | integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==, 2160 | } 2161 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2162 | dependencies: 2163 | '@jest/schemas': 29.6.3 2164 | '@types/istanbul-lib-coverage': 2.0.6 2165 | '@types/istanbul-reports': 3.0.4 2166 | '@types/node': 20.10.2 2167 | '@types/yargs': 17.0.32 2168 | chalk: 4.1.2 2169 | dev: true 2170 | 2171 | /@jridgewell/gen-mapping@0.3.3: 2172 | resolution: 2173 | { 2174 | integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==, 2175 | } 2176 | engines: { node: '>=6.0.0' } 2177 | dependencies: 2178 | '@jridgewell/set-array': 1.1.2 2179 | '@jridgewell/sourcemap-codec': 1.4.15 2180 | '@jridgewell/trace-mapping': 0.3.20 2181 | dev: true 2182 | 2183 | /@jridgewell/resolve-uri@3.1.1: 2184 | resolution: 2185 | { 2186 | integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==, 2187 | } 2188 | engines: { node: '>=6.0.0' } 2189 | dev: true 2190 | 2191 | /@jridgewell/set-array@1.1.2: 2192 | resolution: 2193 | { 2194 | integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==, 2195 | } 2196 | engines: { node: '>=6.0.0' } 2197 | dev: true 2198 | 2199 | /@jridgewell/sourcemap-codec@1.4.15: 2200 | resolution: 2201 | { 2202 | integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==, 2203 | } 2204 | dev: true 2205 | 2206 | /@jridgewell/trace-mapping@0.3.20: 2207 | resolution: 2208 | { 2209 | integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==, 2210 | } 2211 | dependencies: 2212 | '@jridgewell/resolve-uri': 3.1.1 2213 | '@jridgewell/sourcemap-codec': 1.4.15 2214 | dev: true 2215 | 2216 | /@nodelib/fs.scandir@2.1.5: 2217 | resolution: 2218 | { 2219 | integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==, 2220 | } 2221 | engines: { node: '>= 8' } 2222 | dependencies: 2223 | '@nodelib/fs.stat': 2.0.5 2224 | run-parallel: 1.2.0 2225 | dev: true 2226 | 2227 | /@nodelib/fs.stat@2.0.5: 2228 | resolution: 2229 | { 2230 | integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==, 2231 | } 2232 | engines: { node: '>= 8' } 2233 | dev: true 2234 | 2235 | /@nodelib/fs.walk@1.2.8: 2236 | resolution: 2237 | { 2238 | integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==, 2239 | } 2240 | engines: { node: '>= 8' } 2241 | dependencies: 2242 | '@nodelib/fs.scandir': 2.1.5 2243 | fastq: 1.15.0 2244 | dev: true 2245 | 2246 | /@rollup/rollup-android-arm-eabi@4.6.1: 2247 | resolution: 2248 | { 2249 | integrity: sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==, 2250 | } 2251 | cpu: [arm] 2252 | os: [android] 2253 | requiresBuild: true 2254 | dev: true 2255 | optional: true 2256 | 2257 | /@rollup/rollup-android-arm64@4.6.1: 2258 | resolution: 2259 | { 2260 | integrity: sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==, 2261 | } 2262 | cpu: [arm64] 2263 | os: [android] 2264 | requiresBuild: true 2265 | dev: true 2266 | optional: true 2267 | 2268 | /@rollup/rollup-darwin-arm64@4.6.1: 2269 | resolution: 2270 | { 2271 | integrity: sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==, 2272 | } 2273 | cpu: [arm64] 2274 | os: [darwin] 2275 | requiresBuild: true 2276 | dev: true 2277 | optional: true 2278 | 2279 | /@rollup/rollup-darwin-x64@4.6.1: 2280 | resolution: 2281 | { 2282 | integrity: sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==, 2283 | } 2284 | cpu: [x64] 2285 | os: [darwin] 2286 | requiresBuild: true 2287 | dev: true 2288 | optional: true 2289 | 2290 | /@rollup/rollup-linux-arm-gnueabihf@4.6.1: 2291 | resolution: 2292 | { 2293 | integrity: sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==, 2294 | } 2295 | cpu: [arm] 2296 | os: [linux] 2297 | requiresBuild: true 2298 | dev: true 2299 | optional: true 2300 | 2301 | /@rollup/rollup-linux-arm64-gnu@4.6.1: 2302 | resolution: 2303 | { 2304 | integrity: sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==, 2305 | } 2306 | cpu: [arm64] 2307 | os: [linux] 2308 | requiresBuild: true 2309 | dev: true 2310 | optional: true 2311 | 2312 | /@rollup/rollup-linux-arm64-musl@4.6.1: 2313 | resolution: 2314 | { 2315 | integrity: sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==, 2316 | } 2317 | cpu: [arm64] 2318 | os: [linux] 2319 | requiresBuild: true 2320 | dev: true 2321 | optional: true 2322 | 2323 | /@rollup/rollup-linux-x64-gnu@4.6.1: 2324 | resolution: 2325 | { 2326 | integrity: sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==, 2327 | } 2328 | cpu: [x64] 2329 | os: [linux] 2330 | requiresBuild: true 2331 | dev: true 2332 | optional: true 2333 | 2334 | /@rollup/rollup-linux-x64-musl@4.6.1: 2335 | resolution: 2336 | { 2337 | integrity: sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==, 2338 | } 2339 | cpu: [x64] 2340 | os: [linux] 2341 | requiresBuild: true 2342 | dev: true 2343 | optional: true 2344 | 2345 | /@rollup/rollup-win32-arm64-msvc@4.6.1: 2346 | resolution: 2347 | { 2348 | integrity: sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==, 2349 | } 2350 | cpu: [arm64] 2351 | os: [win32] 2352 | requiresBuild: true 2353 | dev: true 2354 | optional: true 2355 | 2356 | /@rollup/rollup-win32-ia32-msvc@4.6.1: 2357 | resolution: 2358 | { 2359 | integrity: sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==, 2360 | } 2361 | cpu: [ia32] 2362 | os: [win32] 2363 | requiresBuild: true 2364 | dev: true 2365 | optional: true 2366 | 2367 | /@rollup/rollup-win32-x64-msvc@4.6.1: 2368 | resolution: 2369 | { 2370 | integrity: sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==, 2371 | } 2372 | cpu: [x64] 2373 | os: [win32] 2374 | requiresBuild: true 2375 | dev: true 2376 | optional: true 2377 | 2378 | /@sinclair/typebox@0.27.8: 2379 | resolution: 2380 | { 2381 | integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==, 2382 | } 2383 | dev: true 2384 | 2385 | /@sinonjs/commons@3.0.0: 2386 | resolution: 2387 | { 2388 | integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==, 2389 | } 2390 | dependencies: 2391 | type-detect: 4.0.8 2392 | dev: true 2393 | 2394 | /@sinonjs/fake-timers@10.3.0: 2395 | resolution: 2396 | { 2397 | integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==, 2398 | } 2399 | dependencies: 2400 | '@sinonjs/commons': 3.0.0 2401 | dev: true 2402 | 2403 | /@types/babel__core@7.20.5: 2404 | resolution: 2405 | { 2406 | integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==, 2407 | } 2408 | dependencies: 2409 | '@babel/parser': 7.23.5 2410 | '@babel/types': 7.23.5 2411 | '@types/babel__generator': 7.6.7 2412 | '@types/babel__template': 7.4.4 2413 | '@types/babel__traverse': 7.20.4 2414 | dev: true 2415 | 2416 | /@types/babel__generator@7.6.7: 2417 | resolution: 2418 | { 2419 | integrity: sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==, 2420 | } 2421 | dependencies: 2422 | '@babel/types': 7.23.5 2423 | dev: true 2424 | 2425 | /@types/babel__template@7.4.4: 2426 | resolution: 2427 | { 2428 | integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==, 2429 | } 2430 | dependencies: 2431 | '@babel/parser': 7.23.5 2432 | '@babel/types': 7.23.5 2433 | dev: true 2434 | 2435 | /@types/babel__traverse@7.20.4: 2436 | resolution: 2437 | { 2438 | integrity: sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==, 2439 | } 2440 | dependencies: 2441 | '@babel/types': 7.23.5 2442 | dev: true 2443 | 2444 | /@types/crypto-js@4.2.1: 2445 | resolution: 2446 | { 2447 | integrity: sha512-FSPGd9+OcSok3RsM0UZ/9fcvMOXJ1ENE/ZbLfOPlBWj7BgXtEAM8VYfTtT760GiLbQIMoVozwVuisjvsVwqYWw==, 2448 | } 2449 | dev: true 2450 | 2451 | /@types/graceful-fs@4.1.9: 2452 | resolution: 2453 | { 2454 | integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==, 2455 | } 2456 | dependencies: 2457 | '@types/node': 20.10.2 2458 | dev: true 2459 | 2460 | /@types/istanbul-lib-coverage@2.0.6: 2461 | resolution: 2462 | { 2463 | integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==, 2464 | } 2465 | dev: true 2466 | 2467 | /@types/istanbul-lib-report@3.0.3: 2468 | resolution: 2469 | { 2470 | integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==, 2471 | } 2472 | dependencies: 2473 | '@types/istanbul-lib-coverage': 2.0.6 2474 | dev: true 2475 | 2476 | /@types/istanbul-reports@3.0.4: 2477 | resolution: 2478 | { 2479 | integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==, 2480 | } 2481 | dependencies: 2482 | '@types/istanbul-lib-report': 3.0.3 2483 | dev: true 2484 | 2485 | /@types/node@20.10.2: 2486 | resolution: 2487 | { 2488 | integrity: sha512-37MXfxkb0vuIlRKHNxwCkb60PNBpR94u4efQuN4JgIAm66zfCDXGSAFCef9XUWFovX2R1ok6Z7MHhtdVXXkkIw==, 2489 | } 2490 | dependencies: 2491 | undici-types: 5.26.5 2492 | dev: true 2493 | 2494 | /@types/prop-types@15.7.11: 2495 | resolution: 2496 | { 2497 | integrity: sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==, 2498 | } 2499 | dev: true 2500 | 2501 | /@types/react@18.2.41: 2502 | resolution: 2503 | { 2504 | integrity: sha512-CwOGr/PiLiNBxEBqpJ7fO3kocP/2SSuC9fpH5K7tusrg4xPSRT/193rzolYwQnTN02We/ATXKnb6GqA5w4fRxw==, 2505 | } 2506 | dependencies: 2507 | '@types/prop-types': 15.7.11 2508 | '@types/scheduler': 0.16.8 2509 | csstype: 3.1.2 2510 | dev: true 2511 | 2512 | /@types/scheduler@0.16.8: 2513 | resolution: 2514 | { 2515 | integrity: sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==, 2516 | } 2517 | dev: true 2518 | 2519 | /@types/stack-utils@2.0.3: 2520 | resolution: 2521 | { 2522 | integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==, 2523 | } 2524 | dev: true 2525 | 2526 | /@types/yargs-parser@21.0.3: 2527 | resolution: 2528 | { 2529 | integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==, 2530 | } 2531 | dev: true 2532 | 2533 | /@types/yargs@17.0.32: 2534 | resolution: 2535 | { 2536 | integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==, 2537 | } 2538 | dependencies: 2539 | '@types/yargs-parser': 21.0.3 2540 | dev: true 2541 | 2542 | /ansi-escapes@4.3.2: 2543 | resolution: 2544 | { 2545 | integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==, 2546 | } 2547 | engines: { node: '>=8' } 2548 | dependencies: 2549 | type-fest: 0.21.3 2550 | dev: true 2551 | 2552 | /ansi-regex@5.0.1: 2553 | resolution: 2554 | { 2555 | integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==, 2556 | } 2557 | engines: { node: '>=8' } 2558 | dev: true 2559 | 2560 | /ansi-styles@3.2.1: 2561 | resolution: 2562 | { 2563 | integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==, 2564 | } 2565 | engines: { node: '>=4' } 2566 | dependencies: 2567 | color-convert: 1.9.3 2568 | dev: true 2569 | 2570 | /ansi-styles@4.3.0: 2571 | resolution: 2572 | { 2573 | integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==, 2574 | } 2575 | engines: { node: '>=8' } 2576 | dependencies: 2577 | color-convert: 2.0.1 2578 | dev: true 2579 | 2580 | /ansi-styles@5.2.0: 2581 | resolution: 2582 | { 2583 | integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==, 2584 | } 2585 | engines: { node: '>=10' } 2586 | dev: true 2587 | 2588 | /any-promise@1.3.0: 2589 | resolution: 2590 | { 2591 | integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==, 2592 | } 2593 | dev: true 2594 | 2595 | /anymatch@3.1.3: 2596 | resolution: 2597 | { 2598 | integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==, 2599 | } 2600 | engines: { node: '>= 8' } 2601 | dependencies: 2602 | normalize-path: 3.0.0 2603 | picomatch: 2.3.1 2604 | dev: true 2605 | 2606 | /argparse@1.0.10: 2607 | resolution: 2608 | { 2609 | integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==, 2610 | } 2611 | dependencies: 2612 | sprintf-js: 1.0.3 2613 | dev: true 2614 | 2615 | /array-union@2.1.0: 2616 | resolution: 2617 | { 2618 | integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==, 2619 | } 2620 | engines: { node: '>=8' } 2621 | dev: true 2622 | 2623 | /babel-jest@29.7.0(@babel/core@7.23.5): 2624 | resolution: 2625 | { 2626 | integrity: sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==, 2627 | } 2628 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2629 | peerDependencies: 2630 | '@babel/core': ^7.8.0 2631 | dependencies: 2632 | '@babel/core': 7.23.5 2633 | '@jest/transform': 29.7.0 2634 | '@types/babel__core': 7.20.5 2635 | babel-plugin-istanbul: 6.1.1 2636 | babel-preset-jest: 29.6.3(@babel/core@7.23.5) 2637 | chalk: 4.1.2 2638 | graceful-fs: 4.2.11 2639 | slash: 3.0.0 2640 | transitivePeerDependencies: 2641 | - supports-color 2642 | dev: true 2643 | 2644 | /babel-plugin-istanbul@6.1.1: 2645 | resolution: 2646 | { 2647 | integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==, 2648 | } 2649 | engines: { node: '>=8' } 2650 | dependencies: 2651 | '@babel/helper-plugin-utils': 7.22.5 2652 | '@istanbuljs/load-nyc-config': 1.1.0 2653 | '@istanbuljs/schema': 0.1.3 2654 | istanbul-lib-instrument: 5.2.1 2655 | test-exclude: 6.0.0 2656 | transitivePeerDependencies: 2657 | - supports-color 2658 | dev: true 2659 | 2660 | /babel-plugin-jest-hoist@29.6.3: 2661 | resolution: 2662 | { 2663 | integrity: sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==, 2664 | } 2665 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2666 | dependencies: 2667 | '@babel/template': 7.22.15 2668 | '@babel/types': 7.23.5 2669 | '@types/babel__core': 7.20.5 2670 | '@types/babel__traverse': 7.20.4 2671 | dev: true 2672 | 2673 | /babel-plugin-polyfill-corejs2@0.4.6(@babel/core@7.23.5): 2674 | resolution: 2675 | { 2676 | integrity: sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==, 2677 | } 2678 | peerDependencies: 2679 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 2680 | dependencies: 2681 | '@babel/compat-data': 7.23.5 2682 | '@babel/core': 7.23.5 2683 | '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) 2684 | semver: 6.3.1 2685 | transitivePeerDependencies: 2686 | - supports-color 2687 | dev: true 2688 | 2689 | /babel-plugin-polyfill-corejs3@0.8.6(@babel/core@7.23.5): 2690 | resolution: 2691 | { 2692 | integrity: sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==, 2693 | } 2694 | peerDependencies: 2695 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 2696 | dependencies: 2697 | '@babel/core': 7.23.5 2698 | '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) 2699 | core-js-compat: 3.33.3 2700 | transitivePeerDependencies: 2701 | - supports-color 2702 | dev: true 2703 | 2704 | /babel-plugin-polyfill-regenerator@0.5.3(@babel/core@7.23.5): 2705 | resolution: 2706 | { 2707 | integrity: sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==, 2708 | } 2709 | peerDependencies: 2710 | '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0 2711 | dependencies: 2712 | '@babel/core': 7.23.5 2713 | '@babel/helper-define-polyfill-provider': 0.4.3(@babel/core@7.23.5) 2714 | transitivePeerDependencies: 2715 | - supports-color 2716 | dev: true 2717 | 2718 | /babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.5): 2719 | resolution: 2720 | { 2721 | integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==, 2722 | } 2723 | peerDependencies: 2724 | '@babel/core': ^7.0.0 2725 | dependencies: 2726 | '@babel/core': 7.23.5 2727 | '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.5) 2728 | '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.23.5) 2729 | '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.5) 2730 | '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.5) 2731 | '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.5) 2732 | '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.5) 2733 | '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.5) 2734 | '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.5) 2735 | '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.5) 2736 | '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.5) 2737 | '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.5) 2738 | '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.5) 2739 | dev: true 2740 | 2741 | /babel-preset-jest@29.6.3(@babel/core@7.23.5): 2742 | resolution: 2743 | { 2744 | integrity: sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==, 2745 | } 2746 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 2747 | peerDependencies: 2748 | '@babel/core': ^7.0.0 2749 | dependencies: 2750 | '@babel/core': 7.23.5 2751 | babel-plugin-jest-hoist: 29.6.3 2752 | babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.5) 2753 | dev: true 2754 | 2755 | /balanced-match@1.0.2: 2756 | resolution: 2757 | { 2758 | integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==, 2759 | } 2760 | dev: true 2761 | 2762 | /binary-extensions@2.2.0: 2763 | resolution: 2764 | { 2765 | integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==, 2766 | } 2767 | engines: { node: '>=8' } 2768 | dev: true 2769 | 2770 | /brace-expansion@1.1.11: 2771 | resolution: 2772 | { 2773 | integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==, 2774 | } 2775 | dependencies: 2776 | balanced-match: 1.0.2 2777 | concat-map: 0.0.1 2778 | dev: true 2779 | 2780 | /braces@3.0.2: 2781 | resolution: 2782 | { 2783 | integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==, 2784 | } 2785 | engines: { node: '>=8' } 2786 | dependencies: 2787 | fill-range: 7.0.1 2788 | dev: true 2789 | 2790 | /browserslist@4.22.2: 2791 | resolution: 2792 | { 2793 | integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==, 2794 | } 2795 | engines: { node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7 } 2796 | hasBin: true 2797 | dependencies: 2798 | caniuse-lite: 1.0.30001565 2799 | electron-to-chromium: 1.4.601 2800 | node-releases: 2.0.14 2801 | update-browserslist-db: 1.0.13(browserslist@4.22.2) 2802 | dev: true 2803 | 2804 | /bser@2.1.1: 2805 | resolution: 2806 | { 2807 | integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==, 2808 | } 2809 | dependencies: 2810 | node-int64: 0.4.0 2811 | dev: true 2812 | 2813 | /buffer-from@1.1.2: 2814 | resolution: 2815 | { 2816 | integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==, 2817 | } 2818 | dev: true 2819 | 2820 | /bundle-require@4.0.2(esbuild@0.19.8): 2821 | resolution: 2822 | { 2823 | integrity: sha512-jwzPOChofl67PSTW2SGubV9HBQAhhR2i6nskiOThauo9dzwDUgOWQScFVaJkjEfYX+UXiD+LEx8EblQMc2wIag==, 2824 | } 2825 | engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } 2826 | peerDependencies: 2827 | esbuild: '>=0.17' 2828 | dependencies: 2829 | esbuild: 0.19.8 2830 | load-tsconfig: 0.2.5 2831 | dev: true 2832 | 2833 | /cac@6.7.14: 2834 | resolution: 2835 | { 2836 | integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==, 2837 | } 2838 | engines: { node: '>=8' } 2839 | dev: true 2840 | 2841 | /callsites@3.1.0: 2842 | resolution: 2843 | { 2844 | integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==, 2845 | } 2846 | engines: { node: '>=6' } 2847 | dev: true 2848 | 2849 | /camelcase@5.3.1: 2850 | resolution: 2851 | { 2852 | integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==, 2853 | } 2854 | engines: { node: '>=6' } 2855 | dev: true 2856 | 2857 | /camelcase@6.3.0: 2858 | resolution: 2859 | { 2860 | integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==, 2861 | } 2862 | engines: { node: '>=10' } 2863 | dev: true 2864 | 2865 | /caniuse-lite@1.0.30001565: 2866 | resolution: 2867 | { 2868 | integrity: sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==, 2869 | } 2870 | dev: true 2871 | 2872 | /chalk@2.4.2: 2873 | resolution: 2874 | { 2875 | integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==, 2876 | } 2877 | engines: { node: '>=4' } 2878 | dependencies: 2879 | ansi-styles: 3.2.1 2880 | escape-string-regexp: 1.0.5 2881 | supports-color: 5.5.0 2882 | dev: true 2883 | 2884 | /chalk@4.1.2: 2885 | resolution: 2886 | { 2887 | integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==, 2888 | } 2889 | engines: { node: '>=10' } 2890 | dependencies: 2891 | ansi-styles: 4.3.0 2892 | supports-color: 7.2.0 2893 | dev: true 2894 | 2895 | /char-regex@1.0.2: 2896 | resolution: 2897 | { 2898 | integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==, 2899 | } 2900 | engines: { node: '>=10' } 2901 | dev: true 2902 | 2903 | /chokidar@3.5.3: 2904 | resolution: 2905 | { 2906 | integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==, 2907 | } 2908 | engines: { node: '>= 8.10.0' } 2909 | dependencies: 2910 | anymatch: 3.1.3 2911 | braces: 3.0.2 2912 | glob-parent: 5.1.2 2913 | is-binary-path: 2.1.0 2914 | is-glob: 4.0.3 2915 | normalize-path: 3.0.0 2916 | readdirp: 3.6.0 2917 | optionalDependencies: 2918 | fsevents: 2.3.3 2919 | dev: true 2920 | 2921 | /ci-info@3.9.0: 2922 | resolution: 2923 | { 2924 | integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==, 2925 | } 2926 | engines: { node: '>=8' } 2927 | dev: true 2928 | 2929 | /cjs-module-lexer@1.2.3: 2930 | resolution: 2931 | { 2932 | integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==, 2933 | } 2934 | dev: true 2935 | 2936 | /cliui@8.0.1: 2937 | resolution: 2938 | { 2939 | integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==, 2940 | } 2941 | engines: { node: '>=12' } 2942 | dependencies: 2943 | string-width: 4.2.3 2944 | strip-ansi: 6.0.1 2945 | wrap-ansi: 7.0.0 2946 | dev: true 2947 | 2948 | /co@4.6.0: 2949 | resolution: 2950 | { 2951 | integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==, 2952 | } 2953 | engines: { iojs: '>= 1.0.0', node: '>= 0.12.0' } 2954 | dev: true 2955 | 2956 | /collect-v8-coverage@1.0.2: 2957 | resolution: 2958 | { 2959 | integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==, 2960 | } 2961 | dev: true 2962 | 2963 | /color-convert@1.9.3: 2964 | resolution: 2965 | { 2966 | integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==, 2967 | } 2968 | dependencies: 2969 | color-name: 1.1.3 2970 | dev: true 2971 | 2972 | /color-convert@2.0.1: 2973 | resolution: 2974 | { 2975 | integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==, 2976 | } 2977 | engines: { node: '>=7.0.0' } 2978 | dependencies: 2979 | color-name: 1.1.4 2980 | dev: true 2981 | 2982 | /color-name@1.1.3: 2983 | resolution: 2984 | { 2985 | integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==, 2986 | } 2987 | dev: true 2988 | 2989 | /color-name@1.1.4: 2990 | resolution: 2991 | { 2992 | integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==, 2993 | } 2994 | dev: true 2995 | 2996 | /commander@4.1.1: 2997 | resolution: 2998 | { 2999 | integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==, 3000 | } 3001 | engines: { node: '>= 6' } 3002 | dev: true 3003 | 3004 | /concat-map@0.0.1: 3005 | resolution: 3006 | { 3007 | integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==, 3008 | } 3009 | dev: true 3010 | 3011 | /convert-source-map@2.0.0: 3012 | resolution: 3013 | { 3014 | integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==, 3015 | } 3016 | dev: true 3017 | 3018 | /core-js-compat@3.33.3: 3019 | resolution: 3020 | { 3021 | integrity: sha512-cNzGqFsh3Ot+529GIXacjTJ7kegdt5fPXxCBVS1G0iaZpuo/tBz399ymceLJveQhFFZ8qThHiP3fzuoQjKN2ow==, 3022 | } 3023 | dependencies: 3024 | browserslist: 4.22.2 3025 | dev: true 3026 | 3027 | /create-jest@29.7.0: 3028 | resolution: 3029 | { 3030 | integrity: sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==, 3031 | } 3032 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3033 | hasBin: true 3034 | dependencies: 3035 | '@jest/types': 29.6.3 3036 | chalk: 4.1.2 3037 | exit: 0.1.2 3038 | graceful-fs: 4.2.11 3039 | jest-config: 29.7.0(@types/node@20.10.2) 3040 | jest-util: 29.7.0 3041 | prompts: 2.4.2 3042 | transitivePeerDependencies: 3043 | - '@types/node' 3044 | - babel-plugin-macros 3045 | - supports-color 3046 | - ts-node 3047 | dev: true 3048 | 3049 | /cross-spawn@7.0.3: 3050 | resolution: 3051 | { 3052 | integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==, 3053 | } 3054 | engines: { node: '>= 8' } 3055 | dependencies: 3056 | path-key: 3.1.1 3057 | shebang-command: 2.0.0 3058 | which: 2.0.2 3059 | dev: true 3060 | 3061 | /crypto-js@4.2.0: 3062 | resolution: 3063 | { 3064 | integrity: sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==, 3065 | } 3066 | dev: false 3067 | 3068 | /csstype@3.1.2: 3069 | resolution: 3070 | { 3071 | integrity: sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==, 3072 | } 3073 | dev: true 3074 | 3075 | /debug@4.3.4: 3076 | resolution: 3077 | { 3078 | integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==, 3079 | } 3080 | engines: { node: '>=6.0' } 3081 | peerDependencies: 3082 | supports-color: '*' 3083 | peerDependenciesMeta: 3084 | supports-color: 3085 | optional: true 3086 | dependencies: 3087 | ms: 2.1.2 3088 | dev: true 3089 | 3090 | /dedent@1.5.1: 3091 | resolution: 3092 | { 3093 | integrity: sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==, 3094 | } 3095 | peerDependencies: 3096 | babel-plugin-macros: ^3.1.0 3097 | peerDependenciesMeta: 3098 | babel-plugin-macros: 3099 | optional: true 3100 | dev: true 3101 | 3102 | /deepmerge@4.3.1: 3103 | resolution: 3104 | { 3105 | integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==, 3106 | } 3107 | engines: { node: '>=0.10.0' } 3108 | dev: true 3109 | 3110 | /detect-newline@3.1.0: 3111 | resolution: 3112 | { 3113 | integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==, 3114 | } 3115 | engines: { node: '>=8' } 3116 | dev: true 3117 | 3118 | /diff-sequences@29.6.3: 3119 | resolution: 3120 | { 3121 | integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==, 3122 | } 3123 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3124 | dev: true 3125 | 3126 | /dir-glob@3.0.1: 3127 | resolution: 3128 | { 3129 | integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==, 3130 | } 3131 | engines: { node: '>=8' } 3132 | dependencies: 3133 | path-type: 4.0.0 3134 | dev: true 3135 | 3136 | /electron-to-chromium@1.4.601: 3137 | resolution: 3138 | { 3139 | integrity: sha512-SpwUMDWe9tQu8JX5QCO1+p/hChAi9AE9UpoC3rcHVc+gdCGlbT3SGb5I1klgb952HRIyvt9wZhSz9bNBYz9swA==, 3140 | } 3141 | dev: true 3142 | 3143 | /emittery@0.13.1: 3144 | resolution: 3145 | { 3146 | integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==, 3147 | } 3148 | engines: { node: '>=12' } 3149 | dev: true 3150 | 3151 | /emoji-regex@8.0.0: 3152 | resolution: 3153 | { 3154 | integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==, 3155 | } 3156 | dev: true 3157 | 3158 | /error-ex@1.3.2: 3159 | resolution: 3160 | { 3161 | integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==, 3162 | } 3163 | dependencies: 3164 | is-arrayish: 0.2.1 3165 | dev: true 3166 | 3167 | /esbuild@0.19.8: 3168 | resolution: 3169 | { 3170 | integrity: sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==, 3171 | } 3172 | engines: { node: '>=12' } 3173 | hasBin: true 3174 | requiresBuild: true 3175 | optionalDependencies: 3176 | '@esbuild/android-arm': 0.19.8 3177 | '@esbuild/android-arm64': 0.19.8 3178 | '@esbuild/android-x64': 0.19.8 3179 | '@esbuild/darwin-arm64': 0.19.8 3180 | '@esbuild/darwin-x64': 0.19.8 3181 | '@esbuild/freebsd-arm64': 0.19.8 3182 | '@esbuild/freebsd-x64': 0.19.8 3183 | '@esbuild/linux-arm': 0.19.8 3184 | '@esbuild/linux-arm64': 0.19.8 3185 | '@esbuild/linux-ia32': 0.19.8 3186 | '@esbuild/linux-loong64': 0.19.8 3187 | '@esbuild/linux-mips64el': 0.19.8 3188 | '@esbuild/linux-ppc64': 0.19.8 3189 | '@esbuild/linux-riscv64': 0.19.8 3190 | '@esbuild/linux-s390x': 0.19.8 3191 | '@esbuild/linux-x64': 0.19.8 3192 | '@esbuild/netbsd-x64': 0.19.8 3193 | '@esbuild/openbsd-x64': 0.19.8 3194 | '@esbuild/sunos-x64': 0.19.8 3195 | '@esbuild/win32-arm64': 0.19.8 3196 | '@esbuild/win32-ia32': 0.19.8 3197 | '@esbuild/win32-x64': 0.19.8 3198 | dev: true 3199 | 3200 | /escalade@3.1.1: 3201 | resolution: 3202 | { 3203 | integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==, 3204 | } 3205 | engines: { node: '>=6' } 3206 | dev: true 3207 | 3208 | /escape-string-regexp@1.0.5: 3209 | resolution: 3210 | { 3211 | integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==, 3212 | } 3213 | engines: { node: '>=0.8.0' } 3214 | dev: true 3215 | 3216 | /escape-string-regexp@2.0.0: 3217 | resolution: 3218 | { 3219 | integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==, 3220 | } 3221 | engines: { node: '>=8' } 3222 | dev: true 3223 | 3224 | /esprima@4.0.1: 3225 | resolution: 3226 | { 3227 | integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==, 3228 | } 3229 | engines: { node: '>=4' } 3230 | hasBin: true 3231 | dev: true 3232 | 3233 | /esutils@2.0.3: 3234 | resolution: 3235 | { 3236 | integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==, 3237 | } 3238 | engines: { node: '>=0.10.0' } 3239 | dev: true 3240 | 3241 | /execa@5.1.1: 3242 | resolution: 3243 | { 3244 | integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==, 3245 | } 3246 | engines: { node: '>=10' } 3247 | dependencies: 3248 | cross-spawn: 7.0.3 3249 | get-stream: 6.0.1 3250 | human-signals: 2.1.0 3251 | is-stream: 2.0.1 3252 | merge-stream: 2.0.0 3253 | npm-run-path: 4.0.1 3254 | onetime: 5.1.2 3255 | signal-exit: 3.0.7 3256 | strip-final-newline: 2.0.0 3257 | dev: true 3258 | 3259 | /exit@0.1.2: 3260 | resolution: 3261 | { 3262 | integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==, 3263 | } 3264 | engines: { node: '>= 0.8.0' } 3265 | dev: true 3266 | 3267 | /expect@29.7.0: 3268 | resolution: 3269 | { 3270 | integrity: sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==, 3271 | } 3272 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3273 | dependencies: 3274 | '@jest/expect-utils': 29.7.0 3275 | jest-get-type: 29.6.3 3276 | jest-matcher-utils: 29.7.0 3277 | jest-message-util: 29.7.0 3278 | jest-util: 29.7.0 3279 | dev: true 3280 | 3281 | /fast-glob@3.3.2: 3282 | resolution: 3283 | { 3284 | integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==, 3285 | } 3286 | engines: { node: '>=8.6.0' } 3287 | dependencies: 3288 | '@nodelib/fs.stat': 2.0.5 3289 | '@nodelib/fs.walk': 1.2.8 3290 | glob-parent: 5.1.2 3291 | merge2: 1.4.1 3292 | micromatch: 4.0.5 3293 | dev: true 3294 | 3295 | /fast-json-stable-stringify@2.1.0: 3296 | resolution: 3297 | { 3298 | integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==, 3299 | } 3300 | dev: true 3301 | 3302 | /fastq@1.15.0: 3303 | resolution: 3304 | { 3305 | integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==, 3306 | } 3307 | dependencies: 3308 | reusify: 1.0.4 3309 | dev: true 3310 | 3311 | /fb-watchman@2.0.2: 3312 | resolution: 3313 | { 3314 | integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==, 3315 | } 3316 | dependencies: 3317 | bser: 2.1.1 3318 | dev: true 3319 | 3320 | /fill-range@7.0.1: 3321 | resolution: 3322 | { 3323 | integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==, 3324 | } 3325 | engines: { node: '>=8' } 3326 | dependencies: 3327 | to-regex-range: 5.0.1 3328 | dev: true 3329 | 3330 | /find-up@4.1.0: 3331 | resolution: 3332 | { 3333 | integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==, 3334 | } 3335 | engines: { node: '>=8' } 3336 | dependencies: 3337 | locate-path: 5.0.0 3338 | path-exists: 4.0.0 3339 | dev: true 3340 | 3341 | /fs.realpath@1.0.0: 3342 | resolution: 3343 | { 3344 | integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==, 3345 | } 3346 | dev: true 3347 | 3348 | /fsevents@2.3.3: 3349 | resolution: 3350 | { 3351 | integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==, 3352 | } 3353 | engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } 3354 | os: [darwin] 3355 | requiresBuild: true 3356 | dev: true 3357 | optional: true 3358 | 3359 | /function-bind@1.1.2: 3360 | resolution: 3361 | { 3362 | integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==, 3363 | } 3364 | dev: true 3365 | 3366 | /gensync@1.0.0-beta.2: 3367 | resolution: 3368 | { 3369 | integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==, 3370 | } 3371 | engines: { node: '>=6.9.0' } 3372 | dev: true 3373 | 3374 | /get-caller-file@2.0.5: 3375 | resolution: 3376 | { 3377 | integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==, 3378 | } 3379 | engines: { node: 6.* || 8.* || >= 10.* } 3380 | dev: true 3381 | 3382 | /get-package-type@0.1.0: 3383 | resolution: 3384 | { 3385 | integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==, 3386 | } 3387 | engines: { node: '>=8.0.0' } 3388 | dev: true 3389 | 3390 | /get-stream@6.0.1: 3391 | resolution: 3392 | { 3393 | integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==, 3394 | } 3395 | engines: { node: '>=10' } 3396 | dev: true 3397 | 3398 | /glob-parent@5.1.2: 3399 | resolution: 3400 | { 3401 | integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==, 3402 | } 3403 | engines: { node: '>= 6' } 3404 | dependencies: 3405 | is-glob: 4.0.3 3406 | dev: true 3407 | 3408 | /glob@7.1.6: 3409 | resolution: 3410 | { 3411 | integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==, 3412 | } 3413 | dependencies: 3414 | fs.realpath: 1.0.0 3415 | inflight: 1.0.6 3416 | inherits: 2.0.4 3417 | minimatch: 3.1.2 3418 | once: 1.4.0 3419 | path-is-absolute: 1.0.1 3420 | dev: true 3421 | 3422 | /glob@7.2.3: 3423 | resolution: 3424 | { 3425 | integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==, 3426 | } 3427 | dependencies: 3428 | fs.realpath: 1.0.0 3429 | inflight: 1.0.6 3430 | inherits: 2.0.4 3431 | minimatch: 3.1.2 3432 | once: 1.4.0 3433 | path-is-absolute: 1.0.1 3434 | dev: true 3435 | 3436 | /globals@11.12.0: 3437 | resolution: 3438 | { 3439 | integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==, 3440 | } 3441 | engines: { node: '>=4' } 3442 | dev: true 3443 | 3444 | /globby@11.1.0: 3445 | resolution: 3446 | { 3447 | integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==, 3448 | } 3449 | engines: { node: '>=10' } 3450 | dependencies: 3451 | array-union: 2.1.0 3452 | dir-glob: 3.0.1 3453 | fast-glob: 3.3.2 3454 | ignore: 5.3.0 3455 | merge2: 1.4.1 3456 | slash: 3.0.0 3457 | dev: true 3458 | 3459 | /graceful-fs@4.2.11: 3460 | resolution: 3461 | { 3462 | integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==, 3463 | } 3464 | dev: true 3465 | 3466 | /has-flag@3.0.0: 3467 | resolution: 3468 | { 3469 | integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==, 3470 | } 3471 | engines: { node: '>=4' } 3472 | dev: true 3473 | 3474 | /has-flag@4.0.0: 3475 | resolution: 3476 | { 3477 | integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==, 3478 | } 3479 | engines: { node: '>=8' } 3480 | dev: true 3481 | 3482 | /hasown@2.0.0: 3483 | resolution: 3484 | { 3485 | integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==, 3486 | } 3487 | engines: { node: '>= 0.4' } 3488 | dependencies: 3489 | function-bind: 1.1.2 3490 | dev: true 3491 | 3492 | /html-escaper@2.0.2: 3493 | resolution: 3494 | { 3495 | integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==, 3496 | } 3497 | dev: true 3498 | 3499 | /human-signals@2.1.0: 3500 | resolution: 3501 | { 3502 | integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==, 3503 | } 3504 | engines: { node: '>=10.17.0' } 3505 | dev: true 3506 | 3507 | /ignore@5.3.0: 3508 | resolution: 3509 | { 3510 | integrity: sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==, 3511 | } 3512 | engines: { node: '>= 4' } 3513 | dev: true 3514 | 3515 | /import-local@3.1.0: 3516 | resolution: 3517 | { 3518 | integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==, 3519 | } 3520 | engines: { node: '>=8' } 3521 | hasBin: true 3522 | dependencies: 3523 | pkg-dir: 4.2.0 3524 | resolve-cwd: 3.0.0 3525 | dev: true 3526 | 3527 | /imurmurhash@0.1.4: 3528 | resolution: 3529 | { 3530 | integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==, 3531 | } 3532 | engines: { node: '>=0.8.19' } 3533 | dev: true 3534 | 3535 | /inflight@1.0.6: 3536 | resolution: 3537 | { 3538 | integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==, 3539 | } 3540 | dependencies: 3541 | once: 1.4.0 3542 | wrappy: 1.0.2 3543 | dev: true 3544 | 3545 | /inherits@2.0.4: 3546 | resolution: 3547 | { 3548 | integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==, 3549 | } 3550 | dev: true 3551 | 3552 | /is-arrayish@0.2.1: 3553 | resolution: 3554 | { 3555 | integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==, 3556 | } 3557 | dev: true 3558 | 3559 | /is-binary-path@2.1.0: 3560 | resolution: 3561 | { 3562 | integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==, 3563 | } 3564 | engines: { node: '>=8' } 3565 | dependencies: 3566 | binary-extensions: 2.2.0 3567 | dev: true 3568 | 3569 | /is-core-module@2.13.1: 3570 | resolution: 3571 | { 3572 | integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==, 3573 | } 3574 | dependencies: 3575 | hasown: 2.0.0 3576 | dev: true 3577 | 3578 | /is-extglob@2.1.1: 3579 | resolution: 3580 | { 3581 | integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==, 3582 | } 3583 | engines: { node: '>=0.10.0' } 3584 | dev: true 3585 | 3586 | /is-fullwidth-code-point@3.0.0: 3587 | resolution: 3588 | { 3589 | integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==, 3590 | } 3591 | engines: { node: '>=8' } 3592 | dev: true 3593 | 3594 | /is-generator-fn@2.1.0: 3595 | resolution: 3596 | { 3597 | integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==, 3598 | } 3599 | engines: { node: '>=6' } 3600 | dev: true 3601 | 3602 | /is-glob@4.0.3: 3603 | resolution: 3604 | { 3605 | integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==, 3606 | } 3607 | engines: { node: '>=0.10.0' } 3608 | dependencies: 3609 | is-extglob: 2.1.1 3610 | dev: true 3611 | 3612 | /is-number@7.0.0: 3613 | resolution: 3614 | { 3615 | integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==, 3616 | } 3617 | engines: { node: '>=0.12.0' } 3618 | dev: true 3619 | 3620 | /is-stream@2.0.1: 3621 | resolution: 3622 | { 3623 | integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==, 3624 | } 3625 | engines: { node: '>=8' } 3626 | dev: true 3627 | 3628 | /isexe@2.0.0: 3629 | resolution: 3630 | { 3631 | integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==, 3632 | } 3633 | dev: true 3634 | 3635 | /istanbul-lib-coverage@3.2.2: 3636 | resolution: 3637 | { 3638 | integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==, 3639 | } 3640 | engines: { node: '>=8' } 3641 | dev: true 3642 | 3643 | /istanbul-lib-instrument@5.2.1: 3644 | resolution: 3645 | { 3646 | integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==, 3647 | } 3648 | engines: { node: '>=8' } 3649 | dependencies: 3650 | '@babel/core': 7.23.5 3651 | '@babel/parser': 7.23.5 3652 | '@istanbuljs/schema': 0.1.3 3653 | istanbul-lib-coverage: 3.2.2 3654 | semver: 6.3.1 3655 | transitivePeerDependencies: 3656 | - supports-color 3657 | dev: true 3658 | 3659 | /istanbul-lib-instrument@6.0.1: 3660 | resolution: 3661 | { 3662 | integrity: sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==, 3663 | } 3664 | engines: { node: '>=10' } 3665 | dependencies: 3666 | '@babel/core': 7.23.5 3667 | '@babel/parser': 7.23.5 3668 | '@istanbuljs/schema': 0.1.3 3669 | istanbul-lib-coverage: 3.2.2 3670 | semver: 7.5.4 3671 | transitivePeerDependencies: 3672 | - supports-color 3673 | dev: true 3674 | 3675 | /istanbul-lib-report@3.0.1: 3676 | resolution: 3677 | { 3678 | integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==, 3679 | } 3680 | engines: { node: '>=10' } 3681 | dependencies: 3682 | istanbul-lib-coverage: 3.2.2 3683 | make-dir: 4.0.0 3684 | supports-color: 7.2.0 3685 | dev: true 3686 | 3687 | /istanbul-lib-source-maps@4.0.1: 3688 | resolution: 3689 | { 3690 | integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==, 3691 | } 3692 | engines: { node: '>=10' } 3693 | dependencies: 3694 | debug: 4.3.4 3695 | istanbul-lib-coverage: 3.2.2 3696 | source-map: 0.6.1 3697 | transitivePeerDependencies: 3698 | - supports-color 3699 | dev: true 3700 | 3701 | /istanbul-reports@3.1.6: 3702 | resolution: 3703 | { 3704 | integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==, 3705 | } 3706 | engines: { node: '>=8' } 3707 | dependencies: 3708 | html-escaper: 2.0.2 3709 | istanbul-lib-report: 3.0.1 3710 | dev: true 3711 | 3712 | /jest-changed-files@29.7.0: 3713 | resolution: 3714 | { 3715 | integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==, 3716 | } 3717 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3718 | dependencies: 3719 | execa: 5.1.1 3720 | jest-util: 29.7.0 3721 | p-limit: 3.1.0 3722 | dev: true 3723 | 3724 | /jest-circus@29.7.0: 3725 | resolution: 3726 | { 3727 | integrity: sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==, 3728 | } 3729 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3730 | dependencies: 3731 | '@jest/environment': 29.7.0 3732 | '@jest/expect': 29.7.0 3733 | '@jest/test-result': 29.7.0 3734 | '@jest/types': 29.6.3 3735 | '@types/node': 20.10.2 3736 | chalk: 4.1.2 3737 | co: 4.6.0 3738 | dedent: 1.5.1 3739 | is-generator-fn: 2.1.0 3740 | jest-each: 29.7.0 3741 | jest-matcher-utils: 29.7.0 3742 | jest-message-util: 29.7.0 3743 | jest-runtime: 29.7.0 3744 | jest-snapshot: 29.7.0 3745 | jest-util: 29.7.0 3746 | p-limit: 3.1.0 3747 | pretty-format: 29.7.0 3748 | pure-rand: 6.0.4 3749 | slash: 3.0.0 3750 | stack-utils: 2.0.6 3751 | transitivePeerDependencies: 3752 | - babel-plugin-macros 3753 | - supports-color 3754 | dev: true 3755 | 3756 | /jest-cli@29.7.0: 3757 | resolution: 3758 | { 3759 | integrity: sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==, 3760 | } 3761 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3762 | hasBin: true 3763 | peerDependencies: 3764 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 3765 | peerDependenciesMeta: 3766 | node-notifier: 3767 | optional: true 3768 | dependencies: 3769 | '@jest/core': 29.7.0 3770 | '@jest/test-result': 29.7.0 3771 | '@jest/types': 29.6.3 3772 | chalk: 4.1.2 3773 | create-jest: 29.7.0 3774 | exit: 0.1.2 3775 | import-local: 3.1.0 3776 | jest-config: 29.7.0(@types/node@20.10.2) 3777 | jest-util: 29.7.0 3778 | jest-validate: 29.7.0 3779 | yargs: 17.7.2 3780 | transitivePeerDependencies: 3781 | - '@types/node' 3782 | - babel-plugin-macros 3783 | - supports-color 3784 | - ts-node 3785 | dev: true 3786 | 3787 | /jest-config@29.7.0(@types/node@20.10.2): 3788 | resolution: 3789 | { 3790 | integrity: sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==, 3791 | } 3792 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3793 | peerDependencies: 3794 | '@types/node': '*' 3795 | ts-node: '>=9.0.0' 3796 | peerDependenciesMeta: 3797 | '@types/node': 3798 | optional: true 3799 | ts-node: 3800 | optional: true 3801 | dependencies: 3802 | '@babel/core': 7.23.5 3803 | '@jest/test-sequencer': 29.7.0 3804 | '@jest/types': 29.6.3 3805 | '@types/node': 20.10.2 3806 | babel-jest: 29.7.0(@babel/core@7.23.5) 3807 | chalk: 4.1.2 3808 | ci-info: 3.9.0 3809 | deepmerge: 4.3.1 3810 | glob: 7.2.3 3811 | graceful-fs: 4.2.11 3812 | jest-circus: 29.7.0 3813 | jest-environment-node: 29.7.0 3814 | jest-get-type: 29.6.3 3815 | jest-regex-util: 29.6.3 3816 | jest-resolve: 29.7.0 3817 | jest-runner: 29.7.0 3818 | jest-util: 29.7.0 3819 | jest-validate: 29.7.0 3820 | micromatch: 4.0.5 3821 | parse-json: 5.2.0 3822 | pretty-format: 29.7.0 3823 | slash: 3.0.0 3824 | strip-json-comments: 3.1.1 3825 | transitivePeerDependencies: 3826 | - babel-plugin-macros 3827 | - supports-color 3828 | dev: true 3829 | 3830 | /jest-diff@29.7.0: 3831 | resolution: 3832 | { 3833 | integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==, 3834 | } 3835 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3836 | dependencies: 3837 | chalk: 4.1.2 3838 | diff-sequences: 29.6.3 3839 | jest-get-type: 29.6.3 3840 | pretty-format: 29.7.0 3841 | dev: true 3842 | 3843 | /jest-docblock@29.7.0: 3844 | resolution: 3845 | { 3846 | integrity: sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==, 3847 | } 3848 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3849 | dependencies: 3850 | detect-newline: 3.1.0 3851 | dev: true 3852 | 3853 | /jest-each@29.7.0: 3854 | resolution: 3855 | { 3856 | integrity: sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==, 3857 | } 3858 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3859 | dependencies: 3860 | '@jest/types': 29.6.3 3861 | chalk: 4.1.2 3862 | jest-get-type: 29.6.3 3863 | jest-util: 29.7.0 3864 | pretty-format: 29.7.0 3865 | dev: true 3866 | 3867 | /jest-environment-node@29.7.0: 3868 | resolution: 3869 | { 3870 | integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==, 3871 | } 3872 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3873 | dependencies: 3874 | '@jest/environment': 29.7.0 3875 | '@jest/fake-timers': 29.7.0 3876 | '@jest/types': 29.6.3 3877 | '@types/node': 20.10.2 3878 | jest-mock: 29.7.0 3879 | jest-util: 29.7.0 3880 | dev: true 3881 | 3882 | /jest-get-type@29.6.3: 3883 | resolution: 3884 | { 3885 | integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==, 3886 | } 3887 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3888 | dev: true 3889 | 3890 | /jest-haste-map@29.7.0: 3891 | resolution: 3892 | { 3893 | integrity: sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==, 3894 | } 3895 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3896 | dependencies: 3897 | '@jest/types': 29.6.3 3898 | '@types/graceful-fs': 4.1.9 3899 | '@types/node': 20.10.2 3900 | anymatch: 3.1.3 3901 | fb-watchman: 2.0.2 3902 | graceful-fs: 4.2.11 3903 | jest-regex-util: 29.6.3 3904 | jest-util: 29.7.0 3905 | jest-worker: 29.7.0 3906 | micromatch: 4.0.5 3907 | walker: 1.0.8 3908 | optionalDependencies: 3909 | fsevents: 2.3.3 3910 | dev: true 3911 | 3912 | /jest-leak-detector@29.7.0: 3913 | resolution: 3914 | { 3915 | integrity: sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==, 3916 | } 3917 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3918 | dependencies: 3919 | jest-get-type: 29.6.3 3920 | pretty-format: 29.7.0 3921 | dev: true 3922 | 3923 | /jest-matcher-utils@29.7.0: 3924 | resolution: 3925 | { 3926 | integrity: sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==, 3927 | } 3928 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3929 | dependencies: 3930 | chalk: 4.1.2 3931 | jest-diff: 29.7.0 3932 | jest-get-type: 29.6.3 3933 | pretty-format: 29.7.0 3934 | dev: true 3935 | 3936 | /jest-message-util@29.7.0: 3937 | resolution: 3938 | { 3939 | integrity: sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==, 3940 | } 3941 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3942 | dependencies: 3943 | '@babel/code-frame': 7.23.5 3944 | '@jest/types': 29.6.3 3945 | '@types/stack-utils': 2.0.3 3946 | chalk: 4.1.2 3947 | graceful-fs: 4.2.11 3948 | micromatch: 4.0.5 3949 | pretty-format: 29.7.0 3950 | slash: 3.0.0 3951 | stack-utils: 2.0.6 3952 | dev: true 3953 | 3954 | /jest-mock@29.7.0: 3955 | resolution: 3956 | { 3957 | integrity: sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==, 3958 | } 3959 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3960 | dependencies: 3961 | '@jest/types': 29.6.3 3962 | '@types/node': 20.10.2 3963 | jest-util: 29.7.0 3964 | dev: true 3965 | 3966 | /jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): 3967 | resolution: 3968 | { 3969 | integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==, 3970 | } 3971 | engines: { node: '>=6' } 3972 | peerDependencies: 3973 | jest-resolve: '*' 3974 | peerDependenciesMeta: 3975 | jest-resolve: 3976 | optional: true 3977 | dependencies: 3978 | jest-resolve: 29.7.0 3979 | dev: true 3980 | 3981 | /jest-regex-util@29.6.3: 3982 | resolution: 3983 | { 3984 | integrity: sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==, 3985 | } 3986 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3987 | dev: true 3988 | 3989 | /jest-resolve-dependencies@29.7.0: 3990 | resolution: 3991 | { 3992 | integrity: sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==, 3993 | } 3994 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 3995 | dependencies: 3996 | jest-regex-util: 29.6.3 3997 | jest-snapshot: 29.7.0 3998 | transitivePeerDependencies: 3999 | - supports-color 4000 | dev: true 4001 | 4002 | /jest-resolve@29.7.0: 4003 | resolution: 4004 | { 4005 | integrity: sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==, 4006 | } 4007 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4008 | dependencies: 4009 | chalk: 4.1.2 4010 | graceful-fs: 4.2.11 4011 | jest-haste-map: 29.7.0 4012 | jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) 4013 | jest-util: 29.7.0 4014 | jest-validate: 29.7.0 4015 | resolve: 1.22.8 4016 | resolve.exports: 2.0.2 4017 | slash: 3.0.0 4018 | dev: true 4019 | 4020 | /jest-runner@29.7.0: 4021 | resolution: 4022 | { 4023 | integrity: sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==, 4024 | } 4025 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4026 | dependencies: 4027 | '@jest/console': 29.7.0 4028 | '@jest/environment': 29.7.0 4029 | '@jest/test-result': 29.7.0 4030 | '@jest/transform': 29.7.0 4031 | '@jest/types': 29.6.3 4032 | '@types/node': 20.10.2 4033 | chalk: 4.1.2 4034 | emittery: 0.13.1 4035 | graceful-fs: 4.2.11 4036 | jest-docblock: 29.7.0 4037 | jest-environment-node: 29.7.0 4038 | jest-haste-map: 29.7.0 4039 | jest-leak-detector: 29.7.0 4040 | jest-message-util: 29.7.0 4041 | jest-resolve: 29.7.0 4042 | jest-runtime: 29.7.0 4043 | jest-util: 29.7.0 4044 | jest-watcher: 29.7.0 4045 | jest-worker: 29.7.0 4046 | p-limit: 3.1.0 4047 | source-map-support: 0.5.13 4048 | transitivePeerDependencies: 4049 | - supports-color 4050 | dev: true 4051 | 4052 | /jest-runtime@29.7.0: 4053 | resolution: 4054 | { 4055 | integrity: sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==, 4056 | } 4057 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4058 | dependencies: 4059 | '@jest/environment': 29.7.0 4060 | '@jest/fake-timers': 29.7.0 4061 | '@jest/globals': 29.7.0 4062 | '@jest/source-map': 29.6.3 4063 | '@jest/test-result': 29.7.0 4064 | '@jest/transform': 29.7.0 4065 | '@jest/types': 29.6.3 4066 | '@types/node': 20.10.2 4067 | chalk: 4.1.2 4068 | cjs-module-lexer: 1.2.3 4069 | collect-v8-coverage: 1.0.2 4070 | glob: 7.2.3 4071 | graceful-fs: 4.2.11 4072 | jest-haste-map: 29.7.0 4073 | jest-message-util: 29.7.0 4074 | jest-mock: 29.7.0 4075 | jest-regex-util: 29.6.3 4076 | jest-resolve: 29.7.0 4077 | jest-snapshot: 29.7.0 4078 | jest-util: 29.7.0 4079 | slash: 3.0.0 4080 | strip-bom: 4.0.0 4081 | transitivePeerDependencies: 4082 | - supports-color 4083 | dev: true 4084 | 4085 | /jest-snapshot@29.7.0: 4086 | resolution: 4087 | { 4088 | integrity: sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==, 4089 | } 4090 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4091 | dependencies: 4092 | '@babel/core': 7.23.5 4093 | '@babel/generator': 7.23.5 4094 | '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.5) 4095 | '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.5) 4096 | '@babel/types': 7.23.5 4097 | '@jest/expect-utils': 29.7.0 4098 | '@jest/transform': 29.7.0 4099 | '@jest/types': 29.6.3 4100 | babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.5) 4101 | chalk: 4.1.2 4102 | expect: 29.7.0 4103 | graceful-fs: 4.2.11 4104 | jest-diff: 29.7.0 4105 | jest-get-type: 29.6.3 4106 | jest-matcher-utils: 29.7.0 4107 | jest-message-util: 29.7.0 4108 | jest-util: 29.7.0 4109 | natural-compare: 1.4.0 4110 | pretty-format: 29.7.0 4111 | semver: 7.5.4 4112 | transitivePeerDependencies: 4113 | - supports-color 4114 | dev: true 4115 | 4116 | /jest-util@29.7.0: 4117 | resolution: 4118 | { 4119 | integrity: sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==, 4120 | } 4121 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4122 | dependencies: 4123 | '@jest/types': 29.6.3 4124 | '@types/node': 20.10.2 4125 | chalk: 4.1.2 4126 | ci-info: 3.9.0 4127 | graceful-fs: 4.2.11 4128 | picomatch: 2.3.1 4129 | dev: true 4130 | 4131 | /jest-validate@29.7.0: 4132 | resolution: 4133 | { 4134 | integrity: sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==, 4135 | } 4136 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4137 | dependencies: 4138 | '@jest/types': 29.6.3 4139 | camelcase: 6.3.0 4140 | chalk: 4.1.2 4141 | jest-get-type: 29.6.3 4142 | leven: 3.1.0 4143 | pretty-format: 29.7.0 4144 | dev: true 4145 | 4146 | /jest-watcher@29.7.0: 4147 | resolution: 4148 | { 4149 | integrity: sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==, 4150 | } 4151 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4152 | dependencies: 4153 | '@jest/test-result': 29.7.0 4154 | '@jest/types': 29.6.3 4155 | '@types/node': 20.10.2 4156 | ansi-escapes: 4.3.2 4157 | chalk: 4.1.2 4158 | emittery: 0.13.1 4159 | jest-util: 29.7.0 4160 | string-length: 4.0.2 4161 | dev: true 4162 | 4163 | /jest-worker@29.7.0: 4164 | resolution: 4165 | { 4166 | integrity: sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==, 4167 | } 4168 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4169 | dependencies: 4170 | '@types/node': 20.10.2 4171 | jest-util: 29.7.0 4172 | merge-stream: 2.0.0 4173 | supports-color: 8.1.1 4174 | dev: true 4175 | 4176 | /jest@29.7.0: 4177 | resolution: 4178 | { 4179 | integrity: sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==, 4180 | } 4181 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4182 | hasBin: true 4183 | peerDependencies: 4184 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 4185 | peerDependenciesMeta: 4186 | node-notifier: 4187 | optional: true 4188 | dependencies: 4189 | '@jest/core': 29.7.0 4190 | '@jest/types': 29.6.3 4191 | import-local: 3.1.0 4192 | jest-cli: 29.7.0 4193 | transitivePeerDependencies: 4194 | - '@types/node' 4195 | - babel-plugin-macros 4196 | - supports-color 4197 | - ts-node 4198 | dev: true 4199 | 4200 | /joycon@3.1.1: 4201 | resolution: 4202 | { 4203 | integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==, 4204 | } 4205 | engines: { node: '>=10' } 4206 | dev: true 4207 | 4208 | /js-tokens@4.0.0: 4209 | resolution: 4210 | { 4211 | integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==, 4212 | } 4213 | 4214 | /js-yaml@3.14.1: 4215 | resolution: 4216 | { 4217 | integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==, 4218 | } 4219 | hasBin: true 4220 | dependencies: 4221 | argparse: 1.0.10 4222 | esprima: 4.0.1 4223 | dev: true 4224 | 4225 | /jsesc@0.5.0: 4226 | resolution: 4227 | { 4228 | integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==, 4229 | } 4230 | hasBin: true 4231 | dev: true 4232 | 4233 | /jsesc@2.5.2: 4234 | resolution: 4235 | { 4236 | integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==, 4237 | } 4238 | engines: { node: '>=4' } 4239 | hasBin: true 4240 | dev: true 4241 | 4242 | /json-parse-even-better-errors@2.3.1: 4243 | resolution: 4244 | { 4245 | integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==, 4246 | } 4247 | dev: true 4248 | 4249 | /json5@2.2.3: 4250 | resolution: 4251 | { 4252 | integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==, 4253 | } 4254 | engines: { node: '>=6' } 4255 | hasBin: true 4256 | dev: true 4257 | 4258 | /kleur@3.0.3: 4259 | resolution: 4260 | { 4261 | integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==, 4262 | } 4263 | engines: { node: '>=6' } 4264 | dev: true 4265 | 4266 | /leven@3.1.0: 4267 | resolution: 4268 | { 4269 | integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==, 4270 | } 4271 | engines: { node: '>=6' } 4272 | dev: true 4273 | 4274 | /lilconfig@3.0.0: 4275 | resolution: 4276 | { 4277 | integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==, 4278 | } 4279 | engines: { node: '>=14' } 4280 | dev: true 4281 | 4282 | /lines-and-columns@1.2.4: 4283 | resolution: 4284 | { 4285 | integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==, 4286 | } 4287 | dev: true 4288 | 4289 | /load-tsconfig@0.2.5: 4290 | resolution: 4291 | { 4292 | integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==, 4293 | } 4294 | engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } 4295 | dev: true 4296 | 4297 | /locate-path@5.0.0: 4298 | resolution: 4299 | { 4300 | integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==, 4301 | } 4302 | engines: { node: '>=8' } 4303 | dependencies: 4304 | p-locate: 4.1.0 4305 | dev: true 4306 | 4307 | /lodash.debounce@4.0.8: 4308 | resolution: 4309 | { 4310 | integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==, 4311 | } 4312 | dev: true 4313 | 4314 | /lodash.sortby@4.7.0: 4315 | resolution: 4316 | { 4317 | integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==, 4318 | } 4319 | dev: true 4320 | 4321 | /loose-envify@1.4.0: 4322 | resolution: 4323 | { 4324 | integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==, 4325 | } 4326 | hasBin: true 4327 | dependencies: 4328 | js-tokens: 4.0.0 4329 | dev: false 4330 | 4331 | /lru-cache@5.1.1: 4332 | resolution: 4333 | { 4334 | integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==, 4335 | } 4336 | dependencies: 4337 | yallist: 3.1.1 4338 | dev: true 4339 | 4340 | /lru-cache@6.0.0: 4341 | resolution: 4342 | { 4343 | integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==, 4344 | } 4345 | engines: { node: '>=10' } 4346 | dependencies: 4347 | yallist: 4.0.0 4348 | dev: true 4349 | 4350 | /make-dir@4.0.0: 4351 | resolution: 4352 | { 4353 | integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==, 4354 | } 4355 | engines: { node: '>=10' } 4356 | dependencies: 4357 | semver: 7.5.4 4358 | dev: true 4359 | 4360 | /makeerror@1.0.12: 4361 | resolution: 4362 | { 4363 | integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==, 4364 | } 4365 | dependencies: 4366 | tmpl: 1.0.5 4367 | dev: true 4368 | 4369 | /merge-stream@2.0.0: 4370 | resolution: 4371 | { 4372 | integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==, 4373 | } 4374 | dev: true 4375 | 4376 | /merge2@1.4.1: 4377 | resolution: 4378 | { 4379 | integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==, 4380 | } 4381 | engines: { node: '>= 8' } 4382 | dev: true 4383 | 4384 | /micromatch@4.0.5: 4385 | resolution: 4386 | { 4387 | integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==, 4388 | } 4389 | engines: { node: '>=8.6' } 4390 | dependencies: 4391 | braces: 3.0.2 4392 | picomatch: 2.3.1 4393 | dev: true 4394 | 4395 | /mimic-fn@2.1.0: 4396 | resolution: 4397 | { 4398 | integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==, 4399 | } 4400 | engines: { node: '>=6' } 4401 | dev: true 4402 | 4403 | /minimatch@3.1.2: 4404 | resolution: 4405 | { 4406 | integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==, 4407 | } 4408 | dependencies: 4409 | brace-expansion: 1.1.11 4410 | dev: true 4411 | 4412 | /ms@2.1.2: 4413 | resolution: 4414 | { 4415 | integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==, 4416 | } 4417 | dev: true 4418 | 4419 | /mz@2.7.0: 4420 | resolution: 4421 | { 4422 | integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==, 4423 | } 4424 | dependencies: 4425 | any-promise: 1.3.0 4426 | object-assign: 4.1.1 4427 | thenify-all: 1.6.0 4428 | dev: true 4429 | 4430 | /natural-compare@1.4.0: 4431 | resolution: 4432 | { 4433 | integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==, 4434 | } 4435 | dev: true 4436 | 4437 | /node-int64@0.4.0: 4438 | resolution: 4439 | { 4440 | integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==, 4441 | } 4442 | dev: true 4443 | 4444 | /node-releases@2.0.14: 4445 | resolution: 4446 | { 4447 | integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==, 4448 | } 4449 | dev: true 4450 | 4451 | /normalize-path@3.0.0: 4452 | resolution: 4453 | { 4454 | integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==, 4455 | } 4456 | engines: { node: '>=0.10.0' } 4457 | dev: true 4458 | 4459 | /npm-run-path@4.0.1: 4460 | resolution: 4461 | { 4462 | integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==, 4463 | } 4464 | engines: { node: '>=8' } 4465 | dependencies: 4466 | path-key: 3.1.1 4467 | dev: true 4468 | 4469 | /object-assign@4.1.1: 4470 | resolution: 4471 | { 4472 | integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==, 4473 | } 4474 | engines: { node: '>=0.10.0' } 4475 | dev: true 4476 | 4477 | /once@1.4.0: 4478 | resolution: 4479 | { 4480 | integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==, 4481 | } 4482 | dependencies: 4483 | wrappy: 1.0.2 4484 | dev: true 4485 | 4486 | /onetime@5.1.2: 4487 | resolution: 4488 | { 4489 | integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==, 4490 | } 4491 | engines: { node: '>=6' } 4492 | dependencies: 4493 | mimic-fn: 2.1.0 4494 | dev: true 4495 | 4496 | /p-limit@2.3.0: 4497 | resolution: 4498 | { 4499 | integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==, 4500 | } 4501 | engines: { node: '>=6' } 4502 | dependencies: 4503 | p-try: 2.2.0 4504 | dev: true 4505 | 4506 | /p-limit@3.1.0: 4507 | resolution: 4508 | { 4509 | integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==, 4510 | } 4511 | engines: { node: '>=10' } 4512 | dependencies: 4513 | yocto-queue: 0.1.0 4514 | dev: true 4515 | 4516 | /p-locate@4.1.0: 4517 | resolution: 4518 | { 4519 | integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==, 4520 | } 4521 | engines: { node: '>=8' } 4522 | dependencies: 4523 | p-limit: 2.3.0 4524 | dev: true 4525 | 4526 | /p-try@2.2.0: 4527 | resolution: 4528 | { 4529 | integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==, 4530 | } 4531 | engines: { node: '>=6' } 4532 | dev: true 4533 | 4534 | /parse-json@5.2.0: 4535 | resolution: 4536 | { 4537 | integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==, 4538 | } 4539 | engines: { node: '>=8' } 4540 | dependencies: 4541 | '@babel/code-frame': 7.23.5 4542 | error-ex: 1.3.2 4543 | json-parse-even-better-errors: 2.3.1 4544 | lines-and-columns: 1.2.4 4545 | dev: true 4546 | 4547 | /path-exists@4.0.0: 4548 | resolution: 4549 | { 4550 | integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==, 4551 | } 4552 | engines: { node: '>=8' } 4553 | dev: true 4554 | 4555 | /path-is-absolute@1.0.1: 4556 | resolution: 4557 | { 4558 | integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==, 4559 | } 4560 | engines: { node: '>=0.10.0' } 4561 | dev: true 4562 | 4563 | /path-key@3.1.1: 4564 | resolution: 4565 | { 4566 | integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==, 4567 | } 4568 | engines: { node: '>=8' } 4569 | dev: true 4570 | 4571 | /path-parse@1.0.7: 4572 | resolution: 4573 | { 4574 | integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==, 4575 | } 4576 | dev: true 4577 | 4578 | /path-type@4.0.0: 4579 | resolution: 4580 | { 4581 | integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==, 4582 | } 4583 | engines: { node: '>=8' } 4584 | dev: true 4585 | 4586 | /picocolors@1.0.0: 4587 | resolution: 4588 | { 4589 | integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==, 4590 | } 4591 | dev: true 4592 | 4593 | /picomatch@2.3.1: 4594 | resolution: 4595 | { 4596 | integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==, 4597 | } 4598 | engines: { node: '>=8.6' } 4599 | dev: true 4600 | 4601 | /pirates@4.0.6: 4602 | resolution: 4603 | { 4604 | integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==, 4605 | } 4606 | engines: { node: '>= 6' } 4607 | dev: true 4608 | 4609 | /pkg-dir@4.2.0: 4610 | resolution: 4611 | { 4612 | integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==, 4613 | } 4614 | engines: { node: '>=8' } 4615 | dependencies: 4616 | find-up: 4.1.0 4617 | dev: true 4618 | 4619 | /postcss-load-config@4.0.2: 4620 | resolution: 4621 | { 4622 | integrity: sha512-bSVhyJGL00wMVoPUzAVAnbEoWyqRxkjv64tUl427SKnPrENtq6hJwUojroMz2VB+Q1edmi4IfrAPpami5VVgMQ==, 4623 | } 4624 | engines: { node: '>= 14' } 4625 | peerDependencies: 4626 | postcss: '>=8.0.9' 4627 | ts-node: '>=9.0.0' 4628 | peerDependenciesMeta: 4629 | postcss: 4630 | optional: true 4631 | ts-node: 4632 | optional: true 4633 | dependencies: 4634 | lilconfig: 3.0.0 4635 | yaml: 2.3.4 4636 | dev: true 4637 | 4638 | /prettier@2.8.8: 4639 | resolution: 4640 | { 4641 | integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==, 4642 | } 4643 | engines: { node: '>=10.13.0' } 4644 | hasBin: true 4645 | dev: true 4646 | 4647 | /pretty-format@29.7.0: 4648 | resolution: 4649 | { 4650 | integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==, 4651 | } 4652 | engines: { node: ^14.15.0 || ^16.10.0 || >=18.0.0 } 4653 | dependencies: 4654 | '@jest/schemas': 29.6.3 4655 | ansi-styles: 5.2.0 4656 | react-is: 18.2.0 4657 | dev: true 4658 | 4659 | /prompts@2.4.2: 4660 | resolution: 4661 | { 4662 | integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==, 4663 | } 4664 | engines: { node: '>= 6' } 4665 | dependencies: 4666 | kleur: 3.0.3 4667 | sisteransi: 1.0.5 4668 | dev: true 4669 | 4670 | /punycode@2.3.1: 4671 | resolution: 4672 | { 4673 | integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==, 4674 | } 4675 | engines: { node: '>=6' } 4676 | dev: true 4677 | 4678 | /pure-rand@6.0.4: 4679 | resolution: 4680 | { 4681 | integrity: sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==, 4682 | } 4683 | dev: true 4684 | 4685 | /queue-microtask@1.2.3: 4686 | resolution: 4687 | { 4688 | integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==, 4689 | } 4690 | dev: true 4691 | 4692 | /react-dom@18.2.0(react@18.2.0): 4693 | resolution: 4694 | { 4695 | integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==, 4696 | } 4697 | peerDependencies: 4698 | react: ^18.2.0 4699 | dependencies: 4700 | loose-envify: 1.4.0 4701 | react: 18.2.0 4702 | scheduler: 0.23.0 4703 | dev: false 4704 | 4705 | /react-is@18.2.0: 4706 | resolution: 4707 | { 4708 | integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==, 4709 | } 4710 | dev: true 4711 | 4712 | /react@18.2.0: 4713 | resolution: 4714 | { 4715 | integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==, 4716 | } 4717 | engines: { node: '>=0.10.0' } 4718 | dependencies: 4719 | loose-envify: 1.4.0 4720 | dev: false 4721 | 4722 | /readdirp@3.6.0: 4723 | resolution: 4724 | { 4725 | integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==, 4726 | } 4727 | engines: { node: '>=8.10.0' } 4728 | dependencies: 4729 | picomatch: 2.3.1 4730 | dev: true 4731 | 4732 | /regenerate-unicode-properties@10.1.1: 4733 | resolution: 4734 | { 4735 | integrity: sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==, 4736 | } 4737 | engines: { node: '>=4' } 4738 | dependencies: 4739 | regenerate: 1.4.2 4740 | dev: true 4741 | 4742 | /regenerate@1.4.2: 4743 | resolution: 4744 | { 4745 | integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==, 4746 | } 4747 | dev: true 4748 | 4749 | /regenerator-runtime@0.14.0: 4750 | resolution: 4751 | { 4752 | integrity: sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==, 4753 | } 4754 | dev: true 4755 | 4756 | /regenerator-transform@0.15.2: 4757 | resolution: 4758 | { 4759 | integrity: sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==, 4760 | } 4761 | dependencies: 4762 | '@babel/runtime': 7.23.5 4763 | dev: true 4764 | 4765 | /regexpu-core@5.3.2: 4766 | resolution: 4767 | { 4768 | integrity: sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==, 4769 | } 4770 | engines: { node: '>=4' } 4771 | dependencies: 4772 | '@babel/regjsgen': 0.8.0 4773 | regenerate: 1.4.2 4774 | regenerate-unicode-properties: 10.1.1 4775 | regjsparser: 0.9.1 4776 | unicode-match-property-ecmascript: 2.0.0 4777 | unicode-match-property-value-ecmascript: 2.1.0 4778 | dev: true 4779 | 4780 | /regjsparser@0.9.1: 4781 | resolution: 4782 | { 4783 | integrity: sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==, 4784 | } 4785 | hasBin: true 4786 | dependencies: 4787 | jsesc: 0.5.0 4788 | dev: true 4789 | 4790 | /require-directory@2.1.1: 4791 | resolution: 4792 | { 4793 | integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==, 4794 | } 4795 | engines: { node: '>=0.10.0' } 4796 | dev: true 4797 | 4798 | /resolve-cwd@3.0.0: 4799 | resolution: 4800 | { 4801 | integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==, 4802 | } 4803 | engines: { node: '>=8' } 4804 | dependencies: 4805 | resolve-from: 5.0.0 4806 | dev: true 4807 | 4808 | /resolve-from@5.0.0: 4809 | resolution: 4810 | { 4811 | integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==, 4812 | } 4813 | engines: { node: '>=8' } 4814 | dev: true 4815 | 4816 | /resolve.exports@2.0.2: 4817 | resolution: 4818 | { 4819 | integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==, 4820 | } 4821 | engines: { node: '>=10' } 4822 | dev: true 4823 | 4824 | /resolve@1.22.8: 4825 | resolution: 4826 | { 4827 | integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==, 4828 | } 4829 | hasBin: true 4830 | dependencies: 4831 | is-core-module: 2.13.1 4832 | path-parse: 1.0.7 4833 | supports-preserve-symlinks-flag: 1.0.0 4834 | dev: true 4835 | 4836 | /reusify@1.0.4: 4837 | resolution: 4838 | { 4839 | integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==, 4840 | } 4841 | engines: { iojs: '>=1.0.0', node: '>=0.10.0' } 4842 | dev: true 4843 | 4844 | /rollup@4.6.1: 4845 | resolution: 4846 | { 4847 | integrity: sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==, 4848 | } 4849 | engines: { node: '>=18.0.0', npm: '>=8.0.0' } 4850 | hasBin: true 4851 | optionalDependencies: 4852 | '@rollup/rollup-android-arm-eabi': 4.6.1 4853 | '@rollup/rollup-android-arm64': 4.6.1 4854 | '@rollup/rollup-darwin-arm64': 4.6.1 4855 | '@rollup/rollup-darwin-x64': 4.6.1 4856 | '@rollup/rollup-linux-arm-gnueabihf': 4.6.1 4857 | '@rollup/rollup-linux-arm64-gnu': 4.6.1 4858 | '@rollup/rollup-linux-arm64-musl': 4.6.1 4859 | '@rollup/rollup-linux-x64-gnu': 4.6.1 4860 | '@rollup/rollup-linux-x64-musl': 4.6.1 4861 | '@rollup/rollup-win32-arm64-msvc': 4.6.1 4862 | '@rollup/rollup-win32-ia32-msvc': 4.6.1 4863 | '@rollup/rollup-win32-x64-msvc': 4.6.1 4864 | fsevents: 2.3.3 4865 | dev: true 4866 | 4867 | /run-parallel@1.2.0: 4868 | resolution: 4869 | { 4870 | integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==, 4871 | } 4872 | dependencies: 4873 | queue-microtask: 1.2.3 4874 | dev: true 4875 | 4876 | /scheduler@0.23.0: 4877 | resolution: 4878 | { 4879 | integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==, 4880 | } 4881 | dependencies: 4882 | loose-envify: 1.4.0 4883 | dev: false 4884 | 4885 | /semver@6.3.1: 4886 | resolution: 4887 | { 4888 | integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==, 4889 | } 4890 | hasBin: true 4891 | dev: true 4892 | 4893 | /semver@7.5.4: 4894 | resolution: 4895 | { 4896 | integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==, 4897 | } 4898 | engines: { node: '>=10' } 4899 | hasBin: true 4900 | dependencies: 4901 | lru-cache: 6.0.0 4902 | dev: true 4903 | 4904 | /shebang-command@2.0.0: 4905 | resolution: 4906 | { 4907 | integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==, 4908 | } 4909 | engines: { node: '>=8' } 4910 | dependencies: 4911 | shebang-regex: 3.0.0 4912 | dev: true 4913 | 4914 | /shebang-regex@3.0.0: 4915 | resolution: 4916 | { 4917 | integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==, 4918 | } 4919 | engines: { node: '>=8' } 4920 | dev: true 4921 | 4922 | /signal-exit@3.0.7: 4923 | resolution: 4924 | { 4925 | integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==, 4926 | } 4927 | dev: true 4928 | 4929 | /sisteransi@1.0.5: 4930 | resolution: 4931 | { 4932 | integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==, 4933 | } 4934 | dev: true 4935 | 4936 | /slash@3.0.0: 4937 | resolution: 4938 | { 4939 | integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==, 4940 | } 4941 | engines: { node: '>=8' } 4942 | dev: true 4943 | 4944 | /source-map-support@0.5.13: 4945 | resolution: 4946 | { 4947 | integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==, 4948 | } 4949 | dependencies: 4950 | buffer-from: 1.1.2 4951 | source-map: 0.6.1 4952 | dev: true 4953 | 4954 | /source-map@0.6.1: 4955 | resolution: 4956 | { 4957 | integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==, 4958 | } 4959 | engines: { node: '>=0.10.0' } 4960 | dev: true 4961 | 4962 | /source-map@0.8.0-beta.0: 4963 | resolution: 4964 | { 4965 | integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==, 4966 | } 4967 | engines: { node: '>= 8' } 4968 | dependencies: 4969 | whatwg-url: 7.1.0 4970 | dev: true 4971 | 4972 | /sprintf-js@1.0.3: 4973 | resolution: 4974 | { 4975 | integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==, 4976 | } 4977 | dev: true 4978 | 4979 | /stack-utils@2.0.6: 4980 | resolution: 4981 | { 4982 | integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==, 4983 | } 4984 | engines: { node: '>=10' } 4985 | dependencies: 4986 | escape-string-regexp: 2.0.0 4987 | dev: true 4988 | 4989 | /string-length@4.0.2: 4990 | resolution: 4991 | { 4992 | integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==, 4993 | } 4994 | engines: { node: '>=10' } 4995 | dependencies: 4996 | char-regex: 1.0.2 4997 | strip-ansi: 6.0.1 4998 | dev: true 4999 | 5000 | /string-width@4.2.3: 5001 | resolution: 5002 | { 5003 | integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==, 5004 | } 5005 | engines: { node: '>=8' } 5006 | dependencies: 5007 | emoji-regex: 8.0.0 5008 | is-fullwidth-code-point: 3.0.0 5009 | strip-ansi: 6.0.1 5010 | dev: true 5011 | 5012 | /strip-ansi@6.0.1: 5013 | resolution: 5014 | { 5015 | integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==, 5016 | } 5017 | engines: { node: '>=8' } 5018 | dependencies: 5019 | ansi-regex: 5.0.1 5020 | dev: true 5021 | 5022 | /strip-bom@4.0.0: 5023 | resolution: 5024 | { 5025 | integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==, 5026 | } 5027 | engines: { node: '>=8' } 5028 | dev: true 5029 | 5030 | /strip-final-newline@2.0.0: 5031 | resolution: 5032 | { 5033 | integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==, 5034 | } 5035 | engines: { node: '>=6' } 5036 | dev: true 5037 | 5038 | /strip-json-comments@3.1.1: 5039 | resolution: 5040 | { 5041 | integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==, 5042 | } 5043 | engines: { node: '>=8' } 5044 | dev: true 5045 | 5046 | /sucrase@3.34.0: 5047 | resolution: 5048 | { 5049 | integrity: sha512-70/LQEZ07TEcxiU2dz51FKaE6hCTWC6vr7FOk3Gr0U60C3shtAN+H+BFr9XlYe5xqf3RA8nrc+VIwzCfnxuXJw==, 5050 | } 5051 | engines: { node: '>=8' } 5052 | hasBin: true 5053 | dependencies: 5054 | '@jridgewell/gen-mapping': 0.3.3 5055 | commander: 4.1.1 5056 | glob: 7.1.6 5057 | lines-and-columns: 1.2.4 5058 | mz: 2.7.0 5059 | pirates: 4.0.6 5060 | ts-interface-checker: 0.1.13 5061 | dev: true 5062 | 5063 | /supports-color@5.5.0: 5064 | resolution: 5065 | { 5066 | integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==, 5067 | } 5068 | engines: { node: '>=4' } 5069 | dependencies: 5070 | has-flag: 3.0.0 5071 | dev: true 5072 | 5073 | /supports-color@7.2.0: 5074 | resolution: 5075 | { 5076 | integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==, 5077 | } 5078 | engines: { node: '>=8' } 5079 | dependencies: 5080 | has-flag: 4.0.0 5081 | dev: true 5082 | 5083 | /supports-color@8.1.1: 5084 | resolution: 5085 | { 5086 | integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==, 5087 | } 5088 | engines: { node: '>=10' } 5089 | dependencies: 5090 | has-flag: 4.0.0 5091 | dev: true 5092 | 5093 | /supports-preserve-symlinks-flag@1.0.0: 5094 | resolution: 5095 | { 5096 | integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==, 5097 | } 5098 | engines: { node: '>= 0.4' } 5099 | dev: true 5100 | 5101 | /test-exclude@6.0.0: 5102 | resolution: 5103 | { 5104 | integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==, 5105 | } 5106 | engines: { node: '>=8' } 5107 | dependencies: 5108 | '@istanbuljs/schema': 0.1.3 5109 | glob: 7.2.3 5110 | minimatch: 3.1.2 5111 | dev: true 5112 | 5113 | /thenify-all@1.6.0: 5114 | resolution: 5115 | { 5116 | integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==, 5117 | } 5118 | engines: { node: '>=0.8' } 5119 | dependencies: 5120 | thenify: 3.3.1 5121 | dev: true 5122 | 5123 | /thenify@3.3.1: 5124 | resolution: 5125 | { 5126 | integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==, 5127 | } 5128 | dependencies: 5129 | any-promise: 1.3.0 5130 | dev: true 5131 | 5132 | /tmpl@1.0.5: 5133 | resolution: 5134 | { 5135 | integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==, 5136 | } 5137 | dev: true 5138 | 5139 | /to-fast-properties@2.0.0: 5140 | resolution: 5141 | { 5142 | integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==, 5143 | } 5144 | engines: { node: '>=4' } 5145 | dev: true 5146 | 5147 | /to-regex-range@5.0.1: 5148 | resolution: 5149 | { 5150 | integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==, 5151 | } 5152 | engines: { node: '>=8.0' } 5153 | dependencies: 5154 | is-number: 7.0.0 5155 | dev: true 5156 | 5157 | /tr46@1.0.1: 5158 | resolution: 5159 | { 5160 | integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==, 5161 | } 5162 | dependencies: 5163 | punycode: 2.3.1 5164 | dev: true 5165 | 5166 | /tree-kill@1.2.2: 5167 | resolution: 5168 | { 5169 | integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==, 5170 | } 5171 | hasBin: true 5172 | dev: true 5173 | 5174 | /ts-interface-checker@0.1.13: 5175 | resolution: 5176 | { 5177 | integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==, 5178 | } 5179 | dev: true 5180 | 5181 | /tsup@8.0.1(typescript@4.9.5): 5182 | resolution: 5183 | { 5184 | integrity: sha512-hvW7gUSG96j53ZTSlT4j/KL0q1Q2l6TqGBFc6/mu/L46IoNWqLLUzLRLP1R8Q7xrJTmkDxxDoojV5uCVs1sVOg==, 5185 | } 5186 | engines: { node: '>=18' } 5187 | hasBin: true 5188 | peerDependencies: 5189 | '@microsoft/api-extractor': ^7.36.0 5190 | '@swc/core': ^1 5191 | postcss: ^8.4.12 5192 | typescript: '>=4.5.0' 5193 | peerDependenciesMeta: 5194 | '@microsoft/api-extractor': 5195 | optional: true 5196 | '@swc/core': 5197 | optional: true 5198 | postcss: 5199 | optional: true 5200 | typescript: 5201 | optional: true 5202 | dependencies: 5203 | bundle-require: 4.0.2(esbuild@0.19.8) 5204 | cac: 6.7.14 5205 | chokidar: 3.5.3 5206 | debug: 4.3.4 5207 | esbuild: 0.19.8 5208 | execa: 5.1.1 5209 | globby: 11.1.0 5210 | joycon: 3.1.1 5211 | postcss-load-config: 4.0.2 5212 | resolve-from: 5.0.0 5213 | rollup: 4.6.1 5214 | source-map: 0.8.0-beta.0 5215 | sucrase: 3.34.0 5216 | tree-kill: 1.2.2 5217 | typescript: 4.9.5 5218 | transitivePeerDependencies: 5219 | - supports-color 5220 | - ts-node 5221 | dev: true 5222 | 5223 | /type-detect@4.0.8: 5224 | resolution: 5225 | { 5226 | integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==, 5227 | } 5228 | engines: { node: '>=4' } 5229 | dev: true 5230 | 5231 | /type-fest@0.21.3: 5232 | resolution: 5233 | { 5234 | integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==, 5235 | } 5236 | engines: { node: '>=10' } 5237 | dev: true 5238 | 5239 | /typescript@4.9.5: 5240 | resolution: 5241 | { 5242 | integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==, 5243 | } 5244 | engines: { node: '>=4.2.0' } 5245 | hasBin: true 5246 | dev: true 5247 | 5248 | /undici-types@5.26.5: 5249 | resolution: 5250 | { 5251 | integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==, 5252 | } 5253 | dev: true 5254 | 5255 | /unicode-canonical-property-names-ecmascript@2.0.0: 5256 | resolution: 5257 | { 5258 | integrity: sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==, 5259 | } 5260 | engines: { node: '>=4' } 5261 | dev: true 5262 | 5263 | /unicode-match-property-ecmascript@2.0.0: 5264 | resolution: 5265 | { 5266 | integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==, 5267 | } 5268 | engines: { node: '>=4' } 5269 | dependencies: 5270 | unicode-canonical-property-names-ecmascript: 2.0.0 5271 | unicode-property-aliases-ecmascript: 2.1.0 5272 | dev: true 5273 | 5274 | /unicode-match-property-value-ecmascript@2.1.0: 5275 | resolution: 5276 | { 5277 | integrity: sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==, 5278 | } 5279 | engines: { node: '>=4' } 5280 | dev: true 5281 | 5282 | /unicode-property-aliases-ecmascript@2.1.0: 5283 | resolution: 5284 | { 5285 | integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==, 5286 | } 5287 | engines: { node: '>=4' } 5288 | dev: true 5289 | 5290 | /update-browserslist-db@1.0.13(browserslist@4.22.2): 5291 | resolution: 5292 | { 5293 | integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==, 5294 | } 5295 | hasBin: true 5296 | peerDependencies: 5297 | browserslist: '>= 4.21.0' 5298 | dependencies: 5299 | browserslist: 4.22.2 5300 | escalade: 3.1.1 5301 | picocolors: 1.0.0 5302 | dev: true 5303 | 5304 | /v8-to-istanbul@9.2.0: 5305 | resolution: 5306 | { 5307 | integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==, 5308 | } 5309 | engines: { node: '>=10.12.0' } 5310 | dependencies: 5311 | '@jridgewell/trace-mapping': 0.3.20 5312 | '@types/istanbul-lib-coverage': 2.0.6 5313 | convert-source-map: 2.0.0 5314 | dev: true 5315 | 5316 | /walker@1.0.8: 5317 | resolution: 5318 | { 5319 | integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==, 5320 | } 5321 | dependencies: 5322 | makeerror: 1.0.12 5323 | dev: true 5324 | 5325 | /webidl-conversions@4.0.2: 5326 | resolution: 5327 | { 5328 | integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==, 5329 | } 5330 | dev: true 5331 | 5332 | /whatwg-url@7.1.0: 5333 | resolution: 5334 | { 5335 | integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==, 5336 | } 5337 | dependencies: 5338 | lodash.sortby: 4.7.0 5339 | tr46: 1.0.1 5340 | webidl-conversions: 4.0.2 5341 | dev: true 5342 | 5343 | /which@2.0.2: 5344 | resolution: 5345 | { 5346 | integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==, 5347 | } 5348 | engines: { node: '>= 8' } 5349 | hasBin: true 5350 | dependencies: 5351 | isexe: 2.0.0 5352 | dev: true 5353 | 5354 | /wrap-ansi@7.0.0: 5355 | resolution: 5356 | { 5357 | integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==, 5358 | } 5359 | engines: { node: '>=10' } 5360 | dependencies: 5361 | ansi-styles: 4.3.0 5362 | string-width: 4.2.3 5363 | strip-ansi: 6.0.1 5364 | dev: true 5365 | 5366 | /wrappy@1.0.2: 5367 | resolution: 5368 | { 5369 | integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==, 5370 | } 5371 | dev: true 5372 | 5373 | /write-file-atomic@4.0.2: 5374 | resolution: 5375 | { 5376 | integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==, 5377 | } 5378 | engines: { node: ^12.13.0 || ^14.15.0 || >=16.0.0 } 5379 | dependencies: 5380 | imurmurhash: 0.1.4 5381 | signal-exit: 3.0.7 5382 | dev: true 5383 | 5384 | /y18n@5.0.8: 5385 | resolution: 5386 | { 5387 | integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==, 5388 | } 5389 | engines: { node: '>=10' } 5390 | dev: true 5391 | 5392 | /yallist@3.1.1: 5393 | resolution: 5394 | { 5395 | integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==, 5396 | } 5397 | dev: true 5398 | 5399 | /yallist@4.0.0: 5400 | resolution: 5401 | { 5402 | integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==, 5403 | } 5404 | dev: true 5405 | 5406 | /yaml@2.3.4: 5407 | resolution: 5408 | { 5409 | integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==, 5410 | } 5411 | engines: { node: '>= 14' } 5412 | dev: true 5413 | 5414 | /yargs-parser@21.1.1: 5415 | resolution: 5416 | { 5417 | integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==, 5418 | } 5419 | engines: { node: '>=12' } 5420 | dev: true 5421 | 5422 | /yargs@17.7.2: 5423 | resolution: 5424 | { 5425 | integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==, 5426 | } 5427 | engines: { node: '>=12' } 5428 | dependencies: 5429 | cliui: 8.0.1 5430 | escalade: 3.1.1 5431 | get-caller-file: 2.0.5 5432 | require-directory: 2.1.1 5433 | string-width: 4.2.3 5434 | y18n: 5.0.8 5435 | yargs-parser: 21.1.1 5436 | dev: true 5437 | 5438 | /yocto-queue@0.1.0: 5439 | resolution: 5440 | { 5441 | integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==, 5442 | } 5443 | engines: { node: '>=10' } 5444 | dev: true 5445 | --------------------------------------------------------------------------------