├── .gitignore
├── README.md
├── benchmark.mjs
├── jest.config.js
├── package.json
├── pnpm-lock.yaml
├── src
└── index.ts
├── tests
└── unit.test.ts
└── tsconfig.build.json
/.gitignore:
--------------------------------------------------------------------------------
1 | dist/
2 | node_modules/
3 | .idea/
4 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # stable-hash
2 |
3 | A tiny and fast (481b [unpkg](https://unpkg.com/stable-hash@0.0.3/dist/index.mjs)) lib for "stably hashing" a JavaScript value. Originally created for [SWR](https://github.com/vercel/swr).
4 |
5 | It's similar to `JSON.stringify(value)`, but:
6 | 1. Supports any JavaScript value (BigInt, NaN, Symbol, function, class, ...)
7 | 2. Sorts object keys (stable)
8 | 3. Supports circular objects
9 |
10 | ## Use
11 |
12 | ```bash
13 | yarn add stable-hash
14 | ```
15 |
16 | ```js
17 | import hash from 'stable-hash'
18 |
19 | hash(anyJavaScriptValueHere) // returns a string
20 | ```
21 |
22 | ## Examples
23 |
24 | ### Primitive Value
25 |
26 | ```js
27 | hash(1)
28 | hash('foo')
29 | hash(true)
30 | hash(undefined)
31 | hash(null)
32 | hash(NaN)
33 | ```
34 |
35 | BigInt:
36 |
37 | ```js
38 | hash(1) === hash(1n)
39 | hash(1) !== hash(2n)
40 | ```
41 |
42 | Symbol:
43 |
44 | ```js
45 | hash(Symbol.for('foo')) === hash(Symbol.for('foo'))
46 | hash(Symbol.for('foo')) === hash(Symbol('foo'))
47 | hash(Symbol('foo')) === hash(Symbol('foo'))
48 | hash(Symbol('foo')) !== hash(Symbol('bar'))
49 | ```
50 |
51 | _Since Symbols cannot be serialized, stable-hash simply uses its description as the hash._
52 |
53 | ### Regex
54 |
55 | ```js
56 | hash(/foo/) === hash(/foo/)
57 | hash(/foo/) !== hash(/bar/)
58 | ```
59 |
60 | ### Date
61 |
62 | ```js
63 | hash(new Date(1)) === hash(new Date(1))
64 | ```
65 |
66 | ### Array
67 |
68 | ```js
69 | hash([1, '2', [new Date(3)]]) === hash([1, '2', [new Date(3)]])
70 | hash([1, 2]) !== hash([2, 1])
71 | ```
72 |
73 | Circular:
74 |
75 | ```js
76 | const foo = []
77 | foo.push(foo)
78 | hash(foo) === hash(foo)
79 | ```
80 |
81 | ### Object
82 |
83 | ```js
84 | hash({ foo: 'bar' }) === hash({ foo: 'bar' })
85 | hash({ foo: { bar: 1 } }) === hash({ foo: { bar: 1 } })
86 | ```
87 |
88 | Stable:
89 |
90 | ```js
91 | hash({ a: 1, b: 2, c: 3 }) === hash({ c: 3, b: 2, a: 1 })
92 | ```
93 |
94 | Circular:
95 |
96 | ```js
97 | const foo = {}
98 | foo.foo = foo
99 | hash(foo) === hash(foo)
100 | ```
101 |
102 | ### Function, Class, Set, Map, Buffer...
103 |
104 | `stable-hash` guarantees reference consistency (`===`) for objects that the constructor isn't `Object`.
105 |
106 | ```js
107 | const foo = () => {}
108 | hash(foo) === hash(foo)
109 | hash(foo) !== hash(() => {})
110 | ```
111 |
112 | ```js
113 | class Foo {}
114 | hash(Foo) === hash(Foo)
115 | hash(Foo) !== hash(class {})
116 | ```
117 |
118 | ```js
119 | const foo = new Set([1])
120 | hash(foo) === hash(foo)
121 | hash(foo) !== hash(new Set([1]))
122 | ```
123 |
124 | ## Notes
125 |
126 | This function does something similar to `JSON.stringify`, but more than it. It doesn't generate a secure checksum, which usually has a fixed length and is hard to be reversed. With `stable-hash` it's still possible to get the original data. Also, the output might include any charaters, not just alphabets and numbers like other hash algorithms. So:
127 |
128 | - Use another encoding layer on top of it if you want to display the output.
129 | - Use another crypto layer on top of it if you want to have a secure and fixed length hash.
130 |
131 | ```js
132 | import crypto from 'crypto'
133 | import hash from 'stable-hash'
134 |
135 | const weakHash = hash(anyJavaScriptValueHere)
136 | const encodedHash = Buffer.from(weakHash).toString('base64')
137 | const safeHash = crypto.createHash('MD5').update(weakHash).digest('hex')
138 | ```
139 |
140 | Also, the consistency of this lib is sometimes guaranteed by the singularity of the WeakMap instance. So it might not generate the consistent results when running in different runtimes, e.g. server/client or parent/worker scenarios.
141 |
142 | ## License
143 |
144 | Created by Shu Ding. Released under the MIT License.
145 |
--------------------------------------------------------------------------------
/benchmark.mjs:
--------------------------------------------------------------------------------
1 | import stringify from 'json-stringify-deterministic'
2 | import hash from 'stable-hash'
3 | import { escape } from 'base64-url'
4 | import hashObject from 'hash-obj'
5 | import { flattie } from 'flattie'
6 | import bench from 'nanobench'
7 | import crypto from 'node:crypto'
8 |
9 | // this is an example of payload
10 | const payload = {
11 | url: 'https://example.com/',
12 | query: {
13 | screenshot: true,
14 | ttl: 86400000,
15 | staleTtl: false,
16 | prerender: 'auto',
17 | meta: true,
18 | data: false,
19 | video: false,
20 | audio: false,
21 | pdf: false,
22 | insights: false,
23 | iframe: false,
24 | ping: true,
25 | headers: {
26 | 'upgrade-insecure-requests': '1',
27 | dnt: '1',
28 | accept: '*/*',
29 | 'sec-fetch-site': 'same-origin',
30 | 'sec-fetch-mode': 'navigate',
31 | 'sec-fetch-user': '?1',
32 | 'sec-fetch-dest': 'document',
33 | 'accept-encoding': 'gzip, deflate, br',
34 | 'accept-language': 'en'
35 | }
36 | }
37 | }
38 |
39 | /***
40 | * benchmarking `hash-obj` vs. `stable-hash`
41 | *
42 | * The goal is to represent a real use-case. Because that:
43 | *
44 | * - ensure the input is flatten
45 | * - output is base64 URL safe
46 | * - sha512 is used as algorithm
47 | *
48 | */
49 | const getHashOne = obj =>
50 | escape(
51 | hashObject(flattie(obj), {
52 | encoding: 'base64',
53 | algorithm: 'sha512'
54 | })
55 | )
56 |
57 | const getHashTwo = obj => {
58 | return escape(
59 | crypto
60 | .createHash('sha512')
61 | .update(hash(flattie(obj)))
62 | .digest('base64')
63 | )
64 | }
65 |
66 | const getHashThree = obj => {
67 | return escape(
68 | crypto
69 | .createHash('sha512')
70 | .update(stringify(flattie(obj)))
71 | .digest('base64')
72 | )
73 | }
74 |
75 | bench('`hash-obj` 200.000 times', function (b) {
76 | b.start()
77 |
78 | for (let i = 0; i < 200000; i++) {
79 | getHashOne(payload)
80 | }
81 |
82 | b.end()
83 | })
84 |
85 | bench('`stable-hash` 200.000 times', function (b) {
86 | b.start()
87 |
88 | for (let i = 0; i < 200000; i++) {
89 | getHashTwo(payload)
90 | }
91 |
92 | b.end()
93 | })
94 |
95 | bench('`json-stringify-deterministic` 200.000 times', function (b) {
96 | b.start()
97 |
98 | for (let i = 0; i < 200000; i++) {
99 | getHashThree(payload)
100 | }
101 |
102 | b.end()
103 | })
104 |
--------------------------------------------------------------------------------
/jest.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | preset: "ts-jest",
3 | testEnvironment: "node"
4 | }
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "stable-hash",
3 | "version": "0.0.5",
4 | "description": "Stable JS value hash.",
5 | "repository": "https://github.com/shuding/stable-hash",
6 | "author": "Shu Ding",
7 | "license": "MIT",
8 | "packageManager": "pnpm@9.15.0",
9 | "main": "./dist/index.js",
10 | "module": "./dist/index.mjs",
11 | "types": "./dist/index.d.ts",
12 | "exports": {
13 | "require": "./dist/index.js",
14 | "import": "./dist/index.mjs",
15 | "types": "./dist/index.d.ts"
16 | },
17 | "files": [
18 | "dist/**"
19 | ],
20 | "scripts": {
21 | "build:mjs": "esbuild src/index.ts --minify --target=es6 --outdir=dist --out-extension:.js=.mjs",
22 | "build:cjs": "esbuild src/index.ts --minify --target=es6 --outdir=dist --format=cjs",
23 | "build:types": "tsc --emitDeclarationOnly --declaration -p tsconfig.build.json",
24 | "build": "pnpm build:mjs && pnpm build:cjs && pnpm build:types",
25 | "test": "jest"
26 | },
27 | "devDependencies": {
28 | "@types/jest": "^28.1.3",
29 | "@types/node": "^22.14.0",
30 | "base64-url": "^2.3.3",
31 | "esbuild": "^0.12.28",
32 | "flattie": "^1.1.0",
33 | "hash-obj": "^4.0.0",
34 | "jest": "^28.1.1",
35 | "json-stringify-deterministic": "^1.0.7",
36 | "nanobench": "^2.1.1",
37 | "prettier": "^2.7.1",
38 | "ts-jest": "^28.0.5",
39 | "typescript": "^4.7.4"
40 | },
41 | "prettier": {
42 | "semi": false
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: '9.0'
2 |
3 | settings:
4 | autoInstallPeers: true
5 | excludeLinksFromLockfile: false
6 |
7 | importers:
8 |
9 | .:
10 | devDependencies:
11 | '@types/jest':
12 | specifier: ^28.1.3
13 | version: 28.1.8
14 | '@types/node':
15 | specifier: ^22.14.0
16 | version: 22.14.0
17 | base64-url:
18 | specifier: ^2.3.3
19 | version: 2.3.3
20 | esbuild:
21 | specifier: ^0.12.28
22 | version: 0.12.29
23 | flattie:
24 | specifier: ^1.1.0
25 | version: 1.1.0
26 | hash-obj:
27 | specifier: ^4.0.0
28 | version: 4.0.0
29 | jest:
30 | specifier: ^28.1.1
31 | version: 28.1.3(@types/node@22.14.0)
32 | json-stringify-deterministic:
33 | specifier: ^1.0.7
34 | version: 1.0.12
35 | nanobench:
36 | specifier: ^2.1.1
37 | version: 2.1.1
38 | prettier:
39 | specifier: ^2.7.1
40 | version: 2.8.8
41 | ts-jest:
42 | specifier: ^28.0.5
43 | version: 28.0.8(@babel/core@7.23.9)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.23.9))(esbuild@0.12.29)(jest@28.1.3(@types/node@22.14.0))(typescript@4.9.5)
44 | typescript:
45 | specifier: ^4.7.4
46 | version: 4.9.5
47 |
48 | packages:
49 |
50 | '@ampproject/remapping@2.2.1':
51 | resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==}
52 | engines: {node: '>=6.0.0'}
53 |
54 | '@babel/code-frame@7.23.5':
55 | resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==}
56 | engines: {node: '>=6.9.0'}
57 |
58 | '@babel/compat-data@7.23.5':
59 | resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==}
60 | engines: {node: '>=6.9.0'}
61 |
62 | '@babel/core@7.23.9':
63 | resolution: {integrity: sha512-5q0175NOjddqpvvzU+kDiSOAk4PfdO6FvwCWoQ6RO7rTzEe8vlo+4HVfcnAREhD4npMs0e9uZypjTwzZPCf/cw==}
64 | engines: {node: '>=6.9.0'}
65 |
66 | '@babel/generator@7.23.6':
67 | resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==}
68 | engines: {node: '>=6.9.0'}
69 |
70 | '@babel/helper-compilation-targets@7.23.6':
71 | resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==}
72 | engines: {node: '>=6.9.0'}
73 |
74 | '@babel/helper-environment-visitor@7.22.20':
75 | resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==}
76 | engines: {node: '>=6.9.0'}
77 |
78 | '@babel/helper-function-name@7.23.0':
79 | resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==}
80 | engines: {node: '>=6.9.0'}
81 |
82 | '@babel/helper-hoist-variables@7.22.5':
83 | resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==}
84 | engines: {node: '>=6.9.0'}
85 |
86 | '@babel/helper-module-imports@7.22.15':
87 | resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==}
88 | engines: {node: '>=6.9.0'}
89 |
90 | '@babel/helper-module-transforms@7.23.3':
91 | resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
92 | engines: {node: '>=6.9.0'}
93 | peerDependencies:
94 | '@babel/core': ^7.0.0
95 |
96 | '@babel/helper-plugin-utils@7.22.5':
97 | resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==}
98 | engines: {node: '>=6.9.0'}
99 |
100 | '@babel/helper-simple-access@7.22.5':
101 | resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==}
102 | engines: {node: '>=6.9.0'}
103 |
104 | '@babel/helper-split-export-declaration@7.22.6':
105 | resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==}
106 | engines: {node: '>=6.9.0'}
107 |
108 | '@babel/helper-string-parser@7.23.4':
109 | resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==}
110 | engines: {node: '>=6.9.0'}
111 |
112 | '@babel/helper-validator-identifier@7.22.20':
113 | resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==}
114 | engines: {node: '>=6.9.0'}
115 |
116 | '@babel/helper-validator-option@7.23.5':
117 | resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==}
118 | engines: {node: '>=6.9.0'}
119 |
120 | '@babel/helpers@7.23.9':
121 | resolution: {integrity: sha512-87ICKgU5t5SzOT7sBMfCOZQ2rHjRU+Pcb9BoILMYz600W6DkVRLFBPwQ18gwUVvggqXivaUakpnxWQGbpywbBQ==}
122 | engines: {node: '>=6.9.0'}
123 |
124 | '@babel/highlight@7.23.4':
125 | resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
126 | engines: {node: '>=6.9.0'}
127 |
128 | '@babel/parser@7.23.9':
129 | resolution: {integrity: sha512-9tcKgqKbs3xGJ+NtKF2ndOBBLVwPjl1SHxPQkd36r3Dlirw3xWUeGaTbqr7uGZcTaxkVNwc+03SVP7aCdWrTlA==}
130 | engines: {node: '>=6.0.0'}
131 | hasBin: true
132 |
133 | '@babel/plugin-syntax-async-generators@7.8.4':
134 | resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==}
135 | peerDependencies:
136 | '@babel/core': ^7.0.0-0
137 |
138 | '@babel/plugin-syntax-bigint@7.8.3':
139 | resolution: {integrity: sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==}
140 | peerDependencies:
141 | '@babel/core': ^7.0.0-0
142 |
143 | '@babel/plugin-syntax-class-properties@7.12.13':
144 | resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==}
145 | peerDependencies:
146 | '@babel/core': ^7.0.0-0
147 |
148 | '@babel/plugin-syntax-import-meta@7.10.4':
149 | resolution: {integrity: sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==}
150 | peerDependencies:
151 | '@babel/core': ^7.0.0-0
152 |
153 | '@babel/plugin-syntax-json-strings@7.8.3':
154 | resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==}
155 | peerDependencies:
156 | '@babel/core': ^7.0.0-0
157 |
158 | '@babel/plugin-syntax-logical-assignment-operators@7.10.4':
159 | resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==}
160 | peerDependencies:
161 | '@babel/core': ^7.0.0-0
162 |
163 | '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3':
164 | resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==}
165 | peerDependencies:
166 | '@babel/core': ^7.0.0-0
167 |
168 | '@babel/plugin-syntax-numeric-separator@7.10.4':
169 | resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==}
170 | peerDependencies:
171 | '@babel/core': ^7.0.0-0
172 |
173 | '@babel/plugin-syntax-object-rest-spread@7.8.3':
174 | resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==}
175 | peerDependencies:
176 | '@babel/core': ^7.0.0-0
177 |
178 | '@babel/plugin-syntax-optional-catch-binding@7.8.3':
179 | resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==}
180 | peerDependencies:
181 | '@babel/core': ^7.0.0-0
182 |
183 | '@babel/plugin-syntax-optional-chaining@7.8.3':
184 | resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==}
185 | peerDependencies:
186 | '@babel/core': ^7.0.0-0
187 |
188 | '@babel/plugin-syntax-top-level-await@7.14.5':
189 | resolution: {integrity: sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==}
190 | engines: {node: '>=6.9.0'}
191 | peerDependencies:
192 | '@babel/core': ^7.0.0-0
193 |
194 | '@babel/plugin-syntax-typescript@7.23.3':
195 | resolution: {integrity: sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==}
196 | engines: {node: '>=6.9.0'}
197 | peerDependencies:
198 | '@babel/core': ^7.0.0-0
199 |
200 | '@babel/template@7.23.9':
201 | resolution: {integrity: sha512-+xrD2BWLpvHKNmX2QbpdpsBaWnRxahMwJjO+KZk2JOElj5nSmKezyS1B4u+QbHMTX69t4ukm6hh9lsYQ7GHCKA==}
202 | engines: {node: '>=6.9.0'}
203 |
204 | '@babel/traverse@7.23.9':
205 | resolution: {integrity: sha512-I/4UJ9vs90OkBtY6iiiTORVMyIhJ4kAVmsKo9KFc8UOxMeUfi2hvtIBsET5u9GizXE6/GFSuKCTNfgCswuEjRg==}
206 | engines: {node: '>=6.9.0'}
207 |
208 | '@babel/types@7.23.9':
209 | resolution: {integrity: sha512-dQjSq/7HaSjRM43FFGnv5keM2HsxpmyV1PfaSVm0nzzjwwTmjOe6J4bC8e3+pTEIgHaHj+1ZlLThRJ2auc/w1Q==}
210 | engines: {node: '>=6.9.0'}
211 |
212 | '@bcoe/v8-coverage@0.2.3':
213 | resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==}
214 |
215 | '@istanbuljs/load-nyc-config@1.1.0':
216 | resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==}
217 | engines: {node: '>=8'}
218 |
219 | '@istanbuljs/schema@0.1.3':
220 | resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==}
221 | engines: {node: '>=8'}
222 |
223 | '@jest/console@28.1.3':
224 | resolution: {integrity: sha512-QPAkP5EwKdK/bxIr6C1I4Vs0rm2nHiANzj/Z5X2JQkrZo6IqvC4ldZ9K95tF0HdidhA8Bo6egxSzUFPYKcEXLw==}
225 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
226 |
227 | '@jest/core@28.1.3':
228 | resolution: {integrity: sha512-CIKBrlaKOzA7YG19BEqCw3SLIsEwjZkeJzf5bdooVnW4bH5cktqe3JX+G2YV1aK5vP8N9na1IGWFzYaTp6k6NA==}
229 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
230 | peerDependencies:
231 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
232 | peerDependenciesMeta:
233 | node-notifier:
234 | optional: true
235 |
236 | '@jest/environment@28.1.3':
237 | resolution: {integrity: sha512-1bf40cMFTEkKyEf585R9Iz1WayDjHoHqvts0XFYEqyKM3cFWDpeMoqKKTAF9LSYQModPUlh8FKptoM2YcMWAXA==}
238 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
239 |
240 | '@jest/expect-utils@28.1.3':
241 | resolution: {integrity: sha512-wvbi9LUrHJLn3NlDW6wF2hvIMtd4JUl2QNVrjq+IBSHirgfrR3o9RnVtxzdEGO2n9JyIWwHnLfby5KzqBGg2YA==}
242 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
243 |
244 | '@jest/expect@28.1.3':
245 | resolution: {integrity: sha512-lzc8CpUbSoE4dqT0U+g1qODQjBRHPpCPXissXD4mS9+sWQdmmpeJ9zSH1rS1HEkrsMN0fb7nKrJ9giAR1d3wBw==}
246 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
247 |
248 | '@jest/fake-timers@28.1.3':
249 | resolution: {integrity: sha512-D/wOkL2POHv52h+ok5Oj/1gOG9HSywdoPtFsRCUmlCILXNn5eIWmcnd3DIiWlJnpGvQtmajqBP95Ei0EimxfLw==}
250 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
251 |
252 | '@jest/globals@28.1.3':
253 | resolution: {integrity: sha512-XFU4P4phyryCXu1pbcqMO0GSQcYe1IsalYCDzRNyhetyeyxMcIxa11qPNDpVNLeretItNqEmYYQn1UYz/5x1NA==}
254 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
255 |
256 | '@jest/reporters@28.1.3':
257 | resolution: {integrity: sha512-JuAy7wkxQZVNU/V6g9xKzCGC5LVXx9FDcABKsSXp5MiKPEE2144a/vXTEDoyzjUpZKfVwp08Wqg5A4WfTMAzjg==}
258 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
259 | peerDependencies:
260 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
261 | peerDependenciesMeta:
262 | node-notifier:
263 | optional: true
264 |
265 | '@jest/schemas@28.1.3':
266 | resolution: {integrity: sha512-/l/VWsdt/aBXgjshLWOFyFt3IVdYypu5y2Wn2rOO1un6nkqIn8SLXzgIMYXFyYsRWDyF5EthmKJMIdJvk08grg==}
267 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
268 |
269 | '@jest/source-map@28.1.2':
270 | resolution: {integrity: sha512-cV8Lx3BeStJb8ipPHnqVw/IM2VCMWO3crWZzYodSIkxXnRcXJipCdx1JCK0K5MsJJouZQTH73mzf4vgxRaH9ww==}
271 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
272 |
273 | '@jest/test-result@28.1.3':
274 | resolution: {integrity: sha512-kZAkxnSE+FqE8YjW8gNuoVkkC9I7S1qmenl8sGcDOLropASP+BkcGKwhXoyqQuGOGeYY0y/ixjrd/iERpEXHNg==}
275 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
276 |
277 | '@jest/test-sequencer@28.1.3':
278 | resolution: {integrity: sha512-NIMPEqqa59MWnDi1kvXXpYbqsfQmSJsIbnd85mdVGkiDfQ9WQQTXOLsvISUfonmnBT+w85WEgneCigEEdHDFxw==}
279 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
280 |
281 | '@jest/transform@28.1.3':
282 | resolution: {integrity: sha512-u5dT5di+oFI6hfcLOHGTAfmUxFRrjK+vnaP0kkVow9Md/M7V/MxqQMOz/VV25UZO8pzeA9PjfTpOu6BDuwSPQA==}
283 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
284 |
285 | '@jest/types@28.1.3':
286 | resolution: {integrity: sha512-RyjiyMUZrKz/c+zlMFO1pm70DcIlST8AeWTkoUdZevew44wcNZQHsEVOiCVtgVnlFFD82FPaXycys58cf2muVQ==}
287 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
288 |
289 | '@jridgewell/gen-mapping@0.3.3':
290 | resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==}
291 | engines: {node: '>=6.0.0'}
292 |
293 | '@jridgewell/resolve-uri@3.1.1':
294 | resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==}
295 | engines: {node: '>=6.0.0'}
296 |
297 | '@jridgewell/set-array@1.1.2':
298 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
299 | engines: {node: '>=6.0.0'}
300 |
301 | '@jridgewell/sourcemap-codec@1.4.15':
302 | resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==}
303 |
304 | '@jridgewell/trace-mapping@0.3.22':
305 | resolution: {integrity: sha512-Wf963MzWtA2sjrNt+g18IAln9lKnlRp+K2eH4jjIoF1wYeq3aMREpG09xhlhdzS0EjwU7qmUJYangWa+151vZw==}
306 |
307 | '@sinclair/typebox@0.24.51':
308 | resolution: {integrity: sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==}
309 |
310 | '@sinonjs/commons@1.8.6':
311 | resolution: {integrity: sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ==}
312 |
313 | '@sinonjs/fake-timers@9.1.2':
314 | resolution: {integrity: sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==}
315 |
316 | '@types/babel__core@7.20.5':
317 | resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
318 |
319 | '@types/babel__generator@7.6.8':
320 | resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==}
321 |
322 | '@types/babel__template@7.4.4':
323 | resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
324 |
325 | '@types/babel__traverse@7.20.5':
326 | resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==}
327 |
328 | '@types/graceful-fs@4.1.9':
329 | resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==}
330 |
331 | '@types/istanbul-lib-coverage@2.0.6':
332 | resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==}
333 |
334 | '@types/istanbul-lib-report@3.0.3':
335 | resolution: {integrity: sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==}
336 |
337 | '@types/istanbul-reports@3.0.4':
338 | resolution: {integrity: sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==}
339 |
340 | '@types/jest@28.1.8':
341 | resolution: {integrity: sha512-8TJkV++s7B6XqnDrzR1m/TT0A0h948Pnl/097veySPN67VRAgQ4gZ7n2KfJo2rVq6njQjdxU3GCCyDvAeuHoiw==}
342 |
343 | '@types/node@22.14.0':
344 | resolution: {integrity: sha512-Kmpl+z84ILoG+3T/zQFyAJsU6EPTmOCj8/2+83fSN6djd6I4o7uOuGIH6vq3PrjY5BGitSbFuMN18j3iknubbA==}
345 |
346 | '@types/prettier@2.7.3':
347 | resolution: {integrity: sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==}
348 |
349 | '@types/stack-utils@2.0.3':
350 | resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
351 |
352 | '@types/yargs-parser@21.0.3':
353 | resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
354 |
355 | '@types/yargs@17.0.32':
356 | resolution: {integrity: sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==}
357 |
358 | ansi-escapes@4.3.2:
359 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==}
360 | engines: {node: '>=8'}
361 |
362 | ansi-regex@2.1.1:
363 | resolution: {integrity: sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==}
364 | engines: {node: '>=0.10.0'}
365 |
366 | ansi-regex@5.0.1:
367 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
368 | engines: {node: '>=8'}
369 |
370 | ansi-styles@2.2.1:
371 | resolution: {integrity: sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==}
372 | engines: {node: '>=0.10.0'}
373 |
374 | ansi-styles@3.2.1:
375 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
376 | engines: {node: '>=4'}
377 |
378 | ansi-styles@4.3.0:
379 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
380 | engines: {node: '>=8'}
381 |
382 | ansi-styles@5.2.0:
383 | resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
384 | engines: {node: '>=10'}
385 |
386 | anymatch@3.1.3:
387 | resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
388 | engines: {node: '>= 8'}
389 |
390 | argparse@1.0.10:
391 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
392 |
393 | babel-jest@28.1.3:
394 | resolution: {integrity: sha512-epUaPOEWMk3cWX0M/sPvCHHCe9fMFAa/9hXEgKP8nFfNl/jlGkE9ucq9NqkZGXLDduCJYS0UvSlPUwC0S+rH6Q==}
395 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
396 | peerDependencies:
397 | '@babel/core': ^7.8.0
398 |
399 | babel-plugin-istanbul@6.1.1:
400 | resolution: {integrity: sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==}
401 | engines: {node: '>=8'}
402 |
403 | babel-plugin-jest-hoist@28.1.3:
404 | resolution: {integrity: sha512-Ys3tUKAmfnkRUpPdpa98eYrAR0nV+sSFUZZEGuQ2EbFd1y4SOLtD5QDNHAq+bb9a+bbXvYQC4b+ID/THIMcU6Q==}
405 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
406 |
407 | babel-preset-current-node-syntax@1.0.1:
408 | resolution: {integrity: sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==}
409 | peerDependencies:
410 | '@babel/core': ^7.0.0
411 |
412 | babel-preset-jest@28.1.3:
413 | resolution: {integrity: sha512-L+fupJvlWAHbQfn74coNX3zf60LXMJsezNvvx8eIh7iOR1luJ1poxYgQk1F8PYtNq/6QODDHCqsSnTFSWC491A==}
414 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
415 | peerDependencies:
416 | '@babel/core': ^7.0.0
417 |
418 | balanced-match@1.0.2:
419 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
420 |
421 | base64-url@2.3.3:
422 | resolution: {integrity: sha512-dLMhIsK7OplcDauDH/tZLvK7JmUZK3A7KiQpjNzsBrM6Etw7hzNI1tLEywqJk9NnwkgWuFKSlx/IUO7vF6Mo8Q==}
423 | engines: {node: '>=6'}
424 |
425 | brace-expansion@1.1.11:
426 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
427 |
428 | braces@3.0.2:
429 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==}
430 | engines: {node: '>=8'}
431 |
432 | browser-process-hrtime@0.1.3:
433 | resolution: {integrity: sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==}
434 |
435 | browserslist@4.22.3:
436 | resolution: {integrity: sha512-UAp55yfwNv0klWNapjs/ktHoguxuQNGnOzxYmfnXIS+8AsRDZkSDxg7R1AX3GKzn078SBI5dzwzj/Yx0Or0e3A==}
437 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
438 | hasBin: true
439 |
440 | bs-logger@0.2.6:
441 | resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==}
442 | engines: {node: '>= 6'}
443 |
444 | bser@2.1.1:
445 | resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==}
446 |
447 | buffer-from@1.1.2:
448 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
449 |
450 | callsites@3.1.0:
451 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
452 | engines: {node: '>=6'}
453 |
454 | camelcase@5.3.1:
455 | resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
456 | engines: {node: '>=6'}
457 |
458 | camelcase@6.3.0:
459 | resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
460 | engines: {node: '>=10'}
461 |
462 | caniuse-lite@1.0.30001587:
463 | resolution: {integrity: sha512-HMFNotUmLXn71BQxg8cijvqxnIAofforZOwGsxyXJ0qugTdspUF4sPSJ2vhgprHCB996tIDzEq1ubumPDV8ULA==}
464 |
465 | chalk@1.1.3:
466 | resolution: {integrity: sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==}
467 | engines: {node: '>=0.10.0'}
468 |
469 | chalk@2.4.2:
470 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
471 | engines: {node: '>=4'}
472 |
473 | chalk@4.1.2:
474 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
475 | engines: {node: '>=10'}
476 |
477 | char-regex@1.0.2:
478 | resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==}
479 | engines: {node: '>=10'}
480 |
481 | ci-info@3.9.0:
482 | resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
483 | engines: {node: '>=8'}
484 |
485 | cjs-module-lexer@1.2.3:
486 | resolution: {integrity: sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==}
487 |
488 | cliui@8.0.1:
489 | resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
490 | engines: {node: '>=12'}
491 |
492 | co@4.6.0:
493 | resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
494 | engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
495 |
496 | collect-v8-coverage@1.0.2:
497 | resolution: {integrity: sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==}
498 |
499 | color-convert@1.9.3:
500 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
501 |
502 | color-convert@2.0.1:
503 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
504 | engines: {node: '>=7.0.0'}
505 |
506 | color-name@1.1.3:
507 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
508 |
509 | color-name@1.1.4:
510 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
511 |
512 | concat-map@0.0.1:
513 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
514 |
515 | convert-source-map@1.9.0:
516 | resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==}
517 |
518 | convert-source-map@2.0.0:
519 | resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
520 |
521 | cross-spawn@7.0.3:
522 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
523 | engines: {node: '>= 8'}
524 |
525 | debug@4.3.4:
526 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
527 | engines: {node: '>=6.0'}
528 | peerDependencies:
529 | supports-color: '*'
530 | peerDependenciesMeta:
531 | supports-color:
532 | optional: true
533 |
534 | dedent@0.7.0:
535 | resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==}
536 |
537 | deepmerge@4.3.1:
538 | resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==}
539 | engines: {node: '>=0.10.0'}
540 |
541 | detect-newline@3.1.0:
542 | resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
543 | engines: {node: '>=8'}
544 |
545 | diff-sequences@28.1.1:
546 | resolution: {integrity: sha512-FU0iFaH/E23a+a718l8Qa/19bF9p06kgE0KipMOMadwa3SjnaElKzPaUC0vnibs6/B/9ni97s61mcejk8W1fQw==}
547 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
548 |
549 | electron-to-chromium@1.4.668:
550 | resolution: {integrity: sha512-ZOBocMYCehr9W31+GpMclR+KBaDZOoAEabLdhpZ8oU1JFDwIaFY0UDbpXVEUFc0BIP2O2Qn3rkfCjQmMR4T/bQ==}
551 |
552 | emittery@0.10.2:
553 | resolution: {integrity: sha512-aITqOwnLanpHLNXZJENbOgjUBeHocD+xsSJmNrjovKBW5HbSpW3d1pEls7GFQPUWXiwG9+0P4GtHfEqC/4M0Iw==}
554 | engines: {node: '>=12'}
555 |
556 | emoji-regex@8.0.0:
557 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
558 |
559 | error-ex@1.3.2:
560 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
561 |
562 | esbuild@0.12.29:
563 | resolution: {integrity: sha512-w/XuoBCSwepyiZtIRsKsetiLDUVGPVw1E/R3VTFSecIy8UR7Cq3SOtwKHJMFoVqqVG36aGkzh4e8BvpO1Fdc7g==}
564 | hasBin: true
565 |
566 | escalade@3.1.2:
567 | resolution: {integrity: sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==}
568 | engines: {node: '>=6'}
569 |
570 | escape-string-regexp@1.0.5:
571 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
572 | engines: {node: '>=0.8.0'}
573 |
574 | escape-string-regexp@2.0.0:
575 | resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==}
576 | engines: {node: '>=8'}
577 |
578 | esprima@4.0.1:
579 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
580 | engines: {node: '>=4'}
581 | hasBin: true
582 |
583 | execa@5.1.1:
584 | resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
585 | engines: {node: '>=10'}
586 |
587 | exit@0.1.2:
588 | resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
589 | engines: {node: '>= 0.8.0'}
590 |
591 | expect@28.1.3:
592 | resolution: {integrity: sha512-eEh0xn8HlsuOBxFgIss+2mX85VAS4Qy3OSkjV7rlBWljtA4oWH37glVGyOZSZvErDT/yBywZdPGwCXuTvSG85g==}
593 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
594 |
595 | fast-json-stable-stringify@2.1.0:
596 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
597 |
598 | fb-watchman@2.0.2:
599 | resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
600 |
601 | fill-range@7.0.1:
602 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==}
603 | engines: {node: '>=8'}
604 |
605 | find-up@4.1.0:
606 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
607 | engines: {node: '>=8'}
608 |
609 | flattie@1.1.0:
610 | resolution: {integrity: sha512-xU99gDEnciIwJdGcBmNHnzTJ/w5AT+VFJOu6sTB6WM8diOYNA3Sa+K1DiEBQ7XH4QikQq3iFW1U+jRVcotQnBw==}
611 | engines: {node: '>=8'}
612 |
613 | fs.realpath@1.0.0:
614 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
615 |
616 | fsevents@2.3.3:
617 | resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
618 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
619 | os: [darwin]
620 |
621 | function-bind@1.1.2:
622 | resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
623 |
624 | gensync@1.0.0-beta.2:
625 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
626 | engines: {node: '>=6.9.0'}
627 |
628 | get-caller-file@2.0.5:
629 | resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
630 | engines: {node: 6.* || 8.* || >= 10.*}
631 |
632 | get-package-type@0.1.0:
633 | resolution: {integrity: sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==}
634 | engines: {node: '>=8.0.0'}
635 |
636 | get-stream@6.0.1:
637 | resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
638 | engines: {node: '>=10'}
639 |
640 | glob@7.2.3:
641 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
642 |
643 | globals@11.12.0:
644 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==}
645 | engines: {node: '>=4'}
646 |
647 | graceful-fs@4.2.11:
648 | resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
649 |
650 | has-ansi@2.0.0:
651 | resolution: {integrity: sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==}
652 | engines: {node: '>=0.10.0'}
653 |
654 | has-flag@3.0.0:
655 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
656 | engines: {node: '>=4'}
657 |
658 | has-flag@4.0.0:
659 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
660 | engines: {node: '>=8'}
661 |
662 | hash-obj@4.0.0:
663 | resolution: {integrity: sha512-FwO1BUVWkyHasWDW4S8o0ssQXjvyghLV2rfVhnN36b2bbcj45eGiuzdn9XOvOpjV3TKQD7Gm2BWNXdE9V4KKYg==}
664 | engines: {node: '>=12'}
665 |
666 | hasown@2.0.1:
667 | resolution: {integrity: sha512-1/th4MHjnwncwXsIW6QMzlvYL9kG5e/CpVvLRZe4XPa8TOUNbCELqmvhDmnkNsAjwaG4+I8gJJL0JBvTTLO9qA==}
668 | engines: {node: '>= 0.4'}
669 |
670 | html-escaper@2.0.2:
671 | resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
672 |
673 | human-signals@2.1.0:
674 | resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
675 | engines: {node: '>=10.17.0'}
676 |
677 | import-local@3.1.0:
678 | resolution: {integrity: sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==}
679 | engines: {node: '>=8'}
680 | hasBin: true
681 |
682 | imurmurhash@0.1.4:
683 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
684 | engines: {node: '>=0.8.19'}
685 |
686 | inflight@1.0.6:
687 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==}
688 |
689 | inherits@2.0.4:
690 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
691 |
692 | is-arrayish@0.2.1:
693 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
694 |
695 | is-core-module@2.13.1:
696 | resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==}
697 |
698 | is-fullwidth-code-point@3.0.0:
699 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
700 | engines: {node: '>=8'}
701 |
702 | is-generator-fn@2.1.0:
703 | resolution: {integrity: sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==}
704 | engines: {node: '>=6'}
705 |
706 | is-number@7.0.0:
707 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
708 | engines: {node: '>=0.12.0'}
709 |
710 | is-obj@3.0.0:
711 | resolution: {integrity: sha512-IlsXEHOjtKhpN8r/tRFj2nDyTmHvcfNeu/nrRIcXE17ROeatXchkojffa1SpdqW4cr/Fj6QkEf/Gn4zf6KKvEQ==}
712 | engines: {node: '>=12'}
713 |
714 | is-plain-obj@4.1.0:
715 | resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
716 | engines: {node: '>=12'}
717 |
718 | is-stream@2.0.1:
719 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
720 | engines: {node: '>=8'}
721 |
722 | isexe@2.0.0:
723 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
724 |
725 | istanbul-lib-coverage@3.2.2:
726 | resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
727 | engines: {node: '>=8'}
728 |
729 | istanbul-lib-instrument@5.2.1:
730 | resolution: {integrity: sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==}
731 | engines: {node: '>=8'}
732 |
733 | istanbul-lib-report@3.0.1:
734 | resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
735 | engines: {node: '>=10'}
736 |
737 | istanbul-lib-source-maps@4.0.1:
738 | resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==}
739 | engines: {node: '>=10'}
740 |
741 | istanbul-reports@3.1.6:
742 | resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==}
743 | engines: {node: '>=8'}
744 |
745 | jest-changed-files@28.1.3:
746 | resolution: {integrity: sha512-esaOfUWJXk2nfZt9SPyC8gA1kNfdKLkQWyzsMlqq8msYSlNKfmZxfRgZn4Cd4MGVUF+7v6dBs0d5TOAKa7iIiA==}
747 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
748 |
749 | jest-circus@28.1.3:
750 | resolution: {integrity: sha512-cZ+eS5zc79MBwt+IhQhiEp0OeBddpc1n8MBo1nMB8A7oPMKEO+Sre+wHaLJexQUj9Ya/8NOBY0RESUgYjB6fow==}
751 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
752 |
753 | jest-cli@28.1.3:
754 | resolution: {integrity: sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==}
755 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
756 | hasBin: true
757 | peerDependencies:
758 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
759 | peerDependenciesMeta:
760 | node-notifier:
761 | optional: true
762 |
763 | jest-config@28.1.3:
764 | resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==}
765 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
766 | peerDependencies:
767 | '@types/node': '*'
768 | ts-node: '>=9.0.0'
769 | peerDependenciesMeta:
770 | '@types/node':
771 | optional: true
772 | ts-node:
773 | optional: true
774 |
775 | jest-diff@28.1.3:
776 | resolution: {integrity: sha512-8RqP1B/OXzjjTWkqMX67iqgwBVJRgCyKD3L9nq+6ZqJMdvjE8RgHktqZ6jNrkdMT+dJuYNI3rhQpxaz7drJHfw==}
777 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
778 |
779 | jest-docblock@28.1.1:
780 | resolution: {integrity: sha512-3wayBVNiOYx0cwAbl9rwm5kKFP8yHH3d/fkEaL02NPTkDojPtheGB7HZSFY4wzX+DxyrvhXz0KSCVksmCknCuA==}
781 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
782 |
783 | jest-each@28.1.3:
784 | resolution: {integrity: sha512-arT1z4sg2yABU5uogObVPvSlSMQlDA48owx07BDPAiasW0yYpYHYOo4HHLz9q0BVzDVU4hILFjzJw0So9aCL/g==}
785 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
786 |
787 | jest-environment-node@28.1.3:
788 | resolution: {integrity: sha512-ugP6XOhEpjAEhGYvp5Xj989ns5cB1K6ZdjBYuS30umT4CQEETaxSiPcZ/E1kFktX4GkrcM4qu07IIlDYX1gp+A==}
789 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
790 |
791 | jest-get-type@28.0.2:
792 | resolution: {integrity: sha512-ioj2w9/DxSYHfOm5lJKCdcAmPJzQXmbM/Url3rhlghrPvT3tt+7a/+oXc9azkKmLvoiXjtV83bEWqi+vs5nlPA==}
793 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
794 |
795 | jest-haste-map@28.1.3:
796 | resolution: {integrity: sha512-3S+RQWDXccXDKSWnkHa/dPwt+2qwA8CJzR61w3FoYCvoo3Pn8tvGcysmMF0Bj0EX5RYvAI2EIvC57OmotfdtKA==}
797 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
798 |
799 | jest-leak-detector@28.1.3:
800 | resolution: {integrity: sha512-WFVJhnQsiKtDEo5lG2mM0v40QWnBM+zMdHHyJs8AWZ7J0QZJS59MsyKeJHWhpBZBH32S48FOVvGyOFT1h0DlqA==}
801 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
802 |
803 | jest-matcher-utils@28.1.3:
804 | resolution: {integrity: sha512-kQeJ7qHemKfbzKoGjHHrRKH6atgxMk8Enkk2iPQ3XwO6oE/KYD8lMYOziCkeSB9G4adPM4nR1DE8Tf5JeWH6Bw==}
805 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
806 |
807 | jest-message-util@28.1.3:
808 | resolution: {integrity: sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==}
809 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
810 |
811 | jest-mock@28.1.3:
812 | resolution: {integrity: sha512-o3J2jr6dMMWYVH4Lh/NKmDXdosrsJgi4AviS8oXLujcjpCMBb1FMsblDnOXKZKfSiHLxYub1eS0IHuRXsio9eA==}
813 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
814 |
815 | jest-pnp-resolver@1.2.3:
816 | resolution: {integrity: sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==}
817 | engines: {node: '>=6'}
818 | peerDependencies:
819 | jest-resolve: '*'
820 | peerDependenciesMeta:
821 | jest-resolve:
822 | optional: true
823 |
824 | jest-regex-util@28.0.2:
825 | resolution: {integrity: sha512-4s0IgyNIy0y9FK+cjoVYoxamT7Zeo7MhzqRGx7YDYmaQn1wucY9rotiGkBzzcMXTtjrCAP/f7f+E0F7+fxPNdw==}
826 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
827 |
828 | jest-resolve-dependencies@28.1.3:
829 | resolution: {integrity: sha512-qa0QO2Q0XzQoNPouMbCc7Bvtsem8eQgVPNkwn9LnS+R2n8DaVDPL/U1gngC0LTl1RYXJU0uJa2BMC2DbTfFrHA==}
830 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
831 |
832 | jest-resolve@28.1.3:
833 | resolution: {integrity: sha512-Z1W3tTjE6QaNI90qo/BJpfnvpxtaFTFw5CDgwpyE/Kz8U/06N1Hjf4ia9quUhCh39qIGWF1ZuxFiBiJQwSEYKQ==}
834 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
835 |
836 | jest-runner@28.1.3:
837 | resolution: {integrity: sha512-GkMw4D/0USd62OVO0oEgjn23TM+YJa2U2Wu5zz9xsQB1MxWKDOlrnykPxnMsN0tnJllfLPinHTka61u0QhaxBA==}
838 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
839 |
840 | jest-runtime@28.1.3:
841 | resolution: {integrity: sha512-NU+881ScBQQLc1JHG5eJGU7Ui3kLKrmwCPPtYsJtBykixrM2OhVQlpMmFWJjMyDfdkGgBMNjXCGB/ebzsgNGQw==}
842 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
843 |
844 | jest-snapshot@28.1.3:
845 | resolution: {integrity: sha512-4lzMgtiNlc3DU/8lZfmqxN3AYD6GGLbl+72rdBpXvcV+whX7mDrREzkPdp2RnmfIiWBg1YbuFSkXduF2JcafJg==}
846 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
847 |
848 | jest-util@28.1.3:
849 | resolution: {integrity: sha512-XdqfpHwpcSRko/C35uLYFM2emRAltIIKZiJ9eAmhjsj0CqZMa0p1ib0R5fWIqGhn1a103DebTbpqIaP1qCQ6tQ==}
850 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
851 |
852 | jest-validate@28.1.3:
853 | resolution: {integrity: sha512-SZbOGBWEsaTxBGCOpsRWlXlvNkvTkY0XxRfh7zYmvd8uL5Qzyg0CHAXiXKROflh801quA6+/DsT4ODDthOC/OA==}
854 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
855 |
856 | jest-watcher@28.1.3:
857 | resolution: {integrity: sha512-t4qcqj9hze+jviFPUN3YAtAEeFnr/azITXQEMARf5cMwKY2SMBRnCQTXLixTl20OR6mLh9KLMrgVJgJISym+1g==}
858 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
859 |
860 | jest-worker@28.1.3:
861 | resolution: {integrity: sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==}
862 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
863 |
864 | jest@28.1.3:
865 | resolution: {integrity: sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==}
866 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
867 | hasBin: true
868 | peerDependencies:
869 | node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
870 | peerDependenciesMeta:
871 | node-notifier:
872 | optional: true
873 |
874 | js-tokens@4.0.0:
875 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
876 |
877 | js-yaml@3.14.1:
878 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==}
879 | hasBin: true
880 |
881 | jsesc@2.5.2:
882 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==}
883 | engines: {node: '>=4'}
884 | hasBin: true
885 |
886 | json-parse-even-better-errors@2.3.1:
887 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
888 |
889 | json-stringify-deterministic@1.0.12:
890 | resolution: {integrity: sha512-q3PN0lbUdv0pmurkBNdJH3pfFvOTL/Zp0lquqpvcjfKzt6Y0j49EPHAmVHCAS4Ceq/Y+PejWTzyiVpoY71+D6g==}
891 | engines: {node: '>= 4'}
892 |
893 | json5@2.2.3:
894 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
895 | engines: {node: '>=6'}
896 | hasBin: true
897 |
898 | kleur@3.0.3:
899 | resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
900 | engines: {node: '>=6'}
901 |
902 | leven@3.1.0:
903 | resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
904 | engines: {node: '>=6'}
905 |
906 | lines-and-columns@1.2.4:
907 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
908 |
909 | locate-path@5.0.0:
910 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
911 | engines: {node: '>=8'}
912 |
913 | lodash.memoize@4.1.2:
914 | resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==}
915 |
916 | lru-cache@5.1.1:
917 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
918 |
919 | lru-cache@6.0.0:
920 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==}
921 | engines: {node: '>=10'}
922 |
923 | make-dir@4.0.0:
924 | resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
925 | engines: {node: '>=10'}
926 |
927 | make-error@1.3.6:
928 | resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
929 |
930 | makeerror@1.0.12:
931 | resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
932 |
933 | merge-stream@2.0.0:
934 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
935 |
936 | micromatch@4.0.5:
937 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==}
938 | engines: {node: '>=8.6'}
939 |
940 | mimic-fn@2.1.0:
941 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==}
942 | engines: {node: '>=6'}
943 |
944 | minimatch@3.1.2:
945 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
946 |
947 | ms@2.1.2:
948 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==}
949 |
950 | mutexify@1.4.0:
951 | resolution: {integrity: sha512-pbYSsOrSB/AKN5h/WzzLRMFgZhClWccf2XIB4RSMC8JbquiB0e0/SH5AIfdQMdyHmYtv4seU7yV/TvAwPLJ1Yg==}
952 |
953 | nanobench@2.1.1:
954 | resolution: {integrity: sha512-z+Vv7zElcjN+OpzAxAquUayFLGK3JI/ubCl0Oh64YQqsTGG09CGqieJVQw4ui8huDnnAgrvTv93qi5UaOoNj8A==}
955 | hasBin: true
956 |
957 | natural-compare@1.4.0:
958 | resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
959 |
960 | node-int64@0.4.0:
961 | resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
962 |
963 | node-releases@2.0.14:
964 | resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==}
965 |
966 | normalize-path@3.0.0:
967 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
968 | engines: {node: '>=0.10.0'}
969 |
970 | npm-run-path@4.0.1:
971 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
972 | engines: {node: '>=8'}
973 |
974 | once@1.4.0:
975 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
976 |
977 | onetime@5.1.2:
978 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
979 | engines: {node: '>=6'}
980 |
981 | p-limit@2.3.0:
982 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
983 | engines: {node: '>=6'}
984 |
985 | p-limit@3.1.0:
986 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
987 | engines: {node: '>=10'}
988 |
989 | p-locate@4.1.0:
990 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
991 | engines: {node: '>=8'}
992 |
993 | p-try@2.2.0:
994 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
995 | engines: {node: '>=6'}
996 |
997 | parse-json@5.2.0:
998 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
999 | engines: {node: '>=8'}
1000 |
1001 | path-exists@4.0.0:
1002 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
1003 | engines: {node: '>=8'}
1004 |
1005 | path-is-absolute@1.0.1:
1006 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==}
1007 | engines: {node: '>=0.10.0'}
1008 |
1009 | path-key@3.1.1:
1010 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
1011 | engines: {node: '>=8'}
1012 |
1013 | path-parse@1.0.7:
1014 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
1015 |
1016 | picocolors@1.0.0:
1017 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==}
1018 |
1019 | picomatch@2.3.1:
1020 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
1021 | engines: {node: '>=8.6'}
1022 |
1023 | pirates@4.0.6:
1024 | resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
1025 | engines: {node: '>= 6'}
1026 |
1027 | pkg-dir@4.2.0:
1028 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
1029 | engines: {node: '>=8'}
1030 |
1031 | prettier@2.8.8:
1032 | resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==}
1033 | engines: {node: '>=10.13.0'}
1034 | hasBin: true
1035 |
1036 | pretty-format@28.1.3:
1037 | resolution: {integrity: sha512-8gFb/To0OmxHR9+ZTb14Df2vNxdGCX8g1xWGUTqUw5TiZvcQf5sHKObd5UcPyLLyowNwDAMTF3XWOG1B6mxl1Q==}
1038 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
1039 |
1040 | pretty-hrtime@1.0.3:
1041 | resolution: {integrity: sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==}
1042 | engines: {node: '>= 0.8'}
1043 |
1044 | prompts@2.4.2:
1045 | resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
1046 | engines: {node: '>= 6'}
1047 |
1048 | queue-tick@1.0.1:
1049 | resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==}
1050 |
1051 | react-is@18.2.0:
1052 | resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
1053 |
1054 | require-directory@2.1.1:
1055 | resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
1056 | engines: {node: '>=0.10.0'}
1057 |
1058 | resolve-cwd@3.0.0:
1059 | resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
1060 | engines: {node: '>=8'}
1061 |
1062 | resolve-from@5.0.0:
1063 | resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
1064 | engines: {node: '>=8'}
1065 |
1066 | resolve.exports@1.1.1:
1067 | resolution: {integrity: sha512-/NtpHNDN7jWhAaQ9BvBUYZ6YTXsRBgfqWFWP7BZBaoMJO/I3G5OFzvTuWNlZC3aPjins1F+TNrLKsGbH4rfsRQ==}
1068 | engines: {node: '>=10'}
1069 |
1070 | resolve@1.22.8:
1071 | resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
1072 | hasBin: true
1073 |
1074 | rimraf@3.0.2:
1075 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
1076 | hasBin: true
1077 |
1078 | semver@6.3.1:
1079 | resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
1080 | hasBin: true
1081 |
1082 | semver@7.6.0:
1083 | resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==}
1084 | engines: {node: '>=10'}
1085 | hasBin: true
1086 |
1087 | shebang-command@2.0.0:
1088 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
1089 | engines: {node: '>=8'}
1090 |
1091 | shebang-regex@3.0.0:
1092 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
1093 | engines: {node: '>=8'}
1094 |
1095 | signal-exit@3.0.7:
1096 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
1097 |
1098 | sisteransi@1.0.5:
1099 | resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
1100 |
1101 | slash@3.0.0:
1102 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
1103 | engines: {node: '>=8'}
1104 |
1105 | sort-keys@5.0.0:
1106 | resolution: {integrity: sha512-Pdz01AvCAottHTPQGzndktFNdbRA75BgOfeT1hH+AMnJFv8lynkPi42rfeEhpx1saTEI3YNMWxfqu0sFD1G8pw==}
1107 | engines: {node: '>=12'}
1108 |
1109 | source-map-support@0.5.13:
1110 | resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==}
1111 |
1112 | source-map@0.6.1:
1113 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
1114 | engines: {node: '>=0.10.0'}
1115 |
1116 | sprintf-js@1.0.3:
1117 | resolution: {integrity: sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==}
1118 |
1119 | stack-utils@2.0.6:
1120 | resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
1121 | engines: {node: '>=10'}
1122 |
1123 | string-length@4.0.2:
1124 | resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==}
1125 | engines: {node: '>=10'}
1126 |
1127 | string-width@4.2.3:
1128 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
1129 | engines: {node: '>=8'}
1130 |
1131 | strip-ansi@3.0.1:
1132 | resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==}
1133 | engines: {node: '>=0.10.0'}
1134 |
1135 | strip-ansi@6.0.1:
1136 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
1137 | engines: {node: '>=8'}
1138 |
1139 | strip-bom@4.0.0:
1140 | resolution: {integrity: sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==}
1141 | engines: {node: '>=8'}
1142 |
1143 | strip-final-newline@2.0.0:
1144 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==}
1145 | engines: {node: '>=6'}
1146 |
1147 | strip-json-comments@3.1.1:
1148 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
1149 | engines: {node: '>=8'}
1150 |
1151 | supports-color@2.0.0:
1152 | resolution: {integrity: sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==}
1153 | engines: {node: '>=0.8.0'}
1154 |
1155 | supports-color@5.5.0:
1156 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
1157 | engines: {node: '>=4'}
1158 |
1159 | supports-color@7.2.0:
1160 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
1161 | engines: {node: '>=8'}
1162 |
1163 | supports-color@8.1.1:
1164 | resolution: {integrity: sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==}
1165 | engines: {node: '>=10'}
1166 |
1167 | supports-hyperlinks@2.3.0:
1168 | resolution: {integrity: sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA==}
1169 | engines: {node: '>=8'}
1170 |
1171 | supports-preserve-symlinks-flag@1.0.0:
1172 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
1173 | engines: {node: '>= 0.4'}
1174 |
1175 | terminal-link@2.1.1:
1176 | resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==}
1177 | engines: {node: '>=8'}
1178 |
1179 | test-exclude@6.0.0:
1180 | resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==}
1181 | engines: {node: '>=8'}
1182 |
1183 | tmpl@1.0.5:
1184 | resolution: {integrity: sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==}
1185 |
1186 | to-fast-properties@2.0.0:
1187 | resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
1188 | engines: {node: '>=4'}
1189 |
1190 | to-regex-range@5.0.1:
1191 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
1192 | engines: {node: '>=8.0'}
1193 |
1194 | ts-jest@28.0.8:
1195 | resolution: {integrity: sha512-5FaG0lXmRPzApix8oFG8RKjAz4ehtm8yMKOTy5HX3fY6W8kmvOrmcY0hKDElW52FJov+clhUbrKAqofnj4mXTg==}
1196 | engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0}
1197 | hasBin: true
1198 | peerDependencies:
1199 | '@babel/core': '>=7.0.0-beta.0 <8'
1200 | '@jest/types': ^28.0.0
1201 | babel-jest: ^28.0.0
1202 | esbuild: '*'
1203 | jest: ^28.0.0
1204 | typescript: '>=4.3'
1205 | peerDependenciesMeta:
1206 | '@babel/core':
1207 | optional: true
1208 | '@jest/types':
1209 | optional: true
1210 | babel-jest:
1211 | optional: true
1212 | esbuild:
1213 | optional: true
1214 |
1215 | type-detect@4.0.8:
1216 | resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
1217 | engines: {node: '>=4'}
1218 |
1219 | type-fest@0.21.3:
1220 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
1221 | engines: {node: '>=10'}
1222 |
1223 | type-fest@1.4.0:
1224 | resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==}
1225 | engines: {node: '>=10'}
1226 |
1227 | typescript@4.9.5:
1228 | resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==}
1229 | engines: {node: '>=4.2.0'}
1230 | hasBin: true
1231 |
1232 | undici-types@6.21.0:
1233 | resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
1234 |
1235 | update-browserslist-db@1.0.13:
1236 | resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==}
1237 | hasBin: true
1238 | peerDependencies:
1239 | browserslist: '>= 4.21.0'
1240 |
1241 | v8-to-istanbul@9.2.0:
1242 | resolution: {integrity: sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==}
1243 | engines: {node: '>=10.12.0'}
1244 |
1245 | walker@1.0.8:
1246 | resolution: {integrity: sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==}
1247 |
1248 | which@2.0.2:
1249 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
1250 | engines: {node: '>= 8'}
1251 | hasBin: true
1252 |
1253 | wrap-ansi@7.0.0:
1254 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
1255 | engines: {node: '>=10'}
1256 |
1257 | wrappy@1.0.2:
1258 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
1259 |
1260 | write-file-atomic@4.0.2:
1261 | resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==}
1262 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
1263 |
1264 | y18n@5.0.8:
1265 | resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
1266 | engines: {node: '>=10'}
1267 |
1268 | yallist@3.1.1:
1269 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
1270 |
1271 | yallist@4.0.0:
1272 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
1273 |
1274 | yargs-parser@21.1.1:
1275 | resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
1276 | engines: {node: '>=12'}
1277 |
1278 | yargs@17.7.2:
1279 | resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
1280 | engines: {node: '>=12'}
1281 |
1282 | yocto-queue@0.1.0:
1283 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
1284 | engines: {node: '>=10'}
1285 |
1286 | snapshots:
1287 |
1288 | '@ampproject/remapping@2.2.1':
1289 | dependencies:
1290 | '@jridgewell/gen-mapping': 0.3.3
1291 | '@jridgewell/trace-mapping': 0.3.22
1292 |
1293 | '@babel/code-frame@7.23.5':
1294 | dependencies:
1295 | '@babel/highlight': 7.23.4
1296 | chalk: 2.4.2
1297 |
1298 | '@babel/compat-data@7.23.5': {}
1299 |
1300 | '@babel/core@7.23.9':
1301 | dependencies:
1302 | '@ampproject/remapping': 2.2.1
1303 | '@babel/code-frame': 7.23.5
1304 | '@babel/generator': 7.23.6
1305 | '@babel/helper-compilation-targets': 7.23.6
1306 | '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.9)
1307 | '@babel/helpers': 7.23.9
1308 | '@babel/parser': 7.23.9
1309 | '@babel/template': 7.23.9
1310 | '@babel/traverse': 7.23.9
1311 | '@babel/types': 7.23.9
1312 | convert-source-map: 2.0.0
1313 | debug: 4.3.4
1314 | gensync: 1.0.0-beta.2
1315 | json5: 2.2.3
1316 | semver: 6.3.1
1317 | transitivePeerDependencies:
1318 | - supports-color
1319 |
1320 | '@babel/generator@7.23.6':
1321 | dependencies:
1322 | '@babel/types': 7.23.9
1323 | '@jridgewell/gen-mapping': 0.3.3
1324 | '@jridgewell/trace-mapping': 0.3.22
1325 | jsesc: 2.5.2
1326 |
1327 | '@babel/helper-compilation-targets@7.23.6':
1328 | dependencies:
1329 | '@babel/compat-data': 7.23.5
1330 | '@babel/helper-validator-option': 7.23.5
1331 | browserslist: 4.22.3
1332 | lru-cache: 5.1.1
1333 | semver: 6.3.1
1334 |
1335 | '@babel/helper-environment-visitor@7.22.20': {}
1336 |
1337 | '@babel/helper-function-name@7.23.0':
1338 | dependencies:
1339 | '@babel/template': 7.23.9
1340 | '@babel/types': 7.23.9
1341 |
1342 | '@babel/helper-hoist-variables@7.22.5':
1343 | dependencies:
1344 | '@babel/types': 7.23.9
1345 |
1346 | '@babel/helper-module-imports@7.22.15':
1347 | dependencies:
1348 | '@babel/types': 7.23.9
1349 |
1350 | '@babel/helper-module-transforms@7.23.3(@babel/core@7.23.9)':
1351 | dependencies:
1352 | '@babel/core': 7.23.9
1353 | '@babel/helper-environment-visitor': 7.22.20
1354 | '@babel/helper-module-imports': 7.22.15
1355 | '@babel/helper-simple-access': 7.22.5
1356 | '@babel/helper-split-export-declaration': 7.22.6
1357 | '@babel/helper-validator-identifier': 7.22.20
1358 |
1359 | '@babel/helper-plugin-utils@7.22.5': {}
1360 |
1361 | '@babel/helper-simple-access@7.22.5':
1362 | dependencies:
1363 | '@babel/types': 7.23.9
1364 |
1365 | '@babel/helper-split-export-declaration@7.22.6':
1366 | dependencies:
1367 | '@babel/types': 7.23.9
1368 |
1369 | '@babel/helper-string-parser@7.23.4': {}
1370 |
1371 | '@babel/helper-validator-identifier@7.22.20': {}
1372 |
1373 | '@babel/helper-validator-option@7.23.5': {}
1374 |
1375 | '@babel/helpers@7.23.9':
1376 | dependencies:
1377 | '@babel/template': 7.23.9
1378 | '@babel/traverse': 7.23.9
1379 | '@babel/types': 7.23.9
1380 | transitivePeerDependencies:
1381 | - supports-color
1382 |
1383 | '@babel/highlight@7.23.4':
1384 | dependencies:
1385 | '@babel/helper-validator-identifier': 7.22.20
1386 | chalk: 2.4.2
1387 | js-tokens: 4.0.0
1388 |
1389 | '@babel/parser@7.23.9':
1390 | dependencies:
1391 | '@babel/types': 7.23.9
1392 |
1393 | '@babel/plugin-syntax-async-generators@7.8.4(@babel/core@7.23.9)':
1394 | dependencies:
1395 | '@babel/core': 7.23.9
1396 | '@babel/helper-plugin-utils': 7.22.5
1397 |
1398 | '@babel/plugin-syntax-bigint@7.8.3(@babel/core@7.23.9)':
1399 | dependencies:
1400 | '@babel/core': 7.23.9
1401 | '@babel/helper-plugin-utils': 7.22.5
1402 |
1403 | '@babel/plugin-syntax-class-properties@7.12.13(@babel/core@7.23.9)':
1404 | dependencies:
1405 | '@babel/core': 7.23.9
1406 | '@babel/helper-plugin-utils': 7.22.5
1407 |
1408 | '@babel/plugin-syntax-import-meta@7.10.4(@babel/core@7.23.9)':
1409 | dependencies:
1410 | '@babel/core': 7.23.9
1411 | '@babel/helper-plugin-utils': 7.22.5
1412 |
1413 | '@babel/plugin-syntax-json-strings@7.8.3(@babel/core@7.23.9)':
1414 | dependencies:
1415 | '@babel/core': 7.23.9
1416 | '@babel/helper-plugin-utils': 7.22.5
1417 |
1418 | '@babel/plugin-syntax-logical-assignment-operators@7.10.4(@babel/core@7.23.9)':
1419 | dependencies:
1420 | '@babel/core': 7.23.9
1421 | '@babel/helper-plugin-utils': 7.22.5
1422 |
1423 | '@babel/plugin-syntax-nullish-coalescing-operator@7.8.3(@babel/core@7.23.9)':
1424 | dependencies:
1425 | '@babel/core': 7.23.9
1426 | '@babel/helper-plugin-utils': 7.22.5
1427 |
1428 | '@babel/plugin-syntax-numeric-separator@7.10.4(@babel/core@7.23.9)':
1429 | dependencies:
1430 | '@babel/core': 7.23.9
1431 | '@babel/helper-plugin-utils': 7.22.5
1432 |
1433 | '@babel/plugin-syntax-object-rest-spread@7.8.3(@babel/core@7.23.9)':
1434 | dependencies:
1435 | '@babel/core': 7.23.9
1436 | '@babel/helper-plugin-utils': 7.22.5
1437 |
1438 | '@babel/plugin-syntax-optional-catch-binding@7.8.3(@babel/core@7.23.9)':
1439 | dependencies:
1440 | '@babel/core': 7.23.9
1441 | '@babel/helper-plugin-utils': 7.22.5
1442 |
1443 | '@babel/plugin-syntax-optional-chaining@7.8.3(@babel/core@7.23.9)':
1444 | dependencies:
1445 | '@babel/core': 7.23.9
1446 | '@babel/helper-plugin-utils': 7.22.5
1447 |
1448 | '@babel/plugin-syntax-top-level-await@7.14.5(@babel/core@7.23.9)':
1449 | dependencies:
1450 | '@babel/core': 7.23.9
1451 | '@babel/helper-plugin-utils': 7.22.5
1452 |
1453 | '@babel/plugin-syntax-typescript@7.23.3(@babel/core@7.23.9)':
1454 | dependencies:
1455 | '@babel/core': 7.23.9
1456 | '@babel/helper-plugin-utils': 7.22.5
1457 |
1458 | '@babel/template@7.23.9':
1459 | dependencies:
1460 | '@babel/code-frame': 7.23.5
1461 | '@babel/parser': 7.23.9
1462 | '@babel/types': 7.23.9
1463 |
1464 | '@babel/traverse@7.23.9':
1465 | dependencies:
1466 | '@babel/code-frame': 7.23.5
1467 | '@babel/generator': 7.23.6
1468 | '@babel/helper-environment-visitor': 7.22.20
1469 | '@babel/helper-function-name': 7.23.0
1470 | '@babel/helper-hoist-variables': 7.22.5
1471 | '@babel/helper-split-export-declaration': 7.22.6
1472 | '@babel/parser': 7.23.9
1473 | '@babel/types': 7.23.9
1474 | debug: 4.3.4
1475 | globals: 11.12.0
1476 | transitivePeerDependencies:
1477 | - supports-color
1478 |
1479 | '@babel/types@7.23.9':
1480 | dependencies:
1481 | '@babel/helper-string-parser': 7.23.4
1482 | '@babel/helper-validator-identifier': 7.22.20
1483 | to-fast-properties: 2.0.0
1484 |
1485 | '@bcoe/v8-coverage@0.2.3': {}
1486 |
1487 | '@istanbuljs/load-nyc-config@1.1.0':
1488 | dependencies:
1489 | camelcase: 5.3.1
1490 | find-up: 4.1.0
1491 | get-package-type: 0.1.0
1492 | js-yaml: 3.14.1
1493 | resolve-from: 5.0.0
1494 |
1495 | '@istanbuljs/schema@0.1.3': {}
1496 |
1497 | '@jest/console@28.1.3':
1498 | dependencies:
1499 | '@jest/types': 28.1.3
1500 | '@types/node': 22.14.0
1501 | chalk: 4.1.2
1502 | jest-message-util: 28.1.3
1503 | jest-util: 28.1.3
1504 | slash: 3.0.0
1505 |
1506 | '@jest/core@28.1.3':
1507 | dependencies:
1508 | '@jest/console': 28.1.3
1509 | '@jest/reporters': 28.1.3
1510 | '@jest/test-result': 28.1.3
1511 | '@jest/transform': 28.1.3
1512 | '@jest/types': 28.1.3
1513 | '@types/node': 22.14.0
1514 | ansi-escapes: 4.3.2
1515 | chalk: 4.1.2
1516 | ci-info: 3.9.0
1517 | exit: 0.1.2
1518 | graceful-fs: 4.2.11
1519 | jest-changed-files: 28.1.3
1520 | jest-config: 28.1.3(@types/node@22.14.0)
1521 | jest-haste-map: 28.1.3
1522 | jest-message-util: 28.1.3
1523 | jest-regex-util: 28.0.2
1524 | jest-resolve: 28.1.3
1525 | jest-resolve-dependencies: 28.1.3
1526 | jest-runner: 28.1.3
1527 | jest-runtime: 28.1.3
1528 | jest-snapshot: 28.1.3
1529 | jest-util: 28.1.3
1530 | jest-validate: 28.1.3
1531 | jest-watcher: 28.1.3
1532 | micromatch: 4.0.5
1533 | pretty-format: 28.1.3
1534 | rimraf: 3.0.2
1535 | slash: 3.0.0
1536 | strip-ansi: 6.0.1
1537 | transitivePeerDependencies:
1538 | - supports-color
1539 | - ts-node
1540 |
1541 | '@jest/environment@28.1.3':
1542 | dependencies:
1543 | '@jest/fake-timers': 28.1.3
1544 | '@jest/types': 28.1.3
1545 | '@types/node': 22.14.0
1546 | jest-mock: 28.1.3
1547 |
1548 | '@jest/expect-utils@28.1.3':
1549 | dependencies:
1550 | jest-get-type: 28.0.2
1551 |
1552 | '@jest/expect@28.1.3':
1553 | dependencies:
1554 | expect: 28.1.3
1555 | jest-snapshot: 28.1.3
1556 | transitivePeerDependencies:
1557 | - supports-color
1558 |
1559 | '@jest/fake-timers@28.1.3':
1560 | dependencies:
1561 | '@jest/types': 28.1.3
1562 | '@sinonjs/fake-timers': 9.1.2
1563 | '@types/node': 22.14.0
1564 | jest-message-util: 28.1.3
1565 | jest-mock: 28.1.3
1566 | jest-util: 28.1.3
1567 |
1568 | '@jest/globals@28.1.3':
1569 | dependencies:
1570 | '@jest/environment': 28.1.3
1571 | '@jest/expect': 28.1.3
1572 | '@jest/types': 28.1.3
1573 | transitivePeerDependencies:
1574 | - supports-color
1575 |
1576 | '@jest/reporters@28.1.3':
1577 | dependencies:
1578 | '@bcoe/v8-coverage': 0.2.3
1579 | '@jest/console': 28.1.3
1580 | '@jest/test-result': 28.1.3
1581 | '@jest/transform': 28.1.3
1582 | '@jest/types': 28.1.3
1583 | '@jridgewell/trace-mapping': 0.3.22
1584 | '@types/node': 22.14.0
1585 | chalk: 4.1.2
1586 | collect-v8-coverage: 1.0.2
1587 | exit: 0.1.2
1588 | glob: 7.2.3
1589 | graceful-fs: 4.2.11
1590 | istanbul-lib-coverage: 3.2.2
1591 | istanbul-lib-instrument: 5.2.1
1592 | istanbul-lib-report: 3.0.1
1593 | istanbul-lib-source-maps: 4.0.1
1594 | istanbul-reports: 3.1.6
1595 | jest-message-util: 28.1.3
1596 | jest-util: 28.1.3
1597 | jest-worker: 28.1.3
1598 | slash: 3.0.0
1599 | string-length: 4.0.2
1600 | strip-ansi: 6.0.1
1601 | terminal-link: 2.1.1
1602 | v8-to-istanbul: 9.2.0
1603 | transitivePeerDependencies:
1604 | - supports-color
1605 |
1606 | '@jest/schemas@28.1.3':
1607 | dependencies:
1608 | '@sinclair/typebox': 0.24.51
1609 |
1610 | '@jest/source-map@28.1.2':
1611 | dependencies:
1612 | '@jridgewell/trace-mapping': 0.3.22
1613 | callsites: 3.1.0
1614 | graceful-fs: 4.2.11
1615 |
1616 | '@jest/test-result@28.1.3':
1617 | dependencies:
1618 | '@jest/console': 28.1.3
1619 | '@jest/types': 28.1.3
1620 | '@types/istanbul-lib-coverage': 2.0.6
1621 | collect-v8-coverage: 1.0.2
1622 |
1623 | '@jest/test-sequencer@28.1.3':
1624 | dependencies:
1625 | '@jest/test-result': 28.1.3
1626 | graceful-fs: 4.2.11
1627 | jest-haste-map: 28.1.3
1628 | slash: 3.0.0
1629 |
1630 | '@jest/transform@28.1.3':
1631 | dependencies:
1632 | '@babel/core': 7.23.9
1633 | '@jest/types': 28.1.3
1634 | '@jridgewell/trace-mapping': 0.3.22
1635 | babel-plugin-istanbul: 6.1.1
1636 | chalk: 4.1.2
1637 | convert-source-map: 1.9.0
1638 | fast-json-stable-stringify: 2.1.0
1639 | graceful-fs: 4.2.11
1640 | jest-haste-map: 28.1.3
1641 | jest-regex-util: 28.0.2
1642 | jest-util: 28.1.3
1643 | micromatch: 4.0.5
1644 | pirates: 4.0.6
1645 | slash: 3.0.0
1646 | write-file-atomic: 4.0.2
1647 | transitivePeerDependencies:
1648 | - supports-color
1649 |
1650 | '@jest/types@28.1.3':
1651 | dependencies:
1652 | '@jest/schemas': 28.1.3
1653 | '@types/istanbul-lib-coverage': 2.0.6
1654 | '@types/istanbul-reports': 3.0.4
1655 | '@types/node': 22.14.0
1656 | '@types/yargs': 17.0.32
1657 | chalk: 4.1.2
1658 |
1659 | '@jridgewell/gen-mapping@0.3.3':
1660 | dependencies:
1661 | '@jridgewell/set-array': 1.1.2
1662 | '@jridgewell/sourcemap-codec': 1.4.15
1663 | '@jridgewell/trace-mapping': 0.3.22
1664 |
1665 | '@jridgewell/resolve-uri@3.1.1': {}
1666 |
1667 | '@jridgewell/set-array@1.1.2': {}
1668 |
1669 | '@jridgewell/sourcemap-codec@1.4.15': {}
1670 |
1671 | '@jridgewell/trace-mapping@0.3.22':
1672 | dependencies:
1673 | '@jridgewell/resolve-uri': 3.1.1
1674 | '@jridgewell/sourcemap-codec': 1.4.15
1675 |
1676 | '@sinclair/typebox@0.24.51': {}
1677 |
1678 | '@sinonjs/commons@1.8.6':
1679 | dependencies:
1680 | type-detect: 4.0.8
1681 |
1682 | '@sinonjs/fake-timers@9.1.2':
1683 | dependencies:
1684 | '@sinonjs/commons': 1.8.6
1685 |
1686 | '@types/babel__core@7.20.5':
1687 | dependencies:
1688 | '@babel/parser': 7.23.9
1689 | '@babel/types': 7.23.9
1690 | '@types/babel__generator': 7.6.8
1691 | '@types/babel__template': 7.4.4
1692 | '@types/babel__traverse': 7.20.5
1693 |
1694 | '@types/babel__generator@7.6.8':
1695 | dependencies:
1696 | '@babel/types': 7.23.9
1697 |
1698 | '@types/babel__template@7.4.4':
1699 | dependencies:
1700 | '@babel/parser': 7.23.9
1701 | '@babel/types': 7.23.9
1702 |
1703 | '@types/babel__traverse@7.20.5':
1704 | dependencies:
1705 | '@babel/types': 7.23.9
1706 |
1707 | '@types/graceful-fs@4.1.9':
1708 | dependencies:
1709 | '@types/node': 22.14.0
1710 |
1711 | '@types/istanbul-lib-coverage@2.0.6': {}
1712 |
1713 | '@types/istanbul-lib-report@3.0.3':
1714 | dependencies:
1715 | '@types/istanbul-lib-coverage': 2.0.6
1716 |
1717 | '@types/istanbul-reports@3.0.4':
1718 | dependencies:
1719 | '@types/istanbul-lib-report': 3.0.3
1720 |
1721 | '@types/jest@28.1.8':
1722 | dependencies:
1723 | expect: 28.1.3
1724 | pretty-format: 28.1.3
1725 |
1726 | '@types/node@22.14.0':
1727 | dependencies:
1728 | undici-types: 6.21.0
1729 |
1730 | '@types/prettier@2.7.3': {}
1731 |
1732 | '@types/stack-utils@2.0.3': {}
1733 |
1734 | '@types/yargs-parser@21.0.3': {}
1735 |
1736 | '@types/yargs@17.0.32':
1737 | dependencies:
1738 | '@types/yargs-parser': 21.0.3
1739 |
1740 | ansi-escapes@4.3.2:
1741 | dependencies:
1742 | type-fest: 0.21.3
1743 |
1744 | ansi-regex@2.1.1: {}
1745 |
1746 | ansi-regex@5.0.1: {}
1747 |
1748 | ansi-styles@2.2.1: {}
1749 |
1750 | ansi-styles@3.2.1:
1751 | dependencies:
1752 | color-convert: 1.9.3
1753 |
1754 | ansi-styles@4.3.0:
1755 | dependencies:
1756 | color-convert: 2.0.1
1757 |
1758 | ansi-styles@5.2.0: {}
1759 |
1760 | anymatch@3.1.3:
1761 | dependencies:
1762 | normalize-path: 3.0.0
1763 | picomatch: 2.3.1
1764 |
1765 | argparse@1.0.10:
1766 | dependencies:
1767 | sprintf-js: 1.0.3
1768 |
1769 | babel-jest@28.1.3(@babel/core@7.23.9):
1770 | dependencies:
1771 | '@babel/core': 7.23.9
1772 | '@jest/transform': 28.1.3
1773 | '@types/babel__core': 7.20.5
1774 | babel-plugin-istanbul: 6.1.1
1775 | babel-preset-jest: 28.1.3(@babel/core@7.23.9)
1776 | chalk: 4.1.2
1777 | graceful-fs: 4.2.11
1778 | slash: 3.0.0
1779 | transitivePeerDependencies:
1780 | - supports-color
1781 |
1782 | babel-plugin-istanbul@6.1.1:
1783 | dependencies:
1784 | '@babel/helper-plugin-utils': 7.22.5
1785 | '@istanbuljs/load-nyc-config': 1.1.0
1786 | '@istanbuljs/schema': 0.1.3
1787 | istanbul-lib-instrument: 5.2.1
1788 | test-exclude: 6.0.0
1789 | transitivePeerDependencies:
1790 | - supports-color
1791 |
1792 | babel-plugin-jest-hoist@28.1.3:
1793 | dependencies:
1794 | '@babel/template': 7.23.9
1795 | '@babel/types': 7.23.9
1796 | '@types/babel__core': 7.20.5
1797 | '@types/babel__traverse': 7.20.5
1798 |
1799 | babel-preset-current-node-syntax@1.0.1(@babel/core@7.23.9):
1800 | dependencies:
1801 | '@babel/core': 7.23.9
1802 | '@babel/plugin-syntax-async-generators': 7.8.4(@babel/core@7.23.9)
1803 | '@babel/plugin-syntax-bigint': 7.8.3(@babel/core@7.23.9)
1804 | '@babel/plugin-syntax-class-properties': 7.12.13(@babel/core@7.23.9)
1805 | '@babel/plugin-syntax-import-meta': 7.10.4(@babel/core@7.23.9)
1806 | '@babel/plugin-syntax-json-strings': 7.8.3(@babel/core@7.23.9)
1807 | '@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.23.9)
1808 | '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3(@babel/core@7.23.9)
1809 | '@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.23.9)
1810 | '@babel/plugin-syntax-object-rest-spread': 7.8.3(@babel/core@7.23.9)
1811 | '@babel/plugin-syntax-optional-catch-binding': 7.8.3(@babel/core@7.23.9)
1812 | '@babel/plugin-syntax-optional-chaining': 7.8.3(@babel/core@7.23.9)
1813 | '@babel/plugin-syntax-top-level-await': 7.14.5(@babel/core@7.23.9)
1814 |
1815 | babel-preset-jest@28.1.3(@babel/core@7.23.9):
1816 | dependencies:
1817 | '@babel/core': 7.23.9
1818 | babel-plugin-jest-hoist: 28.1.3
1819 | babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.9)
1820 |
1821 | balanced-match@1.0.2: {}
1822 |
1823 | base64-url@2.3.3: {}
1824 |
1825 | brace-expansion@1.1.11:
1826 | dependencies:
1827 | balanced-match: 1.0.2
1828 | concat-map: 0.0.1
1829 |
1830 | braces@3.0.2:
1831 | dependencies:
1832 | fill-range: 7.0.1
1833 |
1834 | browser-process-hrtime@0.1.3: {}
1835 |
1836 | browserslist@4.22.3:
1837 | dependencies:
1838 | caniuse-lite: 1.0.30001587
1839 | electron-to-chromium: 1.4.668
1840 | node-releases: 2.0.14
1841 | update-browserslist-db: 1.0.13(browserslist@4.22.3)
1842 |
1843 | bs-logger@0.2.6:
1844 | dependencies:
1845 | fast-json-stable-stringify: 2.1.0
1846 |
1847 | bser@2.1.1:
1848 | dependencies:
1849 | node-int64: 0.4.0
1850 |
1851 | buffer-from@1.1.2: {}
1852 |
1853 | callsites@3.1.0: {}
1854 |
1855 | camelcase@5.3.1: {}
1856 |
1857 | camelcase@6.3.0: {}
1858 |
1859 | caniuse-lite@1.0.30001587: {}
1860 |
1861 | chalk@1.1.3:
1862 | dependencies:
1863 | ansi-styles: 2.2.1
1864 | escape-string-regexp: 1.0.5
1865 | has-ansi: 2.0.0
1866 | strip-ansi: 3.0.1
1867 | supports-color: 2.0.0
1868 |
1869 | chalk@2.4.2:
1870 | dependencies:
1871 | ansi-styles: 3.2.1
1872 | escape-string-regexp: 1.0.5
1873 | supports-color: 5.5.0
1874 |
1875 | chalk@4.1.2:
1876 | dependencies:
1877 | ansi-styles: 4.3.0
1878 | supports-color: 7.2.0
1879 |
1880 | char-regex@1.0.2: {}
1881 |
1882 | ci-info@3.9.0: {}
1883 |
1884 | cjs-module-lexer@1.2.3: {}
1885 |
1886 | cliui@8.0.1:
1887 | dependencies:
1888 | string-width: 4.2.3
1889 | strip-ansi: 6.0.1
1890 | wrap-ansi: 7.0.0
1891 |
1892 | co@4.6.0: {}
1893 |
1894 | collect-v8-coverage@1.0.2: {}
1895 |
1896 | color-convert@1.9.3:
1897 | dependencies:
1898 | color-name: 1.1.3
1899 |
1900 | color-convert@2.0.1:
1901 | dependencies:
1902 | color-name: 1.1.4
1903 |
1904 | color-name@1.1.3: {}
1905 |
1906 | color-name@1.1.4: {}
1907 |
1908 | concat-map@0.0.1: {}
1909 |
1910 | convert-source-map@1.9.0: {}
1911 |
1912 | convert-source-map@2.0.0: {}
1913 |
1914 | cross-spawn@7.0.3:
1915 | dependencies:
1916 | path-key: 3.1.1
1917 | shebang-command: 2.0.0
1918 | which: 2.0.2
1919 |
1920 | debug@4.3.4:
1921 | dependencies:
1922 | ms: 2.1.2
1923 |
1924 | dedent@0.7.0: {}
1925 |
1926 | deepmerge@4.3.1: {}
1927 |
1928 | detect-newline@3.1.0: {}
1929 |
1930 | diff-sequences@28.1.1: {}
1931 |
1932 | electron-to-chromium@1.4.668: {}
1933 |
1934 | emittery@0.10.2: {}
1935 |
1936 | emoji-regex@8.0.0: {}
1937 |
1938 | error-ex@1.3.2:
1939 | dependencies:
1940 | is-arrayish: 0.2.1
1941 |
1942 | esbuild@0.12.29: {}
1943 |
1944 | escalade@3.1.2: {}
1945 |
1946 | escape-string-regexp@1.0.5: {}
1947 |
1948 | escape-string-regexp@2.0.0: {}
1949 |
1950 | esprima@4.0.1: {}
1951 |
1952 | execa@5.1.1:
1953 | dependencies:
1954 | cross-spawn: 7.0.3
1955 | get-stream: 6.0.1
1956 | human-signals: 2.1.0
1957 | is-stream: 2.0.1
1958 | merge-stream: 2.0.0
1959 | npm-run-path: 4.0.1
1960 | onetime: 5.1.2
1961 | signal-exit: 3.0.7
1962 | strip-final-newline: 2.0.0
1963 |
1964 | exit@0.1.2: {}
1965 |
1966 | expect@28.1.3:
1967 | dependencies:
1968 | '@jest/expect-utils': 28.1.3
1969 | jest-get-type: 28.0.2
1970 | jest-matcher-utils: 28.1.3
1971 | jest-message-util: 28.1.3
1972 | jest-util: 28.1.3
1973 |
1974 | fast-json-stable-stringify@2.1.0: {}
1975 |
1976 | fb-watchman@2.0.2:
1977 | dependencies:
1978 | bser: 2.1.1
1979 |
1980 | fill-range@7.0.1:
1981 | dependencies:
1982 | to-regex-range: 5.0.1
1983 |
1984 | find-up@4.1.0:
1985 | dependencies:
1986 | locate-path: 5.0.0
1987 | path-exists: 4.0.0
1988 |
1989 | flattie@1.1.0: {}
1990 |
1991 | fs.realpath@1.0.0: {}
1992 |
1993 | fsevents@2.3.3:
1994 | optional: true
1995 |
1996 | function-bind@1.1.2: {}
1997 |
1998 | gensync@1.0.0-beta.2: {}
1999 |
2000 | get-caller-file@2.0.5: {}
2001 |
2002 | get-package-type@0.1.0: {}
2003 |
2004 | get-stream@6.0.1: {}
2005 |
2006 | glob@7.2.3:
2007 | dependencies:
2008 | fs.realpath: 1.0.0
2009 | inflight: 1.0.6
2010 | inherits: 2.0.4
2011 | minimatch: 3.1.2
2012 | once: 1.4.0
2013 | path-is-absolute: 1.0.1
2014 |
2015 | globals@11.12.0: {}
2016 |
2017 | graceful-fs@4.2.11: {}
2018 |
2019 | has-ansi@2.0.0:
2020 | dependencies:
2021 | ansi-regex: 2.1.1
2022 |
2023 | has-flag@3.0.0: {}
2024 |
2025 | has-flag@4.0.0: {}
2026 |
2027 | hash-obj@4.0.0:
2028 | dependencies:
2029 | is-obj: 3.0.0
2030 | sort-keys: 5.0.0
2031 | type-fest: 1.4.0
2032 |
2033 | hasown@2.0.1:
2034 | dependencies:
2035 | function-bind: 1.1.2
2036 |
2037 | html-escaper@2.0.2: {}
2038 |
2039 | human-signals@2.1.0: {}
2040 |
2041 | import-local@3.1.0:
2042 | dependencies:
2043 | pkg-dir: 4.2.0
2044 | resolve-cwd: 3.0.0
2045 |
2046 | imurmurhash@0.1.4: {}
2047 |
2048 | inflight@1.0.6:
2049 | dependencies:
2050 | once: 1.4.0
2051 | wrappy: 1.0.2
2052 |
2053 | inherits@2.0.4: {}
2054 |
2055 | is-arrayish@0.2.1: {}
2056 |
2057 | is-core-module@2.13.1:
2058 | dependencies:
2059 | hasown: 2.0.1
2060 |
2061 | is-fullwidth-code-point@3.0.0: {}
2062 |
2063 | is-generator-fn@2.1.0: {}
2064 |
2065 | is-number@7.0.0: {}
2066 |
2067 | is-obj@3.0.0: {}
2068 |
2069 | is-plain-obj@4.1.0: {}
2070 |
2071 | is-stream@2.0.1: {}
2072 |
2073 | isexe@2.0.0: {}
2074 |
2075 | istanbul-lib-coverage@3.2.2: {}
2076 |
2077 | istanbul-lib-instrument@5.2.1:
2078 | dependencies:
2079 | '@babel/core': 7.23.9
2080 | '@babel/parser': 7.23.9
2081 | '@istanbuljs/schema': 0.1.3
2082 | istanbul-lib-coverage: 3.2.2
2083 | semver: 6.3.1
2084 | transitivePeerDependencies:
2085 | - supports-color
2086 |
2087 | istanbul-lib-report@3.0.1:
2088 | dependencies:
2089 | istanbul-lib-coverage: 3.2.2
2090 | make-dir: 4.0.0
2091 | supports-color: 7.2.0
2092 |
2093 | istanbul-lib-source-maps@4.0.1:
2094 | dependencies:
2095 | debug: 4.3.4
2096 | istanbul-lib-coverage: 3.2.2
2097 | source-map: 0.6.1
2098 | transitivePeerDependencies:
2099 | - supports-color
2100 |
2101 | istanbul-reports@3.1.6:
2102 | dependencies:
2103 | html-escaper: 2.0.2
2104 | istanbul-lib-report: 3.0.1
2105 |
2106 | jest-changed-files@28.1.3:
2107 | dependencies:
2108 | execa: 5.1.1
2109 | p-limit: 3.1.0
2110 |
2111 | jest-circus@28.1.3:
2112 | dependencies:
2113 | '@jest/environment': 28.1.3
2114 | '@jest/expect': 28.1.3
2115 | '@jest/test-result': 28.1.3
2116 | '@jest/types': 28.1.3
2117 | '@types/node': 22.14.0
2118 | chalk: 4.1.2
2119 | co: 4.6.0
2120 | dedent: 0.7.0
2121 | is-generator-fn: 2.1.0
2122 | jest-each: 28.1.3
2123 | jest-matcher-utils: 28.1.3
2124 | jest-message-util: 28.1.3
2125 | jest-runtime: 28.1.3
2126 | jest-snapshot: 28.1.3
2127 | jest-util: 28.1.3
2128 | p-limit: 3.1.0
2129 | pretty-format: 28.1.3
2130 | slash: 3.0.0
2131 | stack-utils: 2.0.6
2132 | transitivePeerDependencies:
2133 | - supports-color
2134 |
2135 | jest-cli@28.1.3(@types/node@22.14.0):
2136 | dependencies:
2137 | '@jest/core': 28.1.3
2138 | '@jest/test-result': 28.1.3
2139 | '@jest/types': 28.1.3
2140 | chalk: 4.1.2
2141 | exit: 0.1.2
2142 | graceful-fs: 4.2.11
2143 | import-local: 3.1.0
2144 | jest-config: 28.1.3(@types/node@22.14.0)
2145 | jest-util: 28.1.3
2146 | jest-validate: 28.1.3
2147 | prompts: 2.4.2
2148 | yargs: 17.7.2
2149 | transitivePeerDependencies:
2150 | - '@types/node'
2151 | - supports-color
2152 | - ts-node
2153 |
2154 | jest-config@28.1.3(@types/node@22.14.0):
2155 | dependencies:
2156 | '@babel/core': 7.23.9
2157 | '@jest/test-sequencer': 28.1.3
2158 | '@jest/types': 28.1.3
2159 | babel-jest: 28.1.3(@babel/core@7.23.9)
2160 | chalk: 4.1.2
2161 | ci-info: 3.9.0
2162 | deepmerge: 4.3.1
2163 | glob: 7.2.3
2164 | graceful-fs: 4.2.11
2165 | jest-circus: 28.1.3
2166 | jest-environment-node: 28.1.3
2167 | jest-get-type: 28.0.2
2168 | jest-regex-util: 28.0.2
2169 | jest-resolve: 28.1.3
2170 | jest-runner: 28.1.3
2171 | jest-util: 28.1.3
2172 | jest-validate: 28.1.3
2173 | micromatch: 4.0.5
2174 | parse-json: 5.2.0
2175 | pretty-format: 28.1.3
2176 | slash: 3.0.0
2177 | strip-json-comments: 3.1.1
2178 | optionalDependencies:
2179 | '@types/node': 22.14.0
2180 | transitivePeerDependencies:
2181 | - supports-color
2182 |
2183 | jest-diff@28.1.3:
2184 | dependencies:
2185 | chalk: 4.1.2
2186 | diff-sequences: 28.1.1
2187 | jest-get-type: 28.0.2
2188 | pretty-format: 28.1.3
2189 |
2190 | jest-docblock@28.1.1:
2191 | dependencies:
2192 | detect-newline: 3.1.0
2193 |
2194 | jest-each@28.1.3:
2195 | dependencies:
2196 | '@jest/types': 28.1.3
2197 | chalk: 4.1.2
2198 | jest-get-type: 28.0.2
2199 | jest-util: 28.1.3
2200 | pretty-format: 28.1.3
2201 |
2202 | jest-environment-node@28.1.3:
2203 | dependencies:
2204 | '@jest/environment': 28.1.3
2205 | '@jest/fake-timers': 28.1.3
2206 | '@jest/types': 28.1.3
2207 | '@types/node': 22.14.0
2208 | jest-mock: 28.1.3
2209 | jest-util: 28.1.3
2210 |
2211 | jest-get-type@28.0.2: {}
2212 |
2213 | jest-haste-map@28.1.3:
2214 | dependencies:
2215 | '@jest/types': 28.1.3
2216 | '@types/graceful-fs': 4.1.9
2217 | '@types/node': 22.14.0
2218 | anymatch: 3.1.3
2219 | fb-watchman: 2.0.2
2220 | graceful-fs: 4.2.11
2221 | jest-regex-util: 28.0.2
2222 | jest-util: 28.1.3
2223 | jest-worker: 28.1.3
2224 | micromatch: 4.0.5
2225 | walker: 1.0.8
2226 | optionalDependencies:
2227 | fsevents: 2.3.3
2228 |
2229 | jest-leak-detector@28.1.3:
2230 | dependencies:
2231 | jest-get-type: 28.0.2
2232 | pretty-format: 28.1.3
2233 |
2234 | jest-matcher-utils@28.1.3:
2235 | dependencies:
2236 | chalk: 4.1.2
2237 | jest-diff: 28.1.3
2238 | jest-get-type: 28.0.2
2239 | pretty-format: 28.1.3
2240 |
2241 | jest-message-util@28.1.3:
2242 | dependencies:
2243 | '@babel/code-frame': 7.23.5
2244 | '@jest/types': 28.1.3
2245 | '@types/stack-utils': 2.0.3
2246 | chalk: 4.1.2
2247 | graceful-fs: 4.2.11
2248 | micromatch: 4.0.5
2249 | pretty-format: 28.1.3
2250 | slash: 3.0.0
2251 | stack-utils: 2.0.6
2252 |
2253 | jest-mock@28.1.3:
2254 | dependencies:
2255 | '@jest/types': 28.1.3
2256 | '@types/node': 22.14.0
2257 |
2258 | jest-pnp-resolver@1.2.3(jest-resolve@28.1.3):
2259 | optionalDependencies:
2260 | jest-resolve: 28.1.3
2261 |
2262 | jest-regex-util@28.0.2: {}
2263 |
2264 | jest-resolve-dependencies@28.1.3:
2265 | dependencies:
2266 | jest-regex-util: 28.0.2
2267 | jest-snapshot: 28.1.3
2268 | transitivePeerDependencies:
2269 | - supports-color
2270 |
2271 | jest-resolve@28.1.3:
2272 | dependencies:
2273 | chalk: 4.1.2
2274 | graceful-fs: 4.2.11
2275 | jest-haste-map: 28.1.3
2276 | jest-pnp-resolver: 1.2.3(jest-resolve@28.1.3)
2277 | jest-util: 28.1.3
2278 | jest-validate: 28.1.3
2279 | resolve: 1.22.8
2280 | resolve.exports: 1.1.1
2281 | slash: 3.0.0
2282 |
2283 | jest-runner@28.1.3:
2284 | dependencies:
2285 | '@jest/console': 28.1.3
2286 | '@jest/environment': 28.1.3
2287 | '@jest/test-result': 28.1.3
2288 | '@jest/transform': 28.1.3
2289 | '@jest/types': 28.1.3
2290 | '@types/node': 22.14.0
2291 | chalk: 4.1.2
2292 | emittery: 0.10.2
2293 | graceful-fs: 4.2.11
2294 | jest-docblock: 28.1.1
2295 | jest-environment-node: 28.1.3
2296 | jest-haste-map: 28.1.3
2297 | jest-leak-detector: 28.1.3
2298 | jest-message-util: 28.1.3
2299 | jest-resolve: 28.1.3
2300 | jest-runtime: 28.1.3
2301 | jest-util: 28.1.3
2302 | jest-watcher: 28.1.3
2303 | jest-worker: 28.1.3
2304 | p-limit: 3.1.0
2305 | source-map-support: 0.5.13
2306 | transitivePeerDependencies:
2307 | - supports-color
2308 |
2309 | jest-runtime@28.1.3:
2310 | dependencies:
2311 | '@jest/environment': 28.1.3
2312 | '@jest/fake-timers': 28.1.3
2313 | '@jest/globals': 28.1.3
2314 | '@jest/source-map': 28.1.2
2315 | '@jest/test-result': 28.1.3
2316 | '@jest/transform': 28.1.3
2317 | '@jest/types': 28.1.3
2318 | chalk: 4.1.2
2319 | cjs-module-lexer: 1.2.3
2320 | collect-v8-coverage: 1.0.2
2321 | execa: 5.1.1
2322 | glob: 7.2.3
2323 | graceful-fs: 4.2.11
2324 | jest-haste-map: 28.1.3
2325 | jest-message-util: 28.1.3
2326 | jest-mock: 28.1.3
2327 | jest-regex-util: 28.0.2
2328 | jest-resolve: 28.1.3
2329 | jest-snapshot: 28.1.3
2330 | jest-util: 28.1.3
2331 | slash: 3.0.0
2332 | strip-bom: 4.0.0
2333 | transitivePeerDependencies:
2334 | - supports-color
2335 |
2336 | jest-snapshot@28.1.3:
2337 | dependencies:
2338 | '@babel/core': 7.23.9
2339 | '@babel/generator': 7.23.6
2340 | '@babel/plugin-syntax-typescript': 7.23.3(@babel/core@7.23.9)
2341 | '@babel/traverse': 7.23.9
2342 | '@babel/types': 7.23.9
2343 | '@jest/expect-utils': 28.1.3
2344 | '@jest/transform': 28.1.3
2345 | '@jest/types': 28.1.3
2346 | '@types/babel__traverse': 7.20.5
2347 | '@types/prettier': 2.7.3
2348 | babel-preset-current-node-syntax: 1.0.1(@babel/core@7.23.9)
2349 | chalk: 4.1.2
2350 | expect: 28.1.3
2351 | graceful-fs: 4.2.11
2352 | jest-diff: 28.1.3
2353 | jest-get-type: 28.0.2
2354 | jest-haste-map: 28.1.3
2355 | jest-matcher-utils: 28.1.3
2356 | jest-message-util: 28.1.3
2357 | jest-util: 28.1.3
2358 | natural-compare: 1.4.0
2359 | pretty-format: 28.1.3
2360 | semver: 7.6.0
2361 | transitivePeerDependencies:
2362 | - supports-color
2363 |
2364 | jest-util@28.1.3:
2365 | dependencies:
2366 | '@jest/types': 28.1.3
2367 | '@types/node': 22.14.0
2368 | chalk: 4.1.2
2369 | ci-info: 3.9.0
2370 | graceful-fs: 4.2.11
2371 | picomatch: 2.3.1
2372 |
2373 | jest-validate@28.1.3:
2374 | dependencies:
2375 | '@jest/types': 28.1.3
2376 | camelcase: 6.3.0
2377 | chalk: 4.1.2
2378 | jest-get-type: 28.0.2
2379 | leven: 3.1.0
2380 | pretty-format: 28.1.3
2381 |
2382 | jest-watcher@28.1.3:
2383 | dependencies:
2384 | '@jest/test-result': 28.1.3
2385 | '@jest/types': 28.1.3
2386 | '@types/node': 22.14.0
2387 | ansi-escapes: 4.3.2
2388 | chalk: 4.1.2
2389 | emittery: 0.10.2
2390 | jest-util: 28.1.3
2391 | string-length: 4.0.2
2392 |
2393 | jest-worker@28.1.3:
2394 | dependencies:
2395 | '@types/node': 22.14.0
2396 | merge-stream: 2.0.0
2397 | supports-color: 8.1.1
2398 |
2399 | jest@28.1.3(@types/node@22.14.0):
2400 | dependencies:
2401 | '@jest/core': 28.1.3
2402 | '@jest/types': 28.1.3
2403 | import-local: 3.1.0
2404 | jest-cli: 28.1.3(@types/node@22.14.0)
2405 | transitivePeerDependencies:
2406 | - '@types/node'
2407 | - supports-color
2408 | - ts-node
2409 |
2410 | js-tokens@4.0.0: {}
2411 |
2412 | js-yaml@3.14.1:
2413 | dependencies:
2414 | argparse: 1.0.10
2415 | esprima: 4.0.1
2416 |
2417 | jsesc@2.5.2: {}
2418 |
2419 | json-parse-even-better-errors@2.3.1: {}
2420 |
2421 | json-stringify-deterministic@1.0.12: {}
2422 |
2423 | json5@2.2.3: {}
2424 |
2425 | kleur@3.0.3: {}
2426 |
2427 | leven@3.1.0: {}
2428 |
2429 | lines-and-columns@1.2.4: {}
2430 |
2431 | locate-path@5.0.0:
2432 | dependencies:
2433 | p-locate: 4.1.0
2434 |
2435 | lodash.memoize@4.1.2: {}
2436 |
2437 | lru-cache@5.1.1:
2438 | dependencies:
2439 | yallist: 3.1.1
2440 |
2441 | lru-cache@6.0.0:
2442 | dependencies:
2443 | yallist: 4.0.0
2444 |
2445 | make-dir@4.0.0:
2446 | dependencies:
2447 | semver: 7.6.0
2448 |
2449 | make-error@1.3.6: {}
2450 |
2451 | makeerror@1.0.12:
2452 | dependencies:
2453 | tmpl: 1.0.5
2454 |
2455 | merge-stream@2.0.0: {}
2456 |
2457 | micromatch@4.0.5:
2458 | dependencies:
2459 | braces: 3.0.2
2460 | picomatch: 2.3.1
2461 |
2462 | mimic-fn@2.1.0: {}
2463 |
2464 | minimatch@3.1.2:
2465 | dependencies:
2466 | brace-expansion: 1.1.11
2467 |
2468 | ms@2.1.2: {}
2469 |
2470 | mutexify@1.4.0:
2471 | dependencies:
2472 | queue-tick: 1.0.1
2473 |
2474 | nanobench@2.1.1:
2475 | dependencies:
2476 | browser-process-hrtime: 0.1.3
2477 | chalk: 1.1.3
2478 | mutexify: 1.4.0
2479 | pretty-hrtime: 1.0.3
2480 |
2481 | natural-compare@1.4.0: {}
2482 |
2483 | node-int64@0.4.0: {}
2484 |
2485 | node-releases@2.0.14: {}
2486 |
2487 | normalize-path@3.0.0: {}
2488 |
2489 | npm-run-path@4.0.1:
2490 | dependencies:
2491 | path-key: 3.1.1
2492 |
2493 | once@1.4.0:
2494 | dependencies:
2495 | wrappy: 1.0.2
2496 |
2497 | onetime@5.1.2:
2498 | dependencies:
2499 | mimic-fn: 2.1.0
2500 |
2501 | p-limit@2.3.0:
2502 | dependencies:
2503 | p-try: 2.2.0
2504 |
2505 | p-limit@3.1.0:
2506 | dependencies:
2507 | yocto-queue: 0.1.0
2508 |
2509 | p-locate@4.1.0:
2510 | dependencies:
2511 | p-limit: 2.3.0
2512 |
2513 | p-try@2.2.0: {}
2514 |
2515 | parse-json@5.2.0:
2516 | dependencies:
2517 | '@babel/code-frame': 7.23.5
2518 | error-ex: 1.3.2
2519 | json-parse-even-better-errors: 2.3.1
2520 | lines-and-columns: 1.2.4
2521 |
2522 | path-exists@4.0.0: {}
2523 |
2524 | path-is-absolute@1.0.1: {}
2525 |
2526 | path-key@3.1.1: {}
2527 |
2528 | path-parse@1.0.7: {}
2529 |
2530 | picocolors@1.0.0: {}
2531 |
2532 | picomatch@2.3.1: {}
2533 |
2534 | pirates@4.0.6: {}
2535 |
2536 | pkg-dir@4.2.0:
2537 | dependencies:
2538 | find-up: 4.1.0
2539 |
2540 | prettier@2.8.8: {}
2541 |
2542 | pretty-format@28.1.3:
2543 | dependencies:
2544 | '@jest/schemas': 28.1.3
2545 | ansi-regex: 5.0.1
2546 | ansi-styles: 5.2.0
2547 | react-is: 18.2.0
2548 |
2549 | pretty-hrtime@1.0.3: {}
2550 |
2551 | prompts@2.4.2:
2552 | dependencies:
2553 | kleur: 3.0.3
2554 | sisteransi: 1.0.5
2555 |
2556 | queue-tick@1.0.1: {}
2557 |
2558 | react-is@18.2.0: {}
2559 |
2560 | require-directory@2.1.1: {}
2561 |
2562 | resolve-cwd@3.0.0:
2563 | dependencies:
2564 | resolve-from: 5.0.0
2565 |
2566 | resolve-from@5.0.0: {}
2567 |
2568 | resolve.exports@1.1.1: {}
2569 |
2570 | resolve@1.22.8:
2571 | dependencies:
2572 | is-core-module: 2.13.1
2573 | path-parse: 1.0.7
2574 | supports-preserve-symlinks-flag: 1.0.0
2575 |
2576 | rimraf@3.0.2:
2577 | dependencies:
2578 | glob: 7.2.3
2579 |
2580 | semver@6.3.1: {}
2581 |
2582 | semver@7.6.0:
2583 | dependencies:
2584 | lru-cache: 6.0.0
2585 |
2586 | shebang-command@2.0.0:
2587 | dependencies:
2588 | shebang-regex: 3.0.0
2589 |
2590 | shebang-regex@3.0.0: {}
2591 |
2592 | signal-exit@3.0.7: {}
2593 |
2594 | sisteransi@1.0.5: {}
2595 |
2596 | slash@3.0.0: {}
2597 |
2598 | sort-keys@5.0.0:
2599 | dependencies:
2600 | is-plain-obj: 4.1.0
2601 |
2602 | source-map-support@0.5.13:
2603 | dependencies:
2604 | buffer-from: 1.1.2
2605 | source-map: 0.6.1
2606 |
2607 | source-map@0.6.1: {}
2608 |
2609 | sprintf-js@1.0.3: {}
2610 |
2611 | stack-utils@2.0.6:
2612 | dependencies:
2613 | escape-string-regexp: 2.0.0
2614 |
2615 | string-length@4.0.2:
2616 | dependencies:
2617 | char-regex: 1.0.2
2618 | strip-ansi: 6.0.1
2619 |
2620 | string-width@4.2.3:
2621 | dependencies:
2622 | emoji-regex: 8.0.0
2623 | is-fullwidth-code-point: 3.0.0
2624 | strip-ansi: 6.0.1
2625 |
2626 | strip-ansi@3.0.1:
2627 | dependencies:
2628 | ansi-regex: 2.1.1
2629 |
2630 | strip-ansi@6.0.1:
2631 | dependencies:
2632 | ansi-regex: 5.0.1
2633 |
2634 | strip-bom@4.0.0: {}
2635 |
2636 | strip-final-newline@2.0.0: {}
2637 |
2638 | strip-json-comments@3.1.1: {}
2639 |
2640 | supports-color@2.0.0: {}
2641 |
2642 | supports-color@5.5.0:
2643 | dependencies:
2644 | has-flag: 3.0.0
2645 |
2646 | supports-color@7.2.0:
2647 | dependencies:
2648 | has-flag: 4.0.0
2649 |
2650 | supports-color@8.1.1:
2651 | dependencies:
2652 | has-flag: 4.0.0
2653 |
2654 | supports-hyperlinks@2.3.0:
2655 | dependencies:
2656 | has-flag: 4.0.0
2657 | supports-color: 7.2.0
2658 |
2659 | supports-preserve-symlinks-flag@1.0.0: {}
2660 |
2661 | terminal-link@2.1.1:
2662 | dependencies:
2663 | ansi-escapes: 4.3.2
2664 | supports-hyperlinks: 2.3.0
2665 |
2666 | test-exclude@6.0.0:
2667 | dependencies:
2668 | '@istanbuljs/schema': 0.1.3
2669 | glob: 7.2.3
2670 | minimatch: 3.1.2
2671 |
2672 | tmpl@1.0.5: {}
2673 |
2674 | to-fast-properties@2.0.0: {}
2675 |
2676 | to-regex-range@5.0.1:
2677 | dependencies:
2678 | is-number: 7.0.0
2679 |
2680 | ts-jest@28.0.8(@babel/core@7.23.9)(@jest/types@28.1.3)(babel-jest@28.1.3(@babel/core@7.23.9))(esbuild@0.12.29)(jest@28.1.3(@types/node@22.14.0))(typescript@4.9.5):
2681 | dependencies:
2682 | bs-logger: 0.2.6
2683 | fast-json-stable-stringify: 2.1.0
2684 | jest: 28.1.3(@types/node@22.14.0)
2685 | jest-util: 28.1.3
2686 | json5: 2.2.3
2687 | lodash.memoize: 4.1.2
2688 | make-error: 1.3.6
2689 | semver: 7.6.0
2690 | typescript: 4.9.5
2691 | yargs-parser: 21.1.1
2692 | optionalDependencies:
2693 | '@babel/core': 7.23.9
2694 | '@jest/types': 28.1.3
2695 | babel-jest: 28.1.3(@babel/core@7.23.9)
2696 | esbuild: 0.12.29
2697 |
2698 | type-detect@4.0.8: {}
2699 |
2700 | type-fest@0.21.3: {}
2701 |
2702 | type-fest@1.4.0: {}
2703 |
2704 | typescript@4.9.5: {}
2705 |
2706 | undici-types@6.21.0: {}
2707 |
2708 | update-browserslist-db@1.0.13(browserslist@4.22.3):
2709 | dependencies:
2710 | browserslist: 4.22.3
2711 | escalade: 3.1.2
2712 | picocolors: 1.0.0
2713 |
2714 | v8-to-istanbul@9.2.0:
2715 | dependencies:
2716 | '@jridgewell/trace-mapping': 0.3.22
2717 | '@types/istanbul-lib-coverage': 2.0.6
2718 | convert-source-map: 2.0.0
2719 |
2720 | walker@1.0.8:
2721 | dependencies:
2722 | makeerror: 1.0.12
2723 |
2724 | which@2.0.2:
2725 | dependencies:
2726 | isexe: 2.0.0
2727 |
2728 | wrap-ansi@7.0.0:
2729 | dependencies:
2730 | ansi-styles: 4.3.0
2731 | string-width: 4.2.3
2732 | strip-ansi: 6.0.1
2733 |
2734 | wrappy@1.0.2: {}
2735 |
2736 | write-file-atomic@4.0.2:
2737 | dependencies:
2738 | imurmurhash: 0.1.4
2739 | signal-exit: 3.0.7
2740 |
2741 | y18n@5.0.8: {}
2742 |
2743 | yallist@3.1.1: {}
2744 |
2745 | yallist@4.0.0: {}
2746 |
2747 | yargs-parser@21.1.1: {}
2748 |
2749 | yargs@17.7.2:
2750 | dependencies:
2751 | cliui: 8.0.1
2752 | escalade: 3.1.2
2753 | get-caller-file: 2.0.5
2754 | require-directory: 2.1.1
2755 | string-width: 4.2.3
2756 | y18n: 5.0.8
2757 | yargs-parser: 21.1.1
2758 |
2759 | yocto-queue@0.1.0: {}
2760 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | // Use WeakMap to store the object-key mapping so the objects can still be
2 | // garbage collected. WeakMap uses a hashtable under the hood, so the lookup
3 | // complexity is almost O(1).
4 | const table = new WeakMap