@gem-sdk/components 8.0.0-dev.59 → 8.0.0-dev.65

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 (246) hide show
  1. package/dist/cjs/accordion/settings/configs/ui-v1.js +1 -1
  2. package/dist/cjs/accordion/settings/configs/ui-v2.js +1 -1
  3. package/dist/cjs/article/settings/configs/article-image/ui-v1.js +1 -1
  4. package/dist/cjs/article/settings/configs/article-image/ui-v2.js +1 -1
  5. package/dist/cjs/article/settings/configs/article-list/ui-v2.js +1 -1
  6. package/dist/cjs/article/settings/configs/article-read-more/ui-v1.js +1 -1
  7. package/dist/cjs/article/settings/configs/article-read-more/ui-v2.js +1 -1
  8. package/dist/cjs/breadcrumb/settings/configs/ui-v2.js +1 -1
  9. package/dist/cjs/button/settings/configs/ui-v1.js +1 -1
  10. package/dist/cjs/button/settings/configs/ui-v2.js +1 -1
  11. package/dist/cjs/carousel/settings/configs/ui-v2.js +1 -1
  12. package/dist/cjs/carousel-v3/settings/configs/ui-v2.js +1 -1
  13. package/dist/cjs/code/common/styles.js +1 -1
  14. package/dist/cjs/code/components/CSSCode.js +1 -1
  15. package/dist/cjs/code/components/CSSCode.liquid.js +4 -4
  16. package/dist/cjs/code/index.js +1 -1
  17. package/dist/cjs/code/settings/configs/settings.js +1 -1
  18. package/dist/cjs/code/settings/configs/ui-v1.js +1 -1
  19. package/dist/cjs/collection/settings/collection-banner/configs/ui-v1.js +1 -1
  20. package/dist/cjs/countdown-timer/components/Countdown.liquid.js +11 -11
  21. package/dist/cjs/countdown-timer/settings/configs/ui-v2.js +1 -1
  22. package/dist/cjs/coupon/settings/configs/ui-v1.js +1 -1
  23. package/dist/cjs/coupon/settings/configs/ui-v2.js +1 -1
  24. package/dist/cjs/dialog/common/styles.js +1 -1
  25. package/dist/cjs/dialog/components/Dialog.js +2 -2
  26. package/dist/cjs/dialog/components/Dialog.liquid.js +22 -22
  27. package/dist/cjs/dialog/settings/configs/settings.js +1 -1
  28. package/dist/cjs/dialog/settings/configs/ui-v2.js +1 -1
  29. package/dist/cjs/estimate-delivery/settings/configs/ui-v1.js +1 -1
  30. package/dist/cjs/form/settings/contact/configs/ui-v2.js +1 -1
  31. package/dist/cjs/form/settings/newsletter/configs/ui-v2.js +1 -1
  32. package/dist/cjs/form/settings/submit-button/configs/ui-v1.js +1 -1
  33. package/dist/cjs/form/settings/submit-button/configs/ui-v2.js +1 -1
  34. package/dist/cjs/form/settings/text-input/configs/ui-v2.js +1 -1
  35. package/dist/cjs/grid/components/row/Row.js +1 -1
  36. package/dist/cjs/grid/components/row/Row.liquid.js +11 -11
  37. package/dist/cjs/grid/components/row/common/helpers.js +1 -1
  38. package/dist/cjs/grid/components/row/common/styles.js +1 -1
  39. package/dist/cjs/grid/settings/configs/row/ui-v1.js +1 -1
  40. package/dist/cjs/grid/settings/configs/row/ui-v2.js +1 -1
  41. package/dist/cjs/grid/settings/configs/section/ui-v1.js +1 -1
  42. package/dist/cjs/grid/settings/configs/section/ui-v2.js +1 -1
  43. package/dist/cjs/header/settings/configs/ui-v2.js +1 -1
  44. package/dist/cjs/heading/settings/configs/settings.js +1 -1
  45. package/dist/cjs/heading/settings/configs/ui-v1.js +1 -1
  46. package/dist/cjs/helpers.js +1 -1
  47. package/dist/cjs/hero-banner/components/HeroBannerItem.js +1 -1
  48. package/dist/cjs/hero-banner/hooks/useHeroBannerItem.js +1 -1
  49. package/dist/cjs/hero-banner/settings/configs/ui-v1.js +1 -1
  50. package/dist/cjs/hero-banner/settings/configs/ui-v2.js +1 -1
  51. package/dist/cjs/icon-list/settings/configs/ui-v1.js +1 -1
  52. package/dist/cjs/icon-list/settings/configs/ui-v2.js +1 -1
  53. package/dist/cjs/icon-list-hoz/settings/configs/uiV1.js +1 -1
  54. package/dist/cjs/icon-list-hoz/settings/configs/uiV2.js +1 -1
  55. package/dist/cjs/image/common/helpers.js +2 -2
  56. package/dist/cjs/image/components/Image.liquid.js +7 -7
  57. package/dist/cjs/image/settings/configs/settings.js +1 -1
  58. package/dist/cjs/image/settings/configs/ui-v1.js +1 -1
  59. package/dist/cjs/image/settings/configs/ui-v2.js +1 -1
  60. package/dist/cjs/image-comparison/common/helpers.js +1 -1
  61. package/dist/cjs/image-comparison/components/ImageComparison.liquid.js +3 -3
  62. package/dist/cjs/image-comparison/components/Label.liquid.js +7 -7
  63. package/dist/cjs/image-comparison/index.js +1 -1
  64. package/dist/cjs/image-comparison/settings/configs/settings.js +1 -1
  65. package/dist/cjs/image-comparison/settings/configs/ui-v2.js +1 -1
  66. package/dist/cjs/index.js +1 -1
  67. package/dist/cjs/marquee/settings/configs/ui-v1.js +1 -1
  68. package/dist/cjs/marquee/settings/configs/ui-v2.js +1 -1
  69. package/dist/cjs/post-purchase/callout-banner/settings/config/callout-box/ui-v1.js +1 -1
  70. package/dist/cjs/post-purchase/line/index.js +1 -1
  71. package/dist/cjs/post-purchase/product/components/ProductPrice.js +1 -1
  72. package/dist/cjs/post-purchase/product/settings/product-offer/configs/ui-v1.js +1 -1
  73. package/dist/cjs/post-purchase/product/settings/product-price/configs/settings-v2.js +1 -1
  74. package/dist/cjs/post-purchase/product/settings/product-price/configs/ui-v2.js +1 -1
  75. package/dist/cjs/product/components/file-upload/settings/configs/ui-v1.js +1 -1
  76. package/dist/cjs/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  77. package/dist/cjs/product/components/product-bundle/setting/configs/ui-v1.js +1 -1
  78. package/dist/cjs/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  79. package/dist/cjs/product/components/product-discount-tag/ProductDiscountTag.liquid.js +1 -1
  80. package/dist/cjs/product/settings/dynamic-checkout/configs/ui-v1.js +1 -1
  81. package/dist/cjs/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  82. package/dist/cjs/product/settings/product/configs/ui-v1.js +1 -1
  83. package/dist/cjs/product/settings/product/configs/ui-v2.js +1 -1
  84. package/dist/cjs/product/settings/product-badge/configs/ui-v1.js +1 -1
  85. package/dist/cjs/product/settings/product-badge/configs/ui-v2.js +1 -1
  86. package/dist/cjs/product/settings/product-button/configs/ui-v1.js +1 -1
  87. package/dist/cjs/product/settings/product-button/configs/ui-v2.js +1 -1
  88. package/dist/cjs/product/settings/product-image-v2/ProductFeatureImage.js +1 -1
  89. package/dist/cjs/product/settings/product-image-v2/ProductGalleryImage.js +1 -1
  90. package/dist/cjs/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  91. package/dist/cjs/product/settings/product-image-v3/ProductFeatureImage.js +1 -1
  92. package/dist/cjs/product/settings/product-image-v3/ProductGalleryImage.js +1 -1
  93. package/dist/cjs/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  94. package/dist/cjs/product/settings/product-list/configs/ui-v1.js +1 -1
  95. package/dist/cjs/product/settings/product-list/configs/ui-v2.js +1 -1
  96. package/dist/cjs/product/settings/product-list-v3/configs/ui-v1.js +1 -1
  97. package/dist/cjs/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  98. package/dist/cjs/product/settings/product-properties/configs/ui-v1.js +1 -1
  99. package/dist/cjs/product/settings/product-properties/configs/ui-v2.js +1 -1
  100. package/dist/cjs/product/settings/product-variant/configs/ui-v1.js +1 -1
  101. package/dist/cjs/product/settings/product-variant/configs/ui-v2.js +1 -1
  102. package/dist/cjs/product/settings/product-view-more/configs/ui-v1.js +1 -1
  103. package/dist/cjs/product/settings/product-view-more/configs/ui-v2.js +1 -1
  104. package/dist/cjs/sticky/common/styles.js +1 -1
  105. package/dist/cjs/sticky/components/Sticky.js +1 -1
  106. package/dist/cjs/sticky/components/Sticky.liquid.js +7 -7
  107. package/dist/cjs/sticky/index.js +1 -1
  108. package/dist/cjs/sticky/settings/configs/settings.js +1 -1
  109. package/dist/cjs/sticky/settings/configs/ui-v1.js +1 -1
  110. package/dist/cjs/sticky/settings/configs/ui-v2.js +1 -1
  111. package/dist/cjs/tab/settings/configs/ui-v2.js +1 -1
  112. package/dist/cjs/text/common/helpers.js +1 -1
  113. package/dist/cjs/text/common/styles.js +1 -1
  114. package/dist/cjs/text/components/Text.js +1 -1
  115. package/dist/cjs/text/components/Text.liquid.js +3 -3
  116. package/dist/cjs/text/settings/configs/settings.js +1 -1
  117. package/dist/cjs/text/settings/configs/ui-v1.js +1 -1
  118. package/dist/cjs/third-party/settings/PushOwl/uiV1.js +1 -1
  119. package/dist/cjs/third-party/settings/PushOwl/uiV2.js +1 -1
  120. package/dist/cjs/video/common/helpers.js +1 -1
  121. package/dist/cjs/video/components/LiteYouTubeEmbed.js +1 -1
  122. package/dist/cjs/video/settings/configs/ui-v2.js +1 -1
  123. package/dist/esm/accordion/settings/configs/ui-v1.js +1 -1
  124. package/dist/esm/accordion/settings/configs/ui-v2.js +1 -1
  125. package/dist/esm/article/settings/configs/article-image/ui-v1.js +1 -1
  126. package/dist/esm/article/settings/configs/article-image/ui-v2.js +1 -1
  127. package/dist/esm/article/settings/configs/article-list/ui-v2.js +1 -1
  128. package/dist/esm/article/settings/configs/article-read-more/ui-v1.js +1 -1
  129. package/dist/esm/article/settings/configs/article-read-more/ui-v2.js +1 -1
  130. package/dist/esm/breadcrumb/settings/configs/ui-v2.js +1 -1
  131. package/dist/esm/button/settings/configs/ui-v1.js +1 -1
  132. package/dist/esm/button/settings/configs/ui-v2.js +1 -1
  133. package/dist/esm/carousel/settings/configs/ui-v2.js +1 -1
  134. package/dist/esm/carousel-v3/settings/configs/ui-v2.js +1 -1
  135. package/dist/esm/code/common/styles.js +1 -1
  136. package/dist/esm/code/components/CSSCode.js +1 -1
  137. package/dist/esm/code/components/CSSCode.liquid.js +4 -4
  138. package/dist/esm/code/index.js +1 -1
  139. package/dist/esm/code/settings/configs/settings.js +1 -1
  140. package/dist/esm/code/settings/configs/ui-v1.js +1 -1
  141. package/dist/esm/collection/settings/collection-banner/configs/ui-v1.js +1 -1
  142. package/dist/esm/countdown-timer/components/Countdown.liquid.js +20 -20
  143. package/dist/esm/countdown-timer/settings/configs/ui-v2.js +1 -1
  144. package/dist/esm/coupon/settings/configs/ui-v1.js +1 -1
  145. package/dist/esm/coupon/settings/configs/ui-v2.js +1 -1
  146. package/dist/esm/dialog/common/styles.js +1 -1
  147. package/dist/esm/dialog/components/Dialog.js +2 -2
  148. package/dist/esm/dialog/components/Dialog.liquid.js +22 -22
  149. package/dist/esm/dialog/settings/configs/settings.js +1 -1
  150. package/dist/esm/dialog/settings/configs/ui-v2.js +1 -1
  151. package/dist/esm/estimate-delivery/settings/configs/ui-v1.js +1 -1
  152. package/dist/esm/form/settings/contact/configs/ui-v2.js +1 -1
  153. package/dist/esm/form/settings/newsletter/configs/ui-v2.js +1 -1
  154. package/dist/esm/form/settings/submit-button/configs/ui-v1.js +1 -1
  155. package/dist/esm/form/settings/submit-button/configs/ui-v2.js +1 -1
  156. package/dist/esm/form/settings/text-input/configs/ui-v2.js +1 -1
  157. package/dist/esm/grid/components/row/Row.js +1 -1
  158. package/dist/esm/grid/components/row/Row.liquid.js +17 -17
  159. package/dist/esm/grid/components/row/common/helpers.js +1 -1
  160. package/dist/esm/grid/components/row/common/styles.js +1 -1
  161. package/dist/esm/grid/settings/configs/row/ui-v1.js +1 -1
  162. package/dist/esm/grid/settings/configs/row/ui-v2.js +1 -1
  163. package/dist/esm/grid/settings/configs/section/ui-v1.js +1 -1
  164. package/dist/esm/grid/settings/configs/section/ui-v2.js +1 -1
  165. package/dist/esm/header/settings/configs/ui-v2.js +1 -1
  166. package/dist/esm/heading/settings/configs/settings.js +1 -1
  167. package/dist/esm/heading/settings/configs/ui-v1.js +1 -1
  168. package/dist/esm/helpers.js +1 -1
  169. package/dist/esm/hero-banner/components/HeroBannerItem.js +1 -1
  170. package/dist/esm/hero-banner/hooks/useHeroBannerItem.js +1 -1
  171. package/dist/esm/hero-banner/settings/configs/ui-v1.js +1 -1
  172. package/dist/esm/hero-banner/settings/configs/ui-v2.js +1 -1
  173. package/dist/esm/icon-list/settings/configs/ui-v1.js +1 -1
  174. package/dist/esm/icon-list/settings/configs/ui-v2.js +1 -1
  175. package/dist/esm/icon-list-hoz/settings/configs/uiV1.js +1 -1
  176. package/dist/esm/icon-list-hoz/settings/configs/uiV2.js +1 -1
  177. package/dist/esm/image/common/helpers.js +2 -2
  178. package/dist/esm/image/components/Image.liquid.js +10 -10
  179. package/dist/esm/image/settings/configs/settings.js +1 -1
  180. package/dist/esm/image/settings/configs/ui-v1.js +1 -1
  181. package/dist/esm/image/settings/configs/ui-v2.js +1 -1
  182. package/dist/esm/image-comparison/common/helpers.js +1 -1
  183. package/dist/esm/image-comparison/components/ImageComparison.liquid.js +3 -3
  184. package/dist/esm/image-comparison/components/Label.liquid.js +7 -7
  185. package/dist/esm/image-comparison/index.js +1 -1
  186. package/dist/esm/image-comparison/settings/configs/settings.js +1 -1
  187. package/dist/esm/image-comparison/settings/configs/ui-v2.js +1 -1
  188. package/dist/esm/index.js +1 -1
  189. package/dist/esm/marquee/settings/configs/ui-v1.js +1 -1
  190. package/dist/esm/marquee/settings/configs/ui-v2.js +1 -1
  191. package/dist/esm/post-purchase/callout-banner/settings/config/callout-box/ui-v1.js +1 -1
  192. package/dist/esm/post-purchase/line/index.js +1 -1
  193. package/dist/esm/post-purchase/product/components/ProductPrice.js +1 -1
  194. package/dist/esm/post-purchase/product/settings/product-offer/configs/ui-v1.js +1 -1
  195. package/dist/esm/post-purchase/product/settings/product-price/configs/settings-v2.js +1 -1
  196. package/dist/esm/post-purchase/product/settings/product-price/configs/ui-v2.js +1 -1
  197. package/dist/esm/product/components/file-upload/settings/configs/ui-v1.js +1 -1
  198. package/dist/esm/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  199. package/dist/esm/product/components/product-bundle/setting/configs/ui-v1.js +1 -1
  200. package/dist/esm/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  201. package/dist/esm/product/components/product-discount-tag/ProductDiscountTag.liquid.js +1 -1
  202. package/dist/esm/product/settings/dynamic-checkout/configs/ui-v1.js +1 -1
  203. package/dist/esm/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  204. package/dist/esm/product/settings/product/configs/ui-v1.js +1 -1
  205. package/dist/esm/product/settings/product/configs/ui-v2.js +1 -1
  206. package/dist/esm/product/settings/product-badge/configs/ui-v1.js +1 -1
  207. package/dist/esm/product/settings/product-badge/configs/ui-v2.js +1 -1
  208. package/dist/esm/product/settings/product-button/configs/ui-v1.js +1 -1
  209. package/dist/esm/product/settings/product-button/configs/ui-v2.js +1 -1
  210. package/dist/esm/product/settings/product-image-v2/ProductFeatureImage.js +1 -1
  211. package/dist/esm/product/settings/product-image-v2/ProductGalleryImage.js +1 -1
  212. package/dist/esm/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  213. package/dist/esm/product/settings/product-image-v3/ProductFeatureImage.js +1 -1
  214. package/dist/esm/product/settings/product-image-v3/ProductGalleryImage.js +1 -1
  215. package/dist/esm/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  216. package/dist/esm/product/settings/product-list/configs/ui-v1.js +1 -1
  217. package/dist/esm/product/settings/product-list/configs/ui-v2.js +1 -1
  218. package/dist/esm/product/settings/product-list-v3/configs/ui-v1.js +1 -1
  219. package/dist/esm/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  220. package/dist/esm/product/settings/product-properties/configs/ui-v1.js +1 -1
  221. package/dist/esm/product/settings/product-properties/configs/ui-v2.js +1 -1
  222. package/dist/esm/product/settings/product-variant/configs/ui-v1.js +1 -1
  223. package/dist/esm/product/settings/product-variant/configs/ui-v2.js +1 -1
  224. package/dist/esm/product/settings/product-view-more/configs/ui-v1.js +1 -1
  225. package/dist/esm/product/settings/product-view-more/configs/ui-v2.js +1 -1
  226. package/dist/esm/sticky/common/styles.js +1 -1
  227. package/dist/esm/sticky/components/Sticky.js +1 -1
  228. package/dist/esm/sticky/components/Sticky.liquid.js +6 -6
  229. package/dist/esm/sticky/index.js +1 -1
  230. package/dist/esm/sticky/settings/configs/settings.js +1 -1
  231. package/dist/esm/sticky/settings/configs/ui-v1.js +1 -1
  232. package/dist/esm/sticky/settings/configs/ui-v2.js +1 -1
  233. package/dist/esm/tab/settings/configs/ui-v2.js +1 -1
  234. package/dist/esm/text/common/helpers.js +1 -1
  235. package/dist/esm/text/common/styles.js +1 -1
  236. package/dist/esm/text/components/Text.js +1 -1
  237. package/dist/esm/text/components/Text.liquid.js +4 -4
  238. package/dist/esm/text/settings/configs/settings.js +1 -1
  239. package/dist/esm/text/settings/configs/ui-v1.js +1 -1
  240. package/dist/esm/third-party/settings/PushOwl/uiV1.js +1 -1
  241. package/dist/esm/third-party/settings/PushOwl/uiV2.js +1 -1
  242. package/dist/esm/video/common/helpers.js +1 -1
  243. package/dist/esm/video/components/LiteYouTubeEmbed.js +1 -1
  244. package/dist/esm/video/settings/configs/ui-v2.js +1 -1
  245. package/dist/types/index.d.ts +123 -102
  246. package/package.json +1 -1
@@ -1 +1 @@
1
- import{DEVICES as e,globalEvent as t}from"@gem-sdk/core";import r from"./link/components/Link.js";let REGEX_PAGE_TYPE=new RegExp(/^\/?(?:collections|pages|products|blogs|checkout|cart|policies)\/?/i),isShopifyDomain=(e,t)=>{let r=new RegExp(/^https?:\/\//i);return e&&!r.test(t)&&REGEX_PAGE_TYPE.test(t)},getLinkArticle=(e,t)=>"scroll-to"==e?t?.link:"{{article.url}}",isTransparentColor=e=>!!e&&(e.startsWith("#")?isHexTransparent(e):e.startsWith("rgb")?isTransparentRGBA(e):"transparent"==e),isTransparentRGBA=e=>{let t=e.replace(/\s/g,"").match(/^rgba?\((\d+),(\d+),(\d+),?([^,\s)]+)?/i)?.map(Number).filter(e=>!isNaN(e))??[0,0,0,1];return 0===t[t.length-1]},isHexTransparent=e=>{let t=!1,r=e.slice(e.startsWith("#")?1:0);3===r.length?r=[...r].map(e=>e+e).join(""):8===r.length&&(t=!0);let i=parseInt(r,16),l=t?255&i:void 0;return 0===l||!!l},youtubeShortsRegex=/^(?:https?:\/\/)?(?:www\.)?youtube\.com\/shorts\/([^"&?/\s]{11})$/i,getDynamicSourceLocales=({val:e,uid:t,settingId:r,isLiquid:i,pageContext:l,isCapitalize:n,defaultVal:o="",translate:a,isReplaceLocationOrigin:s,isReplaceMaxSize:p,isReplaceInventoryQuantity:c})=>{let g=new RegExp(/\{\{.*?\}\}|\{%.*?%\}/).test(e?.toString()??""),u=l?.isTranslateWithLocale?1e3:5e3;if(!a||!e?.toString().trim()||e.toString().length>u||g||l?.isPreviewing)return e??o;let h=`g${t}_${r}`,f=`section.settings.${h}`;return(l?.isTranslateWithLocale&&(f=`'sections.${l.sectionName}.${h}_html' | t`),s&&(f+=" | replace: '$locationOrigin', locationOrigin"),p&&(f+=" | replace: '$max_size', '10MB'"),c&&(f+=" | replace: '<$quantity$>', inventory_quantity | replace: '&lt;$quantity$&gt;', inventory_quantity"),n&&(f=`${f} | downcase`),i)?f:`{{ ${f} }}`},getStaticLocale=(e,t)=>`{{ 'gempages.${e}.${t}' | t }}`,getSettingPreloadData=(e,t)=>`{% if section.settings.section_preload == "false" %}${e} ${t?`{% else %}${t}`:""}{% endif %}`,getHttpUrl=e=>e?e.match(/^https?:\/\//i)?e:`http://${e}`:"";function normalizeMailto(e){if(e.startsWith("mailto:")){let[t,r]=e.split("?");if(r){let i=r.replace(/\+/g,"%20");e=`${t}?${i}`}}return e}let getInsertLinkData=(e,t,i)=>{let l=["#","mailto:","tel:"],n=["product.url"],o=t?.link!==void 0&&""!==t.link,a=t?.link??"",s="/"===a,p=new RegExp(/^(?:https?:\/\/)?[\w.-]+\.[a-z]{2,}/i),c=o&&p.test(a);c&&(a=getHttpUrl(a)),o&&a.toLowerCase().startsWith("mailto:")&&a.includes("+")&&(a=normalizeMailto(a));let g=()=>!!(l.find(e=>a.startsWith(e))||n.find(e=>a.includes(e))),u=c||isShopifyDomain(o,a)||g()||s||isLinkedToSalesPage(t?.type);(isShopifyDomain(o,a)||s)&&(a=t?.isTranslate?"$locationOrigin"+a:"{{ request.origin }}{{ routes.root_url | split: '/' | join: '/' }}"+a);let h=u?t?.isLiquid?"a":r:e,f={href:a,target:t?.target,...t?.noFollow&&{rel:"nofollow"}},m=u?f:o?{...f,type:i}:{type:i};return{Wrap:h,urlData:m,shouldRenderLink:u}},isLinkedToSalesPage=e=>"go-to-sales-page"===e,checkIsScrollToTop=e=>e?.type==="scroll-to"&&e?.link==="#scroll-to-top",checkIsOpenPopup=e=>e?.type==="open-popup"&&e?.link?.startsWith("#el-"),getLinkData=({setting:e,htmlType:t,defaultWrap:i,isLiquid:l=!1,enableImageLink:n=!1})=>{let o=["product.url"],a=["#","mailto:","tel:"],s=e?.link??"",p="/"===s,c=e?.link!==void 0&&""!==e.link,g=new RegExp(/^https?:\/\//i),u=c&&g.test(s);c&&s.toLowerCase().startsWith("mailto:")&&s.includes("+")&&(s=normalizeMailto(s));let h=()=>!!(o.find(e=>s.includes(e))||a.find(e=>s.startsWith(e))),f=n&&(u||isShopifyDomain(c,s)||h()||p||isLinkedToSalesPage(e?.type)),m=s;l&&(isShopifyDomain(c,s)||p)&&(m=e?.isTranslate?"$locationOrigin"+s:"{{ request.origin }}{{ routes.root_url | split: '/' | join: '/' }}"+s);let k=f?l?"a":r:i,y={href:m,target:e?.target,...e?.noFollow&&{rel:"nofollow"}},d=f?y:c?{...y,type:t}:{type:t};return{Wrapper:k,urlData:d,shouldRenderLink:f}},replaceLinkData=(e,t)=>{let r=/<a\s[^>]*>.*?<\/a>/;if(e&&r.test(e)){let r;let i=/<a\s+(?:[^>]*?\s+)?href=["']([^"']*)["'](?:\s+[^>]*?)?(?:target=["']([^"']*)["'])?.*?>.*?<\/a>/gi,l=e.toString();for(;null!==(r=i.exec(l));){let e=r[1],{urlData:i}=getInsertLinkData("",{link:e,isTranslate:t});l=l.replace(r[0],r[0].replace(/(href=['"])([^'"]*)(['"])/i,`$1${i.href}$3`))}return l}return e};function filterTruthyStyles(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}function filterTruthyObject(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}let getDisplayStyle=(t,r)=>{let i={};return e.forEach(e=>{i={...i,[`--d${"desktop"===e?"":`-${e}`}`]:`${t(e)?"none":r}`}}),i},convertUnitToNumber=(e,t)=>{if(!e)return t;if("number"==typeof e)return e;let r="string"==typeof e?e.replaceAll("px","").replaceAll("%","").replaceAll("rem","").replaceAll("em",""):t;return isNaN(Number(r))?t:Number(r)},getAllHrefFromString=e=>{let t;if(!e)return[];let r=/href="([^"]*)"/g,i=[];for(;null!==(t=r.exec(e));)t[1]&&i.push(t[1]);return i},replaceAllHrefFromString=(e,t)=>{let r;if(!e)return"";let i=/href="([^"]*)"/g,l=0;for(;null!==(r=i.exec(e));)r[1]&&(e=e.replace(r[1],t[l]??""),l++);return e};function isEmptyObject(e){return 0===Object.keys(e).length&&"object"==typeof e}let handleClickLink=(e,r)=>{if("edit"!==r){if(checkIsScrollToTop(e)){window.scrollTo({top:0,behavior:"smooth"});return}if(checkIsOpenPopup(e)){let r=e?.link?.replace("#el-","#");t.dispatch("onOpenDialog",{popupUId:r});return}e?.link?.startsWith("#")&&t.dispatch("onOpenDialog",{popupUId:e?.link})}};export{REGEX_PAGE_TYPE,checkIsOpenPopup,checkIsScrollToTop,convertUnitToNumber,filterTruthyObject,filterTruthyStyles,getAllHrefFromString,getDisplayStyle,getDynamicSourceLocales,getInsertLinkData,getLinkArticle,getLinkData,getSettingPreloadData,getStaticLocale,handleClickLink,isEmptyObject,isHexTransparent,isLinkedToSalesPage,isShopifyDomain,isTransparentColor,isTransparentRGBA,normalizeMailto,replaceAllHrefFromString,replaceLinkData,youtubeShortsRegex};
1
+ import{DEVICES as e,globalEvent as t,cloneDeep as r}from"@gem-sdk/core";import i from"./link/components/Link.js";let REGEX_PAGE_TYPE=new RegExp(/^\/?(?:collections|pages|products|blogs|checkout|cart|policies)\/?/i),isShopifyDomain=(e,t)=>{let r=new RegExp(/^https?:\/\//i);return e&&!r.test(t)&&REGEX_PAGE_TYPE.test(t)},getLinkArticle=(e,t)=>"scroll-to"==e?t?.link:"{{article.url}}",isTransparentColor=e=>!!e&&(e.startsWith("#")?isHexTransparent(e):e.startsWith("rgb")?isTransparentRGBA(e):"transparent"==e),isTransparentRGBA=e=>{let t=e.replace(/\s/g,"").match(/^rgba?\((\d+),(\d+),(\d+),?([^,\s)]+)?/i)?.map(Number).filter(e=>!isNaN(e))??[0,0,0,1];return 0===t[t.length-1]},isHexTransparent=e=>{let t=!1,r=e.slice(e.startsWith("#")?1:0);3===r.length?r=[...r].map(e=>e+e).join(""):8===r.length&&(t=!0);let i=parseInt(r,16),n=t?255&i:void 0;return 0===n||!!n},youtubeShortsRegex=/^(?:https?:\/\/)?(?:www\.)?youtube\.com\/shorts\/([^"&?/\s]{11})$/i,getDynamicSourceLocales=({val:e,uid:t,settingId:r,isLiquid:i,pageContext:n,isCapitalize:l,defaultVal:o="",translate:a,isReplaceLocationOrigin:s,isReplaceMaxSize:c,isReplaceInventoryQuantity:p})=>{let g=new RegExp(/\{\{.*?\}\}|\{%.*?%\}/).test(e?.toString()??""),u=n?.isTranslateWithLocale?1e3:5e3;if(!a||!e?.toString().trim()||e.toString().length>u||g||n?.isPreviewing)return e??o;let f=`g${t}_${r}`,h=`section.settings.${f}`;return(n?.isTranslateWithLocale&&(h=`'sections.${n.sectionName}.${f}_html' | t`),s&&(h+=" | replace: '$locationOrigin', locationOrigin"),c&&(h+=" | replace: '$max_size', '10MB'"),p&&(h+=" | replace: '<$quantity$>', inventory_quantity | replace: '&lt;$quantity$&gt;', inventory_quantity"),l&&(h=`${h} | downcase`),i)?h:`{{ ${h} }}`},getStaticLocale=(e,t)=>`{{ 'gempages.${e}.${t}' | t }}`,getSettingPreloadData=(e,t)=>`{% if section.settings.section_preload == "false" %}${e} ${t?`{% else %}${t}`:""}{% endif %}`,getHttpUrl=e=>e?e.match(/^https?:\/\//i)?e:`http://${e}`:"";function normalizeMailto(e){if(e.startsWith("mailto:")){let[t,r]=e.split("?");if(r){let i=r.replace(/\+/g,"%20");e=`${t}?${i}`}}return e}let getInsertLinkData=(e,t,r)=>{let n=["#","mailto:","tel:"],l=["product.url"],o=t?.link!==void 0&&""!==t.link,a=t?.link??"",s="/"===a,c=new RegExp(/^(?:https?:\/\/)?[\w.-]+\.[a-z]{2,}/i),p=o&&c.test(a);p&&(a=getHttpUrl(a)),o&&a.toLowerCase().startsWith("mailto:")&&a.includes("+")&&(a=normalizeMailto(a));let g=()=>!!(n.find(e=>a.startsWith(e))||l.find(e=>a.includes(e))),u=p||isShopifyDomain(o,a)||g()||s||isLinkedToSalesPage(t?.type);(isShopifyDomain(o,a)||s)&&(a=t?.isTranslate?"$locationOrigin"+a:"{{ request.origin }}{{ routes.root_url | split: '/' | join: '/' }}"+a);let f=u?t?.isLiquid?"a":i:e,h={href:a,target:t?.target,...t?.noFollow&&{rel:"nofollow"}},m=u?h:o?{...h,type:r}:{type:r};return{Wrap:f,urlData:m,shouldRenderLink:u}},isLinkedToSalesPage=e=>"go-to-sales-page"===e,checkIsScrollToTop=e=>e?.type==="scroll-to"&&e?.link==="#scroll-to-top",checkIsOpenPopup=e=>e?.type==="open-popup"&&e?.link?.startsWith("#el-"),getLinkData=({setting:e,htmlType:t,defaultWrap:r,isLiquid:n=!1,enableImageLink:l=!1})=>{let o=["product.url"],a=["#","mailto:","tel:"],s=e?.link??"",c="/"===s,p=e?.link!==void 0&&""!==e.link,g=new RegExp(/^https?:\/\//i),u=p&&g.test(s);p&&s.toLowerCase().startsWith("mailto:")&&s.includes("+")&&(s=normalizeMailto(s));let f=()=>!!(o.find(e=>s.includes(e))||a.find(e=>s.startsWith(e))),h=l&&(u||isShopifyDomain(p,s)||f()||c||isLinkedToSalesPage(e?.type)),m=s;n&&(isShopifyDomain(p,s)||c)&&(m=e?.isTranslate?"$locationOrigin"+s:"{{ request.origin }}{{ routes.root_url | split: '/' | join: '/' }}"+s);let d=h?n?"a":i:r,k={href:m,target:e?.target,...e?.noFollow&&{rel:"nofollow"}},y=h?k:p?{...k,type:t}:{type:t};return{Wrapper:d,urlData:y,shouldRenderLink:h}},replaceLinkData=(e,t)=>{let r=/<a\s[^>]*>.*?<\/a>/;if(e&&r.test(e)){let r;let i=/<a\s+(?:[^>]*?\s+)?href=["']([^"']*)["'](?:\s+[^>]*?)?(?:target=["']([^"']*)["'])?.*?>.*?<\/a>/gi,n=e.toString();for(;null!==(r=i.exec(n));){let e=r[1],{urlData:i}=getInsertLinkData("",{link:e,isTranslate:t});n=n.replace(r[0],r[0].replace(/(href=['"])([^'"]*)(['"])/i,`$1${i.href}$3`))}return n}return e};function filterTruthyStyles(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}function filterTruthyObject(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}let getDisplayStyle=(t,r)=>{let i={};return e.forEach(e=>{i={...i,[`--d${"desktop"===e?"":`-${e}`}`]:`${t(e)?"none":r}`}}),i},convertUnitToNumber=(e,t)=>{if(!e)return t;if("number"==typeof e)return e;let r="string"==typeof e?e.replaceAll("px","").replaceAll("%","").replaceAll("rem","").replaceAll("em",""):t;return isNaN(Number(r))?t:Number(r)},getAllHrefFromString=e=>{let t;if(!e)return[];let r=/href="([^"]*)"/g,i=[];for(;null!==(t=r.exec(e));)t[1]&&i.push(t[1]);return i},replaceAllHrefFromString=(e,t)=>{let r;if(!e)return"";let i=/href="([^"]*)"/g,n=0;for(;null!==(r=i.exec(e));)r[1]&&(e=e.replace(r[1],t[n]??""),n++);return e};function isEmptyObject(e){return 0===Object.keys(e).length&&"object"==typeof e}let handleClickLink=(e,r)=>{if("edit"!==r){if(checkIsScrollToTop(e)){window.scrollTo({top:0,behavior:"smooth"});return}if(checkIsOpenPopup(e)){let r=e?.link?.replace("#el-","#");t.dispatch("onOpenDialog",{popupUId:r});return}e?.link?.startsWith("#")&&t.dispatch("onOpenDialog",{popupUId:e?.link})}},hasTranslateIdInSetting=(e,t)=>!!t&&0!==t.length&&t.some(t=>t.id===e),getBackgroundTranslated=({background:e,translate:t,uid:i,pageContext:n,isTranslateVideo:l=!0})=>{if(!e)return{};if(!hasTranslateIdInSetting("background",t)||!i)return e;let o=r(e);for(let e in o){let t=o[e];if(t){if(t.image?.src){let r=getDynamicSourceLocales({val:t.image.src,uid:i,settingId:`background_${e}_image_src`,translate:"true",pageContext:n});t.image.src=String(r)}if(l){if("youtube"===t.videoType&&t.video){let r=getDynamicSourceLocales({val:t.video,uid:i,settingId:`background_${e}_video`,translate:"true",pageContext:n});t.video=String(r)}if("html5"===t.videoType&&t.videoHtml5){let r=getDynamicSourceLocales({val:t.videoHtml5,uid:i,settingId:`background_${e}_videoHtml5`,translate:"true",pageContext:n});t.videoHtml5=String(r)}}}}return o};export{REGEX_PAGE_TYPE,checkIsOpenPopup,checkIsScrollToTop,convertUnitToNumber,filterTruthyObject,filterTruthyStyles,getAllHrefFromString,getBackgroundTranslated,getDisplayStyle,getDynamicSourceLocales,getInsertLinkData,getLinkArticle,getLinkData,getSettingPreloadData,getStaticLocale,handleClickLink,hasTranslateIdInSetting,isEmptyObject,isHexTransparent,isLinkedToSalesPage,isShopifyDomain,isTransparentColor,isTransparentRGBA,normalizeMailto,replaceAllHrefFromString,replaceLinkData,youtubeShortsRegex};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useMemo as t}from"react";import{useEditorMode as r,filterToolbarPreview as l,getAspectRatioGlobalSize as s}from"@gem-sdk/core";import i from"../../grid/components/row/Row.js";import{createStyle as m,createClass as a}from"@gem-sdk/system";import d from"../../image/components/AdaptiveImage.js";import n from"../../video/components/HTML5Embed.js";import{getContainerStyle as p,getOverlayStyle as c,getRowStyle as y,getAdaptiveStyle as f,getBackgroundStyle as v,getContainBackgroundStyle as u,getYoutubeIframeStyle as h,getHtml5VideoStyle as b}from"../common/styles.js";import{getContainerClasses as j,getOverlayClasses as g,getRowClasses as H,getAdaptivePictureClasses as N,getAdaptiveClasses as T,getBackgroundClasses as k,getContainBackgroundClasses as w,getHtml5VideoClasses as I,getWrapperYoutubeClasses as B,getIframeYoutubeClasses as C}from"../common/classes.js";import{getBackgroundImageHeroBanner as L,showVideoType as z,horizontalAlign as E,getWidth as x,scrollToContentBanner as A,getBgImage as R,fallbackImg as V}from"../common/helpers.js";import $ from"../../video/components/LiteYouTubeEmbed.js";import{getYoutubeVideoId as M,youtubeVideoRegex as O}from"../../video/common/helpers.js";import S from"../hooks/useHeroBannerItem.js";let HeroBannerItem=W=>{r();let{setting:Y,styles:q,children:D,elementRef:F,transform:G,dataVideo:J,bgRef:K,isShowVideoHtml5:P,layoutResponsive:Q,heroBannerWrapperRef:U}=W,{layout:X,verticalAlign:Z,enableParallax:_,alt:ee,title:eo}=Y??{},{background:et,overlayColor:er,verticalGutter:el,sizeSetting:es,contentWidth:ei,hoverEffect:em,contentPosition1Col:ea,contentPosition2Col:ed,videoObjectFit:en}=q??{},ep=m({...p(q)}),ec=a({...j(Y,q)}),ey=m({...c(q)}),ef=a({...g(q)}),ev=m({...y(q)}),eu=a({...H(q,Y)}),eh=m({...f(q)}),eb=a({...N()}),ej=a({...T()}),eg=a({...k(em,!1)}),eH=m({...L(et,!1,!0),...v(q,_,G)}),eN=a({...w()}),eT=m({...u(q)}),ek=a({...I(!P)}),{youtubeIframeWrapperRef:ew,resolvedAspectRatio:eI,youtubeAspectRatio:eB}=S({videoType:J?.videoType,sizeSetting:es,background:et,videoObjectFit:en,heroBannerWrapperRef:U}),eC=m({...h(eB,en)}),eL=m({...b(eI,en)}),ez=a({...B()}),eE=a({...C()}),ex=t(()=>{if(!z(et))return;if(J?.videoType==="html5"&&!J.videoHtml5||J?.videoType==="youtube"&&!J.video)return null;if(J?.type==="video"&&J?.videoType==="html5"&&J?.videoHtml5)return e(n,{muted:!0,loop:J?.loop,controls:!1,autoplay:!0,src:J?.videoHtml5||"",title:"Video",style:eL,className:ek});let o=J?.video??"",t=M(o),r=J?.loop?1:0,l=`&loop=${r}&playlist=${t}&showinfo=0&rel=0&fs=0&enablejsapi=1`;if(J?.type==="video"&&J?.videoType==="youtube"&&t&&O.test(o))return e("div",{ref:ew,children:e($,{id:t,isHeroBanner:!0,autoplay:!0,title:"Video",controls:!1,params:l,adNetwork:!1,noCookie:!0,muted:!0,lazy:J?.lazyLoad??!0,style:eC,wrapperClass:ez,iframeClass:eE})})},[J,et,ek,eE,ez,eC,eL,ew]);return o("div",{className:ec,style:ep,children:[o("div",{ref:F,className:eN,style:eT,children:[e("div",{ref:K,className:eg,style:eH,children:ex}),!!er&&e("div",{"aria-label":"Overlay",className:ef,style:ey})]}),e(i,{className:eu,style:ev,setting:{layout:X,horizontalAlign:E(X,ea,ed),verticalAlign:Z},styles:{verticalGutter:el,width:x(ei),fullWidth:{desktop:!1,tablet:!1,mobile:!1}},hiddenEmptyCol:Q?.cols?.length===1,onBlur:e=>A(e),children:l(D)}),e(d,{pictureClass:eb,srcSet:R(et),className:ej,aspectRatio:s(es),style:eh,alt:ee,title:eo,enableLazyLoadImage:!1,fallbackImg:V})]})};export{HeroBannerItem as default};
2
+ import{jsx as e,jsxs as o}from"react/jsx-runtime";import{useMemo as t}from"react";import{useEditorMode as s,filterToolbarPreview as r,getAspectRatioGlobalSize as l}from"@gem-sdk/core";import m from"../../grid/components/row/Row.js";import{createStyle as i,createClass as a}from"@gem-sdk/system";import d from"../../image/components/AdaptiveImage.js";import n from"../../video/components/HTML5Embed.js";import{getContainerStyle as p,getOverlayStyle as c,getRowStyle as y,getAdaptiveStyle as f,getBackgroundStyle as v,getContainBackgroundStyle as u,getYoutubeIframeStyle as h,getHtml5VideoStyle as j}from"../common/styles.js";import{getContainerClasses as b,getOverlayClasses as g,getRowClasses as N,getAdaptivePictureClasses as H,getAdaptiveClasses as T,getBackgroundClasses as k,getContainBackgroundClasses as w,getHtml5VideoClasses as I,getWrapperYoutubeClasses as B,getIframeYoutubeClasses as C}from"../common/classes.js";import{getBackgroundImageHeroBanner as L,showVideoType as z,horizontalAlign as E,getWidth as x,scrollToContentBanner as A,getBgImage as R,fallbackImg as V}from"../common/helpers.js";import $ from"../../video/components/LiteYouTubeEmbed.js";import{getYoutubeVideoId as M,youtubeVideoRegex as O}from"../../video/common/helpers.js";import S from"../hooks/useHeroBannerItem.js";import{getYoutubeContentClasses as W}from"../../video/common/classes.js";let HeroBannerItem=Y=>{s();let{setting:q,styles:D,children:F,elementRef:G,transform:J,dataVideo:K,bgRef:P,isShowVideoHtml5:Q,layoutResponsive:U,heroBannerWrapperRef:X}=Y,{layout:Z,verticalAlign:_,enableParallax:ee,alt:eo,title:et}=q??{},{background:es,overlayColor:er,verticalGutter:el,sizeSetting:em,contentWidth:ei,hoverEffect:ea,contentPosition1Col:ed,contentPosition2Col:en,videoObjectFit:ep}=D??{},ec=i({...p(D)}),ey=a({...b(q,D)}),ef=i({...c(D)}),ev=a({...g(D)}),eu=i({...y(D)}),eh=a({...N(D,q)}),ej=i({...f(D)}),eb=a({...H()}),eg=a({...T()}),eN=a({...k(ea,!1)}),eH=i({...L(es,!1,!0),...v(D,ee,J)}),eT=a({...w()}),ek=i({...u(D)}),ew=a({...I(!Q)}),{youtubeIframeWrapperRef:eI,resolvedAspectRatio:eB,youtubeAspectRatio:eC}=S({videoType:K?.videoType,sizeSetting:em,background:es,videoObjectFit:ep,heroBannerWrapperRef:X}),eL=i({...h(eC,ep)}),ez=i({...j(eB,ep)}),eE=a({...B()}),ex=a({...C()}),eA=a({...W()}),eR=t(()=>{if(!z(es))return;if(K?.videoType==="html5"&&!K.videoHtml5||K?.videoType==="youtube"&&!K.video)return null;if(K?.type==="video"&&K?.videoType==="html5"&&K?.videoHtml5)return e(n,{muted:!0,loop:K?.loop,controls:!1,autoplay:!0,src:K?.videoHtml5||"",title:"Video",style:ez,className:ew});let o=K?.video??"",t=M(o),s=K?.loop?1:0,r=`&loop=${s}&playlist=${t}&showinfo=0&rel=0&fs=0&enablejsapi=1`;if(K?.type==="video"&&K?.videoType==="youtube"&&t&&O.test(o))return e("div",{className:eA,ref:eI,children:e($,{id:t,isHeroBanner:!0,autoplay:!0,title:"Video",controls:!1,params:r,adNetwork:!1,noCookie:!0,muted:!0,lazy:K?.lazyLoad??!0,style:eL,wrapperClass:eE,iframeClass:ex})})},[K,es,ew,ex,eE,eL,ez,eI]);return o("div",{className:ey,style:ec,children:[o("div",{ref:G,className:eT,style:ek,children:[e("div",{ref:P,className:eN,style:eH,children:eR}),!!er&&e("div",{"aria-label":"Overlay",className:ev,style:ef})]}),e(m,{className:eh,style:eu,setting:{layout:Z,horizontalAlign:E(Z,ed,en),verticalAlign:_},styles:{verticalGutter:el,width:x(ei),fullWidth:{desktop:!1,tablet:!1,mobile:!1}},hiddenEmptyCol:U?.cols?.length===1,onBlur:e=>A(e),children:r(F)}),e(d,{pictureClass:eb,srcSet:R(es),className:eg,aspectRatio:l(em),style:ej,alt:eo,title:et,enableLazyLoadImage:!1,fallbackImg:V})]})};export{HeroBannerItem as default};
@@ -1 +1 @@
1
- import{useRef as e,useMemo as r,useEffect as t}from"react";import{useCurrentDevice as o,getResponsiveValueByScreen as i}from"@gem-sdk/core";import{getAspectRatio as n,getYoutubeAspectRatio as u,resetVideoIframeStyle as m,resetVideoWrapperStyle as a,setVideoWrapperStyle as s,getResponsiveSetting as l,updateVideoIframeSize as c,getContainerRatio as d}from"../common/helpers.js";let useHeroBannerItem=({videoType:f,sizeSetting:v,background:y,videoObjectFit:b,heroBannerWrapperRef:p})=>{let w=o(),E=e(null),L=r(()=>n(v,y),[v,y]),R=r(()=>u(y,b,L),[y,b,L]),j=l(b||{}),q=i(j,w);return t(()=>{let e=E.current;if(!e)return;let r=()=>e.querySelector("iframe");if("youtube"!==f){m(r()),a(e);return}s(e);let t=()=>{c({iframeEl:r(),containerRatio:d(p?.current),videoObjectFit:q||"cover",background:y,currentDevice:w})},o=e=>{e.detail?.iframe&&setTimeout(()=>{t()},50)};e.addEventListener("youtube-iframe-ready",o),r()&&(window.requestAnimationFrame(t),setTimeout(()=>{t()},100));let i=window.ResizeObserver;if(!i)return()=>{e.removeEventListener("youtube-iframe-ready",o)};let n=new i(()=>t()),u=p?.current;return u&&n.observe(u),()=>{n.disconnect(),e.removeEventListener("youtube-iframe-ready",o),m(r()),a(e)}},[f,q,w,L]),{youtubeIframeWrapperRef:E,resolvedAspectRatio:L,youtubeAspectRatio:R}};export{useHeroBannerItem as default};
1
+ import{useRef as e,useMemo as r,useEffect as t}from"react";import{useCurrentDevice as i,getResponsiveValueByScreen as o}from"@gem-sdk/core";import{getAspectRatio as n,getYoutubeAspectRatio as m,resetVideoIframeStyle as u,resetVideoWrapperStyle as a,setVideoWrapperStyle as l,getResponsiveSetting as s,updateVideoIframeSize as f,getContainerRatio as c}from"../common/helpers.js";let useHeroBannerItem=({videoType:d,sizeSetting:v,background:y,videoObjectFit:b,heroBannerWrapperRef:p})=>{let E=i(),w=e(null),L=r(()=>n(v,y),[v,y]),q=r(()=>m(y,b,L),[y,b,L]),R=s(b||{}),j=o(R,E);return t(()=>{let e=w.current,r=p?.current,t=()=>e?.querySelector("iframe"),i=i=>{let o=i||e;if(!o)return;let n=o.querySelector("iframe");f({iframeEl:n||t(),containerRatio:c(r),videoObjectFit:j||"cover",background:y,currentDevice:E})},o=e=>{let r=e.detail?.iframe;if(r){let e=r.closest("article"),t=e?.parentElement;setTimeout(()=>{i(t)},50)}};if(r&&r.addEventListener("youtube-iframe-ready",o),!e)return()=>{r&&r.removeEventListener("youtube-iframe-ready",o)};if("youtube"!==d){let i=t();return i&&u(i),a(e),()=>{r&&r.removeEventListener("youtube-iframe-ready",o)}}l(e),t()&&(window.requestAnimationFrame(()=>i()),setTimeout(()=>{i()},100));let n=window.ResizeObserver;if(!n)return()=>{r&&r.removeEventListener("youtube-iframe-ready",o)};let m=new n(()=>i());return r&&m.observe(r),()=>{if(m.disconnect(),r&&r.removeEventListener("youtube-iframe-ready",o),e){let r=t();r&&u(r),a(e)}}},[d,j,E,L]),{youtubeIframeWrapperRef:w,resolvedAspectRatio:L,youtubeAspectRatio:q}};export{useHeroBannerItem as default};
@@ -1 +1 @@
1
- let SettingUIV1=[{type:"group",label:{en:"Layout"},setting:{id:"layoutBanner"},controls:[{type:"control",setting:{id:"layout"}},{type:"control",label:{en:"Arrange content"},setting:{id:"contentPosition1Col"},condition:'layout.cols.length <= 1 && layout.display === "fill"'},{type:"control",label:{en:"Arrange content"},setting:{id:"contentPosition2Col"},condition:'layout.cols.length > 1 && layout.display === "fill"',controlChangeTrigger:{settings:[{condition:'contentPosition2Col==="top"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"start",groupType:"setting",controlType:"setting"}},{condition:'contentPosition2Col==="center"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"center",groupType:"setting",controlType:"setting"}},{condition:'contentPosition2Col==="bottom"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"end",groupType:"setting",controlType:"setting"}}],options:{noRecordHistory:!0}}},{type:"control",label:{en:"Vertical align"},setting:{id:"verticalAlign"},condition:"layout.cols.length > 1",isMoreSetting:!0}],layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Banner source"},options:{label:"large",styleLabel:{marginBottom:"4px"}},setting:{id:"background"},layout:"vertical",controlChangeTrigger:{settings:[{condition:"!background.image.src",source:["background"],action:{controlId:"sizeSetting",newValue:{shapeLinked:!1,hiddenShape:!0},valueIfNull:{width:"100%",hiddenShape:!0},groupType:"style",controlType:"size-setting"}},{condition:"!!background.image.src",source:["background"],action:{controlId:"sizeSetting",newValue:{hiddenShape:!1},valueIfNull:{hiddenShape:!1},groupType:"style",controlType:"size-setting"}}],options:{noRecordHistory:!0}}},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background.type == "image"'}]},{type:"control",label:{en:"Link"},setting:{id:"link"},layout:"vertical"},{type:"group",label:{en:"Size"},controls:[{type:"control",label:{en:"Video Ratio"},setting:{id:"aspectRatio"},condition:'background.type == "video"'},{condition:"aspectRatio === 'custom'",type:"control",setting:{id:"ratioOptions"}},{type:"control",setting:{id:"sizeSetting"},layout:"vertical"},{type:"control",label:{en:"Content width"},setting:{id:"contentWidth"}},{type:"control",setting:{id:"contentPadding"}}]},{type:"group",label:{en:"Shape"},controls:[{type:"control",options:{labelPosition:"start"},label:{en:"Border"},setting:{id:"borderBg"}},{type:"control",label:{en:"Corner"},setting:{id:"cornerBg"}},{type:"control",label:{en:"Shadow"},setting:{id:"hasActiveShadow"}},{type:"control",setting:{id:"shadowBg"},layout:"vertical",condition:"hasActiveShadow === true"}]},{type:"group",controls:[{type:"control",label:{en:"Overlay"},setting:{id:"overlayEnable"},options:{label:"large"}},{type:"tab",condition:"overlayEnable == true",controls:[{type:"group",label:{en:"Normal"},controls:[{type:"control",label:{en:"Opacity"},setting:{id:"overlayOpacity",state:"normal"}},{type:"control",label:{en:"Color"},setting:{id:"overlayColor",state:"normal"}}]},{type:"group",label:{en:"Hover"},controls:[{type:"control",label:{en:"Opacity"},setting:{id:"overlayOpacity",state:"hover"}},{type:"control",label:{en:"Color"},setting:{id:"overlayColor",state:"hover"}}]}]}]},{type:"group",controls:[{type:"control",label:{en:"Zoom when hover"},setting:{id:"hoverEffect"},options:{label:"large"}},{type:"control",label:{en:"Scale value"},condition:"hoverEffect == true",setting:{id:"hoverEffectScale"}},{type:"control",label:{en:"Time"},condition:"hoverEffect == true",setting:{id:"hoverEffectDuration"}}]},{type:"group",condition:'background.type == "image"',controls:[{type:"control",label:{en:"Parallax scrolling"},setting:{id:"enableParallax"},options:{label:"large"}},{type:"control",label:{en:"Speed"},setting:{id:"speedParallax"}}]},{type:"control",condition:'sizeSetting.width !== "100%"',label:{en:"Align"},setting:{id:"alignBanner"}},{type:"group",label:{en:"SEO"},controls:[{type:"control",label:{en:"Alt text"},setting:{id:"alt"},layout:"vertical"},{type:"control",label:{en:"Image title"},setting:{id:"title"},layout:"vertical"}]}];export{SettingUIV1};
1
+ let SettingUIV1=[{type:"group",label:{en:"Layout"},setting:{id:"layoutBanner"},controls:[{type:"control",setting:{id:"layout"}},{type:"control",label:{en:"Arrange content"},setting:{id:"contentPosition1Col"},condition:'layout?.cols?.length <= 1 && layout?.display === "fill"'},{type:"control",label:{en:"Arrange content"},setting:{id:"contentPosition2Col"},condition:'layout?.cols?.length > 1 && layout?.display === "fill"',controlChangeTrigger:{settings:[{condition:'contentPosition2Col==="top"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"start",groupType:"setting",controlType:"setting"}},{condition:'contentPosition2Col==="center"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"center",groupType:"setting",controlType:"setting"}},{condition:'contentPosition2Col==="bottom"',source:["contentPosition2Col"],action:{controlId:"verticalAlign",newValue:"end",groupType:"setting",controlType:"setting"}}],options:{noRecordHistory:!0}}},{type:"control",label:{en:"Vertical align"},setting:{id:"verticalAlign"},condition:"layout?.cols?.length > 1",isMoreSetting:!0}],layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Banner source"},options:{label:"large",styleLabel:{marginBottom:"4px"}},setting:{id:"background"},layout:"vertical",controlChangeTrigger:{settings:[{condition:"!background?.image?.src",source:["background"],action:{controlId:"sizeSetting",newValue:{shapeLinked:!1,hiddenShape:!0},valueIfNull:{width:"100%",hiddenShape:!0},groupType:"style",controlType:"size-setting"}},{condition:"!!background?.image?.src",source:["background"],action:{controlId:"sizeSetting",newValue:{hiddenShape:!1},valueIfNull:{hiddenShape:!1},groupType:"style",controlType:"size-setting"}}],options:{noRecordHistory:!0}}},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background?.type == "image"'}]},{type:"control",label:{en:"Link"},setting:{id:"link"},layout:"vertical"},{type:"group",label:{en:"Size"},controls:[{type:"control",label:{en:"Video Ratio"},setting:{id:"aspectRatio"},condition:'background?.type == "video"'},{condition:"aspectRatio === 'custom'",type:"control",setting:{id:"ratioOptions"}},{type:"control",setting:{id:"sizeSetting"},layout:"vertical"},{type:"control",label:{en:"Content width"},setting:{id:"contentWidth"}},{type:"control",setting:{id:"contentPadding"}}]},{type:"group",label:{en:"Shape"},controls:[{type:"control",options:{labelPosition:"start"},label:{en:"Border"},setting:{id:"borderBg"}},{type:"control",label:{en:"Corner"},setting:{id:"cornerBg"}},{type:"control",label:{en:"Shadow"},setting:{id:"hasActiveShadow"}},{type:"control",setting:{id:"shadowBg"},layout:"vertical",condition:"hasActiveShadow === true"}]},{type:"group",controls:[{type:"control",label:{en:"Overlay"},setting:{id:"overlayEnable"},options:{label:"large"}},{type:"tab",condition:"overlayEnable == true",controls:[{type:"group",label:{en:"Normal"},controls:[{type:"control",label:{en:"Opacity"},setting:{id:"overlayOpacity",state:"normal"}},{type:"control",label:{en:"Color"},setting:{id:"overlayColor",state:"normal"}}]},{type:"group",label:{en:"Hover"},controls:[{type:"control",label:{en:"Opacity"},setting:{id:"overlayOpacity",state:"hover"}},{type:"control",label:{en:"Color"},setting:{id:"overlayColor",state:"hover"}}]}]}]},{type:"group",controls:[{type:"control",label:{en:"Zoom when hover"},setting:{id:"hoverEffect"},options:{label:"large"}},{type:"control",label:{en:"Scale value"},condition:"hoverEffect == true",setting:{id:"hoverEffectScale"}},{type:"control",label:{en:"Time"},condition:"hoverEffect == true",setting:{id:"hoverEffectDuration"}}]},{type:"group",condition:'background?.type == "image"',controls:[{type:"control",label:{en:"Parallax scrolling"},setting:{id:"enableParallax"},options:{label:"large"}},{type:"control",label:{en:"Speed"},setting:{id:"speedParallax"}}]},{type:"control",condition:'sizeSetting?.width !== "100%"',label:{en:"Align"},setting:{id:"alignBanner"}},{type:"group",label:{en:"SEO"},controls:[{type:"control",label:{en:"Alt text"},setting:{id:"alt"},layout:"vertical"},{type:"control",label:{en:"Image title"},setting:{id:"title"},layout:"vertical"}]}];export{SettingUIV1};
@@ -1 +1 @@
1
- let SettingUIV2=[{label:{en:"Layout"},controls:[{setting:{id:"layout"},layout:"vertical",controlChangeTrigger:{settings:[{condition:"layout.cols.length == 1 && layout.type === 'center-top'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"top"}},{condition:"layout.cols.length == 1 && layout.type === 'center'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"center"}},{condition:"layout.cols.length == 1 && layout.type === 'center-bottom'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"bottom"}},{condition:"layout.cols.length == 1 && layout.type === 'center-distributed'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"space-between"}},{condition:"layout.cols.length > 1 && ( layout.type === 'left-distributed' || layout.type === 'right-distributed')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"space-between"}},{condition:"layout.cols.length > 1 && ( layout.type === 'left-top' || layout.type === 'right-top')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"top"}},{condition:"layout.cols.length > 1 && ( layout.type === 'right' || layout.type === 'left')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"center"}},{condition:"layout.cols.length > 1 && ( layout.type === 'left-bottom' || layout.type === 'right-bottom')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"bottom"}}],options:{noRecordHistory:!0}}}]},{label:{en:"Background"},controls:[{setting:{id:"background"},options:{updateFields:[{field:"preload",settingId:"preload"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{condition:"!background.image.src",source:["background"],action:{controlId:"sizeSetting",newValue:{shapeLinked:!1},valueIfNull:{width:"100%",height:"fit-content"},groupType:"style",controlType:"size-setting"}},{condition:'background.type == "video"',source:["background"],action:{controlId:"sizeSetting",newValue:{enableVideoShape:!0},valueIfNull:{enableVideoShape:!0},groupType:"style",controlType:"size-setting"}},{condition:'background.type != "video"',source:["background"],action:{controlId:"sizeSetting",newValue:{enableVideoShape:!1},valueIfNull:{enableVideoShape:!1},groupType:"style",controlType:"size-setting"}}],options:{noRecordHistory:!0}},layout:"vertical"}],moreSettings:{type:"collapse",controls:[{label:{en:"Overlay"},type:"combo",comboType:"color",getValueFromSettingID:"overlayColor.normal",compoDefaultValue:"#121212",controls:[{setting:{id:"overlayColor",state:"normal"},label:{en:"Color"}},{setting:{id:"overlayOpacity",state:"normal"},label:{en:"Opacity"}}]}]}},{label:{en:"Size"},controls:[{setting:{id:"sizeSetting"},layout:"vertical"},{label:{en:"Scale"},setting:{id:"videoObjectFit"},conditionDisplay:'background.type == "video"'}]},{label:{en:"Content"},controls:[{id:"contentWidth",label:{en:"Width"},controlConfig:{id:"contentWidth",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0},{label:"Fit content",value:"Auto",showValue:!0}]},layout:"horizontal"},{label:{en:"Padding"},setting:{id:"contentPadding"}},{label:{en:"Align"},setting:{id:"verticalAlign"},conditionEnable:'layout.cols.length > 1 && layout.type != "right-distributed" && layout.type != "left-distributed"'}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"borderBg"}},{label:{en:"Corner"},setting:{id:"cornerBg"}},{label:{en:"Shadow"},setting:{id:"shadowBg"},options:{updateFields:[{field:"enable",settingId:"hasActiveShadow"}]},controlChangeTrigger:{settings:[{condition:"shadowBg.enable === true",source:["shadowBg","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"style",controlType:"style",newValue:!0}},{condition:"shadowBg.enable === false",source:["shadowBg","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"style",controlType:"style",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Effect"},controls:[{type:"combo",fixedValue:"Effect",iconName:"polaris-check-clicked",label:{en:"Hover effect"},setting:{id:"hoverEffect"},controlChangeTrigger:{settings:[{condition:"hoverEffect == true",source:["hoverEffect","hoverEffectScale"],action:{controlId:"hoverEffectScale",groupType:"style",controlType:"style",newValue:"120%"}},{condition:"hoverEffect == true",source:["hoverEffect","hoverEffectDuration"],action:{controlId:"hoverEffectDuration",groupType:"style",controlType:"style",newValue:"0.5s"}}],options:{noRecordHistory:!0}},defaultValueWhenClear:!1,state:"hover",controls:[{label:{en:"Overlay"},type:"combo",comboType:"color",getValueFromSettingID:"overlayColor.hover",defaultValueWhenClear:"transparent",compoDefaultValue:"#121212",controls:[{setting:{id:"overlayOpacity",state:"hover"},label:{en:"Opacity"}},{setting:{id:"overlayColor",state:"hover"},controlChangeTrigger:{settings:[{condition:"overlayColor.hover == 'transparent'",source:["overlayColor","overlayOpacity"],action:{controlId:"overlayOpacity",groupType:"style",controlType:"style",state:"hover",newValue:"20%"}}],options:{noRecordHistory:!0}},compoDefaultValue:"#121212",label:{en:"Color"}}]},{label:{en:"Scale"},type:"combo",iconName:"polaris-maximize",getValueFromSettingID:"hoverEffectScale",defaultValueWhenClear:"100%",compoDefaultValue:"120%",controls:[{label:{en:"Scale"},setting:{id:"hoverEffectScale"},defaultValueWhenClear:"100%"},{type:"control",label:{en:"Time"},setting:{id:"hoverEffectDuration"}}]}]},{type:"combo",fixedValue:"Enabled",iconName:"polaris-parallax-effect",label:{en:"Parallax scroll"},setting:{id:"enableParallax"},conditionDisplay:'background.type == "image"',defaultValueWhenClear:!1,controls:[{setting:{id:"contentBanner"},layout:"vertical"},{label:{en:"Speed"},setting:{id:"speedParallax"}}]}]},{controls:[{label:{en:"Link"},setting:{id:"enableLink"},options:{labelVariant:"primary",toggleStyle:"switch"}},{layout:"vertical",controlConfig:{id:"linkedToPreSalesPageBanner",type:"banner",message:"Pre-sales page elements with link should redirect to the Sales page."},conditionDisplay:'pageType === "GP_PRE_SALE_PAGE" && enableLink == true'},{conditionDisplay:"enableLink == true",setting:{id:"link"},layout:"vertical"}]},{label:{en:"SEO"},controls:[{type:"combo",label:{en:"Image alt text"},iconName:"polaris-text-block",getValueFromSettingID:"alt",compoDefaultValue:"Describes the appearance of the image",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"alt"},layout:"vertical"}]},{type:"combo",label:{en:"Image title"},iconName:"polaris-text-block",getValueFromSettingID:"title",compoDefaultValue:"Title",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"title"},layout:"vertical"}]}]},{controls:[{label:{en:"Align"},conditionEnable:'!(parseInt(sizeSetting.width) >= 100 && sizeSetting.width?.includes("%"))',setting:{id:"alignBanner"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Horizontal alignment is disabled when the width is set to 100% or greater"}}]}];export{SettingUIV2};
1
+ let SettingUIV2=[{label:{en:"Layout"},controls:[{setting:{id:"layout"},layout:"vertical",controlChangeTrigger:{settings:[{condition:"layout?.cols?.length == 1 && layout?.type === 'center-top'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"top"}},{condition:"layout?.cols?.length == 1 && layout?.type === 'center'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"center"}},{condition:"layout?.cols?.length == 1 && layout?.type === 'center-bottom'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"bottom"}},{condition:"layout?.cols?.length == 1 && layout?.type === 'center-distributed'",source:["layout"],action:{controlId:"contentPosition1Col",groupType:"style",controlType:"style",newValue:"space-between"}},{condition:"layout?.cols?.length > 1 && ( layout?.type === 'left-distributed' || layout?.type === 'right-distributed')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"space-between"}},{condition:"layout?.cols?.length > 1 && ( layout?.type === 'left-top' || layout?.type === 'right-top')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"top"}},{condition:"layout?.cols?.length > 1 && ( layout?.type === 'right' || layout?.type === 'left')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"center"}},{condition:"layout?.cols?.length > 1 && ( layout?.type === 'left-bottom' || layout?.type === 'right-bottom')",source:["layout"],action:{controlId:"contentPosition2Col",groupType:"style",controlType:"style",newValue:"bottom"}}],options:{noRecordHistory:!0}}}]},{label:{en:"Background"},controls:[{setting:{id:"background"},options:{updateFields:[{field:"preload",settingId:"preload"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{condition:"!background?.image?.src",source:["background"],action:{controlId:"sizeSetting",newValue:{shapeLinked:!1},valueIfNull:{width:"100%",height:"fit-content"},groupType:"style",controlType:"size-setting"}},{condition:'background?.type == "video"',source:["background"],action:{controlId:"sizeSetting",newValue:{enableVideoShape:!0},valueIfNull:{enableVideoShape:!0},groupType:"style",controlType:"size-setting"}},{condition:'background?.type != "video"',source:["background"],action:{controlId:"sizeSetting",newValue:{enableVideoShape:!1},valueIfNull:{enableVideoShape:!1},groupType:"style",controlType:"size-setting"}}],options:{noRecordHistory:!0}},layout:"vertical"}],moreSettings:{type:"collapse",controls:[{label:{en:"Overlay"},type:"combo",comboType:"color",getValueFromSettingID:"overlayColor.normal",compoDefaultValue:"#121212",controls:[{setting:{id:"overlayColor",state:"normal"},label:{en:"Color"}},{setting:{id:"overlayOpacity",state:"normal"},label:{en:"Opacity"}}]}]}},{label:{en:"Size"},controls:[{setting:{id:"sizeSetting"},layout:"vertical"},{label:{en:"Scale"},setting:{id:"videoObjectFit"},conditionDisplay:'background.type == "video"'}]},{label:{en:"Content"},controls:[{id:"contentWidth",label:{en:"Width"},controlConfig:{id:"contentWidth",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0},{label:"Fit content",value:"Auto",showValue:!0}]},layout:"horizontal"},{label:{en:"Padding"},setting:{id:"contentPadding"}},{label:{en:"Align"},setting:{id:"verticalAlign"},conditionEnable:'layout.cols.length > 1 && layout.type != "right-distributed" && layout.type != "left-distributed"'}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"borderBg"}},{label:{en:"Corner"},setting:{id:"cornerBg"}},{label:{en:"Shadow"},setting:{id:"shadowBg"},options:{updateFields:[{field:"enable",settingId:"hasActiveShadow"}]},controlChangeTrigger:{settings:[{condition:"shadowBg?.enable === true",source:["shadowBg","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"style",controlType:"style",newValue:!0}},{condition:"shadowBg?.enable === false",source:["shadowBg","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"style",controlType:"style",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Effect"},controls:[{type:"combo",fixedValue:"Effect",iconName:"polaris-check-clicked",label:{en:"Hover effect"},setting:{id:"hoverEffect"},controlChangeTrigger:{settings:[{condition:"hoverEffect == true",source:["hoverEffect","hoverEffectScale"],action:{controlId:"hoverEffectScale",groupType:"style",controlType:"style",newValue:"120%"}},{condition:"hoverEffect == true",source:["hoverEffect","hoverEffectDuration"],action:{controlId:"hoverEffectDuration",groupType:"style",controlType:"style",newValue:"0.5s"}}],options:{noRecordHistory:!0}},defaultValueWhenClear:!1,state:"hover",controls:[{label:{en:"Overlay"},type:"combo",comboType:"color",getValueFromSettingID:"overlayColor.hover",defaultValueWhenClear:"transparent",compoDefaultValue:"#121212",controls:[{setting:{id:"overlayOpacity",state:"hover"},label:{en:"Opacity"}},{setting:{id:"overlayColor",state:"hover"},controlChangeTrigger:{settings:[{condition:"overlayColor?.hover == 'transparent'",source:["overlayColor","overlayOpacity"],action:{controlId:"overlayOpacity",groupType:"style",controlType:"style",state:"hover",newValue:"20%"}}],options:{noRecordHistory:!0}},compoDefaultValue:"#121212",label:{en:"Color"}}]},{label:{en:"Scale"},type:"combo",iconName:"polaris-maximize",getValueFromSettingID:"hoverEffectScale",defaultValueWhenClear:"100%",compoDefaultValue:"120%",controls:[{label:{en:"Scale"},setting:{id:"hoverEffectScale"},defaultValueWhenClear:"100%"},{type:"control",label:{en:"Time"},setting:{id:"hoverEffectDuration"}}]}]},{type:"combo",fixedValue:"Enabled",iconName:"polaris-parallax-effect",label:{en:"Parallax scroll"},setting:{id:"enableParallax"},conditionDisplay:'background.type == "image"',defaultValueWhenClear:!1,controls:[{setting:{id:"contentBanner"},layout:"vertical"},{label:{en:"Speed"},setting:{id:"speedParallax"}}]}]},{controls:[{label:{en:"Link"},setting:{id:"enableLink"},options:{labelVariant:"primary",toggleStyle:"switch"}},{layout:"vertical",controlConfig:{id:"linkedToPreSalesPageBanner",type:"banner",message:"Pre-sales page elements with link should redirect to the Sales page."},conditionDisplay:'pageType === "GP_PRE_SALE_PAGE" && enableLink == true'},{conditionDisplay:"enableLink == true",setting:{id:"link"},layout:"vertical"}]},{label:{en:"SEO"},controls:[{type:"combo",label:{en:"Image alt text"},iconName:"polaris-text-block",getValueFromSettingID:"alt",compoDefaultValue:"Describes the appearance of the image",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"alt"},layout:"vertical"}]},{type:"combo",label:{en:"Image title"},iconName:"polaris-text-block",getValueFromSettingID:"title",compoDefaultValue:"Title",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"title"},layout:"vertical"}]}]},{controls:[{label:{en:"Align"},conditionEnable:'!(parseInt(sizeSetting.width) >= 100 && sizeSetting.width?.includes("%"))',setting:{id:"alignBanner"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Horizontal alignment is disabled when the width is set to 100% or greater"}}]}];export{SettingUIV2};
@@ -1 +1 @@
1
- let SettingUIV1=[{type:"control",label:{en:"Item management"},setting:{id:"childItem"},layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background.type == "image"'}]},{type:"group",label:{en:"Spacing"},controls:[{type:"control",label:{en:"Icon & text"},setting:{id:"horizontalSpacing"}},{type:"control",label:{en:"Lines"},setting:{id:"verticalSpacing"}}]},{type:"control",label:{en:"Background"},setting:{id:"background"},layout:"vertical",options:{label:"large",styleLabel:{marginBottom:"4px"}}},{type:"control",label:{en:"Align"},setting:{id:"align"}}];export{SettingUIV1};
1
+ let SettingUIV1=[{type:"control",label:{en:"Item management"},setting:{id:"childItem"},layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background?.type == "image"'}]},{type:"group",label:{en:"Spacing"},controls:[{type:"control",label:{en:"Icon & text"},setting:{id:"horizontalSpacing"}},{type:"control",label:{en:"Lines"},setting:{id:"verticalSpacing"}}]},{type:"control",label:{en:"Background"},setting:{id:"background"},layout:"vertical",options:{label:"large",styleLabel:{marginBottom:"4px"}}},{type:"control",label:{en:"Align"},setting:{id:"align"}}];export{SettingUIV1};
@@ -1 +1 @@
1
- let SettingUIV2=[{label:{en:"Item management"},controls:[{label:{en:"Order"},setting:{id:"childItem"}}]},{label:{en:"Item spacing"},controls:[{label:{en:"Gap"},setting:{id:"verticalSpacing"}}]},{label:{en:"Item style"},moreSettings:{controls:[{label:{en:"Padding"},controlConfig:{id:"padding-item-padding",type:"padding-v2",linkWithSetting:{name:"itemPadding",field:"padding"},compoDefaultValue:{desktop:{default:{type:"medium",top:"8px",bottom:"8px",left:"16px",right:"16px"}}}}},{label:{en:"Background"},setting:{id:"itemBackgroundColor"}},{label:{en:"Border"},setting:{id:"itemBorder"}},{label:{en:"Corner"},setting:{id:"itemRounded"}},{label:{en:"Shadow"},setting:{id:"itemBoxShadow"}}]},controls:[{label:{en:"Icon & text gap"},setting:{id:"horizontalSpacing"}}]},{label:{en:"Size"},controls:[{id:"Width",label:{en:"Width"},controlConfig:{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,fallbackValue:"Auto",linkWithSetting:{name:"globalSize",field:"width"},displayOptions:[{label:"Fit content",value:"Auto",showValue:!0},{label:"Full",value:"100%",showValue:!0}]},layout:"horizontal"},{label:{en:"Padding"},controlConfig:{id:"padding",type:"padding-v2",linkWithSetting:{name:"spacing-setting",field:"padding"},compoDefaultValue:{desktop:{default:{type:"medium",top:"16px",bottom:"16px",left:"16px",right:"16px"}}}}},{label:{en:"Arrange"},setting:{id:"align"},options:{fullWidth:!0},conditionDisplay:"globalSize.width !== 'Auto'"}]},{label:{en:"Background"},controls:[{setting:{id:"background"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"preload"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow.normal.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow.normal.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{controls:[{label:{en:"Align"},conditionEnable:'!(parseInt(globalSize.width) >= 100 && globalSize.width?.includes("%"))',setting:{id:"alignWrapper"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Align is not supported when width is 100%"}}]}];export{SettingUIV2};
1
+ let SettingUIV2=[{label:{en:"Item management"},controls:[{label:{en:"Order"},setting:{id:"childItem"}}]},{label:{en:"Item spacing"},controls:[{label:{en:"Gap"},setting:{id:"verticalSpacing"}}]},{label:{en:"Item style"},moreSettings:{controls:[{label:{en:"Padding"},controlConfig:{id:"padding-item-padding",type:"padding-v2",linkWithSetting:{name:"itemPadding",field:"padding"},compoDefaultValue:{desktop:{default:{type:"medium",top:"8px",bottom:"8px",left:"16px",right:"16px"}}}}},{label:{en:"Background"},setting:{id:"itemBackgroundColor"}},{label:{en:"Border"},setting:{id:"itemBorder"}},{label:{en:"Corner"},setting:{id:"itemRounded"}},{label:{en:"Shadow"},setting:{id:"itemBoxShadow"}}]},controls:[{label:{en:"Icon & text gap"},setting:{id:"horizontalSpacing"}}]},{label:{en:"Size"},controls:[{id:"Width",label:{en:"Width"},controlConfig:{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,fallbackValue:"Auto",linkWithSetting:{name:"globalSize",field:"width"},displayOptions:[{label:"Fit content",value:"Auto",showValue:!0},{label:"Full",value:"100%",showValue:!0}]},layout:"horizontal"},{label:{en:"Padding"},controlConfig:{id:"padding",type:"padding-v2",linkWithSetting:{name:"spacing-setting",field:"padding"},compoDefaultValue:{desktop:{default:{type:"medium",top:"16px",bottom:"16px",left:"16px",right:"16px"}}}}},{label:{en:"Arrange"},setting:{id:"align"},options:{fullWidth:!0},conditionDisplay:"globalSize.width !== 'Auto'"}]},{label:{en:"Background"},controls:[{setting:{id:"background"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"preload"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow?.normal?.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow?.normal?.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{controls:[{label:{en:"Align"},conditionEnable:'!(parseInt(globalSize.width) >= 100 && globalSize.width?.includes("%"))',setting:{id:"alignWrapper"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Align is not supported when width is 100%"}}]}];export{SettingUIV2};
@@ -1 +1 @@
1
- let SettingUIV1=[{type:"control",label:{en:"Item management"},setting:{id:"childItem"},layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Background"},options:{label:"large",styleLabel:{marginBottom:"4px"}},setting:{id:"background"},layout:"vertical"},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background.type == "image"'}]},{type:"control",label:{en:"Icon spacing"},setting:{id:"horizontalSpacing"}},{type:"group",label:{en:"Align"},controls:[{type:"control",label:{en:"Horizontal"},setting:{id:"align"}},{type:"control",label:{en:"Vertical"},setting:{id:"verticalAlign"}}]}];export{SettingUIV1};
1
+ let SettingUIV1=[{type:"control",label:{en:"Item management"},setting:{id:"childItem"},layout:"vertical"},{type:"group",controls:[{type:"control",label:{en:"Background"},options:{label:"large",styleLabel:{marginBottom:"4px"}},setting:{id:"background"},layout:"vertical"},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"preload"},condition:'background?.type == "image"'}]},{type:"control",label:{en:"Icon spacing"},setting:{id:"horizontalSpacing"}},{type:"group",label:{en:"Align"},controls:[{type:"control",label:{en:"Horizontal"},setting:{id:"align"}},{type:"control",label:{en:"Vertical"},setting:{id:"verticalAlign"}}]}];export{SettingUIV1};
@@ -1 +1 @@
1
- let SettingUIV2=[{label:{en:"Item management"},controls:[{label:{en:"Order"},setting:{id:"childItem"},options:{fullWidth:!0}}]},{label:{en:"Item spacing"},controls:[{type:"control",label:{en:"Gap"},setting:{id:"horizontalSpacing"}}]},{label:{en:"Background"},controls:[{type:"control",setting:{id:"background"},layout:"vertical"}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow.normal.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow.normal.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Align"},controls:[{type:"control",label:{en:"Horizontal"},setting:{id:"align"}},{type:"control",label:{en:"Vertical"},setting:{id:"verticalAlign"}}]}];export{SettingUIV2};
1
+ let SettingUIV2=[{label:{en:"Item management"},controls:[{label:{en:"Order"},setting:{id:"childItem"},options:{fullWidth:!0}}]},{label:{en:"Item spacing"},controls:[{type:"control",label:{en:"Gap"},setting:{id:"horizontalSpacing"}}]},{label:{en:"Background"},controls:[{type:"control",setting:{id:"background"},layout:"vertical"}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow?.normal?.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow?.normal?.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Align"},controls:[{type:"control",label:{en:"Horizontal"},setting:{id:"align"}},{type:"control",label:{en:"Vertical"},setting:{id:"verticalAlign"}}]}];export{SettingUIV2};
@@ -1,4 +1,4 @@
1
- import{getCornerCSSFromGlobal as e,getAspectRatioGlobalSize as t,makeStyleResponsive as i,DEVICES as r,getResponsiveValueByScreen as a}from"@gem-sdk/core";let overwriteDefaultRadius=t=>{let i={...t},r=!0;return i&&Object.keys(i??{}).forEach(e=>{if("bblr"===e||"bbrr"===e||"btlr"===e||"btrr"===e){let t=i[e]??{};"0px"!==t&&(r=!1)}}),r?e(i):{}},getAspectRatio=({styles:e,setting:i})=>{let{srcSet:r,image:a}=i??{},{customAspectRadio:l,shape:g}=e??{},o={desktop:composeAspectRatio({device:"desktop",aspect:e?.aspectRatio,auto:i?.isAdaptive?r?.desktop:a,custom:l}),tablet:composeAspectRatio({device:"tablet",aspect:e?.aspectRatio,auto:i?.isAdaptive?r?.tablet:a,custom:l}),mobile:composeAspectRatio({device:"mobile",aspect:e?.aspectRatio,auto:i?.isAdaptive?r?.mobile:a,custom:l})};return g?t(g):o},composeAspectRatio=({device:e,aspect:t,custom:i,auto:r})=>{let a=t?.[e];return"auto"===a?r?.height?`${r.width}/${r.height}`:void 0:"custom"===a?i?.[e]?.height?`${i?.[e]?.width}/${i?.[e]?.height}`:void 0:a},getResponsiveObjectFit=({layout:e,isDisableObjectFit:t})=>t?{}:i("objf",e),getAspectRatioNextImage=({isDisableAspectStyle:e,aspectRatio:t,objectFits:i,width:a,height:l})=>{if(e)return{};let g={};return r.forEach(e=>{let r=`--objf${"desktop"!==e?`-${e}`:""}`,o=i?.[r]||i?.["--objf"];if(t?.[e]==="auto"&&"contain"===o){g[e]="auto";return}g[e]=t?.[e]!=="auto"&&t?.[e]?t[e]:`${a}/${l}`}),g},safeStringify=e=>JSON.stringify(e||{}).replace(/"/g,"&quot;"),shimmer=(e,t)=>`<svg width="${e}" height="${t}" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
1
+ import{cloneDeep as e,getCornerCSSFromGlobal as t,getAspectRatioGlobalSize as i,makeStyleResponsive as r,DEVICES as a,getResponsiveValueByScreen as l}from"@gem-sdk/core";import{getDynamicSourceLocales as g}from"../../helpers.js";let overwriteDefaultRadius=e=>{let i={...e},r=!0;return i&&Object.keys(i??{}).forEach(e=>{if("bblr"===e||"bbrr"===e||"btlr"===e||"btrr"===e){let t=i[e]??{};"0px"!==t&&(r=!1)}}),r?t(i):{}},getAspectRatio=({styles:e,setting:t})=>{let{srcSet:r,image:a}=t??{},{customAspectRadio:l,shape:g}=e??{},s={desktop:composeAspectRatio({device:"desktop",aspect:e?.aspectRatio,auto:t?.isAdaptive?r?.desktop:a,custom:l}),tablet:composeAspectRatio({device:"tablet",aspect:e?.aspectRatio,auto:t?.isAdaptive?r?.tablet:a,custom:l}),mobile:composeAspectRatio({device:"mobile",aspect:e?.aspectRatio,auto:t?.isAdaptive?r?.mobile:a,custom:l})};return g?i(g):s},composeAspectRatio=({device:e,aspect:t,custom:i,auto:r})=>{let a=t?.[e];return"auto"===a?r?.height?`${r.width}/${r.height}`:void 0:"custom"===a?i?.[e]?.height?`${i?.[e]?.width}/${i?.[e]?.height}`:void 0:a},getResponsiveObjectFit=({layout:e,isDisableObjectFit:t})=>t?{}:r("objf",e),getAspectRatioNextImage=({isDisableAspectStyle:e,aspectRatio:t,objectFits:i,width:r,height:l})=>{if(e)return{};let g={};return a.forEach(e=>{let a=`--objf${"desktop"!==e?`-${e}`:""}`,s=i?.[a]||i?.["--objf"];if(t?.[e]==="auto"&&"contain"===s){g[e]="auto";return}g[e]=t?.[e]!=="auto"&&t?.[e]?t[e]:`${r}/${l}`}),g},safeStringify=e=>JSON.stringify(e||{}).replace(/"/g,"&quot;"),shimmer=(e,t)=>`<svg width="${e}" height="${t}" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
2
2
  <defs>
3
3
  <linearGradient id="g-${e}-${t}">
4
4
  <stop stop-color="rgba(51, 51, 51, 0)" offset="20%" />
@@ -9,4 +9,4 @@ import{getCornerCSSFromGlobal as e,getAspectRatioGlobalSize as t,makeStyleRespon
9
9
  <rect width="${e}" height="${t}" fill="rgba(51, 51, 51, 0)" />
10
10
  <rect id="r" width="${e}" height="${t}" fill="url(#g-${e}-${t})" />
11
11
  <animate xlink:href="#r" attributeName="x" from="-${e}" to="${e}" dur="1s" repeatCount="indefinite" />
12
- </svg>`,toBase64=e=>"undefined"==typeof window?Buffer.from(e).toString("base64"):window.btoa(e),createBlurDataURL=(e,t)=>`data:image/svg+xml;base64,${toBase64(shimmer(e,t))}`,IMAGE_PLACEHOLDER="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=",FALLBACK_IMAGE="https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",NEXT_IMAGE_CONFIG={DEFAULT_SIZES:"100vw",DEFAULT_ALT:"Alt image",DEFAULT_SRC:"https://cdn.shopify.com/s/files/1/2005/9307/files/placeholder-1.png?v=1751355990",DEFAULT_WIDTH_PROPS:800,DEFAULT_HEIGHT_PROPS:533},getAdaptiveImageData=e=>{let{srcSet:t,fallbackImg:i}=e,r=e=>{let{isLiquid:r}=e??{},a=getImageSrc(t?.desktop,"desktop",!r)||i||FALLBACK_IMAGE,l=getImageSrc(t?.tablet,"tablet",!r)||getImageSrc(t?.desktop,"tablet",!r)||i||FALLBACK_IMAGE,g=getImageSrc(t?.mobile,"mobile",!r)||getImageSrc(t?.tablet,"mobile",!r)||getImageSrc(t?.desktop,"mobile",!r)||i||FALLBACK_IMAGE;return{srcTablet:l,srcMobile:g,srcDesktop:a}};return{getDeviceSource:r}},getSrcSet=(e,t,i)=>e?getSrcSetLiquid(e,t):getSrcSetLink(i),isCannotResizeImage=e=>e.includes("webp")||e.includes("jfif")||e.includes(".svg")||e.includes(".tiff"),getSrcSetLiquid=(e,t)=>{let i=replaceBackupFileKeyFileContent(e);return isCannotResizeImage(e)?"FILE_CONTENT"==t?`{{ '${i}' | file_url }} 768w, {{ '${i}' | file_url }} 1024w, {{ '${i}' | file_url }} 1440w`:`{{ '${e}' | asset_url }} 768w, {{ '${e}' | asset_url }} 1024w, {{ '${e}' | asset_url }} 1440w`:"FILE_CONTENT"==t?`{{ '${i}' | file_img_url: '768x' }} 768w, {{ '${i}' | file_img_url: '1024x' }} 1024w, {{ '${i}' | file_img_url: 'master' }} 1440w`:`{{ '${e}' | asset_img_url: '768x' }} 768w, {{ '${e}' | asset_img_url: '1024x' }} 1024w, {{ '${e}' | asset_img_url: 'master' }} 1440w`},getSrcSetLink=e=>e,getImageSrc=(e,t,i)=>{if(e?.metafieldDefinitionKey)return getImageMetafieldDefinitionKey(e?.metafieldDefinitionKey);let r=e?.backupFilePath??e?.src??"";if(i)r=e?.src||"";else if(e?.backupFileKey){let t=getNewBackupFileKey(e.backupFileKey,e?.src??"");"THEME"!==e.storage&&e.storage?"FILE_CONTENT"===e.storage&&(r=`{{ "${replaceBackupFileKeyFileContent(t)}" | file_url }}`):r=`{{ "${t}" | asset_url }}`}if(t&&r?.includes("cdn.shopify"))switch(t){case"tablet":r=r?.replace(regexReplaceEndDot,"_1024x.");break;case"mobile":r=r?.replace(regexReplaceEndDot,"_768x.")}return r},getImageMetafieldDefinitionKey=e=>`{{${e} | file_url}}`,regexReplaceEndDot=/\.(?=[^.]*$)/,replaceBackupFileKeyFileContent=e=>e.replace(/\.jpeg|\.jfif/g,".jpg"),getNewBackupFileKey=(e,t)=>{let i=t?.match(/\/files\/([^\/]+\.(jpg|jpeg|gif|png|webp|svg))/)?.[1];return i&&i!=e?i:e};function resizeImage(e,t){let i=e.match(/\.webp/g)?.length,r=replaceRegexLastMatch({str:e,reg:/_(pico|icon|thumb|small|compact|medium|large|grande|original|1024x1024|2048x2048|master)+\./g,newString:"."});if(i)return r;let a=replaceRegexLastMatch({str:r,reg:/\.jpg|\.png|\.gif|\.jpeg/g,newString:t,isAdd:!0});return a}let replaceRegexLastMatch=e=>{let t=e.str,i=e.str.match(e.reg)?.length;if(i){let r,a=1;for(;null!==(r=e.reg.exec(e.str));){if(a===i){let i=e.reg.lastIndex,a=i-r[0].length;e.isAdd&&(e.newString="_"+e.newString+r),t=t.slice(0,a)+e.newString+t.slice(i,t.length)}a++}}return t},getItemWidth=(e,t)=>{let i=getCurrentDevice(),r=t?.[i]||"auto";if(!r||"auto"===r||r.includes("%"))return e;let a=Number(r.replace("px",""));return a>e?e:Number(r.replace("px",""))},getImageWidthFollowByQuality=e=>{let{itemWidthParam:t,imageWidthSetting:i,qualityType:r,qualityPercent:l}=e,g=getCurrentDevice(),o=getItemWidth(t,i),s=a(r,g,"finest"),c=a(l,g,100);switch(s){case"finest":default:return"auto";case"high":return Math.round(1.5*o)||1;case"medium":return Math.round(o)||1;case"custom":return Math.round(o*(Number(c)/100))||1}},getWidthOfFeatureImageSetting=e=>{let t={desktop:"100%",tablet:"100%",mobile:"100%"};return r.forEach(i=>{let r=a(e,i)?.width||"100%";t[i]=r}),t},getWidthOfImageListSetting=e=>{let t={desktop:"100%",tablet:"100%",mobile:"100%"};return r.forEach(i=>{let r=a(e,i)?.width||"100%";t[i]=r}),t},getWidthOfListImageInDom=e=>{let t=document.querySelectorAll(`.gem-slider-item-${e}.gp-gallery-image-item`),i=0;return t.forEach(e=>{e.offsetWidth>i&&(i=e.offsetWidth)}),i},getWidthOfFeatureImageInDom=e=>{let t=document.querySelectorAll(`.gem-slider-item-${e}.gp-ft-image-item`),i=0;return t.forEach(e=>{e.offsetWidth>i&&(i=e.offsetWidth)}),i},handleSetSrcForProductImageList=e=>{let{shapeByLayout:t,qualityType:i,qualityPercent:r,builderPropUID:a}=e,l=document.querySelectorAll(`.gem-slider-item-${a}.gp-gallery-image-item`),g=getWidthOfImageListSetting(t),o=getWidthOfListImageInDom(a);l.forEach(e=>{handleSetSrcForGalleryImage({item:e,settingWidth:g,width:o,qualityType:i,qualityPercent:r})})},handleSetSrcForFeatureProductImage=e=>{let{ftShape:t,qualityType:i,qualityPercent:r,builderPropUID:a}=e,l=document.querySelectorAll(`.gem-slider-item-${a}.gp-ft-image-item`),g=getWidthOfFeatureImageSetting(t),o=getWidthOfFeatureImageInDom(a);l.forEach(e=>{handleSetSrcForGalleryImage({item:e,settingWidth:g,width:o,qualityType:i,qualityPercent:r})})},handleSetSrcForGalleryImage=e=>{let{item:t,settingWidth:i,width:r,qualityType:a,qualityPercent:l}=e,g=getCurrentDevice(),o=t.querySelector("img");if(o){let e=getImageWidthFollowByQuality({itemWidthParam:r,imageWidthSetting:i,qualityType:a,qualityPercent:l}),t=o.getAttribute("base-src");if(!t)return;let s=getImageSrcByQuality(e,t),c=getImageSrcSet(t,s,g);o.setAttribute("srcset",c)}},getImageSrcByQuality=(e,t)=>"auto"===e?t:resizeImage(t,`${e}x`),getImageSrcSet=(e,t,i)=>`${"mobile"===i&&e!==t?t:resizeImage(e,"768x")} 767w, ${"tablet"===i&&e!==t?t:resizeImage(e,"1024x")} 1023w, ${"desktop"===i&&e!==t?t:resizeImage(e,"1920x")} 1440w`,getCurrentDevice=()=>window.innerWidth<768?"mobile":window.innerWidth>=768&&window.innerWidth<1025?"tablet":"desktop";export{FALLBACK_IMAGE,IMAGE_PLACEHOLDER,NEXT_IMAGE_CONFIG,composeAspectRatio,createBlurDataURL,getAdaptiveImageData,getAspectRatio,getAspectRatioNextImage,getCurrentDevice,getImageSrc,getImageWidthFollowByQuality,getNewBackupFileKey,getResponsiveObjectFit,getSrcSet,handleSetSrcForFeatureProductImage,handleSetSrcForProductImageList,isCannotResizeImage,overwriteDefaultRadius,regexReplaceEndDot,replaceBackupFileKeyFileContent,resizeImage,safeStringify,shimmer,toBase64};
12
+ </svg>`,toBase64=e=>"undefined"==typeof window?Buffer.from(e).toString("base64"):window.btoa(e),createBlurDataURL=(e,t)=>`data:image/svg+xml;base64,${toBase64(shimmer(e,t))}`,IMAGE_PLACEHOLDER="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=",FALLBACK_IMAGE="https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",NEXT_IMAGE_CONFIG={DEFAULT_SIZES:"100vw",DEFAULT_ALT:"Alt image",DEFAULT_SRC:"https://cdn.shopify.com/s/files/1/2005/9307/files/placeholder-1.png?v=1751355990",DEFAULT_WIDTH_PROPS:800,DEFAULT_HEIGHT_PROPS:533},getAdaptiveImageData=e=>{let{srcSet:t,fallbackImg:i}=e,r=e=>{let{isLiquid:r}=e??{},a=getImageSrc(t?.desktop,"desktop",!r)||i||FALLBACK_IMAGE,l=getImageSrc(t?.tablet,"tablet",!r)||getImageSrc(t?.desktop,"tablet",!r)||i||FALLBACK_IMAGE,g=getImageSrc(t?.mobile,"mobile",!r)||getImageSrc(t?.tablet,"mobile",!r)||getImageSrc(t?.desktop,"mobile",!r)||i||FALLBACK_IMAGE;return{srcTablet:l,srcMobile:g,srcDesktop:a}};return{getDeviceSource:r}},getSettingTranslatedImageAndSeo=({setting:t,uid:i,pageContext:r})=>{let a=t?.translate?"true":void 0;if(!t||!a)return{};let l=e(t);for(let e in l.srcSet){let t=l.srcSet[e];if(t&&t.src){let l=g({val:t.src,uid:i,settingId:`srcSet_${e}_src`,translate:a,pageContext:r});t.src=String(l)}}let s=g({val:l.alt,uid:i,settingId:"alt",translate:a,pageContext:r});l.alt=String(s);let o=g({val:l.title,uid:i,settingId:"title",translate:a,pageContext:r});return l.title=String(o),l},getSrcSet=(e,t,i)=>e?getSrcSetLiquid(e,t):getSrcSetLink(i),isCannotResizeImage=e=>e.includes("webp")||e.includes("jfif")||e.includes(".svg")||e.includes(".tiff"),getSrcSetLiquid=(e,t)=>{let i=replaceBackupFileKeyFileContent(e);return isCannotResizeImage(e)?"FILE_CONTENT"==t?`{{ '${i}' | file_url }} 768w, {{ '${i}' | file_url }} 1024w, {{ '${i}' | file_url }} 1440w`:`{{ '${e}' | asset_url }} 768w, {{ '${e}' | asset_url }} 1024w, {{ '${e}' | asset_url }} 1440w`:"FILE_CONTENT"==t?`{{ '${i}' | file_img_url: '768x' }} 768w, {{ '${i}' | file_img_url: '1024x' }} 1024w, {{ '${i}' | file_img_url: 'master' }} 1440w`:`{{ '${e}' | asset_img_url: '768x' }} 768w, {{ '${e}' | asset_img_url: '1024x' }} 1024w, {{ '${e}' | asset_img_url: 'master' }} 1440w`},getSrcSetLink=e=>e,getImageSrc=(e,t,i)=>{if(e?.metafieldDefinitionKey)return getImageMetafieldDefinitionKey(e?.metafieldDefinitionKey);let r=e?.backupFilePath??e?.src??"";if(i)r=e?.src||"";else if(e?.backupFileKey){let t=getNewBackupFileKey(e.backupFileKey,e?.src??"");"THEME"!==e.storage&&e.storage?"FILE_CONTENT"===e.storage&&(r=`{{ "${replaceBackupFileKeyFileContent(t)}" | file_url }}`):r=`{{ "${t}" | asset_url }}`}if(t&&r?.includes("cdn.shopify"))switch(t){case"tablet":r=r?.replace(regexReplaceEndDot,"_1024x.");break;case"mobile":r=r?.replace(regexReplaceEndDot,"_768x.")}return r},getImageMetafieldDefinitionKey=e=>`{{${e} | file_url}}`,regexReplaceEndDot=/\.(?=[^.]*$)/,replaceBackupFileKeyFileContent=e=>e.replace(/\.jpeg|\.jfif/g,".jpg"),getNewBackupFileKey=(e,t)=>{let i=t?.match(/\/files\/([^\/]+\.(jpg|jpeg|gif|png|webp|svg))/)?.[1];return i&&i!=e?i:e};function resizeImage(e,t){let i=e.match(/\.webp/g)?.length,r=replaceRegexLastMatch({str:e,reg:/_(pico|icon|thumb|small|compact|medium|large|grande|original|1024x1024|2048x2048|master)+\./g,newString:"."});if(i)return r;let a=replaceRegexLastMatch({str:r,reg:/\.jpg|\.png|\.gif|\.jpeg/g,newString:t,isAdd:!0});return a}let replaceRegexLastMatch=e=>{let t=e.str,i=e.str.match(e.reg)?.length;if(i){let r,a=1;for(;null!==(r=e.reg.exec(e.str));){if(a===i){let i=e.reg.lastIndex,a=i-r[0].length;e.isAdd&&(e.newString="_"+e.newString+r),t=t.slice(0,a)+e.newString+t.slice(i,t.length)}a++}}return t},getItemWidth=(e,t)=>{let i=getCurrentDevice(),r=t?.[i]||"auto";if(!r||"auto"===r||r.includes("%"))return e;let a=Number(r.replace("px",""));return a>e?e:Number(r.replace("px",""))},getImageWidthFollowByQuality=e=>{let{itemWidthParam:t,imageWidthSetting:i,qualityType:r,qualityPercent:a}=e,g=getCurrentDevice(),s=getItemWidth(t,i),o=l(r,g,"finest"),n=l(a,g,100);switch(o){case"finest":default:return"auto";case"high":return Math.round(1.5*s)||1;case"medium":return Math.round(s)||1;case"custom":return Math.round(s*(Number(n)/100))||1}},getWidthOfFeatureImageSetting=e=>{let t={desktop:"100%",tablet:"100%",mobile:"100%"};return a.forEach(i=>{let r=l(e,i)?.width||"100%";t[i]=r}),t},getWidthOfImageListSetting=e=>{let t={desktop:"100%",tablet:"100%",mobile:"100%"};return a.forEach(i=>{let r=l(e,i)?.width||"100%";t[i]=r}),t},getWidthOfListImageInDom=e=>{let t=document.querySelectorAll(`.gem-slider-item-${e}.gp-gallery-image-item`),i=0;return t.forEach(e=>{e.offsetWidth>i&&(i=e.offsetWidth)}),i},getWidthOfFeatureImageInDom=e=>{let t=document.querySelectorAll(`.gem-slider-item-${e}.gp-ft-image-item`),i=0;return t.forEach(e=>{e.offsetWidth>i&&(i=e.offsetWidth)}),i},handleSetSrcForProductImageList=e=>{let{shapeByLayout:t,qualityType:i,qualityPercent:r,builderPropUID:a}=e,l=document.querySelectorAll(`.gem-slider-item-${a}.gp-gallery-image-item`),g=getWidthOfImageListSetting(t),s=getWidthOfListImageInDom(a);l.forEach(e=>{handleSetSrcForGalleryImage({item:e,settingWidth:g,width:s,qualityType:i,qualityPercent:r})})},handleSetSrcForFeatureProductImage=e=>{let{ftShape:t,qualityType:i,qualityPercent:r,builderPropUID:a}=e,l=document.querySelectorAll(`.gem-slider-item-${a}.gp-ft-image-item`),g=getWidthOfFeatureImageSetting(t),s=getWidthOfFeatureImageInDom(a);l.forEach(e=>{handleSetSrcForGalleryImage({item:e,settingWidth:g,width:s,qualityType:i,qualityPercent:r})})},handleSetSrcForGalleryImage=e=>{let{item:t,settingWidth:i,width:r,qualityType:a,qualityPercent:l}=e,g=getCurrentDevice(),s=t.querySelector("img");if(s){let e=getImageWidthFollowByQuality({itemWidthParam:r,imageWidthSetting:i,qualityType:a,qualityPercent:l}),t=s.getAttribute("base-src");if(!t)return;let o=getImageSrcByQuality(e,t),n=getImageSrcSet(t,o,g);s.setAttribute("srcset",n)}},getImageSrcByQuality=(e,t)=>"auto"===e?t:resizeImage(t,`${e}x`),getImageSrcSet=(e,t,i)=>`${"mobile"===i&&e!==t?t:resizeImage(e,"768x")} 767w, ${"tablet"===i&&e!==t?t:resizeImage(e,"1024x")} 1023w, ${"desktop"===i&&e!==t?t:resizeImage(e,"1920x")} 1440w`,getCurrentDevice=()=>window.innerWidth<768?"mobile":window.innerWidth>=768&&window.innerWidth<1025?"tablet":"desktop";export{FALLBACK_IMAGE,IMAGE_PLACEHOLDER,NEXT_IMAGE_CONFIG,composeAspectRatio,createBlurDataURL,getAdaptiveImageData,getAspectRatio,getAspectRatioNextImage,getCurrentDevice,getImageSrc,getImageWidthFollowByQuality,getNewBackupFileKey,getResponsiveObjectFit,getSettingTranslatedImageAndSeo,getSrcSet,handleSetSrcForFeatureProductImage,handleSetSrcForProductImageList,isCannotResizeImage,overwriteDefaultRadius,regexReplaceEndDot,replaceBackupFileKeyFileContent,resizeImage,safeStringify,shimmer,toBase64};
@@ -1,16 +1,16 @@
1
- import{template as s}from"@gem-sdk/core";import{createStyle as e,createClass as t,createAttr as i,If as m}from"@gem-sdk/system";import{getLinkData as r}from"../../helpers.js";import o from"./AdaptiveImage.liquid.js";import a from"./NextImage.liquid.js";import{getWrapperStyles as l,getImageStyles as p,getContainerStyles as d}from"../common/styles.js";import{getWrapperClasses as c,getImageClasses as f,getContainerClasses as u}from"../common/classes.js";import{getContainerAttrs as $,getAdaptiveImageAttrs as g,getNextImageAttrs as n,getLinkWrapperAttrs as j,getImageLiquidAttrs as y}from"../common/attrs.js";let Image=({style:q,styles:v,setting:I,advanced:L,className:N,pageContext:h,builderAttrs:k,builderProps:x})=>{let{imageLink:W,isAdaptive:A,enableImageLink:C}=I??{},{enableLazyLoadImage:b}=h??{},{Wrapper:w,urlData:z}=r({defaultWrap:"div",setting:W,enableImageLink:C,isLiquid:!0}),B=e(l(v)),D=e(p(v,x)),E=e(d(q,v)),F=t(c()),G=t(f(N,v)),H=t(u(x?.uid,L?.cssClass,v?.shape)),J=i($(k,x?.uid)),K=j({urlData:z,imageLink:W,title:I?.title,isLiquid:!0}),M=g({styles:v,setting:I,isLiquid:!0}),O=n({styles:v,setting:I}),P=y({pageContext:h,enableLazyLoadImage:b}),Q=()=>m(A,o({...P,...M,style:D,className:G}),a({...P,...O,style:D,className:G})),R=()=>Q();return s`
1
+ import{template as s}from"@gem-sdk/core";import{createStyle as e,createClass as t,createAttr as i,If as m}from"@gem-sdk/system";import{getLinkData as o}from"../../helpers.js";import r from"./AdaptiveImage.liquid.js";import l from"./NextImage.liquid.js";import{getWrapperStyles as a,getImageStyles as p,getContainerStyles as d}from"../common/styles.js";import{getWrapperClasses as u,getImageClasses as c,getContainerClasses as f}from"../common/classes.js";import{getContainerAttrs as n,getAdaptiveImageAttrs as g,getNextImageAttrs as $,getLinkWrapperAttrs as j,getImageLiquidAttrs as y}from"../common/attrs.js";import{getSettingTranslatedImageAndSeo as q}from"../common/helpers.js";let Image=({style:v,styles:I,setting:h,advanced:L,className:N,pageContext:k,builderAttrs:x,builderProps:W})=>{let A=q({setting:h,uid:W?.uid,pageContext:k}),{imageLink:C,isAdaptive:b,enableImageLink:w}=A??{},{enableLazyLoadImage:z}=k??{},{Wrapper:B,urlData:D}=o({defaultWrap:"div",setting:C,enableImageLink:w,isLiquid:!0}),E=e(a(I)),F=e(p(I,W)),G=e(d(v,I)),H=t(u()),J=t(c(N,I)),K=t(f(W?.uid,L?.cssClass,I?.shape)),M=i(n(x,W?.uid)),O=j({urlData:D,imageLink:C,title:A?.title,isLiquid:!0}),P=g({styles:I,setting:A,isLiquid:!0}),Q=$({styles:I,setting:A}),R=y({pageContext:k,enableLazyLoadImage:z}),S=()=>m(b,r({...R,...P,style:F,className:J}),l({...R,...Q,style:F,className:J})),T=()=>S();return s`
2
2
  <div
3
3
  role="presentation"
4
- ${{...J}}
5
- style="${E}"
6
- class="${H}"
4
+ ${{...M}}
5
+ style="${G}"
6
+ class="${K}"
7
7
  >
8
- <${w}
9
- ${K}
10
- style="${B}"
11
- class="${F}"
8
+ <${B}
9
+ ${O}
10
+ style="${E}"
11
+ class="${H}"
12
12
  >
13
- ${R()}
14
- </${w}>
13
+ ${T()}
14
+ </${B}>
15
15
  </div>
16
16
  `};export{Image as default};
@@ -1 +1 @@
1
- let ImageSettings=[{id:"setting",controls:[{id:"imageStyle",label:"Style",type:"layout-selector",iconViewBox:"0 0 72 72",enableItemBackground:!0,popoverLabel:{en:"Style"},itemPerRow:2,itemSpacing:"large",options:[{label:"Rectangle",value:"rectangle",iconName:"gp-image-rectangle-style"},{label:"Circle",value:"circle",iconName:"gp-image-circle-style"}],default:"rectangle"},{id:"image-info",label:"Image",type:"group",controls:[{id:"image",type:"image-select",label:"Pick Image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_demo.jpg",width:2237,height:1678}},{id:"srcSet",type:"image-select",hide:!0,dynamicSource:!0,devices:{desktop:{default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_demo.jpg",width:2237,height:1678}}}},{id:"isAdaptive",type:"toggle",label:"Adaptive",default:!0,hideOnMode:{mobileOnly:!0}}]},{id:"enableImageLink",type:"toggle",default:!1,compoDefaultValue:!1},{id:"imageLink",type:"pick-link",label:"Pick Link",default:{type:"open-page",link:"",target:"_self"},hiddenOptions:{"stay-on-page":!0}},{id:"seo",type:"group",label:"SEO",controls:[{id:"alt",label:"Alt Text",type:"textarea",minHeight:56,autoHeight:!0,placeholder:"E.g: Classic white crewneck t-shirt with minimalist design",default:void 0},{id:"title",label:"Image title",info:"Show title when hover to image",type:"textarea",minHeight:56,autoHeight:!0,placeholder:"E.g: White t-shirt",default:void 0}]},{id:"optimize",type:"group",label:"Optimize",hiddenWithGemPages:!0,controls:[{id:"qualityType",type:"select",label:"Quality",devices:{desktop:{default:"high"}},options:[{title:"Finest",value:"finest"},{title:"High",value:"high"},{title:"Medium",value:"medium"},{title:"Custom",value:"custom",tooltip:"You can choose it for advanced page loading optimization."}]},{id:"qualityPercent",type:"input:slider",label:"",units:["%"],showDefaultUnit:!0,min:100,max:400,step:50,useOnlyUnitInit:!0,isNumber:!0,devices:{desktop:{default:100}}},{id:"priority",type:"toggle",label:"Preload",default:!1}]},{id:"isNotLazyload",type:"toggle",default:!1}]},{id:"style",controls:[{id:"shape",type:"size-setting",label:"",devices:{desktop:{default:{shape:"original",shapeLinked:!0,width:"1200px"}}},settingConfig:{width:{displayOptions:["full"]},height:{displayOptions:["full"],units:["px","%"]}},hiddenSettings:["padding","gap"]},{id:"objectFit",type:"option:illustration",enableTooltip:!0,label:"Image scale",options:[{label:"Fill image",value:"cover",type:"image",svgName:"gp-image-cover"},{label:"Fit image",value:"contain",type:"image",svgName:"gp-image-contain"}],devices:{desktop:{default:"cover"}}},{id:"align",label:"Align",type:"option:value",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left",iconName:"gp-align-left"},{label:"Center",value:"center",type:"align",tooltip:"Align center",iconName:"gp-align-center"},{label:"Right",value:"right",type:"align",tooltip:"Align right",iconName:"gp-align-right"}],devices:{desktop:{default:"center"}}},{id:"behavior-state",type:"behavior-state",label:"Behavior State",controls:[{id:"borderImg",type:"border",label:"Border",default:{normal:{borderType:"none",border:"none",width:"1px 1px 1px 1px",borderWidth:"1px",color:"#000000",isCustom:!1}},state:{hover:!0,normal:!0}},{id:"opacity",label:"Overlay Opacity",type:"input:slider",min:0,max:100,step:1,units:["%"],useOnlyUnitInit:!0,default:{normal:0},state:{normal:!0,hover:!0}},{id:"opacityColor",label:"Overlay Color",type:"colorpicker",default:{normal:"#242424"},state:{normal:!0,hover:!0}},{id:"hasBoxShadowImg",type:"toggle",label:"Enable Image Shadow",default:{normal:!1},state:{normal:!0,hover:!0}},{id:"boxShadowImg",type:"boxShadow",label:"Image Shadow",hideOnState:{normal:!0,hover:!0},default:{normal:{type:"shadow-1",distance:"4px",blur:"4px",spread:"0px",color:"rgba(18, 18, 18, 0.2)",angle:45}},state:{normal:!0,hover:!0}}]},{id:"wrapperBorder",type:"border",label:"Border",default:{borderType:"none",border:"none",width:"1px 1px 1px 1px",position:"all",borderWidth:"1px",color:"#000000",isCustom:!0}},{id:"borderRadius",type:"radius-preset",label:"Corner",default:{radiusType:"none"},compoDefaultValue:{bblr:"20px",btrr:"20px",bbrr:"20px",btlr:"20px",radiusType:"rounded"}},{id:"hasActiveShadow",type:"toggle",label:"Enable Button Shadow",default:!1},{id:"shadow",type:"shadow-v2",label:"Button Shadow",default:{type:"none",distance:"10px",blur:"12px",spread:"10px",color:"rgba(18, 18, 18, 0.77)",angle:40}}]}];export{ImageSettings};
1
+ let ImageSettings=[{id:"setting",controls:[{id:"translate",type:"input",default:[{id:"srcSet",fields:["src"]},{id:"alt"},{id:"title"}]},{id:"imageStyle",label:"Style",type:"layout-selector",iconViewBox:"0 0 72 72",enableItemBackground:!0,popoverLabel:{en:"Style"},itemPerRow:2,itemSpacing:"large",options:[{label:"Rectangle",value:"rectangle",iconName:"gp-image-rectangle-style"},{label:"Circle",value:"circle",iconName:"gp-image-circle-style"}],default:"rectangle"},{id:"image-info",label:"Image",type:"group",controls:[{id:"image",type:"image-select",label:"Pick Image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_demo.jpg",width:2237,height:1678}},{id:"srcSet",type:"image-select",hide:!0,dynamicSource:!0,devices:{desktop:{default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_demo.jpg",width:2237,height:1678}}}},{id:"isAdaptive",type:"toggle",label:"Adaptive",default:!0,hideOnMode:{mobileOnly:!0}}]},{id:"enableImageLink",type:"toggle",default:!1,compoDefaultValue:!1},{id:"imageLink",type:"pick-link",label:"Pick Link",default:{type:"open-page",link:"",target:"_self"},hiddenOptions:{"stay-on-page":!0}},{id:"seo",type:"group",label:"SEO",controls:[{id:"alt",label:"Alt Text",type:"textarea",minHeight:56,autoHeight:!0,placeholder:"E.g: Classic white crewneck t-shirt with minimalist design",default:void 0},{id:"title",label:"Image title",info:"Show title when hover to image",type:"textarea",minHeight:56,autoHeight:!0,placeholder:"E.g: White t-shirt",default:void 0}]},{id:"optimize",type:"group",label:"Optimize",hiddenWithGemPages:!0,controls:[{id:"qualityType",type:"select",label:"Quality",devices:{desktop:{default:"high"}},options:[{title:"Finest",value:"finest"},{title:"High",value:"high"},{title:"Medium",value:"medium"},{title:"Custom",value:"custom",tooltip:"You can choose it for advanced page loading optimization."}]},{id:"qualityPercent",type:"input:slider",label:"",units:["%"],showDefaultUnit:!0,min:100,max:400,step:50,useOnlyUnitInit:!0,isNumber:!0,devices:{desktop:{default:100}}},{id:"priority",type:"toggle",label:"Preload",default:!1}]},{id:"isNotLazyload",type:"toggle",default:!1}]},{id:"style",controls:[{id:"shape",type:"size-setting",label:"",devices:{desktop:{default:{shape:"original",shapeLinked:!0,width:"1200px"}}},settingConfig:{width:{displayOptions:["full"]},height:{displayOptions:["full"],units:["px","%"]}},hiddenSettings:["padding","gap"]},{id:"objectFit",type:"option:illustration",enableTooltip:!0,label:"Image scale",options:[{label:"Fill image",value:"cover",type:"image",svgName:"gp-image-cover"},{label:"Fit image",value:"contain",type:"image",svgName:"gp-image-contain"}],devices:{desktop:{default:"cover"}}},{id:"align",label:"Align",type:"option:value",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left",iconName:"gp-align-left"},{label:"Center",value:"center",type:"align",tooltip:"Align center",iconName:"gp-align-center"},{label:"Right",value:"right",type:"align",tooltip:"Align right",iconName:"gp-align-right"}],devices:{desktop:{default:"center"}}},{id:"behavior-state",type:"behavior-state",label:"Behavior State",controls:[{id:"borderImg",type:"border",label:"Border",default:{normal:{borderType:"none",border:"none",width:"1px 1px 1px 1px",borderWidth:"1px",color:"#000000",isCustom:!1}},state:{hover:!0,normal:!0}},{id:"opacity",label:"Overlay Opacity",type:"input:slider",min:0,max:100,step:1,units:["%"],useOnlyUnitInit:!0,default:{normal:0},state:{normal:!0,hover:!0}},{id:"opacityColor",label:"Overlay Color",type:"colorpicker",default:{normal:"#242424"},state:{normal:!0,hover:!0}},{id:"hasBoxShadowImg",type:"toggle",label:"Enable Image Shadow",default:{normal:!1},state:{normal:!0,hover:!0}},{id:"boxShadowImg",type:"boxShadow",label:"Image Shadow",hideOnState:{normal:!0,hover:!0},default:{normal:{type:"shadow-1",distance:"4px",blur:"4px",spread:"0px",color:"rgba(18, 18, 18, 0.2)",angle:45}},state:{normal:!0,hover:!0}}]},{id:"wrapperBorder",type:"border",label:"Border",default:{borderType:"none",border:"none",width:"1px 1px 1px 1px",position:"all",borderWidth:"1px",color:"#000000",isCustom:!0}},{id:"borderRadius",type:"radius-preset",label:"Corner",default:{radiusType:"none"},compoDefaultValue:{bblr:"20px",btrr:"20px",bbrr:"20px",btlr:"20px",radiusType:"rounded"}},{id:"hasActiveShadow",type:"toggle",label:"Enable Button Shadow",default:!1},{id:"shadow",type:"shadow-v2",label:"Button Shadow",default:{type:"none",distance:"10px",blur:"12px",spread:"10px",color:"rgba(18, 18, 18, 0.77)",angle:40}}]}];export{ImageSettings};
@@ -1,4 +1,4 @@
1
1
  let SettingUIV1=[{type:"group",label:{en:"Image"},options:{labelSpacing:"small"},controls:[{type:"control",condition:"isAdaptive === false",label:{en:"Choose Image"},layout:"vertical",setting:{id:"image"},options:{tooltip:{icon:"info-line-16",content:`For the best display, set these image sizes as recommended: <br />
2
2
  &bull; Desktop/Laptop: 1920px <br />
3
3
  &bull; Mobile: 375px <br />
4
- &bull; Tablet: 1024px`,iconClass:"text-[#757575] hover:text-[#F9F9F9]",containerClass:"w-[232px] whitespace-normal lead-5",enableTeleport:!0}}},{type:"control",condition:"isAdaptive === true",layout:"vertical",label:{en:"Choose Image"},setting:{id:"srcSet"}},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"priority"}}]},{type:"control",label:{en:"Insert link"},setting:{id:"imageLink"},layout:"vertical"},{type:"group",label:{en:"Size"},controls:[{type:"control",setting:{id:"shape"},layout:"vertical"},{type:"control",condition:"shape.shape !== 'original'",label:{en:"Image scale"},setting:{id:"objectFit"}}]},{type:"group",label:{en:"Shape"},controls:[{type:"control",options:{labelPosition:"start"},label:{en:"Border"},setting:{id:"wrapperBorder"}},{type:"control",label:{en:"Corner"},setting:{id:"borderRadius"}},{type:"control",label:{en:"Shadow"},setting:{id:"hasActiveShadow"}},{type:"control",setting:{id:"shadow"},layout:"vertical",condition:"hasActiveShadow === true"}]},{type:"control",label:{en:"Align"},options:{label:"large"},setting:{id:"align"}},{type:"group",label:{en:"SEO"},controls:[{type:"control",label:{en:"Alt text"},setting:{id:"alt"},layout:"vertical"},{type:"control",label:{en:"Image title"},setting:{id:"title"},layout:"vertical"}]}];export{SettingUIV1};
4
+ &bull; Tablet: 1024px`,iconClass:"text-[#757575] hover:text-[#F9F9F9]",containerClass:"w-[232px] whitespace-normal lead-5",enableTeleport:!0}}},{type:"control",condition:"isAdaptive === true",layout:"vertical",label:{en:"Choose Image"},setting:{id:"srcSet"}},{type:"control",label:{en:"Preload"},options:{info:"near"},setting:{id:"priority"}}]},{type:"control",label:{en:"Insert link"},setting:{id:"imageLink"},layout:"vertical"},{type:"group",label:{en:"Size"},controls:[{type:"control",setting:{id:"shape"},layout:"vertical"},{type:"control",condition:"shape?.shape !== 'original'",label:{en:"Image scale"},setting:{id:"objectFit"}}]},{type:"group",label:{en:"Shape"},controls:[{type:"control",options:{labelPosition:"start"},label:{en:"Border"},setting:{id:"wrapperBorder"}},{type:"control",label:{en:"Corner"},setting:{id:"borderRadius"}},{type:"control",label:{en:"Shadow"},setting:{id:"hasActiveShadow"}},{type:"control",setting:{id:"shadow"},layout:"vertical",condition:"hasActiveShadow === true"}]},{type:"control",label:{en:"Align"},options:{label:"large"},setting:{id:"align"}},{type:"group",label:{en:"SEO"},controls:[{type:"control",label:{en:"Alt text"},setting:{id:"alt"},layout:"vertical"},{type:"control",label:{en:"Image title"},setting:{id:"title"},layout:"vertical"}]}];export{SettingUIV1};
@@ -1 +1 @@
1
- let SettingUIV2=[{label:{en:"Style"},controls:[{setting:{id:"imageStyle"},layout:"vertical",controlChangeTrigger:{settings:[{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"shape",newValue:{shape:"square",shapeValue:"1/1",shapeLinked:!0,width:"80px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"borderRadius",newValue:{bblr:"9999px",btrr:"9999px",bbrr:"9999px",btlr:"9999px",radiusType:"circle"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"wrapperBorder",newValue:{border:"none",color:"transparent",borderWidth:"0px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"wrapperBorder",newValue:{border:"none",color:"transparent",borderWidth:"0px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"shadow",newValue:{enable:!1},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"shadow",newValue:{enable:!1},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"shape",newValue:{shape:"original",shapeValue:"",width:"100%"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"borderRadius",newValue:{bblr:"0px",btrr:"0px",bbrr:"0px",btlr:"0px",radiusType:"none"},groupType:"style",controlType:"style"}}],options:{noRecordHistory:!0}}}]},{label:{en:"Source"},controls:[{conditionDisplay:"isAdaptive === false",setting:{id:"image"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"priority"},{field:"altText",settingId:"alt"},{field:"imageTitle",settingId:"title"}]},controlChangeTrigger:{settings:[{action:{controlId:"priority",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"alt",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"title",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{conditionDisplay:"isAdaptive === true",setting:{id:"srcSet"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"priority"},{field:"altText",settingId:"alt"},{field:"imageTitle",settingId:"title"}]},controlChangeTrigger:{settings:[{action:{controlId:"priority",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"alt",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"title",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Scale"},setting:{id:"objectFit"},conditionDisplay:'shape.shape !== "original"'}]},{label:{en:"Size"},controls:[{setting:{id:"shape"},layout:"vertical"}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},controlConfig:{id:"border",type:"border-v2",linkWithSetting:{name:"wrapperBorder"}}},{label:{en:"Corner"},controlConfig:{id:"corner",type:"corner-v2",linkWithSetting:{name:"borderRadius"}}},{label:{en:"Shadow"},setting:{id:"shadow"},options:{updateFields:[{field:"enable",settingId:"hasActiveShadow"}]},controlChangeTrigger:{settings:[{condition:"shadow.enable === true",source:["shadow","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"advanced",controlType:"advanced",newValue:!0}},{condition:"shadow.enable === false",source:["shadow","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"advanced",controlType:"advanced",newValue:!1}}],options:{noRecordHistory:!0}}}]},{controls:[{label:{en:"Link"},setting:{id:"enableImageLink"},options:{labelVariant:"primary",toggleStyle:"switch"}},{layout:"vertical",controlConfig:{id:"linkedToPreSalesPageBanner",type:"banner",message:"Pre-sales page elements with link should redirect to the Sales page."},conditionDisplay:'pageType === "GP_PRE_SALE_PAGE" && enableImageLink == true'},{setting:{id:"imageLink"},conditionDisplay:"enableImageLink === true",layout:"vertical"}]},{label:{en:"SEO"},controls:[{type:"combo",label:{en:"Alt text"},iconName:"polaris-text-block",getValueFromSettingID:"alt",compoDefaultValue:"Describes the appearance of the image",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"alt"},layout:"vertical"}]},{type:"combo",label:{en:"Image title"},iconName:"polaris-text-block",getValueFromSettingID:"title",isHideClear:!0,compoDefaultValue:"Title",controls:[{label:{en:"Content"},setting:{id:"title"},layout:"vertical"}]}]},{label:{en:"Optimize LCP"},controls:[{label:{en:"Preload"},setting:{id:"priority"}},{label:{en:"Quality"},setting:{id:"qualityType"},options:{disableMessage:"This setting only works with images uploaded to Shopify"},conditionEnable:"(activeScreenId === \"desktop\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com')) || (activeScreenId === \"tablet\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com')) || (activeScreenId === \"mobile\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com'))",conditionDisplay:"priority === false"},{layout:"horizontal",label:{en:"Quality"},conditionDisplay:'qualityType == "custom" && priority === false && ((activeScreenId === "desktop" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")) || (activeScreenId === "tablet" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")) || (activeScreenId === "mobile" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")))',setting:{id:"qualityPercent"}}]},{controls:[{label:{en:"Align"},setting:{id:"align"},conditionEnable:'!(shape.width === "default" || (parseInt(shape.width) >= 100 && shape.width?.includes("%")))',options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Horizontal alignment is disabled when the width is set to 100% or greater"}}]}];export{SettingUIV2};
1
+ let SettingUIV2=[{label:{en:"Style"},controls:[{setting:{id:"imageStyle"},layout:"vertical",controlChangeTrigger:{settings:[{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"shape",newValue:{shape:"square",shapeValue:"1/1",shapeLinked:!0,width:"80px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"borderRadius",newValue:{bblr:"9999px",btrr:"9999px",bbrr:"9999px",btlr:"9999px",radiusType:"circle"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"wrapperBorder",newValue:{border:"none",color:"transparent",borderWidth:"0px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"wrapperBorder",newValue:{border:"none",color:"transparent",borderWidth:"0px"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="circle"',source:["imageStyle"],action:{controlId:"shadow",newValue:{enable:!1},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"shadow",newValue:{enable:!1},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"shape",newValue:{shape:"original",shapeValue:"",width:"100%"},groupType:"style",controlType:"style"}},{condition:'imageStyle==="rectangle"',source:["imageStyle"],action:{controlId:"borderRadius",newValue:{bblr:"0px",btrr:"0px",bbrr:"0px",btlr:"0px",radiusType:"none"},groupType:"style",controlType:"style"}}],options:{noRecordHistory:!0}}}]},{label:{en:"Source"},controls:[{conditionDisplay:"isAdaptive === false",setting:{id:"image"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"priority"},{field:"altText",settingId:"alt"},{field:"imageTitle",settingId:"title"}]},controlChangeTrigger:{settings:[{action:{controlId:"priority",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"alt",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"title",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{conditionDisplay:"isAdaptive === true",setting:{id:"srcSet"},layout:"vertical",options:{updateFields:[{field:"preload",settingId:"priority"},{field:"altText",settingId:"alt"},{field:"imageTitle",settingId:"title"}]},controlChangeTrigger:{settings:[{action:{controlId:"priority",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"alt",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"title",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Scale"},setting:{id:"objectFit"},conditionDisplay:'shape.shape !== "original"'}]},{label:{en:"Size"},controls:[{setting:{id:"shape"},layout:"vertical"}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},controlConfig:{id:"border",type:"border-v2",linkWithSetting:{name:"wrapperBorder"}}},{label:{en:"Corner"},controlConfig:{id:"corner",type:"corner-v2",linkWithSetting:{name:"borderRadius"}}},{label:{en:"Shadow"},setting:{id:"shadow"},options:{updateFields:[{field:"enable",settingId:"hasActiveShadow"}]},controlChangeTrigger:{settings:[{condition:"shadow?.enable === true",source:["shadow","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"advanced",controlType:"advanced",newValue:!0}},{condition:"shadow?.enable === false",source:["shadow","hasActiveShadow"],action:{controlId:"hasActiveShadow",groupType:"advanced",controlType:"advanced",newValue:!1}}],options:{noRecordHistory:!0}}}]},{controls:[{label:{en:"Link"},setting:{id:"enableImageLink"},options:{labelVariant:"primary",toggleStyle:"switch"}},{layout:"vertical",controlConfig:{id:"linkedToPreSalesPageBanner",type:"banner",message:"Pre-sales page elements with link should redirect to the Sales page."},conditionDisplay:'pageType === "GP_PRE_SALE_PAGE" && enableImageLink == true'},{setting:{id:"imageLink"},conditionDisplay:"enableImageLink === true",layout:"vertical"}]},{label:{en:"SEO"},controls:[{type:"combo",label:{en:"Alt text"},iconName:"polaris-text-block",getValueFromSettingID:"alt",compoDefaultValue:"Describes the appearance of the image",isHideClear:!0,controls:[{label:{en:"Content"},setting:{id:"alt"},layout:"vertical"}]},{type:"combo",label:{en:"Image title"},iconName:"polaris-text-block",getValueFromSettingID:"title",isHideClear:!0,compoDefaultValue:"Title",controls:[{label:{en:"Content"},setting:{id:"title"},layout:"vertical"}]}]},{label:{en:"Optimize LCP"},controls:[{label:{en:"Preload"},setting:{id:"priority"}},{label:{en:"Quality"},setting:{id:"qualityType"},options:{disableMessage:"This setting only works with images uploaded to Shopify"},conditionEnable:"(activeScreenId === \"desktop\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com')) || (activeScreenId === \"tablet\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com')) || (activeScreenId === \"mobile\" && srcSet?.src && srcSet.src.includes('cdn.shopify.com'))",conditionDisplay:"priority === false"},{layout:"horizontal",label:{en:"Quality"},conditionDisplay:'qualityType == "custom" && priority === false && ((activeScreenId === "desktop" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")) || (activeScreenId === "tablet" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")) || (activeScreenId === "mobile" && srcSet?.src && srcSet.src.includes("cdn.shopify.com")))',setting:{id:"qualityPercent"}}]},{controls:[{label:{en:"Align"},setting:{id:"align"},conditionEnable:'!(shape.width === "default" || (parseInt(shape.width) >= 100 && shape.width?.includes("%")))',options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Horizontal alignment is disabled when the width is set to 100% or greater"}}]}];export{SettingUIV2};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as t}from"@gem-sdk/core";import{getImageSrc as e,composeAspectRatio as o}from"../../image/common/helpers.js";let getAspectRatioData=({styles:t,leftImage:e,rightImage:o})=>{let i=(e?.width??0)/(e?.height??1),a=(o?.width??0)/(o?.height??1),l=i<=a?`${e?.width??0}/${e?.height??1}`:`${o?.width??0}/${o?.height??1}`,s=i<=a?e:o,r=composeResponsiveAspectRatio({aspect:t?.aspectRatio,auto:s,custom:t?.customAspectRadio,defaultRatio:l});return{defaultRatio:l,responsiveAspectRatio:r}},composeResponsiveAspectRatio=({aspect:t,auto:e,custom:i,defaultRatio:a})=>({desktop:o({device:"desktop",aspect:t,auto:e,custom:i})??a,tablet:o({device:"tablet",aspect:t,auto:e,custom:i}),mobile:o({device:"mobile",aspect:t,auto:e,custom:i})}),composeLabelPosition=({input:e,isHorizontal:o})=>{let{device:i,positionHoz:a,positionVer:l}=e,s=o?t(a,i,"hoz-center"):t(l,i,"ver-center"),r={topLeft:"50%",bottomRight:"auto"};return({"hoz-center":{topLeft:"50%",bottomRight:"auto"},top:{topLeft:"8px",bottomRight:"auto"},bottom:{topLeft:"auto",bottomRight:"8px"},"ver-center":{topLeft:"50%",bottomRight:"auto"},left:{topLeft:"8px",bottomRight:"auto"},right:{topLeft:"auto",bottomRight:"8px"}})[s]??r},getLabelPosition=({position:t,labelPositionHoz:e,labelPositionVer:o,isHorizontal:i})=>({desktop:composeLabelPosition({input:{device:"desktop",positionHoz:e,positionVer:o},isHorizontal:i})?.[t??"topLeft"],tablet:composeLabelPosition({input:{device:"tablet",positionHoz:e,positionVer:o},isHorizontal:i})?.[t??"topLeft"],mobile:composeLabelPosition({input:{device:"mobile",positionHoz:e,positionVer:o},isHorizontal:i})?.[t??"topLeft"]}),generateTranslateByDevices=({isHorizontal:t,labelPositionHoz:e,labelPositionVer:o})=>{let i=t?e:o,a={desktop:i?.desktop??"hoz-center",tablet:i?.tablet??i?.desktop??"hoz-center",mobile:i?.mobile??i?.tablet??i?.desktop??"hoz-center"},l={desktop:"translateX(0) translateY(0)",tablet:"translateX(0) translateY(0)",mobile:"translateX(0) translateY(0)"};for(let e in a){let o=a?.[e];o.includes("center")?l[e]=t?"translateX(0) translateY(-50%)":"translateX(-50%) translateY(0)":l[e]="translateX(0) translateY(0)"}return l},getSliderPositionPercentage=t=>{let e="string"==typeof t?parseInt(t??0):t;return(e??50)/100},FLEX_ALIGN={left:"start",center:"center",right:"end",justify:"start"},getData=t=>{let{handle:o=null,hover:i=!1,handleSize:a=40,leftImageAlt:l="",leftImageTitle:s="",leftImageCss:r={},leftImageLabel:n=null,rightImageAlt:p="",rightImageTitle:g="",rightImageCss:c={},rightImageLabel:u=null,sliderLineWidth:m=2,sliderLineColor:b="#ffffff",sliderPositionPercentage:h=.5,vertical:d=!1,componentUid:f="",styles:L={},leftImage:y,rightImage:R,enableLabel:S=!1,qualityType:P,qualityPercent:v}=t,C=!d,k=S&&!!n,x=S&&!!u,A=(y?.width??0)<(R?.width??0)?{...y}:{...R},I=t=>{let{isLiquid:o}=t??{};return o?e(y):y?.src??""},$=t=>{let{isLiquid:o}=t??{};return o?e(R):R?.src??""},{responsiveAspectRatio:z,defaultRatio:X}=getAspectRatioData({leftImage:y,rightImage:R,styles:L});return{styles:L,handle:o,hover:i,handleSize:a,leftImageAlt:l,leftImageTitle:s,leftImageCss:r,leftImageLabel:n,rightImageAlt:p,rightImageTitle:g,rightImageCss:c,rightImageLabel:u,sliderLineWidth:m,sliderLineColor:b,sliderPositionPercentage:h,vertical:d,componentUid:f,tempImage:A,aspectRatio:z,defaultRatio:X,isHorizontal:C,hasLeftLabel:k,hasRightLabel:x,qualityType:P,qualityPercent:v,getLeftImageSrc:I,getRightImageSrc:$}},getImageClipStyle=t=>{let{isHorizontal:e,containerWidth:o,containerHeight:i,sliderPosition:a,type:l}=t,s=e?o*a:i*a;return"left"===l?{clip:e?`rect(auto, ${s}px, auto, auto)`:`rect(auto, auto, ${s}px, auto)`}:{clip:e?`rect(auto, auto, auto, ${s}px)`:`rect(${s}px, auto, auto, auto)`}},getSliderPositionStyle=t=>{let{isHorizontal:e,containerWidth:o,containerHeight:i,sliderPosition:a,handleSize:l}=t,s=e?o*a:i*a,r=l/2;return{[e?"top":"left"]:0,[e?"left":"top"]:`${s-r}px`}},getLabelContainerStyles=t=>({...getImageClipStyle(t)}),getReactStyles=t=>({sliderPosition:getSliderPositionStyle(t),leftImageClip:getImageClipStyle({...t,type:"left"}),rightImageClip:getImageClipStyle({...t,type:"right"}),leftLabelContainer:getLabelContainerStyles({...t,type:"left"}),rightLabelContainer:getLabelContainerStyles({...t,type:"right"})});export{FLEX_ALIGN,composeLabelPosition,composeResponsiveAspectRatio,generateTranslateByDevices,getAspectRatioData,getData,getImageClipStyle,getLabelContainerStyles,getLabelPosition,getReactStyles,getSliderPositionPercentage,getSliderPositionStyle};
1
+ import{cloneDeep as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";import{getImageSrc as o,composeAspectRatio as a}from"../../image/common/helpers.js";import{getDynamicSourceLocales as i}from"../../helpers.js";let getAspectRatioData=({styles:t,leftImage:e,rightImage:o})=>{let a=(e?.width??0)/(e?.height??1),i=(o?.width??0)/(o?.height??1),l=a<=i?`${e?.width??0}/${e?.height??1}`:`${o?.width??0}/${o?.height??1}`,r=a<=i?e:o,s=composeResponsiveAspectRatio({aspect:t?.aspectRatio,auto:r,custom:t?.customAspectRadio,defaultRatio:l});return{defaultRatio:l,responsiveAspectRatio:s}},composeResponsiveAspectRatio=({aspect:t,auto:e,custom:o,defaultRatio:i})=>({desktop:a({device:"desktop",aspect:t,auto:e,custom:o})??i,tablet:a({device:"tablet",aspect:t,auto:e,custom:o}),mobile:a({device:"mobile",aspect:t,auto:e,custom:o})}),composeLabelPosition=({input:t,isHorizontal:o})=>{let{device:a,positionHoz:i,positionVer:l}=t,r=o?e(i,a,"hoz-center"):e(l,a,"ver-center"),s={topLeft:"50%",bottomRight:"auto"};return({"hoz-center":{topLeft:"50%",bottomRight:"auto"},top:{topLeft:"8px",bottomRight:"auto"},bottom:{topLeft:"auto",bottomRight:"8px"},"ver-center":{topLeft:"50%",bottomRight:"auto"},left:{topLeft:"8px",bottomRight:"auto"},right:{topLeft:"auto",bottomRight:"8px"}})[r]??s},getLabelPosition=({position:t,labelPositionHoz:e,labelPositionVer:o,isHorizontal:a})=>({desktop:composeLabelPosition({input:{device:"desktop",positionHoz:e,positionVer:o},isHorizontal:a})?.[t??"topLeft"],tablet:composeLabelPosition({input:{device:"tablet",positionHoz:e,positionVer:o},isHorizontal:a})?.[t??"topLeft"],mobile:composeLabelPosition({input:{device:"mobile",positionHoz:e,positionVer:o},isHorizontal:a})?.[t??"topLeft"]}),generateTranslateByDevices=({isHorizontal:t,labelPositionHoz:e,labelPositionVer:o})=>{let a=t?e:o,i={desktop:a?.desktop??"hoz-center",tablet:a?.tablet??a?.desktop??"hoz-center",mobile:a?.mobile??a?.tablet??a?.desktop??"hoz-center"},l={desktop:"translateX(0) translateY(0)",tablet:"translateX(0) translateY(0)",mobile:"translateX(0) translateY(0)"};for(let e in i){let o=i?.[e];o.includes("center")?l[e]=t?"translateX(0) translateY(-50%)":"translateX(-50%) translateY(0)":l[e]="translateX(0) translateY(0)"}return l},getSliderPositionPercentage=t=>{let e="string"==typeof t?parseInt(t??0):t;return(e??50)/100},FLEX_ALIGN={left:"start",center:"center",right:"end",justify:"start"},getData=t=>{let{handle:e=null,hover:a=!1,handleSize:i=40,leftImageAlt:l="",leftImageTitle:r="",leftImageCss:s={},leftImageLabel:n=null,rightImageAlt:p="",rightImageTitle:g="",rightImageCss:c={},rightImageLabel:m=null,sliderLineWidth:u=2,sliderLineColor:d="#ffffff",sliderPositionPercentage:f=.5,vertical:b=!1,componentUid:h="",styles:L={},leftImage:S,rightImage:R,enableLabel:y=!1,qualityType:v,qualityPercent:C}=t,I=!b,P=y&&!!n,$=y&&!!m,A=(S?.width??0)<(R?.width??0)?{...S}:{...R},k=t=>{let{isLiquid:e}=t??{};return e?o(S):S?.src??""},x=t=>{let{isLiquid:e}=t??{};return e?o(R):R?.src??""},{responsiveAspectRatio:z,defaultRatio:X}=getAspectRatioData({leftImage:S,rightImage:R,styles:L});return{styles:L,handle:e,hover:a,handleSize:i,leftImageAlt:l,leftImageTitle:r,leftImageCss:s,leftImageLabel:n,rightImageAlt:p,rightImageTitle:g,rightImageCss:c,rightImageLabel:m,sliderLineWidth:u,sliderLineColor:d,sliderPositionPercentage:f,vertical:b,componentUid:h,tempImage:A,aspectRatio:z,defaultRatio:X,isHorizontal:I,hasLeftLabel:P,hasRightLabel:$,qualityType:v,qualityPercent:C,getLeftImageSrc:k,getRightImageSrc:x}},getImageClipStyle=t=>{let{isHorizontal:e,containerWidth:o,containerHeight:a,sliderPosition:i,type:l}=t,r=e?o*i:a*i;return"left"===l?{clip:e?`rect(auto, ${r}px, auto, auto)`:`rect(auto, auto, ${r}px, auto)`}:{clip:e?`rect(auto, auto, auto, ${r}px)`:`rect(${r}px, auto, auto, auto)`}},getSliderPositionStyle=t=>{let{isHorizontal:e,containerWidth:o,containerHeight:a,sliderPosition:i,handleSize:l}=t,r=e?o*i:a*i,s=l/2;return{[e?"top":"left"]:0,[e?"left":"top"]:`${r-s}px`}},getLabelContainerStyles=t=>({...getImageClipStyle(t)}),getReactStyles=t=>({sliderPosition:getSliderPositionStyle(t),leftImageClip:getImageClipStyle({...t,type:"left"}),rightImageClip:getImageClipStyle({...t,type:"right"}),leftLabelContainer:getLabelContainerStyles({...t,type:"left"}),rightLabelContainer:getLabelContainerStyles({...t,type:"right"})}),getSettingTranslatedImageComparisonAndSeo=({setting:e,uid:o,pageContext:a})=>{let l=e?.translate?"true":void 0;if(!e||!l)return{};let r=t(e);for(let t of["Left","Right"]){let e=`image${t}`,s=r[e];if(s?.src){let t=i({val:s.src,uid:o,settingId:`${e}_src`,translate:l,pageContext:a});r[e].src=String(t)}let n=`alt${t}`,p=i({val:r[n],uid:o,settingId:n,translate:l,pageContext:a});r[n]=String(p);let g=`title${t}`,c=i({val:r[g],uid:o,settingId:g,translate:l,pageContext:a});r[g]=String(c)}return r};export{FLEX_ALIGN,composeLabelPosition,composeResponsiveAspectRatio,generateTranslateByDevices,getAspectRatioData,getData,getImageClipStyle,getLabelContainerStyles,getLabelPosition,getReactStyles,getSettingTranslatedImageComparisonAndSeo,getSliderPositionPercentage,getSliderPositionStyle};
@@ -1,5 +1,5 @@
1
- import{template as e}from"@gem-sdk/core";import{createClass as t,createStyle as r}from"@gem-sdk/system";import{getImageComparisonWrapperClasses as m,getImageComparisonWrapperStyles as a}from"../common/classes.js";import{getSliderPositionPercentage as i}from"../common/helpers.js";import l from"./CompareImage.liquid.js";let ImageComparison=({setting:o,styles:s,builderProps:g,advanced:d,...f})=>{let{imageLeft:n,altLeft:p,titleLeft:I,imageRight:c,altRight:u,titleRight:h,direction:b,defaultPercentage:v,leftImageLabel:y,rightImageLabel:L,sliderLineWidth:j,hoverToSlide:q,enableLabel:A,preload:C,translate:P,qualityType:T,qualityPercent:$,enableSEOLeft:k,enableSEORight:D}=o??{},x=t(m()),B=r(a());return e`
2
- <div class="${x}" style="${B}">
3
- ${l({...f,styles:s,preload:C,advanced:d,leftImage:n,leftImageAlt:k?p:"",leftImageTitle:k?I:"",rightImage:c,rightImageAlt:D?u:"",rightImageTitle:D?h:"",leftImageLabel:y??"Before",rightImageLabel:L??"After",sliderLineWidth:j,sliderPositionPercentage:i(v),vertical:"vertical"===b,hover:q,enableLabel:A,qualityType:T,qualityPercent:$,componentUid:g?.uid??"",builderData:g?.builderData,translate:P})}
1
+ import{template as e}from"@gem-sdk/core";import{createClass as t,createStyle as i}from"@gem-sdk/system";import{getImageComparisonWrapperClasses as r,getImageComparisonWrapperStyles as a}from"../common/classes.js";import{getSettingTranslatedImageComparisonAndSeo as m,getSliderPositionPercentage as l}from"../common/helpers.js";import o from"./CompareImage.liquid.js";let ImageComparison=({setting:s,styles:g,builderProps:d,advanced:n,pageContext:p,...f})=>{let I=m({setting:s,uid:d?.uid,pageContext:p}),{imageLeft:c,altLeft:u,titleLeft:h,imageRight:b,altRight:v,titleRight:y,direction:C,defaultPercentage:L,leftImageLabel:j,rightImageLabel:q,sliderLineWidth:A,hoverToSlide:P,enableLabel:T,preload:$,translate:k,qualityType:x,qualityPercent:D,enableSEOLeft:B,enableSEORight:U}=I??{},W=t(r()),w=i(a());return e`
2
+ <div class="${W}" style="${w}">
3
+ ${o({...f,styles:g,preload:$,advanced:n,leftImage:c,leftImageAlt:B?u:"",leftImageTitle:B?h:"",rightImage:b,rightImageAlt:U?v:"",rightImageTitle:U?y:"",leftImageLabel:j??"Before",rightImageLabel:q??"After",sliderLineWidth:A,sliderPositionPercentage:l(L),vertical:"vertical"===C,hover:P,enableLabel:T,qualityType:x,qualityPercent:D,componentUid:d?.uid??"",builderData:d?.builderData,translate:k})}
4
4
  </div>
5
5
  `};export{ImageComparison as default};
@@ -1,12 +1,12 @@
1
- import{template as e}from"@gem-sdk/core";import{getDynamicSourceLocales as t}from"../../helpers.js";import{getLabelCustomCss as s}from"../common/styles.js";let Label=({uid:l,label:i,styles:a,translate:r,positionId:o,pageContext:m,translateLabel:d,childrenStyle:p,childrenClass:$,containerStyle:c,containerClass:y})=>{let f=s(a,l??""),n=t({uid:l,translate:r,val:i,pageContext:m,settingId:d,isCapitalize:a?.typo?.attrs?.transform==="capitalize"});return e`
1
+ import{template as t}from"@gem-sdk/core";import{getDynamicSourceLocales as e}from"../../helpers.js";import{getLabelCustomCss as s}from"../common/styles.js";let Label=({uid:l,label:a,styles:i,positionId:r,pageContext:o,translateLabel:m,childrenStyle:d,childrenClass:p,containerStyle:$,containerClass:c})=>{let n=s(i,l??""),y=e({uid:l,translate:"true",val:a,pageContext:o,settingId:m,isCapitalize:i?.typo?.attrs?.transform==="capitalize"});return t`
2
2
  <div
3
- id="image-comparison-${o}-label-${l}"
4
- style="${c}"
5
- class="${y}"
3
+ id="image-comparison-${r}-label-${l}"
4
+ style="${$}"
5
+ class="${c}"
6
6
  >
7
- <style>${f}</style>
8
- <div class="${$}" style="${p}">
9
- ${n}
7
+ <style>${n}</style>
8
+ <div class="${p}" style="${d}">
9
+ ${y}
10
10
  </div>
11
11
  </div>
12
12
  `};export{Label as default};
@@ -1 +1 @@
1
- import"react/jsx-runtime";import"@gem-sdk/system";import"@gem-sdk/core";import"react";import"./components/Label.js";import m from"./settings/ImageComparison.js";let imageComparisonSetting={ImageComparison:m};export{imageComparisonSetting};
1
+ import"react/jsx-runtime";import"@gem-sdk/system";import"@gem-sdk/core";import"react";import"next/link";import"./components/Label.js";import m from"./settings/ImageComparison.js";let imageComparisonSetting={ImageComparison:m};export{imageComparisonSetting};
@@ -1 +1 @@
1
- let ImageComparisonSettings=[{id:"setting",controls:[{id:"imageTab",label:"",type:"option:value",options:[{label:"First",value:"left"},{label:"Second",value:"right"}],default:"left"},{id:"imageLeft",label:"Left image",type:"group",controls:[{id:"imageLeft",type:"image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_compare_before.png",width:900,height:600},hiddenSetting:{seo:!0,optimizeLCP:!0}}]},{id:"imageRight",label:"Right Image",type:"group",controls:[{id:"imageRight",type:"image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_compare_after.png",width:900,height:600},hiddenSetting:{seo:!0,optimizeLCP:!0}}]},{id:"preload",type:"toggle",label:"Preload",default:!1},{id:"qualityType",type:"select",label:"Quality",devices:{desktop:{default:"high"}},options:[{title:"Finest",value:"finest"},{title:"High",value:"high"},{title:"Medium",value:"medium"},{title:"Custom",value:"custom",tooltip:"You can choose it for advanced page loading optimization."}]},{id:"qualityPercent",type:"input:slider",label:"",units:["%"],min:100,max:400,step:50,useOnlyUnitInit:!0,showDefaultUnit:!0,isNumber:!0,devices:{desktop:{default:100}}},{id:"direction",label:"Layout",type:"layout-selector",iconViewBox:"0 0 72 72",enableItemBackground:!0,itemPerRow:2,itemSpacing:"large",options:[{label:"Horizontal",value:"horizontal",iconName:"gp-image-comparison-horizontal"},{label:"Vertical",value:"vertical",iconName:"gp-image-comparison-vertical"}],default:"horizontal"},{id:"slider-settings",type:"group",label:"Slider",controls:[{id:"hoverToSlide",type:"select",options:[{label:"Drag to move",value:!1},{label:"Hover to move",value:!0}],label:"Behavior",default:!1},{id:"defaultPercentage",label:"Default ratio",type:"input:slider",useOnlyUnitInit:!0,showDefaultUnit:!0,isNumber:!0,units:["%"],hide:!0,min:1,max:100,default:50}]},{id:"enableLabel",type:"toggle",default:!1},{id:"leftImageLabel",label:"First Description",type:"input",default:"Before"},{id:"translate",type:"input",default:"leftImageLabel,rightImageLabel"},{id:"rightImageLabel",label:"Second Description",type:"input",default:"After"},{id:"enableSEOLeft",type:"toggle",default:!1},{id:"enableSEORight",type:"toggle",default:!1},{id:"seo",type:"group",label:"SEO",controls:[{id:"seoTab",label:"",type:"option:value",options:[{label:"First",value:"left"},{label:"Second",value:"right"}],default:"left"},{id:"altLeft",label:"First image alt text",type:"textarea",minHeight:76,autoHeight:!0,placeholder:"E.g: image of an iphone",default:"Describes the appearance of the image"},{id:"altRight",label:"Second image alt text",type:"textarea",minHeight:76,autoHeight:!0,placeholder:"E.g: image of an iphone",default:"Describes the appearance of the image"},{id:"titleLeft",label:"First image title",info:"Show title when hover to first image",type:"input",placeholder:"E.g: iphone compare",default:"Title"},{id:"titleRight",label:"Second image title",info:"Show title when hover to second image",type:"input",placeholder:"E.g: iphone compare",default:"Title"}]}]},{id:"style",controls:[{id:"label-settings",type:"group",label:"Label",controls:[{id:"labelPadding",type:"padding-v2",devices:{desktop:{default:{top:"4px",left:"4px",bottom:"4px",right:"4px",linked:!0}}},compoDefaultValue:{desktop:{default:{top:"4px",left:"4px",bottom:"4px",right:"4px",linked:!0}}}},{id:"labelBackgroundColor",type:"color-picker-v2",devices:{desktop:{default:"rgba(0, 0, 0, 0.60)"}}},{id:"labelPositionHoz",label:"Position",type:"option:value",devices:{desktop:{default:"hoz-center"}},options:[{label:"Top",value:"top",iconName:"gp-justify-content-top"},{label:"Center",value:"hoz-center",iconName:"gp-justify-content-center"},{label:"Bottom",value:"bottom",iconName:"gp-justify-content-bottom"}]},{id:"labelPositionVer",label:"Position",type:"option:value",devices:{desktop:{default:"ver-center"}},options:[{label:"Left",value:"left",iconName:"gp-justify-content-left"},{label:"Center",value:"ver-center",iconName:"gp-justify-content-middle"},{label:"Right",value:"right",iconName:"gp-justify-content-right"}]},{id:"labelTextColor",type:"colorpicker",label:"Text Color",default:"#FFFFFF"},{id:"labelBorder",type:"border-v2",devices:{desktop:{default:{borderType:"none",border:"none",borderWidth:"1px",width:"1px 1px 1px 1px",color:"line-1",isCustom:!0}}},compoDefaultValue:{desktop:{default:{border:"solid",color:"line-1",width:"1px",borderWidth:"1px"}}}},{id:"labelRounded",type:"corner-v2",devices:{desktop:{default:{btrr:"8px",bblr:"8px",bbrr:"8px",btlr:"8px",radiusType:"rounded"}}},compoDefaultValue:{desktop:{default:{btrr:"8px",bblr:"8px",bbrr:"8px",btlr:"8px",radiusType:"rounded"}}}},{id:"labelShadow",type:"shadow-v2",devices:{desktop:{}},compoDefaultValue:{desktop:{default:{type:"shadow-1",distance:"4px",blur:"4px",spread:"0px",color:"rgba(18, 18, 18, 0.2)",angle:45,enable:!0}}}}]},{id:"size-settings",type:"group",label:"Size",controls:[{id:"aspectRatio",type:"select",label:"Aspect Ratio",options:[{label:"Original",value:"auto"},{label:"1:1",value:"1"},{label:"3:2",value:"3/2"},{label:"4:3",value:"4/3"},{label:"16:9",value:"16/9"},{label:"21:9",value:"21/9"},{label:"2:3",value:"2/3"},{label:"3:4",value:"3/4"},{label:"9:16",value:"9/16"},{label:"Custom",value:"custom"}],devices:{desktop:{default:"16/9"}}},{id:"customAspectRadio",type:"ratio",min:1,devices:{desktop:{default:{width:"1",height:"1"}}},hide:!0},{id:"imageScale",type:"option:illustration",enableTooltip:!0,label:"Image scale",options:[{label:"Fill image",value:"cover",type:"image",svgName:"gp-image-cover"},{label:"Fit image",value:"contain",type:"image",svgName:"gp-image-contain"}],devices:{desktop:{default:"cover"}}},{id:"fullWidth",label:"Full Width",type:"toggle",devices:{desktop:{default:!0}}},{id:"width",type:"input:unit",emptyOnClear:!0,placeholder:"Auto",min:0,units:["px","%"],hide:!0,devices:{desktop:{default:"100%"}}}]},{id:"typo",type:"typography-combo",default:{type:"paragraph-2"},ignoreReRender:!0,compoDefaultValue:{attrs:{color:"#FFFFFF"}},hiddenSetting:{textAlign:!0}},{id:"transform",label:"Text Transform",type:"select",options:[{value:"default",label:"None"},{value:"capitalize",label:"Capitalize"},{value:"uppercase",label:"Uppercase"},{value:"lowercase",label:"Lowercase"}],default:"default"},{id:"align",label:"Alignment",type:"option:value",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left",iconName:"gp-align-left"},{label:"Center",value:"center",type:"align",tooltip:"Align center",iconName:"gp-align-center"},{label:"Right",value:"right",type:"align",tooltip:"Align right",iconName:"gp-align-right"}],devices:{desktop:{default:"center"}}}]}];export{ImageComparisonSettings};
1
+ let ImageComparisonSettings=[{id:"setting",controls:[{id:"imageTab",label:"",type:"option:value",options:[{label:"First",value:"left"},{label:"Second",value:"right"}],default:"left"},{id:"imageLeft",label:"Left image",type:"group",controls:[{id:"imageLeft",type:"image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_compare_before.png",width:900,height:600},hiddenSetting:{seo:!0,optimizeLCP:!0}}]},{id:"imageRight",label:"Right Image",type:"group",controls:[{id:"imageRight",type:"image",default:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/image_compare_after.png",width:900,height:600},hiddenSetting:{seo:!0,optimizeLCP:!0}}]},{id:"preload",type:"toggle",label:"Preload",default:!1},{id:"qualityType",type:"select",label:"Quality",devices:{desktop:{default:"high"}},options:[{title:"Finest",value:"finest"},{title:"High",value:"high"},{title:"Medium",value:"medium"},{title:"Custom",value:"custom",tooltip:"You can choose it for advanced page loading optimization."}]},{id:"qualityPercent",type:"input:slider",label:"",units:["%"],min:100,max:400,step:50,useOnlyUnitInit:!0,showDefaultUnit:!0,isNumber:!0,devices:{desktop:{default:100}}},{id:"direction",label:"Layout",type:"layout-selector",iconViewBox:"0 0 72 72",enableItemBackground:!0,itemPerRow:2,itemSpacing:"large",options:[{label:"Horizontal",value:"horizontal",iconName:"gp-image-comparison-horizontal"},{label:"Vertical",value:"vertical",iconName:"gp-image-comparison-vertical"}],default:"horizontal"},{id:"slider-settings",type:"group",label:"Slider",controls:[{id:"hoverToSlide",type:"select",options:[{label:"Drag to move",value:!1},{label:"Hover to move",value:!0}],label:"Behavior",default:!1},{id:"defaultPercentage",label:"Default ratio",type:"input:slider",useOnlyUnitInit:!0,showDefaultUnit:!0,isNumber:!0,units:["%"],hide:!0,min:1,max:100,default:50}]},{id:"enableLabel",type:"toggle",default:!1},{id:"leftImageLabel",label:"First Description",type:"input",default:"Before"},{id:"rightImageLabel",label:"Second Description",type:"input",default:"After"},{id:"enableSEOLeft",type:"toggle",default:!1},{id:"enableSEORight",type:"toggle",default:!1},{id:"seo",type:"group",label:"SEO",controls:[{id:"seoTab",label:"",type:"option:value",options:[{label:"First",value:"left"},{label:"Second",value:"right"}],default:"left"},{id:"altLeft",label:"First image alt text",type:"textarea",minHeight:76,autoHeight:!0,placeholder:"E.g: image of an iphone",default:"Describes the appearance of the image"},{id:"altRight",label:"Second image alt text",type:"textarea",minHeight:76,autoHeight:!0,placeholder:"E.g: image of an iphone",default:"Describes the appearance of the image"},{id:"titleLeft",label:"First image title",info:"Show title when hover to first image",type:"input",placeholder:"E.g: iphone compare",default:"Title"},{id:"titleRight",label:"Second image title",info:"Show title when hover to second image",type:"input",placeholder:"E.g: iphone compare",default:"Title"}]},{id:"translate",type:"input",default:[{id:"altLeft"},{id:"altRight"},{id:"titleLeft"},{id:"titleRight"},{id:"rightImageLabel"},{id:"leftImageLabel"},{id:"imageLeft",fields:["src"]},{id:"imageRight",fields:["src"]}]}]},{id:"style",controls:[{id:"label-settings",type:"group",label:"Label",controls:[{id:"labelPadding",type:"padding-v2",devices:{desktop:{default:{top:"4px",left:"4px",bottom:"4px",right:"4px",linked:!0}}},compoDefaultValue:{desktop:{default:{top:"4px",left:"4px",bottom:"4px",right:"4px",linked:!0}}}},{id:"labelBackgroundColor",type:"color-picker-v2",devices:{desktop:{default:"rgba(0, 0, 0, 0.60)"}}},{id:"labelPositionHoz",label:"Position",type:"option:value",devices:{desktop:{default:"hoz-center"}},options:[{label:"Top",value:"top",iconName:"gp-justify-content-top"},{label:"Center",value:"hoz-center",iconName:"gp-justify-content-center"},{label:"Bottom",value:"bottom",iconName:"gp-justify-content-bottom"}]},{id:"labelPositionVer",label:"Position",type:"option:value",devices:{desktop:{default:"ver-center"}},options:[{label:"Left",value:"left",iconName:"gp-justify-content-left"},{label:"Center",value:"ver-center",iconName:"gp-justify-content-middle"},{label:"Right",value:"right",iconName:"gp-justify-content-right"}]},{id:"labelTextColor",type:"colorpicker",label:"Text Color",default:"#FFFFFF"},{id:"labelBorder",type:"border-v2",devices:{desktop:{default:{borderType:"none",border:"none",borderWidth:"1px",width:"1px 1px 1px 1px",color:"line-1",isCustom:!0}}},compoDefaultValue:{desktop:{default:{border:"solid",color:"line-1",width:"1px",borderWidth:"1px"}}}},{id:"labelRounded",type:"corner-v2",devices:{desktop:{default:{btrr:"8px",bblr:"8px",bbrr:"8px",btlr:"8px",radiusType:"rounded"}}},compoDefaultValue:{desktop:{default:{btrr:"8px",bblr:"8px",bbrr:"8px",btlr:"8px",radiusType:"rounded"}}}},{id:"labelShadow",type:"shadow-v2",devices:{desktop:{}},compoDefaultValue:{desktop:{default:{type:"shadow-1",distance:"4px",blur:"4px",spread:"0px",color:"rgba(18, 18, 18, 0.2)",angle:45,enable:!0}}}}]},{id:"size-settings",type:"group",label:"Size",controls:[{id:"aspectRatio",type:"select",label:"Aspect Ratio",options:[{label:"Original",value:"auto"},{label:"1:1",value:"1"},{label:"3:2",value:"3/2"},{label:"4:3",value:"4/3"},{label:"16:9",value:"16/9"},{label:"21:9",value:"21/9"},{label:"2:3",value:"2/3"},{label:"3:4",value:"3/4"},{label:"9:16",value:"9/16"},{label:"Custom",value:"custom"}],devices:{desktop:{default:"16/9"}}},{id:"customAspectRadio",type:"ratio",min:1,devices:{desktop:{default:{width:"1",height:"1"}}},hide:!0},{id:"imageScale",type:"option:illustration",enableTooltip:!0,label:"Image scale",options:[{label:"Fill image",value:"cover",type:"image",svgName:"gp-image-cover"},{label:"Fit image",value:"contain",type:"image",svgName:"gp-image-contain"}],devices:{desktop:{default:"cover"}}},{id:"fullWidth",label:"Full Width",type:"toggle",devices:{desktop:{default:!0}}},{id:"width",type:"input:unit",emptyOnClear:!0,placeholder:"Auto",min:0,units:["px","%"],hide:!0,devices:{desktop:{default:"100%"}}}]},{id:"typo",type:"typography-combo",default:{type:"paragraph-2"},ignoreReRender:!0,compoDefaultValue:{attrs:{color:"#FFFFFF"}},hiddenSetting:{textAlign:!0}},{id:"transform",label:"Text Transform",type:"select",options:[{value:"default",label:"None"},{value:"capitalize",label:"Capitalize"},{value:"uppercase",label:"Uppercase"},{value:"lowercase",label:"Lowercase"}],default:"default"},{id:"align",label:"Alignment",type:"option:value",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left",iconName:"gp-align-left"},{label:"Center",value:"center",type:"align",tooltip:"Align center",iconName:"gp-align-center"},{label:"Right",value:"right",type:"align",tooltip:"Align right",iconName:"gp-align-right"}],devices:{desktop:{default:"center"}}}]}];export{ImageComparisonSettings};
@@ -1 +1 @@
1
- let SettingUIV2=[{label:{en:"Layout"},controls:[{setting:{id:"direction"},layout:"vertical",options:{fullWidth:!0}}]},{label:{en:"Image"},controls:[{label:{en:"1st image"},setting:{id:"imageLeft"},options:{updateFields:[{field:"preload",settingId:"preload"},{field:"altText",settingId:"altLeft"},{field:"imageTitle",settingId:"titleLeft"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"altLeft",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"titleLeft",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"2nd image"},setting:{id:"imageRight"},options:{updateFields:[{field:"preload",settingId:"preload"},{field:"altText",settingId:"altRight"},{field:"imageTitle",settingId:"titleRight"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"altRight",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"titleRight",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Scale"},setting:{id:"imageScale"}}]},{label:{en:"Slider"},controls:[{label:{en:"Behavior"},setting:{id:"hoverToSlide"}},{label:{en:"Default ratio"},setting:{id:"defaultPercentage"}}]},{controls:[{label:{en:"Badge"},setting:{id:"enableLabel"},options:{labelVariant:"primary",toggleStyle:"switch"}},{label:{en:"1st"},conditionDisplay:"enableLabel === true",setting:{id:"leftImageLabel"}},{label:{en:"2nd"},conditionDisplay:"enableLabel === true",setting:{id:"rightImageLabel"}},{conditionDisplay:"enableLabel === true",label:{en:"Text style"},setting:{id:"typo"},options:{updateFields:[{field:"attrs.color",settingId:"labelTextColor"}]},controlChangeTrigger:{settings:[{action:{controlId:"labelTextColor",valueFromField:"attrs.color",groupType:"style",controlType:"style",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Padding"},conditionDisplay:"enableLabel === true",setting:{id:"labelPadding"}},{label:{en:"Background"},conditionDisplay:"enableLabel === true",setting:{id:"labelBackgroundColor"}},{label:{en:"Border"},conditionDisplay:"enableLabel === true",setting:{id:"labelBorder"}},{label:{en:"Corner"},conditionDisplay:"enableLabel === true",setting:{id:"labelRounded"}},{label:{en:"Shadow"},conditionDisplay:"enableLabel === true",setting:{id:"labelShadow"}},{label:{en:"Position"},setting:{id:"labelPositionHoz"},conditionDisplay:"enableLabel === true && direction === 'horizontal'"},{label:{en:"Position"},setting:{id:"labelPositionVer"},conditionDisplay:"enableLabel === true && direction === 'vertical'"}]},{label:{en:"Size"},controls:[{label:{en:"Frame"},setting:{id:"aspectRatio"}},{label:{en:"Ratio"},conditionDisplay:"aspectRatio === 'custom'",setting:{id:"customAspectRadio"}},{label:{en:"Width"},setting:{id:"width"}}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow.normal.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow.normal.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Optimize LCP"},controls:[{label:{en:"Preload"},setting:{id:"preload"}},{label:{en:"Quality"},conditionEnable:"((imageLeft.src || imageRight.src) && (imageLeft.src.includes('cdn.shopify.com') || imageRight.src.includes('cdn.shopify.com')))",conditionDisplay:"preload === false",setting:{id:"qualityType"},options:{fullWidth:!0,disableMessage:"This setting only works with images uploaded to Shopify"}},{layout:"horizontal",label:{en:"Quality"},conditionDisplay:'qualityType == "custom" && preload === false && ((imageLeft.src || imageRight.src) && (imageLeft.src.includes("cdn.shopify.com") || imageRight.src.includes("cdn.shopify.com"))) ',setting:{id:"qualityPercent"}}]},{label:{en:"SEO"},controls:[{label:{en:"1st image"},type:"combo",iconName:"polaris-text-title",fixedValue:"Edit",popoverLabel:{en:"SEO"},setting:{id:"enableSEOLeft"},controls:[{label:{en:"Alt text"},options:{labelAlign:"top"},setting:{id:"altLeft"}},{label:{en:"Image title"},options:{labelAlign:"top"},setting:{id:"titleLeft"}}]},{label:{en:"2nd image"},type:"combo",iconName:"polaris-text-title",fixedValue:"Edit",setting:{id:"enableSEORight"},popoverLabel:{en:"SEO"},controls:[{label:{en:"Alt text"},options:{labelAlign:"top"},setting:{id:"altRight"}},{label:{en:"Image title"},options:{labelAlign:"top"},setting:{id:"titleRight"}}]}]},{controls:[{label:{en:"Align"},conditionEnable:'!(width === "default" || (parseInt(width) >= 100 && width?.includes("%")))',setting:{id:"align"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Align is not supported when width is 100%"}}]}];export{SettingUIV2};
1
+ let SettingUIV2=[{label:{en:"Layout"},controls:[{setting:{id:"direction"},layout:"vertical",options:{fullWidth:!0}}]},{label:{en:"Image"},controls:[{label:{en:"1st image"},setting:{id:"imageLeft"},options:{updateFields:[{field:"preload",settingId:"preload"},{field:"altText",settingId:"altLeft"},{field:"imageTitle",settingId:"titleLeft"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"altLeft",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"titleLeft",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"2nd image"},setting:{id:"imageRight"},options:{updateFields:[{field:"preload",settingId:"preload"},{field:"altText",settingId:"altRight"},{field:"imageTitle",settingId:"titleRight"}]},controlChangeTrigger:{settings:[{action:{controlId:"preload",valueFromField:"preload",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"altRight",valueFromField:"altText",groupType:"setting",controlType:"setting",removeDevice:!0}},{action:{controlId:"titleRight",valueFromField:"imageTitle",groupType:"setting",controlType:"setting",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Scale"},setting:{id:"imageScale"}}]},{label:{en:"Slider"},controls:[{label:{en:"Behavior"},setting:{id:"hoverToSlide"}},{label:{en:"Default ratio"},setting:{id:"defaultPercentage"}}]},{controls:[{label:{en:"Badge"},setting:{id:"enableLabel"},options:{labelVariant:"primary",toggleStyle:"switch"}},{label:{en:"1st"},conditionDisplay:"enableLabel === true",setting:{id:"leftImageLabel"}},{label:{en:"2nd"},conditionDisplay:"enableLabel === true",setting:{id:"rightImageLabel"}},{conditionDisplay:"enableLabel === true",label:{en:"Text style"},setting:{id:"typo"},options:{updateFields:[{field:"attrs.color",settingId:"labelTextColor"}]},controlChangeTrigger:{settings:[{action:{controlId:"labelTextColor",valueFromField:"attrs.color",groupType:"style",controlType:"style",removeDevice:!0}}],options:{noRecordHistory:!0}}},{label:{en:"Padding"},conditionDisplay:"enableLabel === true",setting:{id:"labelPadding"}},{label:{en:"Background"},conditionDisplay:"enableLabel === true",setting:{id:"labelBackgroundColor"}},{label:{en:"Border"},conditionDisplay:"enableLabel === true",setting:{id:"labelBorder"}},{label:{en:"Corner"},conditionDisplay:"enableLabel === true",setting:{id:"labelRounded"}},{label:{en:"Shadow"},conditionDisplay:"enableLabel === true",setting:{id:"labelShadow"}},{label:{en:"Position"},setting:{id:"labelPositionHoz"},conditionDisplay:"enableLabel === true && direction === 'horizontal'"},{label:{en:"Position"},setting:{id:"labelPositionVer"},conditionDisplay:"enableLabel === true && direction === 'vertical'"}]},{label:{en:"Size"},controls:[{label:{en:"Frame"},setting:{id:"aspectRatio"}},{label:{en:"Ratio"},conditionDisplay:"aspectRatio === 'custom'",setting:{id:"customAspectRadio"}},{label:{en:"Width"},setting:{id:"width"}}]},{label:{en:"Shape"},controls:[{label:{en:"Border"},setting:{id:"border",state:"normal"}},{label:{en:"Corner"},setting:{id:"rounded",state:"normal"}},{label:{en:"Shadow"},setting:{id:"boxShadow",state:"normal"},options:{updateFields:[{field:"normal.enable",settingId:"hasBoxShadow",state:"normal"}]},controlChangeTrigger:{settings:[{condition:"boxShadow?.normal?.enable === true",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!0}},{condition:"boxShadow?.normal?.enable === false",source:["boxShadow","hasBoxShadow"],action:{controlId:"hasBoxShadow",groupType:"advanced",controlType:"advanced",state:"normal",newValue:!1}}],options:{noRecordHistory:!0}}}]},{label:{en:"Optimize LCP"},controls:[{label:{en:"Preload"},setting:{id:"preload"}},{label:{en:"Quality"},conditionEnable:"((imageLeft.src || imageRight.src) && (imageLeft.src.includes('cdn.shopify.com') || imageRight.src.includes('cdn.shopify.com')))",conditionDisplay:"preload === false",setting:{id:"qualityType"},options:{fullWidth:!0,disableMessage:"This setting only works with images uploaded to Shopify"}},{layout:"horizontal",label:{en:"Quality"},conditionDisplay:'qualityType == "custom" && preload === false && ((imageLeft.src || imageRight.src) && (imageLeft.src.includes("cdn.shopify.com") || imageRight.src.includes("cdn.shopify.com"))) ',setting:{id:"qualityPercent"}}]},{label:{en:"SEO"},controls:[{label:{en:"1st image"},type:"combo",iconName:"polaris-text-title",fixedValue:"Edit",popoverLabel:{en:"SEO"},setting:{id:"enableSEOLeft"},controls:[{label:{en:"Alt text"},options:{labelAlign:"top"},setting:{id:"altLeft"}},{label:{en:"Image title"},options:{labelAlign:"top"},setting:{id:"titleLeft"}}]},{label:{en:"2nd image"},type:"combo",iconName:"polaris-text-title",fixedValue:"Edit",setting:{id:"enableSEORight"},popoverLabel:{en:"SEO"},controls:[{label:{en:"Alt text"},options:{labelAlign:"top"},setting:{id:"altRight"}},{label:{en:"Image title"},options:{labelAlign:"top"},setting:{id:"titleRight"}}]}]},{controls:[{label:{en:"Align"},conditionEnable:'!(width === "default" || (parseInt(width) >= 100 && width?.includes("%")))',setting:{id:"align"},options:{labelVariant:"primary",fullWidth:!0,disableMessage:"Align is not supported when width is 100%"}}]}];export{SettingUIV2};