@propeller-commerce/propeller-sdk-v2 0.14.0 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/CHANGELOG.md +118 -0
  2. package/README.md +19 -0
  3. package/dist/cjs/generated/operationVariables.d.ts +21 -0
  4. package/dist/cjs/generated/operations/category.js +30 -1
  5. package/dist/cjs/generated/operations/categoryAddProductsClusters.js +30 -1
  6. package/dist/cjs/generated/operations/categoryBySlug.js +30 -1
  7. package/dist/cjs/generated/operations/categoryBySource.js +30 -1
  8. package/dist/cjs/generated/operations/categoryChildren.js +30 -1
  9. package/dist/cjs/generated/operations/categoryCreate.js +30 -1
  10. package/dist/cjs/generated/operations/categoryHierarchy.js +30 -1
  11. package/dist/cjs/generated/operations/categoryMoveAbove.js +30 -1
  12. package/dist/cjs/generated/operations/categoryMoveBelow.js +30 -1
  13. package/dist/cjs/generated/operations/categoryRemoveProductsClusters.js +30 -1
  14. package/dist/cjs/generated/operations/categoryUpdate.js +30 -1
  15. package/dist/cjs/generated/operations/crossupsell.js +30 -1
  16. package/dist/cjs/generated/operations/crossupsellCreate.js +30 -1
  17. package/dist/cjs/generated/operations/crossupsellUpdate.js +30 -1
  18. package/dist/cjs/generated/operations/crossupsells.js +30 -1
  19. package/dist/cjs/generated/operations/favoriteList.js +30 -1
  20. package/dist/cjs/generated/operations/machine.js +30 -1
  21. package/dist/cjs/generated/operations/machineCreate.js +30 -1
  22. package/dist/cjs/generated/operations/machineUpsert.js +30 -1
  23. package/dist/cjs/generated/operations/machines.js +30 -1
  24. package/dist/cjs/generated/operations/products.js +30 -1
  25. package/dist/cjs/service/CategoryService.d.ts +2 -0
  26. package/dist/cjs/service/CrossupsellService.d.ts +3 -0
  27. package/dist/cjs/service/ProductService.d.ts +2 -0
  28. package/dist/cjs/type/CategoryProductSearchInput.d.ts +6 -0
  29. package/dist/cjs/type/ProductSearchByCategoryInput.d.ts +6 -0
  30. package/dist/cjs/type/ProductSearchInput.d.ts +6 -0
  31. package/dist/cjs/type/ProductSearchInventoryFilterInput.d.ts +30 -0
  32. package/dist/cjs/type/ProductSearchInventoryFilterInput.js +2 -0
  33. package/dist/cjs/type/ProductSearchSearchInput.d.ts +6 -0
  34. package/dist/cjs/type/SparePartsMachineProductSearchInput.d.ts +6 -0
  35. package/dist/cjs/type/index.d.ts +1 -0
  36. package/dist/cjs/type/index.js +1 -0
  37. package/dist/esm/generated/operations/category.js +30 -1
  38. package/dist/esm/generated/operations/categoryAddProductsClusters.js +30 -1
  39. package/dist/esm/generated/operations/categoryBySlug.js +30 -1
  40. package/dist/esm/generated/operations/categoryBySource.js +30 -1
  41. package/dist/esm/generated/operations/categoryChildren.js +30 -1
  42. package/dist/esm/generated/operations/categoryCreate.js +30 -1
  43. package/dist/esm/generated/operations/categoryHierarchy.js +30 -1
  44. package/dist/esm/generated/operations/categoryMoveAbove.js +30 -1
  45. package/dist/esm/generated/operations/categoryMoveBelow.js +30 -1
  46. package/dist/esm/generated/operations/categoryRemoveProductsClusters.js +30 -1
  47. package/dist/esm/generated/operations/categoryUpdate.js +30 -1
  48. package/dist/esm/generated/operations/crossupsell.js +30 -1
  49. package/dist/esm/generated/operations/crossupsellCreate.js +30 -1
  50. package/dist/esm/generated/operations/crossupsellUpdate.js +30 -1
  51. package/dist/esm/generated/operations/crossupsells.js +30 -1
  52. package/dist/esm/generated/operations/favoriteList.js +30 -1
  53. package/dist/esm/generated/operations/machine.js +30 -1
  54. package/dist/esm/generated/operations/machineCreate.js +30 -1
  55. package/dist/esm/generated/operations/machineUpsert.js +30 -1
  56. package/dist/esm/generated/operations/machines.js +30 -1
  57. package/dist/esm/generated/operations/products.js +30 -1
  58. package/dist/esm/type/ProductSearchInventoryFilterInput.js +1 -0
  59. package/dist/esm/type/index.js +1 -0
  60. package/package.json +1 -1
@@ -81,6 +81,11 @@ fragment ProductGridFields on Product {
81
81
  ...IBaseProductFields
82
82
  productId
83
83
  categoryId
84
+ attributes(input: \$attributeResultSearchInput) {
85
+ items {
86
+ ...AttributeResultGridFields
87
+ }
88
+ }
84
89
  inventory {
85
90
  ...ProductInventoryFields
86
91
  }
@@ -129,6 +134,30 @@ fragment ProductGridFields on Product {
129
134
  containerClass
130
135
  }
131
136
 
137
+ fragment AttributeResultGridFields on AttributeResult {
138
+ attributeDescription {
139
+ name
140
+ }
141
+ value {
142
+ __typename
143
+ ... on AttributeTextValue {
144
+ textValues {
145
+ language
146
+ values
147
+ }
148
+ }
149
+ ... on AttributeEnumValue {
150
+ enumValues
151
+ }
152
+ ... on AttributeIntValue {
153
+ intValue
154
+ }
155
+ ... on AttributeDecimalValue {
156
+ decimalValue
157
+ }
158
+ }
159
+ }
160
+
132
161
  fragment ProductInventoryFields on ProductInventory {
133
162
  productId
134
163
  totalQuantity
@@ -329,7 +358,7 @@ fragment AttributeFilterFields on AttributeFilter {
329
358
  }
330
359
  }
331
360
 
332
- query products(\$input: ProductSearchInput, \$language: String, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$filterAvailableAttributeInput: FilterAvailableAttributeInput) {
361
+ query products(\$input: ProductSearchInput, \$language: String, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$attributeResultSearchInput: AttributeResultSearchInput) {
333
362
  products(input: \$input) {
334
363
  ...ProductsResponseFields
335
364
  }
@@ -29,6 +29,8 @@ export interface CategoryQueryVariables {
29
29
  priceCalculateProductInput?: PriceCalculateProductInput;
30
30
  /** Category product search input */
31
31
  categoryProductSearchInput?: CategoryProductSearchInput;
32
+ /** Attribute search input — controls the attributes returned on grid products */
33
+ attributeResultSearchInput?: AttributeResultSearchInput;
32
34
  /** Image search filters */
33
35
  imageSearchFilters?: MediaImageProductSearchInput;
34
36
  /** Image transformation filters */
@@ -1,3 +1,4 @@
1
+ import { AttributeResultSearchInput } from '../type/AttributeResultSearchInput';
1
2
  import { Crossupsell } from '../type/Crossupsell';
2
3
  import { CrossupsellsResponse } from '../type/CrossupsellsResponse';
3
4
  import { CrossupsellSearchInput } from '../type/CrossupsellSearchInput';
@@ -16,6 +17,8 @@ export interface CrossupsellsQueryVariables {
16
17
  imageVariantFilters?: TransformationsInput;
17
18
  /** Price calculate product input */
18
19
  priceCalculateProductInput?: PriceCalculateProductInput;
20
+ /** Attribute search input — controls the attributes returned on grid products */
21
+ attributeResultSearchInput?: AttributeResultSearchInput;
19
22
  }
20
23
  import { GraphQLClient } from '../client/GraphQLClient';
21
24
  import type { CrossupsellCreateVariables, CrossupsellUpdateVariables, CrossupsellVariables } from '../generated/operationVariables';
@@ -81,6 +81,8 @@ export interface ProductsQueryVariables {
81
81
  language?: string;
82
82
  /** Price calculation input */
83
83
  priceCalculateProductInput?: PriceCalculateProductInput;
84
+ /** Attribute search input — controls the attributes returned on grid products */
85
+ attributeResultSearchInput?: AttributeResultSearchInput;
84
86
  /** Image search filters */
85
87
  imageSearchFilters?: MediaImageProductSearchInput;
86
88
  /** Image transformation filters. Optional — the SDK defaults this to
@@ -7,6 +7,7 @@ import { ProductPriceFilterInput } from './ProductPriceFilterInput';
7
7
  import { ProductSortInput } from './ProductSortInput';
8
8
  import { SearchFieldsInput } from './SearchFieldsInput';
9
9
  import { DateSearchInput } from './DateSearchInput';
10
+ import { ProductSearchInventoryFilterInput } from './ProductSearchInventoryFilterInput';
10
11
  /**
11
12
  Input object for CategoryProductSearchInput
12
13
  */
@@ -76,4 +77,9 @@ export interface CategoryProductSearchInput {
76
77
  skus?: string[];
77
78
  /** [Deprecated] Category path for hierarchical navigation. */
78
79
  path?: string;
80
+ /** Server-side stock filter. Operators are inclusive: `greaterThan: N` is
81
+ stock >= N and `lessThan: N` is stock <= N. Never-stocked products count
82
+ as 0. Filtering is applied upstream, so `itemsFound` / `pages` reflect
83
+ the filtered set. */
84
+ inventory?: ProductSearchInventoryFilterInput;
79
85
  }
@@ -8,6 +8,7 @@ import { ProductSearchSortInput } from './ProductSearchSortInput';
8
8
  import { ProductSearchTextFilterInput } from './ProductSearchTextFilterInput';
9
9
  import { ProductStatus } from '../enum/ProductStatus';
10
10
  import { YesNo } from '../enum/YesNo';
11
+ import { ProductSearchInventoryFilterInput } from './ProductSearchInventoryFilterInput';
11
12
  /**
12
13
  Input object for ProductSearchByCategoryInput
13
14
  */
@@ -82,4 +83,9 @@ export interface ProductSearchByCategoryInput {
82
83
  applyOrderlists?: boolean;
83
84
  /** Order list IDs to apply for filtering */
84
85
  orderlistIds?: number[];
86
+ /** Server-side stock filter. Operators are inclusive: `greaterThan: N` is
87
+ stock >= N and `lessThan: N` is stock <= N. Never-stocked products count
88
+ as 0. Filtering is applied upstream, so `itemsFound` / `pages` reflect
89
+ the filtered set. */
90
+ inventory?: ProductSearchInventoryFilterInput;
85
91
  }
@@ -7,6 +7,7 @@ import { ProductPriceFilterInput } from './ProductPriceFilterInput';
7
7
  import { ProductSortInput } from './ProductSortInput';
8
8
  import { SearchFieldsInput } from './SearchFieldsInput';
9
9
  import { DateSearchInput } from './DateSearchInput';
10
+ import { ProductSearchInventoryFilterInput } from './ProductSearchInventoryFilterInput';
10
11
  /**
11
12
  Input object for ProductSearchInput
12
13
  */
@@ -78,4 +79,9 @@ export interface ProductSearchInput {
78
79
  applyOrderlists?: boolean;
79
80
  /** List orderlists to apply */
80
81
  orderlistIds?: number[];
82
+ /** Server-side stock filter. Operators are inclusive: `greaterThan: N` is
83
+ stock >= N and `lessThan: N` is stock <= N. Never-stocked products count
84
+ as 0. Filtering is applied upstream, so `itemsFound` / `pages` reflect
85
+ the filtered set. */
86
+ inventory?: ProductSearchInventoryFilterInput;
81
87
  }
@@ -0,0 +1,30 @@
1
+ import { NumberSearchInput } from './NumberSearchInput';
2
+ /**
3
+ Input object for ProductSearchInventoryFilterInput
4
+
5
+ Server-side stock filter for product search. Because the filtering happens
6
+ upstream, the pagination counts on the response (`itemsFound`, `pages`)
7
+ describe the *filtered* set, so they can be used directly for paging.
8
+
9
+ Products that were never stocked have no inventory record and count as **0**.
10
+
11
+ `NumberSearchInput` operators are inclusive despite their names —
12
+ `greaterThan: N` means stock **>= N** and `lessThan: N` means stock **<= N**:
13
+
14
+ - In stock — `{ totalQuantity: { greaterThan: 1 } }` (>= 1). This includes
15
+ products with exactly 1 in stock, which is correct.
16
+ - Out of stock — `{ totalQuantity: { equal: 0 } }` (exactly 0, including
17
+ never-stocked products), or `{ totalQuantity: { lessThan: 0 } }` (<= 0) to
18
+ also catch negative balances.
19
+
20
+ Do **not** use `lessThan: 1` for out-of-stock: it means <= 1 and therefore
21
+ includes in-stock products that have exactly 1 remaining.
22
+ */
23
+ export interface ProductSearchInventoryFilterInput {
24
+ /** Filter on the total available quantity across all warehouses */
25
+ totalQuantity?: NumberSearchInput;
26
+ /** Filter on the local warehouse quantity */
27
+ localQuantity?: NumberSearchInput;
28
+ /** Filter on the supplier warehouse quantity */
29
+ supplierQuantity?: NumberSearchInput;
30
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -8,6 +8,7 @@ import { ProductSearchSortInput } from './ProductSearchSortInput';
8
8
  import { ProductSearchTextFilterInput } from './ProductSearchTextFilterInput';
9
9
  import { ProductStatus } from '../enum/ProductStatus';
10
10
  import { YesNo } from '../enum/YesNo';
11
+ import { ProductSearchInventoryFilterInput } from './ProductSearchInventoryFilterInput';
11
12
  /**
12
13
  Input object for ProductSearchSearchInput
13
14
  */
@@ -84,4 +85,9 @@ export interface ProductSearchSearchInput {
84
85
  applyOrderlists?: boolean;
85
86
  /** Order list IDs to apply for filtering */
86
87
  orderlistIds?: number[];
88
+ /** Server-side stock filter. Operators are inclusive: `greaterThan: N` is
89
+ stock >= N and `lessThan: N` is stock <= N. Never-stocked products count
90
+ as 0. Filtering is applied upstream, so `itemsFound` / `pages` reflect
91
+ the filtered set. */
92
+ inventory?: ProductSearchInventoryFilterInput;
87
93
  }
@@ -7,6 +7,7 @@ import { ProductPriceFilterInput } from './ProductPriceFilterInput';
7
7
  import { ProductSortInput } from './ProductSortInput';
8
8
  import { SearchFieldsInput } from './SearchFieldsInput';
9
9
  import { DateSearchInput } from './DateSearchInput';
10
+ import { ProductSearchInventoryFilterInput } from './ProductSearchInventoryFilterInput';
10
11
  /**
11
12
  Input object for SparePartsMachineProductSearchInput
12
13
  */
@@ -74,4 +75,9 @@ export interface SparePartsMachineProductSearchInput {
74
75
  skus?: string[];
75
76
  /** [Deprecated] Category path for hierarchical navigation. */
76
77
  path?: string;
78
+ /** Server-side stock filter. Operators are inclusive: `greaterThan: N` is
79
+ stock >= N and `lessThan: N` is stock <= N. Never-stocked products count
80
+ as 0. Filtering is applied upstream, so `itemsFound` / `pages` reflect
81
+ the filtered set. */
82
+ inventory?: ProductSearchInventoryFilterInput;
77
83
  }
@@ -531,6 +531,7 @@ export * from './ProductPrice';
531
531
  export * from './ProductPriceFilterInput';
532
532
  export * from './ProductRangeFilterInput';
533
533
  export * from './ProductSearchInput';
534
+ export * from './ProductSearchInventoryFilterInput';
534
535
  export * from './ProductSortInput';
535
536
  export * from './ProductTextFilterInput';
536
537
  export * from './ProductsResponse';
@@ -547,6 +547,7 @@ __exportStar(require("./ProductPrice"), exports);
547
547
  __exportStar(require("./ProductPriceFilterInput"), exports);
548
548
  __exportStar(require("./ProductRangeFilterInput"), exports);
549
549
  __exportStar(require("./ProductSearchInput"), exports);
550
+ __exportStar(require("./ProductSearchInventoryFilterInput"), exports);
550
551
  __exportStar(require("./ProductSortInput"), exports);
551
552
  __exportStar(require("./ProductTextFilterInput"), exports);
552
553
  __exportStar(require("./ProductsResponse"), exports);
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- query category(\$categoryId: Float, \$slug: String, \$hidden: YesNo, \$language: String, \$priceCalculateProductInput: PriceCalculateProductInput, \$categoryProductSearchInput: CategoryProductSearchInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$filterAvailableAttributeInput: FilterAvailableAttributeInput) {
653
+ query category(\$categoryId: Float, \$slug: String, \$hidden: YesNo, \$language: String, \$priceCalculateProductInput: PriceCalculateProductInput, \$categoryProductSearchInput: CategoryProductSearchInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  category(categoryId: \$categoryId, slug: \$slug, hidden: \$hidden) {
626
655
  ...CategoryFields
627
656
  }
@@ -382,6 +382,11 @@ fragment ProductGridFields on Product {
382
382
  ...IBaseProductFields
383
383
  productId
384
384
  categoryId
385
+ attributes(input: \$attributeResultSearchInput) {
386
+ items {
387
+ ...AttributeResultGridFields
388
+ }
389
+ }
385
390
  inventory {
386
391
  ...ProductInventoryFields
387
392
  }
@@ -430,6 +435,30 @@ fragment ProductGridFields on Product {
430
435
  containerClass
431
436
  }
432
437
 
438
+ fragment AttributeResultGridFields on AttributeResult {
439
+ attributeDescription {
440
+ name
441
+ }
442
+ value {
443
+ __typename
444
+ ... on AttributeTextValue {
445
+ textValues {
446
+ language
447
+ values
448
+ }
449
+ }
450
+ ... on AttributeEnumValue {
451
+ enumValues
452
+ }
453
+ ... on AttributeIntValue {
454
+ intValue
455
+ }
456
+ ... on AttributeDecimalValue {
457
+ decimalValue
458
+ }
459
+ }
460
+ }
461
+
433
462
  fragment ProductInventoryFields on ProductInventory {
434
463
  productId
435
464
  totalQuantity
@@ -630,7 +659,7 @@ fragment AttributeFilterFields on AttributeFilter {
630
659
  }
631
660
  }
632
661
 
633
- mutation categoryAddProductsClusters(\$id: Int!, \$input: CategoryAddProductsClustersInput!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
662
+ mutation categoryAddProductsClusters(\$id: Int!, \$input: CategoryAddProductsClustersInput!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
634
663
  categoryAddProductsClusters(id: \$id, input: \$input) {
635
664
  ...CategoryAddProductsClustersResponseFields
636
665
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- query categoryBySlug(\$slug: String!, \$language: String!, \$hidden: YesNo, \$categoryProductSearchInput: CategoryProductSearchInput, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ query categoryBySlug(\$slug: String!, \$language: String!, \$hidden: YesNo, \$categoryProductSearchInput: CategoryProductSearchInput, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryBySlug(slug: \$slug, language: \$language, hidden: \$hidden) {
626
655
  ...CategoryFields
627
656
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- query categoryBySource(\$source: SourceInput!, \$hidden: YesNo, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ query categoryBySource(\$source: SourceInput!, \$hidden: YesNo, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryBySource(source: \$source, hidden: \$hidden) {
626
655
  ...CategoryFields
627
656
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- query categoryChildren(\$categoryId: Int!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ query categoryChildren(\$categoryId: Int!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryChildren(categoryId: \$categoryId) {
626
655
  ...CategoryFields
627
656
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- mutation categoryCreate(\$input: CreateCategoryInput!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ mutation categoryCreate(\$input: CreateCategoryInput!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryCreate(input: \$input) {
626
655
  ...CategoryFields
627
656
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- query categoryHierarchy(\$categoryId: Int!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ query categoryHierarchy(\$categoryId: Int!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryHierarchy(categoryId: \$categoryId) {
626
655
  ...CategoryFields
627
656
  }
@@ -373,6 +373,11 @@ fragment ProductGridFields on Product {
373
373
  ...IBaseProductFields
374
374
  productId
375
375
  categoryId
376
+ attributes(input: \$attributeResultSearchInput) {
377
+ items {
378
+ ...AttributeResultGridFields
379
+ }
380
+ }
376
381
  inventory {
377
382
  ...ProductInventoryFields
378
383
  }
@@ -421,6 +426,30 @@ fragment ProductGridFields on Product {
421
426
  containerClass
422
427
  }
423
428
 
429
+ fragment AttributeResultGridFields on AttributeResult {
430
+ attributeDescription {
431
+ name
432
+ }
433
+ value {
434
+ __typename
435
+ ... on AttributeTextValue {
436
+ textValues {
437
+ language
438
+ values
439
+ }
440
+ }
441
+ ... on AttributeEnumValue {
442
+ enumValues
443
+ }
444
+ ... on AttributeIntValue {
445
+ intValue
446
+ }
447
+ ... on AttributeDecimalValue {
448
+ decimalValue
449
+ }
450
+ }
451
+ }
452
+
424
453
  fragment ProductInventoryFields on ProductInventory {
425
454
  productId
426
455
  totalQuantity
@@ -621,7 +650,7 @@ fragment AttributeFilterFields on AttributeFilter {
621
650
  }
622
651
  }
623
652
 
624
- mutation categoryMoveAbove(\$categoryUuid: String!, \$targetCategoryUuid: String!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!) {
653
+ mutation categoryMoveAbove(\$categoryUuid: String!, \$targetCategoryUuid: String!, \$categoryProductSearchInput: CategoryProductSearchInput, \$language: String, \$filterAvailableAttributeInput: FilterAvailableAttributeInput, \$priceCalculateProductInput: PriceCalculateProductInput, \$imageSearchFilters: MediaImageProductSearchInput, \$imageVariantFilters: TransformationsInput!, \$attributeResultSearchInput: AttributeResultSearchInput) {
625
654
  categoryMoveAbove(
626
655
  categoryUuid: \$categoryUuid
627
656
  targetCategoryUuid: \$targetCategoryUuid