From f59860cd4b4dbc800a6c10c54c6a8fcc2268e2a9 Mon Sep 17 00:00:00 2001 From: Kamil Kisiela Date: Wed, 8 Feb 2023 09:53:06 +0100 Subject: [PATCH] Support @apollo/server --- .changeset/ninety-windows-live.md | 5 + .changeset/soft-gifts-mix.md | 5 + packages/libraries/client/package.json | 7 +- packages/libraries/client/src/apollo.ts | 27 +- .../libraries/client/src/internal/types.ts | 10 +- .../libraries/client/src/internal/usage.ts | 14 +- .../libraries/client/src/internal/utils.ts | 11 +- pnpm-lock.yaml | 333 ++++++------------ 8 files changed, 179 insertions(+), 233 deletions(-) create mode 100644 .changeset/ninety-windows-live.md create mode 100644 .changeset/soft-gifts-mix.md diff --git a/.changeset/ninety-windows-live.md b/.changeset/ninety-windows-live.md new file mode 100644 index 0000000000..cd870be097 --- /dev/null +++ b/.changeset/ninety-windows-live.md @@ -0,0 +1,5 @@ +--- +'@graphql-hive/client': minor +--- + +Add @apollo/server and @envelop/types as optional dependencies diff --git a/.changeset/soft-gifts-mix.md b/.changeset/soft-gifts-mix.md new file mode 100644 index 0000000000..f63390f8d4 --- /dev/null +++ b/.changeset/soft-gifts-mix.md @@ -0,0 +1,5 @@ +--- +'@graphql-hive/client': minor +--- + +Support @apollo/server diff --git a/packages/libraries/client/package.json b/packages/libraries/client/package.json index 851fda1aa8..c9ca942868 100644 --- a/packages/libraries/client/package.json +++ b/packages/libraries/client/package.json @@ -49,12 +49,15 @@ "axios": "^1.2.1", "tiny-lru": "8.0.2" }, + "optionalDependencies": { + "@apollo/server": "^4.0.0", + "@envelop/types": "^3.0.0" + }, "devDependencies": { "@apollo/federation": "0.38.1", + "@apollo/server": "4.3.3", "@envelop/types": "3.0.1", "@types/async-retry": "1.4.5", - "apollo-server-core": "3.11.1", - "apollo-server-plugin-base": "3.7.1", "graphql-yoga": "3.5.1", "nock": "13.3.0" }, diff --git a/packages/libraries/client/src/apollo.ts b/packages/libraries/client/src/apollo.ts index 73ac88613c..e4e9bfa33e 100644 --- a/packages/libraries/client/src/apollo.ts +++ b/packages/libraries/client/src/apollo.ts @@ -1,7 +1,7 @@ import { createHash } from 'crypto'; -import type { ApolloServerPlugin } from 'apollo-server-plugin-base'; import axios from 'axios'; import type { DocumentNode } from 'graphql'; +import type { ApolloServerPlugin } from '@apollo/server'; import { createHive } from './client.js'; import type { HiveClient, @@ -149,6 +149,8 @@ export function hiveApollo(clientOrOptions: HiveClient | HivePluginOptions): Apo requestDidStart(context) { // `overallCachePolicy` does not exist in v0 const isLegacyV0 = !('overallCachePolicy' in context); + // `context` does not exist in v4, it is `contextValue` instead + const isLegacyV3 = 'context' in context; let doc: DocumentNode; const complete = hive.collectUsage({ @@ -157,7 +159,7 @@ export function hiveApollo(clientOrOptions: HiveClient | HivePluginOptions): Apo return doc; }, operationName: context.operationName, - contextValue: context.context, + contextValue: isLegacyV3 ? context.context : context.contextValue, variableValues: context.request.variables, }); @@ -170,10 +172,27 @@ export function hiveApollo(clientOrOptions: HiveClient | HivePluginOptions): Apo } as any; } + if (isLegacyV3) { + return Promise.resolve({ + async willSendResponse(ctx) { + doc = ctx.document!; + complete(ctx.response as any); + }, + }); + } + + // v4 return Promise.resolve({ async willSendResponse(ctx) { doc = ctx.document!; - complete(ctx.response); + if (ctx.response.body.kind === 'incremental') { + complete({ + action: 'abort', + reason: '@defer and @stream is not supported by Hive', + }); + } else { + complete(ctx.response.body.singleResult); + } }, }); }, @@ -191,6 +210,8 @@ export function hiveApollo(clientOrOptions: HiveClient | HivePluginOptions): Apo } as any; } + // Works on v3 and v4 + return Promise.resolve({ async serverWillStop() { await hive.dispose(); diff --git a/packages/libraries/client/src/internal/types.ts b/packages/libraries/client/src/internal/types.ts index 11dc78b085..23be964a8c 100644 --- a/packages/libraries/client/src/internal/types.ts +++ b/packages/libraries/client/src/internal/types.ts @@ -15,9 +15,17 @@ export interface HiveClient { } export type AsyncIterableIteratorOrValue = AsyncIterableIterator | T; +export type AsyncIterableOrValue = AsyncIterable | T; +export type AbortAction = { + action: 'abort'; + reason: string; +}; export type CollectUsageCallback = ( - result: AsyncIterableIteratorOrValue, + result: + | AsyncIterableIteratorOrValue + | AsyncIterableOrValue + | AbortAction, ) => void; export interface ClientInfo { name: string; diff --git a/packages/libraries/client/src/internal/usage.ts b/packages/libraries/client/src/internal/usage.ts index cbd2093a07..796f769cc5 100644 --- a/packages/libraries/client/src/internal/usage.ts +++ b/packages/libraries/client/src/internal/usage.ts @@ -29,6 +29,7 @@ import { version } from '../version.js'; import { createAgent } from './agent.js'; import { randomSampling } from './sampling.js'; import type { + AbortAction, ClientInfo, CollectUsageCallback, HivePluginOptions, @@ -37,6 +38,7 @@ import type { import { cache, cacheDocumentKey, + isAsyncIterable, isAsyncIterableIterator, logIf, measureDuration, @@ -48,6 +50,10 @@ interface UsageCollector { dispose(): Promise; } +function isAbortAction(result: Parameters[0]): result is AbortAction { + return 'action' in result && result.action === 'abort'; +} + export function createUsage(pluginOptions: HivePluginOptions): UsageCollector { if (!pluginOptions.usage || pluginOptions.enabled === false) { return { @@ -150,7 +156,13 @@ export function createUsage(pluginOptions: HivePluginOptions): UsageCollector { return function complete(result) { try { - if (isAsyncIterableIterator(result)) { + if (isAbortAction(result)) { + logger.info(result.reason); + finish(); + return; + } + + if (isAsyncIterableIterator(result) || isAsyncIterable(result)) { logger.info('@stream @defer is not supported'); finish(); return; diff --git a/packages/libraries/client/src/internal/utils.ts b/packages/libraries/client/src/internal/utils.ts index cfdd317c0b..ef7a60cdc2 100644 --- a/packages/libraries/client/src/internal/utils.ts +++ b/packages/libraries/client/src/internal/utils.ts @@ -1,5 +1,10 @@ import { createHash } from 'crypto'; -import type { AsyncIterableIteratorOrValue, HiveClient, HivePluginOptions } from './types.js'; +import type { + AsyncIterableIteratorOrValue, + AsyncIterableOrValue, + HiveClient, + HivePluginOptions, +} from './types.js'; export function isAsyncIterableIterator( value: AsyncIterableIteratorOrValue, @@ -7,6 +12,10 @@ export function isAsyncIterableIterator( return typeof (value as any)?.[Symbol.asyncIterator] === 'function'; } +export function isAsyncIterable(value: AsyncIterableOrValue): value is AsyncIterable { + return typeof (value as any)?.[Symbol.asyncIterator] === 'function'; +} + export function memo(fn: (arg: A) => R, cacheKeyFn: (arg: A) => K): (arg: A) => R { let memoizedResult: R | null = null; let memoizedKey: K | null = null; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6e158f0b80..00a1d14ff8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -287,12 +287,11 @@ importers: packages/libraries/client: specifiers: '@apollo/federation': 0.38.1 + '@apollo/server': 4.3.3 '@envelop/types': 3.0.1 '@graphql-hive/core': ^0.2.3 '@graphql-tools/utils': ^9.0.0 '@types/async-retry': 1.4.5 - apollo-server-core: 3.11.1 - apollo-server-plugin-base: 3.7.1 async-retry: 1.3.3 axios: ^1.2.1 graphql-yoga: 3.5.1 @@ -306,10 +305,9 @@ importers: tiny-lru: 8.0.2 devDependencies: '@apollo/federation': 0.38.1 + '@apollo/server': 4.3.3 '@envelop/types': 3.0.1 '@types/async-retry': 1.4.5 - apollo-server-core: 3.11.1 - apollo-server-plugin-base: 3.7.1 graphql-yoga: 3.5.1 nock: 13.3.0 publishDirectory: dist @@ -1568,7 +1566,6 @@ packages: '@protobufjs/utf8': 1.1.0 '@types/long': 4.0.2 long: 4.0.0 - dev: false /@apollo/query-graphs/2.2.2_graphql@16.6.0: resolution: {integrity: sha512-NHxqfDEsMNFqwxSQ8lqj9APP0jGQAvxt0LOEb4WZgVdw303g1qxu2BapUS4YjxKVRqHDap/EAzBHgwg4J2zfjA==} @@ -1612,6 +1609,17 @@ packages: pretty-format: 29.4.1 dev: false + /@apollo/server-gateway-interface/1.1.0: + resolution: {integrity: sha512-0rhG++QtGfr4YhhIHgxZ9BdMFthaPY6LbhI9Au90osbfLMiZ7f8dmZsEX1mp7O1h8MJwCu6Dp0I/KcGbSvfUGA==} + peerDependencies: + graphql: 14.x || 15.x || 16.x + dependencies: + '@apollo/usage-reporting-protobuf': 4.0.2 + '@apollo/utils.fetcher': 2.0.0 + '@apollo/utils.keyvaluecache': 2.1.0 + '@apollo/utils.logger': 2.0.0 + dev: true + /@apollo/server-gateway-interface/1.1.0_graphql@16.6.0: resolution: {integrity: sha512-0rhG++QtGfr4YhhIHgxZ9BdMFthaPY6LbhI9Au90osbfLMiZ7f8dmZsEX1mp7O1h8MJwCu6Dp0I/KcGbSvfUGA==} peerDependencies: @@ -1624,6 +1632,43 @@ packages: graphql: 16.6.0 dev: false + /@apollo/server/4.3.3: + resolution: {integrity: sha512-2nigGTgXCAUk2PHHGybtofyuuVAA/QUZwRJzwuCbRFgY1fKkMT7J4fUPwNcA809lDlZyyYphcQnM/vQNbeiu6w==} + engines: {node: '>=14.16.0'} + peerDependencies: + graphql: ^16.6.0 + dependencies: + '@apollo/cache-control-types': 1.0.2 + '@apollo/server-gateway-interface': 1.1.0 + '@apollo/usage-reporting-protobuf': 4.0.2 + '@apollo/utils.createhash': 2.0.0 + '@apollo/utils.fetcher': 2.0.0 + '@apollo/utils.isnodelike': 2.0.0 + '@apollo/utils.keyvaluecache': 2.1.0 + '@apollo/utils.logger': 2.0.0 + '@apollo/utils.usagereporting': 2.0.0 + '@apollo/utils.withrequired': 2.0.0 + '@graphql-tools/schema': 9.0.15 + '@josephg/resolvable': 1.0.1 + '@types/express': 4.17.14 + '@types/express-serve-static-core': 4.17.31 + '@types/node-fetch': 2.6.2 + async-retry: 1.3.3 + body-parser: 1.20.1 + cors: 2.8.5 + express: 4.18.2 + loglevel: 1.8.0 + lru-cache: 7.14.1 + negotiator: 0.6.3 + node-abort-controller: 3.1.1 + node-fetch: 2.6.7 + uuid: 9.0.0 + whatwg-mimetype: 3.0.0 + transitivePeerDependencies: + - encoding + - supports-color + dev: true + /@apollo/server/4.3.3_graphql@16.6.0: resolution: {integrity: sha512-2nigGTgXCAUk2PHHGybtofyuuVAA/QUZwRJzwuCbRFgY1fKkMT7J4fUPwNcA809lDlZyyYphcQnM/vQNbeiu6w==} engines: {node: '>=14.16.0'} @@ -1684,7 +1729,6 @@ packages: resolution: {integrity: sha512-GfE8aDqi/lAFut95pjH9IRvH0zGsQ5G/2lYL0ZLZfML7ArX+A4UVHFANQcPCcUYGE6bI6OPhLekg4Vsjf6B1cw==} dependencies: '@apollo/protobufjs': 1.2.7 - dev: false /@apollo/utils.createhash/1.1.0: resolution: {integrity: sha512-5fT4ZiW75515OlikWpIQzaVDws1yy9VgYSoHoJCrvI2UH6/7YNKXQjbjT5qVYu6ytch2wBxFMfFfYWMn/2bSCQ==} @@ -1700,11 +1744,10 @@ packages: dependencies: '@apollo/utils.isnodelike': 2.0.0 sha.js: 2.4.11 - dev: false - /@apollo/utils.dropunuseddefinitions/1.1.0: - resolution: {integrity: sha512-jU1XjMr6ec9pPoL+BFWzEPW7VHHulVdGKMkPAMiCigpVIT11VmCbnij0bWob8uS3ODJ65tZLYKAh/55vLw2rbg==} - engines: {node: '>=12.13.0'} + /@apollo/utils.dropunuseddefinitions/2.0.0: + resolution: {integrity: sha512-BoPW+Z3kA8kLh0FCWyzOt+R77W5mVZWer5s6UyvVwZ/qROGiEgcHXFcI5TMMndpXoDo0xBSvQV0lIKYHbJQ7+g==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dev: true @@ -1725,7 +1768,6 @@ packages: /@apollo/utils.fetcher/2.0.0: resolution: {integrity: sha512-RC0twEwwBKbhk/y4B2X4YEciRG1xoKMgiPy5xQqNMd3pG78sR+ybctG/m7c/8+NaaQOS22UPUCBd6yS6WihBIg==} engines: {node: '>=14'} - dev: false /@apollo/utils.isnodelike/1.1.0: resolution: {integrity: sha512-q/Q82kBUSEcx1ED11JO1TYBY781mWluUnBD8NvhjHVsu1K1C5R9BZVUxShyK/V8XcePcRUB5fdWOcBMGwS0KOA==} @@ -1735,7 +1777,6 @@ packages: /@apollo/utils.isnodelike/2.0.0: resolution: {integrity: sha512-77CiAM2qDXn0haQYrgX0UgrboQykb+bOHaz5p3KKItMwUZ/EFphzuB2vqHvubneIc9dxJcTx2L7MFDswRw/JAQ==} engines: {node: '>=14'} - dev: false /@apollo/utils.keyvaluecache/1.0.1: resolution: {integrity: sha512-nLgYLomqjVimEzQ4cdvVQkcryi970NDvcRVPfd0OPeXhBfda38WjBq+WhQFk+czSHrmrSp34YHBxpat0EtiowA==} @@ -1749,7 +1790,6 @@ packages: dependencies: '@apollo/utils.logger': 2.0.0 lru-cache: 7.14.1 - dev: false /@apollo/utils.logger/1.0.0: resolution: {integrity: sha512-dx9XrjyisD2pOa+KsB5RcDbWIAdgC91gJfeyLCgy0ctJMjQe7yZK5kdWaWlaOoCeX0z6YI9iYlg7vMPyMpQF3Q==} @@ -1757,11 +1797,10 @@ packages: /@apollo/utils.logger/2.0.0: resolution: {integrity: sha512-o8qYwgV2sYg+PcGKIfwAZaZsQOTEfV8q3mH7Pw8GB/I/Uh2L9iaHdpiKuR++j7oe1K87lFm0z/JAezMOR9CGhg==} engines: {node: '>=14'} - dev: false - /@apollo/utils.printwithreducedwhitespace/1.1.0: - resolution: {integrity: sha512-GfFSkAv3n1toDZ4V6u2d7L4xMwLA+lv+6hqXicMN9KELSJ9yy9RzuEXaX73c/Ry+GzRsBy/fdSUGayGqdHfT2Q==} - engines: {node: '>=12.13.0'} + /@apollo/utils.printwithreducedwhitespace/2.0.0: + resolution: {integrity: sha512-S+wyxFyuO0LJ8v+mg8c7rRwyKZ+9xlO5wXD/UgaysH3rcCe9NBHRWx/9cmdZ9nTqgKC5X01uHZ6Gsi6pOrUGgw==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dev: true @@ -1775,9 +1814,9 @@ packages: graphql: 16.6.0 dev: false - /@apollo/utils.removealiases/1.0.0: - resolution: {integrity: sha512-6cM8sEOJW2LaGjL/0vHV0GtRaSekrPQR4DiywaApQlL9EdROASZU5PsQibe2MWeZCOhNrPRuHh4wDMwPsWTn8A==} - engines: {node: '>=12.13.0'} + /@apollo/utils.removealiases/2.0.0: + resolution: {integrity: sha512-PT5ICz2SfrMCRsR3DhW2E1anX6hcqVXE/uHpmRHbhqSoQODZKG34AlFm1tC8u3MC3eK5gcvtpGvPHF/cwVfakg==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dev: true @@ -1791,9 +1830,9 @@ packages: graphql: 16.6.0 dev: false - /@apollo/utils.sortast/1.1.0: - resolution: {integrity: sha512-VPlTsmUnOwzPK5yGZENN069y6uUHgeiSlpEhRnLFYwYNoJHsuJq2vXVwIaSmts015WTPa2fpz1inkLYByeuRQA==} - engines: {node: '>=12.13.0'} + /@apollo/utils.sortast/2.0.0: + resolution: {integrity: sha512-VKoVOh8xkvh5HabtyGTekIYbwXdyYFPodFuHpWp333Fo2KBmpczLY+RBMHEr3v2MLoXDn/WUMtR3JZmvFJ45zw==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dependencies: @@ -1810,9 +1849,9 @@ packages: lodash.sortby: 4.7.0 dev: false - /@apollo/utils.stripsensitiveliterals/1.2.0: - resolution: {integrity: sha512-E41rDUzkz/cdikM5147d8nfCFVKovXxKBcjvLEQ7bjZm/cg9zEcXvS6vFY8ugTubI3fn6zoqo0CyU8zT+BGP9w==} - engines: {node: '>=12.13.0'} + /@apollo/utils.stripsensitiveliterals/2.0.0: + resolution: {integrity: sha512-pzj1XINetE54uxIjc4bN6gVzDWYP8OZ/yB0xMTgvzttu1VLgXf3BTV76d9hlqLoe8cV0JiD+xLpJktrHOzmBJQ==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dev: true @@ -1826,18 +1865,18 @@ packages: graphql: 16.6.0 dev: false - /@apollo/utils.usagereporting/1.0.0: - resolution: {integrity: sha512-5PL7hJMkTPmdo3oxPtigRrIyPxDk/ddrUryHPDaezL1lSFExpNzsDd2f1j0XJoHOg350GRd3LyD64caLA2PU1w==} - engines: {node: '>=12.13.0'} + /@apollo/utils.usagereporting/2.0.0: + resolution: {integrity: sha512-9VvVgA/LzKkBEYEGwE9doL1Sl+VRULkbB3D7W+ImJ028jJuTllvlQsh4Xpqz8mJWprfKx4m/i2DwHtElHWU2vg==} + engines: {node: '>=14'} peerDependencies: graphql: 14.x || 15.x || 16.x dependencies: - '@apollo/utils.dropunuseddefinitions': 1.1.0 - '@apollo/utils.printwithreducedwhitespace': 1.1.0 - '@apollo/utils.removealiases': 1.0.0 - '@apollo/utils.sortast': 1.1.0 - '@apollo/utils.stripsensitiveliterals': 1.2.0 - apollo-reporting-protobuf: 3.3.3 + '@apollo/usage-reporting-protobuf': 4.0.2 + '@apollo/utils.dropunuseddefinitions': 2.0.0 + '@apollo/utils.printwithreducedwhitespace': 2.0.0 + '@apollo/utils.removealiases': 2.0.0 + '@apollo/utils.sortast': 2.0.0 + '@apollo/utils.stripsensitiveliterals': 2.0.0 dev: true /@apollo/utils.usagereporting/2.0.0_graphql@16.6.0: @@ -1858,20 +1897,6 @@ packages: /@apollo/utils.withrequired/2.0.0: resolution: {integrity: sha512-+djpTu6AEE/A1etryZs9tmXRyDY6XXGe3G29MS/LB09uHq3pcl3n4Q5lvDTL5JWKuJixrulg5djePLDAooG8dQ==} engines: {node: '>=14'} - dev: false - - /@apollographql/apollo-tools/0.5.4: - resolution: {integrity: sha512-shM3q7rUbNyXVVRkQJQseXv6bnYM3BUma/eZhwXR4xsuM+bqWnJKvW7SAfRjP7LuSCocrexa5AXhjjawNHrIlw==} - engines: {node: '>=8', npm: '>=6'} - peerDependencies: - graphql: ^14.2.1 || ^15.0.0 || ^16.0.0 - dev: true - - /@apollographql/graphql-playground-html/1.6.29: - resolution: {integrity: sha512-xCcXpoz52rI4ksJSdOCxeOCn2DLocxwHf9dVT/Q90Pte1LX+LY+91SFtJF3KXVHH8kEin+g1KKCQPKBjZJfWNA==} - dependencies: - xss: 1.0.14 - dev: true /@ardatan/relay-compiler/12.0.0_graphql@16.6.0: resolution: {integrity: sha512-9anThAaj1dQr6IGmzBMcfzOQKTa5artjuPmw8NYK/fiGEMjADbSguBY2FMDykt+QhilR3wc9VA/3yVju7JHg7Q==} @@ -7519,6 +7544,7 @@ packages: dependencies: '@graphql-tools/utils': 8.9.0 tslib: 2.5.0 + dev: false /@graphql-tools/merge/8.3.14_graphql@16.6.0: resolution: {integrity: sha512-zV0MU1DnxJLIB0wpL4N3u21agEiYFsjm6DI130jqHpwF0pR9HkF+Ni65BNfts4zQelP0GjkHltG+opaozAJ1NA==} @@ -7557,6 +7583,15 @@ packages: tslib: 2.5.0 dev: false + /@graphql-tools/merge/8.3.17: + resolution: {integrity: sha512-CLzz49lc6BavPhH9gPRm0sJeNA7kC/tF/jLUTQsyef6xj82Jw3rqIJ9PE+bk1cqPCOG01WLOfquBu445OMDO2g==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-tools/utils': 9.2.0 + tslib: 2.5.0 + dev: true + /@graphql-tools/merge/8.3.17_graphql@16.6.0: resolution: {integrity: sha512-CLzz49lc6BavPhH9gPRm0sJeNA7kC/tF/jLUTQsyef6xj82Jw3rqIJ9PE+bk1cqPCOG01WLOfquBu445OMDO2g==} peerDependencies: @@ -7586,15 +7621,6 @@ packages: tslib: 2.5.0 dev: true - /@graphql-tools/merge/8.3.6: - resolution: {integrity: sha512-uUBokxXi89bj08P+iCvQk3Vew4vcfL5ZM6NTylWi8PIpoq4r5nJ625bRuN8h2uubEdRiH8ntN9M4xkd/j7AybQ==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - dependencies: - '@graphql-tools/utils': 8.12.0 - tslib: 2.5.0 - dev: true - /@graphql-tools/merge/8.3.6_graphql@16.6.0: resolution: {integrity: sha512-uUBokxXi89bj08P+iCvQk3Vew4vcfL5ZM6NTylWi8PIpoq4r5nJ625bRuN8h2uubEdRiH8ntN9M4xkd/j7AybQ==} peerDependencies: @@ -7616,17 +7642,6 @@ packages: tslib: 2.5.0 dev: false - /@graphql-tools/mock/8.7.6: - resolution: {integrity: sha512-cQGPyY6dF4x28552zjAg9En2WWVury62u1/xzipCNUSCdKRVOsAupTNBcAGdMjsKPLcGzzk1cPA8dP0DUfNqzg==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - dependencies: - '@graphql-tools/schema': 9.0.4 - '@graphql-tools/utils': 8.12.0 - fast-json-stable-stringify: 2.1.0 - tslib: 2.5.0 - dev: true - /@graphql-tools/optimize/1.3.1_graphql@16.6.0: resolution: {integrity: sha512-5j5CZSRGWVobt4bgRRg7zhjPiSimk+/zIuColih8E8DxuFOaJ+t0qu7eZS5KXWBkjcd4BPNuhUPpNlEmHPqVRQ==} peerDependencies: @@ -7692,6 +7707,7 @@ packages: '@graphql-tools/utils': 8.9.0 tslib: 2.5.0 value-or-promise: 1.0.11 + dev: false /@graphql-tools/schema/8.5.1_graphql@16.6.0: resolution: {integrity: sha512-0Esilsh0P/qYcB5DKQpiKeQs/jevzIadNTaT0jeWklPMwNbT7yMX4EqZany7mbeRRlSRwMzNzL5olyFdffHBZg==} @@ -7750,6 +7766,17 @@ packages: value-or-promise: 1.0.12 dev: false + /@graphql-tools/schema/9.0.15: + resolution: {integrity: sha512-p2DbpkOBcsi+yCEjwoS+r4pJ5z+3JjlJdhbPkCwC4q8lGf5r93dVYrExOrqGKTU5kxLXI/mxabSxcunjNIsDIg==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-tools/merge': 8.3.17 + '@graphql-tools/utils': 9.2.0 + tslib: 2.5.0 + value-or-promise: 1.0.12 + dev: true + /@graphql-tools/schema/9.0.15_graphql@16.6.0: resolution: {integrity: sha512-p2DbpkOBcsi+yCEjwoS+r4pJ5z+3JjlJdhbPkCwC4q8lGf5r93dVYrExOrqGKTU5kxLXI/mxabSxcunjNIsDIg==} peerDependencies: @@ -7773,17 +7800,6 @@ packages: tslib: 2.5.0 value-or-promise: 1.0.12 - /@graphql-tools/schema/9.0.4: - resolution: {integrity: sha512-B/b8ukjs18fq+/s7p97P8L1VMrwapYc3N2KvdG/uNThSazRRn8GsBK0Nr+FH+mVKiUfb4Dno79e3SumZVoHuOQ==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - dependencies: - '@graphql-tools/merge': 8.3.6 - '@graphql-tools/utils': 8.12.0 - tslib: 2.5.0 - value-or-promise: 1.0.11 - dev: true - /@graphql-tools/schema/9.0.4_graphql@16.6.0: resolution: {integrity: sha512-B/b8ukjs18fq+/s7p97P8L1VMrwapYc3N2KvdG/uNThSazRRn8GsBK0Nr+FH+mVKiUfb4Dno79e3SumZVoHuOQ==} peerDependencies: @@ -7900,14 +7916,6 @@ packages: - utf-8-validate dev: false - /@graphql-tools/utils/8.12.0: - resolution: {integrity: sha512-TeO+MJWGXjUTS52qfK4R8HiPoF/R7X+qmgtOYd8DTH0l6b+5Y/tlg5aGeUJefqImRq7nvi93Ms40k/Uz4D5CWw==} - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 - dependencies: - tslib: 2.5.0 - dev: true - /@graphql-tools/utils/8.12.0_graphql@16.6.0: resolution: {integrity: sha512-TeO+MJWGXjUTS52qfK4R8HiPoF/R7X+qmgtOYd8DTH0l6b+5Y/tlg5aGeUJefqImRq7nvi93Ms40k/Uz4D5CWw==} peerDependencies: @@ -7930,6 +7938,7 @@ packages: graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 dependencies: tslib: 2.5.0 + dev: false /@graphql-tools/utils/8.9.0_graphql@16.6.0: resolution: {integrity: sha512-pjJIWH0XOVnYGXCqej8g/u/tsfV4LvLlj0eATKQu5zwnxd/TiTHq7Cg313qUPTFFHZ3PP5wJ15chYVtLDwaymg==} @@ -7973,6 +7982,15 @@ packages: graphql: 16.6.0 tslib: 2.5.0 + /@graphql-tools/utils/9.2.0: + resolution: {integrity: sha512-s3lEG1iYkyYEnKCWrIFECX3XH2wmZvbg6Ir3udCvIDynq+ydaO7JQXobclpPtwSJtjlS353haF//6V7mnBQ4bg==} + peerDependencies: + graphql: ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 + dependencies: + '@graphql-typed-document-node/core': 3.1.1 + tslib: 2.5.0 + dev: true + /@graphql-tools/utils/9.2.0_graphql@16.6.0: resolution: {integrity: sha512-s3lEG1iYkyYEnKCWrIFECX3XH2wmZvbg6Ir3udCvIDynq+ydaO7JQXobclpPtwSJtjlS353haF//6V7mnBQ4bg==} peerDependencies: @@ -11826,7 +11844,6 @@ packages: dependencies: '@types/node': 18.13.0 form-data: 3.0.1 - dev: false /@types/node/10.17.60: resolution: {integrity: sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==} @@ -12359,7 +12376,6 @@ packages: dependencies: mime-types: 2.1.35 negotiator: 0.6.3 - dev: false /acorn-jsx/5.3.2_acorn@8.8.0: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} @@ -12546,54 +12562,11 @@ packages: normalize-path: 3.0.0 picomatch: 2.3.1 - /apollo-datasource/3.3.2: - resolution: {integrity: sha512-L5TiS8E2Hn/Yz7SSnWIVbZw0ZfEIXZCa5VUiVxD9P53JvSrf4aStvsFDlGWPvpIdCR+aly2CfoB79B9/JjKFqg==} - engines: {node: '>=12.0'} - dependencies: - '@apollo/utils.keyvaluecache': 1.0.1 - apollo-server-env: 4.2.1 - transitivePeerDependencies: - - encoding - dev: true - /apollo-reporting-protobuf/3.3.3: resolution: {integrity: sha512-L3+DdClhLMaRZWVmMbBcwl4Ic77CnEBPXLW53F7hkYhkaZD88ivbCVB1w/x5gunO6ZHrdzhjq0FHmTsBvPo7aQ==} dependencies: '@apollo/protobufjs': 1.2.6 - /apollo-server-core/3.11.1: - resolution: {integrity: sha512-t/eCKrRFK1lYZlc5pHD99iG7Np7CEm3SmbDiONA7fckR3EaB/pdsEdIkIwQ5QBBpT5JLp/nwvrZRVwhaWmaRvw==} - engines: {node: '>=12.0'} - peerDependencies: - graphql: ^15.3.0 || ^16.0.0 - dependencies: - '@apollo/utils.keyvaluecache': 1.0.1 - '@apollo/utils.logger': 1.0.0 - '@apollo/utils.usagereporting': 1.0.0 - '@apollographql/apollo-tools': 0.5.4 - '@apollographql/graphql-playground-html': 1.6.29 - '@graphql-tools/mock': 8.7.6 - '@graphql-tools/schema': 8.5.1 - '@josephg/resolvable': 1.0.1 - apollo-datasource: 3.3.2 - apollo-reporting-protobuf: 3.3.3 - apollo-server-env: 4.2.1 - apollo-server-errors: 3.3.1 - apollo-server-plugin-base: 3.7.1 - apollo-server-types: 3.7.1 - async-retry: 1.3.3 - fast-json-stable-stringify: 2.1.0 - graphql-tag: 2.12.6 - loglevel: 1.8.0 - lru-cache: 6.0.0 - node-abort-controller: 3.0.1 - sha.js: 2.4.11 - uuid: 9.0.0 - whatwg-mimetype: 3.0.0 - transitivePeerDependencies: - - encoding - dev: true - /apollo-server-env/4.2.1: resolution: {integrity: sha512-vm/7c7ld+zFMxibzqZ7SSa5tBENc4B0uye9LTfjJwGoQFY5xsUPH5FpO5j0bMUDZ8YYNbrF9SNtzc5Cngcr90g==} engines: {node: '>=12.0'} @@ -12602,25 +12575,6 @@ packages: transitivePeerDependencies: - encoding - /apollo-server-errors/3.3.1: - resolution: {integrity: sha512-xnZJ5QWs6FixHICXHxUfm+ZWqqxrNuPlQ+kj5m6RtEgIpekOPssH/SD9gf2B4HuWV0QozorrygwZnux8POvyPA==} - engines: {node: '>=12.0'} - peerDependencies: - graphql: ^15.3.0 || ^16.0.0 - dev: true - - /apollo-server-plugin-base/3.7.1: - resolution: {integrity: sha512-g3vJStmQtQvjGI289UkLMfThmOEOddpVgHLHT2bNj0sCD/bbisj4xKbBHETqaURokteqSWyyd4RDTUe0wAUDNQ==} - engines: {node: '>=12.0'} - deprecated: The `apollo-server-plugin-base` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. - peerDependencies: - graphql: ^15.3.0 || ^16.0.0 - dependencies: - apollo-server-types: 3.7.1 - transitivePeerDependencies: - - encoding - dev: true - /apollo-server-types/3.7.0: resolution: {integrity: sha512-Y2wx7eH/dqqYDdzt0KBJRbVKR10bLiup2aT8huoBbp/u3nbCN88jo1yW+FvlETeV+iKuoY3RiZDlHIvcDQ5/lA==} engines: {node: '>=12.0'} @@ -12649,21 +12603,6 @@ packages: transitivePeerDependencies: - encoding - /apollo-server-types/3.7.1: - resolution: {integrity: sha512-aE9RDVplmkaOj/OduNmGa+0a1B5RIWI0o3zC1zLvBTVWMKTpo0ifVf11TyMkLCY+T7cnZqVqwyShziOyC3FyUw==} - engines: {node: '>=12.0'} - deprecated: The `apollo-server-types` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. - peerDependencies: - graphql: ^15.3.0 || ^16.0.0 - dependencies: - '@apollo/utils.keyvaluecache': 1.0.1 - '@apollo/utils.logger': 1.0.0 - apollo-reporting-protobuf: 3.3.3 - apollo-server-env: 4.2.1 - transitivePeerDependencies: - - encoding - dev: true - /aproba/1.2.0: resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} dev: false @@ -12764,7 +12703,6 @@ packages: /array-flatten/1.1.1: resolution: {integrity: sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==} - dev: false /array-includes/3.1.6: resolution: {integrity: sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==} @@ -13280,7 +13218,6 @@ packages: unpipe: 1.0.0 transitivePeerDependencies: - supports-color - dev: false /boolbase/1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -13466,7 +13403,6 @@ packages: /bytes/3.1.2: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} - dev: false /cac/6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} @@ -14142,6 +14078,7 @@ packages: /commander/2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} + dev: false /commander/4.1.1: resolution: {integrity: sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==} @@ -14247,7 +14184,6 @@ packages: engines: {node: '>= 0.6'} dependencies: safe-buffer: 5.2.1 - dev: false /content-type/1.0.4: resolution: {integrity: sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==} @@ -14261,7 +14197,6 @@ packages: /cookie-signature/1.0.6: resolution: {integrity: sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==} - dev: false /cookie/0.4.0: resolution: {integrity: sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==} @@ -14337,7 +14272,6 @@ packages: dependencies: object-assign: 4.1.1 vary: 1.1.2 - dev: false /cosmiconfig-toml-loader/1.0.0: resolution: {integrity: sha512-H/2gurFWVi7xXvCyvsWRLCMekl4tITJcX0QEsDMpzxtuxDyM59xLatYNg4s/k9AA/HdtCYfj2su8mgA0GSDLDA==} @@ -14523,10 +14457,6 @@ packages: engines: {node: '>=4'} hasBin: true - /cssfilter/0.0.10: - resolution: {integrity: sha512-FAaLDaplstoRsDR8XGYH51znUN0UY7nMc6Z9/fvE8EXGwvJE9hu7W2vHwx1+bd6gCYnln9nLbzxFTrcO9YQDZw==} - dev: true - /cssnano-preset-default/5.2.13_postcss@8.4.21: resolution: {integrity: sha512-PX7sQ4Pb+UtOWuz8A1d+Rbi+WimBIxJTRyBdgGp1J75VU0r/HFQeLnMYgHiCAp6AR4rqrc7Y4R+1Rjk3KJz6DQ==} engines: {node: ^10 || ^12 || >=14.0} @@ -15142,7 +15072,6 @@ packages: /depd/2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} - dev: false /dependency-graph/0.11.0: resolution: {integrity: sha512-JeMq7fEshyepOWDfcfHK06N3MhyPhz++vtqWhMT5O9A3K42rdsEDpfdVqjaqaAhsw6a+ZqeDvQVtD0hFHQWrzg==} @@ -15158,7 +15087,6 @@ packages: /destroy/1.2.0: resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==} engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16} - dev: false /detect-indent/6.1.0: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} @@ -15388,7 +15316,6 @@ packages: /ee-first/1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - dev: false /ejs/3.1.8: resolution: {integrity: sha512-/sXZeMlhS0ArkfX2Aw780gJzXSMPnKjtspYZv+f3NiKLlubezAHDU5+9xz6gd3/NhG3txQCo6xlglmTS+oTGEQ==} @@ -15424,7 +15351,6 @@ packages: /encodeurl/1.0.2: resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==} engines: {node: '>= 0.8'} - dev: false /encoding/0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} @@ -15799,7 +15725,6 @@ packages: /escape-html/1.0.3: resolution: {integrity: sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==} - dev: false /escape-string-regexp/1.0.5: resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} @@ -16316,7 +16241,6 @@ packages: /etag/1.8.1: resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==} engines: {node: '>= 0.6'} - dev: false /event-target-shim/5.0.1: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} @@ -16469,7 +16393,6 @@ packages: vary: 1.1.2 transitivePeerDependencies: - supports-color - dev: false /extend-shallow/2.0.1: resolution: {integrity: sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==} @@ -16734,7 +16657,6 @@ packages: unpipe: 1.0.0 transitivePeerDependencies: - supports-color - dev: false /find-my-way/4.5.1: resolution: {integrity: sha512-kE0u7sGoUFbMXcOG/xpkmz4sRLCklERnBcg7Ftuu1iAxsfEt2S46RLJ3Sq7vshsEy2wJT2hZxE58XZK27qa8kg==} @@ -16950,7 +16872,6 @@ packages: /fresh/0.5.2: resolution: {integrity: sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==} engines: {node: '>= 0.6'} - dev: false /fromentries/1.3.2: resolution: {integrity: sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==} @@ -17614,15 +17535,6 @@ packages: tslib: 2.4.1 dev: false - /graphql-tag/2.12.6: - resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} - engines: {node: '>=10'} - peerDependencies: - graphql: ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 - dependencies: - tslib: 2.5.0 - dev: true - /graphql-tag/2.12.6_graphql@16.6.0: resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} engines: {node: '>=10'} @@ -17967,7 +17879,6 @@ packages: setprototypeof: 1.2.0 statuses: 2.0.1 toidentifier: 1.0.1 - dev: false /http-proxy-agent/4.0.1: resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} @@ -20461,7 +20372,6 @@ packages: /media-typer/0.3.0: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} - dev: false /mem-fs-editor/9.5.0_mem-fs@2.2.1: resolution: {integrity: sha512-7p+bBDqsSisO20YIZf2ntYvST27fFJINn7CKE21XdPUQDcLV62b/yB5sTOooQeEoiZ3rldZQ+4RfONgL/gbRoA==} @@ -20526,7 +20436,6 @@ packages: /merge-descriptors/1.0.1: resolution: {integrity: sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==} - dev: false /merge-stream/2.0.0: resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} @@ -20575,7 +20484,6 @@ packages: /methods/1.1.2: resolution: {integrity: sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==} engines: {node: '>= 0.6'} - dev: false /micromark-core-commonmark/1.0.6: resolution: {integrity: sha512-K+PkJTxqjFfSNkfAhp4GB+cZPfQd6dxtTXnf+RjZOV7T4EEXnvgzOcnp+eSTmpGk9d1S9sL6/lqrgSNn/s0HZA==} @@ -20923,7 +20831,6 @@ packages: resolution: {integrity: sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==} engines: {node: '>=4'} hasBin: true - dev: false /mime/2.6.0: resolution: {integrity: sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==} @@ -21819,10 +21726,10 @@ packages: /node-abort-controller/3.0.1: resolution: {integrity: sha512-/ujIVxthRs+7q6hsdjHMaj8hRG9NuWmwrz+JdRwZ14jdFoKSkm+vDsCbF9PLpnSqjaWQJuTmVtcWHNLr+vrOFw==} + dev: false /node-abort-controller/3.1.1: resolution: {integrity: sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==} - dev: false /node-domexception/1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} @@ -22222,7 +22129,6 @@ packages: engines: {node: '>= 0.8'} dependencies: ee-first: 1.1.1 - dev: false /once/1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -22555,7 +22461,6 @@ packages: /parseurl/1.3.3: resolution: {integrity: sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==} engines: {node: '>= 0.8'} - dev: false /pascal-case/3.1.2: resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} @@ -22615,7 +22520,6 @@ packages: /path-to-regexp/0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} - dev: false /path-type/4.0.0: resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} @@ -23664,7 +23568,6 @@ packages: engines: {node: '>=0.6'} dependencies: side-channel: 1.0.4 - dev: false /qs/6.5.3: resolution: {integrity: sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==} @@ -23703,7 +23606,6 @@ packages: /range-parser/1.2.1: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} - dev: false /raw-body/2.5.1: resolution: {integrity: sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==} @@ -23713,7 +23615,6 @@ packages: http-errors: 2.0.0 iconv-lite: 0.4.24 unpipe: 1.0.0 - dev: false /react-children-utilities/2.8.0_react@18.2.0: resolution: {integrity: sha512-g42oRsZLrFJgCcIdK1lad1CWujNH4gh1Cp1lsMQpHWdDjWQ8gUlaBebgy2iXofyPEpfJ4T/xt4qWrvDkgVCCNg==} @@ -24666,7 +24567,6 @@ packages: statuses: 2.0.1 transitivePeerDependencies: - supports-color - dev: false /sendmail/1.6.1: resolution: {integrity: sha512-lIhvnjSi5e5jL8wA1GPP6j2QVlx6JOEfmdn0QIfmuJdmXYGmJ375kcOU0NSm/34J+nypm4sa1AXrYE5w3uNIIA==} @@ -24708,7 +24608,6 @@ packages: send: 0.18.0 transitivePeerDependencies: - supports-color - dev: false /set-blocking/2.0.0: resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==} @@ -24730,7 +24629,6 @@ packages: /setprototypeof/1.2.0: resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==} - dev: false /sh-syntax/0.3.7: resolution: {integrity: sha512-xIB/uRniZ9urxAuXp1Ouh/BKSI1VK8RSqfwGj7cV57HvGrFo3vHdJfv8Tdp/cVcxJgXQTkmHr5mG5rqJW8r4wQ==} @@ -25205,7 +25103,6 @@ packages: /statuses/2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} - dev: false /std-env/2.3.0: resolution: {integrity: sha512-4qT5B45+Kjef2Z6pE0BkskzsH0GO7GrND0wGlTM1ioUe3v0dGYx9ZJH0Aro/YyA8fqQ5EyIKDRjZojJYMFTflw==} @@ -25913,7 +25810,6 @@ packages: /toidentifier/1.0.1: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} - dev: false /toposort/2.0.2: resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==} @@ -26405,7 +26301,6 @@ packages: dependencies: media-typer: 0.3.0 mime-types: 2.1.35 - dev: false /typedarray/0.0.6: resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} @@ -26653,7 +26548,6 @@ packages: /unpipe/1.0.0: resolution: {integrity: sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==} engines: {node: '>= 0.8'} - dev: false /untildify/4.0.0: resolution: {integrity: sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==} @@ -26821,7 +26715,6 @@ packages: /utils-merge/1.0.1: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} - dev: false /uuid-parse/1.1.0: resolution: {integrity: sha512-OdmXxA8rDsQ7YpNVbKSJkNzTw2I+S5WsbMDnCtIWSQaosNAcWtFuI/YK1TjzUI6nbkgiqEyh8gWngfcv8Asd9A==} @@ -26903,7 +26796,6 @@ packages: /vary/1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} - dev: false /verify-apple-id-token/2.2.0: resolution: {integrity: sha512-yV96h/6Wv9JY3Gcrg/3a+MyK8T5/RgNn4bVAkeuIwvCr4zanRsbrGKMgzD8UfH2Szr5veevmKdfLx8PfpING6Q==} @@ -27272,15 +27164,6 @@ packages: engines: {node: '>=4.0'} dev: true - /xss/1.0.14: - resolution: {integrity: sha512-og7TEJhXvn1a7kzZGQ7ETjdQVS2UfZyTlsEdDOqvQF7GoxNfY+0YLCzBy1kPdsDDx4QuNAonQPddpsn6Xl/7sw==} - engines: {node: '>= 0.10.0'} - hasBin: true - dependencies: - commander: 2.20.3 - cssfilter: 0.0.10 - dev: true - /xtend/2.1.2: resolution: {integrity: sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==} engines: {node: '>=0.4'}