@gem-sdk/core 3.0.0-pre-production.15 → 3.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 (413) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/components/AddOn.js +2 -18
  3. package/dist/cjs/components/ComponentAnimation.js +2 -17
  4. package/dist/cjs/components/ComponentToolbarPreview.js +2 -752
  5. package/dist/cjs/components/ComponentWrapper.js +2 -61
  6. package/dist/cjs/components/ComponentWrapperPreview.js +2 -213
  7. package/dist/cjs/components/Empty.js +2 -7
  8. package/dist/cjs/components/InteractionSuffix.js +2 -42
  9. package/dist/cjs/components/Render.js +2 -75
  10. package/dist/cjs/components/Render.liquid.js +16 -307
  11. package/dist/cjs/components/RenderBlock.js +2 -54
  12. package/dist/cjs/components/RenderCustomCode.js +4 -59
  13. package/dist/cjs/components/RenderPreview.js +2 -67
  14. package/dist/cjs/components/RenderSection.js +2 -23
  15. package/dist/cjs/components/ai-generator/AIContentGenerator.js +2 -252
  16. package/dist/cjs/components/ai-generator/AIGenContentLoading.js +2 -85
  17. package/dist/cjs/components/ai-generator/components/PickProduct.js +2 -220
  18. package/dist/cjs/components/ai-generator/components/ToneAndVoice.js +2 -77
  19. package/dist/cjs/components/ai-generator/hooks/useCheckingProductInside.js +1 -47
  20. package/dist/cjs/components/ai-generator/hooks/useFlipPopup.js +1 -110
  21. package/dist/cjs/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -37
  22. package/dist/cjs/components/ai-generator/hooks/useListenEventGenerate.js +1 -70
  23. package/dist/cjs/components/ai-generator/icons/AIIcon.js +2 -67
  24. package/dist/cjs/components/ai-generator/icons/CloseIcon.js +2 -19
  25. package/dist/cjs/components/ai-generator/icons/DropdownIcon.js +2 -37
  26. package/dist/cjs/components/ai-generator/icons/SearchIcon.js +2 -21
  27. package/dist/cjs/components/ai-generator/icons/ShowMoreIcon.js +2 -21
  28. package/dist/cjs/components/ai-generator/icons/UpgradeIcon.js +2 -27
  29. package/dist/cjs/components/ai-generator/icons/WarningIcon.js +2 -31
  30. package/dist/cjs/components/constant.js +1 -82
  31. package/dist/cjs/components/resize/Resize.js +2 -16
  32. package/dist/cjs/components/resize/Spacing.js +2 -260
  33. package/dist/cjs/components/src/product/helpers/variant-presets.js +1 -56
  34. package/dist/cjs/components/theme-section/CreateThemeSection.js +2 -123
  35. package/dist/cjs/components/theme-section/ThemeSectionStatus.js +2 -45
  36. package/dist/cjs/components/theme-section/ThemeSectionTooltip.js +2 -126
  37. package/dist/cjs/components/toolbar/Tooltip.js +2 -28
  38. package/dist/cjs/constants/device.js +1 -0
  39. package/dist/cjs/contexts/AddonContext.js +2 -36
  40. package/dist/cjs/contexts/ArticleContext.js +2 -39
  41. package/dist/cjs/contexts/ArticleListContext.js +2 -31
  42. package/dist/cjs/contexts/BuilderComponent.js +2 -34
  43. package/dist/cjs/contexts/BuilderContext.js +2 -39
  44. package/dist/cjs/contexts/BuilderPreviewContext.js +2 -482
  45. package/dist/cjs/contexts/CartLineContext.js +2 -29
  46. package/dist/cjs/contexts/CollectionContext.js +2 -38
  47. package/dist/cjs/contexts/I18nContext.js +2 -0
  48. package/dist/cjs/contexts/ModalContext.js +2 -47
  49. package/dist/cjs/contexts/PageContext.js +2 -111
  50. package/dist/cjs/contexts/ProductContext.js +2 -182
  51. package/dist/cjs/contexts/ProductListContext.js +2 -32
  52. package/dist/cjs/contexts/SectionContext.js +2 -53
  53. package/dist/cjs/contexts/ShopContext.js +2 -107
  54. package/dist/cjs/graphql/fragments/analytic.generated.js +2 -6
  55. package/dist/cjs/graphql/fragments/collection-detail.generated.js +2 -6
  56. package/dist/cjs/graphql/fragments/collection-product.generated.js +2 -6
  57. package/dist/cjs/graphql/fragments/collection.generated.js +2 -6
  58. package/dist/cjs/graphql/fragments/custom-code.generated.js +2 -6
  59. package/dist/cjs/graphql/fragments/custom-font.generated.js +7 -7
  60. package/dist/cjs/graphql/fragments/data-seo.generated.js +2 -6
  61. package/dist/cjs/graphql/fragments/media.generated.js +2 -6
  62. package/dist/cjs/graphql/fragments/preview-theme-page.generated.js +6 -6
  63. package/dist/cjs/graphql/fragments/product-little.generated.js +2 -6
  64. package/dist/cjs/graphql/fragments/product-option-value.generated.js +2 -6
  65. package/dist/cjs/graphql/fragments/product-option.generated.js +2 -6
  66. package/dist/cjs/graphql/fragments/product.generated.js +2 -6
  67. package/dist/cjs/graphql/fragments/published-custom-section.generated.js +2 -6
  68. package/dist/cjs/graphql/fragments/published-page-section.generated.js +2 -6
  69. package/dist/cjs/graphql/fragments/published-theme-page.generated.js +4 -18
  70. package/dist/cjs/graphql/fragments/published-theme-style.generated.js +2 -6
  71. package/dist/cjs/graphql/fragments/selected-option.generated.js +2 -6
  72. package/dist/cjs/graphql/fragments/variant.generated.js +2 -6
  73. package/dist/cjs/graphql/mutations/page-view-up.generated.js +2 -6
  74. package/dist/cjs/graphql/queries/articles.generated.js +2 -6
  75. package/dist/cjs/graphql/queries/blogs.generated.js +2 -6
  76. package/dist/cjs/graphql/queries/collection-detail-filter.generated.js +2 -16
  77. package/dist/cjs/graphql/queries/collection.generated.js +2 -14
  78. package/dist/cjs/graphql/queries/collections.generated.js +2 -9
  79. package/dist/cjs/graphql/queries/preview-page.generated.js +2 -12
  80. package/dist/cjs/graphql/queries/product-little-detail.generated.js +2 -11
  81. package/dist/cjs/graphql/queries/product-medias.generated.js +2 -8
  82. package/dist/cjs/graphql/queries/product-value-label.generated.js +2 -6
  83. package/dist/cjs/graphql/queries/product-variants.generated.js +3 -11
  84. package/dist/cjs/graphql/queries/products.generated.js +3 -17
  85. package/dist/cjs/graphql/queries/{published-shop-metas.js → published-shop-metas.generated.js} +2 -6
  86. package/dist/cjs/graphql/queries/published-theme-pages.generated.js +3 -19
  87. package/dist/cjs/graphql/queries/shop-shopify.generated.js +2 -6
  88. package/dist/cjs/graphql/queries/store-property.generated.js +2 -6
  89. package/dist/cjs/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +2 -6
  90. package/dist/cjs/graphql-app-api/queries/LibraryTemplate.generated.js +2 -6
  91. package/dist/cjs/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +2 -6
  92. package/dist/cjs/graphql-app-api/queries/SaleFunnelOffer.generated.js +2 -6
  93. package/dist/cjs/graphql-app-api/queries/ShopLibraryPage.generated.js +2 -6
  94. package/dist/cjs/graphql-app-api/queries/ThemePage.generated.js +2 -6
  95. package/dist/cjs/helpers/GlobalEvent.js +1 -19
  96. package/dist/cjs/helpers/align.js +1 -37
  97. package/dist/cjs/helpers/animations.js +1 -222
  98. package/dist/cjs/helpers/background.js +1 -236
  99. package/dist/cjs/helpers/backgroundImage.js +1 -0
  100. package/dist/cjs/helpers/borders.js +4 -198
  101. package/dist/cjs/helpers/carousel.js +1 -55
  102. package/dist/cjs/helpers/clone-deep.js +1 -5
  103. package/dist/cjs/helpers/cls.js +1 -16
  104. package/dist/cjs/helpers/colors.js +1 -184
  105. package/dist/cjs/helpers/compose-advance-style.js +1 -323
  106. package/dist/cjs/helpers/composeClasses.js +1 -0
  107. package/dist/cjs/helpers/const.js +1 -0
  108. package/dist/cjs/helpers/constant.js +1 -23
  109. package/dist/cjs/helpers/convert.js +1 -7
  110. package/dist/cjs/helpers/covert-entities-html.js +1 -19
  111. package/dist/cjs/helpers/css-variable.js +1 -7
  112. package/dist/cjs/helpers/email.js +1 -11
  113. package/dist/cjs/helpers/filter-styles.js +1 -0
  114. package/dist/cjs/helpers/filter-toolbar-preview.js +2 -14
  115. package/dist/cjs/helpers/flatten-connection.js +1 -9
  116. package/dist/cjs/helpers/get-resonsive-value.js +1 -36
  117. package/dist/cjs/helpers/get-shortname.js +1 -92
  118. package/dist/cjs/helpers/icon-list.js +1 -61
  119. package/dist/cjs/helpers/interaction/index.js +2 -134
  120. package/dist/cjs/helpers/is-browser.js +1 -9
  121. package/dist/cjs/helpers/is-defined.js +1 -7
  122. package/dist/cjs/helpers/is-empty-children.js +2 -15
  123. package/dist/cjs/helpers/is-safari.js +1 -9
  124. package/dist/cjs/helpers/layout.js +1 -76
  125. package/dist/cjs/helpers/load-script.js +1 -31
  126. package/dist/cjs/helpers/loop-component.js +1 -16
  127. package/dist/cjs/helpers/make-style.js +1 -163
  128. package/dist/cjs/helpers/normalize-builder-data.js +1 -23
  129. package/dist/cjs/helpers/pascal-to-kebab-case.js +1 -7
  130. package/dist/cjs/helpers/prefetch-queries.js +1 -78
  131. package/dist/cjs/helpers/product.js +1 -48
  132. package/dist/cjs/helpers/queries/get-collection.js +1 -226
  133. package/dist/cjs/helpers/queries/get-collections.js +1 -21
  134. package/dist/cjs/helpers/queries/get-product-by-slug.js +1 -125
  135. package/dist/cjs/helpers/queries/get-product.js +1 -154
  136. package/dist/cjs/helpers/queries/get-products.js +1 -214
  137. package/dist/cjs/helpers/query.js +1 -29
  138. package/dist/cjs/helpers/radius.js +6 -140
  139. package/dist/cjs/helpers/render.js +1 -91
  140. package/dist/cjs/helpers/shadow.js +1 -69
  141. package/dist/cjs/helpers/size.js +4 -228
  142. package/dist/cjs/helpers/spacing.js +1 -43
  143. package/dist/cjs/helpers/third-party/addAppBlockId.js +1 -20
  144. package/dist/cjs/helpers/third-party/appConfig.js +1 -416
  145. package/dist/cjs/helpers/third-party/appSetting.js +1 -1324
  146. package/dist/cjs/helpers/third-party/composeAppBlockId.js +1 -11
  147. package/dist/cjs/helpers/third-party/constant.js +1 -69
  148. package/dist/cjs/helpers/third-party/generateAppBlockConfigs.js +1 -34
  149. package/dist/cjs/helpers/third-party/getAppBlockConfig.js +1 -55
  150. package/dist/cjs/helpers/third-party/getAppBlockType.js +1 -12
  151. package/dist/cjs/helpers/third-party/getAppBlocks.js +1 -30
  152. package/dist/cjs/helpers/third-party/mergeBlock.js +1 -19
  153. package/dist/cjs/helpers/third-party/mergeBlockOrder.js +1 -47
  154. package/dist/cjs/helpers/third-party/removeGPAppItems.js +1 -18
  155. package/dist/cjs/helpers/tracking/fpixel.js +1 -28
  156. package/dist/cjs/helpers/tracking/gtag.js +1 -93
  157. package/dist/cjs/helpers/tracking/tiktokpixel.js +1 -17
  158. package/dist/cjs/helpers/typography.js +19 -160
  159. package/dist/cjs/helpers/variant.js +1 -11
  160. package/dist/cjs/hooks/animation/useAnimationActions.js +2 -39
  161. package/dist/cjs/hooks/animation/useAnimationConfig.js +2 -30
  162. package/dist/cjs/hooks/animation/useAnimationPreview.js +2 -31
  163. package/dist/cjs/hooks/animation/useAnimationTarget.js +2 -122
  164. package/dist/cjs/hooks/animation/useApplyAnimation.js +2 -89
  165. package/dist/cjs/hooks/articles/useArticlesQuery.js +2 -33
  166. package/dist/cjs/hooks/cart/use-add-to-cart.js +2 -20
  167. package/dist/cjs/hooks/cart/use-cart-data.js +2 -28
  168. package/dist/cjs/hooks/cart/use-cart-discount-codes-update.js +2 -20
  169. package/dist/cjs/hooks/cart/use-cart-note-update.js +2 -20
  170. package/dist/cjs/hooks/cart/use-create-cart.js +2 -22
  171. package/dist/cjs/hooks/cart/use-remove-cart-item.js +2 -20
  172. package/dist/cjs/hooks/cart/use-update-cart-item.js +2 -20
  173. package/dist/cjs/hooks/shop/use-collection-query.js +2 -22
  174. package/dist/cjs/hooks/shop/use-collections-query.js +2 -17
  175. package/dist/cjs/hooks/shop/use-product-query.js +2 -22
  176. package/dist/cjs/hooks/shop/use-products-query.js +2 -63
  177. package/dist/cjs/hooks/shop/useShopifyLink.js +2 -0
  178. package/dist/cjs/hooks/shop.js +2 -135
  179. package/dist/cjs/hooks/use-current-device.js +2 -30
  180. package/dist/cjs/hooks/use-lazy-video.js +2 -15
  181. package/dist/cjs/hooks/useAnimations.js +2 -29
  182. package/dist/cjs/hooks/useCartId.js +2 -44
  183. package/dist/cjs/hooks/useCartLine.js +2 -11
  184. package/dist/cjs/hooks/useCartUI.js +2 -48
  185. package/dist/cjs/hooks/useCollection.js +2 -9
  186. package/dist/cjs/hooks/useFetchHandle.js +2 -13
  187. package/dist/cjs/hooks/useFormatMoney.js +2 -75
  188. package/dist/cjs/hooks/useI18n.js +2 -0
  189. package/dist/cjs/hooks/useInitialSwatchesOptions.js +2 -127
  190. package/dist/cjs/hooks/useInteraction.js +2 -19
  191. package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +2 -10
  192. package/dist/cjs/hooks/useLoadScript.js +2 -32
  193. package/dist/cjs/hooks/useMoney.js +2 -84
  194. package/dist/cjs/hooks/usePrevious.js +2 -19
  195. package/dist/cjs/hooks/useProduct.js +2 -250
  196. package/dist/cjs/hooks/useProductList.js +2 -21
  197. package/dist/cjs/hooks/useStickyStore.js +1 -0
  198. package/dist/cjs/hooks/useSuspenseFetch.js +2 -27
  199. package/dist/cjs/hooks/useSwatchesOptions.js +2 -41
  200. package/dist/cjs/hooks/useToolbarPostPurchase.js +2 -89
  201. package/dist/cjs/index.js +1 -425
  202. package/dist/cjs/types/animations.js +1 -49
  203. package/dist/cjs/types/appAPI.js +1 -2
  204. package/dist/cjs/types/custom.js +1 -52
  205. package/dist/cjs/types/global-style.js +1 -15
  206. package/dist/cjs/types/shop.js +1 -2
  207. package/dist/esm/components/AddOn.js +2 -14
  208. package/dist/esm/components/ComponentAnimation.js +2 -13
  209. package/dist/esm/components/ComponentToolbarPreview.js +2 -748
  210. package/dist/esm/components/ComponentWrapper.js +2 -57
  211. package/dist/esm/components/ComponentWrapperPreview.js +2 -209
  212. package/dist/esm/components/Empty.js +2 -3
  213. package/dist/esm/components/InteractionSuffix.js +2 -40
  214. package/dist/esm/components/Render.js +2 -71
  215. package/dist/esm/components/Render.liquid.js +16 -301
  216. package/dist/esm/components/RenderBlock.js +2 -50
  217. package/dist/esm/components/RenderCustomCode.js +4 -55
  218. package/dist/esm/components/RenderPreview.js +2 -63
  219. package/dist/esm/components/RenderSection.js +2 -19
  220. package/dist/esm/components/ai-generator/AIContentGenerator.js +2 -250
  221. package/dist/esm/components/ai-generator/AIGenContentLoading.js +2 -83
  222. package/dist/esm/components/ai-generator/components/PickProduct.js +2 -218
  223. package/dist/esm/components/ai-generator/components/ToneAndVoice.js +2 -75
  224. package/dist/esm/components/ai-generator/hooks/useCheckingProductInside.js +1 -45
  225. package/dist/esm/components/ai-generator/hooks/useFlipPopup.js +1 -108
  226. package/dist/esm/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -35
  227. package/dist/esm/components/ai-generator/hooks/useListenEventGenerate.js +1 -68
  228. package/dist/esm/components/ai-generator/icons/AIIcon.js +2 -65
  229. package/dist/esm/components/ai-generator/icons/CloseIcon.js +2 -17
  230. package/dist/esm/components/ai-generator/icons/DropdownIcon.js +2 -34
  231. package/dist/esm/components/ai-generator/icons/SearchIcon.js +2 -19
  232. package/dist/esm/components/ai-generator/icons/ShowMoreIcon.js +2 -19
  233. package/dist/esm/components/ai-generator/icons/UpgradeIcon.js +2 -25
  234. package/dist/esm/components/ai-generator/icons/WarningIcon.js +2 -29
  235. package/dist/esm/components/constant.js +1 -75
  236. package/dist/esm/components/resize/Resize.js +2 -12
  237. package/dist/esm/components/resize/Spacing.js +2 -256
  238. package/dist/esm/components/src/product/helpers/variant-presets.js +1 -54
  239. package/dist/esm/components/theme-section/CreateThemeSection.js +2 -121
  240. package/dist/esm/components/theme-section/ThemeSectionStatus.js +2 -43
  241. package/dist/esm/components/theme-section/ThemeSectionTooltip.js +2 -124
  242. package/dist/esm/components/toolbar/Tooltip.js +2 -24
  243. package/dist/esm/constants/device.js +1 -0
  244. package/dist/esm/contexts/AddonContext.js +2 -32
  245. package/dist/esm/contexts/ArticleContext.js +2 -36
  246. package/dist/esm/contexts/ArticleListContext.js +2 -27
  247. package/dist/esm/contexts/BuilderComponent.js +2 -31
  248. package/dist/esm/contexts/BuilderContext.js +2 -36
  249. package/dist/esm/contexts/BuilderPreviewContext.js +2 -479
  250. package/dist/esm/contexts/CartLineContext.js +2 -26
  251. package/dist/esm/contexts/CollectionContext.js +2 -35
  252. package/dist/esm/contexts/I18nContext.js +2 -0
  253. package/dist/esm/contexts/ModalContext.js +2 -44
  254. package/dist/esm/contexts/PageContext.js +2 -108
  255. package/dist/esm/contexts/ProductContext.js +2 -179
  256. package/dist/esm/contexts/ProductListContext.js +2 -28
  257. package/dist/esm/contexts/SectionContext.js +2 -49
  258. package/dist/esm/contexts/ShopContext.js +2 -104
  259. package/dist/esm/graphql/fragments/analytic.generated.js +2 -4
  260. package/dist/esm/graphql/fragments/collection-detail.generated.js +2 -4
  261. package/dist/esm/graphql/fragments/collection-product.generated.js +2 -4
  262. package/dist/esm/graphql/fragments/collection.generated.js +2 -4
  263. package/dist/esm/graphql/fragments/custom-code.generated.js +2 -4
  264. package/dist/esm/graphql/fragments/custom-font.generated.js +7 -5
  265. package/dist/esm/graphql/fragments/data-seo.generated.js +2 -4
  266. package/dist/esm/graphql/fragments/media.generated.js +2 -4
  267. package/dist/esm/graphql/fragments/preview-theme-page.generated.js +6 -4
  268. package/dist/esm/graphql/fragments/product-little.generated.js +2 -4
  269. package/dist/esm/graphql/fragments/product-option-value.generated.js +2 -4
  270. package/dist/esm/graphql/fragments/product-option.generated.js +2 -4
  271. package/dist/esm/graphql/fragments/product.generated.js +2 -4
  272. package/dist/esm/graphql/fragments/published-custom-section.generated.js +2 -4
  273. package/dist/esm/graphql/fragments/published-page-section.generated.js +2 -4
  274. package/dist/esm/graphql/fragments/published-theme-page.generated.js +4 -16
  275. package/dist/esm/graphql/fragments/published-theme-style.generated.js +2 -4
  276. package/dist/esm/graphql/fragments/selected-option.generated.js +2 -4
  277. package/dist/esm/graphql/fragments/variant.generated.js +2 -4
  278. package/dist/esm/graphql/mutations/page-view-up.generated.js +2 -4
  279. package/dist/esm/graphql/queries/articles.generated.js +2 -4
  280. package/dist/esm/graphql/queries/blogs.generated.js +2 -4
  281. package/dist/esm/graphql/queries/collection-detail-filter.generated.js +10 -22
  282. package/dist/esm/graphql/queries/collection.generated.js +8 -18
  283. package/dist/esm/graphql/queries/collections.generated.js +3 -8
  284. package/dist/esm/graphql/queries/preview-page.generated.js +6 -14
  285. package/dist/esm/graphql/queries/product-little-detail.generated.js +5 -12
  286. package/dist/esm/graphql/queries/product-medias.generated.js +2 -6
  287. package/dist/esm/graphql/queries/product-value-label.generated.js +2 -4
  288. package/dist/esm/graphql/queries/product-variants.generated.js +5 -11
  289. package/dist/esm/graphql/queries/products.generated.js +9 -20
  290. package/dist/esm/graphql/queries/{published-shop-metas.js → published-shop-metas.generated.js} +2 -4
  291. package/dist/esm/graphql/queries/published-theme-pages.generated.js +6 -20
  292. package/dist/esm/graphql/queries/shop-shopify.generated.js +2 -4
  293. package/dist/esm/graphql/queries/store-property.generated.js +2 -4
  294. package/dist/esm/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +2 -4
  295. package/dist/esm/graphql-app-api/queries/LibraryTemplate.generated.js +2 -4
  296. package/dist/esm/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +2 -4
  297. package/dist/esm/graphql-app-api/queries/SaleFunnelOffer.generated.js +2 -4
  298. package/dist/esm/graphql-app-api/queries/ShopLibraryPage.generated.js +2 -4
  299. package/dist/esm/graphql-app-api/queries/ThemePage.generated.js +2 -4
  300. package/dist/esm/helpers/GlobalEvent.js +1 -15
  301. package/dist/esm/helpers/align.js +1 -34
  302. package/dist/esm/helpers/animations.js +1 -220
  303. package/dist/esm/helpers/background.js +1 -227
  304. package/dist/esm/helpers/backgroundImage.js +1 -0
  305. package/dist/esm/helpers/borders.js +4 -189
  306. package/dist/esm/helpers/carousel.js +1 -51
  307. package/dist/esm/helpers/clone-deep.js +1 -3
  308. package/dist/esm/helpers/cls.js +1 -14
  309. package/dist/esm/helpers/colors.js +1 -169
  310. package/dist/esm/helpers/compose-advance-style.js +1 -315
  311. package/dist/esm/helpers/composeClasses.js +1 -0
  312. package/dist/esm/helpers/const.js +1 -0
  313. package/dist/esm/helpers/constant.js +1 -19
  314. package/dist/esm/helpers/convert.js +1 -4
  315. package/dist/esm/helpers/covert-entities-html.js +1 -17
  316. package/dist/esm/helpers/css-variable.js +1 -5
  317. package/dist/esm/helpers/email.js +1 -6
  318. package/dist/esm/helpers/filter-styles.js +1 -0
  319. package/dist/esm/helpers/filter-toolbar-preview.js +2 -9
  320. package/dist/esm/helpers/flatten-connection.js +1 -7
  321. package/dist/esm/helpers/get-resonsive-value.js +1 -31
  322. package/dist/esm/helpers/get-shortname.js +1 -90
  323. package/dist/esm/helpers/icon-list.js +1 -58
  324. package/dist/esm/helpers/interaction/index.js +2 -132
  325. package/dist/esm/helpers/is-browser.js +1 -5
  326. package/dist/esm/helpers/is-defined.js +1 -5
  327. package/dist/esm/helpers/is-empty-children.js +2 -10
  328. package/dist/esm/helpers/is-safari.js +1 -5
  329. package/dist/esm/helpers/layout.js +1 -70
  330. package/dist/esm/helpers/load-script.js +1 -29
  331. package/dist/esm/helpers/loop-component.js +1 -14
  332. package/dist/esm/helpers/make-style.js +1 -149
  333. package/dist/esm/helpers/normalize-builder-data.js +1 -21
  334. package/dist/esm/helpers/pascal-to-kebab-case.js +1 -5
  335. package/dist/esm/helpers/prefetch-queries.js +1 -76
  336. package/dist/esm/helpers/product.js +1 -44
  337. package/dist/esm/helpers/queries/get-collection.js +1 -223
  338. package/dist/esm/helpers/queries/get-collections.js +1 -19
  339. package/dist/esm/helpers/queries/get-product-by-slug.js +1 -123
  340. package/dist/esm/helpers/queries/get-product.js +1 -150
  341. package/dist/esm/helpers/queries/get-products.js +1 -210
  342. package/dist/esm/helpers/query.js +1 -25
  343. package/dist/esm/helpers/radius.js +6 -132
  344. package/dist/esm/helpers/render.js +1 -82
  345. package/dist/esm/helpers/shadow.js +1 -63
  346. package/dist/esm/helpers/size.js +4 -213
  347. package/dist/esm/helpers/spacing.js +1 -40
  348. package/dist/esm/helpers/third-party/addAppBlockId.js +1 -18
  349. package/dist/esm/helpers/third-party/appConfig.js +1 -356
  350. package/dist/esm/helpers/third-party/appSetting.js +1 -1321
  351. package/dist/esm/helpers/third-party/composeAppBlockId.js +1 -9
  352. package/dist/esm/helpers/third-party/constant.js +1 -66
  353. package/dist/esm/helpers/third-party/generateAppBlockConfigs.js +1 -32
  354. package/dist/esm/helpers/third-party/getAppBlockConfig.js +1 -53
  355. package/dist/esm/helpers/third-party/getAppBlockType.js +1 -10
  356. package/dist/esm/helpers/third-party/getAppBlocks.js +1 -28
  357. package/dist/esm/helpers/third-party/mergeBlock.js +1 -17
  358. package/dist/esm/helpers/third-party/mergeBlockOrder.js +1 -45
  359. package/dist/esm/helpers/third-party/removeGPAppItems.js +1 -15
  360. package/dist/esm/helpers/tracking/fpixel.js +1 -24
  361. package/dist/esm/helpers/tracking/gtag.js +1 -87
  362. package/dist/esm/helpers/tracking/tiktokpixel.js +1 -15
  363. package/dist/esm/helpers/typography.js +19 -149
  364. package/dist/esm/helpers/variant.js +1 -9
  365. package/dist/esm/hooks/animation/useAnimationActions.js +2 -37
  366. package/dist/esm/hooks/animation/useAnimationConfig.js +2 -28
  367. package/dist/esm/hooks/animation/useAnimationPreview.js +2 -29
  368. package/dist/esm/hooks/animation/useAnimationTarget.js +2 -120
  369. package/dist/esm/hooks/animation/useApplyAnimation.js +2 -85
  370. package/dist/esm/hooks/articles/useArticlesQuery.js +2 -30
  371. package/dist/esm/hooks/cart/use-add-to-cart.js +2 -18
  372. package/dist/esm/hooks/cart/use-cart-data.js +2 -26
  373. package/dist/esm/hooks/cart/use-cart-discount-codes-update.js +2 -18
  374. package/dist/esm/hooks/cart/use-cart-note-update.js +2 -18
  375. package/dist/esm/hooks/cart/use-create-cart.js +2 -20
  376. package/dist/esm/hooks/cart/use-remove-cart-item.js +2 -18
  377. package/dist/esm/hooks/cart/use-update-cart-item.js +2 -18
  378. package/dist/esm/hooks/shop/use-collection-query.js +2 -20
  379. package/dist/esm/hooks/shop/use-collections-query.js +2 -15
  380. package/dist/esm/hooks/shop/use-product-query.js +2 -20
  381. package/dist/esm/hooks/shop/use-products-query.js +2 -59
  382. package/dist/esm/hooks/shop/useShopifyLink.js +2 -0
  383. package/dist/esm/hooks/shop.js +2 -119
  384. package/dist/esm/hooks/use-current-device.js +2 -28
  385. package/dist/esm/hooks/use-lazy-video.js +2 -13
  386. package/dist/esm/hooks/useAnimations.js +2 -27
  387. package/dist/esm/hooks/useCartId.js +2 -40
  388. package/dist/esm/hooks/useCartLine.js +2 -7
  389. package/dist/esm/hooks/useCartUI.js +2 -44
  390. package/dist/esm/hooks/useCollection.js +2 -7
  391. package/dist/esm/hooks/useFetchHandle.js +2 -11
  392. package/dist/esm/hooks/useFormatMoney.js +2 -71
  393. package/dist/esm/hooks/useI18n.js +2 -0
  394. package/dist/esm/hooks/useInitialSwatchesOptions.js +2 -123
  395. package/dist/esm/hooks/useInteraction.js +2 -17
  396. package/dist/esm/hooks/useIsomorphicLayoutEffect.js +2 -6
  397. package/dist/esm/hooks/useLoadScript.js +2 -28
  398. package/dist/esm/hooks/useMoney.js +2 -80
  399. package/dist/esm/hooks/usePrevious.js +2 -17
  400. package/dist/esm/hooks/useProduct.js +2 -233
  401. package/dist/esm/hooks/useProductList.js +2 -16
  402. package/dist/esm/hooks/useStickyStore.js +1 -0
  403. package/dist/esm/hooks/useSuspenseFetch.js +2 -23
  404. package/dist/esm/hooks/useSwatchesOptions.js +2 -37
  405. package/dist/esm/hooks/useToolbarPostPurchase.js +2 -87
  406. package/dist/esm/index.js +1 -119
  407. package/dist/esm/types/animations.js +1 -49
  408. package/dist/esm/types/custom.js +1 -52
  409. package/dist/esm/types/global-style.js +1 -12
  410. package/dist/types/index.d.ts +12025 -8969
  411. package/package.json +6 -6
  412. package/dist/cjs/web-components/src/helpers/styles/constant.js +0 -9
  413. package/dist/esm/web-components/src/helpers/styles/constant.js +0 -7
@@ -1,482 +1,2 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var zustand = require('zustand');
6
- var cloneDeep = require('../helpers/clone-deep.js');
7
- var normalizeBuilderData = require('../helpers/normalize-builder-data.js');
8
-
9
- function moveByIndex(input, from, to) {
10
- const elm = input.splice(from, 1)[0];
11
- if (elm !== undefined) {
12
- input.splice(to, 0, elm);
13
- }
14
- }
15
- function removeByKey(id, data) {
16
- const item = data[id];
17
- if (item) {
18
- delete data[id];
19
- if (item.type !== 'section') {
20
- item.childrens?.map((child)=>removeByKey(child, data));
21
- }
22
- }
23
- }
24
- const BuilderPreviewContext = /*#__PURE__*/ react.createContext(null);
25
- const root = {
26
- uid: 'ROOT',
27
- tag: 'Root',
28
- label: 'Root',
29
- childrens: []
30
- };
31
- const createBuilderPreviewProvider = (args, pageName, isThemeSectionEditor)=>zustand.createStore((set, get)=>({
32
- state: args,
33
- loaded: false,
34
- isThemeSectionEditor: !!isThemeSectionEditor,
35
- pageName: pageName,
36
- dynamicProduct: null,
37
- dynamicCollection: null,
38
- addItem: (args)=>{
39
- const { position, data } = args;
40
- const state = get().state;
41
- const dateModified = Date.now();
42
- if (args.type === 'section') {
43
- if (!Array.isArray(data)) {
44
- const sectionId = data.uid;
45
- // Section only add to ROOT
46
- const ROOT = state.ROOT;
47
- if (!ROOT.childrens) {
48
- ROOT.childrens = [
49
- sectionId
50
- ];
51
- } else {
52
- ROOT.childrens.splice(position ?? 0, 0, sectionId);
53
- }
54
- ROOT.dateModified = dateModified;
55
- set({
56
- state: {
57
- ...state,
58
- [sectionId]: {
59
- uid: sectionId,
60
- type: 'section',
61
- label: data.label
62
- },
63
- ROOT: cloneDeep.cloneDeep(ROOT)
64
- }
65
- });
66
- }
67
- } else {
68
- const { id, data } = args;
69
- const parent = id ? state[id] ?? state.ROOT : state.ROOT;
70
- // Can't add item to section
71
- if (parent.type === 'section') return;
72
- if (Array.isArray(data)) {
73
- const childrens = data.map((v)=>v.uid);
74
- const newState = data.reduceRight((prev, current)=>{
75
- const item = normalizeBuilderData.normalizeBuilderData(current);
76
- return {
77
- ...prev,
78
- ...item
79
- };
80
- }, {});
81
- parent.dateModified = dateModified;
82
- parent.childrens = parent.childrens ?? [];
83
- parent.childrens.splice(position ?? 0, 0, ...childrens);
84
- set({
85
- state: {
86
- ...state,
87
- ...newState,
88
- [parent.uid]: cloneDeep.cloneDeep(parent)
89
- }
90
- });
91
- } else {
92
- const item = normalizeBuilderData.normalizeBuilderData(data);
93
- parent.dateModified = dateModified;
94
- parent.childrens = parent.childrens ?? [];
95
- parent.childrens.splice(position ?? 0, 0, data.uid);
96
- set({
97
- state: {
98
- ...state,
99
- ...item,
100
- [parent.uid]: cloneDeep.cloneDeep(parent)
101
- }
102
- });
103
- }
104
- }
105
- },
106
- changeItemProp: (id, data, group)=>{
107
- if (!group || ![
108
- 'setting',
109
- 'style',
110
- 'advanced'
111
- ].includes(group)) return;
112
- const state = get().state;
113
- const item = state[id];
114
- // Ignore section
115
- if (item?.type === 'section') return;
116
- if (item) {
117
- const dateModified = Date.now();
118
- item.dateModified = dateModified;
119
- switch(group){
120
- case 'setting':
121
- set({
122
- state: {
123
- ...state,
124
- [id]: {
125
- ...item,
126
- settings: {
127
- ...item.settings,
128
- ...data
129
- }
130
- }
131
- }
132
- });
133
- break;
134
- case 'style':
135
- set({
136
- state: {
137
- ...state,
138
- [id]: {
139
- ...item,
140
- styles: {
141
- ...item.styles,
142
- ...data
143
- }
144
- }
145
- }
146
- });
147
- break;
148
- case 'advanced':
149
- set({
150
- state: {
151
- ...state,
152
- [id]: {
153
- ...item,
154
- advanced: {
155
- ...item.advanced,
156
- ...data
157
- }
158
- }
159
- }
160
- });
161
- break;
162
- }
163
- }
164
- },
165
- forceChangeItemProp: (id, data, group)=>{
166
- if (!group || ![
167
- 'setting',
168
- 'style',
169
- 'advanced'
170
- ].includes(group)) return;
171
- const state = get().state;
172
- const item = state[id];
173
- // Ignore section
174
- if (item?.type === 'section') return;
175
- if (item) {
176
- const dateModified = Date.now();
177
- item.dateModified = dateModified;
178
- switch(group){
179
- case 'setting':
180
- set({
181
- state: {
182
- ...state,
183
- [id]: {
184
- ...item,
185
- settings: data
186
- }
187
- }
188
- });
189
- break;
190
- case 'style':
191
- set({
192
- state: {
193
- ...state,
194
- [id]: {
195
- ...item,
196
- styles: data
197
- }
198
- }
199
- });
200
- break;
201
- case 'advanced':
202
- set({
203
- state: {
204
- ...state,
205
- [id]: {
206
- ...item,
207
- advanced: data
208
- }
209
- }
210
- });
211
- break;
212
- }
213
- }
214
- },
215
- changeItemPropByKey: ({ id, key, data, group })=>{
216
- if (!group || ![
217
- 'setting',
218
- 'style',
219
- 'advanced'
220
- ].includes(group)) return;
221
- const state = get().state;
222
- const item = state[id];
223
- // Ignore section
224
- if (item?.type === 'section') return;
225
- if (item) {
226
- const itemSetting = {
227
- style: item.styles ?? {},
228
- advanced: item.advanced ?? {},
229
- setting: item.settings ?? {}
230
- };
231
- if (data === undefined) {
232
- console.warn('Data is undefined');
233
- delete itemSetting[group][key];
234
- } else {
235
- itemSetting[group][key] = data;
236
- }
237
- set({
238
- state: {
239
- ...state,
240
- [id]: {
241
- ...item,
242
- settings: {
243
- ...itemSetting.setting
244
- },
245
- styles: {
246
- ...itemSetting.style
247
- },
248
- advanced: {
249
- ...itemSetting.advanced
250
- }
251
- }
252
- }
253
- });
254
- }
255
- },
256
- getItem: (id)=>{
257
- return get().state[id];
258
- },
259
- removeItem: (id)=>{
260
- if (id === 'ROOT') {
261
- set({
262
- state: {
263
- ROOT: root
264
- }
265
- });
266
- } else {
267
- const state = get().state;
268
- removeByKey(id, state);
269
- // Get parent node by id
270
- const parent = Object.entries(state).find(([, value])=>value.type !== 'section' && value.childrens?.includes(id));
271
- if (parent) {
272
- const dateModified = Date.now();
273
- const [parentId, parentValue] = parent;
274
- if (parentValue.type === 'section') return;
275
- parentValue.childrens = parentValue.childrens?.filter((child)=>child !== id);
276
- parentValue.dateModified = dateModified;
277
- set({
278
- state: {
279
- ...state,
280
- [parentId]: cloneDeep.cloneDeep(parentValue)
281
- }
282
- });
283
- }
284
- }
285
- },
286
- moveItem: (id, toId, position)=>{
287
- const state = get().state;
288
- const item = state[id];
289
- const moveTo = state[toId];
290
- // Ignore section
291
- if (!item || !moveTo || moveTo.type === 'section') return;
292
- if (item.type === 'section') {
293
- // Section only add to ROOT
294
- const ROOT = state.ROOT;
295
- if (!ROOT.childrens) return;
296
- const currentIndex = ROOT.childrens.findIndex((uid)=>uid === id);
297
- moveByIndex(ROOT.childrens, currentIndex, position ?? 0);
298
- set({
299
- state: {
300
- ...state,
301
- ROOT: cloneDeep.cloneDeep(ROOT)
302
- }
303
- });
304
- } else {
305
- const parent = Object.entries(state).find(([, value])=>value.type !== 'section' && value.childrens?.includes(id));
306
- if (item && parent) {
307
- const dateModified = Date.now();
308
- const [, parentItem] = parent;
309
- // Ignore section
310
- if (parentItem.type === 'section') return;
311
- parentItem.dateModified = dateModified;
312
- if (toId === parentItem.uid && parentItem.childrens) {
313
- // Move item to the same parent
314
- const currentIndex = parentItem.childrens.findIndex((uid)=>uid === id);
315
- if (parentItem.childrens && currentIndex !== position) {
316
- moveByIndex(parentItem.childrens, currentIndex, position ?? 0);
317
- set({
318
- state: {
319
- ...state,
320
- [parentItem.uid]: cloneDeep.cloneDeep(parentItem)
321
- }
322
- });
323
- }
324
- } else {
325
- // Move item to another parent
326
- // Remove item from parent node
327
- parentItem.childrens = parentItem.childrens?.filter((uid)=>uid !== id);
328
- if (moveTo) {
329
- moveTo.dateModified = dateModified;
330
- moveTo.childrens = moveTo.childrens ?? [];
331
- moveTo.childrens.splice(position ?? 0, 0, item.uid);
332
- set({
333
- state: {
334
- ...state,
335
- [moveTo.uid]: cloneDeep.cloneDeep(moveTo),
336
- [parentItem.uid]: cloneDeep.cloneDeep(parentItem)
337
- }
338
- });
339
- }
340
- }
341
- }
342
- }
343
- },
344
- forceChangeState: (data)=>{
345
- set({
346
- state: data,
347
- loaded: true
348
- });
349
- },
350
- initState: (data)=>{
351
- if (Array.isArray(data)) {
352
- const childrens = data.map((v)=>v.uid);
353
- const newState = data.reduceRight((prev, current)=>{
354
- const item = normalizeBuilderData.normalizeBuilderData(current);
355
- return {
356
- ...prev,
357
- ...item
358
- };
359
- }, {});
360
- set({
361
- loaded: true,
362
- state: {
363
- ROOT: {
364
- ...root,
365
- childrens
366
- },
367
- ...newState
368
- }
369
- });
370
- } else {
371
- const newState = normalizeBuilderData.normalizeBuilderData(data);
372
- set({
373
- loaded: true,
374
- state: {
375
- ROOT: {
376
- ...root,
377
- childrens: [
378
- data.uid
379
- ]
380
- },
381
- ...newState
382
- }
383
- });
384
- }
385
- },
386
- addSection: (data, position)=>{
387
- const state = get().state;
388
- const ROOT = state.ROOT;
389
- if (!ROOT.childrens) ROOT.childrens = [];
390
- ROOT.childrens.splice(position ?? 0, 0, data.uid);
391
- set({
392
- state: {
393
- ...state,
394
- ROOT: cloneDeep.cloneDeep(ROOT)
395
- }
396
- });
397
- },
398
- getParents: (id, limit)=>{
399
- const state = get().state;
400
- const parents = [];
401
- let index = 0;
402
- let currentId = id;
403
- // eslint-disable-next-line no-constant-condition
404
- while(true){
405
- if (limit && index >= limit) break;
406
- const parent = Object.entries(state).find(([, value])=>value.type !== 'section' && value.childrens?.includes(currentId));
407
- if (!parent) break;
408
- const [, parentItem] = parent;
409
- if (!parentItem) break;
410
- parents.push(parentItem);
411
- currentId = parentItem.uid;
412
- index++;
413
- }
414
- return parents;
415
- },
416
- updateItemName: (id, name)=>{
417
- const state = get().state;
418
- const item = state[id];
419
- if (item) {
420
- item.name = name;
421
- set({
422
- state: {
423
- ...state,
424
- [id]: cloneDeep.cloneDeep(item)
425
- }
426
- });
427
- }
428
- },
429
- updateItemAttribute: (id, value, attr)=>{
430
- if (!attr || ![
431
- 'label',
432
- 'customLabel',
433
- 'isShopifyVisibility'
434
- ].includes(attr)) return;
435
- const state = get().state;
436
- const item = state[id];
437
- if (item) {
438
- if (item.type !== 'section') {
439
- const dateModified = Date.now();
440
- item.dateModified = dateModified;
441
- }
442
- const updatedItem = {
443
- ...item,
444
- [attr]: value
445
- };
446
- set({
447
- state: {
448
- ...state,
449
- [id]: updatedItem
450
- }
451
- });
452
- }
453
- }
454
- }));
455
- const BuilderPreviewProvider = ({ children, state, isThemeSectionEditor, pageName, lazy, ...passProps })=>{
456
- const Component = lazy ? react.Suspense : react.Fragment;
457
- const value = react.useMemo(()=>{
458
- return createBuilderPreviewProvider(state, pageName, isThemeSectionEditor);
459
- }, [
460
- state,
461
- isThemeSectionEditor,
462
- pageName
463
- ]);
464
- return /*#__PURE__*/ jsxRuntime.jsx(Component, {
465
- children: /*#__PURE__*/ jsxRuntime.jsx(BuilderPreviewContext.Provider, {
466
- ...passProps,
467
- value: value,
468
- children: children
469
- })
470
- });
471
- };
472
- // export const useBuilderPreviewStore = useStore;
473
- const useBuilderPreviewStore = (selector, equalityFn)=>{
474
- const store = react.useContext(BuilderPreviewContext);
475
- if (!store) {
476
- throw new Error('useBuilderPreviewStore must be used within a BuilderPreviewProvider');
477
- }
478
- return zustand.useStore(store, selector, equalityFn);
479
- };
480
-
481
- exports.BuilderPreviewProvider = BuilderPreviewProvider;
482
- exports.useBuilderPreviewStore = useBuilderPreviewStore;
1
+ 'use client';
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand"),cloneDeep=require("../helpers/clone-deep.js"),normalizeBuilderData=require("../helpers/normalize-builder-data.js");function moveByIndex(e,t,i){let r=e.splice(t,1)[0];void 0!==r&&e.splice(i,0,r)}function removeByKey(e,t){let i=t[e];i&&(delete t[e],"section"!==i.type&&i.childrens?.map(e=>removeByKey(e,t)))}const BuilderPreviewContext=react.createContext(null),root={uid:"ROOT",tag:"Root",label:"Root",childrens:[]},createBuilderPreviewProvider=(e,t,i)=>zustand.createStore((r,l)=>({state:e,loaded:!1,isThemeSectionEditor:!!i,pageName:t,dynamicProduct:null,dynamicCollection:null,addItem:e=>{let{position:t,data:i}=e,s=l().state,n=Date.now();if("section"===e.type){if(!Array.isArray(i)){let e=i.uid,l=s.ROOT;l.childrens?l.childrens.splice(t??0,0,e):l.childrens=[e],l.dateModified=n,r({state:{...s,[e]:{uid:e,type:"section",label:i.label},ROOT:cloneDeep.cloneDeep(l)}})}}else{let{id:i,data:l}=e,d=i?s[i]??s.ROOT:s.ROOT;if("section"===d.type)return;if(Array.isArray(l)){let e=l.map(e=>e.uid),i=l.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});d.dateModified=n,d.childrens=d.childrens??[],d.childrens.splice(t??0,0,...e),r({state:{...s,...i,[d.uid]:cloneDeep.cloneDeep(d)}})}else{let e=normalizeBuilderData.normalizeBuilderData(l);d.dateModified=n,d.childrens=d.childrens??[],d.childrens.splice(t??0,0,l.uid),r({state:{...s,...e,[d.uid]:cloneDeep.cloneDeep(d)}})}}},changeItemProp:(e,t,i)=>{if(!i||!["setting","style","advanced"].includes(i))return;let s=l().state,n=s[e];if(n?.type!=="section"&&n){let l=Date.now();switch(n.dateModified=l,i){case"setting":r({state:{...s,[e]:{...n,settings:{...n.settings,...t}}}});break;case"style":r({state:{...s,[e]:{...n,styles:{...n.styles,...t}}}});break;case"advanced":r({state:{...s,[e]:{...n,advanced:{...n.advanced,...t}}}})}}},forceChangeItemProp:(e,t,i)=>{if(!i||!["setting","style","advanced"].includes(i))return;let s=l().state,n=s[e];if(n?.type!=="section"&&n){let l=Date.now();switch(n.dateModified=l,i){case"setting":r({state:{...s,[e]:{...n,settings:t}}});break;case"style":r({state:{...s,[e]:{...n,styles:t}}});break;case"advanced":r({state:{...s,[e]:{...n,advanced:t}}})}}},changeItemPropByKey:({id:e,key:t,data:i,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let n=l().state,d=n[e];if(d?.type!=="section"&&d){let l={style:d.styles??{},advanced:d.advanced??{},setting:d.settings??{}};void 0===i?(console.warn("Data is undefined"),delete l[s][t]):l[s][t]=i,r({state:{...n,[e]:{...d,settings:{...l.setting},styles:{...l.style},advanced:{...l.advanced}}}})}},getItem:e=>l().state[e],getState:()=>l().state,removeItem:e=>{if("ROOT"===e)r({state:{ROOT:root}});else{let t=l().state;removeByKey(e,t);let i=Object.entries(t).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(i){let l=Date.now(),[s,n]=i;if("section"===n.type)return;n.childrens=n.childrens?.filter(t=>t!==e),n.dateModified=l,r({state:{...t,[s]:cloneDeep.cloneDeep(n)}})}}},moveItem:(e,t,i)=>{let s=l().state,n=s[e],d=s[t];if(n&&d&&"section"!==d.type){if("section"===n.type){let t=s.ROOT;if(!t.childrens)return;let l=t.childrens.findIndex(t=>t===e);moveByIndex(t.childrens,l,i??0),r({state:{...s,ROOT:cloneDeep.cloneDeep(t)}})}else{let l=Object.entries(s).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(n&&l){let a=Date.now(),[,c]=l;if("section"===c.type)return;if(c.dateModified=a,t===c.uid&&c.childrens){let t=c.childrens.findIndex(t=>t===e);c.childrens&&t!==i&&(moveByIndex(c.childrens,t,i??0),r({state:{...s,[c.uid]:cloneDeep.cloneDeep(c)}}))}else c.childrens=c.childrens?.filter(t=>t!==e),d&&(d.dateModified=a,d.childrens=d.childrens??[],d.childrens.splice(i??0,0,n.uid),r({state:{...s,[d.uid]:cloneDeep.cloneDeep(d),[c.uid]:cloneDeep.cloneDeep(c)}}))}}}},forceChangeState:e=>{r({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let t=e.map(e=>e.uid),i=e.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});r({loaded:!0,state:{ROOT:{...root,childrens:t},...i}})}else{let t=normalizeBuilderData.normalizeBuilderData(e);r({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...t}})}},addSection:(e,t)=>{let i=l().state,s=i.ROOT;s.childrens||(s.childrens=[]),s.childrens.splice(t??0,0,e.uid),r({state:{...i,ROOT:cloneDeep.cloneDeep(s)}})},getParents:(e,t)=>{let i=l().state,r=[],s=0,n=e;for(;!t||!(s>=t);){let e=Object.entries(i).find(([,e])=>"section"!==e.type&&e.childrens?.includes(n));if(!e)break;let[,t]=e;if(!t)break;r.push(t),n=t.uid,s++}return r},updateItemName:(e,t)=>{let i=l().state,s=i[e];s&&(s.name=t,r({state:{...i,[e]:cloneDeep.cloneDeep(s)}}))},updateItemAttribute:(e,t,i)=>{if(!i||!["label","customLabel","isShopifyVisibility"].includes(i))return;let s=l().state,n=s[e];if(n){if("section"!==n.type){let e=Date.now();n.dateModified=e}let l={...n,[i]:t};r({state:{...s,[e]:l}})}}})),BuilderPreviewProvider=({children:e,state:t,isThemeSectionEditor:i,pageName:r,lazy:l,...s})=>{let n=l?react.Suspense:react.Fragment,d=react.useMemo(()=>createBuilderPreviewProvider(t,r,i),[t,i,r]);return jsxRuntime.jsx(n,{children:jsxRuntime.jsx(BuilderPreviewContext.Provider,{...s,value:d,children:e})})},useBuilderPreviewStore=(e,t)=>{let i=react.useContext(BuilderPreviewContext);if(!i)throw Error("useBuilderPreviewStore must be used within a BuilderPreviewProvider");return zustand.useStore(i,e,t)};exports.BuilderPreviewProvider=BuilderPreviewProvider,exports.useBuilderPreviewStore=useBuilderPreviewStore;
@@ -1,29 +1,2 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var zustand = require('zustand');
5
- var react = require('react');
6
-
7
- const CartLineContext = /*#__PURE__*/ react.createContext(null);
8
- const createCartLineStore = (data)=>zustand.createStore(()=>({
9
- ...data
10
- }));
11
- const CartLineProvider = ({ children, line })=>{
12
- return /*#__PURE__*/ jsxRuntime.jsx(CartLineContext.Provider, {
13
- value: createCartLineStore({
14
- line
15
- }),
16
- children: children
17
- }, `${line.id}-${line.quantity}`);
18
- };
19
- // export const useCartLineStore = useStore;
20
- const useCartLineStore = (selector, equalityFn)=>{
21
- const store = react.useContext(CartLineContext);
22
- if (!store) {
23
- throw new Error('useCartLineStore must be used within a CartLineProvider');
24
- }
25
- return zustand.useStore(store, selector, equalityFn);
26
- };
27
-
28
- exports.CartLineProvider = CartLineProvider;
29
- exports.useCartLineStore = useCartLineStore;
1
+ 'use client';
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),zustand=require("zustand"),react=require("react");const CartLineContext=react.createContext(null),createCartLineStore=e=>zustand.createStore(()=>({...e})),CartLineProvider=({children:e,line:t})=>jsxRuntime.jsx(CartLineContext.Provider,{value:createCartLineStore({line:t}),children:e},`${t.id}-${t.quantity}`),useCartLineStore=(e,t)=>{let r=react.useContext(CartLineContext);if(!r)throw Error("useCartLineStore must be used within a CartLineProvider");return zustand.useStore(r,e,t)};exports.CartLineProvider=CartLineProvider,exports.useCartLineStore=useCartLineStore;
@@ -1,38 +1,2 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var zustand = require('zustand');
6
-
7
- const CollectionContext = /*#__PURE__*/ react.createContext(null);
8
- const createCollectionProvider = (data)=>zustand.createStore((set)=>({
9
- ...data,
10
- changeCollectionStore: ({ collection })=>{
11
- set({
12
- collection: collection
13
- });
14
- }
15
- }));
16
- const CollectionProvider = ({ collection, children })=>{
17
- const store = react.useMemo(()=>{
18
- return createCollectionProvider({
19
- collection
20
- });
21
- }, [
22
- collection
23
- ]);
24
- return /*#__PURE__*/ jsxRuntime.jsx(CollectionContext.Provider, {
25
- value: store,
26
- children: children
27
- }, collection?.id);
28
- };
29
- const useCollectionStore = (selector, equalityFn)=>{
30
- const store = react.useContext(CollectionContext);
31
- if (!store) {
32
- throw new Error('useCollectionStore must be used within a useCollectionStore');
33
- }
34
- return zustand.useStore(store, selector, equalityFn);
35
- };
36
-
37
- exports.CollectionProvider = CollectionProvider;
38
- exports.useCollectionStore = useCollectionStore;
1
+ 'use client';
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand");const CollectionContext=react.createContext(null),createCollectionProvider=e=>zustand.createStore(t=>({...e,changeCollectionStore:({collection:e})=>{t({collection:e})}})),CollectionProvider=({collection:e,children:t})=>{let o=react.useMemo(()=>createCollectionProvider({collection:e}),[e]);return jsxRuntime.jsx(CollectionContext.Provider,{value:o,children:t},e?.id)},useCollectionStore=(e,t)=>{let o=react.useContext(CollectionContext);if(!o)throw Error("useCollectionStore must be used within a useCollectionStore");return zustand.useStore(o,e,t)};exports.CollectionProvider=CollectionProvider,exports.useCollectionStore=useCollectionStore;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),zustand=require("zustand"),react=require("react");const I18nContext=react.createContext(null),createI18nStoreProvider=e=>zustand.createStore(()=>({...e})),I18nProvider=({children:e,t:r})=>{let t=react.useMemo(()=>createI18nStoreProvider({t:r}),[r]);return jsxRuntime.jsx(I18nContext.Provider,{value:t,children:jsxRuntime.jsx(jsxRuntime.Fragment,{children:e})})},useI18nStore=()=>{let e=react.useContext(I18nContext);if(!e)throw Error("useI18nStore must be used inside a I18nProvider");return zustand.useStore(e)};exports.I18nProvider=I18nProvider,exports.useI18nStore=useI18nStore;
@@ -1,47 +1,2 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var zustand = require('zustand');
6
-
7
- const ModalContext = /*#__PURE__*/ react.createContext(null);
8
- const createModalProvider = (data)=>zustand.createStore((set)=>({
9
- activeId: data,
10
- setModalActive: (id, postMessage)=>{
11
- postMessage && window?.parent?.postMessage?.(JSON.stringify({
12
- type: 'active-element',
13
- uid: id
14
- }), '*');
15
- set({
16
- activeId: id
17
- });
18
- },
19
- clearModal: ()=>{
20
- window?.parent?.postMessage?.(JSON.stringify({
21
- type: 'active-element',
22
- uid: null
23
- }), '*');
24
- set({
25
- activeId: undefined
26
- });
27
- }
28
- }));
29
- const ModalProvider = ({ children, activeId, ...passProps })=>{
30
- const store = createModalProvider(activeId);
31
- return /*#__PURE__*/ jsxRuntime.jsx(ModalContext.Provider, {
32
- ...passProps,
33
- value: store,
34
- children: children
35
- });
36
- };
37
- // export const useBuilderStore = useStore;
38
- const useModalStore = (selector, equalityFn)=>{
39
- const store = react.useContext(ModalContext);
40
- if (!store) {
41
- throw new Error('useModalStore must be used within a ModalProvider');
42
- }
43
- return zustand.useStore(store, selector, equalityFn);
44
- };
45
-
46
- exports.ModalProvider = ModalProvider;
47
- exports.useModalStore = useModalStore;
1
+ 'use client';
2
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand");const ModalContext=react.createContext(null),createModalProvider=e=>zustand.createStore(t=>({activeId:e,setModalActive:(e,r)=>{r&&window?.parent?.postMessage?.(JSON.stringify({type:"active-element",uid:e}),"*"),t({activeId:e})},clearModal:()=>{window?.parent?.postMessage?.(JSON.stringify({type:"active-element",uid:null}),"*"),t({activeId:void 0})}})),ModalProvider=({children:e,activeId:t,...r})=>{let o=createModalProvider(t);return jsxRuntime.jsx(ModalContext.Provider,{...r,value:o,children:e})},useModalStore=(e,t)=>{let r=react.useContext(ModalContext);if(!r)throw Error("useModalStore must be used within a ModalProvider");return zustand.useStore(r,e,t)};exports.ModalProvider=ModalProvider,exports.useModalStore=useModalStore;