├── pnpm-workspace.yaml ├── .gitignore ├── .prettierrc.yaml ├── vitest.workspace.ts ├── vitest.config.ts ├── packages ├── error │ ├── pnpm-lock.yaml │ ├── CHANGELOG.md │ ├── package.json │ └── src │ │ └── index.ts ├── resource │ ├── pnpm-lock.yaml │ ├── CHANGELOG.md │ ├── src │ │ ├── config.ts │ │ └── index.ts │ └── package.json ├── example │ ├── vite.config.ts │ ├── CHANGELOG.md │ ├── index.html │ ├── package.json │ ├── src │ │ └── index.ts │ ├── public │ │ └── index.min.js │ └── pnpm-lock.yaml ├── shared │ ├── CHANGELOG.md │ ├── __tests__ │ │ └── shared.spec.ts │ ├── src │ │ └── index.ts │ └── package.json └── core │ ├── pnpm-lock.yaml │ ├── CHANGELOG.md │ ├── package.json │ ├── src │ └── index.ts │ └── README.md ├── .changeset ├── config.json └── README.md ├── tsconfig.json ├── scripts ├── release.js ├── build.js └── common.js ├── .eslintrc.json ├── rollup.config.js ├── package.json ├── README.md └── pnpm-lock.yaml /pnpm-workspace.yaml: -------------------------------------------------------------------------------- 1 | packages: 2 | - packages/* -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | dist/ 3 | test/ 4 | .turbo 5 | .idea -------------------------------------------------------------------------------- /.prettierrc.yaml: -------------------------------------------------------------------------------- 1 | trailingComma: es5 2 | tabWidth: 2 3 | semi: false 4 | singleQuote: true 5 | -------------------------------------------------------------------------------- /vitest.workspace.ts: -------------------------------------------------------------------------------- 1 | import { defineWorkspace } from 'vitest/config' 2 | 3 | export default defineWorkspace([ 4 | 'packages/*', 5 | ]) -------------------------------------------------------------------------------- /vitest.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vitest/config' 2 | 3 | export default defineConfig({ 4 | test: { 5 | include: ['packages/**/__tests__/*'], 6 | exclude: [], 7 | }, 8 | }) -------------------------------------------------------------------------------- /packages/error/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@web-resource-monitor/shared': 12 | specifier: workspace:^ 13 | version: link:../shared 14 | -------------------------------------------------------------------------------- /packages/resource/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@web-resource-monitor/shared': 12 | specifier: workspace:^ 13 | version: link:../shared 14 | -------------------------------------------------------------------------------- /.changeset/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "https://unpkg.com/@changesets/config@3.0.2/schema.json", 3 | "changelog": "@changesets/cli/changelog", 4 | "commit": false, 5 | "fixed": [], 6 | "linked": [], 7 | "access": "public", 8 | "baseBranch": "main", 9 | "updateInternalDependencies": "patch", 10 | "ignore": [] 11 | } 12 | -------------------------------------------------------------------------------- /packages/example/vite.config.ts: -------------------------------------------------------------------------------- 1 | import { defineConfig } from 'vite' 2 | 3 | export default defineConfig({ 4 | resolve: { 5 | alias: [ 6 | { find: /^@web-resource-monitor\/(.*)/, replacement: '@web-resource-monitor/$1/src/index.ts' }, 7 | ] 8 | }, 9 | server: { 10 | host: true, 11 | port: 8080, 12 | cors: true, 13 | } 14 | }) 15 | -------------------------------------------------------------------------------- /packages/shared/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @web-resource-monitor/shared 2 | 3 | ## 1.3.0 4 | 5 | ### Minor Changes 6 | 7 | - feat: resource use getResourceConfigDefault get default 8 | 9 | ## 1.2.2 10 | 11 | ### Patch Changes 12 | 13 | - fix resource repeated capture 14 | 15 | ## 1.2.1 16 | 17 | ### Patch Changes 18 | 19 | - 更新 readme 20 | 21 | ## 1.2.0 22 | 23 | ### Minor Changes 24 | 25 | - feat: add error report 26 | -------------------------------------------------------------------------------- /packages/core/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@web-resource-monitor/error': 12 | specifier: workspace:^ 13 | version: link:../error 14 | '@web-resource-monitor/resource': 15 | specifier: workspace:^ 16 | version: link:../resource 17 | -------------------------------------------------------------------------------- /packages/shared/__tests__/shared.spec.ts: -------------------------------------------------------------------------------- 1 | import { createListener } from '../src' 2 | 3 | import { describe, it, expect } from 'vitest' 4 | 5 | describe('utils', () => { 6 | it('listener function', () => { 7 | const listener = createListener() 8 | let data = 0 9 | const input = 4 10 | listener.on('data', (value: number) => { 11 | data = value 12 | }) 13 | listener.emit('data', input) 14 | expect(data).toEqual(input) 15 | }) 16 | }) -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ESNext", 4 | "module": "ESNext", 5 | "moduleResolution": "Node", 6 | "strict": true, 7 | "esModuleInterop": true, 8 | "allowJs": true, 9 | "baseUrl": ".", 10 | "paths": { 11 | "@web-resource-monitor/*": ["packages/*/src"] 12 | } 13 | }, 14 | "include": ["packages/**/*"], 15 | "exclude": ["node_modules", "packages/example/**/*"], 16 | "ts-node": { 17 | "esm": true 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /.changeset/README.md: -------------------------------------------------------------------------------- 1 | # Changesets 2 | 3 | Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works 4 | with multi-package repos, or single-package repos to help you version and publish your code. You can 5 | find the full documentation for it [in our repository](https://github.com/changesets/changesets) 6 | 7 | We have a quick list of common questions to get you started engaging with this project in 8 | [our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) 9 | -------------------------------------------------------------------------------- /scripts/release.js: -------------------------------------------------------------------------------- 1 | import { spawn } from 'child_process' 2 | import { compile, selectPackage } from './common.js' 3 | 4 | async function main() { 5 | const selected = await selectPackage() 6 | compile(selected, ()=>{ 7 | const cmd = process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm' 8 | spawn( 9 | cmd, 10 | [ 11 | 'publish', 12 | '--no-git-checks' 13 | ], 14 | { 15 | cwd: `packages/${selected}`, 16 | stdio: [0, 1, 2], 17 | } 18 | ) 19 | }) 20 | } 21 | 22 | main() 23 | -------------------------------------------------------------------------------- /packages/shared/src/index.ts: -------------------------------------------------------------------------------- 1 | export function createListener() { 2 | const depends = new Map() 3 | const listener = { 4 | on(key: string, cb: (...arg: any[])=> void) { 5 | if (cb === depends.get(key)) { 6 | return 7 | } 8 | depends.set(key, cb) 9 | }, 10 | emit(key: string, ...arg: any[]) { 11 | const cb = depends.get(key) 12 | cb?.(...arg) 13 | }, 14 | off(key: string) { 15 | depends.delete(key) 16 | }, 17 | destroy() { 18 | depends.clear() 19 | } 20 | } 21 | return listener 22 | } -------------------------------------------------------------------------------- /packages/example/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @web-resource-monitor/example 2 | 3 | ## 1.3.0 4 | 5 | ### Minor Changes 6 | 7 | - feat: resource use getResourceConfigDefault get default 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - web-resource-monitor@1.3.0 13 | 14 | ## 1.2.2 15 | 16 | ### Patch Changes 17 | 18 | - fix resource repeated capture 19 | - Updated dependencies 20 | - web-resource-monitor@1.2.2 21 | 22 | ## 1.2.1 23 | 24 | ### Patch Changes 25 | 26 | - 更新 readme 27 | - Updated dependencies 28 | - web-resource-monitor@1.2.1 29 | 30 | ## 1.2.0 31 | 32 | ### Minor Changes 33 | 34 | - feat: add error report 35 | -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "env": { 4 | "browser": true, 5 | "node": true, 6 | "es2021": true 7 | }, 8 | "parser": "@typescript-eslint/parser", 9 | "extends": [ 10 | "eslint:recommended", 11 | "plugin:@typescript-eslint/recommended" 12 | ], 13 | "parserOptions": { 14 | "ecmaVersion": "latest", 15 | "parser": "@typescript-eslint/parser", 16 | "sourceType": "module" 17 | }, 18 | "plugins": ["@typescript-eslint"], 19 | "rules": { 20 | "no-empty": 0, 21 | "@typescript-eslint/no-explicit-any": 0, 22 | "@typescript-eslint/no-empty-interface": 0, 23 | "@typescript-eslint/no-empty-function": 0, 24 | "no-async-promise-executor": 0, 25 | "no-non-null-assertion": 0 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /packages/error/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @web-resource-monitor/error 2 | 3 | ## 1.3.0 4 | 5 | ### Minor Changes 6 | 7 | - feat: resource use getResourceConfigDefault get default 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @web-resource-monitor/shared@1.3.0 13 | 14 | ## 1.2.2 15 | 16 | ### Patch Changes 17 | 18 | - fix resource repeated capture 19 | - Updated dependencies 20 | - @web-resource-monitor/shared@1.2.2 21 | 22 | ## 1.2.1 23 | 24 | ### Patch Changes 25 | 26 | - 更新 readme 27 | - Updated dependencies 28 | - @web-resource-monitor/shared@1.2.1 29 | 30 | ## 1.2.0 31 | 32 | ### Minor Changes 33 | 34 | - feat: add error report 35 | 36 | ### Patch Changes 37 | 38 | - Updated dependencies 39 | - @web-resource-monitor/shared@1.2.0 40 | -------------------------------------------------------------------------------- /packages/resource/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # @web-resource-monitor/resource 2 | 3 | ## 1.3.0 4 | 5 | ### Minor Changes 6 | 7 | - feat: resource use getResourceConfigDefault get default 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @web-resource-monitor/shared@1.3.0 13 | 14 | ## 1.2.2 15 | 16 | ### Patch Changes 17 | 18 | - fix resource repeated capture 19 | - Updated dependencies 20 | - @web-resource-monitor/shared@1.2.2 21 | 22 | ## 1.2.1 23 | 24 | ### Patch Changes 25 | 26 | - 更新 readme 27 | - Updated dependencies 28 | - @web-resource-monitor/shared@1.2.1 29 | 30 | ## 1.2.0 31 | 32 | ### Minor Changes 33 | 34 | - feat: add error report 35 | 36 | ### Patch Changes 37 | 38 | - Updated dependencies 39 | - @web-resource-monitor/shared@1.2.0 40 | -------------------------------------------------------------------------------- /packages/resource/src/config.ts: -------------------------------------------------------------------------------- 1 | const audio = ['wav', 'mp3', 'wma', 'midi', 'acc', 'cda', 'ape', 'ra'] 2 | const video = ['mp4', 'mpeg', 'avi', '3gp', 'rm', 'wmv', 'flv', 'bd', 'mkv'] 3 | const img = ['jpg', 'jpeg', 'png', 'gif', 'bmp', 'tiff', 'webp'] 4 | const css = ['css', 'ttf'] 5 | const script = ['js', 'vue', 'ts'] 6 | 7 | export const fileMatcherDefault: Record = { 8 | audio, 9 | video, 10 | img, 11 | css, 12 | script 13 | } 14 | 15 | // The duration of loading each resource 16 | export interface ResourceTimeoutConfig { 17 | [index: string]: number 18 | } 19 | 20 | export const resourceTimeoutConfigDefault: ResourceTimeoutConfig = { 21 | script: 100, 22 | css: 100, 23 | xmlhttprequest: 200, 24 | fetch: 200, 25 | audio: 5000, 26 | video: 10000, 27 | img: 500, 28 | } -------------------------------------------------------------------------------- /packages/example/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 |

打开控制台,查看错误测试

11 |

Open the console to view error tests

12 |
13 | 27 | 28 | -------------------------------------------------------------------------------- /packages/shared/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@web-resource-monitor/shared", 3 | "main": "./dist/index.js", 4 | "description": "Web resource loading monitoring, callback, reporting, etc, 前端监控资源加载上报", 5 | "version": "1.3.0", 6 | "exports": { 7 | ".": { 8 | "types": "./dist/index.d.ts", 9 | "require": "./dist/index.js", 10 | "import": "./dist/index.esm.js" 11 | }, 12 | "./min": { 13 | "require": "./dist/index.min.js" 14 | }, 15 | "./*": { 16 | "import": "./*" 17 | } 18 | }, 19 | "bugs": { 20 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 21 | }, 22 | "repository": { 23 | "type": "git", 24 | "url": "git+http://github.com/zhuyue6/web-resource-monitor.git" 25 | }, 26 | "files": [ 27 | "dist", 28 | "package.json", 29 | "README.md" 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /packages/error/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@web-resource-monitor/error", 3 | "main": "./dist/index.js", 4 | "description": "Web resource loading monitoring, callback, reporting, etc, 前端监控资源加载上报", 5 | "version": "1.3.0", 6 | "exports": { 7 | ".": { 8 | "types": "./dist/index.d.ts", 9 | "require": "./dist/index.js", 10 | "import": "./dist/index.esm.js" 11 | }, 12 | "./min": "./dist/index.min.js", 13 | "./*": { 14 | "import": "./*" 15 | } 16 | }, 17 | "bugs": { 18 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 19 | }, 20 | "repository": { 21 | "type": "git", 22 | "url": "git+http://github.com/zhuyue6/web-resource-monitor.git" 23 | }, 24 | "files": [ 25 | "dist", 26 | "package.json", 27 | "README.md" 28 | ], 29 | "dependencies": { 30 | "@web-resource-monitor/shared": "workspace:^" 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /packages/core/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # web-resource-monitor 2 | 3 | ## 1.3.0 4 | 5 | ### Minor Changes 6 | 7 | - feat: resource use getResourceConfigDefault get default 8 | 9 | ### Patch Changes 10 | 11 | - Updated dependencies 12 | - @web-resource-monitor/resource@1.3.0 13 | - @web-resource-monitor/error@1.3.0 14 | 15 | ## 1.2.2 16 | 17 | ### Patch Changes 18 | 19 | - fix resource repeated capture 20 | - Updated dependencies 21 | - @web-resource-monitor/resource@1.2.2 22 | - @web-resource-monitor/error@1.2.2 23 | 24 | ## 1.2.1 25 | 26 | ### Patch Changes 27 | 28 | - 更新 readme 29 | - Updated dependencies 30 | - @web-resource-monitor/error@1.2.1 31 | - @web-resource-monitor/resource@1.2.1 32 | 33 | ## 1.2.0 34 | 35 | ### Minor Changes 36 | 37 | - feat: add error report 38 | 39 | ### Patch Changes 40 | 41 | - Updated dependencies 42 | - @web-resource-monitor/error@1.2.0 43 | - @web-resource-monitor/resource@1.2.0 44 | -------------------------------------------------------------------------------- /packages/resource/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@web-resource-monitor/resource", 3 | "main": "./dist/index.js", 4 | "description": "Web resource loading monitoring, callback, reporting, etc, 前端监控资源加载上报", 5 | "version": "1.3.0", 6 | "exports": { 7 | ".": { 8 | "types": "./dist/index.d.ts", 9 | "require": "./dist/index.js", 10 | "import": "./dist/index.esm.js" 11 | }, 12 | "./min": { 13 | "require": "./dist/index.min.js" 14 | }, 15 | "./*": { 16 | "import": "./*" 17 | } 18 | }, 19 | "bugs": { 20 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 21 | }, 22 | "repository": { 23 | "type": "git", 24 | "url": "git+http://github.com/zhuyue6/web-resource-monitor.git" 25 | }, 26 | "files": [ 27 | "dist", 28 | "package.json", 29 | "README.md" 30 | ], 31 | "dependencies": { 32 | "@web-resource-monitor/shared": "workspace:^" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /scripts/build.js: -------------------------------------------------------------------------------- 1 | import { compile, selectPackage, filterPrivatePackages } from './common.js' 2 | import { readdirSync } from 'node:fs' 3 | import chalk from 'chalk' 4 | 5 | async function main() { 6 | if (process.argv[2] !== 'all') { 7 | return compile(process.argv[2]) 8 | } 9 | 10 | let selected = null 11 | let packageDirs = readdirSync('packages') 12 | packageDirs = filterPrivatePackages(packageDirs) 13 | 14 | if (process.argv[2] !== 'all') { 15 | selected = await selectPackage() 16 | } else { 17 | selected = 'all' 18 | } 19 | 20 | const beginTime = new Date() 21 | console.log(chalk.green('begin building')) 22 | 23 | if (selected === 'all') { 24 | for (let packageDir of packageDirs) { 25 | await compile(packageDir) 26 | } 27 | } else { 28 | await compile(selected) 29 | } 30 | 31 | const endTime = new Date() 32 | console.log(chalk.green(`build finish! ${endTime.getTime() - beginTime.getTime()} ms`)) 33 | } 34 | 35 | main() 36 | -------------------------------------------------------------------------------- /packages/core/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "web-resource-monitor", 3 | "main": "./dist/index.js", 4 | "description": "Web resource loading monitoring, callback, reporting, etc, 前端监控资源加载上报", 5 | "version": "1.3.0", 6 | "author": "zhuyue", 7 | "license": "ISC", 8 | "exports": { 9 | ".": { 10 | "types": "./dist/index.d.ts", 11 | "require": "./dist/index.js", 12 | "import": "./dist/index.esm.js" 13 | }, 14 | "./min": { 15 | "require": "./dist/index.min.js" 16 | }, 17 | "./*": { 18 | "import": "./*" 19 | } 20 | }, 21 | "repository": "http://github.com/zhuyue6/web-resource-monitor.git", 22 | "bugs": { 23 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 24 | }, 25 | "files": [ 26 | "dist", 27 | "package.json", 28 | "README.md" 29 | ], 30 | "dependencies": { 31 | "@web-resource-monitor/error": "workspace:^", 32 | "@web-resource-monitor/resource": "workspace:^" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /packages/example/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@web-resource-monitor/example", 3 | "main": "./dist/index.js", 4 | "description": "example for Web resource loading monitoring", 5 | "version": "1.3.0", 6 | "scripts": { 7 | "start": "vite" 8 | }, 9 | "type": "module", 10 | "exports": { 11 | ".": { 12 | "types": "./dist/index.d.ts", 13 | "require": "./dist/index.js", 14 | "import": "./dist/index.esm.js" 15 | }, 16 | "./min": { 17 | "require": "./dist/index.min.js" 18 | }, 19 | "./src": { 20 | "import": "./src/index.ts" 21 | } 22 | }, 23 | "bugs": { 24 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 25 | }, 26 | "repository": { 27 | "type": "git", 28 | "url": "git+http://github.com/zhuyue6/web-resource-monitor.git" 29 | }, 30 | "files": [ 31 | "dist", 32 | "package.json", 33 | "README.md" 34 | ], 35 | "devDependencies": { 36 | "vite": "^5.3.5" 37 | }, 38 | "dependencies": { 39 | "web-resource-monitor": "workspace:^" 40 | }, 41 | "private": true 42 | } 43 | -------------------------------------------------------------------------------- /packages/core/src/index.ts: -------------------------------------------------------------------------------- 1 | import { createResourceListener, getResourceConfigDefault, type ResourceReportConfig } from '@web-resource-monitor/resource' 2 | import { createErrorListener } from '@web-resource-monitor/error' 3 | export { createResourceListener, createErrorListener, getResourceConfigDefault } 4 | 5 | /** 6 | * @deprecated Please use createResourceListener instead. 7 | */ 8 | const createReport = createResourceListener 9 | 10 | export { createReport } 11 | 12 | interface Monitor { 13 | resourceListener: ReturnType 14 | errorListener: ReturnType 15 | start: ()=>void 16 | destroy: ()=>void 17 | } 18 | 19 | interface CreateMonitorParams { 20 | resourceListenerConfig: ResourceReportConfig 21 | } 22 | 23 | export function createMonitor(params?: CreateMonitorParams) { 24 | let monitor: Monitor | null = { 25 | resourceListener: createResourceListener(params?.resourceListenerConfig), 26 | errorListener: createErrorListener(), 27 | start: () => { 28 | monitor?.resourceListener.start() 29 | monitor?.errorListener.start() 30 | }, 31 | destroy: () => { 32 | monitor?.resourceListener.destroy() 33 | monitor?.errorListener.destroy() 34 | monitor = null 35 | } 36 | } 37 | return monitor 38 | } -------------------------------------------------------------------------------- /packages/example/src/index.ts: -------------------------------------------------------------------------------- 1 | import { createMonitor, getResourceConfigDefault, createResourceListener, createErrorListener } from 'web-resource-monitor/src/index.ts' 2 | 3 | 4 | const {fileMatcherDefault, resourceTimeoutConfigDefault} = getResourceConfigDefault() 5 | const monitor = createMonitor({ 6 | resourceListenerConfig: { 7 | resourceTimeoutConfig: { 8 | ...resourceTimeoutConfigDefault, 9 | lll: 10 10 | }, 11 | fileMatcher: { 12 | ...fileMatcherDefault, 13 | lll: ['js'] 14 | } 15 | } 16 | }) 17 | monitor.start() 18 | 19 | monitor.resourceListener.on('loaded', (a, b)=>{ 20 | console.log(a, b) 21 | }) 22 | 23 | monitor.resourceListener.on('loadedTimeout', (a, b)=>{ 24 | console.log(a, b) 25 | }) 26 | 27 | monitor.errorListener.on('error', (a, b)=>{ 28 | console.log(a, b) 29 | }) 30 | 31 | setTimeout(()=>{ AAA }, 3000) 32 | 33 | const scriptdom = document.createElement('script') 34 | 35 | scriptdom.setAttribute('src', 'http://code.jquery.com/jquery-1.11.0.min.js') 36 | 37 | document.body.appendChild(scriptdom) 38 | 39 | // const resourceListener = createResourceListener() 40 | // resourceListener.start() 41 | // resourceListener.on('loaded', (a, b)=>{ 42 | // console.log(a, b) 43 | // }) 44 | 45 | 46 | // const errorListener = createErrorListener() 47 | // errorListener.start() 48 | // errorListener.on('error', (a, b)=>{ 49 | // console.log(a, b) 50 | // }) 51 | -------------------------------------------------------------------------------- /scripts/common.js: -------------------------------------------------------------------------------- 1 | import { spawn } from 'child_process' 2 | import inquirer from 'inquirer' 3 | import inquirerSearchList from 'inquirer-search-list' 4 | import { readdirSync } from 'node:fs' 5 | import fsExtra from 'fs-extra' 6 | 7 | 8 | export async function compile(name, cb) { 9 | return new Promise((resolve, reject)=>{ 10 | const cmd = process.platform === 'win32' ? 'npx.cmd' : 'npx' 11 | spawn( 12 | cmd, 13 | [ 14 | 'rollup', 15 | '-c', 16 | `./rollup.config.js`, 17 | '--environment', 18 | `PACKAGENAME:${name}`, 19 | ], 20 | { 21 | stdio: [0, 1, 2], 22 | shell: true, 23 | } 24 | ).on('exit', ()=>{ 25 | cb?.() 26 | resolve() 27 | }).on('error', ()=>{ 28 | reject() 29 | }) 30 | }) 31 | } 32 | 33 | inquirer.registerPrompt('search-list', inquirerSearchList) 34 | 35 | export function filterPrivatePackages(packageDirs) { 36 | return packageDirs.filter((packageName) => { 37 | return fsExtra.readJSONSync(`packages/${packageName}/package.json`).private !== true 38 | }) 39 | } 40 | 41 | export async function selectPackage() { 42 | const packageDirs = readdirSync('packages') 43 | const packages = await inquirer.prompt([ 44 | { 45 | type: 'search-list', 46 | name: 'selected', 47 | message: 'select publish package?', 48 | choices: [...packageDirs], 49 | }, 50 | ]) 51 | return packages.selected 52 | } -------------------------------------------------------------------------------- /packages/error/src/index.ts: -------------------------------------------------------------------------------- 1 | import { createListener } from '@web-resource-monitor/shared' 2 | 3 | interface Collection { 4 | url: string, 5 | lineno: number, 6 | colno: number, 7 | message: string 8 | stack: string 9 | browser: string 10 | error: ErrorEvent 11 | } 12 | 13 | interface ErrorListener { 14 | collectionList: Collection[] 15 | start(): void 16 | destroy(): void 17 | on(key: 'error', fn: (...rest: any[]) => void): void 18 | off(key: string): void 19 | emit(key: string, ...arg: any[]): void 20 | } 21 | 22 | function errorCollection(errorListener: ErrorListener, error: ErrorEvent) { 23 | const collect = { 24 | url: error.filename, 25 | lineno: error.lineno, 26 | colno: error.colno, 27 | message: error.message ?? error.error.message, 28 | stack: error.error.stack, 29 | browser: window.navigator.userAgent 30 | } 31 | 32 | errorListener.collectionList.push({ 33 | ...collect, 34 | error 35 | }) 36 | errorListener.emit('error', collect, error) 37 | } 38 | 39 | export function createErrorListener() { 40 | const listener = createListener() 41 | const errorListener: ErrorListener = { 42 | collectionList: [], 43 | on: listener.on, 44 | off: listener.off, 45 | emit: listener.emit, 46 | start: () => {}, 47 | destroy: () => {} 48 | } 49 | 50 | function errorListenerEvent(error: ErrorEvent) { 51 | errorCollection(errorListener, error) 52 | } 53 | 54 | errorListener.start = () => { 55 | window.addEventListener('error', errorListenerEvent) 56 | } 57 | 58 | errorListener.destroy = () => { 59 | window.removeEventListener('error', errorListenerEvent) 60 | } 61 | 62 | return errorListener 63 | } -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | import rollupTypescript from '@rollup/plugin-typescript' 2 | import rollupJson from '@rollup/plugin-json' 3 | import rollupCommonjs from '@rollup/plugin-commonjs' 4 | import rollupTerser from '@rollup/plugin-terser' 5 | import rollupAlias from '@rollup/plugin-alias' 6 | import rollupDts from 'rollup-plugin-dts' 7 | import fs from 'fs-extra' 8 | import { fileURLToPath } from 'node:url' 9 | import path from 'node:path' 10 | import process from 'node:process' 11 | 12 | const __dirname = fileURLToPath(new URL('.', import.meta.url)) 13 | 14 | function getPlugins(dts = false, terser = false) { 15 | const tsconfig = fs.readJSONSync('./tsconfig.json') 16 | const aliasKey = `@web-resource-monitor/${process.env.PACKAGENAME}` 17 | let plugins = [ 18 | rollupCommonjs(), 19 | rollupJson(), 20 | rollupAlias({ 21 | [aliasKey]: path.resolve( 22 | __dirname, 23 | `./packages/${process.env.PACKAGENAME}/src/index.ts`) 24 | }), 25 | rollupTypescript(tsconfig.compilerOptions), 26 | ] 27 | if (terser) { 28 | plugins.push(rollupTerser()) 29 | } 30 | if (dts) { 31 | plugins = [ 32 | rollupDts({ 33 | preserveSymlinks: false 34 | }), 35 | ] 36 | } 37 | 38 | return plugins 39 | } 40 | 41 | const input = `./packages/${process.env.PACKAGENAME}/src/index.ts` 42 | export default [ 43 | { 44 | input, 45 | output: [ 46 | { 47 | file: `./packages/${process.env.PACKAGENAME}/dist/index.esm.js`, 48 | format: 'es', 49 | }, 50 | { 51 | file: `./packages/${process.env.PACKAGENAME}/dist/index.js`, 52 | format: 'cjs', 53 | }, 54 | ], 55 | plugins: getPlugins(), 56 | }, 57 | { 58 | input, 59 | output: [ 60 | { 61 | file: `./packages/${process.env.PACKAGENAME}/dist/index.d.ts`, 62 | format: 'es', 63 | }, 64 | ], 65 | plugins: getPlugins(true), 66 | }, 67 | { 68 | input, 69 | output: [ 70 | { 71 | file: `./packages/${process.env.PACKAGENAME}/dist/index.min.js`, 72 | format: 'umd', 73 | name: 'webResourceMonitor', 74 | }, 75 | ], 76 | plugins: getPlugins(false, true), 77 | }, 78 | ] 79 | -------------------------------------------------------------------------------- /packages/example/public/index.min.js: -------------------------------------------------------------------------------- 1 | !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).webResourceMonitor={})}(this,(function(e){"use strict";const t={audio:["wav","mp3","wma","midi","acc","cda","ape","ra"],video:["mp4","mpeg","avi","3gp","rm","wmv","flv","bd","mkv"],img:["jpg","jpeg","png","gif","bmp","tiff","webp"],css:["css","ttf"],script:["js","vue","ts"]},r={script:100,css:100,xmlhttprequest:200,fetch:200,audio:5e3,video:1e4,img:500};function o(){const e=new Map;return{on(t,r){r!==e.get(t)&&e.set(t,r)},emit(t,...r){const o=e.get(t);o?.(...r)},off(t){e.delete(t)},destroy(){e.clear()}}}function n(e,t,r,o,n="normal"){const i={name:o.name,fileType:t,resourceType:r,initiatorType:o?.initiatorType,duration:o.duration};e.loadedList.push({...i,entry:o}),e.emit("loaded",i,o),"timeout"===n&&(e.loadedTimeoutList.push({...i,entry:o}),e.emit("loadedTimeout",i,o))}function i(e){const i=o(),s={resourceTimeoutConfig:e?.resourceTimeoutConfig??r,fileMatcher:e?.fileMatcher??t,loadedList:[],loadedTimeoutList:[],on:i.on,off:i.off,emit:i.emit,start:()=>{},destroy:()=>{}},c={resource(e){const[t,r]=function(e,t){const r=[],o=/([^\s.])*$/.exec(String(e.name).replace(/\?\S*/,"")),n=o&&o[0];for(const[e,o]of Object.entries(t.fileMatcher))o.includes(n)&&r.push(e);return[n,r]}(e,s);for(const[o,i]of Object.entries(s.resourceTimeoutConfig).reverse())if(r?.includes(o)){const r=e.duration>=i?"timeout":void 0;n(s,t,o,e,r)}}};let u=function(e){return new PerformanceObserver((t=>{for(const r of t.getEntries()){const t=e[r.entryType];t&&t(r)}}))}(c);return s.start=()=>{u?.observe({entryTypes:Object.keys(c)})},s.destroy=()=>{u?.disconnect(),u=null},s}function s(){const e=o(),t={collectionList:[],on:e.on,off:e.off,emit:e.emit,start:()=>{},destroy:()=>{}};function r(e){!function(e,t){const r={url:t.filename,lineno:t.lineno,colno:t.colno,message:t.message??t.error.message,stack:t.error.stack,browser:window.navigator.userAgent};e.collectionList.push({...r,error:t}),e.emit("error",r,t)}(t,e)}return t.start=()=>{window.addEventListener("error",r)},t.destroy=()=>{window.removeEventListener("error",r)},t}const c=i;e.createErrorListener=s,e.createMonitor=function(e){let t={resourceListener:i(e?.resourceListenerConfig),errorListener:s(),start:()=>{t?.resourceListener.start(),t?.errorListener.start()},destroy:()=>{t?.resourceListener.destroy(),t?.errorListener.destroy(),t=null}};return t},e.createReport=c,e.createResourceListener=i,e.getResourceConfigDefault=function(){return{fileMatcherDefault:t,resourceTimeoutConfigDefault:r}}})); 2 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "version": "1.2.1", 3 | "description": "Web resource loading monitoring, callback, reporting, etc, 前端监控资源加载上报", 4 | "packageManager": "pnpm@7.32.0", 5 | "lint-staged": { 6 | "*.{ts,tsx,js,jsx,vue}": [ 7 | "eslint --fix", 8 | "prettier --write" 9 | ], 10 | "*.{yaml,json,css,less,scss}": [ 11 | "prettier --write" 12 | ] 13 | }, 14 | "private": true, 15 | "scripts": { 16 | "prepare": "husky install", 17 | "lint-staged": "lint-staged --quiet", 18 | "changeset": "changeset", 19 | "version-packages": "changeset add && changeset version", 20 | "build": "node scripts/build.js all", 21 | "build:custom": "node scripts/build.js", 22 | "release": "pnpm version-packages && pnpm release:only", 23 | "release:only": "pnpm build && changeset publish", 24 | "start": "pnpm --filter @web-resource-monitor/example start", 25 | "test": "vitest", 26 | "preinstall": "npx only-allow pnpm" 27 | }, 28 | "repository": { 29 | "type": "git", 30 | "url": "git+http://github.com/zhuyue6/web-resource-monitor.git" 31 | }, 32 | "main": "dist/index.js", 33 | "exports": { 34 | ".": { 35 | "import": "./dist/index.esm.js", 36 | "require": "./dist/index.js" 37 | }, 38 | "./min": "./dist/index.min.js", 39 | "./resource": { 40 | "import": "./packages/resource/src/index.ts" 41 | }, 42 | "./error": { 43 | "import": "./packages/error/src/index.ts" 44 | } 45 | }, 46 | "files": [ 47 | "dist" 48 | ], 49 | "author": "zhuyue", 50 | "type": "module", 51 | "license": "ISC", 52 | "bugs": { 53 | "url": "https://github.com/zhuyue6/web-resource-monitor.git/issues" 54 | }, 55 | "devDependencies": { 56 | "@changesets/cli": "^2.27.7", 57 | "@rollup/plugin-alias": "^5.1.0", 58 | "@rollup/plugin-commonjs": "^25.0.3", 59 | "@rollup/plugin-json": "^6.0.0", 60 | "@rollup/plugin-terser": "^0.4.3", 61 | "@rollup/plugin-typescript": "^11.1.2", 62 | "@typescript-eslint/eslint-plugin": "^5.62.0", 63 | "@typescript-eslint/parser": "^5.62.0", 64 | "chalk": "^5.3.0", 65 | "eslint": "^8.45.0", 66 | "fs-extra": "^11.1.1", 67 | "husky": "^8.0.1", 68 | "inquirer": "^9.2.9", 69 | "inquirer-search-list": "^1.2.6", 70 | "lint-staged": "^13.0.3", 71 | "prettier": "^2.7.1", 72 | "rollup": "^3.26.3", 73 | "rollup-plugin-dts": "^5.3.0", 74 | "turbo": "^1.10.12", 75 | "typescript": "^4.9.5", 76 | "vitest": "^2.0.4" 77 | }, 78 | "engines": { 79 | "node": ">=16" 80 | }, 81 | "keywords": [ 82 | "web-resource", 83 | "resource-monitor", 84 | "resource", 85 | "monitor", 86 | "report" 87 | ] 88 | } 89 | -------------------------------------------------------------------------------- /packages/resource/src/index.ts: -------------------------------------------------------------------------------- 1 | import { fileMatcherDefault, resourceTimeoutConfigDefault, type ResourceTimeoutConfig } from './config' 2 | import { createListener } from '@web-resource-monitor/shared' 3 | 4 | function getType( 5 | entry: PerformanceEntry & { 6 | initiatorType?: string 7 | }, 8 | resource: ResourceListener 9 | ) { 10 | const resourceType: string[] = [] 11 | // Judging by the suffix type of the requested resource name 12 | const fileTypes = /([^\s.])*$/.exec(String(entry.name as string).replace(/\?\S*/, '')) 13 | const fileType = fileTypes && fileTypes[0] 14 | 15 | for (const [key, value] of Object.entries(resource.fileMatcher)) { 16 | if (value.includes(fileType as any)) { 17 | resourceType.push(key) 18 | } 19 | } 20 | 21 | return [fileType, resourceType] 22 | } 23 | 24 | export interface ResourceReportConfig { 25 | fileMatcher: typeof fileMatcherDefault 26 | resourceTimeoutConfig: ResourceTimeoutConfig, 27 | } 28 | 29 | interface Collection { 30 | name: string 31 | fileType: string, 32 | resourceType: string 33 | initiatorType?: string 34 | duration: number 35 | entry: PerformanceEntry 36 | } 37 | 38 | interface ResourceListener extends ResourceReportConfig { 39 | loadedList: Collection[] 40 | loadedTimeoutList: Collection[] 41 | start(): void 42 | destroy(): void 43 | on(key: 'loaded' | 'loadedTimeout', fn: (...rest: any[]) => void): void 44 | off(key: string): void 45 | emit(key: string, ...arg: any[]): void 46 | } 47 | 48 | function longReourceCollection(report: ResourceListener, fileType: string, resourceType: string, entry: PerformanceEntry, type='normal') { 49 | const collect = { 50 | name: entry.name, 51 | fileType, 52 | resourceType: resourceType, 53 | initiatorType: (entry as any)?.initiatorType, 54 | duration: entry.duration, 55 | } 56 | 57 | report.loadedList.push({ 58 | ...collect, 59 | entry 60 | }) 61 | report.emit('loaded', collect, entry) 62 | 63 | if (type === 'timeout') { 64 | report.loadedTimeoutList.push({ 65 | ...collect, 66 | entry 67 | }) 68 | report.emit('loadedTimeout', collect, entry) 69 | } 70 | } 71 | 72 | function createPerformanceObserver(observerReactive: {[index: string]: (entry: PerformanceEntry) => void}) { 73 | return new PerformanceObserver( 74 | (list: PerformanceObserverEntryList) => { 75 | for (const entry of list.getEntries()) { 76 | const observerReactiveCb = (observerReactive as any)[entry.entryType] 77 | observerReactiveCb && observerReactiveCb(entry) 78 | } 79 | } 80 | ) 81 | } 82 | 83 | /** 84 | * 85 | * @param cb callback 86 | * @param resourceConfig report config 87 | * @returns ResourceListener 88 | */ 89 | export function createResourceListener(resourceConfig?: ResourceReportConfig) { 90 | const listener = createListener() 91 | const resourceListener: ResourceListener = { 92 | resourceTimeoutConfig: resourceConfig?.resourceTimeoutConfig ?? resourceTimeoutConfigDefault, 93 | fileMatcher: resourceConfig?.fileMatcher ?? fileMatcherDefault, 94 | loadedList: [], 95 | loadedTimeoutList: [], 96 | on: listener.on, 97 | off: listener.off, 98 | emit: listener.emit, 99 | start: () => {}, 100 | destroy: () => {} 101 | } 102 | 103 | const observerReactive = { 104 | resource(entry: PerformanceEntry) { 105 | const [fileType, resourceType] = getType(entry, resourceListener) 106 | for (const [resourceTypeKey, time] of Object.entries(resourceListener.resourceTimeoutConfig).reverse()) { 107 | if (resourceType?.includes(resourceTypeKey)) { 108 | const timeout = entry.duration >= time ? 'timeout' : undefined 109 | longReourceCollection(resourceListener, fileType, resourceTypeKey, entry, timeout) 110 | } 111 | } 112 | }, 113 | } 114 | let observer: null | PerformanceObserver = createPerformanceObserver(observerReactive) 115 | 116 | resourceListener.start = () => { 117 | observer?.observe({ entryTypes: Object.keys(observerReactive) }) 118 | } 119 | resourceListener.destroy = () => { 120 | observer?.disconnect() 121 | observer = null 122 | } 123 | 124 | return resourceListener 125 | } 126 | 127 | /** 128 | * @returns {fileMatcherDefault, resourceTimeoutConfigDefault} 129 | */ 130 | export function getResourceConfigDefault() { 131 | return { 132 | fileMatcherDefault, 133 | resourceTimeoutConfigDefault 134 | } 135 | } -------------------------------------------------------------------------------- /packages/core/README.md: -------------------------------------------------------------------------------- 1 | ## web-resource-monitor 2 | Web resource loading monitoring, callback, reporting, etc. 3 | 前端监控资源加载上报 4 | 5 | If a long resource loading time triggers a callback, you can call HTTP to report the resource file with a long loading time. 6 | 如果资源加载长会触发回调,此时可以调用http上报长加载时长的资源文件 7 | 8 | Bugs or features can be raised here: 9 | 有问题或者扩展功能可以讨论: 10 | 11 | [**github: https://github.com/zhuyue6/web-resource-monitor.git/issues**](https://github.com/zhuyue6/web-resource-monitor.git/issues) 12 | 13 | ## Getting Started 14 | 15 | ### Install 16 | ```shell 17 | npm i web-resource-monitor 18 | ``` 19 | 20 | ### resource type matcher and timeout default 21 | 22 | match type | value 23 | -----|----- 24 | audio | wav mp3 wma midi acc cda ape ra 25 | video | mp4 mpeg avi 3gp rm wmv flv bd mkv 26 | img | jpg jpeg png gif bmp tiff webp 27 | css | css ttf 28 | script | js vue ts 29 | 30 | type | timeout 31 | -----|----- 32 | audio | 5000 33 | video | 10000 34 | img | 500 35 | css | 100 36 | script | 100 37 | 38 | if you want to custom 39 | 40 | ```typescipt 41 | 42 | // get default config 43 | const { 44 | fileMatcherDefault, 45 | resourceTimeoutConfigDefault 46 | } = getResourceConfigDefault() 47 | 48 | // use a new media attr, will replace default, 49 | // if you set fileMatcher: { 50 | // media: ['mp4'], 51 | // video: ['mp4'] 52 | // } 53 | // load aa.mp4 will get twice 54 | 55 | 56 | createResourceListener({ 57 | resourceTimeoutConfig: { 58 | ...resourceTimeoutConfigDefault, 59 | media: 1000 60 | }, 61 | fileMatcher: { 62 | ...fileMatcherDefault, 63 | media: ['mp4', 'mp3', 'jpg'] 64 | } 65 | }) 66 | // reset a script, will replace default 67 | createResourceListener({ 68 | resourceTimeoutConfig: { 69 | script: 1000 70 | }, 71 | fileMatcher: { 72 | script: ['mp4', 'mp3', 'jpg'] 73 | } 74 | }) 75 | ``` 76 | 77 | 78 | ### How to use 79 | 80 | #### ResourceListener 81 | 82 | ```typescript 83 | import { createResourceListener } from 'web-resource-monitor' 84 | import axios from 'axios' 85 | 86 | interface Collection { 87 | name: string 88 | fileType: string, 89 | resourceType: string 90 | initiatorType?: string 91 | duration: number 92 | } 93 | 94 | 95 | const resourceListener = createResourceListener() 96 | resourceListener.start() 97 | 98 | // listen all loaded event 99 | resourceListener.on('loaded', (collect: Collection, entry: PerformanceEntry) => { 100 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 101 | // if you need more attrs, use entry 102 | axios.post('xxxxx', collect) 103 | }) 104 | 105 | // or only listen loadedTimeout event 106 | resourceListener.on('loadedTimeout', (collect: Collection, entry: PerformanceEntry) => { 107 | console.log(collect) 108 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 109 | // if you need more attrs, use entry 110 | axios.post('xxxxx', collect) 111 | }) 112 | 113 | 114 | // destroy listener 115 | resourceListener.destroy() 116 | ``` 117 | 118 | 119 | #### ErrorListener 120 | ```typescript 121 | import { createErrorListener } from 'web-resource-monitor' 122 | 123 | interface Collection { 124 | url: string, 125 | lineno: number, 126 | colno: number, 127 | message: string 128 | stack: string 129 | browser: string 130 | } 131 | const errorListener = createErrorListener() 132 | errorListener.start() 133 | errorListener.on('error', (collect: Collection, error: ErrorEvent) => { 134 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 135 | // if you need more attrs, use error 136 | axios.post('xxxxx', collect) 137 | }) 138 | 139 | // destroy listener 140 | errorListener.destroy() 141 | ``` 142 | 143 | #### both use 144 | ```typescript 145 | import { createMonitor } from 'web-resource-monitor' 146 | 147 | interface CreateMonitorParams { 148 | resourceListenerConfig: ResourceReportConfig 149 | } 150 | const createMonitorParams: CreateMonitorParams | undefined 151 | 152 | const monitor = createMonitor(createMonitorParams) 153 | monitor.start() 154 | 155 | monitor.resourceListener.on('loadedTimeout', (collect: Collection, entry: PerformanceEntry)=>{ 156 | //Same as above 157 | }) 158 | 159 | monitor.errorListener.on('error', (collect: Collection, error: ErrorEvent)=>{ 160 | //Same as above 161 | }) 162 | 163 | // destroy monitor 164 | monitor.destroy() 165 | ``` 166 | 167 | #### umd 168 | use umd and perload can capture more information 169 | ```html 170 | 171 | 172 | 173 | 174 | 184 | 185 | 186 | 187 | ``` 188 | 189 | ## License 190 | 191 | [MIT](https://opensource.org/licenses/MIT) 192 | 193 | Copyright (c) zhuyue 194 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## web-resource-monitor 2 | Web resource loading monitoring, js error listener, callback, reporting, etc. 3 | 前端监控资源加载上报,js错误捕获 4 | 5 | If a long resource loading time triggers a callback, you can call HTTP to report the resource file with a long loading time. 6 | 如果资源加载长会触发回调,此时可以调用http上报长加载时长的资源文件 7 | 8 | Bugs or features can be raised here: 9 | 有问题或者扩展功能可以讨论: 10 | 11 | [**github: https://github.com/zhuyue6/web-resource-monitor.git/issues**](https://github.com/zhuyue6/web-resource-monitor.git/issues) 12 | 13 | ## Getting Started 14 | 15 | ### Install 16 | ```shell 17 | npm i web-resource-monitor 18 | ``` 19 | 20 | ### resource type matcher and timeout default 21 | 22 | match type | value 23 | -----|----- 24 | audio | wav mp3 wma midi acc cda ape ra 25 | video | mp4 mpeg avi 3gp rm wmv flv bd mkv 26 | img | jpg jpeg png gif bmp tiff webp 27 | css | css ttf 28 | script | js vue ts 29 | 30 | type | timeout 31 | -----|----- 32 | audio | 5000 33 | video | 10000 34 | img | 500 35 | css | 100 36 | script | 100 37 | 38 | if you want to custom 39 | 40 | ```typescipt 41 | 42 | // get default config 43 | const { 44 | fileMatcherDefault, 45 | resourceTimeoutConfigDefault 46 | } = getResourceConfigDefault() 47 | 48 | // use a new media attr, will replace default, 49 | // if you set fileMatcher: { 50 | // media: ['mp4'], 51 | // video: ['mp4'] 52 | // } 53 | // load aa.mp4 will get twice 54 | 55 | createResourceListener({ 56 | resourceTimeoutConfig: { 57 | ...resourceTimeoutConfigDefault, 58 | media: 1000 59 | }, 60 | fileMatcher: { 61 | ...fileMatcherDefault, 62 | media: ['mp4', 'mp3', 'jpg'] 63 | } 64 | }) 65 | // reset a script, will replace default 66 | createResourceListener({ 67 | resourceTimeoutConfig: { 68 | script: 1000 69 | }, 70 | fileMatcher: { 71 | script: ['mp4', 'mp3', 'jpg'] 72 | } 73 | }) 74 | ``` 75 | 76 | 77 | ### How to use 78 | 79 | #### ResourceListener 80 | 81 | ```typescript 82 | import { createResourceListener } from 'web-resource-monitor' 83 | import axios from 'axios' 84 | 85 | interface Collection { 86 | name: string 87 | fileType: string, 88 | resourceType: string 89 | initiatorType?: string 90 | duration: number 91 | } 92 | 93 | 94 | const resourceListener = createResourceListener() 95 | resourceListener.start() 96 | 97 | // listen all loaded event 98 | resourceListener.on('loaded', (collect: Collection, entry: PerformanceEntry) => { 99 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 100 | // if you need more attrs, use entry 101 | axios.post('xxxxx', collect) 102 | }) 103 | 104 | // or only listen loadedTimeout event 105 | resourceListener.on('loadedTimeout', (collect: Collection, entry: PerformanceEntry) => { 106 | console.log(collect) 107 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 108 | // if you need more attrs, use entry 109 | axios.post('xxxxx', collect) 110 | }) 111 | 112 | 113 | // destroy listener 114 | resourceListener.destroy() 115 | ``` 116 | 117 | 118 | #### ErrorListener 119 | ```typescript 120 | import { createErrorListener } from 'web-resource-monitor' 121 | 122 | interface Collection { 123 | url: string, 124 | lineno: number, 125 | colno: number, 126 | message: string 127 | stack: string 128 | browser: string 129 | } 130 | const errorListener = createErrorListener() 131 | errorListener.start() 132 | errorListener.on('error', (collect: Collection, error: ErrorEvent) => { 133 | // After sending an HTTP request, the database exists and can be analyzed using a BI chart 134 | // if you need more attrs, use error 135 | axios.post('xxxxx', collect) 136 | }) 137 | 138 | // destroy listener 139 | errorListener.destroy() 140 | ``` 141 | 142 | #### both use 143 | ```typescript 144 | import { createMonitor } from 'web-resource-monitor' 145 | 146 | interface CreateMonitorParams { 147 | resourceListenerConfig: ResourceReportConfig 148 | } 149 | const createMonitorParams: CreateMonitorParams | undefined 150 | 151 | const monitor = createMonitor(createMonitorParams) 152 | monitor.start() 153 | 154 | monitor.resourceListener.on('loadedTimeout', (collect: Collection, entry: PerformanceEntry)=>{ 155 | //Same as above 156 | }) 157 | 158 | monitor.errorListener.on('error', (collect: Collection, error: ErrorEvent)=>{ 159 | //Same as above 160 | }) 161 | 162 | // destroy monitor 163 | monitor.destroy() 164 | ``` 165 | 166 | #### umd 167 | use umd and perload can capture more information 168 | ```html 169 | 170 | 171 | 172 | 173 | 183 | 184 | 185 | 186 | ``` 187 | 188 | ## License 189 | 190 | [MIT](https://opensource.org/licenses/MIT) 191 | 192 | Copyright (c) zhuyue 193 | -------------------------------------------------------------------------------- /packages/example/pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | dependencies: 11 | '@web-resource-monitor/core': 12 | specifier: workspace:^ 13 | version: link:../core 14 | devDependencies: 15 | vite: 16 | specifier: ^5.3.5 17 | version: 5.3.5 18 | 19 | packages: 20 | 21 | '@esbuild/aix-ppc64@0.21.5': 22 | resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} 23 | engines: {node: '>=12'} 24 | cpu: [ppc64] 25 | os: [aix] 26 | 27 | '@esbuild/android-arm64@0.21.5': 28 | resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} 29 | engines: {node: '>=12'} 30 | cpu: [arm64] 31 | os: [android] 32 | 33 | '@esbuild/android-arm@0.21.5': 34 | resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} 35 | engines: {node: '>=12'} 36 | cpu: [arm] 37 | os: [android] 38 | 39 | '@esbuild/android-x64@0.21.5': 40 | resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} 41 | engines: {node: '>=12'} 42 | cpu: [x64] 43 | os: [android] 44 | 45 | '@esbuild/darwin-arm64@0.21.5': 46 | resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} 47 | engines: {node: '>=12'} 48 | cpu: [arm64] 49 | os: [darwin] 50 | 51 | '@esbuild/darwin-x64@0.21.5': 52 | resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} 53 | engines: {node: '>=12'} 54 | cpu: [x64] 55 | os: [darwin] 56 | 57 | '@esbuild/freebsd-arm64@0.21.5': 58 | resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} 59 | engines: {node: '>=12'} 60 | cpu: [arm64] 61 | os: [freebsd] 62 | 63 | '@esbuild/freebsd-x64@0.21.5': 64 | resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} 65 | engines: {node: '>=12'} 66 | cpu: [x64] 67 | os: [freebsd] 68 | 69 | '@esbuild/linux-arm64@0.21.5': 70 | resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} 71 | engines: {node: '>=12'} 72 | cpu: [arm64] 73 | os: [linux] 74 | 75 | '@esbuild/linux-arm@0.21.5': 76 | resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} 77 | engines: {node: '>=12'} 78 | cpu: [arm] 79 | os: [linux] 80 | 81 | '@esbuild/linux-ia32@0.21.5': 82 | resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} 83 | engines: {node: '>=12'} 84 | cpu: [ia32] 85 | os: [linux] 86 | 87 | '@esbuild/linux-loong64@0.21.5': 88 | resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} 89 | engines: {node: '>=12'} 90 | cpu: [loong64] 91 | os: [linux] 92 | 93 | '@esbuild/linux-mips64el@0.21.5': 94 | resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} 95 | engines: {node: '>=12'} 96 | cpu: [mips64el] 97 | os: [linux] 98 | 99 | '@esbuild/linux-ppc64@0.21.5': 100 | resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} 101 | engines: {node: '>=12'} 102 | cpu: [ppc64] 103 | os: [linux] 104 | 105 | '@esbuild/linux-riscv64@0.21.5': 106 | resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} 107 | engines: {node: '>=12'} 108 | cpu: [riscv64] 109 | os: [linux] 110 | 111 | '@esbuild/linux-s390x@0.21.5': 112 | resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} 113 | engines: {node: '>=12'} 114 | cpu: [s390x] 115 | os: [linux] 116 | 117 | '@esbuild/linux-x64@0.21.5': 118 | resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} 119 | engines: {node: '>=12'} 120 | cpu: [x64] 121 | os: [linux] 122 | 123 | '@esbuild/netbsd-x64@0.21.5': 124 | resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} 125 | engines: {node: '>=12'} 126 | cpu: [x64] 127 | os: [netbsd] 128 | 129 | '@esbuild/openbsd-x64@0.21.5': 130 | resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} 131 | engines: {node: '>=12'} 132 | cpu: [x64] 133 | os: [openbsd] 134 | 135 | '@esbuild/sunos-x64@0.21.5': 136 | resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} 137 | engines: {node: '>=12'} 138 | cpu: [x64] 139 | os: [sunos] 140 | 141 | '@esbuild/win32-arm64@0.21.5': 142 | resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} 143 | engines: {node: '>=12'} 144 | cpu: [arm64] 145 | os: [win32] 146 | 147 | '@esbuild/win32-ia32@0.21.5': 148 | resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} 149 | engines: {node: '>=12'} 150 | cpu: [ia32] 151 | os: [win32] 152 | 153 | '@esbuild/win32-x64@0.21.5': 154 | resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} 155 | engines: {node: '>=12'} 156 | cpu: [x64] 157 | os: [win32] 158 | 159 | '@rollup/rollup-android-arm-eabi@4.19.0': 160 | resolution: {integrity: sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==} 161 | cpu: [arm] 162 | os: [android] 163 | 164 | '@rollup/rollup-android-arm64@4.19.0': 165 | resolution: {integrity: sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==} 166 | cpu: [arm64] 167 | os: [android] 168 | 169 | '@rollup/rollup-darwin-arm64@4.19.0': 170 | resolution: {integrity: sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==} 171 | cpu: [arm64] 172 | os: [darwin] 173 | 174 | '@rollup/rollup-darwin-x64@4.19.0': 175 | resolution: {integrity: sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==} 176 | cpu: [x64] 177 | os: [darwin] 178 | 179 | '@rollup/rollup-linux-arm-gnueabihf@4.19.0': 180 | resolution: {integrity: sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==} 181 | cpu: [arm] 182 | os: [linux] 183 | libc: [glibc] 184 | 185 | '@rollup/rollup-linux-arm-musleabihf@4.19.0': 186 | resolution: {integrity: sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==} 187 | cpu: [arm] 188 | os: [linux] 189 | libc: [musl] 190 | 191 | '@rollup/rollup-linux-arm64-gnu@4.19.0': 192 | resolution: {integrity: sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==} 193 | cpu: [arm64] 194 | os: [linux] 195 | libc: [glibc] 196 | 197 | '@rollup/rollup-linux-arm64-musl@4.19.0': 198 | resolution: {integrity: sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==} 199 | cpu: [arm64] 200 | os: [linux] 201 | libc: [musl] 202 | 203 | '@rollup/rollup-linux-powerpc64le-gnu@4.19.0': 204 | resolution: {integrity: sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==} 205 | cpu: [ppc64] 206 | os: [linux] 207 | libc: [glibc] 208 | 209 | '@rollup/rollup-linux-riscv64-gnu@4.19.0': 210 | resolution: {integrity: sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==} 211 | cpu: [riscv64] 212 | os: [linux] 213 | libc: [glibc] 214 | 215 | '@rollup/rollup-linux-s390x-gnu@4.19.0': 216 | resolution: {integrity: sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==} 217 | cpu: [s390x] 218 | os: [linux] 219 | libc: [glibc] 220 | 221 | '@rollup/rollup-linux-x64-gnu@4.19.0': 222 | resolution: {integrity: sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==} 223 | cpu: [x64] 224 | os: [linux] 225 | libc: [glibc] 226 | 227 | '@rollup/rollup-linux-x64-musl@4.19.0': 228 | resolution: {integrity: sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==} 229 | cpu: [x64] 230 | os: [linux] 231 | libc: [musl] 232 | 233 | '@rollup/rollup-win32-arm64-msvc@4.19.0': 234 | resolution: {integrity: sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==} 235 | cpu: [arm64] 236 | os: [win32] 237 | 238 | '@rollup/rollup-win32-ia32-msvc@4.19.0': 239 | resolution: {integrity: sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==} 240 | cpu: [ia32] 241 | os: [win32] 242 | 243 | '@rollup/rollup-win32-x64-msvc@4.19.0': 244 | resolution: {integrity: sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==} 245 | cpu: [x64] 246 | os: [win32] 247 | 248 | '@types/estree@1.0.5': 249 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 250 | 251 | esbuild@0.21.5: 252 | resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} 253 | engines: {node: '>=12'} 254 | hasBin: true 255 | 256 | fsevents@2.3.3: 257 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 258 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 259 | os: [darwin] 260 | 261 | nanoid@3.3.7: 262 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 263 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 264 | hasBin: true 265 | 266 | picocolors@1.0.1: 267 | resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} 268 | 269 | postcss@8.4.40: 270 | resolution: {integrity: sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==} 271 | engines: {node: ^10 || ^12 || >=14} 272 | 273 | rollup@4.19.0: 274 | resolution: {integrity: sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==} 275 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 276 | hasBin: true 277 | 278 | source-map-js@1.2.0: 279 | resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} 280 | engines: {node: '>=0.10.0'} 281 | 282 | vite@5.3.5: 283 | resolution: {integrity: sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==} 284 | engines: {node: ^18.0.0 || >=20.0.0} 285 | hasBin: true 286 | peerDependencies: 287 | '@types/node': ^18.0.0 || >=20.0.0 288 | less: '*' 289 | lightningcss: ^1.21.0 290 | sass: '*' 291 | stylus: '*' 292 | sugarss: '*' 293 | terser: ^5.4.0 294 | peerDependenciesMeta: 295 | '@types/node': 296 | optional: true 297 | less: 298 | optional: true 299 | lightningcss: 300 | optional: true 301 | sass: 302 | optional: true 303 | stylus: 304 | optional: true 305 | sugarss: 306 | optional: true 307 | terser: 308 | optional: true 309 | 310 | snapshots: 311 | 312 | '@esbuild/aix-ppc64@0.21.5': 313 | optional: true 314 | 315 | '@esbuild/android-arm64@0.21.5': 316 | optional: true 317 | 318 | '@esbuild/android-arm@0.21.5': 319 | optional: true 320 | 321 | '@esbuild/android-x64@0.21.5': 322 | optional: true 323 | 324 | '@esbuild/darwin-arm64@0.21.5': 325 | optional: true 326 | 327 | '@esbuild/darwin-x64@0.21.5': 328 | optional: true 329 | 330 | '@esbuild/freebsd-arm64@0.21.5': 331 | optional: true 332 | 333 | '@esbuild/freebsd-x64@0.21.5': 334 | optional: true 335 | 336 | '@esbuild/linux-arm64@0.21.5': 337 | optional: true 338 | 339 | '@esbuild/linux-arm@0.21.5': 340 | optional: true 341 | 342 | '@esbuild/linux-ia32@0.21.5': 343 | optional: true 344 | 345 | '@esbuild/linux-loong64@0.21.5': 346 | optional: true 347 | 348 | '@esbuild/linux-mips64el@0.21.5': 349 | optional: true 350 | 351 | '@esbuild/linux-ppc64@0.21.5': 352 | optional: true 353 | 354 | '@esbuild/linux-riscv64@0.21.5': 355 | optional: true 356 | 357 | '@esbuild/linux-s390x@0.21.5': 358 | optional: true 359 | 360 | '@esbuild/linux-x64@0.21.5': 361 | optional: true 362 | 363 | '@esbuild/netbsd-x64@0.21.5': 364 | optional: true 365 | 366 | '@esbuild/openbsd-x64@0.21.5': 367 | optional: true 368 | 369 | '@esbuild/sunos-x64@0.21.5': 370 | optional: true 371 | 372 | '@esbuild/win32-arm64@0.21.5': 373 | optional: true 374 | 375 | '@esbuild/win32-ia32@0.21.5': 376 | optional: true 377 | 378 | '@esbuild/win32-x64@0.21.5': 379 | optional: true 380 | 381 | '@rollup/rollup-android-arm-eabi@4.19.0': 382 | optional: true 383 | 384 | '@rollup/rollup-android-arm64@4.19.0': 385 | optional: true 386 | 387 | '@rollup/rollup-darwin-arm64@4.19.0': 388 | optional: true 389 | 390 | '@rollup/rollup-darwin-x64@4.19.0': 391 | optional: true 392 | 393 | '@rollup/rollup-linux-arm-gnueabihf@4.19.0': 394 | optional: true 395 | 396 | '@rollup/rollup-linux-arm-musleabihf@4.19.0': 397 | optional: true 398 | 399 | '@rollup/rollup-linux-arm64-gnu@4.19.0': 400 | optional: true 401 | 402 | '@rollup/rollup-linux-arm64-musl@4.19.0': 403 | optional: true 404 | 405 | '@rollup/rollup-linux-powerpc64le-gnu@4.19.0': 406 | optional: true 407 | 408 | '@rollup/rollup-linux-riscv64-gnu@4.19.0': 409 | optional: true 410 | 411 | '@rollup/rollup-linux-s390x-gnu@4.19.0': 412 | optional: true 413 | 414 | '@rollup/rollup-linux-x64-gnu@4.19.0': 415 | optional: true 416 | 417 | '@rollup/rollup-linux-x64-musl@4.19.0': 418 | optional: true 419 | 420 | '@rollup/rollup-win32-arm64-msvc@4.19.0': 421 | optional: true 422 | 423 | '@rollup/rollup-win32-ia32-msvc@4.19.0': 424 | optional: true 425 | 426 | '@rollup/rollup-win32-x64-msvc@4.19.0': 427 | optional: true 428 | 429 | '@types/estree@1.0.5': {} 430 | 431 | esbuild@0.21.5: 432 | optionalDependencies: 433 | '@esbuild/aix-ppc64': 0.21.5 434 | '@esbuild/android-arm': 0.21.5 435 | '@esbuild/android-arm64': 0.21.5 436 | '@esbuild/android-x64': 0.21.5 437 | '@esbuild/darwin-arm64': 0.21.5 438 | '@esbuild/darwin-x64': 0.21.5 439 | '@esbuild/freebsd-arm64': 0.21.5 440 | '@esbuild/freebsd-x64': 0.21.5 441 | '@esbuild/linux-arm': 0.21.5 442 | '@esbuild/linux-arm64': 0.21.5 443 | '@esbuild/linux-ia32': 0.21.5 444 | '@esbuild/linux-loong64': 0.21.5 445 | '@esbuild/linux-mips64el': 0.21.5 446 | '@esbuild/linux-ppc64': 0.21.5 447 | '@esbuild/linux-riscv64': 0.21.5 448 | '@esbuild/linux-s390x': 0.21.5 449 | '@esbuild/linux-x64': 0.21.5 450 | '@esbuild/netbsd-x64': 0.21.5 451 | '@esbuild/openbsd-x64': 0.21.5 452 | '@esbuild/sunos-x64': 0.21.5 453 | '@esbuild/win32-arm64': 0.21.5 454 | '@esbuild/win32-ia32': 0.21.5 455 | '@esbuild/win32-x64': 0.21.5 456 | 457 | fsevents@2.3.3: 458 | optional: true 459 | 460 | nanoid@3.3.7: {} 461 | 462 | picocolors@1.0.1: {} 463 | 464 | postcss@8.4.40: 465 | dependencies: 466 | nanoid: 3.3.7 467 | picocolors: 1.0.1 468 | source-map-js: 1.2.0 469 | 470 | rollup@4.19.0: 471 | dependencies: 472 | '@types/estree': 1.0.5 473 | optionalDependencies: 474 | '@rollup/rollup-android-arm-eabi': 4.19.0 475 | '@rollup/rollup-android-arm64': 4.19.0 476 | '@rollup/rollup-darwin-arm64': 4.19.0 477 | '@rollup/rollup-darwin-x64': 4.19.0 478 | '@rollup/rollup-linux-arm-gnueabihf': 4.19.0 479 | '@rollup/rollup-linux-arm-musleabihf': 4.19.0 480 | '@rollup/rollup-linux-arm64-gnu': 4.19.0 481 | '@rollup/rollup-linux-arm64-musl': 4.19.0 482 | '@rollup/rollup-linux-powerpc64le-gnu': 4.19.0 483 | '@rollup/rollup-linux-riscv64-gnu': 4.19.0 484 | '@rollup/rollup-linux-s390x-gnu': 4.19.0 485 | '@rollup/rollup-linux-x64-gnu': 4.19.0 486 | '@rollup/rollup-linux-x64-musl': 4.19.0 487 | '@rollup/rollup-win32-arm64-msvc': 4.19.0 488 | '@rollup/rollup-win32-ia32-msvc': 4.19.0 489 | '@rollup/rollup-win32-x64-msvc': 4.19.0 490 | fsevents: 2.3.3 491 | 492 | source-map-js@1.2.0: {} 493 | 494 | vite@5.3.5: 495 | dependencies: 496 | esbuild: 0.21.5 497 | postcss: 8.4.40 498 | rollup: 4.19.0 499 | optionalDependencies: 500 | fsevents: 2.3.3 501 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: '9.0' 2 | 3 | settings: 4 | autoInstallPeers: true 5 | excludeLinksFromLockfile: false 6 | 7 | importers: 8 | 9 | .: 10 | devDependencies: 11 | '@changesets/cli': 12 | specifier: ^2.27.7 13 | version: 2.27.7 14 | '@rollup/plugin-alias': 15 | specifier: ^5.1.0 16 | version: 5.1.0(rollup@3.29.4) 17 | '@rollup/plugin-commonjs': 18 | specifier: ^25.0.3 19 | version: 25.0.8(rollup@3.29.4) 20 | '@rollup/plugin-json': 21 | specifier: ^6.0.0 22 | version: 6.1.0(rollup@3.29.4) 23 | '@rollup/plugin-terser': 24 | specifier: ^0.4.3 25 | version: 0.4.4(rollup@3.29.4) 26 | '@rollup/plugin-typescript': 27 | specifier: ^11.1.2 28 | version: 11.1.6(rollup@3.29.4)(tslib@2.6.3)(typescript@4.9.5) 29 | '@typescript-eslint/eslint-plugin': 30 | specifier: ^5.62.0 31 | version: 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0)(typescript@4.9.5) 32 | '@typescript-eslint/parser': 33 | specifier: ^5.62.0 34 | version: 5.62.0(eslint@8.57.0)(typescript@4.9.5) 35 | chalk: 36 | specifier: ^5.3.0 37 | version: 5.3.0 38 | eslint: 39 | specifier: ^8.45.0 40 | version: 8.57.0 41 | fs-extra: 42 | specifier: ^11.1.1 43 | version: 11.2.0 44 | husky: 45 | specifier: ^8.0.1 46 | version: 8.0.3 47 | inquirer: 48 | specifier: ^9.2.9 49 | version: 9.3.6 50 | inquirer-search-list: 51 | specifier: ^1.2.6 52 | version: 1.2.6 53 | lint-staged: 54 | specifier: ^13.0.3 55 | version: 13.3.0(enquirer@2.4.1) 56 | prettier: 57 | specifier: ^2.7.1 58 | version: 2.8.8 59 | rollup: 60 | specifier: ^3.26.3 61 | version: 3.29.4 62 | rollup-plugin-dts: 63 | specifier: ^5.3.0 64 | version: 5.3.1(rollup@3.29.4)(typescript@4.9.5) 65 | turbo: 66 | specifier: ^1.10.12 67 | version: 1.13.4 68 | typescript: 69 | specifier: ^4.9.5 70 | version: 4.9.5 71 | vitest: 72 | specifier: ^2.0.4 73 | version: 2.0.4(terser@5.31.3) 74 | 75 | packages/core: 76 | dependencies: 77 | '@web-resource-monitor/error': 78 | specifier: workspace:^ 79 | version: link:../error 80 | '@web-resource-monitor/resource': 81 | specifier: workspace:^ 82 | version: link:../resource 83 | 84 | packages/error: 85 | dependencies: 86 | '@web-resource-monitor/shared': 87 | specifier: workspace:^ 88 | version: link:../shared 89 | 90 | packages/example: 91 | dependencies: 92 | web-resource-monitor: 93 | specifier: workspace:^ 94 | version: link:../core 95 | devDependencies: 96 | vite: 97 | specifier: ^5.3.5 98 | version: 5.3.5(terser@5.31.3) 99 | 100 | packages/resource: 101 | dependencies: 102 | '@web-resource-monitor/shared': 103 | specifier: workspace:^ 104 | version: link:../shared 105 | 106 | packages/shared: {} 107 | 108 | packages: 109 | 110 | '@ampproject/remapping@2.3.0': 111 | resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} 112 | engines: {node: '>=6.0.0'} 113 | 114 | '@babel/code-frame@7.24.7': 115 | resolution: {integrity: sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==} 116 | engines: {node: '>=6.9.0'} 117 | 118 | '@babel/helper-validator-identifier@7.24.7': 119 | resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} 120 | engines: {node: '>=6.9.0'} 121 | 122 | '@babel/highlight@7.24.7': 123 | resolution: {integrity: sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==} 124 | engines: {node: '>=6.9.0'} 125 | 126 | '@babel/runtime@7.24.8': 127 | resolution: {integrity: sha512-5F7SDGs1T72ZczbRwbGO9lQi0NLjQxzl6i4lJxLxfW9U5UluCSyEJeniWvnhl3/euNiqQVbo8zruhsDfid0esA==} 128 | engines: {node: '>=6.9.0'} 129 | 130 | '@changesets/apply-release-plan@7.0.4': 131 | resolution: {integrity: sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==} 132 | 133 | '@changesets/assemble-release-plan@6.0.3': 134 | resolution: {integrity: sha512-bLNh9/Lgl1VwkjWZTq8JmRqH+hj7/Yzfz0jsQ/zJJ+FTmVqmqPj3szeKOri8O/hEM8JmHW019vh2gTO9iq5Cuw==} 135 | 136 | '@changesets/changelog-git@0.2.0': 137 | resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} 138 | 139 | '@changesets/cli@2.27.7': 140 | resolution: {integrity: sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==} 141 | hasBin: true 142 | 143 | '@changesets/config@3.0.2': 144 | resolution: {integrity: sha512-cdEhS4t8woKCX2M8AotcV2BOWnBp09sqICxKapgLHf9m5KdENpWjyrFNMjkLqGJtUys9U+w93OxWT0czorVDfw==} 145 | 146 | '@changesets/errors@0.2.0': 147 | resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} 148 | 149 | '@changesets/get-dependents-graph@2.1.1': 150 | resolution: {integrity: sha512-LRFjjvigBSzfnPU2n/AhFsuWR5DK++1x47aq6qZ8dzYsPtS/I5mNhIGAS68IAxh1xjO9BTtz55FwefhANZ+FCA==} 151 | 152 | '@changesets/get-release-plan@4.0.3': 153 | resolution: {integrity: sha512-6PLgvOIwTSdJPTtpdcr3sLtGatT+Jr22+cQwEBJBy6wP0rjB4yJ9lv583J9fVpn1bfQlBkDa8JxbS2g/n9lIyA==} 154 | 155 | '@changesets/get-version-range-type@0.4.0': 156 | resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} 157 | 158 | '@changesets/git@3.0.0': 159 | resolution: {integrity: sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==} 160 | 161 | '@changesets/logger@0.1.0': 162 | resolution: {integrity: sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==} 163 | 164 | '@changesets/parse@0.4.0': 165 | resolution: {integrity: sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==} 166 | 167 | '@changesets/pre@2.0.0': 168 | resolution: {integrity: sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==} 169 | 170 | '@changesets/read@0.6.0': 171 | resolution: {integrity: sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==} 172 | 173 | '@changesets/should-skip-package@0.1.0': 174 | resolution: {integrity: sha512-FxG6Mhjw7yFStlSM7Z0Gmg3RiyQ98d/9VpQAZ3Fzr59dCOM9G6ZdYbjiSAt0XtFr9JR5U2tBaJWPjrkGGc618g==} 175 | 176 | '@changesets/types@4.1.0': 177 | resolution: {integrity: sha512-LDQvVDv5Kb50ny2s25Fhm3d9QSZimsoUGBsUioj6MC3qbMUCuC8GPIvk/M6IvXx3lYhAs0lwWUQLb+VIEUCECw==} 178 | 179 | '@changesets/types@6.0.0': 180 | resolution: {integrity: sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==} 181 | 182 | '@changesets/write@0.3.1': 183 | resolution: {integrity: sha512-SyGtMXzH3qFqlHKcvFY2eX+6b0NGiFcNav8AFsYwy5l8hejOeoeTDemu5Yjmke2V5jpzY+pBvM0vCCQ3gdZpfw==} 184 | 185 | '@esbuild/aix-ppc64@0.21.5': 186 | resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} 187 | engines: {node: '>=12'} 188 | cpu: [ppc64] 189 | os: [aix] 190 | 191 | '@esbuild/android-arm64@0.21.5': 192 | resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==} 193 | engines: {node: '>=12'} 194 | cpu: [arm64] 195 | os: [android] 196 | 197 | '@esbuild/android-arm@0.21.5': 198 | resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==} 199 | engines: {node: '>=12'} 200 | cpu: [arm] 201 | os: [android] 202 | 203 | '@esbuild/android-x64@0.21.5': 204 | resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==} 205 | engines: {node: '>=12'} 206 | cpu: [x64] 207 | os: [android] 208 | 209 | '@esbuild/darwin-arm64@0.21.5': 210 | resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==} 211 | engines: {node: '>=12'} 212 | cpu: [arm64] 213 | os: [darwin] 214 | 215 | '@esbuild/darwin-x64@0.21.5': 216 | resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==} 217 | engines: {node: '>=12'} 218 | cpu: [x64] 219 | os: [darwin] 220 | 221 | '@esbuild/freebsd-arm64@0.21.5': 222 | resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==} 223 | engines: {node: '>=12'} 224 | cpu: [arm64] 225 | os: [freebsd] 226 | 227 | '@esbuild/freebsd-x64@0.21.5': 228 | resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==} 229 | engines: {node: '>=12'} 230 | cpu: [x64] 231 | os: [freebsd] 232 | 233 | '@esbuild/linux-arm64@0.21.5': 234 | resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==} 235 | engines: {node: '>=12'} 236 | cpu: [arm64] 237 | os: [linux] 238 | 239 | '@esbuild/linux-arm@0.21.5': 240 | resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==} 241 | engines: {node: '>=12'} 242 | cpu: [arm] 243 | os: [linux] 244 | 245 | '@esbuild/linux-ia32@0.21.5': 246 | resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==} 247 | engines: {node: '>=12'} 248 | cpu: [ia32] 249 | os: [linux] 250 | 251 | '@esbuild/linux-loong64@0.21.5': 252 | resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==} 253 | engines: {node: '>=12'} 254 | cpu: [loong64] 255 | os: [linux] 256 | 257 | '@esbuild/linux-mips64el@0.21.5': 258 | resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==} 259 | engines: {node: '>=12'} 260 | cpu: [mips64el] 261 | os: [linux] 262 | 263 | '@esbuild/linux-ppc64@0.21.5': 264 | resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==} 265 | engines: {node: '>=12'} 266 | cpu: [ppc64] 267 | os: [linux] 268 | 269 | '@esbuild/linux-riscv64@0.21.5': 270 | resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==} 271 | engines: {node: '>=12'} 272 | cpu: [riscv64] 273 | os: [linux] 274 | 275 | '@esbuild/linux-s390x@0.21.5': 276 | resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==} 277 | engines: {node: '>=12'} 278 | cpu: [s390x] 279 | os: [linux] 280 | 281 | '@esbuild/linux-x64@0.21.5': 282 | resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==} 283 | engines: {node: '>=12'} 284 | cpu: [x64] 285 | os: [linux] 286 | 287 | '@esbuild/netbsd-x64@0.21.5': 288 | resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==} 289 | engines: {node: '>=12'} 290 | cpu: [x64] 291 | os: [netbsd] 292 | 293 | '@esbuild/openbsd-x64@0.21.5': 294 | resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==} 295 | engines: {node: '>=12'} 296 | cpu: [x64] 297 | os: [openbsd] 298 | 299 | '@esbuild/sunos-x64@0.21.5': 300 | resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==} 301 | engines: {node: '>=12'} 302 | cpu: [x64] 303 | os: [sunos] 304 | 305 | '@esbuild/win32-arm64@0.21.5': 306 | resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==} 307 | engines: {node: '>=12'} 308 | cpu: [arm64] 309 | os: [win32] 310 | 311 | '@esbuild/win32-ia32@0.21.5': 312 | resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==} 313 | engines: {node: '>=12'} 314 | cpu: [ia32] 315 | os: [win32] 316 | 317 | '@esbuild/win32-x64@0.21.5': 318 | resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==} 319 | engines: {node: '>=12'} 320 | cpu: [x64] 321 | os: [win32] 322 | 323 | '@eslint-community/eslint-utils@4.4.0': 324 | resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} 325 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 326 | peerDependencies: 327 | eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 328 | 329 | '@eslint-community/regexpp@4.11.0': 330 | resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} 331 | engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} 332 | 333 | '@eslint/eslintrc@2.1.4': 334 | resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==} 335 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 336 | 337 | '@eslint/js@8.57.0': 338 | resolution: {integrity: sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==} 339 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 340 | 341 | '@humanwhocodes/config-array@0.11.14': 342 | resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} 343 | engines: {node: '>=10.10.0'} 344 | deprecated: Use @eslint/config-array instead 345 | 346 | '@humanwhocodes/module-importer@1.0.1': 347 | resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} 348 | engines: {node: '>=12.22'} 349 | 350 | '@humanwhocodes/object-schema@2.0.3': 351 | resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==} 352 | deprecated: Use @eslint/object-schema instead 353 | 354 | '@inquirer/figures@1.0.5': 355 | resolution: {integrity: sha512-79hP/VWdZ2UVc9bFGJnoQ/lQMpL74mGgzSYX1xUqCVk7/v73vJCMw1VuyWN1jGkZ9B3z7THAbySqGbCNefcjfA==} 356 | engines: {node: '>=18'} 357 | 358 | '@jridgewell/gen-mapping@0.3.5': 359 | resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} 360 | engines: {node: '>=6.0.0'} 361 | 362 | '@jridgewell/resolve-uri@3.1.2': 363 | resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} 364 | engines: {node: '>=6.0.0'} 365 | 366 | '@jridgewell/set-array@1.2.1': 367 | resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} 368 | engines: {node: '>=6.0.0'} 369 | 370 | '@jridgewell/source-map@0.3.6': 371 | resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==} 372 | 373 | '@jridgewell/sourcemap-codec@1.5.0': 374 | resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} 375 | 376 | '@jridgewell/trace-mapping@0.3.25': 377 | resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} 378 | 379 | '@manypkg/find-root@1.1.0': 380 | resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} 381 | 382 | '@manypkg/get-packages@1.1.3': 383 | resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} 384 | 385 | '@nodelib/fs.scandir@2.1.5': 386 | resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} 387 | engines: {node: '>= 8'} 388 | 389 | '@nodelib/fs.stat@2.0.5': 390 | resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} 391 | engines: {node: '>= 8'} 392 | 393 | '@nodelib/fs.walk@1.2.8': 394 | resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} 395 | engines: {node: '>= 8'} 396 | 397 | '@rollup/plugin-alias@5.1.0': 398 | resolution: {integrity: sha512-lpA3RZ9PdIG7qqhEfv79tBffNaoDuukFDrmhLqg9ifv99u/ehn+lOg30x2zmhf8AQqQUZaMk/B9fZraQ6/acDQ==} 399 | engines: {node: '>=14.0.0'} 400 | peerDependencies: 401 | rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 402 | peerDependenciesMeta: 403 | rollup: 404 | optional: true 405 | 406 | '@rollup/plugin-commonjs@25.0.8': 407 | resolution: {integrity: sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==} 408 | engines: {node: '>=14.0.0'} 409 | peerDependencies: 410 | rollup: ^2.68.0||^3.0.0||^4.0.0 411 | peerDependenciesMeta: 412 | rollup: 413 | optional: true 414 | 415 | '@rollup/plugin-json@6.1.0': 416 | resolution: {integrity: sha512-EGI2te5ENk1coGeADSIwZ7G2Q8CJS2sF120T7jLw4xFw9n7wIOXHo+kIYRAoVpJAN+kmqZSoO3Fp4JtoNF4ReA==} 417 | engines: {node: '>=14.0.0'} 418 | peerDependencies: 419 | rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 420 | peerDependenciesMeta: 421 | rollup: 422 | optional: true 423 | 424 | '@rollup/plugin-terser@0.4.4': 425 | resolution: {integrity: sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A==} 426 | engines: {node: '>=14.0.0'} 427 | peerDependencies: 428 | rollup: ^2.0.0||^3.0.0||^4.0.0 429 | peerDependenciesMeta: 430 | rollup: 431 | optional: true 432 | 433 | '@rollup/plugin-typescript@11.1.6': 434 | resolution: {integrity: sha512-R92yOmIACgYdJ7dJ97p4K69I8gg6IEHt8M7dUBxN3W6nrO8uUxX5ixl0yU/N3aZTi8WhPuICvOHXQvF6FaykAA==} 435 | engines: {node: '>=14.0.0'} 436 | peerDependencies: 437 | rollup: ^2.14.0||^3.0.0||^4.0.0 438 | tslib: '*' 439 | typescript: '>=3.7.0' 440 | peerDependenciesMeta: 441 | rollup: 442 | optional: true 443 | tslib: 444 | optional: true 445 | 446 | '@rollup/pluginutils@5.1.0': 447 | resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} 448 | engines: {node: '>=14.0.0'} 449 | peerDependencies: 450 | rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 451 | peerDependenciesMeta: 452 | rollup: 453 | optional: true 454 | 455 | '@rollup/rollup-android-arm-eabi@4.19.0': 456 | resolution: {integrity: sha512-JlPfZ/C7yn5S5p0yKk7uhHTTnFlvTgLetl2VxqE518QgyM7C9bSfFTYvB/Q/ftkq0RIPY4ySxTz+/wKJ/dXC0w==} 457 | cpu: [arm] 458 | os: [android] 459 | 460 | '@rollup/rollup-android-arm64@4.19.0': 461 | resolution: {integrity: sha512-RDxUSY8D1tWYfn00DDi5myxKgOk6RvWPxhmWexcICt/MEC6yEMr4HNCu1sXXYLw8iAsg0D44NuU+qNq7zVWCrw==} 462 | cpu: [arm64] 463 | os: [android] 464 | 465 | '@rollup/rollup-darwin-arm64@4.19.0': 466 | resolution: {integrity: sha512-emvKHL4B15x6nlNTBMtIaC9tLPRpeA5jMvRLXVbl/W9Ie7HhkrE7KQjvgS9uxgatL1HmHWDXk5TTS4IaNJxbAA==} 467 | cpu: [arm64] 468 | os: [darwin] 469 | 470 | '@rollup/rollup-darwin-x64@4.19.0': 471 | resolution: {integrity: sha512-fO28cWA1dC57qCd+D0rfLC4VPbh6EOJXrreBmFLWPGI9dpMlER2YwSPZzSGfq11XgcEpPukPTfEVFtw2q2nYJg==} 472 | cpu: [x64] 473 | os: [darwin] 474 | 475 | '@rollup/rollup-linux-arm-gnueabihf@4.19.0': 476 | resolution: {integrity: sha512-2Rn36Ubxdv32NUcfm0wB1tgKqkQuft00PtM23VqLuCUR4N5jcNWDoV5iBC9jeGdgS38WK66ElncprqgMUOyomw==} 477 | cpu: [arm] 478 | os: [linux] 479 | 480 | '@rollup/rollup-linux-arm-musleabihf@4.19.0': 481 | resolution: {integrity: sha512-gJuzIVdq/X1ZA2bHeCGCISe0VWqCoNT8BvkQ+BfsixXwTOndhtLUpOg0A1Fcx/+eA6ei6rMBzlOz4JzmiDw7JQ==} 482 | cpu: [arm] 483 | os: [linux] 484 | 485 | '@rollup/rollup-linux-arm64-gnu@4.19.0': 486 | resolution: {integrity: sha512-0EkX2HYPkSADo9cfeGFoQ7R0/wTKb7q6DdwI4Yn/ULFE1wuRRCHybxpl2goQrx4c/yzK3I8OlgtBu4xvted0ug==} 487 | cpu: [arm64] 488 | os: [linux] 489 | 490 | '@rollup/rollup-linux-arm64-musl@4.19.0': 491 | resolution: {integrity: sha512-GlIQRj9px52ISomIOEUq/IojLZqzkvRpdP3cLgIE1wUWaiU5Takwlzpz002q0Nxxr1y2ZgxC2obWxjr13lvxNQ==} 492 | cpu: [arm64] 493 | os: [linux] 494 | 495 | '@rollup/rollup-linux-powerpc64le-gnu@4.19.0': 496 | resolution: {integrity: sha512-N6cFJzssruDLUOKfEKeovCKiHcdwVYOT1Hs6dovDQ61+Y9n3Ek4zXvtghPPelt6U0AH4aDGnDLb83uiJMkWYzQ==} 497 | cpu: [ppc64] 498 | os: [linux] 499 | 500 | '@rollup/rollup-linux-riscv64-gnu@4.19.0': 501 | resolution: {integrity: sha512-2DnD3mkS2uuam/alF+I7M84koGwvn3ZVD7uG+LEWpyzo/bq8+kKnus2EVCkcvh6PlNB8QPNFOz6fWd5N8o1CYg==} 502 | cpu: [riscv64] 503 | os: [linux] 504 | 505 | '@rollup/rollup-linux-s390x-gnu@4.19.0': 506 | resolution: {integrity: sha512-D6pkaF7OpE7lzlTOFCB2m3Ngzu2ykw40Nka9WmKGUOTS3xcIieHe82slQlNq69sVB04ch73thKYIWz/Ian8DUA==} 507 | cpu: [s390x] 508 | os: [linux] 509 | 510 | '@rollup/rollup-linux-x64-gnu@4.19.0': 511 | resolution: {integrity: sha512-HBndjQLP8OsdJNSxpNIN0einbDmRFg9+UQeZV1eiYupIRuZsDEoeGU43NQsS34Pp166DtwQOnpcbV/zQxM+rWA==} 512 | cpu: [x64] 513 | os: [linux] 514 | 515 | '@rollup/rollup-linux-x64-musl@4.19.0': 516 | resolution: {integrity: sha512-HxfbvfCKJe/RMYJJn0a12eiOI9OOtAUF4G6ozrFUK95BNyoJaSiBjIOHjZskTUffUrB84IPKkFG9H9nEvJGW6A==} 517 | cpu: [x64] 518 | os: [linux] 519 | 520 | '@rollup/rollup-win32-arm64-msvc@4.19.0': 521 | resolution: {integrity: sha512-HxDMKIhmcguGTiP5TsLNolwBUK3nGGUEoV/BO9ldUBoMLBssvh4J0X8pf11i1fTV7WShWItB1bKAKjX4RQeYmg==} 522 | cpu: [arm64] 523 | os: [win32] 524 | 525 | '@rollup/rollup-win32-ia32-msvc@4.19.0': 526 | resolution: {integrity: sha512-xItlIAZZaiG/u0wooGzRsx11rokP4qyc/79LkAOdznGRAbOFc+SfEdfUOszG1odsHNgwippUJavag/+W/Etc6Q==} 527 | cpu: [ia32] 528 | os: [win32] 529 | 530 | '@rollup/rollup-win32-x64-msvc@4.19.0': 531 | resolution: {integrity: sha512-xNo5fV5ycvCCKqiZcpB65VMR11NJB+StnxHz20jdqRAktfdfzhgjTiJ2doTDQE/7dqGaV5I7ZGqKpgph6lCIag==} 532 | cpu: [x64] 533 | os: [win32] 534 | 535 | '@types/estree@1.0.5': 536 | resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} 537 | 538 | '@types/json-schema@7.0.15': 539 | resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} 540 | 541 | '@types/node@12.20.55': 542 | resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} 543 | 544 | '@types/semver@7.5.8': 545 | resolution: {integrity: sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==} 546 | 547 | '@typescript-eslint/eslint-plugin@5.62.0': 548 | resolution: {integrity: sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==} 549 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 550 | peerDependencies: 551 | '@typescript-eslint/parser': ^5.0.0 552 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 553 | typescript: '*' 554 | peerDependenciesMeta: 555 | typescript: 556 | optional: true 557 | 558 | '@typescript-eslint/parser@5.62.0': 559 | resolution: {integrity: sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==} 560 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 561 | peerDependencies: 562 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 563 | typescript: '*' 564 | peerDependenciesMeta: 565 | typescript: 566 | optional: true 567 | 568 | '@typescript-eslint/scope-manager@5.62.0': 569 | resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} 570 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 571 | 572 | '@typescript-eslint/type-utils@5.62.0': 573 | resolution: {integrity: sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==} 574 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 575 | peerDependencies: 576 | eslint: '*' 577 | typescript: '*' 578 | peerDependenciesMeta: 579 | typescript: 580 | optional: true 581 | 582 | '@typescript-eslint/types@5.62.0': 583 | resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} 584 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 585 | 586 | '@typescript-eslint/typescript-estree@5.62.0': 587 | resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==} 588 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 589 | peerDependencies: 590 | typescript: '*' 591 | peerDependenciesMeta: 592 | typescript: 593 | optional: true 594 | 595 | '@typescript-eslint/utils@5.62.0': 596 | resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} 597 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 598 | peerDependencies: 599 | eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 600 | 601 | '@typescript-eslint/visitor-keys@5.62.0': 602 | resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} 603 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 604 | 605 | '@ungap/structured-clone@1.2.0': 606 | resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} 607 | 608 | '@vitest/expect@2.0.4': 609 | resolution: {integrity: sha512-39jr5EguIoanChvBqe34I8m1hJFI4+jxvdOpD7gslZrVQBKhh8H9eD7J/LJX4zakrw23W+dITQTDqdt43xVcJw==} 610 | 611 | '@vitest/pretty-format@2.0.4': 612 | resolution: {integrity: sha512-RYZl31STbNGqf4l2eQM1nvKPXE0NhC6Eq0suTTePc4mtMQ1Fn8qZmjV4emZdEdG2NOWGKSCrHZjmTqDCDoeFBw==} 613 | 614 | '@vitest/runner@2.0.4': 615 | resolution: {integrity: sha512-Gk+9Su/2H2zNfNdeJR124gZckd5st4YoSuhF1Rebi37qTXKnqYyFCd9KP4vl2cQHbtuVKjfEKrNJxHHCW8thbQ==} 616 | 617 | '@vitest/snapshot@2.0.4': 618 | resolution: {integrity: sha512-or6Mzoz/pD7xTvuJMFYEtso1vJo1S5u6zBTinfl+7smGUhqybn6VjzCDMhmTyVOFWwkCMuNjmNNxnyXPgKDoPw==} 619 | 620 | '@vitest/spy@2.0.4': 621 | resolution: {integrity: sha512-uTXU56TNoYrTohb+6CseP8IqNwlNdtPwEO0AWl+5j7NelS6x0xZZtP0bDWaLvOfUbaYwhhWp1guzXUxkC7mW7Q==} 622 | 623 | '@vitest/utils@2.0.4': 624 | resolution: {integrity: sha512-Zc75QuuoJhOBnlo99ZVUkJIuq4Oj0zAkrQ2VzCqNCx6wAwViHEh5Fnp4fiJTE9rA+sAoXRf00Z9xGgfEzV6fzQ==} 625 | 626 | acorn-jsx@5.3.2: 627 | resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} 628 | peerDependencies: 629 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 630 | 631 | acorn@8.12.1: 632 | resolution: {integrity: sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==} 633 | engines: {node: '>=0.4.0'} 634 | hasBin: true 635 | 636 | ajv@6.12.6: 637 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 638 | 639 | ansi-colors@4.1.3: 640 | resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} 641 | engines: {node: '>=6'} 642 | 643 | ansi-escapes@3.2.0: 644 | resolution: {integrity: sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==} 645 | engines: {node: '>=4'} 646 | 647 | ansi-escapes@4.3.2: 648 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} 649 | engines: {node: '>=8'} 650 | 651 | ansi-escapes@5.0.0: 652 | resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} 653 | engines: {node: '>=12'} 654 | 655 | ansi-regex@3.0.1: 656 | resolution: {integrity: sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==} 657 | engines: {node: '>=4'} 658 | 659 | ansi-regex@5.0.1: 660 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 661 | engines: {node: '>=8'} 662 | 663 | ansi-regex@6.0.1: 664 | resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} 665 | engines: {node: '>=12'} 666 | 667 | ansi-styles@3.2.1: 668 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 669 | engines: {node: '>=4'} 670 | 671 | ansi-styles@4.3.0: 672 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 673 | engines: {node: '>=8'} 674 | 675 | ansi-styles@6.2.1: 676 | resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} 677 | engines: {node: '>=12'} 678 | 679 | argparse@1.0.10: 680 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 681 | 682 | argparse@2.0.1: 683 | resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} 684 | 685 | array-union@2.1.0: 686 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 687 | engines: {node: '>=8'} 688 | 689 | assertion-error@2.0.1: 690 | resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} 691 | engines: {node: '>=12'} 692 | 693 | balanced-match@1.0.2: 694 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 695 | 696 | base64-js@1.5.1: 697 | resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} 698 | 699 | better-path-resolve@1.0.0: 700 | resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} 701 | engines: {node: '>=4'} 702 | 703 | bl@4.1.0: 704 | resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==} 705 | 706 | brace-expansion@1.1.11: 707 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 708 | 709 | brace-expansion@2.0.1: 710 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 711 | 712 | braces@3.0.3: 713 | resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} 714 | engines: {node: '>=8'} 715 | 716 | buffer-from@1.1.2: 717 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} 718 | 719 | buffer@5.7.1: 720 | resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==} 721 | 722 | cac@6.7.14: 723 | resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} 724 | engines: {node: '>=8'} 725 | 726 | callsites@3.1.0: 727 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 728 | engines: {node: '>=6'} 729 | 730 | chai@5.1.1: 731 | resolution: {integrity: sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==} 732 | engines: {node: '>=12'} 733 | 734 | chalk@2.4.2: 735 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 736 | engines: {node: '>=4'} 737 | 738 | chalk@4.1.2: 739 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 740 | engines: {node: '>=10'} 741 | 742 | chalk@5.3.0: 743 | resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} 744 | engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} 745 | 746 | chardet@0.4.2: 747 | resolution: {integrity: sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg==} 748 | 749 | chardet@0.7.0: 750 | resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} 751 | 752 | check-error@2.1.1: 753 | resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} 754 | engines: {node: '>= 16'} 755 | 756 | ci-info@3.9.0: 757 | resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} 758 | engines: {node: '>=8'} 759 | 760 | cli-cursor@2.1.0: 761 | resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} 762 | engines: {node: '>=4'} 763 | 764 | cli-cursor@3.1.0: 765 | resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} 766 | engines: {node: '>=8'} 767 | 768 | cli-cursor@4.0.0: 769 | resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} 770 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 771 | 772 | cli-spinners@2.9.2: 773 | resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} 774 | engines: {node: '>=6'} 775 | 776 | cli-truncate@3.1.0: 777 | resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} 778 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 779 | 780 | cli-width@2.2.1: 781 | resolution: {integrity: sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==} 782 | 783 | cli-width@4.1.0: 784 | resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} 785 | engines: {node: '>= 12'} 786 | 787 | clone@1.0.4: 788 | resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==} 789 | engines: {node: '>=0.8'} 790 | 791 | color-convert@1.9.3: 792 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 793 | 794 | color-convert@2.0.1: 795 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 796 | engines: {node: '>=7.0.0'} 797 | 798 | color-name@1.1.3: 799 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 800 | 801 | color-name@1.1.4: 802 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 803 | 804 | colorette@2.0.20: 805 | resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} 806 | 807 | commander@11.0.0: 808 | resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} 809 | engines: {node: '>=16'} 810 | 811 | commander@2.20.3: 812 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} 813 | 814 | commondir@1.0.1: 815 | resolution: {integrity: sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==} 816 | 817 | concat-map@0.0.1: 818 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 819 | 820 | cross-spawn@5.1.0: 821 | resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} 822 | 823 | cross-spawn@7.0.3: 824 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 825 | engines: {node: '>= 8'} 826 | 827 | debug@4.3.4: 828 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 829 | engines: {node: '>=6.0'} 830 | peerDependencies: 831 | supports-color: '*' 832 | peerDependenciesMeta: 833 | supports-color: 834 | optional: true 835 | 836 | debug@4.3.5: 837 | resolution: {integrity: sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==} 838 | engines: {node: '>=6.0'} 839 | peerDependencies: 840 | supports-color: '*' 841 | peerDependenciesMeta: 842 | supports-color: 843 | optional: true 844 | 845 | deep-eql@5.0.2: 846 | resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==} 847 | engines: {node: '>=6'} 848 | 849 | deep-is@0.1.4: 850 | resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} 851 | 852 | defaults@1.0.4: 853 | resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==} 854 | 855 | detect-indent@6.1.0: 856 | resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} 857 | engines: {node: '>=8'} 858 | 859 | dir-glob@3.0.1: 860 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 861 | engines: {node: '>=8'} 862 | 863 | doctrine@3.0.0: 864 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 865 | engines: {node: '>=6.0.0'} 866 | 867 | eastasianwidth@0.2.0: 868 | resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} 869 | 870 | emoji-regex@8.0.0: 871 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 872 | 873 | emoji-regex@9.2.2: 874 | resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} 875 | 876 | enquirer@2.4.1: 877 | resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} 878 | engines: {node: '>=8.6'} 879 | 880 | esbuild@0.21.5: 881 | resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==} 882 | engines: {node: '>=12'} 883 | hasBin: true 884 | 885 | escape-string-regexp@1.0.5: 886 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 887 | engines: {node: '>=0.8.0'} 888 | 889 | escape-string-regexp@4.0.0: 890 | resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==} 891 | engines: {node: '>=10'} 892 | 893 | eslint-scope@5.1.1: 894 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 895 | engines: {node: '>=8.0.0'} 896 | 897 | eslint-scope@7.2.2: 898 | resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==} 899 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 900 | 901 | eslint-visitor-keys@3.4.3: 902 | resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} 903 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 904 | 905 | eslint@8.57.0: 906 | resolution: {integrity: sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==} 907 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 908 | hasBin: true 909 | 910 | espree@9.6.1: 911 | resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} 912 | engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} 913 | 914 | esprima@4.0.1: 915 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 916 | engines: {node: '>=4'} 917 | hasBin: true 918 | 919 | esquery@1.6.0: 920 | resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} 921 | engines: {node: '>=0.10'} 922 | 923 | esrecurse@4.3.0: 924 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 925 | engines: {node: '>=4.0'} 926 | 927 | estraverse@4.3.0: 928 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 929 | engines: {node: '>=4.0'} 930 | 931 | estraverse@5.3.0: 932 | resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==} 933 | engines: {node: '>=4.0'} 934 | 935 | estree-walker@2.0.2: 936 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 937 | 938 | estree-walker@3.0.3: 939 | resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} 940 | 941 | esutils@2.0.3: 942 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 943 | engines: {node: '>=0.10.0'} 944 | 945 | eventemitter3@5.0.1: 946 | resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} 947 | 948 | execa@7.2.0: 949 | resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} 950 | engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} 951 | 952 | execa@8.0.1: 953 | resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} 954 | engines: {node: '>=16.17'} 955 | 956 | extendable-error@0.1.7: 957 | resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} 958 | 959 | external-editor@2.2.0: 960 | resolution: {integrity: sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==} 961 | engines: {node: '>=0.12'} 962 | 963 | external-editor@3.1.0: 964 | resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} 965 | engines: {node: '>=4'} 966 | 967 | fast-deep-equal@3.1.3: 968 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 969 | 970 | fast-glob@3.3.2: 971 | resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} 972 | engines: {node: '>=8.6.0'} 973 | 974 | fast-json-stable-stringify@2.1.0: 975 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 976 | 977 | fast-levenshtein@2.0.6: 978 | resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} 979 | 980 | fastq@1.17.1: 981 | resolution: {integrity: sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==} 982 | 983 | figures@2.0.0: 984 | resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==} 985 | engines: {node: '>=4'} 986 | 987 | file-entry-cache@6.0.1: 988 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 989 | engines: {node: ^10.12.0 || >=12.0.0} 990 | 991 | fill-range@7.1.1: 992 | resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} 993 | engines: {node: '>=8'} 994 | 995 | find-up@4.1.0: 996 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 997 | engines: {node: '>=8'} 998 | 999 | find-up@5.0.0: 1000 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1001 | engines: {node: '>=10'} 1002 | 1003 | find-yarn-workspace-root2@1.2.16: 1004 | resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} 1005 | 1006 | flat-cache@3.2.0: 1007 | resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==} 1008 | engines: {node: ^10.12.0 || >=12.0.0} 1009 | 1010 | flatted@3.3.1: 1011 | resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} 1012 | 1013 | fs-extra@11.2.0: 1014 | resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==} 1015 | engines: {node: '>=14.14'} 1016 | 1017 | fs-extra@7.0.1: 1018 | resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} 1019 | engines: {node: '>=6 <7 || >=8'} 1020 | 1021 | fs-extra@8.1.0: 1022 | resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==} 1023 | engines: {node: '>=6 <7 || >=8'} 1024 | 1025 | fs.realpath@1.0.0: 1026 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1027 | 1028 | fsevents@2.3.3: 1029 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} 1030 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} 1031 | os: [darwin] 1032 | 1033 | function-bind@1.1.2: 1034 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} 1035 | 1036 | fuzzy@0.1.3: 1037 | resolution: {integrity: sha512-/gZffu4ykarLrCiP3Ygsa86UAo1E5vEVlvTrpkKywXSbP9Xhln3oSp9QSV57gEq3JFFpGJ4GZ+5zdEp3FcUh4w==} 1038 | engines: {node: '>= 0.6.0'} 1039 | 1040 | get-func-name@2.0.2: 1041 | resolution: {integrity: sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==} 1042 | 1043 | get-stream@6.0.1: 1044 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} 1045 | engines: {node: '>=10'} 1046 | 1047 | get-stream@8.0.1: 1048 | resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} 1049 | engines: {node: '>=16'} 1050 | 1051 | glob-parent@5.1.2: 1052 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1053 | engines: {node: '>= 6'} 1054 | 1055 | glob-parent@6.0.2: 1056 | resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} 1057 | engines: {node: '>=10.13.0'} 1058 | 1059 | glob@7.2.3: 1060 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1061 | deprecated: Glob versions prior to v9 are no longer supported 1062 | 1063 | glob@8.1.0: 1064 | resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} 1065 | engines: {node: '>=12'} 1066 | deprecated: Glob versions prior to v9 are no longer supported 1067 | 1068 | globals@13.24.0: 1069 | resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==} 1070 | engines: {node: '>=8'} 1071 | 1072 | globby@11.1.0: 1073 | resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} 1074 | engines: {node: '>=10'} 1075 | 1076 | graceful-fs@4.2.11: 1077 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} 1078 | 1079 | graphemer@1.4.0: 1080 | resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} 1081 | 1082 | has-flag@3.0.0: 1083 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 1084 | engines: {node: '>=4'} 1085 | 1086 | has-flag@4.0.0: 1087 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1088 | engines: {node: '>=8'} 1089 | 1090 | hasown@2.0.2: 1091 | resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} 1092 | engines: {node: '>= 0.4'} 1093 | 1094 | human-id@1.0.2: 1095 | resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} 1096 | 1097 | human-signals@4.3.1: 1098 | resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} 1099 | engines: {node: '>=14.18.0'} 1100 | 1101 | human-signals@5.0.0: 1102 | resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} 1103 | engines: {node: '>=16.17.0'} 1104 | 1105 | husky@8.0.3: 1106 | resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} 1107 | engines: {node: '>=14'} 1108 | hasBin: true 1109 | 1110 | iconv-lite@0.4.24: 1111 | resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} 1112 | engines: {node: '>=0.10.0'} 1113 | 1114 | ieee754@1.2.1: 1115 | resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} 1116 | 1117 | ignore@5.3.1: 1118 | resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} 1119 | engines: {node: '>= 4'} 1120 | 1121 | import-fresh@3.3.0: 1122 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1123 | engines: {node: '>=6'} 1124 | 1125 | imurmurhash@0.1.4: 1126 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1127 | engines: {node: '>=0.8.19'} 1128 | 1129 | inflight@1.0.6: 1130 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1131 | deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. 1132 | 1133 | inherits@2.0.4: 1134 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1135 | 1136 | inquirer-search-list@1.2.6: 1137 | resolution: {integrity: sha512-C4pKSW7FOYnkAloH8rB4FiM91H1v08QFZZJh6KRt//bMfdDBIhgdX8wjHvrVH2bu5oIo6wYqGpzSBxkeClPxew==} 1138 | 1139 | inquirer@3.3.0: 1140 | resolution: {integrity: sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==} 1141 | 1142 | inquirer@9.3.6: 1143 | resolution: {integrity: sha512-riK/iQB2ctwkpWYgjjWIRv3MBLt2gzb2Sj0JNQNbyTXgyXsLWcDPJ5WS5ZDTCx7BRFnJsARtYh+58fjP5M2Y0Q==} 1144 | engines: {node: '>=18'} 1145 | 1146 | is-core-module@2.15.0: 1147 | resolution: {integrity: sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA==} 1148 | engines: {node: '>= 0.4'} 1149 | 1150 | is-extglob@2.1.1: 1151 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1152 | engines: {node: '>=0.10.0'} 1153 | 1154 | is-fullwidth-code-point@2.0.0: 1155 | resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} 1156 | engines: {node: '>=4'} 1157 | 1158 | is-fullwidth-code-point@3.0.0: 1159 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1160 | engines: {node: '>=8'} 1161 | 1162 | is-fullwidth-code-point@4.0.0: 1163 | resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} 1164 | engines: {node: '>=12'} 1165 | 1166 | is-glob@4.0.3: 1167 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1168 | engines: {node: '>=0.10.0'} 1169 | 1170 | is-interactive@1.0.0: 1171 | resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} 1172 | engines: {node: '>=8'} 1173 | 1174 | is-number@7.0.0: 1175 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1176 | engines: {node: '>=0.12.0'} 1177 | 1178 | is-path-inside@3.0.3: 1179 | resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==} 1180 | engines: {node: '>=8'} 1181 | 1182 | is-reference@1.2.1: 1183 | resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==} 1184 | 1185 | is-stream@3.0.0: 1186 | resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} 1187 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1188 | 1189 | is-subdir@1.2.0: 1190 | resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} 1191 | engines: {node: '>=4'} 1192 | 1193 | is-unicode-supported@0.1.0: 1194 | resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} 1195 | engines: {node: '>=10'} 1196 | 1197 | is-windows@1.0.2: 1198 | resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} 1199 | engines: {node: '>=0.10.0'} 1200 | 1201 | isexe@2.0.0: 1202 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1203 | 1204 | js-tokens@4.0.0: 1205 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1206 | 1207 | js-yaml@3.14.1: 1208 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1209 | hasBin: true 1210 | 1211 | js-yaml@4.1.0: 1212 | resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} 1213 | hasBin: true 1214 | 1215 | json-buffer@3.0.1: 1216 | resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} 1217 | 1218 | json-schema-traverse@0.4.1: 1219 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1220 | 1221 | json-stable-stringify-without-jsonify@1.0.1: 1222 | resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} 1223 | 1224 | jsonfile@4.0.0: 1225 | resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} 1226 | 1227 | jsonfile@6.1.0: 1228 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} 1229 | 1230 | keyv@4.5.4: 1231 | resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} 1232 | 1233 | levn@0.4.1: 1234 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1235 | engines: {node: '>= 0.8.0'} 1236 | 1237 | lilconfig@2.1.0: 1238 | resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} 1239 | engines: {node: '>=10'} 1240 | 1241 | lint-staged@13.3.0: 1242 | resolution: {integrity: sha512-mPRtrYnipYYv1FEE134ufbWpeggNTo+O/UPzngoaKzbzHAthvR55am+8GfHTnqNRQVRRrYQLGW9ZyUoD7DsBHQ==} 1243 | engines: {node: ^16.14.0 || >=18.0.0} 1244 | hasBin: true 1245 | 1246 | listr2@6.6.1: 1247 | resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==} 1248 | engines: {node: '>=16.0.0'} 1249 | peerDependencies: 1250 | enquirer: '>= 2.3.0 < 3' 1251 | peerDependenciesMeta: 1252 | enquirer: 1253 | optional: true 1254 | 1255 | load-yaml-file@0.2.0: 1256 | resolution: {integrity: sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==} 1257 | engines: {node: '>=6'} 1258 | 1259 | locate-path@5.0.0: 1260 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 1261 | engines: {node: '>=8'} 1262 | 1263 | locate-path@6.0.0: 1264 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1265 | engines: {node: '>=10'} 1266 | 1267 | lodash.merge@4.6.2: 1268 | resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} 1269 | 1270 | lodash.startcase@4.4.0: 1271 | resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} 1272 | 1273 | lodash@4.17.21: 1274 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 1275 | 1276 | log-symbols@4.1.0: 1277 | resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} 1278 | engines: {node: '>=10'} 1279 | 1280 | log-update@5.0.1: 1281 | resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} 1282 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1283 | 1284 | loupe@3.1.1: 1285 | resolution: {integrity: sha512-edNu/8D5MKVfGVFRhFf8aAxiTM6Wumfz5XsaatSxlD3w4R1d/WEKUTydCdPGbl9K7QG/Ca3GnDV2sIKIpXRQcw==} 1286 | 1287 | lru-cache@4.1.5: 1288 | resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} 1289 | 1290 | magic-string@0.30.10: 1291 | resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} 1292 | 1293 | merge-stream@2.0.0: 1294 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 1295 | 1296 | merge2@1.4.1: 1297 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1298 | engines: {node: '>= 8'} 1299 | 1300 | micromatch@4.0.5: 1301 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 1302 | engines: {node: '>=8.6'} 1303 | 1304 | micromatch@4.0.7: 1305 | resolution: {integrity: sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==} 1306 | engines: {node: '>=8.6'} 1307 | 1308 | mimic-fn@1.2.0: 1309 | resolution: {integrity: sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==} 1310 | engines: {node: '>=4'} 1311 | 1312 | mimic-fn@2.1.0: 1313 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 1314 | engines: {node: '>=6'} 1315 | 1316 | mimic-fn@4.0.0: 1317 | resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} 1318 | engines: {node: '>=12'} 1319 | 1320 | minimatch@3.1.2: 1321 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 1322 | 1323 | minimatch@5.1.6: 1324 | resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 1325 | engines: {node: '>=10'} 1326 | 1327 | mri@1.2.0: 1328 | resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} 1329 | engines: {node: '>=4'} 1330 | 1331 | ms@2.1.2: 1332 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1333 | 1334 | mute-stream@0.0.7: 1335 | resolution: {integrity: sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==} 1336 | 1337 | mute-stream@1.0.0: 1338 | resolution: {integrity: sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==} 1339 | engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} 1340 | 1341 | nanoid@3.3.7: 1342 | resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} 1343 | engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} 1344 | hasBin: true 1345 | 1346 | natural-compare-lite@1.4.0: 1347 | resolution: {integrity: sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==} 1348 | 1349 | natural-compare@1.4.0: 1350 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==} 1351 | 1352 | npm-run-path@5.3.0: 1353 | resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} 1354 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1355 | 1356 | once@1.4.0: 1357 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 1358 | 1359 | onetime@2.0.1: 1360 | resolution: {integrity: sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==} 1361 | engines: {node: '>=4'} 1362 | 1363 | onetime@5.1.2: 1364 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 1365 | engines: {node: '>=6'} 1366 | 1367 | onetime@6.0.0: 1368 | resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} 1369 | engines: {node: '>=12'} 1370 | 1371 | optionator@0.9.4: 1372 | resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} 1373 | engines: {node: '>= 0.8.0'} 1374 | 1375 | ora@5.4.1: 1376 | resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==} 1377 | engines: {node: '>=10'} 1378 | 1379 | os-tmpdir@1.0.2: 1380 | resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} 1381 | engines: {node: '>=0.10.0'} 1382 | 1383 | outdent@0.5.0: 1384 | resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} 1385 | 1386 | p-filter@2.1.0: 1387 | resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} 1388 | engines: {node: '>=8'} 1389 | 1390 | p-limit@2.3.0: 1391 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 1392 | engines: {node: '>=6'} 1393 | 1394 | p-limit@3.1.0: 1395 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1396 | engines: {node: '>=10'} 1397 | 1398 | p-locate@4.1.0: 1399 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 1400 | engines: {node: '>=8'} 1401 | 1402 | p-locate@5.0.0: 1403 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1404 | engines: {node: '>=10'} 1405 | 1406 | p-map@2.1.0: 1407 | resolution: {integrity: sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==} 1408 | engines: {node: '>=6'} 1409 | 1410 | p-try@2.2.0: 1411 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 1412 | engines: {node: '>=6'} 1413 | 1414 | parent-module@1.0.1: 1415 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 1416 | engines: {node: '>=6'} 1417 | 1418 | path-exists@4.0.0: 1419 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 1420 | engines: {node: '>=8'} 1421 | 1422 | path-is-absolute@1.0.1: 1423 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 1424 | engines: {node: '>=0.10.0'} 1425 | 1426 | path-key@3.1.1: 1427 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 1428 | engines: {node: '>=8'} 1429 | 1430 | path-key@4.0.0: 1431 | resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} 1432 | engines: {node: '>=12'} 1433 | 1434 | path-parse@1.0.7: 1435 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} 1436 | 1437 | path-type@4.0.0: 1438 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 1439 | engines: {node: '>=8'} 1440 | 1441 | pathe@1.1.2: 1442 | resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} 1443 | 1444 | pathval@2.0.0: 1445 | resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} 1446 | engines: {node: '>= 14.16'} 1447 | 1448 | picocolors@1.0.1: 1449 | resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} 1450 | 1451 | picomatch@2.3.1: 1452 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 1453 | engines: {node: '>=8.6'} 1454 | 1455 | pidtree@0.6.0: 1456 | resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} 1457 | engines: {node: '>=0.10'} 1458 | hasBin: true 1459 | 1460 | pify@4.0.1: 1461 | resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==} 1462 | engines: {node: '>=6'} 1463 | 1464 | pkg-dir@4.2.0: 1465 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==} 1466 | engines: {node: '>=8'} 1467 | 1468 | postcss@8.4.40: 1469 | resolution: {integrity: sha512-YF2kKIUzAofPMpfH6hOi2cGnv/HrUlfucspc7pDyvv7kGdqXrfj8SCl/t8owkEgKEuu8ZcRjSOxFxVLqwChZ2Q==} 1470 | engines: {node: ^10 || ^12 || >=14} 1471 | 1472 | preferred-pm@3.1.4: 1473 | resolution: {integrity: sha512-lEHd+yEm22jXdCphDrkvIJQU66EuLojPPtvZkpKIkiD+l0DMThF/niqZKJSoU8Vl7iuvtmzyMhir9LdVy5WMnA==} 1474 | engines: {node: '>=10'} 1475 | 1476 | prelude-ls@1.2.1: 1477 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 1478 | engines: {node: '>= 0.8.0'} 1479 | 1480 | prettier@2.8.8: 1481 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} 1482 | engines: {node: '>=10.13.0'} 1483 | hasBin: true 1484 | 1485 | pseudomap@1.0.2: 1486 | resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} 1487 | 1488 | punycode@2.3.1: 1489 | resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} 1490 | engines: {node: '>=6'} 1491 | 1492 | queue-microtask@1.2.3: 1493 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 1494 | 1495 | randombytes@2.1.0: 1496 | resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} 1497 | 1498 | read-yaml-file@1.1.0: 1499 | resolution: {integrity: sha512-VIMnQi/Z4HT2Fxuwg5KrY174U1VdUIASQVWXXyqtNRtxSr9IYkn1rsI6Tb6HsrHCmB7gVpNwX6JxPTHcH6IoTA==} 1500 | engines: {node: '>=6'} 1501 | 1502 | readable-stream@3.6.2: 1503 | resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} 1504 | engines: {node: '>= 6'} 1505 | 1506 | regenerator-runtime@0.14.1: 1507 | resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} 1508 | 1509 | resolve-from@4.0.0: 1510 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 1511 | engines: {node: '>=4'} 1512 | 1513 | resolve-from@5.0.0: 1514 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} 1515 | engines: {node: '>=8'} 1516 | 1517 | resolve@1.22.8: 1518 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} 1519 | hasBin: true 1520 | 1521 | restore-cursor@2.0.0: 1522 | resolution: {integrity: sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==} 1523 | engines: {node: '>=4'} 1524 | 1525 | restore-cursor@3.1.0: 1526 | resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} 1527 | engines: {node: '>=8'} 1528 | 1529 | restore-cursor@4.0.0: 1530 | resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} 1531 | engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} 1532 | 1533 | reusify@1.0.4: 1534 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 1535 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 1536 | 1537 | rfdc@1.4.1: 1538 | resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} 1539 | 1540 | rimraf@3.0.2: 1541 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 1542 | deprecated: Rimraf versions prior to v4 are no longer supported 1543 | hasBin: true 1544 | 1545 | rollup-plugin-dts@5.3.1: 1546 | resolution: {integrity: sha512-gusMi+Z4gY/JaEQeXnB0RUdU82h1kF0WYzCWgVmV4p3hWXqelaKuCvcJawfeg+EKn2T1Ie+YWF2OiN1/L8bTVg==} 1547 | engines: {node: '>=v14.21.3'} 1548 | peerDependencies: 1549 | rollup: ^3.0 1550 | typescript: ^4.1 || ^5.0 1551 | 1552 | rollup@3.29.4: 1553 | resolution: {integrity: sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw==} 1554 | engines: {node: '>=14.18.0', npm: '>=8.0.0'} 1555 | hasBin: true 1556 | 1557 | rollup@4.19.0: 1558 | resolution: {integrity: sha512-5r7EYSQIowHsK4eTZ0Y81qpZuJz+MUuYeqmmYmRMl1nwhdmbiYqt5jwzf6u7wyOzJgYqtCRMtVRKOtHANBz7rA==} 1559 | engines: {node: '>=18.0.0', npm: '>=8.0.0'} 1560 | hasBin: true 1561 | 1562 | run-async@2.4.1: 1563 | resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} 1564 | engines: {node: '>=0.12.0'} 1565 | 1566 | run-async@3.0.0: 1567 | resolution: {integrity: sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==} 1568 | engines: {node: '>=0.12.0'} 1569 | 1570 | run-parallel@1.2.0: 1571 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 1572 | 1573 | rx-lite-aggregates@4.0.8: 1574 | resolution: {integrity: sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==} 1575 | 1576 | rx-lite@4.0.8: 1577 | resolution: {integrity: sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==} 1578 | 1579 | rxjs@7.8.1: 1580 | resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==} 1581 | 1582 | safe-buffer@5.2.1: 1583 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 1584 | 1585 | safer-buffer@2.1.2: 1586 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 1587 | 1588 | semver@7.6.3: 1589 | resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} 1590 | engines: {node: '>=10'} 1591 | hasBin: true 1592 | 1593 | serialize-javascript@6.0.2: 1594 | resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==} 1595 | 1596 | shebang-command@1.2.0: 1597 | resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} 1598 | engines: {node: '>=0.10.0'} 1599 | 1600 | shebang-command@2.0.0: 1601 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 1602 | engines: {node: '>=8'} 1603 | 1604 | shebang-regex@1.0.0: 1605 | resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} 1606 | engines: {node: '>=0.10.0'} 1607 | 1608 | shebang-regex@3.0.0: 1609 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 1610 | engines: {node: '>=8'} 1611 | 1612 | siginfo@2.0.0: 1613 | resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} 1614 | 1615 | signal-exit@3.0.7: 1616 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 1617 | 1618 | signal-exit@4.1.0: 1619 | resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} 1620 | engines: {node: '>=14'} 1621 | 1622 | slash@3.0.0: 1623 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 1624 | engines: {node: '>=8'} 1625 | 1626 | slash@4.0.0: 1627 | resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} 1628 | engines: {node: '>=12'} 1629 | 1630 | slice-ansi@5.0.0: 1631 | resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} 1632 | engines: {node: '>=12'} 1633 | 1634 | smob@1.5.0: 1635 | resolution: {integrity: sha512-g6T+p7QO8npa+/hNx9ohv1E5pVCmWrVCUzUXJyLdMmftX6ER0oiWY/w9knEonLpnOp6b6FenKnMfR8gqwWdwig==} 1636 | 1637 | source-map-js@1.2.0: 1638 | resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} 1639 | engines: {node: '>=0.10.0'} 1640 | 1641 | source-map-support@0.5.21: 1642 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} 1643 | 1644 | source-map@0.6.1: 1645 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 1646 | engines: {node: '>=0.10.0'} 1647 | 1648 | spawndamnit@2.0.0: 1649 | resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} 1650 | 1651 | sprintf-js@1.0.3: 1652 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==} 1653 | 1654 | stackback@0.0.2: 1655 | resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} 1656 | 1657 | std-env@3.7.0: 1658 | resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} 1659 | 1660 | string-argv@0.3.2: 1661 | resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} 1662 | engines: {node: '>=0.6.19'} 1663 | 1664 | string-width@2.1.1: 1665 | resolution: {integrity: sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==} 1666 | engines: {node: '>=4'} 1667 | 1668 | string-width@4.2.3: 1669 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 1670 | engines: {node: '>=8'} 1671 | 1672 | string-width@5.1.2: 1673 | resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} 1674 | engines: {node: '>=12'} 1675 | 1676 | string_decoder@1.3.0: 1677 | resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==} 1678 | 1679 | strip-ansi@4.0.0: 1680 | resolution: {integrity: sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==} 1681 | engines: {node: '>=4'} 1682 | 1683 | strip-ansi@6.0.1: 1684 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 1685 | engines: {node: '>=8'} 1686 | 1687 | strip-ansi@7.1.0: 1688 | resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} 1689 | engines: {node: '>=12'} 1690 | 1691 | strip-bom@3.0.0: 1692 | resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} 1693 | engines: {node: '>=4'} 1694 | 1695 | strip-final-newline@3.0.0: 1696 | resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} 1697 | engines: {node: '>=12'} 1698 | 1699 | strip-json-comments@3.1.1: 1700 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 1701 | engines: {node: '>=8'} 1702 | 1703 | supports-color@5.5.0: 1704 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 1705 | engines: {node: '>=4'} 1706 | 1707 | supports-color@7.2.0: 1708 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 1709 | engines: {node: '>=8'} 1710 | 1711 | supports-preserve-symlinks-flag@1.0.0: 1712 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} 1713 | engines: {node: '>= 0.4'} 1714 | 1715 | term-size@2.2.1: 1716 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} 1717 | engines: {node: '>=8'} 1718 | 1719 | terser@5.31.3: 1720 | resolution: {integrity: sha512-pAfYn3NIZLyZpa83ZKigvj6Rn9c/vd5KfYGX7cN1mnzqgDcxWvrU5ZtAfIKhEXz9nRecw4z3LXkjaq96/qZqAA==} 1721 | engines: {node: '>=10'} 1722 | hasBin: true 1723 | 1724 | text-table@0.2.0: 1725 | resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} 1726 | 1727 | through@2.3.8: 1728 | resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} 1729 | 1730 | tinybench@2.8.0: 1731 | resolution: {integrity: sha512-1/eK7zUnIklz4JUUlL+658n58XO2hHLQfSk1Zf2LKieUjxidN16eKFEoDEfjHc3ohofSSqK3X5yO6VGb6iW8Lw==} 1732 | 1733 | tinypool@1.0.0: 1734 | resolution: {integrity: sha512-KIKExllK7jp3uvrNtvRBYBWBOAXSX8ZvoaD8T+7KB/QHIuoJW3Pmr60zucywjAlMb5TeXUkcs/MWeWLu0qvuAQ==} 1735 | engines: {node: ^18.0.0 || >=20.0.0} 1736 | 1737 | tinyrainbow@1.2.0: 1738 | resolution: {integrity: sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==} 1739 | engines: {node: '>=14.0.0'} 1740 | 1741 | tinyspy@3.0.0: 1742 | resolution: {integrity: sha512-q5nmENpTHgiPVd1cJDDc9cVoYN5x4vCvwT3FMilvKPKneCBZAxn2YWQjDF0UMcE9k0Cay1gBiDfTMU0g+mPMQA==} 1743 | engines: {node: '>=14.0.0'} 1744 | 1745 | tmp@0.0.33: 1746 | resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} 1747 | engines: {node: '>=0.6.0'} 1748 | 1749 | to-regex-range@5.0.1: 1750 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 1751 | engines: {node: '>=8.0'} 1752 | 1753 | tslib@1.14.1: 1754 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 1755 | 1756 | tslib@2.6.3: 1757 | resolution: {integrity: sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==} 1758 | 1759 | tsutils@3.21.0: 1760 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 1761 | engines: {node: '>= 6'} 1762 | peerDependencies: 1763 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 1764 | 1765 | turbo-darwin-64@1.13.4: 1766 | resolution: {integrity: sha512-A0eKd73R7CGnRinTiS7txkMElg+R5rKFp9HV7baDiEL4xTG1FIg/56Vm7A5RVgg8UNgG2qNnrfatJtb+dRmNdw==} 1767 | cpu: [x64] 1768 | os: [darwin] 1769 | 1770 | turbo-darwin-arm64@1.13.4: 1771 | resolution: {integrity: sha512-eG769Q0NF6/Vyjsr3mKCnkG/eW6dKMBZk6dxWOdrHfrg6QgfkBUk0WUUujzdtVPiUIvsh4l46vQrNVd9EOtbyA==} 1772 | cpu: [arm64] 1773 | os: [darwin] 1774 | 1775 | turbo-linux-64@1.13.4: 1776 | resolution: {integrity: sha512-Bq0JphDeNw3XEi+Xb/e4xoKhs1DHN7OoLVUbTIQz+gazYjigVZvtwCvgrZI7eW9Xo1eOXM2zw2u1DGLLUfmGkQ==} 1777 | cpu: [x64] 1778 | os: [linux] 1779 | 1780 | turbo-linux-arm64@1.13.4: 1781 | resolution: {integrity: sha512-BJcXw1DDiHO/okYbaNdcWN6szjXyHWx9d460v6fCHY65G8CyqGU3y2uUTPK89o8lq/b2C8NK0yZD+Vp0f9VoIg==} 1782 | cpu: [arm64] 1783 | os: [linux] 1784 | 1785 | turbo-windows-64@1.13.4: 1786 | resolution: {integrity: sha512-OFFhXHOFLN7A78vD/dlVuuSSVEB3s9ZBj18Tm1hk3aW1HTWTuAw0ReN6ZNlVObZUHvGy8d57OAGGxf2bT3etQw==} 1787 | cpu: [x64] 1788 | os: [win32] 1789 | 1790 | turbo-windows-arm64@1.13.4: 1791 | resolution: {integrity: sha512-u5A+VOKHswJJmJ8o8rcilBfU5U3Y1TTAfP9wX8bFh8teYF1ghP0EhtMRLjhtp6RPa+XCxHHVA2CiC3gbh5eg5g==} 1792 | cpu: [arm64] 1793 | os: [win32] 1794 | 1795 | turbo@1.13.4: 1796 | resolution: {integrity: sha512-1q7+9UJABuBAHrcC4Sxp5lOqYS5mvxRrwa33wpIyM18hlOCpRD/fTJNxZ0vhbMcJmz15o9kkVm743mPn7p6jpQ==} 1797 | hasBin: true 1798 | 1799 | type-check@0.4.0: 1800 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 1801 | engines: {node: '>= 0.8.0'} 1802 | 1803 | type-fest@0.20.2: 1804 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 1805 | engines: {node: '>=10'} 1806 | 1807 | type-fest@0.21.3: 1808 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} 1809 | engines: {node: '>=10'} 1810 | 1811 | type-fest@1.4.0: 1812 | resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} 1813 | engines: {node: '>=10'} 1814 | 1815 | typescript@4.9.5: 1816 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} 1817 | engines: {node: '>=4.2.0'} 1818 | hasBin: true 1819 | 1820 | universalify@0.1.2: 1821 | resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} 1822 | engines: {node: '>= 4.0.0'} 1823 | 1824 | universalify@2.0.1: 1825 | resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} 1826 | engines: {node: '>= 10.0.0'} 1827 | 1828 | uri-js@4.4.1: 1829 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 1830 | 1831 | util-deprecate@1.0.2: 1832 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 1833 | 1834 | vite-node@2.0.4: 1835 | resolution: {integrity: sha512-ZpJVkxcakYtig5iakNeL7N3trufe3M6vGuzYAr4GsbCTwobDeyPJpE4cjDhhPluv8OvQCFzu2LWp6GkoKRITXA==} 1836 | engines: {node: ^18.0.0 || >=20.0.0} 1837 | hasBin: true 1838 | 1839 | vite@5.3.5: 1840 | resolution: {integrity: sha512-MdjglKR6AQXQb9JGiS7Rc2wC6uMjcm7Go/NHNO63EwiJXfuk9PgqiP/n5IDJCziMkfw9n4Ubp7lttNwz+8ZVKA==} 1841 | engines: {node: ^18.0.0 || >=20.0.0} 1842 | hasBin: true 1843 | peerDependencies: 1844 | '@types/node': ^18.0.0 || >=20.0.0 1845 | less: '*' 1846 | lightningcss: ^1.21.0 1847 | sass: '*' 1848 | stylus: '*' 1849 | sugarss: '*' 1850 | terser: ^5.4.0 1851 | peerDependenciesMeta: 1852 | '@types/node': 1853 | optional: true 1854 | less: 1855 | optional: true 1856 | lightningcss: 1857 | optional: true 1858 | sass: 1859 | optional: true 1860 | stylus: 1861 | optional: true 1862 | sugarss: 1863 | optional: true 1864 | terser: 1865 | optional: true 1866 | 1867 | vitest@2.0.4: 1868 | resolution: {integrity: sha512-luNLDpfsnxw5QSW4bISPe6tkxVvv5wn2BBs/PuDRkhXZ319doZyLOBr1sjfB5yCEpTiU7xCAdViM8TNVGPwoog==} 1869 | engines: {node: ^18.0.0 || >=20.0.0} 1870 | hasBin: true 1871 | peerDependencies: 1872 | '@edge-runtime/vm': '*' 1873 | '@types/node': ^18.0.0 || >=20.0.0 1874 | '@vitest/browser': 2.0.4 1875 | '@vitest/ui': 2.0.4 1876 | happy-dom: '*' 1877 | jsdom: '*' 1878 | peerDependenciesMeta: 1879 | '@edge-runtime/vm': 1880 | optional: true 1881 | '@types/node': 1882 | optional: true 1883 | '@vitest/browser': 1884 | optional: true 1885 | '@vitest/ui': 1886 | optional: true 1887 | happy-dom: 1888 | optional: true 1889 | jsdom: 1890 | optional: true 1891 | 1892 | wcwidth@1.0.1: 1893 | resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==} 1894 | 1895 | which-pm@2.2.0: 1896 | resolution: {integrity: sha512-MOiaDbA5ZZgUjkeMWM5EkJp4loW5ZRoa5bc3/aeMox/PJelMhE6t7S/mLuiY43DBupyxH+S0U1bTui9kWUlmsw==} 1897 | engines: {node: '>=8.15'} 1898 | 1899 | which@1.3.1: 1900 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 1901 | hasBin: true 1902 | 1903 | which@2.0.2: 1904 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 1905 | engines: {node: '>= 8'} 1906 | hasBin: true 1907 | 1908 | why-is-node-running@2.3.0: 1909 | resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==} 1910 | engines: {node: '>=8'} 1911 | hasBin: true 1912 | 1913 | word-wrap@1.2.5: 1914 | resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} 1915 | engines: {node: '>=0.10.0'} 1916 | 1917 | wrap-ansi@6.2.0: 1918 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} 1919 | engines: {node: '>=8'} 1920 | 1921 | wrap-ansi@8.1.0: 1922 | resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} 1923 | engines: {node: '>=12'} 1924 | 1925 | wrappy@1.0.2: 1926 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 1927 | 1928 | yallist@2.1.2: 1929 | resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} 1930 | 1931 | yaml@2.3.1: 1932 | resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} 1933 | engines: {node: '>= 14'} 1934 | 1935 | yocto-queue@0.1.0: 1936 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 1937 | engines: {node: '>=10'} 1938 | 1939 | yoctocolors-cjs@2.1.2: 1940 | resolution: {integrity: sha512-cYVsTjKl8b+FrnidjibDWskAv7UKOfcwaVZdp/it9n1s9fU3IkgDbhdIRKCW4JDsAlECJY0ytoVPT3sK6kideA==} 1941 | engines: {node: '>=18'} 1942 | 1943 | snapshots: 1944 | 1945 | '@ampproject/remapping@2.3.0': 1946 | dependencies: 1947 | '@jridgewell/gen-mapping': 0.3.5 1948 | '@jridgewell/trace-mapping': 0.3.25 1949 | 1950 | '@babel/code-frame@7.24.7': 1951 | dependencies: 1952 | '@babel/highlight': 7.24.7 1953 | picocolors: 1.0.1 1954 | optional: true 1955 | 1956 | '@babel/helper-validator-identifier@7.24.7': 1957 | optional: true 1958 | 1959 | '@babel/highlight@7.24.7': 1960 | dependencies: 1961 | '@babel/helper-validator-identifier': 7.24.7 1962 | chalk: 2.4.2 1963 | js-tokens: 4.0.0 1964 | picocolors: 1.0.1 1965 | optional: true 1966 | 1967 | '@babel/runtime@7.24.8': 1968 | dependencies: 1969 | regenerator-runtime: 0.14.1 1970 | 1971 | '@changesets/apply-release-plan@7.0.4': 1972 | dependencies: 1973 | '@babel/runtime': 7.24.8 1974 | '@changesets/config': 3.0.2 1975 | '@changesets/get-version-range-type': 0.4.0 1976 | '@changesets/git': 3.0.0 1977 | '@changesets/should-skip-package': 0.1.0 1978 | '@changesets/types': 6.0.0 1979 | '@manypkg/get-packages': 1.1.3 1980 | detect-indent: 6.1.0 1981 | fs-extra: 7.0.1 1982 | lodash.startcase: 4.4.0 1983 | outdent: 0.5.0 1984 | prettier: 2.8.8 1985 | resolve-from: 5.0.0 1986 | semver: 7.6.3 1987 | 1988 | '@changesets/assemble-release-plan@6.0.3': 1989 | dependencies: 1990 | '@babel/runtime': 7.24.8 1991 | '@changesets/errors': 0.2.0 1992 | '@changesets/get-dependents-graph': 2.1.1 1993 | '@changesets/should-skip-package': 0.1.0 1994 | '@changesets/types': 6.0.0 1995 | '@manypkg/get-packages': 1.1.3 1996 | semver: 7.6.3 1997 | 1998 | '@changesets/changelog-git@0.2.0': 1999 | dependencies: 2000 | '@changesets/types': 6.0.0 2001 | 2002 | '@changesets/cli@2.27.7': 2003 | dependencies: 2004 | '@babel/runtime': 7.24.8 2005 | '@changesets/apply-release-plan': 7.0.4 2006 | '@changesets/assemble-release-plan': 6.0.3 2007 | '@changesets/changelog-git': 0.2.0 2008 | '@changesets/config': 3.0.2 2009 | '@changesets/errors': 0.2.0 2010 | '@changesets/get-dependents-graph': 2.1.1 2011 | '@changesets/get-release-plan': 4.0.3 2012 | '@changesets/git': 3.0.0 2013 | '@changesets/logger': 0.1.0 2014 | '@changesets/pre': 2.0.0 2015 | '@changesets/read': 0.6.0 2016 | '@changesets/should-skip-package': 0.1.0 2017 | '@changesets/types': 6.0.0 2018 | '@changesets/write': 0.3.1 2019 | '@manypkg/get-packages': 1.1.3 2020 | '@types/semver': 7.5.8 2021 | ansi-colors: 4.1.3 2022 | chalk: 2.4.2 2023 | ci-info: 3.9.0 2024 | enquirer: 2.4.1 2025 | external-editor: 3.1.0 2026 | fs-extra: 7.0.1 2027 | human-id: 1.0.2 2028 | mri: 1.2.0 2029 | outdent: 0.5.0 2030 | p-limit: 2.3.0 2031 | preferred-pm: 3.1.4 2032 | resolve-from: 5.0.0 2033 | semver: 7.6.3 2034 | spawndamnit: 2.0.0 2035 | term-size: 2.2.1 2036 | 2037 | '@changesets/config@3.0.2': 2038 | dependencies: 2039 | '@changesets/errors': 0.2.0 2040 | '@changesets/get-dependents-graph': 2.1.1 2041 | '@changesets/logger': 0.1.0 2042 | '@changesets/types': 6.0.0 2043 | '@manypkg/get-packages': 1.1.3 2044 | fs-extra: 7.0.1 2045 | micromatch: 4.0.7 2046 | 2047 | '@changesets/errors@0.2.0': 2048 | dependencies: 2049 | extendable-error: 0.1.7 2050 | 2051 | '@changesets/get-dependents-graph@2.1.1': 2052 | dependencies: 2053 | '@changesets/types': 6.0.0 2054 | '@manypkg/get-packages': 1.1.3 2055 | chalk: 2.4.2 2056 | fs-extra: 7.0.1 2057 | semver: 7.6.3 2058 | 2059 | '@changesets/get-release-plan@4.0.3': 2060 | dependencies: 2061 | '@babel/runtime': 7.24.8 2062 | '@changesets/assemble-release-plan': 6.0.3 2063 | '@changesets/config': 3.0.2 2064 | '@changesets/pre': 2.0.0 2065 | '@changesets/read': 0.6.0 2066 | '@changesets/types': 6.0.0 2067 | '@manypkg/get-packages': 1.1.3 2068 | 2069 | '@changesets/get-version-range-type@0.4.0': {} 2070 | 2071 | '@changesets/git@3.0.0': 2072 | dependencies: 2073 | '@babel/runtime': 7.24.8 2074 | '@changesets/errors': 0.2.0 2075 | '@changesets/types': 6.0.0 2076 | '@manypkg/get-packages': 1.1.3 2077 | is-subdir: 1.2.0 2078 | micromatch: 4.0.7 2079 | spawndamnit: 2.0.0 2080 | 2081 | '@changesets/logger@0.1.0': 2082 | dependencies: 2083 | chalk: 2.4.2 2084 | 2085 | '@changesets/parse@0.4.0': 2086 | dependencies: 2087 | '@changesets/types': 6.0.0 2088 | js-yaml: 3.14.1 2089 | 2090 | '@changesets/pre@2.0.0': 2091 | dependencies: 2092 | '@babel/runtime': 7.24.8 2093 | '@changesets/errors': 0.2.0 2094 | '@changesets/types': 6.0.0 2095 | '@manypkg/get-packages': 1.1.3 2096 | fs-extra: 7.0.1 2097 | 2098 | '@changesets/read@0.6.0': 2099 | dependencies: 2100 | '@babel/runtime': 7.24.8 2101 | '@changesets/git': 3.0.0 2102 | '@changesets/logger': 0.1.0 2103 | '@changesets/parse': 0.4.0 2104 | '@changesets/types': 6.0.0 2105 | chalk: 2.4.2 2106 | fs-extra: 7.0.1 2107 | p-filter: 2.1.0 2108 | 2109 | '@changesets/should-skip-package@0.1.0': 2110 | dependencies: 2111 | '@babel/runtime': 7.24.8 2112 | '@changesets/types': 6.0.0 2113 | '@manypkg/get-packages': 1.1.3 2114 | 2115 | '@changesets/types@4.1.0': {} 2116 | 2117 | '@changesets/types@6.0.0': {} 2118 | 2119 | '@changesets/write@0.3.1': 2120 | dependencies: 2121 | '@babel/runtime': 7.24.8 2122 | '@changesets/types': 6.0.0 2123 | fs-extra: 7.0.1 2124 | human-id: 1.0.2 2125 | prettier: 2.8.8 2126 | 2127 | '@esbuild/aix-ppc64@0.21.5': 2128 | optional: true 2129 | 2130 | '@esbuild/android-arm64@0.21.5': 2131 | optional: true 2132 | 2133 | '@esbuild/android-arm@0.21.5': 2134 | optional: true 2135 | 2136 | '@esbuild/android-x64@0.21.5': 2137 | optional: true 2138 | 2139 | '@esbuild/darwin-arm64@0.21.5': 2140 | optional: true 2141 | 2142 | '@esbuild/darwin-x64@0.21.5': 2143 | optional: true 2144 | 2145 | '@esbuild/freebsd-arm64@0.21.5': 2146 | optional: true 2147 | 2148 | '@esbuild/freebsd-x64@0.21.5': 2149 | optional: true 2150 | 2151 | '@esbuild/linux-arm64@0.21.5': 2152 | optional: true 2153 | 2154 | '@esbuild/linux-arm@0.21.5': 2155 | optional: true 2156 | 2157 | '@esbuild/linux-ia32@0.21.5': 2158 | optional: true 2159 | 2160 | '@esbuild/linux-loong64@0.21.5': 2161 | optional: true 2162 | 2163 | '@esbuild/linux-mips64el@0.21.5': 2164 | optional: true 2165 | 2166 | '@esbuild/linux-ppc64@0.21.5': 2167 | optional: true 2168 | 2169 | '@esbuild/linux-riscv64@0.21.5': 2170 | optional: true 2171 | 2172 | '@esbuild/linux-s390x@0.21.5': 2173 | optional: true 2174 | 2175 | '@esbuild/linux-x64@0.21.5': 2176 | optional: true 2177 | 2178 | '@esbuild/netbsd-x64@0.21.5': 2179 | optional: true 2180 | 2181 | '@esbuild/openbsd-x64@0.21.5': 2182 | optional: true 2183 | 2184 | '@esbuild/sunos-x64@0.21.5': 2185 | optional: true 2186 | 2187 | '@esbuild/win32-arm64@0.21.5': 2188 | optional: true 2189 | 2190 | '@esbuild/win32-ia32@0.21.5': 2191 | optional: true 2192 | 2193 | '@esbuild/win32-x64@0.21.5': 2194 | optional: true 2195 | 2196 | '@eslint-community/eslint-utils@4.4.0(eslint@8.57.0)': 2197 | dependencies: 2198 | eslint: 8.57.0 2199 | eslint-visitor-keys: 3.4.3 2200 | 2201 | '@eslint-community/regexpp@4.11.0': {} 2202 | 2203 | '@eslint/eslintrc@2.1.4': 2204 | dependencies: 2205 | ajv: 6.12.6 2206 | debug: 4.3.5 2207 | espree: 9.6.1 2208 | globals: 13.24.0 2209 | ignore: 5.3.1 2210 | import-fresh: 3.3.0 2211 | js-yaml: 4.1.0 2212 | minimatch: 3.1.2 2213 | strip-json-comments: 3.1.1 2214 | transitivePeerDependencies: 2215 | - supports-color 2216 | 2217 | '@eslint/js@8.57.0': {} 2218 | 2219 | '@humanwhocodes/config-array@0.11.14': 2220 | dependencies: 2221 | '@humanwhocodes/object-schema': 2.0.3 2222 | debug: 4.3.5 2223 | minimatch: 3.1.2 2224 | transitivePeerDependencies: 2225 | - supports-color 2226 | 2227 | '@humanwhocodes/module-importer@1.0.1': {} 2228 | 2229 | '@humanwhocodes/object-schema@2.0.3': {} 2230 | 2231 | '@inquirer/figures@1.0.5': {} 2232 | 2233 | '@jridgewell/gen-mapping@0.3.5': 2234 | dependencies: 2235 | '@jridgewell/set-array': 1.2.1 2236 | '@jridgewell/sourcemap-codec': 1.5.0 2237 | '@jridgewell/trace-mapping': 0.3.25 2238 | 2239 | '@jridgewell/resolve-uri@3.1.2': {} 2240 | 2241 | '@jridgewell/set-array@1.2.1': {} 2242 | 2243 | '@jridgewell/source-map@0.3.6': 2244 | dependencies: 2245 | '@jridgewell/gen-mapping': 0.3.5 2246 | '@jridgewell/trace-mapping': 0.3.25 2247 | 2248 | '@jridgewell/sourcemap-codec@1.5.0': {} 2249 | 2250 | '@jridgewell/trace-mapping@0.3.25': 2251 | dependencies: 2252 | '@jridgewell/resolve-uri': 3.1.2 2253 | '@jridgewell/sourcemap-codec': 1.5.0 2254 | 2255 | '@manypkg/find-root@1.1.0': 2256 | dependencies: 2257 | '@babel/runtime': 7.24.8 2258 | '@types/node': 12.20.55 2259 | find-up: 4.1.0 2260 | fs-extra: 8.1.0 2261 | 2262 | '@manypkg/get-packages@1.1.3': 2263 | dependencies: 2264 | '@babel/runtime': 7.24.8 2265 | '@changesets/types': 4.1.0 2266 | '@manypkg/find-root': 1.1.0 2267 | fs-extra: 8.1.0 2268 | globby: 11.1.0 2269 | read-yaml-file: 1.1.0 2270 | 2271 | '@nodelib/fs.scandir@2.1.5': 2272 | dependencies: 2273 | '@nodelib/fs.stat': 2.0.5 2274 | run-parallel: 1.2.0 2275 | 2276 | '@nodelib/fs.stat@2.0.5': {} 2277 | 2278 | '@nodelib/fs.walk@1.2.8': 2279 | dependencies: 2280 | '@nodelib/fs.scandir': 2.1.5 2281 | fastq: 1.17.1 2282 | 2283 | '@rollup/plugin-alias@5.1.0(rollup@3.29.4)': 2284 | dependencies: 2285 | slash: 4.0.0 2286 | optionalDependencies: 2287 | rollup: 3.29.4 2288 | 2289 | '@rollup/plugin-commonjs@25.0.8(rollup@3.29.4)': 2290 | dependencies: 2291 | '@rollup/pluginutils': 5.1.0(rollup@3.29.4) 2292 | commondir: 1.0.1 2293 | estree-walker: 2.0.2 2294 | glob: 8.1.0 2295 | is-reference: 1.2.1 2296 | magic-string: 0.30.10 2297 | optionalDependencies: 2298 | rollup: 3.29.4 2299 | 2300 | '@rollup/plugin-json@6.1.0(rollup@3.29.4)': 2301 | dependencies: 2302 | '@rollup/pluginutils': 5.1.0(rollup@3.29.4) 2303 | optionalDependencies: 2304 | rollup: 3.29.4 2305 | 2306 | '@rollup/plugin-terser@0.4.4(rollup@3.29.4)': 2307 | dependencies: 2308 | serialize-javascript: 6.0.2 2309 | smob: 1.5.0 2310 | terser: 5.31.3 2311 | optionalDependencies: 2312 | rollup: 3.29.4 2313 | 2314 | '@rollup/plugin-typescript@11.1.6(rollup@3.29.4)(tslib@2.6.3)(typescript@4.9.5)': 2315 | dependencies: 2316 | '@rollup/pluginutils': 5.1.0(rollup@3.29.4) 2317 | resolve: 1.22.8 2318 | typescript: 4.9.5 2319 | optionalDependencies: 2320 | rollup: 3.29.4 2321 | tslib: 2.6.3 2322 | 2323 | '@rollup/pluginutils@5.1.0(rollup@3.29.4)': 2324 | dependencies: 2325 | '@types/estree': 1.0.5 2326 | estree-walker: 2.0.2 2327 | picomatch: 2.3.1 2328 | optionalDependencies: 2329 | rollup: 3.29.4 2330 | 2331 | '@rollup/rollup-android-arm-eabi@4.19.0': 2332 | optional: true 2333 | 2334 | '@rollup/rollup-android-arm64@4.19.0': 2335 | optional: true 2336 | 2337 | '@rollup/rollup-darwin-arm64@4.19.0': 2338 | optional: true 2339 | 2340 | '@rollup/rollup-darwin-x64@4.19.0': 2341 | optional: true 2342 | 2343 | '@rollup/rollup-linux-arm-gnueabihf@4.19.0': 2344 | optional: true 2345 | 2346 | '@rollup/rollup-linux-arm-musleabihf@4.19.0': 2347 | optional: true 2348 | 2349 | '@rollup/rollup-linux-arm64-gnu@4.19.0': 2350 | optional: true 2351 | 2352 | '@rollup/rollup-linux-arm64-musl@4.19.0': 2353 | optional: true 2354 | 2355 | '@rollup/rollup-linux-powerpc64le-gnu@4.19.0': 2356 | optional: true 2357 | 2358 | '@rollup/rollup-linux-riscv64-gnu@4.19.0': 2359 | optional: true 2360 | 2361 | '@rollup/rollup-linux-s390x-gnu@4.19.0': 2362 | optional: true 2363 | 2364 | '@rollup/rollup-linux-x64-gnu@4.19.0': 2365 | optional: true 2366 | 2367 | '@rollup/rollup-linux-x64-musl@4.19.0': 2368 | optional: true 2369 | 2370 | '@rollup/rollup-win32-arm64-msvc@4.19.0': 2371 | optional: true 2372 | 2373 | '@rollup/rollup-win32-ia32-msvc@4.19.0': 2374 | optional: true 2375 | 2376 | '@rollup/rollup-win32-x64-msvc@4.19.0': 2377 | optional: true 2378 | 2379 | '@types/estree@1.0.5': {} 2380 | 2381 | '@types/json-schema@7.0.15': {} 2382 | 2383 | '@types/node@12.20.55': {} 2384 | 2385 | '@types/semver@7.5.8': {} 2386 | 2387 | '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0)(typescript@4.9.5)': 2388 | dependencies: 2389 | '@eslint-community/regexpp': 4.11.0 2390 | '@typescript-eslint/parser': 5.62.0(eslint@8.57.0)(typescript@4.9.5) 2391 | '@typescript-eslint/scope-manager': 5.62.0 2392 | '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.0)(typescript@4.9.5) 2393 | '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@4.9.5) 2394 | debug: 4.3.5 2395 | eslint: 8.57.0 2396 | graphemer: 1.4.0 2397 | ignore: 5.3.1 2398 | natural-compare-lite: 1.4.0 2399 | semver: 7.6.3 2400 | tsutils: 3.21.0(typescript@4.9.5) 2401 | optionalDependencies: 2402 | typescript: 4.9.5 2403 | transitivePeerDependencies: 2404 | - supports-color 2405 | 2406 | '@typescript-eslint/parser@5.62.0(eslint@8.57.0)(typescript@4.9.5)': 2407 | dependencies: 2408 | '@typescript-eslint/scope-manager': 5.62.0 2409 | '@typescript-eslint/types': 5.62.0 2410 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) 2411 | debug: 4.3.5 2412 | eslint: 8.57.0 2413 | optionalDependencies: 2414 | typescript: 4.9.5 2415 | transitivePeerDependencies: 2416 | - supports-color 2417 | 2418 | '@typescript-eslint/scope-manager@5.62.0': 2419 | dependencies: 2420 | '@typescript-eslint/types': 5.62.0 2421 | '@typescript-eslint/visitor-keys': 5.62.0 2422 | 2423 | '@typescript-eslint/type-utils@5.62.0(eslint@8.57.0)(typescript@4.9.5)': 2424 | dependencies: 2425 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) 2426 | '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@4.9.5) 2427 | debug: 4.3.5 2428 | eslint: 8.57.0 2429 | tsutils: 3.21.0(typescript@4.9.5) 2430 | optionalDependencies: 2431 | typescript: 4.9.5 2432 | transitivePeerDependencies: 2433 | - supports-color 2434 | 2435 | '@typescript-eslint/types@5.62.0': {} 2436 | 2437 | '@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5)': 2438 | dependencies: 2439 | '@typescript-eslint/types': 5.62.0 2440 | '@typescript-eslint/visitor-keys': 5.62.0 2441 | debug: 4.3.5 2442 | globby: 11.1.0 2443 | is-glob: 4.0.3 2444 | semver: 7.6.3 2445 | tsutils: 3.21.0(typescript@4.9.5) 2446 | optionalDependencies: 2447 | typescript: 4.9.5 2448 | transitivePeerDependencies: 2449 | - supports-color 2450 | 2451 | '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@4.9.5)': 2452 | dependencies: 2453 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 2454 | '@types/json-schema': 7.0.15 2455 | '@types/semver': 7.5.8 2456 | '@typescript-eslint/scope-manager': 5.62.0 2457 | '@typescript-eslint/types': 5.62.0 2458 | '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) 2459 | eslint: 8.57.0 2460 | eslint-scope: 5.1.1 2461 | semver: 7.6.3 2462 | transitivePeerDependencies: 2463 | - supports-color 2464 | - typescript 2465 | 2466 | '@typescript-eslint/visitor-keys@5.62.0': 2467 | dependencies: 2468 | '@typescript-eslint/types': 5.62.0 2469 | eslint-visitor-keys: 3.4.3 2470 | 2471 | '@ungap/structured-clone@1.2.0': {} 2472 | 2473 | '@vitest/expect@2.0.4': 2474 | dependencies: 2475 | '@vitest/spy': 2.0.4 2476 | '@vitest/utils': 2.0.4 2477 | chai: 5.1.1 2478 | tinyrainbow: 1.2.0 2479 | 2480 | '@vitest/pretty-format@2.0.4': 2481 | dependencies: 2482 | tinyrainbow: 1.2.0 2483 | 2484 | '@vitest/runner@2.0.4': 2485 | dependencies: 2486 | '@vitest/utils': 2.0.4 2487 | pathe: 1.1.2 2488 | 2489 | '@vitest/snapshot@2.0.4': 2490 | dependencies: 2491 | '@vitest/pretty-format': 2.0.4 2492 | magic-string: 0.30.10 2493 | pathe: 1.1.2 2494 | 2495 | '@vitest/spy@2.0.4': 2496 | dependencies: 2497 | tinyspy: 3.0.0 2498 | 2499 | '@vitest/utils@2.0.4': 2500 | dependencies: 2501 | '@vitest/pretty-format': 2.0.4 2502 | estree-walker: 3.0.3 2503 | loupe: 3.1.1 2504 | tinyrainbow: 1.2.0 2505 | 2506 | acorn-jsx@5.3.2(acorn@8.12.1): 2507 | dependencies: 2508 | acorn: 8.12.1 2509 | 2510 | acorn@8.12.1: {} 2511 | 2512 | ajv@6.12.6: 2513 | dependencies: 2514 | fast-deep-equal: 3.1.3 2515 | fast-json-stable-stringify: 2.1.0 2516 | json-schema-traverse: 0.4.1 2517 | uri-js: 4.4.1 2518 | 2519 | ansi-colors@4.1.3: {} 2520 | 2521 | ansi-escapes@3.2.0: {} 2522 | 2523 | ansi-escapes@4.3.2: 2524 | dependencies: 2525 | type-fest: 0.21.3 2526 | 2527 | ansi-escapes@5.0.0: 2528 | dependencies: 2529 | type-fest: 1.4.0 2530 | 2531 | ansi-regex@3.0.1: {} 2532 | 2533 | ansi-regex@5.0.1: {} 2534 | 2535 | ansi-regex@6.0.1: {} 2536 | 2537 | ansi-styles@3.2.1: 2538 | dependencies: 2539 | color-convert: 1.9.3 2540 | 2541 | ansi-styles@4.3.0: 2542 | dependencies: 2543 | color-convert: 2.0.1 2544 | 2545 | ansi-styles@6.2.1: {} 2546 | 2547 | argparse@1.0.10: 2548 | dependencies: 2549 | sprintf-js: 1.0.3 2550 | 2551 | argparse@2.0.1: {} 2552 | 2553 | array-union@2.1.0: {} 2554 | 2555 | assertion-error@2.0.1: {} 2556 | 2557 | balanced-match@1.0.2: {} 2558 | 2559 | base64-js@1.5.1: {} 2560 | 2561 | better-path-resolve@1.0.0: 2562 | dependencies: 2563 | is-windows: 1.0.2 2564 | 2565 | bl@4.1.0: 2566 | dependencies: 2567 | buffer: 5.7.1 2568 | inherits: 2.0.4 2569 | readable-stream: 3.6.2 2570 | 2571 | brace-expansion@1.1.11: 2572 | dependencies: 2573 | balanced-match: 1.0.2 2574 | concat-map: 0.0.1 2575 | 2576 | brace-expansion@2.0.1: 2577 | dependencies: 2578 | balanced-match: 1.0.2 2579 | 2580 | braces@3.0.3: 2581 | dependencies: 2582 | fill-range: 7.1.1 2583 | 2584 | buffer-from@1.1.2: {} 2585 | 2586 | buffer@5.7.1: 2587 | dependencies: 2588 | base64-js: 1.5.1 2589 | ieee754: 1.2.1 2590 | 2591 | cac@6.7.14: {} 2592 | 2593 | callsites@3.1.0: {} 2594 | 2595 | chai@5.1.1: 2596 | dependencies: 2597 | assertion-error: 2.0.1 2598 | check-error: 2.1.1 2599 | deep-eql: 5.0.2 2600 | loupe: 3.1.1 2601 | pathval: 2.0.0 2602 | 2603 | chalk@2.4.2: 2604 | dependencies: 2605 | ansi-styles: 3.2.1 2606 | escape-string-regexp: 1.0.5 2607 | supports-color: 5.5.0 2608 | 2609 | chalk@4.1.2: 2610 | dependencies: 2611 | ansi-styles: 4.3.0 2612 | supports-color: 7.2.0 2613 | 2614 | chalk@5.3.0: {} 2615 | 2616 | chardet@0.4.2: {} 2617 | 2618 | chardet@0.7.0: {} 2619 | 2620 | check-error@2.1.1: {} 2621 | 2622 | ci-info@3.9.0: {} 2623 | 2624 | cli-cursor@2.1.0: 2625 | dependencies: 2626 | restore-cursor: 2.0.0 2627 | 2628 | cli-cursor@3.1.0: 2629 | dependencies: 2630 | restore-cursor: 3.1.0 2631 | 2632 | cli-cursor@4.0.0: 2633 | dependencies: 2634 | restore-cursor: 4.0.0 2635 | 2636 | cli-spinners@2.9.2: {} 2637 | 2638 | cli-truncate@3.1.0: 2639 | dependencies: 2640 | slice-ansi: 5.0.0 2641 | string-width: 5.1.2 2642 | 2643 | cli-width@2.2.1: {} 2644 | 2645 | cli-width@4.1.0: {} 2646 | 2647 | clone@1.0.4: {} 2648 | 2649 | color-convert@1.9.3: 2650 | dependencies: 2651 | color-name: 1.1.3 2652 | 2653 | color-convert@2.0.1: 2654 | dependencies: 2655 | color-name: 1.1.4 2656 | 2657 | color-name@1.1.3: {} 2658 | 2659 | color-name@1.1.4: {} 2660 | 2661 | colorette@2.0.20: {} 2662 | 2663 | commander@11.0.0: {} 2664 | 2665 | commander@2.20.3: {} 2666 | 2667 | commondir@1.0.1: {} 2668 | 2669 | concat-map@0.0.1: {} 2670 | 2671 | cross-spawn@5.1.0: 2672 | dependencies: 2673 | lru-cache: 4.1.5 2674 | shebang-command: 1.2.0 2675 | which: 1.3.1 2676 | 2677 | cross-spawn@7.0.3: 2678 | dependencies: 2679 | path-key: 3.1.1 2680 | shebang-command: 2.0.0 2681 | which: 2.0.2 2682 | 2683 | debug@4.3.4: 2684 | dependencies: 2685 | ms: 2.1.2 2686 | 2687 | debug@4.3.5: 2688 | dependencies: 2689 | ms: 2.1.2 2690 | 2691 | deep-eql@5.0.2: {} 2692 | 2693 | deep-is@0.1.4: {} 2694 | 2695 | defaults@1.0.4: 2696 | dependencies: 2697 | clone: 1.0.4 2698 | 2699 | detect-indent@6.1.0: {} 2700 | 2701 | dir-glob@3.0.1: 2702 | dependencies: 2703 | path-type: 4.0.0 2704 | 2705 | doctrine@3.0.0: 2706 | dependencies: 2707 | esutils: 2.0.3 2708 | 2709 | eastasianwidth@0.2.0: {} 2710 | 2711 | emoji-regex@8.0.0: {} 2712 | 2713 | emoji-regex@9.2.2: {} 2714 | 2715 | enquirer@2.4.1: 2716 | dependencies: 2717 | ansi-colors: 4.1.3 2718 | strip-ansi: 6.0.1 2719 | 2720 | esbuild@0.21.5: 2721 | optionalDependencies: 2722 | '@esbuild/aix-ppc64': 0.21.5 2723 | '@esbuild/android-arm': 0.21.5 2724 | '@esbuild/android-arm64': 0.21.5 2725 | '@esbuild/android-x64': 0.21.5 2726 | '@esbuild/darwin-arm64': 0.21.5 2727 | '@esbuild/darwin-x64': 0.21.5 2728 | '@esbuild/freebsd-arm64': 0.21.5 2729 | '@esbuild/freebsd-x64': 0.21.5 2730 | '@esbuild/linux-arm': 0.21.5 2731 | '@esbuild/linux-arm64': 0.21.5 2732 | '@esbuild/linux-ia32': 0.21.5 2733 | '@esbuild/linux-loong64': 0.21.5 2734 | '@esbuild/linux-mips64el': 0.21.5 2735 | '@esbuild/linux-ppc64': 0.21.5 2736 | '@esbuild/linux-riscv64': 0.21.5 2737 | '@esbuild/linux-s390x': 0.21.5 2738 | '@esbuild/linux-x64': 0.21.5 2739 | '@esbuild/netbsd-x64': 0.21.5 2740 | '@esbuild/openbsd-x64': 0.21.5 2741 | '@esbuild/sunos-x64': 0.21.5 2742 | '@esbuild/win32-arm64': 0.21.5 2743 | '@esbuild/win32-ia32': 0.21.5 2744 | '@esbuild/win32-x64': 0.21.5 2745 | 2746 | escape-string-regexp@1.0.5: {} 2747 | 2748 | escape-string-regexp@4.0.0: {} 2749 | 2750 | eslint-scope@5.1.1: 2751 | dependencies: 2752 | esrecurse: 4.3.0 2753 | estraverse: 4.3.0 2754 | 2755 | eslint-scope@7.2.2: 2756 | dependencies: 2757 | esrecurse: 4.3.0 2758 | estraverse: 5.3.0 2759 | 2760 | eslint-visitor-keys@3.4.3: {} 2761 | 2762 | eslint@8.57.0: 2763 | dependencies: 2764 | '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) 2765 | '@eslint-community/regexpp': 4.11.0 2766 | '@eslint/eslintrc': 2.1.4 2767 | '@eslint/js': 8.57.0 2768 | '@humanwhocodes/config-array': 0.11.14 2769 | '@humanwhocodes/module-importer': 1.0.1 2770 | '@nodelib/fs.walk': 1.2.8 2771 | '@ungap/structured-clone': 1.2.0 2772 | ajv: 6.12.6 2773 | chalk: 4.1.2 2774 | cross-spawn: 7.0.3 2775 | debug: 4.3.5 2776 | doctrine: 3.0.0 2777 | escape-string-regexp: 4.0.0 2778 | eslint-scope: 7.2.2 2779 | eslint-visitor-keys: 3.4.3 2780 | espree: 9.6.1 2781 | esquery: 1.6.0 2782 | esutils: 2.0.3 2783 | fast-deep-equal: 3.1.3 2784 | file-entry-cache: 6.0.1 2785 | find-up: 5.0.0 2786 | glob-parent: 6.0.2 2787 | globals: 13.24.0 2788 | graphemer: 1.4.0 2789 | ignore: 5.3.1 2790 | imurmurhash: 0.1.4 2791 | is-glob: 4.0.3 2792 | is-path-inside: 3.0.3 2793 | js-yaml: 4.1.0 2794 | json-stable-stringify-without-jsonify: 1.0.1 2795 | levn: 0.4.1 2796 | lodash.merge: 4.6.2 2797 | minimatch: 3.1.2 2798 | natural-compare: 1.4.0 2799 | optionator: 0.9.4 2800 | strip-ansi: 6.0.1 2801 | text-table: 0.2.0 2802 | transitivePeerDependencies: 2803 | - supports-color 2804 | 2805 | espree@9.6.1: 2806 | dependencies: 2807 | acorn: 8.12.1 2808 | acorn-jsx: 5.3.2(acorn@8.12.1) 2809 | eslint-visitor-keys: 3.4.3 2810 | 2811 | esprima@4.0.1: {} 2812 | 2813 | esquery@1.6.0: 2814 | dependencies: 2815 | estraverse: 5.3.0 2816 | 2817 | esrecurse@4.3.0: 2818 | dependencies: 2819 | estraverse: 5.3.0 2820 | 2821 | estraverse@4.3.0: {} 2822 | 2823 | estraverse@5.3.0: {} 2824 | 2825 | estree-walker@2.0.2: {} 2826 | 2827 | estree-walker@3.0.3: 2828 | dependencies: 2829 | '@types/estree': 1.0.5 2830 | 2831 | esutils@2.0.3: {} 2832 | 2833 | eventemitter3@5.0.1: {} 2834 | 2835 | execa@7.2.0: 2836 | dependencies: 2837 | cross-spawn: 7.0.3 2838 | get-stream: 6.0.1 2839 | human-signals: 4.3.1 2840 | is-stream: 3.0.0 2841 | merge-stream: 2.0.0 2842 | npm-run-path: 5.3.0 2843 | onetime: 6.0.0 2844 | signal-exit: 3.0.7 2845 | strip-final-newline: 3.0.0 2846 | 2847 | execa@8.0.1: 2848 | dependencies: 2849 | cross-spawn: 7.0.3 2850 | get-stream: 8.0.1 2851 | human-signals: 5.0.0 2852 | is-stream: 3.0.0 2853 | merge-stream: 2.0.0 2854 | npm-run-path: 5.3.0 2855 | onetime: 6.0.0 2856 | signal-exit: 4.1.0 2857 | strip-final-newline: 3.0.0 2858 | 2859 | extendable-error@0.1.7: {} 2860 | 2861 | external-editor@2.2.0: 2862 | dependencies: 2863 | chardet: 0.4.2 2864 | iconv-lite: 0.4.24 2865 | tmp: 0.0.33 2866 | 2867 | external-editor@3.1.0: 2868 | dependencies: 2869 | chardet: 0.7.0 2870 | iconv-lite: 0.4.24 2871 | tmp: 0.0.33 2872 | 2873 | fast-deep-equal@3.1.3: {} 2874 | 2875 | fast-glob@3.3.2: 2876 | dependencies: 2877 | '@nodelib/fs.stat': 2.0.5 2878 | '@nodelib/fs.walk': 1.2.8 2879 | glob-parent: 5.1.2 2880 | merge2: 1.4.1 2881 | micromatch: 4.0.7 2882 | 2883 | fast-json-stable-stringify@2.1.0: {} 2884 | 2885 | fast-levenshtein@2.0.6: {} 2886 | 2887 | fastq@1.17.1: 2888 | dependencies: 2889 | reusify: 1.0.4 2890 | 2891 | figures@2.0.0: 2892 | dependencies: 2893 | escape-string-regexp: 1.0.5 2894 | 2895 | file-entry-cache@6.0.1: 2896 | dependencies: 2897 | flat-cache: 3.2.0 2898 | 2899 | fill-range@7.1.1: 2900 | dependencies: 2901 | to-regex-range: 5.0.1 2902 | 2903 | find-up@4.1.0: 2904 | dependencies: 2905 | locate-path: 5.0.0 2906 | path-exists: 4.0.0 2907 | 2908 | find-up@5.0.0: 2909 | dependencies: 2910 | locate-path: 6.0.0 2911 | path-exists: 4.0.0 2912 | 2913 | find-yarn-workspace-root2@1.2.16: 2914 | dependencies: 2915 | micromatch: 4.0.7 2916 | pkg-dir: 4.2.0 2917 | 2918 | flat-cache@3.2.0: 2919 | dependencies: 2920 | flatted: 3.3.1 2921 | keyv: 4.5.4 2922 | rimraf: 3.0.2 2923 | 2924 | flatted@3.3.1: {} 2925 | 2926 | fs-extra@11.2.0: 2927 | dependencies: 2928 | graceful-fs: 4.2.11 2929 | jsonfile: 6.1.0 2930 | universalify: 2.0.1 2931 | 2932 | fs-extra@7.0.1: 2933 | dependencies: 2934 | graceful-fs: 4.2.11 2935 | jsonfile: 4.0.0 2936 | universalify: 0.1.2 2937 | 2938 | fs-extra@8.1.0: 2939 | dependencies: 2940 | graceful-fs: 4.2.11 2941 | jsonfile: 4.0.0 2942 | universalify: 0.1.2 2943 | 2944 | fs.realpath@1.0.0: {} 2945 | 2946 | fsevents@2.3.3: 2947 | optional: true 2948 | 2949 | function-bind@1.1.2: {} 2950 | 2951 | fuzzy@0.1.3: {} 2952 | 2953 | get-func-name@2.0.2: {} 2954 | 2955 | get-stream@6.0.1: {} 2956 | 2957 | get-stream@8.0.1: {} 2958 | 2959 | glob-parent@5.1.2: 2960 | dependencies: 2961 | is-glob: 4.0.3 2962 | 2963 | glob-parent@6.0.2: 2964 | dependencies: 2965 | is-glob: 4.0.3 2966 | 2967 | glob@7.2.3: 2968 | dependencies: 2969 | fs.realpath: 1.0.0 2970 | inflight: 1.0.6 2971 | inherits: 2.0.4 2972 | minimatch: 3.1.2 2973 | once: 1.4.0 2974 | path-is-absolute: 1.0.1 2975 | 2976 | glob@8.1.0: 2977 | dependencies: 2978 | fs.realpath: 1.0.0 2979 | inflight: 1.0.6 2980 | inherits: 2.0.4 2981 | minimatch: 5.1.6 2982 | once: 1.4.0 2983 | 2984 | globals@13.24.0: 2985 | dependencies: 2986 | type-fest: 0.20.2 2987 | 2988 | globby@11.1.0: 2989 | dependencies: 2990 | array-union: 2.1.0 2991 | dir-glob: 3.0.1 2992 | fast-glob: 3.3.2 2993 | ignore: 5.3.1 2994 | merge2: 1.4.1 2995 | slash: 3.0.0 2996 | 2997 | graceful-fs@4.2.11: {} 2998 | 2999 | graphemer@1.4.0: {} 3000 | 3001 | has-flag@3.0.0: {} 3002 | 3003 | has-flag@4.0.0: {} 3004 | 3005 | hasown@2.0.2: 3006 | dependencies: 3007 | function-bind: 1.1.2 3008 | 3009 | human-id@1.0.2: {} 3010 | 3011 | human-signals@4.3.1: {} 3012 | 3013 | human-signals@5.0.0: {} 3014 | 3015 | husky@8.0.3: {} 3016 | 3017 | iconv-lite@0.4.24: 3018 | dependencies: 3019 | safer-buffer: 2.1.2 3020 | 3021 | ieee754@1.2.1: {} 3022 | 3023 | ignore@5.3.1: {} 3024 | 3025 | import-fresh@3.3.0: 3026 | dependencies: 3027 | parent-module: 1.0.1 3028 | resolve-from: 4.0.0 3029 | 3030 | imurmurhash@0.1.4: {} 3031 | 3032 | inflight@1.0.6: 3033 | dependencies: 3034 | once: 1.4.0 3035 | wrappy: 1.0.2 3036 | 3037 | inherits@2.0.4: {} 3038 | 3039 | inquirer-search-list@1.2.6: 3040 | dependencies: 3041 | chalk: 2.4.2 3042 | figures: 2.0.0 3043 | fuzzy: 0.1.3 3044 | inquirer: 3.3.0 3045 | 3046 | inquirer@3.3.0: 3047 | dependencies: 3048 | ansi-escapes: 3.2.0 3049 | chalk: 2.4.2 3050 | cli-cursor: 2.1.0 3051 | cli-width: 2.2.1 3052 | external-editor: 2.2.0 3053 | figures: 2.0.0 3054 | lodash: 4.17.21 3055 | mute-stream: 0.0.7 3056 | run-async: 2.4.1 3057 | rx-lite: 4.0.8 3058 | rx-lite-aggregates: 4.0.8 3059 | string-width: 2.1.1 3060 | strip-ansi: 4.0.0 3061 | through: 2.3.8 3062 | 3063 | inquirer@9.3.6: 3064 | dependencies: 3065 | '@inquirer/figures': 1.0.5 3066 | ansi-escapes: 4.3.2 3067 | cli-width: 4.1.0 3068 | external-editor: 3.1.0 3069 | mute-stream: 1.0.0 3070 | ora: 5.4.1 3071 | run-async: 3.0.0 3072 | rxjs: 7.8.1 3073 | string-width: 4.2.3 3074 | strip-ansi: 6.0.1 3075 | wrap-ansi: 6.2.0 3076 | yoctocolors-cjs: 2.1.2 3077 | 3078 | is-core-module@2.15.0: 3079 | dependencies: 3080 | hasown: 2.0.2 3081 | 3082 | is-extglob@2.1.1: {} 3083 | 3084 | is-fullwidth-code-point@2.0.0: {} 3085 | 3086 | is-fullwidth-code-point@3.0.0: {} 3087 | 3088 | is-fullwidth-code-point@4.0.0: {} 3089 | 3090 | is-glob@4.0.3: 3091 | dependencies: 3092 | is-extglob: 2.1.1 3093 | 3094 | is-interactive@1.0.0: {} 3095 | 3096 | is-number@7.0.0: {} 3097 | 3098 | is-path-inside@3.0.3: {} 3099 | 3100 | is-reference@1.2.1: 3101 | dependencies: 3102 | '@types/estree': 1.0.5 3103 | 3104 | is-stream@3.0.0: {} 3105 | 3106 | is-subdir@1.2.0: 3107 | dependencies: 3108 | better-path-resolve: 1.0.0 3109 | 3110 | is-unicode-supported@0.1.0: {} 3111 | 3112 | is-windows@1.0.2: {} 3113 | 3114 | isexe@2.0.0: {} 3115 | 3116 | js-tokens@4.0.0: 3117 | optional: true 3118 | 3119 | js-yaml@3.14.1: 3120 | dependencies: 3121 | argparse: 1.0.10 3122 | esprima: 4.0.1 3123 | 3124 | js-yaml@4.1.0: 3125 | dependencies: 3126 | argparse: 2.0.1 3127 | 3128 | json-buffer@3.0.1: {} 3129 | 3130 | json-schema-traverse@0.4.1: {} 3131 | 3132 | json-stable-stringify-without-jsonify@1.0.1: {} 3133 | 3134 | jsonfile@4.0.0: 3135 | optionalDependencies: 3136 | graceful-fs: 4.2.11 3137 | 3138 | jsonfile@6.1.0: 3139 | dependencies: 3140 | universalify: 2.0.1 3141 | optionalDependencies: 3142 | graceful-fs: 4.2.11 3143 | 3144 | keyv@4.5.4: 3145 | dependencies: 3146 | json-buffer: 3.0.1 3147 | 3148 | levn@0.4.1: 3149 | dependencies: 3150 | prelude-ls: 1.2.1 3151 | type-check: 0.4.0 3152 | 3153 | lilconfig@2.1.0: {} 3154 | 3155 | lint-staged@13.3.0(enquirer@2.4.1): 3156 | dependencies: 3157 | chalk: 5.3.0 3158 | commander: 11.0.0 3159 | debug: 4.3.4 3160 | execa: 7.2.0 3161 | lilconfig: 2.1.0 3162 | listr2: 6.6.1(enquirer@2.4.1) 3163 | micromatch: 4.0.5 3164 | pidtree: 0.6.0 3165 | string-argv: 0.3.2 3166 | yaml: 2.3.1 3167 | transitivePeerDependencies: 3168 | - enquirer 3169 | - supports-color 3170 | 3171 | listr2@6.6.1(enquirer@2.4.1): 3172 | dependencies: 3173 | cli-truncate: 3.1.0 3174 | colorette: 2.0.20 3175 | eventemitter3: 5.0.1 3176 | log-update: 5.0.1 3177 | rfdc: 1.4.1 3178 | wrap-ansi: 8.1.0 3179 | optionalDependencies: 3180 | enquirer: 2.4.1 3181 | 3182 | load-yaml-file@0.2.0: 3183 | dependencies: 3184 | graceful-fs: 4.2.11 3185 | js-yaml: 3.14.1 3186 | pify: 4.0.1 3187 | strip-bom: 3.0.0 3188 | 3189 | locate-path@5.0.0: 3190 | dependencies: 3191 | p-locate: 4.1.0 3192 | 3193 | locate-path@6.0.0: 3194 | dependencies: 3195 | p-locate: 5.0.0 3196 | 3197 | lodash.merge@4.6.2: {} 3198 | 3199 | lodash.startcase@4.4.0: {} 3200 | 3201 | lodash@4.17.21: {} 3202 | 3203 | log-symbols@4.1.0: 3204 | dependencies: 3205 | chalk: 4.1.2 3206 | is-unicode-supported: 0.1.0 3207 | 3208 | log-update@5.0.1: 3209 | dependencies: 3210 | ansi-escapes: 5.0.0 3211 | cli-cursor: 4.0.0 3212 | slice-ansi: 5.0.0 3213 | strip-ansi: 7.1.0 3214 | wrap-ansi: 8.1.0 3215 | 3216 | loupe@3.1.1: 3217 | dependencies: 3218 | get-func-name: 2.0.2 3219 | 3220 | lru-cache@4.1.5: 3221 | dependencies: 3222 | pseudomap: 1.0.2 3223 | yallist: 2.1.2 3224 | 3225 | magic-string@0.30.10: 3226 | dependencies: 3227 | '@jridgewell/sourcemap-codec': 1.5.0 3228 | 3229 | merge-stream@2.0.0: {} 3230 | 3231 | merge2@1.4.1: {} 3232 | 3233 | micromatch@4.0.5: 3234 | dependencies: 3235 | braces: 3.0.3 3236 | picomatch: 2.3.1 3237 | 3238 | micromatch@4.0.7: 3239 | dependencies: 3240 | braces: 3.0.3 3241 | picomatch: 2.3.1 3242 | 3243 | mimic-fn@1.2.0: {} 3244 | 3245 | mimic-fn@2.1.0: {} 3246 | 3247 | mimic-fn@4.0.0: {} 3248 | 3249 | minimatch@3.1.2: 3250 | dependencies: 3251 | brace-expansion: 1.1.11 3252 | 3253 | minimatch@5.1.6: 3254 | dependencies: 3255 | brace-expansion: 2.0.1 3256 | 3257 | mri@1.2.0: {} 3258 | 3259 | ms@2.1.2: {} 3260 | 3261 | mute-stream@0.0.7: {} 3262 | 3263 | mute-stream@1.0.0: {} 3264 | 3265 | nanoid@3.3.7: {} 3266 | 3267 | natural-compare-lite@1.4.0: {} 3268 | 3269 | natural-compare@1.4.0: {} 3270 | 3271 | npm-run-path@5.3.0: 3272 | dependencies: 3273 | path-key: 4.0.0 3274 | 3275 | once@1.4.0: 3276 | dependencies: 3277 | wrappy: 1.0.2 3278 | 3279 | onetime@2.0.1: 3280 | dependencies: 3281 | mimic-fn: 1.2.0 3282 | 3283 | onetime@5.1.2: 3284 | dependencies: 3285 | mimic-fn: 2.1.0 3286 | 3287 | onetime@6.0.0: 3288 | dependencies: 3289 | mimic-fn: 4.0.0 3290 | 3291 | optionator@0.9.4: 3292 | dependencies: 3293 | deep-is: 0.1.4 3294 | fast-levenshtein: 2.0.6 3295 | levn: 0.4.1 3296 | prelude-ls: 1.2.1 3297 | type-check: 0.4.0 3298 | word-wrap: 1.2.5 3299 | 3300 | ora@5.4.1: 3301 | dependencies: 3302 | bl: 4.1.0 3303 | chalk: 4.1.2 3304 | cli-cursor: 3.1.0 3305 | cli-spinners: 2.9.2 3306 | is-interactive: 1.0.0 3307 | is-unicode-supported: 0.1.0 3308 | log-symbols: 4.1.0 3309 | strip-ansi: 6.0.1 3310 | wcwidth: 1.0.1 3311 | 3312 | os-tmpdir@1.0.2: {} 3313 | 3314 | outdent@0.5.0: {} 3315 | 3316 | p-filter@2.1.0: 3317 | dependencies: 3318 | p-map: 2.1.0 3319 | 3320 | p-limit@2.3.0: 3321 | dependencies: 3322 | p-try: 2.2.0 3323 | 3324 | p-limit@3.1.0: 3325 | dependencies: 3326 | yocto-queue: 0.1.0 3327 | 3328 | p-locate@4.1.0: 3329 | dependencies: 3330 | p-limit: 2.3.0 3331 | 3332 | p-locate@5.0.0: 3333 | dependencies: 3334 | p-limit: 3.1.0 3335 | 3336 | p-map@2.1.0: {} 3337 | 3338 | p-try@2.2.0: {} 3339 | 3340 | parent-module@1.0.1: 3341 | dependencies: 3342 | callsites: 3.1.0 3343 | 3344 | path-exists@4.0.0: {} 3345 | 3346 | path-is-absolute@1.0.1: {} 3347 | 3348 | path-key@3.1.1: {} 3349 | 3350 | path-key@4.0.0: {} 3351 | 3352 | path-parse@1.0.7: {} 3353 | 3354 | path-type@4.0.0: {} 3355 | 3356 | pathe@1.1.2: {} 3357 | 3358 | pathval@2.0.0: {} 3359 | 3360 | picocolors@1.0.1: {} 3361 | 3362 | picomatch@2.3.1: {} 3363 | 3364 | pidtree@0.6.0: {} 3365 | 3366 | pify@4.0.1: {} 3367 | 3368 | pkg-dir@4.2.0: 3369 | dependencies: 3370 | find-up: 4.1.0 3371 | 3372 | postcss@8.4.40: 3373 | dependencies: 3374 | nanoid: 3.3.7 3375 | picocolors: 1.0.1 3376 | source-map-js: 1.2.0 3377 | 3378 | preferred-pm@3.1.4: 3379 | dependencies: 3380 | find-up: 5.0.0 3381 | find-yarn-workspace-root2: 1.2.16 3382 | path-exists: 4.0.0 3383 | which-pm: 2.2.0 3384 | 3385 | prelude-ls@1.2.1: {} 3386 | 3387 | prettier@2.8.8: {} 3388 | 3389 | pseudomap@1.0.2: {} 3390 | 3391 | punycode@2.3.1: {} 3392 | 3393 | queue-microtask@1.2.3: {} 3394 | 3395 | randombytes@2.1.0: 3396 | dependencies: 3397 | safe-buffer: 5.2.1 3398 | 3399 | read-yaml-file@1.1.0: 3400 | dependencies: 3401 | graceful-fs: 4.2.11 3402 | js-yaml: 3.14.1 3403 | pify: 4.0.1 3404 | strip-bom: 3.0.0 3405 | 3406 | readable-stream@3.6.2: 3407 | dependencies: 3408 | inherits: 2.0.4 3409 | string_decoder: 1.3.0 3410 | util-deprecate: 1.0.2 3411 | 3412 | regenerator-runtime@0.14.1: {} 3413 | 3414 | resolve-from@4.0.0: {} 3415 | 3416 | resolve-from@5.0.0: {} 3417 | 3418 | resolve@1.22.8: 3419 | dependencies: 3420 | is-core-module: 2.15.0 3421 | path-parse: 1.0.7 3422 | supports-preserve-symlinks-flag: 1.0.0 3423 | 3424 | restore-cursor@2.0.0: 3425 | dependencies: 3426 | onetime: 2.0.1 3427 | signal-exit: 3.0.7 3428 | 3429 | restore-cursor@3.1.0: 3430 | dependencies: 3431 | onetime: 5.1.2 3432 | signal-exit: 3.0.7 3433 | 3434 | restore-cursor@4.0.0: 3435 | dependencies: 3436 | onetime: 5.1.2 3437 | signal-exit: 3.0.7 3438 | 3439 | reusify@1.0.4: {} 3440 | 3441 | rfdc@1.4.1: {} 3442 | 3443 | rimraf@3.0.2: 3444 | dependencies: 3445 | glob: 7.2.3 3446 | 3447 | rollup-plugin-dts@5.3.1(rollup@3.29.4)(typescript@4.9.5): 3448 | dependencies: 3449 | magic-string: 0.30.10 3450 | rollup: 3.29.4 3451 | typescript: 4.9.5 3452 | optionalDependencies: 3453 | '@babel/code-frame': 7.24.7 3454 | 3455 | rollup@3.29.4: 3456 | optionalDependencies: 3457 | fsevents: 2.3.3 3458 | 3459 | rollup@4.19.0: 3460 | dependencies: 3461 | '@types/estree': 1.0.5 3462 | optionalDependencies: 3463 | '@rollup/rollup-android-arm-eabi': 4.19.0 3464 | '@rollup/rollup-android-arm64': 4.19.0 3465 | '@rollup/rollup-darwin-arm64': 4.19.0 3466 | '@rollup/rollup-darwin-x64': 4.19.0 3467 | '@rollup/rollup-linux-arm-gnueabihf': 4.19.0 3468 | '@rollup/rollup-linux-arm-musleabihf': 4.19.0 3469 | '@rollup/rollup-linux-arm64-gnu': 4.19.0 3470 | '@rollup/rollup-linux-arm64-musl': 4.19.0 3471 | '@rollup/rollup-linux-powerpc64le-gnu': 4.19.0 3472 | '@rollup/rollup-linux-riscv64-gnu': 4.19.0 3473 | '@rollup/rollup-linux-s390x-gnu': 4.19.0 3474 | '@rollup/rollup-linux-x64-gnu': 4.19.0 3475 | '@rollup/rollup-linux-x64-musl': 4.19.0 3476 | '@rollup/rollup-win32-arm64-msvc': 4.19.0 3477 | '@rollup/rollup-win32-ia32-msvc': 4.19.0 3478 | '@rollup/rollup-win32-x64-msvc': 4.19.0 3479 | fsevents: 2.3.3 3480 | 3481 | run-async@2.4.1: {} 3482 | 3483 | run-async@3.0.0: {} 3484 | 3485 | run-parallel@1.2.0: 3486 | dependencies: 3487 | queue-microtask: 1.2.3 3488 | 3489 | rx-lite-aggregates@4.0.8: 3490 | dependencies: 3491 | rx-lite: 4.0.8 3492 | 3493 | rx-lite@4.0.8: {} 3494 | 3495 | rxjs@7.8.1: 3496 | dependencies: 3497 | tslib: 2.6.3 3498 | 3499 | safe-buffer@5.2.1: {} 3500 | 3501 | safer-buffer@2.1.2: {} 3502 | 3503 | semver@7.6.3: {} 3504 | 3505 | serialize-javascript@6.0.2: 3506 | dependencies: 3507 | randombytes: 2.1.0 3508 | 3509 | shebang-command@1.2.0: 3510 | dependencies: 3511 | shebang-regex: 1.0.0 3512 | 3513 | shebang-command@2.0.0: 3514 | dependencies: 3515 | shebang-regex: 3.0.0 3516 | 3517 | shebang-regex@1.0.0: {} 3518 | 3519 | shebang-regex@3.0.0: {} 3520 | 3521 | siginfo@2.0.0: {} 3522 | 3523 | signal-exit@3.0.7: {} 3524 | 3525 | signal-exit@4.1.0: {} 3526 | 3527 | slash@3.0.0: {} 3528 | 3529 | slash@4.0.0: {} 3530 | 3531 | slice-ansi@5.0.0: 3532 | dependencies: 3533 | ansi-styles: 6.2.1 3534 | is-fullwidth-code-point: 4.0.0 3535 | 3536 | smob@1.5.0: {} 3537 | 3538 | source-map-js@1.2.0: {} 3539 | 3540 | source-map-support@0.5.21: 3541 | dependencies: 3542 | buffer-from: 1.1.2 3543 | source-map: 0.6.1 3544 | 3545 | source-map@0.6.1: {} 3546 | 3547 | spawndamnit@2.0.0: 3548 | dependencies: 3549 | cross-spawn: 5.1.0 3550 | signal-exit: 3.0.7 3551 | 3552 | sprintf-js@1.0.3: {} 3553 | 3554 | stackback@0.0.2: {} 3555 | 3556 | std-env@3.7.0: {} 3557 | 3558 | string-argv@0.3.2: {} 3559 | 3560 | string-width@2.1.1: 3561 | dependencies: 3562 | is-fullwidth-code-point: 2.0.0 3563 | strip-ansi: 4.0.0 3564 | 3565 | string-width@4.2.3: 3566 | dependencies: 3567 | emoji-regex: 8.0.0 3568 | is-fullwidth-code-point: 3.0.0 3569 | strip-ansi: 6.0.1 3570 | 3571 | string-width@5.1.2: 3572 | dependencies: 3573 | eastasianwidth: 0.2.0 3574 | emoji-regex: 9.2.2 3575 | strip-ansi: 7.1.0 3576 | 3577 | string_decoder@1.3.0: 3578 | dependencies: 3579 | safe-buffer: 5.2.1 3580 | 3581 | strip-ansi@4.0.0: 3582 | dependencies: 3583 | ansi-regex: 3.0.1 3584 | 3585 | strip-ansi@6.0.1: 3586 | dependencies: 3587 | ansi-regex: 5.0.1 3588 | 3589 | strip-ansi@7.1.0: 3590 | dependencies: 3591 | ansi-regex: 6.0.1 3592 | 3593 | strip-bom@3.0.0: {} 3594 | 3595 | strip-final-newline@3.0.0: {} 3596 | 3597 | strip-json-comments@3.1.1: {} 3598 | 3599 | supports-color@5.5.0: 3600 | dependencies: 3601 | has-flag: 3.0.0 3602 | 3603 | supports-color@7.2.0: 3604 | dependencies: 3605 | has-flag: 4.0.0 3606 | 3607 | supports-preserve-symlinks-flag@1.0.0: {} 3608 | 3609 | term-size@2.2.1: {} 3610 | 3611 | terser@5.31.3: 3612 | dependencies: 3613 | '@jridgewell/source-map': 0.3.6 3614 | acorn: 8.12.1 3615 | commander: 2.20.3 3616 | source-map-support: 0.5.21 3617 | 3618 | text-table@0.2.0: {} 3619 | 3620 | through@2.3.8: {} 3621 | 3622 | tinybench@2.8.0: {} 3623 | 3624 | tinypool@1.0.0: {} 3625 | 3626 | tinyrainbow@1.2.0: {} 3627 | 3628 | tinyspy@3.0.0: {} 3629 | 3630 | tmp@0.0.33: 3631 | dependencies: 3632 | os-tmpdir: 1.0.2 3633 | 3634 | to-regex-range@5.0.1: 3635 | dependencies: 3636 | is-number: 7.0.0 3637 | 3638 | tslib@1.14.1: {} 3639 | 3640 | tslib@2.6.3: {} 3641 | 3642 | tsutils@3.21.0(typescript@4.9.5): 3643 | dependencies: 3644 | tslib: 1.14.1 3645 | typescript: 4.9.5 3646 | 3647 | turbo-darwin-64@1.13.4: 3648 | optional: true 3649 | 3650 | turbo-darwin-arm64@1.13.4: 3651 | optional: true 3652 | 3653 | turbo-linux-64@1.13.4: 3654 | optional: true 3655 | 3656 | turbo-linux-arm64@1.13.4: 3657 | optional: true 3658 | 3659 | turbo-windows-64@1.13.4: 3660 | optional: true 3661 | 3662 | turbo-windows-arm64@1.13.4: 3663 | optional: true 3664 | 3665 | turbo@1.13.4: 3666 | optionalDependencies: 3667 | turbo-darwin-64: 1.13.4 3668 | turbo-darwin-arm64: 1.13.4 3669 | turbo-linux-64: 1.13.4 3670 | turbo-linux-arm64: 1.13.4 3671 | turbo-windows-64: 1.13.4 3672 | turbo-windows-arm64: 1.13.4 3673 | 3674 | type-check@0.4.0: 3675 | dependencies: 3676 | prelude-ls: 1.2.1 3677 | 3678 | type-fest@0.20.2: {} 3679 | 3680 | type-fest@0.21.3: {} 3681 | 3682 | type-fest@1.4.0: {} 3683 | 3684 | typescript@4.9.5: {} 3685 | 3686 | universalify@0.1.2: {} 3687 | 3688 | universalify@2.0.1: {} 3689 | 3690 | uri-js@4.4.1: 3691 | dependencies: 3692 | punycode: 2.3.1 3693 | 3694 | util-deprecate@1.0.2: {} 3695 | 3696 | vite-node@2.0.4(terser@5.31.3): 3697 | dependencies: 3698 | cac: 6.7.14 3699 | debug: 4.3.5 3700 | pathe: 1.1.2 3701 | tinyrainbow: 1.2.0 3702 | vite: 5.3.5(terser@5.31.3) 3703 | transitivePeerDependencies: 3704 | - '@types/node' 3705 | - less 3706 | - lightningcss 3707 | - sass 3708 | - stylus 3709 | - sugarss 3710 | - supports-color 3711 | - terser 3712 | 3713 | vite@5.3.5(terser@5.31.3): 3714 | dependencies: 3715 | esbuild: 0.21.5 3716 | postcss: 8.4.40 3717 | rollup: 4.19.0 3718 | optionalDependencies: 3719 | fsevents: 2.3.3 3720 | terser: 5.31.3 3721 | 3722 | vitest@2.0.4(terser@5.31.3): 3723 | dependencies: 3724 | '@ampproject/remapping': 2.3.0 3725 | '@vitest/expect': 2.0.4 3726 | '@vitest/pretty-format': 2.0.4 3727 | '@vitest/runner': 2.0.4 3728 | '@vitest/snapshot': 2.0.4 3729 | '@vitest/spy': 2.0.4 3730 | '@vitest/utils': 2.0.4 3731 | chai: 5.1.1 3732 | debug: 4.3.5 3733 | execa: 8.0.1 3734 | magic-string: 0.30.10 3735 | pathe: 1.1.2 3736 | std-env: 3.7.0 3737 | tinybench: 2.8.0 3738 | tinypool: 1.0.0 3739 | tinyrainbow: 1.2.0 3740 | vite: 5.3.5(terser@5.31.3) 3741 | vite-node: 2.0.4(terser@5.31.3) 3742 | why-is-node-running: 2.3.0 3743 | transitivePeerDependencies: 3744 | - less 3745 | - lightningcss 3746 | - sass 3747 | - stylus 3748 | - sugarss 3749 | - supports-color 3750 | - terser 3751 | 3752 | wcwidth@1.0.1: 3753 | dependencies: 3754 | defaults: 1.0.4 3755 | 3756 | which-pm@2.2.0: 3757 | dependencies: 3758 | load-yaml-file: 0.2.0 3759 | path-exists: 4.0.0 3760 | 3761 | which@1.3.1: 3762 | dependencies: 3763 | isexe: 2.0.0 3764 | 3765 | which@2.0.2: 3766 | dependencies: 3767 | isexe: 2.0.0 3768 | 3769 | why-is-node-running@2.3.0: 3770 | dependencies: 3771 | siginfo: 2.0.0 3772 | stackback: 0.0.2 3773 | 3774 | word-wrap@1.2.5: {} 3775 | 3776 | wrap-ansi@6.2.0: 3777 | dependencies: 3778 | ansi-styles: 4.3.0 3779 | string-width: 4.2.3 3780 | strip-ansi: 6.0.1 3781 | 3782 | wrap-ansi@8.1.0: 3783 | dependencies: 3784 | ansi-styles: 6.2.1 3785 | string-width: 5.1.2 3786 | strip-ansi: 7.1.0 3787 | 3788 | wrappy@1.0.2: {} 3789 | 3790 | yallist@2.1.2: {} 3791 | 3792 | yaml@2.3.1: {} 3793 | 3794 | yocto-queue@0.1.0: {} 3795 | 3796 | yoctocolors-cjs@2.1.2: {} 3797 | --------------------------------------------------------------------------------