@vendure-platform/create 0.5.0 → 1.0.0-major.202609091053.0.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 (463) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/README.md +53 -41
  3. package/dist/add-to-existing.d.ts +19 -13
  4. package/dist/add-to-existing.js +1 -1
  5. package/dist/assets/demo-data/assets/branding/logo.svg +4 -0
  6. package/dist/assets/demo-data/assets/images/absorbent-pad.webp +0 -0
  7. package/dist/assets/demo-data/assets/images/adjustable-wrench.webp +0 -0
  8. package/dist/assets/demo-data/assets/images/anchor-bolt.webp +0 -0
  9. package/dist/assets/demo-data/assets/images/angle-grinder.webp +0 -0
  10. package/dist/assets/demo-data/assets/images/barrier-tape.webp +0 -0
  11. package/dist/assets/demo-data/assets/images/bench-grinder.webp +0 -0
  12. package/dist/assets/demo-data/assets/images/bracket.webp +0 -0
  13. package/dist/assets/demo-data/assets/images/broom.webp +0 -0
  14. package/dist/assets/demo-data/assets/images/bucket.webp +0 -0
  15. package/dist/assets/demo-data/assets/images/cable-gland.webp +0 -0
  16. package/dist/assets/demo-data/assets/images/cable-tie.webp +0 -0
  17. package/dist/assets/demo-data/assets/images/cable-tray.webp +0 -0
  18. package/dist/assets/demo-data/assets/images/cable.webp +0 -0
  19. package/dist/assets/demo-data/assets/images/chimney-base-kit.webp +0 -0
  20. package/dist/assets/demo-data/assets/images/chimney-cowl-bird-guard.webp +0 -0
  21. package/dist/assets/demo-data/assets/images/chimney-cowl-open.webp +0 -0
  22. package/dist/assets/demo-data/assets/images/chimney-storm-collar.webp +0 -0
  23. package/dist/assets/demo-data/assets/images/chimney-wall-bracket.webp +0 -0
  24. package/dist/assets/demo-data/assets/images/circular-saw.webp +0 -0
  25. package/dist/assets/demo-data/assets/images/cleaning-spray.webp +0 -0
  26. package/dist/assets/demo-data/assets/images/conduit.webp +0 -0
  27. package/dist/assets/demo-data/assets/images/cordless-drill.webp +0 -0
  28. package/dist/assets/demo-data/assets/images/drill-bits.webp +0 -0
  29. package/dist/assets/demo-data/assets/images/dust-mask.webp +0 -0
  30. package/dist/assets/demo-data/assets/images/ear-defenders.webp +0 -0
  31. package/dist/assets/demo-data/assets/images/ear-plugs.webp +0 -0
  32. package/dist/assets/demo-data/assets/images/extension-lead.webp +0 -0
  33. package/dist/assets/demo-data/assets/images/eye-wash-station.webp +0 -0
  34. package/dist/assets/demo-data/assets/images/face-shield.webp +0 -0
  35. package/dist/assets/demo-data/assets/images/file-set.webp +0 -0
  36. package/dist/assets/demo-data/assets/images/first-aid-kit.webp +0 -0
  37. package/dist/assets/demo-data/assets/images/floor-sign.webp +0 -0
  38. package/dist/assets/demo-data/assets/images/flue-bend-45.webp +0 -0
  39. package/dist/assets/demo-data/assets/images/flue-bend-90.webp +0 -0
  40. package/dist/assets/demo-data/assets/images/flue-section-1000mm.webp +0 -0
  41. package/dist/assets/demo-data/assets/images/flue-section-250mm.webp +0 -0
  42. package/dist/assets/demo-data/assets/images/flue-section-500mm.webp +0 -0
  43. package/dist/assets/demo-data/assets/images/fuse.webp +0 -0
  44. package/dist/assets/demo-data/assets/images/glove-dispenser.webp +0 -0
  45. package/dist/assets/demo-data/assets/images/grinding-disc.webp +0 -0
  46. package/dist/assets/demo-data/assets/images/hacksaw.webp +0 -0
  47. package/dist/assets/demo-data/assets/images/hammer.webp +0 -0
  48. package/dist/assets/demo-data/assets/images/hand-sanitiser.webp +0 -0
  49. package/dist/assets/demo-data/assets/images/head-torch.webp +0 -0
  50. package/dist/assets/demo-data/assets/images/heat-gun.webp +0 -0
  51. package/dist/assets/demo-data/assets/images/hex-bolt.webp +0 -0
  52. package/dist/assets/demo-data/assets/images/hex-key-set.webp +0 -0
  53. package/dist/assets/demo-data/assets/images/hex-nut.webp +0 -0
  54. package/dist/assets/demo-data/assets/images/hi-vis-jacket.webp +0 -0
  55. package/dist/assets/demo-data/assets/images/hi-vis-vest.webp +0 -0
  56. package/dist/assets/demo-data/assets/images/hose-clamp.webp +0 -0
  57. package/dist/assets/demo-data/assets/images/impact-driver.webp +0 -0
  58. package/dist/assets/demo-data/assets/images/jigsaw.webp +0 -0
  59. package/dist/assets/demo-data/assets/images/junction-box.webp +0 -0
  60. package/dist/assets/demo-data/assets/images/knee-pads.webp +0 -0
  61. package/dist/assets/demo-data/assets/images/machine-screw.webp +0 -0
  62. package/dist/assets/demo-data/assets/images/made-to-order-configurable-chimney.webp +0 -0
  63. package/dist/assets/demo-data/assets/images/mallet.webp +0 -0
  64. package/dist/assets/demo-data/assets/images/mcb.webp +0 -0
  65. package/dist/assets/demo-data/assets/images/mop.webp +0 -0
  66. package/dist/assets/demo-data/assets/images/paper-towels.webp +0 -0
  67. package/dist/assets/demo-data/assets/images/pipe-wrench.webp +0 -0
  68. package/dist/assets/demo-data/assets/images/pliers-set.webp +0 -0
  69. package/dist/assets/demo-data/assets/images/pry-bar.webp +0 -0
  70. package/dist/assets/demo-data/assets/images/rcd.webp +0 -0
  71. package/dist/assets/demo-data/assets/images/reciprocating-saw.webp +0 -0
  72. package/dist/assets/demo-data/assets/images/rivet.webp +0 -0
  73. package/dist/assets/demo-data/assets/images/roof-flashing-high-pitch.webp +0 -0
  74. package/dist/assets/demo-data/assets/images/roof-flashing-low-pitch.webp +0 -0
  75. package/dist/assets/demo-data/assets/images/safety-boots.webp +0 -0
  76. package/dist/assets/demo-data/assets/images/safety-glasses.webp +0 -0
  77. package/dist/assets/demo-data/assets/images/safety-harness.webp +0 -0
  78. package/dist/assets/demo-data/assets/images/safety-helmet.webp +0 -0
  79. package/dist/assets/demo-data/assets/images/safety-sign.webp +0 -0
  80. package/dist/assets/demo-data/assets/images/sanding-disc.webp +0 -0
  81. package/dist/assets/demo-data/assets/images/saw-blade.webp +0 -0
  82. package/dist/assets/demo-data/assets/images/screwdriver-set.webp +0 -0
  83. package/dist/assets/demo-data/assets/images/screwdriver.webp +0 -0
  84. package/dist/assets/demo-data/assets/images/self-tapping-screw.webp +0 -0
  85. package/dist/assets/demo-data/assets/images/socket-set.webp +0 -0
  86. package/dist/assets/demo-data/assets/images/socket.webp +0 -0
  87. package/dist/assets/demo-data/assets/images/spanner-set.webp +0 -0
  88. package/dist/assets/demo-data/assets/images/spanner.webp +0 -0
  89. package/dist/assets/demo-data/assets/images/spill-kit.webp +0 -0
  90. package/dist/assets/demo-data/assets/images/spirit-level.webp +0 -0
  91. package/dist/assets/demo-data/assets/images/switch.webp +0 -0
  92. package/dist/assets/demo-data/assets/images/tape-measure.webp +0 -0
  93. package/dist/assets/demo-data/assets/images/terminal-block.webp +0 -0
  94. package/dist/assets/demo-data/assets/images/threaded-rod.webp +0 -0
  95. package/dist/assets/demo-data/assets/images/torque-wrench.webp +0 -0
  96. package/dist/assets/demo-data/assets/images/utility-knife.webp +0 -0
  97. package/dist/assets/demo-data/assets/images/wall-pass-sleeve.webp +0 -0
  98. package/dist/assets/demo-data/assets/images/wall-plug.webp +0 -0
  99. package/dist/assets/demo-data/assets/images/washer.webp +0 -0
  100. package/dist/assets/demo-data/assets/images/waste-bin.webp +0 -0
  101. package/dist/assets/demo-data/assets/images/wire-connector.webp +0 -0
  102. package/dist/assets/demo-data/assets/images/wire-cutters.webp +0 -0
  103. package/dist/assets/demo-data/assets/images/wood-screw.webp +0 -0
  104. package/dist/assets/demo-data/assets/images/work-gloves.webp +0 -0
  105. package/dist/assets/demo-data/assets/images/work-light.webp +0 -0
  106. package/dist/assets/demo-data/assets/initial-data.json +667 -0
  107. package/dist/assets/demo-data/assets/products.csv +779 -0
  108. package/dist/assets/demo-data/initial-data.json +663 -663
  109. package/dist/assets/storefront/components.json +20 -20
  110. package/dist/assets/storefront/eslint.config.mjs +10 -10
  111. package/dist/assets/storefront/graphql.config.yml +1 -1
  112. package/dist/assets/storefront/next-env.d.ts +2 -1
  113. package/dist/assets/storefront/next.config.ts +19 -17
  114. package/dist/assets/storefront/package.json +3 -2
  115. package/dist/assets/storefront/postcss.config.mjs +1 -1
  116. package/dist/assets/storefront/src/app/[locale]/(catalog)/catalog/page.tsx +17 -21
  117. package/dist/assets/storefront/src/app/[locale]/(catalog)/collection/[slug]/page.tsx +64 -42
  118. package/dist/assets/storefront/src/app/[locale]/(catalog)/layout.tsx +1 -5
  119. package/dist/assets/storefront/src/app/[locale]/(catalog)/product/[slug]/actions.ts +69 -65
  120. package/dist/assets/storefront/src/app/[locale]/(catalog)/product/[slug]/page.tsx +64 -38
  121. package/dist/assets/storefront/src/app/[locale]/(catalog)/search/page.tsx +24 -27
  122. package/dist/assets/storefront/src/app/[locale]/(catalog)/search/search-results.tsx +11 -9
  123. package/dist/assets/storefront/src/app/[locale]/(catalog)/search/search-term.tsx +4 -4
  124. package/dist/assets/storefront/src/app/[locale]/(scenario)/[...path]/page.tsx +1 -1
  125. package/dist/assets/storefront/src/app/[locale]/accept-invitation/[token]/accept-invitation-client.tsx +8 -13
  126. package/dist/assets/storefront/src/app/[locale]/accept-invitation/[token]/actions.ts +11 -14
  127. package/dist/assets/storefront/src/app/[locale]/accept-invitation/[token]/page.tsx +30 -33
  128. package/dist/assets/storefront/src/app/[locale]/accept-invitation/[token]/sign-out-and-retry.tsx +6 -6
  129. package/dist/assets/storefront/src/app/[locale]/account/addresses/actions.ts +30 -45
  130. package/dist/assets/storefront/src/app/[locale]/account/addresses/address-form.tsx +166 -159
  131. package/dist/assets/storefront/src/app/[locale]/account/addresses/addresses-client.tsx +35 -26
  132. package/dist/assets/storefront/src/app/[locale]/account/addresses/loading.tsx +1 -3
  133. package/dist/assets/storefront/src/app/[locale]/account/addresses/page.tsx +18 -18
  134. package/dist/assets/storefront/src/app/[locale]/account/approvals/actions.ts +5 -8
  135. package/dist/assets/storefront/src/app/[locale]/account/approvals/page.tsx +79 -69
  136. package/dist/assets/storefront/src/app/[locale]/account/company/actions.ts +10 -11
  137. package/dist/assets/storefront/src/app/[locale]/account/company/addresses/actions.ts +6 -15
  138. package/dist/assets/storefront/src/app/[locale]/account/company/addresses/address-form.tsx +57 -49
  139. package/dist/assets/storefront/src/app/[locale]/account/company/addresses/addresses-client.tsx +23 -25
  140. package/dist/assets/storefront/src/app/[locale]/account/company/addresses/page.tsx +30 -30
  141. package/dist/assets/storefront/src/app/[locale]/account/company/business-units/actions.ts +20 -29
  142. package/dist/assets/storefront/src/app/[locale]/account/company/business-units/business-unit-form.tsx +32 -37
  143. package/dist/assets/storefront/src/app/[locale]/account/company/business-units/business-units-client.tsx +32 -25
  144. package/dist/assets/storefront/src/app/[locale]/account/company/business-units/page.tsx +26 -24
  145. package/dist/assets/storefront/src/app/[locale]/account/company/business-units/types.ts +7 -4
  146. package/dist/assets/storefront/src/app/[locale]/account/company/edit-company-form.tsx +11 -21
  147. package/dist/assets/storefront/src/app/[locale]/account/company/page.tsx +25 -28
  148. package/dist/assets/storefront/src/app/[locale]/account/company/payment-methods/page.tsx +26 -24
  149. package/dist/assets/storefront/src/app/[locale]/account/company/payment-methods/payment-methods-client.tsx +5 -7
  150. package/dist/assets/storefront/src/app/[locale]/account/company/roles/page.tsx +24 -25
  151. package/dist/assets/storefront/src/app/[locale]/account/company/roles/roles-client.tsx +11 -26
  152. package/dist/assets/storefront/src/app/[locale]/account/company/tax-ids/actions.ts +6 -10
  153. package/dist/assets/storefront/src/app/[locale]/account/company/tax-ids/page.tsx +18 -16
  154. package/dist/assets/storefront/src/app/[locale]/account/company/tax-ids/tax-ids-client.tsx +74 -67
  155. package/dist/assets/storefront/src/app/[locale]/account/company/users/actions.ts +16 -25
  156. package/dist/assets/storefront/src/app/[locale]/account/company/users/edit-user-form.tsx +27 -25
  157. package/dist/assets/storefront/src/app/[locale]/account/company/users/invite-user-form.tsx +27 -19
  158. package/dist/assets/storefront/src/app/[locale]/account/company/users/page.tsx +34 -29
  159. package/dist/assets/storefront/src/app/[locale]/account/company/users/users-client.tsx +35 -38
  160. package/dist/assets/storefront/src/app/[locale]/account/error.tsx +1 -3
  161. package/dist/assets/storefront/src/app/[locale]/account/layout.tsx +16 -22
  162. package/dist/assets/storefront/src/app/[locale]/account/orders/[code]/page.tsx +151 -103
  163. package/dist/assets/storefront/src/app/[locale]/account/orders/[code]/reorder-actions.ts +6 -7
  164. package/dist/assets/storefront/src/app/[locale]/account/orders/[code]/reorder-dialog.tsx +22 -48
  165. package/dist/assets/storefront/src/app/[locale]/account/orders/loading.tsx +8 -8
  166. package/dist/assets/storefront/src/app/[locale]/account/orders/page.tsx +101 -61
  167. package/dist/assets/storefront/src/app/[locale]/account/profile/actions.ts +32 -23
  168. package/dist/assets/storefront/src/app/[locale]/account/profile/change-password-form.tsx +6 -16
  169. package/dist/assets/storefront/src/app/[locale]/account/profile/edit-email-form.tsx +7 -17
  170. package/dist/assets/storefront/src/app/[locale]/account/profile/edit-profile-form.tsx +6 -16
  171. package/dist/assets/storefront/src/app/[locale]/account/profile/loading.tsx +12 -18
  172. package/dist/assets/storefront/src/app/[locale]/account/profile/page.tsx +17 -15
  173. package/dist/assets/storefront/src/app/[locale]/account/quick-order/file-upload-tab.tsx +2 -6
  174. package/dist/assets/storefront/src/app/[locale]/account/quick-order/manual-entry-tab.tsx +18 -15
  175. package/dist/assets/storefront/src/app/[locale]/account/quick-order/page.tsx +5 -6
  176. package/dist/assets/storefront/src/app/[locale]/account/quick-order/preview-table.tsx +10 -2
  177. package/dist/assets/storefront/src/app/[locale]/account/quick-order/save-to-list-dialog.tsx +24 -26
  178. package/dist/assets/storefront/src/app/[locale]/account/quick-order/sku-autocomplete.tsx +19 -10
  179. package/dist/assets/storefront/src/app/[locale]/account/quick-order/text-input-tab.tsx +3 -8
  180. package/dist/assets/storefront/src/app/[locale]/account/quotes/[id]/page.tsx +93 -62
  181. package/dist/assets/storefront/src/app/[locale]/account/quotes/actions.ts +38 -45
  182. package/dist/assets/storefront/src/app/[locale]/account/quotes/new/new-quote-form.tsx +3 -5
  183. package/dist/assets/storefront/src/app/[locale]/account/quotes/new/page.tsx +6 -6
  184. package/dist/assets/storefront/src/app/[locale]/account/quotes/page.tsx +92 -59
  185. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/[id]/add-item-search.tsx +11 -9
  186. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/[id]/add-member-form.tsx +31 -15
  187. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/[id]/members-panel.tsx +52 -33
  188. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/[id]/page.tsx +22 -14
  189. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/[id]/rename-dialog.tsx +34 -13
  190. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/actions.ts +117 -72
  191. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/new/new-shared-cart-form.tsx +21 -14
  192. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/new/page.tsx +10 -10
  193. package/dist/assets/storefront/src/app/[locale]/account/shared-carts/page.tsx +54 -41
  194. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/[id]/page.tsx +22 -8
  195. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/[id]/shopping-list-detail-client.tsx +62 -49
  196. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/actions.ts +9 -4
  197. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/create-shopping-list-form.tsx +5 -11
  198. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/loading.tsx +1 -1
  199. package/dist/assets/storefront/src/app/[locale]/account/shopping-lists/page.tsx +32 -42
  200. package/dist/assets/storefront/src/app/[locale]/account/store-credits/actions.ts +8 -8
  201. package/dist/assets/storefront/src/app/[locale]/account/store-credits/claim-form.tsx +6 -10
  202. package/dist/assets/storefront/src/app/[locale]/account/store-credits/page.tsx +76 -55
  203. package/dist/assets/storefront/src/app/[locale]/account/store-credits/reveal-code.tsx +10 -6
  204. package/dist/assets/storefront/src/app/[locale]/account/verify-email/page.tsx +32 -39
  205. package/dist/assets/storefront/src/app/[locale]/cart/actions.ts +29 -23
  206. package/dist/assets/storefront/src/app/[locale]/cart/cart-items.tsx +111 -40
  207. package/dist/assets/storefront/src/app/[locale]/cart/cart-line-actions.tsx +9 -9
  208. package/dist/assets/storefront/src/app/[locale]/cart/cart-quantity-control.tsx +61 -48
  209. package/dist/assets/storefront/src/app/[locale]/cart/cart-remove-button.tsx +15 -9
  210. package/dist/assets/storefront/src/app/[locale]/cart/cart.tsx +38 -41
  211. package/dist/assets/storefront/src/app/[locale]/cart/code-input.tsx +8 -8
  212. package/dist/assets/storefront/src/app/[locale]/cart/order-summary.tsx +56 -35
  213. package/dist/assets/storefront/src/app/[locale]/cart/page.tsx +11 -11
  214. package/dist/assets/storefront/src/app/[locale]/cart/promotion-code.tsx +56 -47
  215. package/dist/assets/storefront/src/app/[locale]/cart/reapproval-confirm.tsx +22 -20
  216. package/dist/assets/storefront/src/app/[locale]/cart/request-quote-button.tsx +7 -16
  217. package/dist/assets/storefront/src/app/[locale]/checkout/actions.ts +39 -65
  218. package/dist/assets/storefront/src/app/[locale]/checkout/cancel-quote-checkout-button.tsx +5 -5
  219. package/dist/assets/storefront/src/app/[locale]/checkout/checkout-flow.tsx +202 -202
  220. package/dist/assets/storefront/src/app/[locale]/checkout/checkout-provider.tsx +142 -142
  221. package/dist/assets/storefront/src/app/[locale]/checkout/order-summary.tsx +158 -139
  222. package/dist/assets/storefront/src/app/[locale]/checkout/page.tsx +58 -47
  223. package/dist/assets/storefront/src/app/[locale]/checkout/steps/delivery-step.tsx +86 -88
  224. package/dist/assets/storefront/src/app/[locale]/checkout/steps/payment-step.tsx +90 -91
  225. package/dist/assets/storefront/src/app/[locale]/checkout/steps/review-step.tsx +166 -161
  226. package/dist/assets/storefront/src/app/[locale]/checkout/steps/shipping-address-step.tsx +573 -494
  227. package/dist/assets/storefront/src/app/[locale]/error.tsx +3 -5
  228. package/dist/assets/storefront/src/app/[locale]/forgot-password/actions.ts +10 -7
  229. package/dist/assets/storefront/src/app/[locale]/forgot-password/forgot-password-form.tsx +10 -25
  230. package/dist/assets/storefront/src/app/[locale]/forgot-password/page.tsx +5 -5
  231. package/dist/assets/storefront/src/app/[locale]/globals.css +48 -48
  232. package/dist/assets/storefront/src/app/[locale]/layout.tsx +56 -50
  233. package/dist/assets/storefront/src/app/[locale]/not-found.tsx +3 -5
  234. package/dist/assets/storefront/src/app/[locale]/order-confirmation/[code]/order-confirmation.tsx +71 -102
  235. package/dist/assets/storefront/src/app/[locale]/order-confirmation/[code]/page.tsx +7 -5
  236. package/dist/assets/storefront/src/app/[locale]/page.tsx +33 -35
  237. package/dist/assets/storefront/src/app/[locale]/register/actions.ts +7 -7
  238. package/dist/assets/storefront/src/app/[locale]/register/page.tsx +22 -16
  239. package/dist/assets/storefront/src/app/[locale]/register/registration-form.tsx +22 -34
  240. package/dist/assets/storefront/src/app/[locale]/register-company/actions.ts +15 -19
  241. package/dist/assets/storefront/src/app/[locale]/register-company/page.tsx +17 -15
  242. package/dist/assets/storefront/src/app/[locale]/register-company/registration-form.tsx +9 -15
  243. package/dist/assets/storefront/src/app/[locale]/reset-password/actions.ts +7 -8
  244. package/dist/assets/storefront/src/app/[locale]/reset-password/page.tsx +18 -12
  245. package/dist/assets/storefront/src/app/[locale]/reset-password/reset-password-form.tsx +8 -16
  246. package/dist/assets/storefront/src/app/[locale]/shopping-list/[code]/add-to-cart-button.tsx +10 -4
  247. package/dist/assets/storefront/src/app/[locale]/shopping-list/[code]/page.tsx +62 -30
  248. package/dist/assets/storefront/src/app/[locale]/sign-in/actions.ts +14 -16
  249. package/dist/assets/storefront/src/app/[locale]/sign-in/login-form.tsx +17 -30
  250. package/dist/assets/storefront/src/app/[locale]/sign-in/page.tsx +35 -30
  251. package/dist/assets/storefront/src/app/[locale]/verify/actions.ts +8 -8
  252. package/dist/assets/storefront/src/app/[locale]/verify/page.tsx +18 -14
  253. package/dist/assets/storefront/src/app/[locale]/verify/verify-content.tsx +25 -27
  254. package/dist/assets/storefront/src/app/[locale]/verify-pending/page.tsx +23 -23
  255. package/dist/assets/storefront/src/app/api/clear-company-context/route.ts +6 -3
  256. package/dist/assets/storefront/src/app/api/revalidate/route.ts +19 -28
  257. package/dist/assets/storefront/src/app/api/search-analytics/route.ts +1 -1
  258. package/dist/assets/storefront/src/components/commerce/account-nav-items.ts +43 -18
  259. package/dist/assets/storefront/src/components/commerce/account-sidebar.tsx +30 -22
  260. package/dist/assets/storefront/src/components/commerce/active-filters.tsx +1 -1
  261. package/dist/assets/storefront/src/components/commerce/add-to-shared-cart.tsx +49 -27
  262. package/dist/assets/storefront/src/components/commerce/approval-decision-form.tsx +9 -13
  263. package/dist/assets/storefront/src/components/commerce/approval-status-badge.tsx +23 -15
  264. package/dist/assets/storefront/src/components/commerce/business-unit-switcher.tsx +11 -11
  265. package/dist/assets/storefront/src/components/commerce/catalog-search-bar.tsx +2 -2
  266. package/dist/assets/storefront/src/components/commerce/category-product-section.tsx +28 -16
  267. package/dist/assets/storefront/src/components/commerce/category-sidebar.tsx +31 -18
  268. package/dist/assets/storefront/src/components/commerce/collection-hero-banner.tsx +2 -4
  269. package/dist/assets/storefront/src/components/commerce/company-state-badge.tsx +10 -16
  270. package/dist/assets/storefront/src/components/commerce/company-switcher.tsx +12 -12
  271. package/dist/assets/storefront/src/components/commerce/configurator-form.tsx +188 -79
  272. package/dist/assets/storefront/src/components/commerce/facet-filters.tsx +29 -49
  273. package/dist/assets/storefront/src/components/commerce/gift-card-pdp.tsx +4 -4
  274. package/dist/assets/storefront/src/components/commerce/gift-card-product-info.tsx +20 -30
  275. package/dist/assets/storefront/src/components/commerce/instant-search-dropdown.tsx +258 -227
  276. package/dist/assets/storefront/src/components/commerce/order-status-badge.tsx +27 -19
  277. package/dist/assets/storefront/src/components/commerce/packaging-unit-selector.tsx +27 -26
  278. package/dist/assets/storefront/src/components/commerce/permission-gate.tsx +4 -4
  279. package/dist/assets/storefront/src/components/commerce/price-range-filter.tsx +5 -5
  280. package/dist/assets/storefront/src/components/commerce/price-tiers.tsx +38 -21
  281. package/dist/assets/storefront/src/components/commerce/price.tsx +3 -3
  282. package/dist/assets/storefront/src/components/commerce/product-card-list.tsx +39 -16
  283. package/dist/assets/storefront/src/components/commerce/product-card.tsx +35 -18
  284. package/dist/assets/storefront/src/components/commerce/product-carousel.tsx +20 -12
  285. package/dist/assets/storefront/src/components/commerce/product-grid.tsx +14 -13
  286. package/dist/assets/storefront/src/components/commerce/product-image-carousel.tsx +10 -8
  287. package/dist/assets/storefront/src/components/commerce/product-info.tsx +118 -74
  288. package/dist/assets/storefront/src/components/commerce/product-list-expansion.tsx +102 -74
  289. package/dist/assets/storefront/src/components/commerce/product-list-view.tsx +1 -1
  290. package/dist/assets/storefront/src/components/commerce/product-sidebar.tsx +36 -11
  291. package/dist/assets/storefront/src/components/commerce/product-view-switcher.tsx +33 -21
  292. package/dist/assets/storefront/src/components/commerce/quote-action-buttons.tsx +80 -45
  293. package/dist/assets/storefront/src/components/commerce/quote-activity-timeline.tsx +126 -50
  294. package/dist/assets/storefront/src/components/commerce/quote-comment-form.tsx +9 -13
  295. package/dist/assets/storefront/src/components/commerce/quote-csv-export-button.tsx +6 -6
  296. package/dist/assets/storefront/src/components/commerce/quote-product-search.tsx +22 -18
  297. package/dist/assets/storefront/src/components/commerce/quote-request-form.tsx +28 -27
  298. package/dist/assets/storefront/src/components/commerce/quote-status-badge.tsx +26 -18
  299. package/dist/assets/storefront/src/components/commerce/quote-validity-indicator.tsx +7 -7
  300. package/dist/assets/storefront/src/components/commerce/quote-version-comparison.tsx +50 -30
  301. package/dist/assets/storefront/src/components/commerce/related-products.tsx +37 -28
  302. package/dist/assets/storefront/src/components/commerce/shared-cart-status-badge.tsx +12 -8
  303. package/dist/assets/storefront/src/components/commerce/shop-by-category.tsx +8 -7
  304. package/dist/assets/storefront/src/components/commerce/shopping-list-toggle.tsx +14 -20
  305. package/dist/assets/storefront/src/components/commerce/sort-dropdown.tsx +9 -16
  306. package/dist/assets/storefront/src/components/commerce/store-credit-summary.tsx +30 -32
  307. package/dist/assets/storefront/src/components/commerce/subcollection-tiles.tsx +11 -13
  308. package/dist/assets/storefront/src/components/layout/auth-page-shell.tsx +2 -2
  309. package/dist/assets/storefront/src/components/layout/draft-mode-indicator.tsx +2 -7
  310. package/dist/assets/storefront/src/components/layout/draft-mode-link.tsx +4 -2
  311. package/dist/assets/storefront/src/components/layout/footer.tsx +70 -28
  312. package/dist/assets/storefront/src/components/layout/navbar/actions.ts +9 -12
  313. package/dist/assets/storefront/src/components/layout/navbar/cart-icon.tsx +9 -9
  314. package/dist/assets/storefront/src/components/layout/navbar/channel-picker-wrapper.tsx +4 -9
  315. package/dist/assets/storefront/src/components/layout/navbar/channel-picker.tsx +13 -8
  316. package/dist/assets/storefront/src/components/layout/navbar/currency-picker-wrapper.tsx +4 -4
  317. package/dist/assets/storefront/src/components/layout/navbar/currency-picker.tsx +11 -6
  318. package/dist/assets/storefront/src/components/layout/navbar/language-picker.tsx +7 -7
  319. package/dist/assets/storefront/src/components/layout/navbar/login-button.tsx +24 -21
  320. package/dist/assets/storefront/src/components/layout/navbar/mobile-nav.tsx +8 -8
  321. package/dist/assets/storefront/src/components/layout/navbar/nav-menu-items.tsx +4 -6
  322. package/dist/assets/storefront/src/components/layout/navbar/navbar-cart.tsx +1 -1
  323. package/dist/assets/storefront/src/components/layout/navbar/navbar-collections.tsx +41 -42
  324. package/dist/assets/storefront/src/components/layout/navbar/navbar-link.tsx +7 -10
  325. package/dist/assets/storefront/src/components/layout/navbar/navbar-user.tsx +18 -23
  326. package/dist/assets/storefront/src/components/layout/navbar/theme-switcher.tsx +9 -9
  327. package/dist/assets/storefront/src/components/layout/navbar.tsx +36 -31
  328. package/dist/assets/storefront/src/components/layout/search-input.tsx +35 -32
  329. package/dist/assets/storefront/src/components/providers/awaiting-approval-banner.tsx +12 -10
  330. package/dist/assets/storefront/src/components/providers/cart-count-server.tsx +14 -12
  331. package/dist/assets/storefront/src/components/providers/company-context-guard.tsx +4 -4
  332. package/dist/assets/storefront/src/components/providers/company-permissions-server.tsx +2 -6
  333. package/dist/assets/storefront/src/components/providers/theme-provider.tsx +3 -3
  334. package/dist/assets/storefront/src/components/shared/breadcrumbs.tsx +4 -1
  335. package/dist/assets/storefront/src/components/shared/country-select.tsx +63 -67
  336. package/dist/assets/storefront/src/components/shared/pagination.tsx +15 -28
  337. package/dist/assets/storefront/src/components/shared/prefetch-link.tsx +1 -1
  338. package/dist/assets/storefront/src/components/shared/skeletons/search-input-skeleton.tsx +1 -3
  339. package/dist/assets/storefront/src/components/ui/accordion.tsx +46 -51
  340. package/dist/assets/storefront/src/components/ui/alert-dialog.tsx +94 -121
  341. package/dist/assets/storefront/src/components/ui/alert.tsx +48 -54
  342. package/dist/assets/storefront/src/components/ui/aspect-ratio.tsx +5 -7
  343. package/dist/assets/storefront/src/components/ui/avatar.tsx +29 -44
  344. package/dist/assets/storefront/src/components/ui/badge.tsx +28 -37
  345. package/dist/assets/storefront/src/components/ui/breadcrumb.tsx +82 -89
  346. package/dist/assets/storefront/src/components/ui/button.tsx +43 -49
  347. package/dist/assets/storefront/src/components/ui/calendar.tsx +157 -198
  348. package/dist/assets/storefront/src/components/ui/card.tsx +53 -76
  349. package/dist/assets/storefront/src/components/ui/carousel.tsx +194 -212
  350. package/dist/assets/storefront/src/components/ui/chart.tsx +274 -317
  351. package/dist/assets/storefront/src/components/ui/checkbox.tsx +24 -27
  352. package/dist/assets/storefront/src/components/ui/collapsible.tsx +9 -21
  353. package/dist/assets/storefront/src/components/ui/command.tsx +114 -159
  354. package/dist/assets/storefront/src/components/ui/context-menu.tsx +167 -199
  355. package/dist/assets/storefront/src/components/ui/dialog.tsx +97 -114
  356. package/dist/assets/storefront/src/components/ui/drawer.tsx +93 -107
  357. package/dist/assets/storefront/src/components/ui/dropdown-menu.tsx +171 -206
  358. package/dist/assets/storefront/src/components/ui/empty-state.tsx +5 -5
  359. package/dist/assets/storefront/src/components/ui/field.tsx +196 -208
  360. package/dist/assets/storefront/src/components/ui/form.tsx +115 -139
  361. package/dist/assets/storefront/src/components/ui/hover-card.tsx +27 -33
  362. package/dist/assets/storefront/src/components/ui/input-otp.tsx +50 -59
  363. package/dist/assets/storefront/src/components/ui/input.tsx +17 -17
  364. package/dist/assets/storefront/src/components/ui/kbd-shortcut.tsx +3 -1
  365. package/dist/assets/storefront/src/components/ui/label.tsx +16 -19
  366. package/dist/assets/storefront/src/components/ui/menubar.tsx +193 -223
  367. package/dist/assets/storefront/src/components/ui/navigation-menu.tsx +123 -130
  368. package/dist/assets/storefront/src/components/ui/pagination.tsx +87 -108
  369. package/dist/assets/storefront/src/components/ui/popover.tsx +29 -35
  370. package/dist/assets/storefront/src/components/ui/progress.tsx +19 -26
  371. package/dist/assets/storefront/src/components/ui/radio-group.tsx +32 -38
  372. package/dist/assets/storefront/src/components/ui/resizable.tsx +37 -42
  373. package/dist/assets/storefront/src/components/ui/scroll-area.tsx +41 -47
  374. package/dist/assets/storefront/src/components/ui/select.tsx +130 -152
  375. package/dist/assets/storefront/src/components/ui/separator.tsx +21 -21
  376. package/dist/assets/storefront/src/components/ui/sheet.tsx +90 -111
  377. package/dist/assets/storefront/src/components/ui/sidebar.tsx +611 -649
  378. package/dist/assets/storefront/src/components/ui/skeleton.tsx +10 -10
  379. package/dist/assets/storefront/src/components/ui/slider.tsx +50 -55
  380. package/dist/assets/storefront/src/components/ui/sonner.tsx +20 -20
  381. package/dist/assets/storefront/src/components/ui/switch.tsx +23 -26
  382. package/dist/assets/storefront/src/components/ui/table.tsx +65 -97
  383. package/dist/assets/storefront/src/components/ui/tabs.tsx +39 -55
  384. package/dist/assets/storefront/src/components/ui/textarea.tsx +14 -14
  385. package/dist/assets/storefront/src/components/ui/toggle-group.tsx +56 -62
  386. package/dist/assets/storefront/src/components/ui/toggle.tsx +37 -38
  387. package/dist/assets/storefront/src/components/ui/tooltip.tsx +38 -46
  388. package/dist/assets/storefront/src/config/capabilities.ts +41 -0
  389. package/dist/assets/storefront/src/config/scenario-meta.ts +2 -2
  390. package/dist/assets/storefront/src/config/scenario.ts +24 -16
  391. package/dist/assets/storefront/src/contexts/auth-context.tsx +5 -6
  392. package/dist/assets/storefront/src/graphql-env.d.ts +47 -41
  393. package/dist/assets/storefront/src/graphql.ts +5 -5
  394. package/dist/assets/storefront/src/hooks/use-mobile.ts +13 -13
  395. package/dist/assets/storefront/src/i18n/locale-utils.ts +3 -3
  396. package/dist/assets/storefront/src/i18n/navigation.ts +4 -4
  397. package/dist/assets/storefront/src/i18n/request.ts +4 -4
  398. package/dist/assets/storefront/src/i18n/routing.ts +5 -5
  399. package/dist/assets/storefront/src/i18n/server.ts +35 -7
  400. package/dist/assets/storefront/src/lib/actions/switch-channel.ts +9 -9
  401. package/dist/assets/storefront/src/lib/actions/switch-currency.ts +7 -7
  402. package/dist/assets/storefront/src/lib/auth.ts +1 -1
  403. package/dist/assets/storefront/src/lib/backend-health.ts +14 -6
  404. package/dist/assets/storefront/src/lib/cart-count-context.tsx +10 -4
  405. package/dist/assets/storefront/src/lib/cart-guard-utils.ts +2 -1
  406. package/dist/assets/storefront/src/lib/cart-guard.ts +7 -6
  407. package/dist/assets/storefront/src/lib/channel-server.ts +4 -4
  408. package/dist/assets/storefront/src/lib/company-context.ts +1 -1
  409. package/dist/assets/storefront/src/lib/company-permissions-context.tsx +1 -5
  410. package/dist/assets/storefront/src/lib/currency-server.ts +4 -4
  411. package/dist/assets/storefront/src/lib/format.ts +16 -7
  412. package/dist/assets/storefront/src/lib/metadata.ts +39 -44
  413. package/dist/assets/storefront/src/lib/quantity.ts +2 -4
  414. package/dist/assets/storefront/src/lib/search-bar-context.tsx +7 -4
  415. package/dist/assets/storefront/src/lib/use-recent-searches.ts +8 -6
  416. package/dist/assets/storefront/src/lib/utils.ts +3 -3
  417. package/dist/assets/storefront/src/lib/vendure/actions.ts +18 -16
  418. package/dist/assets/storefront/src/lib/vendure/api.ts +36 -23
  419. package/dist/assets/storefront/src/lib/vendure/approval-utils.ts +9 -8
  420. package/dist/assets/storefront/src/lib/vendure/cached.ts +20 -15
  421. package/dist/assets/storefront/src/lib/vendure/capability-documents.ts +246 -0
  422. package/dist/assets/storefront/src/lib/vendure/capability-schema.ts +358 -0
  423. package/dist/assets/storefront/src/lib/vendure/capability-ui.ts +15 -0
  424. package/dist/assets/storefront/src/lib/vendure/mutations.ts +835 -532
  425. package/dist/assets/storefront/src/lib/vendure/queries.ts +877 -524
  426. package/dist/assets/storefront/src/proxy.ts +11 -0
  427. package/dist/assets/storefront/src/scenarios/customer/hero.tsx +2 -2
  428. package/dist/assets/storefront/src/scenarios/customer/meta.ts +1 -1
  429. package/dist/assets/storefront/src/schema.graphql +337 -243
  430. package/dist/assets/templates/README.md.hbs +25 -1
  431. package/dist/assets/templates/docker-compose.yml.hbs +4 -0
  432. package/dist/assets/templates/env.hbs +34 -9
  433. package/dist/assets/templates/environment.d.ts.hbs +1 -0
  434. package/dist/assets/templates/gitignore.hbs +7 -4
  435. package/dist/assets/templates/migrate.ts.hbs +55 -0
  436. package/dist/assets/templates/npmrc.hbs +7 -2
  437. package/dist/assets/templates/platform-edition.ts.hbs +21 -0
  438. package/dist/assets/templates/server-package.json.hbs +15 -8
  439. package/dist/assets/templates/vendure-config.ts.hbs +18 -0
  440. package/dist/bin/run.js +1 -1
  441. package/dist/cli.d.ts +1 -1
  442. package/dist/cli.js +1 -1
  443. package/dist/console-onboarding.d.ts +44 -0
  444. package/dist/console-onboarding.js +1 -0
  445. package/dist/hub-projects.d.ts +48 -0
  446. package/dist/hub-projects.js +1 -0
  447. package/dist/index.d.ts +5 -5
  448. package/dist/index.js +1 -1
  449. package/dist/plugin-registry.d.ts +61 -2
  450. package/dist/plugin-registry.js +1 -1
  451. package/dist/registry.d.ts +16 -13
  452. package/dist/registry.js +1 -1
  453. package/dist/scaffold-shared.js +1 -1
  454. package/dist/scaffold-storefront-only.js +1 -1
  455. package/dist/scaffolder.d.ts +11 -0
  456. package/dist/scaffolder.js +1 -1
  457. package/dist/storefront-copier.d.ts +7 -2
  458. package/dist/storefront-copier.js +1 -1
  459. package/dist/template-renderer.d.ts +26 -5
  460. package/dist/template-renderer.js +1 -1
  461. package/dist/types.d.ts +54 -23
  462. package/package.json +14 -2
  463. package/dist/assets/storefront/src/middleware.ts +0 -11
@@ -12,7 +12,7 @@ type Query {
12
12
  """
13
13
  activeOrder(
14
14
  """
15
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
15
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
16
16
  """
17
17
  activeOrderInput: ActiveOrderInput = null
18
18
  ): Order
@@ -33,7 +33,7 @@ type Query {
33
33
  """
34
34
  eligibleShippingMethods(
35
35
  """
36
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
36
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
37
37
  """
38
38
  activeOrderInput: ActiveOrderInput = null
39
39
  ): [ShippingMethodQuote!]!
@@ -43,7 +43,7 @@ type Query {
43
43
  """
44
44
  eligiblePaymentMethods(
45
45
  """
46
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
46
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
47
47
  """
48
48
  activeOrderInput: ActiveOrderInput = null
49
49
  ): [PaymentMethodQuote!]!
@@ -62,7 +62,7 @@ type Query {
62
62
  """
63
63
  nextOrderStates(
64
64
  """
65
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
65
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
66
66
  """
67
67
  activeOrderInput: ActiveOrderInput = null
68
68
  ): [String!]!
@@ -99,7 +99,6 @@ type Query {
99
99
  activeShippingMethods: [PublicShippingMethod]!
100
100
  activeCompanyUser: CompanyUser
101
101
  companyAccount: CompanyAccount
102
- companyBusinessUnits: [CompanyBusinessUnit!]!
103
102
  shopCompanyUsers: [CompanyUser!]!
104
103
  companyRoles: [CompanyRole!]!
105
104
  companyAddresses: [CompanyAddress!]!
@@ -110,6 +109,7 @@ type Query {
110
109
  All orders belonging to the current user's company. Requires ViewAllOrders permission.
111
110
  """
112
111
  companyOrders(options: OrderListOptions): OrderList!
112
+ companyBusinessUnits: [CompanyBusinessUnit!]!
113
113
 
114
114
  """
115
115
  Search across all external indexes. From v1.6.0+ there are also specific search resolvers for each
@@ -132,12 +132,6 @@ type Query {
132
132
  Preview a reorder. Returns per-line availability, indicative pricing, and a summary. Transaction-free.
133
133
  """
134
134
  previewReorder(input: ReorderPreviewInput!): ReorderPreview!
135
-
136
- """
137
- Returns open store credits visible to the active customer.
138
- If a customerScopeStrategy is configured (e.g. org-hierarchy),
139
- this may include credits belonging to other company members.
140
- """
141
135
  myStoreCredits(options: StoreCreditListOptions): StoreCreditList!
142
136
  giftCardTemplates(options: GiftCardTemplateListOptions): GiftCardTemplateList!
143
137
  myQuotes(options: QuoteListOptions): QuoteList!
@@ -148,8 +142,8 @@ type Query {
148
142
  """
149
143
  quoteStockCheck(quoteId: ID!): QuoteStockCheckResult!
150
144
  mySharedCarts(options: SharedCartListOptions): SharedCartList!
151
- companySharedCarts(options: SharedCartListOptions): SharedCartList!
152
145
  sharedCart(id: ID!): SharedCart
146
+ companySharedCarts(options: SharedCartListOptions): SharedCartList!
153
147
 
154
148
  """
155
149
  Fetch a single product variant by ID. Supports draft mode preview via the DraftModeInterceptor.
@@ -179,7 +173,7 @@ type Mutation {
179
173
  customFields: OrderLineCustomFieldsInput = null
180
174
 
181
175
  """
182
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
176
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
183
177
  """
184
178
  activeOrderInput: ActiveOrderInput = null
185
179
  ): UpdateOrderItemsResult!
@@ -194,7 +188,7 @@ type Mutation {
194
188
  orderLineId: ID!
195
189
 
196
190
  """
197
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
191
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
198
192
  """
199
193
  activeOrderInput: ActiveOrderInput = null
200
194
  ): RemoveOrderItemsResult!
@@ -202,7 +196,7 @@ type Mutation {
202
196
  """Remove all OrderLine from the Order"""
203
197
  removeAllOrderLines(
204
198
  """
205
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
199
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
206
200
  """
207
201
  activeOrderInput: ActiveOrderInput = null
208
202
  ): RemoveOrderItemsResult!
@@ -216,7 +210,7 @@ type Mutation {
216
210
  customFields: OrderLineCustomFieldsInput = null
217
211
 
218
212
  """
219
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
213
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
220
214
  """
221
215
  activeOrderInput: ActiveOrderInput = null
222
216
  ): UpdateOrderItemsResult!
@@ -226,7 +220,7 @@ type Mutation {
226
220
  couponCode: String!
227
221
 
228
222
  """
229
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
223
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
230
224
  """
231
225
  activeOrderInput: ActiveOrderInput = null
232
226
  ): ApplyCouponCodeResult!
@@ -236,7 +230,7 @@ type Mutation {
236
230
  couponCode: String!
237
231
 
238
232
  """
239
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
233
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
240
234
  """
241
235
  activeOrderInput: ActiveOrderInput = null
242
236
  ): Order
@@ -248,7 +242,7 @@ type Mutation {
248
242
  state: String!
249
243
 
250
244
  """
251
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
245
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
252
246
  """
253
247
  activeOrderInput: ActiveOrderInput = null
254
248
  ): TransitionOrderToStateResult
@@ -258,7 +252,7 @@ type Mutation {
258
252
  input: CreateAddressInput!
259
253
 
260
254
  """
261
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
255
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
262
256
  """
263
257
  activeOrderInput: ActiveOrderInput = null
264
258
  ): ActiveOrderResult!
@@ -268,7 +262,7 @@ type Mutation {
268
262
  input: CreateAddressInput!
269
263
 
270
264
  """
271
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
265
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
272
266
  """
273
267
  activeOrderInput: ActiveOrderInput = null
274
268
  ): ActiveOrderResult!
@@ -278,7 +272,7 @@ type Mutation {
278
272
  """
279
273
  unsetOrderShippingAddress(
280
274
  """
281
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
275
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
282
276
  """
283
277
  activeOrderInput: ActiveOrderInput = null
284
278
  ): ActiveOrderResult!
@@ -288,7 +282,7 @@ type Mutation {
288
282
  """
289
283
  unsetOrderBillingAddress(
290
284
  """
291
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
285
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
292
286
  """
293
287
  activeOrderInput: ActiveOrderInput = null
294
288
  ): ActiveOrderResult!
@@ -298,7 +292,7 @@ type Mutation {
298
292
  input: UpdateOrderInput!
299
293
 
300
294
  """
301
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
295
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
302
296
  """
303
297
  activeOrderInput: ActiveOrderInput = null
304
298
  ): ActiveOrderResult!
@@ -313,7 +307,7 @@ type Mutation {
313
307
  shippingMethodId: [ID!]!
314
308
 
315
309
  """
316
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
310
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
317
311
  """
318
312
  activeOrderInput: ActiveOrderInput = null
319
313
  ): SetOrderShippingMethodResult!
@@ -326,7 +320,7 @@ type Mutation {
326
320
  input: PaymentInput!
327
321
 
328
322
  """
329
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
323
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
330
324
  """
331
325
  activeOrderInput: ActiveOrderInput = null
332
326
  ): AddPaymentToOrderResult!
@@ -338,7 +332,7 @@ type Mutation {
338
332
  input: CreateCustomerInput!
339
333
 
340
334
  """
341
- Inputs for the configured ActiveOrderStrategies punchout, quote-checkout,
335
+ Inputs for the configured ActiveOrderStrategies punchout, shared-cart-active-order, quote-checkout
342
336
  """
343
337
  activeOrderInput: ActiveOrderInput = null
344
338
  ): SetCustomerForOrderResult!
@@ -424,9 +418,6 @@ type Mutation {
424
418
  resetPassword(token: String!, password: String!): ResetPasswordResult!
425
419
  registerCompany(input: RegisterCompanyInput!): CompanyAccount!
426
420
  updateCompanyAccount(input: UpdateCompanyAccountInput!): CompanyAccount!
427
- createCompanyBusinessUnit(input: CreateCompanyBusinessUnitShopInput!): CompanyBusinessUnit!
428
- updateCompanyBusinessUnit(input: UpdateCompanyBusinessUnitShopInput!): CompanyBusinessUnit!
429
- deleteCompanyBusinessUnit(id: ID!): DeletionResponse!
430
421
  createCompanyAddress(input: CreateCompanyAddressShopInput!): CompanyAddress!
431
422
  updateCompanyAddress(input: UpdateCompanyAddressShopInput!): CompanyAddress!
432
423
  deleteCompanyAddress(id: ID!): DeletionResponse!
@@ -434,8 +425,11 @@ type Mutation {
434
425
  updateCompanyUser(input: UpdateCompanyUserShopInput!): CompanyUser!
435
426
  removeCompanyUser(id: ID!): DeletionResponse!
436
427
  assignCompanyUserRole(userId: ID!, roleId: ID!): CompanyUser!
437
- switchBusinessUnit(businessUnitId: ID!): CompanyAccount!
438
428
  acceptCompanyInvitation(token: String!): AcceptCompanyInvitationResult!
429
+ createCompanyBusinessUnit(input: CreateCompanyBusinessUnitShopInput!): CompanyBusinessUnit!
430
+ updateCompanyBusinessUnit(input: UpdateCompanyBusinessUnitShopInput!): CompanyBusinessUnit!
431
+ deleteCompanyBusinessUnit(id: ID!): DeletionResponse!
432
+ switchBusinessUnit(businessUnitId: ID!): CompanyAccount!
439
433
  logSearchListViewed(input: SearchListViewedEventInput!): Boolean!
440
434
  logSearchResultClicked(input: SearchResultClickedEventInput!): Boolean!
441
435
  addTaxId(input: AddTaxIdInput!): TaxId!
@@ -447,9 +441,9 @@ type Mutation {
447
441
  createShoppingList(input: CreateShoppingListInput!): ShoppingList!
448
442
  updateShoppingList(input: UpdateShoppingListInput!): ShoppingList!
449
443
  deleteShoppingList(id: ID!): DeletionResponse!
450
- setShoppingListVisibility(id: ID!, isPublic: Boolean!): ShoppingList!
451
444
  addShoppingListItemsToOrder(itemIds: [ID!]!): UpdateOrderItemsResult!
452
445
  moveShoppingListItems(itemIds: [ID!]!, targetShoppingListId: ID!): ShoppingList
446
+ setShoppingListVisibility(id: ID!, isPublic: Boolean!): ShoppingList!
453
447
 
454
448
  """
455
449
  Parses and validates quick order input (text, CSV, or structured items). Returns validated items with pricing, stock status, and error messages.
@@ -467,16 +461,9 @@ type Mutation {
467
461
  addReorderToActiveOrder(input: ReorderCommitInput!): ReorderResult!
468
462
  applyStoreCreditToOrder(code: String!): ApplyStoreCreditToOrderResult!
469
463
  removeStoreCreditFromOrder(code: String!): Order!
470
- addGiftCardToOrder(input: AddGiftCardToOrderInput!): UpdateOrderItemsResult!
471
464
  claimStoreCredit(code: String!): ClaimStoreCreditResult!
472
-
473
- """
474
- Adds a payment to the active order, automatically applying any store credits first.
475
- If store credits fully cover the order total, the input can be omitted.
476
- If store credits only partially cover the order, the remaining balance is charged
477
- via the payment method specified in input.
478
- """
479
465
  addPaymentToOrderWithStoreCredit(input: PaymentInput): AddPaymentToOrderWithStoreCreditResult!
466
+ addGiftCardToOrder(input: AddGiftCardToOrderInput!): UpdateOrderItemsResult!
480
467
 
481
468
  """
482
469
  Create a quote request from explicitly provided line items. Returns the quote in DRAFT status.
@@ -490,18 +477,18 @@ type Mutation {
490
477
  submitQuoteRequest(quoteId: ID!): Quote!
491
478
  acceptQuote(quoteId: ID!): Quote!
492
479
  rejectQuote(quoteId: ID!, reason: String): Quote!
493
- requestQuoteChanges(quoteId: ID!, reason: String): Quote!
494
480
 
495
481
  """
496
482
  Accept quote and convert to order. The order becomes the active order for checkout.
497
483
  """
498
484
  acceptAndConvertQuote(quoteId: ID!): Order!
499
- addQuoteComment(quoteId: ID!, text: String!): QuoteComment!
500
485
 
501
486
  """
502
487
  Cancel an in-progress quote checkout. Clears the active quote order marker.
503
488
  """
504
489
  cancelQuoteCheckout: Boolean!
490
+ requestQuoteChanges(quoteId: ID!, reason: String): Quote!
491
+ addQuoteComment(quoteId: ID!, text: String!): QuoteComment!
505
492
  createSharedCart(input: CreateSharedCartInput!): SharedCart!
506
493
  updateSharedCart(input: UpdateSharedCartInput!): SharedCart!
507
494
  deleteSharedCart(id: ID!): DeletionResponse!
@@ -754,6 +741,11 @@ enum Permission {
754
741
  """Grants permission to update GlobalSettings"""
755
742
  UpdateGlobalSettings
756
743
 
744
+ """
745
+ Grants permission to read the decrypted value of custom fields and config args marked as `secret`
746
+ """
747
+ ReadSecret
748
+
757
749
  """Grants permission to create Products, Facets, Assets, Collections"""
758
750
  CreateCatalog
759
751
 
@@ -1065,18 +1057,6 @@ enum Permission {
1065
1057
  """Grants permission to delete CompanyUser"""
1066
1058
  DeleteCompanyUser
1067
1059
 
1068
- """Grants permission to create CompanyBusinessUnit"""
1069
- CreateCompanyBusinessUnit
1070
-
1071
- """Grants permission to read CompanyBusinessUnit"""
1072
- ReadCompanyBusinessUnit
1073
-
1074
- """Grants permission to update CompanyBusinessUnit"""
1075
- UpdateCompanyBusinessUnit
1076
-
1077
- """Grants permission to delete CompanyBusinessUnit"""
1078
- DeleteCompanyBusinessUnit
1079
-
1080
1060
  """Grants permission to create CompanyRole"""
1081
1061
  CreateCompanyRole
1082
1062
 
@@ -1113,6 +1093,18 @@ enum Permission {
1113
1093
  """Grants permission to delete CompanyPaymentMethod"""
1114
1094
  DeleteCompanyPaymentMethod
1115
1095
 
1096
+ """Grants permission to create CompanyBusinessUnit"""
1097
+ CreateCompanyBusinessUnit
1098
+
1099
+ """Grants permission to read CompanyBusinessUnit"""
1100
+ ReadCompanyBusinessUnit
1101
+
1102
+ """Grants permission to update CompanyBusinessUnit"""
1103
+ UpdateCompanyBusinessUnit
1104
+
1105
+ """Grants permission to delete CompanyBusinessUnit"""
1106
+ DeleteCompanyBusinessUnit
1107
+
1116
1108
  """Grants permission to use the global search"""
1117
1109
  GlobalSearch
1118
1110
 
@@ -1206,6 +1198,18 @@ enum Permission {
1206
1198
  """Grants permission to delete PackagingUnit"""
1207
1199
  DeletePackagingUnit
1208
1200
 
1201
+ """Grants permission to create ProductType"""
1202
+ CreateProductType
1203
+
1204
+ """Grants permission to read ProductType"""
1205
+ ReadProductType
1206
+
1207
+ """Grants permission to update ProductType"""
1208
+ UpdateProductType
1209
+
1210
+ """Grants permission to delete ProductType"""
1211
+ DeleteProductType
1212
+
1209
1213
  """Grants permission to create Configurator"""
1210
1214
  CreateConfigurator
1211
1215
 
@@ -1256,12 +1260,6 @@ enum Permission {
1256
1260
 
1257
1261
  """Grants permission to delete Punchout"""
1258
1262
  DeletePunchout
1259
-
1260
- """Grants permission to read DashboardGlobalViews"""
1261
- ReadDashboardGlobalViews
1262
-
1263
- """Grants permission to write DashboardGlobalViews"""
1264
- WriteDashboardGlobalViews
1265
1263
  }
1266
1264
 
1267
1265
  enum SortOrder {
@@ -1290,6 +1288,7 @@ enum ErrorCode {
1290
1288
  INELIGIBLE_PAYMENT_METHOD_ERROR
1291
1289
  PAYMENT_FAILED_ERROR
1292
1290
  PAYMENT_DECLINED_ERROR
1291
+ COUPON_REMOVED_DURING_CHECKOUT_ERROR
1293
1292
  ALREADY_LOGGED_IN_ERROR
1294
1293
  MISSING_PASSWORD_ERROR
1295
1294
  PASSWORD_VALIDATION_ERROR
@@ -1438,22 +1437,12 @@ Union type of all possible errors that can occur when adding or removing items f
1438
1437
  """
1439
1438
  union UpdateOrderItemErrorResult = OrderModificationError | OrderLimitError | NegativeQuantityError | InsufficientStockError | OrderInterceptorError
1440
1439
 
1441
- """
1442
- The `JSON` scalar type represents JSON values as specified by [ECMA-404](http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf).
1443
- """
1444
- scalar JSON @specifiedBy(url: "http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf")
1440
+ scalar JSON
1445
1441
 
1446
- """
1447
- A date-time string at UTC, such as 2007-12-03T10:15:30Z, compliant with the `date-time` format outlined in section 5.6 of the RFC 3339 profile of the ISO 8601 standard for representation of dates and times using the Gregorian calendar.
1448
- """
1449
1442
  scalar DateTime
1450
1443
 
1451
- """The `Upload` scalar type represents a file upload."""
1452
1444
  scalar Upload
1453
1445
 
1454
- """
1455
- The `Money` scalar type represents monetary values and supports signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point).
1456
- """
1457
1446
  scalar Money
1458
1447
 
1459
1448
  interface PaginatedList {
@@ -1497,6 +1486,7 @@ type ConfigArgDefinition {
1497
1486
  label: String
1498
1487
  description: String
1499
1488
  ui: JSON
1489
+ secret: Boolean
1500
1490
  }
1501
1491
 
1502
1492
  type ConfigurableOperation {
@@ -1636,11 +1626,6 @@ input SearchInput {
1636
1626
  skip: Int
1637
1627
  sort: SearchResultSortParameter
1638
1628
 
1639
- """
1640
- Whether to log this search in the analytics store. If true, the result will include a queryId
1641
- """
1642
- logAnalytics: Boolean
1643
-
1644
1629
  """Whether to apply curations to the results"""
1645
1630
  applyCurations: Boolean
1646
1631
  maxFacetValues: Int
@@ -1677,6 +1662,11 @@ input SearchInput {
1677
1662
  Allows filtering by facetCode and facetValueCodes to get a subset of facets in the facets object of the response to easily further refine the search
1678
1663
  """
1679
1664
  facetsFilter: FacetsFilterInput
1665
+
1666
+ """
1667
+ Whether to log this search in the analytics store. If true, the result will include a queryId
1668
+ """
1669
+ logAnalytics: Boolean
1680
1670
  }
1681
1671
 
1682
1672
  input SearchResultSortParameter {
@@ -2267,6 +2257,7 @@ interface CustomField {
2267
2257
  internal: Boolean
2268
2258
  nullable: Boolean
2269
2259
  requiresPermission: [Permission!]
2260
+ secret: Boolean
2270
2261
  deprecated: Boolean
2271
2262
  deprecationReason: String
2272
2263
  ui: JSON
@@ -2283,6 +2274,7 @@ type StringCustomFieldConfig implements CustomField {
2283
2274
  internal: Boolean
2284
2275
  nullable: Boolean
2285
2276
  requiresPermission: [Permission!]
2277
+ secret: Boolean
2286
2278
  deprecated: Boolean
2287
2279
  deprecationReason: String
2288
2280
  pattern: String
@@ -2306,6 +2298,7 @@ type LocaleStringCustomFieldConfig implements CustomField {
2306
2298
  internal: Boolean
2307
2299
  nullable: Boolean
2308
2300
  requiresPermission: [Permission!]
2301
+ secret: Boolean
2309
2302
  deprecated: Boolean
2310
2303
  deprecationReason: String
2311
2304
  pattern: String
@@ -2322,6 +2315,7 @@ type IntCustomFieldConfig implements CustomField {
2322
2315
  internal: Boolean
2323
2316
  nullable: Boolean
2324
2317
  requiresPermission: [Permission!]
2318
+ secret: Boolean
2325
2319
  deprecated: Boolean
2326
2320
  deprecationReason: String
2327
2321
  min: Int
@@ -2340,6 +2334,7 @@ type FloatCustomFieldConfig implements CustomField {
2340
2334
  internal: Boolean
2341
2335
  nullable: Boolean
2342
2336
  requiresPermission: [Permission!]
2337
+ secret: Boolean
2343
2338
  deprecated: Boolean
2344
2339
  deprecationReason: String
2345
2340
  min: Float
@@ -2358,6 +2353,7 @@ type BooleanCustomFieldConfig implements CustomField {
2358
2353
  internal: Boolean
2359
2354
  nullable: Boolean
2360
2355
  requiresPermission: [Permission!]
2356
+ secret: Boolean
2361
2357
  deprecated: Boolean
2362
2358
  deprecationReason: String
2363
2359
  ui: JSON
@@ -2377,6 +2373,7 @@ type DateTimeCustomFieldConfig implements CustomField {
2377
2373
  internal: Boolean
2378
2374
  nullable: Boolean
2379
2375
  requiresPermission: [Permission!]
2376
+ secret: Boolean
2380
2377
  deprecated: Boolean
2381
2378
  deprecationReason: String
2382
2379
  min: String
@@ -2395,6 +2392,7 @@ type RelationCustomFieldConfig implements CustomField {
2395
2392
  internal: Boolean
2396
2393
  nullable: Boolean
2397
2394
  requiresPermission: [Permission!]
2395
+ secret: Boolean
2398
2396
  deprecated: Boolean
2399
2397
  deprecationReason: String
2400
2398
  entity: String!
@@ -2412,6 +2410,7 @@ type TextCustomFieldConfig implements CustomField {
2412
2410
  internal: Boolean
2413
2411
  nullable: Boolean
2414
2412
  requiresPermission: [Permission!]
2413
+ secret: Boolean
2415
2414
  deprecated: Boolean
2416
2415
  deprecationReason: String
2417
2416
  ui: JSON
@@ -2427,6 +2426,7 @@ type LocaleTextCustomFieldConfig implements CustomField {
2427
2426
  internal: Boolean
2428
2427
  nullable: Boolean
2429
2428
  requiresPermission: [Permission!]
2429
+ secret: Boolean
2430
2430
  deprecated: Boolean
2431
2431
  deprecationReason: String
2432
2432
  ui: JSON
@@ -2524,6 +2524,7 @@ type StructCustomFieldConfig implements CustomField {
2524
2524
  internal: Boolean
2525
2525
  nullable: Boolean
2526
2526
  requiresPermission: [Permission!]
2527
+ secret: Boolean
2527
2528
  deprecated: Boolean
2528
2529
  deprecationReason: String
2529
2530
  ui: JSON
@@ -3582,11 +3583,11 @@ type SearchResponse {
3582
3583
  totalItems: Int!
3583
3584
  facetValues: [FacetValueResult!]!
3584
3585
  collections: [CollectionResult!]!
3585
- queryId: String
3586
3586
  facets: [FacetResult!]!
3587
3587
  facetCounts: [FacetCountData!]!
3588
3588
  prices: SearchResponsePriceData!
3589
3589
  topCollections: [TopCollectionResult]!
3590
+ queryId: String
3590
3591
  }
3591
3592
 
3592
3593
  """
@@ -3641,6 +3642,7 @@ type SearchResult {
3641
3642
  collectionSlugs: [String!]!
3642
3643
  highlights: [ResultHighlight!]!
3643
3644
  geoDistance: [GeoDistance!]
3645
+ customMappings: SearchResultCustomMappings!
3644
3646
  }
3645
3647
 
3646
3648
  """
@@ -3726,7 +3728,7 @@ type ProductVariant implements Node {
3726
3728
  appearsInShoppingLists: [ProductVariantShoppingListData!]!
3727
3729
  priceTiers: [PriceTier!]!
3728
3730
  packagingUnits: [ShopProductVariantPackagingUnit!]!
3729
- customFields: JSON
3731
+ customFields: ProductVariantCustomFields
3730
3732
  }
3731
3733
 
3732
3734
  type ProductVariantTranslation {
@@ -3987,6 +3989,25 @@ type PaymentDeclinedError implements ErrorResult {
3987
3989
  paymentErrorMessage: String!
3988
3990
  }
3989
3991
 
3992
+ """
3993
+ Returned by `addPaymentToOrder` when one or more coupon codes were removed
3994
+ from the Order during payment-time revalidation and the removal would have
3995
+ increased the amount the customer is charged. Refusing the payment in this
3996
+ case prevents silently charging the customer more than they agreed to. The
3997
+ most common trigger is a usage-limited coupon's slot being claimed by a
3998
+ concurrent checkout, but the same protection applies when a coupon is
3999
+ stripped because the order no longer meets the promotion's eligibility
4000
+ conditions or because the promotion was disabled mid-checkout.
4001
+ """
4002
+ type CouponRemovedDuringCheckoutError implements ErrorResult {
4003
+ errorCode: ErrorCode!
4004
+ message: String!
4005
+ removedCouponCodes: [String!]!
4006
+ previousTotalWithTax: Money!
4007
+ newTotalWithTax: Money!
4008
+ currencyCode: CurrencyCode!
4009
+ }
4010
+
3990
4011
  """
3991
4012
  Returned when attempting to set the Customer for an Order when already logged in.
3992
4013
  """
@@ -4240,7 +4261,7 @@ input ProductVariantListOptions {
4240
4261
  filterOperator: LogicalOperator
4241
4262
  }
4242
4263
 
4243
- union AddPaymentToOrderResult = Order | OrderPaymentStateError | IneligiblePaymentMethodError | PaymentFailedError | PaymentDeclinedError | OrderStateTransitionError | NoActiveOrderError
4264
+ union AddPaymentToOrderResult = Order | OrderPaymentStateError | IneligiblePaymentMethodError | PaymentFailedError | PaymentDeclinedError | OrderStateTransitionError | NoActiveOrderError | CouponRemovedDuringCheckoutError
4244
4265
 
4245
4266
  union TransitionOrderToStateResult = Order | OrderStateTransitionError
4246
4267
 
@@ -4291,8 +4312,8 @@ type Company implements Node {
4291
4312
  state: String!
4292
4313
  addresses: [CompanyAddress!]!
4293
4314
  companyRoles: [CompanyRole!]!
4294
- businessUnits: [CompanyBusinessUnit!]!
4295
4315
  companyPaymentMethods: [CompanyPaymentMethod!]!
4316
+ businessUnits: [CompanyBusinessUnit!]!
4296
4317
  customFields: CompanyCustomFields
4297
4318
  }
4298
4319
 
@@ -4308,20 +4329,6 @@ type CompanyUser implements Node {
4308
4329
  customFields: JSON
4309
4330
  }
4310
4331
 
4311
- type CompanyBusinessUnit implements Node {
4312
- id: ID!
4313
- createdAt: DateTime!
4314
- updatedAt: DateTime!
4315
- name: String!
4316
- email: String
4317
- phone: String
4318
- company: Company!
4319
- parent: CompanyBusinessUnit
4320
- children: [CompanyBusinessUnit!]!
4321
- addresses: [CompanyAddress!]!
4322
- customFields: JSON
4323
- }
4324
-
4325
4332
  type CompanyRole implements Node {
4326
4333
  id: ID!
4327
4334
  createdAt: DateTime!
@@ -4439,8 +4446,8 @@ input UpdateCompanyAddressInput {
4439
4446
  type CompanyAccount {
4440
4447
  company: Company!
4441
4448
  companyUser: CompanyUser!
4442
- activeBusinessUnit: CompanyBusinessUnit
4443
4449
  permissions: [String!]!
4450
+ activeBusinessUnit: CompanyBusinessUnit
4444
4451
  }
4445
4452
 
4446
4453
  input RegisterCompanyInput {
@@ -4451,21 +4458,6 @@ input UpdateCompanyAccountInput {
4451
4458
  name: String
4452
4459
  }
4453
4460
 
4454
- input CreateCompanyBusinessUnitShopInput {
4455
- name: String!
4456
- email: String
4457
- phone: String
4458
- parentId: ID
4459
- }
4460
-
4461
- input UpdateCompanyBusinessUnitShopInput {
4462
- id: ID!
4463
- name: String
4464
- email: String
4465
- phone: String
4466
- parentId: ID
4467
- }
4468
-
4469
4461
  input CreateCompanyAddressShopInput {
4470
4462
  fullName: String!
4471
4463
  streetLine1: String!
@@ -4519,14 +4511,33 @@ type InvitationTokenError implements ErrorResult {
4519
4511
 
4520
4512
  union AcceptCompanyInvitationResult = CompanyAccount | InvitationTokenError
4521
4513
 
4522
- input SearchListViewedEventInput {
4523
- queryId: String!
4514
+ type CompanyBusinessUnit implements Node {
4515
+ id: ID!
4516
+ createdAt: DateTime!
4517
+ updatedAt: DateTime!
4518
+ name: String!
4519
+ email: String
4520
+ phone: String
4521
+ company: Company!
4522
+ parent: CompanyBusinessUnit
4523
+ children: [CompanyBusinessUnit!]!
4524
+ addresses: [CompanyAddress!]!
4525
+ customFields: JSON
4524
4526
  }
4525
4527
 
4526
- input SearchResultClickedEventInput {
4527
- queryId: String!
4528
- position: Int!
4529
- resultId: String!
4528
+ input CreateCompanyBusinessUnitShopInput {
4529
+ name: String!
4530
+ email: String
4531
+ phone: String
4532
+ parentId: ID
4533
+ }
4534
+
4535
+ input UpdateCompanyBusinessUnitShopInput {
4536
+ id: ID!
4537
+ name: String
4538
+ email: String
4539
+ phone: String
4540
+ parentId: ID
4530
4541
  }
4531
4542
 
4532
4543
  enum InfixMode {
@@ -4684,6 +4695,21 @@ input ExternalSearchScopedInput {
4684
4695
  prefixMode: Boolean
4685
4696
  }
4686
4697
 
4698
+ type SearchResultCustomMappings {
4699
+ productTypeId: ID
4700
+ productTypeName: String
4701
+ }
4702
+
4703
+ input SearchListViewedEventInput {
4704
+ queryId: String!
4705
+ }
4706
+
4707
+ input SearchResultClickedEventInput {
4708
+ queryId: String!
4709
+ position: Int!
4710
+ resultId: String!
4711
+ }
4712
+
4687
4713
  enum TaxIdValidationStatus {
4688
4714
  Pending
4689
4715
  Valid
@@ -4765,11 +4791,11 @@ type ShoppingListItem implements Node {
4765
4791
  productVariant: ProductVariant!
4766
4792
  productVariantId: ID!
4767
4793
  product: Product!
4768
- purchased: Boolean!
4769
- lastPurchasedAt: DateTime
4770
4794
  note: String
4771
4795
  quantity: Int!
4772
4796
  sortOrder: Int!
4797
+ purchased: Boolean!
4798
+ lastPurchasedAt: DateTime
4773
4799
  customFields: JSON
4774
4800
  }
4775
4801
 
@@ -5044,14 +5070,6 @@ type ReorderResult {
5044
5070
  failedCount: Int!
5045
5071
  }
5046
5072
 
5047
- type GiftCardTemplate implements Node {
5048
- id: ID!
5049
- createdAt: DateTime!
5050
- updatedAt: DateTime!
5051
- name: String!
5052
- image: Asset!
5053
- }
5054
-
5055
5073
  enum StoreCreditTransactionType {
5056
5074
  CREDIT
5057
5075
  DEBIT
@@ -5067,18 +5085,18 @@ type StoreCredit implements Node {
5067
5085
  id: ID!
5068
5086
  createdAt: DateTime!
5069
5087
  updatedAt: DateTime!
5070
- type: String!
5071
5088
  code: String!
5072
5089
  initialValue: Int!
5073
5090
  balance: Int!
5074
5091
  currencyCode: CurrencyCode!
5075
5092
  active: Boolean!
5076
- image: Asset
5077
5093
  transactions: [StoreCreditTransaction!]!
5078
- purchasedWithOrder: Order
5079
5094
  expiryDate: DateTime
5080
5095
  issuedTo: Customer
5081
5096
  note: String
5097
+ type: String!
5098
+ image: Asset
5099
+ purchasedWithOrder: Order
5082
5100
  senderName: String
5083
5101
  recipientEmailAddress: String
5084
5102
  message: String
@@ -5100,6 +5118,59 @@ type StoreCreditTransaction implements Node {
5100
5118
  note: String
5101
5119
  }
5102
5120
 
5121
+ type AppliedStoreCredit {
5122
+ code: String!
5123
+ balance: Int!
5124
+
5125
+ """
5126
+ The amount actually deducted from this order (may be less than balance)
5127
+ """
5128
+ amountDeducted: Int!
5129
+ }
5130
+
5131
+ type StoreCreditError implements ErrorResult {
5132
+ errorCode: ErrorCode!
5133
+ message: String!
5134
+ }
5135
+
5136
+ union ApplyStoreCreditToOrderResult = Order | StoreCreditError
5137
+
5138
+ union ClaimStoreCreditResult = StoreCredit | StoreCreditError
5139
+
5140
+ union AddPaymentToOrderWithStoreCreditResult = Order | OrderPaymentStateError | IneligiblePaymentMethodError | PaymentFailedError | PaymentDeclinedError | OrderStateTransitionError | StoreCreditError
5141
+
5142
+ type StoreCreditList implements PaginatedList {
5143
+ items: [StoreCredit!]!
5144
+ totalItems: Int!
5145
+ }
5146
+
5147
+ input StoreCreditListOptions {
5148
+ """Skips the first n results, for use in pagination"""
5149
+ skip: Int
5150
+
5151
+ """Takes n results, for use in pagination"""
5152
+ take: Int
5153
+
5154
+ """Specifies which properties to sort the results by"""
5155
+ sort: StoreCreditSortParameter
5156
+
5157
+ """Allows the results to be filtered"""
5158
+ filter: StoreCreditFilterParameter
5159
+
5160
+ """
5161
+ Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND.
5162
+ """
5163
+ filterOperator: LogicalOperator
5164
+ }
5165
+
5166
+ type GiftCardTemplate implements Node {
5167
+ id: ID!
5168
+ createdAt: DateTime!
5169
+ updatedAt: DateTime!
5170
+ name: String!
5171
+ image: Asset!
5172
+ }
5173
+
5103
5174
  type GiftCardTemplateList implements PaginatedList {
5104
5175
  items: [GiftCardTemplate!]!
5105
5176
  totalItems: Int!
@@ -5134,17 +5205,6 @@ input GiftCardTemplateFilterParameter {
5134
5205
  _or: [GiftCardTemplateFilterParameter!]
5135
5206
  }
5136
5207
 
5137
- type AppliedStoreCredit {
5138
- code: String!
5139
- balance: Int!
5140
-
5141
- """
5142
- The amount actually deducted from this order (may be less than balance)
5143
- """
5144
- amountDeducted: Int!
5145
- }
5146
-
5147
- """The config for the Gift Card to be purchased"""
5148
5208
  type GiftCardInput {
5149
5209
  value: Int!
5150
5210
  senderName: String
@@ -5164,41 +5224,6 @@ input AddGiftCardToOrderInput {
5164
5224
  deliveryDate: DateTime
5165
5225
  }
5166
5226
 
5167
- type StoreCreditError implements ErrorResult {
5168
- errorCode: ErrorCode!
5169
- message: String!
5170
- }
5171
-
5172
- union ApplyStoreCreditToOrderResult = Order | StoreCreditError
5173
-
5174
- union ClaimStoreCreditResult = StoreCredit | StoreCreditError
5175
-
5176
- union AddPaymentToOrderWithStoreCreditResult = Order | OrderPaymentStateError | IneligiblePaymentMethodError | PaymentFailedError | PaymentDeclinedError | OrderStateTransitionError | StoreCreditError
5177
-
5178
- type StoreCreditList implements PaginatedList {
5179
- items: [StoreCredit!]!
5180
- totalItems: Int!
5181
- }
5182
-
5183
- input StoreCreditListOptions {
5184
- """Skips the first n results, for use in pagination"""
5185
- skip: Int
5186
-
5187
- """Takes n results, for use in pagination"""
5188
- take: Int
5189
-
5190
- """Specifies which properties to sort the results by"""
5191
- sort: StoreCreditSortParameter
5192
-
5193
- """Allows the results to be filtered"""
5194
- filter: StoreCreditFilterParameter
5195
-
5196
- """
5197
- Specifies whether multiple top-level "filter" fields should be combined with a logical AND or OR operation. Defaults to AND.
5198
- """
5199
- filterOperator: LogicalOperator
5200
- }
5201
-
5202
5227
  enum QuoteStatus {
5203
5228
  DRAFT
5204
5229
  IN_REVIEW
@@ -5216,11 +5241,6 @@ enum QuoteVersionVisibility {
5216
5241
  VISIBLE
5217
5242
  }
5218
5243
 
5219
- enum QuoteCommentVisibility {
5220
- INTERNAL
5221
- EXTERNAL
5222
- }
5223
-
5224
5244
  type Quote implements Node {
5225
5245
  id: ID!
5226
5246
  createdAt: DateTime!
@@ -5231,8 +5251,8 @@ type Quote implements Node {
5231
5251
  convertedOrderId: ID
5232
5252
  customer: Customer!
5233
5253
  currentVersion: QuoteVersion
5234
- versions: [QuoteVersion!]!
5235
5254
  comments: [QuoteComment!]!
5255
+ versions: [QuoteVersion!]!
5236
5256
  customFields: JSON
5237
5257
  }
5238
5258
 
@@ -5264,16 +5284,6 @@ type QuoteLineItem implements Node {
5264
5284
  customFields: JSON
5265
5285
  }
5266
5286
 
5267
- type QuoteComment implements Node {
5268
- id: ID!
5269
- createdAt: DateTime!
5270
- updatedAt: DateTime!
5271
- text: String!
5272
- visibility: QuoteCommentVisibility!
5273
- authorCustomer: Customer
5274
- customFields: JSON
5275
- }
5276
-
5277
5287
  type QuoteList implements PaginatedList {
5278
5288
  items: [Quote!]!
5279
5289
  totalItems: Int!
@@ -5328,6 +5338,21 @@ input RequestQuoteInput {
5328
5338
  note: String
5329
5339
  }
5330
5340
 
5341
+ enum QuoteCommentVisibility {
5342
+ INTERNAL
5343
+ EXTERNAL
5344
+ }
5345
+
5346
+ type QuoteComment implements Node {
5347
+ id: ID!
5348
+ createdAt: DateTime!
5349
+ updatedAt: DateTime!
5350
+ text: String!
5351
+ visibility: QuoteCommentVisibility!
5352
+ authorCustomer: Customer
5353
+ customFields: JSON
5354
+ }
5355
+
5331
5356
  enum SharedCartRole {
5332
5357
  view
5333
5358
  edit
@@ -5352,7 +5377,7 @@ type SharedCart implements Node {
5352
5377
  activity: [SharedCartActivity!]!
5353
5378
  owner: Customer!
5354
5379
  companyId: ID!
5355
- businessUnitId: ID
5380
+ customFields: JSON
5356
5381
  }
5357
5382
 
5358
5383
  type SharedCartMember implements Node {
@@ -5361,6 +5386,7 @@ type SharedCartMember implements Node {
5361
5386
  updatedAt: DateTime!
5362
5387
  customer: Customer!
5363
5388
  role: SharedCartRole!
5389
+ customFields: JSON
5364
5390
  }
5365
5391
 
5366
5392
  type SharedCartActivity implements Node {
@@ -5373,6 +5399,7 @@ type SharedCartActivity implements Node {
5373
5399
  targetLineId: ID
5374
5400
  targetCustomer: Customer
5375
5401
  detail: JSON
5402
+ customFields: JSON
5376
5403
  }
5377
5404
 
5378
5405
  type SharedCartList implements PaginatedList {
@@ -5402,24 +5429,28 @@ input SharedCartListOptions {
5402
5429
  input CreateSharedCartInput {
5403
5430
  name: String!
5404
5431
  description: String
5432
+ customFields: JSON
5405
5433
  }
5406
5434
 
5407
5435
  input UpdateSharedCartInput {
5408
5436
  id: ID!
5409
5437
  name: String
5410
5438
  description: String
5439
+ customFields: JSON
5411
5440
  }
5412
5441
 
5413
5442
  input CreateSharedCartMemberInput {
5414
5443
  sharedCartId: ID!
5415
5444
  customerId: ID!
5416
5445
  role: SharedCartRole!
5446
+ customFields: JSON
5417
5447
  }
5418
5448
 
5419
5449
  input UpdateSharedCartMemberInput {
5420
5450
  sharedCartId: ID!
5421
5451
  customerId: ID!
5422
5452
  role: SharedCartRole
5453
+ customFields: JSON
5423
5454
  }
5424
5455
 
5425
5456
  type PriceTier {
@@ -5491,6 +5522,27 @@ type ShopProductVariantPackagingUnit {
5491
5522
  priceTiers: [PriceTier!]!
5492
5523
  }
5493
5524
 
5525
+ enum ProductTypeFieldEntityType {
5526
+ Product
5527
+ ProductVariant
5528
+ }
5529
+
5530
+ type ProductTypeFieldAssignment {
5531
+ fieldName: String!
5532
+ entityType: ProductTypeFieldEntityType!
5533
+ required: Boolean!
5534
+ group: String
5535
+ sortOrder: Int!
5536
+ }
5537
+
5538
+ type ProductType {
5539
+ id: ID!
5540
+ code: String!
5541
+ name: String!
5542
+ fieldAssignments: [ProductTypeFieldAssignment!]!
5543
+ customFields: JSON
5544
+ }
5545
+
5494
5546
  enum FieldType {
5495
5547
  NUMBER
5496
5548
  SELECT
@@ -5580,17 +5632,6 @@ type ProductConfigurationFieldValue {
5580
5632
  value: String!
5581
5633
  }
5582
5634
 
5583
- type ProductConfigurationLine implements Node {
5584
- id: ID!
5585
- createdAt: DateTime!
5586
- updatedAt: DateTime!
5587
- sourceKey: String!
5588
- quantity: Int!
5589
- productVariant: ProductVariant!
5590
- productConfiguration: ProductConfiguration!
5591
- metadata: JSON
5592
- }
5593
-
5594
5635
  type ProductConfiguration implements Node {
5595
5636
  id: ID!
5596
5637
  createdAt: DateTime!
@@ -5604,12 +5645,6 @@ type ProductConfiguration implements Node {
5604
5645
  customFields: JSON
5605
5646
  }
5606
5647
 
5607
- type CalculationError {
5608
- sourceKey: String!
5609
- type: String!
5610
- message: String!
5611
- }
5612
-
5613
5648
  type EvaluatedFieldOption {
5614
5649
  value: String!
5615
5650
  label: String
@@ -5630,33 +5665,6 @@ type EvaluatedField {
5630
5665
  messages: [EvaluatedFieldMessage!]!
5631
5666
  }
5632
5667
 
5633
- type EvaluatedProductConfigurationLine {
5634
- sourceKey: String!
5635
- quantity: Int!
5636
- productVariant: ProductVariant!
5637
- metadata: JSON
5638
- }
5639
-
5640
- type ProductConfigurationEvaluationTotals {
5641
- lineCount: Int!
5642
- totalQuantity: Int!
5643
- }
5644
-
5645
- """
5646
- Trace record for one rule considered during evaluation. Emitted whether the
5647
- rule fired or was skipped, so dashboard tooling can show authors which rules
5648
- were hit for a given set of inputs.
5649
- """
5650
- type ExecutedRule {
5651
- ruleId: ID!
5652
- ruleName: String!
5653
- phaseKey: String!
5654
- order: Int!
5655
- matched: Boolean!
5656
- skipReason: String
5657
- actionsApplied: Int!
5658
- }
5659
-
5660
5668
  type ProductConfigurationEvaluation {
5661
5669
  fields: [EvaluatedField!]!
5662
5670
  lines: [EvaluatedProductConfigurationLine!]!
@@ -5687,6 +5695,50 @@ input UpdateProductConfigurationOnOrderInput {
5687
5695
  name: String
5688
5696
  }
5689
5697
 
5698
+ type CalculationError {
5699
+ sourceKey: String!
5700
+ type: String!
5701
+ message: String!
5702
+ }
5703
+
5704
+ type EvaluatedProductConfigurationLine {
5705
+ sourceKey: String!
5706
+ quantity: Int!
5707
+ productVariant: ProductVariant!
5708
+ metadata: JSON
5709
+ }
5710
+
5711
+ type ProductConfigurationEvaluationTotals {
5712
+ lineCount: Int!
5713
+ totalQuantity: Int!
5714
+ }
5715
+
5716
+ """
5717
+ Trace record for one rule considered during evaluation. Emitted whether the
5718
+ rule fired or was skipped, so dashboard tooling can show authors which rules
5719
+ were hit for a given set of inputs.
5720
+ """
5721
+ type ExecutedRule {
5722
+ ruleId: ID!
5723
+ ruleName: String!
5724
+ phaseKey: String!
5725
+ order: Int!
5726
+ matched: Boolean!
5727
+ skipReason: String
5728
+ actionsApplied: Int!
5729
+ }
5730
+
5731
+ type ProductConfigurationLine implements Node {
5732
+ id: ID!
5733
+ createdAt: DateTime!
5734
+ updatedAt: DateTime!
5735
+ sourceKey: String!
5736
+ quantity: Int!
5737
+ productVariant: ProductVariant!
5738
+ productConfiguration: ProductConfiguration!
5739
+ metadata: JSON
5740
+ }
5741
+
5690
5742
  enum ApprovalRequestStatus {
5691
5743
  PENDING
5692
5744
  IN_PROGRESS
@@ -5817,6 +5869,8 @@ input ProductVariantFilterParameter {
5817
5869
  stockLevel: StringOperators
5818
5870
  _and: [ProductVariantFilterParameter!]
5819
5871
  _or: [ProductVariantFilterParameter!]
5872
+ warrantyMonths: NumberOperators
5873
+ weightGrams: NumberOperators
5820
5874
  }
5821
5875
 
5822
5876
  input ProductVariantSortParameter {
@@ -5829,6 +5883,8 @@ input ProductVariantSortParameter {
5829
5883
  price: SortOrder
5830
5884
  priceWithTax: SortOrder
5831
5885
  stockLevel: SortOrder
5886
+ warrantyMonths: SortOrder
5887
+ weightGrams: SortOrder
5832
5888
  }
5833
5889
 
5834
5890
  input CustomerFilterParameter {
@@ -5878,6 +5934,8 @@ input OrderFilterParameter {
5878
5934
  _and: [OrderFilterParameter!]
5879
5935
  _or: [OrderFilterParameter!]
5880
5936
  sourceQuoteId: StringOperators
5937
+ companyId: IDOperators
5938
+ companyBusinessUnitId: IDOperators
5881
5939
  }
5882
5940
 
5883
5941
  input OrderSortParameter {
@@ -5898,6 +5956,8 @@ input OrderSortParameter {
5898
5956
  company: SortOrder
5899
5957
  companyBusinessUnit: SortOrder
5900
5958
  sourceQuoteId: SortOrder
5959
+ companyId: SortOrder
5960
+ companyBusinessUnitId: SortOrder
5901
5961
  }
5902
5962
 
5903
5963
  input FacetValueFilterParameter {
@@ -5993,9 +6053,17 @@ input ProductFilterParameter {
5993
6053
  enabled: BooleanOperators
5994
6054
  _and: [ProductFilterParameter!]
5995
6055
  _or: [ProductFilterParameter!]
6056
+ material: StringOperators
6057
+ countryOfOrigin: StringOperators
6058
+ careInstructions: StringOperators
6059
+ screenResolution: StringOperators
6060
+ batteryLife: StringOperators
6061
+ metaTitle: StringOperators
6062
+ metaDescription: StringOperators
5996
6063
  isGiftCard: BooleanOperators
5997
6064
  configuratorSystemCode: StringOperators
5998
6065
  unspscCode: StringOperators
6066
+ productTypeId: IDOperators
5999
6067
  }
6000
6068
 
6001
6069
  input ProductSortParameter {
@@ -6005,16 +6073,24 @@ input ProductSortParameter {
6005
6073
  name: SortOrder
6006
6074
  slug: SortOrder
6007
6075
  description: SortOrder
6076
+ material: SortOrder
6077
+ countryOfOrigin: SortOrder
6078
+ careInstructions: SortOrder
6079
+ screenResolution: SortOrder
6080
+ batteryLife: SortOrder
6081
+ metaTitle: SortOrder
6082
+ metaDescription: SortOrder
6008
6083
  isGiftCard: SortOrder
6084
+ productType: SortOrder
6009
6085
  configuratorSystemCode: SortOrder
6010
6086
  unspscCode: SortOrder
6087
+ productTypeId: SortOrder
6011
6088
  }
6012
6089
 
6013
6090
  input StoreCreditFilterParameter {
6014
6091
  id: IDOperators
6015
6092
  createdAt: DateOperators
6016
6093
  updatedAt: DateOperators
6017
- type: StringOperators
6018
6094
  code: StringOperators
6019
6095
  initialValue: NumberOperators
6020
6096
  balance: NumberOperators
@@ -6022,6 +6098,7 @@ input StoreCreditFilterParameter {
6022
6098
  active: BooleanOperators
6023
6099
  expiryDate: DateOperators
6024
6100
  note: StringOperators
6101
+ type: StringOperators
6025
6102
  senderName: StringOperators
6026
6103
  recipientEmailAddress: StringOperators
6027
6104
  message: StringOperators
@@ -6035,12 +6112,12 @@ input StoreCreditSortParameter {
6035
6112
  id: SortOrder
6036
6113
  createdAt: SortOrder
6037
6114
  updatedAt: SortOrder
6038
- type: SortOrder
6039
6115
  code: SortOrder
6040
6116
  initialValue: SortOrder
6041
6117
  balance: SortOrder
6042
6118
  expiryDate: SortOrder
6043
6119
  note: SortOrder
6120
+ type: SortOrder
6044
6121
  senderName: SortOrder
6045
6122
  recipientEmailAddress: SortOrder
6046
6123
  message: SortOrder
@@ -6084,7 +6161,6 @@ input SharedCartFilterParameter {
6084
6161
  description: StringOperators
6085
6162
  status: StringOperators
6086
6163
  companyId: IDOperators
6087
- businessUnitId: IDOperators
6088
6164
  _and: [SharedCartFilterParameter!]
6089
6165
  _or: [SharedCartFilterParameter!]
6090
6166
  }
@@ -6096,7 +6172,6 @@ input SharedCartSortParameter {
6096
6172
  name: SortOrder
6097
6173
  description: SortOrder
6098
6174
  companyId: SortOrder
6099
- businessUnitId: SortOrder
6100
6175
  }
6101
6176
 
6102
6177
  input ApprovalRequestFilterParameter {
@@ -6127,11 +6202,11 @@ input ShoppingListItemFilterParameter {
6127
6202
  createdAt: DateOperators
6128
6203
  updatedAt: DateOperators
6129
6204
  productVariantId: IDOperators
6130
- purchased: BooleanOperators
6131
- lastPurchasedAt: DateOperators
6132
6205
  note: StringOperators
6133
6206
  quantity: NumberOperators
6134
6207
  sortOrder: NumberOperators
6208
+ purchased: BooleanOperators
6209
+ lastPurchasedAt: DateOperators
6135
6210
  _and: [ShoppingListItemFilterParameter!]
6136
6211
  _or: [ShoppingListItemFilterParameter!]
6137
6212
  }
@@ -6141,10 +6216,10 @@ input ShoppingListItemSortParameter {
6141
6216
  createdAt: SortOrder
6142
6217
  updatedAt: SortOrder
6143
6218
  productVariantId: SortOrder
6144
- lastPurchasedAt: SortOrder
6145
6219
  note: SortOrder
6146
6220
  quantity: SortOrder
6147
6221
  sortOrder: SortOrder
6222
+ lastPurchasedAt: SortOrder
6148
6223
  }
6149
6224
 
6150
6225
  type CustomerCustomFields {
@@ -6163,6 +6238,8 @@ type OrderCustomFields {
6163
6238
  company: Company
6164
6239
  companyBusinessUnit: CompanyBusinessUnit
6165
6240
  sourceQuoteId: String
6241
+ companyId: ID
6242
+ companyBusinessUnitId: ID
6166
6243
  }
6167
6244
 
6168
6245
  type OrderLineCustomFields {
@@ -6172,12 +6249,29 @@ type OrderLineCustomFields {
6172
6249
  packagingUnitConversionFactor: Float
6173
6250
  productConfigurationLine: ProductConfigurationLine
6174
6251
  productConfiguration: ProductConfiguration
6252
+ packagingUnitId: ID
6253
+ productConfigurationLineId: ID
6254
+ productConfigurationId: ID
6175
6255
  }
6176
6256
 
6177
6257
  type ProductCustomFields {
6258
+ material: String
6259
+ countryOfOrigin: String
6260
+ careInstructions: String
6261
+ screenResolution: String
6262
+ batteryLife: String
6263
+ metaTitle: String
6264
+ metaDescription: String
6178
6265
  isGiftCard: Boolean
6266
+ productType: ProductType
6179
6267
  configuratorSystemCode: String
6180
6268
  unspscCode: String
6269
+ productTypeId: ID
6270
+ }
6271
+
6272
+ type ProductVariantCustomFields {
6273
+ warrantyMonths: Int
6274
+ weightGrams: Int
6181
6275
  }
6182
6276
 
6183
6277
  type CompanyCustomFields {