فهرست منبع

feat(core): Update GraphQL to v15

Michael Bromley 5 سال پیش
والد
کامیت
177a14fda3

+ 2 - 2
package.json

@@ -35,6 +35,7 @@
     "@graphql-codegen/typescript": "1.17.9",
     "@graphql-codegen/typescript-compatibility": "2.0.0",
     "@graphql-codegen/typescript-operations": "1.17.8",
+    "@graphql-tools/schema": "^6.2.4",
     "@types/graphql": "^14.0.5",
     "@types/jest": "^26.0.14",
     "@types/klaw-sync": "^6.0.0",
@@ -42,8 +43,7 @@
     "concurrently": "^5.3.0",
     "conventional-changelog-core": "^4.2.0",
     "find": "^0.3.0",
-    "graphql": "14.6.0",
-    "graphql-tools": "^4.0.0",
+    "graphql": "15.3.0",
     "husky": "^4.3.0",
     "jest": "^26.5.2",
     "klaw-sync": "^6.0.0",

+ 1 - 1
packages/admin-ui/package.json

@@ -42,7 +42,7 @@
     "apollo-upload-client": "^12.1.0",
     "core-js": "^3.1.3",
     "dayjs": "^1.9.1",
-    "graphql": "14.6.0",
+    "graphql": "15.3.0",
     "messageformat": "2.3.0",
     "ngx-pagination": "^5.0.0",
     "ngx-translate-messageformat-compiler": "^4.8.0",

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 2731 - 2802
packages/admin-ui/src/lib/core/src/common/generated-types.ts


+ 109 - 109
packages/admin-ui/src/lib/core/src/common/introspection-result.ts

@@ -7,149 +7,149 @@ export interface PossibleTypesResultData {
 }
 const result: PossibleTypesResultData = {
     possibleTypes: {
-        Node: [
-            'Channel',
-            'Zone',
-            'Country',
-            'Administrator',
-            'User',
-            'Role',
-            'AuthenticationMethod',
-            'Asset',
-            'Collection',
-            'ProductVariant',
-            'StockAdjustment',
-            'Sale',
-            'OrderLine',
-            'OrderItem',
+        CreateAssetResult: ['Asset', 'MimeTypeError'],
+        NativeAuthenticationResult: ['CurrentUser', 'InvalidCredentialsError', 'NativeAuthStrategyError'],
+        AuthenticationResult: ['CurrentUser', 'InvalidCredentialsError'],
+        CreateChannelResult: ['Channel', 'LanguageNotAvailableError'],
+        UpdateChannelResult: ['Channel', 'LanguageNotAvailableError'],
+        CreateCustomerResult: ['Customer', 'EmailAddressConflictError'],
+        UpdateCustomerResult: ['Customer', 'EmailAddressConflictError'],
+        UpdateGlobalSettingsResult: ['GlobalSettings', 'ChannelDefaultLanguageError'],
+        TransitionOrderToStateResult: ['Order', 'OrderStateTransitionError'],
+        SettlePaymentResult: [
+            'Payment',
+            'SettlePaymentError',
+            'PaymentStateTransitionError',
+            'OrderStateTransitionError',
+        ],
+        AddFulfillmentToOrderResult: [
             'Fulfillment',
+            'EmptyOrderLineSelectionError',
+            'ItemsAlreadyFulfilledError',
+        ],
+        CancelOrderResult: [
             'Order',
-            'Customer',
-            'CustomerGroup',
-            'HistoryEntry',
-            'Address',
-            'Promotion',
-            'Payment',
+            'EmptyOrderLineSelectionError',
+            'QuantityTooGreatError',
+            'MultipleOrderError',
+            'CancelActiveOrderError',
+            'OrderStateTransitionError',
+        ],
+        RefundOrderResult: [
             'Refund',
-            'ShippingMethod',
-            'Cancellation',
-            'Return',
-            'Product',
-            'ProductOptionGroup',
-            'ProductOption',
-            'FacetValue',
-            'Facet',
-            'TaxRate',
-            'TaxCategory',
-            'Job',
-            'PaymentMethod',
+            'QuantityTooGreatError',
+            'NothingToRefundError',
+            'OrderStateTransitionError',
+            'MultipleOrderError',
+            'PaymentOrderMismatchError',
+            'RefundOrderStateError',
+            'AlreadyRefundedError',
+            'RefundStateTransitionError',
         ],
+        SettleRefundResult: ['Refund', 'RefundStateTransitionError'],
+        TransitionFulfillmentToStateResult: ['Fulfillment', 'FulfillmentStateTransitionError'],
+        RemoveOptionGroupFromProductResult: ['Product', 'ProductOptionInUseError'],
+        CreatePromotionResult: ['Promotion', 'MissingConditionsError'],
+        UpdatePromotionResult: ['Promotion', 'MissingConditionsError'],
         PaginatedList: [
+            'CustomerGroupList',
+            'JobList',
+            'PaymentMethodList',
             'AdministratorList',
             'AssetList',
+            'CollectionList',
             'ProductVariantList',
+            'CountryList',
             'CustomerList',
+            'FacetList',
             'HistoryEntryList',
             'OrderList',
-            'CollectionList',
-            'CountryList',
-            'CustomerGroupList',
-            'FacetList',
-            'JobList',
-            'PaymentMethodList',
             'ProductList',
             'PromotionList',
             'RoleList',
             'ShippingMethodList',
             'TaxRateList',
         ],
-        StockMovementItem: ['StockAdjustment', 'Sale', 'Cancellation', 'Return'],
-        StockMovement: ['StockAdjustment', 'Sale', 'Cancellation', 'Return'],
-        CustomFieldConfig: [
-            'StringCustomFieldConfig',
-            'LocaleStringCustomFieldConfig',
-            'IntCustomFieldConfig',
-            'FloatCustomFieldConfig',
-            'BooleanCustomFieldConfig',
-            'DateTimeCustomFieldConfig',
-        ],
-        CustomField: [
-            'StringCustomFieldConfig',
-            'LocaleStringCustomFieldConfig',
-            'IntCustomFieldConfig',
-            'FloatCustomFieldConfig',
-            'BooleanCustomFieldConfig',
-            'DateTimeCustomFieldConfig',
-        ],
-        SearchResultPrice: ['PriceRange', 'SinglePrice'],
-        AddFulfillmentToOrderResult: [
+        Node: [
+            'Collection',
+            'Customer',
+            'Facet',
             'Fulfillment',
-            'EmptyOrderLineSelectionError',
-            'ItemsAlreadyFulfilledError',
+            'Job',
+            'Order',
+            'Product',
+            'ProductVariant',
+            'Address',
+            'Administrator',
+            'Asset',
+            'Channel',
+            'Country',
+            'CustomerGroup',
+            'FacetValue',
+            'HistoryEntry',
+            'OrderItem',
+            'OrderLine',
+            'Payment',
+            'Refund',
+            'PaymentMethod',
+            'ProductOptionGroup',
+            'ProductOption',
+            'Promotion',
+            'Role',
+            'ShippingMethod',
+            'StockAdjustment',
+            'Sale',
+            'Cancellation',
+            'Return',
+            'TaxCategory',
+            'TaxRate',
+            'User',
+            'AuthenticationMethod',
+            'Zone',
         ],
         ErrorResult: [
+            'MimeTypeError',
+            'LanguageNotAvailableError',
+            'ChannelDefaultLanguageError',
+            'SettlePaymentError',
             'EmptyOrderLineSelectionError',
             'ItemsAlreadyFulfilledError',
-            'InvalidCredentialsError',
-            'QuantityTooGreatError',
             'MultipleOrderError',
             'CancelActiveOrderError',
-            'OrderStateTransitionError',
-            'MimeTypeError',
-            'LanguageNotAvailableError',
-            'EmailAddressConflictError',
-            'MissingConditionsError',
-            'NativeAuthStrategyError',
-            'NothingToRefundError',
             'PaymentOrderMismatchError',
             'RefundOrderStateError',
+            'NothingToRefundError',
             'AlreadyRefundedError',
+            'QuantityTooGreatError',
             'RefundStateTransitionError',
-            'ProductOptionInUseError',
-            'SettlePaymentError',
             'PaymentStateTransitionError',
             'FulfillmentStateTransitionError',
-            'ChannelDefaultLanguageError',
-        ],
-        AuthenticationResult: ['CurrentUser', 'InvalidCredentialsError'],
-        CancelOrderResult: [
-            'Order',
-            'EmptyOrderLineSelectionError',
-            'QuantityTooGreatError',
-            'MultipleOrderError',
-            'CancelActiveOrderError',
+            'ProductOptionInUseError',
+            'MissingConditionsError',
+            'NativeAuthStrategyError',
+            'InvalidCredentialsError',
             'OrderStateTransitionError',
+            'EmailAddressConflictError',
         ],
-        CreateAssetResult: ['Asset', 'MimeTypeError'],
-        CreateChannelResult: ['Channel', 'LanguageNotAvailableError'],
-        CreateCustomerResult: ['Customer', 'EmailAddressConflictError'],
-        CreatePromotionResult: ['Promotion', 'MissingConditionsError'],
-        NativeAuthenticationResult: ['CurrentUser', 'InvalidCredentialsError', 'NativeAuthStrategyError'],
-        RefundOrderResult: [
-            'Refund',
-            'QuantityTooGreatError',
-            'NothingToRefundError',
-            'OrderStateTransitionError',
-            'MultipleOrderError',
-            'PaymentOrderMismatchError',
-            'RefundOrderStateError',
-            'AlreadyRefundedError',
-            'RefundStateTransitionError',
+        CustomField: [
+            'StringCustomFieldConfig',
+            'LocaleStringCustomFieldConfig',
+            'IntCustomFieldConfig',
+            'FloatCustomFieldConfig',
+            'BooleanCustomFieldConfig',
+            'DateTimeCustomFieldConfig',
         ],
-        RemoveOptionGroupFromProductResult: ['Product', 'ProductOptionInUseError'],
-        SettlePaymentResult: [
-            'Payment',
-            'SettlePaymentError',
-            'PaymentStateTransitionError',
-            'OrderStateTransitionError',
+        CustomFieldConfig: [
+            'StringCustomFieldConfig',
+            'LocaleStringCustomFieldConfig',
+            'IntCustomFieldConfig',
+            'FloatCustomFieldConfig',
+            'BooleanCustomFieldConfig',
+            'DateTimeCustomFieldConfig',
         ],
-        SettleRefundResult: ['Refund', 'RefundStateTransitionError'],
-        TransitionFulfillmentToStateResult: ['Fulfillment', 'FulfillmentStateTransitionError'],
-        TransitionOrderToStateResult: ['Order', 'OrderStateTransitionError'],
-        UpdateChannelResult: ['Channel', 'LanguageNotAvailableError'],
-        UpdateCustomerResult: ['Customer', 'EmailAddressConflictError'],
-        UpdateGlobalSettingsResult: ['GlobalSettings', 'ChannelDefaultLanguageError'],
-        UpdatePromotionResult: ['Promotion', 'MissingConditionsError'],
+        SearchResultPrice: ['PriceRange', 'SinglePrice'],
+        StockMovement: ['StockAdjustment', 'Sale', 'Cancellation', 'Return'],
+        StockMovementItem: ['StockAdjustment', 'Sale', 'Cancellation', 'Return'],
     },
 };
 export default result;

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 1536 - 2131
packages/asset-server-plugin/e2e/graphql/generated-e2e-asset-server-plugin-types.ts


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 456 - 488
packages/common/src/generated-shop-types.ts


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 636 - 1590
packages/common/src/generated-types.ts


+ 5 - 5
packages/core/e2e/custom-fields.e2e-spec.ts

@@ -5,7 +5,7 @@ import gql from 'graphql-tag';
 import path from 'path';
 
 import { initialData } from '../../../e2e-common/e2e-initial-data';
-import { TEST_SETUP_TIMEOUT_MS, testConfig } from '../../../e2e-common/test-config';
+import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config';
 
 import { assertThrowsWithMessage } from './utils/assert-throws-with-message';
 import { fixPostgresTimezone } from './utils/fix-pg-timezone';
@@ -318,7 +318,7 @@ describe('Custom fields', () => {
                     }
                 }
             `);
-        }, `Field "readonlyString" is not defined by type UpdateProductCustomFieldsInput`),
+        }, `Field "readonlyString" is not defined by type "UpdateProductCustomFieldsInput"`),
     );
 
     it(
@@ -351,7 +351,7 @@ describe('Custom fields', () => {
                     }
                 }
             `);
-        }, `Field "readonlyString" is not defined by type CreateProductCustomFieldsInput`),
+        }, `Field "readonlyString" is not defined by type "CreateProductCustomFieldsInput"`),
     );
 
     it('string length allows long strings', async () => {
@@ -664,7 +664,7 @@ describe('Custom fields', () => {
                         }
                     }
                 `);
-            }, `Field "internalString" is not defined by type ProductFilterParameter`),
+            }, `Field "internalString" is not defined by type "ProductFilterParameter"`),
         );
 
         it(
@@ -677,7 +677,7 @@ describe('Custom fields', () => {
                         }
                     }
                 `);
-            }, `Field "internalString" is not defined by type ProductFilterParameter`),
+            }, `Field "internalString" is not defined by type "ProductFilterParameter"`),
         );
     });
 });

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 1481 - 1958
packages/core/e2e/graphql/generated-e2e-admin-types.ts


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 441 - 580
packages/core/e2e/graphql/generated-e2e-shop-types.ts


+ 2 - 2
packages/core/e2e/role.e2e-spec.ts

@@ -9,7 +9,7 @@ import gql from 'graphql-tag';
 import path from 'path';
 
 import { initialData } from '../../../e2e-common/e2e-initial-data';
-import { TEST_SETUP_TIMEOUT_MS, testConfig } from '../../../e2e-common/test-config';
+import { testConfig, TEST_SETUP_TIMEOUT_MS } from '../../../e2e-common/test-config';
 
 import { ROLE_FRAGMENT } from './graphql/fragments';
 import {
@@ -66,7 +66,7 @@ describe('Role resolver', () => {
                     permissions: ['bad permission' as any],
                 },
             });
-        }, 'Variable "$input" got invalid value "bad permission" at "input.permissions[0]"; Expected type Permission.'),
+        }, 'Variable "$input" got invalid value "bad permission" at "input.permissions[0]"'),
     );
 
     it('createRole with no permissions includes Authenticated', async () => {

+ 2 - 2
packages/core/package.json

@@ -38,6 +38,7 @@
     "cli/**/*"
   ],
   "dependencies": {
+    "@graphql-tools/stitch": "^6.2.4",
     "@nestjs/common": "7.4.4",
     "@nestjs/core": "7.4.4",
     "@nestjs/graphql": "7.6.0",
@@ -57,10 +58,9 @@
     "csv-parse": "^4.12.0",
     "express": "^4.17.1",
     "fs-extra": "^9.0.1",
-    "graphql": "14.6.0",
+    "graphql": "15.3.0",
     "graphql-iso-date": "^3.6.1",
     "graphql-tag": "^2.11.0",
-    "graphql-tools": "^4.0.6",
     "graphql-type-json": "^0.3.2",
     "http-proxy-middleware": "^1.0.5",
     "i18next": "^19.8.1",

+ 2 - 2
packages/core/src/api/config/generate-auth-types.ts

@@ -1,3 +1,4 @@
+import { stitchSchemas } from '@graphql-tools/stitch';
 import {
     buildASTSchema,
     GraphQLInputFieldConfigMap,
@@ -5,7 +6,6 @@ import {
     GraphQLSchema,
     isInputObjectType,
 } from 'graphql';
-import { mergeSchemas } from 'graphql-tools';
 
 import { InternalServerError } from '../../common/error/errors';
 import { AuthenticationStrategy } from '../../config/auth/authentication-strategy';
@@ -46,5 +46,5 @@ export function generateAuthenticationTypes(
         fields,
     });
 
-    return mergeSchemas({ schemas: [schema, ...strategySchemas, [authenticationInput]] });
+    return stitchSchemas({ schemas: [schema, ...strategySchemas, [authenticationInput]] });
 }

+ 29 - 40
packages/core/src/api/config/generate-list-options.ts

@@ -1,3 +1,4 @@
+import { stitchSchemas } from '@graphql-tools/stitch';
 import {
     buildSchema,
     GraphQLEnumType,
@@ -16,7 +17,6 @@ import {
     isNonNullType,
     isObjectType,
 } from 'graphql';
-import { mergeSchemas } from 'graphql-tools';
 
 /**
  * Generates ListOptions inputs for queries which return PaginatedList types.
@@ -28,19 +28,14 @@ export function generateListOptions(typeDefsOrSchema: string | GraphQLSchema): G
         return schema;
     }
     const objectTypes = Object.values(schema.getTypeMap()).filter(isObjectType);
-    const allFields = objectTypes.reduce(
-        (fields, type) => {
-            const typeFields = Object.values(type.getFields()).filter(f => isListQueryType(f.type));
-            return [...fields, ...typeFields];
-        },
-        [] as Array<GraphQLField<any, any>>,
-    );
+    const allFields = objectTypes.reduce((fields, type) => {
+        const typeFields = Object.values(type.getFields()).filter(f => isListQueryType(f.type));
+        return [...fields, ...typeFields];
+    }, [] as Array<GraphQLField<any, any>>);
     const generatedTypes: GraphQLNamedType[] = [];
 
     for (const query of allFields) {
-        const targetTypeName = unwrapNonNullType(query.type)
-            .toString()
-            .replace(/List$/, '');
+        const targetTypeName = unwrapNonNullType(query.type).toString().replace(/List$/, '');
         const targetType = schema.getType(targetTypeName);
         if (targetType && isObjectType(targetType)) {
             const sortParameter = createSortParameter(schema, targetType);
@@ -75,7 +70,7 @@ export function generateListOptions(typeDefsOrSchema: string | GraphQLSchema): G
             generatedTypes.push(generatedListOptions);
         }
     }
-    return mergeSchemas({ schemas: [schema, generatedTypes] });
+    return stitchSchemas({ schemas: [schema, generatedTypes] });
 }
 
 function isListQueryType(type: GraphQLOutputType): type is GraphQLObjectType {
@@ -93,18 +88,15 @@ function createSortParameter(schema: GraphQLSchema, targetType: GraphQLObjectTyp
         name: `${targetTypeName}SortParameter`,
         fields: fields
             .filter(field => sortableTypes.includes(unwrapNonNullType(field.type).name))
-            .reduce(
-                (result, field) => {
-                    const fieldConfig: GraphQLInputFieldConfig = {
-                        type: SortOrder,
-                    };
-                    return {
-                        ...result,
-                        [field.name]: fieldConfig,
-                    };
-                },
-                {} as GraphQLInputFieldConfigMap,
-            ),
+            .reduce((result, field) => {
+                const fieldConfig: GraphQLInputFieldConfig = {
+                    type: SortOrder,
+                };
+                return {
+                    ...result,
+                    [field.name]: fieldConfig,
+                };
+            }, {} as GraphQLInputFieldConfigMap),
     });
 }
 
@@ -115,22 +107,19 @@ function createFilterParameter(schema: GraphQLSchema, targetType: GraphQLObjectT
 
     return new GraphQLInputObjectType({
         name: `${targetTypeName}FilterParameter`,
-        fields: fields.reduce(
-            (result, field) => {
-                const filterType = getFilterType(field);
-                if (!filterType) {
-                    return result;
-                }
-                const fieldConfig: GraphQLInputFieldConfig = {
-                    type: filterType,
-                };
-                return {
-                    ...result,
-                    [field.name]: fieldConfig,
-                };
-            },
-            {} as GraphQLInputFieldConfigMap,
-        ),
+        fields: fields.reduce((result, field) => {
+            const filterType = getFilterType(field);
+            if (!filterType) {
+                return result;
+            }
+            const fieldConfig: GraphQLInputFieldConfig = {
+                type: filterType,
+            };
+            return {
+                ...result,
+                [field.name]: fieldConfig,
+            };
+        }, {} as GraphQLInputFieldConfigMap),
     });
 
     function getFilterType(field: GraphQLField<any, any>): GraphQLInputType | undefined {

+ 94 - 94
packages/core/src/common/error/generated-graphql-admin-errors.ts

@@ -7,8 +7,8 @@ export type Scalars = {
   Boolean: boolean;
   Int: number;
   Float: number;
-  DateTime: any;
   JSON: any;
+  DateTime: any;
   Upload: any;
 };
 
@@ -18,23 +18,24 @@ export class ErrorResult {
   message: Scalars['String'];
 }
 
-export class AlreadyRefundedError extends ErrorResult {
-  readonly __typename = 'AlreadyRefundedError';
-  readonly errorCode = 'ALREADY_REFUNDED_ERROR' as any;
-  readonly message = 'ALREADY_REFUNDED_ERROR';
+export class MimeTypeError extends ErrorResult {
+  readonly __typename = 'MimeTypeError';
+  readonly errorCode = 'MIME_TYPE_ERROR' as any;
+  readonly message = 'MIME_TYPE_ERROR';
   constructor(
-    public   refundId: Scalars['ID'],
+    public   fileName: Scalars['String'],
+    public   mimeType: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class CancelActiveOrderError extends ErrorResult {
-  readonly __typename = 'CancelActiveOrderError';
-  readonly errorCode = 'CANCEL_ACTIVE_ORDER_ERROR' as any;
-  readonly message = 'CANCEL_ACTIVE_ORDER_ERROR';
+export class LanguageNotAvailableError extends ErrorResult {
+  readonly __typename = 'LanguageNotAvailableError';
+  readonly errorCode = 'LANGUAGE_NOT_AVAILABLE_ERROR' as any;
+  readonly message = 'LANGUAGE_NOT_AVAILABLE_ERROR';
   constructor(
-    public   orderState: Scalars['String'],
+    public   languageCode: Scalars['String'],
   ) {
     super();
   }
@@ -52,11 +53,12 @@ export class ChannelDefaultLanguageError extends ErrorResult {
   }
 }
 
-export class EmailAddressConflictError extends ErrorResult {
-  readonly __typename = 'EmailAddressConflictError';
-  readonly errorCode = 'EMAIL_ADDRESS_CONFLICT_ERROR' as any;
-  readonly message = 'EMAIL_ADDRESS_CONFLICT_ERROR';
+export class SettlePaymentError extends ErrorResult {
+  readonly __typename = 'SettlePaymentError';
+  readonly errorCode = 'SETTLE_PAYMENT_ERROR' as any;
+  readonly message = 'SETTLE_PAYMENT_ERROR';
   constructor(
+    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
@@ -72,106 +74,93 @@ export class EmptyOrderLineSelectionError extends ErrorResult {
   }
 }
 
-export class FulfillmentStateTransitionError extends ErrorResult {
-  readonly __typename = 'FulfillmentStateTransitionError';
-  readonly errorCode = 'FULFILLMENT_STATE_TRANSITION_ERROR' as any;
-  readonly message = 'FULFILLMENT_STATE_TRANSITION_ERROR';
-  constructor(
-    public   transitionError: Scalars['String'],
-    public   fromState: Scalars['String'],
-    public   toState: Scalars['String'],
-  ) {
-    super();
-  }
-}
-
-export class InvalidCredentialsError extends ErrorResult {
-  readonly __typename = 'InvalidCredentialsError';
-  readonly errorCode = 'INVALID_CREDENTIALS_ERROR' as any;
-  readonly message = 'INVALID_CREDENTIALS_ERROR';
+export class ItemsAlreadyFulfilledError extends ErrorResult {
+  readonly __typename = 'ItemsAlreadyFulfilledError';
+  readonly errorCode = 'ITEMS_ALREADY_FULFILLED_ERROR' as any;
+  readonly message = 'ITEMS_ALREADY_FULFILLED_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class ItemsAlreadyFulfilledError extends ErrorResult {
-  readonly __typename = 'ItemsAlreadyFulfilledError';
-  readonly errorCode = 'ITEMS_ALREADY_FULFILLED_ERROR' as any;
-  readonly message = 'ITEMS_ALREADY_FULFILLED_ERROR';
+export class MultipleOrderError extends ErrorResult {
+  readonly __typename = 'MultipleOrderError';
+  readonly errorCode = 'MULTIPLE_ORDER_ERROR' as any;
+  readonly message = 'MULTIPLE_ORDER_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class LanguageNotAvailableError extends ErrorResult {
-  readonly __typename = 'LanguageNotAvailableError';
-  readonly errorCode = 'LANGUAGE_NOT_AVAILABLE_ERROR' as any;
-  readonly message = 'LANGUAGE_NOT_AVAILABLE_ERROR';
+export class CancelActiveOrderError extends ErrorResult {
+  readonly __typename = 'CancelActiveOrderError';
+  readonly errorCode = 'CANCEL_ACTIVE_ORDER_ERROR' as any;
+  readonly message = 'CANCEL_ACTIVE_ORDER_ERROR';
   constructor(
-    public   languageCode: Scalars['String'],
+    public   orderState: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class MimeTypeError extends ErrorResult {
-  readonly __typename = 'MimeTypeError';
-  readonly errorCode = 'MIME_TYPE_ERROR' as any;
-  readonly message = 'MIME_TYPE_ERROR';
+export class PaymentOrderMismatchError extends ErrorResult {
+  readonly __typename = 'PaymentOrderMismatchError';
+  readonly errorCode = 'PAYMENT_ORDER_MISMATCH_ERROR' as any;
+  readonly message = 'PAYMENT_ORDER_MISMATCH_ERROR';
   constructor(
-    public   fileName: Scalars['String'],
-    public   mimeType: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class MissingConditionsError extends ErrorResult {
-  readonly __typename = 'MissingConditionsError';
-  readonly errorCode = 'MISSING_CONDITIONS_ERROR' as any;
-  readonly message = 'MISSING_CONDITIONS_ERROR';
+export class RefundOrderStateError extends ErrorResult {
+  readonly __typename = 'RefundOrderStateError';
+  readonly errorCode = 'REFUND_ORDER_STATE_ERROR' as any;
+  readonly message = 'REFUND_ORDER_STATE_ERROR';
   constructor(
+    public   orderState: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class MultipleOrderError extends ErrorResult {
-  readonly __typename = 'MultipleOrderError';
-  readonly errorCode = 'MULTIPLE_ORDER_ERROR' as any;
-  readonly message = 'MULTIPLE_ORDER_ERROR';
+export class NothingToRefundError extends ErrorResult {
+  readonly __typename = 'NothingToRefundError';
+  readonly errorCode = 'NOTHING_TO_REFUND_ERROR' as any;
+  readonly message = 'NOTHING_TO_REFUND_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class NativeAuthStrategyError extends ErrorResult {
-  readonly __typename = 'NativeAuthStrategyError';
-  readonly errorCode = 'NATIVE_AUTH_STRATEGY_ERROR' as any;
-  readonly message = 'NATIVE_AUTH_STRATEGY_ERROR';
+export class AlreadyRefundedError extends ErrorResult {
+  readonly __typename = 'AlreadyRefundedError';
+  readonly errorCode = 'ALREADY_REFUNDED_ERROR' as any;
+  readonly message = 'ALREADY_REFUNDED_ERROR';
   constructor(
+    public   refundId: Scalars['ID'],
   ) {
     super();
   }
 }
 
-export class NothingToRefundError extends ErrorResult {
-  readonly __typename = 'NothingToRefundError';
-  readonly errorCode = 'NOTHING_TO_REFUND_ERROR' as any;
-  readonly message = 'NOTHING_TO_REFUND_ERROR';
+export class QuantityTooGreatError extends ErrorResult {
+  readonly __typename = 'QuantityTooGreatError';
+  readonly errorCode = 'QUANTITY_TOO_GREAT_ERROR' as any;
+  readonly message = 'QUANTITY_TOO_GREAT_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class OrderStateTransitionError extends ErrorResult {
-  readonly __typename = 'OrderStateTransitionError';
-  readonly errorCode = 'ORDER_STATE_TRANSITION_ERROR' as any;
-  readonly message = 'ORDER_STATE_TRANSITION_ERROR';
+export class RefundStateTransitionError extends ErrorResult {
+  readonly __typename = 'RefundStateTransitionError';
+  readonly errorCode = 'REFUND_STATE_TRANSITION_ERROR' as any;
+  readonly message = 'REFUND_STATE_TRANSITION_ERROR';
   constructor(
     public   transitionError: Scalars['String'],
     public   fromState: Scalars['String'],
@@ -181,20 +170,23 @@ export class OrderStateTransitionError extends ErrorResult {
   }
 }
 
-export class PaymentOrderMismatchError extends ErrorResult {
-  readonly __typename = 'PaymentOrderMismatchError';
-  readonly errorCode = 'PAYMENT_ORDER_MISMATCH_ERROR' as any;
-  readonly message = 'PAYMENT_ORDER_MISMATCH_ERROR';
+export class PaymentStateTransitionError extends ErrorResult {
+  readonly __typename = 'PaymentStateTransitionError';
+  readonly errorCode = 'PAYMENT_STATE_TRANSITION_ERROR' as any;
+  readonly message = 'PAYMENT_STATE_TRANSITION_ERROR';
   constructor(
+    public   transitionError: Scalars['String'],
+    public   fromState: Scalars['String'],
+    public   toState: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class PaymentStateTransitionError extends ErrorResult {
-  readonly __typename = 'PaymentStateTransitionError';
-  readonly errorCode = 'PAYMENT_STATE_TRANSITION_ERROR' as any;
-  readonly message = 'PAYMENT_STATE_TRANSITION_ERROR';
+export class FulfillmentStateTransitionError extends ErrorResult {
+  readonly __typename = 'FulfillmentStateTransitionError';
+  readonly errorCode = 'FULFILLMENT_STATE_TRANSITION_ERROR' as any;
+  readonly message = 'FULFILLMENT_STATE_TRANSITION_ERROR';
   constructor(
     public   transitionError: Scalars['String'],
     public   fromState: Scalars['String'],
@@ -216,31 +208,40 @@ export class ProductOptionInUseError extends ErrorResult {
   }
 }
 
-export class QuantityTooGreatError extends ErrorResult {
-  readonly __typename = 'QuantityTooGreatError';
-  readonly errorCode = 'QUANTITY_TOO_GREAT_ERROR' as any;
-  readonly message = 'QUANTITY_TOO_GREAT_ERROR';
+export class MissingConditionsError extends ErrorResult {
+  readonly __typename = 'MissingConditionsError';
+  readonly errorCode = 'MISSING_CONDITIONS_ERROR' as any;
+  readonly message = 'MISSING_CONDITIONS_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class RefundOrderStateError extends ErrorResult {
-  readonly __typename = 'RefundOrderStateError';
-  readonly errorCode = 'REFUND_ORDER_STATE_ERROR' as any;
-  readonly message = 'REFUND_ORDER_STATE_ERROR';
+export class NativeAuthStrategyError extends ErrorResult {
+  readonly __typename = 'NativeAuthStrategyError';
+  readonly errorCode = 'NATIVE_AUTH_STRATEGY_ERROR' as any;
+  readonly message = 'NATIVE_AUTH_STRATEGY_ERROR';
   constructor(
-    public   orderState: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class RefundStateTransitionError extends ErrorResult {
-  readonly __typename = 'RefundStateTransitionError';
-  readonly errorCode = 'REFUND_STATE_TRANSITION_ERROR' as any;
-  readonly message = 'REFUND_STATE_TRANSITION_ERROR';
+export class InvalidCredentialsError extends ErrorResult {
+  readonly __typename = 'InvalidCredentialsError';
+  readonly errorCode = 'INVALID_CREDENTIALS_ERROR' as any;
+  readonly message = 'INVALID_CREDENTIALS_ERROR';
+  constructor(
+  ) {
+    super();
+  }
+}
+
+export class OrderStateTransitionError extends ErrorResult {
+  readonly __typename = 'OrderStateTransitionError';
+  readonly errorCode = 'ORDER_STATE_TRANSITION_ERROR' as any;
+  readonly message = 'ORDER_STATE_TRANSITION_ERROR';
   constructor(
     public   transitionError: Scalars['String'],
     public   fromState: Scalars['String'],
@@ -250,19 +251,18 @@ export class RefundStateTransitionError extends ErrorResult {
   }
 }
 
-export class SettlePaymentError extends ErrorResult {
-  readonly __typename = 'SettlePaymentError';
-  readonly errorCode = 'SETTLE_PAYMENT_ERROR' as any;
-  readonly message = 'SETTLE_PAYMENT_ERROR';
+export class EmailAddressConflictError extends ErrorResult {
+  readonly __typename = 'EmailAddressConflictError';
+  readonly errorCode = 'EMAIL_ADDRESS_CONFLICT_ERROR' as any;
+  readonly message = 'EMAIL_ADDRESS_CONFLICT_ERROR';
   constructor(
-    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
 }
 
 
-const errorTypeNames = new Set(['MimeTypeError', 'InvalidCredentialsError', 'NativeAuthStrategyError', 'LanguageNotAvailableError', 'EmailAddressConflictError', 'ChannelDefaultLanguageError', 'SettlePaymentError', 'PaymentStateTransitionError', 'OrderStateTransitionError', 'EmptyOrderLineSelectionError', 'ItemsAlreadyFulfilledError', 'QuantityTooGreatError', 'MultipleOrderError', 'CancelActiveOrderError', 'NothingToRefundError', 'PaymentOrderMismatchError', 'RefundOrderStateError', 'AlreadyRefundedError', 'RefundStateTransitionError', 'FulfillmentStateTransitionError', 'ProductOptionInUseError', 'MissingConditionsError']);
+const errorTypeNames = new Set(['MimeTypeError', 'LanguageNotAvailableError', 'ChannelDefaultLanguageError', 'SettlePaymentError', 'EmptyOrderLineSelectionError', 'ItemsAlreadyFulfilledError', 'MultipleOrderError', 'CancelActiveOrderError', 'PaymentOrderMismatchError', 'RefundOrderStateError', 'NothingToRefundError', 'AlreadyRefundedError', 'QuantityTooGreatError', 'RefundStateTransitionError', 'PaymentStateTransitionError', 'FulfillmentStateTransitionError', 'ProductOptionInUseError', 'MissingConditionsError', 'NativeAuthStrategyError', 'InvalidCredentialsError', 'OrderStateTransitionError', 'EmailAddressConflictError']);
 function isGraphQLError(input: any): input is import('@vendure/common/lib/generated-types').ErrorResult {
   return input instanceof ErrorResult || errorTypeNames.has(input.__typename);
 }

+ 96 - 96
packages/core/src/common/error/generated-graphql-shop-errors.ts

@@ -7,8 +7,8 @@ export type Scalars = {
   Boolean: boolean;
   Int: number;
   Float: number;
-  DateTime: any;
   JSON: any;
+  DateTime: any;
   Upload: any;
 };
 
@@ -18,159 +18,161 @@ export class ErrorResult {
   message: Scalars['String'];
 }
 
-export class AlreadyLoggedInError extends ErrorResult {
-  readonly __typename = 'AlreadyLoggedInError';
-  readonly errorCode = 'ALREADY_LOGGED_IN_ERROR' as any;
-  readonly message = 'ALREADY_LOGGED_IN_ERROR';
+export class NativeAuthStrategyError extends ErrorResult {
+  readonly __typename = 'NativeAuthStrategyError';
+  readonly errorCode = 'NATIVE_AUTH_STRATEGY_ERROR' as any;
+  readonly message = 'NATIVE_AUTH_STRATEGY_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class CouponCodeExpiredError extends ErrorResult {
-  readonly __typename = 'CouponCodeExpiredError';
-  readonly errorCode = 'COUPON_CODE_EXPIRED_ERROR' as any;
-  readonly message = 'COUPON_CODE_EXPIRED_ERROR';
+export class InvalidCredentialsError extends ErrorResult {
+  readonly __typename = 'InvalidCredentialsError';
+  readonly errorCode = 'INVALID_CREDENTIALS_ERROR' as any;
+  readonly message = 'INVALID_CREDENTIALS_ERROR';
   constructor(
-    public   couponCode: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class CouponCodeInvalidError extends ErrorResult {
-  readonly __typename = 'CouponCodeInvalidError';
-  readonly errorCode = 'COUPON_CODE_INVALID_ERROR' as any;
-  readonly message = 'COUPON_CODE_INVALID_ERROR';
+export class OrderStateTransitionError extends ErrorResult {
+  readonly __typename = 'OrderStateTransitionError';
+  readonly errorCode = 'ORDER_STATE_TRANSITION_ERROR' as any;
+  readonly message = 'ORDER_STATE_TRANSITION_ERROR';
   constructor(
-    public   couponCode: Scalars['String'],
+    public   transitionError: Scalars['String'],
+    public   fromState: Scalars['String'],
+    public   toState: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class CouponCodeLimitError extends ErrorResult {
-  readonly __typename = 'CouponCodeLimitError';
-  readonly errorCode = 'COUPON_CODE_LIMIT_ERROR' as any;
-  readonly message = 'COUPON_CODE_LIMIT_ERROR';
+export class EmailAddressConflictError extends ErrorResult {
+  readonly __typename = 'EmailAddressConflictError';
+  readonly errorCode = 'EMAIL_ADDRESS_CONFLICT_ERROR' as any;
+  readonly message = 'EMAIL_ADDRESS_CONFLICT_ERROR';
   constructor(
-    public   couponCode: Scalars['String'],
-    public   limit: Scalars['Int'],
   ) {
     super();
   }
 }
 
-export class EmailAddressConflictError extends ErrorResult {
-  readonly __typename = 'EmailAddressConflictError';
-  readonly errorCode = 'EMAIL_ADDRESS_CONFLICT_ERROR' as any;
-  readonly message = 'EMAIL_ADDRESS_CONFLICT_ERROR';
+export class OrderModificationError extends ErrorResult {
+  readonly __typename = 'OrderModificationError';
+  readonly errorCode = 'ORDER_MODIFICATION_ERROR' as any;
+  readonly message = 'ORDER_MODIFICATION_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class IdentifierChangeTokenExpiredError extends ErrorResult {
-  readonly __typename = 'IdentifierChangeTokenExpiredError';
-  readonly errorCode = 'IDENTIFIER_CHANGE_TOKEN_EXPIRED_ERROR' as any;
-  readonly message = 'IDENTIFIER_CHANGE_TOKEN_EXPIRED_ERROR';
+export class OrderLimitError extends ErrorResult {
+  readonly __typename = 'OrderLimitError';
+  readonly errorCode = 'ORDER_LIMIT_ERROR' as any;
+  readonly message = 'ORDER_LIMIT_ERROR';
   constructor(
+    public   maxItems: Scalars['Int'],
   ) {
     super();
   }
 }
 
-export class IdentifierChangeTokenInvalidError extends ErrorResult {
-  readonly __typename = 'IdentifierChangeTokenInvalidError';
-  readonly errorCode = 'IDENTIFIER_CHANGE_TOKEN_INVALID_ERROR' as any;
-  readonly message = 'IDENTIFIER_CHANGE_TOKEN_INVALID_ERROR';
+export class NegativeQuantityError extends ErrorResult {
+  readonly __typename = 'NegativeQuantityError';
+  readonly errorCode = 'NEGATIVE_QUANTITY_ERROR' as any;
+  readonly message = 'NEGATIVE_QUANTITY_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class InvalidCredentialsError extends ErrorResult {
-  readonly __typename = 'InvalidCredentialsError';
-  readonly errorCode = 'INVALID_CREDENTIALS_ERROR' as any;
-  readonly message = 'INVALID_CREDENTIALS_ERROR';
+export class OrderPaymentStateError extends ErrorResult {
+  readonly __typename = 'OrderPaymentStateError';
+  readonly errorCode = 'ORDER_PAYMENT_STATE_ERROR' as any;
+  readonly message = 'ORDER_PAYMENT_STATE_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class MissingPasswordError extends ErrorResult {
-  readonly __typename = 'MissingPasswordError';
-  readonly errorCode = 'MISSING_PASSWORD_ERROR' as any;
-  readonly message = 'MISSING_PASSWORD_ERROR';
+export class PaymentFailedError extends ErrorResult {
+  readonly __typename = 'PaymentFailedError';
+  readonly errorCode = 'PAYMENT_FAILED_ERROR' as any;
+  readonly message = 'PAYMENT_FAILED_ERROR';
   constructor(
+    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class NativeAuthStrategyError extends ErrorResult {
-  readonly __typename = 'NativeAuthStrategyError';
-  readonly errorCode = 'NATIVE_AUTH_STRATEGY_ERROR' as any;
-  readonly message = 'NATIVE_AUTH_STRATEGY_ERROR';
+export class PaymentDeclinedError extends ErrorResult {
+  readonly __typename = 'PaymentDeclinedError';
+  readonly errorCode = 'PAYMENT_DECLINED_ERROR' as any;
+  readonly message = 'PAYMENT_DECLINED_ERROR';
   constructor(
+    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class NegativeQuantityError extends ErrorResult {
-  readonly __typename = 'NegativeQuantityError';
-  readonly errorCode = 'NEGATIVE_QUANTITY_ERROR' as any;
-  readonly message = 'NEGATIVE_QUANTITY_ERROR';
+export class CouponCodeInvalidError extends ErrorResult {
+  readonly __typename = 'CouponCodeInvalidError';
+  readonly errorCode = 'COUPON_CODE_INVALID_ERROR' as any;
+  readonly message = 'COUPON_CODE_INVALID_ERROR';
   constructor(
+    public   couponCode: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class OrderLimitError extends ErrorResult {
-  readonly __typename = 'OrderLimitError';
-  readonly errorCode = 'ORDER_LIMIT_ERROR' as any;
-  readonly message = 'ORDER_LIMIT_ERROR';
+export class CouponCodeExpiredError extends ErrorResult {
+  readonly __typename = 'CouponCodeExpiredError';
+  readonly errorCode = 'COUPON_CODE_EXPIRED_ERROR' as any;
+  readonly message = 'COUPON_CODE_EXPIRED_ERROR';
   constructor(
-    public   maxItems: Scalars['Int'],
+    public   couponCode: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class OrderModificationError extends ErrorResult {
-  readonly __typename = 'OrderModificationError';
-  readonly errorCode = 'ORDER_MODIFICATION_ERROR' as any;
-  readonly message = 'ORDER_MODIFICATION_ERROR';
+export class CouponCodeLimitError extends ErrorResult {
+  readonly __typename = 'CouponCodeLimitError';
+  readonly errorCode = 'COUPON_CODE_LIMIT_ERROR' as any;
+  readonly message = 'COUPON_CODE_LIMIT_ERROR';
   constructor(
+    public   couponCode: Scalars['String'],
+    public   limit: Scalars['Int'],
   ) {
     super();
   }
 }
 
-export class OrderPaymentStateError extends ErrorResult {
-  readonly __typename = 'OrderPaymentStateError';
-  readonly errorCode = 'ORDER_PAYMENT_STATE_ERROR' as any;
-  readonly message = 'ORDER_PAYMENT_STATE_ERROR';
+export class AlreadyLoggedInError extends ErrorResult {
+  readonly __typename = 'AlreadyLoggedInError';
+  readonly errorCode = 'ALREADY_LOGGED_IN_ERROR' as any;
+  readonly message = 'ALREADY_LOGGED_IN_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class OrderStateTransitionError extends ErrorResult {
-  readonly __typename = 'OrderStateTransitionError';
-  readonly errorCode = 'ORDER_STATE_TRANSITION_ERROR' as any;
-  readonly message = 'ORDER_STATE_TRANSITION_ERROR';
+export class MissingPasswordError extends ErrorResult {
+  readonly __typename = 'MissingPasswordError';
+  readonly errorCode = 'MISSING_PASSWORD_ERROR' as any;
+  readonly message = 'MISSING_PASSWORD_ERROR';
   constructor(
-    public   transitionError: Scalars['String'],
-    public   fromState: Scalars['String'],
-    public   toState: Scalars['String'],
   ) {
     super();
   }
@@ -186,62 +188,60 @@ export class PasswordAlreadySetError extends ErrorResult {
   }
 }
 
-export class PasswordResetTokenExpiredError extends ErrorResult {
-  readonly __typename = 'PasswordResetTokenExpiredError';
-  readonly errorCode = 'PASSWORD_RESET_TOKEN_EXPIRED_ERROR' as any;
-  readonly message = 'PASSWORD_RESET_TOKEN_EXPIRED_ERROR';
+export class VerificationTokenInvalidError extends ErrorResult {
+  readonly __typename = 'VerificationTokenInvalidError';
+  readonly errorCode = 'VERIFICATION_TOKEN_INVALID_ERROR' as any;
+  readonly message = 'VERIFICATION_TOKEN_INVALID_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class PasswordResetTokenInvalidError extends ErrorResult {
-  readonly __typename = 'PasswordResetTokenInvalidError';
-  readonly errorCode = 'PASSWORD_RESET_TOKEN_INVALID_ERROR' as any;
-  readonly message = 'PASSWORD_RESET_TOKEN_INVALID_ERROR';
+export class VerificationTokenExpiredError extends ErrorResult {
+  readonly __typename = 'VerificationTokenExpiredError';
+  readonly errorCode = 'VERIFICATION_TOKEN_EXPIRED_ERROR' as any;
+  readonly message = 'VERIFICATION_TOKEN_EXPIRED_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class PaymentDeclinedError extends ErrorResult {
-  readonly __typename = 'PaymentDeclinedError';
-  readonly errorCode = 'PAYMENT_DECLINED_ERROR' as any;
-  readonly message = 'PAYMENT_DECLINED_ERROR';
+export class IdentifierChangeTokenInvalidError extends ErrorResult {
+  readonly __typename = 'IdentifierChangeTokenInvalidError';
+  readonly errorCode = 'IDENTIFIER_CHANGE_TOKEN_INVALID_ERROR' as any;
+  readonly message = 'IDENTIFIER_CHANGE_TOKEN_INVALID_ERROR';
   constructor(
-    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class PaymentFailedError extends ErrorResult {
-  readonly __typename = 'PaymentFailedError';
-  readonly errorCode = 'PAYMENT_FAILED_ERROR' as any;
-  readonly message = 'PAYMENT_FAILED_ERROR';
+export class IdentifierChangeTokenExpiredError extends ErrorResult {
+  readonly __typename = 'IdentifierChangeTokenExpiredError';
+  readonly errorCode = 'IDENTIFIER_CHANGE_TOKEN_EXPIRED_ERROR' as any;
+  readonly message = 'IDENTIFIER_CHANGE_TOKEN_EXPIRED_ERROR';
   constructor(
-    public   paymentErrorMessage: Scalars['String'],
   ) {
     super();
   }
 }
 
-export class VerificationTokenExpiredError extends ErrorResult {
-  readonly __typename = 'VerificationTokenExpiredError';
-  readonly errorCode = 'VERIFICATION_TOKEN_EXPIRED_ERROR' as any;
-  readonly message = 'VERIFICATION_TOKEN_EXPIRED_ERROR';
+export class PasswordResetTokenInvalidError extends ErrorResult {
+  readonly __typename = 'PasswordResetTokenInvalidError';
+  readonly errorCode = 'PASSWORD_RESET_TOKEN_INVALID_ERROR' as any;
+  readonly message = 'PASSWORD_RESET_TOKEN_INVALID_ERROR';
   constructor(
   ) {
     super();
   }
 }
 
-export class VerificationTokenInvalidError extends ErrorResult {
-  readonly __typename = 'VerificationTokenInvalidError';
-  readonly errorCode = 'VERIFICATION_TOKEN_INVALID_ERROR' as any;
-  readonly message = 'VERIFICATION_TOKEN_INVALID_ERROR';
+export class PasswordResetTokenExpiredError extends ErrorResult {
+  readonly __typename = 'PasswordResetTokenExpiredError';
+  readonly errorCode = 'PASSWORD_RESET_TOKEN_EXPIRED_ERROR' as any;
+  readonly message = 'PASSWORD_RESET_TOKEN_EXPIRED_ERROR';
   constructor(
   ) {
     super();
@@ -249,7 +249,7 @@ export class VerificationTokenInvalidError extends ErrorResult {
 }
 
 
-const errorTypeNames = new Set(['OrderModificationError', 'OrderLimitError', 'NegativeQuantityError', 'CouponCodeExpiredError', 'CouponCodeInvalidError', 'CouponCodeLimitError', 'OrderStateTransitionError', 'OrderPaymentStateError', 'PaymentFailedError', 'PaymentDeclinedError', 'AlreadyLoggedInError', 'EmailAddressConflictError', 'InvalidCredentialsError', 'NativeAuthStrategyError', 'MissingPasswordError', 'VerificationTokenInvalidError', 'VerificationTokenExpiredError', 'PasswordAlreadySetError', 'IdentifierChangeTokenInvalidError', 'IdentifierChangeTokenExpiredError', 'PasswordResetTokenInvalidError', 'PasswordResetTokenExpiredError']);
+const errorTypeNames = new Set(['NativeAuthStrategyError', 'InvalidCredentialsError', 'OrderStateTransitionError', 'EmailAddressConflictError', 'OrderModificationError', 'OrderLimitError', 'NegativeQuantityError', 'OrderPaymentStateError', 'PaymentFailedError', 'PaymentDeclinedError', 'CouponCodeInvalidError', 'CouponCodeExpiredError', 'CouponCodeLimitError', 'AlreadyLoggedInError', 'MissingPasswordError', 'PasswordAlreadySetError', 'VerificationTokenInvalidError', 'VerificationTokenExpiredError', 'IdentifierChangeTokenInvalidError', 'IdentifierChangeTokenExpiredError', 'PasswordResetTokenInvalidError', 'PasswordResetTokenExpiredError']);
 function isGraphQLError(input: any): input is import('@vendure/common/lib/generated-types').ErrorResult {
   return input instanceof ErrorResult || errorTypeNames.has(input.__typename);
 }

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 1536 - 2131
packages/elasticsearch-plugin/e2e/graphql/generated-e2e-elasticsearch-plugin-types.ts


+ 1 - 1
packages/testing/package.json

@@ -36,7 +36,7 @@
     "@vendure/common": "^0.15.0",
     "faker": "^4.1.0",
     "form-data": "^3.0.0",
-    "graphql": "^14.5.8",
+    "graphql": "15.3.0",
     "graphql-tag": "^2.10.1",
     "node-fetch": "^2.6.0",
     "sql.js": "1.3.2"

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
schema-admin.json


تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 0 - 0
schema-shop.json


+ 8 - 2
scripts/codegen/client-schema.ts

@@ -1,5 +1,5 @@
+import { makeExecutableSchema } from '@graphql-tools/schema';
 import fs from 'fs';
-import { makeExecutableSchema } from 'graphql-tools';
 import path from 'path';
 
 const CLIENT_SCHEMA_FILE = '../../packages/admin-ui/src/lib/core/src/data/client-state/client-types.graphql';
@@ -26,7 +26,13 @@ function getClientSchema() {
     const authTypeString = loadGraphQL(AUTH_TYPE_FILE);
     const permissionTypeString = loadGraphQL(PERMISSION_TYPE_FILE);
     const schema = makeExecutableSchema({
-        typeDefs: [clientSchemaString, clientDirective, languageCodeString, authTypeString, permissionTypeString],
+        typeDefs: [
+            clientSchemaString,
+            clientDirective,
+            languageCodeString,
+            authTypeString,
+            permissionTypeString,
+        ],
     });
     return schema;
 }

+ 2 - 2
scripts/codegen/download-introspection-schema.ts

@@ -1,5 +1,5 @@
 import fs from 'fs';
-import { introspectionQuery } from 'graphql';
+import { getIntrospectionQuery } from 'graphql';
 import http from 'http';
 
 import { ADMIN_API_PATH, API_PORT } from '../../packages/common/src/shared-constants';
@@ -13,7 +13,7 @@ import { ADMIN_API_PATH, API_PORT } from '../../packages/common/src/shared-const
  * If there is an error connecting to the server, the promise resolves to false.
  */
 export function downloadIntrospectionSchema(apiPath: string, outputFilePath: string): Promise<boolean> {
-    const body = JSON.stringify({ query: introspectionQuery });
+    const body = JSON.stringify({ query: getIntrospectionQuery() });
 
     return new Promise((resolve, reject) => {
         const request = http.request(

+ 2 - 3
scripts/codegen/generate-graphql-types.ts

@@ -1,10 +1,9 @@
 import { generate } from '@graphql-codegen/cli';
 import fs from 'fs';
-import { buildClientSchema, graphqlSync, introspectionQuery } from 'graphql';
-import { mergeSchemas } from 'graphql-tools';
+import { buildClientSchema } from 'graphql';
 import path from 'path';
 
-import { ADMIN_API_PATH, API_PORT, SHOP_API_PATH } from '../../packages/common/src/shared-constants';
+import { ADMIN_API_PATH, SHOP_API_PATH } from '../../packages/common/src/shared-constants';
 
 import { downloadIntrospectionSchema } from './download-introspection-schema';
 

+ 26 - 10
yarn.lock

@@ -1738,6 +1738,15 @@
     cross-fetch "3.0.6"
     tslib "~2.0.1"
 
+"@graphql-tools/batch-delegate@^6.2.4":
+  version "6.2.4"
+  resolved "https://registry.npmjs.org/@graphql-tools/batch-delegate/-/batch-delegate-6.2.4.tgz#8aab19ff69939c1a8bd3bebb4b1a3ff13c933559"
+  integrity sha512-sDWHMuTVGB2ShAnMAF1fLgaPMDgvweUYBXKuef9qHtCE0YtSO8xhP72CtQvHDOIJf30emWTmFFIsw6zbRe1ZWA==
+  dependencies:
+    "@graphql-tools/delegate" "^6.2.4"
+    dataloader "2.0.0"
+    tslib "~2.0.1"
+
 "@graphql-tools/code-file-loader@^6.0.18":
   version "6.2.4"
   resolved "https://registry.npmjs.org/@graphql-tools/code-file-loader/-/code-file-loader-6.2.4.tgz#ce194c19b2fcd714bffa4c0c529a4c65a6b0db4b"
@@ -1908,6 +1917,20 @@
     "@graphql-tools/utils" "^6.2.4"
     tslib "~2.0.1"
 
+"@graphql-tools/stitch@^6.2.4":
+  version "6.2.4"
+  resolved "https://registry.npmjs.org/@graphql-tools/stitch/-/stitch-6.2.4.tgz#acfa6a577a33c0f02e4940ffff04753b23b87fd6"
+  integrity sha512-0C7PNkS7v7iAc001m7c1LPm5FUB0/DYw+s3OyCii6YYYHY8NwdI0roeOyeDGFJkFubWBQfjc3hoSyueKtU73mw==
+  dependencies:
+    "@graphql-tools/batch-delegate" "^6.2.4"
+    "@graphql-tools/delegate" "^6.2.4"
+    "@graphql-tools/merge" "^6.2.4"
+    "@graphql-tools/schema" "^6.2.4"
+    "@graphql-tools/utils" "^6.2.4"
+    "@graphql-tools/wrap" "^6.2.4"
+    is-promise "4.0.0"
+    tslib "~2.0.1"
+
 "@graphql-tools/url-loader@^6.0.0", "@graphql-tools/url-loader@^6.0.18", "@graphql-tools/url-loader@^6.2.4":
   version "6.3.0"
   resolved "https://registry.npmjs.org/@graphql-tools/url-loader/-/url-loader-6.3.0.tgz#75b82bdf0983d3e389c75948a7abff20fa45a630"
@@ -9314,7 +9337,7 @@ graphql-tag@^2.10.1, graphql-tag@^2.11.0, graphql-tag@^2.9.2:
   resolved "https://registry.npmjs.org/graphql-tag/-/graphql-tag-2.11.0.tgz#1deb53a01c46a7eb401d6cb59dec86fa1cccbffd"
   integrity sha512-VmsD5pJqWJnQZMUeRwrDhfgoyqcfwEkvtpANqcoUG8/tOLkwNgU9mzub/Mc78OJMhHjx7gfAMTxzdG43VGg3bA==
 
-graphql-tools@^4.0.0, graphql-tools@^4.0.6:
+graphql-tools@^4.0.0:
   version "4.0.8"
   resolved "https://registry.npmjs.org/graphql-tools/-/graphql-tools-4.0.8.tgz#e7fb9f0d43408fb0878ba66b522ce871bafe9d30"
   integrity sha512-MW+ioleBrwhRjalKjYaLQbr+920pHBgy9vM/n47sswtns8+96sRn5M/G+J1eu7IMeKWiN/9p6tmwCHU7552VJg==
@@ -9340,19 +9363,12 @@ graphql-upload@^8.0.2:
     http-errors "^1.7.3"
     object-path "^0.11.4"
 
-graphql@*, graphql@^15.1.0, graphql@^15.3.0:
+graphql@*, graphql@15.3.0, graphql@^15.1.0, graphql@^15.3.0:
   version "15.3.0"
   resolved "https://registry.npmjs.org/graphql/-/graphql-15.3.0.tgz#3ad2b0caab0d110e3be4a5a9b2aa281e362b5278"
   integrity sha512-GTCJtzJmkFLWRfFJuoo9RWWa/FfamUHgiFosxi/X1Ani4AVWbeyBenZTNX6dM+7WSbbFfTo/25eh0LLkwHMw2w==
 
-graphql@14.6.0:
-  version "14.6.0"
-  resolved "https://registry.npmjs.org/graphql/-/graphql-14.6.0.tgz#57822297111e874ea12f5cd4419616930cd83e49"
-  integrity sha512-VKzfvHEKybTKjQVpTFrA5yUq2S9ihcZvfJAtsDBBCuV6wauPu1xl/f9ehgVf0FcEJJs4vz6ysb/ZMkGigQZseg==
-  dependencies:
-    iterall "^1.2.2"
-
-graphql@^14.5.3, graphql@^14.5.8:
+graphql@^14.5.3:
   version "14.7.0"
   resolved "https://registry.npmjs.org/graphql/-/graphql-14.7.0.tgz#7fa79a80a69be4a31c27dda824dc04dac2035a72"
   integrity sha512-l0xWZpoPKpppFzMfvVyFmp9vLN7w/ZZJPefUicMCepfJeQ8sMcztloGYY9DfjVPo6tIUDzU5Hw3MUbIjj9AVVA==

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است