From 6473d799e22cd3ac5ea5459a53b5402ce47cbda8 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Thu, 18 Mar 2021 11:27:23 +0100 Subject: [PATCH 1/9] Add ability to customize graphql schema with OAS extensions Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.d.ts | 34 +----- packages/openapi-to-graphql/lib/index.js | 81 +++++++++---- packages/openapi-to-graphql/lib/index.js.map | 2 +- .../openapi-to-graphql/lib/oas_3_tools.d.ts | 13 +- .../openapi-to-graphql/lib/oas_3_tools.js | 28 +++-- .../openapi-to-graphql/lib/oas_3_tools.js.map | 2 +- .../openapi-to-graphql/lib/preprocessor.d.ts | 6 +- .../openapi-to-graphql/lib/preprocessor.js | 45 +++++-- .../lib/preprocessor.js.map | 2 +- .../lib/resolver_builder.d.ts | 12 +- .../lib/resolver_builder.js | 22 ++-- .../lib/resolver_builder.js.map | 2 +- .../lib/schema_builder.d.ts | 11 +- .../openapi-to-graphql/lib/schema_builder.js | 14 ++- .../lib/schema_builder.js.map | 2 +- .../openapi-to-graphql/lib/types/oas3.d.ts | 1 - packages/openapi-to-graphql/src/index.ts | 114 +++++++++--------- .../openapi-to-graphql/src/oas_3_tools.ts | 66 +++++----- .../openapi-to-graphql/src/preprocessor.ts | 61 +++++++--- .../src/resolver_builder.ts | 39 +++--- .../openapi-to-graphql/src/schema_builder.ts | 59 +++++---- packages/openapi-to-graphql/src/types/oas3.ts | 3 - 22 files changed, 339 insertions(+), 280 deletions(-) diff --git a/packages/openapi-to-graphql/lib/index.d.ts b/packages/openapi-to-graphql/lib/index.d.ts index 3aafba7f..9b9ec9d0 100644 --- a/packages/openapi-to-graphql/lib/index.d.ts +++ b/packages/openapi-to-graphql/lib/index.d.ts @@ -1,34 +1,8 @@ -/** - * Defines the functions exposed by OpenAPI-to-GraphQL. - * - * Some general notes: - * - * - GraphQL interfaces rely on sanitized strings for (input) object type names - * and fields. We perform sanitization only when assigning (field-) names, but - * keep keys in the OAS otherwise as-is, to ensure that inner-OAS references - * work as expected. - * - * - GraphQL (input) object types must have a unique name. Thus, sometimes Input - * object types and object types need separate names, despite them having the - * same structure. We thus append 'Input' to every input object type's name - * as a convention. - * - * - To pass data between resolve functions, OpenAPI-to-GraphQL uses a _openAPIToGraphQL object - * returned by every resolver in addition to its original data (OpenAPI-to-GraphQL does - * not use the context to do so, which is an anti-pattern according to - * https://github.com/graphql/graphql-js/issues/953). - * - * - OpenAPI-to-GraphQL can handle basic authentication and API key-based authentication - * through GraphQL. To do this, OpenAPI-to-GraphQL creates two new intermediate Object - * Types called QueryViewer and MutationViewer that take as input security - * credentials and pass them on using the _openAPIToGraphQL object to other resolve - * functions. - */ -import { Options, Report } from './types/options'; -import { Oas3 } from './types/oas3'; +import { GraphQLSchema } from 'graphql'; import { Oas2 } from './types/oas2'; +import { Oas3 } from './types/oas3'; +import { Options, Report } from './types/options'; import { PreprocessingData } from './types/preprocessing_data'; -import { GraphQLSchema } from 'graphql'; declare type Result = { schema: GraphQLSchema; report: Report; @@ -38,5 +12,5 @@ declare type Result = { * Creates a GraphQL interface from the given OpenAPI Specification (2 or 3). */ export declare function createGraphQLSchema(spec: Oas3 | Oas2 | (Oas3 | Oas2)[], options?: Options): Promise>; -export { sanitize, CaseStyle } from './oas_3_tools'; +export { CaseStyle, sanitize } from './oas_3_tools'; export { GraphQLOperationType } from './types/graphql'; diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index 7260889e..c136224a 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -4,17 +4,44 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); -exports.GraphQLOperationType = exports.CaseStyle = exports.sanitize = exports.createGraphQLSchema = void 0; -const graphql_1 = require("./types/graphql"); -const graphql_2 = require("graphql"); -// Imports: -const schema_builder_1 = require("./schema_builder"); -const resolver_builder_1 = require("./resolver_builder"); +exports.GraphQLOperationType = exports.sanitize = exports.CaseStyle = exports.createGraphQLSchema = void 0; +/** + * Defines the functions exposed by OpenAPI-to-GraphQL. + * + * Some general notes: + * + * - GraphQL interfaces rely on sanitized strings for (input) object type names + * and fields. We perform sanitization only when assigning (field-) names, but + * keep keys in the OAS otherwise as-is, to ensure that inner-OAS references + * work as expected. + * + * - GraphQL (input) object types must have a unique name. Thus, sometimes Input + * object types and object types need separate names, despite them having the + * same structure. We thus append 'Input' to every input object type's name + * as a convention. + * + * - To pass data between resolve functions, OpenAPI-to-GraphQL uses a _openAPIToGraphQL object + * returned by every resolver in addition to its original data (OpenAPI-to-GraphQL does + * not use the context to do so, which is an anti-pattern according to + * https://github.com/graphql/graphql-js/issues/953). + * + * - OpenAPI-to-GraphQL can handle basic authentication and API key-based authentication + * through GraphQL. To do this, OpenAPI-to-GraphQL creates two new intermediate Object + * Types called QueryViewer and MutationViewer that take as input security + * credentials and pass them on using the _openAPIToGraphQL object to other resolve + * functions. + */ +// Type imports: +const debug_1 = require("debug"); +const graphql_1 = require("graphql"); +const auth_builder_1 = require("./auth_builder"); const GraphQLTools = require("./graphql_tools"); -const preprocessor_1 = require("./preprocessor"); const Oas3Tools = require("./oas_3_tools"); -const auth_builder_1 = require("./auth_builder"); -const debug_1 = require("debug"); +const preprocessor_1 = require("./preprocessor"); +const resolver_builder_1 = require("./resolver_builder"); +// Imports: +const schema_builder_1 = require("./schema_builder"); +const graphql_2 = require("./types/graphql"); const utils_1 = require("./utils"); const translationLog = debug_1.default('translation'); /** @@ -86,9 +113,11 @@ function createGraphQLSchema(spec, options) { // Convert all non-OAS 3 into OAS 3 Promise.all(spec.map((ele) => { return Oas3Tools.getValidOAS3(ele); - })).then((oass) => { + })) + .then((oass) => { resolve(translateOpenAPIToGraphQL(oass, options)); - }).catch((error) => { + }) + .catch((error) => { reject(error); }); } @@ -98,7 +127,8 @@ function createGraphQLSchema(spec, options) { * If the spec is OAS 2.0, attempt to translate it into 3, then try to * translate the spec into a GraphQL schema */ - Oas3Tools.getValidOAS3(spec).then((oas) => { + Oas3Tools.getValidOAS3(spec) + .then((oas) => { resolve(translateOpenAPIToGraphQL([oas], options)); }) .catch((error) => { @@ -171,10 +201,11 @@ provideErrorExtensions, equivalentToMessages }) { const field = getFieldForOperation(operation, options.baseUrl, data, requestOptions, connectOptions); const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); // Check if the operation should be added as a Query or Mutation - if (operation.operationType === graphql_1.GraphQLOperationType.Query) { - let fieldName = !singularNames - ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) - : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase); + if (operation.operationType === graphql_2.GraphQLOperationType.Query) { + let fieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] || + (!singularNames + ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) + : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authQueryFields[securityRequirement] !== 'object') { @@ -367,30 +398,30 @@ provideErrorExtensions, equivalentToMessages }) { * viewer objects. */ if (Object.keys(authQueryFields).length > 0) { - Object.assign(queryFields, auth_builder_1.createAndLoadViewer(authQueryFields, graphql_1.GraphQLOperationType.Query, data)); + Object.assign(queryFields, auth_builder_1.createAndLoadViewer(authQueryFields, graphql_2.GraphQLOperationType.Query, data)); } if (Object.keys(authMutationFields).length > 0) { - Object.assign(mutationFields, auth_builder_1.createAndLoadViewer(authMutationFields, graphql_1.GraphQLOperationType.Mutation, data)); + Object.assign(mutationFields, auth_builder_1.createAndLoadViewer(authMutationFields, graphql_2.GraphQLOperationType.Mutation, data)); } if (Object.keys(authSubscriptionFields).length > 0) { - Object.assign(subscriptionFields, auth_builder_1.createAndLoadViewer(authSubscriptionFields, graphql_1.GraphQLOperationType.Subscription, data)); + Object.assign(subscriptionFields, auth_builder_1.createAndLoadViewer(authSubscriptionFields, graphql_2.GraphQLOperationType.Subscription, data)); } // Build up the schema const schemaConfig = { query: Object.keys(queryFields).length > 0 - ? new graphql_2.GraphQLObjectType({ + ? new graphql_1.GraphQLObjectType({ name: 'Query', fields: queryFields }) : GraphQLTools.getEmptyObjectType('Query'), mutation: Object.keys(mutationFields).length > 0 - ? new graphql_2.GraphQLObjectType({ + ? new graphql_1.GraphQLObjectType({ name: 'Mutation', fields: mutationFields }) : null, subscription: Object.keys(subscriptionFields).length > 0 - ? new graphql_2.GraphQLObjectType({ + ? new graphql_1.GraphQLObjectType({ name: 'Subscription', fields: subscriptionFields }) @@ -407,7 +438,7 @@ provideErrorExtensions, equivalentToMessages }) { operation.responseDefinition.graphQLType = GraphQLTools.getEmptyObjectType(operation.responseDefinition.graphQLTypeName); } }); - const schema = new graphql_2.GraphQLSchema(schemaConfig); + const schema = new graphql_1.GraphQLSchema(schemaConfig); return { schema, report: options.report, data }; } /** @@ -436,7 +467,7 @@ function getFieldForOperation(operation, baseUrl, data, requestOptions, connectO data }); // Get resolver and subscribe function for Subscription fields - if (operation.operationType === graphql_1.GraphQLOperationType.Subscription) { + if (operation.operationType === graphql_2.GraphQLOperationType.Subscription) { const responseSchemaName = operation.responseDefinition ? operation.responseDefinition.graphQLTypeName : null; @@ -551,8 +582,8 @@ function preliminaryChecks(options, data) { checkCustomResolversStructure(options.customSubscriptionResolvers, data); } var oas_3_tools_1 = require("./oas_3_tools"); -Object.defineProperty(exports, "sanitize", { enumerable: true, get: function () { return oas_3_tools_1.sanitize; } }); Object.defineProperty(exports, "CaseStyle", { enumerable: true, get: function () { return oas_3_tools_1.CaseStyle; } }); +Object.defineProperty(exports, "sanitize", { enumerable: true, get: function () { return oas_3_tools_1.sanitize; } }); var graphql_3 = require("./types/graphql"); Object.defineProperty(exports, "GraphQLOperationType", { enumerable: true, get: function () { return graphql_3.GraphQLOperationType; } }); //# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index e881f7cb..7d1f3ea8 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts index f3c146fa..f1232dfd 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts +++ b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts @@ -1,12 +1,10 @@ -/** - * Utility functions around the OpenAPI Specification 3. - */ import { Oas2 } from './types/oas2'; +import { LinkObject, Oas3, OperationObject, ParameterObject, PathItemObject, ReferenceObject, RequestBodyObject, ResponseObject, SchemaObject, SecuritySchemeObject, ServerObject } from './types/oas3'; import { Operation } from './types/operation'; -import { Oas3, ServerObject, ParameterObject, SchemaObject, OperationObject, ResponseObject, PathItemObject, RequestBodyObject, ReferenceObject, LinkObject, SecuritySchemeObject } from './types/oas3'; -import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data'; import { InternalOptions } from './types/options'; +import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data'; export declare type SchemaNames = { + fromExtension?: string; fromRef?: string; fromSchema?: string; fromPath?: string; @@ -38,6 +36,9 @@ export declare enum HTTP_METHODS { 'head' = "head" } export declare const SUCCESS_STATUS_RX: RegExp; +export declare enum OAS_GRAPHQL_EXTENSIONS { + Name = "x-graphql-name" +} /** * Given an HTTP method, convert it to the HTTP_METHODS enum */ @@ -70,7 +71,7 @@ export declare function countOperationsWithPayload(oas: Oas3): number; /** * Resolves the given reference in the given object. */ -export declare function resolveRef(ref: string, oas: Oas3): any; +export declare function resolveRef(ref: string, oas: Oas3): T; /** * Returns the base URL to use for the given operation. */ diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js b/packages/openapi-to-graphql/lib/oas_3_tools.js index 1a90382e..8dd03ab0 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js @@ -4,14 +4,18 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); -exports.generateOperationId = exports.uncapitalize = exports.capitalize = exports.formatOperationString = exports.isHttpMethod = exports.trim = exports.storeSaneName = exports.sanitize = exports.CaseStyle = exports.getSecurityRequirements = exports.getSecuritySchemes = exports.getServers = exports.getParameters = exports.getLinks = exports.getResponseStatusCode = exports.getResponseSchemaAndNames = exports.getResponseObject = exports.getRequestSchemaAndNames = exports.getRequestBodyObject = exports.inferResourceNameFromPath = exports.getSchemaTargetGraphQLType = exports.desanitizeObjectKeys = exports.sanitizeObjectKeys = exports.getBaseUrl = exports.resolveRef = exports.countOperationsWithPayload = exports.countOperationsSubscription = exports.countOperationsMutation = exports.countOperationsQuery = exports.countOperations = exports.getValidOAS3 = exports.methodToHttpMethod = exports.SUCCESS_STATUS_RX = exports.HTTP_METHODS = void 0; -// Imports: -const Swagger2OpenAPI = require("swagger2openapi"); -const OASValidator = require("oas-validator"); +exports.generateOperationId = exports.uncapitalize = exports.capitalize = exports.formatOperationString = exports.isHttpMethod = exports.trim = exports.storeSaneName = exports.sanitize = exports.CaseStyle = exports.getSecurityRequirements = exports.getSecuritySchemes = exports.getServers = exports.getParameters = exports.getLinks = exports.getResponseStatusCode = exports.getResponseSchemaAndNames = exports.getResponseObject = exports.getRequestSchemaAndNames = exports.getRequestBodyObject = exports.inferResourceNameFromPath = exports.getSchemaTargetGraphQLType = exports.desanitizeObjectKeys = exports.sanitizeObjectKeys = exports.getBaseUrl = exports.resolveRef = exports.countOperationsWithPayload = exports.countOperationsSubscription = exports.countOperationsMutation = exports.countOperationsQuery = exports.countOperations = exports.getValidOAS3 = exports.methodToHttpMethod = exports.OAS_GRAPHQL_EXTENSIONS = exports.SUCCESS_STATUS_RX = exports.HTTP_METHODS = void 0; +/** + * Utility functions around the OpenAPI Specification 3. + */ +// Type imports: const debug_1 = require("debug"); -const utils_1 = require("./utils"); const jsonptr = require("json-ptr"); +const OASValidator = require("oas-validator"); const pluralize = require("pluralize"); +// Imports: +const Swagger2OpenAPI = require("swagger2openapi"); +const utils_1 = require("./utils"); const httpLog = debug_1.default('http'); const preprocessingLog = debug_1.default('preprocessing'); const translationLog = debug_1.default('translation'); @@ -27,6 +31,10 @@ var HTTP_METHODS; HTTP_METHODS["head"] = "head"; })(HTTP_METHODS = exports.HTTP_METHODS || (exports.HTTP_METHODS = {})); exports.SUCCESS_STATUS_RX = /2[0-9]{2}|2XX/; +var OAS_GRAPHQL_EXTENSIONS; +(function (OAS_GRAPHQL_EXTENSIONS) { + OAS_GRAPHQL_EXTENSIONS["Name"] = "x-graphql-name"; +})(OAS_GRAPHQL_EXTENSIONS = exports.OAS_GRAPHQL_EXTENSIONS || (exports.OAS_GRAPHQL_EXTENSIONS = {})); /** * Given an HTTP method, convert it to the HTTP_METHODS enum */ @@ -457,10 +465,11 @@ function getRequestSchemaAndNames(path, method, operation, oas) { // Get resource name from different sources let fromRef; if ('$ref' in payloadSchema) { - fromRef = payloadSchema['$ref'].split('/').pop(); - payloadSchema = resolveRef(payloadSchema['$ref'], oas); + fromRef = payloadSchema.$ref.split('/').pop(); + payloadSchema = resolveRef(payloadSchema.$ref, oas); } let payloadSchemaNames = { + fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.Name], fromRef, fromSchema: payloadSchema.title, fromPath: inferResourceNameFromPath(path) @@ -560,10 +569,11 @@ function getResponseSchemaAndNames(path, method, operation, oas, data, options) let responseSchema = responseObject.content[responseContentType].schema; let fromRef; if ('$ref' in responseSchema) { - fromRef = responseSchema['$ref'].split('/').pop(); - responseSchema = resolveRef(responseSchema['$ref'], oas); + fromRef = responseSchema.$ref.split('/').pop(); + responseSchema = resolveRef(responseSchema.$ref, oas); } const responseSchemaNames = { + fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.Name], fromRef, fromSchema: responseSchema.title, fromPath: inferResourceNameFromPath(path) diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js.map b/packages/openapi-to-graphql/lib/oas_3_tools.js.map index 4ef0c274..07f7727e 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js.map +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js.map @@ -1 +1 @@ -{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAkChE,WAAW;AACX,mDAAkD;AAClD,8CAA6C;AAC7C,iCAAyB;AACzB,mCAAwD;AACxD,oCAAmC;AACnC,uCAAsC;AA8BtC,MAAM,OAAO,GAAG,eAAK,CAAC,MAAM,CAAC,CAAA;AAC7B,MAAM,gBAAgB,GAAG,eAAK,CAAC,eAAe,CAAC,CAAA;AAE/C,MAAM,cAAc,GAAG,eAAK,CAAC,aAAa,CAAC,CAAA;AAE3C,gBAAgB;AAChB,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,iCAAmB,CAAA;IACnB,mCAAqB,CAAA;IACrB,6BAAe,CAAA;AACjB,CAAC,EARW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQvB;AAEY,QAAA,iBAAiB,GAAG,eAAe,CAAA;AAEhD;;GAEG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,QAAQ,MAAM,CAAC,WAAW,EAAE,EAAE;QAC5B,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,GAAG,CAAA;QAEzB,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,GAAG,CAAA;QAEzB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,IAAI,CAAA;QAE1B,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,KAAK,CAAA;QAE3B,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,MAAM,CAAA;QAE5B,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,OAAO,CAAA;QAE7B,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,IAAI,CAAA;QAE1B;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,GAAG,CAAC,CAAA;KACrD;AACH,CAAC;AA1BD,gDA0BC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,IAAiB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,kBAAkB;QAClB,IACE,OAAQ,IAAa,CAAC,OAAO,KAAK,QAAQ;YACzC,IAAa,CAAC,OAAO,KAAK,KAAK,EAChC;YACA,gBAAgB,CACd,mEAAmE,CACpE,CAAA;YAED,eAAe,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;iBAC3C,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CACJ,8BACG,IAAa,CAAC,IAAI,CAAC,KACtB,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAC/C,CACF,CAAA;YAEH,iBAAiB;SAClB;aAAM,IACL,OAAQ,IAAa,CAAC,OAAO,KAAK,QAAQ;YAC1C,IAAI,CAAC,IAAI,CAAE,IAAa,CAAC,OAAO,CAAC,EACjC;YACA,gBAAgB,CAAC,uDAAuD,CAAC,CAAA;YAEzE,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;iBAC5B,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAY,CAAC,CAAC;iBACjC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CACJ,6CACG,IAAa,CAAC,IAAI,CAAC,KACtB,MAAM,KAAK,CAAC,OAAO,EAAE,CACtB,CACF,CAAA;SACJ;aAAM;YACL,MAAM,CAAC,gCAAgC,CAAC,CAAA;SACzC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAzCD,oCAyCC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,GAAS;IACvC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;gBACxB,MAAM,EAAE,CAAA;gBACR,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;oBACrC,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;wBACpD,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;4BAC5D,MAAM,EAAE,CAAA;yBACT;qBACF;iBACF;aACF;SACF;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAlBD,0CAkBC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAS;IAC5C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG,EAAE;gBACrE,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,oDAUC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,GAAS;IAC/C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG,EAAE;gBACrE,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,0DAUC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CAAC,GAAS;IACnD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IACE,YAAY,CAAC,MAAM,CAAC;gBACpB,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG;gBACzC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EACjC;gBACA,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;oBACpD,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;wBAC5D,MAAM,EAAE,CAAA;qBACT;iBACF;aACF;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAlBD,kEAkBC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,GAAS;IAClD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IACE,YAAY,CAAC,MAAM,CAAC;gBACpB,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,EACvD;gBACA,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAbD,gEAaC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW,EAAE,GAAS;IAC/C,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;AAC1C,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,SAAoB;IAC7C,qBAAqB;IACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACvE,MAAM,IAAI,KAAK,CACb,qCAAqC,SAAS,CAAC,eAAe,GAAG,CAClE,CAAA;KACF;IAED,0BAA0B;IAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpE,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpE,OAAO,CAAC,4CAA4C,GAAG,GAAG,CAAC,CAAA;SAC5D;QAED,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;KAC9B;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAA;IAEzB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACxD,OAAO,CAAC,4CAA4C,GAAG,GAAG,CAAC,CAAA;SAC5D;QAED,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;KAC9B;IAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;AACjD,CAAC;AAhCD,gCAgCC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,MAAoB;IACpC,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IAEpB,gDAAgD;IAChD,IACE,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;QACpC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EACxC;QACA,KAAK,IAAI,WAAW,IAAI,MAAM,CAAC,SAAS,EAAE;YACxC,gDAAgD;YAChD,GAAG,GAAG,GAAG,CAAC,OAAO,CACf,IAAI,WAAW,GAAG,EAClB,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CACjD,CAAA;SACF;KACF;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,GAAQ,EAAE,gDAAgD;AAC1D,YAAuB,SAAS,CAAC,SAAS;IAE1C,MAAM,SAAS,GAAG,CAAC,GAAQ,EAAO,EAAE;QAClC,2BAA2B;QAC3B,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE;YAC9C,OAAO,IAAI,CAAA;YAEX,cAAc;SACf;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAEzB,eAAe;SAChB;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,MAAM,GAAG,GAAW,EAAE,CAAA;YAEtB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;gBAExC,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;oBAClD,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;iBACnC;aACF;YAED,OAAO,GAAG,CAAA;YAEZ,eAAe;SACd;aAAM;YACL,OAAO,GAAG,CAAA;SACX;IACH,CAAC,CAAA;IAED,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC;AAlCD,gDAkCC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAClC,GAAwB,EACxB,UAAkB,EAAE;IAEpB,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,EAAE;QAC1B,IAAI,GAAG,KAAK,IAAI,EAAE;YAChB,OAAO,IAAI,CAAA;SACZ;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;SAC5B;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,MAAM,GAAG,GAAG,EAAE,CAAA;YACd,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE;gBACnB,IAAI,GAAG,IAAI,OAAO,EAAE;oBAClB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;oBAC3B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;wBAClD,GAAG,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;qBACpC;iBACF;qBAAM;oBACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;iBACjC;aACF;YACD,OAAO,GAAG,CAAA;SACX;aAAM;YACL,OAAO,GAAG,CAAA;SACX;IACH,CAAC,CAAA;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAA;AACzB,CAAC;AA3BD,oDA2BC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CACxC,MAAoB,EACpB,IAAiD;IAEjD,eAAe;IACf,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;QACrE,oEAAoE;QACpE,uBAAuB;QACvB,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ,EAAE;YACnD,OAAO,MAAM,CAAA;SACd;aAAM;YACL,OAAO,QAAQ,CAAA;SAChB;KACF;IAED,cAAc;IACd,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,IAAI,MAAM,EAAE;QAChD,OAAO,MAAM,CAAA;KACd;IAED,aAAa;IACb,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC9B,OAAO,MAAM,CAAA;KACd;IAED,0BAA0B;IAC1B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;QACnC,iDAAiD;QACjD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE;YACrC;;;eAGG;YACH,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE;gBAC1D,OAAO,QAAQ,CAAA;gBAEf,WAAW;aACZ;iBAAM,IACL,MAAM,CAAC,IAAI,KAAK,QAAQ;gBACxB,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM;oBACvB,mBAAmB;oBACnB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;wBACpC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACpD;gBACA,OAAO,IAAI,CAAA;aACZ;SACF;QAED,OAAO,MAAM,CAAC,IAAI,CAAA;KACnB;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AApDD,gEAoDC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACtB,KAAe;IAKf,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;QACrB,OAAO;YACL,QAAQ,EAAE,GAAG;YACb,YAAY,EAAE,KAAK;SACpB,CAAA;KACF;IAED,IAAI,kBAAkB,GAAa,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEtD,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,MAAK;SACN;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE;gBACjC,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,EAAE;oBAC/C,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;iBACpD;aACF;iBAAM;gBACL,MAAK;aACN;SACF;KACF;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAC3D,CAAA;IAED,IAAI,QAAQ,GACV,kBAAkB,CAAC,MAAM,KAAK,CAAC;QAC/B,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/D,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,OAAO;QACL,QAAQ;QACR,YAAY;KACb,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAI;IACrB,OAAO,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,eAAe,CAAC,IAAI,EAAE,QAAQ;IACrC,OAAO,KAAK,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAA;AACvD,CAAC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,IAAY;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpB,IACE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAChE;gBACA,OAAO,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;aACnD;iBAAM;gBACL,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;aAC/B;SACF;aAAM;YACL,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAlBD,8DAkBC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAClC,SAA0B,EAC1B,GAAS;IAET,IAAI,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ,EAAE;QAC7C,IAAI,iBAAiB,GACnB,SAAS,CAAC,WAAW,CAAA;QAEvB,yCAAyC;QACzC,IAAI,OAAQ,iBAAqC,CAAC,IAAI,KAAK,QAAQ,EAAE;YACnE,iBAAiB,GAAG,UAAU,CAC3B,iBAAqC,CAAC,IAAI,EAC3C,GAAG,CACiB,CAAA;SACvB;aAAM;YACL,iBAAiB,GAAG,iBAAsC,CAAA;SAC3D;QAED,IAAI,OAAO,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;YACjD,MAAM,OAAO,GAAqB,iBAAiB,CAAC,OAAO,CAAA;YAE3D,+BAA+B;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;gBACrD,OAAO;oBACL,kBAAkB,EAAE,kBAAkB;oBACtC,iBAAiB;iBAClB,CAAA;aACF;iBAAM,IACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC,EAClE;gBACA,OAAO;oBACL,kBAAkB,EAAE,mCAAmC;oBACvD,iBAAiB;iBAClB,CAAA;aACF;iBAAM;gBACL,mCAAmC;gBACnC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEjD,OAAO;oBACL,kBAAkB,EAAE,iBAAiB;oBACrC,iBAAiB;iBAClB,CAAA;aACF;SACF;KACF;IACD,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;AAC9D,CAAC;AA9CD,oDA8CC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CACtC,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS;IAET,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACpE,SAAS,EACT,GAAG,CACJ,CAAA;IAED,IAAI,kBAAkB,EAAE;QACtB,IAAI,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAA;QAExE,2CAA2C;QAC3C,IAAI,OAAe,CAAA;QACnB,IAAI,MAAM,IAAI,aAAa,EAAE;YAC3B,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAChD,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;SACvD;QAED,IAAI,kBAAkB,GAAQ;YAC5B,OAAO;YACP,UAAU,EAAG,aAA8B,CAAC,KAAK;YACjD,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC1C,CAAA;QAED,yCAAyC;QACzC,MAAM,eAAe,GACnB,OAAO,iBAAiB,CAAC,QAAQ,KAAK,SAAS;YAC7C,CAAC,CAAC,iBAAiB,CAAC,QAAQ;YAC5B,CAAC,CAAC,KAAK,CAAA;QAEX;;;;;;WAMG;QACH,IACE,kBAAkB,KAAK,kBAAkB;YACzC,kBAAkB,KAAK,mCAAmC,EAC1D;YACA,MAAM,mBAAmB,GAAG,YAAY,CACtC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBAClD,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;YAChC,CAAC,CAAC,CACH,CAAA;YAED,kBAAkB,GAAG;gBACnB,QAAQ,EAAE,mBAAmB;aAC9B,CAAA;YAED,IAAI,WAAW,GAAG,8CAA8C,kBAAkB,GAAG,CAAA;YAErF,IACE,aAAa,IAAI,aAAa;gBAC9B,OAAO,aAAa,CAAC,WAAW,KAAK,QAAQ,EAC7C;gBACA,WAAW,IAAI,wCAAwC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAA;aACvF;YAED,aAAa,GAAG;gBACd,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,QAAQ;aACf,CAAA;SACF;QAED,OAAO;YACL,kBAAkB;YAClB,aAAa;YACb,kBAAkB;YAClB,eAAe;SAChB,CAAA;KACF;IACD,OAAO;QACL,eAAe,EAAE,KAAK;KACvB,CAAA;AACH,CAAC;AA/ED,4DA+EC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,SAA0B,EAC1B,UAAkB,EAClB,GAAS;IAET,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,SAAS,GAAoB,SAAS,CAAC,SAAS,CAAA;QACtD,IAAI,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE;YAC7C,IAAI,cAAc,GAChB,SAAS,CAAC,UAAU,CAAC,CAAA;YAEvB,sCAAsC;YACtC,IAAI,OAAQ,cAAkC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChE,cAAc,GAAG,UAAU,CACxB,cAAkC,CAAC,IAAI,EACxC,GAAG,CACc,CAAA;aACpB;iBAAM;gBACL,cAAc,GAAG,cAAgC,CAAA;aAClD;YAED,IACE,cAAc,CAAC,OAAO;gBACtB,OAAO,cAAc,CAAC,OAAO,KAAK,WAAW,EAC7C;gBACA,MAAM,OAAO,GAAqB,cAAc,CAAC,OAAO,CAAA;gBAExD,+BAA+B;gBAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBACrD,OAAO;wBACL,mBAAmB,EAAE,kBAAkB;wBACvC,cAAc;qBACf,CAAA;iBACF;qBAAM;oBACL,mCAAmC;oBACnC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;oBAEjD,OAAO;wBACL,mBAAmB,EAAE,iBAAiB;wBACtC,cAAc;qBACf,CAAA;iBACF;aACF;SACF;KACF;IACD,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAA;AAC5D,CAAC;AA9CD,8CA8CC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CACvC,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS,EACT,IAAiD,EACjD,OAAkD;IAElD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5E,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,EAAE,CAAA;KACV;IACD,IAAI,EAAE,mBAAmB,EAAE,cAAc,EAAE,GAAG,iBAAiB,CAC7D,SAAS,EACT,UAAU,EACV,GAAG,CACJ,CAAA;IAED,IAAI,mBAAmB,EAAE;QACvB,IAAI,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAA;QACvE,IAAI,OAAe,CAAA;QACnB,IAAI,MAAM,IAAI,cAAc,EAAE;YAC5B,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YACjD,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;SACzD;QAED,MAAM,mBAAmB,GAAG;YAC1B,OAAO;YACP,UAAU,EAAG,cAA+B,CAAC,KAAK;YAClD,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC1C,CAAA;QAED;;;WAGG;QACH,IAAI,mBAAmB,KAAK,kBAAkB,EAAE;YAC9C,IAAI,WAAW,GACb,4DAA4D,CAAA;YAE9D,IACE,aAAa,IAAI,cAAc;gBAC/B,OAAO,cAAc,CAAC,aAAa,CAAC,KAAK,QAAQ,EACjD;gBACA,WAAW,IAAI,wCAAwC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAA;aACxF;YAED,cAAc,GAAG;gBACf,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,QAAQ;aACf,CAAA;SACF;QAED,OAAO;YACL,mBAAmB;YACnB,cAAc;YACd,mBAAmB;YACnB,UAAU;SACX,CAAA;KACF;SAAM;QACL;;;;;;WAMG;QACH,IAAI,OAAO,CAAC,kBAAkB,EAAE;YAC9B,OAAO;gBACL,mBAAmB,EAAE;oBACnB,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;iBAC1C;gBACD,mBAAmB,EAAE,kBAAkB;gBACvC,cAAc,EAAE;oBACd,WAAW,EACT,2DAA2D;oBAC7D,IAAI,EAAE,QAAQ;iBACf;aACF,CAAA;SACF;QAED,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAnFD,8DAmFC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CACnC,IAAY,EACZ,MAAc,EACd,SAA0B,EAC1B,GAAS,EACT,IAAiD;IAEjD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACzC,OAAO,yBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;SACvB;aAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,kBAAkB;gBAClD,OAAO,EACL,cAAc,qBAAqB,CACjC,MAAM,EACN,IAAI,EACJ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,IAAI;oBACL,wDAAwD;oBACxD,qDAAqD;gBACvD,kBAAkB,EAChB,yCAAyC;oBACzC,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB;gBACvC,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;SACvB;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAnCD,sDAmCC;AAED;;GAEG;AACH,SAAgB,QAAQ,CACtB,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS,EACT,IAAiD;IAEjD,MAAM,KAAK,GAAG,EAAE,CAAA;IAChB,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5E,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,KAAK,CAAA;KACb;IACD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,SAAS,GAAoB,SAAS,CAAC,SAAS,CAAA;QACtD,IAAI,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE;YAC7C,IAAI,QAAQ,GAAqC,SAAS,CAAC,UAAU,CAAC,CAAA;YAEtE,IAAI,OAAQ,QAA4B,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1D,QAAQ,GAAG,UAAU,CAClB,QAA4B,CAAC,IAAI,EAClC,GAAG,CACc,CAAA;aACpB;YAED,oDAAoD;YACpD,QAAQ,GAAG,QAA0B,CAAA;YAErC,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACtC,MAAM,OAAO,GAAgB,QAAQ,CAAC,KAAK,CAAA;gBAC3C,KAAK,IAAI,OAAO,IAAI,OAAO,EAAE;oBAC3B,IAAI,IAAI,GAAiC,OAAO,CAAC,OAAO,CAAC,CAAA;oBAEzD,iCAAiC;oBACjC,IAAI,OAAQ,IAAwB,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACtD,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;qBACrC;yBAAM;wBACL,IAAI,GAAG,IAAkB,CAAA;qBAC1B;oBACD,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;iBACtB;aACF;SACF;KACF;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AA5CD,4BA4CC;AAED;;GAEG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,QAAwB,EACxB,GAAS;IAET,IAAI,UAAU,GAAG,EAAE,CAAA;IAEnB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;QACzB,cAAc,CACZ,4CAA4C,MAAM,IAAI,IAAI,IAAI;YAC5D,4BAA4B,CAC/B,CAAA;QACD,OAAO,UAAU,CAAA;KAClB;IAED,kDAAkD;IAClD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC7B,MAAM,kBAAkB,GAAsB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjE,IAAI,OAAQ,CAAqB,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnD,2CAA2C;gBAC3C,OAAO,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAoB,CAAA;aACrD;iBAAM;gBACL,2CAA2C;gBAC3C,OAAO,CAAoB,CAAA;aAC5B;QACH,CAAC,CAAC,CAAA;QACF,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;KACnD;IAED,mDAAmD;IACnD,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAA;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;QACrC,MAAM,mBAAmB,GAAsB,kBAAkB,CAAC,GAAG,CACnE,CAAC,CAAC,EAAE,EAAE;YACJ,IAAI,OAAQ,CAAqB,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnD,2CAA2C;gBAC3C,OAAO,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAoB,CAAA;aACrD;iBAAM;gBACL,2CAA2C;gBAC3C,OAAO,CAAoB,CAAA;aAC5B;QACH,CAAC,CACF,CAAA;QACD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;KACpD;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAlDD,sCAkDC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CACxB,SAA0B,EAC1B,QAAwB,EACxB,GAAS;IAET,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,6BAA6B;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACxD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;KACtB;IAED,8CAA8C;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QAClE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;KAC3B;IAED,oDAAoD;IACpD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;KAC5B;IAED,uCAAuC;IACvC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACxB,IAAI,MAAM,GAAiB;YACzB,GAAG,EAAE,GAAG,CAAC,6BAA6B;SACvC,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;KACrB;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AA9BD,gCA8BC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,GAAS;IAET,gCAAgC;IAChC,MAAM,eAAe,GAAkD,EAAE,CAAA;IACzE,IACE,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;QAClC,OAAO,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,QAAQ,EAClD;QACA,KAAK,IAAI,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,eAAe,EAAE;YACpD,MAAM,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;YAEhE,8CAA8C;YAC9C,IAAI,OAAQ,cAAkC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChE,qDAAqD;gBACrD,eAAe,CAAC,SAAS,CAAC,GAAG,UAAU,CACpC,cAAkC,CAAC,IAAI,EACxC,GAAG,CACoB,CAAA;aAC1B;iBAAM;gBACL,0CAA0C;gBAC1C,eAAe,CAAC,SAAS,CAAC,GAAG,cAAsC,CAAA;aACpE;SACF;KACF;IACD,OAAO,eAAe,CAAA;AACxB,CAAC;AA1BD,gDA0BC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CACrC,SAA0B,EAC1B,eAA2D,EAC3D,GAAS;IAET,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,sCAAsC;IACtC,MAAM,cAAc,GAAgC,GAAG,CAAC,QAAQ,CAAA;IAChE,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;QAC3D,KAAK,IAAI,MAAM,IAAI,cAAc,EAAE;YACjC,KAAK,IAAI,SAAS,IAAI,MAAM,EAAE;gBAC5B,IACE,eAAe,CAAC,SAAS,CAAC;oBAC1B,OAAO,eAAe,CAAC,SAAS,CAAC,KAAK,QAAQ;oBAC9C,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,EAChD;oBACA,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBACxB;aACF;SACF;KACF;IAED,0CAA0C;IAC1C,MAAM,aAAa,GAAgC,SAAS,CAAC,QAAQ,CAAA;IACrE,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE;QACzD,KAAK,IAAI,MAAM,IAAI,aAAa,EAAE;YAChC,KAAK,IAAI,SAAS,IAAI,MAAM,EAAE;gBAC5B,IACE,eAAe,CAAC,SAAS,CAAC;oBAC1B,OAAO,eAAe,CAAC,SAAS,CAAC,KAAK,QAAQ;oBAC9C,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,EAChD;oBACA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;wBAChC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;qBACxB;iBACF;aACF;SACF;KACF;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAzCD,0DAyCC;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,6CAAM,CAAA;IACN,qDAAU,CAAA;IACV,mDAAS,CAAA;IACT,iDAAQ,CAAA,CAAC,uBAAuB;AAClC,CAAC,EALW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAKpB;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,GAAW,EAAE,SAAoB;IACxD;;;OAGG;IACH,IAAI,SAAS,KAAK,SAAS,CAAC,MAAM,EAAE;QAClC,IAAI,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;QAElD,kEAAkE;QAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE;YAChD,SAAS,GAAG,GAAG,GAAG,SAAS,CAAA;SAC5B;QAED,OAAO,SAAS,CAAA;KACjB;IAED;;OAEG;IACH,MAAM,KAAK,GACT,SAAS,KAAK,SAAS,CAAC,QAAQ;QAC9B,CAAC,CAAC,gBAAgB,CAAC,2BAA2B;QAC9C,CAAC,CAAC,eAAe,CAAA;IACrB,IAAI,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QACrD,IAAI,SAAS,KAAK,SAAS,CAAC,QAAQ,EAAE;YACpC,OAAO,IAAI,GAAG,GAAG,GAAG,IAAI,CAAA;SACzB;aAAM;YACL,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;SAC/B;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,SAAS,EAAE;QACjB,KAAK,SAAS,CAAC,UAAU;YACvB,wDAAwD;YACxD,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;YACjC,MAAK;QAEP,KAAK,SAAS,CAAC,SAAS;YACtB,uDAAuD;YACvD,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;YACnC,MAAK;QAEP,KAAK,SAAS,CAAC,QAAQ;YACrB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;YACnC,MAAK;KACR;IAED,kEAAkE;IAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE;QAChD,SAAS,GAAG,GAAG,GAAG,SAAS,CAAA;KAC5B;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AArDD,4BAqDC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,OAAe,EACf,GAAW,EACX,OAAkC;IAElC,IAAI,OAAO,IAAI,OAAO,IAAI,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE;QAClD,6BAA6B;QAC7B,cAAc,CACZ,aAAa,GAAG,UAAU,OAAO,CAAC,OAAO,CAAC,kBAAkB;YAC1D,OAAO,OAAO,0CAA0C,GAAG,IAAI,CAClE,CAAA;KACF;IACD,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,CAAA;IAEtB,OAAO,OAAO,CAAA;AAChB,CAAC;AAfD,sCAeC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,GAAW,EAAE,MAAc;IAC9C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;KAC1B;IAED,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE;QAC9B,GAAG,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAA;KACvC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAVD,oBAUC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,MAAc;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;AACjE,CAAC;AAFD,oCAEC;AAED;;;;;GAKG;AACH,SAAgB,qBAAqB,CACnC,MAAc,EACd,IAAY,EACZ,KAAc;IAEd,IAAI,KAAK,EAAE;QACT,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAA;KAClD;SAAM;QACL,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAA;KACzC;AACH,CAAC;AAVD,sDAUC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC;AAFD,oCAEC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,MAAoB,EACpB,IAAY;IAEZ,OAAO,QAAQ,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;AAC3D,CAAC;AALD,kDAKC"} \ No newline at end of file +{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/preprocessor.d.ts b/packages/openapi-to-graphql/lib/preprocessor.d.ts index 120df3de..892a8eb2 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.d.ts +++ b/packages/openapi-to-graphql/lib/preprocessor.d.ts @@ -1,8 +1,8 @@ -import { Oas3, LinkObject, SchemaObject } from './types/oas3'; -import { InternalOptions } from './types/options'; +import * as Oas3Tools from './oas_3_tools'; +import { LinkObject, Oas3, SchemaObject } from './types/oas3'; import { DataDefinition } from './types/operation'; +import { InternalOptions } from './types/options'; import { PreprocessingData } from './types/preprocessing_data'; -import * as Oas3Tools from './oas_3_tools'; /** * Extract information from the OAS and put it inside a data structure that * is easier for OpenAPI-to-GraphQL to use diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index 7626deaf..63dbad88 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -5,13 +5,14 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.createDataDef = exports.preprocessOas = void 0; +// Type imports: +const debug_1 = require("debug"); +const deepEqual = require("deep-equal"); // Imports: const Oas3Tools = require("./oas_3_tools"); -const deepEqual = require("deep-equal"); -const debug_1 = require("debug"); -const utils_1 = require("./utils"); -const graphql_1 = require("./types/graphql"); const oas_3_tools_1 = require("./oas_3_tools"); +const graphql_1 = require("./types/graphql"); +const utils_1 = require("./utils"); const preprocessingLog = debug_1.default('preprocessing'); /** * Given an operation object from the OAS, create an Operation, which contains @@ -603,12 +604,16 @@ function createDataDef(names, schema, isInputObjectType, data, oas, links) { // Or if it is an object type, create references to all of the field types let itemsSchema = collapsedSchema.items; let itemsName = `${name}ListItem`; + const fromExtension = collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; if ('$ref' in itemsSchema) { itemsName = collapsedSchema.items['$ref'].split('/').pop(); } const subDefinition = createDataDef( // Is this the correct classification for this name? It does not matter in the long run. - { fromRef: itemsName }, itemsSchema, isInputObjectType, data, oas); + { + fromExtension, + fromRef: itemsName + }, itemsSchema, isInputObjectType, data, oas); // Add list item reference def.subDefinitions = subDefinition; } @@ -704,8 +709,14 @@ function getSchemaName(names, usedNames) { throw new Error(`Cannot create data definition without name(s), excluding the preferred name.`); } let schemaName; + if (typeof names.fromExtension === 'string') { + const saneName = Oas3Tools.sanitize(names.fromExtension, Oas3Tools.CaseStyle.PascalCase); + if (!usedNames.includes(saneName)) { + schemaName = names.fromExtension; + } + } // CASE: name from reference - if (typeof names.fromRef === 'string') { + if (!schemaName && typeof names.fromRef === 'string') { const saneName = Oas3Tools.sanitize(names.fromRef, Oas3Tools.CaseStyle.PascalCase); if (!usedNames.includes(saneName)) { schemaName = names.fromRef; @@ -727,13 +738,15 @@ function getSchemaName(names, usedNames) { } // CASE: all names are already used - create approximate name if (!schemaName) { - schemaName = Oas3Tools.sanitize(typeof names.fromRef === 'string' - ? names.fromRef - : typeof names.fromSchema === 'string' - ? names.fromSchema - : typeof names.fromPath === 'string' - ? names.fromPath - : 'PlaceholderName', Oas3Tools.CaseStyle.PascalCase); + schemaName = Oas3Tools.sanitize(typeof names.fromExtension === 'string' + ? names.fromExtension + : typeof names.fromRef === 'string' + ? names.fromRef + : typeof names.fromSchema === 'string' + ? names.fromSchema + : typeof names.fromPath === 'string' + ? names.fromPath + : 'PlaceholderName', Oas3Tools.CaseStyle.PascalCase); } if (usedNames.includes(schemaName)) { let appendix = 2; @@ -766,12 +779,14 @@ function addObjectPropertiesToDataDef(def, schema, required, isInputObjectType, for (let propertyKey in schema.properties) { let propSchemaName = propertyKey; let propSchema = schema.properties[propertyKey]; + const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; if ('$ref' in propSchema) { propSchemaName = propSchema['$ref'].split('/').pop(); propSchema = Oas3Tools.resolveRef(propSchema['$ref'], oas); } if (!(propertyKey in def.subDefinitions)) { const subDefinition = createDataDef({ + fromExtension, fromRef: propSchemaName, fromSchema: propSchema.title // TODO: Currently not utilized because of fromRef but arguably, propertyKey is a better field name and title is a better type name }, propSchema, isInputObjectType, data, oas); @@ -1009,7 +1024,9 @@ function createDataDefFromAnyOf(saneName, saneInputName, collapsedSchema, isInpu if (!incompatibleProperties.has(propertyName)) { // Dereferenced by processing anyOfData const propertySchema = properties[propertyName]; + const fromExtension = propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; const subDefinition = createDataDef({ + fromExtension, fromRef: propertyName, fromSchema: propertySchema.title // TODO: Currently not utilized because of fromRef but arguably, propertyKey is a better field name and title is a better type name }, propertySchema, isInputObjectType, data, oas); @@ -1102,7 +1119,9 @@ function createDataDefFromOneOf(saneName, saneInputName, collapsedSchema, isInpu // Member types of GraphQL unions must be object types if (Oas3Tools.getSchemaTargetGraphQLType(memberSchema, data) === 'object') { + const fromExtension = memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; const subDefinition = createDataDef({ + fromExtension, fromRef, fromSchema: memberSchema.title, fromPath: `${saneName}Member` diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index 5204725c..34619e44 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/resolver_builder.d.ts b/packages/openapi-to-graphql/lib/resolver_builder.d.ts index e9f320cd..efa071cd 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.d.ts +++ b/packages/openapi-to-graphql/lib/resolver_builder.d.ts @@ -1,15 +1,11 @@ /// -/** - * Functions to create resolve functions. - */ +import { GraphQLFieldResolver } from 'graphql'; +import { IncomingHttpHeaders } from 'http'; +import { SubscriptionContext } from './types/graphql'; import { ParameterObject } from './types/oas3'; -import { ConnectOptions } from './types/options'; import { Operation } from './types/operation'; -import { SubscriptionContext } from './types/graphql'; +import { ConnectOptions, RequestOptions } from './types/options'; import { PreprocessingData } from './types/preprocessing_data'; -import { RequestOptions } from './types/options'; -import { GraphQLFieldResolver } from 'graphql'; -import { IncomingHttpHeaders } from 'http'; export declare const OPENAPI_TO_GRAPHQL = "_openAPIToGraphQL"; declare type GetResolverParams = { operation: Operation; diff --git a/packages/openapi-to-graphql/lib/resolver_builder.js b/packages/openapi-to-graphql/lib/resolver_builder.js index d1ecaf90..28d308ea 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.js +++ b/packages/openapi-to-graphql/lib/resolver_builder.js @@ -5,15 +5,19 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.extractRequestDataFromArgs = exports.getResolver = exports.getPublishResolver = exports.getSubscribe = exports.OPENAPI_TO_GRAPHQL = void 0; -const NodeRequest = require("request"); -// Imports: -const Oas3Tools = require("./oas_3_tools"); -const querystring = require("querystring"); -const JSONPath = require("jsonpath-plus"); +/** + * Functions to create resolve functions. + */ +// Type imports: const debug_1 = require("debug"); -const graphql_1 = require("graphql"); const form_urlencoded_1 = require("form-urlencoded"); +const graphql_1 = require("graphql"); const graphql_subscriptions_1 = require("graphql-subscriptions"); +const JSONPath = require("jsonpath-plus"); +const querystring = require("querystring"); +const NodeRequest = require("request"); +// Imports: +const Oas3Tools = require("./oas_3_tools"); const pubsub = new graphql_subscriptions_1.PubSub(); const translationLog = debug_1.debug('translation'); const httpLog = debug_1.debug('http'); @@ -240,12 +244,10 @@ function getResolver({ operation, argsFromLink = {}, payloadName, data, baseUrl, param.schema && typeof param.schema === 'object') { let schema = param.schema; - if (schema && schema.$ref && typeof schema.$ref === 'string') { + if ('$ref' in schema) { schema = Oas3Tools.resolveRef(schema.$ref, operation.oas); } - if (schema && - schema.default && - typeof schema.default !== 'undefined') { + if (schema && schema.default && typeof schema.default !== 'undefined') { args[saneParamName] = schema.default; } } diff --git a/packages/openapi-to-graphql/lib/resolver_builder.js.map b/packages/openapi-to-graphql/lib/resolver_builder.js.map index 65a27499..e682df3f 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.js.map +++ b/packages/openapi-to-graphql/lib/resolver_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAYhE,uCAAsC;AAGtC,WAAW;AACX,2CAA0C;AAC1C,2CAA0C;AAC1C,0CAAyC;AACzC,iCAA6B;AAC7B,qCAA4D;AAC5D,qDAA4C;AAC5C,iEAA8C;AAG9C,MAAM,MAAM,GAAG,IAAI,8BAAM,EAAE,CAAA;AAE3B,MAAM,cAAc,GAAG,aAAK,CAAC,aAAa,CAAC,CAAA;AAC3C,MAAM,OAAO,GAAG,aAAK,CAAC,MAAM,CAAC,CAAA;AAC7B,MAAM,SAAS,GAAG,aAAK,CAAC,QAAQ,CAAC,CAAA;AAEjC,6CAA6C;AAC7C,MAAM,kBAAkB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;AAEpD,QAAA,kBAAkB,GAAG,mBAAmB,CAAA;AAmErD;;;;GAIG;AACH,SAAgB,YAAY,CAA2B,EACrD,SAAS,EACT,WAAW,EACX,IAAI,EACJ,OAAO,EACP,cAAc,EAC+B;IAK7C,iCAAiC;IACjC,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;QAClC,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;KAC1C;IAED,0CAA0C;IAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAA;IAChE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;IACtC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;IAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,IACE,OAAO,eAAe,KAAK,QAAQ;QACnC,OAAO,eAAe,CAAC,KAAK,CAAC,KAAK,QAAQ;QAC1C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;QAChD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;QACxD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,KAAK,UAAU,EACpE;QACA,cAAc,CACZ,mCAAmC,SAAS,CAAC,eAAe,EAAE,CAC/D,CAAA;QAED,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAA;KACtD;IAED,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACnC;;;;;WAKG;QACH,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAClC,WAAW,EACX,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CAAA;QAED,IAAI,WAAW,GAAQ,EAAE,CAAA;QAEzB,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YAClD,iFAAiF;YACjF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB;gBACxD,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAElE,IAAI,eAAe,IAAI,IAAI,EAAE;gBAC3B,IAAI,OAAO,IAAI,CAAC,eAAe,CAAC,KAAK,QAAQ,EAAE;oBAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,oBAAoB,CAC/C,IAAI,CAAC,eAAe,CAAC,EACrB,IAAI,CAAC,OAAO,CACb,CAAA;oBACD,WAAW,CAAC,WAAW,GAAG,UAAU,CAAA;iBACrC;qBAAM;oBACL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAA;oBACpD,WAAW,CAAC,WAAW,GAAG,UAAU,CAAA;iBACrC;aACF;SACF;QAED,IAAI,cAAc,EAAE;YAClB,WAAW,CAAC,kBAAkB,GAAG,cAAc,CAAA;SAChD;aAAM;YACL,WAAW,CAAC,kBAAkB,GAAG;gBAC/B,MAAM,EAAE,WAAW,CAAC,WAAW,CAAC,MAAM;oBACpC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM;oBAChC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE;aACzB,CAAA;SACF;QAED,SAAS,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QAE5E,IAAI,KAAK,GAAG,IAAI,CAAA;QAChB,IAAI,wBAAwB,GAAG,SAAS,CAAA;QACxC,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YACjC,wBAAwB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;SACnD;QAED,yDAAyD;QACzD,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;YAC9B,IAAI,CAAC,wBAAwB,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC;gBACzD,CAAC,CAAC,wBAAwB,CAAC,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC;gBACrE,CAAC,CAAC,KAAK,CAAA;SACV;aAAM;YACL,sDAAsD;YACtD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;YAC1C,SAAS,CAAC,gCAAgC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YAEhE,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC3B,KAAK,GAAG,KAAK,CAAC,OAAO,CACnB,OAAO,EACP,wBAAwB,CACtB,SAAS,EACT,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EACxC,WAAW,EACX,IAAI,EACJ,IAAI,CACL,CACF,CAAA;YACH,CAAC,CAAC,CAAA;YACF,IAAI,CAAC,wBAAwB,CAAC,GAAG,KAAK,CAAA;SACvC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,wBAAwB,CAAC,IAAI,MAAM,CAAA;QACtD,SAAS,CAAC,mBAAmB,KAAK,EAAE,CAAC,CAAA;QACrC,OAAO,OAAO,CAAC,MAAM;YACnB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;YACrC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAA;IACjC,CAAC,CAAA;AACH,CAAC;AAvHD,oCAuHC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAA2B,EAC3D,SAAS,EACT,YAAY,EACZ,IAAI,EACwC;IAK5C,0CAA0C;IAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAA;IAChE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;IACtC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;IAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,IACE,OAAO,eAAe,KAAK,QAAQ;QACnC,OAAO,eAAe,CAAC,KAAK,CAAC,KAAK,QAAQ;QAC1C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;QAChD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;QACxD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,KAAK,UAAU,EAClE;QACA,cAAc,CACZ,mCAAmC,SAAS,CAAC,eAAe,EAAE,CAC/D,CAAA;QAED,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,CAAA;KACpD;IAED,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACtC,4DAA4D;QAC5D,MAAM,cAAc,GAAG,SAAS,CAAC,kBAAkB,CAAC,iBAAiB,CAAA;QACrE,SAAS,CACP,qBAAqB,YAAY,KAAK,cAAc,KAAK,IAAI,CAAC,SAAS,CACrE,OAAO,CACR,EAAE,CACJ,CAAA;QAED,IAAI,YAAY,CAAA;QAChB,IAAI,QAAQ,CAAA;QAEZ,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,IAAI,cAAc,KAAK,QAAQ,EAAE;gBAC/B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;oBAC5B,IAAI;wBACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;qBAC9C;oBAAC,OAAO,CAAC,EAAE;wBACV,MAAM,WAAW,GACf,2BAA2B;4BAC3B,aAAa,SAAS,CAAC,eAAe,GAAG;4BACzC,oDAAoD,CAAA;wBAEtD,SAAS,CAAC,WAAW,CAAC,CAAA;wBACtB,OAAO,IAAI,CAAA;qBACZ;iBACF;qBAAM;oBACL,YAAY,GAAG,OAAO,CAAA;iBACvB;gBACD,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;aACjD;iBAAM,IACL,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;gBACpD,cAAc,KAAK,QAAQ,EAC3B;gBACA,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAA;aAC9B;SACF;aAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YACtC,IAAI,cAAc,KAAK,QAAQ,EAAE;gBAC/B,IAAI;oBACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBAClC,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAA;iBACtD;gBAAC,OAAO,CAAC,EAAE;oBACV,MAAM,WAAW,GACf,2BAA2B;wBAC3B,aAAa,SAAS,CAAC,eAAe,GAAG;wBACzC,oDAAoD,CAAA;oBAEtD,SAAS,CAAC,WAAW,CAAC,CAAA;oBACtB,OAAO,IAAI,CAAA;iBACZ;aACF;iBAAM,IAAI,cAAc,KAAK,QAAQ,EAAE;gBACtC,QAAQ,GAAG,OAAO,CAAA;aACnB;SACF;QAED,SAAS,CACP,sBAAsB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CACtE,CAAA;QACD,OAAO,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAA;IACtC,CAAC,CAAA;AACH,CAAC;AAzFD,gDAyFC;AAED;;;GAGG;AACH,SAAgB,WAAW,CAA2B,EACpD,SAAS,EACT,YAAY,GAAG,EAAE,EACjB,WAAW,EACX,IAAI,EACJ,OAAO,EACP,cAAc,EAC8B;IAK5C,iCAAiC;IACjC,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;QAClC,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;KAC1C;IAED,0CAA0C;IAC1C,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAA;IACpD,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;IACtC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAA;IAC3B,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;IAE/B,IACE,OAAO,eAAe,KAAK,QAAQ;QACnC,OAAO,eAAe,CAAC,KAAK,CAAC,KAAK,QAAQ;QAC1C,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,QAAQ;QAChD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,UAAU,EAC1D;QACA,cAAc,CAAC,2BAA2B,SAAS,CAAC,eAAe,EAAE,CAAC,CAAA;QAEtE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;KAC5C;IAED,4BAA4B;IAC5B,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACrC;;;;;WAKG;QACH,IAAI,WAAW,GAAmD,EAAE,CAAA;QACpE,IACE,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,OAAO,MAAM,CAAC,0BAAkB,CAAC,KAAK,QAAQ;YAC9C,OAAO,MAAM,CAAC,0BAAkB,CAAC,CAAC,IAAI,KAAK,QAAQ,EACnD;YACA,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;YAClD,IACE,CAAC,CAAC,gBAAgB,CAAC,MAAM,KAAK,CAAC,CAAC;gBAChC,gBAAgB,IAAI,MAAM,CAAC,0BAAkB,CAAC,CAAC,IAAI,EACnD;gBACA;;;;mBAIG;gBACH,WAAW,GAAG,IAAI,CAAC,KAAK,CACtB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,0BAAkB,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAClE,CAAA;aACF;SACF;QAED,IAAI,OAAO,WAAW,CAAC,UAAU,KAAK,WAAW,EAAE;YACjD,WAAW,CAAC,UAAU,GAAG,EAAE,CAAA;SAC5B;QAED;;;WAGG;QACH,SAAS,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACrC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CACtC,KAAK,CAAC,IAAI,EACV,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;YACD,IACE,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,WAAW;gBAC1C,KAAK,CAAC,MAAM;gBACZ,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAChC;gBACA,IAAI,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;gBACzB,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;oBAC5D,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAA;iBAC1D;gBACD,IACE,MAAM;oBACL,MAAuB,CAAC,OAAO;oBAChC,OAAQ,MAAuB,CAAC,OAAO,KAAK,WAAW,EACvD;oBACA,IAAI,CAAC,aAAa,CAAC,GAAI,MAAuB,CAAC,OAAO,CAAA;iBACvD;aACF;QACH,CAAC,CAAC,CAAA;QAEF,qCAAqC;QACrC,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE;YACpC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CACtC,SAAS,EACT,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;gBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;YAED,IAAI,KAAK,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;YAEnC;;;;;;;;eAQG;YACH,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC9B,IAAI,CAAC,aAAa,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC;oBAC9C,CAAC,CAAC,wBAAwB,CACtB,SAAS,EACT,KAAK,EACL,WAAW,EACX,MAAM,EACN,IAAI,CACL;oBACH,CAAC,CAAC,KAAK,CAAA;aACV;iBAAM;gBACL,kDAAkD;gBAClD,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;gBAC5C,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC/B,KAAK,GAAG,KAAK,CAAC,OAAO,CACnB,SAAS,EACT,wBAAwB,CACtB,SAAS,EACT,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,EAC5C,WAAW,EACX,MAAM,EACN,IAAI,CACL,CACF,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,aAAa,CAAC,GAAG,KAAK,CAAA;aAC5B;SACF;QAED,6CAA6C;QAC7C,WAAW,CAAC,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;QAEpE,6CAA6C;QAC7C,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,GAAG,0BAA0B,CACtD,SAAS,CAAC,IAAI,EACd,SAAS,CAAC,UAAU,EACpB,IAAI,EACJ,IAAI,CACL,CAAA;QACD,MAAM,GAAG,GAAG,OAAO,GAAG,IAAI,CAAA;QAE1B;;;;;;WAMG;QACH,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE;YACnD,OAAO,CAAC,cAAc,CAAC;gBACrB,OAAO,SAAS,CAAC,kBAAkB,KAAK,WAAW;oBACjD,CAAC,CAAC,SAAS,CAAC,kBAAkB;oBAC9B,CAAC,CAAC,kBAAkB,CAAA;SACzB;QAED,OAAO,CAAC,QAAQ,CAAC;YACf,OAAO,SAAS,CAAC,mBAAmB,KAAK,WAAW;gBAClD,CAAC,CAAC,SAAS,CAAC,mBAAmB;gBAC/B,CAAC,CAAC,kBAAkB,CAAA;QAExB,IAAI,OAAmC,CAAA;QACvC,IAAI,cAAc,EAAE;YAClB,OAAO,mCACF,cAAc,KACjB,MAAM,EAAE,SAAS,CAAC,MAAM,EACxB,GAAG,CAAC,+FAA+F;eACpG,CAAA;YAED,OAAO,CAAC,OAAO,GAAG,EAAE,CAAA,CAAC,mDAAmD;YACxE,OAAO,CAAC,EAAE,GAAG,EAAE,CAAA,CAAC,+CAA+C;YAE/D,IAAI,cAAc,CAAC,OAAO,EAAE;gBAC1B,+DAA+D;gBAC/D,IAAI,OAAO,cAAc,CAAC,OAAO,KAAK,QAAQ,EAAE;oBAC9C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAA;iBAChE;qBAAM,IAAI,OAAO,cAAc,CAAC,OAAO,KAAK,UAAU,EAAE;oBACvD,MAAM,OAAO,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;wBAC1D,MAAM;wBACN,IAAI;wBACJ,OAAO;wBACP,IAAI;qBACL,CAAC,CAAA;oBAEF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;wBAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;qBACjD;iBACF;aACF;iBAAM;gBACL,OAAO,CAAC,OAAO,GAAG,OAAO,CAAA;aAC1B;YAED,IAAI,cAAc,CAAC,EAAE,EAAE;gBACrB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,CAAC,EAAE,CAAC,CAAA;aACjD;iBAAM;gBACL,OAAO,CAAC,EAAE,GAAG,EAAE,CAAA;aAChB;SACF;aAAM;YACL,OAAO,GAAG;gBACR,MAAM,EAAE,SAAS,CAAC,MAAM;gBACxB,GAAG;gBACH,OAAO;gBACP,EAAE;aACH,CAAA;SACF;QAED;;;;;WAKG;QACH,WAAW,CAAC,WAAW,GAAG,SAAS,CAAA;QACnC,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,iFAAiF;YACjF,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,qBAAqB;gBACxD,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;YAElE,IAAI,UAAU,CAAA;YACd,IAAI,SAAS,CAAC,kBAAkB,KAAK,kBAAkB,EAAE;gBACvD,UAAU,GAAG,IAAI,CAAC,SAAS,CACzB,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CACpE,CAAA;aACF;iBAAM,IACL,SAAS,CAAC,kBAAkB,KAAK,mCAAmC,EACpE;gBACA,UAAU,GAAG,yBAAc,CACzB,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CACpE,CAAA;aACF;iBAAM;gBACL,2BAA2B;gBAC3B,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,CAAA;aACnC;YACD,OAAO,CAAC,IAAI,GAAG,UAAU,CAAA;YACzB,WAAW,CAAC,WAAW,GAAG,UAAU,CAAA;SACrC;QAED;;WAEG;QACH,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,EAAE;YACpC,WAAW;YACX,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE;gBAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;aACrD;iBAAM,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,UAAU,EAAE;gBACrD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;oBACxD,MAAM;oBACN,IAAI;oBACJ,OAAO;oBACP,IAAI;iBACL,CAAC,CAAA;gBAEF,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;iBACxC;aACF;YAED,gBAAgB;YAChB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ,EAAE;gBACvC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;aAC3C;SACF;QAED,kDAAkD;QAClD,IACE,MAAM;YACN,OAAO,MAAM,KAAK,QAAQ;YAC1B,OAAO,MAAM,CAAC,0BAAkB,CAAC,KAAK,QAAQ,EAC9C;YACA,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,cAAc,CACxD,SAAS,EACT,MAAM,CAAC,0BAAkB,CAAC,EAC1B,IAAI,CACL,CAAA;YAED,kCAAkC;YAClC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;YAEjC,uCAAuC;YACvC,IAAI,UAAU,KAAK,IAAI,EAAE;gBACvB,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBAC3B,CAAC,CAAC,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;gBACpC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAA;aAChB;SACF;QAED,kDAAkD;QAClD,IAAI,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;YACtC,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;SACzC;aAAM;YACL,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACpD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAA;SAC5C;QAED,WAAW,CAAC,kBAAkB,GAAG,OAAO,CAAA;QACxC,WAAW,CAAC,cAAc,GAAG,SAAS,CAAC,UAAU,CAAA;QAEjD,gBAAgB;QAChB,OAAO,CACL,QAAQ,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,IAClC,OAAO,CAAC,GACV,IAAI,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI;YACvC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI;YAC/C,iBAAiB,OAAO,CAAC,IAAI,EAAE,CAClC,CAAA;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,WAAW,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;gBAC3C,IAAI,GAAG,EAAE;oBACP,OAAO,CAAC,GAAG,CAAC,CAAA;oBACZ,MAAM,CAAC,GAAG,CAAC,CAAA;iBACZ;qBAAM,IAAI,QAAQ,CAAC,UAAU,GAAG,GAAG,IAAI,QAAQ,CAAC,UAAU,GAAG,GAAG,EAAE;oBACjE,OAAO,CAAC,GAAG,QAAQ,CAAC,UAAU,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;oBAEhE,MAAM,WAAW,GAAG,8BAA8B,SAAS,CAAC,eAAe,EAAE,CAAA;oBAE7E,IAAI,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE;wBACvC,IAAI,YAAY,CAAA;wBAChB,IAAI;4BACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;yBAChC;wBAAC,OAAO,CAAC,EAAE;4BACV,YAAY,GAAG,IAAI,CAAA;yBACpB;wBAED,MAAM,UAAU,GAAG;4BACjB,MAAM,EAAE,SAAS,CAAC,MAAM;4BACxB,IAAI,EAAE,SAAS,CAAC,IAAI;4BAEpB,UAAU,EAAE,QAAQ,CAAC,UAAU;4BAC/B,eAAe,EAAE,QAAQ,CAAC,OAAO;4BACjC,YAAY;yBACb,CAAA;wBACD,MAAM,CAAC,0BAA0B,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAA;qBAC5D;yBAAM;wBACL,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAA;qBAC/B;oBAED,mCAAmC;iBACpC;qBAAM;oBACL,OAAO,CAAC,GAAG,QAAQ,CAAC,UAAU,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAA;oBAEhE,IAAI,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE;wBACpC;;;;;;;2BAOG;wBACH,IACE,CAAC,CACC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,QAAQ,CACvC,SAAS,CAAC,mBAAmB,CAC9B;4BACD,SAAS,CAAC,mBAAmB,CAAC,QAAQ,CACpC,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CACjC,CACF,EACD;4BACA,MAAM,WAAW,GACf,YAAY;gCACZ,GAAG,SAAS,CAAC,eAAe,GAAG;gCAC/B,+BAA+B,SAAS,CAAC,mBAAmB,IAAI;gCAChE,YAAY,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,WAAW,CAAA;4BAEzD,OAAO,CAAC,WAAW,CAAC,CAAA;4BACpB,MAAM,CAAC,WAAW,CAAC,CAAA;yBACpB;6BAAM;4BACL;;;;;+BAKG;4BACH,IACE,QAAQ,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAC7D;gCACA,IAAI,YAAY,CAAA;gCAChB,IAAI;oCACF,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;iCAChC;gCAAC,OAAO,CAAC,EAAE;oCACV,MAAM,WAAW,GACf,qCAAqC;wCACrC,aAAa,SAAS,CAAC,eAAe,GAAG;wCACzC,oDAAoD,CAAA;oCAEtD,OAAO,CAAC,WAAW,CAAC,CAAA;oCACpB,MAAM,CAAC,WAAW,CAAC,CAAA;iCACpB;gCAED,WAAW,CAAC,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAA;gCAE9C,iEAAiE;gCACjE,IAAI,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CACzC,YAAY,EACZ,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;oCACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;oCAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;gCAED,oDAAoD;gCACpD,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;oCAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;wCAC3B,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;4CAC3B,IAAI,OAAO,OAAO,CAAC,0BAAkB,CAAC,KAAK,WAAW,EAAE;gDACtD,OAAO,CAAC,0BAAkB,CAAC,GAAG;oDAC5B,IAAI,EAAE,EAAE;iDACT,CAAA;6CACF;4CAED,IACE,MAAM;gDACN,OAAO,MAAM,KAAK,QAAQ;gDAC1B,OAAO,MAAM,CAAC,0BAAkB,CAAC,KAAK,QAAQ,EAC9C;gDACA,MAAM,CAAC,MAAM,CACX,OAAO,CAAC,0BAAkB,CAAC,EAC3B,MAAM,CAAC,0BAAkB,CAAC,CAC3B,CAAA;6CACF;4CAED,OAAO,CAAC,0BAAkB,CAAC,CAAC,IAAI,CAC9B,aAAa,CAAC,IAAI,CAAC,CACpB,GAAG,WAAW,CAAA;wCACjB,CAAC,CAAC,CAAA;qCACH;yCAAM;wCACL,IAAI,OAAO,QAAQ,CAAC,0BAAkB,CAAC,KAAK,WAAW,EAAE;4CACvD,QAAQ,CAAC,0BAAkB,CAAC,GAAG;gDAC7B,IAAI,EAAE,EAAE;6CACT,CAAA;yCACF;wCAED,IACE,MAAM;4CACN,OAAO,MAAM,KAAK,QAAQ;4CAC1B,OAAO,MAAM,CAAC,0BAAkB,CAAC,KAAK,QAAQ,EAC9C;4CACA,MAAM,CAAC,MAAM,CACX,QAAQ,CAAC,0BAAkB,CAAC,EAC5B,MAAM,CAAC,0BAAkB,CAAC,CAC3B,CAAA;yCACF;wCAED,QAAQ,CAAC,0BAAkB,CAAC,CAAC,IAAI,CAC/B,aAAa,CAAC,IAAI,CAAC,CACpB,GAAG,WAAW,CAAA;qCAChB;iCACF;gCAED,uBAAuB;gCACvB,IACE,IAAI,CAAC,OAAO,CAAC,gBAAgB;oCAC7B;;;;;uCAKG;oCACH,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;wCACvC,OAAO,SAAS,CAAC,IAAI,KAAK,OAAO,CAAA;oCACnC,CAAC,CAAC;oCACF,kBAAkB;oCAClB,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;oCACvB,+BAA+B;oCAC/B,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;wCACrB,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAA;oCACjC,CAAC,CAAC,EACF;oCACA,IAAI,aAAa,GAAG,QAAQ,CAAA;oCAE5B,IAAI,OAAO,IAAI,IAAI,EAAE;wCACnB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,CAAA;wCAE3B,IAAI,KAAK,IAAI,CAAC,EAAE;4CACd,aAAa,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;yCAC9C;6CAAM;4CACL,MAAM,CACJ,IAAI,KAAK,CACP,oEAAoE,CACrE,CACF,CAAA;yCACF;qCACF;yCAAM;wCACL,MAAM,CACJ,IAAI,KAAK,CACP,sDAAsD,CACvD,CACF,CAAA;qCACF;oCAED,QAAQ,GAAG,aAAa,CAAA;iCACzB;gCAED,OAAO,CAAC,QAAQ,CAAC,CAAA;6BAClB;iCAAM;gCACL,oBAAoB;gCAEpB,OAAO,CAAC,IAAI,CAAC,CAAA;6BACd;yBACF;qBACF;yBAAM;wBACL;;;;2BAIG;wBACH,MAAM,EAAE,mBAAmB,EAAE,GAAG,SAAS,CAAC,iBAAiB,CACzD,SAAS,EACT,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,GAAG,CACd,CAAA;wBACD,IAAI,mBAAmB,KAAK,IAAI,EAAE;4BAChC,OAAO,CAAC,IAAI,CAAC,CAAA;yBACd;6BAAM;4BACL,MAAM,WAAW,GACf,gDAAgD,CAAA;4BAElD,OAAO,CAAC,WAAW,CAAC,CAAA;4BACpB,MAAM,CAAC,WAAW,CAAC,CAAA;yBACpB;qBACF;iBACF;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC;AApiBD,kCAoiBC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,IAAiD,EACjD,OAAiB;IAEjB,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,QAAQ;QACnD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,YAAY,CACnB,IAAiD,EACjD,OAAiB;IAEjB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC/B,IAAI,EAAE,aAAa;QACnB,IAAI,EAAG,OAA6B;KACrC,CAAC,CAAA;IACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACvB,OAAO;YACL,YAAY,EAAE,KAAK;SACpB,CAAA;KACF;SAAM;QACL,OAAO,CACL,2DAA2D,aAAa,GAAG,CAC5E,CAAA;QACD,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CACxB,IAAiD,EACjD,OAAiB;IAEjB,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,KAAK,QAAQ,EAAE;QAClD,OAAO,EAAE,CAAA;KACV;IAED,gBAAgB;IAChB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;IAChD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAC/B,IAAI,EAAE,aAAa;QACnB,IAAI,EAAG,OAA6B;KACrC,CAAC,CAAA;IACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;QACvB,OAAO;YACL,aAAa,EAAE,UAAU,KAAK,EAAE;YAChC,YAAY,EAAE,oBAAoB;SACnC,CAAA;KACF;SAAM;QACL,OAAO,CACL,yDAAyD;YACvD,IAAI,aAAa,GAAG,CACvB,CAAA;QACD,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,SAAoB,EACpB,iBAAiE,EACjE,IAAiD;IAEjD,MAAM,WAAW,GAAG,EAAE,CAAA;IACtB,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,IAAI,UAAU,GAAG,IAAI,CAAA;IAErB;;;OAGG;IACH,MAAM,EACJ,YAAY,EACZ,mBAAmB,EACnB,4BAA4B,EAC7B,GAAG,wBAAwB,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;IAE1D,0CAA0C;IAC1C,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;KAC3C;IAED,2EAA2E;IAC3E,IAAI,YAAY,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE;QAC3D,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;KACpE;IAED,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAA;QACnD,QAAQ,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE;YACzB,KAAK,QAAQ;gBACX,MAAM,MAAM,GACV,iBAAiB,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAA;gBACjE,IAAI,IAAI,IAAI,QAAQ,CAAC,GAAG,EAAE;oBACxB,IAAI,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACzC,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE;4BAChC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;yBACxC;6BAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,OAAO,EAAE;4BACtC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,MAAM,CAAA;yBACnC;6BAAM,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,KAAK,QAAQ,EAAE;4BACvC,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,CAAA;yBAClE;qBACF;yBAAM;wBACL,MAAM,IAAI,KAAK,CACb,2BAA2B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAC9D,CAAA;qBACF;iBACF;gBACD,MAAK;YAEP,KAAK,MAAM;gBACT,QAAQ,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE;oBAC3B,KAAK,OAAO;wBACV,MAAM,QAAQ,GACZ,iBAAiB,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,QAAQ,CAAA;wBACnE,MAAM,QAAQ,GACZ,iBAAiB,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC,QAAQ,CAAA;wBACnE,MAAM,WAAW,GAAG,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAA;wBAC7C,WAAW,CAAC,eAAe,CAAC,GAAG,SAAS,MAAM,CAAC,IAAI,CACjD,WAAW,CACZ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAA;wBACtB,MAAK;oBACP;wBACE,MAAM,IAAI,KAAK,CACb,wCAAwC;4BACtC,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAC7C,CAAA;iBACJ;gBACD,MAAK;YAEP,KAAK,QAAQ;gBACX,MAAK;YAEP,KAAK,eAAe;gBAClB,MAAK;YAEP;gBACE,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAA;SAC3E;KACF;IACD,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,CAAA;AAC5C,CAAC;AAED;;;;GAIG;AACH,SAAS,wBAAwB,CAC/B,SAAoB,EACpB,iBAAiE;IAEjE,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IACE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,oBAAoB,CAAC;QAC7C,SAAS,CAAC,oBAAoB,CAAC,MAAM,GAAG,CAAC,EACzC;QACA,YAAY,GAAG,IAAI,CAAA;QAEnB,KAAK,IAAI,mBAAmB,IAAI,SAAS,CAAC,oBAAoB,EAAE;YAC9D,MAAM,4BAA4B,GAAG,SAAS,CAAC,QAAQ,CACrD,mBAAmB,EACnB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CAAA;YACD,IACE,OAAO,iBAAiB,CAAC,QAAQ,CAAC,4BAA4B,CAAC;gBAC/D,QAAQ,EACR;gBACA,OAAO;oBACL,YAAY;oBACZ,mBAAmB;oBACnB,4BAA4B;iBAC7B,CAAA;aACF;SACF;KACF;IACD,OAAO;QACL,YAAY;KACb,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,SAAS,wBAAwB,CAC/B,SAAiB,EACjB,KAAa,EACb,WAAgB,EAChB,IAAS,EACT,IAAS;IAET,IAAI,KAAK,KAAK,MAAM,EAAE;QACpB,OAAO,WAAW,CAAC,kBAAkB,CAAC,GAAG,CAAA;KAC1C;SAAM,IAAI,KAAK,KAAK,SAAS,EAAE;QAC9B,OAAO,WAAW,CAAC,kBAAkB,CAAC,MAAM,CAAA;KAC7C;SAAM,IAAI,KAAK,KAAK,aAAa,EAAE;QAClC,OAAO,WAAW,CAAC,cAAc,CAAA;KAClC;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;QACxC,mCAAmC;QACnC,IAAI,KAAK,KAAK,eAAe,EAAE;YAC7B,OAAO,WAAW,CAAC,WAAW,CAAA;YAE9B,mCAAmC;SACpC;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;YAC7C,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,EAAE,WAAW,CAAC,WAAW;aAC9B,CAAC,CAAA;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;aACjB;iBAAM;gBACL,OAAO,CAAC,yCAAyC,SAAS,aAAa,CAAC,CAAA;aACzE;YAED,8CAA8C;SAC/C;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;YAC7C,OAAO,WAAW,CAAC,UAAU,CAC3B,SAAS,CAAC,QAAQ,CAChB,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACxB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CACF,CAAA;YAED,6CAA6C;SAC9C;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE;YAC5C,OAAO,WAAW,CAAC,UAAU,CAC3B,SAAS,CAAC,QAAQ,CAChB,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CACF,CAAA;YAED,+CAA+C;SAChD;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE;YAC9C,OAAO,WAAW,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SACzE;KACF;SAAM,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;QACzC;;;;;;WAMG;QACH,IAAI,KAAK,KAAK,gBAAgB,EAAE;YAC9B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;YAC/C;;;eAGG;YACH,MAAM,CAAC,iBAAiB,GAAG,SAAS,CAAA;YACpC,OAAO,MAAM,CAAA;YAEb,0BAA0B;SAC3B;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE;YAC9C,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC;gBAC/B,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,EAAE,IAAI;aACX,CAAC,CAAA;YACF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9C,OAAO,MAAM,CAAC,CAAC,CAAC,CAAA;aACjB;iBAAM;gBACL,OAAO,CAAC,yCAAyC,SAAS,aAAa,CAAC,CAAA;aACzE;YAED,qCAAqC;SACtC;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE;YAC9C,uDAAuD;YACvD,OAAO,WAAW,CAAC,UAAU,CAC3B,SAAS,CAAC,QAAQ,CAChB,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EACxB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CACF,CAAA;YAED,oCAAoC;SACrC;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE;YAC7C,sDAAsD;YACtD,OAAO,WAAW,CAAC,UAAU,CAC3B,SAAS,CAAC,QAAQ,CAChB,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CACF,CAAA;YAED,sCAAsC;SACvC;aAAM,IAAI,KAAK,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE;YAC/C,OAAO,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;SAC9D;KACF;IAED,MAAM,IAAI,KAAK,CACb,+BAA+B,KAAK,oCAAoC,CACzE,CAAA;AACH,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,aAAa,EAAE;QAChE,OAAO,IAAI,CAAA;KACZ;SAAM,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClD,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;gBACvD,OAAO,IAAI,CAAA;aACZ;SACF;KACF;SAAM,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;QACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClD,IAAI,GAAG,CAAC,UAAU,CAAC,aAAa,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;gBACxD,OAAO,IAAI,CAAA;aACZ;SACF;KACF;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAI;IACzB,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC;AAED;;;GAGG;AACH,SAAS,mBAAmB,CAAC,IAAI;IAC/B,OAAO,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC/C,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,IAAI;IAClC,OAAO,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW;QACrC,CAAC,CAAC,IAAI,CAAC,GAAG;QACV,CAAC,CAAC;;;;;WAKC;YACH,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACpD,CAAC,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACvC,CAAC;AAED;;GAEG;AACH,SAAS,0BAA0B,CACjC,OAAe,EACf,UAAkC;IAElC,OAAO,IAAI,sBAAY,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;AAC5E,CAAC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CACxC,IAAY,EACZ,UAA6B,EAC7B,IAAW,EAAE,qCAAqC;AAClD,IAAiD;IAMjD,MAAM,EAAE,GAAG,EAAE,CAAA;IACb,MAAM,OAAO,GAAG,EAAE,CAAA;IAElB,sBAAsB;IACtB,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE;QAC9B,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CACtC,KAAK,CAAC,IAAI,EACV,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;YACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;YAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;QAED,IAAI,aAAa,IAAI,aAAa,IAAI,IAAI,EAAE;YAC1C,QAAQ,KAAK,CAAC,EAAE,EAAE;gBAChB,kBAAkB;gBAClB,KAAK,MAAM;oBACT,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAA;oBAC3D,MAAK;gBAEP,mBAAmB;gBACnB,KAAK,OAAO;oBACV,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA;oBACpC,MAAK;gBAEP,oBAAoB;gBACpB,KAAK,QAAQ;oBACX,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,CAAA;oBACzC,MAAK;gBAEP,oBAAoB;gBACpB,KAAK,QAAQ;oBACX,IAAI,CAAC,CAAC,QAAQ,IAAI,OAAO,CAAC,EAAE;wBAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAA;qBACvB;oBAED,OAAO,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAA;oBAC7D,MAAK;gBAEP;oBACE,OAAO,CACL,oCAAoC,KAAK,CAAC,EAAE,WAAW;wBACrD,cAAc,KAAK,CAAC,IAAI,mBAAmB,IAAI,WAAW;wBAC1D,WAAW,CACd,CAAA;aACJ;SACF;KACF;IAED,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,CAAA;AAC9B,CAAC;AA3DD,gEA2DC"} \ No newline at end of file +{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.d.ts b/packages/openapi-to-graphql/lib/schema_builder.d.ts index c3609bfb..e04c1fdb 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.d.ts +++ b/packages/openapi-to-graphql/lib/schema_builder.d.ts @@ -1,11 +1,8 @@ -/** - * Functions to translate JSON schema to GraphQL (input) object types. - */ -import { PreprocessingData } from './types/preprocessing_data'; -import { Operation, DataDefinition } from './types/operation'; -import { ParameterObject } from './types/oas3'; +import { GraphQLInputType, GraphQLOutputType } from 'graphql'; import { Args } from './types/graphql'; -import { GraphQLOutputType, GraphQLInputType } from 'graphql'; +import { ParameterObject } from './types/oas3'; +import { DataDefinition, Operation } from './types/operation'; +import { PreprocessingData } from './types/preprocessing_data'; declare type GetArgsParams = { requestPayloadDef?: DataDefinition; parameters: ParameterObject[]; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 695e12b7..ec920d48 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -5,13 +5,17 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.getArgs = exports.getGraphQLType = void 0; +/** + * Functions to translate JSON schema to GraphQL (input) object types. + */ +// Type imports: +const debug_1 = require("debug"); const graphql_1 = require("graphql"); // Imports: const graphql_type_json_1 = require("graphql-type-json"); const Oas3Tools = require("./oas_3_tools"); -const resolver_builder_1 = require("./resolver_builder"); const preprocessor_1 = require("./preprocessor"); -const debug_1 = require("debug"); +const resolver_builder_1 = require("./resolver_builder"); const utils_1 = require("./utils"); /** * We need to slightly modify the GraphQLJSON type. @@ -345,7 +349,7 @@ function createOrReuseList({ def, operation, iteration, isInputObjectType, data return listObjectType; } else { - throw new Error(`Cannot create list item object type '${itemsName}' in list + throw new Error(`Cannot create list item object type '${itemsName}' in list '${name}' with schema '${JSON.stringify(itemsSchema)}'`); } } @@ -898,8 +902,8 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { let hasDefault = false; if (typeof parameter.schema === 'object') { let schema = parameter.schema; - if (typeof schema.$ref === 'string') { - schema = Oas3Tools.resolveRef(parameter.schema.$ref, operation.oas); + if ('$ref' in schema) { + schema = Oas3Tools.resolveRef(schema.$ref, operation.oas); } if (typeof schema.default !== 'undefined') { hasDefault = true; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 3322dd34..f3b52fbe 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/types/oas3.d.ts b/packages/openapi-to-graphql/lib/types/oas3.d.ts index 026db5a3..921b9013 100644 --- a/packages/openapi-to-graphql/lib/types/oas3.d.ts +++ b/packages/openapi-to-graphql/lib/types/oas3.d.ts @@ -6,7 +6,6 @@ declare type ExternalDocumentationObject = { url: string; }; export declare type SchemaObject = { - $ref?: string; title?: string; type?: 'string' | 'number' | 'object' | 'array' | 'boolean' | 'integer'; format?: string; diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index 6cfb85e6..ada19d88 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -31,43 +31,42 @@ */ // Type imports: +import debug from 'debug' import { - Options, - InternalOptions, - Report, - ConnectOptions -} from './types/options' -import { Oas3 } from './types/oas3' -import { Oas2 } from './types/oas2' -import { - Args, - GraphQLOperationType, - SubscriptionContext -} from './types/graphql' -import { Operation } from './types/operation' -import { PreprocessingData } from './types/preprocessing_data' -import { - GraphQLSchema, + GraphQLFieldConfig, GraphQLObjectType, GraphQLOutputType, - GraphQLFieldConfig + GraphQLSchema } from 'graphql' +import { GraphQLSchemaConfig } from 'graphql/type/schema' import * as NodeRequest from 'request' - -// Imports: -import { getGraphQLType, getArgs } from './schema_builder' +import { createAndLoadViewer } from './auth_builder' +import * as GraphQLTools from './graphql_tools' +import * as Oas3Tools from './oas_3_tools' +import { preprocessOas } from './preprocessor' import { + getPublishResolver, getResolver, - getSubscribe, - getPublishResolver + getSubscribe } from './resolver_builder' -import * as GraphQLTools from './graphql_tools' -import { preprocessOas } from './preprocessor' -import * as Oas3Tools from './oas_3_tools' -import { createAndLoadViewer } from './auth_builder' -import debug from 'debug' -import { GraphQLSchemaConfig } from 'graphql/type/schema' -import { sortObject, handleWarning, MitigationTypes } from './utils' +// Imports: +import { getArgs, getGraphQLType } from './schema_builder' +import { + Args, + GraphQLOperationType, + SubscriptionContext +} from './types/graphql' +import { Oas2 } from './types/oas2' +import { Oas3 } from './types/oas3' +import { Operation } from './types/operation' +import { + ConnectOptions, + InternalOptions, + Options, + Report +} from './types/options' +import { PreprocessingData } from './types/preprocessing_data' +import { handleWarning, MitigationTypes, sortObject } from './utils' type Result = { schema: GraphQLSchema @@ -157,33 +156,36 @@ export function createGraphQLSchema( spec.map((ele) => { return Oas3Tools.getValidOAS3(ele) }) - ).then((oass) => { - resolve( - translateOpenAPIToGraphQL( - oass, - options as InternalOptions + ) + .then((oass) => { + resolve( + translateOpenAPIToGraphQL( + oass, + options as InternalOptions + ) ) - ) - }).catch((error) => { - reject(error) - }) + }) + .catch((error) => { + reject(error) + }) } else { /** * Check if the spec is a valid OAS 3 * If the spec is OAS 2.0, attempt to translate it into 3, then try to * translate the spec into a GraphQL schema */ - Oas3Tools.getValidOAS3(spec).then((oas) => { - resolve( - translateOpenAPIToGraphQL( - [oas], - options as InternalOptions + Oas3Tools.getValidOAS3(spec) + .then((oas) => { + resolve( + translateOpenAPIToGraphQL( + [oas], + options as InternalOptions + ) ) - ) - }) - .catch((error) => { - reject(error) - }) + }) + .catch((error) => { + reject(error) + }) } }) } @@ -318,12 +320,14 @@ function translateOpenAPIToGraphQL( // Check if the operation should be added as a Query or Mutation if (operation.operationType === GraphQLOperationType.Query) { - let fieldName = !singularNames - ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) - : Oas3Tools.sanitize( - Oas3Tools.inferResourceNameFromPath(operation.path), - Oas3Tools.CaseStyle.camelCase - ) + let fieldName = + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] || + (!singularNames + ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) + : Oas3Tools.sanitize( + Oas3Tools.inferResourceNameFromPath(operation.path), + Oas3Tools.CaseStyle.camelCase + )) if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { @@ -811,5 +815,5 @@ function preliminaryChecks( checkCustomResolversStructure(options.customSubscriptionResolvers, data) } -export { sanitize, CaseStyle } from './oas_3_tools' +export { CaseStyle, sanitize } from './oas_3_tools' export { GraphQLOperationType } from './types/graphql' diff --git a/packages/openapi-to-graphql/src/oas_3_tools.ts b/packages/openapi-to-graphql/src/oas_3_tools.ts index 908993db..6fbca1be 100644 --- a/packages/openapi-to-graphql/src/oas_3_tools.ts +++ b/packages/openapi-to-graphql/src/oas_3_tools.ts @@ -8,44 +8,42 @@ */ // Type imports: +import debug from 'debug' +import * as jsonptr from 'json-ptr' +import * as OASValidator from 'oas-validator' +import * as pluralize from 'pluralize' +// Imports: +import * as Swagger2OpenAPI from 'swagger2openapi' import { Oas2 } from './types/oas2' -import { Operation } from './types/operation' import { + LinkObject, + LinksObject, + MediaTypesObject, Oas3, - ServerObject, - ParameterObject, - SchemaObject, OperationObject, - ResponsesObject, - ResponseObject, + ParameterObject, PathItemObject, - RequestBodyObject, ReferenceObject, - LinksObject, - LinkObject, - CallbacksObject, - CallbackObject, - MediaTypesObject, + RequestBodyObject, + ResponseObject, + ResponsesObject, + SchemaObject, + SecurityRequirementObject, SecuritySchemeObject, - SecurityRequirementObject + ServerObject } from './types/oas3' +import { Operation } from './types/operation' +import { InternalOptions } from './types/options' import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data' -import { InternalOptions } from './types/options' - -// Imports: -import * as Swagger2OpenAPI from 'swagger2openapi' -import * as OASValidator from 'oas-validator' -import debug from 'debug' import { handleWarning, MitigationTypes } from './utils' -import * as jsonptr from 'json-ptr' -import * as pluralize from 'pluralize' // Type definitions & exports: export type SchemaNames = { // Sorted in the following priority order + fromExtension?: string fromRef?: string fromSchema?: string fromPath?: string @@ -89,6 +87,10 @@ export enum HTTP_METHODS { export const SUCCESS_STATUS_RX = /2[0-9]{2}|2XX/ +export enum OAS_GRAPHQL_EXTENSIONS { + Name = 'x-graphql-name' +} + /** * Given an HTTP method, convert it to the HTTP_METHODS enum */ @@ -264,8 +266,8 @@ export function countOperationsWithPayload(oas: Oas3): number { /** * Resolves the given reference in the given object. */ -export function resolveRef(ref: string, oas: Oas3): any { - return jsonptr.JsonPointer.get(oas, ref) +export function resolveRef(ref: string, oas: Oas3): T { + return jsonptr.JsonPointer.get(oas, ref) as T } /** @@ -618,13 +620,14 @@ export function getRequestSchemaAndNames( // Get resource name from different sources let fromRef: string if ('$ref' in payloadSchema) { - fromRef = payloadSchema['$ref'].split('/').pop() - payloadSchema = resolveRef(payloadSchema['$ref'], oas) + fromRef = payloadSchema.$ref.split('/').pop() + payloadSchema = resolveRef(payloadSchema.$ref, oas) } - let payloadSchemaNames: any = { + let payloadSchemaNames: SchemaNames = { + fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.Name], fromRef, - fromSchema: (payloadSchema as SchemaObject).title, + fromSchema: payloadSchema.title, fromPath: inferResourceNameFromPath(path) } @@ -760,13 +763,14 @@ export function getResponseSchemaAndNames( let responseSchema = responseObject.content[responseContentType].schema let fromRef: string if ('$ref' in responseSchema) { - fromRef = responseSchema['$ref'].split('/').pop() - responseSchema = resolveRef(responseSchema['$ref'], oas) + fromRef = responseSchema.$ref.split('/').pop() + responseSchema = resolveRef(responseSchema.$ref, oas) } - const responseSchemaNames = { + const responseSchemaNames: SchemaNames = { + fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.Name], fromRef, - fromSchema: (responseSchema as SchemaObject).title, + fromSchema: responseSchema.title, fromPath: inferResourceNameFromPath(path) } diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index c3356820..e9f3873b 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -4,29 +4,28 @@ // License text available at https://opensource.org/licenses/MIT // Type imports: +import debug from 'debug' +import * as deepEqual from 'deep-equal' +// Imports: +import * as Oas3Tools from './oas_3_tools' +import { methodToHttpMethod } from './oas_3_tools' +import { GraphQLOperationType } from './types/graphql' import { - Oas3, CallbackObject, LinkObject, + Oas3, OperationObject, + PathItemObject, ReferenceObject, - SchemaObject, - PathItemObject + SchemaObject } from './types/oas3' +import { DataDefinition, Operation } from './types/operation' import { InternalOptions } from './types/options' -import { Operation, DataDefinition } from './types/operation' import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data' - -// Imports: -import * as Oas3Tools from './oas_3_tools' -import * as deepEqual from 'deep-equal' -import debug from 'debug' -import { handleWarning, getCommonPropertyNames, MitigationTypes } from './utils' -import { GraphQLOperationType } from './types/graphql' -import { methodToHttpMethod } from './oas_3_tools' +import { getCommonPropertyNames, handleWarning, MitigationTypes } from './utils' const preprocessingLog = debug('preprocessing') @@ -875,6 +874,8 @@ export function createDataDef( // Or if it is an object type, create references to all of the field types let itemsSchema = collapsedSchema.items let itemsName = `${name}ListItem` + const fromExtension = + collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] if ('$ref' in itemsSchema) { itemsName = collapsedSchema.items['$ref'].split('/').pop() @@ -882,7 +883,10 @@ export function createDataDef( const subDefinition = createDataDef( // Is this the correct classification for this name? It does not matter in the long run. - { fromRef: itemsName }, + { + fromExtension, + fromRef: itemsName + }, itemsSchema as SchemaObject, isInputObjectType, data, @@ -1010,10 +1014,20 @@ function getSchemaName( ) } - let schemaName + let schemaName: string + + if (typeof names.fromExtension === 'string') { + const saneName = Oas3Tools.sanitize( + names.fromExtension, + Oas3Tools.CaseStyle.PascalCase + ) + if (!usedNames.includes(saneName)) { + schemaName = names.fromExtension + } + } // CASE: name from reference - if (typeof names.fromRef === 'string') { + if (!schemaName && typeof names.fromRef === 'string') { const saneName = Oas3Tools.sanitize( names.fromRef, Oas3Tools.CaseStyle.PascalCase @@ -1048,7 +1062,9 @@ function getSchemaName( // CASE: all names are already used - create approximate name if (!schemaName) { schemaName = Oas3Tools.sanitize( - typeof names.fromRef === 'string' + typeof names.fromExtension === 'string' + ? names.fromExtension + : typeof names.fromRef === 'string' ? names.fromRef : typeof names.fromSchema === 'string' ? names.fromSchema @@ -1101,6 +1117,7 @@ function addObjectPropertiesToDataDef( for (let propertyKey in schema.properties) { let propSchemaName = propertyKey let propSchema = schema.properties[propertyKey] + const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] if ('$ref' in propSchema) { propSchemaName = propSchema['$ref'].split('/').pop() @@ -1110,6 +1127,7 @@ function addObjectPropertiesToDataDef( if (!(propertyKey in def.subDefinitions)) { const subDefinition = createDataDef( { + fromExtension, fromRef: propSchemaName, fromSchema: propSchema.title // TODO: Currently not utilized because of fromRef but arguably, propertyKey is a better field name and title is a better type name }, @@ -1459,9 +1477,12 @@ function createDataDefFromAnyOf( if (!incompatibleProperties.has(propertyName)) { // Dereferenced by processing anyOfData const propertySchema = properties[propertyName] as SchemaObject + const fromExtension = + propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] const subDefinition = createDataDef( { + fromExtension, fromRef: propertyName, fromSchema: propertySchema.title // TODO: Currently not utilized because of fromRef but arguably, propertyKey is a better field name and title is a better type name }, @@ -1579,12 +1600,13 @@ function createDataDefFromOneOf( collapsedSchema.oneOf.forEach((memberSchema) => { // Dereference member schema let fromRef: string + if ('$ref' in memberSchema) { fromRef = memberSchema['$ref'].split('/').pop() - memberSchema = Oas3Tools.resolveRef( + memberSchema = Oas3Tools.resolveRef( memberSchema['$ref'], oas - ) as SchemaObject + ) } // Member types of GraphQL unions must be object types @@ -1592,8 +1614,11 @@ function createDataDefFromOneOf( Oas3Tools.getSchemaTargetGraphQLType(memberSchema, data) === 'object' ) { + const fromExtension = + memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] const subDefinition = createDataDef( { + fromExtension, fromRef, fromSchema: memberSchema.title, fromPath: `${saneName}Member` diff --git a/packages/openapi-to-graphql/src/resolver_builder.ts b/packages/openapi-to-graphql/src/resolver_builder.ts index ec4425f0..57a82fa8 100644 --- a/packages/openapi-to-graphql/src/resolver_builder.ts +++ b/packages/openapi-to-graphql/src/resolver_builder.ts @@ -8,23 +8,21 @@ */ // Type imports: -import { SchemaObject, ParameterObject } from './types/oas3' -import { ConnectOptions } from './types/options' -import { Operation } from './types/operation' -import { SubscriptionContext } from './types/graphql' -import { PreprocessingData } from './types/preprocessing_data' -import * as NodeRequest from 'request' -import { RequestOptions } from './types/options' - -// Imports: -import * as Oas3Tools from './oas_3_tools' -import * as querystring from 'querystring' -import * as JSONPath from 'jsonpath-plus' import { debug } from 'debug' -import { GraphQLError, GraphQLFieldResolver } from 'graphql' import formurlencoded from 'form-urlencoded' +import { GraphQLError, GraphQLFieldResolver } from 'graphql' import { PubSub } from 'graphql-subscriptions' import { IncomingHttpHeaders } from 'http' +import * as JSONPath from 'jsonpath-plus' +import * as querystring from 'querystring' +import * as NodeRequest from 'request' +// Imports: +import * as Oas3Tools from './oas_3_tools' +import { SubscriptionContext } from './types/graphql' +import { ParameterObject, SchemaObject } from './types/oas3' +import { Operation } from './types/operation' +import { ConnectOptions, RequestOptions } from './types/options' +import { PreprocessingData } from './types/preprocessing_data' const pubsub = new PubSub() @@ -414,15 +412,14 @@ export function getResolver({ typeof param.schema === 'object' ) { let schema = param.schema - if (schema && schema.$ref && typeof schema.$ref === 'string') { - schema = Oas3Tools.resolveRef(schema.$ref, operation.oas) + if ('$ref' in schema) { + schema = Oas3Tools.resolveRef( + schema.$ref, + operation.oas + ) } - if ( - schema && - (schema as SchemaObject).default && - typeof (schema as SchemaObject).default !== 'undefined' - ) { - args[saneParamName] = (schema as SchemaObject).default + if (schema && schema.default && typeof schema.default !== 'undefined') { + args[saneParamName] = schema.default } } }) diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 89f7f601..065947c0 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -8,42 +8,41 @@ */ // Type imports: -import { PreprocessingData } from './types/preprocessing_data' -import { Operation, DataDefinition } from './types/operation' -import { - Oas3, - SchemaObject, - ParameterObject, - ReferenceObject, - LinkObject -} from './types/oas3' -import { Args, GraphQLType } from './types/graphql' +import debug from 'debug' import { - GraphQLScalarType, - GraphQLObjectType, - GraphQLString, - GraphQLID, - GraphQLInt, - GraphQLFloat, GraphQLBoolean, - GraphQLNonNull, - GraphQLList, - GraphQLInputObjectType, GraphQLEnumType, GraphQLFieldConfigMap, - GraphQLOutputType, - GraphQLUnionType, + GraphQLFloat, + GraphQLID, + GraphQLInputFieldConfigMap, + GraphQLInputObjectType, GraphQLInputType, - GraphQLInputFieldConfigMap + GraphQLInt, + GraphQLList, + GraphQLNonNull, + GraphQLObjectType, + GraphQLOutputType, + GraphQLScalarType, + GraphQLString, + GraphQLUnionType } from 'graphql' - // Imports: import GraphQLJSON from 'graphql-type-json' import * as Oas3Tools from './oas_3_tools' -import { getResolver, OPENAPI_TO_GRAPHQL } from './resolver_builder' import { createDataDef } from './preprocessor' -import debug from 'debug' -import { handleWarning, sortObject, MitigationTypes } from './utils' +import { getResolver, OPENAPI_TO_GRAPHQL } from './resolver_builder' +import { Args } from './types/graphql' +import { + LinkObject, + Oas3, + ParameterObject, + ReferenceObject, + SchemaObject +} from './types/oas3' +import { DataDefinition, Operation } from './types/operation' +import { PreprocessingData } from './types/preprocessing_data' +import { handleWarning, MitigationTypes, sortObject } from './utils' type GetArgsParams = { requestPayloadDef?: DataDefinition @@ -512,7 +511,7 @@ function createOrReuseList({ } return listObjectType } else { - throw new Error(`Cannot create list item object type '${itemsName}' in list + throw new Error(`Cannot create list item object type '${itemsName}' in list '${name}' with schema '${JSON.stringify(itemsSchema)}'`) } } @@ -1218,10 +1217,10 @@ export function getArgs({ let hasDefault = false if (typeof parameter.schema === 'object') { let schema = parameter.schema - if (typeof schema.$ref === 'string') { - schema = Oas3Tools.resolveRef(parameter.schema.$ref, operation.oas) + if ('$ref' in schema) { + schema = Oas3Tools.resolveRef(schema.$ref, operation.oas) } - if (typeof (schema as SchemaObject).default !== 'undefined') { + if (typeof schema.default !== 'undefined') { hasDefault = true } } diff --git a/packages/openapi-to-graphql/src/types/oas3.ts b/packages/openapi-to-graphql/src/types/oas3.ts index d254b049..e3c81439 100644 --- a/packages/openapi-to-graphql/src/types/oas3.ts +++ b/packages/openapi-to-graphql/src/types/oas3.ts @@ -3,8 +3,6 @@ // This file is licensed under the MIT License. // License text available at https://opensource.org/licenses/MIT -import { Operation } from './operation' - /** * Type definitions for the OpenAPI Specification 3. */ @@ -15,7 +13,6 @@ type ExternalDocumentationObject = { } export type SchemaObject = { - $ref?: string title?: string type?: 'string' | 'number' | 'object' | 'array' | 'boolean' | 'integer' format?: string From 1255d8b8ba18648033d666405fdf8c3390daf0ec Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Thu, 18 Mar 2021 11:45:51 +0100 Subject: [PATCH 2/9] Revert unintended import reordering Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.d.ts | 32 +++++++++- packages/openapi-to-graphql/lib/index.js | 61 ++++++------------- packages/openapi-to-graphql/lib/index.js.map | 2 +- .../openapi-to-graphql/lib/oas_3_tools.d.ts | 7 ++- .../openapi-to-graphql/lib/oas_3_tools.js | 12 ++-- .../openapi-to-graphql/lib/oas_3_tools.js.map | 2 +- .../openapi-to-graphql/lib/preprocessor.d.ts | 6 +- .../openapi-to-graphql/lib/preprocessor.js | 9 ++- .../lib/preprocessor.js.map | 2 +- .../lib/resolver_builder.d.ts | 12 ++-- .../lib/resolver_builder.js | 16 ++--- .../lib/resolver_builder.js.map | 2 +- .../lib/schema_builder.d.ts | 11 ++-- .../openapi-to-graphql/lib/schema_builder.js | 8 +-- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/src/index.ts | 57 ++++++++--------- .../openapi-to-graphql/src/oas_3_tools.ts | 37 +++++------ .../openapi-to-graphql/src/preprocessor.ts | 23 +++---- .../src/resolver_builder.ts | 24 ++++---- .../openapi-to-graphql/src/schema_builder.ts | 51 ++++++++-------- 20 files changed, 189 insertions(+), 187 deletions(-) diff --git a/packages/openapi-to-graphql/lib/index.d.ts b/packages/openapi-to-graphql/lib/index.d.ts index 9b9ec9d0..ae586d46 100644 --- a/packages/openapi-to-graphql/lib/index.d.ts +++ b/packages/openapi-to-graphql/lib/index.d.ts @@ -1,8 +1,34 @@ -import { GraphQLSchema } from 'graphql'; -import { Oas2 } from './types/oas2'; -import { Oas3 } from './types/oas3'; +/** + * Defines the functions exposed by OpenAPI-to-GraphQL. + * + * Some general notes: + * + * - GraphQL interfaces rely on sanitized strings for (input) object type names + * and fields. We perform sanitization only when assigning (field-) names, but + * keep keys in the OAS otherwise as-is, to ensure that inner-OAS references + * work as expected. + * + * - GraphQL (input) object types must have a unique name. Thus, sometimes Input + * object types and object types need separate names, despite them having the + * same structure. We thus append 'Input' to every input object type's name + * as a convention. + * + * - To pass data between resolve functions, OpenAPI-to-GraphQL uses a _openAPIToGraphQL object + * returned by every resolver in addition to its original data (OpenAPI-to-GraphQL does + * not use the context to do so, which is an anti-pattern according to + * https://github.com/graphql/graphql-js/issues/953). + * + * - OpenAPI-to-GraphQL can handle basic authentication and API key-based authentication + * through GraphQL. To do this, OpenAPI-to-GraphQL creates two new intermediate Object + * Types called QueryViewer and MutationViewer that take as input security + * credentials and pass them on using the _openAPIToGraphQL object to other resolve + * functions. + */ import { Options, Report } from './types/options'; +import { Oas3 } from './types/oas3'; +import { Oas2 } from './types/oas2'; import { PreprocessingData } from './types/preprocessing_data'; +import { GraphQLSchema } from 'graphql'; declare type Result = { schema: GraphQLSchema; report: Report; diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index c136224a..dddeb310 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -5,43 +5,16 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.GraphQLOperationType = exports.sanitize = exports.CaseStyle = exports.createGraphQLSchema = void 0; -/** - * Defines the functions exposed by OpenAPI-to-GraphQL. - * - * Some general notes: - * - * - GraphQL interfaces rely on sanitized strings for (input) object type names - * and fields. We perform sanitization only when assigning (field-) names, but - * keep keys in the OAS otherwise as-is, to ensure that inner-OAS references - * work as expected. - * - * - GraphQL (input) object types must have a unique name. Thus, sometimes Input - * object types and object types need separate names, despite them having the - * same structure. We thus append 'Input' to every input object type's name - * as a convention. - * - * - To pass data between resolve functions, OpenAPI-to-GraphQL uses a _openAPIToGraphQL object - * returned by every resolver in addition to its original data (OpenAPI-to-GraphQL does - * not use the context to do so, which is an anti-pattern according to - * https://github.com/graphql/graphql-js/issues/953). - * - * - OpenAPI-to-GraphQL can handle basic authentication and API key-based authentication - * through GraphQL. To do this, OpenAPI-to-GraphQL creates two new intermediate Object - * Types called QueryViewer and MutationViewer that take as input security - * credentials and pass them on using the _openAPIToGraphQL object to other resolve - * functions. - */ -// Type imports: -const debug_1 = require("debug"); -const graphql_1 = require("graphql"); -const auth_builder_1 = require("./auth_builder"); -const GraphQLTools = require("./graphql_tools"); -const Oas3Tools = require("./oas_3_tools"); -const preprocessor_1 = require("./preprocessor"); -const resolver_builder_1 = require("./resolver_builder"); +const graphql_1 = require("./types/graphql"); +const graphql_2 = require("graphql"); // Imports: const schema_builder_1 = require("./schema_builder"); -const graphql_2 = require("./types/graphql"); +const resolver_builder_1 = require("./resolver_builder"); +const GraphQLTools = require("./graphql_tools"); +const preprocessor_1 = require("./preprocessor"); +const Oas3Tools = require("./oas_3_tools"); +const auth_builder_1 = require("./auth_builder"); +const debug_1 = require("debug"); const utils_1 = require("./utils"); const translationLog = debug_1.default('translation'); /** @@ -201,7 +174,7 @@ provideErrorExtensions, equivalentToMessages }) { const field = getFieldForOperation(operation, options.baseUrl, data, requestOptions, connectOptions); const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); // Check if the operation should be added as a Query or Mutation - if (operation.operationType === graphql_2.GraphQLOperationType.Query) { + if (operation.operationType === graphql_1.GraphQLOperationType.Query) { let fieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] || (!singularNames ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) @@ -398,30 +371,30 @@ provideErrorExtensions, equivalentToMessages }) { * viewer objects. */ if (Object.keys(authQueryFields).length > 0) { - Object.assign(queryFields, auth_builder_1.createAndLoadViewer(authQueryFields, graphql_2.GraphQLOperationType.Query, data)); + Object.assign(queryFields, auth_builder_1.createAndLoadViewer(authQueryFields, graphql_1.GraphQLOperationType.Query, data)); } if (Object.keys(authMutationFields).length > 0) { - Object.assign(mutationFields, auth_builder_1.createAndLoadViewer(authMutationFields, graphql_2.GraphQLOperationType.Mutation, data)); + Object.assign(mutationFields, auth_builder_1.createAndLoadViewer(authMutationFields, graphql_1.GraphQLOperationType.Mutation, data)); } if (Object.keys(authSubscriptionFields).length > 0) { - Object.assign(subscriptionFields, auth_builder_1.createAndLoadViewer(authSubscriptionFields, graphql_2.GraphQLOperationType.Subscription, data)); + Object.assign(subscriptionFields, auth_builder_1.createAndLoadViewer(authSubscriptionFields, graphql_1.GraphQLOperationType.Subscription, data)); } // Build up the schema const schemaConfig = { query: Object.keys(queryFields).length > 0 - ? new graphql_1.GraphQLObjectType({ + ? new graphql_2.GraphQLObjectType({ name: 'Query', fields: queryFields }) : GraphQLTools.getEmptyObjectType('Query'), mutation: Object.keys(mutationFields).length > 0 - ? new graphql_1.GraphQLObjectType({ + ? new graphql_2.GraphQLObjectType({ name: 'Mutation', fields: mutationFields }) : null, subscription: Object.keys(subscriptionFields).length > 0 - ? new graphql_1.GraphQLObjectType({ + ? new graphql_2.GraphQLObjectType({ name: 'Subscription', fields: subscriptionFields }) @@ -438,7 +411,7 @@ provideErrorExtensions, equivalentToMessages }) { operation.responseDefinition.graphQLType = GraphQLTools.getEmptyObjectType(operation.responseDefinition.graphQLTypeName); } }); - const schema = new graphql_1.GraphQLSchema(schemaConfig); + const schema = new graphql_2.GraphQLSchema(schemaConfig); return { schema, report: options.report, data }; } /** @@ -467,7 +440,7 @@ function getFieldForOperation(operation, baseUrl, data, requestOptions, connectO data }); // Get resolver and subscribe function for Subscription fields - if (operation.operationType === graphql_2.GraphQLOperationType.Subscription) { + if (operation.operationType === graphql_1.GraphQLOperationType.Subscription) { const responseSchemaName = operation.responseDefinition ? operation.responseDefinition.graphQLTypeName : null; diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index 7d1f3ea8..d3277733 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAEhE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,gBAAgB;AAChB,iCAAyB;AACzB,qCAKgB;AAGhB,iDAAoD;AACpD,gDAA+C;AAC/C,2CAA0C;AAC1C,iDAA8C;AAC9C,yDAI2B;AAC3B,WAAW;AACX,qDAA0D;AAC1D,6CAIwB;AAWxB,mCAAoE;AAQpE,MAAM,cAAc,GAAG,eAAK,CAAC,aAAa,CAAC,CAAA;AAE3C;;GAEG;AACH,SAAgB,mBAAmB,CACjC,IAAmC,EACnC,OAA2C;IAE3C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,OAAO,OAAO,KAAK,WAAW,EAAE;YAClC,OAAO,GAAG,EAAE,CAAA;SACb;QAED,0BAA0B;QAC1B,OAAO,CAAC,MAAM;YACZ,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAA;QAE9D,iBAAiB;QACjB,OAAO,CAAC,qBAAqB;YAC3B,OAAO,OAAO,CAAC,qBAAqB,KAAK,SAAS;gBAChD,CAAC,CAAC,OAAO,CAAC,qBAAqB;gBAC/B,CAAC,CAAC,KAAK,CAAA;QACX,OAAO,CAAC,kBAAkB;YACxB,OAAO,OAAO,CAAC,kBAAkB,KAAK,SAAS;gBAC7C,CAAC,CAAC,OAAO,CAAC,kBAAkB;gBAC5B,CAAC,CAAC,KAAK,CAAA;QACX,OAAO,CAAC,gBAAgB;YACtB,OAAO,OAAO,CAAC,gBAAgB,KAAK,SAAS;gBAC3C,CAAC,CAAC,OAAO,CAAC,gBAAgB;gBAC1B,CAAC,CAAC,KAAK,CAAA;QACX,OAAO,CAAC,qBAAqB;YAC3B,OAAO,OAAO,CAAC,qBAAqB,KAAK,SAAS;gBAChD,CAAC,CAAC,OAAO,CAAC,qBAAqB;gBAC/B,CAAC,CAAC,KAAK,CAAA;QACX,OAAO,CAAC,WAAW;YACjB,OAAO,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,KAAK,CAAA;QACxE,OAAO,CAAC,gBAAgB;YACtB,OAAO,OAAO,CAAC,gBAAgB,KAAK,SAAS;gBAC3C,CAAC,CAAC,OAAO,CAAC,gBAAgB;gBAC1B,CAAC,CAAC,KAAK,CAAA;QACX,OAAO,CAAC,aAAa;YACnB,OAAO,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAA;QAC5E,OAAO,CAAC,gCAAgC;YACtC,OAAO,OAAO,CAAC,gCAAgC,KAAK,SAAS;gBAC3D,CAAC,CAAC,OAAO,CAAC,gCAAgC;gBAC1C,CAAC,CAAC,KAAK,CAAA;QAEX,yBAAyB;QACzB,OAAO,CAAC,MAAM,GAAG,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;QAC5E,OAAO,CAAC,qBAAqB;YAC3B,OAAO,OAAO,CAAC,qBAAqB,KAAK,SAAS;gBAChD,CAAC,CAAC,OAAO,CAAC,qBAAqB;gBAC/B,CAAC,CAAC,KAAK,CAAA;QAEX,kBAAkB;QAClB,OAAO,CAAC,sBAAsB;YAC5B,OAAO,OAAO,CAAC,sBAAsB,KAAK,SAAS;gBACjD,CAAC,CAAC,OAAO,CAAC,sBAAsB;gBAChC,CAAC,CAAC,IAAI,CAAA;QACV,OAAO,CAAC,oBAAoB;YAC1B,OAAO,OAAO,CAAC,oBAAoB,KAAK,SAAS;gBAC/C,CAAC,CAAC,OAAO,CAAC,oBAAoB;gBAC9B,CAAC,CAAC,IAAI,CAAA;QAEV,OAAO,CAAC,QAAQ,CAAC,GAAG;YAClB,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,CAAC;YACT,WAAW,EAAE,CAAC;YACd,cAAc,EAAE,CAAC;YACjB,kBAAkB,EAAE,CAAC;YACrB,iBAAiB,EAAE,CAAC;YACpB,mBAAmB,EAAE,CAAC;YACtB,uBAAuB,EAAE,CAAC;SAC3B,CAAA;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvB,mCAAmC;YACnC,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACf,OAAO,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC,CAAC,CACH;iBACE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBACb,OAAO,CACL,yBAAyB,CACvB,IAAI,EACJ,OAAoD,CACrD,CACF,CAAA;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAA;YACf,CAAC,CAAC,CAAA;SACL;aAAM;YACL;;;;eAIG;YACH,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC;iBACzB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBACZ,OAAO,CACL,yBAAyB,CACvB,CAAC,GAAG,CAAC,EACL,OAAoD,CACrD,CACF,CAAA;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAA;YACf,CAAC,CAAC,CAAA;SACL;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AA7GD,kDA6GC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAChC,IAAY,EACZ,EACE,MAAM,EACN,MAAM;AAEN,iBAAiB;AACjB,qBAAqB,EACrB,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACT,0BAA0B,EAC1B,qBAAqB,EACrB,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,gCAAgC;AAEhC,mBAAmB;AACnB,OAAO,EACP,EAAE,EACF,cAAc,EACd,cAAc,EACd,OAAO,EACP,eAAe,EACf,2BAA2B;AAE3B,yBAAyB;AACzB,MAAM,EACN,aAAa,EACb,qBAAqB;AAErB,kBAAkB;AAClB,sBAAsB,EACtB,oBAAoB,EACsB;IAE5C,MAAM,OAAO,GAAG;QACd,MAAM;QACN,MAAM;QAEN,iBAAiB;QACjB,qBAAqB;QACrB,kBAAkB;QAClB,gBAAgB;QAChB,SAAS;QACT,0BAA0B;QAC1B,qBAAqB;QACrB,WAAW;QACX,gBAAgB;QAChB,aAAa;QACb,gCAAgC;QAEhC,mBAAmB;QACnB,OAAO;QACP,EAAE;QACF,cAAc;QACd,cAAc;QACd,OAAO;QACP,eAAe;QACf,2BAA2B;QAE3B,yBAAyB;QACzB,MAAM;QACN,aAAa;QACb,qBAAqB;QAErB,kBAAkB;QAClB,sBAAsB;QACtB,oBAAoB;KACrB,CAAA;IACD,cAAc,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAErD;;;OAGG;IACH,MAAM,IAAI,GAAgD,4BAAa,CACrE,IAAI,EACJ,OAAO,CACR,CAAA;IAED,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;IAEhC,2CAA2C;IAC3C,IAAI,WAAW,GAA0D,EAAE,CAAA;IAC3E,IAAI,cAAc,GAA0D,EAAE,CAAA;IAC9E,IAAI,kBAAkB,GAElB,EAAE,CAAA;IAEN,yDAAyD;IACzD,IAAI,eAAe,GAIf,EAAE,CAAA;IACN,IAAI,kBAAkB,GAIlB,EAAE,CAAA;IACN,IAAI,sBAAsB,GAItB,EAAE,CAAA;IAEN,gCAAgC;IAChC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE;QACnE,cAAc,CAAC,sBAAsB,SAAS,CAAC,eAAe,MAAM,CAAC,CAAA;QAErE,MAAM,KAAK,GAAG,oBAAoB,CAChC,SAAS,EACT,OAAO,CAAC,OAAO,EACf,IAAI,EACJ,cAAc,EACd,cAAc,CACf,CAAA;QAED,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CACxC,WAAW,EACX,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CAAA;QAED,gEAAgE;QAChE,IAAI,SAAS,CAAC,aAAa,KAAK,8BAAoB,CAAC,KAAK,EAAE;YAC1D,IAAI,SAAS,GACX,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC;gBAC1D,CAAC,CAAC,aAAa;oBACb,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,kBAAkB,CAAC,eAAe,CAAC;oBACtE,CAAC,CAAC,SAAS,CAAC,QAAQ,CAChB,SAAS,CAAC,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EACnD,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CAAC,CAAA;YAER,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtB,KAAK,IAAI,mBAAmB,IAAI,SAAS,CAAC,oBAAoB,EAAE;oBAC9D,IAAI,OAAO,eAAe,CAAC,mBAAmB,CAAC,KAAK,QAAQ,EAAE;wBAC5D,eAAe,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAA;qBAC1C;oBACD,sDAAsD;oBACtD,IACE,SAAS,IAAI,eAAe,CAAC,mBAAmB,CAAC;wBACjD;;;2BAGG;wBACH,qBAAqB,EACrB;wBACA,SAAS,GAAG,SAAS,CAAC,aAAa,CACjC,eAAe,EACf,WAAW,EACX,IAAI,CAAC,OAAO,CACb,CAAA;qBACF;oBAED,IAAI,SAAS,IAAI,eAAe,CAAC,mBAAmB,CAAC,EAAE;wBACrD,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;4BACpD,OAAO,EACL,yCAAyC;gCACzC,IAAI,SAAS,6BAA6B;gCAC1C,IAAI,mBAAmB,iCAAiC;gCACxD,wDAAwD;gCACxD,sBAAsB,SAAS,CAAC,eAAe,oBAAoB;4BACrE,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;qBACH;yBAAM;wBACL,eAAe,CAAC,mBAAmB,CAAC,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;qBACxD;iBACF;aACF;iBAAM;gBACL,sDAAsD;gBACtD,IACE,SAAS,IAAI,WAAW;oBACxB;;;uBAGG;oBACH,qBAAqB,EACrB;oBACA,SAAS,GAAG,SAAS,CAAC,aAAa,CACjC,eAAe,EACf,WAAW,EACX,IAAI,CAAC,OAAO,CACb,CAAA;iBACF;gBAED,IAAI,SAAS,IAAI,WAAW,EAAE;oBAC5B,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;wBACpD,OAAO,EACL,yCAAyC;4BACzC,IAAI,SAAS,iCAAiC;4BAC9C,uDAAuD;4BACvD,cAAc,SAAS,CAAC,eAAe,oBAAoB;wBAC7D,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;iBACH;qBAAM;oBACL,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,CAAA;iBAC/B;aACF;SACF;aAAM;YACL,IAAI,aAAa,CAAA;YAEjB,IAAI,CAAC,aAAa,EAAE;gBAClB;;;mBAGG;gBACH,aAAa,GAAG,SAAS,CAAC,aAAa,CACrC,eAAe,EACf,WAAW,EACX,IAAI,CAAC,OAAO,CACb,CAAA;aACF;iBAAM;gBACL,MAAM,SAAS,GAAG,GAChB,SAAS,CAAC,MACZ,GAAG,SAAS,CAAC,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAA;gBAExD,aAAa,GAAG,SAAS,CAAC,aAAa,CACrC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,SAAS,CAAC,EAC5D,SAAS,EACT,IAAI,CAAC,OAAO,CACb,CAAA;aACF;YAED,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtB,KAAK,IAAI,mBAAmB,IAAI,SAAS,CAAC,oBAAoB,EAAE;oBAC9D,IAAI,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,KAAK,QAAQ,EAAE;wBAC/D,kBAAkB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAA;qBAC7C;oBAED,IAAI,aAAa,IAAI,kBAAkB,CAAC,mBAAmB,CAAC,EAAE;wBAC5D,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;4BACpD,OAAO,EACL,yCAAyC;gCACzC,IAAI,aAAa,6BAA6B;gCAC9C,IAAI,mBAAmB,iCAAiC;gCACxD,wDAAwD;gCACxD,sBAAsB,SAAS,CAAC,eAAe,oBAAoB;4BACrE,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;qBACH;yBAAM;wBACL,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,aAAa,CAAC,GAAG,KAAK,CAAA;qBAC/D;iBACF;aACF;iBAAM;gBACL,IAAI,aAAa,IAAI,cAAc,EAAE;oBACnC,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;wBACpD,OAAO,EACL,yCAAyC;4BACzC,IAAI,aAAa,iCAAiC;4BAClD,0DAA0D;4BAC1D,cAAc,SAAS,CAAC,eAAe,oBAAoB;wBAC7D,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;iBACH;qBAAM;oBACL,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAA;iBACtC;aACF;SACF;IACH,CAAC,CAAC,CAAA;IAEF,0BAA0B;IAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAC7C,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,EAAE;QAC3B,cAAc,CAAC,sBAAsB,WAAW,MAAM,CAAC,CAAA;QAEvD,IAAI,KAAK,GAAG,oBAAoB,CAC9B,SAAS,EACT,OAAO,CAAC,OAAO,EACf,IAAI,EACJ,cAAc,EACd,cAAc,CACf,CAAA;QAED,MAAM,eAAe,GAAG,SAAS,CAAC,QAAQ,CACxC,WAAW,EACX,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B,CAAA;QAED,IAAI,aAAa,GAAG,SAAS,CAAC,aAAa,CACzC,eAAe,EACf,WAAW,EACX,IAAI,CAAC,OAAO,CACb,CAAA;QACD,IAAI,SAAS,CAAC,QAAQ,EAAE;YACtB,KAAK,IAAI,mBAAmB,IAAI,SAAS,CAAC,oBAAoB,EAAE;gBAC9D,IAAI,OAAO,sBAAsB,CAAC,mBAAmB,CAAC,KAAK,QAAQ,EAAE;oBACnE,sBAAsB,CAAC,mBAAmB,CAAC,GAAG,EAAE,CAAA;iBACjD;gBAED,IAAI,aAAa,IAAI,sBAAsB,CAAC,mBAAmB,CAAC,EAAE;oBAChE,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;wBACpD,OAAO,EACL,yCAAyC;4BACzC,IAAI,aAAa,6BAA6B;4BAC9C,IAAI,mBAAmB,iCAAiC;4BACxD,wDAAwD;4BACxD,sBAAsB,SAAS,CAAC,eAAe,oBAAoB;wBACrE,IAAI;wBACJ,GAAG,EAAE,cAAc;qBACpB,CAAC,CAAA;iBACH;qBAAM;oBACL,sBAAsB,CAAC,mBAAmB,CAAC,CAAC,aAAa,CAAC,GAAG,KAAK,CAAA;iBACnE;aACF;SACF;aAAM;YACL,IAAI,aAAa,IAAI,kBAAkB,EAAE;gBACvC,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;oBACpD,OAAO,EACL,yCAAyC;wBACzC,IAAI,aAAa,iCAAiC;wBAClD,0DAA0D;wBAC1D,cAAc,SAAS,CAAC,eAAe,oBAAoB;oBAC7D,IAAI;oBACJ,GAAG,EAAE,cAAc;iBACpB,CAAC,CAAA;aACH;iBAAM;gBACL,kBAAkB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAA;aAC1C;SACF;IACH,CAAC,CACF,CAAA;IAED,iBAAiB;IACjB,WAAW,GAAG,kBAAU,CAAC,WAAW,CAAC,CAAA;IACrC,cAAc,GAAG,kBAAU,CAAC,cAAc,CAAC,CAAA;IAC3C,kBAAkB,GAAG,kBAAU,CAAC,kBAAkB,CAAC,CAAA;IACnD,eAAe,GAAG,kBAAU,CAAC,eAAe,CAAC,CAAA;IAC7C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC3C,eAAe,CAAC,GAAG,CAAC,GAAG,kBAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;IACF,kBAAkB,GAAG,kBAAU,CAAC,kBAAkB,CAAC,CAAA;IACnD,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAC9C,kBAAkB,CAAC,GAAG,CAAC,GAAG,kBAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IACF,sBAAsB,GAAG,kBAAU,CAAC,sBAAsB,CAAC,CAAA;IAC3D,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QAClD,sBAAsB,CAAC,GAAG,CAAC,GAAG,kBAAU,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IAEF,yDAAyD;IACzD,OAAO,CAAC,MAAM,CAAC,iBAAiB;QAC9B,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM;YAC/B,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC/C,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;YACvD,CAAC,EAAE,CAAC,CAAC,CAAA;IAEP,OAAO,CAAC,MAAM,CAAC,mBAAmB;QAChC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM;YAClC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAClD,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;YAC1D,CAAC,EAAE,CAAC,CAAC,CAAA;IAEP,OAAO,CAAC,MAAM,CAAC,uBAAuB;QACpC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM;YACtC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBACtD,OAAO,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAA;YAC9D,CAAC,EAAE,CAAC,CAAC,CAAA;IAEP;;;OAGG;IACH,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC3C,MAAM,CAAC,MAAM,CACX,WAAW,EACX,kCAAmB,CAAC,eAAe,EAAE,8BAAoB,CAAC,KAAK,EAAE,IAAI,CAAC,CACvE,CAAA;KACF;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAC9C,MAAM,CAAC,MAAM,CACX,cAAc,EACd,kCAAmB,CACjB,kBAAkB,EAClB,8BAAoB,CAAC,QAAQ,EAC7B,IAAI,CACL,CACF,CAAA;KACF;IAED,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAClD,MAAM,CAAC,MAAM,CACX,kBAAkB,EAClB,kCAAmB,CACjB,sBAAsB,EACtB,8BAAoB,CAAC,YAAY,EACjC,IAAI,CACL,CACF,CAAA;KACF;IAED,sBAAsB;IACtB,MAAM,YAAY,GAAwB;QACxC,KAAK,EACH,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC;YACjC,CAAC,CAAC,IAAI,2BAAiB,CAAC;gBACpB,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,WAAW;aACpB,CAAC;YACJ,CAAC,CAAC,YAAY,CAAC,kBAAkB,CAAC,OAAO,CAAC;QAC9C,QAAQ,EACN,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC;YACpC,CAAC,CAAC,IAAI,2BAAiB,CAAC;gBACpB,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,cAAc;aACvB,CAAC;YACJ,CAAC,CAAC,IAAI;QACV,YAAY,EACV,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,GAAG,CAAC;YACxC,CAAC,CAAC,IAAI,2BAAiB,CAAC;gBACpB,IAAI,EAAE,cAAc;gBACpB,MAAM,EAAE,kBAAkB;aAC3B,CAAC;YACJ,CAAC,CAAC,IAAI;KACX,CAAA;IAED;;;;;OAKG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE;QAC5D,IAAI,OAAO,SAAS,CAAC,kBAAkB,CAAC,WAAW,KAAK,WAAW,EAAE;YACnE,SAAS,CAAC,kBAAkB,CAAC,WAAW,GAAG,YAAY,CAAC,kBAAkB,CACxE,SAAS,CAAC,kBAAkB,CAAC,eAAe,CAC7C,CAAA;SACF;IACH,CAAC,CAAC,CAAA;IAEF,MAAM,MAAM,GAAG,IAAI,uBAAa,CAAC,YAAY,CAAC,CAAA;IAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,CAAA;AACjD,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,SAAoB,EACpB,OAAe,EACf,IAAiD,EACjD,cAA0C,EAC1C,cAA8B;IAE9B,oCAAoC;IACpC,MAAM,IAAI,GAAG,+BAAc,CAAC;QAC1B,GAAG,EAAE,SAAS,CAAC,kBAAkB;QACjC,IAAI;QACJ,SAAS;KACV,CAAsB,CAAA;IAEvB,MAAM,iBAAiB,GAAG,SAAS,CAAC,iBAAiB;QACnD,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,0BAA0B;QACxD,CAAC,CAAC,IAAI,CAAA;IAER,MAAM,IAAI,GAAS,wBAAO,CAAC;QACzB;;;;;WAKG;QACH,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;QAC9C,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,SAAS;QACT,IAAI;KACL,CAAC,CAAA;IAEF,8DAA8D;IAC9D,IAAI,SAAS,CAAC,aAAa,KAAK,8BAAoB,CAAC,YAAY,EAAE;QACjE,MAAM,kBAAkB,GAAG,SAAS,CAAC,kBAAkB;YACrD,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,eAAe;YAC9C,CAAC,CAAC,IAAI,CAAA;QAER,MAAM,OAAO,GAAG,qCAAkB,CAAC;YACjC,SAAS;YACT,YAAY,EAAE,kBAAkB;YAChC,IAAI;SACL,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,+BAAY,CAAC;YAC7B,SAAS;YACT,WAAW,EAAE,iBAAiB;YAC9B,IAAI;YACJ,OAAO;YACP,cAAc;SACf,CAAC,CAAA;QAEF,OAAO;YACL,IAAI;YACJ,OAAO;YACP,SAAS;YACT,IAAI;YACJ,WAAW,EAAE,SAAS,CAAC,WAAW;SACnC,CAAA;QAED,6CAA6C;KAC9C;SAAM;QACL,MAAM,OAAO,GAAG,8BAAW,CAAC;YAC1B,SAAS;YACT,WAAW,EAAE,iBAAiB;YAC9B,IAAI;YACJ,OAAO;YACP,cAAc;SACf,CAAC,CAAA;QAEF,OAAO;YACL,IAAI;YACJ,OAAO;YACP,IAAI;YACJ,WAAW,EAAE,SAAS,CAAC,WAAW;SACnC,CAAA;KACF;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,6BAA6B,CACpC,eAAoB,EACpB,IAAiD;IAEjD,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE;QACvC,8EAA8E;QAC9E,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;aACzB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;YAChB,gCAAgC;YAChC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC7B,OAAO,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;YACjC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC;aACD,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YACjB,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,2BAA2B;gBAC3D,OAAO,EACL,mCAAmC,KAAK,gBAAgB;oBACxD,kBAAkB;gBACpB,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEJ,4EAA4E;QAC5E,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7C,2CAA2C;YAC3C,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrE,OAAO,KAAK,KAAK,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;YAC3C,CAAC,CAAC,CAAA;YAEF,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACnD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC3D,IACE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;wBAC7B,OAAO,IAAI,KAAK,SAAS,CAAC,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,MAAM,CAAA;oBAC/D,CAAC,CAAC,EACF;wBACA,qBAAa,CAAC;4BACZ,cAAc,EACZ,uBAAe,CAAC,mCAAmC;4BACrD,OAAO,EACL,iDAAiD;gCACjD,SAAS,IAAI,iBAAiB,MAAM,0BAA0B;gCAC9D,kBAAkB,KAAK,GAAG;4BAC5B,IAAI;4BACJ,GAAG,EAAE,cAAc;yBACpB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;KACH;AACH,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CACxB,OAAkD,EAClD,IAAiD;IAEjD,mCAAmC;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACnC,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAA;IACvB,CAAC,CAAC,CAAA;IAEF,+BAA+B;IAC/B,IAAI,GAAG,CACL,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC7B,OAAO,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAA;IACxC,CAAC,CAAC,CACH,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QAClB,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,uBAAuB;YACvD,OAAO,EAAE,sCAAsC,KAAK,GAAG;YACvD,IAAI;YACJ,GAAG,EAAE,cAAc;SACpB,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,wBAAwB;IACxB,6BAA6B,CAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;IAE5D,oCAAoC;IACpC,6BAA6B,CAAC,OAAO,CAAC,2BAA2B,EAAE,IAAI,CAAC,CAAA;AAC1E,CAAC;AAED,6CAAmD;AAA1C,wGAAA,SAAS,OAAA;AAAE,uGAAA,QAAQ,OAAA;AAC5B,2CAAsD;AAA7C,+GAAA,oBAAoB,OAAA"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts index f1232dfd..1c70f903 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts +++ b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts @@ -1,8 +1,11 @@ +/** + * Utility functions around the OpenAPI Specification 3. + */ import { Oas2 } from './types/oas2'; -import { LinkObject, Oas3, OperationObject, ParameterObject, PathItemObject, ReferenceObject, RequestBodyObject, ResponseObject, SchemaObject, SecuritySchemeObject, ServerObject } from './types/oas3'; import { Operation } from './types/operation'; -import { InternalOptions } from './types/options'; +import { Oas3, ServerObject, ParameterObject, SchemaObject, OperationObject, ResponseObject, PathItemObject, RequestBodyObject, ReferenceObject, LinkObject, SecuritySchemeObject } from './types/oas3'; import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data'; +import { InternalOptions } from './types/options'; export declare type SchemaNames = { fromExtension?: string; fromRef?: string; diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js b/packages/openapi-to-graphql/lib/oas_3_tools.js index 8dd03ab0..ad715bcb 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js @@ -5,17 +5,13 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.generateOperationId = exports.uncapitalize = exports.capitalize = exports.formatOperationString = exports.isHttpMethod = exports.trim = exports.storeSaneName = exports.sanitize = exports.CaseStyle = exports.getSecurityRequirements = exports.getSecuritySchemes = exports.getServers = exports.getParameters = exports.getLinks = exports.getResponseStatusCode = exports.getResponseSchemaAndNames = exports.getResponseObject = exports.getRequestSchemaAndNames = exports.getRequestBodyObject = exports.inferResourceNameFromPath = exports.getSchemaTargetGraphQLType = exports.desanitizeObjectKeys = exports.sanitizeObjectKeys = exports.getBaseUrl = exports.resolveRef = exports.countOperationsWithPayload = exports.countOperationsSubscription = exports.countOperationsMutation = exports.countOperationsQuery = exports.countOperations = exports.getValidOAS3 = exports.methodToHttpMethod = exports.OAS_GRAPHQL_EXTENSIONS = exports.SUCCESS_STATUS_RX = exports.HTTP_METHODS = void 0; -/** - * Utility functions around the OpenAPI Specification 3. - */ -// Type imports: -const debug_1 = require("debug"); -const jsonptr = require("json-ptr"); -const OASValidator = require("oas-validator"); -const pluralize = require("pluralize"); // Imports: const Swagger2OpenAPI = require("swagger2openapi"); +const OASValidator = require("oas-validator"); +const debug_1 = require("debug"); const utils_1 = require("./utils"); +const jsonptr = require("json-ptr"); +const pluralize = require("pluralize"); const httpLog = debug_1.default('http'); const preprocessingLog = debug_1.default('preprocessing'); const translationLog = debug_1.default('translation'); diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js.map b/packages/openapi-to-graphql/lib/oas_3_tools.js.map index 07f7727e..fe8a00cf 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js.map +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js.map @@ -1 +1 @@ -{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAgChE,WAAW;AACX,mDAAkD;AAClD,8CAA6C;AAC7C,iCAAyB;AACzB,mCAAwD;AACxD,oCAAmC;AACnC,uCAAsC;AA+BtC,MAAM,OAAO,GAAG,eAAK,CAAC,MAAM,CAAC,CAAA;AAC7B,MAAM,gBAAgB,GAAG,eAAK,CAAC,eAAe,CAAC,CAAA;AAE/C,MAAM,cAAc,GAAG,eAAK,CAAC,aAAa,CAAC,CAAA;AAE3C,gBAAgB;AAChB,IAAY,YAQX;AARD,WAAY,YAAY;IACtB,2BAAa,CAAA;IACb,2BAAa,CAAA;IACb,6BAAe,CAAA;IACf,+BAAiB,CAAA;IACjB,iCAAmB,CAAA;IACnB,mCAAqB,CAAA;IACrB,6BAAe,CAAA;AACjB,CAAC,EARW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAQvB;AAEY,QAAA,iBAAiB,GAAG,eAAe,CAAA;AAEhD,IAAY,sBAEX;AAFD,WAAY,sBAAsB;IAChC,iDAAuB,CAAA;AACzB,CAAC,EAFW,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAEjC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,QAAQ,MAAM,CAAC,WAAW,EAAE,EAAE;QAC5B,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,GAAG,CAAA;QAEzB,KAAK,KAAK;YACR,OAAO,YAAY,CAAC,GAAG,CAAA;QAEzB,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,IAAI,CAAA;QAE1B,KAAK,OAAO;YACV,OAAO,YAAY,CAAC,KAAK,CAAA;QAE3B,KAAK,QAAQ;YACX,OAAO,YAAY,CAAC,MAAM,CAAA;QAE5B,KAAK,SAAS;YACZ,OAAO,YAAY,CAAC,OAAO,CAAA;QAE7B,KAAK,MAAM;YACT,OAAO,YAAY,CAAC,IAAI,CAAA;QAE1B;YACE,MAAM,IAAI,KAAK,CAAC,wBAAwB,MAAM,GAAG,CAAC,CAAA;KACrD;AACH,CAAC;AA1BD,gDA0BC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,IAAiB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,kBAAkB;QAClB,IACE,OAAQ,IAAa,CAAC,OAAO,KAAK,QAAQ;YACzC,IAAa,CAAC,OAAO,KAAK,KAAK,EAChC;YACA,gBAAgB,CACd,mEAAmE,CACpE,CAAA;YAED,eAAe,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;iBACjC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;iBAC3C,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CACJ,8BACG,IAAa,CAAC,IAAI,CAAC,KACtB,+BAA+B,KAAK,CAAC,OAAO,EAAE,CAC/C,CACF,CAAA;YAEH,iBAAiB;SAClB;aAAM,IACL,OAAQ,IAAa,CAAC,OAAO,KAAK,QAAQ;YAC1C,IAAI,CAAC,IAAI,CAAE,IAAa,CAAC,OAAO,CAAC,EACjC;YACA,gBAAgB,CAAC,uDAAuD,CAAC,CAAA;YAEzE,YAAY,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;iBAC5B,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAY,CAAC,CAAC;iBACjC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CACf,MAAM,CACJ,6CACG,IAAa,CAAC,IAAI,CAAC,KACtB,MAAM,KAAK,CAAC,OAAO,EAAE,CACtB,CACF,CAAA;SACJ;aAAM;YACL,MAAM,CAAC,gCAAgC,CAAC,CAAA;SACzC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAzCD,oCAyCC;AAED;;GAEG;AACH,SAAgB,eAAe,CAAC,GAAS;IACvC,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE;gBACxB,MAAM,EAAE,CAAA;gBACR,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;oBACrC,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;wBACpD,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;4BAC5D,MAAM,EAAE,CAAA;yBACT;qBACF;iBACF;aACF;SACF;KACF;IAED,OAAO,MAAM,CAAA;AACf,CAAC;AAlBD,0CAkBC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,GAAS;IAC5C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG,EAAE;gBACrE,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,oDAUC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CAAC,GAAS;IAC/C,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG,EAAE;gBACrE,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAVD,0DAUC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CAAC,GAAS;IACnD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IACE,YAAY,CAAC,MAAM,CAAC;gBACpB,MAAM,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,GAAG;gBACzC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EACjC;gBACA,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE;oBACpD,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE;wBAC5D,MAAM,EAAE,CAAA;qBACT;iBACF;aACF;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAlBD,kEAkBC;AAED;;GAEG;AACH,SAAgB,0BAA0B,CAAC,GAAS;IAClD,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;QAC1B,KAAK,IAAI,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAClC,IACE,YAAY,CAAC,MAAM,CAAC;gBACpB,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,WAAW,KAAK,QAAQ,EACvD;gBACA,MAAM,EAAE,CAAA;aACT;SACF;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAbD,gEAaC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAU,GAAW,EAAE,GAAS;IACxD,OAAO,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAM,CAAA;AAC/C,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,SAAoB;IAC7C,qBAAqB;IACrB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACvE,MAAM,IAAI,KAAK,CACb,qCAAqC,SAAS,CAAC,eAAe,GAAG,CAClE,CAAA;KACF;IAED,0BAA0B;IAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpE,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACpE,OAAO,CAAC,4CAA4C,GAAG,GAAG,CAAC,CAAA;SAC5D;QAED,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;KAC9B;IAED,MAAM,GAAG,GAAG,SAAS,CAAC,GAAG,CAAA;IAEzB,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACxD,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAEpC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACxD,OAAO,CAAC,4CAA4C,GAAG,GAAG,CAAC,CAAA;SAC5D;QAED,OAAO,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;KAC9B;IAED,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAA;AACjD,CAAC;AAhCD,gCAgCC;AAED;;GAEG;AACH,SAAS,QAAQ,CAAC,MAAoB;IACpC,IAAI,GAAG,GAAG,MAAM,CAAC,GAAG,CAAA;IAEpB,gDAAgD;IAChD,IACE,OAAO,MAAM,CAAC,SAAS,KAAK,QAAQ;QACpC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC,EACxC;QACA,KAAK,IAAI,WAAW,IAAI,MAAM,CAAC,SAAS,EAAE;YACxC,gDAAgD;YAChD,GAAG,GAAG,GAAG,CAAC,OAAO,CACf,IAAI,WAAW,GAAG,EAClB,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CACjD,CAAA;SACF;KACF;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,GAAQ,EAAE,gDAAgD;AAC1D,YAAuB,SAAS,CAAC,SAAS;IAE1C,MAAM,SAAS,GAAG,CAAC,GAAQ,EAAO,EAAE;QAClC,2BAA2B;QAC3B,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,WAAW,EAAE;YAC9C,OAAO,IAAI,CAAA;YAEX,cAAc;SACf;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YAEzB,eAAe;SAChB;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,MAAM,GAAG,GAAW,EAAE,CAAA;YAEtB,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;gBACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;gBAExC,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;oBAClD,GAAG,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;iBACnC;aACF;YAED,OAAO,GAAG,CAAA;YAEV,eAAe;SAChB;aAAM;YACL,OAAO,GAAG,CAAA;SACX;IACH,CAAC,CAAA;IAED,OAAO,SAAS,CAAC,GAAG,CAAC,CAAA;AACvB,CAAC;AAlCD,gDAkCC;AAED;;;GAGG;AACH,SAAgB,oBAAoB,CAClC,GAAwB,EACxB,UAAkB,EAAE;IAEpB,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,EAAE;QAC1B,IAAI,GAAG,KAAK,IAAI,EAAE;YAChB,OAAO,IAAI,CAAA;SACZ;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YAC7B,OAAO,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;SAC5B;aAAM,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YAClC,MAAM,GAAG,GAAG,EAAE,CAAA;YACd,KAAK,IAAI,GAAG,IAAI,GAAG,EAAE;gBACnB,IAAI,GAAG,IAAI,OAAO,EAAE;oBAClB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;oBAC3B,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;wBAClD,GAAG,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;qBACpC;iBACF;qBAAM;oBACL,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;iBACjC;aACF;YACD,OAAO,GAAG,CAAA;SACX;aAAM;YACL,OAAO,GAAG,CAAA;SACX;IACH,CAAC,CAAA;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAA;AACzB,CAAC;AA3BD,oDA2BC;AAED;;;;GAIG;AACH,SAAgB,0BAA0B,CACxC,MAAoB,EACpB,IAAiD;IAEjD,eAAe;IACf,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE;QACrE,oEAAoE;QACpE,uBAAuB;QACvB,IAAI,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ,EAAE;YACnD,OAAO,MAAM,CAAA;SACd;aAAM;YACL,OAAO,QAAQ,CAAA;SAChB;KACF;IAED,cAAc;IACd,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,OAAO,IAAI,MAAM,EAAE;QAChD,OAAO,MAAM,CAAA;KACd;IAED,aAAa;IACb,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QAC9B,OAAO,MAAM,CAAA;KACd;IAED,0BAA0B;IAC1B,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE;QACnC,iDAAiD;QACjD,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE;YACrC;;;eAGG;YACH,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,KAAK,OAAO,EAAE;gBAC1D,OAAO,QAAQ,CAAA;gBAEf,WAAW;aACZ;iBAAM,IACL,MAAM,CAAC,IAAI,KAAK,QAAQ;gBACxB,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM;oBACvB,mBAAmB;oBACnB,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;wBACpC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EACpD;gBACA,OAAO,IAAI,CAAA;aACZ;SACF;QAED,OAAO,MAAM,CAAC,IAAI,CAAA;KACnB;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AApDD,gEAoDC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACtB,KAAe;IAKf,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;QACrB,OAAO;YACL,QAAQ,EAAE,GAAG;YACb,YAAY,EAAE,KAAK;SACpB,CAAA;KACF;IAED,IAAI,kBAAkB,GAAa,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAEtD,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,MAAK;SACN;QACD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC9C,IAAI,CAAC,GAAG,kBAAkB,CAAC,MAAM,EAAE;gBACjC,IAAI,cAAc,CAAC,CAAC,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,EAAE;oBAC/C,kBAAkB,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;iBACpD;aACF;iBAAM;gBACL,MAAK;aACN;SACF;KACF;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACtC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAC3D,CAAA;IAED,IAAI,QAAQ,GACV,kBAAkB,CAAC,MAAM,KAAK,CAAC;QAC/B,CAAC,kBAAkB,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;QAC/D,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAElC,OAAO;QACL,QAAQ;QACR,YAAY;KACb,CAAA;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAI;IACrB,OAAO,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,eAAe,CAAC,IAAI,EAAE,QAAQ;IACrC,OAAO,KAAK,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAA;AACvD,CAAC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CAAC,IAAY;IACpD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE;QACpD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACpB,IACE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;gBACZ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAChE;gBACA,OAAO,IAAI,GAAG,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;aACnD;iBAAM;gBACL,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;aAC/B;SACF;aAAM;YACL,OAAO,IAAI,CAAA;SACZ;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO,gBAAgB,CAAA;AACzB,CAAC;AAlBD,8DAkBC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAClC,SAA0B,EAC1B,GAAS;IAET,IAAI,OAAO,SAAS,CAAC,WAAW,KAAK,QAAQ,EAAE;QAC7C,IAAI,iBAAiB,GACnB,SAAS,CAAC,WAAW,CAAA;QAEvB,yCAAyC;QACzC,IAAI,OAAQ,iBAAqC,CAAC,IAAI,KAAK,QAAQ,EAAE;YACnE,iBAAiB,GAAG,UAAU,CAC3B,iBAAqC,CAAC,IAAI,EAC3C,GAAG,CACiB,CAAA;SACvB;aAAM;YACL,iBAAiB,GAAG,iBAAsC,CAAA;SAC3D;QAED,IAAI,OAAO,iBAAiB,CAAC,OAAO,KAAK,QAAQ,EAAE;YACjD,MAAM,OAAO,GAAqB,iBAAiB,CAAC,OAAO,CAAA;YAE3D,+BAA+B;YAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;gBACrD,OAAO;oBACL,kBAAkB,EAAE,kBAAkB;oBACtC,iBAAiB;iBAClB,CAAA;aACF;iBAAM,IACL,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,mCAAmC,CAAC,EAClE;gBACA,OAAO;oBACL,kBAAkB,EAAE,mCAAmC;oBACvD,iBAAiB;iBAClB,CAAA;aACF;iBAAM;gBACL,mCAAmC;gBACnC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;gBAEjD,OAAO;oBACL,kBAAkB,EAAE,iBAAiB;oBACrC,iBAAiB;iBAClB,CAAA;aACF;SACF;KACF;IACD,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;AAC9D,CAAC;AA9CD,oDA8CC;AAED;;;;GAIG;AACH,SAAgB,wBAAwB,CACtC,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS;IAET,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,GAAG,oBAAoB,CACpE,SAAS,EACT,GAAG,CACJ,CAAA;IAED,IAAI,kBAAkB,EAAE;QACtB,IAAI,aAAa,GAAG,iBAAiB,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAA;QAExE,2CAA2C;QAC3C,IAAI,OAAe,CAAA;QACnB,IAAI,MAAM,IAAI,aAAa,EAAE;YAC3B,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAC7C,aAAa,GAAG,UAAU,CAAe,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;SAClE;QAED,IAAI,kBAAkB,GAAgB;YACpC,aAAa,EAAE,aAAa,CAAC,sBAAsB,CAAC,IAAI,CAAC;YACzD,OAAO;YACP,UAAU,EAAE,aAAa,CAAC,KAAK;YAC/B,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC1C,CAAA;QAED,yCAAyC;QACzC,MAAM,eAAe,GACnB,OAAO,iBAAiB,CAAC,QAAQ,KAAK,SAAS;YAC7C,CAAC,CAAC,iBAAiB,CAAC,QAAQ;YAC5B,CAAC,CAAC,KAAK,CAAA;QAEX;;;;;;WAMG;QACH,IACE,kBAAkB,KAAK,kBAAkB;YACzC,kBAAkB,KAAK,mCAAmC,EAC1D;YACA,MAAM,mBAAmB,GAAG,YAAY,CACtC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;gBAClD,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;YAChC,CAAC,CAAC,CACH,CAAA;YAED,kBAAkB,GAAG;gBACnB,QAAQ,EAAE,mBAAmB;aAC9B,CAAA;YAED,IAAI,WAAW,GAAG,8CAA8C,kBAAkB,GAAG,CAAA;YAErF,IACE,aAAa,IAAI,aAAa;gBAC9B,OAAO,aAAa,CAAC,WAAW,KAAK,QAAQ,EAC7C;gBACA,WAAW,IAAI,wCAAwC,aAAa,CAAC,aAAa,CAAC,GAAG,CAAA;aACvF;YAED,aAAa,GAAG;gBACd,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,QAAQ;aACf,CAAA;SACF;QAED,OAAO;YACL,kBAAkB;YAClB,aAAa;YACb,kBAAkB;YAClB,eAAe;SAChB,CAAA;KACF;IACD,OAAO;QACL,eAAe,EAAE,KAAK;KACvB,CAAA;AACH,CAAC;AAhFD,4DAgFC;AAED;;GAEG;AACH,SAAgB,iBAAiB,CAC/B,SAA0B,EAC1B,UAAkB,EAClB,GAAS;IAET,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,SAAS,GAAoB,SAAS,CAAC,SAAS,CAAA;QACtD,IAAI,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE;YAC7C,IAAI,cAAc,GAChB,SAAS,CAAC,UAAU,CAAC,CAAA;YAEvB,sCAAsC;YACtC,IAAI,OAAQ,cAAkC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChE,cAAc,GAAG,UAAU,CACxB,cAAkC,CAAC,IAAI,EACxC,GAAG,CACc,CAAA;aACpB;iBAAM;gBACL,cAAc,GAAG,cAAgC,CAAA;aAClD;YAED,IACE,cAAc,CAAC,OAAO;gBACtB,OAAO,cAAc,CAAC,OAAO,KAAK,WAAW,EAC7C;gBACA,MAAM,OAAO,GAAqB,cAAc,CAAC,OAAO,CAAA;gBAExD,+BAA+B;gBAC/B,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;oBACrD,OAAO;wBACL,mBAAmB,EAAE,kBAAkB;wBACvC,cAAc;qBACf,CAAA;iBACF;qBAAM;oBACL,mCAAmC;oBACnC,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;oBAEjD,OAAO;wBACL,mBAAmB,EAAE,iBAAiB;wBACtC,cAAc;qBACf,CAAA;iBACF;aACF;SACF;KACF;IACD,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAA;AAC5D,CAAC;AA9CD,8CA8CC;AAED;;;;GAIG;AACH,SAAgB,yBAAyB,CACvC,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS,EACT,IAAiD,EACjD,OAAkD;IAElD,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5E,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,EAAE,CAAA;KACV;IACD,IAAI,EAAE,mBAAmB,EAAE,cAAc,EAAE,GAAG,iBAAiB,CAC7D,SAAS,EACT,UAAU,EACV,GAAG,CACJ,CAAA;IAED,IAAI,mBAAmB,EAAE;QACvB,IAAI,cAAc,GAAG,cAAc,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAA;QACvE,IAAI,OAAe,CAAA;QACnB,IAAI,MAAM,IAAI,cAAc,EAAE;YAC5B,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAC9C,cAAc,GAAG,UAAU,CAAe,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;SACpE;QAED,MAAM,mBAAmB,GAAgB;YACvC,aAAa,EAAE,cAAc,CAAC,sBAAsB,CAAC,IAAI,CAAC;YAC1D,OAAO;YACP,UAAU,EAAE,cAAc,CAAC,KAAK;YAChC,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;SAC1C,CAAA;QAED;;;WAGG;QACH,IAAI,mBAAmB,KAAK,kBAAkB,EAAE;YAC9C,IAAI,WAAW,GACb,4DAA4D,CAAA;YAE9D,IACE,aAAa,IAAI,cAAc;gBAC/B,OAAO,cAAc,CAAC,aAAa,CAAC,KAAK,QAAQ,EACjD;gBACA,WAAW,IAAI,wCAAwC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAA;aACxF;YAED,cAAc,GAAG;gBACf,WAAW,EAAE,WAAW;gBACxB,IAAI,EAAE,QAAQ;aACf,CAAA;SACF;QAED,OAAO;YACL,mBAAmB;YACnB,cAAc;YACd,mBAAmB;YACnB,UAAU;SACX,CAAA;KACF;SAAM;QACL;;;;;;WAMG;QACH,IAAI,OAAO,CAAC,kBAAkB,EAAE;YAC9B,OAAO;gBACL,mBAAmB,EAAE;oBACnB,QAAQ,EAAE,yBAAyB,CAAC,IAAI,CAAC;iBAC1C;gBACD,mBAAmB,EAAE,kBAAkB;gBACvC,cAAc,EAAE;oBACd,WAAW,EACT,2DAA2D;oBAC7D,IAAI,EAAE,QAAQ;iBACf;aACF,CAAA;SACF;QAED,OAAO,EAAE,CAAA;KACV;AACH,CAAC;AApFD,8DAoFC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CACnC,IAAY,EACZ,MAAc,EACd,SAA0B,EAC1B,GAAS,EACT,IAAiD;IAEjD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;QAC9C,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACzC,OAAO,yBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrC,CAAC,CAAC,CAAA;QACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;YAC7B,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;SACvB;aAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YAClC,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,kBAAkB;gBAClD,OAAO,EACL,cAAc,qBAAqB,CACjC,MAAM,EACN,IAAI,EACJ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,IAAI;oBACL,wDAAwD;oBACxD,qDAAqD;gBACvD,kBAAkB,EAChB,yCAAyC;oBACzC,GAAG,YAAY,CAAC,CAAC,CAAC,mBAAmB;gBACvC,IAAI;gBACJ,GAAG,EAAE,cAAc;aACpB,CAAC,CAAA;YACF,OAAO,YAAY,CAAC,CAAC,CAAC,CAAA;SACvB;KACF;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAnCD,sDAmCC;AAED;;GAEG;AACH,SAAgB,QAAQ,CACtB,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,GAAS,EACT,IAAiD;IAEjD,MAAM,KAAK,GAAG,EAAE,CAAA;IAChB,MAAM,UAAU,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAC5E,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,KAAK,CAAA;KACb;IACD,IAAI,OAAO,SAAS,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC3C,MAAM,SAAS,GAAoB,SAAS,CAAC,SAAS,CAAA;QACtD,IAAI,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE;YAC7C,IAAI,QAAQ,GAAqC,SAAS,CAAC,UAAU,CAAC,CAAA;YAEtE,IAAI,OAAQ,QAA4B,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC1D,QAAQ,GAAG,UAAU,CAClB,QAA4B,CAAC,IAAI,EAClC,GAAG,CACc,CAAA;aACpB;YAED,oDAAoD;YACpD,QAAQ,GAAG,QAA0B,CAAA;YAErC,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE;gBACtC,MAAM,OAAO,GAAgB,QAAQ,CAAC,KAAK,CAAA;gBAC3C,KAAK,IAAI,OAAO,IAAI,OAAO,EAAE;oBAC3B,IAAI,IAAI,GAAiC,OAAO,CAAC,OAAO,CAAC,CAAA;oBAEzD,iCAAiC;oBACjC,IAAI,OAAQ,IAAwB,CAAC,IAAI,KAAK,QAAQ,EAAE;wBACtD,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;qBACrC;yBAAM;wBACL,IAAI,GAAG,IAAkB,CAAA;qBAC1B;oBACD,KAAK,CAAC,OAAO,CAAC,GAAG,IAAI,CAAA;iBACtB;aACF;SACF;KACF;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AA5CD,4BA4CC;AAED;;GAEG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,MAAoB,EACpB,SAA0B,EAC1B,QAAwB,EACxB,GAAS;IAET,IAAI,UAAU,GAAG,EAAE,CAAA;IAEnB,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;QACzB,cAAc,CACZ,4CAA4C,MAAM,IAAI,IAAI,IAAI;YAC5D,4BAA4B,CAC/B,CAAA;QACD,OAAO,UAAU,CAAA;KAClB;IAED,kDAAkD;IAClD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC7B,MAAM,kBAAkB,GAAsB,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACjE,IAAI,OAAQ,CAAqB,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnD,2CAA2C;gBAC3C,OAAO,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAoB,CAAA;aACrD;iBAAM;gBACL,2CAA2C;gBAC3C,OAAO,CAAoB,CAAA;aAC5B;QACH,CAAC,CAAC,CAAA;QACF,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAA;KACnD;IAED,mDAAmD;IACnD,MAAM,kBAAkB,GAAG,SAAS,CAAC,UAAU,CAAA;IAC/C,IAAI,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE;QACrC,MAAM,mBAAmB,GAAsB,kBAAkB,CAAC,GAAG,CACnE,CAAC,CAAC,EAAE,EAAE;YACJ,IAAI,OAAQ,CAAqB,CAAC,IAAI,KAAK,QAAQ,EAAE;gBACnD,2CAA2C;gBAC3C,OAAO,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAoB,CAAA;aACrD;iBAAM;gBACL,2CAA2C;gBAC3C,OAAO,CAAoB,CAAA;aAC5B;QACH,CAAC,CACF,CAAA;QACD,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAA;KACpD;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAlDD,sCAkDC;AAED;;;;;GAKG;AACH,SAAgB,UAAU,CACxB,SAA0B,EAC1B,QAAwB,EACxB,GAAS;IAET,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,6BAA6B;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACxD,OAAO,GAAG,GAAG,CAAC,OAAO,CAAA;KACtB;IAED,8CAA8C;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QAClE,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;KAC3B;IAED,oDAAoD;IACpD,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACpE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;KAC5B;IAED,uCAAuC;IACvC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;QACxB,IAAI,MAAM,GAAiB;YACzB,GAAG,EAAE,GAAG,CAAC,6BAA6B;SACvC,CAAA;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;KACrB;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AA9BD,gCA8BC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAChC,GAAS;IAET,gCAAgC;IAChC,MAAM,eAAe,GAAkD,EAAE,CAAA;IACzE,IACE,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;QAClC,OAAO,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,QAAQ,EAClD;QACA,KAAK,IAAI,SAAS,IAAI,GAAG,CAAC,UAAU,CAAC,eAAe,EAAE;YACpD,MAAM,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC,SAAS,CAAC,CAAA;YAEhE,8CAA8C;YAC9C,IAAI,OAAQ,cAAkC,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAChE,qDAAqD;gBACrD,eAAe,CAAC,SAAS,CAAC,GAAG,UAAU,CACpC,cAAkC,CAAC,IAAI,EACxC,GAAG,CACoB,CAAA;aAC1B;iBAAM;gBACL,0CAA0C;gBAC1C,eAAe,CAAC,SAAS,CAAC,GAAG,cAAsC,CAAA;aACpE;SACF;KACF;IACD,OAAO,eAAe,CAAA;AACxB,CAAC;AA1BD,gDA0BC;AAED;;;GAGG;AACH,SAAgB,uBAAuB,CACrC,SAA0B,EAC1B,eAA2D,EAC3D,GAAS;IAET,MAAM,OAAO,GAAa,EAAE,CAAA;IAE5B,sCAAsC;IACtC,MAAM,cAAc,GAAgC,GAAG,CAAC,QAAQ,CAAA;IAChE,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,WAAW,EAAE;QAC3D,KAAK,IAAI,MAAM,IAAI,cAAc,EAAE;YACjC,KAAK,IAAI,SAAS,IAAI,MAAM,EAAE;gBAC5B,IACE,eAAe,CAAC,SAAS,CAAC;oBAC1B,OAAO,eAAe,CAAC,SAAS,CAAC,KAAK,QAAQ;oBAC9C,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,EAChD;oBACA,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;iBACxB;aACF;SACF;KACF;IAED,0CAA0C;IAC1C,MAAM,aAAa,GAAgC,SAAS,CAAC,QAAQ,CAAA;IACrE,IAAI,aAAa,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE;QACzD,KAAK,IAAI,MAAM,IAAI,aAAa,EAAE;YAChC,KAAK,IAAI,SAAS,IAAI,MAAM,EAAE;gBAC5B,IACE,eAAe,CAAC,SAAS,CAAC;oBAC1B,OAAO,eAAe,CAAC,SAAS,CAAC,KAAK,QAAQ;oBAC9C,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,EAChD;oBACA,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;wBAChC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;qBACxB;iBACF;aACF;SACF;KACF;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAzCD,0DAyCC;AAED,IAAY,SAKX;AALD,WAAY,SAAS;IACnB,6CAAM,CAAA;IACN,qDAAU,CAAA;IACV,mDAAS,CAAA;IACT,iDAAQ,CAAA,CAAC,uBAAuB;AAClC,CAAC,EALW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAKpB;AAED;;GAEG;AACH,SAAgB,QAAQ,CAAC,GAAW,EAAE,SAAoB;IACxD;;;OAGG;IACH,IAAI,SAAS,KAAK,SAAS,CAAC,MAAM,EAAE;QAClC,IAAI,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAA;QAElD,kEAAkE;QAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE;YAChD,SAAS,GAAG,GAAG,GAAG,SAAS,CAAA;SAC5B;QAED,OAAO,SAAS,CAAA;KACjB;IAED;;OAEG;IACH,MAAM,KAAK,GACT,SAAS,KAAK,SAAS,CAAC,QAAQ;QAC9B,CAAC,CAAC,gBAAgB,CAAC,2BAA2B;QAC9C,CAAC,CAAC,eAAe,CAAA;IACrB,IAAI,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE;QACrD,IAAI,SAAS,KAAK,SAAS,CAAC,QAAQ,EAAE;YACpC,OAAO,IAAI,GAAG,GAAG,GAAG,IAAI,CAAA;SACzB;aAAM;YACL,OAAO,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;SAC/B;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,SAAS,EAAE;QACjB,KAAK,SAAS,CAAC,UAAU;YACvB,wDAAwD;YACxD,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,CAAA;YACjC,MAAK;QAEP,KAAK,SAAS,CAAC,SAAS;YACtB,uDAAuD;YACvD,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAA;YACnC,MAAK;QAEP,KAAK,SAAS,CAAC,QAAQ;YACrB,SAAS,GAAG,SAAS,CAAC,WAAW,EAAE,CAAA;YACnC,MAAK;KACR;IAED,kEAAkE;IAClE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,KAAK,EAAE,EAAE;QAChD,SAAS,GAAG,GAAG,GAAG,SAAS,CAAA;KAC5B;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AArDD,4BAqDC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,OAAe,EACf,GAAW,EACX,OAAkC;IAElC,IAAI,OAAO,IAAI,OAAO,IAAI,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,EAAE;QAClD,6BAA6B;QAC7B,cAAc,CACZ,aAAa,GAAG,UAAU,OAAO,CAAC,OAAO,CAAC,kBAAkB;YAC1D,OAAO,OAAO,0CAA0C,GAAG,IAAI,CAClE,CAAA;KACF;IACD,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,CAAA;IAEtB,OAAO,OAAO,CAAA;AAChB,CAAC;AAfD,sCAeC;AAED;;GAEG;AACH,SAAgB,IAAI,CAAC,GAAW,EAAE,MAAc;IAC9C,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;QAC3B,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;KAC1B;IAED,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE;QAC9B,GAAG,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAA;KACvC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAVD,oBAUC;AAED;;;GAGG;AACH,SAAgB,YAAY,CAAC,MAAc;IACzC,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;AACjE,CAAC;AAFD,oCAEC;AAED;;;;;GAKG;AACH,SAAgB,qBAAqB,CACnC,MAAc,EACd,IAAY,EACZ,KAAc;IAEd,IAAI,KAAK,EAAE;QACT,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAA;KAClD;SAAM;QACL,OAAO,GAAG,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAA;KACzC;AACH,CAAC;AAVD,sDAUC;AAED;;GAEG;AACH,SAAgB,UAAU,CAAC,GAAW;IACpC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC;AAFD,gCAEC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,GAAW;IACtC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AACnD,CAAC;AAFD,oCAEC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CACjC,MAAoB,EACpB,IAAY;IAEZ,OAAO,QAAQ,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,EAAE,SAAS,CAAC,SAAS,CAAC,CAAA;AAC3D,CAAC;AALD,kDAKC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/preprocessor.d.ts b/packages/openapi-to-graphql/lib/preprocessor.d.ts index 892a8eb2..120df3de 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.d.ts +++ b/packages/openapi-to-graphql/lib/preprocessor.d.ts @@ -1,8 +1,8 @@ -import * as Oas3Tools from './oas_3_tools'; -import { LinkObject, Oas3, SchemaObject } from './types/oas3'; -import { DataDefinition } from './types/operation'; +import { Oas3, LinkObject, SchemaObject } from './types/oas3'; import { InternalOptions } from './types/options'; +import { DataDefinition } from './types/operation'; import { PreprocessingData } from './types/preprocessing_data'; +import * as Oas3Tools from './oas_3_tools'; /** * Extract information from the OAS and put it inside a data structure that * is easier for OpenAPI-to-GraphQL to use diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index 63dbad88..88b14dc8 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -5,14 +5,13 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.createDataDef = exports.preprocessOas = void 0; -// Type imports: -const debug_1 = require("debug"); -const deepEqual = require("deep-equal"); // Imports: const Oas3Tools = require("./oas_3_tools"); -const oas_3_tools_1 = require("./oas_3_tools"); -const graphql_1 = require("./types/graphql"); +const deepEqual = require("deep-equal"); +const debug_1 = require("debug"); const utils_1 = require("./utils"); +const graphql_1 = require("./types/graphql"); +const oas_3_tools_1 = require("./oas_3_tools"); const preprocessingLog = debug_1.default('preprocessing'); /** * Given an operation object from the OAS, create an Operation, which contains diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index 34619e44..663a405e 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/resolver_builder.d.ts b/packages/openapi-to-graphql/lib/resolver_builder.d.ts index efa071cd..e9f320cd 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.d.ts +++ b/packages/openapi-to-graphql/lib/resolver_builder.d.ts @@ -1,11 +1,15 @@ /// -import { GraphQLFieldResolver } from 'graphql'; -import { IncomingHttpHeaders } from 'http'; -import { SubscriptionContext } from './types/graphql'; +/** + * Functions to create resolve functions. + */ import { ParameterObject } from './types/oas3'; +import { ConnectOptions } from './types/options'; import { Operation } from './types/operation'; -import { ConnectOptions, RequestOptions } from './types/options'; +import { SubscriptionContext } from './types/graphql'; import { PreprocessingData } from './types/preprocessing_data'; +import { RequestOptions } from './types/options'; +import { GraphQLFieldResolver } from 'graphql'; +import { IncomingHttpHeaders } from 'http'; export declare const OPENAPI_TO_GRAPHQL = "_openAPIToGraphQL"; declare type GetResolverParams = { operation: Operation; diff --git a/packages/openapi-to-graphql/lib/resolver_builder.js b/packages/openapi-to-graphql/lib/resolver_builder.js index 28d308ea..76fe402a 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.js +++ b/packages/openapi-to-graphql/lib/resolver_builder.js @@ -5,19 +5,15 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.extractRequestDataFromArgs = exports.getResolver = exports.getPublishResolver = exports.getSubscribe = exports.OPENAPI_TO_GRAPHQL = void 0; -/** - * Functions to create resolve functions. - */ -// Type imports: -const debug_1 = require("debug"); -const form_urlencoded_1 = require("form-urlencoded"); -const graphql_1 = require("graphql"); -const graphql_subscriptions_1 = require("graphql-subscriptions"); -const JSONPath = require("jsonpath-plus"); -const querystring = require("querystring"); const NodeRequest = require("request"); // Imports: const Oas3Tools = require("./oas_3_tools"); +const querystring = require("querystring"); +const JSONPath = require("jsonpath-plus"); +const debug_1 = require("debug"); +const graphql_1 = require("graphql"); +const form_urlencoded_1 = require("form-urlencoded"); +const graphql_subscriptions_1 = require("graphql-subscriptions"); const pubsub = new graphql_subscriptions_1.PubSub(); const translationLog = debug_1.debug('translation'); const httpLog = debug_1.debug('http'); diff --git a/packages/openapi-to-graphql/lib/resolver_builder.js.map b/packages/openapi-to-graphql/lib/resolver_builder.js.map index e682df3f..f7945409 100644 --- a/packages/openapi-to-graphql/lib/resolver_builder.js.map +++ b/packages/openapi-to-graphql/lib/resolver_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"resolver_builder.js","sourceRoot":"","sources":["../src/resolver_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.d.ts b/packages/openapi-to-graphql/lib/schema_builder.d.ts index e04c1fdb..c3609bfb 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.d.ts +++ b/packages/openapi-to-graphql/lib/schema_builder.d.ts @@ -1,8 +1,11 @@ -import { GraphQLInputType, GraphQLOutputType } from 'graphql'; -import { Args } from './types/graphql'; -import { ParameterObject } from './types/oas3'; -import { DataDefinition, Operation } from './types/operation'; +/** + * Functions to translate JSON schema to GraphQL (input) object types. + */ import { PreprocessingData } from './types/preprocessing_data'; +import { Operation, DataDefinition } from './types/operation'; +import { ParameterObject } from './types/oas3'; +import { Args } from './types/graphql'; +import { GraphQLOutputType, GraphQLInputType } from 'graphql'; declare type GetArgsParams = { requestPayloadDef?: DataDefinition; parameters: ParameterObject[]; diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index ec920d48..24c05242 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -5,17 +5,13 @@ // License text available at https://opensource.org/licenses/MIT Object.defineProperty(exports, "__esModule", { value: true }); exports.getArgs = exports.getGraphQLType = void 0; -/** - * Functions to translate JSON schema to GraphQL (input) object types. - */ -// Type imports: -const debug_1 = require("debug"); const graphql_1 = require("graphql"); // Imports: const graphql_type_json_1 = require("graphql-type-json"); const Oas3Tools = require("./oas_3_tools"); -const preprocessor_1 = require("./preprocessor"); const resolver_builder_1 = require("./resolver_builder"); +const preprocessor_1 = require("./preprocessor"); +const debug_1 = require("debug"); const utils_1 = require("./utils"); /** * We need to slightly modify the GraphQLJSON type. diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index f3b52fbe..37a39e45 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index ada19d88..53d90cc1 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -31,42 +31,43 @@ */ // Type imports: -import debug from 'debug' -import { - GraphQLFieldConfig, - GraphQLObjectType, - GraphQLOutputType, - GraphQLSchema -} from 'graphql' -import { GraphQLSchemaConfig } from 'graphql/type/schema' -import * as NodeRequest from 'request' -import { createAndLoadViewer } from './auth_builder' -import * as GraphQLTools from './graphql_tools' -import * as Oas3Tools from './oas_3_tools' -import { preprocessOas } from './preprocessor' import { - getPublishResolver, - getResolver, - getSubscribe -} from './resolver_builder' -// Imports: -import { getArgs, getGraphQLType } from './schema_builder' + Options, + InternalOptions, + Report, + ConnectOptions +} from './types/options' +import { Oas3 } from './types/oas3' +import { Oas2 } from './types/oas2' import { Args, GraphQLOperationType, SubscriptionContext } from './types/graphql' -import { Oas2 } from './types/oas2' -import { Oas3 } from './types/oas3' import { Operation } from './types/operation' -import { - ConnectOptions, - InternalOptions, - Options, - Report -} from './types/options' import { PreprocessingData } from './types/preprocessing_data' -import { handleWarning, MitigationTypes, sortObject } from './utils' +import { + GraphQLSchema, + GraphQLObjectType, + GraphQLOutputType, + GraphQLFieldConfig +} from 'graphql' +import * as NodeRequest from 'request' + +// Imports: +import { getGraphQLType, getArgs } from './schema_builder' +import { + getResolver, + getSubscribe, + getPublishResolver +} from './resolver_builder' +import * as GraphQLTools from './graphql_tools' +import { preprocessOas } from './preprocessor' +import * as Oas3Tools from './oas_3_tools' +import { createAndLoadViewer } from './auth_builder' +import debug from 'debug' +import { GraphQLSchemaConfig } from 'graphql/type/schema' +import { sortObject, handleWarning, MitigationTypes } from './utils' type Result = { schema: GraphQLSchema diff --git a/packages/openapi-to-graphql/src/oas_3_tools.ts b/packages/openapi-to-graphql/src/oas_3_tools.ts index 6fbca1be..ff6f13e2 100644 --- a/packages/openapi-to-graphql/src/oas_3_tools.ts +++ b/packages/openapi-to-graphql/src/oas_3_tools.ts @@ -8,37 +8,38 @@ */ // Type imports: -import debug from 'debug' -import * as jsonptr from 'json-ptr' -import * as OASValidator from 'oas-validator' -import * as pluralize from 'pluralize' -// Imports: -import * as Swagger2OpenAPI from 'swagger2openapi' import { Oas2 } from './types/oas2' +import { Operation } from './types/operation' import { - LinkObject, - LinksObject, - MediaTypesObject, Oas3, - OperationObject, + ServerObject, ParameterObject, + SchemaObject, + OperationObject, + ResponsesObject, + ResponseObject, PathItemObject, - ReferenceObject, RequestBodyObject, - ResponseObject, - ResponsesObject, - SchemaObject, - SecurityRequirementObject, + ReferenceObject, + LinksObject, + LinkObject, + MediaTypesObject, SecuritySchemeObject, - ServerObject + SecurityRequirementObject } from './types/oas3' -import { Operation } from './types/operation' -import { InternalOptions } from './types/options' import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data' +import { InternalOptions } from './types/options' + +// Imports: +import * as Swagger2OpenAPI from 'swagger2openapi' +import * as OASValidator from 'oas-validator' +import debug from 'debug' import { handleWarning, MitigationTypes } from './utils' +import * as jsonptr from 'json-ptr' +import * as pluralize from 'pluralize' // Type definitions & exports: export type SchemaNames = { diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index e9f3873b..3c9e2d9c 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -4,28 +4,29 @@ // License text available at https://opensource.org/licenses/MIT // Type imports: -import debug from 'debug' -import * as deepEqual from 'deep-equal' -// Imports: -import * as Oas3Tools from './oas_3_tools' -import { methodToHttpMethod } from './oas_3_tools' -import { GraphQLOperationType } from './types/graphql' import { + Oas3, CallbackObject, LinkObject, - Oas3, OperationObject, - PathItemObject, ReferenceObject, - SchemaObject + SchemaObject, + PathItemObject } from './types/oas3' -import { DataDefinition, Operation } from './types/operation' import { InternalOptions } from './types/options' +import { Operation, DataDefinition } from './types/operation' import { PreprocessingData, ProcessedSecurityScheme } from './types/preprocessing_data' -import { getCommonPropertyNames, handleWarning, MitigationTypes } from './utils' + +// Imports: +import * as Oas3Tools from './oas_3_tools' +import * as deepEqual from 'deep-equal' +import debug from 'debug' +import { handleWarning, getCommonPropertyNames, MitigationTypes } from './utils' +import { GraphQLOperationType } from './types/graphql' +import { methodToHttpMethod } from './oas_3_tools' const preprocessingLog = debug('preprocessing') diff --git a/packages/openapi-to-graphql/src/resolver_builder.ts b/packages/openapi-to-graphql/src/resolver_builder.ts index 57a82fa8..efab3bbc 100644 --- a/packages/openapi-to-graphql/src/resolver_builder.ts +++ b/packages/openapi-to-graphql/src/resolver_builder.ts @@ -8,21 +8,23 @@ */ // Type imports: +import { SchemaObject, ParameterObject } from './types/oas3' +import { ConnectOptions } from './types/options' +import { Operation } from './types/operation' +import { SubscriptionContext } from './types/graphql' +import { PreprocessingData } from './types/preprocessing_data' +import * as NodeRequest from 'request' +import { RequestOptions } from './types/options' + +// Imports: +import * as Oas3Tools from './oas_3_tools' +import * as querystring from 'querystring' +import * as JSONPath from 'jsonpath-plus' import { debug } from 'debug' -import formurlencoded from 'form-urlencoded' import { GraphQLError, GraphQLFieldResolver } from 'graphql' +import formurlencoded from 'form-urlencoded' import { PubSub } from 'graphql-subscriptions' import { IncomingHttpHeaders } from 'http' -import * as JSONPath from 'jsonpath-plus' -import * as querystring from 'querystring' -import * as NodeRequest from 'request' -// Imports: -import * as Oas3Tools from './oas_3_tools' -import { SubscriptionContext } from './types/graphql' -import { ParameterObject, SchemaObject } from './types/oas3' -import { Operation } from './types/operation' -import { ConnectOptions, RequestOptions } from './types/options' -import { PreprocessingData } from './types/preprocessing_data' const pubsub = new PubSub() diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 065947c0..d5939733 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -8,41 +8,42 @@ */ // Type imports: -import debug from 'debug' +import { PreprocessingData } from './types/preprocessing_data' +import { Operation, DataDefinition } from './types/operation' import { - GraphQLBoolean, - GraphQLEnumType, - GraphQLFieldConfigMap, - GraphQLFloat, + Oas3, + SchemaObject, + ParameterObject, + ReferenceObject, + LinkObject +} from './types/oas3' +import { Args, GraphQLType } from './types/graphql' +import { + GraphQLScalarType, + GraphQLObjectType, + GraphQLString, GraphQLID, - GraphQLInputFieldConfigMap, - GraphQLInputObjectType, - GraphQLInputType, GraphQLInt, - GraphQLList, + GraphQLFloat, + GraphQLBoolean, GraphQLNonNull, - GraphQLObjectType, + GraphQLList, + GraphQLInputObjectType, + GraphQLEnumType, + GraphQLFieldConfigMap, GraphQLOutputType, - GraphQLScalarType, - GraphQLString, - GraphQLUnionType + GraphQLUnionType, + GraphQLInputType, + GraphQLInputFieldConfigMap } from 'graphql' + // Imports: import GraphQLJSON from 'graphql-type-json' import * as Oas3Tools from './oas_3_tools' -import { createDataDef } from './preprocessor' import { getResolver, OPENAPI_TO_GRAPHQL } from './resolver_builder' -import { Args } from './types/graphql' -import { - LinkObject, - Oas3, - ParameterObject, - ReferenceObject, - SchemaObject -} from './types/oas3' -import { DataDefinition, Operation } from './types/operation' -import { PreprocessingData } from './types/preprocessing_data' -import { handleWarning, MitigationTypes, sortObject } from './utils' +import { createDataDef } from './preprocessor' +import debug from 'debug' +import { handleWarning, sortObject, MitigationTypes } from './utils' type GetArgsParams = { requestPayloadDef?: DataDefinition From 96fede1238ddf518b9a1de711c951b7bbc58aa65 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Thu, 18 Mar 2021 11:54:52 +0100 Subject: [PATCH 3/9] Add support for mutations & subscriptions Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.js | 15 ++++++++++-- packages/openapi-to-graphql/lib/index.js.map | 2 +- packages/openapi-to-graphql/src/index.ts | 24 ++++++++++++++------ 3 files changed, 31 insertions(+), 10 deletions(-) diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index dddeb310..30704397 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -238,7 +238,11 @@ provideErrorExtensions, equivalentToMessages }) { } else { let saneFieldName; - if (!singularNames) { + const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + if (extensionFieldName) { + saneFieldName = extensionFieldName; + } + else if (!singularNames) { /** * Use operationId to avoid problems differentiating operations with the * same path but differnet methods @@ -294,7 +298,14 @@ provideErrorExtensions, equivalentToMessages }) { translationLog(`Process operation '${operationId}'...`); let field = getFieldForOperation(operation, options.baseUrl, data, requestOptions, connectOptions); const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); - let saneFieldName = Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); + let saneFieldName; + const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + if (extensionFieldName) { + saneFieldName = extensionFieldName; + } + else { + Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); + } if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authSubscriptionFields[securityRequirement] !== 'object') { diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index d3277733..254931f0 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index 53d90cc1..f78f603c 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -400,9 +400,13 @@ function translateOpenAPIToGraphQL( } } } else { - let saneFieldName + let saneFieldName: string + const extensionFieldName = + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] - if (!singularNames) { + if (extensionFieldName) { + saneFieldName = extensionFieldName + } else if (!singularNames) { /** * Use operationId to avoid problems differentiating operations with the * same path but differnet methods @@ -483,11 +487,17 @@ function translateOpenAPIToGraphQL( Oas3Tools.CaseStyle.camelCase ) - let saneFieldName = Oas3Tools.storeSaneName( - saneOperationId, - operationId, - data.saneMap - ) + let saneFieldName: string + + const extensionFieldName = + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + + if (extensionFieldName) { + saneFieldName = extensionFieldName + } else { + Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap) + } + if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authSubscriptionFields[securityRequirement] !== 'object') { From c6ff87a1fe1c1e8a38dc14320c3536cb79954349 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Fri, 2 Apr 2021 15:52:13 +0200 Subject: [PATCH 4/9] Add support for links & split naming field/type Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.js | 6 ++-- packages/openapi-to-graphql/lib/index.js.map | 2 +- .../openapi-to-graphql/lib/oas_3_tools.d.ts | 4 ++- .../openapi-to-graphql/lib/oas_3_tools.js | 8 +++-- .../openapi-to-graphql/lib/oas_3_tools.js.map | 2 +- .../openapi-to-graphql/lib/preprocessor.js | 18 ++++++---- .../lib/preprocessor.js.map | 2 +- .../openapi-to-graphql/lib/schema_builder.js | 3 +- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/src/index.ts | 6 ++-- .../openapi-to-graphql/src/oas_3_tools.ts | 8 +++-- .../openapi-to-graphql/src/preprocessor.ts | 33 ++++++++++++------- .../openapi-to-graphql/src/schema_builder.ts | 4 ++- 13 files changed, 61 insertions(+), 37 deletions(-) diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index 18436ba7..2262fe1b 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -162,7 +162,7 @@ provideErrorExtensions, equivalentToMessages }) { const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); // Check if the operation should be added as a Query or Mutation if (operation.operationType === graphql_1.GraphQLOperationType.Query) { - let fieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] || + let fieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] || (!singularNames ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); @@ -225,7 +225,7 @@ provideErrorExtensions, equivalentToMessages }) { } else { let saneFieldName; - const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; if (extensionFieldName) { saneFieldName = extensionFieldName; } @@ -286,7 +286,7 @@ provideErrorExtensions, equivalentToMessages }) { let field = getFieldForOperation(operation, options.baseUrl, data, requestOptions, connectOptions); const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); let saneFieldName; - const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; if (extensionFieldName) { saneFieldName = extensionFieldName; } diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index 73716edd..bba3068f 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts index 51c2f824..95fdea00 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.d.ts +++ b/packages/openapi-to-graphql/lib/oas_3_tools.d.ts @@ -40,7 +40,9 @@ export declare enum HTTP_METHODS { } export declare const SUCCESS_STATUS_RX: RegExp; export declare enum OAS_GRAPHQL_EXTENSIONS { - Name = "x-graphql-name" + TypeName = "x-graphql-type-name", + FieldName = "x-graphql-field-name", + EnumMapping = "x-graphql-enum-mapping" } /** * Given an HTTP method, convert it to the HTTP_METHODS enum diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js b/packages/openapi-to-graphql/lib/oas_3_tools.js index 6ae48ab2..d1da8926 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js @@ -29,7 +29,9 @@ var HTTP_METHODS; exports.SUCCESS_STATUS_RX = /2[0-9]{2}|2XX/; var OAS_GRAPHQL_EXTENSIONS; (function (OAS_GRAPHQL_EXTENSIONS) { - OAS_GRAPHQL_EXTENSIONS["Name"] = "x-graphql-name"; + OAS_GRAPHQL_EXTENSIONS["TypeName"] = "x-graphql-type-name"; + OAS_GRAPHQL_EXTENSIONS["FieldName"] = "x-graphql-field-name"; + OAS_GRAPHQL_EXTENSIONS["EnumMapping"] = "x-graphql-enum-mapping"; })(OAS_GRAPHQL_EXTENSIONS = exports.OAS_GRAPHQL_EXTENSIONS || (exports.OAS_GRAPHQL_EXTENSIONS = {})); /** * Given an HTTP method, convert it to the HTTP_METHODS enum @@ -465,7 +467,7 @@ function getRequestSchemaAndNames(path, method, operation, oas) { payloadSchema = resolveRef(payloadSchema.$ref, oas); } let payloadSchemaNames = { - fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.Name], + fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: payloadSchema.title, fromPath: inferResourceNameFromPath(path) @@ -569,7 +571,7 @@ function getResponseSchemaAndNames(path, method, operation, oas, data, options) responseSchema = resolveRef(responseSchema.$ref, oas); } const responseSchemaNames = { - fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.Name], + fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: responseSchema.title, fromPath: inferResourceNameFromPath(path) diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js.map b/packages/openapi-to-graphql/lib/oas_3_tools.js.map index f479461a..2b7a8b73 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js.map +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js.map @@ -1 +1 @@ -{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index 88b14dc8..c82e508a 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -469,9 +469,12 @@ function createDataDef(names, schema, isInputObjectType, data, oas, links) { const saneLinks = {}; if (typeof links === 'object') { Object.keys(links).forEach((linkKey) => { - saneLinks[Oas3Tools.sanitize(linkKey, !data.options.simpleNames + const link = links[linkKey]; + const fromExtension = link[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; + const linkSaneName = Oas3Tools.sanitize(fromExtension || linkKey, !data.options.simpleNames ? Oas3Tools.CaseStyle.camelCase - : Oas3Tools.CaseStyle.simple)] = links[linkKey]; + : Oas3Tools.CaseStyle.simple); + saneLinks[linkSaneName] = link; }); } // Determine the index of possible existing data definition @@ -603,7 +606,7 @@ function createDataDef(names, schema, isInputObjectType, data, oas, links) { // Or if it is an object type, create references to all of the field types let itemsSchema = collapsedSchema.items; let itemsName = `${name}ListItem`; - const fromExtension = collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const fromExtension = collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName]; if ('$ref' in itemsSchema) { itemsName = collapsedSchema.items['$ref'].split('/').pop(); } @@ -710,6 +713,9 @@ function getSchemaName(names, usedNames) { let schemaName; if (typeof names.fromExtension === 'string') { const saneName = Oas3Tools.sanitize(names.fromExtension, Oas3Tools.CaseStyle.PascalCase); + if (usedNames.includes(saneName)) { + throw new Error(`Cannot create Type with name "${saneName}".\nYou provided ${names.fromExtension} in an ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName} extension but it collides with another Type called ${saneName}`); + } if (!usedNames.includes(saneName)) { schemaName = names.fromExtension; } @@ -778,7 +784,7 @@ function addObjectPropertiesToDataDef(def, schema, required, isInputObjectType, for (let propertyKey in schema.properties) { let propSchemaName = propertyKey; let propSchema = schema.properties[propertyKey]; - const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName]; if ('$ref' in propSchema) { propSchemaName = propSchema['$ref'].split('/').pop(); propSchema = Oas3Tools.resolveRef(propSchema['$ref'], oas); @@ -1023,7 +1029,7 @@ function createDataDefFromAnyOf(saneName, saneInputName, collapsedSchema, isInpu if (!incompatibleProperties.has(propertyName)) { // Dereferenced by processing anyOfData const propertySchema = properties[propertyName]; - const fromExtension = propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const fromExtension = propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName]; const subDefinition = createDataDef({ fromExtension, fromRef: propertyName, @@ -1118,7 +1124,7 @@ function createDataDefFromOneOf(saneName, saneInputName, collapsedSchema, isInpu // Member types of GraphQL unions must be object types if (Oas3Tools.getSchemaTargetGraphQLType(memberSchema, data) === 'object') { - const fromExtension = memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name]; + const fromExtension = memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName]; const subDefinition = createDataDef({ fromExtension, fromRef, diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index 663a405e..c9ab5805 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAmBhE,WAAW;AACX,2CAA0C;AAC1C,wCAAuC;AACvC,iCAAyB;AACzB,mCAAgF;AAChF,6CAAsD;AACtD,+CAAkD;AAElD,MAAM,gBAAgB,GAAG,eAAK,CAAC,eAAe,CAAC,CAAA;AAE/C;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,MAA8B,EAC9B,eAAuB,EACvB,aAAmC,EACnC,SAA0B,EAC1B,QAAwB,EACxB,GAAS,EACT,IAAiD,EACjD,OAAkD;IAElD,wBAAwB;IACxB,IAAI,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACvC,IACE,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EACrC;QACA,WAAW,GAAG,SAAS,CAAC,OAAO,CAAA;KAChC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACrC,4BAA4B;QAC5B,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,WAAW,GAAG,EAAE,CAAA;SACjB;QAED,WAAW,IAAI,qBAAqB,eAAe,EAAE,CAAA;KACtD;IAED,iBAAiB;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,IAAI,EAAE,CAAA;IAEjC,6BAA6B;IAC7B,MAAM,WAAW,GACf,OAAO,SAAS,CAAC,WAAW,KAAK,WAAW;QAC1C,CAAC,CAAC,SAAS,CAAC,WAAW;QACvB,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEjD,iBAAiB;IACjB,MAAM,EACJ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,eAAe,EAChB,GAAG,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;IAEpE,MAAM,iBAAiB,GACrB,aAAa,IAAI,OAAO,aAAa,KAAK,WAAW;QACnD,CAAC,CAAC,aAAa,CACX,kBAAkB,EAClB,aAA6B,EAC7B,IAAI,EACJ,IAAI,EACJ,GAAG,CACJ;QACH,CAAC,CAAC,SAAS,CAAA;IAEf,kBAAkB;IAClB,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,UAAU,EACX,GAAG,SAAS,CAAC,yBAAyB,CACrC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;IAED,IAAI,CAAC,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QACzD,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,uBAAuB;YACvD,OAAO,EACL,aAAa,eAAe,mCAAmC;gBAC/D,wDAAwD;gBACxD,oBAAoB;YACtB,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,OAAO,SAAS,CAAA;KACjB;IAED,QAAQ;IACR,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpE,MAAM,kBAAkB,GAAG,aAAa,CACtC,mBAAmB,EACnB,cAA8B,EAC9B,KAAK,EACL,IAAI,EACJ,GAAG,EACH,KAAK,CACN,CAAA;IAED,aAAa;IACb,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CACxC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,QAAQ,EACR,GAAG,CACJ,CAAA;IAED,qBAAqB;IACrB,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM;QACzC,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;QAClE,CAAC,CAAC,EAAE,CAAA;IAEN,UAAU;IACV,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;IAE9D,gEAAgE;IAChE,MAAM,QAAQ,GACZ,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAA;IAElE,OAAO;QACL,SAAS;QACT,WAAW;QACX,eAAe;QACf,aAAa;QACb,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,kBAAkB;QAClB,iBAAiB;QACjB,eAAe;QACf,mBAAmB;QACnB,kBAAkB;QAClB,UAAU;QACV,oBAAoB;QACpB,OAAO;QACP,QAAQ;QACR,UAAU;QACV,GAAG;KACJ,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,OAAkD;IAElD,MAAM,IAAI,GAAgD;QACxD,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,aAAa,EAAE;YACb,OAAO;YACP,UAAU;YACV,cAAc,CAAC,oDAAoD;SACpE;QACD,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;KACL,CAAA;IAED,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,sBAAsB;QACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QAC5D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,IAAI,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE;YACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,IAAI,SAAS,CAAC,2BAA2B,CAC7E,GAAG,CACJ,CAAA;SACF;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAA;SAC3C;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG,2BAA2B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC9D,MAAM,0BAA0B,GAAG,8BAAsB,CACvD,IAAI,CAAC,QAAQ,EACb,eAAe,CAChB,CAAA;QACD,0BAA0B,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAClD,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gBACzD,OAAO,EAAE,4DAA4D,YAAY,GAAG;gBACpF,kBAAkB,EAChB,+BAA+B;oBAC/B,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;gBACrE,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,gDAAgD;QAChD,IAAI,CAAC,QAAQ,mCAAQ,eAAe,GAAK,IAAI,CAAC,QAAQ,CAAE,CAAA;QAExD,yBAAyB;QACzB,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;YAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBACjB,CAAC,CAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAoB,CAAA;YAE1E,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAClB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpB;;;;mBAIG;gBACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YAC1C,CAAC,CAAC;iBACD,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,MAAM,eAAe,GACnB,IAAI,CAAC,MAAM,KAAK,CAAC;oBACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC;oBAClD,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEtE,IAAI,UAAkC,CAAA;gBACtC,IAAI;oBACF,UAAU,GAAG,gCAAkB,CAAC,SAAS,CAAC,CAAA;iBAC3C;gBAAC,OAAO,CAAC,EAAE;oBACV,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EAAE,wBAAwB,SAAS,mBAAmB,eAAe,GAAG;wBAC/E,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAoB,CAAA;gBAEzD,IAAI,aAAa,GACf,UAAU,KAAK,SAAS,CAAC,YAAY,CAAC,GAAG;oBACvC,CAAC,CAAC,8BAAoB,CAAC,KAAK;oBAC5B,CAAC,CAAC,8BAAoB,CAAC,QAAQ,CAAA;gBAEnC,gEAAgE;gBAChE,IACE,OAAO,OAAO,CAAC,0BAA0B,KAAK,QAAQ;oBACtD,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;wBACvD,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;wBAC7D,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAC7D,UAAU,CACX,KAAK,QAAQ,CAAC,kEAAkE;kBACjF;oBACA,aAAa;wBACX,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CACtD,UAAU,CACX,KAAK,8BAAoB,CAAC,QAAQ;4BACjC,CAAC,CAAC,8BAAoB,CAAC,QAAQ;4BAC/B,CAAC,CAAC,8BAAoB,CAAC,KAAK,CAAA;iBACjC;gBAED,MAAM,aAAa,GAAG,gBAAgB,CACpC,IAAI,EACJ,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,QAAQ,EACR,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gBAED,IAAI,aAAa,EAAE;oBACjB;;;uBAGG;oBACH,IACE,aAAa;wBACb,CAAC,CAAC,aAAa,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,EAC/C;wBACA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;qBAC3D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;4BACrD,OAAO,EAAE,6DAA6D,aAAa,CAAC,WAAW,GAAG;4BAClG,kBAAkB,EAAE,+BAA+B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4BAClG,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;iBACF;gBAED,wBAAwB;gBACxB,IACE,IAAI,CAAC,OAAO,CAAC,gCAAgC;oBAC7C,SAAS,CAAC,SAAS,EACnB;oBACA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CACzC,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;wBAC3B,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC;4BAC5C,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAE,SAAS,CAAC,UAAU,CAClB,QAA4B,CAAC,MAAM,CAAC,EACrC,GAAG,CACe,CAAA;wBAExB,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CACtC,CAAC,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE,EAAE;4BACzC,MAAM,wBAAwB,GAAG,CAAC,CAChC,MAAM,IAAI,gBAAgB,CAC3B;gCACC,CAAC,CAAC,gBAAgB;gCAClB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;4BAEvD,MAAM,8BAA8B,GAAG,MAAM,CAAC,IAAI,CAChD,wBAAwB,CACzB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gCACrB;;;;mCAIG;gCACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;4BAC1C,CAAC,CAAC,CAAA;4BAEF,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC7C,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;oCAC7C,qBAAa,CAAC;wCACZ,cAAc,EACZ,uBAAe,CAAC,oCAAoC;wCACtD,OAAO,EAAE,aAAa,kBAAkB,mBAAmB,eAAe,sDAAsD,8BAA8B,wEAAwE;wCACtO,kBAAkB,EAAE,kCAAkC,8BAA8B,CAAC,CAAC,CAAC,oDAAoD;wCAC3I,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;iCACH;gCAED,kDAAkD;gCAClD,MAAM,iBAAiB,GACrB,8BAA8B,CAAC,CAAC,CAAC,CAAA;gCAEnC,MAAM,uBAAuB,GAC3B,IAAI,CAAC,MAAM,KAAK,CAAC;oCACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,CACb;oCACH,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,EACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,CAAA;gCAEP,IAAI,kBAA0C,CAAA;gCAE9C,IAAI;oCACF,kBAAkB,GAAG,gCAAkB,CACrC,iBAAiB,CAClB,CAAA;iCACF;gCAAC,OAAO,CAAC,EAAE;oCACV,qBAAa,CAAC;wCACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wCACnD,OAAO,EAAE,wBAAwB,SAAS,kBAAkB,uBAAuB,mBAAmB,eAAe,GAAG;wCACxH,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;oCAEF,OAAM;iCACP;gCAED,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,8BAAoB,CAAC,YAAY,EACjC,wBAAwB,CAAC,kBAAkB,CAAC,EAC5C,gBAAgB,EAChB,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gCAED,IAAI,iBAAiB,EAAE;oCACrB;;;uCAGG;oCACH,IACE,iBAAiB;wCACjB,CAAC,CACC,iBAAiB,CAAC,WAAW;4CAC7B,IAAI,CAAC,kBAAkB,CACxB,EACD;wCACA,IAAI,CAAC,kBAAkB,CACrB,iBAAiB,CAAC,WAAW,CAC9B,GAAG,iBAAiB,CAAA;qCACtB;yCAAM;wCACL,qBAAa,CAAC;4CACZ,cAAc,EACZ,uBAAe,CAAC,qBAAqB;4CACvC,OAAO,EAAE,sEAAsE,iBAAiB,CAAC,WAAW,GAAG;4CAC/G,kBAAkB,EAAE,wCAAwC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4CAC3G,IAAI;4CACJ,GAAG,EAAE,gBAAgB;yCACtB,CAAC,CAAA;qCACH;iCACF;6BACF;wBACH,CAAC,CACF,CAAA;oBACH,CAAC,CACF,CAAA;iBACF;YACH,CAAC,CAAC,CAAA;SACL;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC;AAlRD,sCAkRC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAS,2BAA2B,CAClC,GAAS,EACT,IAAiD;IAEjD,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAElD,0CAA0C;IAC1C,KAAK,IAAI,SAAS,IAAI,QAAQ,EAAE;QAC9B,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAE1C,oEAAoE;QACpE,IAAI,MAAM,CAAA;QACV,IAAI,UAAU,GAAG,EAAE,CAAA;QACnB,IAAI,WAAW,CAAA;QACf,QAAQ,cAAc,CAAC,IAAI,EAAE;YAC3B,KAAK,QAAQ;gBACX,WAAW,GAAG,kDAAkD,SAAS,GAAG,CAAA;gBAC5E,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,WAAW,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;iBACvC;gBAED,UAAU,GAAG;oBACX,MAAM,EAAE,SAAS,CAAC,QAAQ,CACxB,GAAG,SAAS,SAAS,EACrB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;iBACF,CAAA;gBAED,MAAM,GAAG;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW;oBACX,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF,CAAA;gBACD,MAAK;YAEP,KAAK,MAAM;gBACT,QAAQ,cAAc,CAAC,MAAM,EAAE;oBAC7B;;;;uBAIG;oBACH,KAAK,OAAO;wBACV,WAAW,GAAG,iDAAiD,SAAS,GAAG,CAAA;wBAE3E,UAAU,GAAG;4BACX,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;4BACD,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;yBACF,CAAA;wBAED,MAAM,GAAG;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW;4BACX,UAAU,EAAE;gCACV,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;gCACD,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;6BACF;yBACF,CAAA;wBACD,MAAK;oBAEP;wBACE,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;4BAChE,OAAO,EACL,qDAAqD;gCACrD,2BAA2B,cAAc,CAAC,MAAM,WAAW;gCAC3D,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;4BACvB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;iBACL;gBACD,MAAK;YAEP,kBAAkB;YAClB,KAAK,eAAe;gBAClB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,qDAAqD;wBACrD,gCAAgC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBACnD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,MAAK;YAEP,KAAK,QAAQ;gBACX,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;oBACrD,OAAO,EACL,uCAAuC,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK;wBAC1D,4DAA4D;oBAC9D,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,4DAA4D;gBAC5D,SAAQ;YAEV;gBACE,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,0CAA0C;wBAC1C,SAAS,cAAc,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBAC5D,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;SACL;QAED,kCAAkC;QAClC,MAAM,CAAC,SAAS,CAAC,GAAG;YAClB,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,cAAc;YACnB,UAAU;YACV,MAAM;YACN,GAAG;SACJ,CAAA;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,KAA4B,EAC5B,MAAoB,EACpB,iBAA0B,EAC1B,IAAiD,EACjD,GAAS,EACT,KAAqC;IAErC,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAE7C,wBAAwB;IACxB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,cAAc;YAC9C,OAAO,EACL,mDAAmD;gBACnD,mBAAmB,aAAa,iBAAiB,IAAI,CAAC,SAAS,CAC7D,MAAM,CACP,GAAG;YACN,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,sEAAsE;QACtE,OAAO;YACL,aAAa;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,IAAI;YACX,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,0BAA0B,EAAE,IAAI;YAChC,iBAAiB,EAAE,MAAM;SAC1B,CAAA;KACF;SAAM;QACL,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAA;SACnD;QAED,MAAM,SAAS,GAAG,EAAE,CAAA;QACpB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,SAAS,CACP,SAAS,CAAC,QAAQ,CAChB,OAAO,EACP,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;oBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;oBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CACF,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;YACpB,CAAC,CAAC,CAAA;SACH;QAED,2DAA2D;QAC3D,MAAM,KAAK,GAAG,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAE9D,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,8CAA8C;YAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAExC;;;eAGG;YACH,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;gBACpC,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,WAAW,EAAE;oBAChD,2CAA2C;oBAC3C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;wBACzD,IACE,OAAO,SAAS,CAAC,WAAW,CAAC,KAAK,WAAW;4BAC7C,CAAC,SAAS,CACR,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,EAClC,SAAS,CAAC,WAAW,CAAC,CACvB,EACD;4BACA,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,kBAAkB;gCAClD,OAAO,EACL,2EAA2E;oCAC3E,aAAa,WAAW,wCAAwC;oCAChE,IAAI,IAAI,CAAC,SAAS,CAChB,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CACnC,QAAQ;oCACT,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI;gCAChD,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;yBACH;oBACH,CAAC,CAAC,CAAA;oBAEF;;;;uBAIG;oBACH,eAAe,CAAC,KAAK,mCAAQ,SAAS,GAAK,eAAe,CAAC,KAAK,CAAE,CAAA;iBACnE;qBAAM;oBACL,mDAAmD;oBACnD,eAAe,CAAC,KAAK,GAAG,SAAS,CAAA;iBAClC;aACF;YAED,OAAO,eAAe,CAAA;SACvB;aAAM;YACL,wDAAwD;YACxD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;YAErD,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACxC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC;gBAC1D,CAAC,CAAC,SAAS,CAAC,UAAU,CAClB,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CACrD,CAAA;YACL,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAA;YAE9D,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAErD;;;;eAIG;YACH,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAE3D,MAAM,iBAAiB,GAAG,SAAS,CAAC,0BAA0B,CAC5D,eAA+B,EAC/B,IAAI,CACL,CAAA;YAED,MAAM,GAAG,GAAmB;gBAC1B,aAAa;gBAEb;;;;;;;mBAOG;gBACH,MAAM;gBACN,QAAQ,EAAE,EAAE;gBACZ,iBAAiB;gBACjB,cAAc,EAAE,SAAS;gBACzB,KAAK,EAAE,SAAS;gBAChB,eAAe,EAAE,QAAQ;gBACzB,0BAA0B,EAAE,aAAa;aAC1C,CAAA;YAED,gFAAgF;YAChF,IACE,iBAAiB,KAAK,QAAQ;gBAC9B,iBAAiB,KAAK,MAAM;gBAC5B,iBAAiB,KAAK,MAAM,EAC5B;gBACA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,iCAAiC;gBACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpB;YAED,4DAA4D;YAC5D;YACE,qEAAqE;YACrE,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;gBACnC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,oCAAoC;gBAC/E,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC;gBACzC,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC,EACzC;gBACA,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB;wBAC1D,0DAA0D;wBAC1D,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,iDAAiD;YACjD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED;;;;eAIG;YACH,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED,IAAI,iBAAiB,EAAE;gBACrB,QAAQ,iBAAiB,EAAE;oBACzB,KAAK,MAAM;wBACT,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,QAAQ,EAAE;4BAC7C,yCAAyC;4BACzC,uEAAuE;4BACvE,0EAA0E;4BAC1E,IAAI,WAAW,GAAG,eAAe,CAAC,KAAK,CAAA;4BACvC,IAAI,SAAS,GAAG,GAAG,IAAI,UAAU,CAAA;4BACjC,MAAM,aAAa,GACjB,eAAe,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;4BAExD,IAAI,MAAM,IAAI,WAAW,EAAE;gCACzB,SAAS,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;6BAC3D;4BAED,MAAM,aAAa,GAAG,aAAa;4BACjC,wFAAwF;4BACxF;gCACE,aAAa;gCACb,OAAO,EAAE,SAAS;6BACnB,EACD,WAA2B,EAC3B,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED,0BAA0B;4BAC1B,GAAG,CAAC,cAAc,GAAG,aAAa,CAAA;yBACnC;wBACD,MAAK;oBAEP,KAAK,QAAQ;wBACX,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;wBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;4BAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;4BACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;yBACF;6BAAM;4BACL,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gCACzD,OAAO,EACL,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB;oCACjD,gBAAgB;gCAClB,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;4BAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;yBAC/B;wBAED,MAAK;iBACR;aACF;iBAAM;gBACL,yBAAyB;gBAEzB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;oBACnD,OAAO,EAAE,0DAA0D,IAAI,CAAC,SAAS,CAC/E,MAAM,CACP,IAAI;oBACL,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;aAC/B;YAED,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AA9SD,sCA8SC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,MAAoB,EACpB,QAA0B;IAE1B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACpD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3B;;;WAGG;QAEH,IAAI,aAAa,KAAK,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;YACxE,OAAO,KAAK,CAAA;SACb;KACF;IAED,mDAAmD;IACnD,OAAO,CAAC,CAAC,CAAA;AACX,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,KAA4B;IACpD,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QACvC,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,qCAAqC;KACjH;SAAM,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QAC5C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4BAA4B;KACtG;SAAM,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QAC/C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4DAA4D;KACzI;SAAM,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QAC7C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,uBAAuB;KAClG;SAAM;QACL,OAAO,iBAAiB,CAAA,CAAC,yBAAyB;KACnD;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,KAA4B,EAC5B,SAAmB;IAEnB,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC1E,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;KACF;IAED,IAAI,UAAkB,CAAA;IAEtB,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE;QAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,aAAa,EACnB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAA;SACjC;KACF;IAED,4BAA4B;IAC5B,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,OAAO,EACb,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAA;SAC3B;KACF;IAED,4DAA4D;IAC5D,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,UAAU,EAChB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;SAC9B;KACF;IAED,uBAAuB;IACvB,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,QAAQ,EACd,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAA;SAC5B;KACF;IAED,6DAA6D;IAC7D,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,SAAS,CAAC,QAAQ,CAC7B,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;YACrC,CAAC,CAAC,KAAK,CAAC,aAAa;YACrB,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACnC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;oBACtC,CAAC,CAAC,KAAK,CAAC,UAAU;oBAClB,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;wBACpC,CAAC,CAAC,KAAK,CAAC,QAAQ;wBAChB,CAAC,CAAC,iBAAiB,EACrB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;KACF;IAED,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAClC,IAAI,QAAQ,GAAG,CAAC,CAAA;QAEhB;;;;WAIG;QACH,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAC,EAAE;YACrD,QAAQ,EAAE,CAAA;SACX;QACD,UAAU,GAAG,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAA;KACxC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CACnC,GAAmB,EACnB,MAAoB,EACpB,QAAkB,EAClB,iBAA0B,EAC1B,IAAiD,EACjD,GAAS;IAET;;;;OAIG;IACH,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAClC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;YAC3C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;KACH;IAED,KAAK,IAAI,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;QACzC,IAAI,cAAc,GAAG,WAAW,CAAA;QAChC,IAAI,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;QAEvE,IAAI,MAAM,IAAI,UAAU,EAAE;YACxB,cAAc,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YACpD,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,CAAiB,CAAA;SAC3E;QAED,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE;YACxC,MAAM,aAAa,GAAG,aAAa,CACjC;gBACE,aAAa;gBACb,OAAO,EAAE,cAAc;gBACvB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,mIAAmI;aACjK,EACD,UAAU,EACV,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;YAED,4BAA4B;YAC5B,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;SAChD;aAAM;YACL,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;gBACpD,OAAO,EACL,wDAAwD;oBACxD,kEAAkE;oBAClE,iBAAiB,WAAW,kBAAkB,IAAI,CAAC,SAAS,CAC1D,MAAM,CACP,IAAI;oBACL,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG;gBAC9C,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;SACH;KACF;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CACnB,MAAsC,EACtC,UAAiD,EACjD,IAAiD,EACjD,GAAS;IAET,qBAAqB;IACrB,IAAI,MAAM,IAAI,MAAM,EAAE;QACpB,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAiB,CAAA;QAElE,IAAI,iBAAiB,IAAI,UAAU,EAAE;YACnC,OAAO,UAAU,CAAC,iBAAiB,CAAC,CAAA;SACrC;aAAM;YACL,6CAA6C;YAC7C,UAAU,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAA;SACvC;KACF;IAED,MAAM,eAAe,GAAiB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IAExE,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;QACxC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAC7C,8BAA8B;YAC9B,MAAM,cAAc,GAAG,YAAY,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAExE,IAAI,cAAc,CAAC,IAAI,EAAE;gBACvB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;oBACzB,eAAe,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAA;oBAE1C,yBAAyB;iBAC1B;qBAAM,IAAI,eAAe,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,EAAE;oBACvD,2BAA2B;oBAE3B,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI,GAAG,sCAAsC;wBAChD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;iBACH;aACF;YAED,oCAAoC;YACpC,IAAI,YAAY,IAAI,cAAc,EAAE;gBAClC,IAAI,CAAC,CAAC,YAAY,IAAI,eAAe,CAAC,EAAE;oBACtC,eAAe,CAAC,UAAU,GAAG,EAAE,CAAA;iBAChC;gBAED,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,CAC/C,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;oBAC3B,IAAI,YAAY,IAAI,eAAe,CAAC,UAAU,EAAE;wBAC9C,uBAAuB;wBAEvB,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;4BACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI;gCACL,2CAA2C,YAAY,IAAI;4BAC7D,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;yBAAM;wBACL,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAA;qBACpD;gBACH,CAAC,CACF,CAAA;aACF;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,kCAAkC;YAClC,IAAI,UAAU,IAAI,cAAc,EAAE;gBAChC,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE;oBACpC,eAAe,CAAC,QAAQ,GAAG,EAAE,CAAA;iBAC9B;gBAED,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBACnD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;wBACxD,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;qBAChD;gBACH,CAAC,CAAC,CAAA;aACH;QACH,CAAC,CAAC,CAAA;KACH;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAQD;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,OAA2C,EAC3C,IAAiD,EACjD,GAAS;IAET,MAAM,MAAM,GAAqB;QAC/B,qBAAqB,EAAE,EAAE;QACzB,aAAa,EAAE,EAAE;QACjB,WAAW,EAAE,EAAE;KAChB,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,sBAAsB;QACtB,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAiB,CAAA;SACnE;QAED,kCAAkC;QAClC,MAAM,uBAAuB,GAAG,SAAS,CAAC,0BAA0B,CAClE,MAAM,EACN,IAAI,CACL,CAAA;QACD,IAAI,uBAAuB,EAAE;YAC3B,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;SAC3D;QAED,yBAAyB;QACzB,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SAC7C;QAED,uBAAuB;QACvB,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;SAChE;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,8EAA8E;aACtJ,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CACvE,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,wCAAwC;QACxC,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,MAAM,aAAa,GAEf,EAAE,CAAA;gBACN,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAA;gBAEhD;;;;mBAIG;gBAEH,IAAI,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/D,aAAa,CAAC,YAAY,CAAC,GAAG;4BAC5B,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC;yBACzC,CAAA;oBACH,CAAC,CAAC,CAAA;iBACH;gBAED,wDAAwD;gBACxD,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IACE,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,4DAA4D;4BACzG,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,QAAQ;4BAC/C,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gCAC5C,yCAAyC;gCACzC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;4BACvD,CAAC,CAAC,EACF;4BACA,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;yBACzC;wBAED,4BAA4B;wBAC5B,IAAI,CAAC,CAAC,YAAY,IAAI,aAAa,CAAC,EAAE;4BACpC,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;yBACjC;wBACD,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;oBAC5D,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;oBAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;oBACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;iBACF;gBAED,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;4BAC7C,uCAAuC;4BACvC,MAAM,cAAc,GAAG,UAAU,CAAC,YAAY,CAAiB,CAAA;4BAC/D,MAAM,aAAa,GACjB,cAAc,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;4BAEvD,MAAM,aAAa,GAAG,aAAa,CACjC;gCACE,aAAa;gCACb,OAAO,EAAE,YAAY;gCACrB,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,mIAAmI;6BACrK,EACD,cAAc,EACd,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED;;;+BAGG;4BACH,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,aAAa,CAAA;yBACjD;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,iCAAiC;gBACjC,sBAAsB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC9C,wBAAwB;oBACxB,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG;wBACjC,iBAAiB,EAAE,MAAM;qBAC1B,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAEnB,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAA;gBAChC,OAAO,GAAG,CAAA;aACX;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;wBAC9D,2DAA2D;wBAC3D,yDAAyD;wBACzD,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;oBAC9D,2DAA2D;oBAC3D,2DAA2D;oBAC3D,6BAA6B;gBAC/B,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,2CAA2C;QAC3C,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,kDAAkD;YAClD,IAAI,iBAAiB,EAAE;gBACrB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,WAAW;oBAC3C,OAAO,EAAE,uDAAuD;oBAChE,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC7C,4BAA4B;oBAC5B,IAAI,OAAe,CAAA;oBAEnB,IAAI,MAAM,IAAI,YAAY,EAAE;wBAC1B,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;wBAC/C,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,MAAM,CAAC,EACpB,GAAG,CACJ,CAAA;qBACF;oBAED,sDAAsD;oBACtD,IACE,SAAS,CAAC,0BAA0B,CAAC,YAAY,EAAE,IAAI,CAAC;wBACxD,QAAQ,EACR;wBACA,MAAM,aAAa,GACjB,YAAY,CAAC,SAAS,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAA;wBACrD,MAAM,aAAa,GAAG,aAAa,CACjC;4BACE,aAAa;4BACb,OAAO;4BACP,UAAU,EAAE,YAAY,CAAC,KAAK;4BAC9B,QAAQ,EAAE,GAAG,QAAQ,QAAQ;yBAC9B,EACD,YAAY,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CACA;wBAAC,GAAG,CAAC,cAAmC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;qBAC9D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;4BAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;gCAC7D,kDAAkD,IAAI,CAAC,SAAS,CAC9D,YAAY,CACb,IAAI;gCACL,uDAAuD;gCACvD,oBAAoB;4BACtB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;gBAEF,wEAAwE;gBACxE,IACE,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAC7B,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,EAAE;wBACzC,OAAO,aAAa,CAAC,iBAAiB,KAAK,QAAQ,CAAA;oBACrD,CAAC,CAAC,EACF;oBACA,+DAA+D;oBAC/D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAEnB,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAA;oBAC/B,OAAO,GAAG,CAAA;iBACX;qBAAM;oBACL,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;wBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;4BAC7D,4DAA4D;4BAC5D,2DAA2D;wBAC7D,kBAAkB,EAAE,kCAAkC;wBACtD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,8BAA8B;oBAC9B,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;oBAC9B,OAAO,GAAG,CAAA;iBACX;aACF;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CACvB,GAAG,CAAC,MAAM,CACX,+BAA+B;wBAChC,6DAA6D;wBAC7D,6CAA6C;oBAC/C,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,+BAA+B;oBACpE,8DAA8D;oBAC9D,oDAAoD;gBACtD,kBAAkB,EAAE,kCAAkC;gBACtD,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 24c05242..9e3f209b 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -365,8 +365,9 @@ function createOrReuseEnum({ def, data }) { else { translationLog(`Create GraphQLEnumType '${def.graphQLTypeName}'`); const values = {}; + const mapping = def.schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping] || {}; def.schema.enum.forEach((e) => { - values[Oas3Tools.sanitize(e.toString(), !data.options.simpleEnumValues + values[Oas3Tools.sanitize(mapping[e.toString()] || e.toString(), !data.options.simpleEnumValues ? Oas3Tools.CaseStyle.ALL_CAPS : Oas3Tools.CaseStyle.simple)] = { value: e diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 37a39e45..f9a7621c 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index 20e7550e..7b904789 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -315,7 +315,7 @@ function translateOpenAPIToGraphQL( // Check if the operation should be added as a Query or Mutation if (operation.operationType === GraphQLOperationType.Query) { let fieldName = - operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] || + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] || (!singularNames ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) : Oas3Tools.sanitize( @@ -395,7 +395,7 @@ function translateOpenAPIToGraphQL( } else { let saneFieldName: string const extensionFieldName = - operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] if (extensionFieldName) { saneFieldName = extensionFieldName @@ -483,7 +483,7 @@ function translateOpenAPIToGraphQL( let saneFieldName: string const extensionFieldName = - operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] if (extensionFieldName) { saneFieldName = extensionFieldName diff --git a/packages/openapi-to-graphql/src/oas_3_tools.ts b/packages/openapi-to-graphql/src/oas_3_tools.ts index 8bf4b867..3ec5daac 100644 --- a/packages/openapi-to-graphql/src/oas_3_tools.ts +++ b/packages/openapi-to-graphql/src/oas_3_tools.ts @@ -89,7 +89,9 @@ export enum HTTP_METHODS { export const SUCCESS_STATUS_RX = /2[0-9]{2}|2XX/ export enum OAS_GRAPHQL_EXTENSIONS { - Name = 'x-graphql-name' + TypeName = 'x-graphql-type-name', + FieldName = 'x-graphql-field-name', + EnumMapping = 'x-graphql-enum-mapping' } /** @@ -630,7 +632,7 @@ export function getRequestSchemaAndNames( } let payloadSchemaNames: SchemaNames = { - fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.Name], + fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: payloadSchema.title, fromPath: inferResourceNameFromPath(path) @@ -773,7 +775,7 @@ export function getResponseSchemaAndNames( } const responseSchemaNames: SchemaNames = { - fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.Name], + fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: responseSchema.title, fromPath: inferResourceNameFromPath(path) diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index 3c9e2d9c..5375c894 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -687,14 +687,16 @@ export function createDataDef( const saneLinks = {} if (typeof links === 'object') { Object.keys(links).forEach((linkKey) => { - saneLinks[ - Oas3Tools.sanitize( - linkKey, - !data.options.simpleNames - ? Oas3Tools.CaseStyle.camelCase - : Oas3Tools.CaseStyle.simple - ) - ] = links[linkKey] + const link = links[linkKey] + const fromExtension = link[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] + const linkSaneName = Oas3Tools.sanitize( + fromExtension || linkKey, + !data.options.simpleNames + ? Oas3Tools.CaseStyle.camelCase + : Oas3Tools.CaseStyle.simple + ) + + saneLinks[linkSaneName] = link }) } @@ -876,7 +878,7 @@ export function createDataDef( let itemsSchema = collapsedSchema.items let itemsName = `${name}ListItem` const fromExtension = - collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + collapsedSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] if ('$ref' in itemsSchema) { itemsName = collapsedSchema.items['$ref'].split('/').pop() @@ -1022,6 +1024,13 @@ function getSchemaName( names.fromExtension, Oas3Tools.CaseStyle.PascalCase ) + + if (usedNames.includes(saneName)) { + throw new Error( + `Cannot create Type with name "${saneName}".\nYou provided ${names.fromExtension} in an ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName} extension but it collides with another Type called ${saneName}` + ) + } + if (!usedNames.includes(saneName)) { schemaName = names.fromExtension } @@ -1118,7 +1127,7 @@ function addObjectPropertiesToDataDef( for (let propertyKey in schema.properties) { let propSchemaName = propertyKey let propSchema = schema.properties[propertyKey] - const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + const fromExtension = propSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] if ('$ref' in propSchema) { propSchemaName = propSchema['$ref'].split('/').pop() @@ -1479,7 +1488,7 @@ function createDataDefFromAnyOf( // Dereferenced by processing anyOfData const propertySchema = properties[propertyName] as SchemaObject const fromExtension = - propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + propertySchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] const subDefinition = createDataDef( { @@ -1616,7 +1625,7 @@ function createDataDefFromOneOf( 'object' ) { const fromExtension = - memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.Name] + memberSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] const subDefinition = createDataDef( { fromExtension, diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index d5939733..b84cd594 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -536,10 +536,12 @@ function createOrReuseEnum({ translationLog(`Create GraphQLEnumType '${def.graphQLTypeName}'`) const values = {} + const mapping = + def.schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping] || {} def.schema.enum.forEach((e) => { values[ Oas3Tools.sanitize( - e.toString(), + mapping[e.toString()] || e.toString(), !data.options.simpleEnumValues ? Oas3Tools.CaseStyle.ALL_CAPS : Oas3Tools.CaseStyle.simple From 43e7787ae27e3db9898bcdd5c437499801b4e706 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Tue, 20 Apr 2021 17:55:46 +0200 Subject: [PATCH 5/9] Add error handling and test coverage Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.js | 23 +- packages/openapi-to-graphql/lib/index.js.map | 2 +- .../openapi-to-graphql/lib/oas_3_tools.js | 8 +- .../openapi-to-graphql/lib/oas_3_tools.js.map | 2 +- .../openapi-to-graphql/lib/preprocessor.js | 2 +- .../lib/preprocessor.js.map | 2 +- .../openapi-to-graphql/lib/schema_builder.js | 6 +- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/src/index.ts | 30 +- .../openapi-to-graphql/src/oas_3_tools.ts | 8 +- .../openapi-to-graphql/src/preprocessor.ts | 2 +- .../openapi-to-graphql/src/schema_builder.ts | 23 +- .../test/extensions.test.ts | 162 ++++ .../test/fixtures/extensions.json | 844 ++++++++++++++++++ .../test/fixtures/extensions_error1.json | 103 +++ .../test/fixtures/extensions_error2.json | 80 ++ .../test/fixtures/extensions_error3.json | 97 ++ .../test/fixtures/extensions_error4.json | 109 +++ .../test/fixtures/extensions_error5.json | 120 +++ 19 files changed, 1587 insertions(+), 38 deletions(-) create mode 100644 packages/openapi-to-graphql/test/extensions.test.ts create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error1.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error2.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error3.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error4.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error5.json diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index 2262fe1b..67894b9a 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -162,10 +162,13 @@ provideErrorExtensions, equivalentToMessages }) { const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); // Check if the operation should be added as a Query or Mutation if (operation.operationType === graphql_1.GraphQLOperationType.Query) { - let fieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] || - (!singularNames - ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) - : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); + const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; + if (extensionFieldName in queryFields) { + throw new Error(`Cannot create query with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another query called "${extensionFieldName}"`); + } + let fieldName = extensionFieldName !== null && extensionFieldName !== void 0 ? extensionFieldName : (!singularNames + ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) + : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authQueryFields[securityRequirement] !== 'object') { @@ -227,6 +230,9 @@ provideErrorExtensions, equivalentToMessages }) { let saneFieldName; const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; if (extensionFieldName) { + if (extensionFieldName in data.saneMap) { + throw new Error(`Cannot create mutation with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another mutation called "${extensionFieldName}"`); + } saneFieldName = extensionFieldName; } else if (!singularNames) { @@ -285,14 +291,11 @@ provideErrorExtensions, equivalentToMessages }) { translationLog(`Process operation '${operationId}'...`); let field = getFieldForOperation(operation, options.baseUrl, data, requestOptions, connectOptions); const saneOperationId = Oas3Tools.sanitize(operationId, Oas3Tools.CaseStyle.camelCase); - let saneFieldName; const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; - if (extensionFieldName) { - saneFieldName = extensionFieldName; - } - else { - Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); + if (extensionFieldName && extensionFieldName in data.saneMap) { + throw new Error(`Cannot create subscription with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another subscription called "${extensionFieldName}"`); } + const saneFieldName = extensionFieldName !== null && extensionFieldName !== void 0 ? extensionFieldName : Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authSubscriptionFields[securityRequirement] !== 'object') { diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index bba3068f..99978ddd 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js b/packages/openapi-to-graphql/lib/oas_3_tools.js index f35eb7e9..618a89ff 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js @@ -459,7 +459,7 @@ function getRequestSchemaAndNames(path, method, operation, oas) { let fromRef; const payloadSchemaOrRef = (_b = (_a = requestBodyObject === null || requestBodyObject === void 0 ? void 0 : requestBodyObject.content) === null || _a === void 0 ? void 0 : _a[payloadContentType]) === null || _b === void 0 ? void 0 : _b.schema; // Resolve payload schema reference if applicable - if ('$ref' in payloadSchemaOrRef) { + if (payloadSchemaOrRef && '$ref' in payloadSchemaOrRef) { fromRef = payloadSchemaOrRef.$ref.split('/').pop(); payloadSchema = resolveRef(payloadSchemaOrRef.$ref, oas); } @@ -470,7 +470,7 @@ function getRequestSchemaAndNames(path, method, operation, oas) { const payloadRequired = typeof (requestBodyObject === null || requestBodyObject === void 0 ? void 0 : requestBodyObject.required) === 'boolean' ? requestBodyObject === null || requestBodyObject === void 0 ? void 0 : requestBodyObject.required : false; payloadSchemaNames = { - fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], + fromExtension: payloadSchema === null || payloadSchema === void 0 ? void 0 : payloadSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: payloadSchema === null || payloadSchema === void 0 ? void 0 : payloadSchema.title, fromPath: inferResourceNameFromPath(path) @@ -572,7 +572,7 @@ function getResponseSchemaAndNames(path, method, operation, oas, data, options) let fromRef; const responseSchemaOrRef = (_b = (_a = responseObject === null || responseObject === void 0 ? void 0 : responseObject.content) === null || _a === void 0 ? void 0 : _a[responseContentType]) === null || _b === void 0 ? void 0 : _b.schema; // Resolve response schema reference if applicable - if ('$ref' in responseSchemaOrRef) { + if (responseSchemaOrRef && '$ref' in responseSchemaOrRef) { fromRef = responseSchemaOrRef.$ref.split('/').pop(); responseSchema = resolveRef(responseSchemaOrRef.$ref, oas); } @@ -580,7 +580,7 @@ function getResponseSchemaAndNames(path, method, operation, oas, data, options) responseSchema = responseSchemaOrRef; } responseSchemaNames = { - fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], + fromExtension: responseSchema === null || responseSchema === void 0 ? void 0 : responseSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: responseSchema === null || responseSchema === void 0 ? void 0 : responseSchema.title, fromPath: inferResourceNameFromPath(path) diff --git a/packages/openapi-to-graphql/lib/oas_3_tools.js.map b/packages/openapi-to-graphql/lib/oas_3_tools.js.map index 1a68a538..36b8c145 100644 --- a/packages/openapi-to-graphql/lib/oas_3_tools.js.map +++ b/packages/openapi-to-graphql/lib/oas_3_tools.js.map @@ -1 +1 @@ -{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"oas_3_tools.js","sourceRoot":"","sources":["../src/oas_3_tools.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index babe81f7..922f8625 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -711,7 +711,7 @@ function getSchemaName(names, usedNames) { if (typeof names.fromExtension === 'string') { const saneName = Oas3Tools.sanitize(names.fromExtension, Oas3Tools.CaseStyle.PascalCase); if (usedNames.includes(saneName)) { - throw new Error(`Cannot create Type with name "${saneName}".\nYou provided ${names.fromExtension} in an ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName} extension but it collides with another Type called ${saneName}`); + throw new Error(`Cannot create Type with name "${saneName}".\nYou provided "${names.fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName}, but it conflicts with another Type called "${saneName}"`); } if (!usedNames.includes(saneName)) { schemaName = names.fromExtension; diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index 0da2618b..abf37a4b 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAmBhE,WAAW;AACX,2CAA0C;AAC1C,wCAAuC;AACvC,iCAAyB;AACzB,mCAAgF;AAChF,6CAAsD;AACtD,+CAAkD;AAElD,MAAM,gBAAgB,GAAG,eAAK,CAAC,eAAe,CAAC,CAAA;AAE/C;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,MAA8B,EAC9B,eAAuB,EACvB,aAAmC,EACnC,SAA0B,EAC1B,QAAwB,EACxB,GAAS,EACT,IAAiD,EACjD,OAAkD;IAElD,wBAAwB;IACxB,IAAI,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACvC,IACE,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EACrC;QACA,WAAW,GAAG,SAAS,CAAC,OAAO,CAAA;KAChC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACrC,4BAA4B;QAC5B,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,WAAW,GAAG,EAAE,CAAA;SACjB;QAED,WAAW,IAAI,qBAAqB,eAAe,EAAE,CAAA;KACtD;IAED,iBAAiB;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,IAAI,EAAE,CAAA;IAEjC,6BAA6B;IAC7B,MAAM,WAAW,GACf,OAAO,SAAS,CAAC,WAAW,KAAK,WAAW;QAC1C,CAAC,CAAC,SAAS,CAAC,WAAW;QACvB,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEjD,iBAAiB;IACjB,MAAM,EACJ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,eAAe,EAChB,GAAG,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;IAEpE,MAAM,iBAAiB,GACrB,aAAa,IAAI,OAAO,aAAa,KAAK,WAAW;QACnD,CAAC,CAAC,aAAa,CACX,kBAAkB,EAClB,aAA6B,EAC7B,IAAI,EACJ,IAAI,EACJ,GAAG,CACJ;QACH,CAAC,CAAC,SAAS,CAAA;IAEf,kBAAkB;IAClB,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,UAAU,EACX,GAAG,SAAS,CAAC,yBAAyB,CACrC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;IAED,IAAI,CAAC,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QACzD,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,uBAAuB;YACvD,OAAO,EACL,aAAa,eAAe,mCAAmC;gBAC/D,wDAAwD;gBACxD,oBAAoB;YACtB,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,OAAO,SAAS,CAAA;KACjB;IAED,QAAQ;IACR,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpE,MAAM,kBAAkB,GAAG,aAAa,CACtC,mBAAmB,EACnB,cAA8B,EAC9B,KAAK,EACL,IAAI,EACJ,GAAG,EACH,KAAK,CACN,CAAA;IAED,aAAa;IACb,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CACxC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,QAAQ,EACR,GAAG,CACJ,CAAA;IAED,qBAAqB;IACrB,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM;QACzC,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;QAClE,CAAC,CAAC,EAAE,CAAA;IAEN,UAAU;IACV,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;IAE9D,gEAAgE;IAChE,MAAM,QAAQ,GACZ,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAA;IAElE,OAAO;QACL,SAAS;QACT,WAAW;QACX,eAAe;QACf,aAAa;QACb,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,kBAAkB;QAClB,iBAAiB;QACjB,eAAe;QACf,mBAAmB;QACnB,kBAAkB;QAClB,UAAU;QACV,oBAAoB;QACpB,OAAO;QACP,QAAQ;QACR,UAAU;QACV,GAAG;KACJ,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,OAAkD;IAElD,MAAM,IAAI,GAAgD;QACxD,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,aAAa,EAAE;YACb,OAAO;YACP,UAAU;YACV,cAAc,CAAC,oDAAoD;SACpE;QACD,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;KACL,CAAA;IAED,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,sBAAsB;QACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QAC5D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,IAAI,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE;YACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,IAAI,SAAS,CAAC,2BAA2B,CAC7E,GAAG,CACJ,CAAA;SACF;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAA;SAC3C;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG,2BAA2B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC9D,MAAM,0BAA0B,GAAG,8BAAsB,CACvD,IAAI,CAAC,QAAQ,EACb,eAAe,CAChB,CAAA;QACD,0BAA0B,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAClD,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gBACzD,OAAO,EAAE,4DAA4D,YAAY,GAAG;gBACpF,kBAAkB,EAChB,+BAA+B;oBAC/B,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;gBACrE,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,gDAAgD;QAChD,IAAI,CAAC,QAAQ,mCAAQ,eAAe,GAAK,IAAI,CAAC,QAAQ,CAAE,CAAA;QAExD,yBAAyB;QACzB,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;YAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBACjB,CAAC,CAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,CAAoB,CAAA;YAEvE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAClB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpB;;;;mBAIG;gBACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YAC1C,CAAC,CAAC;iBACD,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,MAAM,eAAe,GACnB,IAAI,CAAC,MAAM,KAAK,CAAC;oBACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC;oBAClD,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEtE,IAAI,UAAkC,CAAA;gBACtC,IAAI;oBACF,UAAU,GAAG,gCAAkB,CAAC,SAAS,CAAC,CAAA;iBAC3C;gBAAC,OAAO,CAAC,EAAE;oBACV,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EAAE,wBAAwB,SAAS,mBAAmB,eAAe,GAAG;wBAC/E,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAoB,CAAA;gBAEzD,IAAI,aAAa,GACf,UAAU,KAAK,SAAS,CAAC,YAAY,CAAC,GAAG;oBACvC,CAAC,CAAC,8BAAoB,CAAC,KAAK;oBAC5B,CAAC,CAAC,8BAAoB,CAAC,QAAQ,CAAA;gBAEnC,gEAAgE;gBAChE,IACE,OAAO,OAAO,CAAC,0BAA0B,KAAK,QAAQ;oBACtD,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;wBACvD,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;wBAC7D,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAC7D,UAAU,CACX,KAAK,QAAQ,CAAC,kEAAkE;kBACjF;oBACA,aAAa;wBACX,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CACtD,UAAU,CACX,KAAK,8BAAoB,CAAC,QAAQ;4BACjC,CAAC,CAAC,8BAAoB,CAAC,QAAQ;4BAC/B,CAAC,CAAC,8BAAoB,CAAC,KAAK,CAAA;iBACjC;gBAED,MAAM,aAAa,GAAG,gBAAgB,CACpC,IAAI,EACJ,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,QAAQ,EACR,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gBAED,IAAI,aAAa,EAAE;oBACjB;;;uBAGG;oBACH,IACE,aAAa;wBACb,CAAC,CAAC,aAAa,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,EAC/C;wBACA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;qBAC3D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;4BACrD,OAAO,EAAE,6DAA6D,aAAa,CAAC,WAAW,GAAG;4BAClG,kBAAkB,EAAE,+BAA+B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4BAClG,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;iBACF;gBAED,wBAAwB;gBACxB,IACE,IAAI,CAAC,OAAO,CAAC,gCAAgC;oBAC7C,SAAS,CAAC,SAAS,EACnB;oBACA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CACzC,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;wBAC3B,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC;4BAC5C,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAE,SAAS,CAAC,UAAU,CAClB,QAA4B,CAAC,IAAI,EAClC,GAAG,CACe,CAAA;wBAExB,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CACtC,CAAC,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE,EAAE;4BACzC,MAAM,wBAAwB,GAAG,CAAC,CAChC,MAAM,IAAI,gBAAgB,CAC3B;gCACC,CAAC,CAAC,gBAAgB;gCAClB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;4BAEpD,MAAM,8BAA8B,GAAG,MAAM,CAAC,IAAI,CAChD,wBAAwB,CACzB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gCACrB;;;;mCAIG;gCACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;4BAC1C,CAAC,CAAC,CAAA;4BAEF,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC7C,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;oCAC7C,qBAAa,CAAC;wCACZ,cAAc,EACZ,uBAAe,CAAC,oCAAoC;wCACtD,OAAO,EAAE,aAAa,kBAAkB,mBAAmB,eAAe,sDAAsD,8BAA8B,wEAAwE;wCACtO,kBAAkB,EAAE,kCAAkC,8BAA8B,CAAC,CAAC,CAAC,oDAAoD;wCAC3I,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;iCACH;gCAED,kDAAkD;gCAClD,MAAM,iBAAiB,GACrB,8BAA8B,CAAC,CAAC,CAAC,CAAA;gCAEnC,MAAM,uBAAuB,GAC3B,IAAI,CAAC,MAAM,KAAK,CAAC;oCACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,CACb;oCACH,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,EACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,CAAA;gCAEP,IAAI,kBAA0C,CAAA;gCAE9C,IAAI;oCACF,kBAAkB,GAAG,gCAAkB,CACrC,iBAAiB,CAClB,CAAA;iCACF;gCAAC,OAAO,CAAC,EAAE;oCACV,qBAAa,CAAC;wCACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wCACnD,OAAO,EAAE,wBAAwB,SAAS,kBAAkB,uBAAuB,mBAAmB,eAAe,GAAG;wCACxH,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;oCAEF,OAAM;iCACP;gCAED,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,8BAAoB,CAAC,YAAY,EACjC,wBAAwB,CAAC,kBAAkB,CAAC,EAC5C,gBAAgB,EAChB,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gCAED,IAAI,iBAAiB,EAAE;oCACrB;;;uCAGG;oCACH,IACE,iBAAiB;wCACjB,CAAC,CACC,iBAAiB,CAAC,WAAW;4CAC7B,IAAI,CAAC,kBAAkB,CACxB,EACD;wCACA,IAAI,CAAC,kBAAkB,CACrB,iBAAiB,CAAC,WAAW,CAC9B,GAAG,iBAAiB,CAAA;qCACtB;yCAAM;wCACL,qBAAa,CAAC;4CACZ,cAAc,EACZ,uBAAe,CAAC,qBAAqB;4CACvC,OAAO,EAAE,sEAAsE,iBAAiB,CAAC,WAAW,GAAG;4CAC/G,kBAAkB,EAAE,wCAAwC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4CAC3G,IAAI;4CACJ,GAAG,EAAE,gBAAgB;yCACtB,CAAC,CAAA;qCACH;iCACF;6BACF;wBACH,CAAC,CACF,CAAA;oBACH,CAAC,CACF,CAAA;iBACF;YACH,CAAC,CAAC,CAAA;SACL;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC;AAlRD,sCAkRC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAS,2BAA2B,CAClC,GAAS,EACT,IAAiD;IAEjD,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAElD,0CAA0C;IAC1C,KAAK,IAAI,SAAS,IAAI,QAAQ,EAAE;QAC9B,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAE1C,oEAAoE;QACpE,IAAI,MAAM,CAAA;QACV,IAAI,UAAU,GAAG,EAAE,CAAA;QACnB,IAAI,WAAW,CAAA;QACf,QAAQ,cAAc,CAAC,IAAI,EAAE;YAC3B,KAAK,QAAQ;gBACX,WAAW,GAAG,kDAAkD,SAAS,GAAG,CAAA;gBAC5E,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,WAAW,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;iBACvC;gBAED,UAAU,GAAG;oBACX,MAAM,EAAE,SAAS,CAAC,QAAQ,CACxB,GAAG,SAAS,SAAS,EACrB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;iBACF,CAAA;gBAED,MAAM,GAAG;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW;oBACX,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF,CAAA;gBACD,MAAK;YAEP,KAAK,MAAM;gBACT,QAAQ,cAAc,CAAC,MAAM,EAAE;oBAC7B;;;;uBAIG;oBACH,KAAK,OAAO;wBACV,WAAW,GAAG,iDAAiD,SAAS,GAAG,CAAA;wBAE3E,UAAU,GAAG;4BACX,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;4BACD,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;yBACF,CAAA;wBAED,MAAM,GAAG;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW;4BACX,UAAU,EAAE;gCACV,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;gCACD,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;6BACF;yBACF,CAAA;wBACD,MAAK;oBAEP;wBACE,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;4BAChE,OAAO,EACL,qDAAqD;gCACrD,2BAA2B,cAAc,CAAC,MAAM,WAAW;gCAC3D,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;4BACvB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;iBACL;gBACD,MAAK;YAEP,kBAAkB;YAClB,KAAK,eAAe;gBAClB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,qDAAqD;wBACrD,gCAAgC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBACnD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,MAAK;YAEP,KAAK,QAAQ;gBACX,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;oBACrD,OAAO,EAAE,uCAAuC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBACjE,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,4DAA4D;gBAC5D,SAAQ;YAEV;gBACE,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,0CAA0C;wBAC1C,SAAS,cAAc,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBAC5D,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;SACL;QAED,kCAAkC;QAClC,MAAM,CAAC,SAAS,CAAC,GAAG;YAClB,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,cAAc;YACnB,UAAU;YACV,MAAM;YACN,GAAG;SACJ,CAAA;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,KAA4B,EAC5B,MAAsC,EACtC,iBAA0B,EAC1B,IAAiD,EACjD,GAAS,EACT,KAAqC;IAErC,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAE7C,wBAAwB;IACxB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,cAAc;YAC9C,OAAO,EACL,mDAAmD;gBACnD,mBAAmB,aAAa,iBAAiB,IAAI,CAAC,SAAS,CAC7D,MAAM,CACP,GAAG;YACN,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,sEAAsE;QACtE,OAAO;YACL,aAAa;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,IAAI;YACX,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,0BAA0B,EAAE,IAAI;YAChC,iBAAiB,EAAE,MAAM;SAC1B,CAAA;KACF;SAAM;QACL,IAAI,cAAc,GAChB,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QAEpE,MAAM,SAAS,GAAG,EAAE,CAAA;QACpB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;gBACtE,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CACrC,aAAa,IAAI,OAAO,EACxB,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;oBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;oBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;gBAED,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,CAAA;YAChC,CAAC,CAAC,CAAA;SACH;QAED,2DAA2D;QAC3D,MAAM,KAAK,GAAG,cAAc,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAEtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,8CAA8C;YAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAExC;;;eAGG;YACH,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;gBACpC,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,WAAW,EAAE;oBAChD,2CAA2C;oBAC3C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;wBACzD,IACE,OAAO,SAAS,CAAC,WAAW,CAAC,KAAK,WAAW;4BAC7C,CAAC,SAAS,CACR,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,EAClC,SAAS,CAAC,WAAW,CAAC,CACvB,EACD;4BACA,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,kBAAkB;gCAClD,OAAO,EACL,2EAA2E;oCAC3E,aAAa,WAAW,wCAAwC;oCAChE,IAAI,IAAI,CAAC,SAAS,CAChB,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CACnC,QAAQ;oCACT,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI;gCAChD,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;yBACH;oBACH,CAAC,CAAC,CAAA;oBAEF;;;;uBAIG;oBACH,eAAe,CAAC,KAAK,mCAAQ,SAAS,GAAK,eAAe,CAAC,KAAK,CAAE,CAAA;iBACnE;qBAAM;oBACL,mDAAmD;oBACnD,eAAe,CAAC,KAAK,GAAG,SAAS,CAAA;iBAClC;aACF;YAED,OAAO,eAAe,CAAA;SACvB;aAAM;YACL,wDAAwD;YACxD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;YAErD,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACxC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC;gBAC1D,CAAC,CAAC,SAAS,CAAC,UAAU,CAClB,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CACrD,CAAA;YACL,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAA;YAE9D,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAErD;;;;eAIG;YACH,MAAM,eAAe,GAAG,YAAY,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAEnE,MAAM,iBAAiB,GAAG,SAAS,CAAC,0BAA0B,CAC5D,eAA+B,EAC/B,IAAI,CACL,CAAA;YAED,MAAM,GAAG,GAAmB;gBAC1B,aAAa;gBAEb;;;;;;;mBAOG;gBACH,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE,EAAE;gBACZ,iBAAiB;gBACjB,cAAc,EAAE,SAAS;gBACzB,KAAK,EAAE,SAAS;gBAChB,eAAe,EAAE,QAAQ;gBACzB,0BAA0B,EAAE,aAAa;aAC1C,CAAA;YAED,gFAAgF;YAChF,IACE,iBAAiB,KAAK,QAAQ;gBAC9B,iBAAiB,KAAK,MAAM;gBAC5B,iBAAiB,KAAK,MAAM,EAC5B;gBACA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,iCAAiC;gBACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpB;YAED,4DAA4D;YAC5D;YACE,qEAAqE;YACrE,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;gBACnC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,oCAAoC;gBAC/E,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC;gBACzC,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC,EACzC;gBACA,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB;wBAC1D,0DAA0D;wBAC1D,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,iDAAiD;YACjD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED;;;;eAIG;YACH,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED,IAAI,iBAAiB,EAAE;gBACrB,QAAQ,iBAAiB,EAAE;oBACzB,KAAK,MAAM;wBACT,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,QAAQ,EAAE;4BAC7C,yCAAyC;4BACzC,uEAAuE;4BACvE,0EAA0E;4BAC1E,IAAI,WAAW,GAAG,eAAe,CAAC,KAAK,CAAA;4BACvC,IAAI,SAAS,GAAG,GAAG,IAAI,UAAU,CAAA;4BACjC,MAAM,aAAa,GACjB,eAAe,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;4BAE5D,IAAI,MAAM,IAAI,WAAW,EAAE;gCACzB,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;6BAC9C;4BAED,MAAM,aAAa,GAAG,aAAa;4BACjC,wFAAwF;4BACxF;gCACE,aAAa;gCACb,OAAO,EAAE,SAAS;6BACnB,EACD,WAA2B,EAC3B,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED,0BAA0B;4BAC1B,GAAG,CAAC,cAAc,GAAG,aAAa,CAAA;yBACnC;wBACD,MAAK;oBAEP,KAAK,QAAQ;wBACX,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;wBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;4BAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;4BACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;yBACF;6BAAM;4BACL,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gCACzD,OAAO,EACL,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB;oCACjD,gBAAgB;gCAClB,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;4BAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;yBAC/B;wBAED,MAAK;iBACR;aACF;iBAAM;gBACL,yBAAyB;gBAEzB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;oBACnD,OAAO,EAAE,0DAA0D,IAAI,CAAC,SAAS,CAC/E,MAAM,CACP,IAAI;oBACL,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;aAC/B;YAED,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AA/SD,sCA+SC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,MAAoB,EACpB,QAA0B;IAE1B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACpD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3B;;;WAGG;QAEH,IAAI,aAAa,KAAK,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;YACxE,OAAO,KAAK,CAAA;SACb;KACF;IAED,mDAAmD;IACnD,OAAO,CAAC,CAAC,CAAA;AACX,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,KAA4B;IACpD,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QACvC,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,qCAAqC;KACjH;SAAM,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QAC5C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4BAA4B;KACtG;SAAM,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QAC/C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4DAA4D;KACzI;SAAM,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QAC7C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,uBAAuB;KAClG;SAAM;QACL,OAAO,iBAAiB,CAAA,CAAC,yBAAyB;KACnD;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,KAA4B,EAC5B,SAAmB;IAEnB,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC1E,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;KACF;IAED,IAAI,UAAkB,CAAA;IAEtB,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE;QAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,aAAa,EACnB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QAED,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CACb,iCAAiC,QAAQ,oBAAoB,KAAK,CAAC,aAAa,UAAU,SAAS,CAAC,sBAAsB,CAAC,QAAQ,uDAAuD,QAAQ,EAAE,CACrM,CAAA;SACF;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAA;SACjC;KACF;IAED,4BAA4B;IAC5B,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,OAAO,EACb,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAA;SAC3B;KACF;IAED,4DAA4D;IAC5D,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,UAAU,EAChB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;SAC9B;KACF;IAED,uBAAuB;IACvB,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,QAAQ,EACd,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAA;SAC5B;KACF;IAED,6DAA6D;IAC7D,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,SAAS,CAAC,QAAQ,CAC7B,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;YACrC,CAAC,CAAC,KAAK,CAAC,aAAa;YACrB,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACnC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;oBACtC,CAAC,CAAC,KAAK,CAAC,UAAU;oBAClB,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;wBACpC,CAAC,CAAC,KAAK,CAAC,QAAQ;wBAChB,CAAC,CAAC,iBAAiB,EACrB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;KACF;IAED,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAClC,IAAI,QAAQ,GAAG,CAAC,CAAA;QAEhB;;;;WAIG;QACH,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAC,EAAE;YACrD,QAAQ,EAAE,CAAA;SACX;QACD,UAAU,GAAG,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAA;KACxC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CACnC,GAAmB,EACnB,MAAoB,EACpB,QAAkB,EAClB,iBAA0B,EAC1B,IAAiD,EACjD,GAAS;IAET;;;;OAIG;IACH,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAClC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;YAC3C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;KACH;IAED,KAAK,IAAI,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;QACzC,IAAI,cAAc,GAAG,WAAW,CAAA;QAChC,IAAI,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAE3E,IAAI,MAAM,IAAI,UAAU,EAAE;YACxB,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YACjD,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;SACxE;QAED,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE;YACxC,MAAM,aAAa,GAAG,aAAa,CACjC;gBACE,aAAa;gBACb,OAAO,EAAE,cAAc;gBACvB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,mIAAmI;aACjK,EACD,UAAU,EACV,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;YAED,4BAA4B;YAC5B,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;SAChD;aAAM;YACL,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;gBACpD,OAAO,EACL,wDAAwD;oBACxD,kEAAkE;oBAClE,iBAAiB,WAAW,kBAAkB,IAAI,CAAC,SAAS,CAC1D,MAAM,CACP,IAAI;oBACL,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG;gBAC9C,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;SACH;KACF;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CACnB,MAAsC,EACtC,UAAiD,EACjD,IAAiD,EACjD,GAAS;IAET,qBAAqB;IACrB,IAAI,MAAM,IAAI,MAAM,EAAE;QACpB,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAA;QACrC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;QAE/D,IAAI,iBAAiB,IAAI,UAAU,EAAE;YACnC,OAAO,UAAU,CAAC,iBAAiB,CAAC,CAAA;SACrC;aAAM;YACL,6CAA6C;YAC7C,UAAU,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAA;SACvC;KACF;IAED,MAAM,eAAe,GAAiB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IAExE,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;QACxC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAC7C,8BAA8B;YAC9B,MAAM,cAAc,GAAG,YAAY,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAExE,IAAI,cAAc,CAAC,IAAI,EAAE;gBACvB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;oBACzB,eAAe,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAA;oBAE1C,yBAAyB;iBAC1B;qBAAM,IAAI,eAAe,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,EAAE;oBACvD,2BAA2B;oBAE3B,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI,GAAG,sCAAsC;wBAChD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;iBACH;aACF;YAED,oCAAoC;YACpC,IAAI,YAAY,IAAI,cAAc,EAAE;gBAClC,IAAI,CAAC,CAAC,YAAY,IAAI,eAAe,CAAC,EAAE;oBACtC,eAAe,CAAC,UAAU,GAAG,EAAE,CAAA;iBAChC;gBAED,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,CAC/C,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;oBAC3B,IAAI,YAAY,IAAI,eAAe,CAAC,UAAU,EAAE;wBAC9C,uBAAuB;wBAEvB,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;4BACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI;gCACL,2CAA2C,YAAY,IAAI;4BAC7D,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;yBAAM;wBACL,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAA;qBACpD;gBACH,CAAC,CACF,CAAA;aACF;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,kCAAkC;YAClC,IAAI,UAAU,IAAI,cAAc,EAAE;gBAChC,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE;oBACpC,eAAe,CAAC,QAAQ,GAAG,EAAE,CAAA;iBAC9B;gBAED,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBACnD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;wBACxD,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;qBAChD;gBACH,CAAC,CAAC,CAAA;aACH;QACH,CAAC,CAAC,CAAA;KACH;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAQD;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,OAA2C,EAC3C,IAAiD,EACjD,GAAS;IAET,MAAM,MAAM,GAAqB;QAC/B,qBAAqB,EAAE,EAAE;QACzB,aAAa,EAAE,EAAE;QACjB,WAAW,EAAE,EAAE;KAChB,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,sBAAsB;QACtB,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;SAChE;QAED,kCAAkC;QAClC,MAAM,uBAAuB,GAAG,SAAS,CAAC,0BAA0B,CAClE,MAAM,EACN,IAAI,CACL,CAAA;QACD,IAAI,uBAAuB,EAAE;YAC3B,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;SAC3D;QAED,yBAAyB;QACzB,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SAC7C;QAED,uBAAuB;QACvB,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;SAChE;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,8EAA8E;aACtJ,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CACvE,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,wCAAwC;QACxC,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,MAAM,aAAa,GAEf,EAAE,CAAA;gBACN,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAA;gBAEhD;;;;mBAIG;gBAEH,IAAI,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/D,aAAa,CAAC,YAAY,CAAC,GAAG;4BAC5B,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC;yBACzC,CAAA;oBACH,CAAC,CAAC,CAAA;iBACH;gBAED,wDAAwD;gBACxD,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IACE,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,4DAA4D;4BACzG,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,QAAQ;4BAC/C,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gCAC5C,yCAAyC;gCACzC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;4BACvD,CAAC,CAAC,EACF;4BACA,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;yBACzC;wBAED,4BAA4B;wBAC5B,IAAI,CAAC,CAAC,YAAY,IAAI,aAAa,CAAC,EAAE;4BACpC,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;yBACjC;wBACD,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;oBAC5D,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;oBAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;oBACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;iBACF;gBAED,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;4BAC7C,uCAAuC;4BACvC,MAAM,cAAc,GAAG,UAAU,CAAC,YAAY,CAAiB,CAAA;4BAC/D,MAAM,aAAa,GACjB,cAAc,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;4BAE3D,MAAM,aAAa,GAAG,aAAa,CACjC;gCACE,aAAa;gCACb,OAAO,EAAE,YAAY;gCACrB,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,mIAAmI;6BACrK,EACD,cAAc,EACd,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED;;;+BAGG;4BACH,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,aAAa,CAAA;yBACjD;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,iCAAiC;gBACjC,sBAAsB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC9C,wBAAwB;oBACxB,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG;wBACjC,iBAAiB,EAAE,MAAM;qBAC1B,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAEnB,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAA;gBAChC,OAAO,GAAG,CAAA;aACX;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;wBAC9D,2DAA2D;wBAC3D,yDAAyD;wBACzD,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;oBAC9D,2DAA2D;oBAC3D,2DAA2D;oBAC3D,6BAA6B;gBAC/B,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,2CAA2C;QAC3C,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,kDAAkD;YAClD,IAAI,iBAAiB,EAAE;gBACrB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,WAAW;oBAC3C,OAAO,EAAE,uDAAuD;oBAChE,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC7C,4BAA4B;oBAC5B,IAAI,OAAe,CAAA;oBAEnB,IAAI,MAAM,IAAI,YAAY,EAAE;wBAC1B,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;wBAC5C,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACJ,CAAA;qBACF;oBAED,sDAAsD;oBACtD,IACE,SAAS,CAAC,0BAA0B,CAAC,YAAY,EAAE,IAAI,CAAC;wBACxD,QAAQ,EACR;wBACA,MAAM,aAAa,GACjB,YAAY,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;wBACzD,MAAM,aAAa,GAAG,aAAa,CACjC;4BACE,aAAa;4BACb,OAAO;4BACP,UAAU,EAAE,YAAY,CAAC,KAAK;4BAC9B,QAAQ,EAAE,GAAG,QAAQ,QAAQ;yBAC9B,EACD,YAAY,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CACA;wBAAC,GAAG,CAAC,cAAmC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;qBAC9D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;4BAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;gCAC7D,kDAAkD,IAAI,CAAC,SAAS,CAC9D,YAAY,CACb,IAAI;gCACL,uDAAuD;gCACvD,oBAAoB;4BACtB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;gBAEF,wEAAwE;gBACxE,IACE,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAC7B,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,EAAE;wBACzC,OAAO,aAAa,CAAC,iBAAiB,KAAK,QAAQ,CAAA;oBACrD,CAAC,CAAC,EACF;oBACA,+DAA+D;oBAC/D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAEnB,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAA;oBAC/B,OAAO,GAAG,CAAA;iBACX;qBAAM;oBACL,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;wBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;4BAC7D,6DAA6D;4BAC7D,2DAA2D;wBAC7D,kBAAkB,EAAE,kCAAkC;wBACtD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,8BAA8B;oBAC9B,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;oBAC9B,OAAO,GAAG,CAAA;iBACX;aACF;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CACvB,GAAG,CAAC,MAAM,CACX,+BAA+B;wBAChC,6DAA6D;wBAC7D,6CAA6C;oBAC/C,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,+BAA+B;oBACpE,8DAA8D;oBAC9D,oDAAoD;gBACtD,kBAAkB,EAAE,kCAAkC;gBACtD,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 6266a0ad..e38a8ac0 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -430,7 +430,11 @@ function createFields({ def, links, operation, data, iteration, isInputObjectTyp const requiredProperty = typeof def.required === 'object' && def.required.includes(fieldTypeKey); // Finally, add the object type to the fields (using sanitized field name) if (objectType) { - const saneFieldTypeKey = Oas3Tools.sanitize(fieldTypeKey, !data.options.simpleNames + const fromExtension = fieldSchema === null || fieldSchema === void 0 ? void 0 : fieldSchema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; + if (fromExtension && fromExtension in fields) { + throw new Error(`Cannot create field with name "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another field called "${fromExtension}"`); + } + const saneFieldTypeKey = fromExtension !== null && fromExtension !== void 0 ? fromExtension : Oas3Tools.sanitize(fieldTypeKey, !data.options.simpleNames ? Oas3Tools.CaseStyle.camelCase : Oas3Tools.CaseStyle.simple); const sanePropName = Oas3Tools.storeSaneName(saneFieldTypeKey, fieldTypeKey, data.saneMap); diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index 541c1d0f..cd2c321b 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index 7b904789..8d70155f 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -314,8 +314,17 @@ function translateOpenAPIToGraphQL( // Check if the operation should be added as a Query or Mutation if (operation.operationType === GraphQLOperationType.Query) { + const extensionFieldName = + operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] + + if (extensionFieldName in queryFields) { + throw new Error( + `Cannot create query with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another query called "${extensionFieldName}"` + ) + } + let fieldName = - operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] || + extensionFieldName ?? (!singularNames ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) : Oas3Tools.sanitize( @@ -398,6 +407,11 @@ function translateOpenAPIToGraphQL( operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] if (extensionFieldName) { + if (extensionFieldName in data.saneMap) { + throw new Error( + `Cannot create mutation with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another mutation called "${extensionFieldName}"` + ) + } saneFieldName = extensionFieldName } else if (!singularNames) { /** @@ -480,17 +494,19 @@ function translateOpenAPIToGraphQL( Oas3Tools.CaseStyle.camelCase ) - let saneFieldName: string - const extensionFieldName = operation.operation[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] - if (extensionFieldName) { - saneFieldName = extensionFieldName - } else { - Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap) + if (extensionFieldName && extensionFieldName in data.saneMap) { + throw new Error( + `Cannot create subscription with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another subscription called "${extensionFieldName}"` + ) } + const saneFieldName = + extensionFieldName ?? + Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap) + if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authSubscriptionFields[securityRequirement] !== 'object') { diff --git a/packages/openapi-to-graphql/src/oas_3_tools.ts b/packages/openapi-to-graphql/src/oas_3_tools.ts index 6b2c416b..5c3ce10f 100644 --- a/packages/openapi-to-graphql/src/oas_3_tools.ts +++ b/packages/openapi-to-graphql/src/oas_3_tools.ts @@ -618,7 +618,7 @@ export function getRequestSchemaAndNames( const payloadSchemaOrRef = requestBodyObject?.content?.[payloadContentType]?.schema // Resolve payload schema reference if applicable - if ('$ref' in payloadSchemaOrRef) { + if (payloadSchemaOrRef && '$ref' in payloadSchemaOrRef) { fromRef = payloadSchemaOrRef.$ref.split('/').pop() payloadSchema = resolveRef(payloadSchemaOrRef.$ref, oas) as SchemaObject } else { @@ -632,7 +632,7 @@ export function getRequestSchemaAndNames( : false payloadSchemaNames = { - fromExtension: payloadSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], + fromExtension: payloadSchema?.[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: payloadSchema?.title, fromPath: inferResourceNameFromPath(path) @@ -767,7 +767,7 @@ export function getResponseSchemaAndNames( const responseSchemaOrRef = responseObject?.content?.[responseContentType]?.schema // Resolve response schema reference if applicable - if ('$ref' in responseSchemaOrRef) { + if (responseSchemaOrRef && '$ref' in responseSchemaOrRef) { fromRef = responseSchemaOrRef.$ref.split('/').pop() responseSchema = resolveRef(responseSchemaOrRef.$ref, oas) as SchemaObject } else { @@ -775,7 +775,7 @@ export function getResponseSchemaAndNames( } responseSchemaNames = { - fromExtension: responseSchema[OAS_GRAPHQL_EXTENSIONS.TypeName], + fromExtension: responseSchema?.[OAS_GRAPHQL_EXTENSIONS.TypeName], fromRef, fromSchema: responseSchema?.title, fromPath: inferResourceNameFromPath(path) diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index d05229bd..7c587e56 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -1024,7 +1024,7 @@ function getSchemaName( if (usedNames.includes(saneName)) { throw new Error( - `Cannot create Type with name "${saneName}".\nYou provided ${names.fromExtension} in an ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName} extension but it collides with another Type called ${saneName}` + `Cannot create Type with name "${saneName}".\nYou provided "${names.fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName}, but it conflicts with another Type called "${saneName}"` ) } diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 74457f0b..6297ce7d 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -632,12 +632,23 @@ function createFields({ // Finally, add the object type to the fields (using sanitized field name) if (objectType) { - const saneFieldTypeKey = Oas3Tools.sanitize( - fieldTypeKey, - !data.options.simpleNames - ? Oas3Tools.CaseStyle.camelCase - : Oas3Tools.CaseStyle.simple - ) + const fromExtension = + fieldSchema?.[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] + + if (fromExtension && fromExtension in fields) { + throw new Error( + `Cannot create field with name "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another field called "${fromExtension}"` + ) + } + + const saneFieldTypeKey = + fromExtension ?? + Oas3Tools.sanitize( + fieldTypeKey, + !data.options.simpleNames + ? Oas3Tools.CaseStyle.camelCase + : Oas3Tools.CaseStyle.simple + ) const sanePropName = Oas3Tools.storeSaneName( saneFieldTypeKey, diff --git a/packages/openapi-to-graphql/test/extensions.test.ts b/packages/openapi-to-graphql/test/extensions.test.ts new file mode 100644 index 00000000..79192433 --- /dev/null +++ b/packages/openapi-to-graphql/test/extensions.test.ts @@ -0,0 +1,162 @@ +'use strict' + +import { beforeAll, describe, test, expect } from '@jest/globals' +import { GraphQLEnumType, GraphQLObjectType, GraphQLSchema } from 'graphql' + +import * as openAPIToGraphQL from '../lib/index' +import { Oas3 } from '../lib/types/oas3' + +/** + * Set up the schema first + */ + +describe('GraphQL Extensions', () => { + describe('Schema output', () => { + let oas: Oas3 + let createdSchema: GraphQLSchema + + beforeAll(async () => { + oas = require('./fixtures/extensions.json') + const { schema } = await openAPIToGraphQL.createGraphQLSchema(oas, { + fillEmptyResponses: true, + createSubscriptionsFromCallbacks: true + }) + createdSchema = schema + }) + + test('should rename Query with x-graphql-field-name', () => { + const queries = Object.keys(createdSchema.getQueryType().getFields()) + expect(queries).not.toContain('petFindByStatus') + expect(queries).toContain('getPetsByStatus') + }) + + test('should rename Mutation with x-graphql-field-name', () => { + const mutations = Object.keys(createdSchema.getMutationType().getFields()) + expect(mutations).not.toContain('updatePetWithForm') + expect(mutations).toContain('updatePetForm') + }) + + test('should rename Subscription with x-graphql-field-name', () => { + const subscriptions = Object.keys( + createdSchema.getSubscriptionType().getFields() + ) + expect(subscriptions).not.toContain('petEventListener') + expect(subscriptions).toContain('petEvent') + }) + + test('should rename Type with x-graphql-type-name', () => { + const renamedType = createdSchema.getType('Response') + expect(renamedType).toBeInstanceOf(GraphQLObjectType) + expect(createdSchema.getType('ApiResponse')).toBeUndefined() + }) + + test('should rename Type fields with x-graphql-field-name', () => { + const response = createdSchema.getType('Response') as GraphQLObjectType + const fields = Object.keys(response.toConfig().fields) + expect(fields).not.toContain('code') + expect(fields).toContain('statusCode') + }) + + test('should rename Enum values with x-graphql-enum-mapping', () => { + const petStatus = createdSchema.getType('PetStatus') as GraphQLEnumType + const values = petStatus.getValues() + const initialValue = values.find(({ value }) => value === 'available') + const pendingValue = values.find(({ value }) => value === 'pending') + const soldValue = values.find(({ value }) => value === 'sold') + expect(values.length).toEqual(3) + expect(initialValue.name).toEqual('INITIAL') + expect(pendingValue.name).toEqual('IN_PROGRESS') + expect(soldValue.name).toEqual('SOLD') + }) + + test('should rename Links with x-graphql-field-name', () => { + const order = createdSchema.getType('Order') as GraphQLObjectType + const fields = Object.keys(order.getFields()) + expect(fields).not.toContain('pet') + expect(fields).toContain('orderPet') + expect(order.getFields().orderPet.type.toString()).toEqual('Pet') + }) + }) + + describe('Error handling', () => { + test('should throw when x-graphql-type-name causes naming conflicts', async () => { + const oas = require('./fixtures/extensions_error1.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create Type with name "User".\nYou provided "User" in x-graphql-type-name, but it conflicts with another Type called "User"' + ) + ) + }) + + test('should throw when x-graphql-field-name causes naming conflicts on objects', async () => { + const oas = require('./fixtures/extensions_error2.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create field with name "name".\nYou provided "name" in x-graphql-field-name, but it conflicts with another field called "name"' + ) + ) + }) + + test('should throw when x-graphql-field-name causes naming conflicts on queries', async () => { + const oas = require('./fixtures/extensions_error3.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create query with name "user".\nYou provided "user" in x-graphql-field-name, but it conflicts with another query called "user"' + ) + ) + }) + + test('should throw when x-graphql-field-name causes naming conflicts on mutations', async () => { + const oas = require('./fixtures/extensions_error4.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create mutation with name "createUser".\nYou provided "createUser" in x-graphql-field-name, but it conflicts with another mutation called "createUser"' + ) + ) + }) + + test.skip('should throw when x-graphql-field-name causes naming conflicts on subscriptions', async () => { + const oas = require('./fixtures/extensions_error5.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas, { + createSubscriptionsFromCallbacks: true, + fillEmptyResponses: true + }) + ).rejects.toThrowError( + new Error( + 'Cannot create subscription with name "userEventListener".\nYou provided "userEventListener" in x-graphql-field-name, but it conflicts with another subscription called "userEventListener"' + ) + ) + }) + + test.skip('should throw when x-graphql-field-name causes naming conflicts on links', async () => { + const oas = require('./fixtures/extensions_error3.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create field with name "name".\nYou provided "name" in x-graphql-field-name, but it conflicts with another field called "name"' + ) + ) + }) + + test('should throw when x-graphql-enum-mapping causes naming conflicts', async () => { + const oas = require('./fixtures/extensions_error3.json') + await expect( + openAPIToGraphQL.createGraphQLSchema(oas) + ).rejects.toThrowError( + new Error( + 'Cannot create field with name "name".\nYou provided "name" in x-graphql-field-name, but it conflicts with another field called "name"' + ) + ) + }) + }) +}) diff --git a/packages/openapi-to-graphql/test/fixtures/extensions.json b/packages/openapi-to-graphql/test/fixtures/extensions.json new file mode 100644 index 00000000..4f4614c6 --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions.json @@ -0,0 +1,844 @@ +{ + "openapi": "3.0.2", + "info": { + "title": "Swagger Petstore - OpenAPI 3.0", + "description": "This is a sample Pet Store Server based on the OpenAPI 3.0 specification. You can find out more about\nSwagger at [http://swagger.io](http://swagger.io). In the third iteration of the pet store, we've switched to the design first approach!\nYou can now help us improve the API whether it's by making changes to the definition itself or to the code.\nThat way, with time, we can improve the API in general, and expose some of the new features in OAS3.\n\nSome useful links:\n- [The Pet Store repository](https://github.com/swagger-api/swagger-petstore)\n- [The source API definition for the Pet Store](https://github.com/swagger-api/swagger-petstore/blob/master/src/main/resources/openapi.yaml)", + "termsOfService": "http://swagger.io/terms/", + "contact": { "email": "apiteam@swagger.io" }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + }, + "version": "1.0.5" + }, + "externalDocs": { + "description": "Find out more about Swagger", + "url": "http://swagger.io" + }, + "servers": [{ "url": "/api/v3" }], + "tags": [ + { + "name": "pet", + "description": "Everything about your Pets", + "externalDocs": { + "description": "Find out more", + "url": "http://swagger.io" + } + }, + { "name": "store", "description": "Operations about user" }, + { + "name": "user", + "description": "Access to Petstore orders", + "externalDocs": { + "description": "Find out more about our store", + "url": "http://swagger.io" + } + } + ], + "paths": { + "/pet": { + "put": { + "tags": ["pet"], + "summary": "Update an existing pet", + "description": "Update an existing pet by Id", + "operationId": "updatePet", + "requestBody": { + "description": "Update an existent pet in the store", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/x-www-form-urlencoded": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + } + } + }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + }, + "post": { + "tags": ["pet"], + "summary": "Add a new pet to the store", + "description": "Add a new pet to the store", + "operationId": "addPet", + "x-graphql-field-name": "createPet", + "requestBody": { + "description": "Create a new pet in the store", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/x-www-form-urlencoded": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + }, + "required": true + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + } + } + }, + "callbacks": { + "petCreated": { + "$ref": "#/components/callbacks/PetEvent" + } + }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + } + }, + "/pet/findByStatus": { + "get": { + "tags": ["pet"], + "summary": "Finds Pets by status", + "description": "Multiple status values can be provided with comma separated strings", + "operationId": "findPetsByStatus", + "x-graphql-field-name": "getPetsByStatus", + "parameters": [ + { + "name": "status", + "in": "query", + "description": "Status values that need to be considered for filter", + "required": false, + "explode": true, + "schema": { + "type": "string", + "default": "available", + "enum": ["available", "pending", "sold"] + } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/xml": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/Pet" } + } + }, + "application/json": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/Pet" } + } + } + } + }, + "400": { "description": "Invalid status value" } + }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + } + }, + "/pet/findByTags": { + "get": { + "tags": ["pet"], + "summary": "Finds Pets by tags", + "description": "Multiple tags can be provided with comma separated strings. Use tag1, tag2, tag3 for testing.", + "operationId": "findPetsByTags", + "parameters": [ + { + "name": "tags", + "in": "query", + "description": "Tags to filter by", + "required": false, + "explode": true, + "schema": { "type": "array", "items": { "type": "string" } } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/xml": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/Pet" } + } + }, + "application/json": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/Pet" } + } + } + } + }, + "400": { "description": "Invalid tag value" } + }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + } + }, + "/pet/{petId}": { + "get": { + "tags": ["pet"], + "summary": "Find pet by ID", + "description": "Returns a single pet", + "operationId": "getPetById", + "parameters": [ + { + "name": "petId", + "in": "path", + "description": "ID of pet to return", + "required": true, + "schema": { "type": "integer", "format": "int64" } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + } + } + }, + "security": [ + { "api_key": [] }, + { "petstore_auth": ["write:pets", "read:pets"] } + ] + }, + "post": { + "tags": ["pet"], + "summary": "Updates a pet in the store with form data", + "description": "", + "operationId": "updatePetWithForm", + "x-graphql-field-name": "updatePetForm", + "parameters": [ + { + "name": "petId", + "in": "path", + "description": "ID of pet that needs to be updated", + "required": true, + "schema": { "type": "integer", "format": "int64" } + }, + { + "name": "name", + "in": "query", + "description": "Name of pet that needs to be updated", + "schema": { "type": "string" } + }, + { + "name": "status", + "in": "query", + "description": "Status of pet that needs to be updated", + "schema": { "type": "string" } + } + ], + "responses": { "204": { "description": "Invalid input" } }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + }, + "delete": { + "tags": ["pet"], + "summary": "Deletes a pet", + "description": "", + "operationId": "deletePet", + "parameters": [ + { + "name": "api_key", + "in": "header", + "description": "", + "required": false, + "schema": { "type": "string" } + }, + { + "name": "petId", + "in": "path", + "description": "Pet id to delete", + "required": true, + "schema": { "type": "integer", "format": "int64" } + } + ], + "responses": { "204": { "description": "Invalid pet value" } }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + } + }, + "/pet/{petId}/uploadImage": { + "post": { + "tags": ["pet"], + "summary": "uploads an image", + "description": "", + "operationId": "uploadFile", + "parameters": [ + { + "name": "petId", + "in": "path", + "description": "ID of pet to update", + "required": true, + "schema": { "type": "integer", "format": "int64" } + }, + { + "name": "additionalMetadata", + "in": "query", + "description": "Additional Metadata", + "required": false, + "schema": { "type": "string" } + } + ], + "requestBody": { + "content": { + "application/octet-stream": { + "schema": { "type": "string", "format": "binary" } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/ApiResponse" } + } + } + } + }, + "security": [{ "petstore_auth": ["write:pets", "read:pets"] }] + } + }, + "/store/inventory": { + "get": { + "tags": ["store"], + "summary": "Returns pet inventories by status", + "description": "Returns a map of status codes to quantities", + "operationId": "getInventory", + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { + "type": "object", + "additionalProperties": { + "type": "integer", + "format": "int32" + } + } + } + } + } + }, + "security": [{ "api_key": [] }] + } + }, + "/store/order": { + "post": { + "tags": ["store"], + "summary": "Place an order for a pet", + "description": "Place a new order in the store", + "operationId": "placeOrder", + "requestBody": { + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Order" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/Order" } + }, + "application/x-www-form-urlencoded": { + "schema": { "$ref": "#/components/schemas/Order" } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Order" } + } + } + }, + "204": { "description": "Invalid input" } + } + } + }, + "/store/order/{orderId}": { + "get": { + "tags": ["store"], + "summary": "Find purchase order by ID", + "description": "For valid response try integer IDs with value <= 5 or > 10. Other values will generated exceptions", + "operationId": "getOrderById", + "parameters": [ + { + "name": "orderId", + "in": "path", + "description": "ID of order that needs to be fetched", + "required": true, + "schema": { "type": "integer", "format": "int64" } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/Order" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/Order" } + } + }, + "links": { + "pet": { + "$ref": "#/components/links/Pet" + } + } + }, + "400": { "description": "Invalid ID supplied" }, + "404": { "description": "Order not found" } + } + }, + "delete": { + "tags": ["store"], + "summary": "Delete purchase order by ID", + "description": "For valid response try integer IDs with value < 1000. Anything above 1000 or nonintegers will generate API errors", + "operationId": "deleteOrder", + "parameters": [ + { + "name": "orderId", + "in": "path", + "description": "ID of the order that needs to be deleted", + "required": true, + "schema": { "type": "integer", "format": "int64" } + } + ], + "responses": { + "204": { "description": "Invalid ID supplied" } + } + } + }, + "/user": { + "post": { + "tags": ["user"], + "summary": "Create user", + "description": "This can only be done by the logged in user.", + "operationId": "createUser", + "requestBody": { + "description": "Created user object", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/x-www-form-urlencoded": { + "schema": { "$ref": "#/components/schemas/User" } + } + } + }, + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/User" } + } + } + } + } + } + }, + "/user/createWithList": { + "post": { + "tags": ["user"], + "summary": "Creates list of users with given input array", + "description": "Creates list of users with given input array", + "operationId": "createUsersWithListInput", + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/User" } + } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/User" } + } + } + }, + "default": { "description": "successful operation" } + } + } + }, + "/user/login": { + "get": { + "tags": ["user"], + "summary": "Logs user into the system", + "description": "", + "operationId": "loginUser", + "parameters": [ + { + "name": "username", + "in": "query", + "description": "The user name for login", + "required": false, + "schema": { "type": "string" } + }, + { + "name": "password", + "in": "query", + "description": "The password for login in clear text", + "required": false, + "schema": { "type": "string" } + } + ], + "responses": { + "200": { + "description": "successful operation", + "headers": { + "X-Rate-Limit": { + "description": "calls per hour allowed by the user", + "schema": { "type": "integer", "format": "int32" } + }, + "X-Expires-After": { + "description": "date in UTC when toekn expires", + "schema": { "type": "string", "format": "date-time" } + } + }, + "content": { + "application/xml": { "schema": { "type": "string" } }, + "application/json": { "schema": { "type": "string" } } + } + }, + "400": { "description": "Invalid username/password supplied" } + } + } + }, + "/user/logout": { + "get": { + "tags": ["user"], + "summary": "Logs out current logged in user session", + "description": "", + "operationId": "logoutUser", + "parameters": [], + "responses": { "204": { "description": "successful operation" } } + } + }, + "/user/{username}": { + "get": { + "tags": ["user"], + "summary": "Get user by user name", + "description": "", + "operationId": "getUserByName", + "parameters": [ + { + "name": "username", + "in": "path", + "description": "The name that needs to be fetched. Use user1 for testing. ", + "required": true, + "schema": { "type": "string" } + } + ], + "responses": { + "200": { + "description": "successful operation", + "content": { + "application/xml": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/json": { + "schema": { "$ref": "#/components/schemas/User" } + } + } + }, + "400": { "description": "Invalid username supplied" }, + "404": { "description": "User not found" } + } + }, + "put": { + "tags": ["user"], + "summary": "Update user", + "description": "This can only be done by the logged in user.", + "operationId": "updateUser", + "parameters": [ + { + "name": "username", + "in": "path", + "description": "name that need to be deleted", + "required": true, + "schema": { "type": "string" } + } + ], + "requestBody": { + "description": "Update an existent user in the store", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/User" } + }, + "application/x-www-form-urlencoded": { + "schema": { "$ref": "#/components/schemas/User" } + } + } + }, + "responses": { "204": { "description": "successful operation" } } + }, + "delete": { + "tags": ["user"], + "summary": "Delete user", + "description": "This can only be done by the logged in user.", + "operationId": "deleteUser", + "parameters": [ + { + "name": "username", + "in": "path", + "description": "The name that needs to be deleted", + "required": true, + "schema": { "type": "string" } + } + ], + "responses": { + "204": { "description": "Invalid username supplied" } + } + } + } + }, + "components": { + "schemas": { + "Order": { + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64", "example": 10 }, + "petId": { "type": "integer", "format": "int64", "example": 198772 }, + "quantity": { "type": "integer", "format": "int32", "example": 7 }, + "shipDate": { "type": "string", "format": "date-time" }, + "status": { + "type": "string", + "x-graphql-type-name": "OrderStatus", + "description": "Order Status", + "example": "approved", + "enum": ["placed", "approved", "delivered"] + }, + "complete": { "type": "boolean" } + }, + "xml": { "name": "order" } + }, + "Customer": { + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64", "example": 100000 }, + "username": { "type": "string", "example": "fehguy" }, + "address": { + "type": "array", + "xml": { "name": "addresses", "wrapped": true }, + "items": { "$ref": "#/components/schemas/Address" } + } + }, + "xml": { "name": "customer" } + }, + "Address": { + "type": "object", + "properties": { + "street": { "type": "string", "example": "437 Lytton" }, + "city": { "type": "string", "example": "Palo Alto" }, + "state": { "type": "string", "example": "CA" }, + "zip": { "type": "string", "example": "94301" } + }, + "xml": { "name": "address" } + }, + "Category": { + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64", "example": 1 }, + "name": { "type": "string", "example": "Dogs" } + }, + "xml": { "name": "category" } + }, + "User": { + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64", "example": 10 }, + "username": { "type": "string", "example": "theUser" }, + "firstName": { "type": "string", "example": "John" }, + "lastName": { "type": "string", "example": "James" }, + "email": { "type": "string", "example": "john@email.com" }, + "password": { "type": "string", "example": "12345" }, + "phone": { "type": "string", "example": "12345" }, + "userStatus": { + "type": "integer", + "description": "User Status", + "format": "int32", + "example": 1 + } + }, + "xml": { "name": "user" } + }, + "Tag": { + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64" }, + "name": { "type": "string" } + }, + "xml": { "name": "tag" } + }, + "Pet": { + "required": ["name", "photoUrls"], + "type": "object", + "properties": { + "id": { "type": "integer", "format": "int64", "example": 10 }, + "name": { "type": "string", "example": "doggie" }, + "category": { "$ref": "#/components/schemas/Category" }, + "photoUrls": { + "type": "array", + "xml": { "wrapped": true }, + "items": { "type": "string", "xml": { "name": "photoUrl" } } + }, + "tags": { + "type": "array", + "xml": { "wrapped": true }, + "items": { "$ref": "#/components/schemas/Tag" } + }, + "status": { + "type": "string", + "x-graphql-type-name": "PetStatus", + "description": "pet status in the store", + "enum": ["available", "pending", "sold"], + "x-graphql-enum-mapping": { + "available": "INITIAL", + "pending": "IN_PROGRESS", + "sold": "SOLD" + } + } + }, + "xml": { "name": "pet" } + }, + "ApiResponse": { + "type": "object", + "x-graphql-type-name": "Response", + "properties": { + "code": { + "type": "integer", + "x-graphql-field-name": "statusCode", + "format": "int32" + }, + "type": { "type": "string" }, + "message": { "type": "string" } + }, + "xml": { "name": "##default" } + } + }, + "requestBodies": { + "Pet": { + "description": "Pet object that needs to be added to the store", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/Pet" } + }, + "application/xml": { + "schema": { "$ref": "#/components/schemas/Pet" } + } + } + }, + "UserArray": { + "description": "List of user object", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { "$ref": "#/components/schemas/User" } + } + } + } + } + }, + "securitySchemes": { + "petstore_auth": { + "type": "oauth2", + "flows": { + "implicit": { + "authorizationUrl": "https://petstore3.swagger.io/oauth/authorize", + "scopes": { + "write:pets": "modify pets in your account", + "read:pets": "read your pets" + } + } + } + }, + "api_key": { "type": "apiKey", "name": "api_key", "in": "header" } + }, + "callbacks": { + "PetEvent": { + "/pets/{$request.body#/id}/events/+": { + "post": { + "operationId": "petEventListener", + "x-graphql-field-name": "petEvent", + "description": "Listen all pet events owned by userName", + "requestBody": { + "$ref": "#/components/requestBodies/Pet" + }, + "responses": { + "200": { + "description": "Pet event response", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ApiResponse" + } + } + } + } + } + } + } + } + }, + "links": { + "Pet": { + "x-graphql-field-name": "orderPet", + "operationId": "getPetById", + "parameters": { + "petId": "$response.body.petId" + }, + "description": "Link from Order to Pet" + } + } + } +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error1.json b/packages/openapi-to-graphql/test/fixtures/extensions_error1.json new file mode 100644 index 00000000..e27c3023 --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error1.json @@ -0,0 +1,103 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "get": { + "description": "Return a user.", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + } + } + } + } + }, + "/user2": { + "get": { + "description": "Return a user2.", + "responses": { + "202": { + "description": "A user2.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user2" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + } + } + }, + "user2": { + "type": "object", + "description": "A user2 represents a natural person", + "x-graphql-type-name": "User", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + } + } + } + } + }, + "security": [] +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error2.json b/packages/openapi-to-graphql/test/fixtures/extensions_error2.json new file mode 100644 index 00000000..a833acc4 --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error2.json @@ -0,0 +1,80 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "get": { + "description": "Return a user.", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + }, + "name2": { + "type": "string", + "x-graphql-field-name": "name", + "description": "The legal name of a user" + } + } + } + } + }, + "security": [] +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error3.json b/packages/openapi-to-graphql/test/fixtures/extensions_error3.json new file mode 100644 index 00000000..c2b98f4f --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error3.json @@ -0,0 +1,97 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "get": { + "description": "Return a user.", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + } + } + } + } + }, + "/user2": { + "get": { + "description": "Return a user.", + "x-graphql-field-name": "user", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + }, + "name2": { + "type": "string", + "description": "The legal name of a user" + } + } + } + } + }, + "security": [] +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error4.json b/packages/openapi-to-graphql/test/fixtures/extensions_error4.json new file mode 100644 index 00000000..7689c3c5 --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error4.json @@ -0,0 +1,109 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "post": { + "tags": ["user"], + "summary": "Creates a user", + "description": "Creates a user", + "operationId": "createUser", + "requestBody": { + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + } + } + } + }, + "/user2": { + "post": { + "tags": ["user"], + "summary": "Creates a user", + "description": "Creates a user", + "operationId": "createUser2", + "x-graphql-field-name": "createUser", + "requestBody": { + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + } + } + } + } + }, + "security": [] +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error5.json b/packages/openapi-to-graphql/test/fixtures/extensions_error5.json new file mode 100644 index 00000000..b9b81319 --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error5.json @@ -0,0 +1,120 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "post": { + "tags": ["user"], + "summary": "Creates a user", + "description": "Creates a user", + "operationId": "createUser", + "requestBody": { + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + }, + "responses": { + "200": { + "description": "Successful operation", + "content": { + "application/json": { + "schema": { "$ref": "#/components/schemas/user" } + } + } + } + }, + "callbacks": { + "userCreated": { + "$ref": "#/components/callbacks/UserEvent" + }, + "userCreated2": { + "$ref": "#/components/callbacks/UserEvent2" + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + } + } + } + }, + "callbacks": { + "UserEvent": { + "/users/{$request.body#/id}/events/+": { + "post": { + "operationId": "userEventListener", + "description": "Listen all user events owned by userName", + "responses": { + "204": { + "description": "user event response" + } + } + } + } + }, + "UserEvent2": { + "/users/{$request.body#/id}/events/+": { + "post": { + "operationId": "userEventListener2", + "x-graphql-field-name": "userEventListener", + "description": "Listen all user events owned by userName", + "responses": { + "204": { + "description": "user event response" + } + } + } + } + } + } + }, + "security": [] +} From f0b3629923d39e1352d18ade9e4fd61c4ec58f29 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Tue, 20 Apr 2021 18:06:07 +0200 Subject: [PATCH 6/9] Skip WIP tests Signed-off-by: Elias Meire --- packages/openapi-to-graphql/test/extensions.test.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/openapi-to-graphql/test/extensions.test.ts b/packages/openapi-to-graphql/test/extensions.test.ts index 79192433..2c8345e3 100644 --- a/packages/openapi-to-graphql/test/extensions.test.ts +++ b/packages/openapi-to-graphql/test/extensions.test.ts @@ -123,7 +123,7 @@ describe('GraphQL Extensions', () => { ) }) - test.skip('should throw when x-graphql-field-name causes naming conflicts on subscriptions', async () => { + test('should throw when x-graphql-field-name causes naming conflicts on subscriptions', async () => { const oas = require('./fixtures/extensions_error5.json') await expect( openAPIToGraphQL.createGraphQLSchema(oas, { @@ -148,7 +148,7 @@ describe('GraphQL Extensions', () => { ) }) - test('should throw when x-graphql-enum-mapping causes naming conflicts', async () => { + test.skip('should throw when x-graphql-enum-mapping causes naming conflicts', async () => { const oas = require('./fixtures/extensions_error3.json') await expect( openAPIToGraphQL.createGraphQLSchema(oas) From 40d5f1a8ddf0f6009e7fce31b695de16e8d14889 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Tue, 20 Apr 2021 19:21:14 +0200 Subject: [PATCH 7/9] Implement error handling for enum mapping Signed-off-by: Elias Meire --- packages/openapi-to-graphql/lib/index.js | 10 +- packages/openapi-to-graphql/lib/index.js.map | 2 +- .../openapi-to-graphql/lib/preprocessor.js | 3 + .../lib/preprocessor.js.map | 2 +- .../openapi-to-graphql/lib/schema_builder.js | 24 +-- .../lib/schema_builder.js.map | 2 +- packages/openapi-to-graphql/src/index.ts | 4 +- .../openapi-to-graphql/src/preprocessor.ts | 5 + .../openapi-to-graphql/src/schema_builder.ts | 18 ++- .../test/extensions.test.ts | 12 +- .../test/fixtures/extensions_error6.json | 144 ++++++++++++++++++ .../test/fixtures/extensions_error7.json | 83 ++++++++++ 12 files changed, 279 insertions(+), 30 deletions(-) create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error6.json create mode 100644 packages/openapi-to-graphql/test/fixtures/extensions_error7.json diff --git a/packages/openapi-to-graphql/lib/index.js b/packages/openapi-to-graphql/lib/index.js index 67894b9a..7272cb4d 100644 --- a/packages/openapi-to-graphql/lib/index.js +++ b/packages/openapi-to-graphql/lib/index.js @@ -166,9 +166,10 @@ provideErrorExtensions, equivalentToMessages }) { if (extensionFieldName in queryFields) { throw new Error(`Cannot create query with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another query called "${extensionFieldName}"`); } - let fieldName = extensionFieldName !== null && extensionFieldName !== void 0 ? extensionFieldName : (!singularNames - ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) - : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); + let fieldName = extensionFieldName || + (!singularNames + ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) + : Oas3Tools.sanitize(Oas3Tools.inferResourceNameFromPath(operation.path), Oas3Tools.CaseStyle.camelCase)); if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authQueryFields[securityRequirement] !== 'object') { @@ -295,7 +296,8 @@ provideErrorExtensions, equivalentToMessages }) { if (extensionFieldName && extensionFieldName in data.saneMap) { throw new Error(`Cannot create subscription with name "${extensionFieldName}".\nYou provided "${extensionFieldName}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another subscription called "${extensionFieldName}"`); } - const saneFieldName = extensionFieldName !== null && extensionFieldName !== void 0 ? extensionFieldName : Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); + const saneFieldName = extensionFieldName || + Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap); if (operation.inViewer) { for (let securityRequirement of operation.securityRequirements) { if (typeof authSubscriptionFields[securityRequirement] !== 'object') { diff --git a/packages/openapi-to-graphql/lib/index.js.map b/packages/openapi-to-graphql/lib/index.js.map index 99978ddd..db6be5da 100644 --- a/packages/openapi-to-graphql/lib/index.js.map +++ b/packages/openapi-to-graphql/lib/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index 922f8625..441ff011 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -468,6 +468,9 @@ function createDataDef(names, schema, isInputObjectType, data, oas, links) { Object.keys(links).forEach((linkKey) => { const link = links[linkKey]; const fromExtension = link[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName]; + if (fromExtension in saneLinks) { + throw new Error(`Cannot create link with name "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another link called "${fromExtension}"`); + } const linkSaneName = Oas3Tools.sanitize(fromExtension || linkKey, !data.options.simpleNames ? Oas3Tools.CaseStyle.camelCase : Oas3Tools.CaseStyle.simple); diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index abf37a4b..9c7b22c8 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":";AAAA,iDAAiD;AACjD,kCAAkC;AAClC,+CAA+C;AAC/C,gEAAgE;;;AAmBhE,WAAW;AACX,2CAA0C;AAC1C,wCAAuC;AACvC,iCAAyB;AACzB,mCAAgF;AAChF,6CAAsD;AACtD,+CAAkD;AAElD,MAAM,gBAAgB,GAAG,eAAK,CAAC,eAAe,CAAC,CAAA;AAE/C;;;;;;;;;;;;;GAaG;AACH,SAAS,gBAAgB,CACvB,IAAY,EACZ,MAA8B,EAC9B,eAAuB,EACvB,aAAmC,EACnC,SAA0B,EAC1B,QAAwB,EACxB,GAAS,EACT,IAAiD,EACjD,OAAkD;IAElD,wBAAwB;IACxB,IAAI,WAAW,GAAG,SAAS,CAAC,WAAW,CAAA;IACvC,IACE,CAAC,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,EAAE,CAAC;QACvD,OAAO,SAAS,CAAC,OAAO,KAAK,QAAQ,EACrC;QACA,WAAW,GAAG,SAAS,CAAC,OAAO,CAAA;KAChC;IAED,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE;QACrC,4BAA4B;QAC5B,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE;YACnC,WAAW,GAAG,EAAE,CAAA;SACjB;QAED,WAAW,IAAI,qBAAqB,eAAe,EAAE,CAAA;KACtD;IAED,iBAAiB;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,IAAI,EAAE,CAAA;IAEjC,6BAA6B;IAC7B,MAAM,WAAW,GACf,OAAO,SAAS,CAAC,WAAW,KAAK,WAAW;QAC1C,CAAC,CAAC,SAAS,CAAC,WAAW;QACvB,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAEjD,iBAAiB;IACjB,MAAM,EACJ,kBAAkB,EAClB,aAAa,EACb,kBAAkB,EAClB,eAAe,EAChB,GAAG,SAAS,CAAC,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;IAEpE,MAAM,iBAAiB,GACrB,aAAa,IAAI,OAAO,aAAa,KAAK,WAAW;QACnD,CAAC,CAAC,aAAa,CACX,kBAAkB,EAClB,aAA6B,EAC7B,IAAI,EACJ,IAAI,EACJ,GAAG,CACJ;QACH,CAAC,CAAC,SAAS,CAAA;IAEf,kBAAkB;IAClB,MAAM,EACJ,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,UAAU,EACX,GAAG,SAAS,CAAC,yBAAyB,CACrC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;IAED,IAAI,CAAC,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE;QACzD,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,uBAAuB;YACvD,OAAO,EACL,aAAa,eAAe,mCAAmC;gBAC/D,wDAAwD;gBACxD,oBAAoB;YACtB,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,OAAO,SAAS,CAAA;KACjB;IAED,QAAQ;IACR,MAAM,KAAK,GAAG,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;IAEpE,MAAM,kBAAkB,GAAG,aAAa,CACtC,mBAAmB,EACnB,cAA8B,EAC9B,KAAK,EACL,IAAI,EACJ,GAAG,EACH,KAAK,CACN,CAAA;IAED,aAAa;IACb,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,CACxC,IAAI,EACJ,MAAM,EACN,SAAS,EACT,QAAQ,EACR,GAAG,CACJ,CAAA;IAED,qBAAqB;IACrB,MAAM,oBAAoB,GAAG,OAAO,CAAC,MAAM;QACzC,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC;QAClE,CAAC,CAAC,EAAE,CAAA;IAEN,UAAU;IACV,MAAM,OAAO,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAA;IAE9D,gEAAgE;IAChE,MAAM,QAAQ,GACZ,oBAAoB,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,KAAK,CAAA;IAElE,OAAO;QACL,SAAS;QACT,WAAW;QACX,eAAe;QACf,aAAa;QACb,WAAW;QACX,IAAI;QACJ,IAAI;QACJ,MAAM;QACN,kBAAkB;QAClB,iBAAiB;QACjB,eAAe;QACf,mBAAmB;QACnB,kBAAkB;QAClB,UAAU;QACV,oBAAoB;QACpB,OAAO;QACP,QAAQ;QACR,UAAU;QACV,GAAG;KACJ,CAAA;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,IAAY,EACZ,OAAkD;IAElD,MAAM,IAAI,GAAgD;QACxD,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,aAAa,EAAE;YACb,OAAO;YACP,UAAU;YACV,cAAc,CAAC,oDAAoD;SACpE;QACD,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;KACL,CAAA;IAED,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,sBAAsB;QACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,IAAI,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;QAC5D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,IAAI,SAAS,CAAC,uBAAuB,CAAC,GAAG,CAAC,CAAA;QAC5E,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,WAAW,IAAI,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAA;QACtE,IAAI,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE;YACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,IAAI,SAAS,CAAC,2BAA2B,CAC7E,GAAG,CACJ,CAAA;SACF;aAAM;YACL,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAA;SAC3C;QAED,uBAAuB;QACvB,MAAM,eAAe,GAAG,2BAA2B,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QAC9D,MAAM,0BAA0B,GAAG,8BAAsB,CACvD,IAAI,CAAC,QAAQ,EACb,eAAe,CAChB,CAAA;QACD,0BAA0B,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAClD,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gBACzD,OAAO,EAAE,4DAA4D,YAAY,GAAG;gBACpF,kBAAkB,EAChB,+BAA+B;oBAC/B,IAAI,eAAe,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;gBACrE,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,gDAAgD;QAChD,IAAI,CAAC,QAAQ,mCAAQ,eAAe,GAAK,IAAI,CAAC,QAAQ,CAAE,CAAA;QAExD,yBAAyB;QACzB,KAAK,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE;YAC1B,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;gBACjB,CAAC,CAAE,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,GAAG,CAAoB,CAAA;YAEvE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC;iBAClB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpB;;;;mBAIG;gBACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;YAC1C,CAAC,CAAC;iBACD,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACrB,MAAM,eAAe,GACnB,IAAI,CAAC,MAAM,KAAK,CAAC;oBACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC;oBAClD,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAEtE,IAAI,UAAkC,CAAA;gBACtC,IAAI;oBACF,UAAU,GAAG,gCAAkB,CAAC,SAAS,CAAC,CAAA;iBAC3C;gBAAC,OAAO,CAAC,EAAE;oBACV,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EAAE,wBAAwB,SAAS,mBAAmB,eAAe,GAAG;wBAC/E,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,OAAM;iBACP;gBAED,MAAM,SAAS,GAAG,QAAQ,CAAC,UAAU,CAAoB,CAAA;gBAEzD,IAAI,aAAa,GACf,UAAU,KAAK,SAAS,CAAC,YAAY,CAAC,GAAG;oBACvC,CAAC,CAAC,8BAAoB,CAAC,KAAK;oBAC5B,CAAC,CAAC,8BAAoB,CAAC,QAAQ,CAAA;gBAEnC,gEAAgE;gBAChE,IACE,OAAO,OAAO,CAAC,0BAA0B,KAAK,QAAQ;oBACtD,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;wBACvD,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC;wBAC7D,QAAQ;oBACV,OAAO,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAC7D,UAAU,CACX,KAAK,QAAQ,CAAC,kEAAkE;kBACjF;oBACA,aAAa;wBACX,OAAO,CAAC,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CACtD,UAAU,CACX,KAAK,8BAAoB,CAAC,QAAQ;4BACjC,CAAC,CAAC,8BAAoB,CAAC,QAAQ;4BAC/B,CAAC,CAAC,8BAAoB,CAAC,KAAK,CAAA;iBACjC;gBAED,MAAM,aAAa,GAAG,gBAAgB,CACpC,IAAI,EACJ,UAAU,EACV,eAAe,EACf,aAAa,EACb,SAAS,EACT,QAAQ,EACR,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gBAED,IAAI,aAAa,EAAE;oBACjB;;;uBAGG;oBACH,IACE,aAAa;wBACb,CAAC,CAAC,aAAa,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,EAC/C;wBACA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;qBAC3D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;4BACrD,OAAO,EAAE,6DAA6D,aAAa,CAAC,WAAW,GAAG;4BAClG,kBAAkB,EAAE,+BAA+B,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4BAClG,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;iBACF;gBAED,wBAAwB;gBACxB,IACE,IAAI,CAAC,OAAO,CAAC,gCAAgC;oBAC7C,SAAS,CAAC,SAAS,EACnB;oBACA,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,OAAO,CACzC,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;wBAC3B,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC;4BAC5C,CAAC,CAAC,QAAQ;4BACV,CAAC,CAAE,SAAS,CAAC,UAAU,CAClB,QAA4B,CAAC,IAAI,EAClC,GAAG,CACe,CAAA;wBAExB,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CACtC,CAAC,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,EAAE,EAAE;4BACzC,MAAM,wBAAwB,GAAG,CAAC,CAChC,MAAM,IAAI,gBAAgB,CAC3B;gCACC,CAAC,CAAC,gBAAgB;gCAClB,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;4BAEpD,MAAM,8BAA8B,GAAG,MAAM,CAAC,IAAI,CAChD,wBAAwB,CACzB,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;gCACrB;;;;mCAIG;gCACH,OAAO,SAAS,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;4BAC1C,CAAC,CAAC,CAAA;4BAEF,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;gCAC7C,IAAI,8BAA8B,CAAC,MAAM,GAAG,CAAC,EAAE;oCAC7C,qBAAa,CAAC;wCACZ,cAAc,EACZ,uBAAe,CAAC,oCAAoC;wCACtD,OAAO,EAAE,aAAa,kBAAkB,mBAAmB,eAAe,sDAAsD,8BAA8B,wEAAwE;wCACtO,kBAAkB,EAAE,kCAAkC,8BAA8B,CAAC,CAAC,CAAC,oDAAoD;wCAC3I,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;iCACH;gCAED,kDAAkD;gCAClD,MAAM,iBAAiB,GACrB,8BAA8B,CAAC,CAAC,CAAC,CAAA;gCAEnC,MAAM,uBAAuB,GAC3B,IAAI,CAAC,MAAM,KAAK,CAAC;oCACf,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,CACb;oCACH,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAC7B,UAAU,EACV,YAAY,EACZ,GAAG,CAAC,IAAI,CAAC,KAAK,CACf,CAAA;gCAEP,IAAI,kBAA0C,CAAA;gCAE9C,IAAI;oCACF,kBAAkB,GAAG,gCAAkB,CACrC,iBAAiB,CAClB,CAAA;iCACF;gCAAC,OAAO,CAAC,EAAE;oCACV,qBAAa,CAAC;wCACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wCACnD,OAAO,EAAE,wBAAwB,SAAS,kBAAkB,uBAAuB,mBAAmB,eAAe,GAAG;wCACxH,IAAI;wCACJ,GAAG,EAAE,gBAAgB;qCACtB,CAAC,CAAA;oCAEF,OAAM;iCACP;gCAED,MAAM,iBAAiB,GAAG,gBAAgB,CACxC,kBAAkB,EAClB,kBAAkB,EAClB,uBAAuB,EACvB,8BAAoB,CAAC,YAAY,EACjC,wBAAwB,CAAC,kBAAkB,CAAC,EAC5C,gBAAgB,EAChB,GAAG,EACH,IAAI,EACJ,OAAO,CACR,CAAA;gCAED,IAAI,iBAAiB,EAAE;oCACrB;;;uCAGG;oCACH,IACE,iBAAiB;wCACjB,CAAC,CACC,iBAAiB,CAAC,WAAW;4CAC7B,IAAI,CAAC,kBAAkB,CACxB,EACD;wCACA,IAAI,CAAC,kBAAkB,CACrB,iBAAiB,CAAC,WAAW,CAC9B,GAAG,iBAAiB,CAAA;qCACtB;yCAAM;wCACL,qBAAa,CAAC;4CACZ,cAAc,EACZ,uBAAe,CAAC,qBAAqB;4CACvC,OAAO,EAAE,sEAAsE,iBAAiB,CAAC,WAAW,GAAG;4CAC/G,kBAAkB,EAAE,wCAAwC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,mBAAmB;4CAC3G,IAAI;4CACJ,GAAG,EAAE,gBAAgB;yCACtB,CAAC,CAAA;qCACH;iCACF;6BACF;wBACH,CAAC,CACF,CAAA;oBACH,CAAC,CACF,CAAA;iBACF;YACH,CAAC,CAAC,CAAA;SACL;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,CAAA;AACb,CAAC;AAlRD,sCAkRC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,SAAS,2BAA2B,CAClC,GAAS,EACT,IAAiD;IAEjD,MAAM,MAAM,GAAG,EAAE,CAAA;IACjB,MAAM,QAAQ,GAAG,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAA;IAElD,0CAA0C;IAC1C,KAAK,IAAI,SAAS,IAAI,QAAQ,EAAE;QAC9B,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAA;QAE1C,oEAAoE;QACpE,IAAI,MAAM,CAAA;QACV,IAAI,UAAU,GAAG,EAAE,CAAA;QACnB,IAAI,WAAW,CAAA;QACf,QAAQ,cAAc,CAAC,IAAI,EAAE;YAC3B,KAAK,QAAQ;gBACX,WAAW,GAAG,kDAAkD,SAAS,GAAG,CAAA;gBAC5E,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;oBACxB,WAAW,IAAI,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;iBACvC;gBAED,UAAU,GAAG;oBACX,MAAM,EAAE,SAAS,CAAC,QAAQ,CACxB,GAAG,SAAS,SAAS,EACrB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;iBACF,CAAA;gBAED,MAAM,GAAG;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW;oBACX,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF,CAAA;gBACD,MAAK;YAEP,KAAK,MAAM;gBACT,QAAQ,cAAc,CAAC,MAAM,EAAE;oBAC7B;;;;uBAIG;oBACH,KAAK,OAAO;wBACV,WAAW,GAAG,iDAAiD,SAAS,GAAG,CAAA;wBAE3E,UAAU,GAAG;4BACX,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;4BACD,QAAQ,EAAE,SAAS,CAAC,QAAQ,CAC1B,GAAG,SAAS,WAAW,EACvB,SAAS,CAAC,SAAS,CAAC,SAAS,CAC9B;yBACF,CAAA;wBAED,MAAM,GAAG;4BACP,IAAI,EAAE,QAAQ;4BACd,WAAW;4BACX,UAAU,EAAE;gCACV,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;gCACD,QAAQ,EAAE;oCACR,IAAI,EAAE,QAAQ;iCACf;6BACF;yBACF,CAAA;wBACD,MAAK;oBAEP;wBACE,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;4BAChE,OAAO,EACL,qDAAqD;gCACrD,2BAA2B,cAAc,CAAC,MAAM,WAAW;gCAC3D,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;4BACvB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;iBACL;gBACD,MAAK;YAEP,kBAAkB;YAClB,KAAK,eAAe;gBAClB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,qDAAqD;wBACrD,gCAAgC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBACnD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,MAAK;YAEP,KAAK,QAAQ;gBACX,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,qBAAqB;oBACrD,OAAO,EAAE,uCAAuC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBACjE,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,4DAA4D;gBAC5D,SAAQ;YAEV;gBACE,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,gCAAgC;oBAChE,OAAO,EACL,0CAA0C;wBAC1C,SAAS,cAAc,CAAC,IAAI,aAAa,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG;oBAC5D,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;SACL;QAED,kCAAkC;QAClC,MAAM,CAAC,SAAS,CAAC,GAAG;YAClB,OAAO,EAAE,SAAS;YAClB,GAAG,EAAE,cAAc;YACnB,UAAU;YACV,MAAM;YACN,GAAG;SACJ,CAAA;KACF;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;GAGG;AACH,SAAgB,aAAa,CAC3B,KAA4B,EAC5B,MAAsC,EACtC,iBAA0B,EAC1B,IAAiD,EACjD,GAAS,EACT,KAAqC;IAErC,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAA;IAE7C,wBAAwB;IACxB,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,qBAAa,CAAC;YACZ,cAAc,EAAE,uBAAe,CAAC,cAAc;YAC9C,OAAO,EACL,mDAAmD;gBACnD,mBAAmB,aAAa,iBAAiB,IAAI,CAAC,SAAS,CAC7D,MAAM,CACP,GAAG;YACN,IAAI;YACJ,GAAG,EAAE,gBAAgB;SACtB,CAAC,CAAA;QAEF,sEAAsE;QACtE,OAAO;YACL,aAAa;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,IAAI;YACX,cAAc,EAAE,IAAI;YACpB,eAAe,EAAE,IAAI;YACrB,0BAA0B,EAAE,IAAI;YAChC,iBAAiB,EAAE,MAAM;SAC1B,CAAA;KACF;SAAM;QACL,IAAI,cAAc,GAChB,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QAEpE,MAAM,SAAS,GAAG,EAAE,CAAA;QACpB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,CAAA;gBAC3B,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAA;gBACtE,IAAI,aAAa,IAAI,SAAS,EAAE;oBAC9B,MAAM,IAAI,KAAK,CACb,iCAAiC,aAAa,qBAAqB,aAAa,QAAQ,SAAS,CAAC,sBAAsB,CAAC,SAAS,gDAAgD,aAAa,GAAG,CACnM,CAAA;iBACF;gBACD,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,CACrC,aAAa,IAAI,OAAO,EACxB,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;oBACvB,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,SAAS;oBAC/B,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,CAC/B,CAAA;gBAED,SAAS,CAAC,YAAY,CAAC,GAAG,IAAI,CAAA;YAChC,CAAC,CAAC,CAAA;SACH;QAED,2DAA2D;QAC3D,MAAM,KAAK,GAAG,cAAc,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;QAEtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;YAChB,8CAA8C;YAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAExC;;;eAGG;YACH,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;gBACpC,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,WAAW,EAAE;oBAChD,2CAA2C;oBAC3C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;wBACzD,IACE,OAAO,SAAS,CAAC,WAAW,CAAC,KAAK,WAAW;4BAC7C,CAAC,SAAS,CACR,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,EAClC,SAAS,CAAC,WAAW,CAAC,CACvB,EACD;4BACA,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,kBAAkB;gCAClD,OAAO,EACL,2EAA2E;oCAC3E,aAAa,WAAW,wCAAwC;oCAChE,IAAI,IAAI,CAAC,SAAS,CAChB,eAAe,CAAC,KAAK,CAAC,WAAW,CAAC,CACnC,QAAQ;oCACT,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI;gCAChD,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;yBACH;oBACH,CAAC,CAAC,CAAA;oBAEF;;;;uBAIG;oBACH,eAAe,CAAC,KAAK,mCAAQ,SAAS,GAAK,eAAe,CAAC,KAAK,CAAE,CAAA;iBACnE;qBAAM;oBACL,mDAAmD;oBACnD,eAAe,CAAC,KAAK,GAAG,SAAS,CAAA;iBAClC;aACF;YAED,OAAO,eAAe,CAAA;SACvB;aAAM;YACL,wDAAwD;YACxD,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;YAErD,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW;gBACxC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC;gBAC1D,CAAC,CAAC,SAAS,CAAC,UAAU,CAClB,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CACrD,CAAA;YACL,MAAM,aAAa,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG,OAAO,CAAC,CAAA;YAE9D,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YAErD;;;;eAIG;YACH,MAAM,eAAe,GAAG,YAAY,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAEnE,MAAM,iBAAiB,GAAG,SAAS,CAAC,0BAA0B,CAC5D,eAA+B,EAC/B,IAAI,CACL,CAAA;YAED,MAAM,GAAG,GAAmB;gBAC1B,aAAa;gBAEb;;;;;;;mBAOG;gBACH,MAAM,EAAE,cAAc;gBACtB,QAAQ,EAAE,EAAE;gBACZ,iBAAiB;gBACjB,cAAc,EAAE,SAAS;gBACzB,KAAK,EAAE,SAAS;gBAChB,eAAe,EAAE,QAAQ;gBACzB,0BAA0B,EAAE,aAAa;aAC1C,CAAA;YAED,gFAAgF;YAChF,IACE,iBAAiB,KAAK,QAAQ;gBAC9B,iBAAiB,KAAK,MAAM;gBAC5B,iBAAiB,KAAK,MAAM,EAC5B;gBACA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,iCAAiC;gBACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;aACpB;YAED,4DAA4D;YAC5D;YACE,qEAAqE;YACrE,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;gBACnC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,oCAAoC;gBAC/E,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC;gBACzC,mBAAmB,CAAC,eAAe,EAAE,GAAG,CAAC,EACzC;gBACA,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,yBAAyB;wBAC1D,0DAA0D;wBAC1D,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,iDAAiD;YACjD,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED;;;;eAIG;YACH,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;gBACxC,MAAM,YAAY,GAAG,sBAAsB,CACzC,QAAQ,EACR,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,GAAG,EACH,IAAI,EACJ,GAAG,CACJ,CAAA;gBACD,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;oBACpC,OAAO,YAAY,CAAA;iBACpB;aACF;YAED,IAAI,iBAAiB,EAAE;gBACrB,QAAQ,iBAAiB,EAAE;oBACzB,KAAK,MAAM;wBACT,IAAI,OAAO,eAAe,CAAC,KAAK,KAAK,QAAQ,EAAE;4BAC7C,yCAAyC;4BACzC,uEAAuE;4BACvE,0EAA0E;4BAC1E,IAAI,WAAW,GAAG,eAAe,CAAC,KAAK,CAAA;4BACvC,IAAI,SAAS,GAAG,GAAG,IAAI,UAAU,CAAA;4BACjC,MAAM,aAAa,GACjB,eAAe,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;4BAE5D,IAAI,MAAM,IAAI,WAAW,EAAE;gCACzB,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;6BAC9C;4BAED,MAAM,aAAa,GAAG,aAAa;4BACjC,wFAAwF;4BACxF;gCACE,aAAa;gCACb,OAAO,EAAE,SAAS;6BACnB,EACD,WAA2B,EAC3B,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED,0BAA0B;4BAC1B,GAAG,CAAC,cAAc,GAAG,aAAa,CAAA;yBACnC;wBACD,MAAK;oBAEP,KAAK,QAAQ;wBACX,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;wBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;4BAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;4BACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;yBACF;6BAAM;4BACL,qBAAa,CAAC;gCACZ,cAAc,EAAE,uBAAe,CAAC,yBAAyB;gCACzD,OAAO,EACL,UAAU,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,iBAAiB;oCACjD,gBAAgB;gCAClB,IAAI;gCACJ,GAAG,EAAE,gBAAgB;6BACtB,CAAC,CAAA;4BAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;yBAC/B;wBAED,MAAK;iBACR;aACF;iBAAM;gBACL,yBAAyB;gBAEzB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;oBACnD,OAAO,EAAE,0DAA0D,IAAI,CAAC,SAAS,CAC/E,MAAM,CACP,IAAI;oBACL,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;aAC/B;YAED,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AApTD,sCAoTC;AAED;;;;GAIG;AACH,SAAS,cAAc,CACrB,aAAqB,EACrB,MAAoB,EACpB,QAA0B;IAE1B;;;OAGG;IACH,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QACpD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QAC3B;;;WAGG;QAEH,IAAI,aAAa,KAAK,GAAG,CAAC,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE;YACxE,OAAO,KAAK,CAAA;SACb;KACF;IAED,mDAAmD;IACnD,OAAO,CAAC,CAAC,CAAA;AACX,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,KAA4B;IACpD,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QACvC,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,qCAAqC;KACjH;SAAM,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QAC5C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4BAA4B;KACtG;SAAM,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QAC/C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,4DAA4D;KACzI;SAAM,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QAC7C,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA,CAAC,uBAAuB;KAClG;SAAM;QACL,OAAO,iBAAiB,CAAA,CAAC,yBAAyB;KACnD;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,aAAa,CACpB,KAA4B,EAC5B,SAAmB;IAEnB,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EAAE;QAC1E,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;KACF;IAED,IAAI,UAAkB,CAAA;IAEtB,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EAAE;QAC3C,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,aAAa,EACnB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QAED,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAChC,MAAM,IAAI,KAAK,CACb,iCAAiC,QAAQ,qBAAqB,KAAK,CAAC,aAAa,QAAQ,SAAS,CAAC,sBAAsB,CAAC,QAAQ,gDAAgD,QAAQ,GAAG,CAC9L,CAAA;SACF;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,aAAa,CAAA;SACjC;KACF;IAED,4BAA4B;IAC5B,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE;QACpD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,OAAO,EACb,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,OAAO,CAAA;SAC3B;KACF;IAED,4DAA4D;IAC5D,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;QACvD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,UAAU,EAChB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;SAC9B;KACF;IAED,uBAAuB;IACvB,IAAI,CAAC,UAAU,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;QACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CACjC,KAAK,CAAC,QAAQ,EACd,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;QACD,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YACjC,UAAU,GAAG,KAAK,CAAC,QAAQ,CAAA;SAC5B;KACF;IAED,6DAA6D;IAC7D,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,SAAS,CAAC,QAAQ,CAC7B,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;YACrC,CAAC,CAAC,KAAK,CAAC,aAAa;YACrB,CAAC,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBACnC,CAAC,CAAC,KAAK,CAAC,OAAO;gBACf,CAAC,CAAC,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;oBACtC,CAAC,CAAC,KAAK,CAAC,UAAU;oBAClB,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;wBACpC,CAAC,CAAC,KAAK,CAAC,QAAQ;wBAChB,CAAC,CAAC,iBAAiB,EACrB,SAAS,CAAC,SAAS,CAAC,UAAU,CAC/B,CAAA;KACF;IAED,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE;QAClC,IAAI,QAAQ,GAAG,CAAC,CAAA;QAEhB;;;;WAIG;QACH,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAC,EAAE;YACrD,QAAQ,EAAE,CAAA;SACX;QACD,UAAU,GAAG,GAAG,UAAU,GAAG,QAAQ,EAAE,CAAA;KACxC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CACnC,GAAmB,EACnB,MAAoB,EACpB,QAAkB,EAClB,iBAA0B,EAC1B,IAAiD,EACjD,GAAS;IAET;;;;OAIG;IACH,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;QAClC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;YAC3C,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QACjC,CAAC,CAAC,CAAA;KACH;IAED,KAAK,IAAI,WAAW,IAAI,MAAM,CAAC,UAAU,EAAE;QACzC,IAAI,cAAc,GAAG,WAAW,CAAA;QAChC,IAAI,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QAC/C,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;QAE3E,IAAI,MAAM,IAAI,UAAU,EAAE;YACxB,cAAc,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YACjD,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;SACxE;QAED,IAAI,CAAC,CAAC,WAAW,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE;YACxC,MAAM,aAAa,GAAG,aAAa,CACjC;gBACE,aAAa;gBACb,OAAO,EAAE,cAAc;gBACvB,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,mIAAmI;aACjK,EACD,UAAU,EACV,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;YAED,4BAA4B;YAC5B,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,aAAa,CAAA;SAChD;aAAM;YACL,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,oBAAoB;gBACpD,OAAO,EACL,wDAAwD;oBACxD,kEAAkE;oBAClE,iBAAiB,WAAW,kBAAkB,IAAI,CAAC,SAAS,CAC1D,MAAM,CACP,IAAI;oBACL,sBAAsB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG;gBAC9C,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;SACH;KACF;AACH,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CACnB,MAAsC,EACtC,UAAiD,EACjD,IAAiD,EACjD,GAAS;IAET,qBAAqB;IACrB,IAAI,MAAM,IAAI,MAAM,EAAE;QACpB,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAA;QACrC,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;QAE/D,IAAI,iBAAiB,IAAI,UAAU,EAAE;YACnC,OAAO,UAAU,CAAC,iBAAiB,CAAC,CAAA;SACrC;aAAM;YACL,6CAA6C;YAC7C,UAAU,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAA;SACvC;KACF;IAED,MAAM,eAAe,GAAiB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IAExE,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;QACxC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;YAC7C,8BAA8B;YAC9B,MAAM,cAAc,GAAG,YAAY,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;YAExE,IAAI,cAAc,CAAC,IAAI,EAAE;gBACvB,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;oBACzB,eAAe,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,CAAA;oBAE1C,yBAAyB;iBAC1B;qBAAM,IAAI,eAAe,CAAC,IAAI,KAAK,cAAc,CAAC,IAAI,EAAE;oBACvD,2BAA2B;oBAE3B,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;wBACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI,GAAG,sCAAsC;wBAChD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;iBACH;aACF;YAED,oCAAoC;YACpC,IAAI,YAAY,IAAI,cAAc,EAAE;gBAClC,IAAI,CAAC,CAAC,YAAY,IAAI,eAAe,CAAC,EAAE;oBACtC,eAAe,CAAC,UAAU,GAAG,EAAE,CAAA;iBAChC;gBAED,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,OAAO,CAC/C,CAAC,CAAC,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE;oBAC3B,IAAI,YAAY,IAAI,eAAe,CAAC,UAAU,EAAE;wBAC9C,uBAAuB;wBAEvB,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,mBAAmB;4BACnD,OAAO,EACL,sCAAsC,IAAI,CAAC,SAAS,CAClD,eAAe,CAChB,IAAI;gCACL,2CAA2C,YAAY,IAAI;4BAC7D,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;yBAAM;wBACL,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAA;qBACpD;gBACH,CAAC,CACF,CAAA;aACF;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,+BAA+B;YAC/B,IAAI,OAAO,IAAI,cAAc,EAAE;gBAC7B,IAAI,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,EAAE;oBACjC,eAAe,CAAC,KAAK,GAAG,EAAE,CAAA;iBAC3B;gBAED,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;oBAC7C,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAC3C,CAAC,CAAC,CAAA;aACH;YAED,kCAAkC;YAClC,IAAI,UAAU,IAAI,cAAc,EAAE;gBAChC,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,EAAE;oBACpC,eAAe,CAAC,QAAQ,GAAG,EAAE,CAAA;iBAC9B;gBAED,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,gBAAgB,EAAE,EAAE;oBACnD,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;wBACxD,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;qBAChD;gBACH,CAAC,CAAC,CAAA;aACH;QACH,CAAC,CAAC,CAAA;KACH;IAED,OAAO,eAAe,CAAA;AACxB,CAAC;AAQD;;;GAGG;AACH,SAAS,mBAAmB,CAC1B,OAA2C,EAC3C,IAAiD,EACjD,GAAS;IAET,MAAM,MAAM,GAAqB;QAC/B,qBAAqB,EAAE,EAAE;QACzB,aAAa,EAAE,EAAE;QACjB,WAAW,EAAE,EAAE;KAChB,CAAA;IAED,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QACzB,sBAAsB;QACtB,IAAI,MAAM,IAAI,MAAM,EAAE;YACpB,MAAM,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,CAAiB,CAAA;SAChE;QAED,kCAAkC;QAClC,MAAM,uBAAuB,GAAG,SAAS,CAAC,0BAA0B,CAClE,MAAM,EACN,IAAI,CACL,CAAA;QACD,IAAI,uBAAuB,EAAE;YAC3B,MAAM,CAAC,qBAAqB,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;SAC3D;QAED,yBAAyB;QACzB,IAAI,MAAM,CAAC,UAAU,EAAE;YACrB,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;SAC7C;QAED,uBAAuB;QACvB,IAAI,MAAM,CAAC,QAAQ,EAAE;YACnB,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;SAChE;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,8EAA8E;aACtJ,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,eAA6B,EAC7B,GAAS;IAET,qEAAqE;IACrE,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,KAAK,CAAC;QACpC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE;YAC1C,6BAA6B;YAC7B,IAAI,MAAM,IAAI,YAAY,EAAE;gBAC1B,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACY,CAAA;aAClB;YAED,OAAO,CACL,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,CACvE,CAAA;QACH,CAAC,CAAC,CACH,CAAA;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,wCAAwC;QACxC,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,MAAM,aAAa,GAEf,EAAE,CAAA;gBACN,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAU,CAAA;gBAEhD;;;;mBAIG;gBAEH,IAAI,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ,EAAE;oBAClD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/D,aAAa,CAAC,YAAY,CAAC,GAAG;4BAC5B,eAAe,CAAC,UAAU,CAAC,YAAY,CAAC;yBACzC,CAAA;oBACH,CAAC,CAAC,CAAA;iBACH;gBAED,wDAAwD;gBACxD,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IACE,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,4DAA4D;4BACzG,OAAO,aAAa,CAAC,YAAY,CAAC,KAAK,QAAQ;4BAC/C,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE;gCAC5C,yCAAyC;gCACzC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;4BACvD,CAAC,CAAC,EACF;4BACA,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAA;yBACzC;wBAED,4BAA4B;wBAC5B,IAAI,CAAC,CAAC,YAAY,IAAI,aAAa,CAAC,EAAE;4BACpC,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE,CAAA;yBACjC;wBACD,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;oBAC5D,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,IACE,OAAO,eAAe,CAAC,UAAU,KAAK,QAAQ;oBAC9C,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAClD;oBACA,4BAA4B,CAC1B,GAAG,EACH,eAAe,EACf,GAAG,CAAC,QAAQ,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;iBACF;gBAED,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;oBAC7C,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;wBAC/C,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;4BAC7C,uCAAuC;4BACvC,MAAM,cAAc,GAAG,UAAU,CAAC,YAAY,CAAiB,CAAA;4BAC/D,MAAM,aAAa,GACjB,cAAc,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;4BAE3D,MAAM,aAAa,GAAG,aAAa,CACjC;gCACE,aAAa;gCACb,OAAO,EAAE,YAAY;gCACrB,UAAU,EAAE,cAAc,CAAC,KAAK,CAAC,mIAAmI;6BACrK,EACD,cAAc,EACd,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CAAA;4BAED;;;+BAGG;4BACH,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG,aAAa,CAAA;yBACjD;oBACH,CAAC,CAAC,CAAA;gBACJ,CAAC,CAAC,CAAA;gBAEF,iCAAiC;gBACjC,sBAAsB,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC9C,wBAAwB;oBACxB,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,GAAG;wBACjC,iBAAiB,EAAE,MAAM;qBAC1B,CAAA;gBACH,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;gBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAEnB,GAAG,CAAC,iBAAiB,GAAG,QAAQ,CAAA;gBAChC,OAAO,GAAG,CAAA;aACX;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;wBAC9D,2DAA2D;wBAC3D,yDAAyD;wBACzD,6BAA6B;oBAC/B,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,yBAAyB;oBAC9D,2DAA2D;oBAC3D,2DAA2D;oBAC3D,6BAA6B;gBAC/B,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC;AAED,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,aAAqB,EACrB,eAA6B,EAC7B,iBAA0B,EAC1B,GAAmB,EACnB,IAAiD,EACjD,GAAS;IAET,MAAM,SAAS,GAAG,mBAAmB,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAA;IAEvE,IACE,SAAS,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,EAAE;QAC/D,OAAO,uBAAuB,KAAK,QAAQ,CAAA;IAC7C,CAAC,CAAC,EACF;QACA,2CAA2C;QAC3C,IACE,SAAS,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE,EAAE;YAChE,OAAO,uBAAuB,KAAK,QAAQ,CAAA;QAC7C,CAAC,CAAC;YACF,SAAS,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,kBAAkB;UACrD;YACA,kDAAkD;YAClD,IAAI,iBAAiB,EAAE;gBACrB,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,WAAW;oBAC3C,OAAO,EAAE,uDAAuD;oBAChE,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;YAED,qDAAqD;YACrD,IACE,GAAG,CAAC,iBAAiB,KAAK,IAAI;gBAC9B,GAAG,CAAC,iBAAiB,KAAK,QAAQ,EAClC;gBACA,GAAG,CAAC,cAAc,GAAG,EAAE,CAAA;gBAEvB,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;oBAC7C,4BAA4B;oBAC5B,IAAI,OAAe,CAAA;oBAEnB,IAAI,MAAM,IAAI,YAAY,EAAE;wBAC1B,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;wBAC5C,YAAY,GAAG,SAAS,CAAC,UAAU,CACjC,YAAY,CAAC,IAAI,EACjB,GAAG,CACJ,CAAA;qBACF;oBAED,sDAAsD;oBACtD,IACE,SAAS,CAAC,0BAA0B,CAAC,YAAY,EAAE,IAAI,CAAC;wBACxD,QAAQ,EACR;wBACA,MAAM,aAAa,GACjB,YAAY,CAAC,SAAS,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;wBACzD,MAAM,aAAa,GAAG,aAAa,CACjC;4BACE,aAAa;4BACb,OAAO;4BACP,UAAU,EAAE,YAAY,CAAC,KAAK;4BAC9B,QAAQ,EAAE,GAAG,QAAQ,QAAQ;yBAC9B,EACD,YAAY,EACZ,iBAAiB,EACjB,IAAI,EACJ,GAAG,CACJ,CACA;wBAAC,GAAG,CAAC,cAAmC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;qBAC9D;yBAAM;wBACL,qBAAa,CAAC;4BACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;4BAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;gCAC7D,kDAAkD,IAAI,CAAC,SAAS,CAC9D,YAAY,CACb,IAAI;gCACL,uDAAuD;gCACvD,oBAAoB;4BACtB,IAAI;4BACJ,GAAG,EAAE,gBAAgB;yBACtB,CAAC,CAAA;qBACH;gBACH,CAAC,CAAC,CAAA;gBAEF,wEAAwE;gBACxE,IACE,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC;oBAC7B,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,aAAa,EAAE,EAAE;wBACzC,OAAO,aAAa,CAAC,iBAAiB,KAAK,QAAQ,CAAA;oBACrD,CAAC,CAAC,EACF;oBACA,+DAA+D;oBAC/D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBACjC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;oBAEtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBAEnB,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAA;oBAC/B,OAAO,GAAG,CAAA;iBACX;qBAAM;oBACL,qBAAa,CAAC;wBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;wBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,wBAAwB;4BAC7D,6DAA6D;4BAC7D,2DAA2D;wBAC7D,kBAAkB,EAAE,kCAAkC;wBACtD,IAAI;wBACJ,GAAG,EAAE,gBAAgB;qBACtB,CAAC,CAAA;oBAEF,8BAA8B;oBAC9B,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;oBAC9B,OAAO,GAAG,CAAA;iBACX;aACF;iBAAM;gBACL,4DAA4D;gBAE5D,qBAAa,CAAC;oBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;oBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CACvB,GAAG,CAAC,MAAM,CACX,+BAA+B;wBAChC,6DAA6D;wBAC7D,6CAA6C;oBAC/C,kBAAkB,EAAE,kCAAkC;oBACtD,IAAI;oBACJ,GAAG,EAAE,gBAAgB;iBACtB,CAAC,CAAA;gBAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;gBAC9B,OAAO,GAAG,CAAA;aACX;SACF;aAAM;YACL,8CAA8C;YAE9C,qBAAa,CAAC;gBACZ,cAAc,EAAE,uBAAe,CAAC,eAAe;gBAC/C,OAAO,EACL,WAAW,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,+BAA+B;oBACpE,8DAA8D;oBAC9D,oDAAoD;gBACtD,kBAAkB,EAAE,kCAAkC;gBACtD,IAAI;gBACJ,GAAG,EAAE,gBAAgB;aACtB,CAAC,CAAA;YAEF,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAA;YAC9B,OAAO,GAAG,CAAA;SACX;KACF;AACH,CAAC"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index e38a8ac0..0266963d 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -366,12 +366,17 @@ function createOrReuseEnum({ def, data }) { translationLog(`Create GraphQLEnumType '${def.graphQLTypeName}'`); const values = {}; const mapping = def.schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping] || {}; - def.schema.enum.forEach((e) => { - values[Oas3Tools.sanitize(mapping[e.toString()] || e.toString(), !data.options.simpleEnumValues - ? Oas3Tools.CaseStyle.ALL_CAPS - : Oas3Tools.CaseStyle.simple)] = { - value: e - }; + def.schema.enum.forEach((enumValue) => { + const enumValueString = enumValue.toString(); + const fromExtension = mapping[enumValueString]; + const saneEnumValue = fromExtension || + Oas3Tools.sanitize(enumValueString, !data.options.simpleEnumValues + ? Oas3Tools.CaseStyle.ALL_CAPS + : Oas3Tools.CaseStyle.simple); + if (fromExtension in values) { + throw new Error(`Cannot create enum value "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping}, but it conflicts with another enum value "${fromExtension}"`); + } + values[saneEnumValue] = { value: enumValue }; }); // Store newly created Enum Object Type def.graphQLType = new graphql_1.GraphQLEnumType({ @@ -434,9 +439,10 @@ function createFields({ def, links, operation, data, iteration, isInputObjectTyp if (fromExtension && fromExtension in fields) { throw new Error(`Cannot create field with name "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another field called "${fromExtension}"`); } - const saneFieldTypeKey = fromExtension !== null && fromExtension !== void 0 ? fromExtension : Oas3Tools.sanitize(fieldTypeKey, !data.options.simpleNames - ? Oas3Tools.CaseStyle.camelCase - : Oas3Tools.CaseStyle.simple); + const saneFieldTypeKey = fromExtension || + Oas3Tools.sanitize(fieldTypeKey, !data.options.simpleNames + ? Oas3Tools.CaseStyle.camelCase + : Oas3Tools.CaseStyle.simple); const sanePropName = Oas3Tools.storeSaneName(saneFieldTypeKey, fieldTypeKey, data.saneMap); fields[sanePropName] = { type: requiredProperty diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index cd2c321b..eb917da9 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/index.ts b/packages/openapi-to-graphql/src/index.ts index 8d70155f..8f50ad94 100644 --- a/packages/openapi-to-graphql/src/index.ts +++ b/packages/openapi-to-graphql/src/index.ts @@ -324,7 +324,7 @@ function translateOpenAPIToGraphQL( } let fieldName = - extensionFieldName ?? + extensionFieldName || (!singularNames ? Oas3Tools.uncapitalize(operation.responseDefinition.graphQLTypeName) : Oas3Tools.sanitize( @@ -504,7 +504,7 @@ function translateOpenAPIToGraphQL( } const saneFieldName = - extensionFieldName ?? + extensionFieldName || Oas3Tools.storeSaneName(saneOperationId, operationId, data.saneMap) if (operation.inViewer) { diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index 7c587e56..e1f91b1c 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -686,6 +686,11 @@ export function createDataDef( Object.keys(links).forEach((linkKey) => { const link = links[linkKey] const fromExtension = link[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName] + if (fromExtension in saneLinks) { + throw new Error( + `Cannot create link with name "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.FieldName}, but it conflicts with another link called "${fromExtension}"` + ) + } const linkSaneName = Oas3Tools.sanitize( fromExtension || linkKey, !data.options.simpleNames diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index 6297ce7d..b967b46e 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -538,17 +538,23 @@ function createOrReuseEnum({ const values = {} const mapping = def.schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping] || {} - def.schema.enum.forEach((e) => { - values[ + def.schema.enum.forEach((enumValue) => { + const enumValueString = enumValue.toString() + const fromExtension = mapping[enumValueString] + const saneEnumValue = + fromExtension || Oas3Tools.sanitize( - mapping[e.toString()] || e.toString(), + enumValueString, !data.options.simpleEnumValues ? Oas3Tools.CaseStyle.ALL_CAPS : Oas3Tools.CaseStyle.simple ) - ] = { - value: e + if (fromExtension in values) { + throw new Error( + `Cannot create enum value "${fromExtension}".\nYou provided "${fromExtension}" in ${Oas3Tools.OAS_GRAPHQL_EXTENSIONS.EnumMapping}, but it conflicts with another enum value "${fromExtension}"` + ) } + values[saneEnumValue] = { value: enumValue } }) // Store newly created Enum Object Type @@ -642,7 +648,7 @@ function createFields({ } const saneFieldTypeKey = - fromExtension ?? + fromExtension || Oas3Tools.sanitize( fieldTypeKey, !data.options.simpleNames diff --git a/packages/openapi-to-graphql/test/extensions.test.ts b/packages/openapi-to-graphql/test/extensions.test.ts index 2c8345e3..5a8e48f8 100644 --- a/packages/openapi-to-graphql/test/extensions.test.ts +++ b/packages/openapi-to-graphql/test/extensions.test.ts @@ -137,24 +137,24 @@ describe('GraphQL Extensions', () => { ) }) - test.skip('should throw when x-graphql-field-name causes naming conflicts on links', async () => { - const oas = require('./fixtures/extensions_error3.json') + test('should throw when x-graphql-field-name causes naming conflicts on links', async () => { + const oas = require('./fixtures/extensions_error6.json') await expect( openAPIToGraphQL.createGraphQLSchema(oas) ).rejects.toThrowError( new Error( - 'Cannot create field with name "name".\nYou provided "name" in x-graphql-field-name, but it conflicts with another field called "name"' + 'Cannot create link with name "group".\nYou provided "group" in x-graphql-field-name, but it conflicts with another link called "group"' ) ) }) - test.skip('should throw when x-graphql-enum-mapping causes naming conflicts', async () => { - const oas = require('./fixtures/extensions_error3.json') + test('should throw when x-graphql-enum-mapping causes naming conflicts', async () => { + const oas = require('./fixtures/extensions_error7.json') await expect( openAPIToGraphQL.createGraphQLSchema(oas) ).rejects.toThrowError( new Error( - 'Cannot create field with name "name".\nYou provided "name" in x-graphql-field-name, but it conflicts with another field called "name"' + 'Cannot create enum value "CONFLICT".\nYou provided "CONFLICT" in x-graphql-enum-mapping, but it conflicts with another enum value "CONFLICT"' ) ) }) diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error6.json b/packages/openapi-to-graphql/test/fixtures/extensions_error6.json new file mode 100644 index 00000000..a66c9bac --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error6.json @@ -0,0 +1,144 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "get": { + "description": "Return a user.", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + }, + "links": { + "group": { + "$ref": "#/components/links/Group" + }, + "group2": { + "$ref": "#/components/links/Group2" + } + } + } + } + } + }, + "/group/{groupId}": { + "get": { + "description": "Return a group.", + "operationId": "getGroupById", + "parameters": [ + { + "name": "groupId", + "in": "path", + "schema": { + "type": "string" + }, + "required": true + } + ], + "responses": { + "202": { + "description": "A group.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/group" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + }, + "groupId": { + "type": "string" + } + } + }, + "group": { + "type": "object", + "description": "A group represents a group of people", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string", + "description": "The name of a group" + } + } + } + }, + "links": { + "Group": { + "operationId": "getGroupById", + "parameters": { + "groupId": "$response.body.groupId" + }, + "description": "Link from User to Group" + }, + "Group2": { + "operationId": "getGroupById", + "x-graphql-field-name": "group", + "parameters": { + "groupId": "$response.body.groupId" + }, + "description": "Link from User to Group2" + } + } + }, + "security": [] +} diff --git a/packages/openapi-to-graphql/test/fixtures/extensions_error7.json b/packages/openapi-to-graphql/test/fixtures/extensions_error7.json new file mode 100644 index 00000000..158513ac --- /dev/null +++ b/packages/openapi-to-graphql/test/fixtures/extensions_error7.json @@ -0,0 +1,83 @@ +{ + "openapi": "3.0.0", + "info": { + "title": "Example API 2", + "description": "An API to test converting Open API Specs 3.0 to GraphQL", + "version": "1.0.0", + "termsOfService": "http://example.com/terms/", + "contact": { + "name": "Elias Meire", + "url": "http://www.example.com/support" + }, + "license": { + "name": "Apache 2.0", + "url": "http://www.apache.org/licenses/LICENSE-2.0.html" + } + }, + "externalDocs": { + "url": "http://example.com/docs", + "description": "Some more natural language description." + }, + "tags": [ + { + "name": "test", + "description": "Indicates this API is for testing" + } + ], + "servers": [ + { + "url": "http://localhost:{port}/{basePath}", + "description": "The location of the local test server.", + "variables": { + "port": { + "default": "3002" + }, + "basePath": { + "default": "api" + } + } + } + ], + "paths": { + "/user": { + "get": { + "description": "Return a user.", + "responses": { + "202": { + "description": "A user.", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/user" + } + } + } + } + } + } + } + }, + "components": { + "schemas": { + "user": { + "type": "object", + "description": "A user represents a natural person", + "properties": { + "name": { + "type": "string", + "description": "The legal name of a user" + }, + "status": { + "type": "string", + "enum": ["pending", "active"], + "x-graphql-enum-mapping": { + "pending": "CONFLICT", + "active": "CONFLICT" + } + } + } + } + } + }, + "security": [] +} From adfe627958ee6224e1518e62408610c7c5eb4a9c Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Tue, 27 Apr 2021 14:42:05 +0200 Subject: [PATCH 8/9] Add support for renaming param types --- .../openapi-to-graphql/lib/preprocessor.js | 18 ++++++++++----- .../lib/preprocessor.js.map | 2 +- .../openapi-to-graphql/lib/schema_builder.js | 5 ++++- .../lib/schema_builder.js.map | 2 +- .../openapi-to-graphql/src/preprocessor.ts | 22 +++++++++++++------ .../openapi-to-graphql/src/schema_builder.ts | 5 ++++- 6 files changed, 38 insertions(+), 16 deletions(-) diff --git a/packages/openapi-to-graphql/lib/preprocessor.js b/packages/openapi-to-graphql/lib/preprocessor.js index 441ff011..2ab7d577 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js +++ b/packages/openapi-to-graphql/lib/preprocessor.js @@ -520,11 +520,19 @@ function createDataDef(names, schema, isInputObjectType, data, oas, links) { else { // Else, define a new name, store the def, and return it const name = getSchemaName(names, data.usedTypeNames); - // Store and sanitize the name - const saneName = !data.options.simpleNames - ? Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.PascalCase) - : Oas3Tools.capitalize(Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.simple)); - const saneInputName = Oas3Tools.capitalize(saneName + 'Input'); + let saneInputName; + let saneName; + if (name === names.fromExtension) { + saneName = name; + saneInputName = name; + } + else { + // Store and sanitize the name + saneName = !data.options.simpleNames + ? Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.PascalCase) + : Oas3Tools.capitalize(Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.simple)); + saneInputName = Oas3Tools.capitalize(saneName + 'Input'); + } Oas3Tools.storeSaneName(saneName, name, data.saneMap); /** * TODO: is there a better way of copying the schema object? diff --git a/packages/openapi-to-graphql/lib/preprocessor.js.map b/packages/openapi-to-graphql/lib/preprocessor.js.map index 9c7b22c8..61a4d8a5 100644 --- a/packages/openapi-to-graphql/lib/preprocessor.js.map +++ b/packages/openapi-to-graphql/lib/preprocessor.js.map @@ -1 +1 @@ -{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"preprocessor.js","sourceRoot":"","sources":["../src/preprocessor.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/lib/schema_builder.js b/packages/openapi-to-graphql/lib/schema_builder.js index 0266963d..31bd32f6 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js +++ b/packages/openapi-to-graphql/lib/schema_builder.js @@ -888,7 +888,10 @@ function getArgs({ requestPayloadDef, parameters, operation, data }) { if ('$ref' in schema) { schema = Oas3Tools.resolveRef(schema.$ref, operation.oas); } - const paramDef = preprocessor_1.createDataDef({ fromSchema: parameter.name }, schema, true, data, operation.oas); + const paramDef = preprocessor_1.createDataDef({ + fromSchema: parameter.name, + fromExtension: schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] + }, schema, true, data, operation.oas); const type = getGraphQLType({ def: paramDef, operation, diff --git a/packages/openapi-to-graphql/lib/schema_builder.js.map b/packages/openapi-to-graphql/lib/schema_builder.js.map index eb917da9..38c86b2d 100644 --- a/packages/openapi-to-graphql/lib/schema_builder.js.map +++ b/packages/openapi-to-graphql/lib/schema_builder.js.map @@ -1 +1 @@ -{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"schema_builder.js","sourceRoot":"","sources":["../src/schema_builder.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/packages/openapi-to-graphql/src/preprocessor.ts b/packages/openapi-to-graphql/src/preprocessor.ts index e1f91b1c..d4454a4e 100644 --- a/packages/openapi-to-graphql/src/preprocessor.ts +++ b/packages/openapi-to-graphql/src/preprocessor.ts @@ -756,13 +756,21 @@ export function createDataDef( // Else, define a new name, store the def, and return it const name = getSchemaName(names, data.usedTypeNames) - // Store and sanitize the name - const saneName = !data.options.simpleNames - ? Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.PascalCase) - : Oas3Tools.capitalize( - Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.simple) - ) - const saneInputName = Oas3Tools.capitalize(saneName + 'Input') + let saneInputName: string + let saneName: string + + if (name === names.fromExtension) { + saneName = name + saneInputName = name + } else { + // Store and sanitize the name + saneName = !data.options.simpleNames + ? Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.PascalCase) + : Oas3Tools.capitalize( + Oas3Tools.sanitize(name, Oas3Tools.CaseStyle.simple) + ) + saneInputName = Oas3Tools.capitalize(saneName + 'Input') + } Oas3Tools.storeSaneName(saneName, name, data.saneMap) diff --git a/packages/openapi-to-graphql/src/schema_builder.ts b/packages/openapi-to-graphql/src/schema_builder.ts index b967b46e..31510a1c 100644 --- a/packages/openapi-to-graphql/src/schema_builder.ts +++ b/packages/openapi-to-graphql/src/schema_builder.ts @@ -1205,7 +1205,10 @@ export function getArgs({ } const paramDef = createDataDef( - { fromSchema: parameter.name }, + { + fromSchema: parameter.name, + fromExtension: schema[Oas3Tools.OAS_GRAPHQL_EXTENSIONS.TypeName] + }, schema as SchemaObject, true, data, From 3748cd52cc4d1ff03024dbe644c7313c493f6261 Mon Sep 17 00:00:00 2001 From: Elias Meire Date: Tue, 27 Apr 2021 15:25:27 +0200 Subject: [PATCH 9/9] Add test for parameter types Signed-off-by: Elias Meire --- .../openapi-to-graphql/test/extensions.test.ts | 14 +++++++++++++- .../test/fixtures/extensions.json | 15 +++++++++++++++ 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/packages/openapi-to-graphql/test/extensions.test.ts b/packages/openapi-to-graphql/test/extensions.test.ts index 5a8e48f8..48164c39 100644 --- a/packages/openapi-to-graphql/test/extensions.test.ts +++ b/packages/openapi-to-graphql/test/extensions.test.ts @@ -1,7 +1,12 @@ 'use strict' import { beforeAll, describe, test, expect } from '@jest/globals' -import { GraphQLEnumType, GraphQLObjectType, GraphQLSchema } from 'graphql' +import { + GraphQLEnumType, + GraphQLInputObjectType, + GraphQLObjectType, + GraphQLSchema +} from 'graphql' import * as openAPIToGraphQL from '../lib/index' import { Oas3 } from '../lib/types/oas3' @@ -76,6 +81,13 @@ describe('GraphQL Extensions', () => { expect(fields).toContain('orderPet') expect(order.getFields().orderPet.type.toString()).toEqual('Pet') }) + + test('should rename Parameters with x-graphql-type-name', () => { + const renamedType = createdSchema.getType('Meta') + expect(renamedType).toBeInstanceOf(GraphQLInputObjectType) + expect(createdSchema.getType('AdditionalMetadata')).toBeUndefined() + expect(createdSchema.getType('AdditionalMetadataInput')).toBeUndefined() + }) }) describe('Error handling', () => { diff --git a/packages/openapi-to-graphql/test/fixtures/extensions.json b/packages/openapi-to-graphql/test/fixtures/extensions.json index 4f4614c6..06b05034 100644 --- a/packages/openapi-to-graphql/test/fixtures/extensions.json +++ b/packages/openapi-to-graphql/test/fixtures/extensions.json @@ -526,6 +526,21 @@ "description": "The password for login in clear text", "required": false, "schema": { "type": "string" } + }, + { + "name": "additionalMetadata", + "in": "query", + "description": "Additional metadata", + "required": false, + "schema": { + "type": "object", + "x-graphql-type-name": "Meta", + "properties": { + "test": { + "type": "string" + } + } + } } ], "responses": {