@gem-sdk/core 1.38.0 → 2.0.0-dev.834

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 (331) hide show
  1. package/dist/cjs/components/AddOn.js +1 -18
  2. package/dist/cjs/components/ComponentToolbarPreview.js +1 -465
  3. package/dist/cjs/components/ComponentWrapper.js +1 -46
  4. package/dist/cjs/components/ComponentWrapperPreview.js +1 -136
  5. package/dist/cjs/components/Empty.js +1 -7
  6. package/dist/cjs/components/Render.js +1 -65
  7. package/dist/cjs/components/Render.liquid.js +14 -288
  8. package/dist/cjs/components/RenderBlock.js +1 -54
  9. package/dist/cjs/components/RenderCustomCode.js +3 -56
  10. package/dist/cjs/components/RenderPreview.js +1 -66
  11. package/dist/cjs/components/RenderSection.js +1 -23
  12. package/dist/cjs/components/ai-generator/AIContentGenerator.js +1 -0
  13. package/dist/cjs/components/ai-generator/AIGenContentLoading.js +1 -0
  14. package/dist/cjs/components/ai-generator/components/PickProduct.js +1 -0
  15. package/dist/cjs/components/ai-generator/components/ToneAndVoice.js +1 -0
  16. package/dist/cjs/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
  17. package/dist/cjs/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
  18. package/dist/cjs/components/ai-generator/icons/AIIcon.js +1 -0
  19. package/dist/cjs/components/ai-generator/icons/CloseIcon.js +1 -0
  20. package/dist/cjs/components/ai-generator/icons/DropdownIcon.js +1 -0
  21. package/dist/cjs/components/ai-generator/icons/ShowMoreIcon.js +1 -0
  22. package/dist/cjs/components/animation/AnimationWrapper.js +1 -0
  23. package/dist/cjs/components/constant.js +1 -54
  24. package/dist/cjs/components/resize/Resize.js +1 -16
  25. package/dist/cjs/components/resize/Spacing.js +1 -248
  26. package/dist/cjs/components/src/product/helpers/variant-presets.js +1 -56
  27. package/dist/cjs/components/theme-section/CreateThemeSection.js +1 -117
  28. package/dist/cjs/components/theme-section/ThemeSectionStatus.js +1 -36
  29. package/dist/cjs/components/theme-section/ThemeSectionTooltip.js +1 -102
  30. package/dist/cjs/components/toolbar/Tooltip.js +1 -22
  31. package/dist/cjs/contexts/AddonContext.js +1 -36
  32. package/dist/cjs/contexts/BuilderComponent.js +1 -34
  33. package/dist/cjs/contexts/BuilderContext.js +1 -35
  34. package/dist/cjs/contexts/BuilderPreviewContext.js +1 -479
  35. package/dist/cjs/contexts/CartLineContext.js +1 -29
  36. package/dist/cjs/contexts/CollectionContext.js +1 -38
  37. package/dist/cjs/contexts/ModalContext.js +1 -47
  38. package/dist/cjs/contexts/PageContext.js +1 -44
  39. package/dist/cjs/contexts/ProductContext.js +1 -156
  40. package/dist/cjs/contexts/ProductListContext.js +1 -32
  41. package/dist/cjs/contexts/SectionContext.js +1 -53
  42. package/dist/cjs/contexts/ShopContext.js +1 -80
  43. package/dist/cjs/graphql/fragments/analytic.generated.js +2 -6
  44. package/dist/cjs/graphql/fragments/collection-detail.generated.js +2 -6
  45. package/dist/cjs/graphql/fragments/collection-product.generated.js +2 -6
  46. package/dist/cjs/graphql/fragments/collection.generated.js +2 -6
  47. package/dist/cjs/graphql/fragments/custom-code.generated.js +2 -6
  48. package/dist/cjs/graphql/fragments/custom-font.generated.js +2 -6
  49. package/dist/cjs/graphql/fragments/data-seo.generated.js +2 -6
  50. package/dist/cjs/graphql/fragments/media.generated.js +2 -6
  51. package/dist/cjs/graphql/fragments/product-little.generated.js +11 -6
  52. package/dist/cjs/graphql/fragments/product-option-value.generated.js +2 -6
  53. package/dist/cjs/graphql/fragments/product-option.generated.js +2 -6
  54. package/dist/cjs/graphql/fragments/product.generated.js +11 -6
  55. package/dist/cjs/graphql/fragments/published-custom-section.generated.js +2 -6
  56. package/dist/cjs/graphql/fragments/published-page-section.generated.js +2 -6
  57. package/dist/cjs/graphql/fragments/published-theme-page.generated.js +3 -9
  58. package/dist/cjs/graphql/fragments/published-theme-style.generated.js +2 -6
  59. package/dist/cjs/graphql/fragments/selected-option.generated.js +2 -6
  60. package/dist/cjs/graphql/fragments/variant.generated.js +2 -6
  61. package/dist/cjs/graphql/mutations/page-view-up.generated.js +3 -7
  62. package/dist/cjs/graphql/queries/collection-detail-filter.generated.js +2 -16
  63. package/dist/cjs/graphql/queries/collection.generated.js +2 -14
  64. package/dist/cjs/graphql/queries/collections.generated.js +2 -9
  65. package/dist/cjs/graphql/queries/preview-page.generated.js +2 -14
  66. package/dist/cjs/graphql/queries/product-little-detail.generated.js +2 -11
  67. package/dist/cjs/graphql/queries/product-medias.generated.js +2 -8
  68. package/dist/cjs/graphql/queries/product-value-label.generated.js +2 -6
  69. package/dist/cjs/graphql/queries/product-variants.generated.js +2 -10
  70. package/dist/cjs/graphql/queries/products.generated.js +12 -17
  71. package/dist/cjs/graphql/queries/published-theme-pages.generated.js +2 -15
  72. package/dist/cjs/graphql/queries/store-property.generated.js +2 -6
  73. package/dist/cjs/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
  74. package/dist/cjs/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
  75. package/dist/cjs/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
  76. package/dist/cjs/graphql-app-api/queries/ThemePage.generated.js +22 -0
  77. package/dist/cjs/helpers/GlobalEvent.js +1 -19
  78. package/dist/cjs/helpers/animations.js +1 -213
  79. package/dist/cjs/helpers/background.js +1 -230
  80. package/dist/cjs/helpers/borders.js +4 -183
  81. package/dist/cjs/helpers/carousel.js +1 -58
  82. package/dist/cjs/helpers/clone-deep.js +1 -5
  83. package/dist/cjs/helpers/cls.js +1 -16
  84. package/dist/cjs/helpers/colors.js +1 -184
  85. package/dist/cjs/helpers/compose-advance-style.js +1 -268
  86. package/dist/cjs/helpers/constant.js +1 -23
  87. package/dist/cjs/helpers/convert.js +1 -7
  88. package/dist/cjs/helpers/covert-entities-html.js +1 -19
  89. package/dist/cjs/helpers/css-variable.js +1 -7
  90. package/dist/cjs/helpers/email.js +1 -11
  91. package/dist/cjs/helpers/filter-toolbar-preview.js +1 -14
  92. package/dist/cjs/helpers/flatten-connection.js +1 -9
  93. package/dist/cjs/helpers/get-resonsive-value.js +1 -36
  94. package/dist/cjs/helpers/get-shortname.js +1 -92
  95. package/dist/cjs/helpers/icon-list.js +1 -61
  96. package/dist/cjs/helpers/is-browser.js +1 -9
  97. package/dist/cjs/helpers/is-defined.js +1 -7
  98. package/dist/cjs/helpers/is-empty-children.js +1 -15
  99. package/dist/cjs/helpers/is-safari.js +1 -9
  100. package/dist/cjs/helpers/layout.js +1 -59
  101. package/dist/cjs/helpers/load-script.js +1 -31
  102. package/dist/cjs/helpers/make-style.js +1 -163
  103. package/dist/cjs/helpers/normalize-builder-data.js +1 -23
  104. package/dist/cjs/helpers/prefetch-queries.js +1 -78
  105. package/dist/cjs/helpers/product.js +1 -48
  106. package/dist/cjs/helpers/queries/get-collection.js +1 -226
  107. package/dist/cjs/helpers/queries/get-collections.js +1 -21
  108. package/dist/cjs/helpers/queries/get-product-by-slug.js +1 -125
  109. package/dist/cjs/helpers/queries/get-product.js +1 -154
  110. package/dist/cjs/helpers/queries/get-products.js +1 -163
  111. package/dist/cjs/helpers/query.js +1 -29
  112. package/dist/cjs/helpers/radius.js +6 -140
  113. package/dist/cjs/helpers/render.js +1 -76
  114. package/dist/cjs/helpers/shadow.js +1 -57
  115. package/dist/cjs/helpers/size.js +4 -183
  116. package/dist/cjs/helpers/spacing.js +1 -43
  117. package/dist/cjs/helpers/tracking/fpixel.js +1 -28
  118. package/dist/cjs/helpers/tracking/gtag.js +1 -93
  119. package/dist/cjs/helpers/tracking/tiktokpixel.js +1 -17
  120. package/dist/cjs/helpers/typography.js +17 -126
  121. package/dist/cjs/helpers/variant.js +1 -11
  122. package/dist/cjs/hooks/animation/animations.js +1 -0
  123. package/dist/cjs/hooks/animation/useAnimationActions.js +1 -39
  124. package/dist/cjs/hooks/animation/useAnimationConfig.js +1 -29
  125. package/dist/cjs/hooks/animation/useAnimationPreview.js +1 -31
  126. package/dist/cjs/hooks/animation/useAnimationTarget.js +1 -120
  127. package/dist/cjs/hooks/animation/useApplyAnimation.js +1 -87
  128. package/dist/cjs/hooks/animation/useLivePageAnimation.js +1 -0
  129. package/dist/cjs/hooks/cart/use-add-to-cart.js +1 -20
  130. package/dist/cjs/hooks/cart/use-cart-data.js +1 -28
  131. package/dist/cjs/hooks/cart/use-cart-discount-codes-update.js +1 -20
  132. package/dist/cjs/hooks/cart/use-cart-note-update.js +1 -20
  133. package/dist/cjs/hooks/cart/use-create-cart.js +1 -22
  134. package/dist/cjs/hooks/cart/use-remove-cart-item.js +1 -20
  135. package/dist/cjs/hooks/cart/use-update-cart-item.js +1 -20
  136. package/dist/cjs/hooks/shop/use-collection-query.js +1 -22
  137. package/dist/cjs/hooks/shop/use-collections-query.js +1 -17
  138. package/dist/cjs/hooks/shop/use-product-query.js +1 -22
  139. package/dist/cjs/hooks/shop/use-products-query.js +1 -23
  140. package/dist/cjs/hooks/shop.js +1 -126
  141. package/dist/cjs/hooks/use-current-device.js +1 -21
  142. package/dist/cjs/hooks/use-lazy-video.js +1 -15
  143. package/dist/cjs/hooks/useAnimations.js +1 -26
  144. package/dist/cjs/hooks/useCartId.js +1 -44
  145. package/dist/cjs/hooks/useCartLine.js +1 -11
  146. package/dist/cjs/hooks/useCartUI.js +1 -48
  147. package/dist/cjs/hooks/useCollection.js +1 -9
  148. package/dist/cjs/hooks/useFetchHandle.js +1 -13
  149. package/dist/cjs/hooks/useFormatMoney.js +1 -58
  150. package/dist/cjs/hooks/useInitialSwatchesOptions.js +1 -113
  151. package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +1 -10
  152. package/dist/cjs/hooks/useLoadScript.js +1 -32
  153. package/dist/cjs/hooks/useMoney.js +1 -84
  154. package/dist/cjs/hooks/usePrevious.js +1 -19
  155. package/dist/cjs/hooks/useProduct.js +1 -206
  156. package/dist/cjs/hooks/useProductList.js +1 -21
  157. package/dist/cjs/hooks/useSuspenseFetch.js +1 -27
  158. package/dist/cjs/hooks/useSwatchesOptions.js +1 -41
  159. package/dist/cjs/hooks/useToolbarPostPurchase.js +1 -0
  160. package/dist/cjs/index.js +1 -361
  161. package/dist/cjs/types/animations.js +1 -47
  162. package/dist/cjs/types/appAPI.js +1 -0
  163. package/dist/cjs/types/global-style.js +1 -15
  164. package/dist/cjs/types/shop.js +1 -2
  165. package/dist/cjs/web-components/src/helpers/styles/constant.js +1 -9
  166. package/dist/esm/components/AddOn.js +1 -14
  167. package/dist/esm/components/ComponentToolbarPreview.js +1 -463
  168. package/dist/esm/components/ComponentWrapper.js +1 -42
  169. package/dist/esm/components/ComponentWrapperPreview.js +1 -132
  170. package/dist/esm/components/Empty.js +1 -3
  171. package/dist/esm/components/Render.js +1 -61
  172. package/dist/esm/components/Render.liquid.js +14 -282
  173. package/dist/esm/components/RenderBlock.js +1 -50
  174. package/dist/esm/components/RenderCustomCode.js +3 -52
  175. package/dist/esm/components/RenderPreview.js +1 -62
  176. package/dist/esm/components/RenderSection.js +1 -19
  177. package/dist/esm/components/ai-generator/AIContentGenerator.js +1 -0
  178. package/dist/esm/components/ai-generator/AIGenContentLoading.js +1 -0
  179. package/dist/esm/components/ai-generator/components/PickProduct.js +1 -0
  180. package/dist/esm/components/ai-generator/components/ToneAndVoice.js +1 -0
  181. package/dist/esm/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
  182. package/dist/esm/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
  183. package/dist/esm/components/ai-generator/icons/AIIcon.js +1 -0
  184. package/dist/esm/components/ai-generator/icons/CloseIcon.js +1 -0
  185. package/dist/esm/components/ai-generator/icons/DropdownIcon.js +1 -0
  186. package/dist/esm/components/ai-generator/icons/ShowMoreIcon.js +1 -0
  187. package/dist/esm/components/animation/AnimationWrapper.js +1 -0
  188. package/dist/esm/components/constant.js +1 -50
  189. package/dist/esm/components/resize/Resize.js +1 -12
  190. package/dist/esm/components/resize/Spacing.js +1 -244
  191. package/dist/esm/components/src/product/helpers/variant-presets.js +1 -54
  192. package/dist/esm/components/theme-section/CreateThemeSection.js +1 -115
  193. package/dist/esm/components/theme-section/ThemeSectionStatus.js +1 -34
  194. package/dist/esm/components/theme-section/ThemeSectionTooltip.js +1 -100
  195. package/dist/esm/components/toolbar/Tooltip.js +1 -18
  196. package/dist/esm/contexts/AddonContext.js +1 -32
  197. package/dist/esm/contexts/BuilderComponent.js +1 -31
  198. package/dist/esm/contexts/BuilderContext.js +1 -32
  199. package/dist/esm/contexts/BuilderPreviewContext.js +1 -476
  200. package/dist/esm/contexts/CartLineContext.js +1 -26
  201. package/dist/esm/contexts/CollectionContext.js +1 -35
  202. package/dist/esm/contexts/ModalContext.js +1 -44
  203. package/dist/esm/contexts/PageContext.js +1 -41
  204. package/dist/esm/contexts/ProductContext.js +1 -153
  205. package/dist/esm/contexts/ProductListContext.js +1 -28
  206. package/dist/esm/contexts/SectionContext.js +1 -49
  207. package/dist/esm/contexts/ShopContext.js +1 -77
  208. package/dist/esm/graphql/fragments/analytic.generated.js +2 -4
  209. package/dist/esm/graphql/fragments/collection-detail.generated.js +2 -4
  210. package/dist/esm/graphql/fragments/collection-product.generated.js +2 -4
  211. package/dist/esm/graphql/fragments/collection.generated.js +2 -4
  212. package/dist/esm/graphql/fragments/custom-code.generated.js +2 -4
  213. package/dist/esm/graphql/fragments/custom-font.generated.js +2 -4
  214. package/dist/esm/graphql/fragments/data-seo.generated.js +2 -4
  215. package/dist/esm/graphql/fragments/media.generated.js +2 -4
  216. package/dist/esm/graphql/fragments/product-little.generated.js +11 -4
  217. package/dist/esm/graphql/fragments/product-option-value.generated.js +2 -4
  218. package/dist/esm/graphql/fragments/product-option.generated.js +2 -4
  219. package/dist/esm/graphql/fragments/product.generated.js +11 -4
  220. package/dist/esm/graphql/fragments/published-custom-section.generated.js +2 -4
  221. package/dist/esm/graphql/fragments/published-page-section.generated.js +2 -4
  222. package/dist/esm/graphql/fragments/published-theme-page.generated.js +3 -6
  223. package/dist/esm/graphql/fragments/published-theme-style.generated.js +2 -4
  224. package/dist/esm/graphql/fragments/selected-option.generated.js +2 -4
  225. package/dist/esm/graphql/fragments/variant.generated.js +2 -4
  226. package/dist/esm/graphql/mutations/page-view-up.generated.js +3 -5
  227. package/dist/esm/graphql/queries/collection-detail-filter.generated.js +10 -22
  228. package/dist/esm/graphql/queries/collection.generated.js +8 -18
  229. package/dist/esm/graphql/queries/collections.generated.js +3 -8
  230. package/dist/esm/graphql/queries/preview-page.generated.js +8 -18
  231. package/dist/esm/graphql/queries/product-little-detail.generated.js +5 -12
  232. package/dist/esm/graphql/queries/product-medias.generated.js +2 -6
  233. package/dist/esm/graphql/queries/product-value-label.generated.js +2 -4
  234. package/dist/esm/graphql/queries/product-variants.generated.js +4 -10
  235. package/dist/esm/graphql/queries/products.generated.js +18 -20
  236. package/dist/esm/graphql/queries/published-theme-pages.generated.js +9 -20
  237. package/dist/esm/graphql/queries/store-property.generated.js +2 -4
  238. package/dist/esm/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
  239. package/dist/esm/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
  240. package/dist/esm/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
  241. package/dist/esm/graphql-app-api/queries/ThemePage.generated.js +22 -0
  242. package/dist/esm/helpers/GlobalEvent.js +1 -15
  243. package/dist/esm/helpers/animations.js +1 -211
  244. package/dist/esm/helpers/background.js +1 -222
  245. package/dist/esm/helpers/borders.js +4 -175
  246. package/dist/esm/helpers/carousel.js +1 -54
  247. package/dist/esm/helpers/clone-deep.js +1 -3
  248. package/dist/esm/helpers/cls.js +1 -14
  249. package/dist/esm/helpers/colors.js +1 -169
  250. package/dist/esm/helpers/compose-advance-style.js +1 -261
  251. package/dist/esm/helpers/constant.js +1 -19
  252. package/dist/esm/helpers/convert.js +1 -4
  253. package/dist/esm/helpers/covert-entities-html.js +1 -17
  254. package/dist/esm/helpers/css-variable.js +1 -5
  255. package/dist/esm/helpers/email.js +1 -6
  256. package/dist/esm/helpers/filter-toolbar-preview.js +1 -9
  257. package/dist/esm/helpers/flatten-connection.js +1 -7
  258. package/dist/esm/helpers/get-resonsive-value.js +1 -31
  259. package/dist/esm/helpers/get-shortname.js +1 -90
  260. package/dist/esm/helpers/icon-list.js +1 -58
  261. package/dist/esm/helpers/is-browser.js +1 -5
  262. package/dist/esm/helpers/is-defined.js +1 -5
  263. package/dist/esm/helpers/is-empty-children.js +1 -10
  264. package/dist/esm/helpers/is-safari.js +1 -5
  265. package/dist/esm/helpers/layout.js +1 -54
  266. package/dist/esm/helpers/load-script.js +1 -29
  267. package/dist/esm/helpers/make-style.js +1 -149
  268. package/dist/esm/helpers/normalize-builder-data.js +1 -21
  269. package/dist/esm/helpers/prefetch-queries.js +1 -76
  270. package/dist/esm/helpers/product.js +1 -44
  271. package/dist/esm/helpers/queries/get-collection.js +1 -223
  272. package/dist/esm/helpers/queries/get-collections.js +1 -19
  273. package/dist/esm/helpers/queries/get-product-by-slug.js +1 -123
  274. package/dist/esm/helpers/queries/get-product.js +1 -150
  275. package/dist/esm/helpers/queries/get-products.js +1 -161
  276. package/dist/esm/helpers/query.js +1 -25
  277. package/dist/esm/helpers/radius.js +6 -132
  278. package/dist/esm/helpers/render.js +1 -68
  279. package/dist/esm/helpers/shadow.js +1 -52
  280. package/dist/esm/helpers/size.js +4 -171
  281. package/dist/esm/helpers/spacing.js +1 -40
  282. package/dist/esm/helpers/tracking/fpixel.js +1 -24
  283. package/dist/esm/helpers/tracking/gtag.js +1 -87
  284. package/dist/esm/helpers/tracking/tiktokpixel.js +1 -15
  285. package/dist/esm/helpers/typography.js +17 -116
  286. package/dist/esm/helpers/variant.js +1 -9
  287. package/dist/esm/hooks/animation/animations.js +1 -0
  288. package/dist/esm/hooks/animation/useAnimationActions.js +1 -37
  289. package/dist/esm/hooks/animation/useAnimationConfig.js +1 -27
  290. package/dist/esm/hooks/animation/useAnimationPreview.js +1 -29
  291. package/dist/esm/hooks/animation/useAnimationTarget.js +1 -118
  292. package/dist/esm/hooks/animation/useApplyAnimation.js +1 -83
  293. package/dist/esm/hooks/animation/useLivePageAnimation.js +1 -0
  294. package/dist/esm/hooks/cart/use-add-to-cart.js +1 -18
  295. package/dist/esm/hooks/cart/use-cart-data.js +1 -26
  296. package/dist/esm/hooks/cart/use-cart-discount-codes-update.js +1 -18
  297. package/dist/esm/hooks/cart/use-cart-note-update.js +1 -18
  298. package/dist/esm/hooks/cart/use-create-cart.js +1 -20
  299. package/dist/esm/hooks/cart/use-remove-cart-item.js +1 -18
  300. package/dist/esm/hooks/cart/use-update-cart-item.js +1 -18
  301. package/dist/esm/hooks/shop/use-collection-query.js +1 -20
  302. package/dist/esm/hooks/shop/use-collections-query.js +1 -15
  303. package/dist/esm/hooks/shop/use-product-query.js +1 -20
  304. package/dist/esm/hooks/shop/use-products-query.js +1 -21
  305. package/dist/esm/hooks/shop.js +1 -111
  306. package/dist/esm/hooks/use-current-device.js +1 -19
  307. package/dist/esm/hooks/use-lazy-video.js +1 -13
  308. package/dist/esm/hooks/useAnimations.js +1 -24
  309. package/dist/esm/hooks/useCartId.js +1 -40
  310. package/dist/esm/hooks/useCartLine.js +1 -7
  311. package/dist/esm/hooks/useCartUI.js +1 -44
  312. package/dist/esm/hooks/useCollection.js +1 -7
  313. package/dist/esm/hooks/useFetchHandle.js +1 -11
  314. package/dist/esm/hooks/useFormatMoney.js +1 -56
  315. package/dist/esm/hooks/useInitialSwatchesOptions.js +1 -109
  316. package/dist/esm/hooks/useIsomorphicLayoutEffect.js +1 -6
  317. package/dist/esm/hooks/useLoadScript.js +1 -28
  318. package/dist/esm/hooks/useMoney.js +1 -80
  319. package/dist/esm/hooks/usePrevious.js +1 -17
  320. package/dist/esm/hooks/useProduct.js +1 -192
  321. package/dist/esm/hooks/useProductList.js +1 -16
  322. package/dist/esm/hooks/useSuspenseFetch.js +1 -23
  323. package/dist/esm/hooks/useSwatchesOptions.js +1 -37
  324. package/dist/esm/hooks/useToolbarPostPurchase.js +1 -0
  325. package/dist/esm/index.js +1 -100
  326. package/dist/esm/types/animations.js +1 -47
  327. package/dist/esm/types/appAPI.js +1 -0
  328. package/dist/esm/types/global-style.js +1 -12
  329. package/dist/esm/web-components/src/helpers/styles/constant.js +1 -7
  330. package/dist/types/index.d.ts +25970 -6309
  331. package/package.json +8 -3
@@ -1,223 +1 @@
1
- import { CollectionDetailFilterDocument } from '../../graphql/queries/collection-detail-filter.generated.js';
2
- import { ProductVariantsDocument } from '../../graphql/queries/product-variants.generated.js';
3
- import { isDefined } from '../is-defined.js';
4
-
5
- const PRODUCT_PER_PAGE = 8; // number of products per page
6
- function productSortedByOrder(key) {
7
- switch(key){
8
- case 'TITLE_ASC':
9
- return {
10
- direction: 'ASC',
11
- field: 'TITLE'
12
- };
13
- case 'TITLE_DESC':
14
- return {
15
- direction: 'DESC',
16
- field: 'TITLE'
17
- };
18
- case 'CREATED_AT_ASC':
19
- return {
20
- direction: 'ASC',
21
- field: 'CREATED_AT'
22
- };
23
- case 'CREATED_AT_DESC':
24
- return {
25
- direction: 'DESC',
26
- field: 'CREATED_AT'
27
- };
28
- case 'none':
29
- default:
30
- return {
31
- direction: 'ASC',
32
- field: 'TITLE'
33
- };
34
- }
35
- }
36
- const getCollection = async (fetcher, arg)=>{
37
- const collections = await loopFetchCollection(fetcher, arg);
38
- if (!collections) {
39
- throw new Error('collections not found');
40
- }
41
- // merge product collection variant
42
- const mergeProducts = await mergeProductCollectionVariant(fetcher, collections, arg.isSample);
43
- return mergeProducts;
44
- };
45
- const fetchCollection = async (fetcher, variables)=>{
46
- return fetcher([
47
- CollectionDetailFilterDocument,
48
- variables
49
- ]);
50
- };
51
- const calculateFirstProduct = (numberOfProducts, currentPage, productsPerPage)=>{
52
- const remainingProducts = numberOfProducts - productsPerPage * currentPage;
53
- if (numberOfProducts < productsPerPage) return numberOfProducts;
54
- return remainingProducts > 0 ? productsPerPage : productsPerPage + remainingProducts;
55
- };
56
- const chunkArray = (array, size)=>{
57
- const chunked_arr = [];
58
- let index = 0;
59
- while(index < array.length){
60
- chunked_arr.push(array.slice(index, size + index));
61
- index += size;
62
- }
63
- return chunked_arr;
64
- };
65
- const loopFetchCollection = async (fetcher, arg)=>{
66
- let variables; // variables of collection query
67
- let productAfterFetcher; // product after of collection query
68
- let dataCollection; // data of collection query
69
- let hasNextPage; //
70
- let firstCollection;
71
- let currentPage = 1;
72
- if (arg.numberOfProducts) {
73
- const pages = Math.ceil(arg.numberOfProducts / PRODUCT_PER_PAGE);
74
- while(currentPage <= pages && hasNextPage !== false){
75
- variables = {
76
- firstVariant: 1,
77
- firstMedia: 30,
78
- orderBy: {
79
- field: 'PLATFORM_CREATED_AT',
80
- direction: 'DESC'
81
- },
82
- orderByMedia: {
83
- field: 'POSITION',
84
- direction: 'ASC'
85
- },
86
- firstProduct: calculateFirstProduct(arg.numberOfProducts, currentPage, PRODUCT_PER_PAGE),
87
- ...!arg.id || arg.id.toLowerCase() === 'latest' ? {
88
- where: {
89
- hasCollectionProducts: true,
90
- isSample: arg.isSample
91
- }
92
- } : {
93
- where: {
94
- baseID: arg.id
95
- }
96
- },
97
- orderByProduct: productSortedByOrder(arg.orderBy),
98
- whereProduct: {
99
- status: 'ACTIVE',
100
- ...arg.isStorefront && {
101
- isStorefront: arg.isStorefront
102
- },
103
- isSample: arg.isSample
104
- },
105
- ...productAfterFetcher ? {
106
- productsAfter: productAfterFetcher
107
- } : undefined
108
- };
109
- const pageData = await fetchCollection(fetcher, variables);
110
- productAfterFetcher = pageData?.collections?.edges?.[0]?.node?.products?.pageInfo?.endCursor;
111
- if (currentPage === 1) {
112
- dataCollection = pageData; // set data of first page
113
- firstCollection = dataCollection?.collections?.edges?.[0];
114
- } else if (firstCollection?.node?.products && pageData?.collections?.edges?.[0]?.node?.products?.edges) {
115
- // concat new values to the old ones
116
- firstCollection.node.products = {
117
- pageInfo: pageData?.collections?.edges?.[0]?.node?.products?.pageInfo,
118
- edges: firstCollection.node?.products?.edges.concat(pageData?.collections?.edges?.[0]?.node?.products?.edges)
119
- };
120
- }
121
- currentPage++;
122
- // hasNextPage = false if there is no more pages then break the loop
123
- if (!firstCollection?.node?.products?.pageInfo?.hasNextPage) {
124
- hasNextPage = false;
125
- break;
126
- }
127
- }
128
- return dataCollection;
129
- }
130
- };
131
- const mergeProductCollectionVariant = async (fetcher, collection, isSample)=>{
132
- const node = collection?.collections?.edges?.[0]?.node;
133
- if (!node) return collection;
134
- const productList = node?.products?.edges;
135
- const listBaseId = productList?.map((product)=>product?.node?.baseID).filter(isDefined);
136
- const ProductListWithVariants = await fetchVariantsByBaseIds(fetcher, {
137
- ids: listBaseId,
138
- isSample
139
- });
140
- // mapping variant to product list in collections
141
- const newProductList = productList?.map((product)=>{
142
- const productVariants = ProductListWithVariants?.variants?.edges?.filter((productV)=>productV?.node?.id === product?.node?.id);
143
- return {
144
- ...product,
145
- node: product.node ? {
146
- ...product.node,
147
- variants: product.node?.variants ? {
148
- ...product.node?.variants,
149
- edges: productVariants?.[0]?.node?.variants?.edges ?? []
150
- } : undefined
151
- } : undefined
152
- };
153
- }) ?? [];
154
- const newCollection = {
155
- ...collection,
156
- collections: {
157
- edges: [
158
- {
159
- node: {
160
- ...node,
161
- products: {
162
- edges: newProductList
163
- }
164
- },
165
- cursor: undefined
166
- }
167
- ]
168
- }
169
- };
170
- return newCollection;
171
- };
172
- const fetchVariantsByBaseIds = async (fetcher, { ids, isSample, isStorefront })=>{
173
- const chunkedIds = chunkArray(ids ?? [], 8);
174
- const defaultEdges = [];
175
- const query = async (variables)=>{
176
- try {
177
- return await fetcher([
178
- ProductVariantsDocument,
179
- {
180
- ...variables,
181
- orderByVariant: {
182
- field: 'POSITION',
183
- direction: 'ASC'
184
- }
185
- }
186
- ]);
187
- } catch {
188
- return {};
189
- }
190
- };
191
- const promises = chunkedIds.map((chunkedId)=>{
192
- const variables = {
193
- firstVariant: 100,
194
- first: chunkedId.length,
195
- orderBy: {
196
- field: 'TITLE',
197
- direction: 'ASC'
198
- },
199
- where: {
200
- status: 'ACTIVE',
201
- isSample,
202
- ...isStorefront && {
203
- isStorefront
204
- },
205
- ...chunkedId.length && {
206
- baseIDIn: chunkedId.sort()
207
- }
208
- }
209
- };
210
- return query(variables);
211
- });
212
- const responses = await Promise.all(promises);
213
- const edges = responses?.reduce((acc, response)=>{
214
- return acc.concat(response?.variants?.edges ?? []);
215
- }, defaultEdges);
216
- return {
217
- variants: {
218
- edges
219
- }
220
- };
221
- };
222
-
223
- export { calculateFirstProduct, getCollection };
1
+ import{CollectionDetailFilterDocument as e}from"../../graphql/queries/collection-detail-filter.generated.js";import{ProductVariantsDocument as t}from"../../graphql/queries/product-variants.generated.js";import{isDefined as r}from"../is-defined.js";let PRODUCT_PER_PAGE=8;function productSortedByOrder(e){switch(e){case"TITLE_ASC":case"none":default:return{direction:"ASC",field:"TITLE"};case"TITLE_DESC":return{direction:"DESC",field:"TITLE"};case"CREATED_AT_ASC":return{direction:"ASC",field:"PLATFORM_CREATED_AT"};case"CREATED_AT_DESC":return{direction:"DESC",field:"PLATFORM_CREATED_AT"}}}let getCollection=async(e,t)=>{let r=await loopFetchCollection(e,t);if(!r)throw Error("collections not found");let o=await mergeProductCollectionVariant(e,r,t.isSample);return o},fetchCollection=async(t,r)=>t([e,r]),calculateFirstProduct=(e,t,r)=>{let o=e-r*t;return e<r?e:o>0?r:r+o},chunkArray=(e,t)=>{let r=[],o=0;for(;o<e.length;)r.push(e.slice(o,t+o)),o+=t;return r},loopFetchCollection=async(e,t)=>{let r,o,d,i,n;let s=1;if(t.numberOfProducts){let a=Math.ceil(t.numberOfProducts/8);for(;s<=a&&!1!==i;){r={firstVariant:1,firstMedia:30,orderBy:{field:"PLATFORM_UPDATED_AT",direction:"DESC"},orderByMedia:{field:"POSITION",direction:"ASC"},firstProduct:calculateFirstProduct(t.numberOfProducts,s,8),...t.id&&"latest"!==t.id.toLowerCase()?{where:{baseID:t.id}}:{where:{isSample:t.isSample}},orderByProduct:productSortedByOrder(t.orderBy),whereProduct:{status:"ACTIVE",...t.isStorefront&&{isStorefront:t.isStorefront},isSample:t.isSample},...o?{productsAfter:o}:void 0};let a=await fetchCollection(e,r);if(o=a?.collections?.edges?.[0]?.node?.products?.pageInfo?.endCursor,1===s?(d=a,n=d?.collections?.edges?.[0]):n?.node?.products&&a?.collections?.edges?.[0]?.node?.products?.edges&&(n.node.products={pageInfo:a?.collections?.edges?.[0]?.node?.products?.pageInfo,edges:n.node?.products?.edges.concat(a?.collections?.edges?.[0]?.node?.products?.edges)}),s++,!n?.node?.products?.pageInfo?.hasNextPage){i=!1;break}}return d}},mergeProductCollectionVariant=async(e,t,o)=>{let d=t?.collections?.edges?.[0]?.node;if(!d)return t;let i=d?.products?.edges,n=i?.map(e=>e?.node?.baseID).filter(r),s=await fetchVariantsByBaseIds(e,{ids:n,isSample:o}),a=i?.map(e=>{let t=s?.variants?.edges?.filter(t=>t?.node?.id===e?.node?.id);return{...e,node:e.node?{...e.node,variants:e.node?.variants?{...e.node?.variants,edges:t?.[0]?.node?.variants?.edges??[]}:void 0}:void 0}})??[],c={...t,collections:{edges:[{node:{...d,products:{edges:a}},cursor:void 0}]}};return c},fetchVariantsByBaseIds=async(e,{ids:r,isSample:o,isStorefront:d})=>{let i=chunkArray(r??[],8),n=[],s=async r=>{try{return await e([t,{...r,orderByVariant:{field:"POSITION",direction:"ASC"}}])}catch{return{}}},a=i.map(e=>{let t={firstVariant:100,first:e.length,orderBy:{field:"TITLE",direction:"ASC"},where:{status:"ACTIVE",isSample:o,...d&&{isStorefront:d},...e.length&&{baseIDIn:e.sort()}}};return s(t)}),c=await Promise.all(a),l=c?.reduce((e,t)=>e.concat(t?.variants?.edges??[]),n);return{variants:{edges:l}}};export{calculateFirstProduct,getCollection};
@@ -1,19 +1 @@
1
- import { CollectionsDocument } from '../../graphql/queries/collections.generated.js';
2
-
3
- const getCollections = async (fetcher, variable)=>{
4
- const collections = await fetchCollections(fetcher, variable ?? {});
5
- if (!collections) {
6
- throw new Error('Collection not found');
7
- }
8
- return {
9
- ...collections
10
- };
11
- };
12
- const fetchCollections = async (fetcher, variables)=>{
13
- return fetcher([
14
- CollectionsDocument,
15
- variables
16
- ]);
17
- };
18
-
19
- export { getCollections };
1
+ import{CollectionsDocument as e}from"../../graphql/queries/collections.generated.js";let getCollections=async(e,o)=>{let t=await fetchCollections(e,o??{});if(!t)throw Error("Collection not found");return{...t}},fetchCollections=async(o,t)=>o([e,t]);export{getCollections};
@@ -1,123 +1 @@
1
- import { ProductLittleDetailDocument } from '../../graphql/queries/product-little-detail.generated.js';
2
- import { ProductMediasDocument } from '../../graphql/queries/product-medias.generated.js';
3
- import { ProductVariantsDocument } from '../../graphql/queries/product-variants.generated.js';
4
-
5
- const getProductBySlug = async (fetcher, slug)=>{
6
- const [product, variants, medias] = await Promise.all([
7
- fetchProduct(fetcher, slug),
8
- fetchVariants(fetcher, slug),
9
- fetchMedias(fetcher, slug)
10
- ]);
11
- if (!product) {
12
- throw new Error('Product not found');
13
- }
14
- return {
15
- ...product,
16
- variants: {
17
- edges: variants
18
- },
19
- medias: {
20
- edges: medias
21
- }
22
- };
23
- };
24
- const orderBy = {
25
- field: 'PLATFORM_UPDATED_AT',
26
- direction: 'DESC'
27
- };
28
- const fetchProduct = async (fetcher, handle, isStorefront)=>{
29
- const variables = {
30
- orderBy,
31
- where: {
32
- status: 'ACTIVE',
33
- handle,
34
- ...isStorefront && {
35
- isStorefront
36
- }
37
- }
38
- };
39
- const response = await fetcher([
40
- ProductLittleDetailDocument,
41
- variables
42
- ]);
43
- return response.product?.edges?.[0]?.node;
44
- };
45
- const fetchVariants = async (fetcher, handle, isStorefront)=>{
46
- const initVariables = {
47
- orderBy,
48
- orderByVariant: {
49
- field: 'POSITION',
50
- direction: 'ASC'
51
- },
52
- where: {
53
- status: 'ACTIVE',
54
- handle,
55
- ...isStorefront && {
56
- isStorefront
57
- }
58
- }
59
- };
60
- const query = async (variables, olds)=>{
61
- try {
62
- const response = await fetcher([
63
- ProductVariantsDocument,
64
- variables
65
- ]);
66
- const product = response.variants?.edges?.[0];
67
- const items = olds?.concat(product?.node?.variants?.edges ?? []);
68
- if (product?.node?.variants?.pageInfo?.hasNextPage) {
69
- return query({
70
- ...variables,
71
- afterVariant: product?.node?.variants?.pageInfo.endCursor
72
- }, items);
73
- }
74
- return items ?? [];
75
- } catch {
76
- return olds ?? [];
77
- }
78
- };
79
- return query(initVariables, []);
80
- };
81
- const fetchMedias = async (fetcher, handle, isStorefront)=>{
82
- const initVariables = {
83
- orderBy,
84
- where: {
85
- status: 'ACTIVE',
86
- handle,
87
- ...isStorefront && {
88
- isStorefront
89
- }
90
- },
91
- orderByMedia: {
92
- field: 'POSITION',
93
- direction: 'ASC'
94
- }
95
- };
96
- const query = async (variables)=>{
97
- try {
98
- const response = await fetcher([
99
- ProductMediasDocument,
100
- variables
101
- ]);
102
- const product = response.medias?.edges?.[0];
103
- const items = product?.node?.medias?.edges ?? [];
104
- if (product?.node?.medias?.pageInfo?.hasNextPage) {
105
- try {
106
- const newData = await query({
107
- ...variables,
108
- afterMedia: product?.node?.medias?.pageInfo.endCursor
109
- });
110
- return items.concat(newData);
111
- } catch {
112
- return items;
113
- }
114
- }
115
- return items;
116
- } catch {
117
- return [];
118
- }
119
- };
120
- return query(initVariables);
121
- };
122
-
123
- export { getProductBySlug };
1
+ import{ProductLittleDetailDocument as e}from"../../graphql/queries/product-little-detail.generated.js";import{ProductMediasDocument as r}from"../../graphql/queries/product-medias.generated.js";import{ProductVariantsDocument as t}from"../../graphql/queries/product-variants.generated.js";let getProductBySlug=async(e,r)=>{let[t,a,d]=await Promise.all([fetchProduct(e,r),fetchVariants(e,r),fetchMedias(e,r)]);if(!t)throw Error("Product not found");return{...t,variants:{edges:a},medias:{edges:d}}},orderBy={field:"PLATFORM_UPDATED_AT",direction:"DESC"},fetchProduct=async(r,t,a)=>{let d={orderBy,where:{status:"ACTIVE",handle:t,...a&&{isStorefront:a}}},n=await r([e,d]);return n.product?.edges?.[0]?.node},fetchVariants=async(e,r,a)=>{let d={orderBy,orderByVariant:{field:"POSITION",direction:"ASC"},where:{status:"ACTIVE",handle:r,...a&&{isStorefront:a}}},n=async(r,a)=>{try{let d=await e([t,r]),i=d.variants?.edges?.[0],s=a?.concat(i?.node?.variants?.edges??[]);if(i?.node?.variants?.pageInfo?.hasNextPage)return n({...r,afterVariant:i?.node?.variants?.pageInfo.endCursor},s);return s??[]}catch{return a??[]}};return n(d,[])},fetchMedias=async(e,t,a)=>{let d={orderBy,where:{status:"ACTIVE",handle:t,...a&&{isStorefront:a}},orderByMedia:{field:"POSITION",direction:"ASC"}},n=async t=>{try{let a=await e([r,t]),d=a.medias?.edges?.[0],i=d?.node?.medias?.edges??[];if(d?.node?.medias?.pageInfo?.hasNextPage)try{let e=await n({...t,afterMedia:d?.node?.medias?.pageInfo.endCursor});return i.concat(e)}catch{}return i}catch{return[]}};return n(d)};export{getProductBySlug};
@@ -1,150 +1 @@
1
- import { ProductLittleDetailDocument } from '../../graphql/queries/product-little-detail.generated.js';
2
- import { ProductMediasDocument } from '../../graphql/queries/product-medias.generated.js';
3
- import { ProductVariantsDocument } from '../../graphql/queries/product-variants.generated.js';
4
-
5
- const getProduct = async (fetcher, { id, isSample, isStorefront })=>{
6
- const [product, variants, medias] = await Promise.all([
7
- fetchProduct(fetcher, {
8
- id,
9
- isSample,
10
- isStorefront
11
- }),
12
- fetchVariants(fetcher, {
13
- id,
14
- isSample,
15
- isStorefront
16
- }),
17
- fetchMedias(fetcher, {
18
- id,
19
- isSample,
20
- isStorefront
21
- })
22
- ]);
23
- if (!product) {
24
- throw new Error('Product not found');
25
- }
26
- return {
27
- ...product,
28
- variants: {
29
- edges: variants
30
- },
31
- medias: {
32
- edges: medias
33
- }
34
- };
35
- };
36
- const orderBy = {
37
- field: 'CREATED_AT',
38
- direction: 'DESC'
39
- };
40
- const fetchProduct = async (fetcher, { id, isSample, isStorefront })=>{
41
- const variables = {
42
- orderBy,
43
- where: {
44
- isSample,
45
- ...isStorefront && {
46
- isStorefront
47
- },
48
- ...(!id || id && id.toLowerCase() == 'latest') && {
49
- status: 'ACTIVE'
50
- },
51
- ...id && id.toLowerCase() !== 'latest' && {
52
- baseID: id
53
- }
54
- }
55
- };
56
- const response = await fetcher([
57
- ProductLittleDetailDocument,
58
- variables
59
- ]);
60
- return response.product?.edges?.[0]?.node;
61
- };
62
- const fetchVariants = async (fetcher, { id, isSample, isStorefront })=>{
63
- const initVariables = {
64
- orderBy,
65
- where: {
66
- isSample,
67
- ...isStorefront && {
68
- isStorefront
69
- },
70
- ...(!id || id && id.toLowerCase() == 'latest') && {
71
- status: 'ACTIVE'
72
- },
73
- ...id && id.toLowerCase() !== 'latest' && {
74
- baseID: id
75
- }
76
- },
77
- orderByVariant: {
78
- field: 'POSITION',
79
- direction: 'ASC'
80
- }
81
- };
82
- const query = async (variables, olds)=>{
83
- try {
84
- const response = await fetcher([
85
- ProductVariantsDocument,
86
- variables
87
- ]);
88
- const product = response.variants?.edges?.[0];
89
- const items = olds?.concat(product?.node?.variants?.edges ?? []);
90
- if (product?.node?.variants?.pageInfo?.hasNextPage) {
91
- return query({
92
- ...variables,
93
- afterVariant: product?.node?.variants?.pageInfo.endCursor
94
- }, items);
95
- }
96
- return items ?? [];
97
- } catch {
98
- return olds ?? [];
99
- }
100
- };
101
- return query(initVariables, []);
102
- };
103
- const fetchMedias = async (fetcher, { id, isSample, isStorefront })=>{
104
- const initVariables = {
105
- orderBy,
106
- where: {
107
- isSample,
108
- ...isStorefront && {
109
- isStorefront
110
- },
111
- ...(!id || id && id.toLowerCase() == 'latest') && {
112
- status: 'ACTIVE'
113
- },
114
- ...id && id.toLowerCase() !== 'latest' && {
115
- baseID: id
116
- }
117
- },
118
- orderByMedia: {
119
- field: 'POSITION',
120
- direction: 'ASC'
121
- }
122
- };
123
- const query = async (variables)=>{
124
- try {
125
- const response = await fetcher([
126
- ProductMediasDocument,
127
- variables
128
- ]);
129
- const product = response.medias?.edges?.[0];
130
- const items = product?.node?.medias?.edges ?? [];
131
- if (product?.node?.medias?.pageInfo?.hasNextPage) {
132
- try {
133
- const newData = await query({
134
- ...variables,
135
- afterMedia: product?.node?.medias?.pageInfo.endCursor
136
- });
137
- return items.concat(newData);
138
- } catch {
139
- return items;
140
- }
141
- }
142
- return items;
143
- } catch {
144
- return [];
145
- }
146
- };
147
- return query(initVariables);
148
- };
149
-
150
- export { fetchMedias, fetchVariants, getProduct };
1
+ import{ProductLittleDetailDocument as e}from"../../graphql/queries/product-little-detail.generated.js";import{ProductMediasDocument as t}from"../../graphql/queries/product-medias.generated.js";import{ProductVariantsDocument as r}from"../../graphql/queries/product-variants.generated.js";let getProduct=async(e,{id:t,isSample:r,isStorefront:a})=>{let[s,o,d]=await Promise.all([fetchProduct(e,{id:t,isSample:r,isStorefront:a}),fetchVariants(e,{id:t,isSample:r,isStorefront:a}),fetchMedias(e,{id:t,isSample:r,isStorefront:a})]);if(!s)throw Error("Product not found");return{...s,variants:{edges:o},medias:{edges:d}}},orderBy={field:"PLATFORM_CREATED_AT",direction:"DESC"},fetchProduct=async(t,{id:r,isSample:a,isStorefront:s})=>{let o={orderBy,where:{isSample:a,...s&&{isStorefront:s},...(!r||r&&"latest"==r.toLowerCase())&&{status:"ACTIVE"},...r&&"latest"!==r.toLowerCase()&&{baseID:r}}},d=await t([e,o]);return d.product?.edges?.[0]?.node},fetchVariants=async(e,{id:t,isSample:a,isStorefront:s})=>{let o={orderBy,where:{isSample:a,...s&&{isStorefront:s},...(!t||t&&"latest"==t.toLowerCase())&&{status:"ACTIVE"},...t&&"latest"!==t.toLowerCase()&&{baseID:t}},orderByVariant:{field:"POSITION",direction:"ASC"}},d=async(t,a)=>{try{let s=await e([r,t]),o=s.variants?.edges?.[0],n=a?.concat(o?.node?.variants?.edges??[]);if(o?.node?.variants?.pageInfo?.hasNextPage)return d({...t,afterVariant:o?.node?.variants?.pageInfo.endCursor},n);return n??[]}catch{return a??[]}};return d(o,[])},fetchMedias=async(e,{id:r,isSample:a,isStorefront:s})=>{let o={orderBy,where:{isSample:a,...s&&{isStorefront:s},...(!r||r&&"latest"==r.toLowerCase())&&{status:"ACTIVE"},...r&&"latest"!==r.toLowerCase()&&{baseID:r}},orderByMedia:{field:"POSITION",direction:"ASC"}},d=async r=>{try{let a=await e([t,r]),s=a.medias?.edges?.[0],o=s?.node?.medias?.edges??[];if(s?.node?.medias?.pageInfo?.hasNextPage)try{let e=await d({...r,afterMedia:s?.node?.medias?.pageInfo.endCursor});return o.concat(e)}catch{}return o}catch{return[]}};return d(o)};export{fetchMedias,fetchVariants,getProduct};