diff --git a/frontend/.storybook/main.ts b/frontend/.storybook/main.ts index 356204b78e3..11e23027c6f 100644 --- a/frontend/.storybook/main.ts +++ b/frontend/.storybook/main.ts @@ -27,6 +27,7 @@ export default { fs: false, os: false, http: false, + https: require.resolve('https-browserify'), path: require.resolve('path-browserify'), crypto: false, util: require.resolve('util/'), diff --git a/frontend/apps/console-ce/src/polyfills.ts b/frontend/apps/console-ce/src/polyfills.ts index b5448cf1fc9..6695d922466 100644 --- a/frontend/apps/console-ce/src/polyfills.ts +++ b/frontend/apps/console-ce/src/polyfills.ts @@ -7,5 +7,8 @@ import 'core-js/stable'; import 'regenerator-runtime/runtime'; // Needed for action codegen import 'browser-hrtime'; +import { Buffer } from 'buffer/'; +process.cwd = () => ''; (window as any).global = window; +(window as any).Buffer = Buffer; diff --git a/frontend/apps/console-ee/src/polyfills.ts b/frontend/apps/console-ee/src/polyfills.ts index b5448cf1fc9..6695d922466 100644 --- a/frontend/apps/console-ee/src/polyfills.ts +++ b/frontend/apps/console-ee/src/polyfills.ts @@ -7,5 +7,8 @@ import 'core-js/stable'; import 'regenerator-runtime/runtime'; // Needed for action codegen import 'browser-hrtime'; +import { Buffer } from 'buffer/'; +process.cwd = () => ''; (window as any).global = window; +(window as any).Buffer = Buffer; diff --git a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/OASGeneratorForm.tsx b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/OASGeneratorForm.tsx index b439283dfca..fc753d9de13 100644 --- a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/OASGeneratorForm.tsx +++ b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/OASGeneratorForm.tsx @@ -8,21 +8,24 @@ import { FaExclamationTriangle, FaFilter, FaSearch } from 'react-icons/fa'; import { trackCustomEvent } from '../../../Analytics'; import { useDebouncedEffect } from '../../../../hooks/useDebounceEffect'; import { Badge, BadgeColor } from '../../../../new-components/Badge'; -import { Oas3 } from 'openapi-to-graphql'; +import { Oas3 } from '@dancamma/openapi-to-graphql'; import { useIsUnmounted } from '../../../../components/Services/Data/Common/tsUtils'; import { useFormContext } from 'react-hook-form'; import { useMetadata } from '../../../MetadataAPI'; import { hasuraToast } from '../../../../new-components/Toasts'; import { OasGeneratorActions } from './OASGeneratorActions'; import { GeneratedAction, Operation } from '../OASGenerator/types'; +import uniq from 'lodash/uniq'; import { generateAction, - getOperations, isOasError, normalizeOperationId, + parseOas, } from '../OASGenerator/utils'; import { UploadFile } from './UploadFile'; +import { IndicatorCard } from '../../../../new-components/IndicatorCard'; +import { Button } from '../../../../new-components/Button'; const fillToTenRows = (data: ReactNode[][]) => { const rowsToFill = 10 - data.length; @@ -61,9 +64,12 @@ export const OasGeneratorForm = (props: OasGeneratorFormProps) => { const [operations, setOperations] = React.useState([]); const [parsedOas, setParsedOas] = React.useState(null); const [isOasTooBig, setIsOasTooBig] = React.useState(false); + const [showEditor, setShowEditor] = React.useState(false); const [selectedMethods, setSelectedMethods] = React.useState([]); + const [validationErrors, setValidationErrors] = React.useState([]); + const { data: metadata } = useMetadata(); const isUnMounted = useIsUnmounted(); @@ -138,7 +144,15 @@ export const OasGeneratorForm = (props: OasGeneratorFormProps) => { } else { trigger('url'); } - const ops = await getOperations(localParsedOas); + const parsedOas = await parseOas(localParsedOas); + const ops = Object.values(parsedOas.data.operations); + + if (parsedOas.report.validationErrors?.length) { + setValidationErrors(uniq(parsedOas.report.validationErrors)); + } else { + setValidationErrors([]); + } + setOperations(ops); // send number of operations and file length @@ -183,7 +197,7 @@ export const OasGeneratorForm = (props: OasGeneratorFormProps) => { setParsedOas(localParsedOas ?? null); }, 400, - [oas, clearErrors, setError, setValue, url] + [oas, clearErrors, setError, setValue, url, setValidationErrors] ); const createAction = async (operation: string) => { @@ -318,15 +332,29 @@ export const OasGeneratorForm = (props: OasGeneratorFormProps) => {
- + {!isOasTooBig || showEditor ? ( + + ) : ( +
+
Editor is disabled because the spec is too large
+ + +
+ )}
@@ -372,6 +400,20 @@ export const OasGeneratorForm = (props: OasGeneratorFormProps) => { larger than 3MB. It won't be saved for future use.
)} + + {validationErrors.length > 0 && ( +
+ {validationErrors.map(error => ( + + {error} + + ))} +
+ )}

diff --git a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/types.ts b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/types.ts index a3a1992f63a..b50a6e5bba9 100644 --- a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/types.ts +++ b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/types.ts @@ -1,5 +1,5 @@ import { RequestTransformMethod } from '../../../../metadata/types'; -import { createGraphQLSchema } from 'openapi-to-graphql'; +import { createGraphQLSchema } from '@dancamma/openapi-to-graphql'; import z from 'zod'; import { formSchema } from './OASGeneratorPage'; diff --git a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.test.ts b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.test.ts index fc77b5d7685..75b68c47338 100644 --- a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.test.ts +++ b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.test.ts @@ -1,7 +1,7 @@ -import { Oas3 } from 'openapi-to-graphql'; -import { ParameterObject } from 'openapi-to-graphql/dist/types/oas3'; +import { Oas3 } from '@dancamma/openapi-to-graphql'; +import { ParameterObject } from '@dancamma/openapi-to-graphql/dist/types/oas3'; import petStore from './petstore.json'; -import { getOperations, generateAction, generateQueryParams } from './utils'; +import { generateAction, generateQueryParams, parseOas } from './utils'; const tags: ParameterObject = { name: 'tags', @@ -32,7 +32,8 @@ const status: ParameterObject = { describe('getOperations', () => { it('should return an array of operations', async () => { - const operations = await getOperations(petStore as unknown as Oas3); + const parsedOas = await parseOas(petStore as unknown as Oas3); + const operations = Object.values(parsedOas.data.operations); expect(operations).toHaveLength(4); expect(operations[0].path).toBe('/pets'); expect(operations[0].method).toBe('get'); @@ -45,7 +46,7 @@ describe('getOperations', () => { }); it('throws an error if the OAS is invalid', async () => { - await expect(getOperations({} as unknown as Oas3)).rejects.toThrow(); + await expect(parseOas({} as unknown as Oas3)).rejects.toThrow(); }); }); diff --git a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.ts b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.ts index cdbedeae725..5b752d24622 100644 --- a/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.ts +++ b/frontend/libs/console/legacy-ce/src/lib/features/Actions/components/OASGenerator/utils.ts @@ -14,11 +14,11 @@ import { Oas2, Oas3, createGraphQLSchema, -} from 'openapi-to-graphql'; +} from '@dancamma/openapi-to-graphql'; import { ReferenceObject, SchemaObject, -} from 'openapi-to-graphql/dist/types/oas3'; +} from '@dancamma/openapi-to-graphql/dist/types/oas3'; import { Microfiber } from 'microfiber'; import { formatSdl } from 'format-graphql'; import { getActionRequestSampleInput } from '../../../../components/Services/Actions/Add/utils'; @@ -517,7 +517,7 @@ const applyWorkarounds = (properties: (SchemaObject | ReferenceObject)[]) => { } }; -const parseOas = async (oas: Oas2 | Oas3): Promise => { +export const parseOas = async (oas: Oas2 | Oas3): Promise => { const oasCopy = JSON.parse(JSON.stringify(oas)) as Oas3; if (oasCopy.components?.schemas) { applyWorkarounds(Object.values(oasCopy.components?.schemas)); @@ -538,6 +538,18 @@ const parseOas = async (oas: Oas2 | Oas3): Promise => { oasValidatorOptions: { warnOnly: true, }, + softValidation: true, + report: { + validationErrors: [], + warnings: [], + numOps: 0, + numOpsQuery: 0, + numOpsMutation: 0, + numOpsSubscription: 0, + numQueriesCreated: 0, + numMutationsCreated: 0, + numSubscriptionsCreated: 0, + }, }); }; @@ -550,11 +562,6 @@ export const generateAction = async ( return translateAction(graphqlSchema, operation); }; -export const getOperations = async (oas: Oas2 | Oas3): Promise => { - const graphqlSchema = await parseOas(oas); - return Object.values(graphqlSchema.data.operations); -}; - type ActionState = { handler: string; actionDefinition: { diff --git a/frontend/libs/console/legacy-ce/tsconfig.json b/frontend/libs/console/legacy-ce/tsconfig.json index 8363329fe49..997a8122697 100644 --- a/frontend/libs/console/legacy-ce/tsconfig.json +++ b/frontend/libs/console/legacy-ce/tsconfig.json @@ -10,7 +10,8 @@ "noImplicitOverride": true, "noPropertyAccessFromIndexSignature": false, "noImplicitReturns": true, - "noFallthroughCasesInSwitch": true + "noFallthroughCasesInSwitch": true, + "resolveJsonModule": true }, "files": [], "include": [], diff --git a/frontend/package.json b/frontend/package.json index 9494347022b..fd85c30a487 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -34,6 +34,7 @@ "@ant-design/icons": "4.7.0", "@apollo/react-hooks": "^3.0.1", "@babel/plugin-transform-runtime": "^7.14.5", + "@dancamma/openapi-to-graphql": "^3.0.8", "@graphql-codegen/core": "^1.17.8", "@graphql-codegen/typescript": "^1.17.10", "@hasura/dc-api-types": "^0.32.0", @@ -103,7 +104,6 @@ "microfiber": "^1.3.1", "moment": "^2.26.0", "moment-timezone": "^0.5.27", - "openapi-to-graphql": "^2.6.3", "piping": "0.3.2", "posthog-js": "^1.4.3", "pretty-error": "1.2.0", @@ -313,6 +313,7 @@ "file-loader": "^6.2.0", "fork-ts-checker-webpack-plugin": "4.1.3", "glob": "^9.3.1", + "https-browserify": "^1.0.0", "husky": "^8.0.3", "identity-obj-proxy": "^3.0.0", "ignore-loader": "0.1.2", diff --git a/frontend/tools/webpack/withNodejsFallbacks.js b/frontend/tools/webpack/withNodejsFallbacks.js index 90e4026f690..778ceefcc02 100644 --- a/frontend/tools/webpack/withNodejsFallbacks.js +++ b/frontend/tools/webpack/withNodejsFallbacks.js @@ -47,7 +47,7 @@ module.exports = jsonwebtoken deps (jwa && jws) */ stream: require.resolve('stream-browserify'), - + https: require.resolve('https-browserify'), url: require.resolve('url/'), }, }, diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 0db97ecfead..e5687b91304 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -85,6 +85,20 @@ __metadata: languageName: node linkType: hard +"@apidevtools/openapi-schemas@npm:^2.1.0": + version: 2.1.0 + resolution: "@apidevtools/openapi-schemas@npm:2.1.0" + checksum: 4a8f64935b9049ef21e41fa4b188f39f6bc3f5291cebd451701db1115451ccb246a739e46cc5ce9ecdec781671431db40db7851acdac84a990a45756e0f32de3 + languageName: node + linkType: hard + +"@apidevtools/swagger-methods@npm:^3.0.2": + version: 3.0.2 + resolution: "@apidevtools/swagger-methods@npm:3.0.2" + checksum: d06b1ac5c1956613c4c6be695612ef860cd4e962b93a509ca551735a328a856cae1e33399cac1dcbf8333ba22b231746f3586074769ef0e172cf549ec9e7eaae + languageName: node + linkType: hard + "@apollo/react-common@npm:^3.1.4": version: 3.1.4 resolution: "@apollo/react-common@npm:3.1.4" @@ -241,7 +255,7 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.21.4": +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.0, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.18.6, @babel/code-frame@npm:^7.21.4": version: 7.21.4 resolution: "@babel/code-frame@npm:7.21.4" dependencies: @@ -2020,6 +2034,34 @@ __metadata: languageName: node linkType: hard +"@dancamma/openapi-to-graphql@npm:^3.0.8": + version: 3.0.8 + resolution: "@dancamma/openapi-to-graphql@npm:3.0.8" + dependencies: + "@readme/openapi-parser": ^2.5.0 + cross-fetch: ^3.1.4 + debug: ^4.2.0 + deep-equal: ^2.0.5 + form-data: ^4.0.0 + form-urlencoded: ^6.0.4 + graphql-scalars: ^1.10.0 + graphql-subscriptions: ^2.0.0 + graphql-upload: ^15.0.2 + json-ptr: ^2.2.0 + jsonpath-plus: ^6.0.1 + jsonpointer: ^5.0.0 + oas-validator: ^5.0.2 + pluralize: ^8.0.0 + swagger2openapi: ^7.0.2 + tslib: ^2.3.0 + url-join: 4.0.1 + ws: ^7.5.3 + peerDependencies: + graphql: ^16.0.0 + checksum: c28b1f338a845875e4458ceeaf96f8a78cd16915c371f45db1e675eddb810d1635d7434bced7a25bb52ab85be84b4020876416cf6f60f2d5d7a3fdd8d4bd4847 + languageName: node + linkType: hard + "@discoveryjs/json-ext@npm:^0.5.3, @discoveryjs/json-ext@npm:^0.5.7": version: 0.5.7 resolution: "@discoveryjs/json-ext@npm:0.5.7" @@ -3420,6 +3462,13 @@ __metadata: languageName: node linkType: hard +"@humanwhocodes/momoa@npm:^2.0.3": + version: 2.0.4 + resolution: "@humanwhocodes/momoa@npm:2.0.4" + checksum: ce4680e7f32394b54b29266b0059abbd8de8a980e486f10135c52f2a64359263e50548f9fb6956b1c2e8a47478e6dd4d3ede50bf68bdf1ec1bcc6e61e02d8238 + languageName: node + linkType: hard + "@humanwhocodes/object-schema@npm:^1.2.1": version: 1.2.1 resolution: "@humanwhocodes/object-schema@npm:1.2.1" @@ -4543,6 +4592,13 @@ __metadata: languageName: node linkType: hard +"@jsdevtools/ono@npm:^7.1.3": + version: 7.1.3 + resolution: "@jsdevtools/ono@npm:7.1.3" + checksum: 2297fcd472ba810bffe8519d2249171132844c7174f3a16634f9260761c8c78bc0428a4190b5b6d72d45673c13918ab9844d706c3ed4ef8f62ab11a2627a08ad + languageName: node + linkType: hard + "@juggle/resize-observer@npm:^3.3.1": version: 3.4.0 resolution: "@juggle/resize-observer@npm:3.4.0" @@ -6313,6 +6369,53 @@ __metadata: languageName: node linkType: hard +"@readme/better-ajv-errors@npm:^1.6.0": + version: 1.6.0 + resolution: "@readme/better-ajv-errors@npm:1.6.0" + dependencies: + "@babel/code-frame": ^7.16.0 + "@babel/runtime": ^7.21.0 + "@humanwhocodes/momoa": ^2.0.3 + chalk: ^4.1.2 + json-to-ast: ^2.0.3 + jsonpointer: ^5.0.0 + leven: ^3.1.0 + peerDependencies: + ajv: 4.11.8 - 8 + checksum: ed2a7e2b9e105f404fa1518bd4e79e3b4a9f3da6d8cb4fbdaf6664663cd32102e41723ba618619fbab6d8d966ffddabbf831a1995d541917e647da9ce4b46d48 + languageName: node + linkType: hard + +"@readme/json-schema-ref-parser@npm:^1.2.0": + version: 1.2.0 + resolution: "@readme/json-schema-ref-parser@npm:1.2.0" + dependencies: + "@jsdevtools/ono": ^7.1.3 + "@types/json-schema": ^7.0.6 + call-me-maybe: ^1.0.1 + js-yaml: ^4.1.0 + checksum: 72c7edf1a5cff2ec5789d7930a211e032fdd79589876d5802fdb731e3d93b8b845647309dbcd7511caac4eb261a086a0ce7dc41368fb07bbca2b0a0b7caf5eb0 + languageName: node + linkType: hard + +"@readme/openapi-parser@npm:^2.5.0": + version: 2.5.0 + resolution: "@readme/openapi-parser@npm:2.5.0" + dependencies: + "@apidevtools/openapi-schemas": ^2.1.0 + "@apidevtools/swagger-methods": ^3.0.2 + "@jsdevtools/ono": ^7.1.3 + "@readme/better-ajv-errors": ^1.6.0 + "@readme/json-schema-ref-parser": ^1.2.0 + ajv: ^8.12.0 + ajv-draft-04: ^1.0.0 + call-me-maybe: ^1.0.1 + peerDependencies: + openapi-types: ">=7" + checksum: c917feb531f9e49ee1c3c51009d00e62a8833663fb1fe0c5f267b82b9f649f60b5eafdb9ab422a9910712e21fd06070cb597b446bf4f45dfc8e55049122394aa + languageName: node + linkType: hard + "@reduxjs/toolkit@npm:^1.5.1": version: 1.9.5 resolution: "@reduxjs/toolkit@npm:1.9.5" @@ -9582,6 +9685,15 @@ __metadata: languageName: node linkType: hard +"@types/busboy@npm:^1.5.0": + version: 1.5.0 + resolution: "@types/busboy@npm:1.5.0" + dependencies: + "@types/node": "*" + checksum: ffa7bf25c0395f6927526b7d97e70cd2df789e4ca0d231e41855fb08542fa236891ce457d83cc50cac6e5cef6be092ab80597070dcf1413f736462690a23e987 + languageName: node + linkType: hard + "@types/cacheable-request@npm:^6.0.1": version: 6.0.3 resolution: "@types/cacheable-request@npm:6.0.3" @@ -9964,7 +10076,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.6, @types/json-schema@npm:^7.0.8, @types/json-schema@npm:^7.0.9": version: 7.0.11 resolution: "@types/json-schema@npm:7.0.11" checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d @@ -10169,6 +10281,13 @@ __metadata: languageName: node linkType: hard +"@types/object-path@npm:^0.11.1": + version: 0.11.1 + resolution: "@types/object-path@npm:0.11.1" + checksum: 007e819d1d9dc830491b60023b1502ef1e421416d9953d6fefcda7d06eb91548eef8ee30073a9cfb6a834ac977042f6e1a761cde2d6a7973b06ddca753be91e3 + languageName: node + linkType: hard + "@types/optimize-css-assets-webpack-plugin@npm:5.0.1": version: 5.0.1 resolution: "@types/optimize-css-assets-webpack-plugin@npm:5.0.1" @@ -11676,6 +11795,18 @@ __metadata: languageName: node linkType: hard +"ajv-draft-04@npm:^1.0.0": + version: 1.0.0 + resolution: "ajv-draft-04@npm:1.0.0" + peerDependencies: + ajv: ^8.5.0 + peerDependenciesMeta: + ajv: + optional: true + checksum: 3f11fa0e7f7359bef6608657f02ab78e9cc62b1fb7bdd860db0d00351b3863a1189c1a23b72466d2d82726cab4eb20725c76f5e7c134a89865e2bfd0e6828137 + languageName: node + linkType: hard + "ajv-formats@npm:^2.1.1": version: 2.1.1 resolution: "ajv-formats@npm:2.1.1" @@ -11722,7 +11853,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^8.0.0, ajv@npm:^8.9.0": +"ajv@npm:^8.0.0, ajv@npm:^8.12.0, ajv@npm:^8.9.0": version: 8.12.0 resolution: "ajv@npm:8.12.0" dependencies: @@ -13741,15 +13872,6 @@ __metadata: languageName: node linkType: hard -"busboy@npm:^0.3.1": - version: 0.3.1 - resolution: "busboy@npm:0.3.1" - dependencies: - dicer: 0.3.0 - checksum: d2bcb788c4595edca4ea2168ab8bf7f9558b627ddcec2fb6bbaf0aa6a10b63da48dce35ce56936570f330c5268a3204f7037021a310a895a8b1a223568e0cc1b - languageName: node - linkType: hard - "busboy@npm:^1.6.0": version: 1.6.0 resolution: "busboy@npm:1.6.0" @@ -14530,6 +14652,13 @@ __metadata: languageName: node linkType: hard +"code-error-fragment@npm:0.0.230": + version: 0.0.230 + resolution: "code-error-fragment@npm:0.0.230" + checksum: 6c5e800d6d70b30938cc85a2fc2c6069f028eadb58bceb65716b995ce6228c99906302f2c438ba50115fd81a1ee15dd95dc7d317b16a6c590e311ac7e50613f3 + languageName: node + linkType: hard + "codemirror-graphql@npm:^0.12.0-alpha.0": version: 0.12.4 resolution: "codemirror-graphql@npm:0.12.4" @@ -16142,15 +16271,6 @@ __metadata: languageName: node linkType: hard -"dicer@npm:0.3.0": - version: 0.3.0 - resolution: "dicer@npm:0.3.0" - dependencies: - streamsearch: 0.1.2 - checksum: 9f61aea61fcd81457f1b43967af7e66415b7a31d393336fa05a29b221b5ba065b99e5cac46476b2da36eb7af7665bf8dad6f9500409116dc6a35ada183841598 - languageName: node - linkType: hard - "didyoumean@npm:^1.2.2": version: 1.2.2 resolution: "didyoumean@npm:1.2.2" @@ -18652,6 +18772,7 @@ __metadata: "@babel/preset-typescript": 7.12.13 "@babel/register": 7.9.0 "@babel/runtime": 7.14.8 + "@dancamma/openapi-to-graphql": ^3.0.8 "@faker-js/faker": ^7.6.0 "@graphql-codegen/cli": 2.13.8 "@graphql-codegen/core": ^1.17.8 @@ -18840,6 +18961,7 @@ __metadata: highlight.js: 9.15.8 history: 3.3.0 hoist-non-react-statics: 1.2.0 + https-browserify: ^1.0.0 husky: ^8.0.3 identity-obj-proxy: ^3.0.0 ignore-loader: 0.1.2 @@ -18872,7 +18994,6 @@ __metadata: nx: 15.8.1 nyc: 15.0.1 octokit: ^2.0.14 - openapi-to-graphql: ^2.6.3 os-browserify: ^0.3.0 path-browserify: ^1.0.1 piping: 0.3.2 @@ -19784,14 +19905,14 @@ __metadata: languageName: node linkType: hard -"graphql-subscriptions@npm:^1.1.0": - version: 1.2.1 - resolution: "graphql-subscriptions@npm:1.2.1" +"graphql-subscriptions@npm:^2.0.0": + version: 2.0.0 + resolution: "graphql-subscriptions@npm:2.0.0" dependencies: iterall: ^1.3.0 peerDependencies: - graphql: ^0.10.5 || ^0.11.3 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 - checksum: 2b9533c6774e7be46acd6fbee528aab06429f15dc222eabd991e82c02bf74e390b638dffa1a3fd86c1e26212c40a42a0418d7f4a7c3a1edf0534978ef128e528 + graphql: ^15.7.2 || ^16.0.0 + checksum: 4735ef86462967bca2f549c5e5e30ca63fb6ddde19a81d8601f38fb12f8bda2b5f1203b33df8fd8d1154ffa3eadc2820d407e64b8fda73e319559256c508af21 languageName: node linkType: hard @@ -19806,17 +19927,27 @@ __metadata: languageName: node linkType: hard -"graphql-upload@npm:^13.0.0": - version: 13.0.0 - resolution: "graphql-upload@npm:13.0.0" +"graphql-upload@npm:^15.0.2": + version: 15.0.2 + resolution: "graphql-upload@npm:15.0.2" dependencies: - busboy: ^0.3.1 + "@types/busboy": ^1.5.0 + "@types/node": "*" + "@types/object-path": ^0.11.1 + busboy: ^1.6.0 fs-capacitor: ^6.2.0 - http-errors: ^1.8.1 + http-errors: ^2.0.0 object-path: ^0.11.8 peerDependencies: - graphql: 0.13.1 - 16 - checksum: 3b4b7dd717d5cfcd1d59f3656bcc7281dbe1aaa0d64b5404eb7333db913976154349dd65cf9774a9efc3a6478b1578335c83dd0696c041e3f63efff589d7d457 + "@types/express": ^4.0.29 + "@types/koa": ^2.11.4 + graphql: ^16.3.0 + peerDependenciesMeta: + "@types/express": + optional: true + "@types/koa": + optional: true + checksum: 635db84b50b5a5ff09bfe14e23eda374eaa7bd4496ebfcd6abcdb887ac1a489f80ced22b987ebc9691cfde44e487b4c632da708f0fcfe9e63502f6530043d599 languageName: node linkType: hard @@ -20342,7 +20473,7 @@ __metadata: languageName: node linkType: hard -"http-errors@npm:2.0.0": +"http-errors@npm:2.0.0, http-errors@npm:^2.0.0": version: 2.0.0 resolution: "http-errors@npm:2.0.0" dependencies: @@ -20355,19 +20486,6 @@ __metadata: languageName: node linkType: hard -"http-errors@npm:^1.8.1": - version: 1.8.1 - resolution: "http-errors@npm:1.8.1" - dependencies: - depd: ~1.1.2 - inherits: 2.0.4 - setprototypeof: 1.2.0 - statuses: ">= 1.5.0 < 2" - toidentifier: 1.0.1 - checksum: d3c7e7e776fd51c0a812baff570bdf06fe49a5dc448b700ab6171b1250e4cf7db8b8f4c0b133e4bfe2451022a5790c1ca6c2cae4094dedd6ac8304a1267f91d2 - languageName: node - linkType: hard - "http-errors@npm:~1.6.2": version: 1.6.3 resolution: "http-errors@npm:1.6.3" @@ -20489,6 +20607,13 @@ __metadata: languageName: node linkType: hard +"https-browserify@npm:^1.0.0": + version: 1.0.0 + resolution: "https-browserify@npm:1.0.0" + checksum: 09b35353e42069fde2435760d13f8a3fb7dd9105e358270e2e225b8a94f811b461edd17cb57594e5f36ec1218f121c160ddceeec6e8be2d55e01dcbbbed8cbae + languageName: node + linkType: hard + "https-proxy-agent@npm:^4.0.0": version: 4.0.0 resolution: "https-proxy-agent@npm:4.0.0" @@ -23204,6 +23329,16 @@ __metadata: languageName: node linkType: hard +"json-to-ast@npm:^2.0.3": + version: 2.1.0 + resolution: "json-to-ast@npm:2.1.0" + dependencies: + code-error-fragment: 0.0.230 + grapheme-splitter: ^1.0.4 + checksum: 1e9b051505b218573b39f3fec9054d75772413aefc2fee3e763d9033276664faa7eec26b945a71f70b9ce29685b2f13259df7dd3243e15eacf4672c62d5ba7ce + languageName: node + linkType: hard + "json-to-pretty-yaml@npm:^1.2.2": version: 1.2.2 resolution: "json-to-pretty-yaml@npm:1.2.2" @@ -26591,33 +26726,6 @@ __metadata: languageName: node linkType: hard -"openapi-to-graphql@npm:^2.6.3": - version: 2.6.3 - resolution: "openapi-to-graphql@npm:2.6.3" - dependencies: - cross-fetch: ^3.1.4 - debug: ^4.2.0 - deep-equal: ^2.0.5 - form-data: ^4.0.0 - form-urlencoded: ^6.0.4 - graphql-scalars: ^1.10.0 - graphql-subscriptions: ^1.1.0 - graphql-upload: ^13.0.0 - json-ptr: ^2.2.0 - jsonpath-plus: ^6.0.1 - jsonpointer: ^5.0.0 - oas-validator: ^5.0.2 - pluralize: ^8.0.0 - swagger2openapi: ^7.0.2 - tslib: ^2.3.0 - url-join: 4.0.1 - ws: ^7.5.3 - peerDependencies: - graphql: ^14.0.0 || ^15.0.0 - checksum: d3dba6e0b5ff63c1deee81366c1643218aeeba99278e862b6c1c84aeb05cc9b389bbcf0ed9d982a704282228498be2dd3e3721a789d476536b41ddbbecf5c041 - languageName: node - linkType: hard - "opener@npm:^1.5.1": version: 1.5.2 resolution: "opener@npm:1.5.2" @@ -32354,7 +32462,7 @@ __metadata: languageName: node linkType: hard -"statuses@npm:>= 1.4.0 < 2, statuses@npm:>= 1.5.0 < 2": +"statuses@npm:>= 1.4.0 < 2": version: 1.5.0 resolution: "statuses@npm:1.5.0" checksum: c469b9519de16a4bb19600205cffb39ee471a5f17b82589757ca7bd40a8d92ebb6ed9f98b5a540c5d302ccbc78f15dc03cc0280dd6e00df1335568a5d5758a5c @@ -32495,13 +32603,6 @@ __metadata: languageName: node linkType: hard -"streamsearch@npm:0.1.2": - version: 0.1.2 - resolution: "streamsearch@npm:0.1.2" - checksum: d2db57cbfbf7947ab9c75a7b4c80a8ef8d24850cf0a1a24258bb6956c97317ce1eab7dbcbf9c5aba3e6198611af1053b02411057bbedb99bf9c64b8275248997 - languageName: node - linkType: hard - "streamsearch@npm:^1.1.0": version: 1.1.0 resolution: "streamsearch@npm:1.1.0"