diff --git a/schema.graphql b/schema.graphql index ae15c713c..1a05aa1ed 100644 --- a/schema.graphql +++ b/schema.graphql @@ -412,7 +412,7 @@ type Attribute implements Node & ObjectWithMetadata { type AttributeAssign { errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.") productType: ProductType - productErrors: [ProductAttributeError!]! + productErrors: [ProductError!]! } input AttributeAssignInput { @@ -2534,6 +2534,7 @@ enum MetadataErrorCode { GRAPHQL_ERROR INVALID NOT_FOUND + REQUIRED } input MetadataInput { @@ -3116,8 +3117,8 @@ input OrderFulfillLineInput { } input OrderFulfillStockInput { - quantity: Int - warehouse: ID + quantity: Int! + warehouse: ID! } type OrderLine implements Node { @@ -3490,6 +3491,7 @@ enum PermissionEnum { MANAGE_ORDERS MANAGE_PAGES MANAGE_PRODUCTS + MANAGE_PRODUCT_TYPES_AND_ATTRIBUTES MANAGE_SHIPPING MANAGE_SETTINGS MANAGE_TRANSLATIONS @@ -3666,13 +3668,6 @@ type Product implements Node & ObjectWithMetadata { isAvailableForPurchase: Boolean } -type ProductAttributeError { - field: String - message: String - code: ProductErrorCode! - attributes: [ID!] -} - type ProductBulkDelete { errors: [Error!]! @deprecated(reason: "Use typed errors with error codes. This field will be removed after 2020-07-31.") count: Int! @@ -4173,6 +4168,11 @@ type ProductVariantDelete { productVariant: ProductVariant } +input ProductVariantFilterInput { + search: String + sku: [String] +} + input ProductVariantInput { attributes: [AttributeValueInput] costPrice: PositiveDecimal @@ -4275,8 +4275,8 @@ type Query { products(filter: ProductFilterInput, sortBy: ProductOrder, stockAvailability: StockAvailability, before: String, after: String, first: Int, last: Int): ProductCountableConnection productType(id: ID!): ProductType productTypes(filter: ProductTypeFilterInput, sortBy: ProductTypeSortingInput, before: String, after: String, first: Int, last: Int): ProductTypeCountableConnection - productVariant(id: ID!): ProductVariant - productVariants(ids: [ID], before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection + productVariant(id: ID, sku: String): ProductVariant + productVariants(ids: [ID], filter: ProductVariantFilterInput, before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection reportProductSales(period: ReportingPeriod!, before: String, after: String, first: Int, last: Int): ProductVariantCountableConnection payment(id: ID!): Payment payments(before: String, after: String, first: Int, last: Int): PaymentCountableConnection diff --git a/src/fragments/types/ProductVariant.ts b/src/fragments/types/ProductVariant.ts index 9cc5da325..928e068c8 100644 --- a/src/fragments/types/ProductVariant.ts +++ b/src/fragments/types/ProductVariant.ts @@ -99,11 +99,6 @@ export interface ProductVariant_product_variants { images: (ProductVariant_product_variants_images | null)[] | null; } -export interface ProductVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface ProductVariant_product { __typename: "Product"; id: string; diff --git a/src/products/types/ProductVariantDetails.ts b/src/products/types/ProductVariantDetails.ts index 4eaf125a4..7227a7405 100644 --- a/src/products/types/ProductVariantDetails.ts +++ b/src/products/types/ProductVariantDetails.ts @@ -99,19 +99,14 @@ export interface ProductVariantDetails_productVariant_product_variants { images: (ProductVariantDetails_productVariant_product_variants_images | null)[] | null; } -export interface ProductVariantDetails_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface ProductVariantDetails_productVariant_product { __typename: "Product"; id: string; + defaultVariant: ProductVariantDetails_productVariant_product_defaultVariant | null; images: (ProductVariantDetails_productVariant_product_images | null)[] | null; name: string; thumbnail: ProductVariantDetails_productVariant_product_thumbnail | null; variants: (ProductVariantDetails_productVariant_product_variants | null)[] | null; - defaultVariant: ProductVariantDetails_productVariant_product_defaultVariant | null; } export interface ProductVariantDetails_productVariant_stocks_warehouse { diff --git a/src/products/types/SimpleProductUpdate.ts b/src/products/types/SimpleProductUpdate.ts index 13ba1db76..b0c1a04d3 100644 --- a/src/products/types/SimpleProductUpdate.ts +++ b/src/products/types/SimpleProductUpdate.ts @@ -346,19 +346,14 @@ export interface SimpleProductUpdate_productVariantUpdate_productVariant_product images: (SimpleProductUpdate_productVariantUpdate_productVariant_product_variants_images | null)[] | null; } -export interface SimpleProductUpdate_productVariantUpdate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface SimpleProductUpdate_productVariantUpdate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: SimpleProductUpdate_productVariantUpdate_productVariant_product_defaultVariant | null; images: (SimpleProductUpdate_productVariantUpdate_productVariant_product_images | null)[] | null; name: string; thumbnail: SimpleProductUpdate_productVariantUpdate_productVariant_product_thumbnail | null; variants: (SimpleProductUpdate_productVariantUpdate_productVariant_product_variants | null)[] | null; - defaultVariant: SimpleProductUpdate_productVariantUpdate_productVariant_product_defaultVariant | null; } export interface SimpleProductUpdate_productVariantUpdate_productVariant_stocks_warehouse { @@ -502,19 +497,14 @@ export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_p images: (SimpleProductUpdate_productVariantStocksCreate_productVariant_product_variants_images | null)[] | null; } -export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: SimpleProductUpdate_productVariantStocksCreate_productVariant_product_defaultVariant | null; images: (SimpleProductUpdate_productVariantStocksCreate_productVariant_product_images | null)[] | null; name: string; thumbnail: SimpleProductUpdate_productVariantStocksCreate_productVariant_product_thumbnail | null; variants: (SimpleProductUpdate_productVariantStocksCreate_productVariant_product_variants | null)[] | null; - defaultVariant: SimpleProductUpdate_productVariantStocksCreate_productVariant_product_defaultVariant | null; } export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_stocks_warehouse { @@ -657,19 +647,14 @@ export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_p images: (SimpleProductUpdate_productVariantStocksDelete_productVariant_product_variants_images | null)[] | null; } -export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_product { __typename: "Product"; id: string; + defaultVariant: SimpleProductUpdate_productVariantStocksDelete_productVariant_product_defaultVariant | null; images: (SimpleProductUpdate_productVariantStocksDelete_productVariant_product_images | null)[] | null; name: string; thumbnail: SimpleProductUpdate_productVariantStocksDelete_productVariant_product_thumbnail | null; variants: (SimpleProductUpdate_productVariantStocksDelete_productVariant_product_variants | null)[] | null; - defaultVariant: SimpleProductUpdate_productVariantStocksDelete_productVariant_product_defaultVariant | null; } export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_stocks_warehouse { @@ -813,19 +798,14 @@ export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_p images: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_variants_images | null)[] | null; } -export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant | null; images: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_images | null)[] | null; name: string; thumbnail: SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_thumbnail | null; variants: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_variants | null)[] | null; - defaultVariant: SimpleProductUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant | null; } export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_stocks_warehouse { diff --git a/src/products/types/VariantCreate.ts b/src/products/types/VariantCreate.ts index ad340028e..be28216f6 100644 --- a/src/products/types/VariantCreate.ts +++ b/src/products/types/VariantCreate.ts @@ -106,19 +106,14 @@ export interface VariantCreate_productVariantCreate_productVariant_product_varia images: (VariantCreate_productVariantCreate_productVariant_product_variants_images | null)[] | null; } -export interface VariantCreate_productVariantCreate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface VariantCreate_productVariantCreate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: VariantCreate_productVariantCreate_productVariant_product_defaultVariant | null; images: (VariantCreate_productVariantCreate_productVariant_product_images | null)[] | null; name: string; thumbnail: VariantCreate_productVariantCreate_productVariant_product_thumbnail | null; variants: (VariantCreate_productVariantCreate_productVariant_product_variants | null)[] | null; - defaultVariant: VariantCreate_productVariantCreate_productVariant_product_defaultVariant | null; } export interface VariantCreate_productVariantCreate_productVariant_stocks_warehouse { diff --git a/src/products/types/VariantImageAssign.ts b/src/products/types/VariantImageAssign.ts index 871c1bf99..5dcf48722 100644 --- a/src/products/types/VariantImageAssign.ts +++ b/src/products/types/VariantImageAssign.ts @@ -105,19 +105,14 @@ export interface VariantImageAssign_variantImageAssign_productVariant_product_va images: (VariantImageAssign_variantImageAssign_productVariant_product_variants_images | null)[] | null; } -export interface VariantImageAssign_variantImageAssign_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface VariantImageAssign_variantImageAssign_productVariant_product { __typename: "Product"; id: string; + defaultVariant: VariantImageAssign_variantImageAssign_productVariant_product_defaultVariant | null; images: (VariantImageAssign_variantImageAssign_productVariant_product_images | null)[] | null; name: string; thumbnail: VariantImageAssign_variantImageAssign_productVariant_product_thumbnail | null; variants: (VariantImageAssign_variantImageAssign_productVariant_product_variants | null)[] | null; - defaultVariant: VariantImageAssign_variantImageAssign_productVariant_product_defaultVariant | null; } export interface VariantImageAssign_variantImageAssign_productVariant_stocks_warehouse { diff --git a/src/products/types/VariantImageUnassign.ts b/src/products/types/VariantImageUnassign.ts index 719b9e8a6..347b3f992 100644 --- a/src/products/types/VariantImageUnassign.ts +++ b/src/products/types/VariantImageUnassign.ts @@ -105,19 +105,14 @@ export interface VariantImageUnassign_variantImageUnassign_productVariant_produc images: (VariantImageUnassign_variantImageUnassign_productVariant_product_variants_images | null)[] | null; } -export interface VariantImageUnassign_variantImageUnassign_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface VariantImageUnassign_variantImageUnassign_productVariant_product { __typename: "Product"; id: string; + defaultVariant: VariantImageUnassign_variantImageUnassign_productVariant_product_defaultVariant | null; images: (VariantImageUnassign_variantImageUnassign_productVariant_product_images | null)[] | null; name: string; thumbnail: VariantImageUnassign_variantImageUnassign_productVariant_product_thumbnail | null; variants: (VariantImageUnassign_variantImageUnassign_productVariant_product_variants | null)[] | null; - defaultVariant: VariantImageUnassign_variantImageUnassign_productVariant_product_defaultVariant | null; } export interface VariantImageUnassign_variantImageUnassign_productVariant_stocks_warehouse { diff --git a/src/products/types/VariantUpdate.ts b/src/products/types/VariantUpdate.ts index 88d3548e4..7bb411da3 100644 --- a/src/products/types/VariantUpdate.ts +++ b/src/products/types/VariantUpdate.ts @@ -106,19 +106,14 @@ export interface VariantUpdate_productVariantUpdate_productVariant_product_varia images: (VariantUpdate_productVariantUpdate_productVariant_product_variants_images | null)[] | null; } -export interface VariantUpdate_productVariantUpdate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface VariantUpdate_productVariantUpdate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: VariantUpdate_productVariantUpdate_productVariant_product_defaultVariant | null; images: (VariantUpdate_productVariantUpdate_productVariant_product_images | null)[] | null; name: string; thumbnail: VariantUpdate_productVariantUpdate_productVariant_product_thumbnail | null; variants: (VariantUpdate_productVariantUpdate_productVariant_product_variants | null)[] | null; - defaultVariant: VariantUpdate_productVariantUpdate_productVariant_product_defaultVariant | null; } export interface VariantUpdate_productVariantUpdate_productVariant_stocks_warehouse { @@ -262,19 +257,14 @@ export interface VariantUpdate_productVariantStocksUpdate_productVariant_product images: (VariantUpdate_productVariantStocksUpdate_productVariant_product_variants_images | null)[] | null; } -export interface VariantUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant { - __typename: "ProductVariant"; - id: string; -} - export interface VariantUpdate_productVariantStocksUpdate_productVariant_product { __typename: "Product"; id: string; + defaultVariant: VariantUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant | null; images: (VariantUpdate_productVariantStocksUpdate_productVariant_product_images | null)[] | null; name: string; thumbnail: VariantUpdate_productVariantStocksUpdate_productVariant_product_thumbnail | null; variants: (VariantUpdate_productVariantStocksUpdate_productVariant_product_variants | null)[] | null; - defaultVariant: VariantUpdate_productVariantStocksUpdate_productVariant_product_defaultVariant | null; } export interface VariantUpdate_productVariantStocksUpdate_productVariant_stocks_warehouse { diff --git a/src/types/globalTypes.ts b/src/types/globalTypes.ts index 8d75979a3..a7623db95 100644 --- a/src/types/globalTypes.ts +++ b/src/types/globalTypes.ts @@ -512,6 +512,7 @@ export enum MetadataErrorCode { GRAPHQL_ERROR = "GRAPHQL_ERROR", INVALID = "INVALID", NOT_FOUND = "NOT_FOUND", + REQUIRED = "REQUIRED", } export enum OrderAction { @@ -658,6 +659,7 @@ export enum PermissionEnum { MANAGE_PAGES = "MANAGE_PAGES", MANAGE_PLUGINS = "MANAGE_PLUGINS", MANAGE_PRODUCTS = "MANAGE_PRODUCTS", + MANAGE_PRODUCT_TYPES_AND_ATTRIBUTES = "MANAGE_PRODUCT_TYPES_AND_ATTRIBUTES", MANAGE_SERVICE_ACCOUNTS = "MANAGE_SERVICE_ACCOUNTS", MANAGE_SETTINGS = "MANAGE_SETTINGS", MANAGE_SHIPPING = "MANAGE_SHIPPING", @@ -1244,8 +1246,8 @@ export interface OrderFulfillLineInput { } export interface OrderFulfillStockInput { - quantity?: number | null; - warehouse?: string | null; + quantity: number; + warehouse: string; } export interface OrderLineCreateInput {