Attribute values pagination in product details (#1125)

* Attribute values pagination in product list filters

* Update product queries and mutations to handle attribute values pagination

* Search for attribute values dynamically on product details page

* Update product attributes mutation payload

* Support attribute values pagination on product create page

* Temporary mock not implemented attribute values pagination in variants and pages

* Trigger CI

* Fix simple product update channel listings

* Add simple local pagination implementation

* Create useLocalPageInfo hook to handle client side pagination

* Allow custom values always for attribute select inputs to prevent bug
This commit is contained in:
Dawid Tarasiuk 2021-05-28 11:59:25 +02:00
parent f5324cee60
commit 453e4192fe
64 changed files with 3350 additions and 3478 deletions

View file

@ -413,7 +413,7 @@ type Attribute implements Node & ObjectWithMetadata {
slug: String
type: AttributeTypeEnum
unit: MeasurementUnitsEnum
values(before: String, after: String, first: Int, last: Int): AttributeValueCountableConnection
values(filter: AttributeValueFilterInput, before: String, after: String, first: Int, last: Int): AttributeValueCountableConnection
valueRequired: Boolean!
visibleInStorefront: Boolean!
filterableInStorefront: Boolean!
@ -637,6 +637,10 @@ type AttributeValueDelete {
attributeValue: AttributeValue
}
input AttributeValueFilterInput {
search: String
}
input AttributeValueInput {
id: ID
values: [String]

View file

@ -19,13 +19,11 @@ import { getFormErrors } from "@saleor/utils/errors";
import React from "react";
import { FormattedMessage, useIntl } from "react-intl";
import { AttributeDetails_attribute_values_edges_node } from "../../types/AttributeDetails";
export interface AttributeValueEditDialogFormData {
name: string;
}
export interface AttributeValueEditDialogProps {
attributeValue: AttributeDetails_attribute_values_edges_node | null;
attributeValue: AttributeValueEditDialogFormData | null;
confirmButtonState: ConfirmButtonTransitionState;
disabled: boolean;
errors: AttributeErrorFragment[];

View file

@ -82,8 +82,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "author",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI0",
@ -93,8 +105,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI1",
@ -105,7 +121,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -119,8 +137,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "box-size",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE1",
@ -130,8 +160,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE2",
@ -141,8 +175,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 1,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE3",
@ -152,8 +190,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 2,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE4",
@ -164,7 +206,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: false
}
},
@ -178,8 +222,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "brand",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjY=",
@ -190,7 +246,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: false
}
},
@ -204,8 +262,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "candy-box-size",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIx",
@ -215,8 +285,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIy",
@ -226,8 +300,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 1,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIz",
@ -238,7 +316,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: false
}
},
@ -252,8 +332,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "coffee-genre",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEz",
@ -263,8 +355,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE0",
@ -275,7 +371,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -289,8 +387,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "collar",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM=",
@ -300,8 +410,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjQ=",
@ -311,8 +425,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 1,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjU=",
@ -323,7 +441,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -337,8 +457,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "color",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE=",
@ -348,8 +480,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI=",
@ -360,7 +496,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -374,8 +512,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "cover",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMw",
@ -385,8 +535,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMx",
@ -396,8 +550,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 1,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMy",
@ -407,8 +565,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 2,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMz",
@ -418,8 +580,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 3,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM0",
@ -429,8 +595,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 4,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM1",
@ -441,7 +611,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: false
}
},
@ -455,8 +627,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "flavor",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE5",
@ -466,8 +650,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIw",
@ -478,7 +666,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -492,8 +682,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "language",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI4",
@ -503,8 +705,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI5",
@ -515,7 +721,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -529,8 +737,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "publisher",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI2",
@ -540,8 +760,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI3",
@ -552,7 +776,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
},
@ -566,8 +792,20 @@ export const attributes: Array<AttributeList_attributes_edges_node &
slug: "size",
type: AttributeTypeEnum.PRODUCT_TYPE,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjc=",
@ -577,8 +815,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 0,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjg=",
@ -588,8 +830,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 1,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjk=",
@ -599,8 +845,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 2,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEw",
@ -610,8 +860,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 3,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEx",
@ -621,8 +875,12 @@ export const attributes: Array<AttributeList_attributes_edges_node &
sortOrder: 4,
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEy",
@ -633,7 +891,9 @@ export const attributes: Array<AttributeList_attributes_edges_node &
value: "",
richText: null
}
],
}
]
},
visibleInStorefront: true
}
}

View file

@ -48,8 +48,7 @@ export type AttributeAddUrlDialog =
| "edit-value"
| "remove-value"
| "remove-values";
export type AttributeAddUrlQueryParams = Pagination &
Dialog<AttributeAddUrlDialog> &
export type AttributeAddUrlQueryParams = Dialog<AttributeAddUrlDialog> &
SingleAction;
export const attributeAddPath = urlJoin(attributeSection, "add");
export const attributeAddUrl = (params?: AttributeAddUrlQueryParams) =>

View file

@ -12,6 +12,7 @@ import {
FormsetData
} from "@saleor/hooks/useFormset";
import { PageDetails_page_attributes } from "@saleor/pages/types/PageDetails";
import { ProductDetails_product_attributes } from "@saleor/products/types/ProductDetails";
import { FetchMoreProps, ReorderEvent } from "@saleor/types";
import {
AttributeEntityTypeEnum,
@ -232,7 +233,9 @@ export const handleUploadMultipleFiles = async (
export const handleDeleteMultipleAttributeValues = async (
attributesWithNewFileValue: FormsetData<null, File>,
attributes: PageDetails_page_attributes[],
attributes: Array<
PageDetails_page_attributes | ProductDetails_product_attributes
>,
deleteAttributeValue: (
variables: AttributeValueDeleteVariables
) => Promise<MutationFetchResult<AttributeValueDelete>>

View file

@ -1,11 +1,9 @@
import { getAttributeData } from "@saleor/attributes/utils/data";
import { AttributeErrorFragment } from "@saleor/fragments/types/AttributeErrorFragment";
import useListSettings from "@saleor/hooks/useListSettings";
import useLocalPageInfo, { getMaxPage } from "@saleor/hooks/useLocalPageInfo";
import useNavigator from "@saleor/hooks/useNavigator";
import useNotifier from "@saleor/hooks/useNotifier";
import usePaginator, {
createPaginationState
} from "@saleor/hooks/usePaginator";
import { getStringOrPlaceholder } from "@saleor/misc";
import { ListViews, ReorderEvent } from "@saleor/types";
import { AttributeErrorCode } from "@saleor/types/globalTypes";
@ -61,7 +59,6 @@ function areValuesEqual(
const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
const navigate = useNavigator();
const paginate = usePaginator();
const notify = useNotifier();
const intl = useIntl();
@ -75,17 +72,14 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
const { updateListSettings, settings } = useListSettings(
ListViews.ATTRIBUTE_VALUE_LIST
);
const paginationState = createPaginationState(settings?.rowNumber, params);
const { loadNextPage, loadPreviousPage, pageInfo } = paginate(
{
endCursor: "",
hasNextPage: false,
hasPreviousPage: false,
startCursor: ""
},
paginationState,
params
);
const {
pageInfo,
pageValues,
loadNextPage,
loadPreviousPage,
loadPage
} = useLocalPageInfo(values, settings?.rowNumber);
const [attributeCreate, attributeCreateOpts] = useAttributeCreateMutation({
onCompleted: data => {
@ -103,7 +97,9 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
const [updateMetadata] = useMetadataUpdate({});
const [updatePrivateMetadata] = usePrivateMetadataUpdate({});
const id = params.id ? parseInt(params.id, 0) : undefined;
const id = params.id
? parseInt(params.id, 0) + pageInfo.startCursor
: undefined;
const [openModal, closeModal] = createDialogActionHandlers<
AttributeAddUrlDialog,
@ -113,7 +109,8 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
React.useEffect(() => setValueErrors([]), [params.action]);
const handleValueDelete = () => {
setValues(remove(values[params.id], values, areValuesEqual));
const newValues = remove(values[id], values, areValuesEqual);
setValues(newValues);
closeModal();
};
const handleValueUpdate = (input: AttributeValueEditDialogFormData) => {
@ -128,12 +125,26 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
if (isSelected(input, values, areValuesEqual)) {
setValueErrors([attributeValueAlreadyExistsError]);
} else {
setValues(add(input, values));
const newValues = add(input, values);
setValues(newValues);
const addedToNotVisibleLastPage =
newValues.length - pageInfo.startCursor > settings.rowNumber;
if (addedToNotVisibleLastPage) {
const maxPage = getMaxPage(newValues.length, settings.rowNumber);
loadPage(maxPage);
}
closeModal();
}
};
const handleValueReorder = ({ newIndex, oldIndex }: ReorderEvent) =>
setValues(move(values[oldIndex], values, areValuesEqual, newIndex));
setValues(
move(
values[pageInfo.startCursor + oldIndex],
values,
areValuesEqual,
pageInfo.startCursor + newIndex
)
);
const handleCreate = async (data: AttributePageFormData) => {
const input = getAttributeData(data, values);
@ -183,7 +194,7 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
hasPreviousPage: false,
startCursor: ""
},
edges: values.map((value, valueIndex) => ({
edges: pageValues.map((value, valueIndex) => ({
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "1",
node: {
@ -225,7 +236,7 @@ const AttributeDetails: React.FC<AttributeDetailsProps> = ({ params }) => {
onConfirm={handleValueDelete}
/>
<AttributeValueEditDialog
attributeValue={values[params.id]}
attributeValue={values[id]}
confirmButtonState="default"
disabled={false}
errors={valueErrors}

View file

@ -11,17 +11,19 @@ import {
getMultiDisplayValue,
getReferenceDisplayValue,
getRichTextData,
getSingleChoices
getSingleChoices,
getSingleDisplayValue
} from "@saleor/components/Attributes/utils";
import FileUploadField from "@saleor/components/FileUploadField";
import MultiAutocompleteSelectField from "@saleor/components/MultiAutocompleteSelectField";
import RichTextEditor from "@saleor/components/RichTextEditor";
import SingleAutocompleteSelectField from "@saleor/components/SingleAutocompleteSelectField";
import SortableChipsField from "@saleor/components/SortableChipsField";
import { AttributeValueFragment } from "@saleor/fragments/types/AttributeValueFragment";
import { PageErrorWithAttributesFragment } from "@saleor/fragments/types/PageErrorWithAttributesFragment";
import { ProductErrorWithAttributesFragment } from "@saleor/fragments/types/ProductErrorWithAttributesFragment";
import { FormsetChange } from "@saleor/hooks/useFormset";
import { ReorderEvent } from "@saleor/types";
import { FetchMoreProps, ReorderEvent } from "@saleor/types";
import { AttributeInputTypeEnum } from "@saleor/types/globalTypes";
import React from "react";
import { defineMessages, useIntl } from "react-intl";
@ -53,10 +55,14 @@ export interface AttributeRowHandlers {
onReferencesAddClick: (attribute: AttributeInput) => void;
onReferencesRemove: FormsetChange<string[]>;
onReferencesReorder: FormsetChange<ReorderEvent>;
fetchAttributeValues: (query: string) => void;
fetchMoreAttributeValues: FetchMoreProps;
onAttributeSelect: (id: string) => void;
}
interface AttributeRowProps extends AttributeRowHandlers {
attribute: AttributeInput;
attributeValues: AttributeValueFragment[];
disabled: boolean;
error: ProductErrorWithAttributesFragment | PageErrorWithAttributesFragment;
loading: boolean;
@ -64,6 +70,7 @@ interface AttributeRowProps extends AttributeRowHandlers {
const AttributeRow: React.FC<AttributeRowProps> = ({
attribute,
attributeValues,
disabled,
error,
loading,
@ -72,7 +79,10 @@ const AttributeRow: React.FC<AttributeRowProps> = ({
onReferencesAddClick,
onReferencesRemove,
onReferencesReorder,
onChange
onChange,
fetchAttributeValues,
fetchMoreAttributeValues,
onAttributeSelect
}) => {
const intl = useIntl();
const classes = useStyles({});
@ -126,15 +136,9 @@ const AttributeRow: React.FC<AttributeRowProps> = ({
return (
<BasicAttributeRow label={attribute.label}>
<SingleAutocompleteSelectField
choices={getSingleChoices(attribute.data.values)}
choices={getSingleChoices(attributeValues)}
disabled={disabled}
displayValue={
attribute.data.values.find(
value => value.slug === attribute.value[0]
)?.name ||
attribute.value[0] ||
""
}
displayValue={getSingleDisplayValue(attribute, attributeValues)}
emptyOption={!attribute.data.isRequired}
error={!!error}
helperText={getErrorMessage(error, intl)}
@ -142,7 +146,10 @@ const AttributeRow: React.FC<AttributeRowProps> = ({
label={intl.formatMessage(messages.valueLabel)}
value={attribute.value[0]}
onChange={event => onChange(attribute.id, event.target.value)}
allowCustomValues={!attribute.data.isRequired}
allowCustomValues={true}
fetchChoices={fetchAttributeValues}
{...fetchMoreAttributeValues}
onClick={() => onAttributeSelect(attribute.id)}
/>
</BasicAttributeRow>
);
@ -192,8 +199,8 @@ const AttributeRow: React.FC<AttributeRowProps> = ({
return (
<BasicAttributeRow label={attribute.label}>
<MultiAutocompleteSelectField
choices={getMultiChoices(attribute.data.values)}
displayValues={getMultiDisplayValue(attribute)}
choices={getMultiChoices(attributeValues)}
displayValues={getMultiDisplayValue(attribute, attributeValues)}
disabled={disabled}
error={!!error}
helperText={getErrorMessage(error, intl)}
@ -201,7 +208,10 @@ const AttributeRow: React.FC<AttributeRowProps> = ({
name={`attribute:${attribute.label}`}
value={attribute.value}
onChange={event => onMultiChange(attribute.id, event.target.value)}
allowCustomValues={!attribute.data.isRequired}
allowCustomValues={true}
fetchChoices={fetchAttributeValues}
{...fetchMoreAttributeValues}
onClick={() => onAttributeSelect(attribute.id)}
/>
</BasicAttributeRow>
);

View file

@ -1,4 +1,5 @@
import Attributes, { AttributesProps } from "@saleor/components/Attributes";
import { fetchMoreProps } from "@saleor/fixtures";
import { storiesOf } from "@storybook/react";
import React from "react";
@ -7,6 +8,7 @@ import { ATTRIBUTES, ATTRIBUTES_SELECTED } from "./fixtures";
const props: AttributesProps = {
attributes: ATTRIBUTES,
attributeValues: [],
disabled: false,
errors: [],
loading: false,
@ -15,7 +17,10 @@ const props: AttributesProps = {
onMultiChange: () => undefined,
onReferencesAddClick: () => undefined,
onReferencesRemove: () => undefined,
onReferencesReorder: () => undefined
onReferencesReorder: () => undefined,
onAttributeSelect: () => undefined,
fetchAttributeValues: () => undefined,
fetchMoreAttributeValues: fetchMoreProps
};
storiesOf("Attributes / Attributes", module)

View file

@ -8,6 +8,7 @@ import { PageErrorWithAttributesFragment } from "@saleor/fragments/types/PageErr
import { ProductErrorWithAttributesFragment } from "@saleor/fragments/types/ProductErrorWithAttributesFragment";
import { FormsetAtomicData } from "@saleor/hooks/useFormset";
import { makeStyles } from "@saleor/theme";
import { FetchMoreProps } from "@saleor/types";
import {
AttributeEntityTypeEnum,
AttributeInputTypeEnum,
@ -34,12 +35,16 @@ export type AttributeInput = FormsetAtomicData<AttributeInputData, string[]>;
export type AttributeFileInput = FormsetAtomicData<AttributeInputData, File[]>;
export interface AttributesProps extends AttributeRowHandlers {
attributes: AttributeInput[];
attributeValues: AttributeValueFragment[];
fetchAttributeValues: (query: string) => void;
fetchMoreAttributeValues: FetchMoreProps;
disabled: boolean;
loading: boolean;
errors: Array<
ProductErrorWithAttributesFragment | PageErrorWithAttributesFragment
>;
title?: React.ReactNode;
onAttributeSelect: (id: string) => void;
}
const useStyles = makeStyles(
@ -109,6 +114,7 @@ const messages = defineMessages({
const Attributes: React.FC<AttributesProps> = ({
attributes,
attributeValues,
errors,
title,
...props
@ -158,6 +164,7 @@ const Attributes: React.FC<AttributesProps> = ({
{attributeIndex > 0 && <Hr />}
<AttributeRow
attribute={attribute}
attributeValues={attributeValues}
error={error}
{...props}
/>

View file

@ -89,15 +89,33 @@ export function getMultiChoices(
}));
}
export function getSingleDisplayValue(
attribute: AttributeInput,
attributeValues: AttributeValueFragment[]
): string {
return (
attributeValues.find(value => value.slug === attribute.value[0])?.name ||
attribute.data.values.find(value => value.slug === attribute.value[0])
?.name ||
attribute.value[0] ||
""
);
}
export function getMultiDisplayValue(
attribute: AttributeInput
attribute: AttributeInput,
attributeValues: AttributeValueFragment[]
): MultiAutocompleteChoiceType[] {
if (!attribute.value) {
return [];
}
return attribute.value.map(attributeValue => {
const definedAttributeValue = attribute.data.values.find(
const definedAttributeValue =
attributeValues.find(
definedValue => definedValue.slug === attributeValue
) ||
attribute.data.values.find(
definedValue => definedValue.slug === attributeValue
);
if (!!definedAttributeValue) {

View file

@ -85,6 +85,7 @@ export interface MultiAutocompleteSelectFieldProps
testId?: string;
fetchChoices?: (value: string) => void;
onChange: (event: React.ChangeEvent<any>) => void;
onClick?: () => void;
}
const DebounceAutocomplete: React.ComponentType<DebounceProps<
@ -109,6 +110,7 @@ const MultiAutocompleteSelectFieldComponent: React.FC<MultiAutocompleteSelectFie
testId,
fetchChoices,
onChange,
onClick,
onFetchMore,
...rest
} = props;
@ -163,7 +165,12 @@ const MultiAutocompleteSelectFieldComponent: React.FC<MultiAutocompleteSelectFie
</div>
),
id: undefined,
onClick: toggleMenu
onClick: (cb: () => void) => {
toggleMenu(cb);
if (onClick) {
onClick();
}
}
}}
error={error}
helperText={helperText}

View file

@ -46,6 +46,7 @@ export interface SingleAutocompleteSelectFieldProps
InputProps?: InputProps;
fetchChoices?: (value: string) => void;
onChange: (event: React.ChangeEvent<any>) => void;
onClick?: () => void;
FormHelperTextProps?: ExtendedFormHelperTextProps;
nakedInput?: boolean;
}
@ -75,6 +76,7 @@ const SingleAutocompleteSelectFieldComponent: React.FC<SingleAutocompleteSelectF
fetchChoices,
onChange,
onFetchMore,
onClick,
FormHelperTextProps,
nakedInput = false,
...rest
@ -166,7 +168,12 @@ const SingleAutocompleteSelectFieldComponent: React.FC<SingleAutocompleteSelectF
error,
id: undefined,
onBlur: handleBlur,
onClick: toggleMenu
onClick: (cb: () => void) => {
toggleMenu(cb);
if (onClick) {
onClick();
}
}
};
const nakedInputProps = nakedInput

View file

@ -1,6 +1,9 @@
import gql from "graphql-tag";
import { attributeValueFragment } from "./attributes";
import {
attributeValueFragment,
attributeValueListFragment
} from "./attributes";
import { metadataFragment } from "./metadata";
import { taxTypeFragment } from "./taxes";
import { weightFragment } from "./weight";
@ -117,7 +120,7 @@ export const productFragment = gql`
export const productVariantAttributesFragment = gql`
${priceRangeFragment}
${attributeValueFragment}
${attributeValueListFragment}
fragment ProductVariantAttributesFragment on Product {
id
attributes {
@ -129,9 +132,14 @@ export const productVariantAttributesFragment = gql`
entityType
valueRequired
unit
# values {
# ...AttributeValueFragment
# }
values(
first: $firstValues
after: $afterValues
last: $lastValues
before: $beforeValues
) {
...AttributeValueListFragment
}
}
values {
...AttributeValueFragment
@ -142,9 +150,14 @@ export const productVariantAttributesFragment = gql`
variantAttributes(variantSelection: VARIANT_SELECTION) {
id
name
# values {
# ...AttributeValueFragment
# }
values(
first: $firstValues
after: $afterValues
last: $lastValues
before: $beforeValues
) {
...AttributeValueListFragment
}
}
}
channelListings {
@ -233,7 +246,6 @@ export const productFragmentDetails = gql`
`;
export const variantAttributeFragment = gql`
${attributeValueFragment}
fragment VariantAttributeFragment on Attribute {
id
name
@ -242,8 +254,13 @@ export const variantAttributeFragment = gql`
entityType
valueRequired
unit
# values {
# ...AttributeValueFragment
# values(
# first: $firstValues
# after: $afterValues
# last: $lastValues
# before: $beforeValues
# ) {
# ...AttributeValueListFragment
# }
}
`;

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum,
// GraphQL fragment: Product
// ====================================================
export interface Product_attributes_attribute_values_file {
export interface Product_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface Product_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface Product_attributes_attribute_values {
export interface Product_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: Product_attributes_attribute_values_file | null;
file: Product_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface Product_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: Product_attributes_attribute_values_edges_node;
}
export interface Product_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: Product_attributes_attribute_values_pageInfo;
edges: Product_attributes_attribute_values_edges[];
}
export interface Product_attributes_attribute {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface Product_attributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (Product_attributes_attribute_values | null)[] | null;
values: Product_attributes_attribute_values | null;
}
export interface Product_attributes_values_file {
@ -59,27 +79,47 @@ export interface Product_attributes {
values: (Product_attributes_values | null)[];
}
export interface Product_productType_variantAttributes_values_file {
export interface Product_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface Product_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface Product_productType_variantAttributes_values {
export interface Product_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: Product_productType_variantAttributes_values_file | null;
file: Product_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface Product_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: Product_productType_variantAttributes_values_edges_node;
}
export interface Product_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: Product_productType_variantAttributes_values_pageInfo;
edges: Product_productType_variantAttributes_values_edges[];
}
export interface Product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (Product_productType_variantAttributes_values | null)[] | null;
values: Product_productType_variantAttributes_values | null;
}
export interface Product_productType_taxType {

View file

@ -21,22 +21,42 @@ export interface ProductVariant_privateMetadata {
value: string;
}
export interface ProductVariant_selectionAttributes_attribute_values_file {
export interface ProductVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariant_selectionAttributes_attribute_values {
export interface ProductVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariant_selectionAttributes_attribute_values_file | null;
file: ProductVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariant_selectionAttributes_attribute_values_edges_node;
}
export interface ProductVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariant_selectionAttributes_attribute_values_pageInfo;
edges: ProductVariant_selectionAttributes_attribute_values_edges[];
}
export interface ProductVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -46,7 +66,7 @@ export interface ProductVariant_selectionAttributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariant_selectionAttributes_attribute_values | null)[] | null;
values: ProductVariant_selectionAttributes_attribute_values | null;
}
export interface ProductVariant_selectionAttributes_values_file {
@ -71,22 +91,42 @@ export interface ProductVariant_selectionAttributes {
values: (ProductVariant_selectionAttributes_values | null)[];
}
export interface ProductVariant_nonSelectionAttributes_attribute_values_file {
export interface ProductVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariant_nonSelectionAttributes_attribute_values {
export interface ProductVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariant_nonSelectionAttributes_attribute_values_file | null;
file: ProductVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface ProductVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: ProductVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface ProductVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -96,7 +136,7 @@ export interface ProductVariant_nonSelectionAttributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: ProductVariant_nonSelectionAttributes_attribute_values | null;
}
export interface ProductVariant_nonSelectionAttributes_values_file {

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum }
// GraphQL fragment: ProductVariantAttributesFragment
// ====================================================
export interface ProductVariantAttributesFragment_attributes_attribute_values_file {
export interface ProductVariantAttributesFragment_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantAttributesFragment_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantAttributesFragment_attributes_attribute_values {
export interface ProductVariantAttributesFragment_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantAttributesFragment_attributes_attribute_values_file | null;
file: ProductVariantAttributesFragment_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantAttributesFragment_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantAttributesFragment_attributes_attribute_values_edges_node;
}
export interface ProductVariantAttributesFragment_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantAttributesFragment_attributes_attribute_values_pageInfo;
edges: ProductVariantAttributesFragment_attributes_attribute_values_edges[];
}
export interface ProductVariantAttributesFragment_attributes_attribute {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface ProductVariantAttributesFragment_attributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantAttributesFragment_attributes_attribute_values | null)[] | null;
values: ProductVariantAttributesFragment_attributes_attribute_values | null;
}
export interface ProductVariantAttributesFragment_attributes_values_file {
@ -59,27 +79,47 @@ export interface ProductVariantAttributesFragment_attributes {
values: (ProductVariantAttributesFragment_attributes_values | null)[];
}
export interface ProductVariantAttributesFragment_productType_variantAttributes_values_file {
export interface ProductVariantAttributesFragment_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantAttributesFragment_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantAttributesFragment_productType_variantAttributes_values {
export interface ProductVariantAttributesFragment_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantAttributesFragment_productType_variantAttributes_values_file | null;
file: ProductVariantAttributesFragment_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantAttributesFragment_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantAttributesFragment_productType_variantAttributes_values_edges_node;
}
export interface ProductVariantAttributesFragment_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantAttributesFragment_productType_variantAttributes_values_pageInfo;
edges: ProductVariantAttributesFragment_productType_variantAttributes_values_edges[];
}
export interface ProductVariantAttributesFragment_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductVariantAttributesFragment_productType_variantAttributes_values | null)[] | null;
values: ProductVariantAttributesFragment_productType_variantAttributes_values | null;
}
export interface ProductVariantAttributesFragment_productType {

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum }
// GraphQL fragment: SelectedVariantAttributeFragment
// ====================================================
export interface SelectedVariantAttributeFragment_attribute_values_file {
export interface SelectedVariantAttributeFragment_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SelectedVariantAttributeFragment_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SelectedVariantAttributeFragment_attribute_values {
export interface SelectedVariantAttributeFragment_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SelectedVariantAttributeFragment_attribute_values_file | null;
file: SelectedVariantAttributeFragment_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SelectedVariantAttributeFragment_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SelectedVariantAttributeFragment_attribute_values_edges_node;
}
export interface SelectedVariantAttributeFragment_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SelectedVariantAttributeFragment_attribute_values_pageInfo;
edges: SelectedVariantAttributeFragment_attribute_values_edges[];
}
export interface SelectedVariantAttributeFragment_attribute {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface SelectedVariantAttributeFragment_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SelectedVariantAttributeFragment_attribute_values | null)[] | null;
values: SelectedVariantAttributeFragment_attribute_values | null;
}
export interface SelectedVariantAttributeFragment_values_file {

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum }
// GraphQL fragment: VariantAttributeFragment
// ====================================================
export interface VariantAttributeFragment_values_file {
export interface VariantAttributeFragment_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantAttributeFragment_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantAttributeFragment_values {
export interface VariantAttributeFragment_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantAttributeFragment_values_file | null;
file: VariantAttributeFragment_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantAttributeFragment_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantAttributeFragment_values_edges_node;
}
export interface VariantAttributeFragment_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantAttributeFragment_values_pageInfo;
edges: VariantAttributeFragment_values_edges[];
}
export interface VariantAttributeFragment {
__typename: "Attribute";
id: string;
@ -34,5 +54,5 @@ export interface VariantAttributeFragment {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantAttributeFragment_values | null)[] | null;
values: VariantAttributeFragment_values | null;
}

View file

@ -0,0 +1,51 @@
import { useEffect, useState } from "react";
export interface PageInfo {
endCursor: number;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: number;
}
export function getMaxPage(valuesCount: number, paginateBy: number) {
return Math.floor(Math.max(0, valuesCount - 1) / paginateBy);
}
function useLocalPageInfo<T>(values: T[], paginateBy: number) {
const [page, setPage] = useState(0);
const maxPage = getMaxPage(values.length, paginateBy);
useEffect(() => {
if (page > maxPage) {
setPage(maxPage);
}
}, [values.length, paginateBy]);
const hasPreviousPage = page > 0;
const hasNextPage = page < maxPage;
const startCursor = page * paginateBy;
const endCursor = hasNextPage
? startCursor + paginateBy - 1
: Math.max(0, values.length - 1);
const pageValues = values.slice(startCursor, endCursor + 1);
const loadPreviousPage = () => setPage(page - 1);
const loadNextPage = () => setPage(page + 1);
return {
pageInfo: {
hasNextPage,
hasPreviousPage,
endCursor,
startCursor
},
pageValues,
loadNextPage,
loadPreviousPage,
loadPage: setPage
};
}
export default useLocalPageInfo;

View file

@ -155,6 +155,7 @@ const PageDetailsPage: React.FC<PageDetailsPageProps> = ({
{data.attributes.length > 0 && (
<Attributes
attributes={data.attributes}
attributeValues={[]}
disabled={loading}
loading={loading}
errors={errors}
@ -164,6 +165,9 @@ const PageDetailsPage: React.FC<PageDetailsPageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={() => undefined}
fetchMoreAttributeValues={undefined}
onAttributeSelect={() => undefined}
/>
)}
<CardSpacer />

View file

@ -23,8 +23,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "author",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI0",
@ -35,8 +47,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI1",
@ -48,8 +64,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -61,8 +79,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "box-size",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE1",
@ -73,8 +103,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE2",
@ -85,8 +119,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE3",
@ -97,8 +135,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE4",
@ -110,8 +152,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -123,8 +167,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "brand",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjY=",
@ -136,8 +192,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -149,8 +207,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "candy-box-size",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIx",
@ -161,8 +231,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIy",
@ -173,8 +247,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIz",
@ -186,8 +264,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -199,8 +279,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "coffee-genre",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEz",
@ -211,8 +303,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE0",
@ -224,8 +320,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -237,8 +335,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "collar",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM=",
@ -249,8 +359,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjQ=",
@ -261,8 +375,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjU=",
@ -274,8 +392,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -287,8 +407,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "color",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE=",
@ -299,8 +431,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI=",
@ -312,8 +448,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -325,8 +463,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "cover",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMw",
@ -337,8 +487,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMx",
@ -349,8 +503,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMy",
@ -361,8 +519,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjMz",
@ -373,8 +535,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM0",
@ -385,8 +551,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjM1",
@ -398,8 +568,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -411,8 +583,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "flavor",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjE5",
@ -423,8 +607,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjIw",
@ -436,8 +624,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -449,8 +639,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "language",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI4",
@ -461,8 +663,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI5",
@ -474,8 +680,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -487,8 +695,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "publisher",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI2",
@ -499,8 +719,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjI3",
@ -512,8 +736,10 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
},
{
node: {
@ -525,8 +751,20 @@ export const attributes: ProductType_productType_productAttributes[] = [
slug: "size",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection" as "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo" as "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjc=",
@ -537,8 +775,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjg=",
@ -549,8 +791,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjk=",
@ -561,8 +807,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEw",
@ -573,8 +823,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEx",
@ -585,8 +839,12 @@ export const attributes: ProductType_productType_productAttributes[] = [
type: "STRING",
value: "",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge" as "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue" as "AttributeValue",
file: null,
id: "UHJvZHVjdEF0dHJpYnV0ZVZhbHVlOjEy",
@ -598,9 +856,11 @@ export const attributes: ProductType_productType_productAttributes[] = [
value: "",
richText: null
}
}
]
}
}
}
].map(edge => edge.node);
export const productTypeSearch: ProductType_productType = {

View file

@ -25,6 +25,7 @@ import { sectionNames } from "@saleor/intl";
import ProductVariantPrice from "@saleor/products/components/ProductVariantPrice";
import { ProductType_productType } from "@saleor/products/types/ProductType";
import { getChoices } from "@saleor/products/utils/data";
import { SearchAttributeValues_attribute_values_edges_node } from "@saleor/searches/types/SearchAttributeValues";
import { SearchCategories_search_edges_node } from "@saleor/searches/types/SearchCategories";
import { SearchCollections_search_edges_node } from "@saleor/searches/types/SearchCollections";
import { SearchPages_search_edges_node } from "@saleor/searches/types/SearchPages";
@ -54,10 +55,12 @@ interface ProductCreatePageProps {
currentChannels: ChannelData[];
collections: SearchCollections_search_edges_node[];
categories: SearchCategories_search_edges_node[];
attributeValues: SearchAttributeValues_attribute_values_edges_node[];
loading: boolean;
fetchMoreCategories: FetchMoreProps;
fetchMoreCollections: FetchMoreProps;
fetchMoreProductTypes: FetchMoreProps;
fetchMoreAttributeValues?: FetchMoreProps;
initial?: Partial<ProductCreateFormData>;
productTypes?: SearchProductTypes_search_edges_node[];
referencePages?: SearchPages_search_edges_node[];
@ -71,6 +74,8 @@ interface ProductCreatePageProps {
fetchCategories: (data: string) => void;
fetchCollections: (data: string) => void;
fetchProductTypes: (data: string) => void;
fetchAttributeValues: (query: string) => void;
onAttributeSelect: (id: string) => void;
onWarehouseConfigure: () => void;
openChannelsModal: () => void;
onChannelsChange: (data: ChannelData[]) => void;
@ -93,6 +98,7 @@ export const ProductCreatePage: React.FC<ProductCreatePageProps> = ({
loading,
categories: categoryChoiceList,
collections: collectionChoiceList,
attributeValues,
errors,
fetchCategories,
fetchCollections,
@ -121,8 +127,11 @@ export const ProductCreatePage: React.FC<ProductCreatePageProps> = ({
fetchMoreReferencePages,
fetchReferenceProducts,
fetchMoreReferenceProducts,
fetchAttributeValues,
fetchMoreAttributeValues,
onCloseDialog,
onSelectProductType
onSelectProductType,
onAttributeSelect
}: ProductCreatePageProps) => {
const intl = useIntl();
@ -222,6 +231,7 @@ export const ProductCreatePage: React.FC<ProductCreatePageProps> = ({
{data.attributes.length > 0 && (
<Attributes
attributes={data.attributes}
attributeValues={attributeValues}
loading={loading}
disabled={loading}
errors={errors}
@ -231,6 +241,9 @@ export const ProductCreatePage: React.FC<ProductCreatePageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={fetchAttributeValues}
fetchMoreAttributeValues={fetchMoreAttributeValues}
onAttributeSelect={onAttributeSelect}
/>
)}
<CardSpacer />

View file

@ -36,8 +36,10 @@ const props: ProductUpdatePageProps = {
errors: [],
fetchCategories: () => undefined,
fetchCollections: () => undefined,
fetchAttributeValues: () => undefined,
fetchMoreCategories: fetchMoreProps,
fetchMoreCollections: fetchMoreProps,
fetchMoreAttributeValues: fetchMoreProps,
hasChannelChanged: false,
header: product.name,
media: product.media,
@ -58,6 +60,7 @@ const props: ProductUpdatePageProps = {
onVariantsAdd: () => undefined,
onWarehouseConfigure: () => undefined,
openChannelsModal: () => undefined,
onAttributeSelect: () => undefined,
placeholderImage,
product,
referencePages: [],
@ -66,7 +69,8 @@ const props: ProductUpdatePageProps = {
selectedChannelId: "123",
taxTypes,
variants: product.variants,
warehouses: warehouseList
warehouses: warehouseList,
attributeValues: []
};
const selectors = {

View file

@ -29,6 +29,7 @@ import { maybe } from "@saleor/misc";
import ProductExternalMediaDialog from "@saleor/products/components/ProductExternalMediaDialog";
import ProductVariantPrice from "@saleor/products/components/ProductVariantPrice";
import { ChannelsWithVariantsData } from "@saleor/products/views/ProductUpdate/types";
import { SearchAttributeValues_attribute_values_edges_node } from "@saleor/searches/types/SearchAttributeValues";
import { SearchCategories_search_edges_node } from "@saleor/searches/types/SearchCategories";
import { SearchCollections_search_edges_node } from "@saleor/searches/types/SearchCollections";
import { SearchPages_search_edges_node } from "@saleor/searches/types/SearchPages";
@ -75,6 +76,7 @@ export interface ProductUpdatePageProps extends ListActions, ChannelProps {
placeholderImage: string;
collections: SearchCollections_search_edges_node[];
categories: SearchCategories_search_edges_node[];
attributeValues: SearchAttributeValues_attribute_values_edges_node[];
disabled: boolean;
fetchMoreCategories: FetchMoreProps;
fetchMoreCollections: FetchMoreProps;
@ -93,11 +95,14 @@ export interface ProductUpdatePageProps extends ListActions, ChannelProps {
assignReferencesAttributeId?: string;
fetchMoreReferencePages?: FetchMoreProps;
fetchMoreReferenceProducts?: FetchMoreProps;
fetchMoreAttributeValues?: FetchMoreProps;
isSimpleProduct: boolean;
fetchCategories: (query: string) => void;
fetchCollections: (query: string) => void;
fetchReferencePages?: (data: string) => void;
fetchReferenceProducts?: (data: string) => void;
fetchAttributeValues: (query: string) => void;
onAttributeSelect: (id: string) => void;
onAssignReferencesClick: (attribute: AttributeInput) => void;
onCloseDialog: () => void;
onVariantsAdd: () => void;
@ -134,6 +139,7 @@ export const ProductUpdatePage: React.FC<ProductUpdatePageProps> = ({
categories: categoryChoiceList,
channelsErrors,
collections: collectionChoiceList,
attributeValues,
isSimpleProduct,
errors,
fetchCategories,
@ -185,9 +191,12 @@ export const ProductUpdatePage: React.FC<ProductUpdatePageProps> = ({
fetchMoreReferencePages,
fetchReferenceProducts,
fetchMoreReferenceProducts,
fetchAttributeValues,
fetchMoreAttributeValues,
onCloseDialog,
channelsWithVariantsData,
onChannelsChange
onChannelsChange,
onAttributeSelect
}) => {
const intl = useIntl();
@ -298,6 +307,7 @@ export const ProductUpdatePage: React.FC<ProductUpdatePageProps> = ({
{data.attributes.length > 0 && (
<Attributes
attributes={data.attributes}
attributeValues={attributeValues}
errors={errors}
loading={disabled}
disabled={disabled}
@ -307,6 +317,9 @@ export const ProductUpdatePage: React.FC<ProductUpdatePageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={fetchAttributeValues}
fetchMoreAttributeValues={fetchMoreAttributeValues}
onAttributeSelect={onAttributeSelect}
/>
)}
<CardSpacer />

View file

@ -8,8 +8,8 @@ import SingleAutocompleteSelectField, {
import Skeleton from "@saleor/components/Skeleton";
import { ProductErrorWithAttributesFragment } from "@saleor/fragments/types/ProductErrorWithAttributesFragment";
import {
ProductVariant_nonSelectionAttributes_attribute_values,
ProductVariant_selectionAttributes_attribute_values
ProductVariant_nonSelectionAttributes_attribute_values_edges,
ProductVariant_selectionAttributes_attribute_values_edges
} from "@saleor/fragments/types/ProductVariant";
import { FormsetAtomicData, FormsetChange } from "@saleor/hooks/useFormset";
import { commonMessages } from "@saleor/intl";
@ -19,8 +19,8 @@ import { useIntl } from "react-intl";
export interface VariantAttributeInputData {
values: Array<
| ProductVariant_selectionAttributes_attribute_values
| ProductVariant_nonSelectionAttributes_attribute_values
| ProductVariant_selectionAttributes_attribute_values_edges
| ProductVariant_nonSelectionAttributes_attribute_values_edges
>;
}
export type VariantAttributeInput = FormsetAtomicData<
@ -42,10 +42,10 @@ function getAttributeDisplayValue(
): string {
const attribute = attributes.find(attr => attr.id === id);
const attributeValue = attribute.data.values.find(
value => value.slug === slug
value => value.node.slug === slug
);
if (!!attributeValue) {
return attributeValue.name;
return attributeValue.node.name;
}
return slug || "";
@ -65,8 +65,8 @@ function getAttributeValueChoices(
): SingleAutocompleteChoiceType[] {
const attribute = attributes.find(attr => attr.id === id);
return attribute.data.values.map(attributeValue => ({
label: attributeValue.name,
value: attributeValue.slug
label: attributeValue.node.name,
value: attributeValue.node.slug
}));
}

View file

@ -173,6 +173,7 @@ const ProductVariantCreatePage: React.FC<ProductVariantCreatePageProps> = ({
attribute.data.variantAttributeScope ===
VariantAttributeScope.NOT_VARIANT_SELECTION
)}
attributeValues={[]}
loading={disabled}
disabled={disabled}
errors={errors}
@ -182,6 +183,9 @@ const ProductVariantCreatePage: React.FC<ProductVariantCreatePageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={() => undefined}
fetchMoreAttributeValues={undefined}
onAttributeSelect={() => undefined}
/>
<CardSpacer />
<Attributes
@ -191,6 +195,7 @@ const ProductVariantCreatePage: React.FC<ProductVariantCreatePageProps> = ({
attribute.data.variantAttributeScope ===
VariantAttributeScope.VARIANT_SELECTION
)}
attributeValues={[]}
loading={disabled}
disabled={disabled}
errors={errors}
@ -200,6 +205,9 @@ const ProductVariantCreatePage: React.FC<ProductVariantCreatePageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={() => undefined}
fetchMoreAttributeValues={undefined}
onAttributeSelect={() => undefined}
/>
<CardSpacer />
<ProductShipping

View file

@ -34,8 +34,8 @@ const price: Price = {
attribute: selectedAttributes[0].id,
channels,
mode: "attribute",
values: selectedAttributes[0].values.map(attribute => ({
slug: attribute.slug,
values: selectedAttributes[0].values.edges.map(attribute => ({
slug: attribute.node.slug,
value: channels
}))
};
@ -46,19 +46,21 @@ const stock: Stock = {
value: selectedWarehouses.map(
(_, warehouseIndex) => (warehouseIndex + 2) * 3
),
values: selectedAttributes[0].values.map((attribute, attributeIndex) => ({
slug: attribute.slug,
values: selectedAttributes[0].values.edges.map(
(attribute, attributeIndex) => ({
slug: attribute.node.slug,
value: selectedWarehouses.map(
(_, warehouseIndex) =>
selectedAttributes.length * 10 - attributeIndex - warehouseIndex * 3
)
}))
})
)
};
const dataAttributes = selectedAttributes.map(attribute => ({
id: attribute.id,
values: attribute.values
.map(value => value.slug)
values: attribute.values.edges
.map(value => value.node.slug)
.filter((_, valueIndex) => valueIndex % 2 !== 1)
}));

View file

@ -118,13 +118,13 @@ function getVariantName(
return attributes.reduce(
(acc, attribute) => [
...acc,
attribute.values.find(
attribute.values.edges.find(
value =>
value.slug ===
value.node.slug ===
variant.attributes.find(
variantAttribute => variantAttribute.id === attribute.id
).values[0]
).name
).node.name
],
[]
);

View file

@ -71,7 +71,7 @@ const ProductVariantCreatorValues: React.FC<ProductVariantCreatorValuesProps> =
className={classes.valueContainer}
data-test-id="value-container"
>
{attribute.values.map(value => (
{attribute.values.edges.map(({ node: value }) => (
<Debounce
debounceFn={() => onValueClick(attribute.id, value.slug)}
time={100}

View file

@ -1,6 +1,6 @@
import {
ProductDetails_product_productType_variantAttributes,
ProductDetails_product_productType_variantAttributes_values
ProductDetails_product_productType_variantAttributes_values_edges_node
} from "@saleor/products/types/ProductDetails";
import { ProductVariantCreateFormData } from "./form";
@ -8,33 +8,35 @@ import { ProductVariantCreateFormData } from "./form";
export function getPriceAttributeValues(
data: ProductVariantCreateFormData,
attributes: ProductDetails_product_productType_variantAttributes[]
): ProductDetails_product_productType_variantAttributes_values[] {
): ProductDetails_product_productType_variantAttributes_values_edges_node[] {
return data.price.mode === "all"
? null
: data.price.attribute
? attributes
.find(attribute => attribute.id === data.price.attribute)
.values.filter(value =>
.values.edges.filter(value =>
data.attributes
.find(attribute => attribute.id === data.price.attribute)
.values.includes(value.slug)
.values.includes(value.node.slug)
)
.map(value => value.node)
: [];
}
export function getStockAttributeValues(
data: ProductVariantCreateFormData,
attributes: ProductDetails_product_productType_variantAttributes[]
): ProductDetails_product_productType_variantAttributes_values[] {
): ProductDetails_product_productType_variantAttributes_values_edges_node[] {
return data.stock.mode === "all"
? null
: data.stock.attribute
? attributes
.find(attribute => attribute.id === data.stock.attribute)
.values.filter(value =>
.values.edges.filter(value =>
data.attributes
.find(attribute => attribute.id === data.stock.attribute)
.values.includes(value.slug)
.values.includes(value.node.slug)
)
.map(value => value.node)
: [];
}

View file

@ -226,6 +226,7 @@ const ProductVariantPage: React.FC<ProductVariantPageProps> = ({
attribute.data.variantAttributeScope ===
VariantAttributeScope.NOT_VARIANT_SELECTION
)}
attributeValues={[]}
loading={loading}
disabled={loading}
errors={errors}
@ -235,6 +236,9 @@ const ProductVariantPage: React.FC<ProductVariantPageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={() => undefined}
fetchMoreAttributeValues={undefined}
onAttributeSelect={() => undefined}
/>
<CardSpacer />
<Attributes
@ -246,6 +250,7 @@ const ProductVariantPage: React.FC<ProductVariantPageProps> = ({
attribute.data.variantAttributeScope ===
VariantAttributeScope.VARIANT_SELECTION
)}
attributeValues={[]}
loading={loading}
disabled={loading}
errors={errors}
@ -255,6 +260,9 @@ const ProductVariantPage: React.FC<ProductVariantPageProps> = ({
onReferencesRemove={handlers.selectAttributeReference}
onReferencesAddClick={onAssignReferencesClick}
onReferencesReorder={handlers.reorderAttributeValue}
fetchAttributeValues={() => undefined}
fetchMoreAttributeValues={undefined}
onAttributeSelect={() => undefined}
/>
<CardSpacer />
<ProductVariantMedia

View file

@ -30,8 +30,20 @@ export const product: (
slug: "Borders",
valueRequired: false,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav47282",
@ -39,8 +51,12 @@ export const product: (
reference: null,
slug: "portals",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav17253",
@ -49,7 +65,9 @@ export const product: (
slug: "Baht",
richText: null
}
}
]
}
},
values: [
{
@ -74,8 +92,20 @@ export const product: (
slug: "Legacy",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav31282",
@ -83,8 +113,12 @@ export const product: (
reference: null,
slug: "payment",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav14907",
@ -92,8 +126,12 @@ export const product: (
reference: null,
slug: "Auto-Loan-Account",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav27366",
@ -101,8 +139,12 @@ export const product: (
reference: null,
slug: "Garden",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav11873",
@ -111,7 +153,9 @@ export const product: (
slug: "override",
richText: null
}
}
]
}
},
values: [
{
@ -292,8 +336,20 @@ export const product: (
slug: "attachment",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: {
__typename: "File",
@ -306,8 +362,10 @@ export const product: (
slug: "file-first-value",
richText: null
}
}
]
}
}
],
selectionVariantAttributes: [
{
@ -319,8 +377,20 @@ export const product: (
slug: "color",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptvav47282",
@ -328,8 +398,12 @@ export const product: (
reference: null,
slug: "black",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptvav17253",
@ -338,8 +412,10 @@ export const product: (
slug: "white",
richText: null
}
}
]
}
}
],
taxType: {
__typename: "TaxType",
@ -354,8 +430,20 @@ export const product: (
name: "Attachment",
slug: "attachment",
valueRequired: true,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: {
__typename: "File",
@ -368,7 +456,9 @@ export const product: (
slug: "file-first-value",
richText: null
}
}
]
}
},
{
__typename: "Attribute",
@ -377,8 +467,20 @@ export const product: (
name: "Color",
slug: "color",
valueRequired: true,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptvav47282",
@ -386,8 +488,12 @@ export const product: (
reference: null,
slug: "black",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptvav17253",
@ -396,8 +502,10 @@ export const product: (
slug: "white",
richText: null
}
}
]
}
}
]
},
publicationDate: "2018-08-25T18:45:54.125Z",
@ -2783,8 +2891,20 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "attachment",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: {
__typename: "File",
@ -2797,7 +2917,9 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "file-first-value",
richText: null
}
}
]
}
},
values: [
{
@ -3052,8 +3174,20 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "Borders",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav47282",
@ -3061,8 +3195,12 @@ export const variant = (placeholderImage: string): ProductVariant => ({
reference: null,
slug: "portals",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav17253",
@ -3071,7 +3209,9 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "Baht",
richText: null
}
}
]
}
},
values: [
{
@ -3096,8 +3236,20 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "Legacy",
valueRequired: true,
unit: null,
values: [
values: {
__typename: "AttributeValueCountableConnection",
pageInfo: {
endCursor: "WyI4IiwgIjMiXQ==",
hasNextPage: false,
hasPreviousPage: false,
startCursor: "WyIwIiwgIjQ5Il0=",
__typename: "PageInfo"
},
edges: [
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav31282",
@ -3105,8 +3257,12 @@ export const variant = (placeholderImage: string): ProductVariant => ({
reference: null,
slug: "payment",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav14907",
@ -3114,8 +3270,12 @@ export const variant = (placeholderImage: string): ProductVariant => ({
reference: null,
slug: "Auto-Loan-Account",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav27366",
@ -3123,8 +3283,12 @@ export const variant = (placeholderImage: string): ProductVariant => ({
reference: null,
slug: "Garden",
richText: null
}
},
{
__typename: "AttributeValueCountableEdge",
cursor: "",
node: {
__typename: "AttributeValue",
file: null,
id: "ptav11873",
@ -3133,7 +3297,9 @@ export const variant = (placeholderImage: string): ProductVariant => ({
slug: "override",
richText: null
}
}
]
}
},
values: [
{

View file

@ -8,7 +8,10 @@ import {
stockErrorFragment
} from "@saleor/fragments/errors";
import {
channelListingProductFragment,
channelListingProductVariantFragment,
exportFileFragment,
fragmentProductMedia,
fragmentVariant,
productFragmentDetails
} from "@saleor/fragments/products";
@ -81,7 +84,7 @@ import { VariantUpdate, VariantUpdateVariables } from "./types/VariantUpdate";
export const productMediaCreateMutation = gql`
${productErrorFragment}
${productFragmentDetails}
${fragmentProductMedia}
mutation ProductMediaCreate(
$product: ID!
$image: Upload
@ -100,7 +103,10 @@ export const productMediaCreateMutation = gql`
...ProductErrorFragment
}
product {
...Product
id
media {
...ProductMediaFragment
}
}
}
}
@ -154,14 +160,21 @@ export const useProductMediaReorder = makeMutation<
const productVariantSetDefault = gql`
${productErrorFragment}
${productFragmentDetails}
mutation ProductVariantSetDefault($productId: ID!, $variantId: ID!) {
productVariantSetDefault(productId: $productId, variantId: $variantId) {
errors {
...ProductErrorFragment
}
product {
...Product
id
defaultVariant {
id
name
}
variants {
id
name
}
}
}
}
@ -175,7 +188,14 @@ export const useProductVariantSetDefaultMutation = makeMutation<
export const productUpdateMutation = gql`
${productErrorWithAttributesFragment}
${productFragmentDetails}
mutation ProductUpdate($id: ID!, $input: ProductInput!) {
mutation ProductUpdate(
$id: ID!
$input: ProductInput!
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
productUpdate(id: $id, input: $input) {
errors {
...ProductErrorWithAttributesFragment
@ -205,6 +225,10 @@ export const simpleProductUpdateMutation = gql`
$addStocks: [StockInput!]!
$deleteStocks: [ID!]!
$updateStocks: [StockInput!]!
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
productUpdate(id: $id, input: $input) {
errors {
@ -264,14 +288,13 @@ export const useSimpleProductUpdateMutation = makeMutation<
export const productCreateMutation = gql`
${productErrorWithAttributesFragment}
${productFragmentDetails}
mutation ProductCreate($input: ProductCreateInput!) {
productCreate(input: $input) {
errors {
...ProductErrorWithAttributesFragment
}
product {
...Product
id
}
}
}
@ -311,7 +334,7 @@ export const variantUpdateMutation = gql`
$sku: String
$trackInventory: Boolean!
$stocks: [StockInput!]!
$weight: WeightScalar
$weight: WeightScalar # $firstValues: Int # $afterValues: String # $lastValues: Int # $beforeValues: String
) {
productVariantUpdate(
id: $id
@ -370,7 +393,9 @@ export const useVariantUpdateMutation = makeMutation<
export const variantCreateMutation = gql`
${fragmentVariant}
${productErrorWithAttributesFragment}
mutation VariantCreate($input: ProductVariantCreateInput!) {
mutation VariantCreate(
$input: ProductVariantCreateInput! # $firstValues: Int # $afterValues: String # $lastValues: Int # $beforeValues: String
) {
productVariantCreate(input: $input) {
errors {
...ProductErrorWithAttributesFragment
@ -409,14 +434,17 @@ export const useProductMediaDeleteMutation = makeMutation<
export const productMediaUpdateMutation = gql`
${productErrorFragment}
${productFragmentDetails}
${fragmentProductMedia}
mutation ProductMediaUpdate($id: ID!, $alt: String!) {
productMediaUpdate(id: $id, input: { alt: $alt }) {
errors {
...ProductErrorFragment
}
product {
...Product
id
media {
...ProductMediaFragment
}
}
}
}
@ -427,7 +455,7 @@ export const useProductMediaUpdateMutation = makeMutation<
>(productMediaUpdateMutation);
export const variantMediaAssignMutation = gql`
${fragmentVariant}
${fragmentProductMedia}
${productErrorFragment}
mutation VariantMediaAssign($variantId: ID!, $mediaId: ID!) {
variantMediaAssign(variantId: $variantId, mediaId: $mediaId) {
@ -435,7 +463,24 @@ export const variantMediaAssignMutation = gql`
...ProductErrorFragment
}
productVariant {
...ProductVariant
id
media {
...ProductMediaFragment
}
product {
id
media {
...ProductMediaFragment
}
variants {
id
name
sku
media {
...ProductMediaFragment
}
}
}
}
}
}
@ -446,7 +491,7 @@ export const useVariantMediaAssignMutation = makeMutation<
>(variantMediaAssignMutation);
export const variantMediaUnassignMutation = gql`
${fragmentVariant}
${fragmentProductMedia}
${productErrorFragment}
mutation VariantMediaUnassign($variantId: ID!, $mediaId: ID!) {
variantMediaUnassign(variantId: $variantId, mediaId: $mediaId) {
@ -454,7 +499,24 @@ export const variantMediaUnassignMutation = gql`
...ProductErrorFragment
}
productVariant {
...ProductVariant
id
media {
...ProductMediaFragment
}
product {
id
media {
...ProductMediaFragment
}
variants {
id
name
sku
media {
...ProductMediaFragment
}
}
}
}
}
}
@ -532,7 +594,8 @@ export const useProductExport = makeMutation<
>(productExportMutation);
export const ProductChannelListingUpdateMutation = gql`
${productFragmentDetails}
${channelListingProductFragment}
${channelListingProductVariantFragment}
${productChannelListingErrorFragment}
mutation ProductChannelListingUpdate(
$id: ID!
@ -540,7 +603,16 @@ export const ProductChannelListingUpdateMutation = gql`
) {
productChannelListingUpdate(id: $id, input: $input) {
product {
...Product
id
channelListings {
...ChannelListingProductFragment
}
variants {
id
channelListings {
...ChannelListingProductVariantFragment
}
}
}
errors {
...ProductChannelListingErrorFragment
@ -551,14 +623,16 @@ export const ProductChannelListingUpdateMutation = gql`
const productVariantReorder = gql`
${productErrorFragment}
${productFragmentDetails}
mutation ProductVariantReorder($move: ReorderInput!, $productId: ID!) {
productVariantReorder(moves: [$move], productId: $productId) {
errors {
...ProductErrorFragment
}
product {
...Product
id
variants {
id
}
}
}
}
@ -573,7 +647,8 @@ export const useProductChannelListingUpdate = makeMutation<
>(ProductChannelListingUpdateMutation);
export const ProductVariantChannelListingUpdateMutation = gql`
${fragmentVariant}
${channelListingProductVariantFragment}
${channelListingProductFragment}
${productChannelListingErrorFragment}
mutation ProductVariantChannelListingUpdate(
$id: ID!
@ -581,7 +656,15 @@ export const ProductVariantChannelListingUpdateMutation = gql`
) {
productVariantChannelListingUpdate(id: $id, input: $input) {
variant {
...ProductVariant
id
channelListings {
...ChannelListingProductVariantFragment
}
product {
channelListings {
...ChannelListingProductFragment
}
}
}
errors {
...ProductChannelListingErrorFragment

View file

@ -1,4 +1,7 @@
import { attributeValueFragment } from "@saleor/fragments/attributes";
import {
attributeValueFragment,
attributeValueListFragment
} from "@saleor/fragments/attributes";
import { pageInfoFragment } from "@saleor/fragments/pageInfo";
import {
fragmentVariant,
@ -24,7 +27,10 @@ import {
GridAttributes,
GridAttributesVariables
} from "./types/GridAttributes";
import { InitialProductFilterAttributes } from "./types/InitialProductFilterAttributes";
import {
InitialProductFilterAttributes,
InitialProductFilterAttributesVariables
} from "./types/InitialProductFilterAttributes";
import {
InitialProductFilterCategories,
InitialProductFilterCategoriesVariables
@ -54,7 +60,13 @@ import {
} from "./types/ProductVariantDetails";
const initialProductFilterAttributesQuery = gql`
query InitialProductFilterAttributes {
${pageInfoFragment}
query InitialProductFilterAttributes(
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
attributes(
first: 100
filter: { filterableInDashboard: true, type: PRODUCT_TYPE }
@ -64,11 +76,24 @@ const initialProductFilterAttributesQuery = gql`
id
name
slug
# values {
# id
# name
# slug
# }
values(
first: $firstValues
after: $afterValues
last: $lastValues
before: $beforeValues
) {
pageInfo {
...PageInfoFragment
}
edges {
cursor
node {
id
name
slug
}
}
}
}
}
}
@ -76,7 +101,7 @@ const initialProductFilterAttributesQuery = gql`
`;
export const useInitialProductFilterAttributesQuery = makeQuery<
InitialProductFilterAttributes,
null
InitialProductFilterAttributesVariables
>(initialProductFilterAttributesQuery);
const initialProductFilterCategoriesQuery = gql`
@ -192,7 +217,14 @@ export const useProductCountQuery = makeQuery<
const productDetailsQuery = gql`
${productFragmentDetails}
${taxTypeFragment}
query ProductDetails($id: ID!, $channel: String) {
query ProductDetails(
$id: ID!
$channel: String
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
product(id: $id, channel: $channel) {
...Product
}
@ -208,8 +240,14 @@ export const useProductDetails = makeQuery<
const productTypeQuery = gql`
${taxTypeFragment}
${attributeValueFragment}
query ProductType($id: ID!) {
${attributeValueListFragment}
query ProductType(
$id: ID!
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
productType(id: $id) {
id
name
@ -222,9 +260,14 @@ const productTypeQuery = gql`
name
valueRequired
unit
# values {
# ...AttributeValueFragment
# }
values(
first: $firstValues
after: $afterValues
last: $lastValues
before: $beforeValues
) {
...AttributeValueListFragment
}
}
taxType {
...TaxTypeFragment
@ -238,7 +281,9 @@ export const useProductTypeQuery = makeQuery<ProductType, ProductTypeVariables>(
const productVariantQuery = gql`
${fragmentVariant}
query ProductVariantDetails($id: ID!) {
query ProductVariantDetails(
$id: ID! # $firstValues: Int # $afterValues: String # $lastValues: Int # $beforeValues: String
) {
productVariant(id: $id) {
...ProductVariant
}
@ -251,7 +296,9 @@ export const useProductVariantQuery = makeQuery<
const productVariantCreateQuery = gql`
${variantAttributeFragment}
query ProductVariantCreateData($id: ID!) {
query ProductVariantCreateData(
$id: ID! # $firstValues: Int # $afterValues: String # $lastValues: Int # $beforeValues: String
) {
product(id: $id) {
id
media {
@ -370,7 +417,13 @@ export const useAvailableInGridAttributesQuery = makeQuery<
const createMultipleVariantsData = gql`
${productVariantAttributesFragment}
${warehouseFragment}
query CreateMultipleVariantsData($id: ID!) {
query CreateMultipleVariantsData(
$id: ID!
$firstValues: Int
$afterValues: String
$lastValues: Int
$beforeValues: String
) {
product(id: $id) {
...ProductVariantAttributesFragment
}

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum }
// GraphQL query operation: CreateMultipleVariantsData
// ====================================================
export interface CreateMultipleVariantsData_product_attributes_attribute_values_file {
export interface CreateMultipleVariantsData_product_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface CreateMultipleVariantsData_product_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface CreateMultipleVariantsData_product_attributes_attribute_values {
export interface CreateMultipleVariantsData_product_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: CreateMultipleVariantsData_product_attributes_attribute_values_file | null;
file: CreateMultipleVariantsData_product_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface CreateMultipleVariantsData_product_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: CreateMultipleVariantsData_product_attributes_attribute_values_edges_node;
}
export interface CreateMultipleVariantsData_product_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: CreateMultipleVariantsData_product_attributes_attribute_values_pageInfo;
edges: CreateMultipleVariantsData_product_attributes_attribute_values_edges[];
}
export interface CreateMultipleVariantsData_product_attributes_attribute {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface CreateMultipleVariantsData_product_attributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (CreateMultipleVariantsData_product_attributes_attribute_values | null)[] | null;
values: CreateMultipleVariantsData_product_attributes_attribute_values | null;
}
export interface CreateMultipleVariantsData_product_attributes_values_file {
@ -59,27 +79,47 @@ export interface CreateMultipleVariantsData_product_attributes {
values: (CreateMultipleVariantsData_product_attributes_values | null)[];
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values_file {
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values {
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: CreateMultipleVariantsData_product_productType_variantAttributes_values_file | null;
file: CreateMultipleVariantsData_product_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: CreateMultipleVariantsData_product_productType_variantAttributes_values_edges_node;
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: CreateMultipleVariantsData_product_productType_variantAttributes_values_pageInfo;
edges: CreateMultipleVariantsData_product_productType_variantAttributes_values_edges[];
}
export interface CreateMultipleVariantsData_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (CreateMultipleVariantsData_product_productType_variantAttributes_values | null)[] | null;
values: CreateMultipleVariantsData_product_productType_variantAttributes_values | null;
}
export interface CreateMultipleVariantsData_product_productType {
@ -165,4 +205,8 @@ export interface CreateMultipleVariantsData {
export interface CreateMultipleVariantsDataVariables {
id: string;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -7,19 +7,39 @@
// GraphQL query operation: InitialProductFilterAttributes
// ====================================================
export interface InitialProductFilterAttributes_attributes_edges_node_values {
export interface InitialProductFilterAttributes_attributes_edges_node_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface InitialProductFilterAttributes_attributes_edges_node_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
}
export interface InitialProductFilterAttributes_attributes_edges_node_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: InitialProductFilterAttributes_attributes_edges_node_values_edges_node;
}
export interface InitialProductFilterAttributes_attributes_edges_node_values {
__typename: "AttributeValueCountableConnection";
pageInfo: InitialProductFilterAttributes_attributes_edges_node_values_pageInfo;
edges: InitialProductFilterAttributes_attributes_edges_node_values_edges[];
}
export interface InitialProductFilterAttributes_attributes_edges_node {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
values: (InitialProductFilterAttributes_attributes_edges_node_values | null)[] | null;
values: InitialProductFilterAttributes_attributes_edges_node_values | null;
}
export interface InitialProductFilterAttributes_attributes_edges {
@ -35,3 +55,10 @@ export interface InitialProductFilterAttributes_attributes {
export interface InitialProductFilterAttributes {
attributes: InitialProductFilterAttributes_attributes | null;
}
export interface InitialProductFilterAttributesVariables {
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -3,100 +3,12 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductChannelListingUpdateInput, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum, ProductErrorCode } from "./../../types/globalTypes";
import { ProductChannelListingUpdateInput, ProductErrorCode } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductChannelListingUpdate
// ====================================================
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute_values | null)[] | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_attribute;
values: (ProductChannelListingUpdate_productChannelListingUpdate_product_attributes_values | null)[];
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductChannelListingUpdate_productChannelListingUpdate_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductChannelListingUpdate_productChannelListingUpdate_product_productType_taxType | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings_channel {
__typename: "Channel";
id: string;
@ -139,71 +51,13 @@ export interface ProductChannelListingUpdate_productChannelListingUpdate_product
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings_channel;
pricing: ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductChannelListingUpdate_productChannelListingUpdate_product_variants_stocks_warehouse;
channel: ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings_channel;
pricing: ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings_pricing | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_variants_channelListings_channel {
@ -235,50 +89,14 @@ export interface ProductChannelListingUpdate_productChannelListingUpdate_product
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductChannelListingUpdate_productChannelListingUpdate_product_variants_media[] | null;
stocks: (ProductChannelListingUpdate_productChannelListingUpdate_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductChannelListingUpdate_productChannelListingUpdate_product_variants_channelListings[] | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_product {
__typename: "Product";
id: string;
attributes: ProductChannelListingUpdate_productChannelListingUpdate_product_attributes[];
productType: ProductChannelListingUpdate_productChannelListingUpdate_product_productType;
channelListings: ProductChannelListingUpdate_productChannelListingUpdate_product_channelListings[] | null;
metadata: (ProductChannelListingUpdate_productChannelListingUpdate_product_metadata | null)[];
privateMetadata: (ProductChannelListingUpdate_productChannelListingUpdate_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductChannelListingUpdate_productChannelListingUpdate_product_defaultVariant | null;
category: ProductChannelListingUpdate_productChannelListingUpdate_product_category | null;
collections: (ProductChannelListingUpdate_productChannelListingUpdate_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductChannelListingUpdate_productChannelListingUpdate_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductChannelListingUpdate_productChannelListingUpdate_product_variants | null)[] | null;
weight: ProductChannelListingUpdate_productChannelListingUpdate_product_weight | null;
taxType: ProductChannelListingUpdate_productChannelListingUpdate_product_taxType | null;
}
export interface ProductChannelListingUpdate_productChannelListingUpdate_errors {

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductCreateInput, ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductCreateInput, ProductErrorCode } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductCreate
@ -16,276 +16,9 @@ export interface ProductCreate_productCreate_errors {
attributes: string[] | null;
}
export interface ProductCreate_productCreate_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductCreate_productCreate_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductCreate_productCreate_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductCreate_productCreate_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductCreate_productCreate_product_attributes_attribute_values | null)[] | null;
}
export interface ProductCreate_productCreate_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductCreate_productCreate_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductCreate_productCreate_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductCreate_productCreate_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductCreate_productCreate_product_attributes_attribute;
values: (ProductCreate_productCreate_product_attributes_values | null)[];
}
export interface ProductCreate_productCreate_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductCreate_productCreate_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductCreate_productCreate_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductCreate_productCreate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductCreate_productCreate_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductCreate_productCreate_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductCreate_productCreate_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductCreate_productCreate_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductCreate_productCreate_product_productType_taxType | null;
}
export interface ProductCreate_productCreate_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductCreate_productCreate_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductCreate_productCreate_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: ProductCreate_productCreate_product_channelListings_pricing_priceRange_start_net;
}
export interface ProductCreate_productCreate_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductCreate_productCreate_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: ProductCreate_productCreate_product_channelListings_pricing_priceRange_stop_net;
}
export interface ProductCreate_productCreate_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: ProductCreate_productCreate_product_channelListings_pricing_priceRange_start | null;
stop: ProductCreate_productCreate_product_channelListings_pricing_priceRange_stop | null;
}
export interface ProductCreate_productCreate_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: ProductCreate_productCreate_product_channelListings_pricing_priceRange | null;
}
export interface ProductCreate_productCreate_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductCreate_productCreate_product_channelListings_channel;
pricing: ProductCreate_productCreate_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductCreate_productCreate_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductCreate_productCreate_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductCreate_productCreate_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductCreate_productCreate_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductCreate_productCreate_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductCreate_productCreate_product_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductCreate_productCreate_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductCreate_productCreate_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductCreate_productCreate_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductCreate_productCreate_product_variants_stocks_warehouse;
}
export interface ProductCreate_productCreate_product_variants_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductCreate_productCreate_product_variants_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductCreate_productCreate_product_variants_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductCreate_productCreate_product_variants_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductCreate_productCreate_product_variants_channelListings_channel;
price: ProductCreate_productCreate_product_variants_channelListings_price | null;
costPrice: ProductCreate_productCreate_product_variants_channelListings_costPrice | null;
}
export interface ProductCreate_productCreate_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductCreate_productCreate_product_variants_media[] | null;
stocks: (ProductCreate_productCreate_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductCreate_productCreate_product_variants_channelListings[] | null;
}
export interface ProductCreate_productCreate_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductCreate_productCreate_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductCreate_productCreate_product {
__typename: "Product";
id: string;
attributes: ProductCreate_productCreate_product_attributes[];
productType: ProductCreate_productCreate_product_productType;
channelListings: ProductCreate_productCreate_product_channelListings[] | null;
metadata: (ProductCreate_productCreate_product_metadata | null)[];
privateMetadata: (ProductCreate_productCreate_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductCreate_productCreate_product_defaultVariant | null;
category: ProductCreate_productCreate_product_category | null;
collections: (ProductCreate_productCreate_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductCreate_productCreate_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductCreate_productCreate_product_variants | null)[] | null;
weight: ProductCreate_productCreate_product_weight | null;
taxType: ProductCreate_productCreate_product_taxType | null;
}
export interface ProductCreate_productCreate {

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum,
// GraphQL query operation: ProductDetails
// ====================================================
export interface ProductDetails_product_attributes_attribute_values_file {
export interface ProductDetails_product_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductDetails_product_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductDetails_product_attributes_attribute_values {
export interface ProductDetails_product_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductDetails_product_attributes_attribute_values_file | null;
file: ProductDetails_product_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductDetails_product_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductDetails_product_attributes_attribute_values_edges_node;
}
export interface ProductDetails_product_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductDetails_product_attributes_attribute_values_pageInfo;
edges: ProductDetails_product_attributes_attribute_values_edges[];
}
export interface ProductDetails_product_attributes_attribute {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface ProductDetails_product_attributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductDetails_product_attributes_attribute_values | null)[] | null;
values: ProductDetails_product_attributes_attribute_values | null;
}
export interface ProductDetails_product_attributes_values_file {
@ -59,27 +79,47 @@ export interface ProductDetails_product_attributes {
values: (ProductDetails_product_attributes_values | null)[];
}
export interface ProductDetails_product_productType_variantAttributes_values_file {
export interface ProductDetails_product_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductDetails_product_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductDetails_product_productType_variantAttributes_values {
export interface ProductDetails_product_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductDetails_product_productType_variantAttributes_values_file | null;
file: ProductDetails_product_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductDetails_product_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductDetails_product_productType_variantAttributes_values_edges_node;
}
export interface ProductDetails_product_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductDetails_product_productType_variantAttributes_values_pageInfo;
edges: ProductDetails_product_productType_variantAttributes_values_edges[];
}
export interface ProductDetails_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductDetails_product_productType_variantAttributes_values | null)[] | null;
values: ProductDetails_product_productType_variantAttributes_values | null;
}
export interface ProductDetails_product_productType_taxType {
@ -295,4 +335,8 @@ export interface ProductDetails {
export interface ProductDetailsVariables {
id: string;
channel?: string | null;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductErrorCode, ProductMediaType } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductMediaCreate
@ -15,174 +15,6 @@ export interface ProductMediaCreate_productMediaCreate_errors {
field: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaCreate_productMediaCreate_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductMediaCreate_productMediaCreate_product_attributes_attribute_values | null)[] | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaCreate_productMediaCreate_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaCreate_productMediaCreate_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductMediaCreate_productMediaCreate_product_attributes_attribute;
values: (ProductMediaCreate_productMediaCreate_product_attributes_values | null)[];
}
export interface ProductMediaCreate_productMediaCreate_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaCreate_productMediaCreate_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaCreate_productMediaCreate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductMediaCreate_productMediaCreate_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductMediaCreate_productMediaCreate_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductMediaCreate_productMediaCreate_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductMediaCreate_productMediaCreate_product_productType_taxType | null;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_start_net;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_stop_net;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_start | null;
stop: ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange_stop | null;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: ProductMediaCreate_productMediaCreate_product_channelListings_pricing_priceRange | null;
}
export interface ProductMediaCreate_productMediaCreate_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductMediaCreate_productMediaCreate_product_channelListings_channel;
pricing: ProductMediaCreate_productMediaCreate_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductMediaCreate_productMediaCreate_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductMediaCreate_productMediaCreate_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductMediaCreate_productMediaCreate_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductMediaCreate_productMediaCreate_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductMediaCreate_productMediaCreate_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductMediaCreate_productMediaCreate_product_media {
__typename: "ProductMedia";
id: string;
@ -193,98 +25,10 @@ export interface ProductMediaCreate_productMediaCreate_product_media {
oembedData: any;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductMediaCreate_productMediaCreate_product_variants_stocks_warehouse;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaCreate_productMediaCreate_product_variants_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductMediaCreate_productMediaCreate_product_variants_channelListings_channel;
price: ProductMediaCreate_productMediaCreate_product_variants_channelListings_price | null;
costPrice: ProductMediaCreate_productMediaCreate_product_variants_channelListings_costPrice | null;
}
export interface ProductMediaCreate_productMediaCreate_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductMediaCreate_productMediaCreate_product_variants_media[] | null;
stocks: (ProductMediaCreate_productMediaCreate_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductMediaCreate_productMediaCreate_product_variants_channelListings[] | null;
}
export interface ProductMediaCreate_productMediaCreate_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductMediaCreate_productMediaCreate_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductMediaCreate_productMediaCreate_product {
__typename: "Product";
id: string;
attributes: ProductMediaCreate_productMediaCreate_product_attributes[];
productType: ProductMediaCreate_productMediaCreate_product_productType;
channelListings: ProductMediaCreate_productMediaCreate_product_channelListings[] | null;
metadata: (ProductMediaCreate_productMediaCreate_product_metadata | null)[];
privateMetadata: (ProductMediaCreate_productMediaCreate_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductMediaCreate_productMediaCreate_product_defaultVariant | null;
category: ProductMediaCreate_productMediaCreate_product_category | null;
collections: (ProductMediaCreate_productMediaCreate_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductMediaCreate_productMediaCreate_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductMediaCreate_productMediaCreate_product_variants | null)[] | null;
weight: ProductMediaCreate_productMediaCreate_product_weight | null;
taxType: ProductMediaCreate_productMediaCreate_product_taxType | null;
}
export interface ProductMediaCreate_productMediaCreate {

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductErrorCode, ProductMediaType } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductMediaUpdate
@ -15,174 +15,6 @@ export interface ProductMediaUpdate_productMediaUpdate_errors {
field: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaUpdate_productMediaUpdate_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductMediaUpdate_productMediaUpdate_product_attributes_attribute_values | null)[] | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaUpdate_productMediaUpdate_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductMediaUpdate_productMediaUpdate_product_attributes_attribute;
values: (ProductMediaUpdate_productMediaUpdate_product_attributes_values | null)[];
}
export interface ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductMediaUpdate_productMediaUpdate_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductMediaUpdate_productMediaUpdate_product_productType_taxType | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_start_net;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_stop_net;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_start | null;
stop: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange_stop | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing_priceRange | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductMediaUpdate_productMediaUpdate_product_channelListings_channel;
pricing: ProductMediaUpdate_productMediaUpdate_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductMediaUpdate_productMediaUpdate_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_media {
__typename: "ProductMedia";
id: string;
@ -193,98 +25,10 @@ export interface ProductMediaUpdate_productMediaUpdate_product_media {
oembedData: any;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductMediaUpdate_productMediaUpdate_product_variants_stocks_warehouse;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_channel;
price: ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_price | null;
costPrice: ProductMediaUpdate_productMediaUpdate_product_variants_channelListings_costPrice | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductMediaUpdate_productMediaUpdate_product_variants_media[] | null;
stocks: (ProductMediaUpdate_productMediaUpdate_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductMediaUpdate_productMediaUpdate_product_variants_channelListings[] | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductMediaUpdate_productMediaUpdate_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductMediaUpdate_productMediaUpdate_product {
__typename: "Product";
id: string;
attributes: ProductMediaUpdate_productMediaUpdate_product_attributes[];
productType: ProductMediaUpdate_productMediaUpdate_product_productType;
channelListings: ProductMediaUpdate_productMediaUpdate_product_channelListings[] | null;
metadata: (ProductMediaUpdate_productMediaUpdate_product_metadata | null)[];
privateMetadata: (ProductMediaUpdate_productMediaUpdate_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductMediaUpdate_productMediaUpdate_product_defaultVariant | null;
category: ProductMediaUpdate_productMediaUpdate_product_category | null;
collections: (ProductMediaUpdate_productMediaUpdate_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductMediaUpdate_productMediaUpdate_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductMediaUpdate_productMediaUpdate_product_variants | null)[] | null;
weight: ProductMediaUpdate_productMediaUpdate_product_weight | null;
taxType: ProductMediaUpdate_productMediaUpdate_product_taxType | null;
}
export interface ProductMediaUpdate_productMediaUpdate {

View file

@ -9,22 +9,42 @@ import { AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum }
// GraphQL query operation: ProductType
// ====================================================
export interface ProductType_productType_productAttributes_values_file {
export interface ProductType_productType_productAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductType_productType_productAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductType_productType_productAttributes_values {
export interface ProductType_productType_productAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductType_productType_productAttributes_values_file | null;
file: ProductType_productType_productAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductType_productType_productAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductType_productType_productAttributes_values_edges_node;
}
export interface ProductType_productType_productAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductType_productType_productAttributes_values_pageInfo;
edges: ProductType_productType_productAttributes_values_edges[];
}
export interface ProductType_productType_productAttributes {
__typename: "Attribute";
id: string;
@ -34,7 +54,7 @@ export interface ProductType_productType_productAttributes {
name: string | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductType_productType_productAttributes_values | null)[] | null;
values: ProductType_productType_productAttributes_values | null;
}
export interface ProductType_productType_taxType {
@ -58,4 +78,8 @@ export interface ProductType {
export interface ProductTypeVariables {
id: string;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -16,22 +16,42 @@ export interface ProductUpdate_productUpdate_errors {
attributes: string[] | null;
}
export interface ProductUpdate_productUpdate_product_attributes_attribute_values_file {
export interface ProductUpdate_productUpdate_product_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductUpdate_productUpdate_product_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductUpdate_productUpdate_product_attributes_attribute_values {
export interface ProductUpdate_productUpdate_product_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductUpdate_productUpdate_product_attributes_attribute_values_file | null;
file: ProductUpdate_productUpdate_product_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductUpdate_productUpdate_product_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductUpdate_productUpdate_product_attributes_attribute_values_edges_node;
}
export interface ProductUpdate_productUpdate_product_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductUpdate_productUpdate_product_attributes_attribute_values_pageInfo;
edges: ProductUpdate_productUpdate_product_attributes_attribute_values_edges[];
}
export interface ProductUpdate_productUpdate_product_attributes_attribute {
__typename: "Attribute";
id: string;
@ -41,7 +61,7 @@ export interface ProductUpdate_productUpdate_product_attributes_attribute {
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductUpdate_productUpdate_product_attributes_attribute_values | null)[] | null;
values: ProductUpdate_productUpdate_product_attributes_attribute_values | null;
}
export interface ProductUpdate_productUpdate_product_attributes_values_file {
@ -66,27 +86,47 @@ export interface ProductUpdate_productUpdate_product_attributes {
values: (ProductUpdate_productUpdate_product_attributes_values | null)[];
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values_file {
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values {
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductUpdate_productUpdate_product_productType_variantAttributes_values_file | null;
file: ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node;
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductUpdate_productUpdate_product_productType_variantAttributes_values_pageInfo;
edges: ProductUpdate_productUpdate_product_productType_variantAttributes_values_edges[];
}
export interface ProductUpdate_productUpdate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductUpdate_productUpdate_product_productType_variantAttributes_values | null)[] | null;
values: ProductUpdate_productUpdate_product_productType_variantAttributes_values | null;
}
export interface ProductUpdate_productUpdate_product_productType_taxType {
@ -301,4 +341,8 @@ export interface ProductUpdate {
export interface ProductUpdateVariables {
id: string;
input: ProductInput;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -3,150 +3,36 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductVariantChannelListingAddInput, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum, ProductErrorCode } from "./../../types/globalTypes";
import { ProductVariantChannelListingAddInput, ProductErrorCode } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductVariantChannelListingUpdate
// ====================================================
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute_values {
__typename: "AttributeValue";
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_channel {
__typename: "Channel";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
name: string;
currencyCode: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute_values | null)[] | null;
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes {
__typename: "SelectedAttribute";
attribute: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_attribute;
values: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes_values | null)[];
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute_values | null)[] | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes {
__typename: "SelectedAttribute";
attribute: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_attribute;
values: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes_values | null)[];
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_media {
__typename: "ProductMedia";
id: string;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_thumbnail {
__typename: "Image";
url: string;
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_channel;
price: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_price | null;
costPrice: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_costPrice | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_channelListings_channel {
@ -191,100 +77,25 @@ export interface ProductVariantChannelListingUpdate_productVariantChannelListing
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_channelListings {
__typename: "ProductChannelListing";
publicationDate: any | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
channel: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_channelListings_channel;
pricing: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_channelListings_pricing | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_variants_media {
__typename: "ProductMedia";
id: string;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_variants {
__typename: "ProductVariant";
id: string;
name: string;
sku: string;
media: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_variants_media[] | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product {
__typename: "Product";
id: string;
defaultVariant: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_defaultVariant | null;
media: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_media[] | null;
name: string;
thumbnail: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_thumbnail | null;
channelListings: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_channelListings[] | null;
variants: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product_variants | null)[] | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_channel;
price: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_price | null;
costPrice: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings_costPrice | null;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_stocks_warehouse;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant {
__typename: "ProductVariant";
id: string;
metadata: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_metadata | null)[];
privateMetadata: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_privateMetadata | null)[];
selectionAttributes: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_selectionAttributes[];
nonSelectionAttributes: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_nonSelectionAttributes[];
media: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_media[] | null;
name: string;
product: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product;
channelListings: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_channelListings[] | null;
sku: string;
stocks: (ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_stocks | null)[] | null;
trackInventory: boolean;
weight: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_weight | null;
product: ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_variant_product;
}
export interface ProductVariantChannelListingUpdate_productVariantChannelListingUpdate_errors {

View file

@ -28,22 +28,42 @@ export interface ProductVariantCreateData_product_channelListings {
channel: ProductVariantCreateData_product_channelListings_channel;
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values_file {
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values {
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantCreateData_product_productType_selectionVariantAttributes_values_file | null;
file: ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges_node;
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantCreateData_product_productType_selectionVariantAttributes_values_pageInfo;
edges: ProductVariantCreateData_product_productType_selectionVariantAttributes_values_edges[];
}
export interface ProductVariantCreateData_product_productType_selectionVariantAttributes {
__typename: "Attribute";
id: string;
@ -53,25 +73,45 @@ export interface ProductVariantCreateData_product_productType_selectionVariantAt
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantCreateData_product_productType_selectionVariantAttributes_values | null)[] | null;
values: ProductVariantCreateData_product_productType_selectionVariantAttributes_values | null;
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_file {
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values {
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_file | null;
file: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges_node;
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_pageInfo;
edges: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values_edges[];
}
export interface ProductVariantCreateData_product_productType_nonSelectionVariantAttributes {
__typename: "Attribute";
id: string;
@ -81,7 +121,7 @@ export interface ProductVariantCreateData_product_productType_nonSelectionVarian
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values | null)[] | null;
values: ProductVariantCreateData_product_productType_nonSelectionVariantAttributes_values | null;
}
export interface ProductVariantCreateData_product_productType {
@ -128,4 +168,8 @@ export interface ProductVariantCreateData {
export interface ProductVariantCreateDataVariables {
id: string;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -21,22 +21,42 @@ export interface ProductVariantDetails_productVariant_privateMetadata {
value: string;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values_file {
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values {
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantDetails_productVariant_selectionAttributes_attribute_values_file | null;
file: ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantDetails_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: ProductVariantDetails_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface ProductVariantDetails_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -46,7 +66,7 @@ export interface ProductVariantDetails_productVariant_selectionAttributes_attrib
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantDetails_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: ProductVariantDetails_productVariant_selectionAttributes_attribute_values | null;
}
export interface ProductVariantDetails_productVariant_selectionAttributes_values_file {
@ -71,22 +91,42 @@ export interface ProductVariantDetails_productVariant_selectionAttributes {
values: (ProductVariantDetails_productVariant_selectionAttributes_values | null)[];
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_file {
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values {
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -96,7 +136,7 @@ export interface ProductVariantDetails_productVariant_nonSelectionAttributes_att
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: ProductVariantDetails_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface ProductVariantDetails_productVariant_nonSelectionAttributes_values_file {
@ -293,4 +333,8 @@ export interface ProductVariantDetails {
export interface ProductVariantDetailsVariables {
id: string;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ReorderInput, ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ReorderInput, ProductErrorCode } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductVariantReorder
@ -15,276 +15,15 @@ export interface ProductVariantReorder_productVariantReorder_errors {
field: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantReorder_productVariantReorder_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantReorder_productVariantReorder_product_attributes_attribute_values | null)[] | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantReorder_productVariantReorder_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantReorder_productVariantReorder_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductVariantReorder_productVariantReorder_product_attributes_attribute;
values: (ProductVariantReorder_productVariantReorder_product_attributes_values | null)[];
}
export interface ProductVariantReorder_productVariantReorder_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantReorder_productVariantReorder_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantReorder_productVariantReorder_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductVariantReorder_productVariantReorder_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductVariantReorder_productVariantReorder_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductVariantReorder_productVariantReorder_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductVariantReorder_productVariantReorder_product_productType_taxType | null;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_start_net;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_stop_net;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_start | null;
stop: ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange_stop | null;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: ProductVariantReorder_productVariantReorder_product_channelListings_pricing_priceRange | null;
}
export interface ProductVariantReorder_productVariantReorder_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductVariantReorder_productVariantReorder_product_channelListings_channel;
pricing: ProductVariantReorder_productVariantReorder_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductVariantReorder_productVariantReorder_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantReorder_productVariantReorder_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantReorder_productVariantReorder_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductVariantReorder_productVariantReorder_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductVariantReorder_productVariantReorder_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductVariantReorder_productVariantReorder_product_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductVariantReorder_productVariantReorder_product_variants_stocks_warehouse;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantReorder_productVariantReorder_product_variants_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductVariantReorder_productVariantReorder_product_variants_channelListings_channel;
price: ProductVariantReorder_productVariantReorder_product_variants_channelListings_price | null;
costPrice: ProductVariantReorder_productVariantReorder_product_variants_channelListings_costPrice | null;
}
export interface ProductVariantReorder_productVariantReorder_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductVariantReorder_productVariantReorder_product_variants_media[] | null;
stocks: (ProductVariantReorder_productVariantReorder_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductVariantReorder_productVariantReorder_product_variants_channelListings[] | null;
}
export interface ProductVariantReorder_productVariantReorder_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductVariantReorder_productVariantReorder_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductVariantReorder_productVariantReorder_product {
__typename: "Product";
id: string;
attributes: ProductVariantReorder_productVariantReorder_product_attributes[];
productType: ProductVariantReorder_productVariantReorder_product_productType;
channelListings: ProductVariantReorder_productVariantReorder_product_channelListings[] | null;
metadata: (ProductVariantReorder_productVariantReorder_product_metadata | null)[];
privateMetadata: (ProductVariantReorder_productVariantReorder_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductVariantReorder_productVariantReorder_product_defaultVariant | null;
category: ProductVariantReorder_productVariantReorder_product_category | null;
collections: (ProductVariantReorder_productVariantReorder_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductVariantReorder_productVariantReorder_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductVariantReorder_productVariantReorder_product_variants | null)[] | null;
weight: ProductVariantReorder_productVariantReorder_product_weight | null;
taxType: ProductVariantReorder_productVariantReorder_product_taxType | null;
}
export interface ProductVariantReorder_productVariantReorder {

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductErrorCode } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: ProductVariantSetDefault
@ -15,276 +15,23 @@ export interface ProductVariantSetDefault_productVariantSetDefault_errors {
field: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute {
__typename: "Attribute";
id: string;
slug: string | null;
name: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute_values | null)[] | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantSetDefault_productVariantSetDefault_product_attributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_attributes {
__typename: "SelectedAttribute";
attribute: ProductVariantSetDefault_productVariantSetDefault_product_attributes_attribute;
values: (ProductVariantSetDefault_productVariantSetDefault_product_attributes_values | null)[];
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes_values | null)[] | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_productType_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_productType {
__typename: "ProductType";
id: string;
variantAttributes: (ProductVariantSetDefault_productVariantSetDefault_product_productType_variantAttributes | null)[] | null;
name: string;
hasVariants: boolean;
taxType: ProductVariantSetDefault_productVariantSetDefault_product_productType_taxType | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_start_net;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_stop_net;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_start | null;
stop: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange_stop | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing_priceRange | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_channelListings {
__typename: "ProductChannelListing";
channel: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_channel;
pricing: ProductVariantSetDefault_productVariantSetDefault_product_channelListings_pricing | null;
isPublished: boolean;
publicationDate: any | null;
isAvailableForPurchase: boolean | null;
availableForPurchase: any | null;
visibleInListings: boolean;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_category {
__typename: "Category";
id: string;
name: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_collections {
__typename: "Collection";
id: string;
name: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_media {
__typename: "ProductMedia";
url: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: ProductVariantSetDefault_productVariantSetDefault_product_variants_stocks_warehouse;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings {
__typename: "ProductVariantChannelListing";
channel: ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_channel;
price: ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_price | null;
costPrice: ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings_costPrice | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_variants {
__typename: "ProductVariant";
id: string;
sku: string;
name: string;
margin: number | null;
media: ProductVariantSetDefault_productVariantSetDefault_product_variants_media[] | null;
stocks: (ProductVariantSetDefault_productVariantSetDefault_product_variants_stocks | null)[] | null;
trackInventory: boolean;
channelListings: ProductVariantSetDefault_productVariantSetDefault_product_variants_channelListings[] | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product_taxType {
__typename: "TaxType";
description: string | null;
taxCode: string | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault_product {
__typename: "Product";
id: string;
attributes: ProductVariantSetDefault_productVariantSetDefault_product_attributes[];
productType: ProductVariantSetDefault_productVariantSetDefault_product_productType;
channelListings: ProductVariantSetDefault_productVariantSetDefault_product_channelListings[] | null;
metadata: (ProductVariantSetDefault_productVariantSetDefault_product_metadata | null)[];
privateMetadata: (ProductVariantSetDefault_productVariantSetDefault_product_privateMetadata | null)[];
name: string;
slug: string;
description: any | null;
seoTitle: string | null;
seoDescription: string | null;
rating: number | null;
defaultVariant: ProductVariantSetDefault_productVariantSetDefault_product_defaultVariant | null;
category: ProductVariantSetDefault_productVariantSetDefault_product_category | null;
collections: (ProductVariantSetDefault_productVariantSetDefault_product_collections | null)[] | null;
chargeTaxes: boolean;
media: ProductVariantSetDefault_productVariantSetDefault_product_media[] | null;
isAvailable: boolean | null;
variants: (ProductVariantSetDefault_productVariantSetDefault_product_variants | null)[] | null;
weight: ProductVariantSetDefault_productVariantSetDefault_product_weight | null;
taxType: ProductVariantSetDefault_productVariantSetDefault_product_taxType | null;
}
export interface ProductVariantSetDefault_productVariantSetDefault {

View file

@ -16,22 +16,42 @@ export interface SimpleProductUpdate_productUpdate_errors {
attributes: string[] | null;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values_file {
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values {
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productUpdate_product_attributes_attribute_values_file | null;
file: SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productUpdate_product_attributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productUpdate_product_attributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productUpdate_product_attributes_attribute {
__typename: "Attribute";
id: string;
@ -41,7 +61,7 @@ export interface SimpleProductUpdate_productUpdate_product_attributes_attribute
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productUpdate_product_attributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productUpdate_product_attributes_attribute_values | null;
}
export interface SimpleProductUpdate_productUpdate_product_attributes_values_file {
@ -66,27 +86,47 @@ export interface SimpleProductUpdate_productUpdate_product_attributes {
values: (SimpleProductUpdate_productUpdate_product_attributes_values | null)[];
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_file {
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values {
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_file | null;
file: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges_node;
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_pageInfo;
edges: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values_edges[];
}
export interface SimpleProductUpdate_productUpdate_product_productType_variantAttributes {
__typename: "Attribute";
id: string;
name: string | null;
values: (SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values | null)[] | null;
values: SimpleProductUpdate_productUpdate_product_productType_variantAttributes_values | null;
}
export interface SimpleProductUpdate_productUpdate_product_productType_taxType {
@ -313,22 +353,42 @@ export interface SimpleProductUpdate_productVariantUpdate_productVariant_private
value: string;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -338,7 +398,7 @@ export interface SimpleProductUpdate_productVariantUpdate_productVariant_selecti
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_values_file {
@ -363,22 +423,42 @@ export interface SimpleProductUpdate_productVariantUpdate_productVariant_selecti
values: (SimpleProductUpdate_productVariantUpdate_productVariant_selectionAttributes_values | null)[];
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -388,7 +468,7 @@ export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSele
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_values_file {
@ -604,22 +684,42 @@ export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_p
value: string;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -629,7 +729,7 @@ export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_s
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_values_file {
@ -654,22 +754,42 @@ export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_s
values: (SimpleProductUpdate_productVariantStocksCreate_productVariant_selectionAttributes_values | null)[];
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -679,7 +799,7 @@ export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_n
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksCreate_productVariant_nonSelectionAttributes_values_file {
@ -894,22 +1014,42 @@ export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_p
value: string;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -919,7 +1059,7 @@ export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_s
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_values_file {
@ -944,22 +1084,42 @@ export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_s
values: (SimpleProductUpdate_productVariantStocksDelete_productVariant_selectionAttributes_values | null)[];
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -969,7 +1129,7 @@ export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_n
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksDelete_productVariant_nonSelectionAttributes_values_file {
@ -1185,22 +1345,42 @@ export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_p
value: string;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -1210,7 +1390,7 @@ export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_s
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_values_file {
@ -1235,22 +1415,42 @@ export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_s
values: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_values | null)[];
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values {
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -1260,7 +1460,7 @@ export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_n
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface SimpleProductUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_values_file {
@ -1473,4 +1673,8 @@ export interface SimpleProductUpdateVariables {
addStocks: StockInput[];
deleteStocks: string[];
updateStocks: StockInput[];
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -28,22 +28,42 @@ export interface VariantCreate_productVariantCreate_productVariant_privateMetada
value: string;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_file {
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values {
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_file | null;
file: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -53,7 +73,7 @@ export interface VariantCreate_productVariantCreate_productVariant_selectionAttr
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: VariantCreate_productVariantCreate_productVariant_selectionAttributes_attribute_values | null;
}
export interface VariantCreate_productVariantCreate_productVariant_selectionAttributes_values_file {
@ -78,22 +98,42 @@ export interface VariantCreate_productVariantCreate_productVariant_selectionAttr
values: (VariantCreate_productVariantCreate_productVariant_selectionAttributes_values | null)[];
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values {
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -103,7 +143,7 @@ export interface VariantCreate_productVariantCreate_productVariant_nonSelectionA
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface VariantCreate_productVariantCreate_productVariant_nonSelectionAttributes_values_file {
@ -306,4 +346,8 @@ export interface VariantCreate {
export interface VariantCreateVariables {
input: ProductVariantCreateInput;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductErrorCode, ProductMediaType } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: VariantMediaAssign
@ -15,131 +15,16 @@ export interface VariantMediaAssign_variantMediaAssign_errors {
field: string | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute_values | null)[] | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes {
__typename: "SelectedAttribute";
attribute: VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_attribute;
values: (VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes_values | null)[];
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes {
__typename: "SelectedAttribute";
attribute: VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_attribute;
values: (VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes_values | null)[];
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_media {
__typename: "ProductMedia";
id: string;
@ -150,62 +35,11 @@ export interface VariantMediaAssign_variantMediaAssign_productVariant_product_me
oembedData: any;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_thumbnail {
__typename: "Image";
url: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_start_net;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_stop_net;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_start | null;
stop: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange_stop | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing_priceRange | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings {
__typename: "ProductChannelListing";
publicationDate: any | null;
isPublished: boolean;
channel: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_channel;
pricing: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings_pricing | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_product_variants_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
@ -222,75 +56,15 @@ export interface VariantMediaAssign_variantMediaAssign_productVariant_product_va
export interface VariantMediaAssign_variantMediaAssign_productVariant_product {
__typename: "Product";
id: string;
defaultVariant: VariantMediaAssign_variantMediaAssign_productVariant_product_defaultVariant | null;
media: VariantMediaAssign_variantMediaAssign_productVariant_product_media[] | null;
name: string;
thumbnail: VariantMediaAssign_variantMediaAssign_productVariant_product_thumbnail | null;
channelListings: VariantMediaAssign_variantMediaAssign_productVariant_product_channelListings[] | null;
variants: (VariantMediaAssign_variantMediaAssign_productVariant_product_variants | null)[] | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_channelListings {
__typename: "ProductVariantChannelListing";
channel: VariantMediaAssign_variantMediaAssign_productVariant_channelListings_channel;
price: VariantMediaAssign_variantMediaAssign_productVariant_channelListings_price | null;
costPrice: VariantMediaAssign_variantMediaAssign_productVariant_channelListings_costPrice | null;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: VariantMediaAssign_variantMediaAssign_productVariant_stocks_warehouse;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface VariantMediaAssign_variantMediaAssign_productVariant {
__typename: "ProductVariant";
id: string;
metadata: (VariantMediaAssign_variantMediaAssign_productVariant_metadata | null)[];
privateMetadata: (VariantMediaAssign_variantMediaAssign_productVariant_privateMetadata | null)[];
selectionAttributes: VariantMediaAssign_variantMediaAssign_productVariant_selectionAttributes[];
nonSelectionAttributes: VariantMediaAssign_variantMediaAssign_productVariant_nonSelectionAttributes[];
media: VariantMediaAssign_variantMediaAssign_productVariant_media[] | null;
name: string;
product: VariantMediaAssign_variantMediaAssign_productVariant_product;
channelListings: VariantMediaAssign_variantMediaAssign_productVariant_channelListings[] | null;
sku: string;
stocks: (VariantMediaAssign_variantMediaAssign_productVariant_stocks | null)[] | null;
trackInventory: boolean;
weight: VariantMediaAssign_variantMediaAssign_productVariant_weight | null;
}
export interface VariantMediaAssign_variantMediaAssign {

View file

@ -3,7 +3,7 @@
// @generated
// This file was automatically generated and should not be edited.
import { ProductErrorCode, AttributeInputTypeEnum, AttributeEntityTypeEnum, MeasurementUnitsEnum, ProductMediaType, WeightUnitsEnum } from "./../../types/globalTypes";
import { ProductErrorCode, ProductMediaType } from "./../../types/globalTypes";
// ====================================================
// GraphQL mutation operation: VariantMediaUnassign
@ -15,131 +15,16 @@ export interface VariantMediaUnassign_variantMediaUnassign_errors {
field: string | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_metadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_privateMetadata {
__typename: "MetadataItem";
key: string;
value: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute_values | null)[] | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes {
__typename: "SelectedAttribute";
attribute: VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_attribute;
values: (VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes_values | null)[];
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
name: string | null;
slug: string | null;
inputType: AttributeInputTypeEnum | null;
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_values_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_values {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_values_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes {
__typename: "SelectedAttribute";
attribute: VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_attribute;
values: (VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes_values | null)[];
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_defaultVariant {
__typename: "ProductVariant";
id: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_media {
__typename: "ProductMedia";
id: string;
@ -150,62 +35,11 @@ export interface VariantMediaUnassign_variantMediaUnassign_productVariant_produc
oembedData: any;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_thumbnail {
__typename: "Image";
url: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_start_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_start {
__typename: "TaxedMoney";
net: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_start_net;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_stop_net {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_stop {
__typename: "TaxedMoney";
net: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_stop_net;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange {
__typename: "TaxedMoneyRange";
start: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_start | null;
stop: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange_stop | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing {
__typename: "ProductPricingInfo";
priceRange: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing_priceRange | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings {
__typename: "ProductChannelListing";
publicationDate: any | null;
isPublished: boolean;
channel: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_channel;
pricing: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings_pricing | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product_variants_media {
__typename: "ProductMedia";
id: string;
alt: string;
sortOrder: number | null;
url: string;
type: ProductMediaType;
oembedData: any;
@ -222,75 +56,15 @@ export interface VariantMediaUnassign_variantMediaUnassign_productVariant_produc
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_product {
__typename: "Product";
id: string;
defaultVariant: VariantMediaUnassign_variantMediaUnassign_productVariant_product_defaultVariant | null;
media: VariantMediaUnassign_variantMediaUnassign_productVariant_product_media[] | null;
name: string;
thumbnail: VariantMediaUnassign_variantMediaUnassign_productVariant_product_thumbnail | null;
channelListings: VariantMediaUnassign_variantMediaUnassign_productVariant_product_channelListings[] | null;
variants: (VariantMediaUnassign_variantMediaUnassign_productVariant_product_variants | null)[] | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_channel {
__typename: "Channel";
id: string;
name: string;
currencyCode: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_price {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_costPrice {
__typename: "Money";
amount: number;
currency: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings {
__typename: "ProductVariantChannelListing";
channel: VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_channel;
price: VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_price | null;
costPrice: VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings_costPrice | null;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_stocks_warehouse {
__typename: "Warehouse";
id: string;
name: string;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_stocks {
__typename: "Stock";
id: string;
quantity: number;
quantityAllocated: number;
warehouse: VariantMediaUnassign_variantMediaUnassign_productVariant_stocks_warehouse;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant_weight {
__typename: "Weight";
unit: WeightUnitsEnum;
value: number;
}
export interface VariantMediaUnassign_variantMediaUnassign_productVariant {
__typename: "ProductVariant";
id: string;
metadata: (VariantMediaUnassign_variantMediaUnassign_productVariant_metadata | null)[];
privateMetadata: (VariantMediaUnassign_variantMediaUnassign_productVariant_privateMetadata | null)[];
selectionAttributes: VariantMediaUnassign_variantMediaUnassign_productVariant_selectionAttributes[];
nonSelectionAttributes: VariantMediaUnassign_variantMediaUnassign_productVariant_nonSelectionAttributes[];
media: VariantMediaUnassign_variantMediaUnassign_productVariant_media[] | null;
name: string;
product: VariantMediaUnassign_variantMediaUnassign_productVariant_product;
channelListings: VariantMediaUnassign_variantMediaUnassign_productVariant_channelListings[] | null;
sku: string;
stocks: (VariantMediaUnassign_variantMediaUnassign_productVariant_stocks | null)[] | null;
trackInventory: boolean;
weight: VariantMediaUnassign_variantMediaUnassign_productVariant_weight | null;
}
export interface VariantMediaUnassign_variantMediaUnassign {

View file

@ -28,22 +28,42 @@ export interface VariantUpdate_productVariantUpdate_productVariant_privateMetada
value: string;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_file {
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values {
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_file | null;
file: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -53,7 +73,7 @@ export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttr
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_attribute_values | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_values_file {
@ -78,22 +98,42 @@ export interface VariantUpdate_productVariantUpdate_productVariant_selectionAttr
values: (VariantUpdate_productVariantUpdate_productVariant_selectionAttributes_values | null)[];
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values {
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -103,7 +143,7 @@ export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionA
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface VariantUpdate_productVariantUpdate_productVariant_nonSelectionAttributes_values_file {
@ -319,22 +359,42 @@ export interface VariantUpdate_productVariantStocksUpdate_productVariant_private
value: string;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_file {
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values {
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_file | null;
file: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges_node;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_pageInfo;
edges: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values_edges[];
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -344,7 +404,7 @@ export interface VariantUpdate_productVariantStocksUpdate_productVariant_selecti
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values | null)[] | null;
values: VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_attribute_values | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_values_file {
@ -369,22 +429,42 @@ export interface VariantUpdate_productVariantStocksUpdate_productVariant_selecti
values: (VariantUpdate_productVariantStocksUpdate_productVariant_selectionAttributes_values | null)[];
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_file {
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values {
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_file | null;
file: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
cursor: string;
node: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges_node;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values {
__typename: "AttributeValueCountableConnection";
pageInfo: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_pageInfo;
edges: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values_edges[];
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute {
__typename: "Attribute";
id: string;
@ -394,7 +474,7 @@ export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSele
entityType: AttributeEntityTypeEnum | null;
valueRequired: boolean;
unit: MeasurementUnitsEnum | null;
values: (VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values | null)[] | null;
values: VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_attribute_values | null;
}
export interface VariantUpdate_productVariantStocksUpdate_productVariant_nonSelectionAttributes_values_file {
@ -672,4 +752,8 @@ export interface VariantUpdateVariables {
trackInventory: boolean;
stocks: StockInput[];
weight?: any | null;
firstValues?: number | null;
afterValues?: string | null;
lastValues?: number | null;
beforeValues?: string | null;
}

View file

@ -17,7 +17,7 @@ import {
ProductDetails_product_variants
} from "@saleor/products/types/ProductDetails";
import { StockInput } from "@saleor/types/globalTypes";
import { mapMetadataItemToInput } from "@saleor/utils/maps";
import { mapEdgesToItems, mapMetadataItemToInput } from "@saleor/utils/maps";
import { ProductStockInput } from "../components/ProductStocks";
import { ProductType_productType_productAttributes } from "../types/ProductType";
@ -52,7 +52,7 @@ export function getAttributeInputFromProduct(
inputType: attribute.attribute.inputType,
isRequired: attribute.attribute.valueRequired,
selectedValues: attribute.values,
values: attribute.attribute.values,
values: mapEdgesToItems(attribute.attribute.values),
unit: attribute.attribute.unit
},
id: attribute.attribute.id,
@ -71,7 +71,7 @@ export function getAttributeInputFromProductType(
entityType: attribute.entityType,
inputType: attribute.inputType,
isRequired: attribute.valueRequired,
values: attribute.values,
values: mapEdgesToItems(attribute.values),
unit: attribute.unit
},
id: attribute.id,
@ -89,7 +89,7 @@ export function getAttributeInputFromAttributes(
entityType: attribute.entityType,
inputType: attribute.inputType,
isRequired: attribute.valueRequired,
values: attribute.values,
values: mapEdgesToItems(attribute.values),
unit: attribute.unit,
variantAttributeScope
},
@ -109,7 +109,7 @@ export function getAttributeInputFromSelectedAttributes(
inputType: attribute.attribute.inputType,
isRequired: attribute.attribute.valueRequired,
selectedValues: attribute.values,
values: attribute.attribute.values,
values: mapEdgesToItems(attribute.attribute.values),
unit: attribute.attribute.unit,
variantAttributeScope
},

View file

@ -25,6 +25,7 @@ import {
productListUrl,
productUrl
} from "@saleor/products/urls";
import useAttributeValueSearch from "@saleor/searches/useAttributeValueSearch";
import useCategorySearch from "@saleor/searches/useCategorySearch";
import useCollectionSearch from "@saleor/searches/useCollectionSearch";
import usePageSearch from "@saleor/searches/usePageSearch";
@ -41,7 +42,7 @@ import {
} from "@saleor/utils/metadata/updateMetadata";
import { useWarehouseList } from "@saleor/warehouses/queries";
import { warehouseAddPath } from "@saleor/warehouses/urls";
import React from "react";
import React, { useState } from "react";
import { useIntl } from "react-intl";
import { createHandler } from "./handlers";
@ -102,6 +103,18 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
} = useProductSearch({
variables: DEFAULT_INITIAL_SEARCH_DATA
});
const [selectedAttribute, setSelectedAttribute] = useState<string>();
const {
loadMore: loadMoreAttributeValues,
search: searchAttributeValues,
result: searchAttributeValuesOpts
} = useAttributeValueSearch({
variables: {
id: selectedAttribute,
...DEFAULT_INITIAL_SEARCH_DATA
},
skip: !selectedAttribute
});
const warehouses = useWarehouseList({
displayLoader: true,
variables: {
@ -113,7 +126,8 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
const taxTypes = useTaxTypeList({});
const { data: selectedProductType } = useProductTypeQuery({
variables: {
id: selectedProductTypeId
id: selectedProductTypeId,
firstValues: 10
},
skip: !selectedProductTypeId
});
@ -243,6 +257,12 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
loading: searchProductsOpts.loading,
onFetchMore: loadMoreProducts
};
const fetchMoreAttributeValues = {
hasMore: !!searchAttributeValuesOpts.data?.attribute?.values?.pageInfo
?.hasNextPage,
loading: !!searchAttributeValuesOpts.loading,
onFetchMore: loadMoreAttributeValues
};
const loading =
uploadFileOpts.loading ||
@ -281,6 +301,9 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
currentChannels={currentChannels}
categories={mapEdgesToItems(searchCategoryOpts?.data?.search)}
collections={mapEdgesToItems(searchCollectionOpts?.data?.search)}
attributeValues={mapEdgesToItems(
searchAttributeValuesOpts?.data?.attribute.values
)}
loading={loading}
channelsErrors={
updateVariantChannelsOpts.data?.productVariantChannelListingUpdate
@ -293,6 +316,7 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
fetchCategories={searchCategory}
fetchCollections={searchCollection}
fetchProductTypes={searchProductTypes}
fetchAttributeValues={searchAttributeValues}
header={intl.formatMessage({
defaultMessage: "New Product",
description: "page header"
@ -320,9 +344,11 @@ export const ProductCreateView: React.FC<ProductCreateProps> = ({ params }) => {
fetchMoreReferencePages={fetchMoreReferencePages}
fetchReferenceProducts={searchProducts}
fetchMoreReferenceProducts={fetchMoreReferenceProducts}
fetchMoreAttributeValues={fetchMoreAttributeValues}
onCloseDialog={() => navigate(productAddUrl())}
selectedProductType={selectedProductType?.productType}
onSelectProductType={id => setSelectedProductTypeId(id)}
onAttributeSelect={setSelectedAttribute}
/>
</>
);

View file

@ -95,7 +95,11 @@ export const ProductList: React.FC<ProductListProps> = ({ params }) => {
const intl = useIntl();
const {
data: initialFilterAttributes
} = useInitialProductFilterAttributesQuery({});
} = useInitialProductFilterAttributesQuery({
variables: {
firstValues: 100
}
});
const {
data: initialFilterCategories
} = useInitialProductFilterCategoriesQuery({

View file

@ -68,9 +68,9 @@ export function getFilterOpts(
.sort((a, b) => (a.name > b.name ? 1 : -1))
.map(attr => ({
active: maybe(() => params.attributes[attr.slug].length > 0, false),
choices: attr.values.map(val => ({
label: val.name,
value: val.slug
choices: attr.values?.edges?.map(val => ({
label: val.node.name,
value: val.node.slug
})),
name: attr.name,
slug: attr.slug,

View file

@ -9,13 +9,16 @@ import { StockAvailability } from "@saleor/types/globalTypes";
export const productListFilterOpts: ProductListFilterOpts = {
attributes: attributes.map(attr => ({
active: false,
choices: attr.values.map(val => ({
label: val.name,
value: val.slug
choices: attr.values.edges.map(val => ({
label: val.node.name,
value: val.node.slug
})),
name: attr.name,
slug: attr.slug,
value: [attr.values[0].slug, attr.values.length > 2 && attr.values[2].slug]
value: [
attr.values.edges[0].node.slug,
attr.values.edges.length > 2 && attr.values.edges[2].node.slug
]
})),
categories: {
...fetchMoreProps,

View file

@ -38,6 +38,7 @@ import {
useSimpleProductUpdateMutation,
useVariantCreateMutation
} from "@saleor/products/mutations";
import useAttributeValueSearch from "@saleor/searches/useAttributeValueSearch";
import useCategorySearch from "@saleor/searches/useCategorySearch";
import useCollectionSearch from "@saleor/searches/useCollectionSearch";
import usePageSearch from "@saleor/searches/usePageSearch";
@ -52,7 +53,7 @@ import {
} from "@saleor/utils/metadata/updateMetadata";
import { useWarehouseList } from "@saleor/warehouses/queries";
import { warehouseAddPath } from "@saleor/warehouses/urls";
import React from "react";
import React, { useState } from "react";
import { defineMessages, FormattedMessage, useIntl } from "react-intl";
import { getMutationState } from "../../../misc";
@ -140,6 +141,18 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
} = useProductSearch({
variables: DEFAULT_INITIAL_SEARCH_DATA
});
const [selectedAttribute, setSelectedAttribute] = useState<string>();
const {
loadMore: loadMoreAttributeValues,
search: searchAttributeValues,
result: searchAttributeValuesOpts
} = useAttributeValueSearch({
variables: {
id: selectedAttribute,
...DEFAULT_INITIAL_SEARCH_DATA
},
skip: !selectedAttribute
});
const warehouses = useWarehouseList({
displayLoader: true,
variables: {
@ -157,7 +170,10 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
const { availableChannels, channel } = useAppChannel();
const { data, loading, refetch } = useProductDetails({
displayLoader: true,
variables: { id }
variables: {
id,
firstValues: 10
}
});
const limitOpts = useShopLimitsQuery({
variables: {
@ -431,6 +447,10 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
const collections = mapEdgesToItems(searchCollectionsOpts?.data?.search);
const attributeValues = mapEdgesToItems(
searchAttributeValuesOpts?.data?.attribute.values
);
const errors = [
...(updateProductOpts.data?.productUpdate.errors || []),
...(updateSimpleProductOpts.data?.productUpdate.errors || []),
@ -467,6 +487,13 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
loadMoreProducts
);
const fetchMoreAttributeValues = {
hasMore: !!searchAttributeValuesOpts.data?.attribute?.values?.pageInfo
?.hasNextPage,
loading: !!searchAttributeValuesOpts.loading,
onFetchMore: loadMoreAttributeValues
};
return (
<>
<WindowTitle title={data?.product?.name} />
@ -512,6 +539,7 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
setChannelsData={setChannelsData}
categories={categories}
collections={collections}
attributeValues={attributeValues}
channelsWithVariantsData={channelsWithVariantsData}
defaultWeightUnit={shop?.defaultWeightUnit}
disabled={disableFormSave}
@ -519,6 +547,7 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
errors={errors}
fetchCategories={searchCategories}
fetchCollections={searchCollections}
fetchAttributeValues={searchAttributeValues}
limits={limitOpts.data?.shop.limits}
saveButtonBarState={formTransitionState}
media={data?.product?.media}
@ -574,7 +603,9 @@ export const ProductUpdate: React.FC<ProductUpdateProps> = ({ id, params }) => {
fetchMoreReferencePages={fetchMoreReferencePages}
fetchReferenceProducts={searchProducts}
fetchMoreReferenceProducts={fetchMoreReferenceProducts}
fetchMoreAttributeValues={fetchMoreAttributeValues}
onCloseDialog={() => navigate(productUrl(id))}
onAttributeSelect={setSelectedAttribute}
/>
<ActionDialog
open={params.action === "remove"}

View file

@ -145,7 +145,8 @@ export function createUpdateHandler(
},
slug: data.slug,
taxCode: data.changeTaxCode ? data.taxCode : null
}
},
firstValues: 10
};
if (product.productType.hasVariants) {
@ -161,7 +162,7 @@ export function createUpdateHandler(
attributes:
product.productType.variantAttributes?.map(attribute => ({
id: attribute.id,
values: attribute.values.map(value => value.slug)
values: attribute.values.edges.map(value => value.node.slug)
})) || [],
product: product.id,
sku: data.sku,

View file

@ -0,0 +1,60 @@
/* tslint:disable */
/* eslint-disable */
// @generated
// This file was automatically generated and should not be edited.
// ====================================================
// GraphQL query operation: SearchAttributeValues
// ====================================================
export interface SearchAttributeValues_attribute_values_edges_node_file {
__typename: "File";
url: string;
contentType: string | null;
}
export interface SearchAttributeValues_attribute_values_edges_node {
__typename: "AttributeValue";
id: string;
name: string | null;
slug: string | null;
file: SearchAttributeValues_attribute_values_edges_node_file | null;
reference: string | null;
richText: any | null;
}
export interface SearchAttributeValues_attribute_values_edges {
__typename: "AttributeValueCountableEdge";
node: SearchAttributeValues_attribute_values_edges_node;
}
export interface SearchAttributeValues_attribute_values_pageInfo {
__typename: "PageInfo";
endCursor: string | null;
hasNextPage: boolean;
hasPreviousPage: boolean;
startCursor: string | null;
}
export interface SearchAttributeValues_attribute_values {
__typename: "AttributeValueCountableConnection";
edges: SearchAttributeValues_attribute_values_edges[];
pageInfo: SearchAttributeValues_attribute_values_pageInfo;
}
export interface SearchAttributeValues_attribute {
__typename: "Attribute";
id: string;
values: SearchAttributeValues_attribute_values | null;
}
export interface SearchAttributeValues {
attribute: SearchAttributeValues_attribute | null;
}
export interface SearchAttributeValuesVariables {
id?: string | null;
after?: string | null;
first: number;
query: string;
}

View file

@ -0,0 +1,71 @@
import { attributeValueFragment } from "@saleor/fragments/attributes";
import { pageInfoFragment } from "@saleor/fragments/pageInfo";
import makeSearch from "@saleor/hooks/makeSearch";
import gql from "graphql-tag";
import {
SearchAttributeValues,
SearchAttributeValuesVariables
} from "./types/SearchAttributeValues";
export const searchAttributeValues = gql`
${pageInfoFragment}
${attributeValueFragment}
query SearchAttributeValues(
$id: ID
$after: String
$first: Int!
$query: String!
) {
attribute(id: $id) {
id
values(after: $after, first: $first, filter: { search: $query }) {
edges {
node {
...AttributeValueFragment
}
}
pageInfo {
...PageInfoFragment
}
}
}
}
`;
export default makeSearch<
SearchAttributeValues,
SearchAttributeValuesVariables
>(searchAttributeValues, result => {
if (result.data?.attribute.values.pageInfo.hasNextPage) {
result.loadMore(
(prev, next) => {
if (
prev.attribute.values.pageInfo.endCursor ===
next.attribute.values.pageInfo.endCursor
) {
return prev;
}
return {
...prev,
attribute: {
...prev.attribute,
values: {
...prev.attribute.values,
edges: [
...prev.attribute.values.edges,
...next.attribute.values.edges
],
pageInfo: next.attribute.values.pageInfo
}
}
};
},
{
...result.variables,
after: result.data.attribute.values.pageInfo.endCursor
}
);
}
});

View file

@ -34,9 +34,11 @@ storiesOf("Views / Products / Create product", module)
fetchCategories={() => undefined}
fetchCollections={() => undefined}
fetchProductTypes={() => undefined}
fetchAttributeValues={() => undefined}
fetchMoreCategories={fetchMoreProps}
fetchMoreCollections={fetchMoreProps}
fetchMoreProductTypes={fetchMoreProps}
fetchMoreAttributeValues={fetchMoreProps}
productTypes={productTypes}
categories={[product.category]}
onBack={() => undefined}
@ -50,9 +52,11 @@ storiesOf("Views / Products / Create product", module)
weightUnit="kg"
referencePages={[]}
referenceProducts={[]}
attributeValues={[]}
onAssignReferencesClick={() => undefined}
onCloseDialog={() => undefined}
onSelectProductType={() => undefined}
onAttributeSelect={() => undefined}
/>
))
.add("When loading", () => (
@ -67,9 +71,11 @@ storiesOf("Views / Products / Create product", module)
fetchCategories={() => undefined}
fetchCollections={() => undefined}
fetchProductTypes={() => undefined}
fetchAttributeValues={() => undefined}
fetchMoreCategories={fetchMoreProps}
fetchMoreCollections={fetchMoreProps}
fetchMoreProductTypes={fetchMoreProps}
fetchMoreAttributeValues={fetchMoreProps}
productTypes={productTypes}
categories={[product.category]}
onBack={() => undefined}
@ -83,9 +89,11 @@ storiesOf("Views / Products / Create product", module)
weightUnit="kg"
referencePages={[]}
referenceProducts={[]}
attributeValues={[]}
onAssignReferencesClick={() => undefined}
onCloseDialog={() => undefined}
onSelectProductType={() => undefined}
onAttributeSelect={() => undefined}
/>
))
.add("form errors", () => (
@ -114,10 +122,12 @@ storiesOf("Views / Products / Create product", module)
fetchCategories={() => undefined}
fetchCollections={() => undefined}
fetchProductTypes={() => undefined}
fetchAttributeValues={() => undefined}
fetchMoreCategories={fetchMoreProps}
fetchMoreCollections={fetchMoreProps}
fetchMoreProductTypes={fetchMoreProps}
selectedProductType={productTypeSearch}
fetchMoreAttributeValues={fetchMoreProps}
productTypes={productTypes}
categories={[product.category]}
onBack={() => undefined}
@ -131,8 +141,10 @@ storiesOf("Views / Products / Create product", module)
weightUnit="kg"
referencePages={[]}
referenceProducts={[]}
attributeValues={[]}
onAssignReferencesClick={() => undefined}
onCloseDialog={() => undefined}
onSelectProductType={() => undefined}
onAttributeSelect={() => undefined}
/>
));

View file

@ -47,8 +47,10 @@ const props: ProductUpdatePageProps = {
errors: [],
fetchCategories: () => undefined,
fetchCollections: () => undefined,
fetchAttributeValues: () => undefined,
fetchMoreCategories: fetchMoreProps,
fetchMoreCollections: fetchMoreProps,
fetchMoreAttributeValues: fetchMoreProps,
hasChannelChanged: false,
header: product.name,
media: product.media,
@ -68,6 +70,7 @@ const props: ProductUpdatePageProps = {
onVariantsAdd: () => undefined,
onWarehouseConfigure: () => undefined,
openChannelsModal: () => undefined,
onAttributeSelect: () => undefined,
placeholderImage,
product,
referencePages: [],
@ -76,7 +79,8 @@ const props: ProductUpdatePageProps = {
selectedChannelId: "123",
taxTypes,
variants: product.variants,
warehouses: warehouseList
warehouses: warehouseList,
attributeValues: []
};
storiesOf("Views / Products / Product edit", module)