@gem-sdk/core 1.37.5 → 2.0.0-dev.832

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