@gem-sdk/components 3.1.5 → 3.1.7
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.
- package/dist/cjs/product/components/product-list/ProductList.liquid.js +30 -22
- package/dist/cjs/product/components/product-list/common/helpers.js +1 -1
- package/dist/cjs/product/components/product-quantity/common/classes.js +1 -1
- package/dist/cjs/product/settings/product-list/configs/settings-v2.js +1 -1
- package/dist/esm/product/components/product-list/ProductList.liquid.js +32 -24
- package/dist/esm/product/components/product-list/common/helpers.js +1 -1
- package/dist/esm/product/components/product-quantity/common/classes.js +1 -1
- package/dist/esm/product/settings/product-list/configs/settings-v2.js +1 -1
- package/dist/types/index.d.ts +1 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),helpers$1=require("../../../helpers.js"),system=require("@gem-sdk/system"),ProductListCarouselLayout_liquid=require("./ProductListCarouselLayout.liquid.js"),ProductListGridLayout_liquid=require("./ProductListGridLayout.liquid.js"),styles=require("./common/styles.js"),classes=require("./common/classes.js"),helpers=require("./common/helpers.js");const ProductList=e=>{let{setting:s,styles:t,pageContext:i}=e,r=i?.pageType==="GP_FUNNEL_PAGE";if(r)return"";let{hasRelatedExclude:d,relatedExcludeTrim:a,collectionID:o,isLatestProducts:c,isGrid:l,numberOfProducts:n,productListId:u,productListHandles:g,sortedBy:p,isReverse:f,productSrc:m,productNumber:P,isSorted:$,relatedTag:h}=helpers.getDataLiquid(e),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),helpers$1=require("../../../helpers.js"),system=require("@gem-sdk/system"),ProductListCarouselLayout_liquid=require("./ProductListCarouselLayout.liquid.js"),ProductListGridLayout_liquid=require("./ProductListGridLayout.liquid.js"),styles=require("./common/styles.js"),classes=require("./common/classes.js"),helpers=require("./common/helpers.js");const ProductList=e=>{let{setting:s,styles:t,pageContext:i}=e,r=i?.pageType==="GP_FUNNEL_PAGE";if(r)return"";let{hasRelatedExclude:d,relatedExcludeTrim:a,collectionID:o,isLatestProducts:c,isGrid:l,numberOfProducts:n,productListId:u,productListHandles:g,sortedBy:p,isReverse:f,productSrc:m,productNumber:P,isSorted:$,relatedTag:h,collectionHandle:y}=helpers.getDataLiquid(e),_=()=>core.template`
|
|
2
2
|
${core.RenderIf("RelatedProduct"===m,`
|
|
3
3
|
assign relatedTag = '${h}'
|
|
4
4
|
assign assignProduct = product
|
|
@@ -95,7 +95,24 @@
|
|
|
95
95
|
assign products = products
|
|
96
96
|
endpaginate
|
|
97
97
|
`)}
|
|
98
|
-
`,
|
|
98
|
+
`,L=()=>{let e=y?`
|
|
99
|
+
assign target_collection = collections['${y}']
|
|
100
|
+
if target_collection == empty
|
|
101
|
+
for collection in collections
|
|
102
|
+
if collection.id == ${o}
|
|
103
|
+
assign target_collection = collection
|
|
104
|
+
break
|
|
105
|
+
endif
|
|
106
|
+
endfor
|
|
107
|
+
endif
|
|
108
|
+
`:`
|
|
109
|
+
for collection in collections
|
|
110
|
+
if collection.id == ${o}
|
|
111
|
+
assign target_collection = collection
|
|
112
|
+
break
|
|
113
|
+
endif
|
|
114
|
+
endfor
|
|
115
|
+
`;return core.template`
|
|
99
116
|
{%- liquid
|
|
100
117
|
assign productHandles = '${g.toString()}'| split: ','
|
|
101
118
|
assign products = null
|
|
@@ -103,18 +120,14 @@
|
|
|
103
120
|
assign productSrc = '${m}'
|
|
104
121
|
assign c = 0
|
|
105
122
|
assign limit = ${P??4}
|
|
123
|
+
|
|
106
124
|
if request.page_type == 'collection' or preview_page_type == 'collection'
|
|
107
125
|
assign target_collection = collection
|
|
108
126
|
if target_collection == empty or target_collection == null
|
|
109
127
|
if '${o.toLowerCase()}' == 'latest'
|
|
110
128
|
assign target_collection = collections | sort: 'updated_at' ${f?"| reverse":""} | first
|
|
111
129
|
else
|
|
112
|
-
|
|
113
|
-
if collection.id == ${o}
|
|
114
|
-
assign target_collection = collection
|
|
115
|
-
break
|
|
116
|
-
endif
|
|
117
|
-
endfor
|
|
130
|
+
${e}
|
|
118
131
|
endif
|
|
119
132
|
endif
|
|
120
133
|
paginate target_collection.products by ${n||4}
|
|
@@ -122,7 +135,7 @@
|
|
|
122
135
|
endpaginate
|
|
123
136
|
else
|
|
124
137
|
if productSrc == 'RelatedProduct'
|
|
125
|
-
${
|
|
138
|
+
${_()}
|
|
126
139
|
elsif productSrc == 'PickProduct'
|
|
127
140
|
unless ${c}
|
|
128
141
|
assign products = null | sort
|
|
@@ -142,12 +155,7 @@
|
|
|
142
155
|
if '${o.toLowerCase()}' == 'latest'
|
|
143
156
|
assign target_collection = collections | sort: 'updated_at' ${f?"| reverse":""} | first
|
|
144
157
|
else
|
|
145
|
-
|
|
146
|
-
if collection.id == ${o}
|
|
147
|
-
assign target_collection = collection
|
|
148
|
-
break
|
|
149
|
-
endif
|
|
150
|
-
endfor
|
|
158
|
+
${e}
|
|
151
159
|
endif
|
|
152
160
|
paginate target_collection.products by ${n||4}
|
|
153
161
|
assign products = target_collection.products ${$?p:""} ${f?"| reverse":""}
|
|
@@ -155,7 +163,7 @@
|
|
|
155
163
|
endif
|
|
156
164
|
endif
|
|
157
165
|
-%}
|
|
158
|
-
|
|
166
|
+
`},{productListWrapStyle:v,productListContentStyle:E,productListWrapAlignStyle:S}=styles.getStyle(e),{productListWrapClass:k}=classes.getClass(e),b=()=>core.template`
|
|
159
167
|
{%- if products == null -%}
|
|
160
168
|
{%- if count == 0 and ${u.length} == 0 -%}
|
|
161
169
|
{% if '${m}' == 'RelatedProduct' -%}
|
|
@@ -178,17 +186,17 @@
|
|
|
178
186
|
|
|
179
187
|
${core.RenderIf(!!t?.preloadBgImage,`${core.RenderIf(!!t?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${t?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${core.RenderIf(!!t?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${t?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${core.RenderIf(!!t?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${t?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
|
|
180
188
|
<div
|
|
181
|
-
class="${
|
|
182
|
-
style="${
|
|
189
|
+
class="${k}"
|
|
190
|
+
style="${v}"
|
|
183
191
|
>
|
|
184
|
-
<div class='gp-flex gp-w-full' style="${
|
|
192
|
+
<div class='gp-flex gp-w-full' style="${S}">
|
|
185
193
|
<div
|
|
186
|
-
style="${
|
|
194
|
+
style="${E}"
|
|
187
195
|
>
|
|
188
196
|
{%- assign gpBkProduct = product -%}
|
|
189
197
|
{%- assign gpBkProducts = products -%}
|
|
190
|
-
${
|
|
191
|
-
${
|
|
198
|
+
${L()}
|
|
199
|
+
${b()}
|
|
192
200
|
{%- assign product = gpBkProduct -%}
|
|
193
201
|
{%- assign products = gpBkProducts -%}
|
|
194
202
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var product=require("../../../helpers/product.js"),productFeaturedImage=require("../../product-images/common/productFeaturedImage.js"),helpers=require("../../../../carousel/components/dot/common/helpers.js");const getData=e=>{let{setting:t,styles:o}=e,r=t?.productSetting??{},d="RelatedProduct"===r.productSrc,c=helpers.getUpdatedDotStyle(t?.dot,t?.dotStyle),l={dotSize:{desktop:12},dotGapToCarousel:{desktop:16},arrowIconSize:{desktop:24},showWhenHover:!1,rtl:!1,...t};delete l.childItem;let
|
|
1
|
+
"use strict";var product=require("../../../helpers/product.js"),productFeaturedImage=require("../../product-images/common/productFeaturedImage.js"),helpers=require("../../../../carousel/components/dot/common/helpers.js");const getData=e=>{let{setting:t,styles:o}=e,r=t?.productSetting??{},d="RelatedProduct"===r.productSrc,c=helpers.getUpdatedDotStyle(t?.dot,t?.dotStyle),l={dotSize:{desktop:12},dotGapToCarousel:{desktop:16},arrowIconSize:{desktop:24},showWhenHover:!1,rtl:!1,...t};delete l.childItem;let a={...o,sizeSetting:{...product.getSizeSetting({adaptiveHeight:o?.adaptiveHeight,height:o?.height,fullWidth:{desktop:!0}})},spacing:o?.spacing};return delete a.backgroundColor,delete a.backgroundImage,{isRelatedProduct:d,productSetting:r,dotStyle:c,carouselConfigSetting:l,carouselConfigStyle:a}},getDataLiquid=e=>{let{setting:t,styles:o}=e,r=t?.productSetting,d=r?.relatedTag,c=r?.hasRelatedExclude,l=(d&&"collection"===d[0]?r?.relatedCollectionExclude:r?.relatedTagsExclude)??"",a=l?.split(",").map(e=>e.trim()).toString(),i=r?.productSrc??"Collection",u=r?.collectionId?.replace(PREFIX_COLLECTION_ID,"")??"latest",p=r?.productSrc==="PickProduct"&&r?.productIds?.length===0,n=o?.layout==="grid",s=productFeaturedImage.convertUnitToNumber(t?.numberOfProducts,4),g="PickProduct"===i&&r?.productIds?.length?r?.productIds.map(e=>e.replace(PREFIX_PRODUCT_ID,"")):[],I="PickProduct"===i&&r?.productHandles?.length?r?.productHandles:[],P=t?.orderBy&&t?.orderBy!=="none",h=(r?.productSrc==="Collection"||r?.productSrc==="DynamicCollection")&&P?t?.orderBy?.split("_"):"none",D=P&&h?.[0]==="TITLE"?"| sort: 'title'":"| sort: 'updated_at'",C=h?.[h.length-1]==="DESC",m=()=>"PickProduct"===i?p?4:r?.numOfSelectedProducts??4:s;return{hasRelatedExclude:c,relatedExcludeTrim:a,collectionID:u,isLatestProducts:p,isGrid:n,numberOfProducts:s,productListId:g,productListHandles:I,sortedBy:D,isReverse:C,productSrc:i,productSetting:r,isSorted:P,relatedTag:d,productNumber:m(),collectionHandle:r?.collectionHandle}},PREFIX_COLLECTION_ID="gid://shopify/Collection/",PREFIX_PRODUCT_ID="gid://shopify/Product/";exports.PREFIX_COLLECTION_ID=PREFIX_COLLECTION_ID,exports.PREFIX_PRODUCT_ID=PREFIX_PRODUCT_ID,exports.getData=getData,exports.getDataLiquid=getDataLiquid;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var core=require("@gem-sdk/core");const getInputClasses=({styles:e,borderBtn:s,inputBackgroundColor:t,textColor:o,isDisabled:l})=>{let p="gp-flex gp-w-full gp-px-1 gp-min-w-[45px] gp-shrink-[99999] gp-appearance-none gp-items-center gp-text-center gp-outline-none focus-visible:gp-shadow-none focus-visible:gp-outline-none gp-transition-all gp-duration-150 hover:gp-text-black disabled:gp-cursor-not-allowed",r=core.composeTypographyClassName(e?.typo,e?.typography),a=core.handleConvertClassColor(s),g=core.getGlobalColorStateClass("bg",t),n=core.getGlobalColorStateClass("text",o);return a&&(p+=` ${a} `),r&&(p+=` ${r} `),g&&(p+=` ${g} `),n&&(p+=` ${n} `),l&&(p+="gp-cursor-not-allowed"),{...core.composeClasses(p)}},getButtonClass=({borderBtn:e,buttonBackgroundColor:s,iconColor:t,buttonSide:o,isDisabled:l})=>{let p=`gp-flex gp-aspect-square gp-h-full disabled:gp-cursor-not-allowed ${l?"gp-cursor-not-allowed":"gp-cursor-pointer"} gp-items-center gp-justify-center gp-outline-none ${"left"===o?"gp-minus":"gp-plus"} `,r=core.handleConvertClassColor(e),a=core.getGlobalColorStateClass("bg",s),g=core.getGlobalColorStateClass("text",t);return r&&(p+=` ${r} `),a&&(p+=` ${a} `),g&&(p+=` ${g} `),{...core.composeClasses(p)}},getContainerClasses=e=>({...core.composeClasses(`quantityClass gp-relative gp-inline-flex gp-h-12 gp-w-full gp-bg-transparent gp-transition-all gp-duration-150 data-[disabled=true]:gp-opacity-60 ${e??""}`)}),getWrapperClasses=()=>({...core.composeClasses("gp-inline-flex gp-w-full gp-overflow-hidden")}),getIconWrapperClasses=()=>({...core.composeClasses("gp-inline-flex gp-items-center gp-justify-center [&>*]:gp-h-full [&>*]:gp-w-full")});exports.getButtonClass=getButtonClass,exports.getContainerClasses=getContainerClasses,exports.getIconWrapperClasses=getIconWrapperClasses,exports.getInputClasses=getInputClasses,exports.getWrapperClasses=getWrapperClasses;
|
|
1
|
+
"use strict";var core=require("@gem-sdk/core");const getInputClasses=({styles:e,borderBtn:s,inputBackgroundColor:t,textColor:o,isDisabled:l})=>{let p="gp-flex gp-w-full gp-px-1 gp-min-w-[45px] gp-shrink-[99999] gp-appearance-none gp-items-center gp-text-center gp-outline-none focus-visible:gp-shadow-none focus-visible:gp-outline-none gp-transition-all gp-duration-150 hover:gp-text-black disabled:gp-cursor-not-allowed gp-min-h-0 gp-rounded-none",r=core.composeTypographyClassName(e?.typo,e?.typography),a=core.handleConvertClassColor(s),g=core.getGlobalColorStateClass("bg",t),n=core.getGlobalColorStateClass("text",o);return a&&(p+=` ${a} `),r&&(p+=` ${r} `),g&&(p+=` ${g} `),n&&(p+=` ${n} `),l&&(p+="gp-cursor-not-allowed"),{...core.composeClasses(p)}},getButtonClass=({borderBtn:e,buttonBackgroundColor:s,iconColor:t,buttonSide:o,isDisabled:l})=>{let p=`gp-flex gp-aspect-square gp-h-full disabled:gp-cursor-not-allowed ${l?"gp-cursor-not-allowed":"gp-cursor-pointer"} gp-items-center gp-justify-center gp-outline-none ${"left"===o?"gp-minus":"gp-plus"} `,r=core.handleConvertClassColor(e),a=core.getGlobalColorStateClass("bg",s),g=core.getGlobalColorStateClass("text",t);return r&&(p+=` ${r} `),a&&(p+=` ${a} `),g&&(p+=` ${g} `),{...core.composeClasses(p)}},getContainerClasses=e=>({...core.composeClasses(`quantityClass gp-relative gp-inline-flex gp-h-12 gp-w-full gp-bg-transparent gp-transition-all gp-duration-150 data-[disabled=true]:gp-opacity-60 ${e??""}`)}),getWrapperClasses=()=>({...core.composeClasses("gp-inline-flex gp-w-full gp-overflow-hidden")}),getIconWrapperClasses=()=>({...core.composeClasses("gp-inline-flex gp-items-center gp-justify-center [&>*]:gp-h-full [&>*]:gp-w-full")});exports.getButtonClass=getButtonClass,exports.getContainerClasses=getContainerClasses,exports.getIconWrapperClasses=getIconWrapperClasses,exports.getInputClasses=getInputClasses,exports.getWrapperClasses=getWrapperClasses;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var settingsV2=require("../../../../carousel/settings/configs/settings-v2.js");const ProductListSettingsV2=[{id:"setting",controls:[{id:"productSetting",type:"product-list",label:"Select product list",default:{productSrc:"PickProduct",productIds:[],collectionId:"Latest",relatedType:"related-product",relatedTag:["collection"],hasRelatedExclude:!1}},{id:"slidesToShow",type:"input:slider",min:1,max:6,isNumber:!0,label:"Products per rows ",devices:{desktop:{default:4},tablet:{default:3},mobile:{default:2}}},{id:"numberOfProducts",type:"input:slider",min:1,max:50,label:"Number of products",isNumber:!0,default:10,ignoreMax:!0},{id:"sameHeight",label:"Enable same height",type:"select",options:[{label:"Same height",value:!0},{label:"Fit content height",value:!1}],default:!0},...settingsV2.CarouselSettingsV2Setting]},{id:"style",controls:[{id:"layout",label:"Layout",type:"layout-selector",iconViewBox:"0 0 78 52",itemPerRow:2,itemSpacing:"large",default:"grid",options:[{label:"Grid",value:"grid",iconName:"gp-grid-layout"},{label:"Slider",value:"slider",iconName:"gp-slider-layout"}]},{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,isRowWith:!0,devices:{desktop:{default:"default"}},displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0}]},{id:"height",label:"Height",type:"dropdown:input",inputType:"number",units:["px"],displayOptions:[{label:"Fit content",value:"Auto"}],devices:{}},{id:"horizontalGutter",label:"Row gap",type:"input:unit",fallbackValue:!0,min:0,units:["px","%"],devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"verticalGutter",label:"Column gap",type:"input:unit",units:["px","%"],fallbackValue:!0,min:0,devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"backgroundColor",type:"color-picker-v2",devices:{desktop:{default:"transparent"}},compoDefaultValue:{desktop:{default:"#DDDDDD"}},enableGradient:!0},{id:"backgroundImage",type:"background-image",devices:{desktop:{default:{}}},compoDefaultValue:{desktop:{default:{type:"image",image:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/background_settings.jpg",width:1200,height:480,hiddenSEO:!0},repeat:"no-repeat",size:"cover",position:{x:50,y:50},attachment:"scroll",preload:!1}}}},{id:"preloadBgImage",type:"toggle",label:"Preload",default:!1},{id:"align",label:"Align",type:"segment",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left"},{label:"Center",value:"center",type:"align",tooltip:"Align center"},{label:"Right",value:"right",type:"align",tooltip:"Align right"}],devices:{desktop:{default:"center"}}},...settingsV2.CarouselSettingsV2Style]}];exports.ProductListSettingsV2=ProductListSettingsV2;
|
|
1
|
+
"use strict";var settingsV2=require("../../../../carousel/settings/configs/settings-v2.js");const ProductListSettingsV2=[{id:"setting",controls:[{id:"productSetting",type:"product-list",label:"Select product list",default:{productSrc:"PickProduct",productIds:[],collectionId:"Latest",collectionHandle:"",relatedType:"related-product",relatedTag:["collection"],hasRelatedExclude:!1}},{id:"slidesToShow",type:"input:slider",min:1,max:6,isNumber:!0,label:"Products per rows ",devices:{desktop:{default:4},tablet:{default:3},mobile:{default:2}}},{id:"numberOfProducts",type:"input:slider",min:1,max:50,label:"Number of products",isNumber:!0,default:10,ignoreMax:!0},{id:"sameHeight",label:"Enable same height",type:"select",options:[{label:"Same height",value:!0},{label:"Fit content height",value:!1}],default:!0},...settingsV2.CarouselSettingsV2Setting]},{id:"style",controls:[{id:"layout",label:"Layout",type:"layout-selector",iconViewBox:"0 0 78 52",itemPerRow:2,itemSpacing:"large",default:"grid",options:[{label:"Grid",value:"grid",iconName:"gp-grid-layout"},{label:"Slider",value:"slider",iconName:"gp-slider-layout"}]},{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,isRowWith:!0,devices:{desktop:{default:"default"}},displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0}]},{id:"height",label:"Height",type:"dropdown:input",inputType:"number",units:["px"],displayOptions:[{label:"Fit content",value:"Auto"}],devices:{}},{id:"horizontalGutter",label:"Row gap",type:"input:unit",fallbackValue:!0,min:0,units:["px","%"],devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"verticalGutter",label:"Column gap",type:"input:unit",units:["px","%"],fallbackValue:!0,min:0,devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"backgroundColor",type:"color-picker-v2",devices:{desktop:{default:"transparent"}},compoDefaultValue:{desktop:{default:"#DDDDDD"}},enableGradient:!0},{id:"backgroundImage",type:"background-image",devices:{desktop:{default:{}}},compoDefaultValue:{desktop:{default:{type:"image",image:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/background_settings.jpg",width:1200,height:480,hiddenSEO:!0},repeat:"no-repeat",size:"cover",position:{x:50,y:50},attachment:"scroll",preload:!1}}}},{id:"preloadBgImage",type:"toggle",label:"Preload",default:!1},{id:"align",label:"Align",type:"segment",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left"},{label:"Center",value:"center",type:"align",tooltip:"Align center"},{label:"Right",value:"right",type:"align",tooltip:"Align right"}],devices:{desktop:{default:"center"}}},...settingsV2.CarouselSettingsV2Style]}];exports.ProductListSettingsV2=ProductListSettingsV2;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import a from"./ProductListCarouselLayout.liquid.js";import n from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as u}from"./common/helpers.js";let ProductList=g=>{let{setting:p,styles:f,pageContext:m}=g
|
|
1
|
+
import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import a from"./ProductListCarouselLayout.liquid.js";import n from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as u}from"./common/helpers.js";let ProductList=g=>{let{setting:p,styles:f,pageContext:m}=g,$=m?.pageType==="GP_FUNNEL_PAGE";if($)return"";let{hasRelatedExclude:P,relatedExcludeTrim:h,collectionID:_,isLatestProducts:y,isGrid:v,numberOfProducts:E,productListId:k,productListHandles:x,sortedBy:S,isReverse:b,productSrc:L,productNumber:A,isSorted:R,relatedTag:I,collectionHandle:F}=u(g),j=()=>e`
|
|
2
2
|
${s("RelatedProduct"===L,`
|
|
3
3
|
assign relatedTag = '${I}'
|
|
4
4
|
assign assignProduct = product
|
|
@@ -9,7 +9,7 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
9
9
|
assign handleAssignProduct = assignProduct.handle
|
|
10
10
|
case relatedTag
|
|
11
11
|
when 'collection'
|
|
12
|
-
assign hasRelatedExclude = ${
|
|
12
|
+
assign hasRelatedExclude = ${P}
|
|
13
13
|
if hasRelatedExclude
|
|
14
14
|
assign relatedExclude = '${h}'
|
|
15
15
|
else
|
|
@@ -63,7 +63,7 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
63
63
|
endfor
|
|
64
64
|
when 'tags'
|
|
65
65
|
assign tagsAssignProduct = assignProduct.tags
|
|
66
|
-
assign hasRelatedExclude = ${
|
|
66
|
+
assign hasRelatedExclude = ${P}
|
|
67
67
|
if hasRelatedExclude
|
|
68
68
|
assign relatedExclude = '${h}'
|
|
69
69
|
else
|
|
@@ -95,7 +95,24 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
95
95
|
assign products = products
|
|
96
96
|
endpaginate
|
|
97
97
|
`)}
|
|
98
|
-
`,
|
|
98
|
+
`,w=()=>{let s=F?`
|
|
99
|
+
assign target_collection = collections['${F}']
|
|
100
|
+
if target_collection == empty
|
|
101
|
+
for collection in collections
|
|
102
|
+
if collection.id == ${_}
|
|
103
|
+
assign target_collection = collection
|
|
104
|
+
break
|
|
105
|
+
endif
|
|
106
|
+
endfor
|
|
107
|
+
endif
|
|
108
|
+
`:`
|
|
109
|
+
for collection in collections
|
|
110
|
+
if collection.id == ${_}
|
|
111
|
+
assign target_collection = collection
|
|
112
|
+
break
|
|
113
|
+
endif
|
|
114
|
+
endfor
|
|
115
|
+
`;return e`
|
|
99
116
|
{%- liquid
|
|
100
117
|
assign productHandles = '${x.toString()}'| split: ','
|
|
101
118
|
assign products = null
|
|
@@ -103,18 +120,14 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
103
120
|
assign productSrc = '${L}'
|
|
104
121
|
assign c = 0
|
|
105
122
|
assign limit = ${A??4}
|
|
123
|
+
|
|
106
124
|
if request.page_type == 'collection' or preview_page_type == 'collection'
|
|
107
125
|
assign target_collection = collection
|
|
108
126
|
if target_collection == empty or target_collection == null
|
|
109
127
|
if '${_.toLowerCase()}' == 'latest'
|
|
110
128
|
assign target_collection = collections | sort: 'updated_at' ${b?"| reverse":""} | first
|
|
111
129
|
else
|
|
112
|
-
|
|
113
|
-
if collection.id == ${_}
|
|
114
|
-
assign target_collection = collection
|
|
115
|
-
break
|
|
116
|
-
endif
|
|
117
|
-
endfor
|
|
130
|
+
${s}
|
|
118
131
|
endif
|
|
119
132
|
endif
|
|
120
133
|
paginate target_collection.products by ${E||4}
|
|
@@ -122,7 +135,7 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
122
135
|
endpaginate
|
|
123
136
|
else
|
|
124
137
|
if productSrc == 'RelatedProduct'
|
|
125
|
-
${
|
|
138
|
+
${j()}
|
|
126
139
|
elsif productSrc == 'PickProduct'
|
|
127
140
|
unless ${y}
|
|
128
141
|
assign products = null | sort
|
|
@@ -142,12 +155,7 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
142
155
|
if '${_.toLowerCase()}' == 'latest'
|
|
143
156
|
assign target_collection = collections | sort: 'updated_at' ${b?"| reverse":""} | first
|
|
144
157
|
else
|
|
145
|
-
|
|
146
|
-
if collection.id == ${_}
|
|
147
|
-
assign target_collection = collection
|
|
148
|
-
break
|
|
149
|
-
endif
|
|
150
|
-
endfor
|
|
158
|
+
${s}
|
|
151
159
|
endif
|
|
152
160
|
paginate target_collection.products by ${E||4}
|
|
153
161
|
assign products = target_collection.products ${R?S:""} ${b?"| reverse":""}
|
|
@@ -155,7 +163,7 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
155
163
|
endif
|
|
156
164
|
endif
|
|
157
165
|
-%}
|
|
158
|
-
|
|
166
|
+
`},{productListWrapStyle:H,productListContentStyle:q,productListWrapAlignStyle:G}=c(g),{productListWrapClass:B}=l(g),T=()=>e`
|
|
159
167
|
{%- if products == null -%}
|
|
160
168
|
{%- if count == 0 and ${k.length} == 0 -%}
|
|
161
169
|
{% if '${L}' == 'RelatedProduct' -%}
|
|
@@ -178,17 +186,17 @@ import{template as e,RenderIf as s,isLocalEnv as t,baseAssetURL as i}from"@gem-s
|
|
|
178
186
|
|
|
179
187
|
${s(!!f?.preloadBgImage,`${s(!!f?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${s(!!f?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${s(!!f?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
|
|
180
188
|
<div
|
|
181
|
-
class="${
|
|
182
|
-
style="${
|
|
189
|
+
class="${B}"
|
|
190
|
+
style="${H}"
|
|
183
191
|
>
|
|
184
|
-
<div class='gp-flex gp-w-full' style="${
|
|
192
|
+
<div class='gp-flex gp-w-full' style="${G}">
|
|
185
193
|
<div
|
|
186
|
-
style="${
|
|
194
|
+
style="${q}"
|
|
187
195
|
>
|
|
188
196
|
{%- assign gpBkProduct = product -%}
|
|
189
197
|
{%- assign gpBkProducts = products -%}
|
|
190
|
-
${
|
|
191
|
-
${
|
|
198
|
+
${w()}
|
|
199
|
+
${T()}
|
|
192
200
|
{%- assign product = gpBkProduct -%}
|
|
193
201
|
{%- assign products = gpBkProducts -%}
|
|
194
202
|
</div>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getSizeSetting as t}from"../../../helpers/product.js";import{convertUnitToNumber as e}from"../../product-images/common/productFeaturedImage.js";import{getUpdatedDotStyle as o}from"../../../../carousel/components/dot/common/helpers.js";let getData=e=>{let{setting:
|
|
1
|
+
import{getSizeSetting as t}from"../../../helpers/product.js";import{convertUnitToNumber as e}from"../../product-images/common/productFeaturedImage.js";import{getUpdatedDotStyle as o}from"../../../../carousel/components/dot/common/helpers.js";let getData=e=>{let{setting:d,styles:r}=e,c=d?.productSetting??{},l="RelatedProduct"===c.productSrc,i=o(d?.dot,d?.dotStyle),a={dotSize:{desktop:12},dotGapToCarousel:{desktop:16},arrowIconSize:{desktop:24},showWhenHover:!1,rtl:!1,...d};delete a.childItem;let u={...r,sizeSetting:{...t({adaptiveHeight:r?.adaptiveHeight,height:r?.height,fullWidth:{desktop:!0}})},spacing:r?.spacing};return delete u.backgroundColor,delete u.backgroundImage,{isRelatedProduct:l,productSetting:c,dotStyle:i,carouselConfigSetting:a,carouselConfigStyle:u}},getDataLiquid=t=>{let{setting:o,styles:d}=t,r=o?.productSetting,c=r?.relatedTag,l=r?.hasRelatedExclude,i=(c&&"collection"===c[0]?r?.relatedCollectionExclude:r?.relatedTagsExclude)??"",a=i?.split(",").map(t=>t.trim()).toString(),u=r?.productSrc??"Collection",p=r?.collectionId?.replace(PREFIX_COLLECTION_ID,"")??"latest",n=r?.productSrc==="PickProduct"&&r?.productIds?.length===0,s=d?.layout==="grid",g=e(o?.numberOfProducts,4),I="PickProduct"===u&&r?.productIds?.length?r?.productIds.map(t=>t.replace(PREFIX_PRODUCT_ID,"")):[],m="PickProduct"===u&&r?.productHandles?.length?r?.productHandles:[],P=o?.orderBy&&o?.orderBy!=="none",h=(r?.productSrc==="Collection"||r?.productSrc==="DynamicCollection")&&P?o?.orderBy?.split("_"):"none",C=P&&h?.[0]==="TITLE"?"| sort: 'title'":"| sort: 'updated_at'",D=h?.[h.length-1]==="DESC",E=()=>"PickProduct"===u?n?4:r?.numOfSelectedProducts??4:g;return{hasRelatedExclude:l,relatedExcludeTrim:a,collectionID:p,isLatestProducts:n,isGrid:s,numberOfProducts:g,productListId:I,productListHandles:m,sortedBy:C,isReverse:D,productSrc:u,productSetting:r,isSorted:P,relatedTag:c,productNumber:E(),collectionHandle:r?.collectionHandle}},PREFIX_COLLECTION_ID="gid://shopify/Collection/",PREFIX_PRODUCT_ID="gid://shopify/Product/";export{PREFIX_COLLECTION_ID,PREFIX_PRODUCT_ID,getData,getDataLiquid};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{composeTypographyClassName as e,handleConvertClassColor as t,getGlobalColorStateClass as p,composeClasses as
|
|
1
|
+
import{composeTypographyClassName as e,handleConvertClassColor as t,getGlobalColorStateClass as p,composeClasses as g}from"@gem-sdk/core";let getInputClasses=({styles:n,borderBtn:l,inputBackgroundColor:s,textColor:r,isDisabled:o})=>{let a="gp-flex gp-w-full gp-px-1 gp-min-w-[45px] gp-shrink-[99999] gp-appearance-none gp-items-center gp-text-center gp-outline-none focus-visible:gp-shadow-none focus-visible:gp-outline-none gp-transition-all gp-duration-150 hover:gp-text-black disabled:gp-cursor-not-allowed gp-min-h-0 gp-rounded-none",i=e(n?.typo,n?.typography),u=t(l),c=p("bg",s),d=p("text",r);return u&&(a+=` ${u} `),i&&(a+=` ${i} `),c&&(a+=` ${c} `),d&&(a+=` ${d} `),o&&(a+="gp-cursor-not-allowed"),{...g(a)}},getButtonClass=({borderBtn:e,buttonBackgroundColor:n,iconColor:l,buttonSide:s,isDisabled:r})=>{let o=`gp-flex gp-aspect-square gp-h-full disabled:gp-cursor-not-allowed ${r?"gp-cursor-not-allowed":"gp-cursor-pointer"} gp-items-center gp-justify-center gp-outline-none ${"left"===s?"gp-minus":"gp-plus"} `,a=t(e),i=p("bg",n),u=p("text",l);return a&&(o+=` ${a} `),i&&(o+=` ${i} `),u&&(o+=` ${u} `),{...g(o)}},getContainerClasses=e=>({...g(`quantityClass gp-relative gp-inline-flex gp-h-12 gp-w-full gp-bg-transparent gp-transition-all gp-duration-150 data-[disabled=true]:gp-opacity-60 ${e??""}`)}),getWrapperClasses=()=>({...g("gp-inline-flex gp-w-full gp-overflow-hidden")}),getIconWrapperClasses=()=>({...g("gp-inline-flex gp-items-center gp-justify-center [&>*]:gp-h-full [&>*]:gp-w-full")});export{getButtonClass,getContainerClasses,getIconWrapperClasses,getInputClasses,getWrapperClasses};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{CarouselSettingsV2Setting as e,CarouselSettingsV2Style as t}from"../../../../carousel/settings/configs/settings-v2.js";let ProductListSettingsV2=[{id:"setting",controls:[{id:"productSetting",type:"product-list",label:"Select product list",default:{productSrc:"PickProduct",productIds:[],collectionId:"Latest",relatedType:"related-product",relatedTag:["collection"],hasRelatedExclude:!1}},{id:"slidesToShow",type:"input:slider",min:1,max:6,isNumber:!0,label:"Products per rows ",devices:{desktop:{default:4},tablet:{default:3},mobile:{default:2}}},{id:"numberOfProducts",type:"input:slider",min:1,max:50,label:"Number of products",isNumber:!0,default:10,ignoreMax:!0},{id:"sameHeight",label:"Enable same height",type:"select",options:[{label:"Same height",value:!0},{label:"Fit content height",value:!1}],default:!0},...e]},{id:"style",controls:[{id:"layout",label:"Layout",type:"layout-selector",iconViewBox:"0 0 78 52",itemPerRow:2,itemSpacing:"large",default:"grid",options:[{label:"Grid",value:"grid",iconName:"gp-grid-layout"},{label:"Slider",value:"slider",iconName:"gp-slider-layout"}]},{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,isRowWith:!0,devices:{desktop:{default:"default"}},displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0}]},{id:"height",label:"Height",type:"dropdown:input",inputType:"number",units:["px"],displayOptions:[{label:"Fit content",value:"Auto"}],devices:{}},{id:"horizontalGutter",label:"Row gap",type:"input:unit",fallbackValue:!0,min:0,units:["px","%"],devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"verticalGutter",label:"Column gap",type:"input:unit",units:["px","%"],fallbackValue:!0,min:0,devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"backgroundColor",type:"color-picker-v2",devices:{desktop:{default:"transparent"}},compoDefaultValue:{desktop:{default:"#DDDDDD"}},enableGradient:!0},{id:"backgroundImage",type:"background-image",devices:{desktop:{default:{}}},compoDefaultValue:{desktop:{default:{type:"image",image:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/background_settings.jpg",width:1200,height:480,hiddenSEO:!0},repeat:"no-repeat",size:"cover",position:{x:50,y:50},attachment:"scroll",preload:!1}}}},{id:"preloadBgImage",type:"toggle",label:"Preload",default:!1},{id:"align",label:"Align",type:"segment",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left"},{label:"Center",value:"center",type:"align",tooltip:"Align center"},{label:"Right",value:"right",type:"align",tooltip:"Align right"}],devices:{desktop:{default:"center"}}},...t]}];export{ProductListSettingsV2};
|
|
1
|
+
import{CarouselSettingsV2Setting as e,CarouselSettingsV2Style as t}from"../../../../carousel/settings/configs/settings-v2.js";let ProductListSettingsV2=[{id:"setting",controls:[{id:"productSetting",type:"product-list",label:"Select product list",default:{productSrc:"PickProduct",productIds:[],collectionId:"Latest",collectionHandle:"",relatedType:"related-product",relatedTag:["collection"],hasRelatedExclude:!1}},{id:"slidesToShow",type:"input:slider",min:1,max:6,isNumber:!0,label:"Products per rows ",devices:{desktop:{default:4},tablet:{default:3},mobile:{default:2}}},{id:"numberOfProducts",type:"input:slider",min:1,max:50,label:"Number of products",isNumber:!0,default:10,ignoreMax:!0},{id:"sameHeight",label:"Enable same height",type:"select",options:[{label:"Same height",value:!0},{label:"Fit content height",value:!1}],default:!0},...e]},{id:"style",controls:[{id:"layout",label:"Layout",type:"layout-selector",iconViewBox:"0 0 78 52",itemPerRow:2,itemSpacing:"large",default:"grid",options:[{label:"Grid",value:"grid",iconName:"gp-grid-layout"},{label:"Slider",value:"slider",iconName:"gp-slider-layout"}]},{id:"width",type:"dropdown:input",label:"Width",inputType:"number",units:["px","%"],hideUnit:!1,isRowWith:!0,devices:{desktop:{default:"default"}},displayOptions:[{label:"Full",value:"100%",showValue:!0},{label:"Default",value:"default",showValue:!0}]},{id:"height",label:"Height",type:"dropdown:input",inputType:"number",units:["px"],displayOptions:[{label:"Fit content",value:"Auto"}],devices:{}},{id:"horizontalGutter",label:"Row gap",type:"input:unit",fallbackValue:!0,min:0,units:["px","%"],devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"verticalGutter",label:"Column gap",type:"input:unit",units:["px","%"],fallbackValue:!0,min:0,devices:{desktop:{default:"16px"},mobile:{default:"16px"}}},{id:"backgroundColor",type:"color-picker-v2",devices:{desktop:{default:"transparent"}},compoDefaultValue:{desktop:{default:"#DDDDDD"}},enableGradient:!0},{id:"backgroundImage",type:"background-image",devices:{desktop:{default:{}}},compoDefaultValue:{desktop:{default:{type:"image",image:{src:"https://cdn.shopify.com/s/files/1/2005/9307/files/background_settings.jpg",width:1200,height:480,hiddenSEO:!0},repeat:"no-repeat",size:"cover",position:{x:50,y:50},attachment:"scroll",preload:!1}}}},{id:"preloadBgImage",type:"toggle",label:"Preload",default:!1},{id:"align",label:"Align",type:"segment",options:[{label:"Left",value:"left",type:"align",tooltip:"Align left"},{label:"Center",value:"center",type:"align",tooltip:"Align center"},{label:"Right",value:"right",type:"align",tooltip:"Align right"}],devices:{desktop:{default:"center"}}},...t]}];export{ProductListSettingsV2};
|
package/dist/types/index.d.ts
CHANGED
|
@@ -3622,6 +3622,7 @@ type OriginalSettingProps$2 = {
|
|
|
3622
3622
|
productSrc?: ProductSource;
|
|
3623
3623
|
productIds?: string[];
|
|
3624
3624
|
collectionId?: string;
|
|
3625
|
+
collectionHandle?: string;
|
|
3625
3626
|
productHandles?: string[];
|
|
3626
3627
|
numOfSelectedProducts?: number;
|
|
3627
3628
|
relatedTag?: RelatedCondition[];
|