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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (331) hide show
  1. package/dist/cjs/components/AddOn.js +1 -18
  2. package/dist/cjs/components/ComponentToolbarPreview.js +1 -465
  3. package/dist/cjs/components/ComponentWrapper.js +1 -46
  4. package/dist/cjs/components/ComponentWrapperPreview.js +1 -136
  5. package/dist/cjs/components/Empty.js +1 -7
  6. package/dist/cjs/components/Render.js +1 -65
  7. package/dist/cjs/components/Render.liquid.js +14 -288
  8. package/dist/cjs/components/RenderBlock.js +1 -54
  9. package/dist/cjs/components/RenderCustomCode.js +3 -56
  10. package/dist/cjs/components/RenderPreview.js +1 -66
  11. package/dist/cjs/components/RenderSection.js +1 -23
  12. package/dist/cjs/components/ai-generator/AIContentGenerator.js +1 -0
  13. package/dist/cjs/components/ai-generator/AIGenContentLoading.js +1 -0
  14. package/dist/cjs/components/ai-generator/components/PickProduct.js +1 -0
  15. package/dist/cjs/components/ai-generator/components/ToneAndVoice.js +1 -0
  16. package/dist/cjs/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
  17. package/dist/cjs/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
  18. package/dist/cjs/components/ai-generator/icons/AIIcon.js +1 -0
  19. package/dist/cjs/components/ai-generator/icons/CloseIcon.js +1 -0
  20. package/dist/cjs/components/ai-generator/icons/DropdownIcon.js +1 -0
  21. package/dist/cjs/components/ai-generator/icons/ShowMoreIcon.js +1 -0
  22. package/dist/cjs/components/animation/AnimationWrapper.js +1 -0
  23. package/dist/cjs/components/constant.js +1 -54
  24. package/dist/cjs/components/resize/Resize.js +1 -16
  25. package/dist/cjs/components/resize/Spacing.js +1 -248
  26. package/dist/cjs/components/src/product/helpers/variant-presets.js +1 -56
  27. package/dist/cjs/components/theme-section/CreateThemeSection.js +1 -117
  28. package/dist/cjs/components/theme-section/ThemeSectionStatus.js +1 -36
  29. package/dist/cjs/components/theme-section/ThemeSectionTooltip.js +1 -102
  30. package/dist/cjs/components/toolbar/Tooltip.js +1 -22
  31. package/dist/cjs/contexts/AddonContext.js +1 -36
  32. package/dist/cjs/contexts/BuilderComponent.js +1 -34
  33. package/dist/cjs/contexts/BuilderContext.js +1 -35
  34. package/dist/cjs/contexts/BuilderPreviewContext.js +1 -479
  35. package/dist/cjs/contexts/CartLineContext.js +1 -29
  36. package/dist/cjs/contexts/CollectionContext.js +1 -38
  37. package/dist/cjs/contexts/ModalContext.js +1 -47
  38. package/dist/cjs/contexts/PageContext.js +1 -44
  39. package/dist/cjs/contexts/ProductContext.js +1 -156
  40. package/dist/cjs/contexts/ProductListContext.js +1 -32
  41. package/dist/cjs/contexts/SectionContext.js +1 -53
  42. package/dist/cjs/contexts/ShopContext.js +1 -80
  43. package/dist/cjs/graphql/fragments/analytic.generated.js +2 -6
  44. package/dist/cjs/graphql/fragments/collection-detail.generated.js +2 -6
  45. package/dist/cjs/graphql/fragments/collection-product.generated.js +2 -6
  46. package/dist/cjs/graphql/fragments/collection.generated.js +2 -6
  47. package/dist/cjs/graphql/fragments/custom-code.generated.js +2 -6
  48. package/dist/cjs/graphql/fragments/custom-font.generated.js +2 -6
  49. package/dist/cjs/graphql/fragments/data-seo.generated.js +2 -6
  50. package/dist/cjs/graphql/fragments/media.generated.js +2 -6
  51. package/dist/cjs/graphql/fragments/product-little.generated.js +11 -6
  52. package/dist/cjs/graphql/fragments/product-option-value.generated.js +2 -6
  53. package/dist/cjs/graphql/fragments/product-option.generated.js +2 -6
  54. package/dist/cjs/graphql/fragments/product.generated.js +11 -6
  55. package/dist/cjs/graphql/fragments/published-custom-section.generated.js +2 -6
  56. package/dist/cjs/graphql/fragments/published-page-section.generated.js +2 -6
  57. package/dist/cjs/graphql/fragments/published-theme-page.generated.js +3 -9
  58. package/dist/cjs/graphql/fragments/published-theme-style.generated.js +2 -6
  59. package/dist/cjs/graphql/fragments/selected-option.generated.js +2 -6
  60. package/dist/cjs/graphql/fragments/variant.generated.js +2 -6
  61. package/dist/cjs/graphql/mutations/page-view-up.generated.js +3 -7
  62. package/dist/cjs/graphql/queries/collection-detail-filter.generated.js +2 -16
  63. package/dist/cjs/graphql/queries/collection.generated.js +2 -14
  64. package/dist/cjs/graphql/queries/collections.generated.js +2 -9
  65. package/dist/cjs/graphql/queries/preview-page.generated.js +2 -14
  66. package/dist/cjs/graphql/queries/product-little-detail.generated.js +2 -11
  67. package/dist/cjs/graphql/queries/product-medias.generated.js +2 -8
  68. package/dist/cjs/graphql/queries/product-value-label.generated.js +2 -6
  69. package/dist/cjs/graphql/queries/product-variants.generated.js +2 -10
  70. package/dist/cjs/graphql/queries/products.generated.js +12 -17
  71. package/dist/cjs/graphql/queries/published-theme-pages.generated.js +2 -15
  72. package/dist/cjs/graphql/queries/store-property.generated.js +2 -6
  73. package/dist/cjs/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
  74. package/dist/cjs/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
  75. package/dist/cjs/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
  76. package/dist/cjs/graphql-app-api/queries/ThemePage.generated.js +22 -0
  77. package/dist/cjs/helpers/GlobalEvent.js +1 -19
  78. package/dist/cjs/helpers/animations.js +1 -213
  79. package/dist/cjs/helpers/background.js +1 -230
  80. package/dist/cjs/helpers/borders.js +4 -183
  81. package/dist/cjs/helpers/carousel.js +1 -58
  82. package/dist/cjs/helpers/clone-deep.js +1 -5
  83. package/dist/cjs/helpers/cls.js +1 -16
  84. package/dist/cjs/helpers/colors.js +1 -184
  85. package/dist/cjs/helpers/compose-advance-style.js +1 -268
  86. package/dist/cjs/helpers/constant.js +1 -23
  87. package/dist/cjs/helpers/convert.js +1 -7
  88. package/dist/cjs/helpers/covert-entities-html.js +1 -19
  89. package/dist/cjs/helpers/css-variable.js +1 -7
  90. package/dist/cjs/helpers/email.js +1 -11
  91. package/dist/cjs/helpers/filter-toolbar-preview.js +1 -14
  92. package/dist/cjs/helpers/flatten-connection.js +1 -9
  93. package/dist/cjs/helpers/get-resonsive-value.js +1 -36
  94. package/dist/cjs/helpers/get-shortname.js +1 -92
  95. package/dist/cjs/helpers/icon-list.js +1 -61
  96. package/dist/cjs/helpers/is-browser.js +1 -9
  97. package/dist/cjs/helpers/is-defined.js +1 -7
  98. package/dist/cjs/helpers/is-empty-children.js +1 -15
  99. package/dist/cjs/helpers/is-safari.js +1 -9
  100. package/dist/cjs/helpers/layout.js +1 -59
  101. package/dist/cjs/helpers/load-script.js +1 -31
  102. package/dist/cjs/helpers/make-style.js +1 -163
  103. package/dist/cjs/helpers/normalize-builder-data.js +1 -23
  104. package/dist/cjs/helpers/prefetch-queries.js +1 -78
  105. package/dist/cjs/helpers/product.js +1 -48
  106. package/dist/cjs/helpers/queries/get-collection.js +1 -226
  107. package/dist/cjs/helpers/queries/get-collections.js +1 -21
  108. package/dist/cjs/helpers/queries/get-product-by-slug.js +1 -125
  109. package/dist/cjs/helpers/queries/get-product.js +1 -154
  110. package/dist/cjs/helpers/queries/get-products.js +1 -163
  111. package/dist/cjs/helpers/query.js +1 -29
  112. package/dist/cjs/helpers/radius.js +6 -140
  113. package/dist/cjs/helpers/render.js +1 -76
  114. package/dist/cjs/helpers/shadow.js +1 -57
  115. package/dist/cjs/helpers/size.js +4 -183
  116. package/dist/cjs/helpers/spacing.js +1 -43
  117. package/dist/cjs/helpers/tracking/fpixel.js +1 -28
  118. package/dist/cjs/helpers/tracking/gtag.js +1 -93
  119. package/dist/cjs/helpers/tracking/tiktokpixel.js +1 -17
  120. package/dist/cjs/helpers/typography.js +17 -126
  121. package/dist/cjs/helpers/variant.js +1 -11
  122. package/dist/cjs/hooks/animation/animations.js +1 -0
  123. package/dist/cjs/hooks/animation/useAnimationActions.js +1 -39
  124. package/dist/cjs/hooks/animation/useAnimationConfig.js +1 -29
  125. package/dist/cjs/hooks/animation/useAnimationPreview.js +1 -31
  126. package/dist/cjs/hooks/animation/useAnimationTarget.js +1 -120
  127. package/dist/cjs/hooks/animation/useApplyAnimation.js +1 -87
  128. package/dist/cjs/hooks/animation/useLivePageAnimation.js +1 -0
  129. package/dist/cjs/hooks/cart/use-add-to-cart.js +1 -20
  130. package/dist/cjs/hooks/cart/use-cart-data.js +1 -28
  131. package/dist/cjs/hooks/cart/use-cart-discount-codes-update.js +1 -20
  132. package/dist/cjs/hooks/cart/use-cart-note-update.js +1 -20
  133. package/dist/cjs/hooks/cart/use-create-cart.js +1 -22
  134. package/dist/cjs/hooks/cart/use-remove-cart-item.js +1 -20
  135. package/dist/cjs/hooks/cart/use-update-cart-item.js +1 -20
  136. package/dist/cjs/hooks/shop/use-collection-query.js +1 -22
  137. package/dist/cjs/hooks/shop/use-collections-query.js +1 -17
  138. package/dist/cjs/hooks/shop/use-product-query.js +1 -22
  139. package/dist/cjs/hooks/shop/use-products-query.js +1 -23
  140. package/dist/cjs/hooks/shop.js +1 -126
  141. package/dist/cjs/hooks/use-current-device.js +1 -21
  142. package/dist/cjs/hooks/use-lazy-video.js +1 -15
  143. package/dist/cjs/hooks/useAnimations.js +1 -26
  144. package/dist/cjs/hooks/useCartId.js +1 -44
  145. package/dist/cjs/hooks/useCartLine.js +1 -11
  146. package/dist/cjs/hooks/useCartUI.js +1 -48
  147. package/dist/cjs/hooks/useCollection.js +1 -9
  148. package/dist/cjs/hooks/useFetchHandle.js +1 -13
  149. package/dist/cjs/hooks/useFormatMoney.js +1 -58
  150. package/dist/cjs/hooks/useInitialSwatchesOptions.js +1 -113
  151. package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +1 -10
  152. package/dist/cjs/hooks/useLoadScript.js +1 -32
  153. package/dist/cjs/hooks/useMoney.js +1 -84
  154. package/dist/cjs/hooks/usePrevious.js +1 -19
  155. package/dist/cjs/hooks/useProduct.js +1 -206
  156. package/dist/cjs/hooks/useProductList.js +1 -21
  157. package/dist/cjs/hooks/useSuspenseFetch.js +1 -27
  158. package/dist/cjs/hooks/useSwatchesOptions.js +1 -41
  159. package/dist/cjs/hooks/useToolbarPostPurchase.js +1 -0
  160. package/dist/cjs/index.js +1 -361
  161. package/dist/cjs/types/animations.js +1 -47
  162. package/dist/cjs/types/appAPI.js +1 -0
  163. package/dist/cjs/types/global-style.js +1 -15
  164. package/dist/cjs/types/shop.js +1 -2
  165. package/dist/cjs/web-components/src/helpers/styles/constant.js +1 -9
  166. package/dist/esm/components/AddOn.js +1 -14
  167. package/dist/esm/components/ComponentToolbarPreview.js +1 -463
  168. package/dist/esm/components/ComponentWrapper.js +1 -42
  169. package/dist/esm/components/ComponentWrapperPreview.js +1 -132
  170. package/dist/esm/components/Empty.js +1 -3
  171. package/dist/esm/components/Render.js +1 -61
  172. package/dist/esm/components/Render.liquid.js +14 -282
  173. package/dist/esm/components/RenderBlock.js +1 -50
  174. package/dist/esm/components/RenderCustomCode.js +3 -52
  175. package/dist/esm/components/RenderPreview.js +1 -62
  176. package/dist/esm/components/RenderSection.js +1 -19
  177. package/dist/esm/components/ai-generator/AIContentGenerator.js +1 -0
  178. package/dist/esm/components/ai-generator/AIGenContentLoading.js +1 -0
  179. package/dist/esm/components/ai-generator/components/PickProduct.js +1 -0
  180. package/dist/esm/components/ai-generator/components/ToneAndVoice.js +1 -0
  181. package/dist/esm/components/ai-generator/hooks/useGettingGenerateRequest.js +1 -0
  182. package/dist/esm/components/ai-generator/hooks/useListenEventGenerate.js +1 -0
  183. package/dist/esm/components/ai-generator/icons/AIIcon.js +1 -0
  184. package/dist/esm/components/ai-generator/icons/CloseIcon.js +1 -0
  185. package/dist/esm/components/ai-generator/icons/DropdownIcon.js +1 -0
  186. package/dist/esm/components/ai-generator/icons/ShowMoreIcon.js +1 -0
  187. package/dist/esm/components/animation/AnimationWrapper.js +1 -0
  188. package/dist/esm/components/constant.js +1 -50
  189. package/dist/esm/components/resize/Resize.js +1 -12
  190. package/dist/esm/components/resize/Spacing.js +1 -244
  191. package/dist/esm/components/src/product/helpers/variant-presets.js +1 -54
  192. package/dist/esm/components/theme-section/CreateThemeSection.js +1 -115
  193. package/dist/esm/components/theme-section/ThemeSectionStatus.js +1 -34
  194. package/dist/esm/components/theme-section/ThemeSectionTooltip.js +1 -100
  195. package/dist/esm/components/toolbar/Tooltip.js +1 -18
  196. package/dist/esm/contexts/AddonContext.js +1 -32
  197. package/dist/esm/contexts/BuilderComponent.js +1 -31
  198. package/dist/esm/contexts/BuilderContext.js +1 -32
  199. package/dist/esm/contexts/BuilderPreviewContext.js +1 -476
  200. package/dist/esm/contexts/CartLineContext.js +1 -26
  201. package/dist/esm/contexts/CollectionContext.js +1 -35
  202. package/dist/esm/contexts/ModalContext.js +1 -44
  203. package/dist/esm/contexts/PageContext.js +1 -41
  204. package/dist/esm/contexts/ProductContext.js +1 -153
  205. package/dist/esm/contexts/ProductListContext.js +1 -28
  206. package/dist/esm/contexts/SectionContext.js +1 -49
  207. package/dist/esm/contexts/ShopContext.js +1 -77
  208. package/dist/esm/graphql/fragments/analytic.generated.js +2 -4
  209. package/dist/esm/graphql/fragments/collection-detail.generated.js +2 -4
  210. package/dist/esm/graphql/fragments/collection-product.generated.js +2 -4
  211. package/dist/esm/graphql/fragments/collection.generated.js +2 -4
  212. package/dist/esm/graphql/fragments/custom-code.generated.js +2 -4
  213. package/dist/esm/graphql/fragments/custom-font.generated.js +2 -4
  214. package/dist/esm/graphql/fragments/data-seo.generated.js +2 -4
  215. package/dist/esm/graphql/fragments/media.generated.js +2 -4
  216. package/dist/esm/graphql/fragments/product-little.generated.js +11 -4
  217. package/dist/esm/graphql/fragments/product-option-value.generated.js +2 -4
  218. package/dist/esm/graphql/fragments/product-option.generated.js +2 -4
  219. package/dist/esm/graphql/fragments/product.generated.js +11 -4
  220. package/dist/esm/graphql/fragments/published-custom-section.generated.js +2 -4
  221. package/dist/esm/graphql/fragments/published-page-section.generated.js +2 -4
  222. package/dist/esm/graphql/fragments/published-theme-page.generated.js +3 -6
  223. package/dist/esm/graphql/fragments/published-theme-style.generated.js +2 -4
  224. package/dist/esm/graphql/fragments/selected-option.generated.js +2 -4
  225. package/dist/esm/graphql/fragments/variant.generated.js +2 -4
  226. package/dist/esm/graphql/mutations/page-view-up.generated.js +3 -5
  227. package/dist/esm/graphql/queries/collection-detail-filter.generated.js +10 -22
  228. package/dist/esm/graphql/queries/collection.generated.js +8 -18
  229. package/dist/esm/graphql/queries/collections.generated.js +3 -8
  230. package/dist/esm/graphql/queries/preview-page.generated.js +8 -18
  231. package/dist/esm/graphql/queries/product-little-detail.generated.js +5 -12
  232. package/dist/esm/graphql/queries/product-medias.generated.js +2 -6
  233. package/dist/esm/graphql/queries/product-value-label.generated.js +2 -4
  234. package/dist/esm/graphql/queries/product-variants.generated.js +4 -10
  235. package/dist/esm/graphql/queries/products.generated.js +18 -20
  236. package/dist/esm/graphql/queries/published-theme-pages.generated.js +9 -20
  237. package/dist/esm/graphql/queries/store-property.generated.js +2 -4
  238. package/dist/esm/graphql-app-api/queries/LibrarySaleFunnelDiscount.generated.js +21 -0
  239. package/dist/esm/graphql-app-api/queries/LibraryTemplate.generated.js +13 -0
  240. package/dist/esm/graphql-app-api/queries/SaleFunnelDiscounts.generated.js +34 -0
  241. package/dist/esm/graphql-app-api/queries/ThemePage.generated.js +22 -0
  242. package/dist/esm/helpers/GlobalEvent.js +1 -15
  243. package/dist/esm/helpers/animations.js +1 -211
  244. package/dist/esm/helpers/background.js +1 -222
  245. package/dist/esm/helpers/borders.js +4 -175
  246. package/dist/esm/helpers/carousel.js +1 -54
  247. package/dist/esm/helpers/clone-deep.js +1 -3
  248. package/dist/esm/helpers/cls.js +1 -14
  249. package/dist/esm/helpers/colors.js +1 -169
  250. package/dist/esm/helpers/compose-advance-style.js +1 -261
  251. package/dist/esm/helpers/constant.js +1 -19
  252. package/dist/esm/helpers/convert.js +1 -4
  253. package/dist/esm/helpers/covert-entities-html.js +1 -17
  254. package/dist/esm/helpers/css-variable.js +1 -5
  255. package/dist/esm/helpers/email.js +1 -6
  256. package/dist/esm/helpers/filter-toolbar-preview.js +1 -9
  257. package/dist/esm/helpers/flatten-connection.js +1 -7
  258. package/dist/esm/helpers/get-resonsive-value.js +1 -31
  259. package/dist/esm/helpers/get-shortname.js +1 -90
  260. package/dist/esm/helpers/icon-list.js +1 -58
  261. package/dist/esm/helpers/is-browser.js +1 -5
  262. package/dist/esm/helpers/is-defined.js +1 -5
  263. package/dist/esm/helpers/is-empty-children.js +1 -10
  264. package/dist/esm/helpers/is-safari.js +1 -5
  265. package/dist/esm/helpers/layout.js +1 -54
  266. package/dist/esm/helpers/load-script.js +1 -29
  267. package/dist/esm/helpers/make-style.js +1 -149
  268. package/dist/esm/helpers/normalize-builder-data.js +1 -21
  269. package/dist/esm/helpers/prefetch-queries.js +1 -76
  270. package/dist/esm/helpers/product.js +1 -44
  271. package/dist/esm/helpers/queries/get-collection.js +1 -223
  272. package/dist/esm/helpers/queries/get-collections.js +1 -19
  273. package/dist/esm/helpers/queries/get-product-by-slug.js +1 -123
  274. package/dist/esm/helpers/queries/get-product.js +1 -150
  275. package/dist/esm/helpers/queries/get-products.js +1 -161
  276. package/dist/esm/helpers/query.js +1 -25
  277. package/dist/esm/helpers/radius.js +6 -132
  278. package/dist/esm/helpers/render.js +1 -68
  279. package/dist/esm/helpers/shadow.js +1 -52
  280. package/dist/esm/helpers/size.js +4 -171
  281. package/dist/esm/helpers/spacing.js +1 -40
  282. package/dist/esm/helpers/tracking/fpixel.js +1 -24
  283. package/dist/esm/helpers/tracking/gtag.js +1 -87
  284. package/dist/esm/helpers/tracking/tiktokpixel.js +1 -15
  285. package/dist/esm/helpers/typography.js +17 -116
  286. package/dist/esm/helpers/variant.js +1 -9
  287. package/dist/esm/hooks/animation/animations.js +1 -0
  288. package/dist/esm/hooks/animation/useAnimationActions.js +1 -37
  289. package/dist/esm/hooks/animation/useAnimationConfig.js +1 -27
  290. package/dist/esm/hooks/animation/useAnimationPreview.js +1 -29
  291. package/dist/esm/hooks/animation/useAnimationTarget.js +1 -118
  292. package/dist/esm/hooks/animation/useApplyAnimation.js +1 -83
  293. package/dist/esm/hooks/animation/useLivePageAnimation.js +1 -0
  294. package/dist/esm/hooks/cart/use-add-to-cart.js +1 -18
  295. package/dist/esm/hooks/cart/use-cart-data.js +1 -26
  296. package/dist/esm/hooks/cart/use-cart-discount-codes-update.js +1 -18
  297. package/dist/esm/hooks/cart/use-cart-note-update.js +1 -18
  298. package/dist/esm/hooks/cart/use-create-cart.js +1 -20
  299. package/dist/esm/hooks/cart/use-remove-cart-item.js +1 -18
  300. package/dist/esm/hooks/cart/use-update-cart-item.js +1 -18
  301. package/dist/esm/hooks/shop/use-collection-query.js +1 -20
  302. package/dist/esm/hooks/shop/use-collections-query.js +1 -15
  303. package/dist/esm/hooks/shop/use-product-query.js +1 -20
  304. package/dist/esm/hooks/shop/use-products-query.js +1 -21
  305. package/dist/esm/hooks/shop.js +1 -111
  306. package/dist/esm/hooks/use-current-device.js +1 -19
  307. package/dist/esm/hooks/use-lazy-video.js +1 -13
  308. package/dist/esm/hooks/useAnimations.js +1 -24
  309. package/dist/esm/hooks/useCartId.js +1 -40
  310. package/dist/esm/hooks/useCartLine.js +1 -7
  311. package/dist/esm/hooks/useCartUI.js +1 -44
  312. package/dist/esm/hooks/useCollection.js +1 -7
  313. package/dist/esm/hooks/useFetchHandle.js +1 -11
  314. package/dist/esm/hooks/useFormatMoney.js +1 -56
  315. package/dist/esm/hooks/useInitialSwatchesOptions.js +1 -109
  316. package/dist/esm/hooks/useIsomorphicLayoutEffect.js +1 -6
  317. package/dist/esm/hooks/useLoadScript.js +1 -28
  318. package/dist/esm/hooks/useMoney.js +1 -80
  319. package/dist/esm/hooks/usePrevious.js +1 -17
  320. package/dist/esm/hooks/useProduct.js +1 -192
  321. package/dist/esm/hooks/useProductList.js +1 -16
  322. package/dist/esm/hooks/useSuspenseFetch.js +1 -23
  323. package/dist/esm/hooks/useSwatchesOptions.js +1 -37
  324. package/dist/esm/hooks/useToolbarPostPurchase.js +1 -0
  325. package/dist/esm/index.js +1 -100
  326. package/dist/esm/types/animations.js +1 -47
  327. package/dist/esm/types/appAPI.js +1 -0
  328. package/dist/esm/types/global-style.js +1 -12
  329. package/dist/esm/web-components/src/helpers/styles/constant.js +1 -7
  330. package/dist/types/index.d.ts +25970 -6309
  331. package/package.json +8 -3
@@ -1,117 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var ThemeSectionTooltip = require('./ThemeSectionTooltip.js');
6
- require('zustand');
7
- var ShopContext = require('../../contexts/ShopContext.js');
8
- require('@gem-sdk/adapter-shopify');
9
- require('swr');
10
- require('swr/mutation');
11
- require('vanilla-lazyload');
12
- require('../../hooks/useCartUI.js');
13
- require('../../helpers/convert.js');
14
-
15
- const SHOW_TOOLTIP_TIMEOUT = 600;
16
- const NUMBER_OF_THEME_SECTION_CREATED_TO_SHOW_TOOLTIP = 1;
17
- const LIMIT_PLANS = [
18
- 'starter',
19
- 'trial',
20
- 'trial2022'
21
- ];
22
- const CreateThemeSection = ({ ...props })=>{
23
- const shopPlan = ShopContext.useShopStore((s)=>s.plan);
24
- const createThemeSectionCount = ShopContext.useShopStore((s)=>s.createThemeSectionCount);
25
- const isLimit = LIMIT_PLANS.includes(shopPlan ?? '');
26
- const isRenderTooltip = isLimit || createThemeSectionCount === undefined || createThemeSectionCount < NUMBER_OF_THEME_SECTION_CREATED_TO_SHOW_TOOLTIP;
27
- const timeoutRef = react.useRef();
28
- const [isShowTooltip, setIsShowTooltip] = react.useState(false);
29
- const showTooltip = ()=>{
30
- if (!isRenderTooltip) return;
31
- if (timeoutRef.current) clearTimeout(timeoutRef.current);
32
- timeoutRef.current = setTimeout(()=>{
33
- setIsShowTooltip(true);
34
- }, SHOW_TOOLTIP_TIMEOUT);
35
- };
36
- const hideTooltip = ()=>{
37
- if (!isRenderTooltip) return;
38
- if (timeoutRef.current) clearTimeout(timeoutRef.current);
39
- setIsShowTooltip(false);
40
- };
41
- const onActions = (e, options)=>{
42
- e.preventDefault();
43
- e.stopPropagation();
44
- if (options?.disabled) return;
45
- isLimit ? onUpgrade() : onCreate();
46
- if (timeoutRef.current) clearTimeout(timeoutRef.current);
47
- setIsShowTooltip(false);
48
- };
49
- const onUpgrade = ()=>{
50
- const eventUpgrade = new CustomEvent('editor:toolbar:upgrade', {
51
- bubbles: true
52
- });
53
- window.dispatchEvent(eventUpgrade);
54
- };
55
- const onCreate = ()=>{
56
- const eventCreate = new CustomEvent('editor:toolbar:create-theme-section', {
57
- bubbles: true,
58
- detail: {
59
- componentUid: props.uid
60
- }
61
- });
62
- window.dispatchEvent(eventCreate);
63
- };
64
- return /*#__PURE__*/ jsxRuntime.jsx(jsxRuntime.Fragment, {
65
- children: /*#__PURE__*/ jsxRuntime.jsxs(ThemeSectionTooltip.ThemeSectionTooltip, {
66
- isLimit: isLimit,
67
- isShow: isShowTooltip,
68
- isRender: isRenderTooltip,
69
- onActions: onActions,
70
- onMouseEnter: showTooltip,
71
- onMouseLeave: hideTooltip,
72
- children: [
73
- isRenderTooltip && /*#__PURE__*/ jsxRuntime.jsx("div", {
74
- "data-toolbar-create-theme-section": true,
75
- children: "You can create reusable sections"
76
- }),
77
- /*#__PURE__*/ jsxRuntime.jsx("div", {
78
- "data-toolbar-active-create-theme-section-wrapper": true,
79
- children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
80
- "data-toolbar-active-create-theme-section": true,
81
- onClick: (e)=>onActions(e, {
82
- disabled: isLimit
83
- }),
84
- "aria-hidden": "true",
85
- children: [
86
- /*#__PURE__*/ jsxRuntime.jsxs("svg", {
87
- width: "16",
88
- height: "16",
89
- viewBox: "0 0 16 16",
90
- fill: "none",
91
- children: [
92
- /*#__PURE__*/ jsxRuntime.jsx("path", {
93
- d: "M1 2C1 1.44772 1.44772 1 2 1H6C6.55228 1 7 1.44772 7 2V6C7 6.55228 6.55228 7 6 7H2C1.44772 7 1 6.55228 1 6V2Z",
94
- fill: "#F9F9F9"
95
- }),
96
- /*#__PURE__*/ jsxRuntime.jsx("path", {
97
- d: "M9 10C9 9.44772 9.44772 9 10 9H14C14.5523 9 15 9.44772 15 10V14C15 14.5523 14.5523 15 14 15H10C9.44772 15 9 14.5523 9 14V10Z",
98
- fill: "#F9F9F9"
99
- }),
100
- /*#__PURE__*/ jsxRuntime.jsx("path", {
101
- d: "M2 9C1.44772 9 1 9.44772 1 10V14C1 14.5523 1.44772 15 2 15H6C6.55228 15 7 14.5523 7 14V10C7 9.44772 6.55228 9 6 9H2Z",
102
- fill: "#F9F9F9"
103
- })
104
- ]
105
- }),
106
- /*#__PURE__*/ jsxRuntime.jsx("p", {
107
- children: "Create Theme Section"
108
- })
109
- ]
110
- })
111
- })
112
- ]
113
- })
114
- });
115
- };
116
-
117
- exports.CreateThemeSection = CreateThemeSection;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),ThemeSectionTooltip=require("./ThemeSectionTooltip.js");require("zustand");var ShopContext=require("../../contexts/ShopContext.js");require("@gem-sdk/adapter-shopify"),require("swr"),require("swr/mutation"),require("vanilla-lazyload"),require("../../hooks/useCartUI.js"),require("classnames"),require("../../helpers/convert.js");const SHOW_TOOLTIP_TIMEOUT=600,NUMBER_OF_THEME_SECTION_CREATED_TO_SHOW_TOOLTIP=1,LIMIT_PLANS=["starter","trial","trial2022"],CreateThemeSection=({...e})=>{let t=ShopContext.useShopStore(e=>e.plan),r=ShopContext.useShopStore(e=>e.createThemeSectionCount),i=LIMIT_PLANS.includes(t??""),o=i||void 0===r||r<1,n=react.useRef(),[s,a]=react.useState(!1),u=()=>{o&&(n.current&&clearTimeout(n.current),n.current=setTimeout(()=>{a(!0)},600))},c=()=>{o&&(n.current&&clearTimeout(n.current),a(!1))},l=(e,t)=>{e.preventDefault(),e.stopPropagation(),t?.disabled||(i?d():h(),n.current&&clearTimeout(n.current),a(!1))},d=()=>{let e=new CustomEvent("editor:toolbar:upgrade",{bubbles:!0});window.dispatchEvent(e)},h=()=>{let t=new CustomEvent("editor:toolbar:create-theme-section",{bubbles:!0,detail:{componentUid:e.uid}});window.dispatchEvent(t)};return jsxRuntime.jsx(jsxRuntime.Fragment,{children:jsxRuntime.jsxs(ThemeSectionTooltip.ThemeSectionTooltip,{isLimit:i,isShow:s,isRender:o,onActions:l,onMouseEnter:u,onMouseLeave:c,children:[o&&jsxRuntime.jsx("div",{"data-toolbar-create-theme-section":!0,children:"You can create reusable sections"}),jsxRuntime.jsx("div",{"data-toolbar-active-create-theme-section-wrapper":!0,children:jsxRuntime.jsxs("div",{"data-toolbar-active-create-theme-section":!0,onClick:e=>l(e,{disabled:i}),"aria-hidden":"true",children:[jsxRuntime.jsxs("svg",{width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:[jsxRuntime.jsx("path",{d:"M1 2C1 1.44772 1.44772 1 2 1H6C6.55228 1 7 1.44772 7 2V6C7 6.55228 6.55228 7 6 7H2C1.44772 7 1 6.55228 1 6V2Z",fill:"#F9F9F9"}),jsxRuntime.jsx("path",{d:"M9 10C9 9.44772 9.44772 9 10 9H14C14.5523 9 15 9.44772 15 10V14C15 14.5523 14.5523 15 14 15H10C9.44772 15 9 14.5523 9 14V10Z",fill:"#F9F9F9"}),jsxRuntime.jsx("path",{d:"M2 9C1.44772 9 1 9.44772 1 10V14C1 14.5523 1.44772 15 2 15H6C6.55228 15 7 14.5523 7 14V10C7 9.44772 6.55228 9 6 9H2Z",fill:"#F9F9F9"})]}),jsxRuntime.jsx("p",{children:"Create Theme Section"})]})})]})})};exports.CreateThemeSection=CreateThemeSection;
@@ -1,36 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
-
5
- const ThemeSectionStatus = ({ ...props })=>{
6
- const isRenderThemeSectionStatus = props.tag === 'Section' && props?.isThemeSection && props?.needPublishing;
7
- return /*#__PURE__*/ jsxRuntime.jsx(jsxRuntime.Fragment, {
8
- children: isRenderThemeSectionStatus && /*#__PURE__*/ jsxRuntime.jsxs("div", {
9
- "data-theme-section-status": true,
10
- children: [
11
- /*#__PURE__*/ jsxRuntime.jsx("div", {
12
- "data-theme-section-status-icon": true,
13
- children: /*#__PURE__*/ jsxRuntime.jsx("svg", {
14
- xmlns: "http://www.w3.org/2000/svg",
15
- width: "16",
16
- height: "16",
17
- viewBox: "0 0 16 16",
18
- fill: "none",
19
- children: /*#__PURE__*/ jsxRuntime.jsx("path", {
20
- fillRule: "evenodd",
21
- clipRule: "evenodd",
22
- d: "M15 8C15 11.866 11.866 15 8 15C4.13401 15 1 11.866 1 8C1 4.13401 4.13401 1 8 1C11.866 1 15 4.13401 15 8ZM8.4668 4.61597C8.4668 4.89211 8.24294 5.11597 7.9668 5.11597C7.69065 5.11597 7.4668 4.89211 7.4668 4.61597C7.4668 4.33982 7.69065 4.11597 7.9668 4.11597C8.24294 4.11597 8.4668 4.33982 8.4668 4.61597ZM6.91309 5.48633C6.63694 5.48633 6.41309 5.71019 6.41309 5.98633C6.41309 6.26247 6.63694 6.48633 6.91309 6.48633H7.56006V10.3839C7.56006 10.9362 8.00777 11.3839 8.56006 11.3839H9.57144C9.84758 11.3839 10.0714 11.1601 10.0714 10.8839C10.0714 10.6078 9.84758 10.3839 9.57144 10.3839H8.56006V6.48633C8.56006 5.93404 8.11234 5.48633 7.56006 5.48633H6.91309Z",
23
- fill: "#9144DA"
24
- })
25
- })
26
- }),
27
- /*#__PURE__*/ jsxRuntime.jsx("span", {
28
- "data-theme-section-status-text": true,
29
- children: "Need to republish. Go to global edit and publish this section"
30
- })
31
- ]
32
- })
33
- });
34
- };
35
-
36
- exports.ThemeSectionStatus = ThemeSectionStatus;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime");const getStatusMessage=e=>{switch(e){case"DRAFT":return"This Theme Section is Draft. Publish page will also publish Theme Section.";case"NEED_PUBLISHING":return"Need to republish. Go to global edit and publish this section"}},ThemeSectionStatusWrapper=({tag:e,status:t,isThemeSection:s})=>{let i="Section"===e&&s&&("DRAFT"===t||"NEED_PUBLISHING"===t),n=getStatusMessage(t);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:i&&jsxRuntime.jsxs("div",{"data-theme-section-status":!0,children:[jsxRuntime.jsx("div",{"data-theme-section-status-icon":!0,children:jsxRuntime.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 16",fill:"none",children:jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 8C15 11.866 11.866 15 8 15C4.13401 15 1 11.866 1 8C1 4.13401 4.13401 1 8 1C11.866 1 15 4.13401 15 8ZM8.4668 4.61597C8.4668 4.89211 8.24294 5.11597 7.9668 5.11597C7.69065 5.11597 7.4668 4.89211 7.4668 4.61597C7.4668 4.33982 7.69065 4.11597 7.9668 4.11597C8.24294 4.11597 8.4668 4.33982 8.4668 4.61597ZM6.91309 5.48633C6.63694 5.48633 6.41309 5.71019 6.41309 5.98633C6.41309 6.26247 6.63694 6.48633 6.91309 6.48633H7.56006V10.3839C7.56006 10.9362 8.00777 11.3839 8.56006 11.3839H9.57144C9.84758 11.3839 10.0714 11.1601 10.0714 10.8839C10.0714 10.6078 9.84758 10.3839 9.57144 10.3839H8.56006V6.48633C8.56006 5.93404 8.11234 5.48633 7.56006 5.48633H6.91309Z",fill:"#9144DA"})})}),n&&jsxRuntime.jsx("span",{"data-theme-section-status-text":!0,children:n})]})})};exports.ThemeSectionStatusWrapper=ThemeSectionStatusWrapper;
@@ -1,102 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var reactTransitionGroup = require('react-transition-group');
6
- var core = require('@gem-sdk/core');
7
-
8
- const TRANSITION_DURATION = 350;
9
- const defaultStyles = {
10
- transition: `opacity ${TRANSITION_DURATION}ms ease-out`,
11
- opacity: 0
12
- };
13
- const transitions = {
14
- entering: {
15
- opacity: 1
16
- },
17
- entered: {
18
- opacity: 1
19
- },
20
- exiting: {
21
- opacity: 0
22
- },
23
- exited: {
24
- opacity: 0
25
- },
26
- unmounted: {
27
- opacity: 0
28
- }
29
- };
30
- const ThemeSectionTooltip = ({ isShow, isLimit, isRender, children, onMouseEnter, onMouseLeave, onActions })=>{
31
- const nodeRef = react.useRef(null);
32
- const actionBtnLabel = isLimit ? 'Upgrade to create Theme Section' : 'Create Theme Section';
33
- const openHelpCenter = ()=>{
34
- const url = 'https://help.gempages.net/articles/theme-section';
35
- window.open(url, '_blank');
36
- };
37
- return /*#__PURE__*/ jsxRuntime.jsx(jsxRuntime.Fragment, {
38
- children: /*#__PURE__*/ jsxRuntime.jsxs("div", {
39
- className: "theme-section-tooltip-wrapper",
40
- onMouseEnter: onMouseEnter,
41
- onMouseLeave: onMouseLeave,
42
- children: [
43
- children,
44
- isRender && /*#__PURE__*/ jsxRuntime.jsx(reactTransitionGroup.Transition, {
45
- in: isShow,
46
- timeout: TRANSITION_DURATION,
47
- nodeRef: nodeRef,
48
- unmountOnExit: true,
49
- children: (state)=>/*#__PURE__*/ jsxRuntime.jsxs("div", {
50
- className: "theme-section-tooltip",
51
- ref: nodeRef,
52
- style: {
53
- ...defaultStyles,
54
- ...transitions[state]
55
- },
56
- children: [
57
- /*#__PURE__*/ jsxRuntime.jsx("div", {
58
- className: "theme-section-tooltip__image",
59
- children: /*#__PURE__*/ jsxRuntime.jsx("img", {
60
- src: "https://ucarecdn.com/6a9f408a-aa8c-434a-890b-81067a14aceb/-/format/auto/-/preview/1920x1920/-/quality/lighter/theme-section-illustration.png",
61
- alt: ""
62
- })
63
- }),
64
- /*#__PURE__*/ jsxRuntime.jsxs("div", {
65
- className: "theme-section-tooltip__body",
66
- children: [
67
- /*#__PURE__*/ jsxRuntime.jsx("div", {
68
- className: "theme-section-tooltip__body-title",
69
- children: "Create once, use everywhere with Theme Section"
70
- }),
71
- /*#__PURE__*/ jsxRuntime.jsx("div", {
72
- className: "theme-section-tooltip__body-desc",
73
- children: "A global section that can be used on all your GemPages & Shopify pages."
74
- })
75
- ]
76
- }),
77
- /*#__PURE__*/ jsxRuntime.jsxs("div", {
78
- className: core.cls('theme-section-tooltip__action', {
79
- 'theme-section-tooltip__action-limit': isLimit
80
- }),
81
- children: [
82
- /*#__PURE__*/ jsxRuntime.jsx("button", {
83
- onClick: (e)=>onActions(e),
84
- children: actionBtnLabel
85
- }),
86
- isLimit && /*#__PURE__*/ jsxRuntime.jsx("div", {
87
- onClick: openHelpCenter,
88
- "aria-hidden": true,
89
- className: "theme-section-tooltip__action-learn-more",
90
- children: "Learn more about Theme Section"
91
- })
92
- ]
93
- })
94
- ]
95
- })
96
- })
97
- ]
98
- })
99
- });
100
- };
101
-
102
- exports.ThemeSectionTooltip = ThemeSectionTooltip;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),reactTransitionGroup=require("react-transition-group"),core=require("@gem-sdk/core");const TRANSITION_DURATION=350,defaultStyles={transition:"opacity 350ms ease-out",opacity:0},transitions={entering:{opacity:1},entered:{opacity:1},exiting:{opacity:0},exited:{opacity:0},unmounted:{opacity:0}},ThemeSectionTooltip=({isShow:e,isLimit:t,isRender:i,children:o,onMouseEnter:n,onMouseLeave:s,onActions:a})=>{let c=react.useRef(null),r=t?"Upgrade to create Theme Section":"Create Theme Section",l=()=>{window.open("https://help.gempages.net/articles/theme-section","_blank")};return jsxRuntime.jsx(jsxRuntime.Fragment,{children:jsxRuntime.jsxs("div",{className:"theme-section-tooltip-wrapper",onMouseEnter:n,onMouseLeave:s,children:[o,i&&jsxRuntime.jsx(reactTransitionGroup.Transition,{in:e,timeout:350,nodeRef:c,unmountOnExit:!0,children:e=>jsxRuntime.jsxs("div",{className:"theme-section-tooltip",ref:c,style:{...defaultStyles,...transitions[e]},children:[jsxRuntime.jsx("div",{className:"theme-section-tooltip__image",children:jsxRuntime.jsx("img",{src:"https://ucarecdn.com/6a9f408a-aa8c-434a-890b-81067a14aceb/-/format/auto/-/preview/1920x1920/-/quality/lighter/theme-section-illustration.png",alt:""})}),jsxRuntime.jsxs("div",{className:"theme-section-tooltip__body",children:[jsxRuntime.jsx("div",{className:"theme-section-tooltip__body-title",children:"Create once, use everywhere with Theme Section"}),jsxRuntime.jsx("div",{className:"theme-section-tooltip__body-desc",children:"A global section that can be used on all your GemPages & Shopify pages."})]}),jsxRuntime.jsxs("div",{className:core.cls("theme-section-tooltip__action",{"theme-section-tooltip__action-limit":t}),children:[jsxRuntime.jsx("button",{onClick:e=>a(e),children:r}),t&&jsxRuntime.jsx("div",{onClick:l,"aria-hidden":!0,className:"theme-section-tooltip__action-learn-more",children:"Learn more about Theme Section"})]})]})})]})})};exports.ThemeSectionTooltip=ThemeSectionTooltip;
@@ -1,22 +1 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var jsxRuntime = require('react/jsx-runtime');
6
-
7
- function Tooltip({ children, enable, text = 'Tooltip Text', position = 'right', ...props }) {
8
- return /*#__PURE__*/ jsxRuntime.jsxs("div", {
9
- ...props,
10
- "data-toolbar-tooltip-trigger": true,
11
- children: [
12
- children,
13
- enable && /*#__PURE__*/ jsxRuntime.jsx("div", {
14
- "data-toolbar-tooltip": true,
15
- "data-toolbar-tooltip-position": position,
16
- children: text
17
- })
18
- ]
19
- });
20
- }
21
-
22
- exports.default = Tooltip;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime");function Tooltip({children:t,enable:e,text:o="Tooltip Text",position:i="right",width:r,...l}){return jsxRuntime.jsxs("div",{...l,"data-toolbar-tooltip-trigger":!0,children:[t,e&&jsxRuntime.jsx("div",{style:{width:r,zIndex:50},"data-toolbar-tooltip":!0,"data-toolbar-tooltip-position":i,dangerouslySetInnerHTML:{__html:o}})]})}exports.default=Tooltip;
@@ -1,36 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var react = require('react');
5
- var Empty = require('../components/Empty.js');
6
-
7
- const AddonContext = /*#__PURE__*/ react.createContext(null);
8
- const AddonProvider = ({ children, components, ...passProps })=>{
9
- return /*#__PURE__*/ jsxRuntime.jsx(AddonContext.Provider, {
10
- ...passProps,
11
- value: {
12
- components
13
- },
14
- children: children
15
- });
16
- };
17
- const useAddons = ()=>{
18
- const context = react.useContext(AddonContext);
19
- if (!context) {
20
- throw new Error('useAddons must be used within an AddonProvider');
21
- }
22
- return react.useMemo(()=>context.components, [
23
- context.components
24
- ]);
25
- };
26
- const useAddon = (id)=>{
27
- const addons = useAddons();
28
- return react.useMemo(()=>id ? addons[id] ?? Empty.default : Empty.default, [
29
- id,
30
- addons
31
- ]);
32
- };
33
-
34
- exports.AddonProvider = AddonProvider;
35
- exports.useAddon = useAddon;
36
- exports.useAddons = useAddons;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),Empty=require("../components/Empty.js");const AddonContext=react.createContext(null),AddonProvider=({children:e,components:t,...d})=>jsxRuntime.jsx(AddonContext.Provider,{...d,value:{components:t},children:e}),useAddons=()=>{let e=react.useContext(AddonContext);if(!e)throw Error("useAddons must be used within an AddonProvider");return react.useMemo(()=>e.components,[e.components])},useAddon=e=>{let t=useAddons();return react.useMemo(()=>e?t[e]??Empty.default:Empty.default,[e,t])};exports.AddonProvider=AddonProvider,exports.useAddon=useAddon,exports.useAddons=useAddons;
@@ -1,34 +1 @@
1
- 'use strict';
2
-
3
- var jsxRuntime = require('react/jsx-runtime');
4
- var zustand = require('zustand');
5
- var react = require('react');
6
- var Empty = require('../components/Empty.js');
7
-
8
- const BuilderComponentContext = /*#__PURE__*/ react.createContext(null);
9
- const createBuilderComponentStore = (components)=>zustand.createStore((_, get)=>({
10
- components,
11
- getItem: (id)=>{
12
- return get().components[id];
13
- }
14
- }));
15
- const BuilderComponentProvider = ({ children, components, ...passProps })=>{
16
- return /*#__PURE__*/ jsxRuntime.jsx(BuilderComponentContext.Provider, {
17
- ...passProps,
18
- value: createBuilderComponentStore(components),
19
- children: children
20
- });
21
- };
22
- // export const useBuilderComponent = (id?: string) => {
23
- // return useStore((s) => (id ? s.getItem(id) ?? Empty : Empty));
24
- // };
25
- const useBuilderComponent = (id)=>{
26
- const store = react.useContext(BuilderComponentContext);
27
- if (!store) {
28
- throw new Error('useBuilderComponent must be used within a BuilderComponentProvider');
29
- }
30
- return zustand.useStore(store, (s)=>id ? s.getItem(id) ?? Empty.default : Empty.default);
31
- };
32
-
33
- exports.BuilderComponentProvider = BuilderComponentProvider;
34
- exports.useBuilderComponent = useBuilderComponent;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),zustand=require("zustand"),react=require("react"),Empty=require("../components/Empty.js");const BuilderComponentContext=react.createContext(null),createBuilderComponentStore=e=>zustand.createStore((t,r)=>({components:e,getItem:e=>r().components[e]})),BuilderComponentProvider=({children:e,components:t,...r})=>jsxRuntime.jsx(BuilderComponentContext.Provider,{...r,value:createBuilderComponentStore(t),children:e}),useBuilderComponent=e=>{let t=react.useContext(BuilderComponentContext);if(!t)throw Error("useBuilderComponent must be used within a BuilderComponentProvider");return zustand.useStore(t,t=>e?t.getItem(e)??Empty.default:Empty.default)};exports.BuilderComponentProvider=BuilderComponentProvider,exports.useBuilderComponent=useBuilderComponent;
@@ -1,35 +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 BuilderContext = /*#__PURE__*/ react.createContext(null);
8
- const createBuilderProvider = (data)=>zustand.createStore((_, get)=>({
9
- state: data,
10
- getItem: (id)=>{
11
- return get().state[id];
12
- }
13
- }));
14
- const BuilderProvider = ({ children, state, lazy, priority, ...passProps })=>{
15
- const Component = lazy ? react.Suspense : react.Fragment;
16
- const store = createBuilderProvider(state);
17
- return /*#__PURE__*/ jsxRuntime.jsx(Component, {
18
- children: /*#__PURE__*/ jsxRuntime.jsx(BuilderContext.Provider, {
19
- ...passProps,
20
- value: store,
21
- children: children
22
- })
23
- });
24
- };
25
- // export const useBuilderStore = useStore;
26
- const useBuilderStore = (selector, equalityFn)=>{
27
- const store = react.useContext(BuilderContext);
28
- if (!store) {
29
- throw new Error('useBuilderStore must be used within a BuilderProvider');
30
- }
31
- return zustand.useStore(store, selector, equalityFn);
32
- };
33
-
34
- exports.BuilderProvider = BuilderProvider;
35
- exports.useBuilderStore = useBuilderStore;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand");const BuilderContext=react.createContext(null),createBuilderProvider=(e,r)=>zustand.createStore((t,u)=>({state:e,isPostPurchase:r,getItem:e=>u().state[e],getIsPostPurchase:()=>u().isPostPurchase})),BuilderProvider=({children:e,state:r,isPostPurchase:t,lazy:u,priority:s,...i})=>{let d=u?react.Suspense:react.Fragment,o=createBuilderProvider(r,t);return jsxRuntime.jsx(d,{children:jsxRuntime.jsx(BuilderContext.Provider,{...i,value:o,children:e})})},useBuilderStore=(e,r)=>{let t=react.useContext(BuilderContext);if(!t)throw Error("useBuilderStore must be used within a BuilderProvider");return zustand.useStore(t,e,r)};exports.BuilderProvider=BuilderProvider,exports.useBuilderStore=useBuilderStore;