├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── README.md
├── package.json
├── src
├── Via.ts
├── errors.ts
├── index.ts
└── types.ts
├── tsconfig.d.json
├── tsconfig.json
└── yarn.lock
/.eslintignore:
--------------------------------------------------------------------------------
1 | *.config.js
2 | *.config.ts
3 | *.test.js
4 | *.test.ts
5 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | env: {
3 | browser: true,
4 | es6: true,
5 | node: true,
6 | mocha: true,
7 | },
8 | extends: [
9 | 'eslint:recommended',
10 | 'plugin:import/errors',
11 | 'plugin:import/warnings',
12 | 'plugin:import/typescript',
13 | ],
14 | parser: '@typescript-eslint/parser',
15 | parserOptions: {
16 | sourceType: 'module',
17 | ecmaVersion: 8,
18 | },
19 | plugins: ['@typescript-eslint'],
20 | rules: {
21 | '@typescript-eslint/no-unused-vars': ['error'],
22 | 'import/first': ['error'],
23 | 'import/no-commonjs': ['error'],
24 | 'import/order': [
25 | 'error',
26 | {
27 | groups: [
28 | ['internal', 'external', 'builtin'],
29 | ['index', 'sibling', 'parent'],
30 | ],
31 | 'newlines-between': 'always',
32 | },
33 | ],
34 | indent: [
35 | 'error',
36 | 2,
37 | {
38 | MemberExpression: 1,
39 | SwitchCase: 1,
40 | },
41 | ],
42 | 'linebreak-style': ['error', 'unix'],
43 | 'no-console': [0],
44 | 'no-trailing-spaces': ['error'],
45 | 'no-unused-vars': 'off',
46 | quotes: [
47 | 'error',
48 | 'single',
49 | {avoidEscape: true, allowTemplateLiterals: true},
50 | ],
51 | 'require-await': ['error'],
52 | semi: ['error', 'always'],
53 | },
54 | };
55 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # idea
2 | .idea/
3 |
4 | # Logs
5 | logs
6 | *.log
7 | npm-debug.log*
8 | yarn-debug.log*
9 | yarn-error.log*
10 | lerna-debug.log*
11 |
12 | # Diagnostic reports (https://nodejs.org/api/report.html)
13 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
14 |
15 | # Runtime data
16 | pids
17 | *.pid
18 | *.seed
19 | *.pid.lock
20 |
21 | # Directory for instrumented libs generated by jscoverage/JSCover
22 | lib-cov
23 |
24 | # Coverage directory used by tools like istanbul
25 | coverage
26 | *.lcov
27 |
28 | # nyc test coverage
29 | .nyc_output
30 |
31 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
32 | .grunt
33 |
34 | # Bower dependency directory (https://bower.io/)
35 | bower_components
36 |
37 | # node-waf configuration
38 | .lock-wscript
39 |
40 | # Compiled binary addons (https://nodejs.org/api/addons.html)
41 | build/Release
42 |
43 | # Dependency directories
44 | node_modules/
45 | jspm_packages/
46 |
47 | # Snowpack dependency directory (https://snowpack.dev/)
48 | web_modules/
49 |
50 | # TypeScript cache
51 | *.tsbuildinfo
52 |
53 | # Optional npm cache directory
54 | .npm
55 |
56 | # Optional eslint cache
57 | .eslintcache
58 |
59 | # Microbundle cache
60 | .rpt2_cache/
61 | .rts2_cache_cjs/
62 | .rts2_cache_es/
63 | .rts2_cache_umd/
64 |
65 | # Optional REPL history
66 | .node_repl_history
67 |
68 | # Output of 'npm pack'
69 | *.tgz
70 |
71 | # Yarn Integrity file
72 | .yarn-integrity
73 |
74 | # dotenv environment variables file
75 | .env
76 | .env.test
77 |
78 | # parcel-bundler cache (https://parceljs.org/)
79 | .cache
80 | .parcel-cache
81 |
82 | # Next.js build output
83 | .next
84 | out
85 |
86 | # Nuxt.js build / generate output
87 | .nuxt
88 | dist
89 |
90 | # Gatsby files
91 | .cache/
92 | # Comment in the public line in if your project uses Gatsby and not Next.js
93 | # https://nextjs.org/blog/next-9-1#public-directory-support
94 | # public
95 |
96 | # vuepress build output
97 | .vuepress/dist
98 |
99 | # Serverless directories
100 | .serverless/
101 |
102 | # FuseBox cache
103 | .fusebox/
104 |
105 | # DynamoDB Local files
106 | .dynamodb/
107 |
108 | # TernJS port file
109 | .tern-port
110 |
111 | # Stores VSCode versions used for testing VSCode extensions
112 | .vscode-test
113 |
114 | # yarn v2
115 | .yarn/cache
116 | .yarn/unplugged
117 | .yarn/build-state.yml
118 | .yarn/install-state.gz
119 | .pnp.*
120 | .DS_Store
121 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | # VIA SDK typescript
6 |
7 | A small blazing fast wrapper over the VIA Router API for on-chain and cross-chain swaps.
8 | Our API allows you to find the best route for moving funds between chains!
9 |
10 | ### Feature List
11 |
12 | |feature|remark|method|
13 | |--|--|--|
14 | |get routes|Swaps/bridges cheapest routes|getRoutes|
15 | |check allowance|Allowance to check whether it's needed or not to approve|getAllowanceStatus|
16 | |build approval transaction|The transaction that approves the VIA contract to spend your token|buildApprovalTx|
17 | |build transaction|The transaction that will perform a swap/bridge according to the route|buildTx|
18 | |check transaction|Check the status of the transaction|checkTx|
19 |
20 |
21 | ### Installation
22 | ```
23 | npm i @viaprotocol/router-sdk
24 | ```
25 |
26 |
27 | ### Usage
28 |
29 | First you need to initialize a VIA Client instance:
30 |
31 | ``` js
32 | import {Via} from '@viaprotocol/router-sdk';
33 |
34 | const DEFAULT_API_KEY = 'e3db93a3-ae1c-41e5-8229-b8c1ecef5583';
35 | const cli = new Via({apiKey: DEFAULT_API_KEY, url: 'https://router-api.via.exchange', timeout: 30000});
36 | ```
37 |
38 | > ⚠️ Default API key has 1 RPS rate limit per IP. [Contact us](mailto:mbelyaev@via.exchange) if you need your personal API key with much higher limits.
39 |
40 | #### Get the best routes
41 |
42 | ``` js
43 | const pagesNum = await cli.routesPages(); // cache me!
44 | const baseParams = {
45 | fromChainId: 1,
46 | fromTokenAddress: '0x0000000000000000000000000000000000000000',
47 | fromAmount: Math.pow(10, 18),
48 | toChainId: 56,
49 | toTokenAddress: '0x0000000000000000000000000000000000000000',
50 | fromAddress: '0x856cc59aaE47997a1C8D5472Fc8dfef27821235d', // might be null
51 | multiTx: false, // whether to return routes with multiple user transactions
52 | limit: 1,
53 | };
54 | const params = [...Array(pagesNum)].map(
55 | (_, i) => ({
56 | ...baseParams,
57 | offset: i+1
58 | })
59 | );
60 |
61 | const routes = await Promise.allSettled(
62 | params.map(i => cli.getRoutes(i))
63 | );
64 | ```
65 | Request parameters description
66 | |Parameter|Description|
67 | |--|--|
68 | |fromChainId|Source chain id|
69 | |fromTokenAddress|Source token address|
70 | |fromAmount|Amount|
71 | |toChainId|Target chain id|
72 | |toTokenAddress|Target token address|
73 | |fromAddress|Sender address|
74 | |multiTx|whether to return routes with multiple user transactions|
75 | |offset|Pagination offset|
76 | |limit|Pagination limit|
77 |
78 | Pagination is needed because the request time for a specific page is faster than for all pages at once
79 |
80 | #### Get allowance status
81 |
82 | You must approve the contract to spend your token.
83 | You can get route_id from the route you like received above in the code snippet.
84 |
85 | ``` js
86 | const firstNonEmptyPage = routes.find(i => i.value.routes.length > 0).value;
87 | const route = firstNonEmptyPage.routes[0];
88 | const routeId = route.routeId;
89 | const chainId = fromChainId;
90 | const owner = "YOUR_WALLET_ADDRESS";
91 | const tokenAddress = fromTokenAddress;
92 | const numAction = 0; // number of action in routes
93 |
94 | const allowanceStatus = await cli.getAllowanceStatus(
95 | {owner, routeId, numAction}
96 | );
97 | ```
98 |
99 | Build approval transaction.
100 | Returns the transaction that approves the VIA API to spend your token.
101 |
102 | ``` js
103 | const amount = fromAmount;
104 |
105 | tx = await cli.buildApprovalTx(
106 | {routeId, owner, numAction}
107 | )
108 | ```
109 |
110 | Now you can build the transaction that will perform a crosschain swap according to the route.
111 |
112 | ``` js
113 | // amount out minimal, you can get it from get_routes as to_token_amount
114 | output = firstNonEmptyPage.routes[0].toTokenAmount
115 |
116 | tx = await cli.buildTx(
117 | {
118 | routeId,
119 | fromAddress,
120 | receiveAddress,
121 | numAction
122 | }
123 | )
124 | ```
125 |
126 | If you want to know the status of the transaction, then you need to tell us that you started it
127 |
128 | ``` js
129 | await cli.startRoute(
130 | {
131 | fromAddress: fromAddress,
132 | toAddress: receiveAddress,
133 | routeId: route.routeId,
134 | txHash: txHash
135 | }
136 | )
137 | ```
138 |
139 | And start action (you can start from the second action because startRoute also handles first action)
140 |
141 | ``` js
142 | await cli.startAction(
143 | {
144 | actionUuid: route.actions[numAction].uuid,
145 | initialTxHash: actionTxHash
146 | }
147 | )
148 | ```
149 |
150 | #### You can see the status of the transaction
151 | ``` js
152 | const txStatus = await cli.checkTx(
153 | {
154 | actionUuid: route.actions[numAction].uuid
155 | }
156 | )
157 | ```
158 |
159 | #### You can use websocket
160 | ``` js
161 | const v = new Via({apiKey: DEFAULT_API_KEY});
162 | const wsProvider = v.getRoutesViaWs({
163 | fromAddress: '0xD75183E452d6915356814454D2D64Df149853D38',
164 | fromAmount: 148875000000000000,
165 | fromChainId: 56,
166 | toChainId: 56,
167 | fromTokenAddress: '0x0000000000000000000000000000000000000000',
168 | toTokenAddress: '0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d',
169 | multiTx: true
170 | });
171 |
172 | wsProvider.onopen = function open() {
173 | console.log('connected');
174 | };
175 |
176 | wsProvider.onclose = function close() {
177 | console.log('disconnected');
178 | };
179 |
180 | wsProvider.onmessage = function incoming(data) {
181 | const res = JSON.parse(data.data as string);
182 | let route: IRoute[];
183 | let status: IRouteFetchStatus;
184 | if (Array.isArray(res)) {
185 | route = res;
186 | console.log(route);
187 | } else {
188 | status = res.status;
189 | console.log(status);
190 |
191 | if (status.finished === status.all){
192 | wsProvider.close()
193 | }
194 | }
195 | };
196 | ```
197 |
198 | Response parameters description
199 | |Parameter|Description|
200 | |--|--|
201 | |retry|Time to retry in ms|
202 | |event|Status of the transaction|
203 | |data.started|Started time of the transaction on source chain|
204 | |data.finished|Finished time of the transaction on source chain|
205 | |data.txHash|Hash of the destination transaction|
206 | |data.actualAmount|Received amount|
207 |
208 |
209 | ### Multi-tx
210 |
211 | With via.exchange it is possible to execute routes in several steps. This will help expand the number of available routes and, as a result, help you find the most profitable routes!
212 |
213 |
214 | ``` js
215 | const pagesNum = await cli.routesPages(); // cache me!
216 | const baseParams = {
217 | fromChainId: 1,
218 | fromTokenAddress: '0x0000000000000000000000000000000000000000',
219 | fromAmount: Math.pow(10, 18),
220 | toChainId: 56,
221 | toTokenAddress: '0x0000000000000000000000000000000000000000',
222 | fromAddress: '0x856cc59aaE47997a1C8D5472Fc8dfef27821235d', // might be null
223 | multiTx: true, // !!
224 | limit: 1,
225 | };
226 | const params = [...Array(pagesNum)].map(
227 | (_, i) => ({
228 | ...baseParams,
229 | offset: i+1
230 | })
231 | );
232 |
233 | const routes = await Promise.allSettled(
234 | params.map(i => cli.getRoutes(i))
235 | );
236 | ```
237 |
238 | Now all you need is to sequentially execute transactions for different numAction
239 |
240 | ``` js
241 | const actionCount = firstNonEmptyPage.routes[0].length;
242 |
243 | for (let numAction = 0; i < specified_len; i++) {
244 | tx = await cli.buildTx(
245 | {
246 | routeId,
247 | fromAddress,
248 | receiveAddress,
249 | numAction
250 | }
251 | );
252 | }
253 |
254 | ```
255 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "@viaprotocol/router-sdk",
3 | "version": "1.0.7",
4 | "dependencies": {
5 | "@types/ws": "^8.5.3",
6 | "axios": "^0.26.1",
7 | "isomorphic-ws": "^5.0.0",
8 | "ws": "^8.8.0"
9 | },
10 | "main": "dist/index.js",
11 | "types": "dist/index.d.ts",
12 | "files": [
13 | "dist"
14 | ],
15 | "scripts": {
16 | "clean": "tsc --build --clean",
17 | "watch": "tsc -w -p ./tsconfig.json",
18 | "build": "yarn clean && tsc --project ./tsconfig.json",
19 | "prepare": "yarn clean && yarn build",
20 | "lint": "eslint --ext .tsx --ext .ts ./src",
21 | "lint:fix": "eslint --ext .tsx --ext .ts ./src --fix",
22 | "prettier:fix": "prettier --write ./src/."
23 | },
24 | "repository": {
25 | "type": "git",
26 | "url": "git+https://github.com/viaprotocol/via-sdk-js.git"
27 | },
28 | "devDependencies": {
29 | "@typescript-eslint/eslint-plugin": "^5.15.0",
30 | "@typescript-eslint/parser": "^5.15.0",
31 | "eslint": "^8.11.0",
32 | "eslint-plugin-import": "^2.25.4",
33 | "prettier": "^2.6.0",
34 | "ts-node": "^10.8.1",
35 | "typescript": "^4.6.2"
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/src/Via.ts:
--------------------------------------------------------------------------------
1 | import axios, { AxiosInstance } from 'axios';
2 | import IsoWebSocket from 'isomorphic-ws';
3 |
4 | import { ViaError } from './errors';
5 | import {
6 | ViaConfig,
7 | IGetRoutesRequestParams,
8 | IGetAllowanceStatus,
9 | IBuildApprovalTx,
10 | IBuildTx,
11 | IAllowance,
12 | IApprovalTx,
13 | IBuildTxResponse,
14 | IGetRoutesResponse,
15 | ICheckTxStatusRequest,
16 | ITxStatusResponse,
17 | IStartRoute,
18 | IStartRouteResponse,
19 | IStartAction,
20 | } from './types';
21 |
22 | class Via {
23 | httpCli: AxiosInstance;
24 | apiKey: string;
25 | baseURL: string;
26 |
27 | constructor(config: ViaConfig) {
28 | this.baseURL = config.url || 'https://router-api.via.exchange';
29 | this.httpCli = axios.create({
30 | baseURL: this.baseURL,
31 | timeout: config.timeout || 30 * 1000,
32 | });
33 | this.apiKey = config.apiKey;
34 | }
35 |
36 | getRoutesViaWs(params: IGetRoutesRequestParams) {
37 | const buildURLQuery = (obj: IGetRoutesRequestParams) =>
38 | Object.entries(obj)
39 | .map((pair) => pair.map(encodeURIComponent).join('='))
40 | .join('&');
41 | const urlParams = buildURLQuery(params);
42 | const urlInfo = new URL(this.baseURL);
43 | const wsProtocol = urlInfo.protocol === 'https:' ? 'wss:' : 'ws:';
44 | const ws = new IsoWebSocket(
45 | `${wsProtocol}//${urlInfo.host}/api/v1/routes/ws?${urlParams}`
46 | );
47 | return ws;
48 | }
49 |
50 | async getRoutes(
51 | params: IGetRoutesRequestParams
52 | ): Promise {
53 | try {
54 | const res = await this.httpCli.get('/api/v1/routes', {
55 | params: { apiKey: this.apiKey, ...params },
56 | });
57 | return res.data;
58 | } catch (e) {
59 | if (axios.isAxiosError(e)) {
60 | throw new ViaError(e.response?.status, e.response?.data?.message);
61 | } else {
62 | throw e;
63 | }
64 | }
65 | }
66 |
67 | async getAllowanceStatus(params: IGetAllowanceStatus): Promise {
68 | try {
69 | const res = await this.httpCli.get('/api/v2/approval/check-allowance', {
70 | params: { apiKey: this.apiKey, ...params },
71 | });
72 | return res.data;
73 | } catch (e) {
74 | if (axios.isAxiosError(e)) {
75 | throw new ViaError(e.response?.status, e.response?.data?.message);
76 | } else {
77 | throw e;
78 | }
79 | }
80 | }
81 |
82 | async buildApprovalTx(params: IBuildApprovalTx): Promise {
83 | try {
84 | const res = await this.httpCli.get('/api/v2/approval/build-tx', {
85 | params: { apiKey: this.apiKey, ...params },
86 | });
87 | return res.data;
88 | } catch (e) {
89 | if (axios.isAxiosError(e)) {
90 | throw new ViaError(e.response?.status, e.response?.data?.message);
91 | } else {
92 | throw e;
93 | }
94 | }
95 | }
96 |
97 | async buildTx(params: IBuildTx): Promise {
98 | try {
99 | const res = await this.httpCli.get('/api/v2/send/build-tx', {
100 | params: { apiKey: this.apiKey, ...params },
101 | });
102 | return res.data;
103 | } catch (e) {
104 | if (axios.isAxiosError(e)) {
105 | throw new ViaError(e.response?.status, e.response?.data?.message);
106 | } else {
107 | throw e;
108 | }
109 | }
110 | }
111 |
112 | async startRoute(params: IStartRoute): Promise {
113 | try {
114 | const res = await this.httpCli.post('/api/v1/start-route', {apiKey: this.apiKey, ...params});
115 | return res.data;
116 | } catch (e) {
117 | if (axios.isAxiosError(e)) {
118 | throw new ViaError(e.response?.status, e.response?.data?.message);
119 | } else {
120 | throw e;
121 | }
122 | }
123 | }
124 |
125 | async startAction(params: IStartAction): Promise {
126 | try {
127 | const res = await this.httpCli.post('/api/v1/start-action', {apiKey: this.apiKey, ...params} );
128 | } catch (e) {
129 | if (axios.isAxiosError(e)) {
130 | throw new ViaError(e.response?.status, e.response?.data?.message);
131 | } else {
132 | throw e;
133 | }
134 | }
135 | }
136 |
137 | async routesPages(): Promise {
138 | try {
139 | const res = await this.httpCli.get('/api/v1/routes/pages');
140 | return res.data.pages;
141 | } catch (e) {
142 | if (axios.isAxiosError(e)) {
143 | throw new ViaError(e.response?.status, e.response?.data?.message);
144 | } else {
145 | throw e;
146 | }
147 | }
148 | }
149 |
150 | async checkTx(params: ICheckTxStatusRequest): Promise {
151 | try {
152 | const res = await this.httpCli.get('/api/v2/tx-status', {
153 | params: { apiKey: this.apiKey, ...params },
154 | });
155 | return res.data;
156 | } catch (e) {
157 | if (axios.isAxiosError(e)) {
158 | throw new ViaError(e.response?.status, e.response?.data?.message);
159 | } else {
160 | throw e;
161 | }
162 | }
163 | }
164 | }
165 |
166 | export default Via;
167 |
--------------------------------------------------------------------------------
/src/errors.ts:
--------------------------------------------------------------------------------
1 | export class ViaError extends Error {
2 | code?: number;
3 | msg?: string;
4 |
5 | constructor(code?: number, msg?: string) {
6 | super(msg);
7 | this.code = code;
8 | this.msg = msg;
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/src/index.ts:
--------------------------------------------------------------------------------
1 | import Via from './Via';
2 |
3 | export { Via };
4 |
--------------------------------------------------------------------------------
/src/types.ts:
--------------------------------------------------------------------------------
1 | export interface ViaConfig {
2 | apiKey: string;
3 | url?: string;
4 | timeout?: number;
5 | }
6 |
7 | export interface INetwork {
8 | chainId: number;
9 | key: string;
10 | logoURI: string;
11 | name: string;
12 | color?: string;
13 | }
14 |
15 | export interface IToken {
16 | chainId: number;
17 | address: string;
18 | decimals: number;
19 | logoURI: string;
20 | name: string;
21 | symbol: string;
22 | color: string;
23 | }
24 |
25 | export interface IGetRoutesRequestParams {
26 | fromChainId: number;
27 | fromTokenAddress: string;
28 | fromAmount: number;
29 | toChainId: number;
30 | toTokenAddress: string;
31 | fromAddress?: string; // sender user address
32 | toAddress?: string; // recipient user address
33 | limit?: number;
34 | offset?: number;
35 | multiTx: boolean;
36 | }
37 |
38 | export interface ICheckTxStatusRequest {
39 | actionUuid: string;
40 | }
41 |
42 | export interface IRouteFetchStatus {
43 | finished: number;
44 | all: number;
45 | }
46 |
47 | enum ITxStatus {
48 | success = 'success',
49 | user_tx_failed = 'user_tx_failed',
50 | pending = 'pending',
51 | to_be_started = 'to_be_started',
52 | recieve_tx_not_found = 'recieve_tx_not_found',
53 | null = 'null',
54 | }
55 |
56 | export interface ITxStatusData {
57 | started: string;
58 | finished: null | string;
59 | txHash: null | string; // txHash received
60 | actualAmount: null | string; // amount received
61 | }
62 |
63 | export interface IStartAction {
64 | actionUuid: string;
65 | initialTxHash: string;
66 | }
67 |
68 | export interface IStartRoute {
69 | fromAddress: string;
70 | toAddress: string;
71 | routeId: string;
72 | txHash: string
73 | }
74 |
75 | export interface IStartRouteResponse {
76 | routeUuid: string;
77 | actionUuids: string[];
78 | }
79 |
80 | export interface ITxStatusResponse {
81 | event: ITxStatus;
82 | data: null | ITxStatusData;
83 | retry: null | number; // retry after in ms
84 | }
85 |
86 | export interface IGetAllowanceStatus {
87 | owner: string;
88 | routeId: string;
89 | numAction: number;
90 | }
91 |
92 | export interface IBuildApprovalTx {
93 | routeId: string;
94 | owner: string;
95 | numAction: number;
96 | }
97 |
98 | export interface IBuildTx {
99 | routeId: string;
100 | fromAddress: string;
101 | receiveAddress: string;
102 | numAction: number;
103 | }
104 |
105 | export interface IGetRoutesResponse {
106 | fromToken: IToken;
107 | toToken: IToken;
108 | fromTokenAmount: number;
109 | routes: IRoute[];
110 | }
111 |
112 | export interface IFee {
113 | feeUsd: null | number;
114 | gas: null | number;
115 | gasFeeUsd: null | number;
116 | slippagePerc: null | number;
117 | time: null | string;
118 | totalLossUsd: null | string;
119 | }
120 |
121 | export interface IActionFeeInfo {
122 | gasActionUnits: bigint;
123 | gasActionApproveUnits: bigint;
124 | }
125 |
126 | export interface IAdditionalProviderFee {
127 | amount: bigint;
128 | token: IToken;
129 | }
130 |
131 | export interface IActionStepTool {
132 | name: string;
133 | logoURI: string;
134 | estimatedTime: number;
135 | }
136 |
137 | export interface IActionStep {
138 | type: string;
139 | tool: IActionStepTool;
140 | fromToken: IToken;
141 | toToken: IToken;
142 | fee: IFee;
143 | fromTokenAmount: number;
144 | toTokenAmount: number;
145 | }
146 |
147 | export interface IRouteAction {
148 | uuid: string;
149 | provider: number;
150 | fromToken: IToken;
151 | fromTokenAmount: number;
152 | toToken: IToken;
153 | toTokenAmount: number;
154 | steps: IActionStep[];
155 | fee: IActionFeeInfo;
156 | additionalProviderFee?: IAdditionalProviderFee;
157 | allowanceValue?: string;
158 | }
159 |
160 | export interface IRoute {
161 | routeId: string;
162 | toTokenAmount: number;
163 | fee: IFee;
164 | actions: IRouteAction[];
165 | active: boolean;
166 | slippage?: number;
167 | }
168 |
169 | export interface IAllowance {
170 | value: string;
171 | tokenAddress: string;
172 | }
173 |
174 | export interface IApprovalTx {
175 | from: string;
176 | data: string;
177 | to: string;
178 | }
179 |
180 | export interface IBuildTxResponse {
181 | to: string;
182 | data: string;
183 | value: number;
184 | gas: number;
185 | }
186 |
--------------------------------------------------------------------------------
/tsconfig.d.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "./tsconfig.json",
3 | "compilerOptions": {
4 | "emitDeclarationOnly": true,
5 | "stripInternal": true
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "esnext",
4 | "declaration": true,
5 | "outDir": "dist",
6 | "esModuleInterop": true,
7 | "allowSyntheticDefaultImports": true,
8 | "strict": true,
9 | "forceConsistentCasingInFileNames": true,
10 | "module": "commonjs",
11 | "moduleResolution": "node",
12 | "sourceMap": true,
13 | "rootDir": "src"
14 | },
15 | "include": ["src"],
16 | "exclude": ["node_modules", "dist"]
17 | }
18 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@cspotcode/source-map-support@^0.8.0":
6 | version "0.8.1"
7 | resolved "https://registry.yarnpkg.com/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz#00629c35a688e05a88b1cda684fb9d5e73f000a1"
8 | integrity sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==
9 | dependencies:
10 | "@jridgewell/trace-mapping" "0.3.9"
11 |
12 | "@eslint/eslintrc@^1.2.1":
13 | version "1.2.1"
14 | resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.2.1.tgz#8b5e1c49f4077235516bc9ec7d41378c0f69b8c6"
15 | integrity sha512-bxvbYnBPN1Gibwyp6NrpnFzA3YtRL3BBAyEAFVIpNTm2Rn4Vy87GA5M4aSn3InRrlsbX5N0GW7XIx+U4SAEKdQ==
16 | dependencies:
17 | ajv "^6.12.4"
18 | debug "^4.3.2"
19 | espree "^9.3.1"
20 | globals "^13.9.0"
21 | ignore "^5.2.0"
22 | import-fresh "^3.2.1"
23 | js-yaml "^4.1.0"
24 | minimatch "^3.0.4"
25 | strip-json-comments "^3.1.1"
26 |
27 | "@humanwhocodes/config-array@^0.9.2":
28 | version "0.9.5"
29 | resolved "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz#2cbaf9a89460da24b5ca6531b8bbfc23e1df50c7"
30 | integrity sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==
31 | dependencies:
32 | "@humanwhocodes/object-schema" "^1.2.1"
33 | debug "^4.1.1"
34 | minimatch "^3.0.4"
35 |
36 | "@humanwhocodes/object-schema@^1.2.1":
37 | version "1.2.1"
38 | resolved "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45"
39 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==
40 |
41 | "@jridgewell/resolve-uri@^3.0.3":
42 | version "3.0.7"
43 | resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz#30cd49820a962aff48c8fffc5cd760151fca61fe"
44 | integrity sha512-8cXDaBBHOr2pQ7j77Y6Vp5VDT2sIqWyWQ56TjEq4ih/a4iST3dItRe8Q9fp0rrIl9DoKhWQtUQz/YpOxLkXbNA==
45 |
46 | "@jridgewell/sourcemap-codec@^1.4.10":
47 | version "1.4.13"
48 | resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.13.tgz#b6461fb0c2964356c469e115f504c95ad97ab88c"
49 | integrity sha512-GryiOJmNcWbovBxTfZSF71V/mXbgcV3MewDe3kIMCLyIh5e7SKAeUZs+rMnJ8jkMolZ/4/VsdBmMrw3l+VdZ3w==
50 |
51 | "@jridgewell/trace-mapping@0.3.9":
52 | version "0.3.9"
53 | resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz#6534fd5933a53ba7cbf3a17615e273a0d1273ff9"
54 | integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==
55 | dependencies:
56 | "@jridgewell/resolve-uri" "^3.0.3"
57 | "@jridgewell/sourcemap-codec" "^1.4.10"
58 |
59 | "@nodelib/fs.scandir@2.1.5":
60 | version "2.1.5"
61 | resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"
62 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==
63 | dependencies:
64 | "@nodelib/fs.stat" "2.0.5"
65 | run-parallel "^1.1.9"
66 |
67 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2":
68 | version "2.0.5"
69 | resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b"
70 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==
71 |
72 | "@nodelib/fs.walk@^1.2.3":
73 | version "1.2.8"
74 | resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a"
75 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==
76 | dependencies:
77 | "@nodelib/fs.scandir" "2.1.5"
78 | fastq "^1.6.0"
79 |
80 | "@tsconfig/node10@^1.0.7":
81 | version "1.0.8"
82 | resolved "https://registry.yarnpkg.com/@tsconfig/node10/-/node10-1.0.8.tgz#c1e4e80d6f964fbecb3359c43bd48b40f7cadad9"
83 | integrity sha512-6XFfSQmMgq0CFLY1MslA/CPUfhIL919M1rMsa5lP2P097N2Wd1sSX0tx1u4olM16fLNhtHZpRhedZJphNJqmZg==
84 |
85 | "@tsconfig/node12@^1.0.7":
86 | version "1.0.9"
87 | resolved "https://registry.yarnpkg.com/@tsconfig/node12/-/node12-1.0.9.tgz#62c1f6dee2ebd9aead80dc3afa56810e58e1a04c"
88 | integrity sha512-/yBMcem+fbvhSREH+s14YJi18sp7J9jpuhYByADT2rypfajMZZN4WQ6zBGgBKp53NKmqI36wFYDb3yaMPurITw==
89 |
90 | "@tsconfig/node14@^1.0.0":
91 | version "1.0.1"
92 | resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2"
93 | integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==
94 |
95 | "@tsconfig/node16@^1.0.2":
96 | version "1.0.2"
97 | resolved "https://registry.yarnpkg.com/@tsconfig/node16/-/node16-1.0.2.tgz#423c77877d0569db20e1fc80885ac4118314010e"
98 | integrity sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==
99 |
100 | "@types/json-schema@^7.0.9":
101 | version "7.0.10"
102 | resolved "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.10.tgz#9b05b7896166cd00e9cbd59864853abf65d9ac23"
103 | integrity sha512-BLO9bBq59vW3fxCpD4o0N4U+DXsvwvIcl+jofw0frQo/GrBFC+/jRZj1E7kgp6dvTyNmA4y6JCV5Id/r3mNP5A==
104 |
105 | "@types/json5@^0.0.29":
106 | version "0.0.29"
107 | resolved "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz"
108 | integrity sha1-7ihweulOEdK4J7y+UnC86n8+ce4=
109 |
110 | "@types/node@*":
111 | version "18.0.3"
112 | resolved "https://registry.npmjs.org/@types/node/-/node-18.0.3.tgz#463fc47f13ec0688a33aec75d078a0541a447199"
113 | integrity sha512-HzNRZtp4eepNitP+BD6k2L6DROIDG4Q0fm4x+dwfsr6LGmROENnok75VGw40628xf+iR24WeMFcHuuBDUAzzsQ==
114 |
115 | "@types/ws@^8.5.3":
116 | version "8.5.3"
117 | resolved "https://registry.npmjs.org/@types/ws/-/ws-8.5.3.tgz#7d25a1ffbecd3c4f2d35068d0b283c037003274d"
118 | integrity sha512-6YOoWjruKj1uLf3INHH7D3qTXwFfEsg1kf3c0uDdSBJwfa/llkwIjrAGV7j7mVgGNbzTQ3HiHKKDXl6bJPD97w==
119 | dependencies:
120 | "@types/node" "*"
121 |
122 | "@typescript-eslint/eslint-plugin@^5.15.0":
123 | version "5.15.0"
124 | resolved "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.15.0.tgz#c28ef7f2e688066db0b6a9d95fb74185c114fb9a"
125 | integrity sha512-u6Db5JfF0Esn3tiAKELvoU5TpXVSkOpZ78cEGn/wXtT2RVqs2vkt4ge6N8cRCyw7YVKhmmLDbwI2pg92mlv7cA==
126 | dependencies:
127 | "@typescript-eslint/scope-manager" "5.15.0"
128 | "@typescript-eslint/type-utils" "5.15.0"
129 | "@typescript-eslint/utils" "5.15.0"
130 | debug "^4.3.2"
131 | functional-red-black-tree "^1.0.1"
132 | ignore "^5.1.8"
133 | regexpp "^3.2.0"
134 | semver "^7.3.5"
135 | tsutils "^3.21.0"
136 |
137 | "@typescript-eslint/parser@^5.15.0":
138 | version "5.15.0"
139 | resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.15.0.tgz#95f603f8fe6eca7952a99bfeef9b85992972e728"
140 | integrity sha512-NGAYP/+RDM2sVfmKiKOCgJYPstAO40vPAgACoWPO/+yoYKSgAXIFaBKsV8P0Cc7fwKgvj27SjRNX4L7f4/jCKQ==
141 | dependencies:
142 | "@typescript-eslint/scope-manager" "5.15.0"
143 | "@typescript-eslint/types" "5.15.0"
144 | "@typescript-eslint/typescript-estree" "5.15.0"
145 | debug "^4.3.2"
146 |
147 | "@typescript-eslint/scope-manager@5.15.0":
148 | version "5.15.0"
149 | resolved "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.15.0.tgz#d97afab5e0abf4018d1289bd711be21676cdd0ee"
150 | integrity sha512-EFiZcSKrHh4kWk0pZaa+YNJosvKE50EnmN4IfgjkA3bTHElPtYcd2U37QQkNTqwMCS7LXeDeZzEqnsOH8chjSg==
151 | dependencies:
152 | "@typescript-eslint/types" "5.15.0"
153 | "@typescript-eslint/visitor-keys" "5.15.0"
154 |
155 | "@typescript-eslint/type-utils@5.15.0":
156 | version "5.15.0"
157 | resolved "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.15.0.tgz#d2c02eb2bdf54d0a645ba3a173ceda78346cf248"
158 | integrity sha512-KGeDoEQ7gHieLydujGEFLyLofipe9PIzfvA/41urz4hv+xVxPEbmMQonKSynZ0Ks2xDhJQ4VYjB3DnRiywvKDA==
159 | dependencies:
160 | "@typescript-eslint/utils" "5.15.0"
161 | debug "^4.3.2"
162 | tsutils "^3.21.0"
163 |
164 | "@typescript-eslint/types@5.15.0":
165 | version "5.15.0"
166 | resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.15.0.tgz#c7bdd103843b1abae97b5518219d3e2a0d79a501"
167 | integrity sha512-yEiTN4MDy23vvsIksrShjNwQl2vl6kJeG9YkVJXjXZnkJElzVK8nfPsWKYxcsGWG8GhurYXP4/KGj3aZAxbeOA==
168 |
169 | "@typescript-eslint/typescript-estree@5.15.0":
170 | version "5.15.0"
171 | resolved "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.15.0.tgz#81513a742a9c657587ad1ddbca88e76c6efb0aac"
172 | integrity sha512-Hb0e3dGc35b75xLzixM3cSbG1sSbrTBQDfIScqdyvrfJZVEi4XWAT+UL/HMxEdrJNB8Yk28SKxPLtAhfCbBInA==
173 | dependencies:
174 | "@typescript-eslint/types" "5.15.0"
175 | "@typescript-eslint/visitor-keys" "5.15.0"
176 | debug "^4.3.2"
177 | globby "^11.0.4"
178 | is-glob "^4.0.3"
179 | semver "^7.3.5"
180 | tsutils "^3.21.0"
181 |
182 | "@typescript-eslint/utils@5.15.0":
183 | version "5.15.0"
184 | resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.15.0.tgz#468510a0974d3ced8342f37e6c662778c277f136"
185 | integrity sha512-081rWu2IPKOgTOhHUk/QfxuFog8m4wxW43sXNOMSCdh578tGJ1PAaWPsj42LOa7pguh173tNlMigsbrHvh/mtA==
186 | dependencies:
187 | "@types/json-schema" "^7.0.9"
188 | "@typescript-eslint/scope-manager" "5.15.0"
189 | "@typescript-eslint/types" "5.15.0"
190 | "@typescript-eslint/typescript-estree" "5.15.0"
191 | eslint-scope "^5.1.1"
192 | eslint-utils "^3.0.0"
193 |
194 | "@typescript-eslint/visitor-keys@5.15.0":
195 | version "5.15.0"
196 | resolved "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.15.0.tgz#5669739fbf516df060f978be6a6dce75855a8027"
197 | integrity sha512-+vX5FKtgvyHbmIJdxMJ2jKm9z2BIlXJiuewI8dsDYMp5LzPUcuTT78Ya5iwvQg3VqSVdmxyM8Anj1Jeq7733ZQ==
198 | dependencies:
199 | "@typescript-eslint/types" "5.15.0"
200 | eslint-visitor-keys "^3.0.0"
201 |
202 | acorn-jsx@^5.3.1:
203 | version "5.3.2"
204 | resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937"
205 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==
206 |
207 | acorn-walk@^8.1.1:
208 | version "8.2.0"
209 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1"
210 | integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==
211 |
212 | acorn@^8.4.1:
213 | version "8.7.1"
214 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.1.tgz#0197122c843d1bf6d0a5e83220a788f278f63c30"
215 | integrity sha512-Xx54uLJQZ19lKygFXOWsscKUbsBZW0CPykPhVQdhIeIwrbPmJzqeASDInc8nKBnp/JT6igTs82qPXz069H8I/A==
216 |
217 | acorn@^8.7.0:
218 | version "8.7.0"
219 | resolved "https://registry.npmjs.org/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf"
220 | integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==
221 |
222 | ajv@^6.10.0, ajv@^6.12.4:
223 | version "6.12.6"
224 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
225 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
226 | dependencies:
227 | fast-deep-equal "^3.1.1"
228 | fast-json-stable-stringify "^2.0.0"
229 | json-schema-traverse "^0.4.1"
230 | uri-js "^4.2.2"
231 |
232 | ansi-regex@^5.0.1:
233 | version "5.0.1"
234 | resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304"
235 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==
236 |
237 | ansi-styles@^4.1.0:
238 | version "4.3.0"
239 | resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937"
240 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==
241 | dependencies:
242 | color-convert "^2.0.1"
243 |
244 | arg@^4.1.0:
245 | version "4.1.3"
246 | resolved "https://registry.yarnpkg.com/arg/-/arg-4.1.3.tgz#269fc7ad5b8e42cb63c896d5666017261c144089"
247 | integrity sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==
248 |
249 | argparse@^2.0.1:
250 | version "2.0.1"
251 | resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38"
252 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
253 |
254 | array-includes@^3.1.4:
255 | version "3.1.4"
256 | resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.4.tgz"
257 | integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw==
258 | dependencies:
259 | call-bind "^1.0.2"
260 | define-properties "^1.1.3"
261 | es-abstract "^1.19.1"
262 | get-intrinsic "^1.1.1"
263 | is-string "^1.0.7"
264 |
265 | array-union@^2.1.0:
266 | version "2.1.0"
267 | resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d"
268 | integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==
269 |
270 | array.prototype.flat@^1.2.5:
271 | version "1.2.5"
272 | resolved "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.5.tgz"
273 | integrity sha512-KaYU+S+ndVqyUnignHftkwc58o3uVU1jzczILJ1tN2YaIZpFIKBiP/x/j97E5MVPsaCloPbqWLB/8qCTVvT2qg==
274 | dependencies:
275 | call-bind "^1.0.2"
276 | define-properties "^1.1.3"
277 | es-abstract "^1.19.0"
278 |
279 | axios@^0.26.1:
280 | version "0.26.1"
281 | resolved "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz"
282 | integrity sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==
283 | dependencies:
284 | follow-redirects "^1.14.8"
285 |
286 | balanced-match@^1.0.0:
287 | version "1.0.2"
288 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz"
289 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==
290 |
291 | brace-expansion@^1.1.7:
292 | version "1.1.11"
293 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz"
294 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
295 | dependencies:
296 | balanced-match "^1.0.0"
297 | concat-map "0.0.1"
298 |
299 | braces@^3.0.1:
300 | version "3.0.2"
301 | resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107"
302 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==
303 | dependencies:
304 | fill-range "^7.0.1"
305 |
306 | call-bind@^1.0.0, call-bind@^1.0.2:
307 | version "1.0.2"
308 | resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz"
309 | integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==
310 | dependencies:
311 | function-bind "^1.1.1"
312 | get-intrinsic "^1.0.2"
313 |
314 | callsites@^3.0.0:
315 | version "3.1.0"
316 | resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73"
317 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==
318 |
319 | chalk@^4.0.0:
320 | version "4.1.2"
321 | resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01"
322 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==
323 | dependencies:
324 | ansi-styles "^4.1.0"
325 | supports-color "^7.1.0"
326 |
327 | color-convert@^2.0.1:
328 | version "2.0.1"
329 | resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3"
330 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==
331 | dependencies:
332 | color-name "~1.1.4"
333 |
334 | color-name@~1.1.4:
335 | version "1.1.4"
336 | resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
337 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
338 |
339 | concat-map@0.0.1:
340 | version "0.0.1"
341 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz"
342 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
343 |
344 | create-require@^1.1.0:
345 | version "1.1.1"
346 | resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333"
347 | integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==
348 |
349 | cross-spawn@^7.0.2:
350 | version "7.0.3"
351 | resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6"
352 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==
353 | dependencies:
354 | path-key "^3.1.0"
355 | shebang-command "^2.0.0"
356 | which "^2.0.1"
357 |
358 | debug@^2.6.9:
359 | version "2.6.9"
360 | resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz"
361 | integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==
362 | dependencies:
363 | ms "2.0.0"
364 |
365 | debug@^3.2.7:
366 | version "3.2.7"
367 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz"
368 | integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==
369 | dependencies:
370 | ms "^2.1.1"
371 |
372 | debug@^4.1.1, debug@^4.3.2:
373 | version "4.3.3"
374 | resolved "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz#04266e0b70a98d4462e6e288e38259213332b664"
375 | integrity sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==
376 | dependencies:
377 | ms "2.1.2"
378 |
379 | deep-is@^0.1.3:
380 | version "0.1.4"
381 | resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831"
382 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==
383 |
384 | define-properties@^1.1.3:
385 | version "1.1.3"
386 | resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz"
387 | integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
388 | dependencies:
389 | object-keys "^1.0.12"
390 |
391 | diff@^4.0.1:
392 | version "4.0.2"
393 | resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d"
394 | integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==
395 |
396 | dir-glob@^3.0.1:
397 | version "3.0.1"
398 | resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f"
399 | integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==
400 | dependencies:
401 | path-type "^4.0.0"
402 |
403 | doctrine@^2.1.0:
404 | version "2.1.0"
405 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz"
406 | integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==
407 | dependencies:
408 | esutils "^2.0.2"
409 |
410 | doctrine@^3.0.0:
411 | version "3.0.0"
412 | resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961"
413 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==
414 | dependencies:
415 | esutils "^2.0.2"
416 |
417 | es-abstract@^1.19.0, es-abstract@^1.19.1:
418 | version "1.19.1"
419 | resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz"
420 | integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==
421 | dependencies:
422 | call-bind "^1.0.2"
423 | es-to-primitive "^1.2.1"
424 | function-bind "^1.1.1"
425 | get-intrinsic "^1.1.1"
426 | get-symbol-description "^1.0.0"
427 | has "^1.0.3"
428 | has-symbols "^1.0.2"
429 | internal-slot "^1.0.3"
430 | is-callable "^1.2.4"
431 | is-negative-zero "^2.0.1"
432 | is-regex "^1.1.4"
433 | is-shared-array-buffer "^1.0.1"
434 | is-string "^1.0.7"
435 | is-weakref "^1.0.1"
436 | object-inspect "^1.11.0"
437 | object-keys "^1.1.1"
438 | object.assign "^4.1.2"
439 | string.prototype.trimend "^1.0.4"
440 | string.prototype.trimstart "^1.0.4"
441 | unbox-primitive "^1.0.1"
442 |
443 | es-to-primitive@^1.2.1:
444 | version "1.2.1"
445 | resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz"
446 | integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==
447 | dependencies:
448 | is-callable "^1.1.4"
449 | is-date-object "^1.0.1"
450 | is-symbol "^1.0.2"
451 |
452 | escape-string-regexp@^4.0.0:
453 | version "4.0.0"
454 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34"
455 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==
456 |
457 | eslint-import-resolver-node@^0.3.6:
458 | version "0.3.6"
459 | resolved "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.6.tgz"
460 | integrity sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==
461 | dependencies:
462 | debug "^3.2.7"
463 | resolve "^1.20.0"
464 |
465 | eslint-module-utils@^2.7.2:
466 | version "2.7.3"
467 | resolved "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.7.3.tgz"
468 | integrity sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==
469 | dependencies:
470 | debug "^3.2.7"
471 | find-up "^2.1.0"
472 |
473 | eslint-plugin-import@^2.25.4:
474 | version "2.25.4"
475 | resolved "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.25.4.tgz#322f3f916a4e9e991ac7af32032c25ce313209f1"
476 | integrity sha512-/KJBASVFxpu0xg1kIBn9AUa8hQVnszpwgE7Ld0lKAlx7Ie87yzEzCgSkekt+le/YVhiaosO4Y14GDAOc41nfxA==
477 | dependencies:
478 | array-includes "^3.1.4"
479 | array.prototype.flat "^1.2.5"
480 | debug "^2.6.9"
481 | doctrine "^2.1.0"
482 | eslint-import-resolver-node "^0.3.6"
483 | eslint-module-utils "^2.7.2"
484 | has "^1.0.3"
485 | is-core-module "^2.8.0"
486 | is-glob "^4.0.3"
487 | minimatch "^3.0.4"
488 | object.values "^1.1.5"
489 | resolve "^1.20.0"
490 | tsconfig-paths "^3.12.0"
491 |
492 | eslint-scope@^5.1.1:
493 | version "5.1.1"
494 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
495 | integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
496 | dependencies:
497 | esrecurse "^4.3.0"
498 | estraverse "^4.1.1"
499 |
500 | eslint-scope@^7.1.1:
501 | version "7.1.1"
502 | resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"
503 | integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==
504 | dependencies:
505 | esrecurse "^4.3.0"
506 | estraverse "^5.2.0"
507 |
508 | eslint-utils@^3.0.0:
509 | version "3.0.0"
510 | resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"
511 | integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==
512 | dependencies:
513 | eslint-visitor-keys "^2.0.0"
514 |
515 | eslint-visitor-keys@^2.0.0:
516 | version "2.1.0"
517 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303"
518 | integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==
519 |
520 | eslint-visitor-keys@^3.0.0, eslint-visitor-keys@^3.3.0:
521 | version "3.3.0"
522 | resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826"
523 | integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==
524 |
525 | eslint@^8.11.0:
526 | version "8.11.0"
527 | resolved "https://registry.npmjs.org/eslint/-/eslint-8.11.0.tgz#88b91cfba1356fc10bb9eb592958457dfe09fb37"
528 | integrity sha512-/KRpd9mIRg2raGxHRGwW9ZywYNAClZrHjdueHcrVDuO3a6bj83eoTirCCk0M0yPwOjWYKHwRVRid+xK4F/GHgA==
529 | dependencies:
530 | "@eslint/eslintrc" "^1.2.1"
531 | "@humanwhocodes/config-array" "^0.9.2"
532 | ajv "^6.10.0"
533 | chalk "^4.0.0"
534 | cross-spawn "^7.0.2"
535 | debug "^4.3.2"
536 | doctrine "^3.0.0"
537 | escape-string-regexp "^4.0.0"
538 | eslint-scope "^7.1.1"
539 | eslint-utils "^3.0.0"
540 | eslint-visitor-keys "^3.3.0"
541 | espree "^9.3.1"
542 | esquery "^1.4.0"
543 | esutils "^2.0.2"
544 | fast-deep-equal "^3.1.3"
545 | file-entry-cache "^6.0.1"
546 | functional-red-black-tree "^1.0.1"
547 | glob-parent "^6.0.1"
548 | globals "^13.6.0"
549 | ignore "^5.2.0"
550 | import-fresh "^3.0.0"
551 | imurmurhash "^0.1.4"
552 | is-glob "^4.0.0"
553 | js-yaml "^4.1.0"
554 | json-stable-stringify-without-jsonify "^1.0.1"
555 | levn "^0.4.1"
556 | lodash.merge "^4.6.2"
557 | minimatch "^3.0.4"
558 | natural-compare "^1.4.0"
559 | optionator "^0.9.1"
560 | regexpp "^3.2.0"
561 | strip-ansi "^6.0.1"
562 | strip-json-comments "^3.1.0"
563 | text-table "^0.2.0"
564 | v8-compile-cache "^2.0.3"
565 |
566 | espree@^9.3.1:
567 | version "9.3.1"
568 | resolved "https://registry.npmjs.org/espree/-/espree-9.3.1.tgz#8793b4bc27ea4c778c19908e0719e7b8f4115bcd"
569 | integrity sha512-bvdyLmJMfwkV3NCRl5ZhJf22zBFo1y8bYh3VYb+bfzqNB4Je68P2sSuXyuFquzWLebHpNd2/d5uv7yoP9ISnGQ==
570 | dependencies:
571 | acorn "^8.7.0"
572 | acorn-jsx "^5.3.1"
573 | eslint-visitor-keys "^3.3.0"
574 |
575 | esquery@^1.4.0:
576 | version "1.4.0"
577 | resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5"
578 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==
579 | dependencies:
580 | estraverse "^5.1.0"
581 |
582 | esrecurse@^4.3.0:
583 | version "4.3.0"
584 | resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
585 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
586 | dependencies:
587 | estraverse "^5.2.0"
588 |
589 | estraverse@^4.1.1:
590 | version "4.3.0"
591 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
592 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
593 |
594 | estraverse@^5.1.0, estraverse@^5.2.0:
595 | version "5.3.0"
596 | resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123"
597 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==
598 |
599 | esutils@^2.0.2:
600 | version "2.0.3"
601 | resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz"
602 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==
603 |
604 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3:
605 | version "3.1.3"
606 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
607 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
608 |
609 | fast-glob@^3.2.9:
610 | version "3.2.11"
611 | resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz#a1172ad95ceb8a16e20caa5c5e56480e5129c1d9"
612 | integrity sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==
613 | dependencies:
614 | "@nodelib/fs.stat" "^2.0.2"
615 | "@nodelib/fs.walk" "^1.2.3"
616 | glob-parent "^5.1.2"
617 | merge2 "^1.3.0"
618 | micromatch "^4.0.4"
619 |
620 | fast-json-stable-stringify@^2.0.0:
621 | version "2.1.0"
622 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
623 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
624 |
625 | fast-levenshtein@^2.0.6:
626 | version "2.0.6"
627 | resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917"
628 | integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=
629 |
630 | fastq@^1.6.0:
631 | version "1.13.0"
632 | resolved "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c"
633 | integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==
634 | dependencies:
635 | reusify "^1.0.4"
636 |
637 | file-entry-cache@^6.0.1:
638 | version "6.0.1"
639 | resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027"
640 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==
641 | dependencies:
642 | flat-cache "^3.0.4"
643 |
644 | fill-range@^7.0.1:
645 | version "7.0.1"
646 | resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40"
647 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==
648 | dependencies:
649 | to-regex-range "^5.0.1"
650 |
651 | find-up@^2.1.0:
652 | version "2.1.0"
653 | resolved "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz"
654 | integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c=
655 | dependencies:
656 | locate-path "^2.0.0"
657 |
658 | flat-cache@^3.0.4:
659 | version "3.0.4"
660 | resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11"
661 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==
662 | dependencies:
663 | flatted "^3.1.0"
664 | rimraf "^3.0.2"
665 |
666 | flatted@^3.1.0:
667 | version "3.2.5"
668 | resolved "https://registry.npmjs.org/flatted/-/flatted-3.2.5.tgz#76c8584f4fc843db64702a6bd04ab7a8bd666da3"
669 | integrity sha512-WIWGi2L3DyTUvUrwRKgGi9TwxQMUEqPOPQBVi71R96jZXJdFskXEmf54BoZaS1kknGODoIGASGEzBUYdyMCBJg==
670 |
671 | follow-redirects@^1.14.8:
672 | version "1.14.9"
673 | resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz"
674 | integrity sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==
675 |
676 | fs.realpath@^1.0.0:
677 | version "1.0.0"
678 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
679 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
680 |
681 | function-bind@^1.1.1:
682 | version "1.1.1"
683 | resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz"
684 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
685 |
686 | functional-red-black-tree@^1.0.1:
687 | version "1.0.1"
688 | resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
689 | integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=
690 |
691 | get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1:
692 | version "1.1.1"
693 | resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz"
694 | integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==
695 | dependencies:
696 | function-bind "^1.1.1"
697 | has "^1.0.3"
698 | has-symbols "^1.0.1"
699 |
700 | get-symbol-description@^1.0.0:
701 | version "1.0.0"
702 | resolved "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz"
703 | integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==
704 | dependencies:
705 | call-bind "^1.0.2"
706 | get-intrinsic "^1.1.1"
707 |
708 | glob-parent@^5.1.2:
709 | version "5.1.2"
710 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4"
711 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==
712 | dependencies:
713 | is-glob "^4.0.1"
714 |
715 | glob-parent@^6.0.1:
716 | version "6.0.2"
717 | resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3"
718 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==
719 | dependencies:
720 | is-glob "^4.0.3"
721 |
722 | glob@^7.1.3:
723 | version "7.2.0"
724 | resolved "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
725 | integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
726 | dependencies:
727 | fs.realpath "^1.0.0"
728 | inflight "^1.0.4"
729 | inherits "2"
730 | minimatch "^3.0.4"
731 | once "^1.3.0"
732 | path-is-absolute "^1.0.0"
733 |
734 | globals@^13.6.0, globals@^13.9.0:
735 | version "13.13.0"
736 | resolved "https://registry.npmjs.org/globals/-/globals-13.13.0.tgz#ac32261060d8070e2719dd6998406e27d2b5727b"
737 | integrity sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A==
738 | dependencies:
739 | type-fest "^0.20.2"
740 |
741 | globby@^11.0.4:
742 | version "11.1.0"
743 | resolved "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b"
744 | integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==
745 | dependencies:
746 | array-union "^2.1.0"
747 | dir-glob "^3.0.1"
748 | fast-glob "^3.2.9"
749 | ignore "^5.2.0"
750 | merge2 "^1.4.1"
751 | slash "^3.0.0"
752 |
753 | has-bigints@^1.0.1:
754 | version "1.0.1"
755 | resolved "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz"
756 | integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==
757 |
758 | has-flag@^4.0.0:
759 | version "4.0.0"
760 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
761 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
762 |
763 | has-symbols@^1.0.1, has-symbols@^1.0.2:
764 | version "1.0.3"
765 | resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz"
766 | integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==
767 |
768 | has-tostringtag@^1.0.0:
769 | version "1.0.0"
770 | resolved "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz"
771 | integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==
772 | dependencies:
773 | has-symbols "^1.0.2"
774 |
775 | has@^1.0.3:
776 | version "1.0.3"
777 | resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz"
778 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
779 | dependencies:
780 | function-bind "^1.1.1"
781 |
782 | ignore@^5.1.8, ignore@^5.2.0:
783 | version "5.2.0"
784 | resolved "https://registry.npmjs.org/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a"
785 | integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==
786 |
787 | import-fresh@^3.0.0, import-fresh@^3.2.1:
788 | version "3.3.0"
789 | resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b"
790 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==
791 | dependencies:
792 | parent-module "^1.0.0"
793 | resolve-from "^4.0.0"
794 |
795 | imurmurhash@^0.1.4:
796 | version "0.1.4"
797 | resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
798 | integrity sha1-khi5srkoojixPcT7a21XbyMUU+o=
799 |
800 | inflight@^1.0.4:
801 | version "1.0.6"
802 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
803 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
804 | dependencies:
805 | once "^1.3.0"
806 | wrappy "1"
807 |
808 | inherits@2:
809 | version "2.0.4"
810 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
811 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
812 |
813 | internal-slot@^1.0.3:
814 | version "1.0.3"
815 | resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz"
816 | integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==
817 | dependencies:
818 | get-intrinsic "^1.1.0"
819 | has "^1.0.3"
820 | side-channel "^1.0.4"
821 |
822 | is-bigint@^1.0.1:
823 | version "1.0.4"
824 | resolved "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz"
825 | integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==
826 | dependencies:
827 | has-bigints "^1.0.1"
828 |
829 | is-boolean-object@^1.1.0:
830 | version "1.1.2"
831 | resolved "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz"
832 | integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==
833 | dependencies:
834 | call-bind "^1.0.2"
835 | has-tostringtag "^1.0.0"
836 |
837 | is-callable@^1.1.4, is-callable@^1.2.4:
838 | version "1.2.4"
839 | resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz"
840 | integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==
841 |
842 | is-core-module@^2.8.0, is-core-module@^2.8.1:
843 | version "2.8.1"
844 | resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz"
845 | integrity sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==
846 | dependencies:
847 | has "^1.0.3"
848 |
849 | is-date-object@^1.0.1:
850 | version "1.0.5"
851 | resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz"
852 | integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==
853 | dependencies:
854 | has-tostringtag "^1.0.0"
855 |
856 | is-extglob@^2.1.1:
857 | version "2.1.1"
858 | resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz"
859 | integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=
860 |
861 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3:
862 | version "4.0.3"
863 | resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz"
864 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==
865 | dependencies:
866 | is-extglob "^2.1.1"
867 |
868 | is-negative-zero@^2.0.1:
869 | version "2.0.2"
870 | resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz"
871 | integrity sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==
872 |
873 | is-number-object@^1.0.4:
874 | version "1.0.6"
875 | resolved "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz"
876 | integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==
877 | dependencies:
878 | has-tostringtag "^1.0.0"
879 |
880 | is-number@^7.0.0:
881 | version "7.0.0"
882 | resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b"
883 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==
884 |
885 | is-regex@^1.1.4:
886 | version "1.1.4"
887 | resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz"
888 | integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==
889 | dependencies:
890 | call-bind "^1.0.2"
891 | has-tostringtag "^1.0.0"
892 |
893 | is-shared-array-buffer@^1.0.1:
894 | version "1.0.1"
895 | resolved "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz"
896 | integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==
897 |
898 | is-string@^1.0.5, is-string@^1.0.7:
899 | version "1.0.7"
900 | resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz"
901 | integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==
902 | dependencies:
903 | has-tostringtag "^1.0.0"
904 |
905 | is-symbol@^1.0.2, is-symbol@^1.0.3:
906 | version "1.0.4"
907 | resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz"
908 | integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==
909 | dependencies:
910 | has-symbols "^1.0.2"
911 |
912 | is-weakref@^1.0.1:
913 | version "1.0.2"
914 | resolved "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz"
915 | integrity sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==
916 | dependencies:
917 | call-bind "^1.0.2"
918 |
919 | isexe@^2.0.0:
920 | version "2.0.0"
921 | resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10"
922 | integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=
923 |
924 | isomorphic-ws@^5.0.0:
925 | version "5.0.0"
926 | resolved "https://registry.npmjs.org/isomorphic-ws/-/isomorphic-ws-5.0.0.tgz#e5529148912ecb9b451b46ed44d53dae1ce04bbf"
927 | integrity sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw==
928 |
929 | js-yaml@^4.1.0:
930 | version "4.1.0"
931 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602"
932 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==
933 | dependencies:
934 | argparse "^2.0.1"
935 |
936 | json-schema-traverse@^0.4.1:
937 | version "0.4.1"
938 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
939 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
940 |
941 | json-stable-stringify-without-jsonify@^1.0.1:
942 | version "1.0.1"
943 | resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651"
944 | integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=
945 |
946 | json5@^1.0.1:
947 | version "1.0.1"
948 | resolved "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz"
949 | integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==
950 | dependencies:
951 | minimist "^1.2.0"
952 |
953 | levn@^0.4.1:
954 | version "0.4.1"
955 | resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade"
956 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==
957 | dependencies:
958 | prelude-ls "^1.2.1"
959 | type-check "~0.4.0"
960 |
961 | locate-path@^2.0.0:
962 | version "2.0.0"
963 | resolved "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz"
964 | integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=
965 | dependencies:
966 | p-locate "^2.0.0"
967 | path-exists "^3.0.0"
968 |
969 | lodash.merge@^4.6.2:
970 | version "4.6.2"
971 | resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a"
972 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==
973 |
974 | lru-cache@^6.0.0:
975 | version "6.0.0"
976 | resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
977 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==
978 | dependencies:
979 | yallist "^4.0.0"
980 |
981 | make-error@^1.1.1:
982 | version "1.3.6"
983 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2"
984 | integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==
985 |
986 | merge2@^1.3.0, merge2@^1.4.1:
987 | version "1.4.1"
988 | resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae"
989 | integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==
990 |
991 | micromatch@^4.0.4:
992 | version "4.0.4"
993 | resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9"
994 | integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==
995 | dependencies:
996 | braces "^3.0.1"
997 | picomatch "^2.2.3"
998 |
999 | minimatch@^3.0.4:
1000 | version "3.1.2"
1001 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
1002 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
1003 | dependencies:
1004 | brace-expansion "^1.1.7"
1005 |
1006 | minimist@^1.2.0:
1007 | version "1.2.5"
1008 | resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz"
1009 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==
1010 |
1011 | ms@2.0.0:
1012 | version "2.0.0"
1013 | resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz"
1014 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
1015 |
1016 | ms@2.1.2, ms@^2.1.1:
1017 | version "2.1.2"
1018 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz"
1019 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==
1020 |
1021 | natural-compare@^1.4.0:
1022 | version "1.4.0"
1023 | resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7"
1024 | integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=
1025 |
1026 | object-inspect@^1.11.0, object-inspect@^1.9.0:
1027 | version "1.12.0"
1028 | resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz"
1029 | integrity sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==
1030 |
1031 | object-keys@^1.0.12, object-keys@^1.1.1:
1032 | version "1.1.1"
1033 | resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz"
1034 | integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
1035 |
1036 | object.assign@^4.1.2:
1037 | version "4.1.2"
1038 | resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz"
1039 | integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==
1040 | dependencies:
1041 | call-bind "^1.0.0"
1042 | define-properties "^1.1.3"
1043 | has-symbols "^1.0.1"
1044 | object-keys "^1.1.1"
1045 |
1046 | object.values@^1.1.5:
1047 | version "1.1.5"
1048 | resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz"
1049 | integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==
1050 | dependencies:
1051 | call-bind "^1.0.2"
1052 | define-properties "^1.1.3"
1053 | es-abstract "^1.19.1"
1054 |
1055 | once@^1.3.0:
1056 | version "1.4.0"
1057 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
1058 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
1059 | dependencies:
1060 | wrappy "1"
1061 |
1062 | optionator@^0.9.1:
1063 | version "0.9.1"
1064 | resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499"
1065 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==
1066 | dependencies:
1067 | deep-is "^0.1.3"
1068 | fast-levenshtein "^2.0.6"
1069 | levn "^0.4.1"
1070 | prelude-ls "^1.2.1"
1071 | type-check "^0.4.0"
1072 | word-wrap "^1.2.3"
1073 |
1074 | p-limit@^1.1.0:
1075 | version "1.3.0"
1076 | resolved "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz"
1077 | integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==
1078 | dependencies:
1079 | p-try "^1.0.0"
1080 |
1081 | p-locate@^2.0.0:
1082 | version "2.0.0"
1083 | resolved "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz"
1084 | integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=
1085 | dependencies:
1086 | p-limit "^1.1.0"
1087 |
1088 | p-try@^1.0.0:
1089 | version "1.0.0"
1090 | resolved "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz"
1091 | integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=
1092 |
1093 | parent-module@^1.0.0:
1094 | version "1.0.1"
1095 | resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2"
1096 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==
1097 | dependencies:
1098 | callsites "^3.0.0"
1099 |
1100 | path-exists@^3.0.0:
1101 | version "3.0.0"
1102 | resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz"
1103 | integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=
1104 |
1105 | path-is-absolute@^1.0.0:
1106 | version "1.0.1"
1107 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
1108 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
1109 |
1110 | path-key@^3.1.0:
1111 | version "3.1.1"
1112 | resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375"
1113 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==
1114 |
1115 | path-parse@^1.0.7:
1116 | version "1.0.7"
1117 | resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz"
1118 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==
1119 |
1120 | path-type@^4.0.0:
1121 | version "4.0.0"
1122 | resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
1123 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
1124 |
1125 | picomatch@^2.2.3:
1126 | version "2.3.1"
1127 | resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
1128 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
1129 |
1130 | prelude-ls@^1.2.1:
1131 | version "1.2.1"
1132 | resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396"
1133 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==
1134 |
1135 | prettier@^2.6.0:
1136 | version "2.6.0"
1137 | resolved "https://registry.npmjs.org/prettier/-/prettier-2.6.0.tgz#12f8f504c4d8ddb76475f441337542fa799207d4"
1138 | integrity sha512-m2FgJibYrBGGgQXNzfd0PuDGShJgRavjUoRCw1mZERIWVSXF0iLzLm+aOqTAbLnC3n6JzUhAA8uZnFVghHJ86A==
1139 |
1140 | punycode@^2.1.0:
1141 | version "2.1.1"
1142 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
1143 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
1144 |
1145 | queue-microtask@^1.2.2:
1146 | version "1.2.3"
1147 | resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243"
1148 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==
1149 |
1150 | regexpp@^3.2.0:
1151 | version "3.2.0"
1152 | resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2"
1153 | integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==
1154 |
1155 | resolve-from@^4.0.0:
1156 | version "4.0.0"
1157 | resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6"
1158 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==
1159 |
1160 | resolve@^1.20.0:
1161 | version "1.22.0"
1162 | resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.0.tgz"
1163 | integrity sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==
1164 | dependencies:
1165 | is-core-module "^2.8.1"
1166 | path-parse "^1.0.7"
1167 | supports-preserve-symlinks-flag "^1.0.0"
1168 |
1169 | reusify@^1.0.4:
1170 | version "1.0.4"
1171 | resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76"
1172 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==
1173 |
1174 | rimraf@^3.0.2:
1175 | version "3.0.2"
1176 | resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a"
1177 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==
1178 | dependencies:
1179 | glob "^7.1.3"
1180 |
1181 | run-parallel@^1.1.9:
1182 | version "1.2.0"
1183 | resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee"
1184 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==
1185 | dependencies:
1186 | queue-microtask "^1.2.2"
1187 |
1188 | semver@^7.3.5:
1189 | version "7.3.5"
1190 | resolved "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7"
1191 | integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==
1192 | dependencies:
1193 | lru-cache "^6.0.0"
1194 |
1195 | shebang-command@^2.0.0:
1196 | version "2.0.0"
1197 | resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea"
1198 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==
1199 | dependencies:
1200 | shebang-regex "^3.0.0"
1201 |
1202 | shebang-regex@^3.0.0:
1203 | version "3.0.0"
1204 | resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172"
1205 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==
1206 |
1207 | side-channel@^1.0.4:
1208 | version "1.0.4"
1209 | resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz"
1210 | integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==
1211 | dependencies:
1212 | call-bind "^1.0.0"
1213 | get-intrinsic "^1.0.2"
1214 | object-inspect "^1.9.0"
1215 |
1216 | slash@^3.0.0:
1217 | version "3.0.0"
1218 | resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634"
1219 | integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==
1220 |
1221 | string.prototype.trimend@^1.0.4:
1222 | version "1.0.4"
1223 | resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz"
1224 | integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==
1225 | dependencies:
1226 | call-bind "^1.0.2"
1227 | define-properties "^1.1.3"
1228 |
1229 | string.prototype.trimstart@^1.0.4:
1230 | version "1.0.4"
1231 | resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz"
1232 | integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==
1233 | dependencies:
1234 | call-bind "^1.0.2"
1235 | define-properties "^1.1.3"
1236 |
1237 | strip-ansi@^6.0.1:
1238 | version "6.0.1"
1239 | resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9"
1240 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==
1241 | dependencies:
1242 | ansi-regex "^5.0.1"
1243 |
1244 | strip-bom@^3.0.0:
1245 | version "3.0.0"
1246 | resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz"
1247 | integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=
1248 |
1249 | strip-json-comments@^3.1.0, strip-json-comments@^3.1.1:
1250 | version "3.1.1"
1251 | resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006"
1252 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==
1253 |
1254 | supports-color@^7.1.0:
1255 | version "7.2.0"
1256 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da"
1257 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==
1258 | dependencies:
1259 | has-flag "^4.0.0"
1260 |
1261 | supports-preserve-symlinks-flag@^1.0.0:
1262 | version "1.0.0"
1263 | resolved "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz"
1264 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==
1265 |
1266 | text-table@^0.2.0:
1267 | version "0.2.0"
1268 | resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4"
1269 | integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=
1270 |
1271 | to-regex-range@^5.0.1:
1272 | version "5.0.1"
1273 | resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4"
1274 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==
1275 | dependencies:
1276 | is-number "^7.0.0"
1277 |
1278 | ts-node@^10.8.1:
1279 | version "10.8.1"
1280 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-10.8.1.tgz#ea2bd3459011b52699d7e88daa55a45a1af4f066"
1281 | integrity sha512-Wwsnao4DQoJsN034wePSg5nZiw4YKXf56mPIAeD6wVmiv+RytNSWqc2f3fKvcUoV+Yn2+yocD71VOfQHbmVX4g==
1282 | dependencies:
1283 | "@cspotcode/source-map-support" "^0.8.0"
1284 | "@tsconfig/node10" "^1.0.7"
1285 | "@tsconfig/node12" "^1.0.7"
1286 | "@tsconfig/node14" "^1.0.0"
1287 | "@tsconfig/node16" "^1.0.2"
1288 | acorn "^8.4.1"
1289 | acorn-walk "^8.1.1"
1290 | arg "^4.1.0"
1291 | create-require "^1.1.0"
1292 | diff "^4.0.1"
1293 | make-error "^1.1.1"
1294 | v8-compile-cache-lib "^3.0.1"
1295 | yn "3.1.1"
1296 |
1297 | tsconfig-paths@^3.12.0:
1298 | version "3.14.0"
1299 | resolved "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.0.tgz"
1300 | integrity sha512-cg/1jAZoL57R39+wiw4u/SCC6Ic9Q5NqjBOb+9xISedOYurfog9ZNmKJSxAnb2m/5Bq4lE9lhUcau33Ml8DM0g==
1301 | dependencies:
1302 | "@types/json5" "^0.0.29"
1303 | json5 "^1.0.1"
1304 | minimist "^1.2.0"
1305 | strip-bom "^3.0.0"
1306 |
1307 | tslib@^1.8.1:
1308 | version "1.14.1"
1309 | resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
1310 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
1311 |
1312 | tsutils@^3.21.0:
1313 | version "3.21.0"
1314 | resolved "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
1315 | integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
1316 | dependencies:
1317 | tslib "^1.8.1"
1318 |
1319 | type-check@^0.4.0, type-check@~0.4.0:
1320 | version "0.4.0"
1321 | resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1"
1322 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==
1323 | dependencies:
1324 | prelude-ls "^1.2.1"
1325 |
1326 | type-fest@^0.20.2:
1327 | version "0.20.2"
1328 | resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4"
1329 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==
1330 |
1331 | typescript@^4.6.2:
1332 | version "4.6.2"
1333 | resolved "https://registry.npmjs.org/typescript/-/typescript-4.6.2.tgz#fe12d2727b708f4eef40f51598b3398baa9611d4"
1334 | integrity sha512-HM/hFigTBHZhLXshn9sN37H085+hQGeJHJ/X7LpBWLID/fbc2acUMfU+lGD98X81sKP+pFa9f0DZmCwB9GnbAg==
1335 |
1336 | unbox-primitive@^1.0.1:
1337 | version "1.0.1"
1338 | resolved "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz"
1339 | integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==
1340 | dependencies:
1341 | function-bind "^1.1.1"
1342 | has-bigints "^1.0.1"
1343 | has-symbols "^1.0.2"
1344 | which-boxed-primitive "^1.0.2"
1345 |
1346 | uri-js@^4.2.2:
1347 | version "4.4.1"
1348 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
1349 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
1350 | dependencies:
1351 | punycode "^2.1.0"
1352 |
1353 | v8-compile-cache-lib@^3.0.1:
1354 | version "3.0.1"
1355 | resolved "https://registry.yarnpkg.com/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz#6336e8d71965cb3d35a1bbb7868445a7c05264bf"
1356 | integrity sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==
1357 |
1358 | v8-compile-cache@^2.0.3:
1359 | version "2.3.0"
1360 | resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee"
1361 | integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==
1362 |
1363 | which-boxed-primitive@^1.0.2:
1364 | version "1.0.2"
1365 | resolved "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz"
1366 | integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==
1367 | dependencies:
1368 | is-bigint "^1.0.1"
1369 | is-boolean-object "^1.1.0"
1370 | is-number-object "^1.0.4"
1371 | is-string "^1.0.5"
1372 | is-symbol "^1.0.3"
1373 |
1374 | which@^2.0.1:
1375 | version "2.0.2"
1376 | resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1"
1377 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==
1378 | dependencies:
1379 | isexe "^2.0.0"
1380 |
1381 | word-wrap@^1.2.3:
1382 | version "1.2.3"
1383 | resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c"
1384 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==
1385 |
1386 | wrappy@1:
1387 | version "1.0.2"
1388 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
1389 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
1390 |
1391 | ws@^8.8.0:
1392 | version "8.8.0"
1393 | resolved "https://registry.npmjs.org/ws/-/ws-8.8.0.tgz#8e71c75e2f6348dbf8d78005107297056cb77769"
1394 | integrity sha512-JDAgSYQ1ksuwqfChJusw1LSJ8BizJ2e/vVu5Lxjq3YvNJNlROv1ui4i+c/kUUrPheBvQl4c5UbERhTwKa6QBJQ==
1395 |
1396 | yallist@^4.0.0:
1397 | version "4.0.0"
1398 | resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
1399 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
1400 |
1401 | yn@3.1.1:
1402 | version "3.1.1"
1403 | resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
1404 | integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
1405 |
--------------------------------------------------------------------------------