@gem-sdk/core 1.13.38 → 1.14.0-next.103

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 (241) hide show
  1. package/dist/cjs/components/AddOn.js +1 -18
  2. package/dist/cjs/components/ComponentWrapper.js +1 -28
  3. package/dist/cjs/components/ComponentWrapperPreview.js +1 -72
  4. package/dist/cjs/components/Empty.js +1 -7
  5. package/dist/cjs/components/Render.js +1 -65
  6. package/dist/cjs/components/Render.liquid.js +3 -158
  7. package/dist/cjs/components/RenderBlock.js +1 -54
  8. package/dist/cjs/components/RenderPreview.js +1 -66
  9. package/dist/cjs/components/RenderSection.js +1 -23
  10. package/dist/cjs/components/constant.js +1 -39
  11. package/dist/cjs/contexts/AddonContext.js +1 -36
  12. package/dist/cjs/contexts/BuilderComponent.js +1 -34
  13. package/dist/cjs/contexts/BuilderContext.js +1 -35
  14. package/dist/cjs/contexts/BuilderPreviewContext.js +1 -370
  15. package/dist/cjs/contexts/CartLineContext.js +1 -29
  16. package/dist/cjs/contexts/CollectionContext.js +1 -38
  17. package/dist/cjs/contexts/ModalContext.js +1 -47
  18. package/dist/cjs/contexts/ProductContext.js +1 -149
  19. package/dist/cjs/contexts/ProductListContext.js +1 -32
  20. package/dist/cjs/contexts/SectionContext.js +1 -53
  21. package/dist/cjs/contexts/ShopContext.js +1 -70
  22. package/dist/cjs/graphql/fragments/analytic.generated.js +2 -6
  23. package/dist/cjs/graphql/fragments/collection-detail.generated.js +2 -6
  24. package/dist/cjs/graphql/fragments/collection-product.generated.js +2 -6
  25. package/dist/cjs/graphql/fragments/collection.generated.js +2 -6
  26. package/dist/cjs/graphql/fragments/custom-code.generated.js +2 -6
  27. package/dist/cjs/graphql/fragments/data-seo.generated.js +2 -6
  28. package/dist/cjs/graphql/fragments/media.generated.js +3 -6
  29. package/dist/cjs/graphql/fragments/product-little.generated.js +2 -6
  30. package/dist/cjs/graphql/fragments/product-option-value.generated.js +2 -6
  31. package/dist/cjs/graphql/fragments/product-option.generated.js +2 -6
  32. package/dist/cjs/graphql/fragments/product.generated.js +2 -6
  33. package/dist/cjs/graphql/fragments/published-custom-section.generated.js +2 -6
  34. package/dist/cjs/graphql/fragments/published-page-section.generated.js +2 -6
  35. package/dist/cjs/graphql/fragments/published-theme-page.generated.js +2 -6
  36. package/dist/cjs/graphql/fragments/published-theme-style.generated.js +2 -6
  37. package/dist/cjs/graphql/fragments/selected-option.generated.js +2 -6
  38. package/dist/cjs/graphql/fragments/variant.generated.js +2 -6
  39. package/dist/cjs/graphql/mutations/page-view-up.generated.js +3 -7
  40. package/dist/cjs/graphql/queries/collection-detail-filter.generated.js +2 -16
  41. package/dist/cjs/graphql/queries/collection.generated.js +2 -14
  42. package/dist/cjs/graphql/queries/collections.generated.js +2 -9
  43. package/dist/cjs/graphql/queries/preview-page.generated.js +2 -14
  44. package/dist/cjs/graphql/queries/product-little-detail.generated.js +2 -11
  45. package/dist/cjs/graphql/queries/product-medias.generated.js +2 -8
  46. package/dist/cjs/graphql/queries/product-variants.generated.js +2 -10
  47. package/dist/cjs/graphql/queries/products.generated.js +3 -17
  48. package/dist/cjs/graphql/queries/published-theme-pages.generated.js +2 -14
  49. package/dist/cjs/graphql/queries/store-property.generated.js +2 -6
  50. package/dist/cjs/helpers/GlobalEvent.js +1 -19
  51. package/dist/cjs/helpers/background.js +1 -109
  52. package/dist/cjs/helpers/borders.js +4 -183
  53. package/dist/cjs/helpers/clone-deep.js +1 -5
  54. package/dist/cjs/helpers/cls.js +1 -16
  55. package/dist/cjs/helpers/colors.js +1 -183
  56. package/dist/cjs/helpers/compose-advance-style.js +1 -188
  57. package/dist/cjs/helpers/constant.js +1 -23
  58. package/dist/cjs/helpers/convert.js +1 -7
  59. package/dist/cjs/helpers/css-variable.js +1 -7
  60. package/dist/cjs/helpers/email.js +1 -11
  61. package/dist/cjs/helpers/flatten-connection.js +1 -9
  62. package/dist/cjs/helpers/get-resonsive-value.js +1 -31
  63. package/dist/cjs/helpers/get-shortname.js +1 -92
  64. package/dist/cjs/helpers/is-browser.js +1 -9
  65. package/dist/cjs/helpers/is-defined.js +1 -7
  66. package/dist/cjs/helpers/is-empty-children.js +1 -12
  67. package/dist/cjs/helpers/is-safari.js +1 -9
  68. package/dist/cjs/helpers/layout.js +1 -59
  69. package/dist/cjs/helpers/load-script.js +1 -31
  70. package/dist/cjs/helpers/make-style.js +1 -128
  71. package/dist/cjs/helpers/normalize-builder-data.js +1 -23
  72. package/dist/cjs/helpers/prefetch-queries.js +1 -78
  73. package/dist/cjs/helpers/product.js +1 -31
  74. package/dist/cjs/helpers/queries/get-collection.js +1 -220
  75. package/dist/cjs/helpers/queries/get-collections.js +1 -21
  76. package/dist/cjs/helpers/queries/get-product-by-slug.js +1 -125
  77. package/dist/cjs/helpers/queries/get-product.js +1 -154
  78. package/dist/cjs/helpers/queries/get-products.js +1 -161
  79. package/dist/cjs/helpers/query.js +1 -29
  80. package/dist/cjs/helpers/radius.js +6 -131
  81. package/dist/cjs/helpers/render.js +1 -71
  82. package/dist/cjs/helpers/shadow.js +1 -56
  83. package/dist/cjs/helpers/size.js +4 -35
  84. package/dist/cjs/helpers/spacing.js +1 -43
  85. package/dist/cjs/helpers/tracking/fpixel.js +1 -28
  86. package/dist/cjs/helpers/tracking/gtag.js +1 -93
  87. package/dist/cjs/helpers/tracking/tiktokpixel.js +1 -17
  88. package/dist/cjs/helpers/typography.js +17 -105
  89. package/dist/cjs/helpers/variant.js +1 -8
  90. package/dist/cjs/hooks/cart/use-add-to-cart.js +1 -20
  91. package/dist/cjs/hooks/cart/use-cart-data.js +1 -28
  92. package/dist/cjs/hooks/cart/use-cart-discount-codes-update.js +1 -20
  93. package/dist/cjs/hooks/cart/use-cart-note-update.js +1 -20
  94. package/dist/cjs/hooks/cart/use-create-cart.js +1 -22
  95. package/dist/cjs/hooks/cart/use-remove-cart-item.js +1 -20
  96. package/dist/cjs/hooks/cart/use-update-cart-item.js +1 -20
  97. package/dist/cjs/hooks/shop/use-collection-query.js +1 -22
  98. package/dist/cjs/hooks/shop/use-collections-query.js +1 -17
  99. package/dist/cjs/hooks/shop/use-product-query.js +1 -22
  100. package/dist/cjs/hooks/shop/use-products-query.js +1 -22
  101. package/dist/cjs/hooks/shop.js +1 -126
  102. package/dist/cjs/hooks/use-current-device.js +1 -21
  103. package/dist/cjs/hooks/use-lazy-video.js +1 -15
  104. package/dist/cjs/hooks/useCartId.js +1 -44
  105. package/dist/cjs/hooks/useCartLine.js +1 -11
  106. package/dist/cjs/hooks/useCartUI.js +1 -48
  107. package/dist/cjs/hooks/useCollection.js +1 -9
  108. package/dist/cjs/hooks/useFetchHandle.js +1 -13
  109. package/dist/cjs/hooks/useFormatMoney.js +1 -58
  110. package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +1 -10
  111. package/dist/cjs/hooks/useLoadScript.js +1 -32
  112. package/dist/cjs/hooks/useMoney.js +1 -84
  113. package/dist/cjs/hooks/usePrevious.js +1 -19
  114. package/dist/cjs/hooks/useProduct.js +1 -127
  115. package/dist/cjs/hooks/useProductList.js +1 -21
  116. package/dist/cjs/hooks/useSuspenseFetch.js +1 -27
  117. package/dist/cjs/hooks/useSwatchesOptions.js +1 -41
  118. package/dist/cjs/index.js +1 -290
  119. package/dist/cjs/types/global-style.js +1 -14
  120. package/dist/cjs/types/shop.js +1 -2
  121. package/dist/esm/components/AddOn.js +1 -14
  122. package/dist/esm/components/ComponentWrapper.js +1 -24
  123. package/dist/esm/components/ComponentWrapperPreview.js +1 -68
  124. package/dist/esm/components/Empty.js +1 -3
  125. package/dist/esm/components/Render.js +1 -61
  126. package/dist/esm/components/Render.liquid.js +3 -153
  127. package/dist/esm/components/RenderBlock.js +1 -50
  128. package/dist/esm/components/RenderPreview.js +1 -62
  129. package/dist/esm/components/RenderSection.js +1 -19
  130. package/dist/esm/components/constant.js +1 -37
  131. package/dist/esm/contexts/AddonContext.js +1 -32
  132. package/dist/esm/contexts/BuilderComponent.js +1 -31
  133. package/dist/esm/contexts/BuilderContext.js +1 -32
  134. package/dist/esm/contexts/BuilderPreviewContext.js +1 -367
  135. package/dist/esm/contexts/CartLineContext.js +1 -26
  136. package/dist/esm/contexts/CollectionContext.js +1 -35
  137. package/dist/esm/contexts/ModalContext.js +1 -44
  138. package/dist/esm/contexts/ProductContext.js +1 -146
  139. package/dist/esm/contexts/ProductListContext.js +1 -28
  140. package/dist/esm/contexts/SectionContext.js +1 -49
  141. package/dist/esm/contexts/ShopContext.js +1 -67
  142. package/dist/esm/graphql/fragments/analytic.generated.js +2 -4
  143. package/dist/esm/graphql/fragments/collection-detail.generated.js +2 -4
  144. package/dist/esm/graphql/fragments/collection-product.generated.js +2 -4
  145. package/dist/esm/graphql/fragments/collection.generated.js +2 -4
  146. package/dist/esm/graphql/fragments/custom-code.generated.js +2 -4
  147. package/dist/esm/graphql/fragments/data-seo.generated.js +2 -4
  148. package/dist/esm/graphql/fragments/media.generated.js +3 -4
  149. package/dist/esm/graphql/fragments/product-little.generated.js +2 -4
  150. package/dist/esm/graphql/fragments/product-option-value.generated.js +2 -4
  151. package/dist/esm/graphql/fragments/product-option.generated.js +2 -4
  152. package/dist/esm/graphql/fragments/product.generated.js +2 -4
  153. package/dist/esm/graphql/fragments/published-custom-section.generated.js +2 -4
  154. package/dist/esm/graphql/fragments/published-page-section.generated.js +2 -4
  155. package/dist/esm/graphql/fragments/published-theme-page.generated.js +2 -4
  156. package/dist/esm/graphql/fragments/published-theme-style.generated.js +2 -4
  157. package/dist/esm/graphql/fragments/selected-option.generated.js +2 -4
  158. package/dist/esm/graphql/fragments/variant.generated.js +2 -4
  159. package/dist/esm/graphql/mutations/page-view-up.generated.js +3 -5
  160. package/dist/esm/graphql/queries/collection-detail-filter.generated.js +10 -22
  161. package/dist/esm/graphql/queries/collection.generated.js +8 -18
  162. package/dist/esm/graphql/queries/collections.generated.js +3 -8
  163. package/dist/esm/graphql/queries/preview-page.generated.js +8 -18
  164. package/dist/esm/graphql/queries/product-little-detail.generated.js +5 -12
  165. package/dist/esm/graphql/queries/product-medias.generated.js +2 -6
  166. package/dist/esm/graphql/queries/product-variants.generated.js +4 -10
  167. package/dist/esm/graphql/queries/products.generated.js +9 -20
  168. package/dist/esm/graphql/queries/published-theme-pages.generated.js +8 -18
  169. package/dist/esm/graphql/queries/store-property.generated.js +2 -4
  170. package/dist/esm/helpers/GlobalEvent.js +1 -15
  171. package/dist/esm/helpers/background.js +1 -106
  172. package/dist/esm/helpers/borders.js +4 -175
  173. package/dist/esm/helpers/clone-deep.js +1 -3
  174. package/dist/esm/helpers/cls.js +1 -14
  175. package/dist/esm/helpers/colors.js +1 -168
  176. package/dist/esm/helpers/compose-advance-style.js +1 -185
  177. package/dist/esm/helpers/constant.js +1 -19
  178. package/dist/esm/helpers/convert.js +1 -4
  179. package/dist/esm/helpers/css-variable.js +1 -5
  180. package/dist/esm/helpers/email.js +1 -6
  181. package/dist/esm/helpers/flatten-connection.js +1 -7
  182. package/dist/esm/helpers/get-resonsive-value.js +1 -27
  183. package/dist/esm/helpers/get-shortname.js +1 -90
  184. package/dist/esm/helpers/is-browser.js +1 -5
  185. package/dist/esm/helpers/is-defined.js +1 -5
  186. package/dist/esm/helpers/is-empty-children.js +1 -7
  187. package/dist/esm/helpers/is-safari.js +1 -5
  188. package/dist/esm/helpers/layout.js +1 -54
  189. package/dist/esm/helpers/load-script.js +1 -29
  190. package/dist/esm/helpers/make-style.js +1 -117
  191. package/dist/esm/helpers/normalize-builder-data.js +1 -21
  192. package/dist/esm/helpers/prefetch-queries.js +1 -76
  193. package/dist/esm/helpers/product.js +1 -28
  194. package/dist/esm/helpers/queries/get-collection.js +1 -217
  195. package/dist/esm/helpers/queries/get-collections.js +1 -19
  196. package/dist/esm/helpers/queries/get-product-by-slug.js +1 -123
  197. package/dist/esm/helpers/queries/get-product.js +1 -150
  198. package/dist/esm/helpers/queries/get-products.js +1 -159
  199. package/dist/esm/helpers/query.js +1 -25
  200. package/dist/esm/helpers/radius.js +6 -124
  201. package/dist/esm/helpers/render.js +1 -64
  202. package/dist/esm/helpers/shadow.js +1 -51
  203. package/dist/esm/helpers/size.js +4 -31
  204. package/dist/esm/helpers/spacing.js +1 -40
  205. package/dist/esm/helpers/tracking/fpixel.js +1 -24
  206. package/dist/esm/helpers/tracking/gtag.js +1 -87
  207. package/dist/esm/helpers/tracking/tiktokpixel.js +1 -15
  208. package/dist/esm/helpers/typography.js +17 -96
  209. package/dist/esm/helpers/variant.js +1 -6
  210. package/dist/esm/hooks/cart/use-add-to-cart.js +1 -18
  211. package/dist/esm/hooks/cart/use-cart-data.js +1 -26
  212. package/dist/esm/hooks/cart/use-cart-discount-codes-update.js +1 -18
  213. package/dist/esm/hooks/cart/use-cart-note-update.js +1 -18
  214. package/dist/esm/hooks/cart/use-create-cart.js +1 -20
  215. package/dist/esm/hooks/cart/use-remove-cart-item.js +1 -18
  216. package/dist/esm/hooks/cart/use-update-cart-item.js +1 -18
  217. package/dist/esm/hooks/shop/use-collection-query.js +1 -20
  218. package/dist/esm/hooks/shop/use-collections-query.js +1 -15
  219. package/dist/esm/hooks/shop/use-product-query.js +1 -20
  220. package/dist/esm/hooks/shop/use-products-query.js +1 -20
  221. package/dist/esm/hooks/shop.js +1 -111
  222. package/dist/esm/hooks/use-current-device.js +1 -19
  223. package/dist/esm/hooks/use-lazy-video.js +1 -13
  224. package/dist/esm/hooks/useCartId.js +1 -40
  225. package/dist/esm/hooks/useCartLine.js +1 -7
  226. package/dist/esm/hooks/useCartUI.js +1 -44
  227. package/dist/esm/hooks/useCollection.js +1 -7
  228. package/dist/esm/hooks/useFetchHandle.js +1 -11
  229. package/dist/esm/hooks/useFormatMoney.js +1 -56
  230. package/dist/esm/hooks/useIsomorphicLayoutEffect.js +1 -6
  231. package/dist/esm/hooks/useLoadScript.js +1 -28
  232. package/dist/esm/hooks/useMoney.js +1 -80
  233. package/dist/esm/hooks/usePrevious.js +1 -17
  234. package/dist/esm/hooks/useProduct.js +1 -114
  235. package/dist/esm/hooks/useProductList.js +1 -16
  236. package/dist/esm/hooks/useSuspenseFetch.js +1 -23
  237. package/dist/esm/hooks/useSwatchesOptions.js +1 -37
  238. package/dist/esm/index.js +1 -92
  239. package/dist/esm/types/global-style.js +1 -11
  240. package/dist/types/index.d.ts +1038 -984
  241. package/package.json +4 -4
@@ -1,4 +1,4 @@
1
- /* eslint-disable */ const StorePropertyDocument = `
1
+ let StorePropertyDocument=`
2
2
  query storeProperty {
3
3
  storeProperty {
4
4
  favicon
@@ -6,6 +6,4 @@
6
6
  primaryDomain
7
7
  }
8
8
  }
9
- `;
10
-
11
- export { StorePropertyDocument };
9
+ `;export{StorePropertyDocument};
@@ -1,15 +1 @@
1
- const globalEvent = {
2
- subscribe (callback) {
3
- document.addEventListener('onDispatch', (e)=>callback(e.detail));
4
- },
5
- dispatch (data) {
6
- document.dispatchEvent(new CustomEvent('onDispatch', {
7
- detail: data
8
- }));
9
- },
10
- remove (callback) {
11
- document.removeEventListener('onDispatch', callback);
12
- }
13
- };
14
-
15
- export { globalEvent as default };
1
+ let globalEvent={subscribe(e){document.addEventListener("onDispatch",t=>e(t.detail))},dispatch(e){document.dispatchEvent(new CustomEvent("onDispatch",{detail:e}))},remove(e){document.removeEventListener("onDispatch",e)}};export{globalEvent as default};
@@ -1,106 +1 @@
1
- import { isColor, getSingleColorVariable } from './colors.js';
2
- import { makeStyleResponsive } from './make-style.js';
3
-
4
- const getStyleBackgroundByDevice = (background, options)=>{
5
- if (!background) {
6
- return {};
7
- }
8
- return {
9
- ...getStyleBgColor(background),
10
- ...getStyleBgImage(background, options),
11
- ...getStyleBgPosition(background),
12
- ...getStyleBgSize(background),
13
- ...getStyleBgRepeat(background),
14
- ...getStyleBgAttachment(background)
15
- };
16
- };
17
- const getStyleBgColor = (background)=>{
18
- const bgColor = {
19
- desktop: getBgColorByDevice(background, 'desktop'),
20
- tablet: getBgColorByDevice(background, 'tablet'),
21
- mobile: getBgColorByDevice(background, 'mobile')
22
- };
23
- return makeStyleResponsive('bgc', bgColor);
24
- };
25
- const getBgColorByDevice = (background, device)=>{
26
- return getColor(background?.[device]?.color);
27
- };
28
- const getColor = (color)=>{
29
- if (!color) {
30
- return;
31
- }
32
- if (isColor(color?.toString())) {
33
- return color;
34
- }
35
- return `var(--g-c-${color})`;
36
- };
37
- const getStyleBgImage = (background, options)=>{
38
- const bgImage = {
39
- // desktop:
40
- // background.desktop?.type === 'color' ? 'none' : getBgImageByDevice(background, 'desktop'),
41
- // tablet: background.tablet?.type === 'color' ? 'none' : getBgImageByDevice(background, 'tablet'),
42
- // mobile: background.mobile?.type === 'color' ? 'none' : getBgImageByDevice(background, 'mobile'),
43
- desktop: getBgImageByDevice(background, 'desktop', options),
44
- tablet: getBgImageByDevice(background, 'tablet', options),
45
- mobile: getBgImageByDevice(background, 'mobile', options)
46
- };
47
- return makeStyleResponsive('bgi', bgImage);
48
- };
49
- const getBgImageByDevice = (background, device, options)=>{
50
- const backupFileKey = background?.[device]?.image?.backupFileKey;
51
- const imageByDevice = options?.liquid && backupFileKey && `{{ "${backupFileKey}" | asset_url }}` || background?.[device]?.image?.src;
52
- if (typeof imageByDevice === 'string') {
53
- return `url(${imageByDevice})`;
54
- }
55
- return;
56
- };
57
- const getStyleBgPosition = (background)=>{
58
- const bgPosition = {
59
- desktop: getBgPositionByDevice(background, 'desktop'),
60
- tablet: getBgPositionByDevice(background, 'tablet'),
61
- mobile: getBgPositionByDevice(background, 'mobile')
62
- };
63
- return makeStyleResponsive('bgp', bgPosition);
64
- };
65
- const getBgPositionByDevice = (background, device)=>{
66
- const positionByDevice = background?.[device]?.position;
67
- return positionByDevice && `${positionByDevice.x}% ${positionByDevice.y}%`;
68
- };
69
- const getStyleBgSize = (background)=>{
70
- const bgSize = {
71
- desktop: getBgSizeByDevice(background, 'desktop'),
72
- tablet: getBgSizeByDevice(background, 'tablet'),
73
- mobile: getBgSizeByDevice(background, 'mobile')
74
- };
75
- return makeStyleResponsive('bgs', bgSize);
76
- };
77
- const getBgSizeByDevice = (background, device)=>{
78
- return background?.[device]?.size;
79
- };
80
- const getStyleBgRepeat = (background)=>{
81
- const bgRepeat = {
82
- desktop: getBgRepeatByDevice(background, 'desktop'),
83
- tablet: getBgRepeatByDevice(background, 'tablet'),
84
- mobile: getBgRepeatByDevice(background, 'mobile')
85
- };
86
- return makeStyleResponsive('bgr', bgRepeat);
87
- };
88
- const getBgRepeatByDevice = (background, device)=>{
89
- return background?.[device]?.repeat;
90
- };
91
- const getStyleBgAttachment = (background)=>{
92
- const bgAttachment = {
93
- desktop: getBgAttachmentByDevice(background, 'desktop'),
94
- tablet: getBgAttachmentByDevice(background, 'tablet'),
95
- mobile: getBgAttachmentByDevice(background, 'mobile')
96
- };
97
- return makeStyleResponsive('bga', bgAttachment);
98
- };
99
- const getBgAttachmentByDevice = (background, device)=>{
100
- return background?.[device]?.attachment;
101
- };
102
- const composeBackgroundCss = (backgroundColor)=>{
103
- return `${backgroundColor ? `background-color: ${getSingleColorVariable(backgroundColor)} !important;` : undefined}`;
104
- };
105
-
106
- export { composeBackgroundCss, getStyleBackgroundByDevice };
1
+ import{isColor as e,getSingleColorVariable as t}from"./colors.js";import{makeStyleResponsive as g}from"./make-style.js";let getStyleBackgroundByDevice=(e,t)=>e?{...getStyleBgColor(e),...getStyleBgImage(e,t),...getStyleBgPosition(e),...getStyleBgSize(e),...getStyleBgRepeat(e),...getStyleBgAttachment(e)}:{},getStyleBgColor=e=>{let t={desktop:getBgColorByDevice(e,"desktop"),tablet:getBgColorByDevice(e,"tablet"),mobile:getBgColorByDevice(e,"mobile")};return g("bgc",t)},getBgColorByDevice=(e,t)=>getColor(e?.[t]?.color),getColor=t=>t?e(t?.toString())?t:`var(--g-c-${t})`:void 0,getStyleBgImage=(e,t)=>{let o={desktop:getBgImageByDevice(e,"desktop",t),tablet:getBgImageByDevice(e,"tablet",t),mobile:getBgImageByDevice(e,"mobile",t)};return g("bgi",o)},getBgImageByDevice=(e,t,g)=>{let o=e?.[t]?.image?.backupFileKey,i=g?.liquid&&o&&`{{ "${o}" | asset_url }}`||e?.[t]?.image?.src;if("string"==typeof i)return`url(${i})`},getStyleBgPosition=e=>{let t={desktop:getBgPositionByDevice(e,"desktop"),tablet:getBgPositionByDevice(e,"tablet"),mobile:getBgPositionByDevice(e,"mobile")};return g("bgp",t)},getBgPositionByDevice=(e,t)=>{let g=e?.[t]?.position;return g&&`${g.x}% ${g.y}%`},getStyleBgSize=e=>{let t={desktop:getBgSizeByDevice(e,"desktop"),tablet:getBgSizeByDevice(e,"tablet"),mobile:getBgSizeByDevice(e,"mobile")};return g("bgs",t)},getBgSizeByDevice=(e,t)=>e?.[t]?.size,getStyleBgRepeat=e=>{let t={desktop:getBgRepeatByDevice(e,"desktop"),tablet:getBgRepeatByDevice(e,"tablet"),mobile:getBgRepeatByDevice(e,"mobile")};return g("bgr",t)},getBgRepeatByDevice=(e,t)=>e?.[t]?.repeat,getStyleBgAttachment=e=>{let t={desktop:getBgAttachmentByDevice(e,"desktop"),tablet:getBgAttachmentByDevice(e,"tablet"),mobile:getBgAttachmentByDevice(e,"mobile")};return g("bga",t)},getBgAttachmentByDevice=(e,t)=>e?.[t]?.attachment,composeBackgroundCss=e=>`${e?`background-color: ${t(e)} !important;`:void 0}`;export{composeBackgroundCss,getStyleBackgroundByDevice};
@@ -1,175 +1,4 @@
1
- import { getSingleColorVariable, getGlobalColorStateResponsiveStyle, getGlobalColorStateStyle, getGlobalColorStateResponsiveClass, getGlobalColorStateClass, getGlobalColorStateResponsiveClassDynamicBtn, getGlobalColorStateClassDynamicBtn } from './colors.js';
2
- import { makeStyle, makeStyleResponsiveState, makeStyleState } from './make-style.js';
3
-
4
- const getBorderStyle = (value)=>{
5
- return makeStyle({
6
- b: value?.border,
7
- bc: getSingleColorVariable(value?.color),
8
- bw: value?.width
9
- });
10
- };
11
- const handleConvertBorderStyle = (value, type)=>{
12
- if (!value) return undefined;
13
- if ('desktop' in value || 'tablet' in value || 'mobile' in value) {
14
- const data = value;
15
- const newVal = {
16
- desktop: {
17
- normal: type === 'button' && data.desktop?.normal?.borderType === 'none' && !data.desktop?.normal?.isCustom ? 'solid' : data.desktop?.normal?.border,
18
- hover: type === 'button' && data.desktop?.hover?.borderType === 'none' && !data.desktop?.hover?.isCustom ? 'solid' : data.desktop?.hover?.border,
19
- focus: type === 'button' && data.desktop?.focus?.borderType === 'none' && !data.desktop?.focus?.isCustom ? 'solid' : data.desktop?.focus?.border
20
- },
21
- tablet: {
22
- normal: type === 'button' && data.tablet?.normal?.borderType === 'none' && !data.tablet?.normal?.isCustom ? 'solid' : data.tablet?.normal?.border,
23
- hover: type === 'button' && data.tablet?.hover?.borderType === 'none' && !data.tablet?.hover?.isCustom ? 'solid' : data.tablet?.hover?.border,
24
- focus: type === 'button' && data.tablet?.focus?.borderType === 'none' && !data.tablet?.focus?.isCustom ? 'solid' : data.tablet?.focus?.border
25
- },
26
- mobile: {
27
- normal: type === 'button' && data.mobile?.normal?.borderType === 'none' && !data.mobile?.normal?.isCustom ? 'solid' : data.mobile?.normal?.border,
28
- hover: type === 'button' && data.mobile?.hover?.borderType === 'none' && !data.mobile?.hover?.isCustom ? 'solid' : data.mobile?.hover?.border,
29
- focus: type === 'button' && data.mobile?.focus?.borderType === 'none' && !data.mobile?.focus?.isCustom ? 'solid' : data.mobile?.focus?.border
30
- }
31
- };
32
- return makeStyleResponsiveState('bs', newVal);
33
- }
34
- const data = value;
35
- const newVal = {
36
- normal: type === 'button' && data.normal?.borderType === 'none' && !data.normal?.isCustom ? 'solid' : data?.normal?.border,
37
- hover: type === 'button' && data.hover?.borderType === 'none' && !data.hover?.isCustom ? 'solid' : data?.hover?.border,
38
- focus: type === 'button' && data.focus?.borderType === 'none' && !data.focus?.isCustom ? 'solid' : data?.focus?.border
39
- };
40
- return makeStyleState('bs', newVal);
41
- };
42
- const handleConvertBorderWidth = (value, type)=>{
43
- if (!value) return undefined;
44
- if ('desktop' in value || 'tablet' in value || 'mobile' in value) {
45
- const data = value;
46
- const newVal = {
47
- desktop: {
48
- normal: type === 'button' && data.desktop?.normal?.borderType === 'none' && !data?.desktop?.normal?.isCustom ? '1px 1px 1px 1px' : data.desktop?.normal?.width,
49
- hover: type === 'button' && data.desktop?.hover?.borderType === 'none' && !data?.desktop?.normal?.isCustom ? '1px 1px 1px 1px' : data.desktop?.hover?.width,
50
- focus: type === 'button' && data.desktop?.focus?.borderType === 'none' && !data?.desktop?.normal?.isCustom ? '1px 1px 1px 1px' : data.desktop?.focus?.width
51
- },
52
- tablet: {
53
- normal: type === 'button' && data.tablet?.normal?.borderType === 'none' && !data?.tablet?.normal?.isCustom ? '1px 1px 1px 1px' : data.tablet?.normal?.width,
54
- hover: type === 'button' && data.tablet?.hover?.borderType === 'none' && !data?.tablet?.hover?.isCustom ? '1px 1px 1px 1px' : data.tablet?.hover?.width,
55
- focus: type === 'button' && data.tablet?.focus?.borderType === 'none' && !data?.tablet?.focus?.isCustom ? '1px 1px 1px 1px' : data.tablet?.focus?.width
56
- },
57
- mobile: {
58
- normal: type === 'button' && data.mobile?.normal?.borderType === 'none' && !data?.mobile?.normal?.isCustom ? '1px 1px 1px 1px' : data.mobile?.normal?.width,
59
- hover: type === 'button' && data.mobile?.hover?.borderType === 'none' && !data?.mobile?.hover?.isCustom ? '1px 1px 1px 1px' : data.mobile?.hover?.width,
60
- focus: type === 'button' && data.mobile?.focus?.borderType === 'none' && !data?.mobile?.focus?.isCustom ? '1px 1px 1px 1px' : data.mobile?.focus?.width
61
- }
62
- };
63
- return makeStyleResponsiveState('bw', newVal);
64
- }
65
- const data = value;
66
- const newVal = {
67
- normal: type === 'button' && data.normal?.borderType === 'none' && !data.normal?.isCustom ? '1px 1px 1px 1px' : data?.normal?.width,
68
- hover: type === 'button' && data.hover?.borderType === 'none' && !data.hover?.isCustom ? '1px 1px 1px 1px' : data?.hover?.width,
69
- focus: type === 'button' && data.focus?.borderType === 'none' && !data.focus?.isCustom ? '1px 1px 1px 1px' : data?.focus?.width
70
- };
71
- return makeStyleState('bw', newVal);
72
- };
73
- const handleConvertBorderColor = (value)=>{
74
- if (!value) return undefined;
75
- if ('desktop' in value || 'tablet' in value || 'mobile' in value) {
76
- const data = value;
77
- const newVal = {
78
- desktop: {
79
- normal: data.desktop?.normal?.color,
80
- hover: data.desktop?.hover?.color,
81
- focus: data.desktop?.focus?.color
82
- },
83
- tablet: {
84
- normal: data.tablet?.normal?.color,
85
- hover: data.tablet?.hover?.color,
86
- focus: data.tablet?.focus?.color
87
- },
88
- mobile: {
89
- normal: data.mobile?.normal?.color,
90
- hover: data.mobile?.hover?.color,
91
- focus: data.mobile?.focus?.color
92
- }
93
- };
94
- return getGlobalColorStateResponsiveStyle('bc', newVal);
95
- }
96
- const data = value;
97
- const newVal = {
98
- normal: data?.normal?.color,
99
- hover: data?.hover?.color,
100
- focus: data?.focus?.color
101
- };
102
- return getGlobalColorStateStyle('bc', newVal);
103
- };
104
- const handleConvertClassColor = (value)=>{
105
- if (!value) return undefined;
106
- if ('desktop' in value || 'tablet' in value || 'mobile' in value) {
107
- const data = value;
108
- const newVal = {
109
- desktop: {
110
- normal: data.desktop?.normal?.color,
111
- hover: data.desktop?.hover?.color,
112
- focus: data.desktop?.focus?.color
113
- },
114
- tablet: {
115
- normal: data.tablet?.normal?.color,
116
- hover: data.tablet?.hover?.color,
117
- focus: data.tablet?.focus?.color
118
- },
119
- mobile: {
120
- normal: data.mobile?.normal?.color,
121
- hover: data.mobile?.hover?.color,
122
- focus: data.mobile?.focus?.color
123
- }
124
- };
125
- return getGlobalColorStateResponsiveClass('border', newVal);
126
- }
127
- const data = value;
128
- const newVal = {
129
- normal: data?.normal?.color,
130
- hover: data?.hover?.color,
131
- focus: data?.focus?.color
132
- };
133
- return getGlobalColorStateClass('border', newVal);
134
- };
135
- const handleConvertClassColorDynamicBtn = (value)=>{
136
- if (!value) return undefined;
137
- if ('desktop' in value || 'tablet' in value || 'mobile' in value) {
138
- const data = value;
139
- const newVal = {
140
- desktop: {
141
- normal: data.desktop?.normal?.color,
142
- hover: data.desktop?.hover?.color,
143
- focus: data.desktop?.focus?.color
144
- },
145
- tablet: {
146
- normal: data.tablet?.normal?.color,
147
- hover: data.tablet?.hover?.color,
148
- focus: data.tablet?.focus?.color
149
- },
150
- mobile: {
151
- normal: data.mobile?.normal?.color,
152
- hover: data.mobile?.hover?.color,
153
- focus: data.mobile?.focus?.color
154
- }
155
- };
156
- return getGlobalColorStateResponsiveClassDynamicBtn('border', newVal);
157
- }
158
- const data = value;
159
- const newVal = {
160
- normal: data?.normal?.color,
161
- hover: data?.hover?.color,
162
- focus: data?.focus?.color
163
- };
164
- return getGlobalColorStateClassDynamicBtn('border', newVal);
165
- };
166
- const composeBorderCss = (borderV)=>{
167
- if (!borderV) return '';
168
- const { border , width , color } = borderV;
169
- return `${border ? `border-style: ${border};` : ''}
170
- ${width ? `border-width: ${width};` : ''}
171
- ${color ? `border-color: ${getSingleColorVariable(color)};` : ''}
172
- `;
173
- };
174
-
175
- export { composeBorderCss, getBorderStyle, handleConvertBorderColor, handleConvertBorderStyle, handleConvertBorderWidth, handleConvertClassColor, handleConvertClassColorDynamicBtn };
1
+ import{getSingleColorVariable as o,getGlobalColorStateResponsiveStyle as e,getGlobalColorStateStyle as r,getGlobalColorStateResponsiveClass as t,getGlobalColorStateClass as l,getGlobalColorStateResponsiveClassDynamicBtn as n,getGlobalColorStateClassDynamicBtn as s}from"./colors.js";import{makeStyle as b,makeStyleResponsiveState as d,makeStyleState as m}from"./make-style.js";let getBorderStyle=e=>b({b:e?.border,bc:o(e?.color),bw:e?.width}),handleConvertBorderStyle=(o,e)=>{if(!o)return;if("desktop"in o||"tablet"in o||"mobile"in o){let r={desktop:{normal:"button"!==e||o.desktop?.normal?.borderType!=="none"||o.desktop?.normal?.isCustom?o.desktop?.normal?.border:"solid",hover:"button"!==e||o.desktop?.hover?.borderType!=="none"||o.desktop?.hover?.isCustom?o.desktop?.hover?.border:"solid",focus:"button"!==e||o.desktop?.focus?.borderType!=="none"||o.desktop?.focus?.isCustom?o.desktop?.focus?.border:"solid"},tablet:{normal:"button"!==e||o.tablet?.normal?.borderType!=="none"||o.tablet?.normal?.isCustom?o.tablet?.normal?.border:"solid",hover:"button"!==e||o.tablet?.hover?.borderType!=="none"||o.tablet?.hover?.isCustom?o.tablet?.hover?.border:"solid",focus:"button"!==e||o.tablet?.focus?.borderType!=="none"||o.tablet?.focus?.isCustom?o.tablet?.focus?.border:"solid"},mobile:{normal:"button"!==e||o.mobile?.normal?.borderType!=="none"||o.mobile?.normal?.isCustom?o.mobile?.normal?.border:"solid",hover:"button"!==e||o.mobile?.hover?.borderType!=="none"||o.mobile?.hover?.isCustom?o.mobile?.hover?.border:"solid",focus:"button"!==e||o.mobile?.focus?.borderType!=="none"||o.mobile?.focus?.isCustom?o.mobile?.focus?.border:"solid"}};return d("bs",r)}let r={normal:"button"!==e||o.normal?.borderType!=="none"||o.normal?.isCustom?o?.normal?.border:"solid",hover:"button"!==e||o.hover?.borderType!=="none"||o.hover?.isCustom?o?.hover?.border:"solid",focus:"button"!==e||o.focus?.borderType!=="none"||o.focus?.isCustom?o?.focus?.border:"solid"};return m("bs",r)},handleConvertBorderWidth=(o,e)=>{if(!o)return;if("desktop"in o||"tablet"in o||"mobile"in o){let r={desktop:{normal:"button"!==e||o.desktop?.normal?.borderType!=="none"||o?.desktop?.normal?.isCustom?o.desktop?.normal?.width:"1px 1px 1px 1px",hover:"button"!==e||o.desktop?.hover?.borderType!=="none"||o?.desktop?.normal?.isCustom?o.desktop?.hover?.width:"1px 1px 1px 1px",focus:"button"!==e||o.desktop?.focus?.borderType!=="none"||o?.desktop?.normal?.isCustom?o.desktop?.focus?.width:"1px 1px 1px 1px"},tablet:{normal:"button"!==e||o.tablet?.normal?.borderType!=="none"||o?.tablet?.normal?.isCustom?o.tablet?.normal?.width:"1px 1px 1px 1px",hover:"button"!==e||o.tablet?.hover?.borderType!=="none"||o?.tablet?.hover?.isCustom?o.tablet?.hover?.width:"1px 1px 1px 1px",focus:"button"!==e||o.tablet?.focus?.borderType!=="none"||o?.tablet?.focus?.isCustom?o.tablet?.focus?.width:"1px 1px 1px 1px"},mobile:{normal:"button"!==e||o.mobile?.normal?.borderType!=="none"||o?.mobile?.normal?.isCustom?o.mobile?.normal?.width:"1px 1px 1px 1px",hover:"button"!==e||o.mobile?.hover?.borderType!=="none"||o?.mobile?.hover?.isCustom?o.mobile?.hover?.width:"1px 1px 1px 1px",focus:"button"!==e||o.mobile?.focus?.borderType!=="none"||o?.mobile?.focus?.isCustom?o.mobile?.focus?.width:"1px 1px 1px 1px"}};return d("bw",r)}let r={normal:"button"!==e||o.normal?.borderType!=="none"||o.normal?.isCustom?o?.normal?.width:"1px 1px 1px 1px",hover:"button"!==e||o.hover?.borderType!=="none"||o.hover?.isCustom?o?.hover?.width:"1px 1px 1px 1px",focus:"button"!==e||o.focus?.borderType!=="none"||o.focus?.isCustom?o?.focus?.width:"1px 1px 1px 1px"};return m("bw",r)},handleConvertBorderColor=o=>{if(!o)return;if("desktop"in o||"tablet"in o||"mobile"in o){let r={desktop:{normal:o.desktop?.normal?.color,hover:o.desktop?.hover?.color,focus:o.desktop?.focus?.color},tablet:{normal:o.tablet?.normal?.color,hover:o.tablet?.hover?.color,focus:o.tablet?.focus?.color},mobile:{normal:o.mobile?.normal?.color,hover:o.mobile?.hover?.color,focus:o.mobile?.focus?.color}};return e("bc",r)}let t={normal:o?.normal?.color,hover:o?.hover?.color,focus:o?.focus?.color};return r("bc",t)},handleConvertClassColor=o=>{if(!o)return;if("desktop"in o||"tablet"in o||"mobile"in o){let e={desktop:{normal:o.desktop?.normal?.color,hover:o.desktop?.hover?.color,focus:o.desktop?.focus?.color},tablet:{normal:o.tablet?.normal?.color,hover:o.tablet?.hover?.color,focus:o.tablet?.focus?.color},mobile:{normal:o.mobile?.normal?.color,hover:o.mobile?.hover?.color,focus:o.mobile?.focus?.color}};return t("border",e)}let e={normal:o?.normal?.color,hover:o?.hover?.color,focus:o?.focus?.color};return l("border",e)},handleConvertClassColorDynamicBtn=o=>{if(!o)return;if("desktop"in o||"tablet"in o||"mobile"in o){let e={desktop:{normal:o.desktop?.normal?.color,hover:o.desktop?.hover?.color,focus:o.desktop?.focus?.color},tablet:{normal:o.tablet?.normal?.color,hover:o.tablet?.hover?.color,focus:o.tablet?.focus?.color},mobile:{normal:o.mobile?.normal?.color,hover:o.mobile?.hover?.color,focus:o.mobile?.focus?.color}};return n("border",e)}let e={normal:o?.normal?.color,hover:o?.hover?.color,focus:o?.focus?.color};return s("border",e)},composeBorderCss=e=>{if(!e)return"";let{border:r,width:t,color:l}=e;return`${r?`border-style: ${r};`:""}
2
+ ${t?`border-width: ${t};`:""}
3
+ ${l?`border-color: ${o(l)};`:""}
4
+ `};export{composeBorderCss,getBorderStyle,handleConvertBorderColor,handleConvertBorderStyle,handleConvertBorderWidth,handleConvertClassColor,handleConvertClassColorDynamicBtn};
@@ -1,3 +1 @@
1
- const cloneDeep = (data)=>JSON.parse(JSON.stringify(data));
2
-
3
- export { cloneDeep };
1
+ let cloneDeep=e=>JSON.parse(JSON.stringify(e));export{cloneDeep};
@@ -1,14 +1 @@
1
- function toVal(mix) {
2
- if (typeof mix === 'string') {
3
- return mix;
4
- } else if (typeof mix === 'object' && mix !== null) {
5
- return Object.keys(mix).filter((key)=>mix[key]).join(' ');
6
- } else {
7
- return false;
8
- }
9
- }
10
- function cls(...classes) {
11
- return classes.map(toVal).filter(Boolean).join(' ');
12
- }
13
-
14
- export { cls };
1
+ function toVal(t){return"string"==typeof t?t:"object"==typeof t&&null!==t&&Object.keys(t).filter(o=>t[o]).join(" ")}function cls(...t){return t.map(toVal).filter(Boolean).join(" ")}export{cls};
@@ -1,168 +1 @@
1
- import { isDefined } from './is-defined.js';
2
- import { stateMapping } from './constant.js';
3
-
4
- const getGlobalColorCSSProp = (color)=>{
5
- return getSingleColorVariable(color);
6
- };
7
- const getGlobalColorClass = (type, color)=>{
8
- if (typeof color !== 'string' || !color || color?.startsWith('#') || color?.startsWith('rgb') || color?.startsWith('hsl') || color?.startsWith('transparent')) return '';
9
- return `${type}-g-${color}`;
10
- };
11
- const getGlobalColorResponsiveClass = (type, data)=>{
12
- if (!data) return '';
13
- return Object.entries(data).map(([device, value])=>{
14
- const clName = getGlobalColorClass(type, value);
15
- if (!clName) return undefined;
16
- if (device === 'desktop') {
17
- return clName;
18
- } else {
19
- return `${device}:${clName}`;
20
- }
21
- }).filter(isDefined).join(' ');
22
- };
23
- const getGlobalColorStateClass = (type, data)=>{
24
- if (!data) return '';
25
- return Object.entries(data).map(([state, value])=>{
26
- const clName = getGlobalColorClass(type, value);
27
- if (!clName) return undefined;
28
- if (state === 'normal') {
29
- return clName;
30
- } else {
31
- return `${state}:${clName}`;
32
- }
33
- }).filter(isDefined).join(' ');
34
- };
35
- const getGlobalColorStateClassDynamicBtn = (type, data)=>{
36
- if (!data) return '';
37
- return Object.entries(data).map(([state, value])=>{
38
- const clName = getGlobalColorClass(type, value);
39
- if (!clName) return undefined;
40
- if (state === 'normal') {
41
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${clName}`;
42
- } else {
43
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${state}:${clName}`;
44
- }
45
- }).filter(isDefined).join(' ');
46
- };
47
- const getGlobalColorStateResponsiveClass = (type, data)=>{
48
- if (!data) return '';
49
- return Object.entries(data).map(([device, objectState])=>{
50
- if (device === 'desktop') {
51
- return Object.entries(objectState).map(([state, value])=>{
52
- const clName = getGlobalColorClass(type, value);
53
- if (!clName) return undefined;
54
- if (state === 'normal') {
55
- return clName;
56
- } else {
57
- return `${state}:${clName}`;
58
- }
59
- }).filter(isDefined).join(' ');
60
- } else {
61
- return Object.entries(objectState).map(([state, value])=>{
62
- const clName = getGlobalColorClass(type, value);
63
- if (!clName) return undefined;
64
- if (state === 'normal') {
65
- return `${device}:${clName}`;
66
- } else {
67
- return `${device}:${state}:${clName}`;
68
- }
69
- }).filter(isDefined).join(' ');
70
- }
71
- }).filter(Boolean).join(' ');
72
- };
73
- const getGlobalColorStateResponsiveClassDynamicBtn = (type, data)=>{
74
- if (!data) return '';
75
- return Object.entries(data).map(([device, objectState])=>{
76
- if (device === 'desktop') {
77
- return Object.entries(objectState).map(([state, value])=>{
78
- const clName = getGlobalColorClass(type, value);
79
- if (!clName) return undefined;
80
- if (state === 'normal') {
81
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${clName}`;
82
- } else {
83
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${state}:${clName}`;
84
- }
85
- }).filter(isDefined).join(' ');
86
- } else {
87
- return Object.entries(objectState).map(([state, value])=>{
88
- const clName = getGlobalColorClass(type, value);
89
- if (!clName) return undefined;
90
- if (state === 'normal') {
91
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${device}:${clName}`;
92
- } else {
93
- return String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${device}:${state}:${clName}`;
94
- }
95
- }).filter(isDefined).join(' ');
96
- }
97
- }).filter(Boolean).join(' ');
98
- };
99
- const getGlobalColorResponsiveStyle = (type, data)=>{
100
- if (!data) return {};
101
- return Object.fromEntries(Object.entries(data).map(([device, value])=>{
102
- if (device === 'desktop') {
103
- return [
104
- `--${type}`,
105
- getSingleColorVariable(value)
106
- ];
107
- } else {
108
- return [
109
- `--${type}-${device}`,
110
- getSingleColorVariable(value)
111
- ];
112
- }
113
- }));
114
- };
115
- const getGlobalColorStateStyle = (type, data)=>{
116
- if (!data) return {};
117
- return Object.fromEntries(Object.entries(data).map(([state, value])=>{
118
- if (state === 'active') return [];
119
- return [
120
- `-${stateMapping?.[state]}-${type}`,
121
- getSingleColorVariable(value)
122
- ];
123
- }).filter(isDefined));
124
- };
125
- const getGlobalColorStateResponsiveStyle = (type, data)=>{
126
- if (!data) return {};
127
- return Object.entries(data).map(([device, objectState])=>{
128
- if (device === 'desktop') {
129
- return Object.fromEntries(Object.entries(objectState).map(([state, value])=>{
130
- if (state === 'active') return [];
131
- return [
132
- `-${stateMapping[state]}-${type}`,
133
- getSingleColorVariable(value)
134
- ];
135
- }).filter(isDefined));
136
- } else {
137
- return Object.fromEntries(Object.entries(objectState).map(([state, value])=>{
138
- if (state === 'active') return [];
139
- return [
140
- `-${stateMapping[state]}-${type}-${device}`,
141
- getSingleColorVariable(value)
142
- ];
143
- }).filter(isDefined));
144
- }
145
- }).reduce((acc, curr)=>({
146
- ...acc,
147
- ...curr
148
- }), {});
149
- };
150
- const getSingleColorVariable = (color)=>{
151
- if (!color) return undefined;
152
- if (isColor(color)) return color;
153
- return `var(--g-c-${color}, ${color})`;
154
- };
155
- function isColor(color) {
156
- return color?.startsWith('#') || color?.startsWith('rgb') || color?.startsWith('hsl') || color?.startsWith('transparent');
157
- }
158
- const getGlobalColorStyle = (data)=>{
159
- if (!data) return {};
160
- return {
161
- '--c': getSingleColorVariable(data)
162
- };
163
- };
164
- const composeTextColorCss = (color)=>{
165
- return `${color ? `color: ${getSingleColorVariable(color)} !important;` : ''}`;
166
- };
167
-
168
- export { composeTextColorCss, getGlobalColorCSSProp, getGlobalColorClass, getGlobalColorResponsiveClass, getGlobalColorResponsiveStyle, getGlobalColorStateClass, getGlobalColorStateClassDynamicBtn, getGlobalColorStateResponsiveClass, getGlobalColorStateResponsiveClassDynamicBtn, getGlobalColorStateResponsiveStyle, getGlobalColorStateStyle, getGlobalColorStyle, getSingleColorVariable, isColor };
1
+ import{isDefined as t}from"./is-defined.js";import{stateMapping as e}from"./constant.js";let getGlobalColorCSSProp=t=>getSingleColorVariable(t),getGlobalColorClass=(t,e)=>"string"!=typeof e||!e||e?.startsWith("#")||e?.startsWith("rgb")||e?.startsWith("hsl")||e?.startsWith("transparent")?"":`${t}-g-${e}`,getGlobalColorResponsiveClass=(e,o)=>o?Object.entries(o).map(([t,o])=>{let l=getGlobalColorClass(e,o);if(l)return"desktop"===t?l:`${t}:${l}`}).filter(t).join(" "):"",getGlobalColorStateClass=(e,o)=>o?Object.entries(o).map(([t,o])=>{let l=getGlobalColorClass(e,o);if(l)return"normal"===t?l:`${t}:${l}`}).filter(t).join(" "):"",getGlobalColorStateClassDynamicBtn=(e,o)=>o?Object.entries(o).map(([t,o])=>{let l=getGlobalColorClass(e,o);if(l)return"normal"===t?String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${l}`:String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${t}:${l}`}).filter(t).join(" "):"",getGlobalColorStateResponsiveClass=(e,o)=>o?Object.entries(o).map(([o,l])=>"desktop"===o?Object.entries(l).map(([t,o])=>{let l=getGlobalColorClass(e,o);if(l)return"normal"===t?l:`${t}:${l}`}).filter(t).join(" "):Object.entries(l).map(([t,l])=>{let r=getGlobalColorClass(e,l);if(r)return"normal"===t?`${o}:${r}`:`${o}:${t}:${r}`}).filter(t).join(" ")).filter(Boolean).join(" "):"",getGlobalColorStateResponsiveClassDynamicBtn=(e,o)=>o?Object.entries(o).map(([o,l])=>"desktop"===o?Object.entries(l).map(([t,o])=>{let l=getGlobalColorClass(e,o);if(l)return"normal"===t?String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${l}`:String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${t}:${l}`}).filter(t).join(" "):Object.entries(l).map(([t,l])=>{let r=getGlobalColorClass(e,l);if(r)return"normal"===t?String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${o}:${r}`:String.raw`[&_.shopify-payment-button\_\_button--unbranded]:${o}:${t}:${r}`}).filter(t).join(" ")).filter(Boolean).join(" "):"",getGlobalColorResponsiveStyle=(t,e)=>e?Object.fromEntries(Object.entries(e).map(([e,o])=>"desktop"===e?[`--${t}`,getSingleColorVariable(o)]:[`--${t}-${e}`,getSingleColorVariable(o)])):{},getGlobalColorStateStyle=(o,l)=>l?Object.fromEntries(Object.entries(l).map(([t,l])=>"active"===t?[]:[`-${e?.[t]}-${o}`,getSingleColorVariable(l)]).filter(t)):{},getGlobalColorStateResponsiveStyle=(o,l)=>l?Object.entries(l).map(([l,r])=>"desktop"===l?Object.fromEntries(Object.entries(r).map(([t,l])=>"active"===t?[]:[`-${e[t]}-${o}`,getSingleColorVariable(l)]).filter(t)):Object.fromEntries(Object.entries(r).map(([t,r])=>"active"===t?[]:[`-${e[t]}-${o}-${l}`,getSingleColorVariable(r)]).filter(t))).reduce((t,e)=>({...t,...e}),{}):{},getSingleColorVariable=t=>{if(t)return isColor(t)?t:`var(--g-c-${t}, ${t})`};function isColor(t){return t?.startsWith("#")||t?.startsWith("rgb")||t?.startsWith("hsl")||t?.startsWith("transparent")}let getGlobalColorStyle=t=>t?{"--c":getSingleColorVariable(t)}:{},composeTextColorCss=t=>`${t?`color: ${getSingleColorVariable(t)} !important;`:""}`;export{composeTextColorCss,getGlobalColorCSSProp,getGlobalColorClass,getGlobalColorResponsiveClass,getGlobalColorResponsiveStyle,getGlobalColorStateClass,getGlobalColorStateClassDynamicBtn,getGlobalColorStateResponsiveClass,getGlobalColorStateResponsiveClassDynamicBtn,getGlobalColorStateResponsiveStyle,getGlobalColorStateStyle,getGlobalColorStyle,getSingleColorVariable,isColor};