diff --git a/.github/actions/pnpm-run/action.js b/.github/actions/pnpm-run/action.mjs similarity index 83% rename from .github/actions/pnpm-run/action.js rename to .github/actions/pnpm-run/action.mjs index c0b548e7..d5315909 100644 --- a/.github/actions/pnpm-run/action.js +++ b/.github/actions/pnpm-run/action.mjs @@ -1,4 +1,6 @@ -const run = require('execa')( +import { execa } from 'execa'; + +const run = execa( 'pnpm', ['run', process.env.INPUT_COMMAND], { cwd: process.cwd(), } diff --git a/.github/actions/pnpm-run/action.yml b/.github/actions/pnpm-run/action.yml index 8e3fc3ca..0bd07940 100644 --- a/.github/actions/pnpm-run/action.yml +++ b/.github/actions/pnpm-run/action.yml @@ -6,4 +6,4 @@ inputs: default: 'help' runs: using: 'node16' - main: 'action.js' + main: 'action.mjs' diff --git a/exchanges/context/src/context.test.ts b/exchanges/context/src/context.test.ts index 001f7146..84b6e791 100644 --- a/exchanges/context/src/context.test.ts +++ b/exchanges/context/src/context.test.ts @@ -46,15 +46,13 @@ beforeEach(() => { }); it(`calls getContext`, () => { - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - return { - ...queryResponse, - operation: forwardOp, - data: queryOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + return { + ...queryResponse, + operation: forwardOp, + data: queryOneData, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -82,15 +80,13 @@ it(`calls getContext`, () => { }); it(`calls getContext async`, async () => { - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - return { - ...queryResponse, - operation: forwardOp, - data: queryOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + return { + ...queryResponse, + operation: forwardOp, + data: queryOneData, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { diff --git a/exchanges/context/src/context.ts b/exchanges/context/src/context.ts index 1adde2e2..a56f304f 100644 --- a/exchanges/context/src/context.ts +++ b/exchanges/context/src/context.ts @@ -12,28 +12,32 @@ export interface ContextExchangeArgs { ) => OperationContext | Promise; } -export const contextExchange = ({ - getContext, -}: ContextExchangeArgs): Exchange => ({ forward }) => { - return ops$ => { - return pipe( - ops$, - mergeMap(operation => { - const result = getContext(operation); - const isPromise = 'then' in result; - if (isPromise) { - return fromPromise( - result.then((ctx: OperationContext) => - makeOperation(operation.kind, operation, ctx) - ) - ); - } else { - return fromValue( - makeOperation(operation.kind, operation, result as OperationContext) - ); - } - }), - forward - ); +export const contextExchange = + ({ getContext }: ContextExchangeArgs): Exchange => + ({ forward }) => { + return ops$ => { + return pipe( + ops$, + mergeMap(operation => { + const result = getContext(operation); + const isPromise = 'then' in result; + if (isPromise) { + return fromPromise( + result.then((ctx: OperationContext) => + makeOperation(operation.kind, operation, ctx) + ) + ); + } else { + return fromValue( + makeOperation( + operation.kind, + operation, + result as OperationContext + ) + ); + } + }), + forward + ); + }; }; -}; diff --git a/exchanges/execute/src/execute.ts b/exchanges/execute/src/execute.ts index 9eb41f55..0a7c7948 100644 --- a/exchanges/execute/src/execute.ts +++ b/exchanges/execute/src/execute.ts @@ -109,78 +109,80 @@ const makeExecuteSource = ( }; /** Exchange for executing queries locally on a schema using graphql-js. */ -export const executeExchange = ({ - schema, - rootValue, - context, - fieldResolver, - typeResolver, - subscribeFieldResolver, -}: ExecuteExchangeArgs): Exchange => ({ forward }) => { - return ops$ => { - const sharedOps$ = share(ops$); - - const executedOps$ = pipe( - sharedOps$, - filter((operation: Operation) => { - return ( - operation.kind === 'query' || - operation.kind === 'mutation' || - operation.kind === 'subscription' - ); - }), - mergeMap((operation: Operation) => { - const { key } = operation; - const teardown$ = pipe( - sharedOps$, - filter(op => op.kind === 'teardown' && op.key === key) - ); - - const contextValue = - typeof context === 'function' ? context(operation) : context; - - // Filter undefined values from variables before calling execute() - // to support default values within directives. - const variableValues = Object.create(null); - if (operation.variables) { - for (const key in operation.variables) { - if (operation.variables[key] !== undefined) { - variableValues[key] = operation.variables[key]; +export const executeExchange = + ({ + schema, + rootValue, + context, + fieldResolver, + typeResolver, + subscribeFieldResolver, + }: ExecuteExchangeArgs): Exchange => + ({ forward }) => { + return ops$ => { + const sharedOps$ = share(ops$); + + const executedOps$ = pipe( + sharedOps$, + filter((operation: Operation) => { + return ( + operation.kind === 'query' || + operation.kind === 'mutation' || + operation.kind === 'subscription' + ); + }), + mergeMap((operation: Operation) => { + const { key } = operation; + const teardown$ = pipe( + sharedOps$, + filter(op => op.kind === 'teardown' && op.key === key) + ); + + const contextValue = + typeof context === 'function' ? context(operation) : context; + + // Filter undefined values from variables before calling execute() + // to support default values within directives. + const variableValues = Object.create(null); + if (operation.variables) { + for (const key in operation.variables) { + if (operation.variables[key] !== undefined) { + variableValues[key] = operation.variables[key]; + } } } - } - let operationName: string | undefined; - for (const node of operation.query.definitions) { - if (node.kind === Kind.OPERATION_DEFINITION) { - operationName = node.name ? node.name.value : undefined; - break; + let operationName: string | undefined; + for (const node of operation.query.definitions) { + if (node.kind === Kind.OPERATION_DEFINITION) { + operationName = node.name ? node.name.value : undefined; + break; + } } - } - - return pipe( - makeExecuteSource(operation, { - schema, - document: operation.query, - rootValue, - contextValue, - variableValues, - operationName, - fieldResolver, - typeResolver, - subscribeFieldResolver, - }), - takeUntil(teardown$) - ); - }) - ); - - const forwardedOps$ = pipe( - sharedOps$, - filter(operation => operation.kind === 'teardown'), - forward - ); - return merge([executedOps$, forwardedOps$]); + return pipe( + makeExecuteSource(operation, { + schema, + document: operation.query, + rootValue, + contextValue, + variableValues, + operationName, + fieldResolver, + typeResolver, + subscribeFieldResolver, + }), + takeUntil(teardown$) + ); + }) + ); + + const forwardedOps$ = pipe( + sharedOps$, + filter(operation => operation.kind === 'teardown'), + forward + ); + + return merge([executedOps$, forwardedOps$]); + }; }; -}; diff --git a/exchanges/graphcache/e2e-tests/updates.spec.tsx b/exchanges/graphcache/e2e-tests/updates.spec.tsx index da80edb3..6f295674 100644 --- a/exchanges/graphcache/e2e-tests/updates.spec.tsx +++ b/exchanges/graphcache/e2e-tests/updates.spec.tsx @@ -70,7 +70,7 @@ describe('Graphcache updates', () => { `; const UpdateMutation = gql` - mutation($id: ID!, $text: String!) { + mutation ($id: ID!, $text: String!) { updateTodo(id: $id, text: $text) { id text diff --git a/exchanges/graphcache/package.json b/exchanges/graphcache/package.json index 50a3ce6b..979aafe3 100644 --- a/exchanges/graphcache/package.json +++ b/exchanges/graphcache/package.json @@ -69,12 +69,12 @@ "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0" }, "devDependencies": { - "@cypress/react": "^7.0.1", + "@cypress/react": "^7.0.2", "@urql/core": "workspace:*", "@urql/exchange-execute": "workspace:*", "@urql/introspection": "workspace:*", - "cypress": "^11.1.0", - "graphql": "^16.0.0", + "cypress": "^12.8.1", + "graphql": "^16.6.0", "react": "^17.0.1", "react-dom": "^17.0.1", "urql": "workspace:*" diff --git a/exchanges/graphcache/src/ast/schemaPredicates.ts b/exchanges/graphcache/src/ast/schemaPredicates.ts index 5a6ca537..382a5f50 100644 --- a/exchanges/graphcache/src/ast/schemaPredicates.ts +++ b/exchanges/graphcache/src/ast/schemaPredicates.ts @@ -222,9 +222,9 @@ export function expectValidResolversConfig( for (const key in resolvers) { if (key === 'Query') { if (schema.query) { - const validQueries = (schema.types!.get( - schema.query - ) as SchemaObject).fields(); + const validQueries = ( + schema.types!.get(schema.query) as SchemaObject + ).fields(); for (const resolverQuery in resolvers.Query || {}) { if (!validQueries[resolverQuery]) { warnAboutResolver('Query.' + resolverQuery); @@ -245,9 +245,9 @@ export function expectValidResolversConfig( schema.types!.get(key)!.kind as 'INTERFACE' | 'UNION' ); } else { - const validTypeProperties = (schema.types!.get( - key - ) as SchemaObject).fields(); + const validTypeProperties = ( + schema.types!.get(key) as SchemaObject + ).fields(); for (const resolverProperty in resolvers[key] || {}) { if (!validTypeProperties[resolverProperty]) { warnAboutResolver(key + '.' + resolverProperty); @@ -267,9 +267,9 @@ export function expectValidOptimisticMutationsConfig( } if (schema.mutation) { - const validMutations = (schema.types!.get( - schema.mutation - ) as SchemaObject).fields(); + const validMutations = ( + schema.types!.get(schema.mutation) as SchemaObject + ).fields(); for (const mutation in optimisticMutations) { if (!validMutations[mutation]) { warn( diff --git a/exchanges/graphcache/src/ast/variables.test.ts b/exchanges/graphcache/src/ast/variables.test.ts index 42912900..cdccd740 100644 --- a/exchanges/graphcache/src/ast/variables.test.ts +++ b/exchanges/graphcache/src/ast/variables.test.ts @@ -8,7 +8,7 @@ describe('normalizeVariables', () => { const input = { x: 42 }; const operation = getMainOperation( gql` - query($x: Int!) { + query ($x: Int!) { field } ` @@ -21,7 +21,7 @@ describe('normalizeVariables', () => { const input = { x: undefined }; const operation = getMainOperation( gql` - query($x: Int! = 42) { + query ($x: Int! = 42) { field } ` @@ -34,7 +34,7 @@ describe('normalizeVariables', () => { const input = { x: undefined }; const operation = getMainOperation( gql` - query($x: Int!) { + query ($x: Int!) { field } ` @@ -87,7 +87,7 @@ describe('filterVariables', () => { const input = { x: true, y: false }; const operation = getMainOperation( gql` - query($x: Int!) { + query ($x: Int!) { field } ` @@ -100,7 +100,7 @@ describe('filterVariables', () => { const input = { x: undefined }; const operation = getMainOperation( gql` - query($x: Int! = 42) { + query ($x: Int! = 42) { field } ` diff --git a/exchanges/graphcache/src/cacheExchange.test.ts b/exchanges/graphcache/src/cacheExchange.test.ts index 49f79f1a..e66517a2 100644 --- a/exchanges/graphcache/src/cacheExchange.test.ts +++ b/exchanges/graphcache/src/cacheExchange.test.ts @@ -79,12 +79,10 @@ describe('data dependencies', () => { }, }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { ...queryResponse, operation: forwardOp, data: expected }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { ...queryResponse, operation: forwardOp, data: expected }; + }); const { source: ops$, next } = makeSubject(); const result = vi.fn(); @@ -132,12 +130,10 @@ describe('data dependencies', () => { } ); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { ...queryResponse, operation: forwardOp, data: queryOneData }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { ...queryResponse, operation: forwardOp, data: queryOneData }; + }); const { source: ops$, next } = makeSubject(); const result = vi.fn(); @@ -204,21 +200,19 @@ describe('data dependencies', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opMultiple, - data: queryMultipleData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opMultiple, + data: queryMultipleData, + }; } - ); + + return undefined as any; + }); const forward: ExchangeIO = ops$ => pipe(ops$, map(response)); const result = vi.fn(); @@ -259,7 +253,7 @@ describe('data dependencies', () => { `; const queryById = gql` - query($id: ID!) { + query ($id: ID!) { author(id: $id) { id name @@ -297,7 +291,7 @@ describe('data dependencies', () => { }; const mutation = gql` - mutation($userId: ID!, $amount: Int!) { + mutation ($userId: ID!, $amount: Int!) { updateBalance(userId: $userId, amount: $amount) { userId balance { @@ -347,23 +341,21 @@ describe('data dependencies', () => { variables: { userId: '1', amount: 1000 }, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryByIdDataA }; - } else if (forwardOp.key === 2) { - return { ...queryResponse, operation: opTwo, data: queryByIdDataB }; - } else if (forwardOp.key === 3) { - return { - ...queryResponse, - operation: opMutation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryByIdDataA }; + } else if (forwardOp.key === 2) { + return { ...queryResponse, operation: opTwo, data: queryByIdDataB }; + } else if (forwardOp.key === 3) { + return { + ...queryResponse, + operation: opMutation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -453,21 +445,19 @@ describe('data dependencies', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opUnrelated, - data: queryUnrelatedData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opUnrelated, + data: queryUnrelatedData, + }; } - ); + + return undefined as any; + }); const forward: ExchangeIO = ops$ => pipe(ops$, map(response)); const result = vi.fn(); @@ -516,19 +506,17 @@ describe('data dependencies', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { - ...queryResponse, - operation: opMutation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { + ...queryResponse, + operation: opMutation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -580,19 +568,17 @@ describe('data dependencies', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { - ...queryResponse, - operation: opMutation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { + ...queryResponse, + operation: opMutation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -669,12 +655,10 @@ describe('data dependencies', () => { .spyOn(client, 'reexecuteOperation') .mockImplementation(next); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) return queryResult; - return undefined as any; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) return queryResult; + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, map(response)); @@ -749,21 +733,19 @@ describe('optimistic updates', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opMutation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opMutation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -855,27 +837,25 @@ describe('optimistic updates', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opMutationOne, - data: mutationData, - }; - } else if (forwardOp.key === 3) { - return { - ...queryResponse, - operation: opMutationTwo, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opMutationOne, + data: mutationData, + }; + } else if (forwardOp.key === 3) { + return { + ...queryResponse, + operation: opMutationTwo, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(3), map(response)); @@ -963,15 +943,13 @@ describe('optimistic updates', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => @@ -1077,22 +1055,20 @@ describe('optimistic updates', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: authorsQueryData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opMutation, - error: 'error' as any, - data: { __typename: 'Mutation', addAuthor: null }, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: authorsQueryData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opMutation, + error: 'error' as any, + data: { __typename: 'Mutation', addAuthor: null }, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -1154,15 +1130,13 @@ describe('custom resolvers', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; } - ); + + return undefined as any; + }); const forward: ExchangeIO = ops$ => pipe(ops$, map(response)); @@ -1236,21 +1210,19 @@ describe('custom resolvers', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { ...queryResponse, operation: opOne, data: queryOneData }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: opMutation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { ...queryResponse, operation: opOne, data: queryOneData }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: opMutation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -1386,25 +1358,23 @@ describe('custom resolvers', () => { ], }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { - ...queryResponse, - operation: queryOperation, - data: queryData, - }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: mutationOperation, - data: mutationData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { + ...queryResponse, + operation: queryOperation, + data: queryData, + }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: mutationOperation, + data: mutationData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -1551,25 +1521,23 @@ describe('schema awareness', () => { ], }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { - ...queryResponse, - operation: initialQueryOperation, - data: queryData, - }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: queryOperation, - data: queryData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { + ...queryResponse, + operation: initialQueryOperation, + data: queryData, + }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: queryOperation, + data: queryData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); @@ -1696,25 +1664,23 @@ describe('schema awareness', () => { ], }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === 1) { - return { - ...queryResponse, - operation: initialQueryOperation, - data: queryData, - }; - } else if (forwardOp.key === 2) { - return { - ...queryResponse, - operation: queryOperation, - data: queryData, - }; - } - - return undefined as any; + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === 1) { + return { + ...queryResponse, + operation: initialQueryOperation, + data: queryData, + }; + } else if (forwardOp.key === 2) { + return { + ...queryResponse, + operation: queryOperation, + data: queryData, + }; } - ); + + return undefined as any; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => pipe(ops$, delay(1), map(response)); diff --git a/exchanges/graphcache/src/cacheExchange.ts b/exchanges/graphcache/src/cacheExchange.ts index c8ff6e00..516bc1a7 100644 --- a/exchanges/graphcache/src/cacheExchange.ts +++ b/exchanges/graphcache/src/cacheExchange.ts @@ -38,289 +38,298 @@ type ResultMap = Map; type OptimisticDependencies = Map; type DependentOperations = Map; -export const cacheExchange = >( - opts?: C -): Exchange => ({ forward, client, dispatchDebug }) => { - const store = new Store(opts); - - if (opts && opts.storage) { - opts.storage.readData().then(entries => { - hydrateData(store.data, opts!.storage!, entries); - }); - } - - const optimisticKeysToDependencies: OptimisticDependencies = new Map(); - const mutationResultBuffer: OperationResult[] = []; - const operations: OperationMap = new Map(); - const results: ResultMap = new Map(); - const blockedDependencies: Dependencies = new Set(); - const requestedRefetch: Operations = new Set(); - const deps: DependentOperations = new Map(); - - let reexecutingOperations: Operations = new Set(); - let dependentOperations: Operations = new Set(); - - const isBlockedByOptimisticUpdate = (dependencies: Dependencies): boolean => { - for (const dep of dependencies.values()) - if (blockedDependencies.has(dep)) return true; - return false; - }; +export const cacheExchange = + >(opts?: C): Exchange => + ({ forward, client, dispatchDebug }) => { + const store = new Store(opts); + + if (opts && opts.storage) { + opts.storage.readData().then(entries => { + hydrateData(store.data, opts!.storage!, entries); + }); + } - const collectPendingOperations = ( - pendingOperations: Operations, - dependencies: undefined | Dependencies - ) => { - if (dependencies) { - // Collect operations that will be updated due to cache changes - for (const dep of dependencies.values()) { - const keys = deps.get(dep); - if (keys) for (const key of keys.values()) pendingOperations.add(key); + const optimisticKeysToDependencies: OptimisticDependencies = new Map(); + const mutationResultBuffer: OperationResult[] = []; + const operations: OperationMap = new Map(); + const results: ResultMap = new Map(); + const blockedDependencies: Dependencies = new Set(); + const requestedRefetch: Operations = new Set(); + const deps: DependentOperations = new Map(); + + let reexecutingOperations: Operations = new Set(); + let dependentOperations: Operations = new Set(); + + const isBlockedByOptimisticUpdate = ( + dependencies: Dependencies + ): boolean => { + for (const dep of dependencies.values()) + if (blockedDependencies.has(dep)) return true; + return false; + }; + + const collectPendingOperations = ( + pendingOperations: Operations, + dependencies: undefined | Dependencies + ) => { + if (dependencies) { + // Collect operations that will be updated due to cache changes + for (const dep of dependencies.values()) { + const keys = deps.get(dep); + if (keys) for (const key of keys.values()) pendingOperations.add(key); + } } - } - }; + }; - const executePendingOperations = ( - operation: Operation, - pendingOperations: Operations - ) => { - // Reexecute collected operations and delete them from the mapping - for (const key of pendingOperations.values()) { - if (key !== operation.key) { - const op = operations.get(key); - if (op) { - // Collect all dependent operations if the reexecuting operation is a query - if (operation.kind === 'query') dependentOperations.add(key); - operations.delete(key); - let policy: RequestPolicy = 'cache-first'; - if (requestedRefetch.has(key)) { - requestedRefetch.delete(key); - policy = 'cache-and-network'; + const executePendingOperations = ( + operation: Operation, + pendingOperations: Operations + ) => { + // Reexecute collected operations and delete them from the mapping + for (const key of pendingOperations.values()) { + if (key !== operation.key) { + const op = operations.get(key); + if (op) { + // Collect all dependent operations if the reexecuting operation is a query + if (operation.kind === 'query') dependentOperations.add(key); + operations.delete(key); + let policy: RequestPolicy = 'cache-first'; + if (requestedRefetch.has(key)) { + requestedRefetch.delete(key); + policy = 'cache-and-network'; + } + client.reexecuteOperation(toRequestPolicy(op, policy)); } - client.reexecuteOperation(toRequestPolicy(op, policy)); } } - } - // Upon completion, all dependent operations become reexecuting operations, preventing - // them from reexecuting prior operations again, causing infinite loops - const _reexecutingOperations = reexecutingOperations; - if (operation.kind === 'query') { - (reexecutingOperations = dependentOperations).add(operation.key); - } - (dependentOperations = _reexecutingOperations).clear(); - }; + // Upon completion, all dependent operations become reexecuting operations, preventing + // them from reexecuting prior operations again, causing infinite loops + const _reexecutingOperations = reexecutingOperations; + if (operation.kind === 'query') { + (reexecutingOperations = dependentOperations).add(operation.key); + } + (dependentOperations = _reexecutingOperations).clear(); + }; - // This registers queries with the data layer to ensure commutativity - const prepareForwardedOperation = (operation: Operation) => { - if (operation.kind === 'query') { - // Pre-reserve the position of the result layer - reserveLayer(store.data, operation.key); - } else if (operation.kind === 'teardown') { - // Delete reference to operation if any exists to release it - operations.delete(operation.key); - results.delete(operation.key); - reexecutingOperations.delete(operation.key); - // Mark operation layer as done - noopDataState(store.data, operation.key); - } else if ( - operation.kind === 'mutation' && - operation.context.requestPolicy !== 'network-only' - ) { - // This executes an optimistic update for mutations and registers it if necessary - const { dependencies } = writeOptimistic(store, operation, operation.key); - if (dependencies.size) { - // Update blocked optimistic dependencies - for (const dep of dependencies.values()) blockedDependencies.add(dep); - - // Store optimistic dependencies for update - optimisticKeysToDependencies.set(operation.key, dependencies); - - // Update related queries - const pendingOperations: Operations = new Set(); - collectPendingOperations(pendingOperations, dependencies); - executePendingOperations(operation, pendingOperations); + // This registers queries with the data layer to ensure commutativity + const prepareForwardedOperation = (operation: Operation) => { + if (operation.kind === 'query') { + // Pre-reserve the position of the result layer + reserveLayer(store.data, operation.key); + } else if (operation.kind === 'teardown') { + // Delete reference to operation if any exists to release it + operations.delete(operation.key); + results.delete(operation.key); + reexecutingOperations.delete(operation.key); + // Mark operation layer as done + noopDataState(store.data, operation.key); + } else if ( + operation.kind === 'mutation' && + operation.context.requestPolicy !== 'network-only' + ) { + // This executes an optimistic update for mutations and registers it if necessary + const { dependencies } = writeOptimistic( + store, + operation, + operation.key + ); + if (dependencies.size) { + // Update blocked optimistic dependencies + for (const dep of dependencies.values()) blockedDependencies.add(dep); + + // Store optimistic dependencies for update + optimisticKeysToDependencies.set(operation.key, dependencies); + + // Update related queries + const pendingOperations: Operations = new Set(); + collectPendingOperations(pendingOperations, dependencies); + executePendingOperations(operation, pendingOperations); + } } - } - return makeOperation( - operation.kind, - { - key: operation.key, - query: formatDocument(operation.query), - variables: operation.variables - ? filterVariables( - getMainOperation(operation.query), - operation.variables - ) - : operation.variables, - }, - { ...operation.context, originalVariables: operation.variables } - ); - }; + return makeOperation( + operation.kind, + { + key: operation.key, + query: formatDocument(operation.query), + variables: operation.variables + ? filterVariables( + getMainOperation(operation.query), + operation.variables + ) + : operation.variables, + }, + { ...operation.context, originalVariables: operation.variables } + ); + }; - // This updates the known dependencies for the passed operation - const updateDependencies = (op: Operation, dependencies: Dependencies) => { - for (const dep of dependencies.values()) { - let depOps = deps.get(dep); - if (!depOps) deps.set(dep, (depOps = new Set())); - depOps.add(op.key); - } - }; + // This updates the known dependencies for the passed operation + const updateDependencies = (op: Operation, dependencies: Dependencies) => { + for (const dep of dependencies.values()) { + let depOps = deps.get(dep); + if (!depOps) deps.set(dep, (depOps = new Set())); + depOps.add(op.key); + } + }; + + // Retrieves a query result from cache and adds an `isComplete` hint + // This hint indicates whether the result is "complete" or not + const operationResultFromCache = ( + operation: Operation + ): OperationResultWithMeta => { + const result = query(store, operation, results.get(operation.key)); + const cacheOutcome: CacheOutcome = result.data + ? !result.partial + ? 'hit' + : 'partial' + : 'miss'; + + results.set(operation.key, result.data); + operations.set(operation.key, operation); + updateDependencies(operation, result.dependencies); - // Retrieves a query result from cache and adds an `isComplete` hint - // This hint indicates whether the result is "complete" or not - const operationResultFromCache = ( - operation: Operation - ): OperationResultWithMeta => { - const result = query(store, operation, results.get(operation.key)); - const cacheOutcome: CacheOutcome = result.data - ? !result.partial - ? 'hit' - : 'partial' - : 'miss'; - - results.set(operation.key, result.data); - operations.set(operation.key, operation); - updateDependencies(operation, result.dependencies); - - return { - outcome: cacheOutcome, - operation, - data: result.data, - dependencies: result.dependencies, + return { + outcome: cacheOutcome, + operation, + data: result.data, + dependencies: result.dependencies, + }; }; - }; - // Take any OperationResult and update the cache with it - const updateCacheWithResult = ( - result: OperationResult, - pendingOperations: Operations - ): OperationResult => { - // Retrieve the original operation to remove changes made by formatDocument - const originalOperation = operations.get(result.operation.key); - const operation = originalOperation - ? makeOperation( - originalOperation.kind, - originalOperation, - result.operation.context - ) - : result.operation; + // Take any OperationResult and update the cache with it + const updateCacheWithResult = ( + result: OperationResult, + pendingOperations: Operations + ): OperationResult => { + // Retrieve the original operation to remove changes made by formatDocument + const originalOperation = operations.get(result.operation.key); + const operation = originalOperation + ? makeOperation( + originalOperation.kind, + originalOperation, + result.operation.context + ) + : result.operation; + + if (operation.kind === 'mutation') { + if (result.operation.context.originalVariables) { + operation.variables = result.operation.context.originalVariables; + delete result.operation.context.originalVariables; + } - if (operation.kind === 'mutation') { - if (result.operation.context.originalVariables) { - operation.variables = result.operation.context.originalVariables; - delete result.operation.context.originalVariables; + // Collect previous dependencies that have been written for optimistic updates + const dependencies = optimisticKeysToDependencies.get(operation.key); + collectPendingOperations(pendingOperations, dependencies); + optimisticKeysToDependencies.delete(operation.key); } - // Collect previous dependencies that have been written for optimistic updates - const dependencies = optimisticKeysToDependencies.get(operation.key); - collectPendingOperations(pendingOperations, dependencies); - optimisticKeysToDependencies.delete(operation.key); - } + if (operation.kind === 'subscription' || result.hasNext) + reserveLayer(store.data, operation.key, true); + + let queryDependencies: void | Dependencies; + let data: Data | null = result.data; + if (data) { + // Write the result to cache and collect all dependencies that need to be + // updated + const writeDependencies = write( + store, + operation, + data, + result.error, + operation.key + ).dependencies; + collectPendingOperations(pendingOperations, writeDependencies); + + const queryResult = query( + store, + operation, + operation.kind === 'query' + ? results.get(operation.key) || data + : data, + result.error, + operation.key + ); + + data = queryResult.data; + if (operation.kind === 'query') { + // Collect the query's dependencies for future pending operation updates + queryDependencies = queryResult.dependencies; + collectPendingOperations(pendingOperations, queryDependencies); + results.set(operation.key, data); + } + } else { + noopDataState(store.data, operation.key); + } - if (operation.kind === 'subscription' || result.hasNext) - reserveLayer(store.data, operation.key, true); + // Update this operation's dependencies if it's a query + if (queryDependencies) { + operations.set(operation.key, operation); + updateDependencies(result.operation, queryDependencies); + } - let queryDependencies: void | Dependencies; - let data: Data | null = result.data; - if (data) { - // Write the result to cache and collect all dependencies that need to be - // updated - const writeDependencies = write( - store, + return { operation, data, - result.error, - operation.key - ).dependencies; - collectPendingOperations(pendingOperations, writeDependencies); + error: result.error, + extensions: result.extensions, + hasNext: result.hasNext, + stale: result.stale, + }; + }; - const queryResult = query( - store, - operation, - operation.kind === 'query' ? results.get(operation.key) || data : data, - result.error, - operation.key + return ops$ => { + const sharedOps$ = pipe(ops$, share); + + // Filter by operations that are cacheable and attempt to query them from the cache + const cacheOps$ = pipe( + sharedOps$, + filter( + op => + op.kind === 'query' && op.context.requestPolicy !== 'network-only' + ), + map(operationResultFromCache), + share ); - data = queryResult.data; - if (operation.kind === 'query') { - // Collect the query's dependencies for future pending operation updates - queryDependencies = queryResult.dependencies; - collectPendingOperations(pendingOperations, queryDependencies); - results.set(operation.key, data); - } - } else { - noopDataState(store.data, operation.key); - } - - // Update this operation's dependencies if it's a query - if (queryDependencies) { - operations.set(operation.key, operation); - updateDependencies(result.operation, queryDependencies); - } + const nonCacheOps$ = pipe( + sharedOps$, + filter( + op => + op.kind !== 'query' || op.context.requestPolicy === 'network-only' + ) + ); - return { - operation, - data, - error: result.error, - extensions: result.extensions, - hasNext: result.hasNext, - stale: result.stale, - }; - }; + // Rebound operations that are incomplete, i.e. couldn't be queried just from the cache + const cacheMissOps$ = pipe( + cacheOps$, + filter( + res => + res.outcome === 'miss' && + res.operation.context.requestPolicy !== 'cache-only' && + !isBlockedByOptimisticUpdate(res.dependencies) && + !reexecutingOperations.has(res.operation.key) + ), + map(res => { + dispatchDebug({ + type: 'cacheMiss', + message: 'The result could not be retrieved from the cache', + operation: res.operation, + }); + return addMetadata(res.operation, { cacheOutcome: 'miss' }); + }) + ); - return ops$ => { - const sharedOps$ = pipe(ops$, share); - - // Filter by operations that are cacheable and attempt to query them from the cache - const cacheOps$ = pipe( - sharedOps$, - filter( - op => op.kind === 'query' && op.context.requestPolicy !== 'network-only' - ), - map(operationResultFromCache), - share - ); - - const nonCacheOps$ = pipe( - sharedOps$, - filter( - op => op.kind !== 'query' || op.context.requestPolicy === 'network-only' - ) - ); - - // Rebound operations that are incomplete, i.e. couldn't be queried just from the cache - const cacheMissOps$ = pipe( - cacheOps$, - filter( - res => - res.outcome === 'miss' && - res.operation.context.requestPolicy !== 'cache-only' && - !isBlockedByOptimisticUpdate(res.dependencies) && - !reexecutingOperations.has(res.operation.key) - ), - map(res => { - dispatchDebug({ - type: 'cacheMiss', - message: 'The result could not be retrieved from the cache', - operation: res.operation, - }); - return addMetadata(res.operation, { cacheOutcome: 'miss' }); - }) - ); - - // Resolve OperationResults that the cache was able to assemble completely and trigger - // a network request if the current operation's policy is cache-and-network - const cacheResult$ = pipe( - cacheOps$, - filter( - res => - res.outcome !== 'miss' || - res.operation.context.requestPolicy === 'cache-only' - ), - map( - (res: OperationResultWithMeta): OperationResult => { + // Resolve OperationResults that the cache was able to assemble completely and trigger + // a network request if the current operation's policy is cache-and-network + const cacheResult$ = pipe( + cacheOps$, + filter( + res => + res.outcome !== 'miss' || + res.operation.context.requestPolicy === 'cache-only' + ), + map((res: OperationResultWithMeta): OperationResult => { const { requestPolicy } = res.operation.context; // We don't mark cache-only responses as partial, as this would indicate @@ -368,40 +377,42 @@ export const cacheExchange = >( }); return result; - } - ) - ); - - // Forward operations that aren't cacheable and rebound operations - // Also update the cache with any network results - const result$ = pipe( - merge([nonCacheOps$, cacheMissOps$]), - map(prepareForwardedOperation), - forward, - share - ); - - // Results that can immediately be resolved - const nonOptimisticResults$ = pipe( - result$, - filter(result => !optimisticKeysToDependencies.has(result.operation.key)), - map(result => { - const pendingOperations: Operations = new Set(); - // Update the cache with the incoming API result - const cacheResult = updateCacheWithResult(result, pendingOperations); - // Execute all dependent queries - executePendingOperations(result.operation, pendingOperations); - return cacheResult; - }) - ); - - // Prevent mutations that were previously optimistic from being flushed - // immediately and instead clear them out slowly - const optimisticMutationCompletion$ = pipe( - result$, - filter(result => optimisticKeysToDependencies.has(result.operation.key)), - mergeMap( - (result: OperationResult): Source => { + }) + ); + + // Forward operations that aren't cacheable and rebound operations + // Also update the cache with any network results + const result$ = pipe( + merge([nonCacheOps$, cacheMissOps$]), + map(prepareForwardedOperation), + forward, + share + ); + + // Results that can immediately be resolved + const nonOptimisticResults$ = pipe( + result$, + filter( + result => !optimisticKeysToDependencies.has(result.operation.key) + ), + map(result => { + const pendingOperations: Operations = new Set(); + // Update the cache with the incoming API result + const cacheResult = updateCacheWithResult(result, pendingOperations); + // Execute all dependent queries + executePendingOperations(result.operation, pendingOperations); + return cacheResult; + }) + ); + + // Prevent mutations that were previously optimistic from being flushed + // immediately and instead clear them out slowly + const optimisticMutationCompletion$ = pipe( + result$, + filter(result => + optimisticKeysToDependencies.has(result.operation.key) + ), + mergeMap((result: OperationResult): Source => { const length = mutationResultBuffer.push(result); if (length < optimisticKeysToDependencies.size) { return empty; @@ -426,14 +437,13 @@ export const cacheExchange = >( executePendingOperations(result.operation, pendingOperations); return fromArray(results); - } - ) - ); - - return merge([ - nonOptimisticResults$, - optimisticMutationCompletion$, - cacheResult$, - ]); + }) + ); + + return merge([ + nonOptimisticResults$, + optimisticMutationCompletion$, + cacheResult$, + ]); + }; }; -}; diff --git a/exchanges/graphcache/src/extras/relayPagination.test.ts b/exchanges/graphcache/src/extras/relayPagination.test.ts index 1add1507..0cfe3b33 100644 --- a/exchanges/graphcache/src/extras/relayPagination.test.ts +++ b/exchanges/graphcache/src/extras/relayPagination.test.ts @@ -20,7 +20,7 @@ function itemEdge(numItem: number) { it('works with forward pagination', () => { const Pagination = gql` - query($cursor: String) { + query ($cursor: String) { __typename items(first: 1, after: $cursor) { __typename @@ -98,7 +98,7 @@ it('works with forward pagination', () => { it('works with backwards pagination', () => { const Pagination = gql` - query($cursor: String) { + query ($cursor: String) { __typename items(last: 1, before: $cursor) { __typename @@ -176,7 +176,7 @@ it('works with backwards pagination', () => { it('handles duplicate edges', () => { const Pagination = gql` - query($cursor: String) { + query ($cursor: String) { __typename items(first: 2, after: $cursor) { __typename @@ -262,7 +262,7 @@ it('handles duplicate edges', () => { it('works with simultaneous forward and backward pagination (outwards merging)', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -393,7 +393,7 @@ it('works with simultaneous forward and backward pagination (outwards merging)', it('works with simultaneous forward and backward pagination (inwards merging)', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -524,7 +524,7 @@ it('works with simultaneous forward and backward pagination (inwards merging)', it('prevents overlapping of pagination on different arguments', () => { const Pagination = gql` - query($filter: String) { + query ($filter: String) { items(first: 1, filter: $filter) { __typename edges { @@ -692,7 +692,7 @@ it('returns other fields on the same level as the edges', () => { it('returns a subset of the cached items if the query requests less items than the cached ones', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -756,7 +756,7 @@ it('returns a subset of the cached items if the query requests less items than t it("returns the cached items even if they don't fullfil the query", () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -824,7 +824,7 @@ it("returns the cached items even if they don't fullfil the query", () => { it('returns the cached items even when they come from a different query', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -888,7 +888,7 @@ it('returns the cached items even when they come from a different query', () => it('caches and retrieves correctly queries with inwards pagination', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -956,7 +956,7 @@ it('caches and retrieves correctly queries with inwards pagination', () => { it('does not include a previous result when adding parameters', () => { const Pagination = gql` - query($first: Int, $filter: String) { + query ($first: Int, $filter: String) { __typename items(first: $first, filter: $filter) { __typename @@ -1039,7 +1039,7 @@ it('does not include a previous result when adding parameters', () => { it('Works with edges absent from query', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -1095,7 +1095,7 @@ it('Works with edges absent from query', () => { it('Works with nodes absent from query', () => { const Pagination = gql` - query($first: Int, $last: Int, $before: String, $after: String) { + query ($first: Int, $last: Int, $before: String, $after: String) { __typename items(first: $first, last: $last, before: $before, after: $after) { __typename @@ -1154,7 +1154,7 @@ it('Works with nodes absent from query', () => { it('handles subsequent queries with larger last values', () => { const Pagination = gql` - query($last: Int!) { + query ($last: Int!) { __typename items(last: $last) { __typename @@ -1246,7 +1246,7 @@ it('handles subsequent queries with larger last values', () => { it('handles subsequent queries with larger first values', () => { const Pagination = gql` - query($first: Int!) { + query ($first: Int!) { __typename items(first: $first) { __typename @@ -1317,7 +1317,7 @@ it('handles subsequent queries with larger first values', () => { it('ignores empty pages when paginating', () => { const PaginationForward = gql` - query($first: Int!, $after: String) { + query ($first: Int!, $after: String) { __typename items(first: $first, after: $after) { __typename @@ -1334,7 +1334,7 @@ it('ignores empty pages when paginating', () => { } `; const PaginationBackward = gql` - query($last: Int!, $before: String) { + query ($last: Int!, $before: String) { __typename items(last: $last, before: $before) { __typename @@ -1426,7 +1426,7 @@ it('ignores empty pages when paginating', () => { it('allows for an empty page when this is the only result', () => { const Pagination = gql` - query($first: Int!, $after: String) { + query ($first: Int!, $after: String) { __typename items(first: $first, after: $after) { __typename diff --git a/exchanges/graphcache/src/extras/simplePagination.test.ts b/exchanges/graphcache/src/extras/simplePagination.test.ts index 34187a9d..43f34ac7 100644 --- a/exchanges/graphcache/src/extras/simplePagination.test.ts +++ b/exchanges/graphcache/src/extras/simplePagination.test.ts @@ -6,7 +6,7 @@ import { simplePagination } from './simplePagination'; it('works with forward pagination', () => { const Pagination = gql` - query($skip: Number, $limit: Number) { + query ($skip: Number, $limit: Number) { __typename persons(skip: $skip, limit: $limit) { __typename @@ -77,7 +77,7 @@ it('works with forward pagination', () => { it('works with backwards pagination', () => { const Pagination = gql` - query($skip: Number, $limit: Number) { + query ($skip: Number, $limit: Number) { __typename persons(skip: $skip, limit: $limit) { __typename @@ -148,7 +148,7 @@ it('works with backwards pagination', () => { it('handles duplicates', () => { const Pagination = gql` - query($skip: Number, $limit: Number) { + query ($skip: Number, $limit: Number) { __typename persons(skip: $skip, limit: $limit) { __typename @@ -207,7 +207,7 @@ it('handles duplicates', () => { it('should not return previous result when adding a parameter', () => { const Pagination = gql` - query($skip: Number, $limit: Number, $filter: String) { + query ($skip: Number, $limit: Number, $filter: String) { __typename persons(skip: $skip, limit: $limit, filter: $filter) { __typename @@ -259,7 +259,7 @@ it('should not return previous result when adding a parameter', () => { it('should preserve the correct order in forward pagination', () => { const Pagination = gql` - query($skip: Number, $limit: Number) { + query ($skip: Number, $limit: Number) { __typename persons(skip: $skip, limit: $limit) { __typename @@ -318,7 +318,7 @@ it('should preserve the correct order in forward pagination', () => { it('should preserve the correct order in backward pagination', () => { const Pagination = gql` - query($skip: Number, $limit: Number) { + query ($skip: Number, $limit: Number) { __typename persons(skip: $skip, limit: $limit) { __typename @@ -378,7 +378,7 @@ it('should preserve the correct order in backward pagination', () => { it('prevents overlapping of pagination on different arguments', () => { const Pagination = gql` - query($skip: Number, $limit: Number, $filter: string) { + query ($skip: Number, $limit: Number, $filter: string) { __typename persons(skip: $skip, limit: $limit, filter: $filter) { __typename diff --git a/exchanges/graphcache/src/offlineExchange.test.ts b/exchanges/graphcache/src/offlineExchange.test.ts index ff87421b..3420d725 100644 --- a/exchanges/graphcache/src/offlineExchange.test.ts +++ b/exchanges/graphcache/src/offlineExchange.test.ts @@ -77,16 +77,14 @@ describe('storage', () => { variables: {}, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { - ...queryResponse, - operation: forwardOp, - data: mutationOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { + ...queryResponse, + operation: forwardOp, + data: mutationOneData, + }; + }); const { source: ops$ } = makeSubject(); const result = vi.fn(); @@ -126,22 +124,20 @@ describe('offline', () => { variables: {}, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - if (forwardOp.key === queryOp.key) { - onlineSpy.mockReturnValueOnce(true); - return { ...queryResponse, operation: forwardOp, data: queryOneData }; - } else { - onlineSpy.mockReturnValueOnce(false); - return { - ...queryResponse, - operation: forwardOp, - // @ts-ignore - error: { networkError: new Error('failed to fetch') }, - }; - } + const response = vi.fn((forwardOp: Operation): OperationResult => { + if (forwardOp.key === queryOp.key) { + onlineSpy.mockReturnValueOnce(true); + return { ...queryResponse, operation: forwardOp, data: queryOneData }; + } else { + onlineSpy.mockReturnValueOnce(false); + return { + ...queryResponse, + operation: forwardOp, + // @ts-ignore + error: { networkError: new Error('failed to fetch') }, + }; } - ); + }); const { source: ops$, next } = makeSubject(); const result = vi.fn(); @@ -204,16 +200,14 @@ describe('offline', () => { variables: undefined, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - onlineSpy.mockReturnValueOnce(false); - return { - operation: forwardOp, - // @ts-ignore - error: { networkError: new Error('failed to fetch') }, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + onlineSpy.mockReturnValueOnce(false); + return { + operation: forwardOp, + // @ts-ignore + error: { networkError: new Error('failed to fetch') }, + }; + }); const { source: ops$, next } = makeSubject(); const result = vi.fn(); @@ -273,16 +267,14 @@ describe('offline', () => { variables: {}, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - onlineSpy.mockReturnValueOnce(false); - return { - operation: forwardOp, - // @ts-ignore - error: { networkError: new Error('failed to fetch') }, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + onlineSpy.mockReturnValueOnce(false); + return { + operation: forwardOp, + // @ts-ignore + error: { networkError: new Error('failed to fetch') }, + }; + }); const { source: ops$, next } = makeSubject(); const result = vi.fn(); diff --git a/exchanges/graphcache/src/offlineExchange.ts b/exchanges/graphcache/src/offlineExchange.ts index 4d84ab2f..02707315 100644 --- a/exchanges/graphcache/src/offlineExchange.ts +++ b/exchanges/graphcache/src/offlineExchange.ts @@ -64,141 +64,141 @@ export interface OfflineExchangeOpts extends CacheExchangeOpts { ): boolean; } -export const offlineExchange = ( - opts: C -): Exchange => input => { - const { storage } = opts; - - const isOfflineError = - opts.isOfflineError || - ((error: undefined | CombinedError) => - error && - error.networkError && - !error.response && - ((typeof navigator !== 'undefined' && navigator.onLine === false) || - /request failed|failed to fetch|network\s?error/i.test( - error.networkError.message - ))); - - if ( - storage && - storage.onOnline && - storage.readMetadata && - storage.writeMetadata - ) { - const { forward: outerForward, client, dispatchDebug } = input; - const { source: reboundOps$, next } = makeSubject(); - const optimisticMutations = opts.optimistic || {}; - const failedQueue: Operation[] = []; - - const updateMetadata = () => { - const requests: SerializedRequest[] = []; - for (let i = 0; i < failedQueue.length; i++) { - const operation = failedQueue[i]; - if (operation.kind === 'mutation') { - requests.push({ - query: print(operation.query), - variables: operation.variables, - }); - } - } - storage.writeMetadata!(requests); - }; - - let isFlushingQueue = false; - const flushQueue = () => { - if (!isFlushingQueue) { - isFlushingQueue = true; - +export const offlineExchange = + (opts: C): Exchange => + input => { + const { storage } = opts; + + const isOfflineError = + opts.isOfflineError || + ((error: undefined | CombinedError) => + error && + error.networkError && + !error.response && + ((typeof navigator !== 'undefined' && navigator.onLine === false) || + /request failed|failed to fetch|network\s?error/i.test( + error.networkError.message + ))); + + if ( + storage && + storage.onOnline && + storage.readMetadata && + storage.writeMetadata + ) { + const { forward: outerForward, client, dispatchDebug } = input; + const { source: reboundOps$, next } = makeSubject(); + const optimisticMutations = opts.optimistic || {}; + const failedQueue: Operation[] = []; + + const updateMetadata = () => { + const requests: SerializedRequest[] = []; for (let i = 0; i < failedQueue.length; i++) { const operation = failedQueue[i]; if (operation.kind === 'mutation') { - next(makeOperation('teardown', operation)); + requests.push({ + query: print(operation.query), + variables: operation.variables, + }); } } - - for (let i = 0; i < failedQueue.length; i++) - client.reexecuteOperation(failedQueue[i]); - - failedQueue.length = 0; - isFlushingQueue = false; - updateMetadata(); - } - }; - - const forward: ExchangeIO = ops$ => { - return pipe( - outerForward(ops$), - filter(res => { - if ( - res.operation.kind === 'mutation' && - isOfflineError(res.error, res) && - isOptimisticMutation(optimisticMutations, res.operation) - ) { - failedQueue.push(res.operation); - updateMetadata(); - return false; + storage.writeMetadata!(requests); + }; + + let isFlushingQueue = false; + const flushQueue = () => { + if (!isFlushingQueue) { + isFlushingQueue = true; + + for (let i = 0; i < failedQueue.length; i++) { + const operation = failedQueue[i]; + if (operation.kind === 'mutation') { + next(makeOperation('teardown', operation)); + } } - return true; - }) - ); - }; - - storage - .readMetadata() - .then(mutations => { - if (mutations) { - for (let i = 0; i < mutations.length; i++) { - failedQueue.push( - client.createRequestOperation( - 'mutation', - createRequest(mutations[i].query, mutations[i].variables) - ) - ); - } + for (let i = 0; i < failedQueue.length; i++) + client.reexecuteOperation(failedQueue[i]); - flushQueue(); + failedQueue.length = 0; + isFlushingQueue = false; + updateMetadata(); } - }) - .finally(() => storage.onOnline!(flushQueue)); - - const cacheResults$ = cacheExchange({ - ...opts, - storage: { - ...storage, - readData() { - return storage.readData().finally(flushQueue); - }, - }, - })({ - client, - dispatchDebug, - forward, - }); - - return ops$ => { - const sharedOps$ = pipe(ops$, share); - - const opsAndRebound$ = merge([reboundOps$, sharedOps$]); - - return pipe( - cacheResults$(opsAndRebound$), - filter(res => { - if ( - res.operation.kind === 'query' && - isOfflineError(res.error, res) - ) { - next(toRequestPolicy(res.operation, 'cache-only')); - failedQueue.push(res.operation); - return false; + }; + + const forward: ExchangeIO = ops$ => { + return pipe( + outerForward(ops$), + filter(res => { + if ( + res.operation.kind === 'mutation' && + isOfflineError(res.error, res) && + isOptimisticMutation(optimisticMutations, res.operation) + ) { + failedQueue.push(res.operation); + updateMetadata(); + return false; + } + + return true; + }) + ); + }; + + storage + .readMetadata() + .then(mutations => { + if (mutations) { + for (let i = 0; i < mutations.length; i++) { + failedQueue.push( + client.createRequestOperation( + 'mutation', + createRequest(mutations[i].query, mutations[i].variables) + ) + ); + } + + flushQueue(); } - - return true; }) - ); - }; - } + .finally(() => storage.onOnline!(flushQueue)); + + const cacheResults$ = cacheExchange({ + ...opts, + storage: { + ...storage, + readData() { + return storage.readData().finally(flushQueue); + }, + }, + })({ + client, + dispatchDebug, + forward, + }); + + return ops$ => { + const sharedOps$ = pipe(ops$, share); + + const opsAndRebound$ = merge([reboundOps$, sharedOps$]); + + return pipe( + cacheResults$(opsAndRebound$), + filter(res => { + if ( + res.operation.kind === 'query' && + isOfflineError(res.error, res) + ) { + next(toRequestPolicy(res.operation, 'cache-only')); + failedQueue.push(res.operation); + return false; + } + + return true; + }) + ); + }; + } - return cacheExchange(opts)(input); -}; + return cacheExchange(opts)(input); + }; diff --git a/exchanges/graphcache/src/store/store.ts b/exchanges/graphcache/src/store/store.ts index 0e8da6cf..f5516a7a 100644 --- a/exchanges/graphcache/src/store/store.ts +++ b/exchanges/graphcache/src/store/store.ts @@ -39,7 +39,8 @@ type RootField = 'query' | 'mutation' | 'subscription'; export class Store< C extends Partial = Partial -> implements Cache { +> implements Cache +{ data: InMemoryData.InMemoryData; resolvers: ResolverConfig; @@ -219,9 +220,9 @@ export class Store< maybeLink?: Link ): void { const args = (maybeLink !== undefined ? argsOrLink : null) as FieldArgs; - const link = (maybeLink !== undefined - ? maybeLink - : argsOrLink) as Link; + const link = ( + maybeLink !== undefined ? maybeLink : argsOrLink + ) as Link; const entityKey = ensureLink(this, entity); if (typeof entityKey === 'string') { InMemoryData.writeLink( diff --git a/exchanges/graphcache/src/test-utils/examples-1.test.ts b/exchanges/graphcache/src/test-utils/examples-1.test.ts index dde3c577..c70b7b11 100644 --- a/exchanges/graphcache/src/test-utils/examples-1.test.ts +++ b/exchanges/graphcache/src/test-utils/examples-1.test.ts @@ -27,7 +27,7 @@ const TodoFragment = gql` `; const Todo = gql` - query($id: ID!) { + query ($id: ID!) { __typename todo(id: $id) { id @@ -38,7 +38,7 @@ const Todo = gql` `; const ToggleTodo = gql` - mutation($id: ID!) { + mutation ($id: ID!) { __typename toggleTodo(id: $id) { __typename @@ -50,7 +50,7 @@ const ToggleTodo = gql` `; const NestedClearNameTodo = gql` - mutation($id: ID!) { + mutation ($id: ID!) { __typename clearName(id: $id) { __typename @@ -691,7 +691,7 @@ it('supports seeing the same optimistic key multiple times (correctly reorders)' write(store, { query: Todos }, todosData); const updateTodo = gql` - mutation($id: ID!, $completed: Boolean!) { + mutation ($id: ID!, $completed: Boolean!) { __typename updateTodo(id: $id, completed: $completed) { __typename diff --git a/exchanges/graphcache/src/types.ts b/exchanges/graphcache/src/types.ts index d627f6a4..df111554 100644 --- a/exchanges/graphcache/src/types.ts +++ b/exchanges/graphcache/src/types.ts @@ -186,11 +186,9 @@ export type UpdatesConfig = { }; export type MakeFunctional = T extends { __typename: string } - ? WithTypename< - { - [P in keyof T]?: MakeFunctional; - } - > + ? WithTypename<{ + [P in keyof T]?: MakeFunctional; + }> : OptimisticMutationResolver | T; export type OptimisticMutationResolver< diff --git a/exchanges/multipart-fetch/src/multipartFetchExchange.ts b/exchanges/multipart-fetch/src/multipartFetchExchange.ts index c5acdc5a..0803cafd 100644 --- a/exchanges/multipart-fetch/src/multipartFetchExchange.ts +++ b/exchanges/multipart-fetch/src/multipartFetchExchange.ts @@ -13,100 +13,99 @@ import { * @deprecated * `@urql/core` now supports the GraphQL Multipart Request spec out-of-the-box. */ -export const multipartFetchExchange: Exchange = ({ - forward, - dispatchDebug, -}) => ops$ => { - const sharedOps$ = share(ops$); - const fetchResults$ = pipe( - sharedOps$, - filter(operation => { - return operation.kind === 'query' || operation.kind === 'mutation'; - }), - mergeMap(operation => { - const teardown$ = pipe( - sharedOps$, - filter(op => op.kind === 'teardown' && op.key === operation.key) - ); +export const multipartFetchExchange: Exchange = + ({ forward, dispatchDebug }) => + ops$ => { + const sharedOps$ = share(ops$); + const fetchResults$ = pipe( + sharedOps$, + filter(operation => { + return operation.kind === 'query' || operation.kind === 'mutation'; + }), + mergeMap(operation => { + const teardown$ = pipe( + sharedOps$, + filter(op => op.kind === 'teardown' && op.key === operation.key) + ); - // Spreading operation.variables here in case someone made a variables with Object.create(null). - const { files, clone: variables } = extractFiles({ - ...operation.variables, - }); - const body = makeFetchBody({ query: operation.query, variables }); + // Spreading operation.variables here in case someone made a variables with Object.create(null). + const { files, clone: variables } = extractFiles({ + ...operation.variables, + }); + const body = makeFetchBody({ query: operation.query, variables }); - let url: string; - let fetchOptions: RequestInit; - if (files.size) { - url = makeFetchURL(operation); - fetchOptions = makeFetchOptions(operation); - if (!(fetchOptions.body instanceof FormData)) { - if (fetchOptions.headers!['content-type'] === 'application/json') { - delete fetchOptions.headers!['content-type']; - } + let url: string; + let fetchOptions: RequestInit; + if (files.size) { + url = makeFetchURL(operation); + fetchOptions = makeFetchOptions(operation); + if (!(fetchOptions.body instanceof FormData)) { + if (fetchOptions.headers!['content-type'] === 'application/json') { + delete fetchOptions.headers!['content-type']; + } - fetchOptions.method = 'POST'; - fetchOptions.body = new FormData(); - fetchOptions.body.append('operations', JSON.stringify(body)); + fetchOptions.method = 'POST'; + fetchOptions.body = new FormData(); + fetchOptions.body.append('operations', JSON.stringify(body)); - const map = {}; - let i = 0; - files.forEach(paths => { - map[++i] = paths.map(path => `variables.${path}`); - }); + const map = {}; + let i = 0; + files.forEach(paths => { + map[++i] = paths.map(path => `variables.${path}`); + }); - fetchOptions.body.append('map', JSON.stringify(map)); + fetchOptions.body.append('map', JSON.stringify(map)); - i = 0; - files.forEach((_, file) => { - (fetchOptions.body as FormData).append(`${++i}`, file, file.name); - }); + i = 0; + files.forEach((_, file) => { + (fetchOptions.body as FormData).append(`${++i}`, file, file.name); + }); + } + } else { + url = makeFetchURL(operation, body); + fetchOptions = makeFetchOptions(operation, body); } - } else { - url = makeFetchURL(operation, body); - fetchOptions = makeFetchOptions(operation, body); - } - dispatchDebug({ - type: 'fetchRequest', - message: 'A fetch request is being executed.', - operation, - data: { - url, - fetchOptions, - }, - }); + dispatchDebug({ + type: 'fetchRequest', + message: 'A fetch request is being executed.', + operation, + data: { + url, + fetchOptions, + }, + }); - return pipe( - makeFetchSource(operation, url, fetchOptions), - takeUntil(teardown$), - onPush(result => { - const error = !result.data ? result.error : undefined; + return pipe( + makeFetchSource(operation, url, fetchOptions), + takeUntil(teardown$), + onPush(result => { + const error = !result.data ? result.error : undefined; - dispatchDebug({ - type: error ? 'fetchError' : 'fetchSuccess', - message: `A ${ - error ? 'failed' : 'successful' - } fetch response has been returned.`, - operation, - data: { - url, - fetchOptions, - value: error || result, - }, - }); - }) - ); - }) - ); + dispatchDebug({ + type: error ? 'fetchError' : 'fetchSuccess', + message: `A ${ + error ? 'failed' : 'successful' + } fetch response has been returned.`, + operation, + data: { + url, + fetchOptions, + value: error || result, + }, + }); + }) + ); + }) + ); - const forward$ = pipe( - sharedOps$, - filter(operation => { - return operation.kind !== 'query' && operation.kind !== 'mutation'; - }), - forward - ); + const forward$ = pipe( + sharedOps$, + filter(operation => { + return operation.kind !== 'query' && operation.kind !== 'mutation'; + }), + forward + ); - return merge([fetchResults$, forward$]); -}; + return merge([fetchResults$, forward$]); + }; diff --git a/exchanges/persisted/src/persistedExchange.ts b/exchanges/persisted/src/persistedExchange.ts index f632b02e..8b5e9953 100644 --- a/exchanges/persisted/src/persistedExchange.ts +++ b/exchanges/persisted/src/persistedExchange.ts @@ -36,108 +36,108 @@ export interface PersistedExchangeOptions { enableForMutation?: boolean; } -export const persistedExchange = ( - options?: PersistedExchangeOptions -): Exchange => ({ forward }) => { - if (!options) options = {}; +export const persistedExchange = + (options?: PersistedExchangeOptions): Exchange => + ({ forward }) => { + if (!options) options = {}; - const preferGetForPersistedQueries = !!options.preferGetForPersistedQueries; - const enforcePersistedQueries = !!options.enforcePersistedQueries; - const hashFn = options.generateHash || hash; - const enableForMutation = !!options.enableForMutation; - let supportsPersistedQueries = true; + const preferGetForPersistedQueries = !!options.preferGetForPersistedQueries; + const enforcePersistedQueries = !!options.enforcePersistedQueries; + const hashFn = options.generateHash || hash; + const enableForMutation = !!options.enableForMutation; + let supportsPersistedQueries = true; - const operationFilter = (operation: Operation) => - supportsPersistedQueries && - !operation.context.persistAttempt && - ((enableForMutation && operation.kind === 'mutation') || - operation.kind === 'query'); + const operationFilter = (operation: Operation) => + supportsPersistedQueries && + !operation.context.persistAttempt && + ((enableForMutation && operation.kind === 'mutation') || + operation.kind === 'query'); - return operations$ => { - const retries = makeSubject(); - const sharedOps$ = share(operations$); + return operations$ => { + const retries = makeSubject(); + const sharedOps$ = share(operations$); - const forwardedOps$ = pipe( - sharedOps$, - filter(operation => !operationFilter(operation)) - ); + const forwardedOps$ = pipe( + sharedOps$, + filter(operation => !operationFilter(operation)) + ); - const persistedOps$ = pipe( - sharedOps$, - filter(operationFilter), - map(async operation => { - const persistedOperation = makeOperation(operation.kind, operation, { - ...operation.context, - persistAttempt: true, - }); + const persistedOps$ = pipe( + sharedOps$, + filter(operationFilter), + map(async operation => { + const persistedOperation = makeOperation(operation.kind, operation, { + ...operation.context, + persistAttempt: true, + }); - const sha256Hash = await hashFn( - stringifyDocument(operation.query), - operation.query - ); - if (sha256Hash) { - persistedOperation.extensions = { - ...persistedOperation.extensions, - persistedQuery: { - version: 1, - sha256Hash, - }, - }; - if ( - persistedOperation.kind === 'query' && - preferGetForPersistedQueries - ) { - persistedOperation.context.preferGetMethod = 'force'; + const sha256Hash = await hashFn( + stringifyDocument(operation.query), + operation.query + ); + if (sha256Hash) { + persistedOperation.extensions = { + ...persistedOperation.extensions, + persistedQuery: { + version: 1, + sha256Hash, + }, + }; + if ( + persistedOperation.kind === 'query' && + preferGetForPersistedQueries + ) { + persistedOperation.context.preferGetMethod = 'force'; + } } - } - return persistedOperation; - }), - mergeMap(fromPromise) - ); + return persistedOperation; + }), + mergeMap(fromPromise) + ); - return pipe( - merge([persistedOps$, forwardedOps$, retries.source]), - forward, - map(result => { - if ( - !enforcePersistedQueries && - result.operation.extensions && - result.operation.extensions.persistedQuery - ) { - if (result.error && isPersistedUnsupported(result.error)) { - // Disable future persisted queries if they're not enforced - supportsPersistedQueries = false; - // Update operation with unsupported attempt - const followupOperation = makeOperation( - result.operation.kind, - result.operation - ); - if (followupOperation.extensions) - delete followupOperation.extensions.persistedQuery; - retries.next(followupOperation); - return null; - } else if (result.error && isPersistedMiss(result.error)) { - // Update operation with unsupported attempt - const followupOperation = makeOperation( - result.operation.kind, - result.operation - ); - // Mark as missed persisted query - followupOperation.extensions = { - ...followupOperation.extensions, - persistedQuery: { - ...(followupOperation.extensions || {}).persistedQuery, - miss: true, - } as PersistedRequestExtensions, - }; - retries.next(followupOperation); - return null; + return pipe( + merge([persistedOps$, forwardedOps$, retries.source]), + forward, + map(result => { + if ( + !enforcePersistedQueries && + result.operation.extensions && + result.operation.extensions.persistedQuery + ) { + if (result.error && isPersistedUnsupported(result.error)) { + // Disable future persisted queries if they're not enforced + supportsPersistedQueries = false; + // Update operation with unsupported attempt + const followupOperation = makeOperation( + result.operation.kind, + result.operation + ); + if (followupOperation.extensions) + delete followupOperation.extensions.persistedQuery; + retries.next(followupOperation); + return null; + } else if (result.error && isPersistedMiss(result.error)) { + // Update operation with unsupported attempt + const followupOperation = makeOperation( + result.operation.kind, + result.operation + ); + // Mark as missed persisted query + followupOperation.extensions = { + ...followupOperation.extensions, + persistedQuery: { + ...(followupOperation.extensions || {}).persistedQuery, + miss: true, + } as PersistedRequestExtensions, + }; + retries.next(followupOperation); + return null; + } } - } - return result; - }), - filter((result): result is OperationResult => !!result) - ); + return result; + }), + filter((result): result is OperationResult => !!result) + ); + }; }; -}; diff --git a/exchanges/persisted/src/sha256.ts b/exchanges/persisted/src/sha256.ts index 34ee7093..6d2e0677 100644 --- a/exchanges/persisted/src/sha256.ts +++ b/exchanges/persisted/src/sha256.ts @@ -1,8 +1,10 @@ -const webCrypto = (typeof window !== 'undefined' - ? window.crypto - : typeof self !== 'undefined' - ? self.crypto - : null) as typeof globalThis.crypto | null; +const webCrypto = ( + typeof window !== 'undefined' + ? window.crypto + : typeof self !== 'undefined' + ? self.crypto + : null +) as typeof globalThis.crypto | null; let nodeCrypto: Promise | void; diff --git a/exchanges/populate/src/populateExchange.ts b/exchanges/populate/src/populateExchange.ts index dc48d2db..0c508d85 100644 --- a/exchanges/populate/src/populateExchange.ts +++ b/exchanges/populate/src/populateExchange.ts @@ -69,365 +69,369 @@ const SKIP_COUNT_TYPE = /^PageInfo|(Connection|Edge)$/; * ` * ``` */ -export const populateExchange = ({ - schema: ogSchema, - options, -}: PopulateExchangeOpts): Exchange => ({ forward }) => { - const maxDepth = (options && options.maxDepth) || 2; - const skipType = (options && options.skipType) || SKIP_COUNT_TYPE; - - const schema = buildClientSchema(ogSchema); - /** List of operation keys that have already been parsed. */ - const parsedOperations = new Set(); - /** List of operation keys that have not been torn down. */ - const activeOperations = new Set(); - /** Collection of fragments used by the user. */ - const userFragments: FragmentMap = makeDict(); - - // State of the global types & their fields - const typeFields: TypeFields = new Map(); - let currentVariables: object = {}; - - /** Handle mutation and inject selections + fragments. */ - const handleIncomingMutation = (op: Operation) => { - if (op.kind !== 'mutation') { - return op; - } +export const populateExchange = + ({ schema: ogSchema, options }: PopulateExchangeOpts): Exchange => + ({ forward }) => { + const maxDepth = (options && options.maxDepth) || 2; + const skipType = (options && options.skipType) || SKIP_COUNT_TYPE; + + const schema = buildClientSchema(ogSchema); + /** List of operation keys that have already been parsed. */ + const parsedOperations = new Set(); + /** List of operation keys that have not been torn down. */ + const activeOperations = new Set(); + /** Collection of fragments used by the user. */ + const userFragments: FragmentMap = makeDict(); + + // State of the global types & their fields + const typeFields: TypeFields = new Map(); + let currentVariables: object = {}; + + /** Handle mutation and inject selections + fragments. */ + const handleIncomingMutation = (op: Operation) => { + if (op.kind !== 'mutation') { + return op; + } - const document = traverse(op.query, node => { - if (node.kind === Kind.FIELD) { - if (!node.directives) return; + const document = traverse(op.query, node => { + if (node.kind === Kind.FIELD) { + if (!node.directives) return; - const directives = node.directives.filter( - d => getName(d) !== 'populate' - ); + const directives = node.directives.filter( + d => getName(d) !== 'populate' + ); - if (directives.length === node.directives.length) return; + if (directives.length === node.directives.length) return; - const field = schema.getMutationType()!.getFields()[node.name.value]; + const field = schema.getMutationType()!.getFields()[node.name.value]; - if (!field) return; + if (!field) return; - const type = unwrapType(field.type); + const type = unwrapType(field.type); - if (!type) { - return { - ...node, - selectionSet: { - kind: Kind.SELECTION_SET, - selections: [ - { - kind: Kind.FIELD, - name: { - kind: Kind.NAME, - value: '__typename', + if (!type) { + return { + ...node, + selectionSet: { + kind: Kind.SELECTION_SET, + selections: [ + { + kind: Kind.FIELD, + name: { + kind: Kind.NAME, + value: '__typename', + }, }, - }, - ], - }, - directives, - }; - } - - const visited = new Set(); - const populateSelections = ( - type: GraphQLFlatType, - selections: Array< - FieldNode | InlineFragmentNode | FragmentSpreadNode - >, - depth: number - ) => { - let possibleTypes: readonly string[] = []; - let isAbstract = false; - if (isAbstractType(type)) { - isAbstract = true; - possibleTypes = schema.getPossibleTypes(type).map(x => x.name); - } else { - possibleTypes = [type.name]; + ], + }, + directives, + }; } - possibleTypes.forEach(typeName => { - const fieldsForType = typeFields.get(typeName); - if (!fieldsForType) { - if (possibleTypes.length === 1) { - selections.push({ - kind: Kind.FIELD, - name: { - kind: Kind.NAME, - value: '__typename', - }, - }); - } - return; - } - - let typeSelections: Array< + const visited = new Set(); + const populateSelections = ( + type: GraphQLFlatType, + selections: Array< FieldNode | InlineFragmentNode | FragmentSpreadNode - > = selections; - - if (isAbstract) { - typeSelections = [ - { - kind: Kind.FIELD, - name: { - kind: Kind.NAME, - value: '__typename', - }, - }, - ]; - selections.push({ - kind: Kind.INLINE_FRAGMENT, - typeCondition: { - kind: Kind.NAMED_TYPE, - name: { - kind: Kind.NAME, - value: typeName, - }, - }, - selectionSet: { - kind: Kind.SELECTION_SET, - selections: typeSelections, - }, - }); + >, + depth: number + ) => { + let possibleTypes: readonly string[] = []; + let isAbstract = false; + if (isAbstractType(type)) { + isAbstract = true; + possibleTypes = schema.getPossibleTypes(type).map(x => x.name); } else { - typeSelections.push({ - kind: Kind.FIELD, - name: { - kind: Kind.NAME, - value: '__typename', - }, - }); + possibleTypes = [type.name]; } - Object.keys(fieldsForType).forEach(key => { - const value = fieldsForType[key]; - if (value.type instanceof GraphQLScalarType) { - const args = value.args - ? Object.keys(value.args).map(k => { - const v = value.args![k]; - return { - kind: Kind.ARGUMENT, - value: { - kind: v.kind, - value: v.value, - }, - name: { - kind: Kind.NAME, - value: k, - }, - } as ArgumentNode; - }) - : []; - const field: FieldNode = { - kind: Kind.FIELD, - arguments: args, - name: { - kind: Kind.NAME, - value: value.fieldName, + possibleTypes.forEach(typeName => { + const fieldsForType = typeFields.get(typeName); + if (!fieldsForType) { + if (possibleTypes.length === 1) { + selections.push({ + kind: Kind.FIELD, + name: { + kind: Kind.NAME, + value: '__typename', + }, + }); + } + return; + } + + let typeSelections: Array< + FieldNode | InlineFragmentNode | FragmentSpreadNode + > = selections; + + if (isAbstract) { + typeSelections = [ + { + kind: Kind.FIELD, + name: { + kind: Kind.NAME, + value: '__typename', + }, + }, + ]; + selections.push({ + kind: Kind.INLINE_FRAGMENT, + typeCondition: { + kind: Kind.NAMED_TYPE, + name: { + kind: Kind.NAME, + value: typeName, + }, }, - }; - - typeSelections.push(field); - } else if ( - value.type instanceof GraphQLObjectType && - !visited.has(value.type.name) && - depth < maxDepth - ) { - visited.add(value.type.name); - const fieldSelections: Array = []; - - populateSelections( - value.type, - fieldSelections, - skipType.test(value.type.name) ? depth : depth + 1 - ); - - const args = value.args - ? Object.keys(value.args).map(k => { - const v = value.args![k]; - return { - kind: Kind.ARGUMENT, - value: { - kind: v.kind, - value: v.value, - }, - name: { - kind: Kind.NAME, - value: k, - }, - } as ArgumentNode; - }) - : []; - - const field: FieldNode = { - kind: Kind.FIELD, selectionSet: { kind: Kind.SELECTION_SET, - selections: fieldSelections, + selections: typeSelections, }, - arguments: args, + }); + } else { + typeSelections.push({ + kind: Kind.FIELD, name: { kind: Kind.NAME, - value: value.fieldName, + value: '__typename', }, - }; - - typeSelections.push(field); + }); } + + Object.keys(fieldsForType).forEach(key => { + const value = fieldsForType[key]; + if (value.type instanceof GraphQLScalarType) { + const args = value.args + ? Object.keys(value.args).map(k => { + const v = value.args![k]; + return { + kind: Kind.ARGUMENT, + value: { + kind: v.kind, + value: v.value, + }, + name: { + kind: Kind.NAME, + value: k, + }, + } as ArgumentNode; + }) + : []; + const field: FieldNode = { + kind: Kind.FIELD, + arguments: args, + name: { + kind: Kind.NAME, + value: value.fieldName, + }, + }; + + typeSelections.push(field); + } else if ( + value.type instanceof GraphQLObjectType && + !visited.has(value.type.name) && + depth < maxDepth + ) { + visited.add(value.type.name); + const fieldSelections: Array = []; + + populateSelections( + value.type, + fieldSelections, + skipType.test(value.type.name) ? depth : depth + 1 + ); + + const args = value.args + ? Object.keys(value.args).map(k => { + const v = value.args![k]; + return { + kind: Kind.ARGUMENT, + value: { + kind: v.kind, + value: v.value, + }, + name: { + kind: Kind.NAME, + value: k, + }, + } as ArgumentNode; + }) + : []; + + const field: FieldNode = { + kind: Kind.FIELD, + selectionSet: { + kind: Kind.SELECTION_SET, + selections: fieldSelections, + }, + arguments: args, + name: { + kind: Kind.NAME, + value: value.fieldName, + }, + }; + + typeSelections.push(field); + } + }); }); - }); - }; - - visited.add(type.name); - const selections: Array< - FieldNode | InlineFragmentNode | FragmentSpreadNode - > = node.selectionSet ? [...node.selectionSet.selections] : []; - populateSelections(type, selections, 0); - - return { - ...node, - selectionSet: { - kind: Kind.SELECTION_SET, - selections, - }, - directives, - }; - } - }); + }; - return { - ...op, - query: document, - }; - }; + visited.add(type.name); + const selections: Array< + FieldNode | InlineFragmentNode | FragmentSpreadNode + > = node.selectionSet ? [...node.selectionSet.selections] : []; + populateSelections(type, selections, 0); - const readFromSelectionSet = ( - type: GraphQLObjectType | GraphQLInterfaceType, - selections: readonly SelectionNode[], - seenFields: Record = {} - ) => { - if (isAbstractType(type)) { - // TODO: should we add this to typeParents/typeFields as well? - schema.getPossibleTypes(type).forEach(t => { - readFromSelectionSet(t, selections); + return { + ...node, + selectionSet: { + kind: Kind.SELECTION_SET, + selections, + }, + directives, + }; + } }); - } else { - const fieldMap = type.getFields(); - let args: null | Record = null; - for (let i = 0; i < selections.length; i++) { - const selection = selections[i]; - - if (selection.kind === Kind.FRAGMENT_SPREAD) { - const fragmentName = getName(selection); + return { + ...op, + query: document, + }; + }; - const fragment = userFragments[fragmentName]; + const readFromSelectionSet = ( + type: GraphQLObjectType | GraphQLInterfaceType, + selections: readonly SelectionNode[], + seenFields: Record = {} + ) => { + if (isAbstractType(type)) { + // TODO: should we add this to typeParents/typeFields as well? + schema.getPossibleTypes(type).forEach(t => { + readFromSelectionSet(t, selections); + }); + } else { + const fieldMap = type.getFields(); + + let args: null | Record = null; + for (let i = 0; i < selections.length; i++) { + const selection = selections[i]; + + if (selection.kind === Kind.FRAGMENT_SPREAD) { + const fragmentName = getName(selection); + + const fragment = userFragments[fragmentName]; + + if (fragment) { + readFromSelectionSet(type, fragment.selectionSet.selections); + } - if (fragment) { - readFromSelectionSet(type, fragment.selectionSet.selections); + continue; } - continue; - } + if (selection.kind === Kind.INLINE_FRAGMENT) { + readFromSelectionSet(type, selection.selectionSet.selections); - if (selection.kind === Kind.INLINE_FRAGMENT) { - readFromSelectionSet(type, selection.selectionSet.selections); + continue; + } - continue; - } + if (selection.kind !== Kind.FIELD) continue; - if (selection.kind !== Kind.FIELD) continue; + const fieldName = selection.name.value; + if (!fieldMap[fieldName]) continue; - const fieldName = selection.name.value; - if (!fieldMap[fieldName]) continue; + const ownerType = + seenFields[fieldName] || (seenFields[fieldName] = type); - const ownerType = - seenFields[fieldName] || (seenFields[fieldName] = type); + let fields = typeFields.get(ownerType.name); + if (!fields) typeFields.set(type.name, (fields = {})); - let fields = typeFields.get(ownerType.name); - if (!fields) typeFields.set(type.name, (fields = {})); + const childType = unwrapType( + fieldMap[fieldName].type + ) as GraphQLObjectType; + + if (selection.arguments && selection.arguments.length) { + args = {}; + for (let j = 0; j < selection.arguments.length; j++) { + const argNode = selection.arguments[j]; + args[argNode.name.value] = { + value: valueFromASTUntyped( + argNode.value, + currentVariables as any + ), + kind: argNode.value.kind, + }; + } + } - const childType = unwrapType( - fieldMap[fieldName].type - ) as GraphQLObjectType; + const fieldKey = args + ? `${fieldName}:${stringifyVariables(args)}` + : fieldName; - if (selection.arguments && selection.arguments.length) { - args = {}; - for (let j = 0; j < selection.arguments.length; j++) { - const argNode = selection.arguments[j]; - args[argNode.name.value] = { - value: valueFromASTUntyped( - argNode.value, - currentVariables as any - ), - kind: argNode.value.kind, + if (!fields[fieldKey]) { + fields[fieldKey] = { + type: childType, + args, + fieldName, }; } + + if (selection.selectionSet) { + readFromSelectionSet(childType, selection.selectionSet.selections); + } } + } + }; - const fieldKey = args - ? `${fieldName}:${stringifyVariables(args)}` - : fieldName; + /** Handle query and extract fragments. */ + const handleIncomingQuery = ({ + key, + kind, + query, + variables, + }: Operation) => { + if (kind !== 'query') { + return; + } - if (!fields[fieldKey]) { - fields[fieldKey] = { - type: childType, - args, - fieldName, - }; - } + activeOperations.add(key); + if (parsedOperations.has(key)) { + return; + } + + parsedOperations.add(key); + currentVariables = variables || {}; - if (selection.selectionSet) { - readFromSelectionSet(childType, selection.selectionSet.selections); + for (let i = query.definitions.length; i--; ) { + const definition = query.definitions[i]; + + if (definition.kind === Kind.FRAGMENT_DEFINITION) { + userFragments[getName(definition)] = definition; + } else if (definition.kind === Kind.OPERATION_DEFINITION) { + const type = schema.getQueryType()!; + readFromSelectionSet( + unwrapType(type) as GraphQLObjectType, + definition.selectionSet.selections! + ); } } - } - }; + }; - /** Handle query and extract fragments. */ - const handleIncomingQuery = ({ key, kind, query, variables }: Operation) => { - if (kind !== 'query') { - return; - } - - activeOperations.add(key); - if (parsedOperations.has(key)) { - return; - } - - parsedOperations.add(key); - currentVariables = variables || {}; - - for (let i = query.definitions.length; i--; ) { - const definition = query.definitions[i]; - - if (definition.kind === Kind.FRAGMENT_DEFINITION) { - userFragments[getName(definition)] = definition; - } else if (definition.kind === Kind.OPERATION_DEFINITION) { - const type = schema.getQueryType()!; - readFromSelectionSet( - unwrapType(type) as GraphQLObjectType, - definition.selectionSet.selections! - ); + const handleIncomingTeardown = ({ key, kind }: Operation) => { + // TODO: we might want to remove fields here, the risk becomes + // that data in the cache would become stale potentially + if (kind === 'teardown') { + activeOperations.delete(key); } - } - }; - - const handleIncomingTeardown = ({ key, kind }: Operation) => { - // TODO: we might want to remove fields here, the risk becomes - // that data in the cache would become stale potentially - if (kind === 'teardown') { - activeOperations.delete(key); - } - }; + }; - return ops$ => { - return pipe( - ops$, - tap(handleIncomingQuery), - tap(handleIncomingTeardown), - map(handleIncomingMutation), - forward - ); + return ops$ => { + return pipe( + ops$, + tap(handleIncomingQuery), + tap(handleIncomingTeardown), + map(handleIncomingMutation), + forward + ); + }; }; -}; diff --git a/exchanges/refocus/src/refocusExchange.test.ts b/exchanges/refocus/src/refocusExchange.test.ts index 4c89432a..2e4d53ee 100644 --- a/exchanges/refocus/src/refocusExchange.test.ts +++ b/exchanges/refocus/src/refocusExchange.test.ts @@ -47,15 +47,13 @@ beforeEach(() => { }); it(`attaches a listener and redispatches queries on call`, () => { - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - return { - ...queryResponse, - operation: forwardOp, - data: queryOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + return { + ...queryResponse, + operation: forwardOp, + data: queryOneData, + }; + }); let listener; const spy = vi diff --git a/exchanges/refocus/src/refocusExchange.ts b/exchanges/refocus/src/refocusExchange.ts index c6c4228f..4be61981 100644 --- a/exchanges/refocus/src/refocusExchange.ts +++ b/exchanges/refocus/src/refocusExchange.ts @@ -2,42 +2,43 @@ import { pipe, tap } from 'wonka'; import { Exchange, Operation } from '@urql/core'; export const refocusExchange = (): Exchange => { - return ({ client, forward }) => ops$ => { - if (typeof window === 'undefined') { - return forward(ops$); - } + return ({ client, forward }) => + ops$ => { + if (typeof window === 'undefined') { + return forward(ops$); + } - const watchedOperations = new Map(); - const observedOperations = new Map(); + const watchedOperations = new Map(); + const observedOperations = new Map(); - window.addEventListener('visibilitychange', () => { - if ( - typeof document !== 'object' || - document.visibilityState === 'visible' - ) { - watchedOperations.forEach(op => { - client.reexecuteOperation( - client.createRequestOperation('query', op, { - ...op.context, - requestPolicy: 'cache-and-network', - }) - ); - }); - } - }); + window.addEventListener('visibilitychange', () => { + if ( + typeof document !== 'object' || + document.visibilityState === 'visible' + ) { + watchedOperations.forEach(op => { + client.reexecuteOperation( + client.createRequestOperation('query', op, { + ...op.context, + requestPolicy: 'cache-and-network', + }) + ); + }); + } + }); - const processIncomingOperation = (op: Operation) => { - if (op.kind === 'query' && !observedOperations.has(op.key)) { - observedOperations.set(op.key, 1); - watchedOperations.set(op.key, op); - } + const processIncomingOperation = (op: Operation) => { + if (op.kind === 'query' && !observedOperations.has(op.key)) { + observedOperations.set(op.key, 1); + watchedOperations.set(op.key, op); + } - if (op.kind === 'teardown' && observedOperations.has(op.key)) { - observedOperations.delete(op.key); - watchedOperations.delete(op.key); - } - }; + if (op.kind === 'teardown' && observedOperations.has(op.key)) { + observedOperations.delete(op.key); + watchedOperations.delete(op.key); + } + }; - return forward(pipe(ops$, tap(processIncomingOperation))); - }; + return forward(pipe(ops$, tap(processIncomingOperation))); + }; }; diff --git a/exchanges/request-policy/src/requestPolicyExchange.test.ts b/exchanges/request-policy/src/requestPolicyExchange.test.ts index 98de97e4..ad87439b 100644 --- a/exchanges/request-policy/src/requestPolicyExchange.test.ts +++ b/exchanges/request-policy/src/requestPolicyExchange.test.ts @@ -51,15 +51,13 @@ beforeEach(() => { }); it(`upgrades to cache-and-network`, async () => { - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - return { - ...queryResponse, - operation: forwardOp, - data: queryOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + return { + ...queryResponse, + operation: forwardOp, + data: queryOneData, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -98,15 +96,13 @@ it(`upgrades to cache-and-network`, async () => { }); it(`doesn't upgrade when shouldUpgrade returns false`, async () => { - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - return { - ...queryResponse, - operation: forwardOp, - data: queryOneData, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + return { + ...queryResponse, + operation: forwardOp, + data: queryOneData, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { diff --git a/exchanges/request-policy/src/requestPolicyExchange.ts b/exchanges/request-policy/src/requestPolicyExchange.ts index c1ed5047..4259cf1e 100644 --- a/exchanges/request-policy/src/requestPolicyExchange.ts +++ b/exchanges/request-policy/src/requestPolicyExchange.ts @@ -55,48 +55,48 @@ export interface Options { * }); * ``` */ -export const requestPolicyExchange = (options: Options): Exchange => ({ - forward, -}) => { - const operations = new Map(); - const TTL = (options || {}).ttl || defaultTTL; +export const requestPolicyExchange = + (options: Options): Exchange => + ({ forward }) => { + const operations = new Map(); + const TTL = (options || {}).ttl || defaultTTL; - const processIncomingOperation = (operation: Operation): Operation => { - if ( - operation.kind !== 'query' || - (operation.context.requestPolicy !== 'cache-first' && - operation.context.requestPolicy !== 'cache-only') - ) { - return operation; - } + const processIncomingOperation = (operation: Operation): Operation => { + if ( + operation.kind !== 'query' || + (operation.context.requestPolicy !== 'cache-first' && + operation.context.requestPolicy !== 'cache-only') + ) { + return operation; + } - const currentTime = new Date().getTime(); - const lastOccurrence = operations.get(operation.key) || 0; - if ( - currentTime - lastOccurrence > TTL && - (!options.shouldUpgrade || options.shouldUpgrade(operation)) - ) { - return makeOperation(operation.kind, operation, { - ...operation.context, - requestPolicy: 'cache-and-network', - }); - } + const currentTime = new Date().getTime(); + const lastOccurrence = operations.get(operation.key) || 0; + if ( + currentTime - lastOccurrence > TTL && + (!options.shouldUpgrade || options.shouldUpgrade(operation)) + ) { + return makeOperation(operation.kind, operation, { + ...operation.context, + requestPolicy: 'cache-and-network', + }); + } - return operation; - }; + return operation; + }; - const processIncomingResults = (result: OperationResult): void => { - const meta = result.operation.context.meta; - const isMiss = !meta || meta.cacheOutcome === 'miss'; - if (isMiss) { - operations.set(result.operation.key, new Date().getTime()); - } - }; + const processIncomingResults = (result: OperationResult): void => { + const meta = result.operation.context.meta; + const isMiss = !meta || meta.cacheOutcome === 'miss'; + if (isMiss) { + operations.set(result.operation.key, new Date().getTime()); + } + }; - return ops$ => { - return pipe( - forward(pipe(ops$, map(processIncomingOperation))), - tap(processIncomingResults) - ); + return ops$ => { + return pipe( + forward(pipe(ops$, map(processIncomingOperation))), + tap(processIncomingResults) + ); + }; }; -}; diff --git a/exchanges/retry/src/retryExchange.test.ts b/exchanges/retry/src/retryExchange.test.ts index 41be980d..2a418bea 100644 --- a/exchanges/retry/src/retryExchange.test.ts +++ b/exchanges/retry/src/retryExchange.test.ts @@ -85,19 +85,17 @@ it(`retries if it hits an error and works for multiple concurrent operations`, ( query: queryTwo, }); - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect( - forwardOp.key === op.key || forwardOp.key === opTwo.key - ).toBeTruthy(); - - return { - operation: forwardOp, - // @ts-ignore - error: forwardOp.key === 2 ? queryTwoError : queryOneError, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect( + forwardOp.key === op.key || forwardOp.key === opTwo.key + ).toBeTruthy(); + + return { + operation: forwardOp, + // @ts-ignore + error: forwardOp.key === 2 ? queryTwoError : queryOneError, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -146,18 +144,16 @@ it(`retries if it hits an error and works for multiple concurrent operations`, ( it('should retry x number of times and then return the successful result', () => { const numberRetriesBeforeSuccess = 3; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - // @ts-ignore - return { - operation: forwardOp, - ...(forwardOp.context.retryCount! >= numberRetriesBeforeSuccess - ? { data: queryOneData } - : { error: queryOneError }), - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + // @ts-ignore + return { + operation: forwardOp, + ...(forwardOp.context.retryCount! >= numberRetriesBeforeSuccess + ? { data: queryOneData } + : { error: queryOneError }), + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -195,16 +191,14 @@ it(`should still retry if retryIf undefined but there is a networkError`, () => ...queryOneError, networkError: 'scary network error', }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { - operation: forwardOp, - // @ts-ignore - error: errorWithNetworkError, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { + operation: forwardOp, + // @ts-ignore + error: errorWithNetworkError, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -238,16 +232,14 @@ it('should allow retryWhen to return falsy value and act as replacement of retry ...queryOneError, networkError: 'scary network error', }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { - operation: forwardOp, - // @ts-ignore - error: errorWithNetworkError, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { + operation: forwardOp, + // @ts-ignore + error: errorWithNetworkError, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { @@ -285,16 +277,14 @@ it('should allow retryWhen to return new operations when retrying', () => { ...queryOneError, networkError: 'scary network error', }; - const response = vi.fn( - (forwardOp: Operation): OperationResult => { - expect(forwardOp.key).toBe(op.key); - return { - operation: forwardOp, - // @ts-ignore - error: errorWithNetworkError, - }; - } - ); + const response = vi.fn((forwardOp: Operation): OperationResult => { + expect(forwardOp.key).toBe(op.key); + return { + operation: forwardOp, + // @ts-ignore + error: errorWithNetworkError, + }; + }); const result = vi.fn(); const forward: ExchangeIO = ops$ => { diff --git a/exchanges/retry/src/retryExchange.ts b/exchanges/retry/src/retryExchange.ts index a8042079..d58a728b 100644 --- a/exchanges/retry/src/retryExchange.ts +++ b/exchanges/retry/src/retryExchange.ts @@ -46,106 +46,106 @@ export const retryExchange = ({ const MAX_ATTEMPTS = maxNumberAttempts || 2; const RANDOM_DELAY = randomDelay !== undefined ? !!randomDelay : true; - return ({ forward, dispatchDebug }) => ops$ => { - const sharedOps$ = pipe(ops$, share); - const { - source: retry$, - next: nextRetryOperation, - } = makeSubject(); - - const retryWithBackoff$ = pipe( - retry$, - mergeMap((op: Operation) => { - const { key, context } = op; - const retryCount = (context.retryCount || 0) + 1; - let delayAmount = context.retryDelay || MIN_DELAY; - - const backoffFactor = Math.random() + 1.5; - // if randomDelay is enabled and it won't exceed the max delay, apply a random - // amount to the delay to avoid thundering herd problem - if (RANDOM_DELAY && delayAmount * backoffFactor < MAX_DELAY) { - delayAmount *= backoffFactor; - } - - // We stop the retries if a teardown event for this operation comes in - // But if this event comes through regularly we also stop the retries, since it's - // basically the query retrying itself, no backoff should be added! - const teardown$ = pipe( - sharedOps$, - filter(op => { - return ( - (op.kind === 'query' || op.kind === 'teardown') && op.key === key - ); - }) - ); - - dispatchDebug({ - type: 'retryAttempt', - message: `The operation has failed and a retry has been triggered (${retryCount} / ${MAX_ATTEMPTS})`, - operation: op, - data: { - retryCount, - }, - }); - - // Add new retryDelay and retryCount to operation - return pipe( - fromValue( - makeOperation(op.kind, op, { - ...op.context, - retryDelay: delayAmount, - retryCount, + return ({ forward, dispatchDebug }) => + ops$ => { + const sharedOps$ = pipe(ops$, share); + const { source: retry$, next: nextRetryOperation } = + makeSubject(); + + const retryWithBackoff$ = pipe( + retry$, + mergeMap((op: Operation) => { + const { key, context } = op; + const retryCount = (context.retryCount || 0) + 1; + let delayAmount = context.retryDelay || MIN_DELAY; + + const backoffFactor = Math.random() + 1.5; + // if randomDelay is enabled and it won't exceed the max delay, apply a random + // amount to the delay to avoid thundering herd problem + if (RANDOM_DELAY && delayAmount * backoffFactor < MAX_DELAY) { + delayAmount *= backoffFactor; + } + + // We stop the retries if a teardown event for this operation comes in + // But if this event comes through regularly we also stop the retries, since it's + // basically the query retrying itself, no backoff should be added! + const teardown$ = pipe( + sharedOps$, + filter(op => { + return ( + (op.kind === 'query' || op.kind === 'teardown') && + op.key === key + ); }) - ), - debounce(() => delayAmount), - // Stop retry if a teardown comes in - takeUntil(teardown$) - ); - }) - ); - - const result$ = pipe( - merge([sharedOps$, retryWithBackoff$]), - forward, - share, - filter(res => { - // Only retry if the error passes the conditional retryIf function (if passed) - // or if the error contains a networkError - if ( - !res.error || - (retryIf - ? !retryIf(res.error, res.operation) - : !retryWith && !res.error.networkError) - ) { + ); + + dispatchDebug({ + type: 'retryAttempt', + message: `The operation has failed and a retry has been triggered (${retryCount} / ${MAX_ATTEMPTS})`, + operation: op, + data: { + retryCount, + }, + }); + + // Add new retryDelay and retryCount to operation + return pipe( + fromValue( + makeOperation(op.kind, op, { + ...op.context, + retryDelay: delayAmount, + retryCount, + }) + ), + debounce(() => delayAmount), + // Stop retry if a teardown comes in + takeUntil(teardown$) + ); + }) + ); + + const result$ = pipe( + merge([sharedOps$, retryWithBackoff$]), + forward, + share, + filter(res => { + // Only retry if the error passes the conditional retryIf function (if passed) + // or if the error contains a networkError + if ( + !res.error || + (retryIf + ? !retryIf(res.error, res.operation) + : !retryWith && !res.error.networkError) + ) { + return true; + } + + const maxNumberAttemptsExceeded = + (res.operation.context.retryCount || 0) >= MAX_ATTEMPTS - 1; + + if (!maxNumberAttemptsExceeded) { + const operation = retryWith + ? retryWith(res.error, res.operation) + : res.operation; + if (!operation) return true; + + // Send failed responses to be retried by calling next on the retry$ subject + // Exclude operations that have been retried more than the specified max + nextRetryOperation(operation); + return false; + } + + dispatchDebug({ + type: 'retryExhausted', + message: + 'Maximum number of retries has been reached. No further retries will be performed.', + operation: res.operation, + }); + return true; - } - - const maxNumberAttemptsExceeded = - (res.operation.context.retryCount || 0) >= MAX_ATTEMPTS - 1; - - if (!maxNumberAttemptsExceeded) { - const operation = retryWith - ? retryWith(res.error, res.operation) - : res.operation; - if (!operation) return true; - - // Send failed responses to be retried by calling next on the retry$ subject - // Exclude operations that have been retried more than the specified max - nextRetryOperation(operation); - return false; - } - - dispatchDebug({ - type: 'retryExhausted', - message: - 'Maximum number of retries has been reached. No further retries will be performed.', - operation: res.operation, - }); - - return true; - }) - ) as Source; - - return result$; - }; + }) + ) as Source; + + return result$; + }; }; diff --git a/package.json b/package.json index e0750b7f..92e2e38d 100644 --- a/package.json +++ b/package.json @@ -4,9 +4,9 @@ "test": "vitest", "check": "tsc", "lint": "eslint --ext=js,jsx,ts,tsx .", - "build": "node ./scripts/actions/build-all.js", + "build": "node ./scripts/actions/build-all.mjs", "postinstall": "node ./scripts/prepare/postinstall.js", - "pack": "node ./scripts/actions/pack-all.js", + "pack": "node ./scripts/actions/pack-all.mjs", "changeset:version": "changeset version && pnpm install --lockfile-only", "changeset:publish": "changeset publish" }, @@ -45,67 +45,70 @@ }, "overrides": { "@types/react": "^17.0.39", + "graphql": "^16.6.0", "react": "^17.0.2", "react-dom": "^17.0.2", "react-is": "^17.0.2", "styled-components": "^5.2.3", + "vite": "^3.2.4", "wonka": "^6.2.4" } }, "devDependencies": { - "@actions/artifact": "^1.1.0", + "@actions/artifact": "^1.1.1", "@actions/core": "^1.10.0", "@babel/core": "^7.21.3", "@babel/plugin-transform-block-scoping": "^7.21.0", "@babel/plugin-transform-react-jsx": "^7.21.0", "@changesets/cli": "^2.26.0", - "@changesets/get-github-info": "0.5.0", + "@changesets/get-github-info": "0.5.2", + "@npmcli/arborist": "^6.2.5", "@rollup/plugin-babel": "^6.0.3", "@rollup/plugin-commonjs": "^24.0.1", "@rollup/plugin-node-resolve": "^15.0.1", "@rollup/plugin-replace": "^5.0.2", - "@rollup/plugin-sucrase": "^5.0.0", + "@rollup/plugin-sucrase": "^5.0.1", "@rollup/plugin-terser": "^0.4.0", - "@rollup/pluginutils": "^5.0.0", - "@types/node": "^18.11.9", - "@typescript-eslint/eslint-plugin": "^5.44.0", - "@typescript-eslint/parser": "^5.44.0", - "cypress": "^11.0.0", - "dotenv": "^8.2.0", - "eslint": "^8.28.0", - "eslint-config-prettier": "^8.3.0", + "@rollup/pluginutils": "^5.0.2", + "@types/node": "^18.15.3", + "@typescript-eslint/eslint-plugin": "^5.55.0", + "@typescript-eslint/parser": "^5.55.0", + "cypress": "^12.8.1", + "dotenv": "^16.0.3", + "eslint": "^8.36.0", + "eslint-config-prettier": "^8.7.0", "eslint-plugin-es5": "^1.5.0", - "eslint-plugin-prettier": "^3.4.0", - "eslint-plugin-react": "^7.31.11", + "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", - "execa": "^5.0.0", - "glob": "^7.1.6", - "graphql": "^16.0.0", + "execa": "^7.1.1", + "glob": "^9.3.0", + "graphql": "^16.6.0", "husky-v4": "^4.3.8", "invariant": "^2.2.4", - "jsdom": "^20.0.3", - "lint-staged": "^10.5.4", - "npm-packlist": "^2.1.5", + "jsdom": "^21.1.1", + "lint-staged": "^13.2.0", + "npm-packlist": "^7.0.4", "npm-run-all": "^4.1.5", - "prettier": "^2.2.1", + "prettier": "^2.8.4", "react": "^17.0.2", "react-dom": "^17.0.2", "react-is": "^17.0.2", - "rimraf": "^3.0.2", + "rimraf": "^4.4.0", "rollup": "^3.19.1", "rollup-plugin-cjs-check": "^1.0.2", "rollup-plugin-dts": "^5.2.0", "rollup-plugin-generate-package-json": "^3.2.0", "rollup-plugin-visualizer": "^5.9.0", - "tar": "^6.1.0", + "tar": "^6.1.13", "terser": "^5.16.6", "typescript": "^4.9.5", - "vite": "^3.0.0", - "vite-tsconfig-paths": "^4.0.0-alpha.3", - "vitest": "^0.29.0" + "vite": "^3.2.4", + "vite-tsconfig-paths": "^4.0.7", + "vitest": "^0.29.3" }, "dependencies": { "@actions/github": "^5.1.1", - "node-fetch": "^3.3.0" + "node-fetch": "^3.3.1" } } diff --git a/packages/core/src/client.test.ts b/packages/core/src/client.test.ts index a1130265..0963d0e5 100755 --- a/packages/core/src/client.test.ts +++ b/packages/core/src/client.test.ts @@ -355,33 +355,35 @@ describe('queuing behavior', () => { it('queues reexecuteOperation, which dispatchOperation consumes', () => { const output: Array = []; - const exchange: Exchange = ({ client }) => ops$ => { - return pipe( - ops$, - filter(op => op.kind !== 'teardown'), - tap(op => { - output.push(op); - if ( - op.key === queryOperation.key && - op.context.requestPolicy === 'cache-first' - ) { - client.reexecuteOperation({ - ...op, - context: { - ...op.context, - requestPolicy: 'network-only', - }, - }); - } - }), - map(op => ({ - stale: false, - hasNext: false, - data: op.key, - operation: op, - })) - ); - }; + const exchange: Exchange = + ({ client }) => + ops$ => { + return pipe( + ops$, + filter(op => op.kind !== 'teardown'), + tap(op => { + output.push(op); + if ( + op.key === queryOperation.key && + op.context.requestPolicy === 'cache-first' + ) { + client.reexecuteOperation({ + ...op, + context: { + ...op.context, + requestPolicy: 'network-only', + }, + }); + } + }), + map(op => ({ + stale: false, + hasNext: false, + data: op.key, + operation: op, + })) + ); + }; const client = createClient({ url: 'test', diff --git a/packages/core/src/client.ts b/packages/core/src/client.ts index 86b31730..e31ab66c 100755 --- a/packages/core/src/client.ts +++ b/packages/core/src/client.ts @@ -849,4 +849,4 @@ export const Client: new (opts: ClientOptions) => Client = function Client( * @param opts - A {@link ClientOptions} objects with options for the `Client`. * @returns A {@link Client} instantiated with `opts`. */ -export const createClient = (Client as any) as (opts: ClientOptions) => Client; +export const createClient = Client as any as (opts: ClientOptions) => Client; diff --git a/packages/core/src/exchanges/compose.test.ts b/packages/core/src/exchanges/compose.test.ts index 3e6d6660..888d1fcb 100644 --- a/packages/core/src/exchanges/compose.test.ts +++ b/packages/core/src/exchanges/compose.test.ts @@ -8,7 +8,10 @@ import { noop } from '../utils'; const mockClient = {} as any; const forward = vi.fn(); -const noopExchange: Exchange = ({ forward }) => ops$ => forward(ops$); +const noopExchange: Exchange = + ({ forward }) => + ops$ => + forward(ops$); beforeEach(() => { vi.spyOn(Date, 'now').mockReturnValue(1234); diff --git a/packages/core/src/exchanges/compose.ts b/packages/core/src/exchanges/compose.ts index 456dc672..798bda1c 100644 --- a/packages/core/src/exchanges/compose.ts +++ b/packages/core/src/exchanges/compose.ts @@ -14,23 +14,21 @@ import type { ExchangeIO, Exchange, ExchangeInput } from '../types'; * This simply merges all exchanges into one and is used by the {@link Client} * to merge the `exchanges` option it receives. */ -export const composeExchanges = (exchanges: Exchange[]): Exchange => ({ - client, - forward, - dispatchDebug, -}: ExchangeInput): ExchangeIO => - exchanges.reduceRight( - (forward, exchange) => - exchange({ - client, - forward, - dispatchDebug(event) { - dispatchDebug({ - timestamp: Date.now(), - source: exchange.name, - ...event, - }); - }, - }), - forward - ); +export const composeExchanges = + (exchanges: Exchange[]): Exchange => + ({ client, forward, dispatchDebug }: ExchangeInput): ExchangeIO => + exchanges.reduceRight( + (forward, exchange) => + exchange({ + client, + forward, + dispatchDebug(event) { + dispatchDebug({ + timestamp: Date.now(), + source: exchange.name, + ...event, + }); + }, + }), + forward + ); diff --git a/packages/core/src/exchanges/dedup.ts b/packages/core/src/exchanges/dedup.ts index 093a5501..15499502 100644 --- a/packages/core/src/exchanges/dedup.ts +++ b/packages/core/src/exchanges/dedup.ts @@ -4,4 +4,7 @@ import { Exchange } from '../types'; * @deprecated * This exchange's functionality is now built into the {@link Client}. */ -export const dedupExchange: Exchange = ({ forward }) => ops$ => forward(ops$); +export const dedupExchange: Exchange = + ({ forward }) => + ops$ => + forward(ops$); diff --git a/packages/core/src/exchanges/fallback.ts b/packages/core/src/exchanges/fallback.ts index b29bc9db..dfe65a8b 100644 --- a/packages/core/src/exchanges/fallback.ts +++ b/packages/core/src/exchanges/fallback.ts @@ -12,30 +12,30 @@ import { ExchangeIO, ExchangeInput } from '../types'; */ export const fallbackExchange: ({ dispatchDebug, -}: Pick) => ExchangeIO = ({ - dispatchDebug, -}) => ops$ => { - if (process.env.NODE_ENV !== 'production') { - ops$ = pipe( - ops$, - tap(operation => { - if ( - operation.kind !== 'teardown' && - process.env.NODE_ENV !== 'production' - ) { - const message = `No exchange has handled operations of kind "${operation.kind}". Check whether you've added an exchange responsible for these operations.`; +}: Pick) => ExchangeIO = + ({ dispatchDebug }) => + ops$ => { + if (process.env.NODE_ENV !== 'production') { + ops$ = pipe( + ops$, + tap(operation => { + if ( + operation.kind !== 'teardown' && + process.env.NODE_ENV !== 'production' + ) { + const message = `No exchange has handled operations of kind "${operation.kind}". Check whether you've added an exchange responsible for these operations.`; - dispatchDebug({ - type: 'fallbackCatch', - message, - operation, - }); - console.warn(message); - } - }) - ); - } + dispatchDebug({ + type: 'fallbackCatch', + message, + operation, + }); + console.warn(message); + } + }) + ); + } - // All operations that skipped through the entire exchange chain should be filtered from the output - return filter((_x): _x is never => false)(ops$); -}; + // All operations that skipped through the entire exchange chain should be filtered from the output + return filter((_x): _x is never => false)(ops$); + }; diff --git a/packages/core/src/exchanges/fetch.test.ts b/packages/core/src/exchanges/fetch.test.ts index 9b657a6e..3c739aa8 100755 --- a/packages/core/src/exchanges/fetch.test.ts +++ b/packages/core/src/exchanges/fetch.test.ts @@ -51,11 +51,11 @@ const response = JSON.stringify({ const exchangeArgs = { dispatchDebug: vi.fn(), forward: () => empty as Source, - client: ({ + client: { debugTarget: { dispatchEvent: vi.fn(), }, - } as any) as Client, + } as any as Client, }; describe('on success', () => { diff --git a/packages/core/src/exchanges/map.ts b/packages/core/src/exchanges/map.ts index eb0d65d8..229b8f9c 100644 --- a/packages/core/src/exchanges/map.ts +++ b/packages/core/src/exchanges/map.ts @@ -71,26 +71,27 @@ export const mapExchange = ({ onResult, onError, }: MapExchangeOpts): Exchange => { - return ({ forward }) => ops$ => { - return pipe( - pipe( - ops$, - mergeMap(operation => { - const newOperation = - (onOperation && onOperation(operation)) || operation; - return 'then' in newOperation - ? fromPromise(newOperation) - : fromValue(newOperation); + return ({ forward }) => + ops$ => { + return pipe( + pipe( + ops$, + mergeMap(operation => { + const newOperation = + (onOperation && onOperation(operation)) || operation; + return 'then' in newOperation + ? fromPromise(newOperation) + : fromValue(newOperation); + }) + ), + forward, + mergeMap(result => { + if (onError && result.error) onError(result.error, result.operation); + const newResult = (onResult && onResult(result)) || result; + return 'then' in newResult + ? fromPromise(newResult) + : fromValue(newResult); }) - ), - forward, - mergeMap(result => { - if (onError && result.error) onError(result.error, result.operation); - const newResult = (onResult && onResult(result)) || result; - return 'then' in newResult - ? fromPromise(newResult) - : fromValue(newResult); - }) - ); - }; + ); + }; }; diff --git a/packages/core/src/exchanges/ssr.ts b/packages/core/src/exchanges/ssr.ts index 2f7732b9..1bc5d6e0 100644 --- a/packages/core/src/exchanges/ssr.ts +++ b/packages/core/src/exchanges/ssr.ts @@ -208,79 +208,81 @@ export const ssrExchange = (params: SSRExchangeParams = {}): SSRExchange => { // The SSR Exchange is a temporary cache that can populate results into data for suspense // On the client it can be used to retrieve these temporary results from a rehydrated cache - const ssr: SSRExchange = ({ client, forward }) => ops$ => { - // params.isClient tells us whether we're on the client-side - // By default we assume that we're on the client if suspense-mode is disabled - const isClient = - params && typeof params.isClient === 'boolean' - ? !!params.isClient - : !client.suspense; + const ssr: SSRExchange = + ({ client, forward }) => + ops$ => { + // params.isClient tells us whether we're on the client-side + // By default we assume that we're on the client if suspense-mode is disabled + const isClient = + params && typeof params.isClient === 'boolean' + ? !!params.isClient + : !client.suspense; - const sharedOps$ = share(ops$); + const sharedOps$ = share(ops$); - let forwardedOps$ = pipe( - sharedOps$, - filter( - operation => - !data[operation.key] || - !!data[operation.key]!.hasNext || - operation.context.requestPolicy === 'network-only' - ), - forward - ); - - // NOTE: Since below we might delete the cached entry after accessing - // it once, cachedOps$ needs to be merged after forwardedOps$ - let cachedOps$ = pipe( - sharedOps$, - filter( - operation => - !!data[operation.key] && - operation.context.requestPolicy !== 'network-only' - ), - map(op => { - const serialized = data[op.key]!; - const cachedResult = deserializeResult( - op, - serialized, - includeExtensions - ); - - if (staleWhileRevalidate && !revalidated.has(op.key)) { - cachedResult.stale = true; - revalidated.add(op.key); - reexecuteOperation(client, op); - } + let forwardedOps$ = pipe( + sharedOps$, + filter( + operation => + !data[operation.key] || + !!data[operation.key]!.hasNext || + operation.context.requestPolicy === 'network-only' + ), + forward + ); - const result: OperationResult = { - ...cachedResult, - operation: addMetadata(op, { - cacheOutcome: 'hit', - }), - }; - return result; - }) - ); + // NOTE: Since below we might delete the cached entry after accessing + // it once, cachedOps$ needs to be merged after forwardedOps$ + let cachedOps$ = pipe( + sharedOps$, + filter( + operation => + !!data[operation.key] && + operation.context.requestPolicy !== 'network-only' + ), + map(op => { + const serialized = data[op.key]!; + const cachedResult = deserializeResult( + op, + serialized, + includeExtensions + ); - if (!isClient) { - // On the server we cache results in the cache as they're resolved - forwardedOps$ = pipe( - forwardedOps$, - tap((result: OperationResult) => { - const { operation } = result; - if (operation.kind !== 'mutation') { - const serialized = serializeResult(result, includeExtensions); - data[operation.key] = serialized; + if (staleWhileRevalidate && !revalidated.has(op.key)) { + cachedResult.stale = true; + revalidated.add(op.key); + reexecuteOperation(client, op); } + + const result: OperationResult = { + ...cachedResult, + operation: addMetadata(op, { + cacheOutcome: 'hit', + }), + }; + return result; }) ); - } else { - // On the client we delete results from the cache as they're resolved - cachedOps$ = pipe(cachedOps$, tap(invalidate)); - } - return merge([forwardedOps$, cachedOps$]); - }; + if (!isClient) { + // On the server we cache results in the cache as they're resolved + forwardedOps$ = pipe( + forwardedOps$, + tap((result: OperationResult) => { + const { operation } = result; + if (operation.kind !== 'mutation') { + const serialized = serializeResult(result, includeExtensions); + data[operation.key] = serialized; + } + }) + ); + } else { + // On the client we delete results from the cache as they're resolved + cachedOps$ = pipe(cachedOps$, tap(invalidate)); + } + + return merge([forwardedOps$, cachedOps$]); + }; ssr.restoreData = (restore: SSRData) => { for (const key in restore) { diff --git a/packages/core/src/exchanges/subscription.ts b/packages/core/src/exchanges/subscription.ts index 4759573c..cf27b7e2 100644 --- a/packages/core/src/exchanges/subscription.ts +++ b/packages/core/src/exchanges/subscription.ts @@ -58,9 +58,7 @@ export interface ObservableLike { * @param observer - an {@link ObserverLike} object with result, error, and completion callbacks. * @returns a subscription handle providing an `unsubscribe` method to stop the subscription. */ - subscribe( - observer: ObserverLike - ): { + subscribe(observer: ObserverLike): { unsubscribe: () => void; }; } @@ -132,93 +130,98 @@ export interface SubscriptionExchangeOpts { * but is compatible with many libraries implementing GraphQL request or * subscription interfaces. */ -export const subscriptionExchange = ({ - forwardSubscription, - enableAllOperations, - isSubscriptionOperation, -}: SubscriptionExchangeOpts): Exchange => ({ client, forward }) => { - const createSubscriptionSource = ( - operation: Operation - ): Source => { - const observableish = forwardSubscription( - makeFetchBody(operation), - operation - ); - - return make(({ next, complete }) => { - let isComplete = false; - let sub: Subscription | void; - let result: OperationResult | void; - - Promise.resolve().then(() => { - if (isComplete) return; - - sub = observableish.subscribe({ - next(nextResult) { - next( - (result = result - ? mergeResultPatch(result, nextResult) - : makeResult(operation, nextResult)) - ); - }, - error(error) { - next(makeErrorResult(operation, error)); - }, - complete() { - if (!isComplete) { - isComplete = true; - if (operation.kind === 'subscription') { - client.reexecuteOperation( - makeOperation('teardown', operation, operation.context) - ); - } +export const subscriptionExchange = + ({ + forwardSubscription, + enableAllOperations, + isSubscriptionOperation, + }: SubscriptionExchangeOpts): Exchange => + ({ client, forward }) => { + const createSubscriptionSource = ( + operation: Operation + ): Source => { + const observableish = forwardSubscription( + makeFetchBody(operation), + operation + ); - if (result && result.hasNext) - next(mergeResultPatch(result, { hasNext: false })); - complete(); - } - }, + return make(({ next, complete }) => { + let isComplete = false; + let sub: Subscription | void; + let result: OperationResult | void; + + Promise.resolve().then(() => { + if (isComplete) return; + + sub = observableish.subscribe({ + next(nextResult) { + next( + (result = result + ? mergeResultPatch(result, nextResult) + : makeResult(operation, nextResult)) + ); + }, + error(error) { + next(makeErrorResult(operation, error)); + }, + complete() { + if (!isComplete) { + isComplete = true; + if (operation.kind === 'subscription') { + client.reexecuteOperation( + makeOperation('teardown', operation, operation.context) + ); + } + + if (result && result.hasNext) + next(mergeResultPatch(result, { hasNext: false })); + complete(); + } + }, + }); }); - }); - return () => { - isComplete = true; - if (sub) sub.unsubscribe(); - }; - }); - }; - const isSubscriptionOperationFn = - isSubscriptionOperation || - (operation => { - const { kind } = operation; - return ( - kind === 'subscription' || - (!!enableAllOperations && (kind === 'query' || kind === 'mutation')) - ); - }); - - return ops$ => { - const sharedOps$ = share(ops$); - const subscriptionResults$ = pipe( - sharedOps$, - filter(isSubscriptionOperationFn), - mergeMap(operation => { - const { key } = operation; - const teardown$ = pipe( - sharedOps$, - filter(op => op.kind === 'teardown' && op.key === key) + return () => { + isComplete = true; + if (sub) sub.unsubscribe(); + }; + }); + }; + const isSubscriptionOperationFn = + isSubscriptionOperation || + (operation => { + const { kind } = operation; + return ( + kind === 'subscription' || + (!!enableAllOperations && (kind === 'query' || kind === 'mutation')) ); + }); - return pipe(createSubscriptionSource(operation), takeUntil(teardown$)); - }) - ); + return ops$ => { + const sharedOps$ = share(ops$); + const subscriptionResults$ = pipe( + sharedOps$, + filter(isSubscriptionOperationFn), + mergeMap(operation => { + const { key } = operation; + const teardown$ = pipe( + sharedOps$, + filter(op => op.kind === 'teardown' && op.key === key) + ); + + return pipe( + createSubscriptionSource(operation), + takeUntil(teardown$) + ); + }) + ); - const forward$ = pipe( - sharedOps$, - filter(op => !isSubscriptionOperationFn(op)), - forward - ); + const forward$ = pipe( + sharedOps$, + filter(op => !isSubscriptionOperationFn(op)), + forward + ); - return merge([subscriptionResults$, forward$]); + return merge([subscriptionResults$, forward$]); + }; }; -}; diff --git a/packages/core/src/types.ts b/packages/core/src/types.ts index 20b85ac2..c418e879 100644 --- a/packages/core/src/types.ts +++ b/packages/core/src/types.ts @@ -755,9 +755,8 @@ export type DebugEventArg = { * which this type defines. * @internal */ -export type DebugEvent< - T extends keyof DebugEventTypes | string = string -> = DebugEventArg & { - timestamp: number; - source: string; -}; +export type DebugEvent = + DebugEventArg & { + timestamp: number; + source: string; + }; diff --git a/packages/core/src/utils/typenames.ts b/packages/core/src/utils/typenames.ts index d20fbbcb..144ff82c 100755 --- a/packages/core/src/utils/typenames.ts +++ b/packages/core/src/utils/typenames.ts @@ -109,5 +109,5 @@ export const formatDocument = (node: T): T => { formattedDocs.set(query.__key, result); } - return (result as unknown) as T; + return result as unknown as T; }; diff --git a/packages/next-urql/src/__tests__/with-urql-client.spec.ts b/packages/next-urql/src/__tests__/with-urql-client.spec.ts index bef0d00e..05ed404b 100644 --- a/packages/next-urql/src/__tests__/with-urql-client.spec.ts +++ b/packages/next-urql/src/__tests__/with-urql-client.spec.ts @@ -78,7 +78,7 @@ describe('withUrqlClient', () => { const token = Math.random().toString(36).slice(-10); let mockSsrExchange; - const mockContext = ({ + const mockContext = { AppTree: MockAppTree, pathname: '/', query: {}, @@ -89,7 +89,7 @@ describe('withUrqlClient', () => { }, } as NextUrqlPageContext['req'], urqlClient: {} as Client, - } as unknown) as NextUrqlPageContext; + } as unknown as NextUrqlPageContext; beforeEach(() => { Component = withUrqlClient( @@ -119,7 +119,7 @@ describe('withUrqlClient', () => { }); it('should not bind getInitialProps when there are no options', async () => { - const mockContext = ({ + const mockContext = { AppTree: MockAppTree, pathname: '/', query: {}, @@ -130,7 +130,7 @@ describe('withUrqlClient', () => { }, } as NextUrqlPageContext['req'], urqlClient: {} as Client, - } as unknown) as NextUrqlPageContext; + } as unknown as NextUrqlPageContext; const Component = withUrqlClient( (ssrExchange, ctx) => ({ url: 'http://localhost:3000', @@ -152,7 +152,7 @@ describe('withUrqlClient', () => { const token = Math.random().toString(36).slice(-10); let mockSsrExchange; - const mockContext = ({ + const mockContext = { AppTree: MockAppTree, pathname: '/', query: {}, @@ -163,7 +163,7 @@ describe('withUrqlClient', () => { }, } as NextUrqlPageContext['req'], urqlClient: {} as Client, - } as unknown) as NextUrqlPageContext; + } as unknown as NextUrqlPageContext; beforeEach(() => { Component = withUrqlClient( diff --git a/packages/preact-urql/package.json b/packages/preact-urql/package.json index 3c4d6e8f..f89f0f59 100644 --- a/packages/preact-urql/package.json +++ b/packages/preact-urql/package.json @@ -51,7 +51,7 @@ "@urql/core": "workspace:*", "@testing-library/preact": "^2.0.0", "graphql": "^16.0.0", - "preact": "^10.5.5" + "preact": "^10.13.0" }, "peerDependencies": { "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0", diff --git a/packages/preact-urql/src/components/Mutation.test.tsx b/packages/preact-urql/src/components/Mutation.test.tsx index 583e7ab7..cdfa3e00 100644 --- a/packages/preact-urql/src/components/Mutation.test.tsx +++ b/packages/preact-urql/src/components/Mutation.test.tsx @@ -35,9 +35,8 @@ describe('Mutation', () => { return h(Provider, { value: client, children: [ - // @ts-ignore h( - Mutation, + Mutation as any, { query }, ({ data, fetching, error, executeMutation }) => { execute = executeMutation; diff --git a/packages/preact-urql/src/context.ts b/packages/preact-urql/src/context.ts index aa29bf18..37a8c18e 100644 --- a/packages/preact-urql/src/context.ts +++ b/packages/preact-urql/src/context.ts @@ -3,9 +3,8 @@ import { useContext } from 'preact/hooks'; import { Client } from '@urql/core'; const OBJ = {}; -export const Context: import('preact').Context = createContext( - OBJ -); +export const Context: import('preact').Context = + createContext(OBJ); export const Provider: import('preact').Provider = Context.Provider; export const Consumer: import('preact').Consumer = diff --git a/packages/preact-urql/src/hooks/useMutation.ts b/packages/preact-urql/src/hooks/useMutation.ts index c8b47c59..2576ac6f 100644 --- a/packages/preact-urql/src/hooks/useMutation.ts +++ b/packages/preact-urql/src/hooks/useMutation.ts @@ -47,9 +47,8 @@ export function useMutation< const isMounted = useRef(true); const client = useClient(); - const [state, setState] = useState>( - initialState - ); + const [state, setState] = + useState>(initialState); const executeMutation = useCallback( (variables: Variables, context?: Partial) => { diff --git a/packages/react-urql/e2e-tests/useQuery.spec.tsx b/packages/react-urql/e2e-tests/useQuery.spec.tsx index de72e7af..95bc02fc 100644 --- a/packages/react-urql/e2e-tests/useQuery.spec.tsx +++ b/packages/react-urql/e2e-tests/useQuery.spec.tsx @@ -33,7 +33,7 @@ describe('Suspense', () => { let UrqlProvider; const PokemonsQuery = gql` - query($skip: Int!) { + query ($skip: Int!) { pokemons(limit: 10, skip: $skip) { id name diff --git a/packages/react-urql/package.json b/packages/react-urql/package.json index f139dc61..c229cc9b 100644 --- a/packages/react-urql/package.json +++ b/packages/react-urql/package.json @@ -40,21 +40,21 @@ "prepublishOnly": "run-s clean build" }, "devDependencies": { - "@cypress/react": "^7.0.1", - "@cypress/vite-dev-server": "^4.0.1", + "@cypress/react": "^7.0.2", + "@cypress/vite-dev-server": "^5.0.4", "@testing-library/react": "^11.1.1", "@testing-library/react-hooks": "^5.1.2", "@types/react": "^17.0.4", "@types/react-test-renderer": "^17.0.1", "@urql/core": "workspace:*", - "cypress": "^11.1.0", - "graphql": "^16.0.0", + "cypress": "^12.8.1", + "graphql": "^16.6.0", "react": "^17.0.1", "react-dom": "^17.0.1", "react-is": "^17.0.1", "react-ssr-prepass": "^1.1.2", "react-test-renderer": "^17.0.1", - "vite": "^3.0.0" + "vite": "^3.2.4" }, "peerDependencies": { "graphql": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0", diff --git a/packages/react-urql/src/context.ts b/packages/react-urql/src/context.ts index 4501d9da..90b2e575 100644 --- a/packages/react-urql/src/context.ts +++ b/packages/react-urql/src/context.ts @@ -2,9 +2,8 @@ import { createContext, useContext } from 'react'; import { Client } from '@urql/core'; const OBJ = {}; -export const Context: import('react').Context = createContext( - OBJ -); +export const Context: import('react').Context = + createContext(OBJ); export const Provider: import('react').Provider = Context.Provider; export const Consumer: import('react').Consumer = diff --git a/packages/react-urql/src/hooks/useMutation.ts b/packages/react-urql/src/hooks/useMutation.ts index 2f7bc540..1927c5d8 100644 --- a/packages/react-urql/src/hooks/useMutation.ts +++ b/packages/react-urql/src/hooks/useMutation.ts @@ -47,9 +47,8 @@ export function useMutation< const isMounted = useRef(true); const client = useClient(); - const [state, setState] = useState>( - initialState - ); + const [state, setState] = + useState>(initialState); const executeMutation = useCallback( (variables: Variables, context?: Partial) => { diff --git a/packages/site/plugins/react-router/browser.api.js b/packages/site/plugins/react-router/browser.api.js index c05edebc..69fb4959 100644 --- a/packages/site/plugins/react-router/browser.api.js +++ b/packages/site/plugins/react-router/browser.api.js @@ -8,38 +8,42 @@ import { BrowserRouter, StaticRouter, withRouter } from 'react-router-dom'; const Location = withRouter(({ children, location }) => children(location)); const ReactRouterPlugin = ({ RouterProps: userRouterProps = {} }) => ({ - Root: PreviousRoot => ({ children }) => { - const routerProps = { basename: useBasepath() || '' }; - if (routerProps.basename) routerProps.basename = `/${routerProps.basename}`; - const staticInfo = useStaticInfo(); + Root: + PreviousRoot => + ({ children }) => { + const routerProps = { basename: useBasepath() || '' }; + if (routerProps.basename) + routerProps.basename = `/${routerProps.basename}`; + const staticInfo = useStaticInfo(); - // Test for document to detect the node stage - let Router; - if (typeof document !== 'undefined') { - // NOTE: React Router is inconsistent in how it handles base paths - // This will need a trailing slash while the StaticRouter does not - if (routerProps.basename) routerProps.basename += '/'; - // If in the browser, just use the browser router - Router = BrowserRouter; - } else { - Router = StaticRouter; - routerProps.location = staticInfo.path; // Required - routerProps.context = {}; // Required - } + // Test for document to detect the node stage + let Router; + if (typeof document !== 'undefined') { + // NOTE: React Router is inconsistent in how it handles base paths + // This will need a trailing slash while the StaticRouter does not + if (routerProps.basename) routerProps.basename += '/'; + // If in the browser, just use the browser router + Router = BrowserRouter; + } else { + Router = StaticRouter; + routerProps.location = staticInfo.path; // Required + routerProps.context = {}; // Required + } - return ( - - - {children} - - - ); - }, - Routes: PreviousRoutes => props => ( - - {location => } - - ), + return ( + + + {children} + + + ); + }, + Routes: PreviousRoutes => props => + ( + + {location => } + + ), }); export default ReactRouterPlugin; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 163a1ce9..f3135126 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -2,79 +2,83 @@ lockfileVersion: 5.4 overrides: '@types/react': ^17.0.39 + graphql: ^16.6.0 react: ^17.0.2 react-dom: ^17.0.2 react-is: ^17.0.2 styled-components: ^5.2.3 + vite: ^3.2.4 wonka: ^6.2.4 importers: .: specifiers: - '@actions/artifact': ^1.1.0 + '@actions/artifact': ^1.1.1 '@actions/core': ^1.10.0 '@actions/github': ^5.1.1 '@babel/core': ^7.21.3 '@babel/plugin-transform-block-scoping': ^7.21.0 '@babel/plugin-transform-react-jsx': ^7.21.0 '@changesets/cli': ^2.26.0 - '@changesets/get-github-info': 0.5.0 + '@changesets/get-github-info': 0.5.2 + '@npmcli/arborist': ^6.2.5 '@rollup/plugin-babel': ^6.0.3 '@rollup/plugin-commonjs': ^24.0.1 '@rollup/plugin-node-resolve': ^15.0.1 '@rollup/plugin-replace': ^5.0.2 - '@rollup/plugin-sucrase': ^5.0.0 + '@rollup/plugin-sucrase': ^5.0.1 '@rollup/plugin-terser': ^0.4.0 - '@rollup/pluginutils': ^5.0.0 - '@types/node': ^18.11.9 - '@typescript-eslint/eslint-plugin': ^5.44.0 - '@typescript-eslint/parser': ^5.44.0 - cypress: ^11.0.0 - dotenv: ^8.2.0 - eslint: ^8.28.0 - eslint-config-prettier: ^8.3.0 + '@rollup/pluginutils': ^5.0.2 + '@types/node': ^18.15.3 + '@typescript-eslint/eslint-plugin': ^5.55.0 + '@typescript-eslint/parser': ^5.55.0 + cypress: ^12.8.1 + dotenv: ^16.0.3 + eslint: ^8.36.0 + eslint-config-prettier: ^8.7.0 eslint-plugin-es5: ^1.5.0 - eslint-plugin-prettier: ^3.4.0 - eslint-plugin-react: ^7.31.11 + eslint-plugin-prettier: ^4.2.1 + eslint-plugin-react: ^7.32.2 eslint-plugin-react-hooks: ^4.6.0 - execa: ^5.0.0 - glob: ^7.1.6 - graphql: ^16.0.0 + execa: ^7.1.1 + glob: ^9.3.0 + graphql: ^16.6.0 husky-v4: ^4.3.8 invariant: ^2.2.4 - jsdom: ^20.0.3 - lint-staged: ^10.5.4 - node-fetch: ^3.3.0 - npm-packlist: ^2.1.5 + jsdom: ^21.1.1 + lint-staged: ^13.2.0 + node-fetch: ^3.3.1 + npm-packlist: ^7.0.4 npm-run-all: ^4.1.5 - prettier: ^2.2.1 + prettier: ^2.8.4 react: ^17.0.2 react-dom: ^17.0.2 react-is: ^17.0.2 - rimraf: ^3.0.2 + rimraf: ^4.4.0 rollup: ^3.19.1 rollup-plugin-cjs-check: ^1.0.2 rollup-plugin-dts: ^5.2.0 rollup-plugin-generate-package-json: ^3.2.0 rollup-plugin-visualizer: ^5.9.0 - tar: ^6.1.0 + tar: ^6.1.13 terser: ^5.16.6 typescript: ^4.9.5 - vite: ^3.0.0 - vite-tsconfig-paths: ^4.0.0-alpha.3 - vitest: ^0.29.0 + vite: ^3.2.4 + vite-tsconfig-paths: ^4.0.7 + vitest: ^0.29.3 dependencies: '@actions/github': 5.1.1 - node-fetch: 3.3.0 + node-fetch: 3.3.1 devDependencies: - '@actions/artifact': 1.1.0 + '@actions/artifact': 1.1.1 '@actions/core': 1.10.0 '@babel/core': 7.21.3 '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.3 '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.3 '@changesets/cli': 2.26.0 - '@changesets/get-github-info': 0.5.0 + '@changesets/get-github-info': 0.5.2 + '@npmcli/arborist': 6.2.5 '@rollup/plugin-babel': 6.0.3_juvh72w4ry7wdzu3k4tlty4ke4 '@rollup/plugin-commonjs': 24.0.1_rollup@3.19.1 '@rollup/plugin-node-resolve': 15.0.1_rollup@3.19.1 @@ -82,84 +86,84 @@ importers: '@rollup/plugin-sucrase': 5.0.1_rollup@3.19.1 '@rollup/plugin-terser': 0.4.0_rollup@3.19.1 '@rollup/pluginutils': 5.0.2_rollup@3.19.1 - '@types/node': 18.11.9 - '@typescript-eslint/eslint-plugin': 5.44.0_4kbswhbwl5syvdj4jodacfm2ou - '@typescript-eslint/parser': 5.44.0_pku7h6lsbnh7tcsfjudlqd5qce - cypress: 11.1.0 - dotenv: 8.2.0 - eslint: 8.28.0 - eslint-config-prettier: 8.3.0_eslint@8.28.0 - eslint-plugin-es5: 1.5.0_eslint@8.28.0 - eslint-plugin-prettier: 3.4.0_plju7d5o4ykhievr5qayynz6du - eslint-plugin-react: 7.31.11_eslint@8.28.0 - eslint-plugin-react-hooks: 4.6.0_eslint@8.28.0 - execa: 5.0.0 - glob: 7.1.6 - graphql: 16.0.1 + '@types/node': 18.15.3 + '@typescript-eslint/eslint-plugin': 5.55.0_342y7v4tc7ytrrysmit6jo4wri + '@typescript-eslint/parser': 5.55.0_vgl77cfdswitgr47lm5swmv43m + cypress: 12.8.1 + dotenv: 16.0.3 + eslint: 8.36.0 + eslint-config-prettier: 8.7.0_eslint@8.36.0 + eslint-plugin-es5: 1.5.0_eslint@8.36.0 + eslint-plugin-prettier: 4.2.1_eqzx3hpkgx5nnvxls3azrcc7dm + eslint-plugin-react: 7.32.2_eslint@8.36.0 + eslint-plugin-react-hooks: 4.6.0_eslint@8.36.0 + execa: 7.1.1 + glob: 9.3.0 + graphql: 16.6.0 husky-v4: 4.3.8 invariant: 2.2.4 - jsdom: 20.0.3 - lint-staged: 10.5.4 - npm-packlist: 2.1.5 + jsdom: 21.1.1 + lint-staged: 13.2.0 + npm-packlist: 7.0.4 npm-run-all: 4.1.5 - prettier: 2.2.1 + prettier: 2.8.4 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 react-is: 17.0.2 - rimraf: 3.0.2 + rimraf: 4.4.0 rollup: 3.19.1 rollup-plugin-cjs-check: 1.0.2_rollup@3.19.1 rollup-plugin-dts: 5.2.0_h4kaxwm6ctjivrsm4cpxaz7nqu rollup-plugin-generate-package-json: 3.2.0_rollup@3.19.1 rollup-plugin-visualizer: 5.9.0_rollup@3.19.1 - tar: 6.1.0 + tar: 6.1.13 terser: 5.16.6 typescript: 4.9.5 - vite: 3.2.4_gbdvvobmhmzwjbjgqkuql5ofp4 - vite-tsconfig-paths: 4.0.0-alpha.3_oyg7s5x5awhbeaywtnsr2habru - vitest: 0.29.1_jsdom@20.0.3+terser@5.16.6 + vite: 3.2.5_67ayhxtn77ihpqz7ip4pro4g64 + vite-tsconfig-paths: 4.0.7_mmfldfnusamjexuwtlvii3fpxu + vitest: 0.29.3_jsdom@21.1.1+terser@5.16.6 exchanges/auth: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/context: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/execute: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/graphcache: specifiers: - '@cypress/react': ^7.0.1 + '@cypress/react': ^7.0.2 '@urql/core': '>=3.2.2' '@urql/exchange-execute': workspace:* '@urql/introspection': workspace:* - cypress: ^11.1.0 - graphql: ^16.0.0 + cypress: ^12.8.1 + graphql: ^16.6.0 react: ^17.0.2 react-dom: ^17.0.2 urql: workspace:* @@ -168,11 +172,11 @@ importers: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - '@cypress/react': 7.0.1_ddmelm2ieimfs7lfnlxmtlhrry + '@cypress/react': 7.0.2_kxqn2c7raunyx4zfzvxjupflne '@urql/exchange-execute': link:../execute '@urql/introspection': link:../../packages/introspection - cypress: 11.1.0 - graphql: 16.0.1 + cypress: 12.8.1 + graphql: 16.6.0 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 urql: link:../../packages/react-urql @@ -181,86 +185,86 @@ importers: specifiers: '@urql/core': '>=3.2.2' extract-files: ^11.0.0 - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core extract-files: 11.0.0 wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/persisted: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/populate: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/refocus: specifiers: '@types/react': ^17.0.39 '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: '@types/react': 17.0.52 - graphql: 16.0.1 + graphql: 16.6.0 exchanges/request-policy: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 exchanges/retry: specifiers: '@urql/core': '>=3.2.2' - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../../packages/core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 packages/core: specifiers: - graphql: ^16.0.0 + graphql: ^16.6.0 wonka: ^6.2.4 dependencies: wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 packages/introspection: specifiers: - graphql: ^16.0.0 + graphql: ^16.6.0 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 packages/next-urql: specifiers: @@ -272,7 +276,7 @@ importers: '@urql/core': workspace:* enzyme: ^3.11.0 enzyme-adapter-react-16: ^1.15.2 - graphql: ^16.0.0 + graphql: ^16.6.0 next: ^11.0.1 react: ^17.0.2 react-dom: ^17.0.2 @@ -290,7 +294,7 @@ importers: '@urql/core': link:../core enzyme: 3.11.0 enzyme-adapter-react-16: 1.15.6_7ltvq4e2railvf5uya4ffxpe2a - graphql: 16.0.1 + graphql: 16.6.0 next: 11.0.1_sfoxds7t5ydpegc3knd667wn6m react: 17.0.2 react-dom: 17.0.2_react@17.0.2 @@ -301,53 +305,53 @@ importers: specifiers: '@testing-library/preact': ^2.0.0 '@urql/core': ^3.2.2 - graphql: ^16.0.0 - preact: ^10.5.5 + graphql: ^16.6.0 + preact: ^10.13.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../core wonka: 6.2.4 devDependencies: - '@testing-library/preact': 2.0.1_preact@10.5.13 - graphql: 16.0.1 - preact: 10.5.13 + '@testing-library/preact': 2.0.1_preact@10.13.1 + graphql: 16.6.0 + preact: 10.13.1 packages/react-urql: specifiers: - '@cypress/react': ^7.0.1 - '@cypress/vite-dev-server': ^4.0.1 + '@cypress/react': ^7.0.2 + '@cypress/vite-dev-server': ^5.0.4 '@testing-library/react': ^11.1.1 '@testing-library/react-hooks': ^5.1.2 '@types/react': ^17.0.39 '@types/react-test-renderer': ^17.0.1 '@urql/core': ^3.2.2 - cypress: ^11.1.0 - graphql: ^16.0.0 + cypress: ^12.8.1 + graphql: ^16.6.0 react: ^17.0.2 react-dom: ^17.0.2 react-is: ^17.0.2 react-ssr-prepass: ^1.1.2 react-test-renderer: ^17.0.1 - vite: ^3.0.0 + vite: ^3.2.4 wonka: ^6.2.4 dependencies: '@urql/core': link:../core wonka: 6.2.4 devDependencies: - '@cypress/react': 7.0.1_afg4ncukyuyevrurg5xxicvqy4 - '@cypress/vite-dev-server': 4.0.1 + '@cypress/react': 7.0.2_omnm57pgrvq3mbg7qqmuk7p7le + '@cypress/vite-dev-server': 5.0.4 '@testing-library/react': 11.2.6_sfoxds7t5ydpegc3knd667wn6m '@testing-library/react-hooks': 5.1.2_7qv3rjnqa3j7exc7qtvho7thru '@types/react': 17.0.52 '@types/react-test-renderer': 17.0.1 - cypress: 11.1.0 - graphql: 16.0.1 + cypress: 12.8.1 + graphql: 16.6.0 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 react-is: 17.0.2 react-ssr-prepass: 1.4.0_react@17.0.2 react-test-renderer: 17.0.2_react@17.0.2 - vite: 3.2.4 + vite: 3.2.5 packages/site: specifiers: @@ -386,13 +390,13 @@ importers: surge: ^0.21.3 webpack: '>=4.4.6' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@mdx-js/react': 1.6.22_react@17.0.2 formidable-oss-badges: 0.3.5_styled-components@5.2.3 fuse.js: 6.4.6 history: 4.10.1 path: 0.12.7 - preact: 10.5.13 + preact: 10.13.1 prism-react-renderer: 1.2.0_react@17.0.2 prop-types: 15.8.1 react: 17.0.2 @@ -409,7 +413,7 @@ importers: react-static-plugin-md-pages: 0.3.3_xgkhbco6atghv75bh5wsakkl2e styled-components: 5.2.3_fane7jikarojcev26y27hpbhu4 devDependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@mdx-js/mdx': 1.6.22 '@octokit/plugin-request-log': 1.0.0 babel-plugin-universal-import: 3.1.3_webpack@4.46.0 @@ -437,21 +441,21 @@ importers: packages/svelte-urql: specifiers: '@urql/core': ^3.2.2 - graphql: ^16.0.0 + graphql: ^16.6.0 svelte: ^3.20.0 wonka: ^6.2.4 dependencies: '@urql/core': link:../core wonka: 6.2.4 devDependencies: - graphql: 16.0.1 + graphql: 16.6.0 svelte: 3.37.0 packages/vue-urql: specifiers: '@urql/core': ^3.2.2 '@vue/test-utils': ^2.3.0 - graphql: ^16.0.0 + graphql: ^16.6.0 vue: ^3.2.47 wonka: ^6.2.4 dependencies: @@ -459,16 +463,16 @@ importers: wonka: 6.2.4 devDependencies: '@vue/test-utils': 2.3.0_vue@3.2.47 - graphql: 16.0.1 + graphql: 16.6.0 vue: 3.2.47 packages: - /@actions/artifact/1.1.0: - resolution: {integrity: sha512-shO+w/BAnzRnFhfsgUao8sxjByAMqDdfvek2LLKeCueBKXoTrAcp7U/hs9Fdx+z9g7Q0mbIrmHAzAAww4HK1bQ==} + /@actions/artifact/1.1.1: + resolution: {integrity: sha512-Vv4y0EW0ptEkU+Pjs5RGS/0EryTvI6s79LjSV9Gg/h+O3H/ddpjhuX/Bi/HZE4pbNPyjGtQjbdFWphkZhmgabA==} dependencies: '@actions/core': 1.10.0 - '@actions/http-client': 2.0.1 + '@actions/http-client': 2.1.0 tmp: 0.2.1 tmp-promise: 3.0.3 dev: true @@ -476,14 +480,14 @@ packages: /@actions/core/1.10.0: resolution: {integrity: sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==} dependencies: - '@actions/http-client': 2.0.1 + '@actions/http-client': 2.1.0 uuid: 8.3.2 dev: true /@actions/github/5.1.1: resolution: {integrity: sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==} dependencies: - '@actions/http-client': 2.0.1 + '@actions/http-client': 2.1.0 '@octokit/core': 3.6.0 '@octokit/plugin-paginate-rest': 2.21.3_@octokit+core@3.6.0 '@octokit/plugin-rest-endpoint-methods': 5.16.2_@octokit+core@3.6.0 @@ -491,8 +495,8 @@ packages: - encoding dev: false - /@actions/http-client/2.0.1: - resolution: {integrity: sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==} + /@actions/http-client/2.1.0: + resolution: {integrity: sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw==} dependencies: tunnel: 0.0.6 @@ -503,15 +507,15 @@ packages: '@jridgewell/gen-mapping': 0.1.1 '@jridgewell/trace-mapping': 0.3.17 - /@babel/cli/7.13.16_@babel+core@7.20.2: + /@babel/cli/7.13.16_@babel+core@7.21.3: resolution: {integrity: sha512-cL9tllhqvsQ6r1+d9Invf7nNXg/3BlfL1vvvL/AdH9fZ2l5j0CeBcoq6UjsqHpvyN1v5nXSZgqJZoGeK+ZOAbw==} hasBin: true peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 commander: 4.1.1 - convert-source-map: 1.7.0 + convert-source-map: 1.9.0 fs-readdir-recursive: 1.1.0 glob: 7.1.6 make-dir: 2.1.0 @@ -535,31 +539,26 @@ packages: dependencies: '@babel/highlight': 7.18.6 - /@babel/compat-data/7.20.1: - resolution: {integrity: sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==} - engines: {node: '>=6.9.0'} - /@babel/compat-data/7.21.0: resolution: {integrity: sha512-gMuZsmsgxk/ENC3O/fRw5QY8A9/uxQbbCEypnLIiYYc/qVJtEV7ouxC3EllIIwNzMqAQee5tanFabWsUOutS7g==} engines: {node: '>=6.9.0'} - dev: true /@babel/core/7.12.9: resolution: {integrity: sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 - '@babel/helper-module-transforms': 7.20.2 - '@babel/helpers': 7.20.1 - '@babel/parser': 7.20.15 - '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.7 - convert-source-map: 1.7.0 + '@babel/generator': 7.21.3 + '@babel/helper-module-transforms': 7.21.2 + '@babel/helpers': 7.21.0 + '@babel/parser': 7.21.3 + '@babel/template': 7.20.7 + '@babel/traverse': 7.21.3 + '@babel/types': 7.21.3 + convert-source-map: 1.9.0 debug: 4.3.4 gensync: 1.0.0-beta.2 - json5: 2.2.1 + json5: 2.2.3 lodash: 4.17.21 resolve: 1.22.1 semver: 5.7.1 @@ -567,28 +566,6 @@ packages: transitivePeerDependencies: - supports-color - /@babel/core/7.20.2: - resolution: {integrity: sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==} - engines: {node: '>=6.9.0'} - dependencies: - '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 - '@babel/helper-module-transforms': 7.20.2 - '@babel/helpers': 7.20.1 - '@babel/parser': 7.20.3 - '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 - convert-source-map: 1.7.0 - debug: 4.3.4 - gensync: 1.0.0-beta.2 - json5: 2.2.1 - semver: 6.3.0 - transitivePeerDependencies: - - supports-color - /@babel/core/7.21.3: resolution: {integrity: sha512-qIJONzoa/qiHghnm0l1n4i/6IIziDpzqc36FBs4pzMhDUraHqponwJLiAKm1hGLP3OSB/TVNz6rMwVGpwxxySw==} engines: {node: '>=6.9.0'} @@ -610,15 +587,6 @@ packages: semver: 6.3.0 transitivePeerDependencies: - supports-color - dev: true - - /@babel/generator/7.20.4: - resolution: {integrity: sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/types': 7.20.2 - '@jridgewell/gen-mapping': 0.3.2 - jsesc: 2.5.2 /@babel/generator/7.21.3: resolution: {integrity: sha512-QS3iR1GYC/YGUnW7IdggFeN5c1poPUurnGttOV/bZgPGV+izC/D8HnD6DLwod0fsatNyVn1G3EVWMYIF0nHbeA==} @@ -628,7 +596,6 @@ packages: '@jridgewell/gen-mapping': 0.3.2 '@jridgewell/trace-mapping': 0.3.17 jsesc: 2.5.2 - dev: true /@babel/helper-annotate-as-pure/7.18.6: resolution: {integrity: sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==} @@ -640,19 +607,7 @@ packages: resolution: {integrity: sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==} dependencies: '@babel/helper-explode-assignable-expression': 7.13.0 - '@babel/types': 7.20.7 - - /@babel/helper-compilation-targets/7.20.0_@babel+core@7.20.2: - resolution: {integrity: sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0 - dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-validator-option': 7.18.6 - browserslist: 4.21.4 - semver: 6.3.0 + '@babel/types': 7.21.3 /@babel/helper-compilation-targets/7.20.7_@babel+core@7.21.3: resolution: {integrity: sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==} @@ -666,15 +621,14 @@ packages: browserslist: 4.21.5 lru-cache: 5.1.1 semver: 6.3.0 - dev: true - /@babel/helper-create-class-features-plugin/7.13.11_@babel+core@7.20.2: + /@babel/helper-create-class-features-plugin/7.13.11_@babel+core@7.21.3: resolution: {integrity: sha512-ays0I7XYq9xbjCSvT+EvysLgfc3tOkwCULHjrnscGT3A9qD4sk3wXnJ3of0MAWsWGjdinFvajHU2smYuqXKMrw==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-function-name': 7.19.0 + '@babel/core': 7.21.3 + '@babel/helper-function-name': 7.21.0 '@babel/helper-member-expression-to-functions': 7.13.12 '@babel/helper-optimise-call-expression': 7.12.13 '@babel/helper-replace-supers': 7.13.12 @@ -682,25 +636,25 @@ packages: transitivePeerDependencies: - supports-color - /@babel/helper-create-regexp-features-plugin/7.12.17_@babel+core@7.20.2: + /@babel/helper-create-regexp-features-plugin/7.12.17_@babel+core@7.21.3: resolution: {integrity: sha512-p2VGmBu9oefLZ2nQpgnEnG0ZlRPvL8gAGvPUMQwUdaE8k49rOMuZpOwdQoy5qJf6K8jL3bcAMhVUlHAjIgJHUg==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-annotate-as-pure': 7.18.6 regexpu-core: 4.7.1 - /@babel/helper-define-polyfill-provider/0.2.0_@babel+core@7.20.2: + /@babel/helper-define-polyfill-provider/0.2.0_@babel+core@7.21.3: resolution: {integrity: sha512-JT8tHuFjKBo8NnaUbblz7mIu1nnvUDiHVjXXkulZULyidvo/7P6TY7+YqpV37IfF+KUFxmlK04elKtGKXaiVgw==} peerDependencies: '@babel/core': ^7.4.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - '@babel/traverse': 7.20.1 + '@babel/traverse': 7.21.3 debug: 4.3.4 lodash.debounce: 4.0.8 resolve: 1.22.1 @@ -715,14 +669,7 @@ packages: /@babel/helper-explode-assignable-expression/7.13.0: resolution: {integrity: sha512-qS0peLTDP8kOisG1blKbaoBg/o9OSa1qoumMjTK5pM+KDTtpxpsiubnCGP34vK8BXGcb2M9eigwgvoJryrzwWA==} dependencies: - '@babel/types': 7.20.7 - - /@babel/helper-function-name/7.19.0: - resolution: {integrity: sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.18.10 - '@babel/types': 7.20.7 + '@babel/types': 7.21.3 /@babel/helper-function-name/7.21.0: resolution: {integrity: sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==} @@ -730,7 +677,6 @@ packages: dependencies: '@babel/template': 7.20.7 '@babel/types': 7.21.3 - dev: true /@babel/helper-hoist-variables/7.18.6: resolution: {integrity: sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==} @@ -741,7 +687,7 @@ packages: /@babel/helper-member-expression-to-functions/7.13.12: resolution: {integrity: sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==} dependencies: - '@babel/types': 7.20.7 + '@babel/types': 7.21.3 /@babel/helper-module-imports/7.18.6: resolution: {integrity: sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==} @@ -749,21 +695,6 @@ packages: dependencies: '@babel/types': 7.21.3 - /@babel/helper-module-transforms/7.20.2: - resolution: {integrity: sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-simple-access': 7.20.2 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/helper-validator-identifier': 7.19.1 - '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 - transitivePeerDependencies: - - supports-color - /@babel/helper-module-transforms/7.21.2: resolution: {integrity: sha512-79yj2AR4U/Oqq/WOV7Lx6hUjau1Zfo4cI+JLAVYeMV5XIlbOhmjEk5ulbTc9fMpmlojzZHkUUxAiK+UKn+hNQQ==} engines: {node: '>=6.9.0'} @@ -778,12 +709,11 @@ packages: '@babel/types': 7.21.3 transitivePeerDependencies: - supports-color - dev: true /@babel/helper-optimise-call-expression/7.12.13: resolution: {integrity: sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==} dependencies: - '@babel/types': 7.20.7 + '@babel/types': 7.21.3 /@babel/helper-plugin-utils/7.10.4: resolution: {integrity: sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==} @@ -797,7 +727,7 @@ packages: dependencies: '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-wrap-function': 7.13.0 - '@babel/types': 7.20.7 + '@babel/types': 7.21.3 transitivePeerDependencies: - supports-color @@ -806,8 +736,8 @@ packages: dependencies: '@babel/helper-member-expression-to-functions': 7.13.12 '@babel/helper-optimise-call-expression': 7.12.13 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.7 + '@babel/traverse': 7.21.3 + '@babel/types': 7.21.3 transitivePeerDependencies: - supports-color @@ -820,7 +750,7 @@ packages: /@babel/helper-skip-transparent-expression-wrappers/7.12.1: resolution: {integrity: sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==} dependencies: - '@babel/types': 7.20.7 + '@babel/types': 7.21.3 /@babel/helper-split-export-declaration/7.18.6: resolution: {integrity: sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==} @@ -836,32 +766,17 @@ packages: resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} engines: {node: '>=6.9.0'} - /@babel/helper-validator-option/7.18.6: - resolution: {integrity: sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==} - engines: {node: '>=6.9.0'} - /@babel/helper-validator-option/7.21.0: resolution: {integrity: sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==} engines: {node: '>=6.9.0'} - dev: true /@babel/helper-wrap-function/7.13.0: resolution: {integrity: sha512-1UX9F7K3BS42fI6qd2A4BjKzgGjToscyZTdp1DjknHLCIvpgne6918io+aL5LXFcER/8QWiwpoY902pVEqgTXA==} dependencies: - '@babel/helper-function-name': 7.19.0 - '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.7 - transitivePeerDependencies: - - supports-color - - /@babel/helpers/7.20.1: - resolution: {integrity: sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/template': 7.18.10 - '@babel/traverse': 7.20.1 - '@babel/types': 7.20.2 + '@babel/helper-function-name': 7.21.0 + '@babel/template': 7.20.7 + '@babel/traverse': 7.21.3 + '@babel/types': 7.21.3 transitivePeerDependencies: - supports-color @@ -874,7 +789,6 @@ packages: '@babel/types': 7.21.3 transitivePeerDependencies: - supports-color - dev: true /@babel/highlight/7.18.6: resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} @@ -884,123 +798,108 @@ packages: chalk: 2.4.2 js-tokens: 4.0.0 - /@babel/parser/7.20.15: - resolution: {integrity: sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.20.7 - - /@babel/parser/7.20.3: - resolution: {integrity: sha512-OP/s5a94frIPXwjzEcv5S/tpQfc6XhxYUnmWpgdqMWGgYCuErA3SzozaRAMQgSZWKeTJxht9aWAkUY+0UzvOFg==} - engines: {node: '>=6.0.0'} - hasBin: true - dependencies: - '@babel/types': 7.20.2 - /@babel/parser/7.21.3: resolution: {integrity: sha512-lobG0d7aOfQRXh8AyklEAgZGvA4FShxo6xQbUrrT/cNBPUdIDojlokwJsQyCC/eKia7ifqM0yP+2DRZ4WKw2RQ==} engines: {node: '>=6.0.0'} hasBin: true dependencies: '@babel/types': 7.21.3 - dev: true - /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.13.12_@babel+core@7.20.2: + /@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/7.13.12_@babel+core@7.21.3: resolution: {integrity: sha512-d0u3zWKcoZf379fOeJdr1a5WPDny4aOFZ6hlfKivgK0LY7ZxNfoaHL2fWwdGtHyVvra38FC+HVYkO+byfSA8AQ==} peerDependencies: '@babel/core': ^7.13.0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.12.1 - '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.20.2 + '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.21.3 - /@babel/plugin-proposal-async-generator-functions/7.13.15_@babel+core@7.20.2: + /@babel/plugin-proposal-async-generator-functions/7.13.15_@babel+core@7.21.3: resolution: {integrity: sha512-VapibkWzFeoa6ubXy/NgV5U2U4MVnUlvnx6wo1XhlsaTrLYWE0UFpDQsVrmn22q5CzeloqJ8gEMHSKxuee6ZdA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-remap-async-to-generator': 7.13.0 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.2 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.3 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-class-properties/7.13.0_@babel+core@7.20.2: + /@babel/plugin-proposal-class-properties/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-KnTDjFNC1g+45ka0myZNvSBFLhNCLN+GeGYLDEA8Oq7MZ6yMgfLoIRh86GRT0FjtJhZw8JyUskP9uvj5pHM9Zg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.13.11_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-class-features-plugin': 7.13.11_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-dynamic-import/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-dynamic-import/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-ONWKj0H6+wIRCkZi9zSbZtE/r73uOhMVHh256ys0UzfM7I3d4n+spZNWjOnJv2gzopumP2Wxi186vI8N0Y2JyQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-export-default-from/7.12.13_@babel+core@7.20.2: + /@babel/plugin-proposal-export-default-from/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-idIsBT+DGXdOHL82U+8bwX4goHm/z10g8sGGrQroh+HCRcm7mDv/luaGdWJQMTuCX2FsdXS7X0Nyyzp4znAPJA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-default-from': 7.12.13_@babel+core@7.20.2 + '@babel/plugin-syntax-export-default-from': 7.12.13_@babel+core@7.21.3 - /@babel/plugin-proposal-export-namespace-from/7.12.13_@babel+core@7.20.2: + /@babel/plugin-proposal-export-namespace-from/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-json-strings/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-json-strings/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-w4zOPKUFPX1mgvTmL/fcEqy34hrQ1CRcGxdphBc6snDnnqJ47EZDIyop6IwXzAC8G916hsIuXB2ZMBCExC5k7Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-logical-assignment-operators/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-logical-assignment-operators/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-aul6znYB4N4HGweImqKn59Su9RS8lbUIqxtXTOcAGtNIDczoEFv+l1EhmX8rUBp3G1jMjKJm8m0jXVp63ZpS4A==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.2 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.3 - /@babel/plugin-proposal-nullish-coalescing-operator/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-nullish-coalescing-operator/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-iePlDPBn//UhxExyS9KyeYU7RM9WScAG+D3Hhno0PLJebAEpDZMocbDe64eqynhNAnwz/vZoL/q/QB2T1OH39A==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-numeric-separator/7.12.13_@babel+core@7.20.2: + /@babel/plugin-proposal-numeric-separator/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.2 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.3 /@babel/plugin-proposal-object-rest-spread/7.12.1_@babel+core@7.12.9: resolution: {integrity: sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==} @@ -1012,104 +911,104 @@ packages: '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.12.9 '@babel/plugin-transform-parameters': 7.13.0_@babel+core@7.12.9 - /@babel/plugin-proposal-object-rest-spread/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-object-rest-spread/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-DhB2EuB1Ih7S3/IRX5AFVgZ16k3EzfRbq97CxAVI1KSYcW+lexV8VZb7G7L8zuPVSdQMRn0kiBpf/Yzu9ZKH0g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/compat-data': 7.21.0 + '@babel/core': 7.21.3 + '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-transform-parameters': 7.13.0_@babel+core@7.20.2 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-transform-parameters': 7.13.0_@babel+core@7.21.3 - /@babel/plugin-proposal-optional-catch-binding/7.13.8_@babel+core@7.20.2: + /@babel/plugin-proposal-optional-catch-binding/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-0wS/4DUF1CuTmGo+NiaHfHcVSeSLj5S3e6RivPTg/2k3wOv3jO35tZ6/ZWsQhQMvdgI7CwphjQa/ccarLymHVA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-optional-chaining/7.13.12_@babel+core@7.20.2: + /@babel/plugin-proposal-optional-chaining/7.13.12_@babel+core@7.21.3: resolution: {integrity: sha512-fcEdKOkIB7Tf4IxrgEVeFC4zeJSTr78no9wTdBuZZbqF64kzllU0ybo2zrzm7gUQfxGhBgq4E39oRs8Zx/RMYQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.12.1 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.2 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.3 - /@babel/plugin-proposal-private-methods/7.13.0_@babel+core@7.20.2: + /@babel/plugin-proposal-private-methods/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-MXyyKQd9inhx1kDYPkFRVOBXQ20ES8Pto3T7UZ92xj2mY0EVD8oAVzeyYuVfy/mxAdTSIayOvg+aVzcHV2bn6Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-class-features-plugin': 7.13.11_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-class-features-plugin': 7.13.11_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-proposal-unicode-property-regex/7.12.13_@babel+core@7.20.2: + /@babel/plugin-proposal-unicode-property-regex/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==} engines: {node: '>=4'} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.20.2: + /@babel/plugin-syntax-async-generators/7.8.4_@babel+core@7.21.3: resolution: {integrity: sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.20.2: + /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-dynamic-import/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-export-default-from/7.12.13_@babel+core@7.20.2: + /@babel/plugin-syntax-export-default-from/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-gVry0zqoums0hA+EniCYK3gABhjYSLX1dVuwYpPw9DrLNA4/GovXySHVg4FGRsZht09ON/5C2NVx3keq+qqVGQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-export-namespace-from/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 /@babel/plugin-syntax-jsx/7.12.1_@babel+core@7.12.9: @@ -1120,15 +1019,6 @@ packages: '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.20.2: - resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.20.2 - '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.21.3: resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==} engines: {node: '>=6.9.0'} @@ -1137,30 +1027,29 @@ packages: dependencies: '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - dev: true - /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.20.2: + /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.21.3: resolution: {integrity: sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.20.2: + /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.21.3: resolution: {integrity: sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.12.9: @@ -1171,73 +1060,64 @@ packages: '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.20.2: + /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.21.3: resolution: {integrity: sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-syntax-top-level-await/7.12.13_@babel+core@7.20.2: + /@babel/plugin-syntax-top-level-await/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-arrow-functions/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-arrow-functions/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-96lgJagobeVmazXFaDrbmCLQxBysKu7U6Do3mLsx27gf5Dk85ezysrs2BZUpXD703U/Su1xTBDxxar2oa4jAGg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-async-to-generator/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-async-to-generator/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-3j6E004Dx0K3eGmhxVJxwwI89CTJrce7lg3UrtFuDAVQ/2+SJ/h/aSFOeE6/n0WB1GsOffsJp6MnPQNQ8nmwhg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-remap-async-to-generator': 7.13.0 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-block-scoped-functions/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-block-scoped-functions/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-plugin-utils': 7.20.2 - - /@babel/plugin-transform-block-scoping/7.20.2_@babel+core@7.20.2: - resolution: {integrity: sha512-y5V15+04ry69OV2wULmwhEA6jwSWXO1TwAtIwiPXcvHcoOQUqpyMVd2bDsQJMW8AurjulIyUV8kDqtjSwHy1uQ==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 /@babel/plugin-transform-block-scoping/7.21.0_@babel+core@7.21.3: @@ -1248,16 +1128,15 @@ packages: dependencies: '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - dev: true - /@babel/plugin-transform-classes/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-classes/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-9BtHCPUARyVH1oXGcSJD3YpsqRLROJx5ZNP6tN5vnk17N0SVf9WCtf8Nuh1CFmgByKKAIMstitKduoCmsaDK5g==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-function-name': 7.19.0 + '@babel/helper-function-name': 7.21.0 '@babel/helper-optimise-call-expression': 7.12.13 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-replace-supers': 7.13.12 @@ -1266,153 +1145,153 @@ packages: transitivePeerDependencies: - supports-color - /@babel/plugin-transform-computed-properties/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-computed-properties/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-RRqTYTeZkZAz8WbieLTvKUEUxZlUTdmL5KGMyZj7FnMfLNKV4+r5549aORG/mgojRmFlQMJDUupwAMiF2Q7OUg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-destructuring/7.13.17_@babel+core@7.20.2: + /@babel/plugin-transform-destructuring/7.13.17_@babel+core@7.21.3: resolution: {integrity: sha512-UAUqiLv+uRLO+xuBKKMEpC+t7YRNVRqBsWWq1yKXbBZBje/t3IXCiSinZhjn/DC3qzBfICeYd2EFGEbHsh5RLA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-dotall-regex/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-dotall-regex/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-duplicate-keys/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-duplicate-keys/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-exponentiation-operator/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-exponentiation-operator/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-builder-binary-assignment-operator-visitor': 7.12.13 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-for-of/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-for-of/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-IHKT00mwUVYE0zzbkDgNRP6SRzvfGCYsOxIRz8KsiaaHCcT9BWIkO+H9QRJseHBLOGBZkHUdHiqj6r0POsdytg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-function-name/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-function-name/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-function-name': 7.19.0 + '@babel/core': 7.21.3 + '@babel/helper-function-name': 7.21.0 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-literals/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-literals/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-member-expression-literals/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-member-expression-literals/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-modules-amd/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-modules-amd/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-EKy/E2NHhY/6Vw5d1k3rgoobftcNUmp9fGjb9XZwQLtTctsRBOTRO7RHHxfIky1ogMN5BxN7p9uMA3SzPfotMQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-module-transforms': 7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-commonjs/7.14.0_@babel+core@7.20.2: + /@babel/plugin-transform-modules-commonjs/7.14.0_@babel+core@7.21.3: resolution: {integrity: sha512-EX4QePlsTaRZQmw9BsoPeyh5OCtRGIhwfLquhxGp5e32w+dyL8htOcDwamlitmNFK6xBZYlygjdye9dbd9rUlQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-module-transforms': 7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-simple-access': 7.20.2 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-systemjs/7.13.8_@babel+core@7.20.2: + /@babel/plugin-transform-modules-systemjs/7.13.8_@babel+core@7.21.3: resolution: {integrity: sha512-hwqctPYjhM6cWvVIlOIe27jCIBgHCsdH2xCJVAYQm7V5yTMoilbVMi9f6wKg0rpQAOn6ZG4AOyvCqFF/hUh6+A==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-module-transforms': 7.20.2 + '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-validator-identifier': 7.19.1 babel-plugin-dynamic-import-node: 2.3.3 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-modules-umd/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-modules-umd/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-D/ILzAh6uyvkWjKKyFE/W0FzWwasv6vPTSqPcjxFqn6QpX3u8DjRVliq4F2BamO2Wee/om06Vyy+vPkNrd4wxw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-module-transforms': 7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-module-transforms': 7.21.2 '@babel/helper-plugin-utils': 7.20.2 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-named-capturing-groups-regex/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-named-capturing-groups-regex/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==} peerDependencies: '@babel/core': ^7.0.0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.21.3 - /@babel/plugin-transform-new-target/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-new-target/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-object-super/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-object-super/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-replace-supers': 7.13.12 transitivePeerDependencies: @@ -1426,50 +1305,37 @@ packages: '@babel/core': 7.12.9 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-parameters/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-parameters/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-Jt8k/h/mIwE2JFEOb3lURoY5C85ETcYPnbuAJ96zRBzh1XHtQZfs62ChZ6EP22QlC8c7Xqr9q+e1SU5qttwwjw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-property-literals/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-property-literals/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-react-display-name/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-react-display-name/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-MprESJzI9O5VnJZrL7gg1MpdqmiFcUv41Jc7SahxYsNP2kDkFqClxxTZq+1Qv4AFCamm+GXMRDQINNn+qrxmiA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-react-jsx-development/7.12.17_@babel+core@7.20.2: + /@babel/plugin-transform-react-jsx-development/7.12.17_@babel+core@7.21.3: resolution: {integrity: sha512-BPjYV86SVuOaudFhsJR1zjgxxOhJDt6JHNoD48DxWEIxUCAMjV1ys6DYw4SDYZh0b1QsS2vfIA9t/ZsQGsDOUQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2 - - /@babel/plugin-transform-react-jsx/7.19.0_@babel+core@7.20.2: - resolution: {integrity: sha512-UVEvX3tXie3Szm3emi1+G63jyw1w5IcMY0FSKM+CRnKRI5Mr1YbCNgsSTwoTwKphQEG9P+QqmuRFneJPZuHNhg==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - dependencies: - '@babel/core': 7.20.2 - '@babel/helper-annotate-as-pure': 7.18.6 - '@babel/helper-module-imports': 7.18.6 - '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.20.2 - '@babel/types': 7.20.2 + '@babel/core': 7.21.3 + '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.3 /@babel/plugin-transform-react-jsx/7.21.0_@babel+core@7.21.3: resolution: {integrity: sha512-6OAWljMvQrZjR2DaNhVfRz6dkCAVV+ymcLUmaf8bccGOHn2v5rHJK3tTpij0BuhdYWP4LLaqj5lwcdlpAAPuvg==} @@ -1483,222 +1349,221 @@ packages: '@babel/helper-plugin-utils': 7.20.2 '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.21.3 '@babel/types': 7.21.3 - dev: true - /@babel/plugin-transform-react-pure-annotations/7.12.1_@babel+core@7.20.2: + /@babel/plugin-transform-react-pure-annotations/7.12.1_@babel+core@7.21.3: resolution: {integrity: sha512-RqeaHiwZtphSIUZ5I85PEH19LOSzxfuEazoY7/pWASCAIBuATQzpSVD+eT6MebeeZT2F4eSL0u4vw6n4Nm0Mjg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-annotate-as-pure': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-regenerator/7.13.15_@babel+core@7.20.2: + /@babel/plugin-transform-regenerator/7.13.15_@babel+core@7.21.3: resolution: {integrity: sha512-Bk9cOLSz8DiurcMETZ8E2YtIVJbFCPGW28DJWUakmyVWtQSm6Wsf0p4B4BfEr/eL2Nkhe/CICiUiMOCi1TPhuQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 regenerator-transform: 0.14.5 - /@babel/plugin-transform-reserved-words/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-reserved-words/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-runtime/7.13.15_@babel+core@7.20.2: + /@babel/plugin-transform-runtime/7.13.15_@babel+core@7.21.3: resolution: {integrity: sha512-d+ezl76gx6Jal08XngJUkXM4lFXK/5Ikl9Mh4HKDxSfGJXmZ9xG64XT2oivBzfxb/eQ62VfvoMkaCZUKJMVrBA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-module-imports': 7.18.6 '@babel/helper-plugin-utils': 7.20.2 - babel-plugin-polyfill-corejs2: 0.2.0_@babel+core@7.20.2 - babel-plugin-polyfill-corejs3: 0.2.0_@babel+core@7.20.2 - babel-plugin-polyfill-regenerator: 0.2.0_@babel+core@7.20.2 + babel-plugin-polyfill-corejs2: 0.2.0_@babel+core@7.21.3 + babel-plugin-polyfill-corejs3: 0.2.0_@babel+core@7.21.3 + babel-plugin-polyfill-regenerator: 0.2.0_@babel+core@7.21.3 semver: 6.3.0 transitivePeerDependencies: - supports-color - /@babel/plugin-transform-shorthand-properties/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-shorthand-properties/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-spread/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-spread/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-V6vkiXijjzYeFmQTr3dBxPtZYLPcUfY34DebOU27jIl2M/Y8Egm52Hw82CSjjPqd54GTlJs5x+CR7HeNr24ckg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 '@babel/helper-skip-transparent-expression-wrappers': 7.12.1 - /@babel/plugin-transform-sticky-regex/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-sticky-regex/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-template-literals/7.13.0_@babel+core@7.20.2: + /@babel/plugin-transform-template-literals/7.13.0_@babel+core@7.21.3: resolution: {integrity: sha512-d67umW6nlfmr1iehCcBv69eSUSySk1EsIS8aTDX4Xo9qajAh6mYtcl4kJrBkGXuxZPEgVr7RVfAvNW6YQkd4Mw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-typeof-symbol/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-typeof-symbol/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-unicode-escapes/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-unicode-escapes/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/plugin-transform-unicode-regex/7.12.13_@babel+core@7.20.2: + /@babel/plugin-transform-unicode-regex/7.12.13_@babel+core@7.21.3: resolution: {integrity: sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-create-regexp-features-plugin': 7.12.17_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 - /@babel/preset-env/7.13.15_@babel+core@7.20.2: + /@babel/preset-env/7.13.15_@babel+core@7.21.3: resolution: {integrity: sha512-D4JAPMXcxk69PKe81jRJ21/fP/uYdcTZ3hJDF5QX2HSI9bBxxYw/dumdR6dGumhjxlprHPE4XWoPaqzZUVy2MA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-compilation-targets': 7.20.0_@babel+core@7.20.2 + '@babel/compat-data': 7.21.0 + '@babel/core': 7.21.3 + '@babel/helper-compilation-targets': 7.20.7_@babel+core@7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.18.6 - '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.13.12_@babel+core@7.20.2 - '@babel/plugin-proposal-async-generator-functions': 7.13.15_@babel+core@7.20.2 - '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-proposal-dynamic-import': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-export-namespace-from': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-proposal-json-strings': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-logical-assignment-operators': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-nullish-coalescing-operator': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-numeric-separator': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-proposal-object-rest-spread': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-optional-catch-binding': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.20.2 - '@babel/plugin-proposal-private-methods': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.20.2 - '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.20.2 - '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.20.2 - '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-syntax-top-level-await': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-arrow-functions': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-async-to-generator': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-block-scoped-functions': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-block-scoping': 7.20.2_@babel+core@7.20.2 - '@babel/plugin-transform-classes': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-computed-properties': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-destructuring': 7.13.17_@babel+core@7.20.2 - '@babel/plugin-transform-dotall-regex': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-duplicate-keys': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-exponentiation-operator': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-for-of': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-function-name': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-literals': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-member-expression-literals': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-modules-amd': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-modules-commonjs': 7.14.0_@babel+core@7.20.2 - '@babel/plugin-transform-modules-systemjs': 7.13.8_@babel+core@7.20.2 - '@babel/plugin-transform-modules-umd': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-named-capturing-groups-regex': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-new-target': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-object-super': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-parameters': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-property-literals': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-regenerator': 7.13.15_@babel+core@7.20.2 - '@babel/plugin-transform-reserved-words': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-shorthand-properties': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-spread': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-sticky-regex': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-template-literals': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-transform-typeof-symbol': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-unicode-escapes': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-unicode-regex': 7.12.13_@babel+core@7.20.2 - '@babel/preset-modules': 0.1.4_@babel+core@7.20.2 - '@babel/types': 7.20.7 - babel-plugin-polyfill-corejs2: 0.2.0_@babel+core@7.20.2 - babel-plugin-polyfill-corejs3: 0.2.0_@babel+core@7.20.2 - babel-plugin-polyfill-regenerator: 0.2.0_@babel+core@7.20.2 + '@babel/helper-validator-option': 7.21.0 + '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.13.12_@babel+core@7.21.3 + '@babel/plugin-proposal-async-generator-functions': 7.13.15_@babel+core@7.21.3 + '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-proposal-dynamic-import': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-export-namespace-from': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-proposal-json-strings': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-logical-assignment-operators': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-nullish-coalescing-operator': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-numeric-separator': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-proposal-object-rest-spread': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-optional-catch-binding': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.21.3 + '@babel/plugin-proposal-private-methods': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-proposal-unicode-property-regex': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-syntax-async-generators': 7.8.4_@babel+core@7.21.3 + '@babel/plugin-syntax-class-properties': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-export-namespace-from': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-json-strings': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-logical-assignment-operators': 7.10.4_@babel+core@7.21.3 + '@babel/plugin-syntax-nullish-coalescing-operator': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-numeric-separator': 7.10.4_@babel+core@7.21.3 + '@babel/plugin-syntax-object-rest-spread': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-optional-catch-binding': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-optional-chaining': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-syntax-top-level-await': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-arrow-functions': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-async-to-generator': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-block-scoped-functions': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-block-scoping': 7.21.0_@babel+core@7.21.3 + '@babel/plugin-transform-classes': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-computed-properties': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-destructuring': 7.13.17_@babel+core@7.21.3 + '@babel/plugin-transform-dotall-regex': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-duplicate-keys': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-exponentiation-operator': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-for-of': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-function-name': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-literals': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-member-expression-literals': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-modules-amd': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-modules-commonjs': 7.14.0_@babel+core@7.21.3 + '@babel/plugin-transform-modules-systemjs': 7.13.8_@babel+core@7.21.3 + '@babel/plugin-transform-modules-umd': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-named-capturing-groups-regex': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-new-target': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-object-super': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-parameters': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-property-literals': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-regenerator': 7.13.15_@babel+core@7.21.3 + '@babel/plugin-transform-reserved-words': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-shorthand-properties': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-spread': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-sticky-regex': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-template-literals': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-transform-typeof-symbol': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-unicode-escapes': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-unicode-regex': 7.12.13_@babel+core@7.21.3 + '@babel/preset-modules': 0.1.4_@babel+core@7.21.3 + '@babel/types': 7.21.3 + babel-plugin-polyfill-corejs2: 0.2.0_@babel+core@7.21.3 + babel-plugin-polyfill-corejs3: 0.2.0_@babel+core@7.21.3 + babel-plugin-polyfill-regenerator: 0.2.0_@babel+core@7.21.3 core-js-compat: 3.11.1 semver: 6.3.0 transitivePeerDependencies: - supports-color - /@babel/preset-modules/0.1.4_@babel+core@7.20.2: + /@babel/preset-modules/0.1.4_@babel+core@7.21.3: resolution: {integrity: sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/plugin-proposal-unicode-property-regex': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-dotall-regex': 7.12.13_@babel+core@7.20.2 - '@babel/types': 7.20.7 + '@babel/plugin-proposal-unicode-property-regex': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-dotall-regex': 7.12.13_@babel+core@7.21.3 + '@babel/types': 7.21.3 esutils: 2.0.3 - /@babel/preset-react/7.13.13_@babel+core@7.20.2: + /@babel/preset-react/7.13.13_@babel+core@7.21.3: resolution: {integrity: sha512-gx+tDLIE06sRjKJkVtpZ/t3mzCDOnPG+ggHZG9lffUbX8+wC739x20YQc9V35Do6ZAxaUc/HhVHIiOzz5MvDmA==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 '@babel/helper-plugin-utils': 7.20.2 - '@babel/helper-validator-option': 7.18.6 - '@babel/plugin-transform-react-display-name': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-transform-react-jsx': 7.19.0_@babel+core@7.20.2 - '@babel/plugin-transform-react-jsx-development': 7.12.17_@babel+core@7.20.2 - '@babel/plugin-transform-react-pure-annotations': 7.12.1_@babel+core@7.20.2 + '@babel/helper-validator-option': 7.21.0 + '@babel/plugin-transform-react-display-name': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-transform-react-jsx': 7.21.0_@babel+core@7.21.3 + '@babel/plugin-transform-react-jsx-development': 7.12.17_@babel+core@7.21.3 + '@babel/plugin-transform-react-pure-annotations': 7.12.1_@babel+core@7.21.3 /@babel/preset-stage-0/7.8.3: resolution: {integrity: sha512-+l6FlG1j73t4wh78W41StbcCz0/9a1/y+vxfnjtHl060kSmcgMfGzK9MEkLvrCOXfhp9RCX+d88sm6rOqxEIEQ==} - /@babel/register/7.13.16_@babel+core@7.20.2: + /@babel/register/7.13.16_@babel+core@7.21.3: resolution: {integrity: sha512-dh2t11ysujTwByQjXNgJ48QZ2zcXKQVdV8s0TbeMI0flmtGWCdTwK9tJiACHXPLmncm5+ktNn/diojA45JE4jg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 clone-deep: 4.0.1 find-cache-dir: 2.1.0 make-dir: 2.1.0 - pirates: 4.0.1 + pirates: 4.0.5 source-map-support: 0.5.21 /@babel/runtime-corejs3/7.13.17: @@ -1714,20 +1579,12 @@ packages: regenerator-runtime: 0.13.11 dev: true - /@babel/runtime/7.20.1: - resolution: {integrity: sha512-mrzLkl6U9YLF8qpqI7TB82PESyEGjm/0Ly91jG575eVxMMlb8fYfOXFZIJ8XfLrJZQbm7dlKry2bJmXBUEkdFg==} + /@babel/runtime/7.21.0: + resolution: {integrity: sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==} engines: {node: '>=6.9.0'} dependencies: regenerator-runtime: 0.13.11 - /@babel/template/7.18.10: - resolution: {integrity: sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/parser': 7.20.3 - '@babel/types': 7.20.2 - /@babel/template/7.20.7: resolution: {integrity: sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==} engines: {node: '>=6.9.0'} @@ -1735,43 +1592,25 @@ packages: '@babel/code-frame': 7.18.6 '@babel/parser': 7.21.3 '@babel/types': 7.21.3 - dev: true - /@babel/traverse/7.20.1: - resolution: {integrity: sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==} + /@babel/traverse/7.21.3: + resolution: {integrity: sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==} engines: {node: '>=6.9.0'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 + '@babel/generator': 7.21.3 '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.19.0 + '@babel/helper-function-name': 7.21.0 '@babel/helper-hoist-variables': 7.18.6 '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.20.3 - '@babel/types': 7.20.2 + '@babel/parser': 7.21.3 + '@babel/types': 7.21.3 debug: 4.3.4 globals: 11.12.0 transitivePeerDependencies: - supports-color - /@babel/traverse/7.20.1_supports-color@5.5.0: - resolution: {integrity: sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/code-frame': 7.18.6 - '@babel/generator': 7.20.4 - '@babel/helper-environment-visitor': 7.18.9 - '@babel/helper-function-name': 7.19.0 - '@babel/helper-hoist-variables': 7.18.6 - '@babel/helper-split-export-declaration': 7.18.6 - '@babel/parser': 7.20.3 - '@babel/types': 7.20.2 - debug: 4.3.4_supports-color@5.5.0 - globals: 11.12.0 - transitivePeerDependencies: - - supports-color - - /@babel/traverse/7.21.3: + /@babel/traverse/7.21.3_supports-color@5.5.0: resolution: {integrity: sha512-XLyopNeaTancVitYZe2MlUEvgKb6YVVPXzofHgqHijCImG33b/uTurMS488ht/Hbsb2XK3U2BnSTxKVNGV3nGQ==} engines: {node: '>=6.9.0'} dependencies: @@ -1783,27 +1622,10 @@ packages: '@babel/helper-split-export-declaration': 7.18.6 '@babel/parser': 7.21.3 '@babel/types': 7.21.3 - debug: 4.3.4 + debug: 4.3.4_supports-color@5.5.0 globals: 11.12.0 transitivePeerDependencies: - supports-color - dev: true - - /@babel/types/7.20.2: - resolution: {integrity: sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.19.4 - '@babel/helper-validator-identifier': 7.19.1 - to-fast-properties: 2.0.0 - - /@babel/types/7.20.7: - resolution: {integrity: sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==} - engines: {node: '>=6.9.0'} - dependencies: - '@babel/helper-string-parser': 7.19.4 - '@babel/helper-validator-identifier': 7.19.1 - to-fast-properties: 2.0.0 /@babel/types/7.21.3: resolution: {integrity: sha512-sBGdETxC+/M4o/zKC0sl6sjWv62WFR/uzxrJ6uYyMLZOUlPnwzw0tKgVHOXxaAd5l2g8pEDM5RZ495GPQI77kg==} @@ -1824,7 +1646,7 @@ packages: /@changesets/apply-release-plan/6.1.3: resolution: {integrity: sha512-ECDNeoc3nfeAe1jqJb5aFQX7CqzQhD2klXRez2JDb/aVpGUbX673HgKrnrgJRuQR/9f2TtLoYIzrGB9qwD77mg==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/config': 2.3.0 '@changesets/get-version-range-type': 0.3.2 '@changesets/git': 2.0.0 @@ -1842,7 +1664,7 @@ packages: /@changesets/assemble-release-plan/5.2.3: resolution: {integrity: sha512-g7EVZCmnWz3zMBAdrcKhid4hkHT+Ft1n0mLussFMcB1dE2zCuwcvGoy9ec3yOgPGF4hoMtgHaMIk3T3TBdvU9g==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/errors': 0.1.4 '@changesets/get-dependents-graph': 1.3.5 '@changesets/types': 5.2.1 @@ -1860,7 +1682,7 @@ packages: resolution: {integrity: sha512-0cbTiDms+ICTVtEwAFLNW0jBNex9f5+fFv3I771nBvdnV/mOjd1QJ4+f8KtVSOrwD9SJkk9xbDkWFb0oXd8d1Q==} hasBin: true dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/apply-release-plan': 6.1.3 '@changesets/assemble-release-plan': 5.2.3 '@changesets/changelog-git': 0.1.14 @@ -1876,7 +1698,7 @@ packages: '@changesets/write': 0.2.3 '@manypkg/get-packages': 1.1.3 '@types/is-ci': 3.0.0 - '@types/semver': 6.2.2 + '@types/semver': 6.2.3 ansi-colors: 4.1.3 chalk: 2.4.2 enquirer: 2.3.6 @@ -1923,8 +1745,8 @@ packages: semver: 5.7.1 dev: true - /@changesets/get-github-info/0.5.0: - resolution: {integrity: sha512-vm5VgHwrxkMkUjFyn3UVNKLbDp9YMHd3vMf1IyJoa/7B+6VpqmtAaXyDS0zBLfN5bhzVCHrRnj4GcZXXcqrFTw==} + /@changesets/get-github-info/0.5.2: + resolution: {integrity: sha512-JppheLu7S114aEs157fOZDjFqUDpm7eHdq5E8SSR0gUBTEK0cNSHsrSR5a66xs0z3RWuo46QvA3vawp8BxDHvg==} dependencies: dataloader: 1.4.0 node-fetch: 2.6.9 @@ -1935,7 +1757,7 @@ packages: /@changesets/get-release-plan/3.0.16: resolution: {integrity: sha512-OpP9QILpBp1bY2YNIKFzwigKh7Qe9KizRsZomzLe6pK8IUo8onkAAVUD8+JRKSr8R7d4+JRuQrfSSNlEwKyPYg==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/assemble-release-plan': 5.2.3 '@changesets/config': 2.3.0 '@changesets/pre': 1.0.14 @@ -1951,7 +1773,7 @@ packages: /@changesets/git/2.0.0: resolution: {integrity: sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/errors': 0.1.4 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 @@ -1976,7 +1798,7 @@ packages: /@changesets/pre/1.0.14: resolution: {integrity: sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/errors': 0.1.4 '@changesets/types': 5.2.1 '@manypkg/get-packages': 1.1.3 @@ -1986,7 +1808,7 @@ packages: /@changesets/read/0.5.9: resolution: {integrity: sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/git': 2.0.0 '@changesets/logger': 0.0.5 '@changesets/parse': 0.3.16 @@ -2007,15 +1829,22 @@ packages: /@changesets/write/0.2.3: resolution: {integrity: sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/types': 5.2.1 fs-extra: 7.0.1 human-id: 1.0.2 prettier: 2.8.4 dev: true - /@cypress/react/7.0.1_afg4ncukyuyevrurg5xxicvqy4: - resolution: {integrity: sha512-kDTHt2A4kpnGsot7fh+86G5lSS+gSH2NQypQVtfLOolit99rdTOuEY9zit7fIlSvxcNsGzNQ27sE1vre7CsywA==} + /@colors/colors/1.5.0: + resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} + engines: {node: '>=0.1.90'} + requiresBuild: true + dev: true + optional: true + + /@cypress/react/7.0.2_kxqn2c7raunyx4zfzvxjupflne: + resolution: {integrity: sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==} peerDependencies: '@types/react': ^16.9.16 || ^17.0.0 cypress: '*' @@ -2025,14 +1854,13 @@ packages: '@types/react': optional: true dependencies: - '@types/react': 17.0.52 - cypress: 11.1.0 + cypress: 12.8.1 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 dev: true - /@cypress/react/7.0.1_ddmelm2ieimfs7lfnlxmtlhrry: - resolution: {integrity: sha512-kDTHt2A4kpnGsot7fh+86G5lSS+gSH2NQypQVtfLOolit99rdTOuEY9zit7fIlSvxcNsGzNQ27sE1vre7CsywA==} + /@cypress/react/7.0.2_omnm57pgrvq3mbg7qqmuk7p7le: + resolution: {integrity: sha512-TTV7XNMDOO9mZUFWiGbd44Od/jqMVX/QbHYKQmK1XT3nIVFs0EvKJuHJmwN7wxLOR/+6twtyX6vTD8z8XBTliQ==} peerDependencies: '@types/react': ^16.9.16 || ^17.0.0 cypress: '*' @@ -2042,17 +1870,18 @@ packages: '@types/react': optional: true dependencies: - cypress: 11.1.0 + '@types/react': 17.0.52 + cypress: 12.8.1 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 dev: true - /@cypress/request/2.88.10: - resolution: {integrity: sha512-Zp7F+R93N0yZyG34GutyTNr+okam7s/Fzc1+i3kcqOP8vk6OuajuE9qZJ6Rs+10/1JFtXFYMdyarnU1rZuJesg==} + /@cypress/request/2.88.11: + resolution: {integrity: sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==} engines: {node: '>= 6'} dependencies: aws-sign2: 0.7.0 - aws4: 1.11.0 + aws4: 1.12.0 caseless: 0.12.0 combined-stream: 1.0.8 extend: 3.0.2 @@ -2062,17 +1891,17 @@ packages: is-typedarray: 1.0.0 isstream: 0.1.2 json-stringify-safe: 5.0.1 - mime-types: 2.1.30 + mime-types: 2.1.35 performance-now: 2.1.0 - qs: 6.5.2 + qs: 6.10.4 safe-buffer: 5.2.1 tough-cookie: 2.5.0 tunnel-agent: 0.6.0 uuid: 8.3.2 dev: true - /@cypress/vite-dev-server/4.0.1: - resolution: {integrity: sha512-nfIC62Rip3Zd6Nb422qD+afSgaNVp6ovzcAAgWebiglxruBVrOGz38YL3r8zeOqwp0B1sNNrp/WE12gGd3eYVQ==} + /@cypress/vite-dev-server/5.0.4: + resolution: {integrity: sha512-F9ZkoBcHoILYKEQHDPnsBdzVbnudLoav3iMCOPRvgWfuMlen+zVed1g0nBBYTwfVYMfc9Xqn37ePC3GLSl1aYw==} dependencies: debug: 4.3.4 find-up: 6.3.0 @@ -2104,8 +1933,8 @@ packages: /@emotion/unitless/0.7.5: resolution: {integrity: sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==} - /@esbuild/android-arm/0.15.15: - resolution: {integrity: sha512-JJjZjJi2eBL01QJuWjfCdZxcIgot+VoK6Fq7eKF9w4YHm9hwl7nhBR1o2Wnt/WcANk5l9SkpvrldW1PLuXxcbw==} + /@esbuild/android-arm/0.15.18: + resolution: {integrity: sha512-5GT+kcs2WVGjVs7+boataCkO5Fg0y4kCjzkB5bAip7H4jfnOS3dA6KPiww9W1OEKTKeAcUVhdZGvgI65OXmUnw==} engines: {node: '>=12'} cpu: [arm] os: [android] @@ -2113,8 +1942,8 @@ packages: dev: true optional: true - /@esbuild/linux-loong64/0.15.15: - resolution: {integrity: sha512-lhz6UNPMDXUhtXSulw8XlFAtSYO26WmHQnCi2Lg2p+/TMiJKNLtZCYUxV4wG6rZMzXmr8InGpNwk+DLT2Hm0PA==} + /@esbuild/linux-loong64/0.15.18: + resolution: {integrity: sha512-L4jVKS82XVhw2nvzLg/19ClLWg0y27ulRwuP7lcyL6AbUWB5aPglXY3M21mauDQMDfRLs8cQmeT03r/+X3cZYQ==} engines: {node: '>=12'} cpu: [loong64] os: [linux] @@ -2122,15 +1951,30 @@ packages: dev: true optional: true - /@eslint/eslintrc/1.3.3: - resolution: {integrity: sha512-uj3pT6Mg+3t39fvLrj8iuCIJ38zKO9FpGtJ4BBJebJhEwjoT+KLVNCcHT5QC9NGRIEi7fZ0ZR8YRb884auB4Lg==} + /@eslint-community/eslint-utils/4.2.0_eslint@8.36.0: + resolution: {integrity: sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + dependencies: + eslint: 8.36.0 + eslint-visitor-keys: 3.3.0 + dev: true + + /@eslint-community/regexpp/4.4.0: + resolution: {integrity: sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + + /@eslint/eslintrc/2.0.1: + resolution: {integrity: sha512-eFRmABvW2E5Ho6f5fHLqgena46rOj7r7OKHYfLElqcBfGFHHpjBhivyi5+jOEQuSpdc/1phIZJlbC2te+tZNIw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: ajv: 6.12.6 debug: 4.3.4 - espree: 9.4.1 - globals: 13.18.0 - ignore: 5.2.1 + espree: 9.5.0 + globals: 13.20.0 + ignore: 5.2.4 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -2139,6 +1983,15 @@ packages: - supports-color dev: true + /@eslint/js/8.36.0: + resolution: {integrity: sha512-lxJ9R5ygVm8ZWgYdUweoq5ownDlJ4upvoWmO4eLxBYHdMo+vZ/Rx0EN6MbKWDJOSUGrqJy2Gt+Dyv/VKml0fjg==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dev: true + + /@gar/promisify/1.1.3: + resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} + dev: true + /@hapi/accept/5.0.2: resolution: {integrity: sha512-CmzBx/bXUR8451fnZRuZAJRlzgm0Jgu5dltTX/bszmR2lheb9BpyN47Q1RbaGTsvFzn0PXAEs+lXDKfshccYZw==} dependencies: @@ -2156,8 +2009,8 @@ packages: resolution: {integrity: sha512-sqKVVVOe5ivCaXDWivIJYVSaEgdQK9ul7a4Kity5Iw7u9+wBAPbX1RMSnLLmp7O4Vzj0WOWwMAJsTL00xwaNug==} dev: true - /@humanwhocodes/config-array/0.11.7: - resolution: {integrity: sha512-kBbPWzN8oVMLb0hOUYXhmxggL/1cJE6ydvjDIGi9EnAGUyA7cLVKQg+d/Dsm+KZwx2czGHrCmMVLiyg8s5JPKw==} + /@humanwhocodes/config-array/0.11.8: + resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==} engines: {node: '>=10.10.0'} dependencies: '@humanwhocodes/object-schema': 1.2.1 @@ -2176,15 +2029,19 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: true + /@isaacs/string-locale-compare/1.1.0: + resolution: {integrity: sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==} + dev: true + /@jest/types/26.6.2: resolution: {integrity: sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ==} engines: {node: '>= 10.14.2'} dependencies: '@types/istanbul-lib-coverage': 2.0.3 '@types/istanbul-reports': 3.0.0 - '@types/node': 18.11.9 + '@types/node': 18.15.3 '@types/yargs': 15.0.13 - chalk: 4.1.1 + chalk: 4.1.2 dev: true /@jridgewell/gen-mapping/0.1.1: @@ -2229,7 +2086,7 @@ packages: /@manypkg/find-root/1.1.0: resolution: {integrity: sha512-mki5uBvhHzO8kYYix/WRy2WX8S3B5wdVSc9D6KcU5lQNglP2yt58/VfLuAK49glRXChosY8ap2oJ1qgma3GUVA==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@types/node': 12.20.55 find-up: 4.1.0 fs-extra: 8.1.0 @@ -2238,7 +2095,7 @@ packages: /@manypkg/get-packages/1.1.3: resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@changesets/types': 4.1.0 '@manypkg/find-root': 1.1.0 fs-extra: 8.1.0 @@ -2346,36 +2203,197 @@ packages: resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 + '@nodelib/fs.stat': 2.0.5 + run-parallel: 1.2.0 + dev: true + + /@nodelib/fs.stat/2.0.5: + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + dev: true + + /@nodelib/fs.walk/1.2.8: + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + dependencies: + '@nodelib/fs.scandir': 2.1.5 + fastq: 1.15.0 + dev: true + + /@npmcli/arborist/6.2.5: + resolution: {integrity: sha512-+GPm+9WrDnl9q+LvuMB2W+roVinHTGDdYWOtYzRfpAnuiqaATFbH14skpXjlJ7LvyUcyd1oJhuGq6XXJLGFNng==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + '@isaacs/string-locale-compare': 1.1.0 + '@npmcli/fs': 3.1.0 + '@npmcli/installed-package-contents': 2.0.2 + '@npmcli/map-workspaces': 3.0.2 + '@npmcli/metavuln-calculator': 5.0.0 + '@npmcli/name-from-folder': 2.0.0 + '@npmcli/node-gyp': 3.0.0 + '@npmcli/package-json': 3.0.0 + '@npmcli/query': 3.0.0 + '@npmcli/run-script': 6.0.0 + bin-links: 4.0.1 + cacache: 17.0.4 + common-ancestor-path: 1.0.1 + hosted-git-info: 6.1.1 + json-parse-even-better-errors: 3.0.0 + json-stringify-nice: 1.1.4 + minimatch: 6.2.0 + nopt: 7.0.0 + npm-install-checks: 6.0.0 + npm-package-arg: 10.1.0 + npm-pick-manifest: 8.0.1 + npm-registry-fetch: 14.0.3 + npmlog: 7.0.1 + pacote: 15.1.1 + parse-conflict-json: 3.0.0 + proc-log: 3.0.0 + promise-all-reject-late: 1.0.1 + promise-call-limit: 1.0.1 + read-package-json-fast: 3.0.2 + semver: 7.3.8 + ssri: 10.0.1 + treeverse: 3.0.0 + walk-up-path: 1.0.0 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /@npmcli/fs/2.1.2: + resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@gar/promisify': 1.1.3 + semver: 7.3.8 + dev: true + + /@npmcli/fs/3.1.0: + resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + semver: 7.3.8 + dev: true + + /@npmcli/git/4.0.3: + resolution: {integrity: sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + '@npmcli/promise-spawn': 6.0.2 + lru-cache: 7.18.3 + mkdirp: 1.0.4 + npm-pick-manifest: 8.0.1 + proc-log: 3.0.0 + promise-inflight: 1.0.1 + promise-retry: 2.0.1 + semver: 7.3.8 + which: 3.0.0 + transitivePeerDependencies: + - bluebird + dev: true + + /@npmcli/installed-package-contents/2.0.2: + resolution: {integrity: sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + npm-bundled: 3.0.0 + npm-normalize-package-bin: 3.0.0 + dev: true + + /@npmcli/map-workspaces/3.0.2: + resolution: {integrity: sha512-bCEC4PG7HbadtAYkW/TTUVNEOSr5Dhfmv6yGLgByJgCvdCqq7teq09cjvJ1LhzJU/euWjvYMcQxsfj7yDD2ikg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + '@npmcli/name-from-folder': 2.0.0 + glob: 8.1.0 + minimatch: 6.2.0 + read-package-json-fast: 3.0.2 + dev: true + + /@npmcli/metavuln-calculator/5.0.0: + resolution: {integrity: sha512-BBFQx4M12wiEuVwCgtX/Depx0B/+NHMwDWOlXT41/Pdy5W/1Fenk+hibUlMSrFWwASbX+fY90UbILAEIYH02/A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + cacache: 17.0.4 + json-parse-even-better-errors: 3.0.0 + pacote: 15.1.1 + semver: 7.3.8 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /@npmcli/move-file/2.0.1: + resolution: {integrity: sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + deprecated: This functionality has been moved to @npmcli/fs + dependencies: + mkdirp: 1.0.4 + rimraf: 3.0.2 + dev: true + + /@npmcli/name-from-folder/2.0.0: + resolution: {integrity: sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + + /@npmcli/node-gyp/3.0.0: + resolution: {integrity: sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + + /@npmcli/package-json/3.0.0: + resolution: {integrity: sha512-NnuPuM97xfiCpbTEJYtEuKz6CFbpUHtaT0+5via5pQeI25omvQDFbp1GcGJ/c4zvL/WX0qbde6YiLgfZbWFgvg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + json-parse-even-better-errors: 3.0.0 + dev: true + + /@npmcli/promise-spawn/6.0.2: + resolution: {integrity: sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + which: 3.0.0 dev: true - /@nodelib/fs.stat/2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} + /@npmcli/query/3.0.0: + resolution: {integrity: sha512-MFNDSJNgsLZIEBVZ0Q9w9K7o07j5N4o4yjtdz2uEpuCZlXGMuPENiRaFYk0vRqAA64qVuUQwC05g27fRtfUgnA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + postcss-selector-parser: 6.0.11 dev: true - /@nodelib/fs.walk/1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + /@npmcli/run-script/6.0.0: + resolution: {integrity: sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.11.0 + '@npmcli/node-gyp': 3.0.0 + '@npmcli/promise-spawn': 6.0.2 + node-gyp: 9.3.1 + read-package-json-fast: 3.0.2 + which: 3.0.0 + transitivePeerDependencies: + - bluebird + - supports-color dev: true - /@octokit/auth-token/2.4.5: - resolution: {integrity: sha512-BpGYsPgJt05M7/L/5FoE1PiAbdxXFZkX/3kDYcsvd1v6UhlnE5e96dTDr0ezX/EFwciQxf3cNV0loipsURU+WA==} + /@octokit/auth-token/2.5.0: + resolution: {integrity: sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==} dependencies: - '@octokit/types': 6.14.2 + '@octokit/types': 6.41.0 /@octokit/core/2.5.4: resolution: {integrity: sha512-HCp8yKQfTITYK+Nd09MHzAlP1v3Ii/oCohv0/TW9rhSLvzb98BOVs2QmVYuloE6a3l6LsfyGIwb6Pc4ycgWlIQ==} dependencies: - '@octokit/auth-token': 2.4.5 - '@octokit/graphql': 4.6.1 - '@octokit/request': 5.4.15 + '@octokit/auth-token': 2.5.0 + '@octokit/graphql': 4.8.0 + '@octokit/request': 5.6.3 '@octokit/types': 5.5.0 - before-after-hook: 2.2.1 + before-after-hook: 2.2.3 universal-user-agent: 5.0.0 transitivePeerDependencies: - encoding @@ -2384,29 +2402,29 @@ packages: /@octokit/core/3.6.0: resolution: {integrity: sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==} dependencies: - '@octokit/auth-token': 2.4.5 - '@octokit/graphql': 4.6.1 + '@octokit/auth-token': 2.5.0 + '@octokit/graphql': 4.8.0 '@octokit/request': 5.6.3 - '@octokit/request-error': 2.0.5 - '@octokit/types': 6.14.2 - before-after-hook: 2.2.1 + '@octokit/request-error': 2.1.0 + '@octokit/types': 6.41.0 + before-after-hook: 2.2.3 universal-user-agent: 6.0.0 transitivePeerDependencies: - encoding dev: false - /@octokit/endpoint/6.0.11: - resolution: {integrity: sha512-fUIPpx+pZyoLW4GCs3yMnlj2LfoXTWDUVPTC4V3MUEKZm48W+XYpeWSZCv+vYF1ZABUm2CqnDVf1sFtIYrj7KQ==} + /@octokit/endpoint/6.0.12: + resolution: {integrity: sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==} dependencies: '@octokit/types': 6.41.0 is-plain-object: 5.0.0 universal-user-agent: 6.0.0 - /@octokit/graphql/4.6.1: - resolution: {integrity: sha512-2lYlvf4YTDgZCTXTW4+OX+9WTLFtEUc6hGm4qM1nlZjzxj+arizM4aHWzBVBCxY9glh7GIs0WEuiSgbVzv8cmA==} + /@octokit/graphql/4.8.0: + resolution: {integrity: sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==} dependencies: '@octokit/request': 5.6.3 - '@octokit/types': 6.14.2 + '@octokit/types': 6.41.0 universal-user-agent: 6.0.0 transitivePeerDependencies: - encoding @@ -2414,16 +2432,13 @@ packages: /@octokit/openapi-types/12.11.0: resolution: {integrity: sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==} - /@octokit/openapi-types/7.0.0: - resolution: {integrity: sha512-gV/8DJhAL/04zjTI95a7FhQwS6jlEE0W/7xeYAzuArD0KVAVWDLP2f3vi98hs3HLTczxXdRK/mF0tRoQPpolEw==} - - /@octokit/plugin-paginate-rest/2.13.3_@octokit+core@2.5.4: - resolution: {integrity: sha512-46lptzM9lTeSmIBt/sVP/FLSTPGx6DCzAdSX3PfeJ3mTf4h9sGC26WpaQzMEq/Z44cOcmx8VsOhO+uEgE3cjYg==} + /@octokit/plugin-paginate-rest/2.21.3_@octokit+core@2.5.4: + resolution: {integrity: sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==} peerDependencies: '@octokit/core': '>=2' dependencies: '@octokit/core': 2.5.4 - '@octokit/types': 6.14.2 + '@octokit/types': 6.41.0 dev: true /@octokit/plugin-paginate-rest/2.21.3_@octokit+core@3.6.0: @@ -2456,13 +2471,6 @@ packages: deprecation: 2.3.1 dev: false - /@octokit/request-error/2.0.5: - resolution: {integrity: sha512-T/2wcCFyM7SkXzNoyVNWjyVlUwBvW3igM3Btr/eKYiPmucXTtkxt2RBsf6gn3LTzaLSLTQtNmvg+dGsOxQrjZg==} - dependencies: - '@octokit/types': 6.14.2 - deprecation: 2.3.1 - once: 1.4.0 - /@octokit/request-error/2.1.0: resolution: {integrity: sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==} dependencies: @@ -2470,21 +2478,10 @@ packages: deprecation: 2.3.1 once: 1.4.0 - /@octokit/request/5.4.15: - resolution: {integrity: sha512-6UnZfZzLwNhdLRreOtTkT9n57ZwulCve8q3IT/Z477vThu6snfdkBuhxnChpOKNGxcQ71ow561Qoa6uqLdPtag==} - dependencies: - '@octokit/endpoint': 6.0.11 - '@octokit/request-error': 2.0.5 - '@octokit/types': 6.14.2 - is-plain-object: 5.0.0 - node-fetch: 2.6.1 - universal-user-agent: 6.0.0 - dev: true - /@octokit/request/5.6.3: resolution: {integrity: sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==} dependencies: - '@octokit/endpoint': 6.0.11 + '@octokit/endpoint': 6.0.12 '@octokit/request-error': 2.1.0 '@octokit/types': 6.41.0 is-plain-object: 5.0.0 @@ -2497,7 +2494,7 @@ packages: resolution: {integrity: sha512-4jTmn8WossTUaLfNDfXk4fVJgbz5JgZE8eCs4BvIb52lvIH8rpVMD1fgRCrHbSd6LRPE5JFZSfAEtszrOq3ZFQ==} dependencies: '@octokit/core': 2.5.4 - '@octokit/plugin-paginate-rest': 2.13.3_@octokit+core@2.5.4 + '@octokit/plugin-paginate-rest': 2.21.3_@octokit+core@2.5.4 '@octokit/plugin-request-log': 1.0.0 '@octokit/plugin-rest-endpoint-methods': 3.17.0 transitivePeerDependencies: @@ -2507,20 +2504,15 @@ packages: /@octokit/types/4.1.10: resolution: {integrity: sha512-/wbFy1cUIE5eICcg0wTKGXMlKSbaAxEr00qaBXzscLXpqhcwgXeS6P8O0pkysBhRfyjkKjJaYrvR1ExMO5eOXQ==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 dev: true /@octokit/types/5.5.0: resolution: {integrity: sha512-UZ1pErDue6bZNjYOotCNveTXArOMZQFG6hKJfOnGnulVCMcVVi7YIIuuR4WfBhjo7zgpmzn/BkPDnUXtNx+PcQ==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 dev: true - /@octokit/types/6.14.2: - resolution: {integrity: sha512-wiQtW9ZSy4OvgQ09iQOdyXYNN60GqjCL/UdMsepDr1Gr0QzpW6irIKbH3REuAHXAhxkEk9/F2a3Gcs1P6kW5jA==} - dependencies: - '@octokit/openapi-types': 7.0.0 - /@octokit/types/6.41.0: resolution: {integrity: sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==} dependencies: @@ -2607,8 +2599,8 @@ packages: dependencies: '@rollup/pluginutils': 5.0.2_rollup@3.19.1 '@types/resolve': 1.20.2 - deepmerge: 4.2.2 - is-builtin-module: 3.2.0 + deepmerge: 4.3.0 + is-builtin-module: 3.2.1 is-module: 1.0.0 resolve: 1.22.1 rollup: 3.19.1 @@ -2672,6 +2664,11 @@ packages: rollup: 3.19.1 dev: true + /@sigstore/protobuf-specs/0.1.0: + resolution: {integrity: sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /@sindresorhus/is/0.7.0: resolution: {integrity: sha512-ONhaKPIufzzrlNbqtWFFd+jlnemX6lJAgq9ZeiZtS7I1PIf/la7CW4m83rTXRnVnsMbW2k56pGYu7AUFJD9Pow==} engines: {node: '>=4'} @@ -2681,23 +2678,23 @@ packages: engines: {node: '>=10'} dependencies: '@babel/code-frame': 7.18.6 - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@types/aria-query': 4.2.1 aria-query: 4.2.2 - chalk: 4.1.1 + chalk: 4.1.2 dom-accessibility-api: 0.5.4 lz-string: 1.4.4 pretty-format: 26.6.2 dev: true - /@testing-library/preact/2.0.1_preact@10.5.13: + /@testing-library/preact/2.0.1_preact@10.13.1: resolution: {integrity: sha512-79kwVOY+3caoLgaPbiPzikjgY0Aya7Fc7TvGtR1upCnz2wrtmPDnN2t9vO7I7vDP2zoA+feSwOH5Q0BFErhaaQ==} engines: {node: '>= 10'} peerDependencies: preact: '>=10 || ^10.0.0-alpha.0 || ^10.0.0-beta.0' dependencies: '@testing-library/dom': 7.30.4 - preact: 10.5.13 + preact: 10.13.1 dev: true /@testing-library/react-hooks/5.1.2_7qv3rjnqa3j7exc7qtvho7thru: @@ -2712,9 +2709,9 @@ packages: react-test-renderer: optional: true dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@types/react': 17.0.52 - '@types/react-dom': 18.0.9 + '@types/react-dom': 17.0.18 '@types/react-test-renderer': 17.0.1 filter-console: 0.1.1 react: 17.0.2 @@ -2730,7 +2727,7 @@ packages: react: '*' react-dom: '*' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@testing-library/dom': 7.30.4 react: 17.0.2 react-dom: 17.0.2_react@17.0.2 @@ -2741,6 +2738,13 @@ packages: engines: {node: '>= 10'} dev: true + /@tufjs/models/1.0.0: + resolution: {integrity: sha512-RRMu4uMxWnZlxaIBxahSb2IssFZiu188sndesZflWOe1cA/qUqtemSIoBWbuVKPvvdktapImWNnKpBcc+VrCQw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + minimatch: 6.2.0 + dev: true + /@types/aria-query/4.2.1: resolution: {integrity: sha512-S6oPal772qJZHoRZLFc/XoZW2gFvwXusYUmXPXkgxJLuEk2vOt7jc4Yo6z/vtI0EBkbPBVrJJ0B+prLIKiWqHg==} dev: true @@ -2758,7 +2762,7 @@ packages: /@types/cheerio/0.22.28: resolution: {integrity: sha512-ehUMGSW5IeDxJjbru4awKYMlKGmo1wSSGUVqXtYwlgmUM8X1a0PZttEIm6yEY7vHsY/hh6iPnklF213G0UColw==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 dev: true /@types/enzyme-adapter-react-16/1.0.6: @@ -2782,7 +2786,7 @@ packages: resolution: {integrity: sha512-SEYeGAIQIQX8NN6LDKprLjbrd5dARM5EXsd8GI/A5l0apYI1fGMWgPHSe4ZKL4eozlAyI+doUE9XbYS4xCkQ1w==} dependencies: '@types/minimatch': 3.0.4 - '@types/node': 18.11.9 + '@types/node': 18.15.3 /@types/hast/2.3.1: resolution: {integrity: sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==} @@ -2817,7 +2821,7 @@ packages: /@types/keyv/3.1.4: resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 /@types/mdast/3.0.3: resolution: {integrity: sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==} @@ -2827,14 +2831,14 @@ packages: /@types/minimatch/3.0.4: resolution: {integrity: sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==} - /@types/minimist/1.2.1: - resolution: {integrity: sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==} + /@types/minimist/1.2.2: + resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==} dev: true /@types/node-fetch/2.5.10: resolution: {integrity: sha512-IpkX0AasN44hgEad0gEF/V6EgR5n69VEqPEgnmoM8GsIGro3PowbWs4tR6IhxUTyPLpOn+fiGG6nrQhcmoCuIQ==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 form-data: 3.0.1 dev: true @@ -2842,15 +2846,15 @@ packages: resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} dev: true - /@types/node/14.18.33: - resolution: {integrity: sha512-qelS/Ra6sacc4loe/3MSjXNL1dNQ/GjxNHVzuChwMfmk7HuycRLVQN2qNY3XahK+fZc5E2szqQSKUyAF0E+2bg==} + /@types/node/14.18.38: + resolution: {integrity: sha512-zMRIidN2Huikv/+/U7gRPFYsXDR/7IGqFZzTLnCEj5+gkrQjsowfamaxEnyvArct5hxGA3bTxMXlYhH78V6Cew==} dev: true - /@types/node/18.11.9: - resolution: {integrity: sha512-CRpX21/kGdzjOpFsZSkcrXMGIBWMGNIHXXBVFSH+ggkftxg+XYP20TESbh+zFvFj3EQOl5byk0HTRn1IL6hbqg==} + /@types/node/18.15.3: + resolution: {integrity: sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==} - /@types/normalize-package-data/2.4.0: - resolution: {integrity: sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==} + /@types/normalize-package-data/2.4.1: + resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==} dev: true /@types/parse-json/4.0.0: @@ -2872,12 +2876,6 @@ packages: '@types/react': 17.0.52 dev: true - /@types/react-dom/18.0.9: - resolution: {integrity: sha512-qnVvHxASt/H7i+XG1U1xMiY5t+IHcPGUK7TDMDzom08xa7e86eCeKOiLZezwCKVxJn6NEiiy2ekgX8aQssjIKg==} - dependencies: - '@types/react': 17.0.52 - dev: true - /@types/react-test-renderer/17.0.1: resolution: {integrity: sha512-3Fi2O6Zzq/f3QR9dRnlnHso9bMl7weKCviFmfF6B4LS1Uat6Hkm15k0ZAQuDz+UBq6B3+g+NM6IT2nr5QgPzCw==} dependencies: @@ -2899,14 +2897,14 @@ packages: /@types/responselike/1.0.0: resolution: {integrity: sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 /@types/scheduler/0.16.1: resolution: {integrity: sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==} dev: true - /@types/semver/6.2.2: - resolution: {integrity: sha512-RxAwYt4rGwK5GyoRwuP0jT6ZHAVTdz2EqgsHmX0PYNjGsko+OeT4WFXXTs/lM3teJUJodM+SNtAL5/pXIJ61IQ==} + /@types/semver/6.2.3: + resolution: {integrity: sha512-KQf+QAMWKMrtBMsB8/24w53tEsxllMj6TuA80TT/5igJalLI/zm0L3oXRbIAl4Ohfc85gyHX/jhMwsVkmhLU4A==} dev: true /@types/semver/7.3.13: @@ -2938,12 +2936,12 @@ packages: resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==} requiresBuild: true dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 dev: true optional: true - /@typescript-eslint/eslint-plugin/5.44.0_4kbswhbwl5syvdj4jodacfm2ou: - resolution: {integrity: sha512-j5ULd7FmmekcyWeArx+i8x7sdRHzAtXTkmDPthE4amxZOWKFK7bomoJ4r7PJ8K7PoMzD16U8MmuZFAonr1ERvw==} + /@typescript-eslint/eslint-plugin/5.55.0_342y7v4tc7ytrrysmit6jo4wri: + resolution: {integrity: sha512-IZGc50rtbjk+xp5YQoJvmMPmJEYoC53SiKPXyqWfv15XoD2Y5Kju6zN0DwlmaGJp1Iw33JsWJcQ7nw0lGCGjVg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: '@typescript-eslint/parser': ^5.0.0 @@ -2953,15 +2951,16 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.44.0_pku7h6lsbnh7tcsfjudlqd5qce - '@typescript-eslint/scope-manager': 5.44.0 - '@typescript-eslint/type-utils': 5.44.0_pku7h6lsbnh7tcsfjudlqd5qce - '@typescript-eslint/utils': 5.44.0_pku7h6lsbnh7tcsfjudlqd5qce + '@eslint-community/regexpp': 4.4.0 + '@typescript-eslint/parser': 5.55.0_vgl77cfdswitgr47lm5swmv43m + '@typescript-eslint/scope-manager': 5.55.0 + '@typescript-eslint/type-utils': 5.55.0_vgl77cfdswitgr47lm5swmv43m + '@typescript-eslint/utils': 5.55.0_vgl77cfdswitgr47lm5swmv43m debug: 4.3.4 - eslint: 8.28.0 - ignore: 5.2.1 + eslint: 8.36.0 + grapheme-splitter: 1.0.4 + ignore: 5.2.4 natural-compare-lite: 1.4.0 - regexpp: 3.2.0 semver: 7.3.8 tsutils: 3.21.0_typescript@4.9.5 typescript: 4.9.5 @@ -2969,8 +2968,8 @@ packages: - supports-color dev: true - /@typescript-eslint/parser/5.44.0_pku7h6lsbnh7tcsfjudlqd5qce: - resolution: {integrity: sha512-H7LCqbZnKqkkgQHaKLGC6KUjt3pjJDx8ETDqmwncyb6PuoigYajyAwBGz08VU/l86dZWZgI4zm5k2VaKqayYyA==} + /@typescript-eslint/parser/5.55.0_vgl77cfdswitgr47lm5swmv43m: + resolution: {integrity: sha512-ppvmeF7hvdhUUZWSd2EEWfzcFkjJzgNQzVST22nzg958CR+sphy8A6K7LXQZd6V75m1VKjp+J4g/PCEfSCmzhw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 @@ -2979,26 +2978,26 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/scope-manager': 5.44.0 - '@typescript-eslint/types': 5.44.0 - '@typescript-eslint/typescript-estree': 5.44.0_typescript@4.9.5 + '@typescript-eslint/scope-manager': 5.55.0 + '@typescript-eslint/types': 5.55.0 + '@typescript-eslint/typescript-estree': 5.55.0_typescript@4.9.5 debug: 4.3.4 - eslint: 8.28.0 + eslint: 8.36.0 typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/scope-manager/5.44.0: - resolution: {integrity: sha512-2pKml57KusI0LAhgLKae9kwWeITZ7IsZs77YxyNyIVOwQ1kToyXRaJLl+uDEXzMN5hnobKUOo2gKntK9H1YL8g==} + /@typescript-eslint/scope-manager/5.55.0: + resolution: {integrity: sha512-OK+cIO1ZGhJYNCL//a3ROpsd83psf4dUJ4j7pdNVzd5DmIk+ffkuUIX2vcZQbEW/IR41DYsfJTB19tpCboxQuw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.44.0 - '@typescript-eslint/visitor-keys': 5.44.0 + '@typescript-eslint/types': 5.55.0 + '@typescript-eslint/visitor-keys': 5.55.0 dev: true - /@typescript-eslint/type-utils/5.44.0_pku7h6lsbnh7tcsfjudlqd5qce: - resolution: {integrity: sha512-A1u0Yo5wZxkXPQ7/noGkRhV4J9opcymcr31XQtOzcc5nO/IHN2E2TPMECKWYpM3e6olWEM63fq/BaL1wEYnt/w==} + /@typescript-eslint/type-utils/5.55.0_vgl77cfdswitgr47lm5swmv43m: + resolution: {integrity: sha512-ObqxBgHIXj8rBNm0yh8oORFrICcJuZPZTqtAFh0oZQyr5DnAHZWfyw54RwpEEH+fD8suZaI0YxvWu5tYE/WswA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: '*' @@ -3007,23 +3006,23 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/typescript-estree': 5.44.0_typescript@4.9.5 - '@typescript-eslint/utils': 5.44.0_pku7h6lsbnh7tcsfjudlqd5qce + '@typescript-eslint/typescript-estree': 5.55.0_typescript@4.9.5 + '@typescript-eslint/utils': 5.55.0_vgl77cfdswitgr47lm5swmv43m debug: 4.3.4 - eslint: 8.28.0 + eslint: 8.36.0 tsutils: 3.21.0_typescript@4.9.5 typescript: 4.9.5 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/types/5.44.0: - resolution: {integrity: sha512-Tp+zDnHmGk4qKR1l+Y1rBvpjpm5tGXX339eAlRBDg+kgZkz9Bw+pqi4dyseOZMsGuSH69fYfPJCBKBrbPCxYFQ==} + /@typescript-eslint/types/5.55.0: + resolution: {integrity: sha512-M4iRh4AG1ChrOL6Y+mETEKGeDnT7Sparn6fhZ5LtVJF1909D5O4uqK+C5NPbLmpfZ0XIIxCdwzKiijpZUOvOug==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/typescript-estree/5.44.0_typescript@4.9.5: - resolution: {integrity: sha512-M6Jr+RM7M5zeRj2maSfsZK2660HKAJawv4Ud0xT+yauyvgrsHu276VtXlKDFnEmhG+nVEd0fYZNXGoAgxwDWJw==} + /@typescript-eslint/typescript-estree/5.55.0_typescript@4.9.5: + resolution: {integrity: sha512-I7X4A9ovA8gdpWMpr7b1BN9eEbvlEtWhQvpxp/yogt48fy9Lj3iE3ild/1H3jKBBIYj5YYJmS2+9ystVhC7eaQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: typescript: '*' @@ -3031,8 +3030,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 5.44.0 - '@typescript-eslint/visitor-keys': 5.44.0 + '@typescript-eslint/types': 5.55.0 + '@typescript-eslint/visitor-keys': 5.55.0 debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 @@ -3043,70 +3042,69 @@ packages: - supports-color dev: true - /@typescript-eslint/utils/5.44.0_pku7h6lsbnh7tcsfjudlqd5qce: - resolution: {integrity: sha512-fMzA8LLQ189gaBjS0MZszw5HBdZgVwxVFShCO3QN+ws3GlPkcy9YuS3U4wkT6su0w+Byjq3mS3uamy9HE4Yfjw==} + /@typescript-eslint/utils/5.55.0_vgl77cfdswitgr47lm5swmv43m: + resolution: {integrity: sha512-FkW+i2pQKcpDC3AY6DU54yl8Lfl14FVGYDgBTyGKB75cCwV3KpkpTMFi9d9j2WAJ4271LR2HeC5SEWF/CZmmfw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: + '@eslint-community/eslint-utils': 4.2.0_eslint@8.36.0 '@types/json-schema': 7.0.11 '@types/semver': 7.3.13 - '@typescript-eslint/scope-manager': 5.44.0 - '@typescript-eslint/types': 5.44.0 - '@typescript-eslint/typescript-estree': 5.44.0_typescript@4.9.5 - eslint: 8.28.0 + '@typescript-eslint/scope-manager': 5.55.0 + '@typescript-eslint/types': 5.55.0 + '@typescript-eslint/typescript-estree': 5.55.0_typescript@4.9.5 + eslint: 8.36.0 eslint-scope: 5.1.1 - eslint-utils: 3.0.0_eslint@8.28.0 semver: 7.3.8 transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/visitor-keys/5.44.0: - resolution: {integrity: sha512-a48tLG8/4m62gPFbJ27FxwCOqPKxsb8KC3HkmYoq2As/4YyjQl1jDbRr1s63+g4FS/iIehjmN3L5UjmKva1HzQ==} + /@typescript-eslint/visitor-keys/5.55.0: + resolution: {integrity: sha512-q2dlHHwWgirKh1D3acnuApXG+VNXpEY5/AwRxDVuEQpxWaB0jCDe0jFMVMALJ3ebSfuOVE8/rMS+9ZOYGg1GWw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: - '@typescript-eslint/types': 5.44.0 + '@typescript-eslint/types': 5.55.0 eslint-visitor-keys: 3.3.0 dev: true - /@vitest/expect/0.29.1: - resolution: {integrity: sha512-VFt1u34D+/L4pqjLA8VGPdHbdF8dgjX9Nq573L9KG6/7MIAL9jmbEIKpXudmxjoTwcyczOXRyDuUWBQHZafjoA==} + /@vitest/expect/0.29.3: + resolution: {integrity: sha512-z/0JqBqqrdtrT/wzxNrWC76EpkOHdl+SvuNGxWulLaoluygntYyG5wJul5u/rQs5875zfFz/F+JaDf90SkLUIg==} dependencies: - '@vitest/spy': 0.29.1 - '@vitest/utils': 0.29.1 + '@vitest/spy': 0.29.3 + '@vitest/utils': 0.29.3 chai: 4.3.7 dev: true - /@vitest/runner/0.29.1: - resolution: {integrity: sha512-VZ6D+kWpd/LVJjvxkt79OA29FUpyrI5L/EEwoBxH5m9KmKgs1QWNgobo/CGQtIWdifLQLvZdzYEK7Qj96w/ixQ==} + /@vitest/runner/0.29.3: + resolution: {integrity: sha512-XLi8ctbvOWhUWmuvBUSIBf8POEDH4zCh6bOuVxm/KGfARpgmVF1ku+vVNvyq85va+7qXxtl+MFmzyXQ2xzhAvw==} dependencies: - '@vitest/utils': 0.29.1 + '@vitest/utils': 0.29.3 p-limit: 4.0.0 pathe: 1.1.0 dev: true - /@vitest/spy/0.29.1: - resolution: {integrity: sha512-sRXXK44pPzaizpiZOIQP7YMhxIs80J/b6v1yR3SItpxG952c8tdA7n0O2j4OsVkjiO/ZDrjAYFrXL3gq6hLx6Q==} + /@vitest/spy/0.29.3: + resolution: {integrity: sha512-LLpCb1oOCOZcBm0/Oxbr1DQTuKLRBsSIHyLYof7z4QVE8/v8NcZKdORjMUq645fcfX55+nLXwU/1AQ+c2rND+w==} dependencies: - tinyspy: 1.0.2 + tinyspy: 1.1.1 dev: true - /@vitest/utils/0.29.1: - resolution: {integrity: sha512-6npOEpmyE6zPS2wsWb7yX5oDpp6WY++cC5BX6/qaaMhGC3ZlPd8BbTz3RtGPi1PfPerPvfs4KqS/JDOIaB6J3w==} + /@vitest/utils/0.29.3: + resolution: {integrity: sha512-hg4Ff8AM1GtUnLpUJlNMxrf9f4lZr/xRJjh3uJ0QFP+vjaW82HAxKrmeBmLnhc8Os2eRf+f+VBu4ts7TafPPkA==} dependencies: cli-truncate: 3.1.0 diff: 5.1.0 loupe: 2.3.6 - picocolors: 1.0.0 pretty-format: 27.5.1 dev: true /@vue/compiler-core/3.2.47: resolution: {integrity: sha512-p4D7FDnQb7+YJmO2iPEv0SQNeNzcbHdGByJDsT4lynf63AFkOTFN07HsiRSvjGo0QrxR/o3d0hUyNCUnBU2Tig==} dependencies: - '@babel/parser': 7.20.15 + '@babel/parser': 7.21.3 '@vue/shared': 3.2.47 estree-walker: 2.0.2 source-map: 0.6.1 @@ -3122,7 +3120,7 @@ packages: /@vue/compiler-sfc/3.2.47: resolution: {integrity: sha512-rog05W+2IFfxjMcFw10tM9+f7i/+FFpZJJ5XHX72NP9eC2uRD+42M3pYcQqDXVYoj74kHMSEdQ/WmCjt8JFksQ==} dependencies: - '@babel/parser': 7.20.15 + '@babel/parser': 7.21.3 '@vue/compiler-core': 3.2.47 '@vue/compiler-dom': 3.2.47 '@vue/compiler-ssr': 3.2.47 @@ -3144,7 +3142,7 @@ packages: /@vue/reactivity-transform/3.2.47: resolution: {integrity: sha512-m8lGXw8rdnPVVIdIFhf0LeQ/ixyHkH5plYuS83yop5n7ggVJU+z5v0zecwEnX7fa7HNLBhh2qngJJkxpwEEmYA==} dependencies: - '@babel/parser': 7.20.15 + '@babel/parser': 7.21.3 '@vue/compiler-core': 3.2.47 '@vue/shared': 3.2.47 estree-walker: 2.0.2 @@ -3324,17 +3322,29 @@ packages: resolution: {integrity: sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==} dev: true + /abbrev/2.0.0: + resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + + /abort-controller/3.0.0: + resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} + engines: {node: '>=6.5'} + dependencies: + event-target-shim: 5.0.1 + dev: true + /accepts/1.3.7: resolution: {integrity: sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==} engines: {node: '>= 0.6'} dependencies: - mime-types: 2.1.30 + mime-types: 2.1.35 negotiator: 0.6.2 /acorn-globals/7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} dependencies: - acorn: 8.8.1 + acorn: 8.8.2 acorn-walk: 8.2.0 dev: true @@ -3365,12 +3375,6 @@ packages: engines: {node: '>=0.4.0'} hasBin: true - /acorn/8.8.1: - resolution: {integrity: sha512-7zFpHzhnqYKrkYdUjF1HI1bzd0VygEGX8lFk4k5zVMqHEoES+P+7TKI+EvLO9WVMJ8eekdO0aDEK044xTXwPPA==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true - /acorn/8.8.2: resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} @@ -3388,6 +3392,17 @@ packages: - supports-color dev: true + /agentkeepalive/4.3.0: + resolution: {integrity: sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==} + engines: {node: '>= 8.0.0'} + dependencies: + debug: 4.3.4 + depd: 2.0.0 + humanize-ms: 1.2.1 + transitivePeerDependencies: + - supports-color + dev: true + /aggregate-error/3.1.0: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} @@ -3554,6 +3569,10 @@ packages: /aproba/1.2.0: resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} + /aproba/2.0.0: + resolution: {integrity: sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==} + dev: true + /arch/2.2.0: resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} @@ -3563,6 +3582,22 @@ packages: dependencies: file-type: 4.4.0 + /are-we-there-yet/3.0.1: + resolution: {integrity: sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + delegates: 1.0.0 + readable-stream: 3.6.2 + dev: true + + /are-we-there-yet/4.0.0: + resolution: {integrity: sha512-nSXlV+u3vtVjRgihdTzbfWYzxPWGo424zPgQbHD0ZqIla3jqYAewDcvee0Ua2hjS5IfTAmjGlx1Jf0PKwjZDEw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + delegates: 1.0.0 + readable-stream: 4.3.0 + dev: true + /arg/2.0.0: resolution: {integrity: sha512-XxNTUzKnz1ctK3ZIcI2XUPlD96wbHP2nGqkPKpvk/HNRlPveYrXIVSTk9m3LcqOgDPg3B1nMvdV/K8wZd7PG4w==} @@ -3579,7 +3614,7 @@ packages: resolution: {integrity: sha512-o/HelwhuKpTj/frsOsbNLNgnNGVIFsVP/SW2BSF14gVl7kAfMOJ6/8wUAUvG1R1NHKrfG+2sHZTu0yauT1qBrA==} engines: {node: '>=6.0'} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 '@babel/runtime-corejs3': 7.13.17 dev: true @@ -3595,6 +3630,12 @@ packages: resolution: {integrity: sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==} engines: {node: '>=0.10.0'} + /array-buffer-byte-length/1.0.0: + resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==} + dependencies: + call-bind: 1.0.2 + is-array-buffer: 3.0.2 + /array-filter/1.0.0: resolution: {integrity: sha512-Ene1hbrinPZ1qPoZp7NSx4jQnh4nr7MtY78pHNb+yr8yHbxmTS7ChGW0a55JKA7TkRDeoQxK4GcJaCvBYplSKA==} dev: true @@ -3610,9 +3651,9 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 - get-intrinsic: 1.1.3 + define-properties: 1.2.0 + es-abstract: 1.21.2 + get-intrinsic: 1.2.0 is-string: 1.0.7 dev: true @@ -3638,17 +3679,8 @@ packages: /array.prototype.find/2.1.1: resolution: {integrity: sha512-mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==} dependencies: - define-properties: 1.1.4 - es-abstract: 1.20.4 - dev: true - - /array.prototype.flat/1.2.4: - resolution: {integrity: sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 dev: true /array.prototype.flat/1.3.1: @@ -3657,7 +3689,7 @@ packages: dependencies: call-bind: 1.0.2 define-properties: 1.2.0 - es-abstract: 1.21.1 + es-abstract: 1.21.2 es-shim-unscopables: 1.0.0 dev: true @@ -3666,8 +3698,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 es-shim-unscopables: 1.0.0 dev: true @@ -3675,10 +3707,10 @@ packages: resolution: {integrity: sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 es-shim-unscopables: 1.0.0 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.0 dev: true /arraybuffer.slice/0.0.7: @@ -3697,8 +3729,8 @@ packages: minimalistic-assert: 1.0.1 safer-buffer: 2.1.2 - /asn1/0.2.4: - resolution: {integrity: sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==} + /asn1/0.2.6: + resolution: {integrity: sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==} dependencies: safer-buffer: 2.1.2 dev: true @@ -3752,8 +3784,8 @@ packages: dependencies: lodash: 4.17.21 - /async/3.2.3: - resolution: {integrity: sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==} + /async/3.2.4: + resolution: {integrity: sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==} dev: true /asynckit/0.4.0: @@ -3774,30 +3806,24 @@ packages: resolution: {integrity: sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==} hasBin: true dependencies: - browserslist: 4.21.4 - caniuse-lite: 1.0.30001431 + browserslist: 4.21.5 + caniuse-lite: 1.0.30001466 colorette: 1.2.2 normalize-range: 0.1.2 num2fraction: 1.2.2 postcss: 7.0.35 postcss-value-parser: 4.1.0 - /available-typed-arrays/1.0.4: - resolution: {integrity: sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==} - engines: {node: '>= 0.4'} - dev: true - /available-typed-arrays/1.0.5: resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==} engines: {node: '>= 0.4'} - dev: true /aws-sign2/0.7.0: resolution: {integrity: sha512-08kcGqnYf/YmjoRhfxyu+CLxBjUtHLXLXX/vUfx9l2LYzG3c1m61nrpyFUZI6zeS+Li/wWMMidD9KgrqtGq3mA==} dev: true - /aws4/1.11.0: - resolution: {integrity: sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==} + /aws4/1.12.0: + resolution: {integrity: sha512-NmWvPnx0F1SfrQbYwOi7OeaNGokp9XhzNioJ/CSBs8Qa4vxug81mhJEAVZwxXuBmYB5KDRfMq/F3RR0BIU7sWg==} dev: true /axios/0.19.2: @@ -3808,21 +3834,21 @@ packages: transitivePeerDependencies: - supports-color - /babel-core/7.0.0-bridge.0_@babel+core@7.20.2: + /babel-core/7.0.0-bridge.0_@babel+core@7.21.3: resolution: {integrity: sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 - /babel-loader/8.2.2_tktscwi5cl3qcx6vcfwkvrwn6i: + /babel-loader/8.2.2_y3c3uzyfhmxjbwhc6k6hyxg3aa: resolution: {integrity: sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==} engines: {node: '>= 8.9'} peerDependencies: '@babel/core': ^7.0.0 webpack: '>=2' dependencies: - '@babel/core': 7.20.2 + '@babel/core': 7.21.3 find-cache-dir: 3.3.2 loader-utils: 1.4.0 make-dir: 3.1.0 @@ -3851,40 +3877,40 @@ packages: /babel-plugin-macros/2.8.0: resolution: {integrity: sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 cosmiconfig: 6.0.0 resolve: 1.22.1 - /babel-plugin-polyfill-corejs2/0.2.0_@babel+core@7.20.2: + /babel-plugin-polyfill-corejs2/0.2.0_@babel+core@7.21.3: resolution: {integrity: sha512-9bNwiR0dS881c5SHnzCmmGlMkJLl0OUZvxrxHo9w/iNoRuqaPjqlvBf4HrovXtQs/au5yKkpcdgfT1cC5PAZwg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/compat-data': 7.20.1 - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.20.2 + '@babel/compat-data': 7.21.0 + '@babel/core': 7.21.3 + '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.21.3 semver: 6.3.0 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-corejs3/0.2.0_@babel+core@7.20.2: + /babel-plugin-polyfill-corejs3/0.2.0_@babel+core@7.21.3: resolution: {integrity: sha512-zZyi7p3BCUyzNxLx8KV61zTINkkV65zVkDAFNZmrTCRVhjo1jAS+YLvDJ9Jgd/w2tsAviCwFHReYfxO3Iql8Yg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.21.3 core-js-compat: 3.11.1 transitivePeerDependencies: - supports-color - /babel-plugin-polyfill-regenerator/0.2.0_@babel+core@7.20.2: + /babel-plugin-polyfill-regenerator/0.2.0_@babel+core@7.21.3: resolution: {integrity: sha512-J7vKbCuD2Xi/eEHxquHN14bXAW9CXtecwuLrOIDJtcZzTaPzV1VdEfoUf9AzcRBMolKUQKM9/GVojeh0hFiqMg==} peerDependencies: '@babel/core': ^7.0.0-0 dependencies: - '@babel/core': 7.20.2 - '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.20.2 + '@babel/core': 7.21.3 + '@babel/helper-define-polyfill-provider': 0.2.0_@babel+core@7.21.3 transitivePeerDependencies: - supports-color @@ -3969,8 +3995,8 @@ packages: tweetnacl: 0.14.5 dev: true - /before-after-hook/2.2.1: - resolution: {integrity: sha512-/6FKxSTWoJdbsLDF8tdIjaRiFXiE6UHsEHE3OPI/cwPURCVi1ukP0gmLn7XWEiFk5TcwQjjY5PWsU+j+tgXgmw==} + /before-after-hook/2.2.3: + resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} /better-path-resolve/1.0.0: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} @@ -3994,6 +4020,16 @@ packages: /big.js/5.2.2: resolution: {integrity: sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==} + /bin-links/4.0.1: + resolution: {integrity: sha512-bmFEM39CyX336ZGGRsGPlc6jZHriIoHacOQcTt72MktIjpPhZoP4te2jOyUXF3BLILmJ8aNLncoPVeIIFlrDeA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + cmd-shim: 6.0.1 + npm-normalize-package-bin: 3.0.0 + read-cmd-shim: 4.0.0 + write-file-atomic: 5.0.0 + dev: true + /binary-extensions/1.13.1: resolution: {integrity: sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==} engines: {node: '>=0.10.0'} @@ -4020,7 +4056,7 @@ packages: dependencies: buffer: 5.7.1 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 /blob-util/2.0.2: resolution: {integrity: sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==} @@ -4206,7 +4242,7 @@ packages: elliptic: 6.5.4 inherits: 2.0.4 parse-asn1: 5.1.6 - readable-stream: 3.6.0 + readable-stream: 3.6.2 safe-buffer: 5.2.1 /browserify-zlib/0.1.4: @@ -4224,33 +4260,22 @@ packages: engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001466 colorette: 1.2.2 - electron-to-chromium: 1.4.284 + electron-to-chromium: 1.4.332 escalade: 3.1.1 node-releases: 1.1.71 dev: true - /browserslist/4.21.4: - resolution: {integrity: sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==} - engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} - hasBin: true - dependencies: - caniuse-lite: 1.0.30001431 - electron-to-chromium: 1.4.284 - node-releases: 2.0.6 - update-browserslist-db: 1.0.10_browserslist@4.21.4 - /browserslist/4.21.5: resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true dependencies: caniuse-lite: 1.0.30001466 - electron-to-chromium: 1.4.330 + electron-to-chromium: 1.4.332 node-releases: 2.0.10 update-browserslist-db: 1.0.10_browserslist@4.21.5 - dev: true /buffer-alloc-unsafe/1.1.0: resolution: {integrity: sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==} @@ -4267,9 +4292,6 @@ packages: /buffer-fill/1.0.0: resolution: {integrity: sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==} - /buffer-from/1.1.1: - resolution: {integrity: sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==} - /buffer-from/1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} @@ -4299,6 +4321,13 @@ packages: base64-js: 1.5.1 ieee754: 1.2.1 + /buffer/6.0.3: + resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==} + dependencies: + base64-js: 1.5.1 + ieee754: 1.2.1 + dev: true + /builtin-modules/3.3.0: resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==} engines: {node: '>=6'} @@ -4307,6 +4336,12 @@ packages: /builtin-status-codes/3.0.0: resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==} + /builtins/5.0.1: + resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} + dependencies: + semver: 7.3.8 + dev: true + /bytes/3.0.0: resolution: {integrity: sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==} engines: {node: '>= 0.8'} @@ -4339,6 +4374,53 @@ packages: unique-filename: 1.1.1 y18n: 4.0.3 + /cacache/16.1.3: + resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + '@npmcli/fs': 2.1.2 + '@npmcli/move-file': 2.0.1 + chownr: 2.0.0 + fs-minipass: 2.1.0 + glob: 8.1.0 + infer-owner: 1.0.4 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + mkdirp: 1.0.4 + p-map: 4.0.0 + promise-inflight: 1.0.1 + rimraf: 3.0.2 + ssri: 9.0.1 + tar: 6.1.13 + unique-filename: 2.0.1 + transitivePeerDependencies: + - bluebird + dev: true + + /cacache/17.0.4: + resolution: {integrity: sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + '@npmcli/fs': 3.1.0 + fs-minipass: 3.0.1 + glob: 8.1.0 + lru-cache: 7.18.3 + minipass: 4.2.5 + minipass-collect: 1.0.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + p-map: 4.0.0 + promise-inflight: 1.0.1 + ssri: 10.0.1 + tar: 6.1.13 + unique-filename: 3.0.0 + transitivePeerDependencies: + - bluebird + dev: true + /cache-base/1.0.1: resolution: {integrity: sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==} engines: {node: '>=0.10.0'} @@ -4373,7 +4455,7 @@ packages: resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} dependencies: function-bind: 1.1.1 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.0 /caller-callsite/2.0.0: resolution: {integrity: sha512-JuG3qI4QOftFsZyOn1qq87fq5grLIyk1JYd5lJmdA+fG7aQ9pA/i3JIJGcO3q0MrRcHlOt1U+ZeHW8Dq9axALQ==} @@ -4410,7 +4492,7 @@ packages: engines: {node: '>=8'} dependencies: camelcase: 5.3.1 - map-obj: 4.2.1 + map-obj: 4.3.0 quick-lru: 4.0.1 dev: true @@ -4428,17 +4510,13 @@ packages: /caniuse-api/3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} dependencies: - browserslist: 4.21.4 - caniuse-lite: 1.0.30001431 + browserslist: 4.21.5 + caniuse-lite: 1.0.30001466 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - /caniuse-lite/1.0.30001431: - resolution: {integrity: sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==} - /caniuse-lite/1.0.30001466: resolution: {integrity: sha512-ewtFBSfWjEmxUgNBSZItFSmVtvk9zkwkl1OfRZlKA8slltRN+/C/tuGVrF9styXkN36Yu3+SeJ1qkXxDEyNZ5w==} - dev: true /case-sensitive-paths-webpack-plugin/2.4.0: resolution: {integrity: sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==} @@ -4466,7 +4544,7 @@ packages: dependencies: assertion-error: 1.1.0 check-error: 1.0.2 - deep-eql: 4.1.2 + deep-eql: 4.1.3 get-func-name: 2.0.0 loupe: 2.3.6 pathval: 1.1.1 @@ -4497,19 +4575,16 @@ packages: supports-color: 7.2.0 dev: true - /chalk/4.1.1: - resolution: {integrity: sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==} - engines: {node: '>=10'} - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - /chalk/4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} engines: {node: '>=10'} dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 + + /chalk/5.2.0: + resolution: {integrity: sha512-ree3Gqw/nazQAPuJJEy+avdl7QfZMcUvmHIKgEZkGL+xOBzRvup5Hxo6LHuMceSxOabuJLJm5Yp/92R9eMmMvA==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} dev: true /character-entities-html4/1.1.4: @@ -4707,13 +4782,13 @@ packages: colors: 1.4.0 dev: true - /cli-table3/0.6.1: - resolution: {integrity: sha512-w0q/enDHhPLq44ovMGdQeeDLvwxwavsJX7oQGYt/LrBlYsyaxyDnp6z3QzFut/6kLLKnlcUVJLrpB7KBfgG/RA==} + /cli-table3/0.6.3: + resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} engines: {node: 10.* || >= 12.*} dependencies: string-width: 4.2.3 optionalDependencies: - colors: 1.4.0 + '@colors/colors': 1.5.0 dev: true /cli-truncate/2.1.0: @@ -4784,6 +4859,11 @@ packages: engines: {node: '>=0.8'} dev: true + /cmd-shim/6.0.1: + resolution: {integrity: sha512-S9iI9y0nKR4hwEQsVWpyxld/6kRfGepGfzff83FcaiEBpmvlbA2nnGe7Cylgrx2f/p1P5S5wpRm9oL8z1PbS3Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /coa/2.0.2: resolution: {integrity: sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==} engines: {node: '>= 4.0'} @@ -4825,6 +4905,11 @@ packages: color-name: 1.1.4 simple-swizzle: 0.2.2 + /color-support/1.1.3: + resolution: {integrity: sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==} + hasBin: true + dev: true + /color/3.1.3: resolution: {integrity: sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ==} dependencies: @@ -4834,8 +4919,8 @@ packages: /colorette/1.2.2: resolution: {integrity: sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==} - /colorette/2.0.16: - resolution: {integrity: sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==} + /colorette/2.0.19: + resolution: {integrity: sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==} dev: true /colors/1.4.0: @@ -4854,6 +4939,11 @@ packages: /comma-separated-tokens/1.0.8: resolution: {integrity: sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==} + /commander/10.0.0: + resolution: {integrity: sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==} + engines: {node: '>=14'} + dev: true + /commander/2.17.1: resolution: {integrity: sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==} @@ -4872,9 +4962,8 @@ packages: engines: {node: '>= 6'} dev: true - /commander/6.2.1: - resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} - engines: {node: '>= 6'} + /common-ancestor-path/1.0.1: + resolution: {integrity: sha512-L3sHRo1pXXEqX8VU28kfgUY+YGsk09hPqZiZmLacNib6XNTCM8ubYeT7ryXQw8asB1sKgcU5lkB7ONug08aB8w==} dev: true /common-tags/1.8.2: @@ -4905,7 +4994,7 @@ packages: resolution: {integrity: sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==} engines: {node: '>= 0.6'} dependencies: - mime-db: 1.47.0 + mime-db: 1.52.0 /compression/1.7.3: resolution: {integrity: sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==} @@ -4942,23 +5031,16 @@ packages: resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} engines: {'0': node >= 0.8} dependencies: - buffer-from: 1.1.1 + buffer-from: 1.1.2 inherits: 2.0.4 readable-stream: 2.3.7 typedarray: 0.0.6 - /config-chain/1.1.12: - resolution: {integrity: sha512-a1eOIcu8+7lUInge4Rpf/n4Krkf3Dd9lqhljRzII1/Zno/kRtUWnznPO3jOKBmTEktkt3fkxisUcivoj0ebzoA==} - dependencies: - ini: 1.3.8 - proto-list: 1.2.4 - /config-chain/1.1.13: resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} dependencies: ini: 1.3.8 proto-list: 1.2.4 - dev: true /connect-history-api-fallback/1.6.0: resolution: {integrity: sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==} @@ -4967,6 +5049,10 @@ packages: /console-browserify/1.2.0: resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==} + /console-control-strings/1.1.0: + resolution: {integrity: sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==} + dev: true + /constants-browserify/1.0.0: resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==} @@ -4988,10 +5074,10 @@ packages: resolution: {integrity: sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==} dependencies: safe-buffer: 5.1.2 + dev: true /convert-source-map/1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} - dev: true /cookie-signature/1.0.6: resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} @@ -5021,7 +5107,7 @@ packages: /core-js-compat/3.11.1: resolution: {integrity: sha512-aZ0e4tmlG/aOBHj92/TuOuZwp6jFvn1WNabU5VOVixzhu5t5Ao+JZkQOPlgNXu6ynwLrwJxklT4Gw1G1VGEh+g==} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 semver: 7.0.0 /core-js-pure/3.11.1: @@ -5064,8 +5150,8 @@ packages: path-type: 4.0.0 yaml: 1.10.2 - /cosmiconfig/7.0.0: - resolution: {integrity: sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==} + /cosmiconfig/7.1.0: + resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} dependencies: '@types/parse-json': 4.0.0 @@ -5294,7 +5380,7 @@ packages: peerDependencies: postcss: ^8.2.1 dependencies: - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001466 postcss: 8.2.13 dev: true @@ -5340,19 +5426,11 @@ packages: dependencies: css-tree: 1.1.3 - /cssom/0.3.8: - resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==} - dev: true - - /cssom/0.5.0: - resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==} - dev: true - - /cssstyle/2.3.0: - resolution: {integrity: sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==} - engines: {node: '>=8'} + /cssstyle/3.0.0: + resolution: {integrity: sha512-N4u2ABATi3Qplzf0hWbVCdjenim8F3ojEXpBDF5hBpjzW182MjNGLqfmQ0SkSPeQ+V86ZXgeH8aXj6kayd4jgg==} + engines: {node: '>=14'} dependencies: - cssom: 0.3.8 + rrweb-cssom: 0.6.0 dev: true /csstype/2.6.21: @@ -5388,15 +5466,15 @@ packages: /cyclist/1.0.1: resolution: {integrity: sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==} - /cypress/11.1.0: - resolution: {integrity: sha512-kzizbG9s3p3ahWqxUwG/21NqLWEGtScMevMyUPeYlcmMX9RzVxWM18MkA3B4Cb3jKx72hSyIE2mHgHymfCM1bg==} - engines: {node: '>=12.0.0'} + /cypress/12.8.1: + resolution: {integrity: sha512-lIFbKdaSYAOarNLHNFa2aPZu6YSF+8UY4VRXMxJrFUnk6RvfG0AWsZ7/qle/aIz30TNUD4aOihz2ZgS4vuQVSA==} + engines: {node: ^14.0.0 || ^16.0.0 || >=18.0.0} hasBin: true requiresBuild: true dependencies: - '@cypress/request': 2.88.10 + '@cypress/request': 2.88.11 '@cypress/xvfb': 1.2.4_supports-color@8.1.1 - '@types/node': 14.18.33 + '@types/node': 14.18.38 '@types/sinonjs__fake-timers': 8.1.1 '@types/sizzle': 2.3.3 arch: 2.2.0 @@ -5404,13 +5482,13 @@ packages: bluebird: 3.7.2 buffer: 5.7.1 cachedir: 2.3.0 - chalk: 4.1.1 + chalk: 4.1.2 check-more-types: 2.24.0 cli-cursor: 3.1.0 - cli-table3: 0.6.1 + cli-table3: 0.6.3 commander: 5.1.0 common-tags: 1.8.2 - dayjs: 1.10.8 + dayjs: 1.11.7 debug: 4.3.4_supports-color@8.1.1 enquirer: 2.3.6 eventemitter2: 6.4.7 @@ -5426,7 +5504,7 @@ packages: listr2: 3.14.0_enquirer@2.3.6 lodash: 4.17.21 log-symbols: 4.1.0 - minimist: 1.2.7 + minimist: 1.2.8 ospath: 1.2.2 pretty-bytes: 5.6.0 proxy-from-env: 1.0.0 @@ -5455,21 +5533,21 @@ packages: engines: {node: '>= 12'} dev: false - /data-urls/3.0.2: - resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==} - engines: {node: '>=12'} + /data-urls/4.0.0: + resolution: {integrity: sha512-/mMTei/JXPqvFqQtfyTowxmJVwr2PVAeCcDxyFf6LhoOu/09TX2OX3kb2wzi4DMXcfj4OItwDOnhl5oziPnT6g==} + engines: {node: '>=14'} dependencies: abab: 2.0.6 whatwg-mimetype: 3.0.0 - whatwg-url: 11.0.0 + whatwg-url: 12.0.1 dev: true /dataloader/1.4.0: resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} dev: true - /dayjs/1.10.8: - resolution: {integrity: sha512-wbNwDfBHHur9UOzNUjeKUOJ0fCb0a52Wx0xInmQ7Y8FstyajiV1NmK1e00cxsr9YrE9r7yAChE0VvpuY5Rnlow==} + /dayjs/1.11.7: + resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==} dev: true /debug/2.6.9: @@ -5595,8 +5673,8 @@ packages: supports-color: 8.1.1 dev: true - /decamelize-keys/1.1.0: - resolution: {integrity: sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg==} + /decamelize-keys/1.1.1: + resolution: {integrity: sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==} engines: {node: '>=0.10.0'} dependencies: decamelize: 1.2.0 @@ -5607,8 +5685,8 @@ packages: resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==} engines: {node: '>=0.10.0'} - /decimal.js/10.4.2: - resolution: {integrity: sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==} + /decimal.js/10.4.3: + resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} dev: true /decode-uri-component/0.2.0: @@ -5669,10 +5747,6 @@ packages: pify: 2.3.0 strip-dirs: 2.1.0 - /dedent/0.7.0: - resolution: {integrity: sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==} - dev: true - /deep-assign/3.0.0: resolution: {integrity: sha512-YX2i9XjJ7h5q/aQ/IM9PEwEnDqETAIYbggmdDB3HLTlSgo1CxPsj6pvhPG68rq6SVE0+p+6Ywsm5fTYNrYtBWw==} engines: {node: '>=0.10.0'} @@ -5681,8 +5755,8 @@ packages: is-obj: 1.0.1 dev: true - /deep-eql/4.1.2: - resolution: {integrity: sha512-gT18+YW4CcW/DBNTwAmqTtkJh7f9qqScu2qFVlx7kCoeY9tlBu9cUcr7+I+Z/noG8INehS3xQgLpTtd/QUTn4w==} + /deep-eql/4.1.3: + resolution: {integrity: sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==} engines: {node: '>=6'} dependencies: type-detect: 4.0.8 @@ -5692,7 +5766,7 @@ packages: resolution: {integrity: sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==} dependencies: is-arguments: 1.1.0 - is-date-object: 1.0.2 + is-date-object: 1.0.5 is-regex: 1.1.4 object-is: 1.1.5 object-keys: 1.1.1 @@ -5706,8 +5780,8 @@ packages: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} dev: true - /deepmerge/4.2.2: - resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==} + /deepmerge/4.3.0: + resolution: {integrity: sha512-z2wJZXrmeHdvYJp/Ux55wIjqo81G5Bp4c+oELTW+7ar6SogWHajt5a9gO3s3IDaGSAXjDk0vlQKN3rms8ab3og==} engines: {node: '>=0.10.0'} dev: true @@ -5729,20 +5803,12 @@ packages: engines: {node: '>=8'} dev: true - /define-properties/1.1.4: - resolution: {integrity: sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==} - engines: {node: '>= 0.4'} - dependencies: - has-property-descriptors: 1.0.0 - object-keys: 1.1.1 - /define-properties/1.2.0: resolution: {integrity: sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==} engines: {node: '>= 0.4'} dependencies: has-property-descriptors: 1.0.0 object-keys: 1.1.1 - dev: true /define-property/0.2.5: resolution: {integrity: sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==} @@ -5780,10 +5846,19 @@ packages: engines: {node: '>=0.4.0'} dev: true + /delegates/1.0.0: + resolution: {integrity: sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==} + dev: true + /depd/1.1.2: resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} engines: {node: '>= 0.6'} + /depd/2.0.0: + resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} + engines: {node: '>= 0.8'} + dev: true + /deprecation/2.3.1: resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} @@ -5945,9 +6020,9 @@ packages: dependencies: is-obj: 2.0.0 - /dotenv/8.2.0: - resolution: {integrity: sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==} - engines: {node: '>=8'} + /dotenv/16.0.3: + resolution: {integrity: sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==} + engines: {node: '>=12'} dev: true /download-git-repo/2.0.0: @@ -6017,12 +6092,8 @@ packages: engines: {node: '>=0.10.0'} requiresBuild: true - /electron-to-chromium/1.4.284: - resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==} - - /electron-to-chromium/1.4.330: - resolution: {integrity: sha512-PqyefhybrVdjAJ45HaPLtuVaehiSw7C3ya0aad+rvmV53IVyXmYRk3pwIOb2TxTDTnmgQdn46NjMMaysx79/6Q==} - dev: true + /electron-to-chromium/1.4.332: + resolution: {integrity: sha512-c1Vbv5tuUlBFp0mb3mCIjw+REEsgthRgNE8BlbEDKmvzb8rxjcVki6OkQP83vLN34s0XCxpSkq7AZNep1a6xhw==} /elliptic/6.5.4: resolution: {integrity: sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==} @@ -6064,6 +6135,7 @@ packages: /encoding/0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} + requiresBuild: true dependencies: iconv-lite: 0.6.3 dev: true @@ -6120,7 +6192,7 @@ packages: resolution: {integrity: sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==} engines: {node: '>=6.9.0'} dependencies: - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 memory-fs: 0.5.0 tapable: 1.1.3 @@ -6142,6 +6214,11 @@ packages: engines: {node: '>=0.12'} dev: true + /env-paths/2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + dev: true + /enzyme-adapter-react-16/1.15.6_7ltvq4e2railvf5uya4ffxpe2a: resolution: {integrity: sha512-yFlVJCXh8T+mcQo8M6my9sPgeGzj85HSHi6Apgf1Cvq/7EL/J9+1JoJmJsRxZgyTvPMAqOEpRSu/Ii/ZpyOk0g==} peerDependencies: @@ -6188,28 +6265,32 @@ packages: /enzyme/3.11.0: resolution: {integrity: sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==} dependencies: - array.prototype.flat: 1.2.4 + array.prototype.flat: 1.3.1 cheerio: 1.0.0-rc.6 enzyme-shallow-equal: 1.0.4 function.prototype.name: 1.1.5 has: 1.0.3 html-element-map: 1.3.0 - is-boolean-object: 1.1.0 + is-boolean-object: 1.1.2 is-callable: 1.2.7 - is-number-object: 1.0.4 + is-number-object: 1.0.7 is-regex: 1.1.4 is-string: 1.0.7 is-subset: 0.1.1 lodash.escape: 4.0.1 lodash.isequal: 4.5.0 - object-inspect: 1.12.2 + object-inspect: 1.12.3 object-is: 1.1.5 object.assign: 4.1.4 object.entries: 1.1.6 object.values: 1.1.6 raf: 3.4.1 rst-selector-parser: 2.2.3 - string.prototype.trim: 1.2.4 + string.prototype.trim: 1.2.7 + dev: true + + /err-code/2.0.3: + resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} dev: true /errno/0.1.8: @@ -6223,44 +6304,15 @@ packages: dependencies: is-arrayish: 0.2.1 - /es-abstract/1.20.4: - resolution: {integrity: sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.2 - es-to-primitive: 1.2.1 - function-bind: 1.1.1 - function.prototype.name: 1.1.5 - get-intrinsic: 1.1.3 - get-symbol-description: 1.0.0 - has: 1.0.3 - has-property-descriptors: 1.0.0 - has-symbols: 1.0.3 - internal-slot: 1.0.3 - is-callable: 1.2.7 - is-negative-zero: 2.0.2 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.2 - is-string: 1.0.7 - is-weakref: 1.0.2 - object-inspect: 1.12.2 - object-keys: 1.1.1 - object.assign: 4.1.4 - regexp.prototype.flags: 1.4.3 - safe-regex-test: 1.0.0 - string.prototype.trimend: 1.0.6 - string.prototype.trimstart: 1.0.6 - unbox-primitive: 1.0.2 - - /es-abstract/1.21.1: - resolution: {integrity: sha512-QudMsPOz86xYz/1dG1OuGBKOELjCh99IIWHLzy5znUB6j8xG2yMA7bfTV86VSqKF+Y/H08vQPR+9jyXpuC6hfg==} + /es-abstract/1.21.2: + resolution: {integrity: sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==} engines: {node: '>= 0.4'} dependencies: + array-buffer-byte-length: 1.0.0 available-typed-arrays: 1.0.5 call-bind: 1.0.2 es-set-tostringtag: 2.0.1 es-to-primitive: 1.2.1 - function-bind: 1.1.1 function.prototype.name: 1.1.5 get-intrinsic: 1.2.0 get-symbol-description: 1.0.0 @@ -6284,12 +6336,12 @@ packages: object.assign: 4.1.4 regexp.prototype.flags: 1.4.3 safe-regex-test: 1.0.0 + string.prototype.trim: 1.2.7 string.prototype.trimend: 1.0.6 string.prototype.trimstart: 1.0.6 typed-array-length: 1.0.4 unbox-primitive: 1.0.2 which-typed-array: 1.1.9 - dev: true /es-set-tostringtag/2.0.1: resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==} @@ -6298,7 +6350,6 @@ packages: get-intrinsic: 1.2.0 has: 1.0.3 has-tostringtag: 1.0.0 - dev: true /es-shim-unscopables/1.0.0: resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==} @@ -6311,15 +6362,15 @@ packages: engines: {node: '>= 0.4'} dependencies: is-callable: 1.2.7 - is-date-object: 1.0.2 - is-symbol: 1.0.3 + is-date-object: 1.0.5 + is-symbol: 1.0.4 /es6-object-assign/1.1.0: resolution: {integrity: sha512-MEl9uirslVwqQU369iHNWZXsI8yaZYGg/D65aOgZkeyFJwHYSxilf7rQzXKI7DdDuBPrBXbfk3sl9hJhmd5AUw==} dev: true - /esbuild-android-64/0.15.15: - resolution: {integrity: sha512-F+WjjQxO+JQOva3tJWNdVjouFMLK6R6i5gjDvgUthLYJnIZJsp1HlF523k73hELY20WPyEO8xcz7aaYBVkeg5Q==} + /esbuild-android-64/0.15.18: + resolution: {integrity: sha512-wnpt3OXRhcjfIDSZu9bnzT4/TNTDsOUvip0foZOUBG7QbSt//w3QV4FInVJxNhKc/ErhUxc5z4QjHtMi7/TbgA==} engines: {node: '>=12'} cpu: [x64] os: [android] @@ -6327,8 +6378,8 @@ packages: dev: true optional: true - /esbuild-android-arm64/0.15.15: - resolution: {integrity: sha512-attlyhD6Y22jNyQ0fIIQ7mnPvDWKw7k6FKnsXlBvQE6s3z6s6cuEHcSgoirquQc7TmZgVCK5fD/2uxmRN+ZpcQ==} + /esbuild-android-arm64/0.15.18: + resolution: {integrity: sha512-G4xu89B8FCzav9XU8EjsXacCKSG2FT7wW9J6hOc18soEHJdtWu03L3TQDGf0geNxfLTtxENKBzMSq9LlbjS8OQ==} engines: {node: '>=12'} cpu: [arm64] os: [android] @@ -6336,8 +6387,8 @@ packages: dev: true optional: true - /esbuild-darwin-64/0.15.15: - resolution: {integrity: sha512-ohZtF8W1SHJ4JWldsPVdk8st0r9ExbAOSrBOh5L+Mq47i696GVwv1ab/KlmbUoikSTNoXEhDzVpxUR/WIO19FQ==} + /esbuild-darwin-64/0.15.18: + resolution: {integrity: sha512-2WAvs95uPnVJPuYKP0Eqx+Dl/jaYseZEUUT1sjg97TJa4oBtbAKnPnl3b5M9l51/nbx7+QAEtuummJZW0sBEmg==} engines: {node: '>=12'} cpu: [x64] os: [darwin] @@ -6345,8 +6396,8 @@ packages: dev: true optional: true - /esbuild-darwin-arm64/0.15.15: - resolution: {integrity: sha512-P8jOZ5zshCNIuGn+9KehKs/cq5uIniC+BeCykvdVhx/rBXSxmtj3CUIKZz4sDCuESMbitK54drf/2QX9QHG5Ag==} + /esbuild-darwin-arm64/0.15.18: + resolution: {integrity: sha512-tKPSxcTJ5OmNb1btVikATJ8NftlyNlc8BVNtyT/UAr62JFOhwHlnoPrhYWz09akBLHI9nElFVfWSTSRsrZiDUA==} engines: {node: '>=12'} cpu: [arm64] os: [darwin] @@ -6354,8 +6405,8 @@ packages: dev: true optional: true - /esbuild-freebsd-64/0.15.15: - resolution: {integrity: sha512-KkTg+AmDXz1IvA9S1gt8dE24C8Thx0X5oM0KGF322DuP+P3evwTL9YyusHAWNsh4qLsR80nvBr/EIYs29VSwuA==} + /esbuild-freebsd-64/0.15.18: + resolution: {integrity: sha512-TT3uBUxkteAjR1QbsmvSsjpKjOX6UkCstr8nMr+q7zi3NuZ1oIpa8U41Y8I8dJH2fJgdC3Dj3CXO5biLQpfdZA==} engines: {node: '>=12'} cpu: [x64] os: [freebsd] @@ -6363,8 +6414,8 @@ packages: dev: true optional: true - /esbuild-freebsd-arm64/0.15.15: - resolution: {integrity: sha512-FUcML0DRsuyqCMfAC+HoeAqvWxMeq0qXvclZZ/lt2kLU6XBnDA5uKTLUd379WYEyVD4KKFctqWd9tTuk8C/96g==} + /esbuild-freebsd-arm64/0.15.18: + resolution: {integrity: sha512-R/oVr+X3Tkh+S0+tL41wRMbdWtpWB8hEAMsOXDumSSa6qJR89U0S/PpLXrGF7Wk/JykfpWNokERUpCeHDl47wA==} engines: {node: '>=12'} cpu: [arm64] os: [freebsd] @@ -6372,8 +6423,8 @@ packages: dev: true optional: true - /esbuild-linux-32/0.15.15: - resolution: {integrity: sha512-q28Qn5pZgHNqug02aTkzw5sW9OklSo96b5nm17Mq0pDXrdTBcQ+M6Q9A1B+dalFeynunwh/pvfrNucjzwDXj+Q==} + /esbuild-linux-32/0.15.18: + resolution: {integrity: sha512-lphF3HiCSYtaa9p1DtXndiQEeQDKPl9eN/XNoBf2amEghugNuqXNZA/ZovthNE2aa4EN43WroO0B85xVSjYkbg==} engines: {node: '>=12'} cpu: [ia32] os: [linux] @@ -6381,8 +6432,8 @@ packages: dev: true optional: true - /esbuild-linux-64/0.15.15: - resolution: {integrity: sha512-217KPmWMirkf8liO+fj2qrPwbIbhNTGNVtvqI1TnOWJgcMjUWvd677Gq3fTzXEjilkx2yWypVnTswM2KbXgoAg==} + /esbuild-linux-64/0.15.18: + resolution: {integrity: sha512-hNSeP97IviD7oxLKFuii5sDPJ+QHeiFTFLoLm7NZQligur8poNOWGIgpQ7Qf8Balb69hptMZzyOBIPtY09GZYw==} engines: {node: '>=12'} cpu: [x64] os: [linux] @@ -6390,8 +6441,8 @@ packages: dev: true optional: true - /esbuild-linux-arm/0.15.15: - resolution: {integrity: sha512-RYVW9o2yN8yM7SB1yaWr378CwrjvGCyGybX3SdzPHpikUHkME2AP55Ma20uNwkNyY2eSYFX9D55kDrfQmQBR4w==} + /esbuild-linux-arm/0.15.18: + resolution: {integrity: sha512-UH779gstRblS4aoS2qpMl3wjg7U0j+ygu3GjIeTonCcN79ZvpPee12Qun3vcdxX+37O5LFxz39XeW2I9bybMVA==} engines: {node: '>=12'} cpu: [arm] os: [linux] @@ -6399,8 +6450,8 @@ packages: dev: true optional: true - /esbuild-linux-arm64/0.15.15: - resolution: {integrity: sha512-/ltmNFs0FivZkYsTzAsXIfLQX38lFnwJTWCJts0IbCqWZQe+jjj0vYBNbI0kmXLb3y5NljiM5USVAO1NVkdh2g==} + /esbuild-linux-arm64/0.15.18: + resolution: {integrity: sha512-54qr8kg/6ilcxd+0V3h9rjT4qmjc0CccMVWrjOEM/pEcUzt8X62HfBSeZfT2ECpM7104mk4yfQXkosY8Quptug==} engines: {node: '>=12'} cpu: [arm64] os: [linux] @@ -6408,8 +6459,8 @@ packages: dev: true optional: true - /esbuild-linux-mips64le/0.15.15: - resolution: {integrity: sha512-PksEPb321/28GFFxtvL33yVPfnMZihxkEv5zME2zapXGp7fA1X2jYeiTUK+9tJ/EGgcNWuwvtawPxJG7Mmn86A==} + /esbuild-linux-mips64le/0.15.18: + resolution: {integrity: sha512-Mk6Ppwzzz3YbMl/ZZL2P0q1tnYqh/trYZ1VfNP47C31yT0K8t9s7Z077QrDA/guU60tGNp2GOwCQnp+DYv7bxQ==} engines: {node: '>=12'} cpu: [mips64el] os: [linux] @@ -6417,8 +6468,8 @@ packages: dev: true optional: true - /esbuild-linux-ppc64le/0.15.15: - resolution: {integrity: sha512-ek8gJBEIhcpGI327eAZigBOHl58QqrJrYYIZBWQCnH3UnXoeWMrMZLeeZL8BI2XMBhP+sQ6ERctD5X+ajL/AIA==} + /esbuild-linux-ppc64le/0.15.18: + resolution: {integrity: sha512-b0XkN4pL9WUulPTa/VKHx2wLCgvIAbgwABGnKMY19WhKZPT+8BxhZdqz6EgkqCLld7X5qiCY2F/bfpUUlnFZ9w==} engines: {node: '>=12'} cpu: [ppc64] os: [linux] @@ -6426,8 +6477,8 @@ packages: dev: true optional: true - /esbuild-linux-riscv64/0.15.15: - resolution: {integrity: sha512-H5ilTZb33/GnUBrZMNJtBk7/OXzDHDXjIzoLXHSutwwsLxSNaLxzAaMoDGDd/keZoS+GDBqNVxdCkpuiRW4OSw==} + /esbuild-linux-riscv64/0.15.18: + resolution: {integrity: sha512-ba2COaoF5wL6VLZWn04k+ACZjZ6NYniMSQStodFKH/Pu6RxzQqzsmjR1t9QC89VYJxBeyVPTaHuBMCejl3O/xg==} engines: {node: '>=12'} cpu: [riscv64] os: [linux] @@ -6435,8 +6486,8 @@ packages: dev: true optional: true - /esbuild-linux-s390x/0.15.15: - resolution: {integrity: sha512-jKaLUg78mua3rrtrkpv4Or2dNTJU7bgHN4bEjT4OX4GR7nLBSA9dfJezQouTxMmIW7opwEC5/iR9mpC18utnxQ==} + /esbuild-linux-s390x/0.15.18: + resolution: {integrity: sha512-VbpGuXEl5FCs1wDVp93O8UIzl3ZrglgnSQ+Hu79g7hZu6te6/YHgVJxCM2SqfIila0J3k0csfnf8VD2W7u2kzQ==} engines: {node: '>=12'} cpu: [s390x] os: [linux] @@ -6444,8 +6495,8 @@ packages: dev: true optional: true - /esbuild-netbsd-64/0.15.15: - resolution: {integrity: sha512-aOvmF/UkjFuW6F36HbIlImJTTx45KUCHJndtKo+KdP8Dhq3mgLRKW9+6Ircpm8bX/RcS3zZMMmaBLkvGY06Gvw==} + /esbuild-netbsd-64/0.15.18: + resolution: {integrity: sha512-98ukeCdvdX7wr1vUYQzKo4kQ0N2p27H7I11maINv73fVEXt2kyh4K4m9f35U1K43Xc2QGXlzAw0K9yoU7JUjOg==} engines: {node: '>=12'} cpu: [x64] os: [netbsd] @@ -6453,8 +6504,8 @@ packages: dev: true optional: true - /esbuild-openbsd-64/0.15.15: - resolution: {integrity: sha512-HFFX+WYedx1w2yJ1VyR1Dfo8zyYGQZf1cA69bLdrHzu9svj6KH6ZLK0k3A1/LFPhcEY9idSOhsB2UyU0tHPxgQ==} + /esbuild-openbsd-64/0.15.18: + resolution: {integrity: sha512-yK5NCcH31Uae076AyQAXeJzt/vxIo9+omZRKj1pauhk3ITuADzuOx5N2fdHrAKPxN+zH3w96uFKlY7yIn490xQ==} engines: {node: '>=12'} cpu: [x64] os: [openbsd] @@ -6462,8 +6513,8 @@ packages: dev: true optional: true - /esbuild-sunos-64/0.15.15: - resolution: {integrity: sha512-jOPBudffG4HN8yJXcK9rib/ZTFoTA5pvIKbRrt3IKAGMq1EpBi4xoVoSRrq/0d4OgZLaQbmkHp8RO9eZIn5atA==} + /esbuild-sunos-64/0.15.18: + resolution: {integrity: sha512-On22LLFlBeLNj/YF3FT+cXcyKPEI263nflYlAhz5crxtp3yRG1Ugfr7ITyxmCmjm4vbN/dGrb/B7w7U8yJR9yw==} engines: {node: '>=12'} cpu: [x64] os: [sunos] @@ -6471,8 +6522,8 @@ packages: dev: true optional: true - /esbuild-windows-32/0.15.15: - resolution: {integrity: sha512-MDkJ3QkjnCetKF0fKxCyYNBnOq6dmidcwstBVeMtXSgGYTy8XSwBeIE4+HuKiSsG6I/mXEb++px3IGSmTN0XiA==} + /esbuild-windows-32/0.15.18: + resolution: {integrity: sha512-o+eyLu2MjVny/nt+E0uPnBxYuJHBvho8vWsC2lV61A7wwTWC3jkN2w36jtA+yv1UgYkHRihPuQsL23hsCYGcOQ==} engines: {node: '>=12'} cpu: [ia32] os: [win32] @@ -6480,8 +6531,8 @@ packages: dev: true optional: true - /esbuild-windows-64/0.15.15: - resolution: {integrity: sha512-xaAUIB2qllE888SsMU3j9nrqyLbkqqkpQyWVkfwSil6BBPgcPk3zOFitTTncEKCLTQy3XV9RuH7PDj3aJDljWA==} + /esbuild-windows-64/0.15.18: + resolution: {integrity: sha512-qinug1iTTaIIrCorAUjR0fcBk24fjzEedFYhhispP8Oc7SFvs+XeW3YpAKiKp8dRpizl4YYAhxMjlftAMJiaUw==} engines: {node: '>=12'} cpu: [x64] os: [win32] @@ -6489,8 +6540,8 @@ packages: dev: true optional: true - /esbuild-windows-arm64/0.15.15: - resolution: {integrity: sha512-ttuoCYCIJAFx4UUKKWYnFdrVpoXa3+3WWkXVI6s09U+YjhnyM5h96ewTq/WgQj9LFSIlABQvadHSOQyAVjW5xQ==} + /esbuild-windows-arm64/0.15.18: + resolution: {integrity: sha512-q9bsYzegpZcLziq0zgUi5KqGVtfhjxGbnksaBFYmWLxeV/S1fK4OLdq2DFYnXcLMjlZw2L0jLsk1eGoB522WXQ==} engines: {node: '>=12'} cpu: [arm64] os: [win32] @@ -6498,34 +6549,34 @@ packages: dev: true optional: true - /esbuild/0.15.15: - resolution: {integrity: sha512-TEw/lwK4Zzld9x3FedV6jy8onOUHqcEX3ADFk4k+gzPUwrxn8nWV62tH0udo8jOtjFodlEfc4ypsqX3e+WWO6w==} + /esbuild/0.15.18: + resolution: {integrity: sha512-x/R72SmW3sSFRm5zrrIjAhCeQSAWoni3CmHEqfQrZIQTM3lVCdehdwuIqaOtfC2slvpdlLa62GYoN8SxT23m6Q==} engines: {node: '>=12'} hasBin: true requiresBuild: true optionalDependencies: - '@esbuild/android-arm': 0.15.15 - '@esbuild/linux-loong64': 0.15.15 - esbuild-android-64: 0.15.15 - esbuild-android-arm64: 0.15.15 - esbuild-darwin-64: 0.15.15 - esbuild-darwin-arm64: 0.15.15 - esbuild-freebsd-64: 0.15.15 - esbuild-freebsd-arm64: 0.15.15 - esbuild-linux-32: 0.15.15 - esbuild-linux-64: 0.15.15 - esbuild-linux-arm: 0.15.15 - esbuild-linux-arm64: 0.15.15 - esbuild-linux-mips64le: 0.15.15 - esbuild-linux-ppc64le: 0.15.15 - esbuild-linux-riscv64: 0.15.15 - esbuild-linux-s390x: 0.15.15 - esbuild-netbsd-64: 0.15.15 - esbuild-openbsd-64: 0.15.15 - esbuild-sunos-64: 0.15.15 - esbuild-windows-32: 0.15.15 - esbuild-windows-64: 0.15.15 - esbuild-windows-arm64: 0.15.15 + '@esbuild/android-arm': 0.15.18 + '@esbuild/linux-loong64': 0.15.18 + esbuild-android-64: 0.15.18 + esbuild-android-arm64: 0.15.18 + esbuild-darwin-64: 0.15.18 + esbuild-darwin-arm64: 0.15.18 + esbuild-freebsd-64: 0.15.18 + esbuild-freebsd-arm64: 0.15.18 + esbuild-linux-32: 0.15.18 + esbuild-linux-64: 0.15.18 + esbuild-linux-arm: 0.15.18 + esbuild-linux-arm64: 0.15.18 + esbuild-linux-mips64le: 0.15.18 + esbuild-linux-ppc64le: 0.15.18 + esbuild-linux-riscv64: 0.15.18 + esbuild-linux-s390x: 0.15.18 + esbuild-netbsd-64: 0.15.18 + esbuild-openbsd-64: 0.15.18 + esbuild-sunos-64: 0.15.18 + esbuild-windows-32: 0.15.18 + esbuild-windows-64: 0.15.18 + esbuild-windows-arm64: 0.15.18 dev: true /escalade/3.1.1: @@ -6557,51 +6608,51 @@ packages: source-map: 0.6.1 dev: true - /eslint-config-prettier/8.3.0_eslint@8.28.0: - resolution: {integrity: sha512-BgZuLUSeKzvlL/VUjx/Yb787VQ26RU3gGjA3iiFvdsp/2bMfVIWUVP7tjxtjS0e+HP409cPlPvNkQloz8C91ew==} + /eslint-config-prettier/8.7.0_eslint@8.36.0: + resolution: {integrity: sha512-HHVXLSlVUhMSmyW4ZzEuvjpwqamgmlfkutD53cYXLikh4pt/modINRcCIApJ84czDxM4GZInwUrromsDdTImTA==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.28.0 + eslint: 8.36.0 dev: true - /eslint-plugin-es5/1.5.0_eslint@8.28.0: + /eslint-plugin-es5/1.5.0_eslint@8.36.0: resolution: {integrity: sha512-Qxmfo7v2B7SGAEURJo0dpBweFf+JU15kSyALfiB2rXWcBuJ96r6X9kFHXFnhdopPHCaHjoQs1xQPUJVbGMb1AA==} peerDependencies: eslint: '>= 3.0.0' dependencies: - eslint: 8.28.0 + eslint: 8.36.0 dev: true - /eslint-plugin-prettier/3.4.0_plju7d5o4ykhievr5qayynz6du: - resolution: {integrity: sha512-UDK6rJT6INSfcOo545jiaOwB701uAIt2/dR7WnFQoGCVl1/EMqdANBmwUaqqQ45aXprsTGzSa39LI1PyuRBxxw==} - engines: {node: '>=6.0.0'} + /eslint-plugin-prettier/4.2.1_eqzx3hpkgx5nnvxls3azrcc7dm: + resolution: {integrity: sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==} + engines: {node: '>=12.0.0'} peerDependencies: - eslint: '>=5.0.0' + eslint: '>=7.28.0' eslint-config-prettier: '*' - prettier: '>=1.13.0' + prettier: '>=2.0.0' peerDependenciesMeta: eslint-config-prettier: optional: true dependencies: - eslint: 8.28.0 - eslint-config-prettier: 8.3.0_eslint@8.28.0 - prettier: 2.2.1 + eslint: 8.36.0 + eslint-config-prettier: 8.7.0_eslint@8.36.0 + prettier: 2.8.4 prettier-linter-helpers: 1.0.0 dev: true - /eslint-plugin-react-hooks/4.6.0_eslint@8.28.0: + /eslint-plugin-react-hooks/4.6.0_eslint@8.36.0: resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} engines: {node: '>=10'} peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 dependencies: - eslint: 8.28.0 + eslint: 8.36.0 dev: true - /eslint-plugin-react/7.31.11_eslint@8.28.0: - resolution: {integrity: sha512-TTvq5JsT5v56wPa9OYHzsrOlHzKZKjV+aLgS+55NJP/cuzdiQPC7PfYoUjMoxlffKtvijpk7vA/jmuqRb9nohw==} + /eslint-plugin-react/7.32.2_eslint@8.36.0: + resolution: {integrity: sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 @@ -6610,16 +6661,16 @@ packages: array.prototype.flatmap: 1.3.1 array.prototype.tosorted: 1.1.1 doctrine: 2.1.0 - eslint: 8.28.0 + eslint: 8.36.0 estraverse: 5.3.0 - jsx-ast-utils: 3.2.0 + jsx-ast-utils: 3.3.3 minimatch: 3.1.2 object.entries: 1.1.6 object.fromentries: 2.0.6 object.hasown: 1.1.2 object.values: 1.1.6 prop-types: 15.8.1 - resolve: 2.0.0-next.3 + resolve: 2.0.0-next.4 semver: 6.3.0 string.prototype.matchall: 4.0.8 dev: true @@ -6647,59 +6698,46 @@ packages: estraverse: 5.3.0 dev: true - /eslint-utils/3.0.0_eslint@8.28.0: - resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} - engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} - peerDependencies: - eslint: '>=5' - dependencies: - eslint: 8.28.0 - eslint-visitor-keys: 2.0.0 - dev: true - - /eslint-visitor-keys/2.0.0: - resolution: {integrity: sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==} - engines: {node: '>=10'} - dev: true - /eslint-visitor-keys/3.3.0: resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint/8.28.0: - resolution: {integrity: sha512-S27Di+EVyMxcHiwDrFzk8dJYAaD+/5SoWKxL1ri/71CRHsnJnRDPNt2Kzj24+MT9FDupf4aqqyqPrvI8MvQ4VQ==} + /eslint/8.36.0: + resolution: {integrity: sha512-Y956lmS7vDqomxlaaQAHVmeb4tNMp2FWIvU/RnU5BD3IKMD/MJPr76xdyr68P8tV1iNMvN2mRK0yy3c+UjL+bw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} hasBin: true dependencies: - '@eslint/eslintrc': 1.3.3 - '@humanwhocodes/config-array': 0.11.7 + '@eslint-community/eslint-utils': 4.2.0_eslint@8.36.0 + '@eslint-community/regexpp': 4.4.0 + '@eslint/eslintrc': 2.0.1 + '@eslint/js': 8.36.0 + '@humanwhocodes/config-array': 0.11.8 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 ajv: 6.12.6 - chalk: 4.1.1 + chalk: 4.1.2 cross-spawn: 7.0.3 debug: 4.3.4 doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.1.1 - eslint-utils: 3.0.0_eslint@8.28.0 eslint-visitor-keys: 3.3.0 - espree: 9.4.1 - esquery: 1.4.0 + espree: 9.5.0 + esquery: 1.5.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 file-entry-cache: 6.0.1 find-up: 5.0.0 glob-parent: 6.0.2 - globals: 13.18.0 + globals: 13.20.0 grapheme-splitter: 1.0.4 - ignore: 5.2.1 + ignore: 5.2.4 import-fresh: 3.3.0 imurmurhash: 0.1.4 is-glob: 4.0.3 is-path-inside: 3.0.3 - js-sdsl: 4.2.0 + js-sdsl: 4.3.0 js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 levn: 0.4.1 @@ -6707,7 +6745,6 @@ packages: minimatch: 3.1.2 natural-compare: 1.4.0 optionator: 0.9.1 - regexpp: 3.2.0 strip-ansi: 6.0.1 strip-json-comments: 3.1.1 text-table: 0.2.0 @@ -6715,8 +6752,8 @@ packages: - supports-color dev: true - /espree/9.4.1: - resolution: {integrity: sha512-XwctdmTO6SIvCzd9810yyNzIrOrqNYV9Koizx4C/mRhf9uq0o4yHoCEU/670pOxOL/MSraektvSAji79kX90Vg==} + /espree/9.5.0: + resolution: {integrity: sha512-JPbJGhKc47++oo4JkEoTe2wjy4fmMwvFpgJT9cQzmfXKp22Dr6Hf1tdCteLz1h0P3t+mGvWZ+4Uankvh8+c6zw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dependencies: acorn: 8.8.2 @@ -6729,8 +6766,8 @@ packages: engines: {node: '>=4'} hasBin: true - /esquery/1.4.0: - resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} + /esquery/1.5.0: + resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==} engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 @@ -6762,6 +6799,11 @@ packages: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} + /event-target-shim/5.0.1: + resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} + engines: {node: '>=6'} + dev: true + /eventemitter2/6.4.7: resolution: {integrity: sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==} dev: true @@ -6794,7 +6836,7 @@ packages: is-stream: 1.1.0 npm-run-path: 2.0.2 p-finally: 1.0.0 - signal-exit: 3.0.3 + signal-exit: 3.0.7 strip-eof: 1.0.0 /execa/0.8.0: @@ -6806,7 +6848,7 @@ packages: is-stream: 1.1.0 npm-run-path: 2.0.2 p-finally: 1.0.0 - signal-exit: 3.0.3 + signal-exit: 3.0.7 strip-eof: 1.0.0 /execa/1.0.0: @@ -6818,7 +6860,7 @@ packages: is-stream: 1.1.0 npm-run-path: 2.0.2 p-finally: 1.0.0 - signal-exit: 3.0.3 + signal-exit: 3.0.7 strip-eof: 1.0.0 /execa/4.1.0: @@ -6828,27 +6870,27 @@ packages: cross-spawn: 7.0.3 get-stream: 5.2.0 human-signals: 1.1.1 - is-stream: 2.0.0 + is-stream: 2.0.1 merge-stream: 2.0.0 npm-run-path: 4.0.1 onetime: 5.1.2 - signal-exit: 3.0.3 + signal-exit: 3.0.7 strip-final-newline: 2.0.0 dev: true - /execa/5.0.0: - resolution: {integrity: sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==} - engines: {node: '>=10'} + /execa/7.1.1: + resolution: {integrity: sha512-wH0eMf/UXckdUYnO21+HDztteVv05rq2GXksxT4fCGeHkBhw1DROXh40wcjMcRqDOWE7iPJ4n3M7e2+YFP+76Q==} + engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.0 + human-signals: 4.3.0 + is-stream: 3.0.0 merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.3 - strip-final-newline: 2.0.0 + npm-run-path: 5.1.0 + onetime: 6.0.0 + signal-exit: 3.0.7 + strip-final-newline: 3.0.0 dev: true /executable/4.1.1: @@ -6968,7 +7010,7 @@ packages: resolution: {integrity: sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==} engines: {node: '>=0.10.0'} dependencies: - mime-db: 1.47.0 + mime-db: 1.52.0 /ext-name/5.0.0: resolution: {integrity: sha512-yblEwXAbGv1VQDmow7s38W77hzAgJAO50ztBLMcUyUBfxv1HC+LGwtiEN+Co6LtlqT/5uwVOxsD4TNIilWhwdQ==} @@ -7067,12 +7109,7 @@ packages: dev: true /extsprintf/1.3.0: - resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} - engines: {'0': node >=0.6.0} - dev: true - - /extsprintf/1.4.0: - resolution: {integrity: sha512-6NW8DZ8pWBc5NbGYUiqqccj9dXnuSzilZYqprdKJBZsQodGH9IyUoFOGxIWVDcBzHMb8ET24aqx9p66tZEWZkA==} + resolution: {integrity: sha512-11Ndz7Nv+mvAC1j0ktTa7fAb0vLyGGX+rMHNBYQviQDGU0Hw7lhctJANqbPhu9nV9/izT/IntTgZ7Im/9LJs9g==} engines: {'0': node >=0.6.0} dev: true @@ -7094,7 +7131,7 @@ packages: '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 - micromatch: 4.0.4 + micromatch: 4.0.5 dev: true /fast-json-stable-stringify/2.1.0: @@ -7108,8 +7145,8 @@ packages: dependencies: punycode: 1.4.1 - /fastq/1.11.0: - resolution: {integrity: sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==} + /fastq/1.15.0: + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} dependencies: reusify: 1.0.4 dev: true @@ -7323,13 +7360,13 @@ packages: resolution: {integrity: sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==} engines: {node: '>=10'} dependencies: - semver-regex: 3.1.2 + semver-regex: 3.1.4 dev: true /find-yarn-workspace-root2/1.2.16: resolution: {integrity: sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==} dependencies: - micromatch: 4.0.4 + micromatch: 4.0.5 pkg-dir: 4.2.0 dev: true @@ -7337,12 +7374,12 @@ packages: resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} engines: {node: ^10.12.0 || >=12.0.0} dependencies: - flatted: 3.1.1 + flatted: 3.2.7 rimraf: 3.0.2 dev: true - /flatted/3.1.1: - resolution: {integrity: sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==} + /flatted/3.2.7: + resolution: {integrity: sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==} dev: true /flush-write-stream/1.1.1: @@ -7374,16 +7411,11 @@ packages: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} dependencies: is-callable: 1.2.7 - dev: true /for-in/1.0.2: resolution: {integrity: sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==} engines: {node: '>=0.10.0'} - /foreach/2.0.5: - resolution: {integrity: sha512-ZBbtRiapkZYLsqoPyZOR+uPfto0GRMNQN1GwzZtZt7iZvPPbDDQV0JF5Hx4o/QFQ5c0vyuoZ98T8RSBbopzWtA==} - dev: true - /forever-agent/0.6.1: resolution: {integrity: sha512-j0KLYPhm6zeac4lz3oJ3o65qvgQCcPubiyotZrXqEaG4hNagNYO8qdlUrX5vwqv9ohqeT/Z3j6+yW067yWWdUw==} dev: true @@ -7394,7 +7426,7 @@ packages: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 - mime-types: 2.1.30 + mime-types: 2.1.35 dev: true /form-data/3.0.1: @@ -7403,7 +7435,7 @@ packages: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 - mime-types: 2.1.30 + mime-types: 2.1.35 dev: true /form-data/4.0.0: @@ -7412,7 +7444,7 @@ packages: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 - mime-types: 2.1.30 + mime-types: 2.1.35 dev: true /format/0.2.2: @@ -7442,7 +7474,7 @@ packages: hasBin: true dependencies: '@octokit/rest': 17.11.2 - chalk: 4.1.1 + chalk: 4.1.2 execa: 4.1.0 filesize: 6.3.0 markdown-table: 2.0.0 @@ -7480,7 +7512,7 @@ packages: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} dependencies: - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 jsonfile: 4.0.0 universalify: 0.1.2 @@ -7498,7 +7530,7 @@ packages: engines: {node: '>=10'} dependencies: at-least-node: 1.0.0 - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 jsonfile: 6.1.0 universalify: 2.0.0 dev: true @@ -7507,7 +7539,14 @@ packages: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} dependencies: - minipass: 3.1.3 + minipass: 3.3.6 + dev: true + + /fs-minipass/3.0.1: + resolution: {integrity: sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + minipass: 4.2.5 dev: true /fs-readdir-recursive/1.1.0: @@ -7560,18 +7599,46 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 - functions-have-names: 1.2.2 + define-properties: 1.2.0 + es-abstract: 1.21.2 + functions-have-names: 1.2.3 - /functions-have-names/1.2.2: - resolution: {integrity: sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==} + /functions-have-names/1.2.3: + resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} /fuse.js/6.4.6: resolution: {integrity: sha512-/gYxR/0VpXmWSfZOIPS3rWwU8SHgsRTwWuXhyb2O6s7aRuVtHtxCkR33bNYu3wyLyNx/Wpv0vU7FZy8Vj53VNw==} engines: {node: '>=10'} dev: false + /gauge/4.0.4: + resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + aproba: 2.0.0 + color-support: 1.1.3 + console-control-strings: 1.1.0 + has-unicode: 2.0.1 + signal-exit: 3.0.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wide-align: 1.1.5 + dev: true + + /gauge/5.0.0: + resolution: {integrity: sha512-0s5T5eciEG7Q3ugkxAkFtaDhrrhXsCRivA5y8C9WMHWuI8UlMOJg7+Iwf7Mccii+Dfs3H5jHepU0joPVyQU0Lw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + aproba: 2.0.0 + color-support: 1.1.3 + console-control-strings: 1.1.0 + has-unicode: 2.0.1 + signal-exit: 3.0.7 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wide-align: 1.1.5 + dev: true + /gensync/1.0.0-beta.2: resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} engines: {node: '>=6.9.0'} @@ -7584,20 +7651,12 @@ packages: resolution: {integrity: sha512-Hm0ixYtaSZ/V7C8FJrtZIuBBI+iSgL+1Aq82zSu8VQNB4S3Gk8e7Qs3VwBDJAhmRZcFqkl3tQu36g/Foh5I5ig==} dev: true - /get-intrinsic/1.1.3: - resolution: {integrity: sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==} - dependencies: - function-bind: 1.1.1 - has: 1.0.3 - has-symbols: 1.0.3 - /get-intrinsic/1.2.0: resolution: {integrity: sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==} dependencies: function-bind: 1.1.1 has: 1.0.3 has-symbols: 1.0.3 - dev: true /get-orientation/1.1.2: resolution: {integrity: sha512-/pViTfifW+gBbh/RnlFYHINvELT9Znt+SYyDKAUL6uV6By019AK/s+i9XP4jSwq7lwP38Fd8HVeTxym3+hkwmQ==} @@ -7607,10 +7666,6 @@ packages: - supports-color dev: true - /get-own-enumerable-property-symbols/3.0.2: - resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} - dev: true - /get-proxy/2.1.0: resolution: {integrity: sha512-zmZIaQTWnNQb4R4fJUEp/FC51eZsc6EkErspy3xtIYStaq8EB/hDIWipxsal+E8rz0qD7f2sL/NA9Xee4RInJw==} engines: {node: '>=4'} @@ -7651,7 +7706,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.0 /get-value/2.0.6: resolution: {integrity: sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==} @@ -7660,7 +7715,7 @@ packages: /getos/3.2.1: resolution: {integrity: sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==} dependencies: - async: 3.2.3 + async: 3.2.4 dev: true /getpass/0.1.7: @@ -7718,30 +7773,29 @@ packages: once: 1.4.0 path-is-absolute: 1.0.1 - /glob/8.0.3: - resolution: {integrity: sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ==} + /glob/8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} engines: {node: '>=12'} dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 5.1.0 + minimatch: 5.1.6 once: 1.4.0 dev: true - /glob/8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} + /glob/9.3.0: + resolution: {integrity: sha512-EAZejC7JvnQINayvB/7BJbpZpNOJ8Lrw2OZNEvQxe0vaLn1SuwMcfV7/MNaX8L/T0wmptBFI4YMtDvSBxYDc7w==} + engines: {node: '>=16 || 14 >=14.17'} dependencies: fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 5.1.6 - once: 1.4.0 + minimatch: 7.4.2 + minipass: 4.2.5 + path-scurry: 1.6.1 dev: true - /global-dirs/3.0.0: - resolution: {integrity: sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==} + /global-dirs/3.0.1: + resolution: {integrity: sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==} engines: {node: '>=10'} dependencies: ini: 2.0.0 @@ -7757,8 +7811,8 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - /globals/13.18.0: - resolution: {integrity: sha512-/mR4KI8Ps2spmoc0Ulu9L7agOF0du1CZNQ3dke8yItYlyKNmGrkONemBbd6V8UTc1Wgcqn21t3WYB7dbRmh6/A==} + /globals/13.20.0: + resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} engines: {node: '>=8'} dependencies: type-fest: 0.20.2 @@ -7769,7 +7823,6 @@ packages: engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.0 - dev: true /globby/11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -7778,7 +7831,7 @@ packages: array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.2.12 - ignore: 5.2.1 + ignore: 5.2.4 merge2: 1.4.1 slash: 3.0.0 dev: true @@ -7801,7 +7854,6 @@ packages: resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} dependencies: get-intrinsic: 1.2.0 - dev: true /got/8.3.2: resolution: {integrity: sha512-qjUJ5U/hawxosMryILofZCkm3C84PLJS/0grRIpjAwu+Lkxxj5cxeCU25BG0/3mDSpXKTyZr8oh8wIgLaH0QCw==} @@ -7830,16 +7882,13 @@ packages: /graceful-fs/4.2.10: resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} - /graceful-fs/4.2.6: - resolution: {integrity: sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==} - /grapheme-splitter/1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true - /graphql/16.0.1: - resolution: {integrity: sha512-oPvCuu6dlLdiz8gZupJ47o1clgb72r1u8NDBcQYjcV6G/iEdmE11B1bBlkhXRvV0LisP/SXRFP7tT6AgaTjpzg==} - engines: {node: ^12.22.0 || ^14.16.0 || >=16.0.0} + /graphql/16.6.0: + resolution: {integrity: sha512-KPIBPDlW7NxrbT/eh4qPXz5FiFdL5UbaA0XUNz2Rp3Z3hqBSkbj0GVjwFDztsWVauZUWsbKHgMg++sk8UX0bkw==} + engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} dev: true /gud/1.0.0: @@ -7907,12 +7956,11 @@ packages: /has-property-descriptors/1.0.0: resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==} dependencies: - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.0 /has-proto/1.0.1: resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==} engines: {node: '>= 0.4'} - dev: true /has-symbol-support-x/1.4.2: resolution: {integrity: sha512-3ToOva++HaW+eCpgqZrCfN51IPB+7bJNVT6CUATzueB5Heb8o6Nam0V3HG5dlDvZU1Gn5QLcbahiKw/XVk5JJw==} @@ -7932,6 +7980,10 @@ packages: dependencies: has-symbols: 1.0.3 + /has-unicode/2.0.1: + resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==} + dev: true + /has-value/0.3.1: resolution: {integrity: sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==} engines: {node: '>=0.10.0'} @@ -7970,7 +8022,7 @@ packages: engines: {node: '>=4'} dependencies: inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 safe-buffer: 5.2.1 /hash.js/1.1.7: @@ -8045,7 +8097,7 @@ packages: /history/4.10.1: resolution: {integrity: sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 loose-envify: 1.4.0 resolve-pathname: 3.0.0 tiny-invariant: 1.1.0 @@ -8073,6 +8125,13 @@ packages: resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} dev: true + /hosted-git-info/6.1.1: + resolution: {integrity: sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + lru-cache: 7.18.3 + dev: true + /hpack.js/2.1.6: resolution: {integrity: sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==} dependencies: @@ -8144,7 +8203,7 @@ packages: domutils: 1.7.0 entities: 1.1.2 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 /htmlparser2/6.1.0: resolution: {integrity: sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==} @@ -8158,6 +8217,10 @@ packages: /http-cache-semantics/3.8.1: resolution: {integrity: sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==} + /http-cache-semantics/4.1.1: + resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} + dev: true + /http-deceiver/1.2.7: resolution: {integrity: sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==} @@ -8266,9 +8329,15 @@ packages: engines: {node: '>=8.12.0'} dev: true - /human-signals/2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} + /human-signals/4.3.0: + resolution: {integrity: sha512-zyzVyMjpGBX2+6cDVZeFPCdtOtdsxOeseRhB9tkQ6xXmGUNrcnBzdEKPy3VPNYz+4gy1oukVOXcrJCunSyc6QQ==} + engines: {node: '>=14.18.0'} + dev: true + + /humanize-ms/1.2.1: + resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} + dependencies: + ms: 2.1.3 dev: true /husky-v4/4.3.8: @@ -8277,16 +8346,16 @@ packages: hasBin: true requiresBuild: true dependencies: - chalk: 4.1.1 + chalk: 4.1.2 ci-info: 2.0.0 compare-versions: 3.6.0 - cosmiconfig: 7.0.0 + cosmiconfig: 7.1.0 find-versions: 4.0.0 opencollective-postinstall: 2.0.3 pkg-dir: 5.0.0 please-upgrade-node: 3.2.0 slash: 3.0.0 - which-pm-runs: 1.0.0 + which-pm-runs: 1.1.0 dev: true /iconv-lite/0.4.24: @@ -8317,14 +8386,15 @@ packages: /iferr/0.1.5: resolution: {integrity: sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==} - /ignore-walk/3.0.3: - resolution: {integrity: sha512-m7o6xuOaT1aqheYHKf8W6J5pYH85ZI9w077erOzLje3JsB1gkafkAhHHY19dqjulgIZHFm32Cp5uNZgcQqdJKw==} + /ignore-walk/6.0.1: + resolution: {integrity: sha512-/c8MxUAqpRccq+LyDOecwF+9KqajueJHh8fz7g3YqjMZt+NSfJzx05zrKiXwa2sKwFCzaiZ5qUVfRj0pmxixEA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - minimatch: 3.1.2 + minimatch: 6.2.0 dev: true - /ignore/5.2.1: - resolution: {integrity: sha512-d2qQLzTJ9WxQftPAuEQpSPmKqzxePjzVbpAVv62AQ64NTL+wR4JkrVqR/LqFsFEUsHDAiId52mJteHDFuDkElA==} + /ignore/5.2.4: + resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} dev: true @@ -8421,7 +8491,7 @@ packages: inquirer: ^5.0.0 || ^6.0.0 || ^7.0.0 dependencies: ansi-escapes: 4.3.2 - chalk: 4.1.1 + chalk: 4.1.2 figures: 3.2.0 inquirer: 6.5.2 run-async: 2.4.1 @@ -8452,14 +8522,6 @@ packages: default-gateway: 4.2.0 ipaddr.js: 1.9.1 - /internal-slot/1.0.3: - resolution: {integrity: sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==} - engines: {node: '>= 0.4'} - dependencies: - get-intrinsic: 1.1.3 - has: 1.0.3 - side-channel: 1.0.4 - /internal-slot/1.0.5: resolution: {integrity: sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==} engines: {node: '>= 0.4'} @@ -8467,7 +8529,6 @@ packages: get-intrinsic: 1.2.0 has: 1.0.3 side-channel: 1.0.4 - dev: true /intersection-observer/0.7.0: resolution: {integrity: sha512-Id0Fij0HsB/vKWGeBe9PxeY45ttRiBmhFyyt/geBdDHBYNctMRTE3dC1U3ujzz3lap+hVXlEcVaB56kZP/eEUg==} @@ -8491,6 +8552,10 @@ packages: /ip/1.1.5: resolution: {integrity: sha512-rBtCAQAJm8A110nbwn6YdveUnuZH3WrC36IwkRXxDnq53JvXA2NVQvB7IHyKomxK1MJ4VDNw3UtFDdXQ+AvLYA==} + /ip/2.0.0: + resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} + dev: true + /ipaddr.js/1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} engines: {node: '>= 0.10'} @@ -8541,7 +8606,6 @@ packages: call-bind: 1.0.2 get-intrinsic: 1.2.0 is-typed-array: 1.1.10 - dev: true /is-arrayish/0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} @@ -8549,8 +8613,10 @@ packages: /is-arrayish/0.3.2: resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==} - /is-bigint/1.0.1: - resolution: {integrity: sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==} + /is-bigint/1.0.4: + resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + dependencies: + has-bigints: 1.0.2 /is-binary-path/1.0.1: resolution: {integrity: sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==} @@ -8564,11 +8630,12 @@ packages: dependencies: binary-extensions: 2.2.0 - /is-boolean-object/1.1.0: - resolution: {integrity: sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==} + /is-boolean-object/1.1.2: + resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 + has-tostringtag: 1.0.0 /is-buffer/1.1.6: resolution: {integrity: sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==} @@ -8577,8 +8644,8 @@ packages: resolution: {integrity: sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==} engines: {node: '>=4'} - /is-builtin-module/3.2.0: - resolution: {integrity: sha512-phDA4oSGt7vl1n5tJvTWooWWAsXLY+2xCnxNqvKhGEzujg+A43wPlPOyDg3C8XQHN+6k/JTQWJ/j0dQh/qr+Hw==} + /is-builtin-module/3.2.1: + resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==} engines: {node: '>=6'} dependencies: builtin-modules: 3.3.0 @@ -8622,9 +8689,11 @@ packages: dependencies: kind-of: 6.0.3 - /is-date-object/1.0.2: - resolution: {integrity: sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==} + /is-date-object/1.0.5: + resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 /is-decimal/1.0.4: resolution: {integrity: sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==} @@ -8718,10 +8787,14 @@ packages: resolution: {integrity: sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==} engines: {node: '>=10'} dependencies: - global-dirs: 3.0.0 + global-dirs: 3.0.1 is-path-inside: 3.0.3 dev: true + /is-lambda/1.0.1: + resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + dev: true + /is-module/1.0.0: resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==} dev: true @@ -8731,7 +8804,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.2.0 dev: true /is-natural-number/4.0.1: @@ -8741,9 +8814,11 @@ packages: resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==} engines: {node: '>= 0.4'} - /is-number-object/1.0.4: - resolution: {integrity: sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==} + /is-number-object/1.0.7: + resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.0 /is-number/3.0.0: resolution: {integrity: sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==} @@ -8823,11 +8898,6 @@ packages: call-bind: 1.0.2 has-tostringtag: 1.0.0 - /is-regexp/1.0.0: - resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==} - engines: {node: '>=0.10.0'} - dev: true - /is-resolvable/1.1.0: resolution: {integrity: sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==} @@ -8844,11 +8914,16 @@ packages: resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} engines: {node: '>=0.10.0'} - /is-stream/2.0.0: - resolution: {integrity: sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==} + /is-stream/2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} dev: true + /is-stream/3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: true + /is-string/1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -8866,8 +8941,8 @@ packages: resolution: {integrity: sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==} dev: true - /is-symbol/1.0.3: - resolution: {integrity: sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==} + /is-symbol/1.0.4: + resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} engines: {node: '>= 0.4'} dependencies: has-symbols: 1.0.3 @@ -8881,18 +8956,6 @@ packages: for-each: 0.3.3 gopd: 1.0.1 has-tostringtag: 1.0.0 - dev: true - - /is-typed-array/1.1.5: - resolution: {integrity: sha512-S+GRDgJlR3PyEbsX/Fobd9cqpZBuvUS+8asRqYDMLCb2qMzt1oz5m5oxQCxOgUDxiWsOVNi4yaF+/uvdlHlYug==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.4 - call-bind: 1.0.2 - es-abstract: 1.20.4 - foreach: 2.0.5 - has-symbols: 1.0.3 - dev: true /is-typedarray/1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} @@ -8967,7 +9030,7 @@ packages: resolution: {integrity: sha512-mk0umAQ5lT+CaOJ+Qp01N6kz48sJG2kr2n1rX0koqKf6FIygQV0qLOdN9SCYID4IVeSigDOcPeGLozdMLYfb5g==} engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0} dependencies: - '@types/node': 18.11.9 + '@types/node': 18.15.3 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true @@ -8979,12 +9042,12 @@ packages: dependencies: config-chain: 1.1.13 editorconfig: 0.15.3 - glob: 8.0.3 + glob: 8.1.0 nopt: 6.0.0 dev: true - /js-sdsl/4.2.0: - resolution: {integrity: sha512-dyBIzQBDkCqCu+0upx25Y2jGdbTGxE9fshMsCdK0ViOongpV+n5tXRcZY9v7CaVQ79AGS9KA1KHtojxiM7aXSQ==} + /js-sdsl/4.3.0: + resolution: {integrity: sha512-mifzlm2+5nZ+lEcLJMoBK0/IH/bDg8XnJfd/Wq6IP+xoCjLZsTOnV2QpxlVbX9bMnkl5PdEjNtBJ9Cj1NjifhQ==} dev: true /js-tokens/4.0.0: @@ -9008,8 +9071,8 @@ packages: resolution: {integrity: sha512-UVU9dibq2JcFWxQPA6KCqj5O42VOmAY3zQUfEKxU0KpTGXwNoCjkX1e13eHNvw/xPynt6pU0rZ1htjWTNTSXsg==} dev: true - /jsdom/20.0.3: - resolution: {integrity: sha512-SYhBvTh89tTfCD/CRdSOm13mOBa42iTaTyfyEWBdKcGdPxPtLFBXuHR8XHb33YNYaP+lLbmSvBTsnoesCNJEsQ==} + /jsdom/21.1.1: + resolution: {integrity: sha512-Jjgdmw48RKcdAIQyUD1UdBh2ecH7VqwaXPN3ehoZN6MqgVbMn+lRm1aAT1AsdJRAJpwfa4IpwgzySn61h2qu3w==} engines: {node: '>=14'} peerDependencies: canvas: ^2.5.0 @@ -9018,12 +9081,11 @@ packages: optional: true dependencies: abab: 2.0.6 - acorn: 8.8.1 + acorn: 8.8.2 acorn-globals: 7.0.1 - cssom: 0.5.0 - cssstyle: 2.3.0 - data-urls: 3.0.2 - decimal.js: 10.4.2 + cssstyle: 3.0.0 + data-urls: 4.0.0 + decimal.js: 10.4.3 domexception: 4.0.0 escodegen: 2.0.0 form-data: 4.0.0 @@ -9033,6 +9095,7 @@ packages: is-potential-custom-element-name: 1.0.1 nwsapi: 2.2.2 parse5: 7.1.2 + rrweb-cssom: 0.6.0 saxes: 6.0.0 symbol-tree: 3.2.4 tough-cookie: 4.1.2 @@ -9040,8 +9103,8 @@ packages: webidl-conversions: 7.0.0 whatwg-encoding: 2.0.0 whatwg-mimetype: 3.0.0 - whatwg-url: 11.0.0 - ws: 8.11.0 + whatwg-url: 12.0.1 + ws: 8.13.0 xml-name-validator: 4.0.0 transitivePeerDependencies: - bufferutil @@ -9067,6 +9130,11 @@ packages: /json-parse-even-better-errors/2.3.1: resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + /json-parse-even-better-errors/3.0.0: + resolution: {integrity: sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /json-schema-traverse/0.4.1: resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} @@ -9082,6 +9150,10 @@ packages: resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} dev: true + /json-stringify-nice/1.1.4: + resolution: {integrity: sha512-5Z5RFW63yxReJ7vANgW6eZFGWaQvnPE3WNmZoOJrSkGju2etKA2L5rrOa1sm877TVTFt57A80BH1bArcmlLfPw==} + dev: true + /json-stringify-safe/5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} dev: true @@ -9097,18 +9169,12 @@ packages: resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==} hasBin: true dependencies: - minimist: 1.2.7 - - /json5/2.2.1: - resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==} - engines: {node: '>=6'} - hasBin: true + minimist: 1.2.8 /json5/2.2.3: resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} engines: {node: '>=6'} hasBin: true - dev: true /jsonc-parser/3.2.0: resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} @@ -9127,6 +9193,11 @@ packages: graceful-fs: 4.2.10 dev: true + /jsonparse/1.3.1: + resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} + engines: {'0': node >= 0.2.0} + dev: true + /jsprim/1.4.1: resolution: {integrity: sha512-4Dj8Rf+fQ+/Pn7C5qeEX02op1WfOss3PKTE9Nsop3Dx+6UPxlm1dr/og7o2cRa5hNN07CACr4NFzRLtj/rjWog==} engines: {'0': node >=0.6.0} @@ -9147,14 +9218,22 @@ packages: verror: 1.10.0 dev: true - /jsx-ast-utils/3.2.0: - resolution: {integrity: sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==} + /jsx-ast-utils/3.3.3: + resolution: {integrity: sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==} engines: {node: '>=4.0'} dependencies: array-includes: 3.1.6 object.assign: 4.1.4 dev: true + /just-diff-apply/5.5.0: + resolution: {integrity: sha512-OYTthRfSh55WOItVqwpefPtNt2VdKsq5AnAK6apdtR6yCH8pr0CmSr710J0Mf+WdQy7K/OzMy7K2MgAfdQURDw==} + dev: true + + /just-diff/5.2.0: + resolution: {integrity: sha512-6ufhP9SHjb7jibNFrNxyFZ6od3g+An6Ai9mhGRvcYe8UJlH0prseN64M+6ZBBUoKYHZsitDP42gAJ8+eVWr3lw==} + dev: true + /keyv/3.0.0: resolution: {integrity: sha512-eguHnq22OE3uVoSYG0LVWNP+4ppamWr9+zWBe1bsNcovIMy6huUJFPgy4mGwCd/rnl3vOLGW1MTlu4c57CT1xA==} dependencies: @@ -9215,29 +9294,34 @@ packages: type-check: 0.4.0 dev: true - /lines-and-columns/1.1.6: - resolution: {integrity: sha512-8ZmlJFVK9iCmtLz19HpSsR8HaAMWBT284VMNednLwlIMDP2hJDCIhUp0IZ2xUcZ+Ob6BM0VvCSJwzASDM45NLQ==} + /lilconfig/2.1.0: + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} + dev: true + + /lines-and-columns/1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - /lint-staged/10.5.4: - resolution: {integrity: sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg==} + /lint-staged/13.2.0: + resolution: {integrity: sha512-GbyK5iWinax5Dfw5obm2g2ccUiZXNGtAS4mCbJ0Lv4rq6iEtfBSjOYdcbOtAIFtM114t0vdpViDDetjVTSd8Vw==} + engines: {node: ^14.13.1 || >=16.0.0} hasBin: true dependencies: - chalk: 4.1.1 - cli-truncate: 2.1.0 - commander: 6.2.1 - cosmiconfig: 7.0.0 + chalk: 5.2.0 + cli-truncate: 3.1.0 + commander: 10.0.0 debug: 4.3.4 - dedent: 0.7.0 - enquirer: 2.3.6 - execa: 4.1.0 - listr2: 3.14.0_enquirer@2.3.6 - log-symbols: 4.1.0 - micromatch: 4.0.4 + execa: 7.1.1 + lilconfig: 2.1.0 + listr2: 5.0.8 + micromatch: 4.0.5 normalize-path: 3.0.0 - please-upgrade-node: 3.2.0 + object-inspect: 1.12.3 + pidtree: 0.6.0 string-argv: 0.3.1 - stringify-object: 3.3.0 + yaml: 2.2.1 transitivePeerDependencies: + - enquirer - supports-color dev: true @@ -9251,12 +9335,31 @@ packages: optional: true dependencies: cli-truncate: 2.1.0 - colorette: 2.0.16 + colorette: 2.0.19 enquirer: 2.3.6 log-update: 4.0.0 p-map: 4.0.0 rfdc: 1.3.0 - rxjs: 7.5.5 + rxjs: 7.8.0 + through: 2.3.8 + wrap-ansi: 7.0.0 + dev: true + + /listr2/5.0.8: + resolution: {integrity: sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==} + engines: {node: ^14.13.1 || >=16.0.0} + peerDependencies: + enquirer: '>= 2.3.0 < 3' + peerDependenciesMeta: + enquirer: + optional: true + dependencies: + cli-truncate: 2.1.0 + colorette: 2.0.19 + log-update: 4.0.0 + p-map: 4.0.0 + rfdc: 1.3.0 + rxjs: 7.8.0 through: 2.3.8 wrap-ansi: 7.0.0 dev: true @@ -9316,10 +9419,10 @@ packages: dependencies: big.js: 5.2.2 emojis-list: 3.0.0 - json5: 2.2.1 + json5: 2.2.3 - /local-pkg/0.4.2: - resolution: {integrity: sha512-mlERgSPrbxU3BP4qBqAvvwlgW4MTg78iwJdGGnv7kibKjWcJksrG3t6LB5lXI93wXRDvG4NpUgJFmTG4T6rdrg==} + /local-pkg/0.4.3: + resolution: {integrity: sha512-SFppqq5p42fe2qcZQqqEOiVRXl+WCP1MdT6k7BDEW1j++sp5fIY+/fdRQitvKgB5BrBcmrs5m/L0v2FrU5MY1g==} engines: {node: '>=14'} dev: true @@ -9398,7 +9501,7 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} dependencies: - chalk: 4.1.1 + chalk: 4.1.2 is-unicode-supported: 0.1.0 dev: true @@ -9461,6 +9564,11 @@ packages: yallist: 4.0.0 dev: true + /lru-cache/7.18.3: + resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} + engines: {node: '>=12'} + dev: true + /lz-string/1.4.4: resolution: {integrity: sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ==} hasBin: true @@ -9510,6 +9618,55 @@ packages: dependencies: semver: 6.3.0 + /make-fetch-happen/10.2.1: + resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + agentkeepalive: 4.3.0 + cacache: 16.1.3 + http-cache-semantics: 4.1.1 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-lambda: 1.0.1 + lru-cache: 7.18.3 + minipass: 3.3.6 + minipass-collect: 1.0.2 + minipass-fetch: 2.1.2 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + negotiator: 0.6.3 + promise-retry: 2.0.1 + socks-proxy-agent: 7.0.0 + ssri: 9.0.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + + /make-fetch-happen/11.0.3: + resolution: {integrity: sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + agentkeepalive: 4.3.0 + cacache: 17.0.4 + http-cache-semantics: 4.1.1 + http-proxy-agent: 5.0.0 + https-proxy-agent: 5.0.1 + is-lambda: 1.0.1 + lru-cache: 7.18.3 + minipass: 4.2.5 + minipass-fetch: 3.0.1 + minipass-flush: 1.0.5 + minipass-pipeline: 1.2.4 + negotiator: 0.6.3 + promise-retry: 2.0.1 + socks-proxy-agent: 7.0.0 + ssri: 10.0.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /map-cache/0.2.2: resolution: {integrity: sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==} engines: {node: '>=0.10.0'} @@ -9519,8 +9676,8 @@ packages: engines: {node: '>=0.10.0'} dev: true - /map-obj/4.2.1: - resolution: {integrity: sha512-+WA2/1sPmDj1dlvvJmB5G6JKfY9dpn7EVBUL06+y6PoljPkh+6V1QihwxNkbcGxCRjt2b0F9K0taiCuo7MbdFQ==} + /map-obj/4.3.0: + resolution: {integrity: sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==} engines: {node: '>=8'} dev: true @@ -9545,8 +9702,6 @@ packages: /match-sorter/3.1.1: resolution: {integrity: sha512-Qlox3wRM/Q4Ww9rv1cBmYKNJwWVX/WC+eA3+1S3Fv4EOhrqyp812ZEfVFKQk0AP6RfzmPUUOwEZBbJ8IRt8SOw==} - dependencies: - remove-accents: 0.4.2 bundledDependencies: - remove-accents @@ -9630,15 +9785,15 @@ packages: resolution: {integrity: sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==} engines: {node: '>=8'} dependencies: - '@types/minimist': 1.2.1 + '@types/minimist': 1.2.2 camelcase-keys: 6.2.2 - decamelize-keys: 1.1.0 + decamelize-keys: 1.1.1 hard-rejection: 2.1.0 minimist-options: 4.1.0 normalize-package-data: 2.5.0 read-pkg-up: 7.0.1 redent: 3.0.0 - trim-newlines: 3.0.0 + trim-newlines: 3.0.1 type-fest: 0.13.1 yargs-parser: 18.1.3 dev: true @@ -9699,14 +9854,6 @@ packages: transitivePeerDependencies: - supports-color - /micromatch/4.0.4: - resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==} - engines: {node: '>=8.6'} - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - dev: true - /micromatch/4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} engines: {node: '>=8.6'} @@ -9726,8 +9873,8 @@ packages: resolution: {integrity: sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==} engines: {node: '>= 0.6'} - /mime-db/1.47.0: - resolution: {integrity: sha512-QBmA/G2y+IfeS4oktet3qRZ+P5kPhCKRXxXnQEudYqUaEioAU1/Lq2us3D/t1Jfo4hE9REQPrbB7K5sOczJVIw==} + /mime-db/1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} /mime-types/2.1.18: @@ -9736,11 +9883,11 @@ packages: dependencies: mime-db: 1.33.0 - /mime-types/2.1.30: - resolution: {integrity: sha512-crmjA4bLtR8m9qLpHvgxSChT+XoSlZi8J4n/aIdn3z92e/U47Z0V/yl+Wh9W046GgFVAmoNR/fmdbZYcSSIUeg==} + /mime-types/2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} dependencies: - mime-db: 1.47.0 + mime-db: 1.52.0 /mime/1.6.0: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} @@ -9761,6 +9908,11 @@ packages: engines: {node: '>=6'} dev: true + /mimic-fn/4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + dev: true + /mimic-response/1.0.1: resolution: {integrity: sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==} engines: {node: '>=4'} @@ -9782,7 +9934,7 @@ packages: prop-types: ^15.0.0 react: ^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || 17 dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 prop-types: 15.8.1 react: 17.0.2 tiny-warning: 1.0.3 @@ -9804,15 +9956,22 @@ packages: dependencies: brace-expansion: 1.1.11 - /minimatch/5.1.0: - resolution: {integrity: sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg==} + /minimatch/5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + dependencies: + brace-expansion: 2.0.1 + dev: true + + /minimatch/6.2.0: + resolution: {integrity: sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==} engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 dev: true - /minimatch/5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + /minimatch/7.4.2: + resolution: {integrity: sha512-xy4q7wou3vUoC9k1xGTXc+awNdGaGVHtFUaey8tiX4H1QRc04DZ/rmDFwNm2EBsuYEhAZ6SgMmYf3InGY6OauA==} engines: {node: '>=10'} dependencies: brace-expansion: 2.0.1 @@ -9831,21 +9990,83 @@ packages: resolution: {integrity: sha512-+bMdgqjMN/Z77a6NlY/I3U5LlRDbnmaAk6lDveAPKwSpcPM4tKAuYsvYF8xjhOPXhOYGe/73vVLVez5PW+jqhw==} dev: true - /minimist/1.2.7: - resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} + /minimist/1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + /minipass-collect/1.0.2: + resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} + engines: {node: '>= 8'} + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-fetch/2.1.2: + resolution: {integrity: sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + minipass: 3.3.6 + minipass-sized: 1.0.3 + minizlib: 2.1.2 + optionalDependencies: + encoding: 0.1.13 + dev: true + + /minipass-fetch/3.0.1: + resolution: {integrity: sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + minipass: 4.2.5 + minipass-sized: 1.0.3 + minizlib: 2.1.2 + optionalDependencies: + encoding: 0.1.13 + dev: true + + /minipass-flush/1.0.5: + resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} + engines: {node: '>= 8'} + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-json-stream/1.0.1: + resolution: {integrity: sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==} + dependencies: + jsonparse: 1.3.1 + minipass: 3.3.6 + dev: true + + /minipass-pipeline/1.2.4: + resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} + engines: {node: '>=8'} + dependencies: + minipass: 3.3.6 + dev: true + + /minipass-sized/1.0.3: + resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} + engines: {node: '>=8'} + dependencies: + minipass: 3.3.6 + dev: true - /minipass/3.1.3: - resolution: {integrity: sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==} + /minipass/3.3.6: + resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} engines: {node: '>=8'} dependencies: yallist: 4.0.0 dev: true + /minipass/4.2.5: + resolution: {integrity: sha512-+yQl7SX3bIT83Lhb4BVorMAHVuqsskxRdlmO9kTpyukp8vsm2Sn/fUOV9xlnG8/a5JsypJzap21lz/y3FBMJ8Q==} + engines: {node: '>=8'} + dev: true + /minizlib/2.1.2: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} dependencies: - minipass: 3.1.3 + minipass: 3.3.6 yallist: 4.0.0 dev: true @@ -9871,8 +10092,8 @@ packages: for-in: 1.0.2 is-extendable: 1.0.1 - /mixme/0.5.5: - resolution: {integrity: sha512-/6IupbRx32s7jjEwHcycXikJwFD5UujbVNuJFkeKLYje+92OvtuPniF6JhnFm5JCTDUhS+kYK3W/4BWYQYXz7w==} + /mixme/0.5.6: + resolution: {integrity: sha512-vYW5qOVY3Rh9Ewtrkk/vaEDCeOXFIa7msv5TwUi1B633CFu/lchrmGGy4O/gdK1qfCjDBBxsWw/DhZ+Ta0+rMQ==} engines: {node: '>= 8.0.0'} dev: true @@ -9883,7 +10104,7 @@ packages: resolution: {integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==} hasBin: true dependencies: - minimist: 1.2.7 + minimist: 1.2.8 /mkdirp/1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} @@ -9891,13 +10112,13 @@ packages: hasBin: true dev: true - /mlly/1.1.1: - resolution: {integrity: sha512-Jnlh4W/aI4GySPo6+DyTN17Q75KKbLTyFK8BrGhjNP4rxuUjbRWhE6gHg3bs33URWAF44FRm7gdQA348i3XxRw==} + /mlly/1.2.0: + resolution: {integrity: sha512-+c7A3CV0KGdKcylsI6khWyts/CYrGTrRVo4R/I7u/cUsy0Conxa6LUhiEzVKIw14lc2L5aiO4+SeVe4TeGRKww==} dependencies: acorn: 8.8.2 pathe: 1.1.0 pkg-types: 1.0.2 - ufo: 1.1.0 + ufo: 1.1.1 dev: true /moniker/0.1.2: @@ -10033,6 +10254,11 @@ packages: resolution: {integrity: sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==} engines: {node: '>= 0.6'} + /negotiator/0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + dev: true + /neo-async/2.6.2: resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} @@ -10069,7 +10295,7 @@ packages: browserify-zlib: 0.2.0 browserslist: 4.16.6 buffer: 5.6.0 - caniuse-lite: 1.0.30001431 + caniuse-lite: 1.0.30001466 chalk: 2.4.2 chokidar: 3.5.1 constants-browserify: 1.0.0 @@ -10145,8 +10371,8 @@ packages: dependencies: whatwg-url: 5.0.0 - /node-fetch/3.3.0: - resolution: {integrity: sha512-BKwRP/O0UvoMKp7GNdwPlObhYGB5DQqwhEDQlNKuoqwVYSxkSZCSbHjnFFmUEtwSKRPU4kNK8PbDYYitwaE3QA==} + /node-fetch/3.3.1: + resolution: {integrity: sha512-cRVc/kyto/7E5shrWca1Wsea4y6tL9iYJE5FBCius3JQfb/4P4I295PfhgbJQBLTx6lATE4z+wK0rPM4VS2uow==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dependencies: data-uri-to-buffer: 4.0.1 @@ -10158,6 +10384,26 @@ packages: resolution: {integrity: sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==} engines: {node: '>= 6.0.0'} + /node-gyp/9.3.1: + resolution: {integrity: sha512-4Q16ZCqq3g8awk6UplT7AuxQ35XN4R/yf/+wSAwcBUAjg7l58RTactWaP8fIDTi0FzI7YcVLujwExakZlfWkXg==} + engines: {node: ^12.13 || ^14.13 || >=16} + hasBin: true + dependencies: + env-paths: 2.2.1 + glob: 7.1.6 + graceful-fs: 4.2.10 + make-fetch-happen: 10.2.1 + nopt: 6.0.0 + npmlog: 6.0.2 + rimraf: 3.0.2 + semver: 7.3.8 + tar: 6.1.13 + which: 2.0.2 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /node-html-parser/1.4.9: resolution: {integrity: sha512-UVcirFD1Bn0O+TSmloHeHqZZCxHjvtIeGdVdGMhyZ8/PWlEiZaZ5iJzR189yKZr8p0FXN58BUeC7RHRkf/KYGw==} dependencies: @@ -10198,20 +10444,12 @@ packages: util: 0.11.1 vm-browserify: 1.1.2 - /node-modules-regexp/1.0.0: - resolution: {integrity: sha512-JMaRS9L4wSRIR+6PTVEikTrq/lMGEZR43a48ETeilY0Q0iMwVnccMFrUM1k+tNzmYuIU0Vh710bCUqHX+/+ctQ==} - engines: {node: '>=0.10.0'} - /node-releases/1.1.71: resolution: {integrity: sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==} dev: true /node-releases/2.0.10: resolution: {integrity: sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==} - dev: true - - /node-releases/2.0.6: - resolution: {integrity: sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==} /nopt/6.0.0: resolution: {integrity: sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==} @@ -10221,6 +10459,14 @@ packages: abbrev: 1.1.1 dev: true + /nopt/7.0.0: + resolution: {integrity: sha512-e6Qw1rcrGoSxEH0hQ4GBSdUjkMOtXGhGFXdNT/3ZR0S37eR9DMj5za3dEDWE6o1T3/DP8ZOsPP4MIiky0c3QeA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + abbrev: 2.0.0 + dev: true + /normalize-package-data/2.5.0: resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} dependencies: @@ -10230,6 +10476,16 @@ packages: validate-npm-package-license: 3.0.4 dev: true + /normalize-package-data/5.0.0: + resolution: {integrity: sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + hosted-git-info: 6.1.1 + is-core-module: 2.11.0 + semver: 7.3.8 + validate-npm-package-license: 3.0.4 + dev: true + /normalize-path/2.1.1: resolution: {integrity: sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==} engines: {node: '>=0.10.0'} @@ -10269,32 +10525,73 @@ packages: resolution: {integrity: sha512-5PDmaAsVfnWUgTUbJ3ERwn7u79Z0dYxN9ErxCpVJJqe2RK0PJ3z+iFUxuqjwtlDDegXvtWoxD/3Fzxox7tFGWA==} dev: false - /npm-bundled/1.1.2: - resolution: {integrity: sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ==} + /npm-bundled/3.0.0: + resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - npm-normalize-package-bin: 1.0.1 + npm-normalize-package-bin: 3.0.0 dev: true /npm-conf/1.1.3: resolution: {integrity: sha512-Yic4bZHJOt9RCFbRP3GgpqhScOY4HH3V2P8yBj6CeYq118Qr+BLXqT2JvpJ00mryLESpgOxf5XlFv4ZjXxLScw==} engines: {node: '>=4'} dependencies: - config-chain: 1.1.12 + config-chain: 1.1.13 pify: 3.0.0 - /npm-normalize-package-bin/1.0.1: - resolution: {integrity: sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==} + /npm-install-checks/6.0.0: + resolution: {integrity: sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + semver: 7.3.8 + dev: true + + /npm-normalize-package-bin/3.0.0: + resolution: {integrity: sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + + /npm-package-arg/10.1.0: + resolution: {integrity: sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + hosted-git-info: 6.1.1 + proc-log: 3.0.0 + semver: 7.3.8 + validate-npm-package-name: 5.0.0 + dev: true + + /npm-packlist/7.0.4: + resolution: {integrity: sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + ignore-walk: 6.0.1 + dev: true + + /npm-pick-manifest/8.0.1: + resolution: {integrity: sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + npm-install-checks: 6.0.0 + npm-normalize-package-bin: 3.0.0 + npm-package-arg: 10.1.0 + semver: 7.3.8 dev: true - /npm-packlist/2.1.5: - resolution: {integrity: sha512-KCfK3Vi2F+PH1klYauoQzg81GQ8/GGjQRKYY6tRnpQUPKTs/1gBZSRWtTEd7jGdSn1LZL7gpAmJT+BcS55k2XQ==} - engines: {node: '>=10'} - hasBin: true + /npm-registry-fetch/14.0.3: + resolution: {integrity: sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dependencies: - glob: 7.1.6 - ignore-walk: 3.0.3 - npm-bundled: 1.1.2 - npm-normalize-package-bin: 1.0.1 + make-fetch-happen: 11.0.3 + minipass: 4.2.5 + minipass-fetch: 3.0.1 + minipass-json-stream: 1.0.1 + minizlib: 2.1.2 + npm-package-arg: 10.1.0 + proc-log: 3.0.0 + transitivePeerDependencies: + - bluebird + - supports-color dev: true /npm-run-all/4.1.5: @@ -10309,8 +10606,8 @@ packages: minimatch: 3.1.2 pidtree: 0.3.1 read-pkg: 3.0.0 - shell-quote: 1.7.2 - string.prototype.padend: 3.1.2 + shell-quote: 1.8.0 + string.prototype.padend: 3.1.4 dev: true /npm-run-path/2.0.2: @@ -10326,6 +10623,33 @@ packages: path-key: 3.1.1 dev: true + /npm-run-path/5.1.0: + resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: 4.0.0 + dev: true + + /npmlog/6.0.2: + resolution: {integrity: sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + are-we-there-yet: 3.0.1 + console-control-strings: 1.1.0 + gauge: 4.0.4 + set-blocking: 2.0.0 + dev: true + + /npmlog/7.0.1: + resolution: {integrity: sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + are-we-there-yet: 4.0.0 + console-control-strings: 1.1.0 + gauge: 5.0.0 + set-blocking: 2.0.0 + dev: true + /nth-check/1.0.2: resolution: {integrity: sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==} dependencies: @@ -10359,19 +10683,15 @@ packages: define-property: 0.2.5 kind-of: 3.2.2 - /object-inspect/1.12.2: - resolution: {integrity: sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==} - /object-inspect/1.12.3: resolution: {integrity: sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==} - dev: true /object-is/1.1.5: resolution: {integrity: sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.2.0 /object-keys/1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} @@ -10388,7 +10708,7 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 + define-properties: 1.2.0 has-symbols: 1.0.3 object-keys: 1.1.1 @@ -10397,8 +10717,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 dev: true /object.fromentries/2.0.6: @@ -10406,8 +10726,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 dev: true /object.getownpropertydescriptors/2.1.2: @@ -10415,14 +10735,14 @@ packages: engines: {node: '>= 0.8'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 /object.hasown/1.1.2: resolution: {integrity: sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==} dependencies: - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 dev: true /object.pick/1.3.0: @@ -10436,8 +10756,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 /obuf/1.1.2: resolution: {integrity: sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==} @@ -10470,6 +10790,13 @@ packages: mimic-fn: 2.1.0 dev: true + /onetime/6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + dependencies: + mimic-fn: 4.0.0 + dev: true + /open/8.4.2: resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==} engines: {node: '>=12'} @@ -10653,6 +10980,34 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + /pacote/15.1.1: + resolution: {integrity: sha512-eeqEe77QrA6auZxNHIp+1TzHQ0HBKf5V6c8zcaYZ134EJe1lCi+fjXATkNiEEfbG+e50nu02GLvUtmZcGOYabQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + '@npmcli/git': 4.0.3 + '@npmcli/installed-package-contents': 2.0.2 + '@npmcli/promise-spawn': 6.0.2 + '@npmcli/run-script': 6.0.0 + cacache: 17.0.4 + fs-minipass: 3.0.1 + minipass: 4.2.5 + npm-package-arg: 10.1.0 + npm-packlist: 7.0.4 + npm-pick-manifest: 8.0.1 + npm-registry-fetch: 14.0.3 + proc-log: 3.0.0 + promise-retry: 2.0.1 + read-package-json: 6.0.0 + read-package-json-fast: 3.0.2 + sigstore: 1.1.1 + ssri: 10.0.1 + tar: 6.1.13 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /pako/0.2.9: resolution: {integrity: sha512-NUcwaKxUxWrZLpDG+z/xZaCgQITkA/Dv4V/T6bw7VON6l1Xz/VnrBqrYjZQ12TamKHzITTfOEIYUj48y2KXImA==} @@ -10686,6 +11041,15 @@ packages: pbkdf2: 3.1.2 safe-buffer: 5.2.1 + /parse-conflict-json/3.0.0: + resolution: {integrity: sha512-ipcKLCmZbAj7n+h9qQREvdvsBUMPetGk9mM4ljCvs5inZznAlkHPk5XPc7ROtknUKw7kO6Jnz10Y3Eec7tky/A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + json-parse-even-better-errors: 3.0.0 + just-diff: 5.2.0 + just-diff-apply: 5.5.0 + dev: true + /parse-entities/1.2.2: resolution: {integrity: sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==} dependencies: @@ -10721,7 +11085,7 @@ packages: '@babel/code-frame': 7.18.6 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.1.6 + lines-and-columns: 1.2.4 /parse5-htmlparser2-tree-adapter/6.0.1: resolution: {integrity: sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==} @@ -10791,9 +11155,22 @@ packages: engines: {node: '>=8'} dev: true + /path-key/4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: true + /path-parse/1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} + /path-scurry/1.6.1: + resolution: {integrity: sha512-OW+5s+7cw6253Q4E+8qQ/u1fVvcJQCJo/VFD8pje+dbJCF1n5ZRMV2AEHbGp+5Q7jxQIYJxkHopnj6nzdGeZLA==} + engines: {node: '>=14'} + dependencies: + lru-cache: 7.18.3 + minipass: 4.2.5 + dev: true + /path-to-regexp/0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} @@ -10845,7 +11222,7 @@ packages: /peek-stream/1.1.3: resolution: {integrity: sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==} dependencies: - buffer-from: 1.1.1 + buffer-from: 1.1.2 duplexify: 3.7.1 through2: 2.0.5 @@ -10868,6 +11245,12 @@ packages: hasBin: true dev: true + /pidtree/0.6.0: + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} + engines: {node: '>=0.10'} + hasBin: true + dev: true + /pify/2.3.0: resolution: {integrity: sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==} engines: {node: '>=0.10.0'} @@ -10890,11 +11273,9 @@ packages: resolution: {integrity: sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==} engines: {node: '>=0.10.0'} - /pirates/4.0.1: - resolution: {integrity: sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==} + /pirates/4.0.5: + resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==} engines: {node: '>= 6'} - dependencies: - node-modules-regexp: 1.0.0 /pkg-dir/3.0.0: resolution: {integrity: sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==} @@ -10919,7 +11300,7 @@ packages: resolution: {integrity: sha512-hM58GKXOcj8WTqUXnsQyJYXdeAPbythQgEF3nTcEo+nkD49chjQ9IKm/QJy9xf6JakXptz86h7ecP2024rrLaQ==} dependencies: jsonc-parser: 3.2.0 - mlly: 1.1.1 + mlly: 1.2.0 pathe: 1.1.0 dev: true @@ -10970,14 +11351,14 @@ packages: resolution: {integrity: sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==} dependencies: postcss: 7.0.35 - postcss-selector-parser: 6.0.5 + postcss-selector-parser: 6.0.11 postcss-value-parser: 4.1.0 /postcss-colormin/4.0.3: resolution: {integrity: sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==} engines: {node: '>=6.9.0'} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 color: 3.1.3 has: 1.0.3 postcss: 7.0.35 @@ -11048,7 +11429,7 @@ packages: resolution: {integrity: sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==} engines: {node: '>=6.9.0'} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 caniuse-api: 3.0.0 cssnano-util-same-parent: 4.0.1 postcss: 7.0.35 @@ -11076,7 +11457,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: alphanum-sort: 1.0.2 - browserslist: 4.21.4 + browserslist: 4.21.5 cssnano-util-get-arguments: 4.0.0 postcss: 7.0.35 postcss-value-parser: 3.3.1 @@ -11102,7 +11483,7 @@ packages: engines: {node: '>= 6'} dependencies: postcss: 7.0.35 - postcss-selector-parser: 6.0.5 + postcss-selector-parser: 6.0.11 postcss-value-parser: 3.3.1 /postcss-modules-scope/2.2.0: @@ -11110,7 +11491,7 @@ packages: engines: {node: '>= 6'} dependencies: postcss: 7.0.35 - postcss-selector-parser: 6.0.5 + postcss-selector-parser: 6.0.11 /postcss-modules-values/2.0.0: resolution: {integrity: sha512-Ki7JZa7ff1N3EIMlPnGTZfUMe69FFwiQPnVSXC9mnn3jozCRBYIxiZd44yJOV2AmabOo4qFf8s0dC/+lweG7+w==} @@ -11170,7 +11551,7 @@ packages: resolution: {integrity: sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==} engines: {node: '>=6.9.0'} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 postcss: 7.0.35 postcss-value-parser: 3.3.1 @@ -11202,7 +11583,7 @@ packages: resolution: {integrity: sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==} engines: {node: '>=6.9.0'} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 caniuse-api: 3.0.0 has: 1.0.3 postcss: 7.0.35 @@ -11224,8 +11605,8 @@ packages: indexes-of: 1.0.1 uniq: 1.0.1 - /postcss-selector-parser/6.0.5: - resolution: {integrity: sha512-aFYPoYmXbZ1V6HZaSvat08M97A8HqO6Pjz+PiNpw/DhuRrC72XWAdp3hL6wusDCN31sSmcZyMGa2hZEuX+Xfhg==} + /postcss-selector-parser/6.0.11: + resolution: {integrity: sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==} engines: {node: '>=4'} dependencies: cssesc: 3.0.0 @@ -11270,15 +11651,6 @@ packages: source-map: 0.6.1 dev: true - /postcss/8.4.19: - resolution: {integrity: sha512-h+pbPsyhlYj6N2ozBmHhHrs9DzGmbaarbLvWipMRO7RLS+v4onj26MPFXA5OBYFxyqYhUJK456SwDcY9H2/zsA==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.4 - picocolors: 1.0.0 - source-map-js: 1.0.2 - dev: true - /postcss/8.4.21: resolution: {integrity: sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==} engines: {node: ^10 || ^12 || >=14} @@ -11288,8 +11660,8 @@ packages: source-map-js: 1.0.2 dev: true - /preact/10.5.13: - resolution: {integrity: sha512-q/vlKIGNwzTLu+jCcvywgGrt+H/1P/oIRSD6mV4ln3hmlC+Aa34C7yfPI4+5bzW8pONyVXYS7SvXosy2dKKtWQ==} + /preact/10.13.1: + resolution: {integrity: sha512-KyoXVDU5OqTpG9LXlB3+y639JAGzl8JSBXLn1J9HTSB3gbKcuInga7bZnXLlxmK94ntTs1EFeZp0lrja2AuBYQ==} /preferred-pm/3.0.3: resolution: {integrity: sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==} @@ -11326,12 +11698,6 @@ packages: fast-diff: 1.2.0 dev: true - /prettier/2.2.1: - resolution: {integrity: sha512-PqyhM2yCjg/oKkFPtTGUojv7gnZAoG80ttl45O6x2Ug/rMJw4wcc9k6aaf2hibP7BGVCCM33gZoGjyvt9mm16Q==} - engines: {node: '>=10.13.0'} - hasBin: true - dev: true - /prettier/2.8.4: resolution: {integrity: sha512-vIS4Rlc2FNh0BySk3Wkd6xmwxB0FpOndW5fisM5H8hsZSxU2VWVB5CWIkIjWvrHjIhxk2g3bfMKM87zNTrZddw==} engines: {node: '>=10.13.0'} @@ -11376,6 +11742,11 @@ packages: react: 17.0.2 dev: false + /proc-log/3.0.0: + resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + /process-nextick-args/2.0.1: resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} @@ -11392,6 +11763,23 @@ packages: resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} engines: {node: '>=0.4.0'} + /promise-all-reject-late/1.0.1: + resolution: {integrity: sha512-vuf0Lf0lOxyQREH7GDIOUMLS7kz+gs8i6B+Yi8dC68a2sychGrHTJYghMBD6k7eUcH0H5P73EckCA48xijWqXw==} + dev: true + + /promise-call-limit/1.0.1: + resolution: {integrity: sha512-3+hgaa19jzCGLuSCbieeRsu5C2joKfYn8pY6JAuXFRVfF4IO+L7UPpFWNTeWT9pM7uhskvbPPd/oEOktCn317Q==} + dev: true + + /promise-inflight/1.0.1: + resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} + peerDependencies: + bluebird: '*' + peerDependenciesMeta: + bluebird: + optional: true + dev: true + /promise-inflight/1.0.1_bluebird@3.7.2: resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} peerDependencies: @@ -11402,6 +11790,14 @@ packages: dependencies: bluebird: 3.7.2 + /promise-retry/2.0.1: + resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} + engines: {node: '>=10'} + dependencies: + err-code: 2.0.3 + retry: 0.12.0 + dev: true + /prop-types-exact/1.2.0: resolution: {integrity: sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==} dependencies: @@ -11489,8 +11885,8 @@ packages: /punycode/1.4.1: resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==} - /punycode/2.1.1: - resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} + /punycode/2.3.0: + resolution: {integrity: sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==} engines: {node: '>=6'} /q/1.4.1: @@ -11501,6 +11897,13 @@ packages: resolution: {integrity: sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw==} engines: {node: '>=0.6.0', teleport: '>=0.2.0'} + /qs/6.10.4: + resolution: {integrity: sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==} + engines: {node: '>=0.6'} + dependencies: + side-channel: 1.0.4 + dev: true + /qs/6.5.2: resolution: {integrity: sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==} engines: {node: '>=0.6'} @@ -11629,7 +12032,7 @@ packages: dependencies: deep-extend: 0.6.0 ini: 1.3.8 - minimist: 1.2.7 + minimist: 1.2.8 strip-json-comments: 2.0.1 /react-dom/17.0.2_react@17.0.2: @@ -11648,7 +12051,7 @@ packages: peerDependencies: react: '>=16.13.1 || 17' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 react: 17.0.2 dev: true @@ -11736,7 +12139,7 @@ packages: peerDependencies: react: '>=15 || 17' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 history: 4.10.1 loose-envify: 1.4.0 prop-types: 15.8.1 @@ -11761,7 +12164,7 @@ packages: peerDependencies: react: '>=15 || 17' dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 history: 4.10.1 hoist-non-react-statics: 3.3.2 loose-envify: 1.4.0 @@ -11863,25 +12266,25 @@ packages: peerDependencies: react-hot-loader: ^4.12.11 dependencies: - '@babel/cli': 7.13.16_@babel+core@7.20.2 - '@babel/core': 7.20.2 - '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.20.2 - '@babel/plugin-proposal-export-default-from': 7.12.13_@babel+core@7.20.2 - '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.20.2 - '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.20.2 - '@babel/plugin-transform-destructuring': 7.13.17_@babel+core@7.20.2 - '@babel/plugin-transform-modules-commonjs': 7.14.0_@babel+core@7.20.2 - '@babel/plugin-transform-runtime': 7.13.15_@babel+core@7.20.2 - '@babel/preset-env': 7.13.15_@babel+core@7.20.2 - '@babel/preset-react': 7.13.13_@babel+core@7.20.2 + '@babel/cli': 7.13.16_@babel+core@7.21.3 + '@babel/core': 7.21.3 + '@babel/plugin-proposal-class-properties': 7.13.0_@babel+core@7.21.3 + '@babel/plugin-proposal-export-default-from': 7.12.13_@babel+core@7.21.3 + '@babel/plugin-proposal-optional-chaining': 7.13.12_@babel+core@7.21.3 + '@babel/plugin-syntax-dynamic-import': 7.8.3_@babel+core@7.21.3 + '@babel/plugin-transform-destructuring': 7.13.17_@babel+core@7.21.3 + '@babel/plugin-transform-modules-commonjs': 7.14.0_@babel+core@7.21.3 + '@babel/plugin-transform-runtime': 7.13.15_@babel+core@7.21.3 + '@babel/preset-env': 7.13.15_@babel+core@7.21.3 + '@babel/preset-react': 7.13.13_@babel+core@7.21.3 '@babel/preset-stage-0': 7.8.3 - '@babel/register': 7.13.16_@babel+core@7.20.2 - '@babel/runtime': 7.20.1 + '@babel/register': 7.13.16_@babel+core@7.21.3 + '@babel/runtime': 7.21.0 '@reach/router': 1.3.4_sfoxds7t5ydpegc3knd667wn6m autoprefixer: 9.8.6 axios: 0.19.2 - babel-core: 7.0.0-bridge.0_@babel+core@7.20.2 - babel-loader: 8.2.2_tktscwi5cl3qcx6vcfwkvrwn6i + babel-core: 7.0.0-bridge.0_@babel+core@7.21.3 + babel-loader: 8.2.2_y3c3uzyfhmxjbwhc6k6hyxg3aa babel-plugin-macros: 2.8.0 babel-plugin-transform-react-remove-prop-types: 0.4.24 babel-plugin-universal-import: 4.0.2_webpack@4.46.0 @@ -11904,7 +12307,7 @@ packages: intersection-observer: 0.7.0 jsesc: 2.5.2 match-sorter: 3.1.1 - minimist: 1.2.7 + minimist: 1.2.8 mutation-observer: 1.0.3 optimize-css-assets-webpack-plugin: 5.0.4_webpack@4.46.0 portfinder: 1.0.28 @@ -11984,6 +12387,29 @@ packages: loose-envify: 1.4.0 object-assign: 4.1.1 + /read-cmd-shim/4.0.0: + resolution: {integrity: sha512-yILWifhaSEEytfXI76kB9xEEiG1AiozaCJZ83A87ytjRiN+jVibXjedjCRNjoZviinhG+4UkalO3mWTd8u5O0Q==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dev: true + + /read-package-json-fast/3.0.2: + resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + json-parse-even-better-errors: 3.0.0 + npm-normalize-package-bin: 3.0.0 + dev: true + + /read-package-json/6.0.0: + resolution: {integrity: sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + glob: 8.1.0 + json-parse-even-better-errors: 3.0.0 + normalize-package-data: 5.0.0 + npm-normalize-package-bin: 3.0.0 + dev: true + /read-pkg-up/7.0.1: resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} engines: {node: '>=8'} @@ -12006,7 +12432,7 @@ packages: resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} engines: {node: '>=8'} dependencies: - '@types/normalize-package-data': 2.4.0 + '@types/normalize-package-data': 2.4.1 normalize-package-data: 2.5.0 parse-json: 5.2.0 type-fest: 0.6.0 @@ -12040,14 +12466,24 @@ packages: string_decoder: 1.1.1 util-deprecate: 1.0.2 - /readable-stream/3.6.0: - resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==} + /readable-stream/3.6.2: + resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==} engines: {node: '>= 6'} dependencies: inherits: 2.0.4 string_decoder: 1.3.0 util-deprecate: 1.0.2 + /readable-stream/4.3.0: + resolution: {integrity: sha512-MuEnA0lbSi7JS8XM+WNJlWZkHAAdm7gETHdFK//Q/mChGyj2akEFtdLZh32jSdkWGbRwCW9pn6g3LWDdDeZnBQ==} + engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + dependencies: + abort-controller: 3.0.0 + buffer: 6.0.3 + events: 3.3.0 + process: 0.11.10 + dev: true + /readdirp/2.2.1: resolution: {integrity: sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==} engines: {node: '>=0.10'} @@ -12105,7 +12541,7 @@ packages: /regenerator-transform/0.14.5: resolution: {integrity: sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==} dependencies: - '@babel/runtime': 7.20.1 + '@babel/runtime': 7.21.0 /regex-not/1.0.2: resolution: {integrity: sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==} @@ -12119,13 +12555,8 @@ packages: engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - functions-have-names: 1.2.2 - - /regexpp/3.2.0: - resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==} - engines: {node: '>=8'} - dev: true + define-properties: 1.2.0 + functions-have-names: 1.2.3 /regexpu-core/4.7.1: resolution: {integrity: sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==} @@ -12265,9 +12696,6 @@ packages: unified: 8.4.2 dev: false - /remove-accents/0.4.2: - resolution: {integrity: sha512-7pXIJqJOq5tFgG1A2Zxti3Ht8jJF337m4sowbuHsW30ZnkQFnDzy9qBNhgzX8ZLW4+UBcXiiR7SwR6pokHsxiA==} - /remove-trailing-separator/1.1.0: resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==} @@ -12300,7 +12728,7 @@ packages: deprecated: request has been deprecated, see https://github.com/request/request/issues/3142 dependencies: aws-sign2: 0.7.0 - aws4: 1.11.0 + aws4: 1.12.0 caseless: 0.12.0 combined-stream: 1.0.8 extend: 3.0.2 @@ -12311,7 +12739,7 @@ packages: is-typedarray: 1.0.0 isstream: 0.1.2 json-stringify-safe: 5.0.1 - mime-types: 2.1.30 + mime-types: 2.1.35 oauth-sign: 0.9.0 performance-now: 2.1.0 qs: 6.5.2 @@ -12365,11 +12793,13 @@ packages: path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 - /resolve/2.0.0-next.3: - resolution: {integrity: sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q==} + /resolve/2.0.0-next.4: + resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + hasBin: true dependencies: is-core-module: 2.11.0 path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 dev: true /responselike/1.0.2: @@ -12382,14 +12812,14 @@ packages: engines: {node: '>=4'} dependencies: onetime: 2.0.1 - signal-exit: 3.0.3 + signal-exit: 3.0.7 /restore-cursor/3.1.0: resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} engines: {node: '>=8'} dependencies: onetime: 5.1.2 - signal-exit: 3.0.3 + signal-exit: 3.0.7 dev: true /ret/0.1.15: @@ -12428,6 +12858,14 @@ packages: glob: 7.1.6 dev: true + /rimraf/4.4.0: + resolution: {integrity: sha512-X36S+qpCUR0HjXlkDe4NAOhS//aHH0Z+h8Ckf2auGJk3PTnx5rLmrHkwNdbVQuCSUhOyFrlRvFEllZOYE+yZGQ==} + engines: {node: '>=14'} + hasBin: true + dependencies: + glob: 9.3.0 + dev: true + /ripemd160/2.0.2: resolution: {integrity: sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==} dependencies: @@ -12503,6 +12941,10 @@ packages: fsevents: 2.3.2 dev: true + /rrweb-cssom/0.6.0: + resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} + dev: true + /rst-selector-parser/2.2.3: resolution: {integrity: sha512-nDG1rZeP6oFTLN6yNDV/uiAvs1+FS/KlrEwh7+y7dpuApDBy6bI2HTBcc0/V8lv9OTqfyD34eF7au2pm8aBbhA==} dependencies: @@ -12531,10 +12973,10 @@ packages: dependencies: tslib: 1.14.1 - /rxjs/7.5.5: - resolution: {integrity: sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==} + /rxjs/7.8.0: + resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==} dependencies: - tslib: 2.4.0 + tslib: 2.5.0 dev: true /safe-buffer/5.1.2: @@ -12547,7 +12989,7 @@ packages: resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 + get-intrinsic: 1.2.0 is-regex: 1.1.4 /safe-regex/1.1.0: @@ -12615,8 +13057,8 @@ packages: resolution: {integrity: sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==} dev: true - /semver-regex/3.1.2: - resolution: {integrity: sha512-bXWyL6EAKOJa81XG1OZ/Yyuq+oT0b2YLlxx7c+mrdYPaPbnj6WgVULXhinMIeZGufuUBu/eVRqXEhiv4imfwxA==} + /semver-regex/3.1.4: + resolution: {integrity: sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==} engines: {node: '>=8'} dev: true @@ -12712,7 +13154,7 @@ packages: debug: 2.6.9_supports-color@6.1.0 escape-html: 1.0.3 http-errors: 1.6.3 - mime-types: 2.1.30 + mime-types: 2.1.35 parseurl: 1.3.3 transitivePeerDependencies: - supports-color @@ -12818,6 +13260,10 @@ packages: resolution: {integrity: sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==} dev: true + /shell-quote/1.8.0: + resolution: {integrity: sha512-QHsz8GgQIGKlRi24yFc6a6lN69Idnx634w49ay6+jA5yFh7a1UY+4Rp6HPx/L/1zcEDPEij8cIsiqR6bQsE5VQ==} + dev: true + /shelljs/0.5.3: resolution: {integrity: sha512-C2FisSSW8S6TIYHHiMHN0NqzdjWfTekdMpA2FJTbRWnQMLO1RRIXEB9eVZYOlofYmjZA7fY3ChoFu09MeI3wlQ==} engines: {node: '>=0.8.0'} @@ -12830,8 +13276,8 @@ packages: resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} dependencies: call-bind: 1.0.2 - get-intrinsic: 1.1.3 - object-inspect: 1.12.2 + get-intrinsic: 1.2.0 + object-inspect: 1.12.3 /siginfo/2.0.0: resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==} @@ -12841,8 +13287,21 @@ packages: resolution: {integrity: sha512-fCvEXfh6NWpm+YSuY2bpXb/VIihqWA6hLsgboC+0nl71Q7N7o2eaCW8mJa/NLvQhs6jpd3VZV4UiUQlV6+lc8g==} dev: true - /signal-exit/3.0.3: - resolution: {integrity: sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==} + /signal-exit/3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + /sigstore/1.1.1: + resolution: {integrity: sha512-4hR3tPP1y59YWlaoAgAWFVZ7srTjNWOrrpkQXWu05qP0BvwFYyt3K3l848+IHo+mKhkOzGcNDf7ktASXLEPC+A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + '@sigstore/protobuf-specs': 0.1.0 + make-fetch-happen: 11.0.3 + tuf-js: 1.1.1 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true /simple-swizzle/0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} @@ -12884,6 +13343,11 @@ packages: is-fullwidth-code-point: 4.0.0 dev: true + /smart-buffer/4.2.0: + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + dev: true + /smartwrap/2.0.2: resolution: {integrity: sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==} engines: {node: '>=6'} @@ -13018,6 +13482,25 @@ packages: uuid: 3.4.0 websocket-driver: 0.7.4 + /socks-proxy-agent/7.0.0: + resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} + engines: {node: '>= 10'} + dependencies: + agent-base: 6.0.2 + debug: 4.3.4 + socks: 2.7.1 + transitivePeerDependencies: + - supports-color + dev: true + + /socks/2.7.1: + resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} + engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + dependencies: + ip: 2.0.0 + smart-buffer: 4.2.0 + dev: true + /sort-keys-length/1.0.1: resolution: {integrity: sha512-GRbEOUqCxemTAk/b32F2xa8wDTs+Z1QHOkbhJDQTvv/6G3ZkbJ+frYWsTcc7cBB3Fu4wy4XlLCuNtJuMn7Gsvw==} engines: {node: '>=0.10.0'} @@ -13100,14 +13583,14 @@ packages: resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} dependencies: cross-spawn: 5.1.0 - signal-exit: 3.0.3 + signal-exit: 3.0.7 dev: true - /spdx-correct/3.1.1: - resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} + /spdx-correct/3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} dependencies: spdx-expression-parse: 3.0.1 - spdx-license-ids: 3.0.7 + spdx-license-ids: 3.0.13 dev: true /spdx-exceptions/2.3.0: @@ -13118,11 +13601,11 @@ packages: resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} dependencies: spdx-exceptions: 2.3.0 - spdx-license-ids: 3.0.7 + spdx-license-ids: 3.0.13 dev: true - /spdx-license-ids/3.0.7: - resolution: {integrity: sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==} + /spdx-license-ids/3.0.13: + resolution: {integrity: sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==} dev: true /spdy-transport/3.0.0_supports-color@6.1.0: @@ -13132,7 +13615,7 @@ packages: detect-node: 2.0.5 hpack.js: 2.1.6 obuf: 1.1.2 - readable-stream: 3.6.0 + readable-stream: 3.6.2 wbuf: 1.7.3 transitivePeerDependencies: - supports-color @@ -13169,7 +13652,7 @@ packages: engines: {node: '>=0.10.0'} hasBin: true dependencies: - asn1: 0.2.4 + asn1: 0.2.6 assert-plus: 1.0.0 bcrypt-pbkdf: 1.0.2 dashdash: 1.14.1 @@ -13180,11 +13663,25 @@ packages: tweetnacl: 0.14.5 dev: true + /ssri/10.0.1: + resolution: {integrity: sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + minipass: 4.2.5 + dev: true + /ssri/6.0.2: resolution: {integrity: sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==} dependencies: figgy-pudding: 3.5.2 + /ssri/9.0.1: + resolution: {integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + minipass: 3.3.6 + dev: true + /stable/0.1.8: resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' @@ -13228,7 +13725,7 @@ packages: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} dependencies: inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 dev: true /stream-each/1.2.3: @@ -13251,7 +13748,7 @@ packages: dependencies: builtin-status-codes: 3.0.0 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 xtend: 4.0.2 dev: true @@ -13269,7 +13766,7 @@ packages: /stream-transform/2.1.3: resolution: {integrity: sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==} dependencies: - mixme: 0.5.5 + mixme: 0.5.6 dev: true /strict-uri-encode/1.1.0: @@ -13322,46 +13819,45 @@ packages: resolution: {integrity: sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 - get-intrinsic: 1.1.3 + define-properties: 1.2.0 + es-abstract: 1.21.2 + get-intrinsic: 1.2.0 has-symbols: 1.0.3 - internal-slot: 1.0.3 + internal-slot: 1.0.5 regexp.prototype.flags: 1.4.3 side-channel: 1.0.4 dev: true - /string.prototype.padend/3.1.2: - resolution: {integrity: sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==} + /string.prototype.padend/3.1.4: + resolution: {integrity: sha512-67otBXoksdjsnXXRUq+KMVTdlVRZ2af422Y0aTyTjVaoQkGr3mxl2Bc5emi7dOQ3OGVVQQskmLEWwFXwommpNw==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 dev: true - /string.prototype.trim/1.2.4: - resolution: {integrity: sha512-hWCk/iqf7lp0/AgTF7/ddO1IWtSNPASjlzCicV5irAVdE1grjsneK26YG6xACMBEdCvO8fUST0UzDMh/2Qy+9Q==} + /string.prototype.trim/1.2.7: + resolution: {integrity: sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 - dev: true + define-properties: 1.2.0 + es-abstract: 1.21.2 /string.prototype.trimend/1.0.6: resolution: {integrity: sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 /string.prototype.trimstart/1.0.6: resolution: {integrity: sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==} dependencies: call-bind: 1.0.2 - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 /string_decoder/1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} @@ -13383,15 +13879,6 @@ packages: is-hexadecimal: 1.0.4 dev: false - /stringify-object/3.3.0: - resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} - engines: {node: '>=4'} - dependencies: - get-own-enumerable-property-symbols: 3.0.2 - is-obj: 1.0.1 - is-regexp: 1.0.0 - dev: true - /strip-ansi/3.0.1: resolution: {integrity: sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==} engines: {node: '>=0.10.0'} @@ -13450,6 +13937,11 @@ packages: engines: {node: '>=6'} dev: true + /strip-final-newline/3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: true + /strip-indent/3.0.0: resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==} engines: {node: '>=8'} @@ -13499,7 +13991,7 @@ packages: react-is: '>= 16.8.0 || 17' dependencies: '@babel/helper-module-imports': 7.18.6 - '@babel/traverse': 7.20.1_supports-color@5.5.0 + '@babel/traverse': 7.21.3_supports-color@5.5.0 '@emotion/is-prop-valid': 0.8.8 '@emotion/stylis': 0.8.5 '@emotion/unitless': 0.7.5 @@ -13532,7 +14024,7 @@ packages: resolution: {integrity: sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==} engines: {node: '>=6.9.0'} dependencies: - browserslist: 4.21.4 + browserslist: 4.21.5 postcss: 7.0.35 postcss-selector-parser: 3.1.2 @@ -13555,9 +14047,9 @@ packages: dependencies: commander: 4.1.1 glob: 7.1.6 - lines-and-columns: 1.1.6 + lines-and-columns: 1.2.4 mz: 2.7.0 - pirates: 4.0.1 + pirates: 4.0.5 ts-interface-checker: 0.1.13 dev: true @@ -13689,15 +14181,15 @@ packages: end-of-stream: 1.4.4 fs-constants: 1.0.0 inherits: 2.0.4 - readable-stream: 3.6.0 + readable-stream: 3.6.2 - /tar/6.1.0: - resolution: {integrity: sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==} - engines: {node: '>= 10'} + /tar/6.1.13: + resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} + engines: {node: '>=10'} dependencies: chownr: 2.0.0 fs-minipass: 2.1.0 - minipass: 3.1.3 + minipass: 4.2.5 minizlib: 2.1.2 mkdirp: 1.0.4 yallist: 4.0.0 @@ -13814,8 +14306,8 @@ packages: resolution: {integrity: sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==} dev: false - /tinybench/2.3.1: - resolution: {integrity: sha512-hGYWYBMPr7p4g5IarQE7XhlyWveh1EKhy4wUBS1LrHXCKYgvz+4/jCqgmJqZxxldesn05vccrtME2RLLZNW7iA==} + /tinybench/2.4.0: + resolution: {integrity: sha512-iyziEiyFxX4kyxSp+MtY1oCH/lvjH3PxFN8PGCDeqcZWAJ/i+9y+nL85w99PxVzrIvew/GSkSbDYtiGVa85Afg==} dev: true /tinypool/0.3.1: @@ -13823,8 +14315,8 @@ packages: engines: {node: '>=14.0.0'} dev: true - /tinyspy/1.0.2: - resolution: {integrity: sha512-bSGlgwLBYf7PnUsQ6WOc6SJ3pGOcd+d8AA6EUnLDDM0kWEstC1JIlSZA3UNliDXhd9ABoS7hiRBDCu+XP/sf1Q==} + /tinyspy/1.1.1: + resolution: {integrity: sha512-UVq5AXt/gQlti7oxoIg5oi/9r0WpF7DGEVwXgqWSMmyN16+e3tl5lIvTaOpJ3TAtu5xFzWccFRM4R5NaWHF+4g==} engines: {node: '>=14.0.0'} dev: true @@ -13907,7 +14399,7 @@ packages: engines: {node: '>=0.8'} dependencies: psl: 1.9.0 - punycode: 2.1.1 + punycode: 2.3.0 dev: true /tough-cookie/4.1.2: @@ -13915,7 +14407,7 @@ packages: engines: {node: '>=6'} dependencies: psl: 1.9.0 - punycode: 2.1.1 + punycode: 2.3.0 universalify: 0.2.0 url-parse: 1.5.10 dev: true @@ -13926,18 +14418,23 @@ packages: /tr46/1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} dependencies: - punycode: 2.1.1 + punycode: 2.3.0 dev: true - /tr46/3.0.0: - resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} - engines: {node: '>=12'} + /tr46/4.1.1: + resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==} + engines: {node: '>=14'} dependencies: - punycode: 2.1.1 + punycode: 2.3.0 + dev: true + + /treeverse/3.0.0: + resolution: {integrity: sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dev: true - /trim-newlines/3.0.0: - resolution: {integrity: sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==} + /trim-newlines/3.0.1: + resolution: {integrity: sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==} engines: {node: '>=8'} dev: true @@ -13973,12 +14470,12 @@ packages: optional: true dev: true - /tsconfck/2.0.1_typescript@4.9.5: - resolution: {integrity: sha512-/ipap2eecmVBmBlsQLBRbUmUNFwNJV/z2E+X0FPtHNjPwroMZQ7m39RMaCywlCulBheYXgMdUlWDd9rzxwMA0Q==} - engines: {node: ^14.13.1 || ^16 || >=18, pnpm: ^7.0.1} + /tsconfck/2.1.0_typescript@4.9.5: + resolution: {integrity: sha512-lztI9ohwclQHISVWrM/hlcgsRpphsii94DV9AQtAw2XJSVNiv+3ppdEsrL5J+xc5oTeHXe1qDqlOAGw8VSa9+Q==} + engines: {node: ^14.13.1 || ^16 || >=18} hasBin: true peerDependencies: - typescript: ^4.3.5 + typescript: ^4.3.5 || ^5.0.0 peerDependenciesMeta: typescript: optional: true @@ -13989,8 +14486,8 @@ packages: /tslib/1.14.1: resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} - /tslib/2.4.0: - resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==} + /tslib/2.5.0: + resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} dev: true /tsutils/3.21.0_typescript@4.9.5: @@ -14024,6 +14521,17 @@ packages: yargs: 17.7.1 dev: true + /tuf-js/1.1.1: + resolution: {integrity: sha512-WTp382/PR96k0dI4GD5RdiRhgOU0rAC7+lnoih/5pZg3cyb3aNMqDozleEEWwyfT3+FOg7Qz9JU3n6A44tLSHw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + '@tufjs/models': 1.0.0 + make-fetch-happen: 11.0.3 + transitivePeerDependencies: + - bluebird + - supports-color + dev: true + /tunnel-agent/0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} dependencies: @@ -14095,7 +14603,7 @@ packages: engines: {node: '>= 0.6'} dependencies: media-typer: 0.3.0 - mime-types: 2.1.30 + mime-types: 2.1.35 /typed-array-length/1.0.4: resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==} @@ -14103,7 +14611,6 @@ packages: call-bind: 1.0.2 for-each: 0.3.3 is-typed-array: 1.1.10 - dev: true /typedarray/0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} @@ -14114,8 +14621,8 @@ packages: hasBin: true dev: true - /ufo/1.1.0: - resolution: {integrity: sha512-LQc2s/ZDMaCN3QLpa+uzHUOQ7SdV0qgv3VBXOolQGXTaaZpIur6PwUclF5nN2hNkiTRcUugXd1zFOW3FLJ135Q==} + /ufo/1.1.1: + resolution: {integrity: sha512-MvlCc4GHrmZdAllBc0iUDowff36Q9Ndw/UzqmEKyrfSzokTd9ZCy1i+IIk5hrYKkjoYVQyNbrw7/F8XJ2rEwTg==} dev: true /uglify-js/3.4.10: @@ -14207,11 +14714,39 @@ packages: dependencies: unique-slug: 2.0.2 + /unique-filename/2.0.1: + resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + unique-slug: 3.0.0 + dev: true + + /unique-filename/3.0.0: + resolution: {integrity: sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + unique-slug: 4.0.0 + dev: true + /unique-slug/2.0.2: resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} dependencies: imurmurhash: 0.1.4 + /unique-slug/3.0.0: + resolution: {integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + imurmurhash: 0.1.4 + dev: true + + /unique-slug/4.0.0: + resolution: {integrity: sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + dev: true + /unist-builder/2.0.3: resolution: {integrity: sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==} @@ -14336,16 +14871,6 @@ packages: resolution: {integrity: sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==} engines: {node: '>=4'} - /update-browserslist-db/1.0.10_browserslist@4.21.4: - resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} - hasBin: true - peerDependencies: - browserslist: '>= 4.21.0' - dependencies: - browserslist: 4.21.4 - escalade: 3.1.1 - picocolors: 1.0.0 - /update-browserslist-db/1.0.10_browserslist@4.21.5: resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} hasBin: true @@ -14355,7 +14880,6 @@ packages: browserslist: 4.21.5 escalade: 3.1.1 picocolors: 1.0.0 - dev: true /update-check/1.5.2: resolution: {integrity: sha512-1TrmYLuLj/5ZovwUS7fFd1jMH3NnFDN1y1A8dboedIDt7zs/zJMo6TwwlhYKkSeEwzleeiSBV5/3c9ufAQWDaQ==} @@ -14369,7 +14893,7 @@ packages: /uri-js/4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: - punycode: 2.1.1 + punycode: 2.3.0 /urix/0.1.0: resolution: {integrity: sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==} @@ -14436,14 +14960,14 @@ packages: /util.promisify/1.0.0: resolution: {integrity: sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==} dependencies: - define-properties: 1.1.4 + define-properties: 1.2.0 object.getownpropertydescriptors: 2.1.2 /util.promisify/1.0.1: resolution: {integrity: sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==} dependencies: - define-properties: 1.1.4 - es-abstract: 1.20.4 + define-properties: 1.2.0 + es-abstract: 1.21.2 has-symbols: 1.0.3 object.getownpropertydescriptors: 2.1.2 @@ -14469,9 +14993,9 @@ packages: inherits: 2.0.4 is-arguments: 1.1.0 is-generator-function: 1.0.9 - is-typed-array: 1.1.5 + is-typed-array: 1.1.10 safe-buffer: 5.2.1 - which-typed-array: 1.1.4 + which-typed-array: 1.1.9 dev: true /util/0.12.4: @@ -14480,9 +15004,9 @@ packages: inherits: 2.0.4 is-arguments: 1.1.0 is-generator-function: 1.0.9 - is-typed-array: 1.1.5 + is-typed-array: 1.1.10 safe-buffer: 5.2.1 - which-typed-array: 1.1.4 + which-typed-array: 1.1.9 dev: true /utila/0.4.0: @@ -14505,10 +15029,17 @@ packages: /validate-npm-package-license/3.0.4: resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} dependencies: - spdx-correct: 3.1.1 + spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 dev: true + /validate-npm-package-name/5.0.0: + resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + builtins: 5.0.1 + dev: true + /value-equal/1.0.1: resolution: {integrity: sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==} dev: false @@ -14526,7 +15057,7 @@ packages: dependencies: assert-plus: 1.0.0 core-util-is: 1.0.2 - extsprintf: 1.4.0 + extsprintf: 1.3.0 dev: true /vfile-location/2.0.6: @@ -14550,17 +15081,17 @@ packages: unist-util-stringify-position: 2.0.3 vfile-message: 2.0.4 - /vite-node/0.29.1_gbdvvobmhmzwjbjgqkuql5ofp4: - resolution: {integrity: sha512-Ey9bTlQOQrCxQN0oJ7sTg+GrU4nTMLg44iKTFCKf31ry60csqQz4E+Q04hdWhwE4cTgpxUC+zEB1kHbf5jNkFA==} + /vite-node/0.29.3_67ayhxtn77ihpqz7ip4pro4g64: + resolution: {integrity: sha512-QYzYSA4Yt2IiduEjYbccfZQfxKp+T1Do8/HEpSX/G5WIECTFKJADwLs9c94aQH4o0A+UtCKU61lj1m5KvbxxQA==} engines: {node: '>=v14.16.0'} hasBin: true dependencies: cac: 6.7.14 debug: 4.3.4 - mlly: 1.1.1 + mlly: 1.2.0 pathe: 1.1.0 picocolors: 1.0.0 - vite: 3.2.4_gbdvvobmhmzwjbjgqkuql5ofp4 + vite: 3.2.5_67ayhxtn77ihpqz7ip4pro4g64 transitivePeerDependencies: - '@types/node' - less @@ -14571,22 +15102,25 @@ packages: - terser dev: true - /vite-tsconfig-paths/4.0.0-alpha.3_oyg7s5x5awhbeaywtnsr2habru: - resolution: {integrity: sha512-zugyhZ6LpITxBQmoDM+V8NL94OgbHTeRaHdR3J3sk58uvWnHsJPbIwqpuJ/sV/TXD+fX1F4YbkigTmLxEX2oYA==} + /vite-tsconfig-paths/4.0.7_mmfldfnusamjexuwtlvii3fpxu: + resolution: {integrity: sha512-MwIYaby6kcbQGZqMH+gAK6h0UYQGOkjsuAgw4q6bP/5vWkn8VKvnmLuCQHA2+IzHAJHnE8OFTO4lnJLFMf9+7Q==} peerDependencies: - vite: '>2.0.0-0' + vite: '*' + peerDependenciesMeta: + vite: + optional: true dependencies: debug: 4.3.4 globrex: 0.1.2 - tsconfck: 2.0.1_typescript@4.9.5 - vite: 3.2.4_gbdvvobmhmzwjbjgqkuql5ofp4 + tsconfck: 2.1.0_typescript@4.9.5 + vite: 3.2.5_67ayhxtn77ihpqz7ip4pro4g64 transitivePeerDependencies: - supports-color - typescript dev: true - /vite/3.2.4: - resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==} + /vite/3.2.5: + resolution: {integrity: sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -14610,16 +15144,16 @@ packages: terser: optional: true dependencies: - esbuild: 0.15.15 - postcss: 8.4.19 + esbuild: 0.15.18 + postcss: 8.4.21 resolve: 1.22.1 rollup: 2.79.1 optionalDependencies: fsevents: 2.3.2 dev: true - /vite/3.2.4_gbdvvobmhmzwjbjgqkuql5ofp4: - resolution: {integrity: sha512-Z2X6SRAffOUYTa+sLy3NQ7nlHFU100xwanq1WDwqaiFiCe+25zdxP1TfCS5ojPV2oDDcXudHIoPnI1Z/66B7Yw==} + /vite/3.2.5_67ayhxtn77ihpqz7ip4pro4g64: + resolution: {integrity: sha512-4mVEpXpSOgrssFZAOmGIr85wPHKvaDAcXqxVxVRZhljkJOMZi1ibLibzjLHzJvcok8BMguLc7g1W6W/GqZbLdQ==} engines: {node: ^14.18.0 || >=16.0.0} hasBin: true peerDependencies: @@ -14643,9 +15177,9 @@ packages: terser: optional: true dependencies: - '@types/node': 18.11.9 - esbuild: 0.15.15 - postcss: 8.4.19 + '@types/node': 18.15.3 + esbuild: 0.15.18 + postcss: 8.4.21 resolve: 1.22.1 rollup: 2.79.1 terser: 5.16.6 @@ -14653,8 +15187,8 @@ packages: fsevents: 2.3.2 dev: true - /vitest/0.29.1_jsdom@20.0.3+terser@5.16.6: - resolution: {integrity: sha512-iSy6d9VwsIn7pz5I8SjVwdTLDRGKNZCRJVzROwjt0O0cffoymKwazIZ2epyMpRGpeL5tsXAl1cjXiT7agTyVug==} + /vitest/0.29.3_jsdom@21.1.1+terser@5.16.6: + resolution: {integrity: sha512-muMsbXnZsrzDGiyqf/09BKQsGeUxxlyLeLK/sFFM4EXdURPQRv8y7dco32DXaRORYP0bvyN19C835dT23mL0ow==} engines: {node: '>=v14.16.0'} hasBin: true peerDependencies: @@ -14677,28 +15211,28 @@ packages: dependencies: '@types/chai': 4.3.4 '@types/chai-subset': 1.3.3 - '@types/node': 18.11.9 - '@vitest/expect': 0.29.1 - '@vitest/runner': 0.29.1 - '@vitest/spy': 0.29.1 - '@vitest/utils': 0.29.1 - acorn: 8.8.1 + '@types/node': 18.15.3 + '@vitest/expect': 0.29.3 + '@vitest/runner': 0.29.3 + '@vitest/spy': 0.29.3 + '@vitest/utils': 0.29.3 + acorn: 8.8.2 acorn-walk: 8.2.0 cac: 6.7.14 chai: 4.3.7 debug: 4.3.4 - jsdom: 20.0.3 - local-pkg: 0.4.2 + jsdom: 21.1.1 + local-pkg: 0.4.3 pathe: 1.1.0 picocolors: 1.0.0 source-map: 0.6.1 std-env: 3.3.2 strip-literal: 1.0.1 - tinybench: 2.3.1 + tinybench: 2.4.0 tinypool: 0.3.1 - tinyspy: 1.0.2 - vite: 3.2.4_gbdvvobmhmzwjbjgqkuql5ofp4 - vite-node: 0.29.1_gbdvvobmhmzwjbjgqkuql5ofp4 + tinyspy: 1.1.1 + vite: 3.2.5_67ayhxtn77ihpqz7ip4pro4g64 + vite-node: 0.29.3_67ayhxtn77ihpqz7ip4pro4g64 why-is-node-running: 2.2.2 transitivePeerDependencies: - less @@ -14729,6 +15263,10 @@ packages: xml-name-validator: 4.0.0 dev: true + /walk-up-path/1.0.0: + resolution: {integrity: sha512-hwj/qMDUEjCU5h0xr90KGCf0tg0/LgJbmOWgrWKYlcJZM7XvquvUJZ0G/HMGr7F7OQMOUuPHWP9JpriinkAlkg==} + dev: true + /warning/4.0.3: resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} dependencies: @@ -14746,7 +15284,7 @@ packages: /watchpack/1.7.5: resolution: {integrity: sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==} dependencies: - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 neo-async: 2.6.2 optionalDependencies: chokidar: 3.5.1 @@ -14759,7 +15297,7 @@ packages: engines: {node: '>=10.13.0'} dependencies: glob-to-regexp: 0.4.1 - graceful-fs: 4.2.6 + graceful-fs: 4.2.10 dev: true /wbuf/1.7.3: @@ -14964,11 +15502,11 @@ packages: engines: {node: '>=12'} dev: true - /whatwg-url/11.0.0: - resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==} - engines: {node: '>=12'} + /whatwg-url/12.0.1: + resolution: {integrity: sha512-Ed/LrqB8EPlGxjS+TrsXcpUond1mhccS3pchLhzSgPCnTimUCKj3IZE75pAs5m6heB2U2TMerKFUXheyHY+VDQ==} + engines: {node: '>=14'} dependencies: - tr46: 3.0.0 + tr46: 4.1.1 webidl-conversions: 7.0.0 dev: true @@ -14989,17 +15527,18 @@ packages: /which-boxed-primitive/1.0.2: resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} dependencies: - is-bigint: 1.0.1 - is-boolean-object: 1.1.0 - is-number-object: 1.0.4 + is-bigint: 1.0.4 + is-boolean-object: 1.1.2 + is-number-object: 1.0.7 is-string: 1.0.7 - is-symbol: 1.0.3 + is-symbol: 1.0.4 /which-module/2.0.0: resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} - /which-pm-runs/1.0.0: - resolution: {integrity: sha512-SIqZVnlKPt/s5tOArosKIvGC1bwpoj6w5Q3SmimaVOOU8YFsjuMvvZO1MbKCbO8D6VV0XkROC8jrXJNYa1xBDA==} + /which-pm-runs/1.1.0: + resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} + engines: {node: '>=4'} dev: true /which-pm/2.0.0: @@ -15010,19 +15549,6 @@ packages: path-exists: 4.0.0 dev: true - /which-typed-array/1.1.4: - resolution: {integrity: sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.4 - call-bind: 1.0.2 - es-abstract: 1.20.4 - foreach: 2.0.5 - function-bind: 1.1.1 - has-symbols: 1.0.3 - is-typed-array: 1.1.5 - dev: true - /which-typed-array/1.1.9: resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} engines: {node: '>= 0.4'} @@ -15033,7 +15559,6 @@ packages: gopd: 1.0.1 has-tostringtag: 1.0.0 is-typed-array: 1.1.10 - dev: true /which/1.3.1: resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} @@ -15049,6 +15574,14 @@ packages: isexe: 2.0.0 dev: true + /which/3.0.0: + resolution: {integrity: sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + dependencies: + isexe: 2.0.0 + dev: true + /why-is-node-running/2.2.2: resolution: {integrity: sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==} engines: {node: '>=8'} @@ -15058,6 +15591,12 @@ packages: stackback: 0.0.2 dev: true + /wide-align/1.1.5: + resolution: {integrity: sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==} + dependencies: + string-width: 4.2.3 + dev: true + /widest-line/2.0.1: resolution: {integrity: sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA==} engines: {node: '>=4'} @@ -15119,7 +15658,15 @@ packages: dependencies: graceful-fs: 4.2.10 imurmurhash: 0.1.4 - signal-exit: 3.0.3 + signal-exit: 3.0.7 + dev: true + + /write-file-atomic/5.0.0: + resolution: {integrity: sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + dependencies: + imurmurhash: 0.1.4 + signal-exit: 3.0.7 dev: true /write-json-file/3.2.0: @@ -15168,12 +15715,12 @@ packages: utf-8-validate: optional: true - /ws/8.11.0: - resolution: {integrity: sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==} + /ws/8.13.0: + resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 + utf-8-validate: '>=5.0.2' peerDependenciesMeta: bufferutil: optional: true @@ -15220,6 +15767,11 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} + /yaml/2.2.1: + resolution: {integrity: sha512-e0WHiYql7+9wr4cWMx3TVQrNwejKaEe7/rHNmQmqRjazfOP5W8PB6Jpebb5o6fIapbz9o9+2ipcaTM2ZwDI6lw==} + engines: {node: '>= 14'} + dev: true + /yargs-parser/13.1.2: resolution: {integrity: sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==} dependencies: diff --git a/scripts/actions/build-all.js b/scripts/actions/build-all.mjs similarity index 70% rename from scripts/actions/build-all.js rename to scripts/actions/build-all.mjs index 864724d4..1d819eb8 100644 --- a/scripts/actions/build-all.js +++ b/scripts/actions/build-all.mjs @@ -1,7 +1,7 @@ #!/usr/bin/env node -const { listPackages } = require('./lib/packages'); -const { buildPackage } = require('./lib/commands'); +import { listPackages } from './lib/packages.mjs'; +import { buildPackage } from './lib/commands.mjs'; (async () => { try { diff --git a/scripts/actions/lib/commands.js b/scripts/actions/lib/commands.mjs similarity index 64% rename from scripts/actions/lib/commands.js rename to scripts/actions/lib/commands.mjs index b644fb73..9b4cded6 100644 --- a/scripts/actions/lib/commands.js +++ b/scripts/actions/lib/commands.mjs @@ -1,14 +1,17 @@ -const path = require('path'); -const execa = require('execa'); -const fs = require('fs'); -const tar = require('tar'); -const stream = require('stream'); -const packlist = require('npm-packlist'); +import * as stream from 'stream'; +import * as path from 'path'; +import * as fs from 'fs'; +import { promisify } from 'util'; -const { workspaceRoot } = require('./constants'); -const { getPackageManifest, getPackageArtifact } = require('./packages'); +import * as tar from 'tar'; +import { execa, execaNode } from 'execa'; +import Arborist from '@npmcli/arborist'; +import packlist from 'npm-packlist'; -const pipeline = require('util').promisify(stream.pipeline); +import { workspaceRoot, require } from './constants.mjs'; +import { getPackageManifest, getPackageArtifact } from './packages.mjs'; + +const pipeline = promisify(stream.pipeline); const buildPackage = async (cwd) => { const manifest = getPackageManifest(cwd); @@ -35,7 +38,7 @@ const preparePackage = async (cwd) => { console.log('> Preparing', manifest.name); try { - await execa.node( + await execaNode( require.resolve('../../prepare/index.js'), { cwd }, ); @@ -50,6 +53,9 @@ const packPackage = async (cwd) => { const artifact = getPackageArtifact(cwd); console.log('> Packing', manifest.name); + const arborist = new Arborist({ path: cwd }); + const tree = await arborist.loadActual(); + try { await pipeline( tar.create( @@ -59,7 +65,7 @@ const packPackage = async (cwd) => { portable: true, gzip: true, }, - (await packlist({ path: cwd })).map((f) => `./${f}`) + (await packlist(tree)).map((f) => `./${f}`) ), fs.createWriteStream(path.resolve(cwd, artifact)) ); @@ -69,4 +75,4 @@ const packPackage = async (cwd) => { } }; -module.exports = { buildPackage, preparePackage, packPackage }; +export { buildPackage, preparePackage, packPackage }; diff --git a/scripts/actions/lib/constants.js b/scripts/actions/lib/constants.js deleted file mode 100644 index ca870b0b..00000000 --- a/scripts/actions/lib/constants.js +++ /dev/null @@ -1,9 +0,0 @@ -const path = require('path'); - -module.exports = { - workspaceRoot: path.resolve(__dirname, '../../../'), - workspaces: [ - 'packages/*', - 'exchanges/*', - ], -}; diff --git a/scripts/actions/lib/constants.mjs b/scripts/actions/lib/constants.mjs new file mode 100644 index 00000000..5c366f30 --- /dev/null +++ b/scripts/actions/lib/constants.mjs @@ -0,0 +1,13 @@ +import * as url from 'url'; +import * as path from 'path'; +import { createRequire } from 'node:module'; + +const __dirname = path.dirname(url.fileURLToPath(import.meta.url)); +export const workspaceRoot = path.resolve(__dirname, '../../../'); + +export const workspaces = [ + 'packages/*', + 'exchanges/*', +]; + +export const require = createRequire(import.meta.url); diff --git a/scripts/actions/lib/github.js b/scripts/actions/lib/github.mjs similarity index 62% rename from scripts/actions/lib/github.js rename to scripts/actions/lib/github.mjs index dff911de..cf9a916e 100644 --- a/scripts/actions/lib/github.js +++ b/scripts/actions/lib/github.mjs @@ -1,12 +1,13 @@ -const path = require('path'); -const { getPackageManifest, getPackageArtifact } = require('./packages'); +import * as path from 'path'; +import { getPackageManifest, getPackageArtifact } from './packages.mjs'; +import { create } from '@actions/artifact'; let _client; const client = () => { - return _client || (_client = require('@actions/artifact').create()); + return _client || (_client = create()); }; -const uploadArtifact = async (cwd) => { +export const uploadArtifact = async (cwd) => { const manifest = getPackageManifest(cwd); const artifact = getPackageArtifact(cwd); console.log('> Uploading', manifest.name); @@ -23,5 +24,3 @@ const uploadArtifact = async (cwd) => { throw error; } }; - -module.exports = { uploadArtifact }; diff --git a/scripts/actions/lib/packages.js b/scripts/actions/lib/packages.mjs similarity index 88% rename from scripts/actions/lib/packages.js rename to scripts/actions/lib/packages.mjs index cc540d16..969cfdc0 100644 --- a/scripts/actions/lib/packages.js +++ b/scripts/actions/lib/packages.mjs @@ -1,7 +1,7 @@ -const path = require('path'); -const glob = require('util').promisify(require('glob')); +import * as path from 'path'; +import glob from 'glob'; -const { workspaceRoot, workspaces } = require('./constants'); +import { workspaceRoot, workspaces, require } from './constants.mjs'; const getPackageManifest = (cwd) => require(path.resolve(cwd, 'package.json')); @@ -46,7 +46,7 @@ const listArtifacts = async () => { }); }; -module.exports = { +export { getPackageManifest, getPackageArtifact, listPackages, diff --git a/scripts/actions/pack-all.js b/scripts/actions/pack-all.mjs similarity index 72% rename from scripts/actions/pack-all.js rename to scripts/actions/pack-all.mjs index 477f343f..22e29761 100644 --- a/scripts/actions/pack-all.js +++ b/scripts/actions/pack-all.mjs @@ -1,8 +1,8 @@ #!/usr/bin/env node -const { listPackages } = require('./lib/packages'); -const { preparePackage, packPackage } = require('./lib/commands'); -const { uploadArtifact } = require('./lib/github'); +import { listPackages } from './lib/packages.mjs'; +import { preparePackage, packPackage } from './lib/commands.mjs'; +import { uploadArtifact } from './lib/github.mjs'; (async () => { try { diff --git a/tsconfig.json b/tsconfig.json index 5f7a8af1..72332d6d 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -22,7 +22,7 @@ "noUnusedLocals": true, "noEmit": true, "lib": ["dom", "esnext"], - "jsx": "preserve", + "jsx": "react", "module": "es2015", "moduleResolution": "node", "target": "esnext", diff --git a/vitest.config.ts b/vitest.config.ts index 6a6945b9..56682716 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -3,6 +3,15 @@ import { defineConfig } from 'vitest/config'; import tsconfigPaths from 'vite-tsconfig-paths'; export default defineConfig({ + resolve: { + alias: { + 'preact/hooks': + __dirname + + '/packages/preact-urql/node_modules/preact/hooks/dist/hooks.js', + preact: + __dirname + '/packages/preact-urql/node_modules/preact/dist/preact.js', + }, + }, plugins: [tsconfigPaths()], test: { environment: 'jsdom',