@gem-sdk/components 12.0.0-staging.8 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/cjs/countdown-timer/common/helpers.js +1 -1
  2. package/dist/cjs/countdown-timer/hooks/useCountDownTimer.js +1 -1
  3. package/dist/cjs/countdown-timer/hooks/useTimeLeft.js +1 -1
  4. package/dist/cjs/countdown-timer/settings/Countdown.js +1 -1
  5. package/dist/cjs/countdown-timer/settings/configs/setting.js +1 -1
  6. package/dist/cjs/countdown-timer/settings/configs/ui-v2.js +1 -1
  7. package/dist/cjs/helpers.js +1 -1
  8. package/dist/cjs/index.js +1 -1
  9. package/dist/cjs/marquee/components/Marquee.liquid.js +6 -6
  10. package/dist/cjs/post-purchase/product/components/ProductPrice.js +1 -1
  11. package/dist/cjs/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
  12. package/dist/cjs/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
  13. package/dist/cjs/product/components/product-badge/ProductBadge.js +1 -1
  14. package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +12 -12
  15. package/dist/cjs/product/components/product-badge/common/classes.js +1 -1
  16. package/dist/cjs/product/components/product-badge/common/styles.js +1 -1
  17. package/dist/cjs/product/components/product-badge/utils/common.js +1 -1
  18. package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +4 -3
  19. package/dist/cjs/product/components/product-button/hooks/useAddToCart.js +1 -1
  20. package/dist/cjs/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
  21. package/dist/cjs/product/components/product-price/hooks/useGpPrice.js +1 -1
  22. package/dist/cjs/product/helpers/product-bundle.js +1 -1
  23. package/dist/esm/countdown-timer/common/helpers.js +1 -1
  24. package/dist/esm/countdown-timer/hooks/useCountDownTimer.js +1 -1
  25. package/dist/esm/countdown-timer/hooks/useTimeLeft.js +1 -1
  26. package/dist/esm/countdown-timer/settings/Countdown.js +3 -3
  27. package/dist/esm/countdown-timer/settings/configs/setting.js +1 -1
  28. package/dist/esm/countdown-timer/settings/configs/ui-v2.js +1 -1
  29. package/dist/esm/helpers.js +1 -1
  30. package/dist/esm/index.js +1 -1
  31. package/dist/esm/marquee/components/Marquee.liquid.js +18 -18
  32. package/dist/esm/post-purchase/product/components/ProductPrice.js +1 -1
  33. package/dist/esm/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
  34. package/dist/esm/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
  35. package/dist/esm/product/components/product-badge/ProductBadge.js +1 -1
  36. package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +23 -23
  37. package/dist/esm/product/components/product-badge/common/classes.js +1 -1
  38. package/dist/esm/product/components/product-badge/common/styles.js +1 -1
  39. package/dist/esm/product/components/product-badge/utils/common.js +1 -1
  40. package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +4 -3
  41. package/dist/esm/product/components/product-button/hooks/useAddToCart.js +1 -1
  42. package/dist/esm/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
  43. package/dist/esm/product/components/product-price/hooks/useGpPrice.js +1 -1
  44. package/dist/esm/product/helpers/product-bundle.js +1 -1
  45. package/dist/types/index.d.ts +2 -2
  46. package/package.json +4 -4
@@ -1 +1 @@
1
- import{useProductOfferDiscount as e,useCurrentVariant as t,useQuantity as l,useFormatMoney as i,convertDecimalToNumber as o,shopifyPriceRounding as a}from"@gem-sdk/core";import{useDynamicProduct as u}from"./useDynamicProduct.js";let useGetMoneyLines=(s,n)=>{let{isDynamicProduct:p,dynamicPrice:b,dynamicDiscount:r,isEnableDynamicDiscount:L}=u(),h=e(),c=t(),{quantity:d}=l(),m=h*(d||1),w=i(m,!1),S=o(c?.price)??0,f=S*(d||1),g=i(f,!1),y=a(m,2),T=i(f-parseFloat(y),!1),q=()=>{let e=[];return!1!==s.isShowSubTotalLabel&&e.push({title:n.subTotalLabel,money:p?b:g,uniqueId:"subTotalLabel"}),!1!==s.isShowDiscountLabel&&e.push({title:n.discountLabel,money:p&&r&&L?`${r.value}%`:h>0?w:"No discount",uniqueId:"discountLabel"}),!1!==s.isShowShippingLabel&&e.push({title:n.shippingLabel,uniqueId:"shippingLabel",tooltip:{content:"Shipping fee will be calculated on real offer page",width:"23em"}}),!1!==s.isShowTaxesLabel&&e.push({title:n.taxesLabel,uniqueId:"taxesLabel",tooltip:{content:"Taxes will be calculated on real offer page",width:"20em"}}),!1!==s.isShowTotalLabel&&e.push({title:n.totalLabel,money:p?b:T,uniqueId:"totalLabel"}),e};return{getMoneyLines:q}};export{useGetMoneyLines};
1
+ import{useProductOfferDiscount as e,useCurrentVariant as t,useQuantity as l,useFormatMoney as i,shopifyPriceRounding as o}from"@gem-sdk/core";import{useDynamicProduct as a}from"./useDynamicProduct.js";let useGetMoneyLines=(u,s)=>{let{isDynamicProduct:n,dynamicPrice:p,dynamicDiscount:b,isEnableDynamicDiscount:r}=a(),L=e(),h=t(),{quantity:c}=l(),d=L*(c||1),m=i(d,!1),w=h?.price??0,S=w*(c||1),f=i(S,!1),g=o(d,2),y=i(S-parseFloat(g),!1),T=()=>{let e=[];return!1!==u.isShowSubTotalLabel&&e.push({title:s.subTotalLabel,money:n?p:f,uniqueId:"subTotalLabel"}),!1!==u.isShowDiscountLabel&&e.push({title:s.discountLabel,money:n&&b&&r?`${b.value}%`:L>0?m:"No discount",uniqueId:"discountLabel"}),!1!==u.isShowShippingLabel&&e.push({title:s.shippingLabel,uniqueId:"shippingLabel",tooltip:{content:"Shipping fee will be calculated on real offer page",width:"23em"}}),!1!==u.isShowTaxesLabel&&e.push({title:s.taxesLabel,uniqueId:"taxesLabel",tooltip:{content:"Taxes will be calculated on real offer page",width:"20em"}}),!1!==u.isShowTotalLabel&&e.push({title:s.totalLabel,money:n?p:y,uniqueId:"totalLabel"}),e};return{getMoneyLines:T}};export{useGetMoneyLines};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsxs as e,jsx as m}from"react/jsx-runtime";import{useProduct as s,useCurrentVariant as o,useMoneyFormat as t,useCurrentDevice as r,useProductBundleDiscount as l,useEditorMode as i,useRenderMode as a,usePageType as c,filterToolbarPreview as n}from"@gem-sdk/core";import{getBadgeContent as d,getIsNoDiscountState as p}from"./utils/common.js";import"./constants.js";import f from"../../../common/components/NoDataState.js";import h from"../../../common/components/TooltipHover.js";import{createClass as y,createStyle as N,createAttr as j,If as u}from"@gem-sdk/system";import{getEditTooltipAttrs as v,getNoDataAttrs as g,getSubWrapperAttrs as T,getContainerAttrs as k,getTextContentAttrs as x,getImageAttr as B}from"./common/attrs.js";import{getContainerClasses as C,getWrapperClasses as P,getSubWrapperClass as S,getTextContainerClasses as b,getTextWrapperClasses as A,getTextContentClasses as D,getImageContainerClasses as H,getImageClasses as I}from"./common/classes.js";import{getContainerStyle as q,getSubWrapperStyle as w,getContentStyleInternal as z,getTextBadgeWrapperStyles as E,getTextContentStyle as F,getImageContainerStyles as G}from"./common/styles.js";let ProductBadge=J=>{let{setting:K,styles:L,children:M,...O}=J,Q=s(),R=o(),{moneyFormat:U}=t(),V=r(),{useProductCompareAtPrice:W}=l(),X=O?.["bundle-item"],Y=i(),{isEditMode:Z}=a(),$="STATIC"===c(),_=d({detail:Q,currentVariant:R,bundleItem:X,useProductCompareAtPrice:W},K?.displayContent,U),ee=p({props:J,product:Q,currentVariant:R,moneyFormat:U,useProductCompareAtPrice:W}),em=y({...C({mode:Y,isInstant:$,product:Q,currentVariant:R,props:J})}),es=N({...q(J)}),eo=j({...v(J)}),et=j({...g(J)}),er=y({...P(J)}),el=y({...S(J,V)}),ei=N({...w({props:J,product:Q,currentVariant:R,isEditMode:Z})}),ea=j({...T(J,Q)}),ec=z(J),en=y({...b()}),ed=j({...k(J)}),ep=y({...A()}),ef=N({...E({setting:K,styles:L})}),eh=y({...D(L)}),ey=N({...F({setting:K,styles:L})}),eN=j({...x()}),ej=y({...H()}),eu=N({...G({setting:K,styles:L})}),ev=y({...I()}),eg=j({...B({setting:K})});return Q?e("div",{...ed,style:es,className:em,children:[u(Z&&ee,m(h,{...eo,children:m(f,{...et})}),m("div",{className:er,children:e("div",{...ea,className:el,style:ei,children:[m("style",{children:ec}),u(K?.shape!=="image",m("div",{className:en,children:m("div",{className:ep,style:ef,children:m("pre",{...eN,className:eh,style:ey,children:_})})}),m("div",{className:ej,style:eu,children:m("img",{...eg,className:ev,alt:""})}))]})})),n(M,!0)]}):null};export{ProductBadge as default};
2
+ import{jsxs as e,jsx as m}from"react/jsx-runtime";import{useProduct as s,useCurrentVariant as o,useMoneyFormat as t,useCurrentDevice as r,useProductBundleDiscount as l,useEditorMode as i,usePageType as a,filterToolbarPreview as c}from"@gem-sdk/core";import{getBadgeContent as n,getIsNoDiscountState as d}from"./utils/common.js";import"./constants.js";import p from"../../../common/components/NoDataState.js";import f from"../../../common/components/TooltipHover.js";import{createClass as h,createStyle as y,createAttr as N,If as j}from"@gem-sdk/system";import{getEditTooltipAttrs as u,getNoDataAttrs as v,getSubWrapperAttrs as g,getContainerAttrs as T,getTextContentAttrs as k,getImageAttr as x}from"./common/attrs.js";import{getContainerClasses as B,getWrapperClasses as C,getSubWrapperClass as P,getTextContainerClasses as S,getTextWrapperClasses as b,getTextContentClasses as A,getImageContainerClasses as D,getImageClasses as H}from"./common/classes.js";import{getContainerStyle as I,getSubWrapperStyle as q,getContentStyleInternal as w,getTextBadgeWrapperStyles as z,getTextContentStyle as E,getImageContainerStyles as F}from"./common/styles.js";let ProductBadge=G=>{let{setting:J,styles:K,children:L,...M}=G,O=s(),Q=o(),{moneyFormat:R}=t(),U=r(),{useProductCompareAtPrice:V}=l(),W=M?.["bundle-item"],X=i(),Y="STATIC"===a(),Z=n({detail:O,currentVariant:Q,bundleItem:W,useProductCompareAtPrice:V},J?.displayContent,R),$=d({props:G,product:O,currentVariant:Q,moneyFormat:R,useProductCompareAtPrice:V}),_=h({...B({mode:X,isInstant:Y,product:O,currentVariant:Q,props:G})}),ee=y({...I(G)}),em=N({...u(G)}),es=N({...v(G)}),eo=h({...C(G)}),et=h({...P(G,U)}),er=y({...q(G,O,Q,X)}),el=N({...g(G,O)}),ei=w(G),ea=h({...S()}),ec=N({...T(G)}),en=h({...b()}),ed=y({...z({setting:J,styles:K})}),ep=h({...A(K)}),ef=y({...E({setting:J,styles:K})}),eh=N({...k()}),ey=h({...D()}),eN=y({...F({setting:J,styles:K})}),ej=h({...H()}),eu=N({...x({setting:J})});return O?e("div",{...ec,style:ee,className:_,children:[j("edit"===X&&$,m(f,{...em,children:m(p,{...es})}),m("div",{className:eo,children:e("div",{...el,className:et,style:er,children:[m("style",{children:ei}),j(J?.shape!=="image",m("div",{className:ea,children:m("div",{className:en,style:ed,children:m("pre",{...eh,className:ep,style:ef,children:Z})})}),m("div",{className:ey,style:eN,children:m("img",{...eu,className:ej,alt:""})}))]})})),c(L,!0)]}):null};export{ProductBadge as default};
@@ -1,39 +1,39 @@
1
- import{template as e,dataStringify as t,sanitizeLiquid as s,RenderIf as i,isLocalEnv as r,baseAssetURL as a}from"@gem-sdk/core";import{getDynamicSourceLocales as c,getSettingPreloadData as n}from"../../../helpers.js";import{generateBadgeContent as o}from"./utils/generateLiquidContent.js";import{renderBadgeInFirstTime as p}from"./utils/renderBadgeLiquid.js";import{createClass as d,createStyle as l,createAttr as u,createStateOrContext as m}from"@gem-sdk/system";import{IS_LIQUID as g}from"./constants.js";import{getContainerStyle as y,getSubWrapperStyle as $,getContentStyleInternal as v,getTextBadgeWrapperStyles as f,getTextContentStyle as j,getImageContainerStyles as P}from"./common/styles.js";import{getContainerClasses as D,getWrapperClasses as V,getSubWrapperClass as S,getTextContainerClasses as b,getTextWrapperClasses as I,getTextContentClasses as T,getImageContainerClasses as k,getImageClasses as q}from"./common/classes.js";import{getSubWrapperAttrs as A,getContainerAttrs as C,getTextContentAttrs as E,getImageAttr as K}from"./common/attrs.js";let ProductBadge=_=>{let{styles:h,setting:B,builderProps:L,pageContext:N}=_,O=B?.shape!=="image",Q=O&&B?.displayContent?.trim()==="",w=d({...D({isInstant:!1,props:_})}),G=l({...y(_,g)}),J=d({...V(_)}),x=d({...S(_)}),M=l({...$({props:_})}),R=u({...A(_)}),Y=v(_),z=d({...b()}),F=u({...C(_)}),H=d({...I()}),U=l({...f({setting:B,styles:h})}),W=d({...T(h)}),X=l({...j({setting:B,styles:h})}),Z=u({...E()}),ee=d({...k()}),et=l({...P({setting:B,styles:h})}),es=d({...q()}),ei=u({...K({setting:B})}),er=m({minPrice:"{{ minPriceValue | replace: '\"', '\\\"' | escape }}",variantIDs:'{{ product.variants | map: "id" | json | escape }}',variantInventoryQuantities:'{{ product.variants | map: "inventory_quantity" | json | escape }}',amountDiscount:"{{amountDiscountValue | replace: '\"', '\\\"' | escape }}",percentDiscount:"{{percentDiscountValue}}",price:"{{price}}",displayTrigger:JSON.parse(JSON.stringify(B?.displayTrigger).replaceAll("'","'")),uid:_.builderProps?.uid,productCreatedAt:'{{product.created_at | date: "%Y-%m-%d" }}',productTags:"{{ product.tags | join: \",\" | replace: '\"', '\\\"' | escape }}",isTextBadge:O}),{displayContent:ea,translate:ec}=B??{},en=c({val:ea?.trim(),uid:L?.uid,settingId:"displayContent",isLiquid:!0,pageContext:N,translate:ec});return e`
1
+ import{template as e,dataStringify as t,sanitizeLiquid as s,RenderIf as i,isLocalEnv as r,baseAssetURL as a}from"@gem-sdk/core";import{getDynamicSourceLocales as c,getSettingPreloadData as o}from"../../../helpers.js";import{checkDiscountContentProductBadge as n}from"./utils/common.js";import{generateBadgeContent as p}from"./utils/generateLiquidContent.js";import{renderBadgeInFirstTime as d}from"./utils/renderBadgeLiquid.js";import{createClass as l,createStyle as u,createAttr as m,createStateOrContext as g}from"@gem-sdk/system";import{IS_LIQUID as y}from"./constants.js";import{getContainerStyle as $,getSubWrapperStyle as v,getContentStyleInternal as f,getTextBadgeWrapperStyles as j,getTextContentStyle as P,getImageContainerStyles as D}from"./common/styles.js";import{getContainerClasses as V,getWrapperClasses as S,getSubWrapperClass as b,getTextContainerClasses as I,getTextWrapperClasses as T,getTextContentClasses as k,getImageContainerClasses as q,getImageClasses as A}from"./common/classes.js";import{getSubWrapperAttrs as C,getContainerAttrs as E,getTextContentAttrs as K,getImageAttr as _}from"./common/attrs.js";let ProductBadge=h=>{let{styles:B,setting:L,builderProps:N,pageContext:O}=h,Q=L?.shape!=="image",w=n(L?.displayContent),G=l({...V({isInstant:!1,props:h})}),J=u({...$(h,y)}),x=l({...S(h)}),M=l({...b(h)}),R=u({...v(h)}),Y=m({...C(h)}),z=f(h),F=l({...I()}),H=m({...E(h)}),U=l({...T()}),W=u({...j({setting:L,styles:B})}),X=l({...k(B)}),Z=u({...P({setting:L,styles:B})}),ee=m({...K()}),et=l({...q()}),es=u({...D({setting:L,styles:B})}),ei=l({...A()}),er=m({..._({setting:L})}),ea=g({minPrice:"{{ minPriceValue | replace: '\"', '\\\"' | escape }}",variantIDs:'{{ product.variants | map: "id" | json | escape }}',variantInventoryQuantities:'{{ product.variants | map: "inventory_quantity" | json | escape }}',amountDiscount:"{{amountDiscountValue | replace: '\"', '\\\"' | escape }}",percentDiscount:"{{percentDiscountValue}}",price:"{{price}}",displayTrigger:JSON.parse(JSON.stringify(L?.displayTrigger).replaceAll("'","'")),uid:h.builderProps?.uid,productCreatedAt:'{{product.created_at | date: "%Y-%m-%d" }}',productTags:"{{ product.tags | join: \",\" | replace: '\"', '\\\"' | escape }}",isTextBadge:Q}),{displayContent:ec,translate:eo}=L??{},en=c({val:ec?.trim(),uid:N?.uid,settingId:"displayContent",isLiquid:!0,pageContext:O,translate:eo});return e`
2
2
  {% if product %}
3
- ${o(en,N?.isPreviewing)}
4
- ${p(B?.displayTrigger,!Q)}
3
+ ${p(en,O?.isPreviewing)}
4
+ ${d(L?.displayTrigger,w,Q)}
5
5
  <gp-product-badge
6
- ${{...F}}
7
- gp-data='${t(er)}'
8
- class="${w}"
9
- style="${G}"
10
- data-display-content="${N?.isPreviewing?en:s(`{{${en}}}`)}"
6
+ ${{...H}}
7
+ gp-data='${t(ea)}'
8
+ class="${G}"
9
+ style="${J}"
10
+ data-display-content="${O?.isPreviewing?en:s(`{{${en}}}`)}"
11
11
  >
12
- <div class="${J}">
12
+ <div class="${x}">
13
13
  <div
14
- ${{...R}}
15
- class="${x}"
16
- style="${M}"
14
+ ${{...Y}}
15
+ class="${M}"
16
+ style="${R}"
17
17
  >
18
- <style>${Y}</style>
19
- ${i(O,e`
20
- <div class="${z}">
18
+ <style>${z}</style>
19
+ ${i(Q,e`
20
+ <div class="${F}">
21
21
  <div
22
- class="${H}"
23
- style="${U}"
22
+ class="${U}"
23
+ style="${W}"
24
24
  >
25
25
  <pre
26
- ${{...Z}}
27
- class="${W}"
28
- style="${X}"
26
+ ${{...ee}}
27
+ class="${X}"
28
+ style="${Z}"
29
29
  >{{ content | replace: percentDiscountKey, percentDiscountValue | replace: amountDiscountKey, amountDiscountValue | replace: inventoryQuantityKey, inventoryQuantityValue | replace: minPriceKey, minPriceValue }}</pre>
30
30
  </div>
31
- </div>`,e`<div class="${ee}" style="${et}">
32
- <img ${{...ei}} class="${es}" alt="" />
31
+ </div>`,e`<div class="${et}" style="${es}">
32
+ <img ${{...er}} class="${ei}" alt="" />
33
33
  </div>`)}
34
34
  </div>
35
35
  </div>
36
36
  </gp-product-badge>
37
- ${i(r,`<script ${n('class="gps-link" delay',"src")}="{{ 'gp-product-badge-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${n('class="gps-link" delay',"src")}="${a}/assets-v2/gp-product-badge-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
37
+ ${i(r,`<script ${o('class="gps-link" delay',"src")}="{{ 'gp-product-badge-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${o('class="gps-link" delay',"src")}="${a}/assets-v2/gp-product-badge-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
38
38
  {% endif %}
39
39
  `};export{ProductBadge as default};
@@ -1 +1 @@
1
- import{composeClasses as e,composeTypographyClassName as t}from"@gem-sdk/core";import{toggleBadge as s}from"../utils/renderBadgeILP.js";import{getAlignShape as g,getShapePlacementClass as r}from"../utils/common.js";let getContainerClasses=({mode:t,isInstant:g,product:r,currentVariant:l,props:a})=>{let{setting:p,builderProps:i}=a,n="gp-shrink-0 product-badge ",o=!t&&g?s(p?.displayTrigger,r,l):`${i?.uid}`,d=i?.builderData?.advanced?.cssClass||"";return o&&(n+=`${o} `),d&&(n+=`${d} `),i?.uid&&(n+=`${i?.uid} `),p?.positionWithImage==="inside"&&(n+="inside-image "),{...e(n)}},getTextContainerClasses=()=>({...e("gp-w-full gp-h-full gp-overflow-hidden product-badge-item")}),getTextWrapperClasses=()=>({...e("gp-w-full gp-h-full gp-flex gp-items-center gp-justify-center gp-overflow-hidden")}),getTextContentClasses=s=>{let g="gp-break-words gp-text-center ",r=t(s?.typo);return r&&(g+=`${r} `),{...e(g)}},getImageContainerClasses=()=>({...e("product-badge-item gp-w-full gp-h-full gp-overflow-hidden")}),getImageClasses=()=>({...e("gp-object-cover gp-w-full gp-h-full gp-pointer-events-none")}),getWrapperClasses=t=>{let{styles:s,setting:r}=t,{align:l}=s??{},a=r?.positionWithImage==="outside",p=a?"gp-flex ":"gp-h-full",i=g(l,!1);return a&&i&&(p+=`${i} `),{...e(p)}},getSubWrapperClass=(t,s)=>{let{setting:g,style:l}=t,a=g?.positionWithImage==="inside",p=!a&&s?r(a,l,s):"gp-h-full";return{...e(p)}};export{getContainerClasses,getImageClasses,getImageContainerClasses,getSubWrapperClass,getTextContainerClasses,getTextContentClasses,getTextWrapperClasses,getWrapperClasses};
1
+ import{composeClasses as e,composeTypographyClassName as t}from"@gem-sdk/core";import{toggleBadge as s}from"../utils/renderBadgeILP.js";import{getAlignShape as g,getShapePlacementClass as r}from"../utils/common.js";let getContainerClasses=({mode:t,isInstant:g,product:r,currentVariant:l,props:a})=>{let{setting:p,builderProps:i}=a,n="gp-shrink-0 product-badge ",o=!t&&g?s(p?.displayTrigger,r,l):"{{className}}",d=i?.builderData?.advanced?.cssClass||"";return o&&(n+=`${o} `),d&&(n+=`${d} `),i?.uid&&(n+=`${i?.uid} `),p?.positionWithImage==="inside"&&(n+="inside-image "),{...e(n)}},getTextContainerClasses=()=>({...e("gp-w-full gp-h-full gp-overflow-hidden product-badge-item")}),getTextWrapperClasses=()=>({...e("gp-w-full gp-h-full gp-flex gp-items-center gp-justify-center gp-overflow-hidden")}),getTextContentClasses=s=>{let g="gp-break-words gp-text-center ",r=t(s?.typo);return r&&(g+=`${r} `),{...e(g)}},getImageContainerClasses=()=>({...e("product-badge-item gp-w-full gp-h-full gp-overflow-hidden")}),getImageClasses=()=>({...e("gp-object-cover gp-w-full gp-h-full gp-pointer-events-none")}),getWrapperClasses=t=>{let{styles:s,setting:r}=t,{align:l}=s??{},a=r?.positionWithImage==="outside",p=a?"gp-flex ":"gp-h-full",i=g(l,!1);return a&&i&&(p+=`${i} `),{...e(p)}},getSubWrapperClass=(t,s)=>{let{setting:g,style:l}=t,a=g?.positionWithImage==="inside",p=!a&&s?r(a,l,s):"gp-h-full";return{...e(p)}};export{getContainerClasses,getImageClasses,getImageContainerClasses,getSubWrapperClass,getTextContainerClasses,getTextContentClasses,getTextWrapperClasses,getWrapperClasses};
@@ -1 +1 @@
1
- import{makeGlobalSize as e,composeTypographyStyle as t,getStyleShadow as o,convertDecimalToNumber as r}from"@gem-sdk/core";import{convertToStyle as i,getSize as a,getWrapperStyle as n,getShapeWrapperPadding as s}from"../utils/common.js";import{getShapePosition as p}from"../utils/getShapePosition.js";import{composeTextStyleByPosition as g,composeShapeStyleByPosition as l}from"../utils/getRotateShape.js";import{getStyleAdvanced as d}from"../utils/getStyleAdvanced.js";import{getWhiteSpaceStyle as u}from"../utils/getWhiteSpace.js";import{getStyleBackground as S,generateShadowCSS as m,getStyleBorder as y,getStyleCornerRadius as h}from"../utils/stylesV2.js";import{getShape as x}from"../utils/shape.js";import{checkShowBadge as c}from"../utils/renderBadgeILP.js";let getSizeStyles=e=>{let{setting:t,styles:o}=e,r=x(t?.shape),i=t?.contentType==="text",n=i?o?.textSizeV2:o?.imageSizeV2;return i?a(r,n):a(void 0,n)},getContainerStyle=(e,t=!1)=>{let{setting:o,styles:r,style:i,navigationPosition:a,imageData:s,dotData:g}=e,l=o?.positionWithImage==="outside",u=n(t),S=p({positionType:r?.position,isLiquid:!1,navigationPosition:a,dataImage:{...s,...g}}),m=getSizeStyles(e),y=d(l?{}:{...S,...m},i);return{...!l&&{"--pos":"absolute"},...u,...y}},getTextContentStyle=({styles:r,setting:a})=>{let n=e(r?.textSizeV2).padding,s=x(a?.shape),p=a?.positionWithImage==="outside";return{...u(r?.textSizeV2),...i(s?.textStyle),...g(s,r?.position,p),...t(r?.typo),...o({value:r?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:r?.typo?.custom?.hasShadowText}),...S(!!s?.backgroundColorInText,r?.badgeColorV2),...n}},getBorderStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=t?.contentType==="text";return o?.supportBorder?r?y(e?.textBadgeBorder):y(e?.imageBadgeBorder):{}},getCornerStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=t?.contentType==="text";return o?.supportCorner?r?h(e?.textBadgeCorner,o?.shapeRadius):h(e?.imageBadgeCorner,o?.shapeRadius):{}},getTextBadgeWrapperStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=getBorderStyles({setting:t,styles:e}),i=t?.positionWithImage==="outside",a=getCornerStyles({setting:t,styles:e}),n=s(o?.ratio);return{...r,...a,...l(o,e?.position,i),...S(!o?.backgroundColorInText,e?.badgeColorV2),...n,height:o?.ratio===1?"0px":"100%"}},getImageContainerStyles=({styles:t,setting:o})=>{let r=getBorderStyles({setting:o,styles:t}),i=getCornerStyles({setting:o,styles:t}),a=e(t?.imageSizeV2).padding;return{...r,...i,...a}},getOpacityProductBadge=({props:e,currentVariant:t,product:o,isEditMode:i})=>{let{"bundle-item":a,setting:n}=e;if(a)return 1;let s=n?.contentType==="text",p=s&&!n?.displayContent?.trim();if(p)return i?.2:0;let g=r(t?.price)??0,l=r(t?.salePrice)??0,d=l-g>0,u=c(n?.displayTrigger,o,t);return d&&u?1:i?.2:0},getSubWrapperStyle=({props:e,product:t,currentVariant:o,isEditMode:r})=>{let{setting:i}=e,a=i?.positionWithImage==="outside",n=getSizeStyles(e),s=r&&o?getOpacityProductBadge({props:e,currentVariant:o,product:t,isEditMode:r}):1;return{...a?{...n,"--mb":0}:{},opacity:s}},getContentStyleInternal=e=>{let{styles:t,setting:o,builderProps:r}=e,i=o?.contentType==="text";return m(`[id="${r?.uid}"] .product-badge-item`,i?t?.textBadgeShadow:t?.imageBadgeShadow)};export{getContainerStyle,getContentStyleInternal,getImageContainerStyles,getSubWrapperStyle,getTextBadgeWrapperStyles,getTextContentStyle};
1
+ import{makeGlobalSize as e,composeTypographyStyle as t,getStyleShadow as o}from"@gem-sdk/core";import{convertToStyle as r,getSize as i,getWrapperStyle as a,getShapeWrapperPadding as n,checkDiscountContentProductBadge as s}from"../utils/common.js";import{getShapePosition as p}from"../utils/getShapePosition.js";import{composeTextStyleByPosition as g,composeShapeStyleByPosition as l}from"../utils/getRotateShape.js";import{getStyleAdvanced as d}from"../utils/getStyleAdvanced.js";import{getWhiteSpaceStyle as u}from"../utils/getWhiteSpace.js";import{getStyleBackground as S,generateShadowCSS as y,getStyleBorder as m,getStyleCornerRadius as h}from"../utils/stylesV2.js";import{getShape as x}from"../utils/shape.js";import{checkShowBadge as c}from"../utils/renderBadgeILP.js";let getSizeStyles=e=>{let{setting:t,styles:o}=e,r=x(t?.shape),a=t?.contentType==="text",n=a?o?.textSizeV2:o?.imageSizeV2;return a?i(r,n):i(void 0,n)},getContainerStyle=(e,t=!1)=>{let{setting:o,styles:r,style:i,navigationPosition:n,imageData:s,dotData:g}=e,l=o?.positionWithImage==="outside",u=a(t),S=p({positionType:r?.position,isLiquid:!1,navigationPosition:n,dataImage:{...s,...g}}),y=getSizeStyles(e),m=d(l?{}:{...S,...y},i);return{...!l&&{"--pos":"absolute"},...u,...m}},getTextContentStyle=({styles:i,setting:a})=>{let n=e(i?.textSizeV2).padding,s=x(a?.shape),p=a?.positionWithImage==="outside";return{...u(i?.textSizeV2),...r(s?.textStyle),...g(s,i?.position,p),...t(i?.typo),...o({value:i?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:i?.typo?.custom?.hasShadowText}),...S(!!s?.backgroundColorInText,i?.badgeColorV2),...n}},getBorderStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=t?.contentType==="text";return o?.supportBorder?r?m(e?.textBadgeBorder):m(e?.imageBadgeBorder):{}},getCornerStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=t?.contentType==="text";return o?.supportCorner?r?h(e?.textBadgeCorner,o?.shapeRadius):h(e?.imageBadgeCorner,o?.shapeRadius):{}},getTextBadgeWrapperStyles=({styles:e,setting:t})=>{let o=x(t?.shape),r=getBorderStyles({setting:t,styles:e}),i=t?.positionWithImage==="outside",a=getCornerStyles({setting:t,styles:e}),s=n(o?.ratio);return{...r,...a,...l(o,e?.position,i),...S(!o?.backgroundColorInText,e?.badgeColorV2),...s,height:o?.ratio===1?"0px":"100%"}},getImageContainerStyles=({styles:t,setting:o})=>{let r=getBorderStyles({setting:o,styles:t}),i=getCornerStyles({setting:o,styles:t}),a=e(t?.imageSizeV2).padding;return{...r,...i,...a}},getOpacityProductBadge=(e,t,o,r)=>{let{"bundle-item":i,setting:a}=e;if(i)return 1;let n=s(a?.displayContent)&&a?.contentType==="text";if(!n)return 1;let p=t?.price??0,g=t?.salePrice??0,l=g-p>0,d=c(a?.displayTrigger,o,t);return l&&d?1:"edit"===r?.2:0},getSubWrapperStyle=(e,t,o,r)=>{let{setting:i}=e,a=i?.positionWithImage==="outside",n=getSizeStyles(e),s=r&&o?getOpacityProductBadge(e,o,t,r):1;return{...a?{...n,"--mb":0}:{},opacity:s}},getContentStyleInternal=e=>{let{styles:t,setting:o,builderProps:r}=e,i=o?.contentType==="text";return y(`[id="${r?.uid}"] .product-badge-item`,i?t?.textBadgeShadow:t?.imageBadgeShadow)};export{getContainerStyle,getContentStyleInternal,getImageContainerStyles,getSubWrapperStyle,getTextBadgeWrapperStyles,getTextContentStyle};
@@ -1 +1 @@
1
- import{cls as e,convertDecimalToNumber as t,formatMoney as r,makeStyleResponsive as i,getResponsiveValueByScreen as n}from"@gem-sdk/core";import{applyBundleDiscountAmount as o}from"../../../helpers/product-bundle.js";import{DiscountType as u}from"../../constants/product-bundle.js";let removeTrailingZeros=e=>e.replace(/\.00$/,""),getPriceDiffByPercent=(e,t)=>{if(!t)return"0";let r=1e3*t-1e3*e;return Math.round(100*r/(1e3*t))},getPriceDiffByValue=(e,t,i)=>removeTrailingZeros(r(t?(t-e).toFixed(2):"0",i)),getMinPrice=(e,i)=>{let n=e?.edges?.length&&e.edges.length>0?1/0:0;return e?.edges.forEach(({node:e})=>{if(!e)return;let r=t(e?.price);void 0!==r&&r<n&&(n=r)}),removeTrailingZeros(r(n.toString(),i))},checkNoDiscountState=(e,t)=>{let{discountPercentAmount:r}=o({currentVariant:e?.currentVariant,bundleItem:e?.bundleItem,options:{moneyFormat:t,useProductCompareAtPrice:e?.useProductCompareAtPrice}});return!(e?.bundleItem?.discountType===u.NoDiscount&&e?.useProductCompareAtPrice||Number(e?.bundleItem?.discountValue)&&r)&&!e?.currentVariant?.salePrice},getBadgeContent=(e,i,n)=>{if(!e.detail||!i?.trim()?.length)return i;let{detail:c,currentVariant:l}=e,{discountPercentAmount:a,discountAmount:d}=o({currentVariant:l,bundleItem:e?.bundleItem,options:{moneyFormat:n,useProductCompareAtPrice:e?.useProductCompareAtPrice}}),s=()=>e?.bundleItem?.discountType!==u.NoDiscount||e?.useProductCompareAtPrice?Number(e?.bundleItem?.discountValue)>0?`${a}%`:`${getPriceDiffByPercent(t(l?.price)??0,t(l?.salePrice)??0)||0}%`:"0%",p=()=>e?.bundleItem?.discountType!==u.NoDiscount||e?.useProductCompareAtPrice?Number(e?.bundleItem?.discountValue)>0?d:getPriceDiffByValue(t(l?.price)??0,t(l?.salePrice)??0,n):r("0",n),g=new Map([["{percent_discount}",s],["{amount_discount}",p],["{min_price}",()=>getMinPrice(c.variants,n)||0],["{inventory_quantity}",()=>l?.inventoryQuantity||0]]);return[...g.entries()].reduce((e,[t,r])=>e.replaceAll(t,r()),i)},checkDiscountContentProductBadge=e=>{if(!e)return!1;let t=/\{percent_discount\}|\{amount_discount\}/;return t.test(e)},getShapePlacementClass=(e,t,r="desktop")=>e?t?.[`--pos${deviceWithSurfix(r)}`]?"w-full h-full":"!gp-absolute":t?.[`--d${deviceWithSurfix(r)}`]?"":"!gp-inline-block gp-w-fit",getAlignShape=(t,r)=>r?"":e("gp-flex",{"gp-justify-start":t?.desktop==="left","gp-justify-center":t?.desktop==="center","gp-justify-end":t?.desktop==="right","tablet:gp-justify-start":t?.tablet==="left","tablet:gp-justify-center":t?.tablet==="center","tablet:gp-justify-end":t?.tablet==="right","mobile:gp-justify-start":t?.mobile==="left","mobile:gp-justify-center":t?.mobile==="center","mobile:gp-justify-end":t?.mobile==="right"}),convertToStyle=e=>Object.entries(e||{}).reduce((e,[t,r])=>{let i=new Map([["clipPath","clip-path"],["writingMode","writing-mode"],["borderRadius","border-radius"],["transform","transform"],["alignItems","align-items"],["maxWidth","max-width"]]),n=i.get(t)||t;return{...e,[n]:r}},{}),getWrapperStyle=e=>({[e?"z-index":"zIndex"]:2}),getWidthByShapeSize=(e,t)=>{let r={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let o=n(e,i,null),u=o?.width||t?.wrapperWidth;u&&(r={...r,[i]:u})}),r},getHeightByShapeSize=(e,t)=>{let r={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let o=n(e,i,null);r={...r,[i]:o?.height||t?.wrapperHeight}}),r},getSize=(e,t)=>{let r=i("w",getWidthByShapeSize(t,e)),n=i("h",getHeightByShapeSize(t,e));return{...r,...n}},getShapeWrapperPadding=e=>{let t={};if(1!==e)return t;let r=["desktop","mobile","tablet"];return r.forEach(e=>{t={...t,height:0,[`--p${"desktop"!==e?`-${e}`:""}`]:"50% 0"}}),t},deviceWithSurfix=e=>"desktop"===e?"":`-${e}`,getDeviceSpecificStyle=(e,t)=>{for(let r of({desktop:["desktop"],tablet:["tablet","desktop"],mobile:["mobile","tablet","desktop"]})[t])if(e?.[r])return e[r]},getIsNoDiscountState=({props:e,product:t,currentVariant:r,moneyFormat:i,useProductCompareAtPrice:n})=>{let{setting:o,"bundle-item":u}=e,c=checkDiscountContentProductBadge(o?.displayContent);return c&&checkNoDiscountState({detail:t,currentVariant:r,bundleItem:u,useProductCompareAtPrice:n},i)};export{checkDiscountContentProductBadge,checkNoDiscountState,convertToStyle,deviceWithSurfix,getAlignShape,getBadgeContent,getDeviceSpecificStyle,getIsNoDiscountState,getShapePlacementClass,getShapeWrapperPadding,getSize,getWidthByShapeSize,getWrapperStyle};
1
+ import{cls as e,formatMoney as t,makeStyleResponsive as r,getResponsiveValueByScreen as i}from"@gem-sdk/core";import{applyBundleDiscountAmount as n}from"../../../helpers/product-bundle.js";import{DiscountType as o}from"../../constants/product-bundle.js";let removeTrailingZeros=e=>e.replace(/\.00$/,""),getPriceDiffByPercent=(e,t)=>{if(!t)return"0";let r=1e3*t-1e3*e;return Math.round(100*r/(1e3*t))},getPriceDiffByValue=(e,r,i)=>removeTrailingZeros(t(r?(r-e).toFixed(2):"0",i)),getMinPrice=(e,r)=>{let i=e?.edges?.length&&e.edges.length>0?1/0:0;return e?.edges.forEach(({node:e})=>{if(!e)return;let t=e?.price;void 0!==t&&t<i&&(i=t)}),removeTrailingZeros(t(i.toString(),r))},checkNoDiscountState=(e,t)=>{let{discountPercentAmount:r}=n({currentVariant:e?.currentVariant,bundleItem:e?.bundleItem,options:{moneyFormat:t,useProductCompareAtPrice:e?.useProductCompareAtPrice}});return!(e?.bundleItem?.discountType===o.NoDiscount&&e?.useProductCompareAtPrice||Number(e?.bundleItem?.discountValue)&&r)&&!e?.currentVariant?.salePrice},getBadgeContent=(e,r,i)=>{if(!e.detail||!r?.trim()?.length)return r;let{detail:u,currentVariant:c}=e,{discountPercentAmount:l,discountAmount:a}=n({currentVariant:c,bundleItem:e?.bundleItem,options:{moneyFormat:i,useProductCompareAtPrice:e?.useProductCompareAtPrice}}),d=()=>e?.bundleItem?.discountType!==o.NoDiscount||e?.useProductCompareAtPrice?Number(e?.bundleItem?.discountValue)>0?`${l}%`:`${getPriceDiffByPercent(c?.price||0,c?.salePrice||0)||0}%`:"0%",s=()=>e?.bundleItem?.discountType!==o.NoDiscount||e?.useProductCompareAtPrice?Number(e?.bundleItem?.discountValue)>0?a:getPriceDiffByValue(c?.price||0,c?.salePrice||0,i):t("0",i),p=new Map([["{percent_discount}",d],["{amount_discount}",s],["{min_price}",()=>getMinPrice(u.variants,i)||0],["{inventory_quantity}",()=>c?.inventoryQuantity||0]]);return[...p.entries()].reduce((e,[t,r])=>e.replaceAll(t,r()),r)},checkDiscountContentProductBadge=e=>{if(!e)return!1;let t=/\{percent_discount\}|\{amount_discount\}/;return t.test(e)},getShapePlacementClass=(e,t,r="desktop")=>e?t?.[`--pos${deviceWithSurfix(r)}`]?"w-full h-full":"!gp-absolute":t?.[`--d${deviceWithSurfix(r)}`]?"":"!gp-inline-block gp-w-fit",getAlignShape=(t,r)=>r?"":e("gp-flex",{"gp-justify-start":t?.desktop==="left","gp-justify-center":t?.desktop==="center","gp-justify-end":t?.desktop==="right","tablet:gp-justify-start":t?.tablet==="left","tablet:gp-justify-center":t?.tablet==="center","tablet:gp-justify-end":t?.tablet==="right","mobile:gp-justify-start":t?.mobile==="left","mobile:gp-justify-center":t?.mobile==="center","mobile:gp-justify-end":t?.mobile==="right"}),convertToStyle=e=>Object.entries(e||{}).reduce((e,[t,r])=>{let i=new Map([["clipPath","clip-path"],["writingMode","writing-mode"],["borderRadius","border-radius"],["transform","transform"],["alignItems","align-items"],["maxWidth","max-width"]]),n=i.get(t)||t;return{...e,[n]:r}},{}),getWrapperStyle=e=>({[e?"z-index":"zIndex"]:2}),getWidthByShapeSize=(e,t)=>{let r={},n=["desktop","mobile","tablet"];return n.forEach(n=>{let o=i(e,n,null),u=o?.width||t?.wrapperWidth;u&&(r={...r,[n]:u})}),r},getHeightByShapeSize=(e,t)=>{let r={},n=["desktop","mobile","tablet"];return n.forEach(n=>{let o=i(e,n,null);r={...r,[n]:o?.height||t?.wrapperHeight}}),r},getSize=(e,t)=>{let i=r("w",getWidthByShapeSize(t,e)),n=r("h",getHeightByShapeSize(t,e));return{...i,...n}},getShapeWrapperPadding=e=>{let t={};if(1!==e)return t;let r=["desktop","mobile","tablet"];return r.forEach(e=>{t={...t,height:0,[`--p${"desktop"!==e?`-${e}`:""}`]:"50% 0"}}),t},deviceWithSurfix=e=>"desktop"===e?"":`-${e}`,getDeviceSpecificStyle=(e,t)=>{for(let r of({desktop:["desktop"],tablet:["tablet","desktop"],mobile:["mobile","tablet","desktop"]})[t])if(e?.[r])return e[r]},getIsNoDiscountState=({props:e,product:t,currentVariant:r,moneyFormat:i,useProductCompareAtPrice:n})=>{let{setting:o,"bundle-item":u}=e,c=checkDiscountContentProductBadge(o?.displayContent);return c&&checkNoDiscountState({detail:t,currentVariant:r,bundleItem:u,useProductCompareAtPrice:n},i)};export{checkDiscountContentProductBadge,checkNoDiscountState,convertToStyle,deviceWithSurfix,getAlignShape,getBadgeContent,getDeviceSpecificStyle,getIsNoDiscountState,getShapePlacementClass,getShapeWrapperPadding,getSize,getWidthByShapeSize,getWrapperStyle};
@@ -1,4 +1,4 @@
1
- import{CompareType as e}from"../types.js";let getMinValueForInventory=i=>i===e.ABOVE?0:i===e.BELOW?2:1,renderBadgeInFirstTime=(e,i)=>`
1
+ import{CompareType as e}from"../types.js";let getMinValueForInventory=i=>i===e.ABOVE?0:i===e.BELOW?2:1,renderBadgeInFirstTime=(e,i,n)=>`
2
2
  {% assign isShow = true %}
3
3
  {% assign conditionTriggers = "" %}
4
4
  {% assign isInventoryStatus = false %}
@@ -16,8 +16,9 @@ import{CompareType as e}from"../types.js";let getMinValueForInventory=i=>i===e.A
16
16
  {% assign price = variant.price | times: 1.0 %}
17
17
  {% assign salePrice = variant.compare_at_price | times: 1.0 %}
18
18
  {% assign priceSave = salePrice | minus: price %}
19
- {% assign isEmptyBadgeContent = ${!i} %}
20
- {% if priceSave <= 0 or isEmptyBadgeContent == true %}
19
+ {% assign isDiscountContent = ${i} %}
20
+ {% assign isTextBadge = ${n} %}
21
+ {% if priceSave <= 0 or isDiscountContent == false or isTextBadge == false %}
21
22
  {% assign isShow = false %}
22
23
  {% endif %}
23
24
  {% if isShow %}
@@ -1 +1 @@
1
- import{useRenderMode as e,useProduct as t,useCurrency as r,useQuantity as i,useProductProperties as s,useCurrentVariant as n,useHasPreSelected as o,useStickyStore as a,useProductStore as u,useCreateCart as l,useAddToCart as c,convertDecimalToNumber as m,useCurrentVariantInStock as b}from"@gem-sdk/core";import{useRef as d,useEffect as f,useCallback as p}from"react";import{addToCartTracking as v}from"../../../helpers/tracking.js";import{useDispatchAfterSubmitEvent as g}from"./useDispatchAfterSubmitEvent.js";import{useCartMessage as I}from"./useCartMessage.js";import{useCartOperations as k}from"./useCartOperations.js";let useBtnAddToCart=({styles:D,setting:S,builderProps:E})=>{let h=d(null),{isEditMode:j,isPreviewSharePageMode:y}=e(),C=t(),{currency:A}=r(),{quantity:M}=i(),O=s(),w=n(),{hasPreSelected:B}=o(),T=a(e=>e.setStickyVisible),q=u(e=>e.updateIsSubmit),x=g(E?.uid),{showMessage:L,notiComponent:U}=I(D,S),{handleSuccess:V,handleError:z,cartId:F}=k(S,L,x),{isMutating:G,trigger:H}=l({onSuccess:V,onError:z}),{isMutating:J,trigger:K}=c({onSuccess:V,onError:z});f(()=>{let e=new IntersectionObserver(e=>{let t=e[0];T(t?.isIntersecting)},{threshold:.1}),t=h.current;return h.current&&e.observe(h.current),()=>{t&&e.unobserve(t)}},[T]);let N=p(()=>{if(!w?.baseID||!M||!C?.baseID||void 0!==B&&!B||j||y)return;let e=O?.some(e=>e.required&&!e.value);if(q(!0),e)return;let t=O?.filter(e=>!!e.value)?.map(e=>({key:e.key,value:e.value}));v({quantity:M,currency:A,id:C?.baseID,name:C?.title,brand:C?.vendor,sku:w.sku,price:m(w?.price),variant:w.title});let r={quantity:M,attributes:t,variantId:w.baseID};S?.actionEffect!=="buy-now"&&F?K({cartId:F,lines:[r]}):H({items:[r]})},[j,y,F,A,M,O,B,C?.title,C?.vendor,C?.baseID,w?.sku,w?.price,w?.title,w?.baseID,S?.actionEffect,H,K,q]),P=b(),Q=G||J,R=w?S?.outOfStockLabel:"Unavailable";return{addToCartRef:h,isLoading:Q,isInStock:P,notiComponent:U,outOfStockLabel:R,addToCart:N}};export{useBtnAddToCart};
1
+ import{useRenderMode as e,useProduct as t,useCurrency as r,useQuantity as i,useProductProperties as s,useCurrentVariant as n,useHasPreSelected as o,useStickyStore as a,useProductStore as u,useCreateCart as l,useAddToCart as c,useCurrentVariantInStock as m}from"@gem-sdk/core";import{useRef as b,useEffect as d,useCallback as f}from"react";import{addToCartTracking as p}from"../../../helpers/tracking.js";import{useDispatchAfterSubmitEvent as v}from"./useDispatchAfterSubmitEvent.js";import{useCartMessage as g}from"./useCartMessage.js";import{useCartOperations as I}from"./useCartOperations.js";let useBtnAddToCart=({styles:k,setting:D,builderProps:S})=>{let E=b(null),{isEditMode:h,isPreviewSharePageMode:j}=e(),y=t(),{currency:C}=r(),{quantity:A}=i(),M=s(),O=n(),{hasPreSelected:w}=o(),B=a(e=>e.setStickyVisible),T=u(e=>e.updateIsSubmit),q=v(S?.uid),{showMessage:x,notiComponent:L}=g(k,D),{handleSuccess:U,handleError:V,cartId:z}=I(D,x,q),{isMutating:F,trigger:G}=l({onSuccess:U,onError:V}),{isMutating:H,trigger:J}=c({onSuccess:U,onError:V});d(()=>{let e=new IntersectionObserver(e=>{let t=e[0];B(t?.isIntersecting)},{threshold:.1}),t=E.current;return E.current&&e.observe(E.current),()=>{t&&e.unobserve(t)}},[B]);let K=f(()=>{if(!O?.baseID||!A||!y?.baseID||void 0!==w&&!w||h||j)return;let e=M?.some(e=>e.required&&!e.value);if(T(!0),e)return;let t=M?.filter(e=>!!e.value)?.map(e=>({key:e.key,value:e.value}));p({quantity:A,currency:C,id:y?.baseID,name:y?.title,brand:y?.vendor,sku:O.sku,price:O?.price,variant:O.title});let r={quantity:A,attributes:t,variantId:O.baseID};D?.actionEffect!=="buy-now"&&z?J({cartId:z,lines:[r]}):G({items:[r]})},[h,j,z,C,A,M,w,y?.title,y?.vendor,y?.baseID,O?.sku,O?.price,O?.title,O?.baseID,D?.actionEffect,G,J,T]),N=m(),P=F||H,Q=O?D?.outOfStockLabel:"Unavailable";return{addToCartRef:E,isLoading:P,isInStock:N,notiComponent:L,outOfStockLabel:Q,addToCart:K}};export{useBtnAddToCart};
@@ -1 +1 @@
1
- import{useMoneyFormat as e,useEditorMode as t,useProduct as r,useCurrentVariant as n,useQuantity as o,convertDecimalToNumber as u,useFormatMoney as i,useProductBundleDiscount as p,formatMoney as c}from"@gem-sdk/core";import{useMemo as s}from"react";import{applyBundleDiscountAmount as a}from"../../../helpers/product-bundle.js";import{DiscountType as m}from"../../constants/product-bundle.js";let useGpDiscountTag=l=>{let{setting:d,...g}=l,{customContent:f}=d??{},b=g["bundle-item"],{moneyFormat:h}=e(),D=t(),$=r(),j=n(),{quantity:y,hasUpdatePrice:G}=o(),P=s(()=>G&&f?.unit!=="percentage"?y??1:1,[G,f?.unit,y]),T=u(j?.price)??0,k=u(j?.salePrice)??0,x=(k-T)*P,C=i(x<0?0:x,d?.moneyWithCurrentFormat||!1),F=s(()=>{if(!k&&0!==k||!T&&0!==T)return`${f?.unit==="percentage"?"0%":C}`;if(f?.unit==="percentage"){let e=Math.round(x/(k/100));return`${e<0?0:e}%`}return`${C}`},[f?.unit,C,T,x,k]),{useProductCompareAtPrice:I}=p(),{discountPercentAmount:M}=a({currentVariant:j,bundleItem:b,options:{moneyFormat:h,useProductCompareAtPrice:I}}),N=s(()=>{if(!b)return 0;let{discountPercentAmount:e,discountAmount:t}=a({currentVariant:j,bundleItem:b,options:{moneyFormat:h,useProductCompareAtPrice:I}}),{discountType:r}=b,{unit:n}=f||{};return r!==m.NoDiscount||I?"percentage"===n?`${e}%`:t:"percentage"===n?"0%":c("0",h)},[b,j,h,I,f]),W=s(()=>b?N:F,[N,b,F]),q=$?.baseID?.replace("gid://shopify/Product/",""),v=s(()=>{let e=b?M<=0:x<=0;return"edit"===D&&e},[b,M,D,x]);return{mode:D,product:$,salePrice:k,priceSave:x,currentProductId:q,unitCustomDisplay:W,shouldPlaceholderNoDiscount:v}};export{useGpDiscountTag};
1
+ import{useMoneyFormat as e,useEditorMode as t,useProduct as r,useCurrentVariant as n,useQuantity as o,useFormatMoney as u,useProductBundleDiscount as i,formatMoney as p}from"@gem-sdk/core";import{useMemo as c}from"react";import{applyBundleDiscountAmount as s}from"../../../helpers/product-bundle.js";import{DiscountType as a}from"../../constants/product-bundle.js";let useGpDiscountTag=m=>{let{setting:l,...d}=m,{customContent:g}=l??{},f=d["bundle-item"],{moneyFormat:b}=e(),h=t(),D=r(),$=n(),{quantity:j,hasUpdatePrice:y}=o(),G=c(()=>y&&g?.unit!=="percentage"?j??1:1,[y,g?.unit,j]),P=$?.price??0,T=$?.salePrice??0,k=(T-P)*G,x=u(k<0?0:k,l?.moneyWithCurrentFormat||!1),C=c(()=>{if(!T&&0!==T||!P&&0!==P)return`${g?.unit==="percentage"?"0%":x}`;if(g?.unit==="percentage"){let e=Math.round(k/(T/100));return`${e<0?0:e}%`}return`${x}`},[g?.unit,x,P,k,T]),{useProductCompareAtPrice:F}=i(),{discountPercentAmount:I}=s({currentVariant:$,bundleItem:f,options:{moneyFormat:b,useProductCompareAtPrice:F}}),M=c(()=>{if(!f)return 0;let{discountPercentAmount:e,discountAmount:t}=s({currentVariant:$,bundleItem:f,options:{moneyFormat:b,useProductCompareAtPrice:F}}),{discountType:r}=f,{unit:n}=g||{};return r!==a.NoDiscount||F?"percentage"===n?`${e}%`:t:"percentage"===n?"0%":p("0",b)},[f,$,b,F,g]),N=c(()=>f?M:C,[M,f,C]),W=D?.baseID?.replace("gid://shopify/Product/",""),q=c(()=>{let e=f?I<=0:k<=0;return"edit"===h&&e},[f,I,h,k]);return{mode:h,product:D,salePrice:T,priceSave:k,currentProductId:W,unitCustomDisplay:N,shouldPlaceholderNoDiscount:q}};export{useGpDiscountTag};
@@ -1 +1 @@
1
- import{useRef as e,useMemo as r}from"react";import{useTransition as t}from"../../product-variants/common/common.js";import{useEditorMode as c,useQuantity as i,useCurrentVariant as a,useProductBundleDiscount as n,convertDecimalToNumber as o,useInteraction as u,useProduct as p,useShopStore as d,useFormatMoney as l}from"@gem-sdk/core";let useGpPrice=m=>{let{setting:s,builderProps:g}=m,b=e(null),h=c(),{quantity:y,hasUpdatePrice:P}=i(),v=a(),{useProductCompareAtPrice:f}=n(),w=m["bundle-item"],V=o(v?.price)??0,k=o(v?.salePrice)??0,q=s?.priceType==="compare",{trigger:T}=u(),x=p(),C=x?.baseID?.replace("gid://shopify/Product/",""),E=d(e=>e.showPriceCurrency),G=r(()=>w?.quantity?w.quantity:P&&y||1,[y,P,w?.quantity]),$=r(()=>{let e=Number(w?.discountValue);return w?.discountType==="percentage"?V*G*e/100:e},[w?.discountType,w?.discountValue,V,G]),j=r(()=>w?.discountValue?f?(k||V)*G:V*G:k*G,[w?.discountValue,V,G,k,f]),D=r(()=>{let e=V*G;return q?j:$?Math.max(0,e-$):e},[V,G,$,j,q]),I=r(()=>!!q&&(!(k>V)||!(k>=0)),[q,k,V]),M=(e,r)=>{T({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${g?.uid}"]`,element:b.current}),T({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${g?.uid}"]`,element:b.current})};t(e=>{e!==V&&M(V,"price")},[V]),t(e=>{e!==k&&M(k,"compare")},[k]);let N=()=>{if("edit"!==h)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:g?.uid,value:!D&&q,tag:"ProductPrice"}});window.dispatchEvent(e)},z=l(D??0,E||!1),A=q&&!D,B="edit"!==h&&A;return{elementRef:b,moneyFormatted:z,currentProductId:C,isNoComparePrice:A,isNoComparePriceILP:B,emitNoDataSignal:N,shouldHiddenComparePrice:I}};export{useGpPrice};
1
+ import{useRef as e,useMemo as r}from"react";import{useTransition as t}from"../../product-variants/common/common.js";import{useEditorMode as c,useQuantity as i,useCurrentVariant as a,useProductBundleDiscount as n,useInteraction as o,useProduct as u,useShopStore as p,useFormatMoney as d}from"@gem-sdk/core";let useGpPrice=l=>{let{setting:m,builderProps:s}=l,g=e(null),b=c(),{quantity:h,hasUpdatePrice:y}=i(),P=a(),{useProductCompareAtPrice:v}=n(),f=l["bundle-item"],w=P?.price??0,V=P?.salePrice??0,k=m?.priceType==="compare",{trigger:q}=o(),T=u(),x=T?.baseID?.replace("gid://shopify/Product/",""),C=p(e=>e.showPriceCurrency),E=r(()=>f?.quantity?f.quantity:y&&h||1,[h,y,f?.quantity]),G=r(()=>{let e=Number(f?.discountValue);return f?.discountType==="percentage"?w*E*e/100:e},[f?.discountType,f?.discountValue,w,E]),$=r(()=>f?.discountValue?v?(V||w)*E:w*E:V*E,[f?.discountValue,w,E,V,v]),j=r(()=>{let e=w*E;return k?$:G?Math.max(0,e-G):e},[w,E,G,$,k]),D=r(()=>!!k&&(!(V>w)||!(V>=0)),[k,V,w]),I=(e,r)=>{q({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${s?.uid}"]`,element:g.current}),q({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${s?.uid}"]`,element:g.current})};t(e=>{e!==w&&I(w,"price")},[w]),t(e=>{e!==V&&I(V,"compare")},[V]);let M=()=>{if("edit"!==b)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:s?.uid,value:!j&&k,tag:"ProductPrice"}});window.dispatchEvent(e)},N=d(j??0,C||!1),z=k&&!j,A="edit"!==b&&z;return{elementRef:g,moneyFormatted:N,currentProductId:x,isNoComparePrice:z,isNoComparePriceILP:A,emitNoDataSignal:M,shouldHiddenComparePrice:D}};export{useGpPrice};
@@ -1 +1 @@
1
- import{convertDecimalToNumber as t,formatMoney as e}from"@gem-sdk/core";import{DiscountType as n}from"../components/constants/product-bundle.js";let noDiscount=t=>({discountPercentAmount:0,discountAmount:e("0",t)}),applyBundleDiscountAmount=o=>{let{currentVariant:u,bundleItem:c,options:r}=o;if(!r?.useProductCompareAtPrice&&c?.discountType===n.NoDiscount||!c||!u?.price)return noDiscount(r?.moneyFormat||"${{amount}}");let i=t(u?.price)??0,a=t(u?.salePrice)??i,m=Number(c?.quantity),s=calculateBundleFixedDiscount(i,c),d=discountPercentAmount(s,m*i),l=i*m-s,p=a*m;return a<=i&&s<=0?noDiscount(r?.moneyFormat||"${{amount}}"):{discountPercentAmount:r?.useProductCompareAtPrice?calculateDiffPercentPrice(l,p):d,discountAmount:r?.useProductCompareAtPrice?calculateDiffFixedPrice(l,p,r?.moneyFormat):e(s.toString(),r?.moneyFormat)}},calculateDiffPercentPrice=(t,e)=>{let n=(e-t)/e*100;return Math.round(n)},calculateDiffFixedPrice=(t,n,o)=>e((n-t).toString(),o),calculateBundleFixedDiscount=(t,e)=>{let o=parseInt(e?.discountValue);return e?.discountType===n.Percentage?t*e.quantity*o/100:e?.discountType===n.FixedAmount?o:0},discountPercentAmount=(t,e)=>Math.round(t/e*100);export{applyBundleDiscountAmount};
1
+ import{formatMoney as t}from"@gem-sdk/core";import{DiscountType as e}from"../components/constants/product-bundle.js";let noDiscount=e=>({discountPercentAmount:0,discountAmount:t("0",e)}),applyBundleDiscountAmount=n=>{let{currentVariant:o,bundleItem:u,options:c}=n;if(!c?.useProductCompareAtPrice&&u?.discountType===e.NoDiscount||!u||!o?.price)return noDiscount(c?.moneyFormat||"${{amount}}");let r=Number(o?.price),i=Number(o?.salePrice)||r,a=Number(u?.quantity),m=calculateBundleFixedDiscount(r,u),s=discountPercentAmount(m,a*r),d=r*a-m,l=i*a;return i<=r&&m<=0?noDiscount(c?.moneyFormat||"${{amount}}"):{discountPercentAmount:c?.useProductCompareAtPrice?calculateDiffPercentPrice(d,l):s,discountAmount:c?.useProductCompareAtPrice?calculateDiffFixedPrice(d,l,c?.moneyFormat):t(m.toString(),c?.moneyFormat)}},calculateDiffPercentPrice=(t,e)=>{let n=(e-t)/e*100;return Math.round(n)},calculateDiffFixedPrice=(e,n,o)=>t((n-e).toString(),o),calculateBundleFixedDiscount=(t,n)=>{let o=parseInt(n?.discountValue);return n?.discountType===e.Percentage?t*n.quantity*o/100:n?.discountType===e.FixedAmount?o:0},discountPercentAmount=(t,e)=>Math.round(t/e*100);export{applyBundleDiscountAmount};
@@ -1374,7 +1374,6 @@ type CountdownSettingProps = {
1374
1374
  enableHour?: boolean;
1375
1375
  enableMinute?: boolean;
1376
1376
  enableSecond?: boolean;
1377
- standardType?: string;
1378
1377
  dayLabel?: string;
1379
1378
  hourLabel?: string;
1380
1379
  minuteLabel?: string;
@@ -7989,5 +7988,6 @@ declare const getAllHrefFromString: (htmlString: string) => string[];
7989
7988
  declare const replaceAllHrefFromString: (htmlString: string, hrefs: string[]) => string;
7990
7989
  declare function isEmptyObject(obj: Record<string, any>): boolean;
7991
7990
  declare const handleClickLink: (setting?: ImageLink, mode?: RenderMode) => void;
7991
+ declare const safeSvgIcon: (str?: string) => string;
7992
7992
 
7993
- export { Accordion$1 as Accordion, AccordionItem$1 as AccordionItem, type AccordionItemProps, type AccordionProps, AftershipEmailMarketingsms$1 as AftershipEmailMarketingsms, type AftershipEmailMarketingsmsProps, AirProductReviewsAppUgc$1 as AirProductReviewsAppUgc, type AirProductReviewsAppUgcProps, AliReviews$1 as AliReviews, type AliReviewsProps, AlsoBoughtCbb$1 as AlsoBoughtCbb, type AlsoBoughtCbbProps, AovBundlesVolumeDiscounts$1 as AovBundlesVolumeDiscounts, type AovBundlesVolumeDiscountsProps, AovFreeGiftBuyXGetYBogo$1 as AovFreeGiftBuyXGetYBogo, type AovFreeGiftBuyXGetYBogoProps, AppointmentBookingCowlendar$1 as AppointmentBookingCowlendar, type AppointmentBookingCowlendarProps, AppstleBundlesDiscounts$1 as AppstleBundlesDiscounts, type AppstleBundlesDiscountsProps, AppstleSubscriptions$1 as AppstleSubscriptions, type AppstleSubscriptionsProps, ArticleAuthor$1 as ArticleAuthor, ArticleCategory$1 as ArticleCategory, ArticleContent$1 as ArticleContent, ArticleDate$1 as ArticleDate, ArticleExcerpt$1 as ArticleExcerpt, ArticleImage$1 as ArticleImage, ArticleList$1 as ArticleList, ArticlePagination$1 as ArticlePagination, ArticleReadMore$1 as ArticleReadMore, ArticleTag$1 as ArticleTag, ArticleTitle$1 as ArticleTitle, BasicHeader, BestBuyFulfillment$1 as BestBuyFulfillment, type BestBuyFulfillmentProps, BfSizeChartSizeGuide$1 as BfSizeChartSizeGuide, type BfSizeChartSizeGuideProps, BirdChime$1 as BirdChime, type BirdChimeProps, BloyRewardsProgramLoyalty$1 as BloyRewardsProgramLoyalty, type BloyRewardsProgramLoyaltyProps, Bogos$1 as Bogos, type BogosProps, BoldProductOptions$1 as BoldProductOptions, type BoldProductOptionsProps, BoldSubscriptions$1 as BoldSubscriptions, type BoldSubscriptionsProps, BonLoyaltyRewardsReferrals$1 as BonLoyaltyRewardsReferrals, type BonLoyaltyRewardsReferralsProps, BoostAISearchDiscovery$1 as BoostAISearchDiscovery, type BoostAISearchDiscoveryProps, Breadcrumb$1 as Breadcrumb, Breadcrumb$1 as BreadcrumbProps, Bundler$1 as Bundler, type BundlerProps, Button$2 as Button, type ButtonProps, CONTINUE_SELLING_WHEN_OUT_OF_STOCK, CSSCode$1 as CSSCode, type CSSCodeProps, type CalloutBoxProps, type CalloutTextProps, Carousel$2 as Carousel, CarouselItem$2 as CarouselItem, type CarouselItemProps, type CarouselItemProps$1 as CarouselItemPropsV3, CarouselItem$3 as CarouselItemV3, type CarouselProps, type CarouselProps$1 as CarouselPropsV3, type CarouselSettingProps, type CarouselSettingProps$1 as CarouselSettingPropsV3, type CarouselStyleProps, type CarouselStyleProps$1 as CarouselStylePropsV3, Carousel$3 as CarouselV3, Cart, CartCheckout, CartDiscount, CartLineAttribute, CartLineImage, CartLinePrice, CartLineVariant, CartList, CartOrderNote, type CartProps, CartTotalItem, CartTotalPrice, CheckoutNow, CleanSizeCharts$1 as CleanSizeCharts, type CleanSizeChartsProps, Column$1 as Col, type ColProps, CollectionBanner$1 as CollectionBanner, type CollectionBannerProps, CollectionDescription$1 as CollectionDescription, type CollectionDescriptionProps, CollectionPaginator$1 as CollectionPaginator, type CollectionPaginatorProps, CollectionTitle$1 as CollectionTitle, type CollectionTitleProps, CollectionToolbar$1 as CollectionToolbar, type CollectionToolbarProps, ContactForm$1 as ContactForm, Countdown$1 as Countdown, type CountdownProps, Coupon$1 as Coupon, CouponList, type CouponProps, CrossSellCartUpsell$1 as CrossSellCartUpsell, type CrossSellCartUpsellProps, CustomProductOptionsVariant$1 as CustomProductOptionsVariant, type CustomProductOptionsVariantProps, DEFAULT_FONT_SIZE, DEFAULT_HIGHLIGHT_TAG, DEFAULT_PROGRESS_BAR_HEIGHT, DEFAULT_QUANTITY_TEMPLATE, DEFAULT_RANGE_STEP, DEFAULT_REMAINING_PERCENT, DEFAULT_REMAINING_QUANTITY, DEFAULT_SCARCITY_THRESHOLD, type DataVideoType, DealeasyVolumeDiscounts$1 as DealeasyVolumeDiscounts, type DealeasyVolumeDiscountsProps, DesktopMenu, Dialog$1 as Dialog, DiscountInput, DiscountyBulkDiscountSales$1 as DiscountyBulkDiscountSales, type DiscountyBulkDiscountSalesProps, DynamicCheckout$1 as DynamicCheckout, type DynamicCheckoutProps, ELEMENT_Z_INDEX, EasifyProductOptions$1 as EasifyProductOptions, type EasifyProductOptionsProps, EasyBundleBuilderSkailama$1 as EasyBundleBuilderSkailama, type EasyBundleBuilderSkailamaProps, EasySell as EasySellCOD, type EasySellCODProps, EcoboostifyShoppableReelUgc$1 as EcoboostifyShoppableReelUgc, type EcoboostifyShoppableReelUgcProps, EcomsendBackInStockAlert$1 as EcomsendBackInStockAlert, type EcomsendBackInStockAlertProps, EssentialAnnouncementBar$1 as EssentialAnnouncementBar, type EssentialAnnouncementBarProps, EssentialCountdownTimerBar$1 as EssentialCountdownTimerBar, type EssentialCountdownTimerBarProps, EstimateDate$1 as EstimateDate, type EstimateDateProps, EstimatedDeliveryDatePlus$1 as EstimatedDeliveryDatePlus, type EstimatedDeliveryDatePlusProps, FastBundleBundlesDiscounts$1 as FastBundleBundlesDiscounts, type FastBundleBundlesDiscountsProps, FeraReviews$1 as FeraReviews, type FeraReviewsProps, FileUpload$1 as FileUpload, type FileUploadProps, FirePush$1 as FirePush, type FirePushProps, FlyBundlesUpsellsFbt$1 as FlyBundlesUpsellsFbt, type FlyBundlesUpsellsFbtProps, FordeerProductLabels$1 as FordeerProductLabels, type FordeerProductLabelsProps, FormCheckbox, type FormCheckboxProps, FormDropdown$1 as FormDropdown, type FormDropdownProps, FormEmail$1 as FormEmail, type FormEmailProps, FormTextArea as FormTextarea, FrequentlyBoughtTogether$1 as FrequentlyBoughtTogether, type FrequentlyBoughtTogetherProps, GloColorSwatchvariantImage$1 as GloColorSwatchvariantImage, type GloColorSwatchvariantImageProps, GloboProductOptionsVariant$1 as GloboProductOptionsVariant, type GloboProductOptionsVariantProps, GoogleReviewsByReputon$1 as GoogleReviewsByReputon, type GoogleReviewsByReputonProps, Growave$1 as Growave, type GrowaveProps, Header, type HeaderProps, Heading$1 as Heading, type HeadingProps, HeroBanner$1 as HeroBanner, type HeroBannerProps, HextomCountdownTimerBar$1 as HextomCountdownTimerBar, type HextomCountdownTimerBarProps, HextomFreeShippingBar$1 as HextomFreeShippingBar, type HextomFreeShippingBarProps, HulkFormBuilder$1 as HulkFormBuilder, type HulkFormBuilderProps, HulkProductOptions$1 as HulkProductOptions, type HulkProductOptionsProps, Icon$1 as Icon, IconList$1 as IconList, IconListHoz$1 as IconListHoz, type IconListHozProps, IconListItem$1 as IconListItem, IconListHozItem as IconListItemHoz, type IconListItemProps$1 as IconListItemProps, type IconListProps$1 as IconListProps, IconListV2$1 as IconListV2, type IconProps, Image$1 as Image, ImageComparison$1 as ImageComparison, type ImageComparisonItem, ImageDetection, type ImageDetectionProps, type ImageProps, type ImgProps, InfiniteOptions$1 as InfiniteOptions, type InfiniteOptionsProps, Input, type InputProps, Instafeed$1 as Instafeed, type InstafeedProps, InstantJudgemeReviews, InstantKlaviyo, InstantLooxReviews, InstantYotpoLoyalty, InstasellShoppableInstagram$1 as InstasellShoppableInstagram, type InstasellShoppableInstagramProps, JudgemeReviews$1 as JudgemeReviews, type JudgemeReviewsProps, JunipProductReviewsUgc$1 as JunipProductReviewsUgc, type JunipProductReviewsUgcProps, KachingBundles$1 as KachingBundles, type KachingBundlesProps, KachingSubscriptionsApp$1 as KachingSubscriptionsApp, type KachingSubscriptionsAppProps, KingProductOptions$1 as KingProductOptions, type KingProductOptionsProps, KiteFreeGiftDiscount$1 as KiteFreeGiftDiscount, type KiteFreeGiftDiscountProps, KlarnaMessaging$1 as KlarnaMessaging, type KlarnaMessagingProps, Klaviyo$1 as Klaviyo, type KlaviyoProps, KoalaBundleQuantityDiscount$1 as KoalaBundleQuantityDiscount, type KoalaBundleQuantityDiscountProps, LaiProductReviews$1 as LaiProductReviews, type LaiProductReviewsProps, Line$2 as Line, type LineProps, Link$1 as Link, type LinkProps, LoloyalLoyaltyReferrals$1 as LoloyalLoyaltyReferrals, type LoloyalLoyaltyReferralsProps, LoopSubscriptions$1 as LoopSubscriptions, type LoopSubscriptionsProps, LooxReviews$1 as LooxReviews, type LooxReviewsProps, MAX_PROGRESS_BAR_HEIGHT, MAX_REMAINING_PERCENT, MIN_PROGRESS_BAR_HEIGHT, MIN_REMAINING_PERCENT, MIN_REMAINING_QUANTITY, Marquee$1 as Marquee, _default$4 as MarqueeItem, type MarqueeItemProps, type MarqueeProps, MaxbundleProductBundles$1 as MaxbundleProductBundles, type MaxbundleProductBundlesProps, MbcBundleVolumeDiscount$1 as MbcBundleVolumeDiscount, type MbcBundleVolumeDiscountProps, Menu, type MenuProps, MobileMenu, Modal, ModernHeader, MyappgurusProductReviews$1 as MyappgurusProductReviews, type MyappgurusProductReviewsProps, NO_PRODUCT_LEFT, Newsletter$1 as Newsletter, type NewsletterProps, Notify as Notice, type NotificationAPI, type NotificationConfig, NotifyBackInStockPreOrder$1 as NotifyBackInStockPreOrder, type NotifyBackInStockPreOrderProps, OUT_OF_STOCK, type ObjectFit$1 as ObjectFit, OkendoReviewsLoyalty$1 as OkendoReviewsLoyalty, type OkendoReviewsLoyaltyProps, Omnisend$1 as Omnisend, type OmnisendProps, Opinew$1 as Opinew, type OpinewProps, Pagination, type PaginationProps, ParcelPanel$1 as ParcelPanel, type ParcelPanelProps, PickyStory$1 as PickyStory, type PickyStoryProps, PostPurchaseAcceptButton, PostPurchaseAdvancedList, PostPurchaseAdvancedListItem, type PostPurchaseAdvancedListProps, Button$1 as PostPurchaseButton, type PostPurchaseButtonProps, CalloutBox as PostPurchaseCalloutBox, CalloutText as PostPurchaseCalloutText, PostPurchaseCountdownTimer, type PostPurchaseCountdownTimerProps, PostPurchaseHeading, PostPurchaseImage, type PostPurchaseImageProps, Line$1 as PostPurchaseLine, type PostPurchaseLineProps, Link as PostPurchaseLink, type PostPurchaseLinkProps, PostPurchaseProductDescription, type PostPurchaseProductDescriptionProps, PostPurchaseProductDiscountTag, type PostPurchaseProductDiscountTagProps, PostPurchaseProductImages, type PostPurchaseProductImagesProps, PostPurchaseProductOffer, type PostPurchaseProductOfferProps$1 as PostPurchaseProductOfferProps, PostPurchaseProductPrice, PostPurchaseProductPriceBreakdown, type PostPurchaseProductPriceBreakdownProps, type PostPurchaseProductPriceProps, PostPurchaseProductQuantity, type PostPurchaseProductQuantityProps, PostPurchaseProductTitle, type PostPurchaseProductTitleProps, PostPurchaseProductVariants, type PostPurchaseProductVariantsProps, Text$2 as PostPurchaseText, type PostPurchaseTextProps, PowerfulContactFormBuilder$1 as PowerfulContactFormBuilder, type PowerfulContactFormBuilderProps, PreorderNowPreOrderPq$1 as PreorderNowPreOrderPq, type PreorderNowPreOrderPqProps, PreorderNowWodPresale$1 as PreorderNowWodPresale, type PreorderNowWodPresaleProps, Product$1 as Product, ProductBadge$1 as ProductBadge, type ProductBadgeProps, ProductBundleDiscount$1 as ProductBundleDiscount, ProductBundleDiscountItem$1 as ProductBundleDiscountItem, type ProductBundleDiscountProps, type ProductBundleItemDiscountProps, ProductButton$1 as ProductButton, type ProductButtonProps, ProductDescription$1 as ProductDescription, type ProductDescriptionProps, ProductImages$3 as ProductImages, type ProductImagesProps, ProductImagesV2, ProductImagesV3, ProductList$2 as ProductList, type ProductListProps, type ProductListProps$1 as ProductListPropsV3, ProductList$3 as ProductListV3, ProductOptionsCustomizer$1 as ProductOptionsCustomizer, type ProductOptionsCustomizerProps, ProductOptionsVariantOption$1 as ProductOptionsVariantOption, type ProductOptionsVariantOptionProps, ProductPrice$1 as ProductPrice, type ProductPriceProps, type ProductPropertiesProps, ProductProperties$1 as ProductPropertyInput, type ProductProps, ProductQuantity$1 as ProductQuantity, type ProductQuantityProps, QuickView as ProductQuickView, ProductReviews$1 as ProductReviews, type ProductReviewsProps, ProductSku$1 as ProductSku, ProductTag$1 as ProductTag, type ProductTagProps, ProductTitle$1 as ProductTitle, type ProductTitleProps, ProductVariants$1 as ProductVariants, type ProductVariantsProps, ProductVendor$1 as ProductVendor, ProductViewMore$1 as ProductViewMore, type ProductViewMoreProps, PumperBundlesVolumeDiscount$1 as PumperBundlesVolumeDiscount, type PumperBundlesVolumeDiscountProps, PushOwl$1 as PushOwl, type PushOwlProps, QUANTITY_SOURCE, QikifyUpsell$1 as QikifyUpsell, type QikifyUpsellProps, REGEX_PAGE_TYPE, Radio, RapiBundleQuantityBreaks$1 as RapiBundleQuantityBreaks, type RapiBundleQuantityBreaksProps, RechargeSubscriptions$1 as RechargeSubscriptions, type RechargeSubscriptionsProps, RecurpaySubscriptionApp$1 as RecurpaySubscriptionApp, type RecurpaySubscriptionAppProps, Releasit$1 as Releasit, type ReleasitProps, RequestQuoteHidePrice$1 as RequestQuoteHidePrice, type RequestQuoteHidePriceProps, ReviewxpoProductReviewsApp$1 as ReviewxpoProductReviewsApp, type ReviewxpoProductReviewsAppProps, Rivyo$1 as Rivyo, type RivyoProps, Root$1 as Root, type RootProps$2 as RootProps, Row$1 as Row, type RowProps, Ryviu$1 as Ryviu, type RyviuProps, SealSubscriptions$1 as SealSubscriptions, type SealSubscriptionsProps, Section$1 as Section, SegunoEmailMarketing$1 as SegunoEmailMarketing, type SegunoEmailMarketingProps, Select, Selleasy$1 as Selleasy, type SelleasyProps, SeoantTrustBadgesIcon$1 as SeoantTrustBadgesIcon, type SeoantTrustBadgesIconProps, ShopPayButton$1 as ShopPayButton, type ShopPayButtonProps, ShopPayInstallments$1 as ShopPayInstallments, ShopifyForms$1 as ShopifyForms, type ShopifyFormsProps, ShopifySubscriptions$1 as ShopifySubscriptions, type ShopifySubscriptionsProps, SimpleBundlesKits$1 as SimpleBundlesKits, type SimpleBundlesKitsProps, SkioSubscriptionsYcS20$1 as SkioSubscriptionsYcS20, type SkioSubscriptionsYcS20Props, type SkuProps, SmartSearchBarAndFilters$1 as SmartSearchBarAndFilters, type SmartSearchBarAndFiltersProps, SproutPlantTreesGrowSales$1 as SproutPlantTreesGrowSales, type SproutPlantTreesGrowSalesProps, Stamped$1 as Stamped, type StampedProps, StellarDeliveryDatePickup$1 as StellarDeliveryDatePickup, type StellarDeliveryDatePickupProps, Sticky$1 as Sticky, StockCounter$1 as StockCounter, SubifySubscriptionsApp$1 as SubifySubscriptionsApp, type SubifySubscriptionsAppProps, SubmitButton$1 as SubmitButton, type SubmitButtonProps, TabItem$1 as TabItem, type TabItemProps, Tabs$1 as Tabs, type TabsProps, TagembedSocialPostReview$1 as TagembedSocialPostReview, type TagembedSocialPostReviewProps, TagshopShoppableVideosUgc$1 as TagshopShoppableVideosUgc, type TagshopShoppableVideosUgcProps, TeeinblueProductPersonalizer$1 as TeeinblueProductPersonalizer, type TeeinblueProductPersonalizerProps, Text$1 as Text, type TextAreaProps, TextField$1 as TextField, type TextFieldProps, TextInput$1 as TextInput, type TextInputProps, type TextProps, TextArea as Textarea, type TextareaProps, ThirdPartySlot$1 as ThirdPartySlot, TrustBadgesBear$1 as TrustBadgesBear, type TrustBadgesBearProps, TrustMe$1 as TrustMe, type TrustMeProps, TrustedsiteTrustBadges$1 as TrustedsiteTrustBadges, type TrustedsiteTrustBadgesProps, Trustoo$1 as Trustoo, type TrustooProps, TrustreviewsProductReviews$1 as TrustreviewsProductReviews, type TrustreviewsProductReviewsProps, TrustshopProductReviews$1 as TrustshopProductReviews, type TrustshopProductReviewsProps, UltimateSalesBoost$1 as UltimateSalesBoost, type UltimateSalesBoostProps, UnlimitedBundlesDiscounts$1 as UnlimitedBundlesDiscounts, type UnlimitedBundlesDiscountsProps, UppromoteAffiliateMarketing$1 as UppromoteAffiliateMarketing, type UppromoteAffiliateMarketingProps, type VendorProps, Video$1 as Video, Vitals$1 as Vitals, type VitalsProps, WhatmoreShoppableVideosreel$1 as WhatmoreShoppableVideosreel, type WhatmoreShoppableVideosreelProps, WideBundle$1 as WideBundle, type WideBundleProps, Wiser$1 as Wiser, type WiserProps, WishlistKing$1 as WishlistKing, type WishlistKingProps, WishlistPlus$1 as WishlistPlus, type WishlistPlusProps, YotpoLoyalty, type YotpoLoyaltyProps, YotpoReviews$1 as YotpoReviews, type YotpoReviewsProps, accordionSetting, articleListSetting, bannerSetting, breadcrumbSetting, _default$2 as builderComponent, buttonSetting, carouselSetting, carouselSettingV3, cartSetting, checkIsOpenPopup, checkIsScrollToTop, codeSetting, collectionSetting, _default$1 as componentSettings, contactFormSetting, convertSizeToWidth, convertUnitToNumber, countdownSetting, couponSetting, dialogSetting, estimateDeliverySetting, filterTruthyObject, filterTruthyStyles, getAllHrefFromString, getDisplayStyle, getDynamicSourceLocales, getInlineCss, getInsertLinkData, getLinkArticle, getLinkData, getLiquidInitData, getLiquidTextContent, getSettingPreloadData, getStaticLocale, getTextDisplayData, gridSetting, handleClickLink, headerSetting, headingSetting, iconListHozSetting, iconListSetting, iconListSettingV2, iconSetting, imageComparisonSetting, imageDetectionSetting, imageSetting, inputSetting, isEmptyObject, isHexTransparent, isLinkedToSalesPage, isShopifyDomain, isTransparentColor, isTransparentRGBA, lineSetting, linkSetting, index_liquid as liquidComponents, marqueeSetting, menuSetting, modalSetting, _default$3 as nextComponent, normalizeMailto, openConfirm, paginationSetting, postPurchaseAdvancedListSetting, postPurchaseButtonSetting, postPurchaseCalloutBoxSetting, postPurchaseCountdownTimerSetting, postPurchaseImageSetting, postPurchaseLineSetting, postPurchaseLinkSetting, postPurchaseProduct1Col, postPurchaseProduct2Col, postPurchaseProductDefault, postPurchaseProductSetting, _default as postPurchaseSettings, postPurchaseTextSetting, productSetting, radioSetting, replaceAllHrefFromString, replaceLinkData, selectSetting, shopPayInstallmentSetting, stickySetting, stockCounterSetting, tabSetting, textSetting, textareaSetting, thirdPartyInstantSetting, thirdPartySetting, thirdPartySlotSetting, transformHighlighTag, transformNumberTag, useNotification, videoSetting, youtubeShortsRegex };
7993
+ export { Accordion$1 as Accordion, AccordionItem$1 as AccordionItem, type AccordionItemProps, type AccordionProps, AftershipEmailMarketingsms$1 as AftershipEmailMarketingsms, type AftershipEmailMarketingsmsProps, AirProductReviewsAppUgc$1 as AirProductReviewsAppUgc, type AirProductReviewsAppUgcProps, AliReviews$1 as AliReviews, type AliReviewsProps, AlsoBoughtCbb$1 as AlsoBoughtCbb, type AlsoBoughtCbbProps, AovBundlesVolumeDiscounts$1 as AovBundlesVolumeDiscounts, type AovBundlesVolumeDiscountsProps, AovFreeGiftBuyXGetYBogo$1 as AovFreeGiftBuyXGetYBogo, type AovFreeGiftBuyXGetYBogoProps, AppointmentBookingCowlendar$1 as AppointmentBookingCowlendar, type AppointmentBookingCowlendarProps, AppstleBundlesDiscounts$1 as AppstleBundlesDiscounts, type AppstleBundlesDiscountsProps, AppstleSubscriptions$1 as AppstleSubscriptions, type AppstleSubscriptionsProps, ArticleAuthor$1 as ArticleAuthor, ArticleCategory$1 as ArticleCategory, ArticleContent$1 as ArticleContent, ArticleDate$1 as ArticleDate, ArticleExcerpt$1 as ArticleExcerpt, ArticleImage$1 as ArticleImage, ArticleList$1 as ArticleList, ArticlePagination$1 as ArticlePagination, ArticleReadMore$1 as ArticleReadMore, ArticleTag$1 as ArticleTag, ArticleTitle$1 as ArticleTitle, BasicHeader, BestBuyFulfillment$1 as BestBuyFulfillment, type BestBuyFulfillmentProps, BfSizeChartSizeGuide$1 as BfSizeChartSizeGuide, type BfSizeChartSizeGuideProps, BirdChime$1 as BirdChime, type BirdChimeProps, BloyRewardsProgramLoyalty$1 as BloyRewardsProgramLoyalty, type BloyRewardsProgramLoyaltyProps, Bogos$1 as Bogos, type BogosProps, BoldProductOptions$1 as BoldProductOptions, type BoldProductOptionsProps, BoldSubscriptions$1 as BoldSubscriptions, type BoldSubscriptionsProps, BonLoyaltyRewardsReferrals$1 as BonLoyaltyRewardsReferrals, type BonLoyaltyRewardsReferralsProps, BoostAISearchDiscovery$1 as BoostAISearchDiscovery, type BoostAISearchDiscoveryProps, Breadcrumb$1 as Breadcrumb, Breadcrumb$1 as BreadcrumbProps, Bundler$1 as Bundler, type BundlerProps, Button$2 as Button, type ButtonProps, CONTINUE_SELLING_WHEN_OUT_OF_STOCK, CSSCode$1 as CSSCode, type CSSCodeProps, type CalloutBoxProps, type CalloutTextProps, Carousel$2 as Carousel, CarouselItem$2 as CarouselItem, type CarouselItemProps, type CarouselItemProps$1 as CarouselItemPropsV3, CarouselItem$3 as CarouselItemV3, type CarouselProps, type CarouselProps$1 as CarouselPropsV3, type CarouselSettingProps, type CarouselSettingProps$1 as CarouselSettingPropsV3, type CarouselStyleProps, type CarouselStyleProps$1 as CarouselStylePropsV3, Carousel$3 as CarouselV3, Cart, CartCheckout, CartDiscount, CartLineAttribute, CartLineImage, CartLinePrice, CartLineVariant, CartList, CartOrderNote, type CartProps, CartTotalItem, CartTotalPrice, CheckoutNow, CleanSizeCharts$1 as CleanSizeCharts, type CleanSizeChartsProps, Column$1 as Col, type ColProps, CollectionBanner$1 as CollectionBanner, type CollectionBannerProps, CollectionDescription$1 as CollectionDescription, type CollectionDescriptionProps, CollectionPaginator$1 as CollectionPaginator, type CollectionPaginatorProps, CollectionTitle$1 as CollectionTitle, type CollectionTitleProps, CollectionToolbar$1 as CollectionToolbar, type CollectionToolbarProps, ContactForm$1 as ContactForm, Countdown$1 as Countdown, type CountdownProps, Coupon$1 as Coupon, CouponList, type CouponProps, CrossSellCartUpsell$1 as CrossSellCartUpsell, type CrossSellCartUpsellProps, CustomProductOptionsVariant$1 as CustomProductOptionsVariant, type CustomProductOptionsVariantProps, DEFAULT_FONT_SIZE, DEFAULT_HIGHLIGHT_TAG, DEFAULT_PROGRESS_BAR_HEIGHT, DEFAULT_QUANTITY_TEMPLATE, DEFAULT_RANGE_STEP, DEFAULT_REMAINING_PERCENT, DEFAULT_REMAINING_QUANTITY, DEFAULT_SCARCITY_THRESHOLD, type DataVideoType, DealeasyVolumeDiscounts$1 as DealeasyVolumeDiscounts, type DealeasyVolumeDiscountsProps, DesktopMenu, Dialog$1 as Dialog, DiscountInput, DiscountyBulkDiscountSales$1 as DiscountyBulkDiscountSales, type DiscountyBulkDiscountSalesProps, DynamicCheckout$1 as DynamicCheckout, type DynamicCheckoutProps, ELEMENT_Z_INDEX, EasifyProductOptions$1 as EasifyProductOptions, type EasifyProductOptionsProps, EasyBundleBuilderSkailama$1 as EasyBundleBuilderSkailama, type EasyBundleBuilderSkailamaProps, EasySell as EasySellCOD, type EasySellCODProps, EcoboostifyShoppableReelUgc$1 as EcoboostifyShoppableReelUgc, type EcoboostifyShoppableReelUgcProps, EcomsendBackInStockAlert$1 as EcomsendBackInStockAlert, type EcomsendBackInStockAlertProps, EssentialAnnouncementBar$1 as EssentialAnnouncementBar, type EssentialAnnouncementBarProps, EssentialCountdownTimerBar$1 as EssentialCountdownTimerBar, type EssentialCountdownTimerBarProps, EstimateDate$1 as EstimateDate, type EstimateDateProps, EstimatedDeliveryDatePlus$1 as EstimatedDeliveryDatePlus, type EstimatedDeliveryDatePlusProps, FastBundleBundlesDiscounts$1 as FastBundleBundlesDiscounts, type FastBundleBundlesDiscountsProps, FeraReviews$1 as FeraReviews, type FeraReviewsProps, FileUpload$1 as FileUpload, type FileUploadProps, FirePush$1 as FirePush, type FirePushProps, FlyBundlesUpsellsFbt$1 as FlyBundlesUpsellsFbt, type FlyBundlesUpsellsFbtProps, FordeerProductLabels$1 as FordeerProductLabels, type FordeerProductLabelsProps, FormCheckbox, type FormCheckboxProps, FormDropdown$1 as FormDropdown, type FormDropdownProps, FormEmail$1 as FormEmail, type FormEmailProps, FormTextArea as FormTextarea, FrequentlyBoughtTogether$1 as FrequentlyBoughtTogether, type FrequentlyBoughtTogetherProps, GloColorSwatchvariantImage$1 as GloColorSwatchvariantImage, type GloColorSwatchvariantImageProps, GloboProductOptionsVariant$1 as GloboProductOptionsVariant, type GloboProductOptionsVariantProps, GoogleReviewsByReputon$1 as GoogleReviewsByReputon, type GoogleReviewsByReputonProps, Growave$1 as Growave, type GrowaveProps, Header, type HeaderProps, Heading$1 as Heading, type HeadingProps, HeroBanner$1 as HeroBanner, type HeroBannerProps, HextomCountdownTimerBar$1 as HextomCountdownTimerBar, type HextomCountdownTimerBarProps, HextomFreeShippingBar$1 as HextomFreeShippingBar, type HextomFreeShippingBarProps, HulkFormBuilder$1 as HulkFormBuilder, type HulkFormBuilderProps, HulkProductOptions$1 as HulkProductOptions, type HulkProductOptionsProps, Icon$1 as Icon, IconList$1 as IconList, IconListHoz$1 as IconListHoz, type IconListHozProps, IconListItem$1 as IconListItem, IconListHozItem as IconListItemHoz, type IconListItemProps$1 as IconListItemProps, type IconListProps$1 as IconListProps, IconListV2$1 as IconListV2, type IconProps, Image$1 as Image, ImageComparison$1 as ImageComparison, type ImageComparisonItem, ImageDetection, type ImageDetectionProps, type ImageProps, type ImgProps, InfiniteOptions$1 as InfiniteOptions, type InfiniteOptionsProps, Input, type InputProps, Instafeed$1 as Instafeed, type InstafeedProps, InstantJudgemeReviews, InstantKlaviyo, InstantLooxReviews, InstantYotpoLoyalty, InstasellShoppableInstagram$1 as InstasellShoppableInstagram, type InstasellShoppableInstagramProps, JudgemeReviews$1 as JudgemeReviews, type JudgemeReviewsProps, JunipProductReviewsUgc$1 as JunipProductReviewsUgc, type JunipProductReviewsUgcProps, KachingBundles$1 as KachingBundles, type KachingBundlesProps, KachingSubscriptionsApp$1 as KachingSubscriptionsApp, type KachingSubscriptionsAppProps, KingProductOptions$1 as KingProductOptions, type KingProductOptionsProps, KiteFreeGiftDiscount$1 as KiteFreeGiftDiscount, type KiteFreeGiftDiscountProps, KlarnaMessaging$1 as KlarnaMessaging, type KlarnaMessagingProps, Klaviyo$1 as Klaviyo, type KlaviyoProps, KoalaBundleQuantityDiscount$1 as KoalaBundleQuantityDiscount, type KoalaBundleQuantityDiscountProps, LaiProductReviews$1 as LaiProductReviews, type LaiProductReviewsProps, Line$2 as Line, type LineProps, Link$1 as Link, type LinkProps, LoloyalLoyaltyReferrals$1 as LoloyalLoyaltyReferrals, type LoloyalLoyaltyReferralsProps, LoopSubscriptions$1 as LoopSubscriptions, type LoopSubscriptionsProps, LooxReviews$1 as LooxReviews, type LooxReviewsProps, MAX_PROGRESS_BAR_HEIGHT, MAX_REMAINING_PERCENT, MIN_PROGRESS_BAR_HEIGHT, MIN_REMAINING_PERCENT, MIN_REMAINING_QUANTITY, Marquee$1 as Marquee, _default$4 as MarqueeItem, type MarqueeItemProps, type MarqueeProps, MaxbundleProductBundles$1 as MaxbundleProductBundles, type MaxbundleProductBundlesProps, MbcBundleVolumeDiscount$1 as MbcBundleVolumeDiscount, type MbcBundleVolumeDiscountProps, Menu, type MenuProps, MobileMenu, Modal, ModernHeader, MyappgurusProductReviews$1 as MyappgurusProductReviews, type MyappgurusProductReviewsProps, NO_PRODUCT_LEFT, Newsletter$1 as Newsletter, type NewsletterProps, Notify as Notice, type NotificationAPI, type NotificationConfig, NotifyBackInStockPreOrder$1 as NotifyBackInStockPreOrder, type NotifyBackInStockPreOrderProps, OUT_OF_STOCK, type ObjectFit$1 as ObjectFit, OkendoReviewsLoyalty$1 as OkendoReviewsLoyalty, type OkendoReviewsLoyaltyProps, Omnisend$1 as Omnisend, type OmnisendProps, Opinew$1 as Opinew, type OpinewProps, Pagination, type PaginationProps, ParcelPanel$1 as ParcelPanel, type ParcelPanelProps, PickyStory$1 as PickyStory, type PickyStoryProps, PostPurchaseAcceptButton, PostPurchaseAdvancedList, PostPurchaseAdvancedListItem, type PostPurchaseAdvancedListProps, Button$1 as PostPurchaseButton, type PostPurchaseButtonProps, CalloutBox as PostPurchaseCalloutBox, CalloutText as PostPurchaseCalloutText, PostPurchaseCountdownTimer, type PostPurchaseCountdownTimerProps, PostPurchaseHeading, PostPurchaseImage, type PostPurchaseImageProps, Line$1 as PostPurchaseLine, type PostPurchaseLineProps, Link as PostPurchaseLink, type PostPurchaseLinkProps, PostPurchaseProductDescription, type PostPurchaseProductDescriptionProps, PostPurchaseProductDiscountTag, type PostPurchaseProductDiscountTagProps, PostPurchaseProductImages, type PostPurchaseProductImagesProps, PostPurchaseProductOffer, type PostPurchaseProductOfferProps$1 as PostPurchaseProductOfferProps, PostPurchaseProductPrice, PostPurchaseProductPriceBreakdown, type PostPurchaseProductPriceBreakdownProps, type PostPurchaseProductPriceProps, PostPurchaseProductQuantity, type PostPurchaseProductQuantityProps, PostPurchaseProductTitle, type PostPurchaseProductTitleProps, PostPurchaseProductVariants, type PostPurchaseProductVariantsProps, Text$2 as PostPurchaseText, type PostPurchaseTextProps, PowerfulContactFormBuilder$1 as PowerfulContactFormBuilder, type PowerfulContactFormBuilderProps, PreorderNowPreOrderPq$1 as PreorderNowPreOrderPq, type PreorderNowPreOrderPqProps, PreorderNowWodPresale$1 as PreorderNowWodPresale, type PreorderNowWodPresaleProps, Product$1 as Product, ProductBadge$1 as ProductBadge, type ProductBadgeProps, ProductBundleDiscount$1 as ProductBundleDiscount, ProductBundleDiscountItem$1 as ProductBundleDiscountItem, type ProductBundleDiscountProps, type ProductBundleItemDiscountProps, ProductButton$1 as ProductButton, type ProductButtonProps, ProductDescription$1 as ProductDescription, type ProductDescriptionProps, ProductImages$3 as ProductImages, type ProductImagesProps, ProductImagesV2, ProductImagesV3, ProductList$2 as ProductList, type ProductListProps, type ProductListProps$1 as ProductListPropsV3, ProductList$3 as ProductListV3, ProductOptionsCustomizer$1 as ProductOptionsCustomizer, type ProductOptionsCustomizerProps, ProductOptionsVariantOption$1 as ProductOptionsVariantOption, type ProductOptionsVariantOptionProps, ProductPrice$1 as ProductPrice, type ProductPriceProps, type ProductPropertiesProps, ProductProperties$1 as ProductPropertyInput, type ProductProps, ProductQuantity$1 as ProductQuantity, type ProductQuantityProps, QuickView as ProductQuickView, ProductReviews$1 as ProductReviews, type ProductReviewsProps, ProductSku$1 as ProductSku, ProductTag$1 as ProductTag, type ProductTagProps, ProductTitle$1 as ProductTitle, type ProductTitleProps, ProductVariants$1 as ProductVariants, type ProductVariantsProps, ProductVendor$1 as ProductVendor, ProductViewMore$1 as ProductViewMore, type ProductViewMoreProps, PumperBundlesVolumeDiscount$1 as PumperBundlesVolumeDiscount, type PumperBundlesVolumeDiscountProps, PushOwl$1 as PushOwl, type PushOwlProps, QUANTITY_SOURCE, QikifyUpsell$1 as QikifyUpsell, type QikifyUpsellProps, REGEX_PAGE_TYPE, Radio, RapiBundleQuantityBreaks$1 as RapiBundleQuantityBreaks, type RapiBundleQuantityBreaksProps, RechargeSubscriptions$1 as RechargeSubscriptions, type RechargeSubscriptionsProps, RecurpaySubscriptionApp$1 as RecurpaySubscriptionApp, type RecurpaySubscriptionAppProps, Releasit$1 as Releasit, type ReleasitProps, RequestQuoteHidePrice$1 as RequestQuoteHidePrice, type RequestQuoteHidePriceProps, ReviewxpoProductReviewsApp$1 as ReviewxpoProductReviewsApp, type ReviewxpoProductReviewsAppProps, Rivyo$1 as Rivyo, type RivyoProps, Root$1 as Root, type RootProps$2 as RootProps, Row$1 as Row, type RowProps, Ryviu$1 as Ryviu, type RyviuProps, SealSubscriptions$1 as SealSubscriptions, type SealSubscriptionsProps, Section$1 as Section, SegunoEmailMarketing$1 as SegunoEmailMarketing, type SegunoEmailMarketingProps, Select, Selleasy$1 as Selleasy, type SelleasyProps, SeoantTrustBadgesIcon$1 as SeoantTrustBadgesIcon, type SeoantTrustBadgesIconProps, ShopPayButton$1 as ShopPayButton, type ShopPayButtonProps, ShopPayInstallments$1 as ShopPayInstallments, ShopifyForms$1 as ShopifyForms, type ShopifyFormsProps, ShopifySubscriptions$1 as ShopifySubscriptions, type ShopifySubscriptionsProps, SimpleBundlesKits$1 as SimpleBundlesKits, type SimpleBundlesKitsProps, SkioSubscriptionsYcS20$1 as SkioSubscriptionsYcS20, type SkioSubscriptionsYcS20Props, type SkuProps, SmartSearchBarAndFilters$1 as SmartSearchBarAndFilters, type SmartSearchBarAndFiltersProps, SproutPlantTreesGrowSales$1 as SproutPlantTreesGrowSales, type SproutPlantTreesGrowSalesProps, Stamped$1 as Stamped, type StampedProps, StellarDeliveryDatePickup$1 as StellarDeliveryDatePickup, type StellarDeliveryDatePickupProps, Sticky$1 as Sticky, StockCounter$1 as StockCounter, SubifySubscriptionsApp$1 as SubifySubscriptionsApp, type SubifySubscriptionsAppProps, SubmitButton$1 as SubmitButton, type SubmitButtonProps, TabItem$1 as TabItem, type TabItemProps, Tabs$1 as Tabs, type TabsProps, TagembedSocialPostReview$1 as TagembedSocialPostReview, type TagembedSocialPostReviewProps, TagshopShoppableVideosUgc$1 as TagshopShoppableVideosUgc, type TagshopShoppableVideosUgcProps, TeeinblueProductPersonalizer$1 as TeeinblueProductPersonalizer, type TeeinblueProductPersonalizerProps, Text$1 as Text, type TextAreaProps, TextField$1 as TextField, type TextFieldProps, TextInput$1 as TextInput, type TextInputProps, type TextProps, TextArea as Textarea, type TextareaProps, ThirdPartySlot$1 as ThirdPartySlot, TrustBadgesBear$1 as TrustBadgesBear, type TrustBadgesBearProps, TrustMe$1 as TrustMe, type TrustMeProps, TrustedsiteTrustBadges$1 as TrustedsiteTrustBadges, type TrustedsiteTrustBadgesProps, Trustoo$1 as Trustoo, type TrustooProps, TrustreviewsProductReviews$1 as TrustreviewsProductReviews, type TrustreviewsProductReviewsProps, TrustshopProductReviews$1 as TrustshopProductReviews, type TrustshopProductReviewsProps, UltimateSalesBoost$1 as UltimateSalesBoost, type UltimateSalesBoostProps, UnlimitedBundlesDiscounts$1 as UnlimitedBundlesDiscounts, type UnlimitedBundlesDiscountsProps, UppromoteAffiliateMarketing$1 as UppromoteAffiliateMarketing, type UppromoteAffiliateMarketingProps, type VendorProps, Video$1 as Video, Vitals$1 as Vitals, type VitalsProps, WhatmoreShoppableVideosreel$1 as WhatmoreShoppableVideosreel, type WhatmoreShoppableVideosreelProps, WideBundle$1 as WideBundle, type WideBundleProps, Wiser$1 as Wiser, type WiserProps, WishlistKing$1 as WishlistKing, type WishlistKingProps, WishlistPlus$1 as WishlistPlus, type WishlistPlusProps, YotpoLoyalty, type YotpoLoyaltyProps, YotpoReviews$1 as YotpoReviews, type YotpoReviewsProps, accordionSetting, articleListSetting, bannerSetting, breadcrumbSetting, _default$2 as builderComponent, buttonSetting, carouselSetting, carouselSettingV3, cartSetting, checkIsOpenPopup, checkIsScrollToTop, codeSetting, collectionSetting, _default$1 as componentSettings, contactFormSetting, convertSizeToWidth, convertUnitToNumber, countdownSetting, couponSetting, dialogSetting, estimateDeliverySetting, filterTruthyObject, filterTruthyStyles, getAllHrefFromString, getDisplayStyle, getDynamicSourceLocales, getInlineCss, getInsertLinkData, getLinkArticle, getLinkData, getLiquidInitData, getLiquidTextContent, getSettingPreloadData, getStaticLocale, getTextDisplayData, gridSetting, handleClickLink, headerSetting, headingSetting, iconListHozSetting, iconListSetting, iconListSettingV2, iconSetting, imageComparisonSetting, imageDetectionSetting, imageSetting, inputSetting, isEmptyObject, isHexTransparent, isLinkedToSalesPage, isShopifyDomain, isTransparentColor, isTransparentRGBA, lineSetting, linkSetting, index_liquid as liquidComponents, marqueeSetting, menuSetting, modalSetting, _default$3 as nextComponent, normalizeMailto, openConfirm, paginationSetting, postPurchaseAdvancedListSetting, postPurchaseButtonSetting, postPurchaseCalloutBoxSetting, postPurchaseCountdownTimerSetting, postPurchaseImageSetting, postPurchaseLineSetting, postPurchaseLinkSetting, postPurchaseProduct1Col, postPurchaseProduct2Col, postPurchaseProductDefault, postPurchaseProductSetting, _default as postPurchaseSettings, postPurchaseTextSetting, productSetting, radioSetting, replaceAllHrefFromString, replaceLinkData, safeSvgIcon, selectSetting, shopPayInstallmentSetting, stickySetting, stockCounterSetting, tabSetting, textSetting, textareaSetting, thirdPartyInstantSetting, thirdPartySetting, thirdPartySlotSetting, transformHighlighTag, transformNumberTag, useNotification, videoSetting, youtubeShortsRegex };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/components",
3
- "version": "12.0.0-staging.8",
3
+ "version": "12.0.0",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -26,9 +26,9 @@
26
26
  "scan-all-text": "rollup -c ./scripts/rollup.config.settings.mjs && node ./scripts/scan-all-text && node ./scripts/scan-all-text"
27
27
  },
28
28
  "devDependencies": {
29
- "@gem-sdk/core": "12.0.0-staging.8",
30
- "@gem-sdk/styles": "12.0.0-staging.0",
31
- "@gem-sdk/system": "12.0.0-staging.0",
29
+ "@gem-sdk/core": "11.2.0",
30
+ "@gem-sdk/styles": "11.2.0",
31
+ "@gem-sdk/system": "11.2.0",
32
32
  "@types/react-transition-group": "^4.4.12",
33
33
  "tsup": "^8.5.0",
34
34
  "postcss-import": "^16.1.1",