@anker-in/headless-ui 1.0.19-temp-101301 → 1.0.19-temp-101302

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.
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var B=Object.create;var n=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var V=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var x=(e,t)=>{for(var o in t)n(e,o,{get:t[o],enumerable:!0})},d=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let l of R(t))!N.call(e,l)&&l!==o&&n(e,l,{get:()=>t[l],enumerable:!(r=H(t,l))||r.enumerable});return e};var b=(e,t,o)=>(o=e!=null?B(V(e)):{},d(t||!e||!e.__esModule?n(o,"default",{value:e,enumerable:!0}):o,e)),O=e=>d(n({},"__esModule",{value:!0}),e);var z={};x(z,{default:()=>q});module.exports=O(z);var a=require("react/jsx-runtime"),h=require("../../helpers/utils.js"),w=b(require("../SwiperBox/index.js")),J=require("../../shared/track.js"),v=require("../../shared/Styles.js"),S=require("../../hooks/useExposure.js"),g=require("../../hooks/useRollout.js"),y=require("./CollectionShelvesItem.js"),s=require("react");const W="image",$="collectio_shelves",j=(0,s.forwardRef)(({key:e,data:t,event:o,buildData:r,breakpoints:l,className:D="",target:_="_self",metafields:T},k)=>{const{productsCard:f=[],title:A,isShowTag:M=!1,isShowOriginalPrice:P=!0,...C}=t,m=(0,s.useRef)(null),[E,F]=(0,g.useRollout)({threshold:0}),[c,I]=(0,s.useState)([]);return(0,s.useImperativeHandle)(k,()=>m.current),(0,S.useExposure)(m,{componentType:W,componentName:$,componentTitle:t?.title}),(0,s.useEffect)(()=>{const p=f?.map?.(i=>{const u=r?.products?.find(L=>L?.handle===i?.handle);if(u)return{sku:i.sku,custom_name:i.custom_name,custom_image:i.custom_image,custom_link:i.custom_link,custom_theme:i.custom_theme,custom_description:i.custom_description,...u}})?.filter(i=>i);I(p?.length?p||[]:[])},[]),console.log(f,"productsCard",t,"data",r,c),(0,a.jsx)("div",{ref:m,className:(0,h.cn)("collection-shelves-wrap w-full",D,{"aiui-dark":t?.theme==="dark"}),children:(0,a.jsx)("div",{ref:E,children:(0,a.jsx)(w.default,{data:{list:c,configuration:{...C,isShowTag:M,event:o,target:_,isShowOriginalPrice:P,metafields:T||{},itemLength:c?.length}},id:`CollectionShelves${e}`,className:"!overflow-visible",Slide:y.CollectionShelvesWrapItem,breakpoints:l||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:1.2},768:{spaceBetween:16,freeMode:!1,slidesPerView:2.3},1024:{spaceBetween:16,freeMode:!1,slidesPerView:3}}})})})});var q=(0,v.withLayout)(j);
1
+ "use strict";"use client";var C=Object.create;var n=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var V=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var b=(e,t)=>{for(var s in t)n(e,s,{get:t[s],enumerable:!0})},u=(e,t,s,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let l of R(t))!N.call(e,l)&&l!==s&&n(e,l,{get:()=>t[l],enumerable:!(r=H(t,l))||r.enumerable});return e};var x=(e,t,s)=>(s=e!=null?C(V(e)):{},u(t||!e||!e.__esModule?n(s,"default",{value:e,enumerable:!0}):s,e)),O=e=>u(n({},"__esModule",{value:!0}),e);var z={};b(z,{default:()=>q});module.exports=O(z);var a=require("react/jsx-runtime"),d=require("../../helpers/utils.js"),h=x(require("../SwiperBox/index.js")),J=require("../../shared/track.js"),w=require("../../shared/Styles.js"),v=require("../../hooks/useExposure.js"),D=require("../../hooks/useRollout.js"),S=require("./CollectionShelvesItem.js"),o=require("react");const W="image",$="collectio_shelves",j=(0,o.forwardRef)(({key:e,data:t,event:s,buildData:r,breakpoints:l,className:y="",target:_="_self",metafields:g},T)=>{const{productsCard:k=[],title:A,isShowTag:M=!1,isShowOriginalPrice:P=!0,...E}=t,m=(0,o.useRef)(null),[I,F]=(0,D.useRollout)({threshold:0}),[c,L]=(0,o.useState)([]);return(0,o.useImperativeHandle)(T,()=>m.current),(0,v.useExposure)(m,{componentType:W,componentName:$,componentTitle:t?.title}),(0,o.useEffect)(()=>{const f=k?.map?.(i=>{const p=r?.products?.find(B=>B?.handle===i?.handle);if(p)return{sku:i.sku,custom_name:i.custom_name,custom_image:i.custom_image,custom_link:i.custom_link,custom_theme:i.custom_theme,custom_description:i.custom_description,...p}})?.filter(i=>i);L(f?.length?f||[]:[])},[]),(0,a.jsx)("div",{ref:m,className:(0,d.cn)("collection-shelves-wrap w-full",y,{"aiui-dark":t?.theme==="dark"}),children:(0,a.jsx)("div",{ref:I,children:(0,a.jsx)(h.default,{data:{list:c,configuration:{...E,isShowTag:M,event:s,target:_,isShowOriginalPrice:P,metafields:g||{},itemLength:c?.length}},id:`CollectionShelves${e}`,className:"!overflow-visible",Slide:S.CollectionShelvesWrapItem,breakpoints:l||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:1.2},768:{spaceBetween:16,freeMode:!1,slidesPerView:2.3},1024:{spaceBetween:16,freeMode:!1,slidesPerView:3}}})})})});var q=(0,w.withLayout)(j);
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/CollectionShelves/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { useRollout } from '../../hooks/useRollout.js'\nimport { CollectionShelvesWrapItem } from './CollectionShelvesItem.js'\nimport { forwardRef, useEffect, useRef, useImperativeHandle, useState } from 'react'\nimport type { ShelfDisplayProps, ShelfDisplayItem } from '../ShelfDisplay/shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'collectio_shelves'\n\nconst ShelfDisplay = forwardRef<HTMLDivElement, ShelfDisplayProps>(\n (\n {\n key,\n data,\n event,\n buildData,\n breakpoints,\n className = '',\n target = '_self',\n metafields,\n },\n ref\n ) => {\n const {\n productsCard = [],\n title,\n isShowTag = false,\n isShowOriginalPrice = true,\n ...other\n } = data\n\n const innerRef = useRef<HTMLDivElement>(null)\n\n const [viewRef, inView] = useRollout<HTMLDivElement>({ threshold: 0 })\n\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType: componentType,\n componentName: componentName,\n componentTitle: data?.title,\n })\n\n useEffect(() => {\n const newCurrentData = productsCard\n ?.map?.(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n custom_name: item.custom_name,\n custom_image: item.custom_image,\n custom_link: item.custom_link,\n custom_theme: item.custom_theme,\n custom_description: item.custom_description,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n }, [])\n\n console.log(productsCard, 'productsCard', data, 'data', buildData, currentItems)\n\n return (\n <div\n ref={innerRef}\n className={cn('collection-shelves-wrap w-full', className, { 'aiui-dark': data?.theme === 'dark' })}\n >\n <div ref={viewRef as any}>\n <SwiperBox\n data={{\n list: currentItems,\n configuration: {\n ...other,\n isShowTag,\n event: event,\n target: target,\n isShowOriginalPrice,\n metafields: metafields || {},\n itemLength: currentItems?.length,\n },\n }}\n id={`CollectionShelves${key}`}\n className={`!overflow-visible`}\n Slide={CollectionShelvesWrapItem}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.2,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2.3,\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 3,\n },\n }\n }\n />\n </div>\n </div>\n )\n }\n)\n\nexport default withLayout(ShelfDisplay)\n"],
5
- "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA8EU,IAAAI,EAAA,6BA7EVC,EAAmB,kCACnBC,EAAsB,oCACtBC,EAAwB,iCACxBC,EAA2B,kCAC3BC,EAA4B,sCAC5BC,EAA2B,qCAC3BC,EAA0C,sCAC1CC,EAA6E,iBAG7E,MAAMC,EAAgB,QAChBC,EAAgB,oBAEhBC,KAAe,cACnB,CACE,CACE,IAAAC,EACA,KAAAC,EACA,MAAAC,EACA,UAAAC,EACA,YAAAC,EACA,UAAAC,EAAY,GACZ,OAAAC,EAAS,QACT,WAAAC,CACF,EACAC,IACG,CACH,KAAM,CACJ,aAAAC,EAAe,CAAC,EAChB,MAAAC,EACA,UAAAC,EAAY,GACZ,oBAAAC,EAAsB,GACtB,GAAGC,CACL,EAAIZ,EAEEa,KAAW,UAAuB,IAAI,EAEtC,CAACC,EAASC,CAAM,KAAI,cAA2B,CAAE,UAAW,CAAE,CAAC,EAE/D,CAACC,EAAcC,CAAe,KAAI,YAA6B,CAAC,CAAC,EAEvE,gCAAoBV,EAAK,IAAMM,EAAS,OAAyB,KAEjE,eAAYA,EAAU,CACpB,cAAejB,EACf,cAAeC,EACf,eAAgBG,GAAM,KACxB,CAAC,KAED,aAAU,IAAM,CACd,MAAMkB,EAAiBV,GACnB,MAAMW,GAAQ,CACd,MAAMC,EAAWlB,GAAW,UAAU,KAAKmB,GAAUA,GAAQ,SAAWF,GAAM,MAAM,EACpF,GAAIC,EACF,MAAO,CACL,IAAKD,EAAK,IACV,YAAaA,EAAK,YAClB,aAAcA,EAAK,aACnB,YAAaA,EAAK,YAClB,aAAcA,EAAK,aACnB,mBAAoBA,EAAK,mBACzB,GAAGC,CACL,CAEJ,CAAC,GACC,OAAOD,GAAQA,CAAI,EACvBF,EAAgBC,GAAgB,OAASA,GAAkB,CAAC,EAAI,CAAC,CAAC,CACpE,EAAG,CAAC,CAAC,EAEL,QAAQ,IAAIV,EAAc,eAAgBR,EAAM,OAAQE,EAAWc,CAAY,KAG7E,OAAC,OACC,IAAKH,EACL,aAAW,MAAG,iCAAkCT,EAAW,CAAE,YAAaJ,GAAM,QAAU,MAAO,CAAC,EAElG,mBAAC,OAAI,IAAKc,EACR,mBAAC,EAAAQ,QAAA,CACC,KAAM,CACJ,KAAMN,EACN,cAAe,CACb,GAAGJ,EACH,UAAAF,EACA,MAAOT,EACP,OAAQI,EACR,oBAAAM,EACA,WAAYL,GAAc,CAAC,EAC3B,WAAYU,GAAc,MAC5B,CACF,EACA,GAAI,oBAAoBjB,CAAG,GAC3B,UAAW,oBACX,MAAO,4BACP,YACEI,GAAe,CACb,EAAG,CACD,aAAc,GACd,SAAU,GACV,cAAe,CACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,KAAM,CACJ,aAAc,GACd,SAAU,GACV,cAAe,CACjB,CACF,EAEJ,EACF,EACF,CAEJ,CACF,EAEA,IAAOlB,KAAQ,cAAWa,CAAY",
4
+ "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { useRollout } from '../../hooks/useRollout.js'\nimport { CollectionShelvesWrapItem } from './CollectionShelvesItem.js'\nimport { forwardRef, useEffect, useRef, useImperativeHandle, useState } from 'react'\nimport type { ShelfDisplayProps, ShelfDisplayItem } from '../ShelfDisplay/shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'collectio_shelves'\n\nconst ShelfDisplay = forwardRef<HTMLDivElement, ShelfDisplayProps>(\n (\n {\n key,\n data,\n event,\n buildData,\n breakpoints,\n className = '',\n target = '_self',\n metafields,\n },\n ref\n ) => {\n const {\n productsCard = [],\n title,\n isShowTag = false,\n isShowOriginalPrice = true,\n ...other\n } = data\n\n const innerRef = useRef<HTMLDivElement>(null)\n\n const [viewRef, inView] = useRollout<HTMLDivElement>({ threshold: 0 })\n\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType: componentType,\n componentName: componentName,\n componentTitle: data?.title,\n })\n\n useEffect(() => {\n const newCurrentData = productsCard\n ?.map?.(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n custom_name: item.custom_name,\n custom_image: item.custom_image,\n custom_link: item.custom_link,\n custom_theme: item.custom_theme,\n custom_description: item.custom_description,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n }, [])\n\n return (\n <div\n ref={innerRef}\n className={cn('collection-shelves-wrap w-full', className, { 'aiui-dark': data?.theme === 'dark' })}\n >\n <div ref={viewRef as any}>\n <SwiperBox\n data={{\n list: currentItems,\n configuration: {\n ...other,\n isShowTag,\n event: event,\n target: target,\n isShowOriginalPrice,\n metafields: metafields || {},\n itemLength: currentItems?.length,\n },\n }}\n id={`CollectionShelves${key}`}\n className={`!overflow-visible`}\n Slide={CollectionShelvesWrapItem}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.2,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2.3,\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 3,\n },\n }\n }\n />\n </div>\n </div>\n )\n }\n)\n\nexport default withLayout(ShelfDisplay)\n"],
5
+ "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA4EU,IAAAI,EAAA,6BA3EVC,EAAmB,kCACnBC,EAAsB,oCACtBC,EAAwB,iCACxBC,EAA2B,kCAC3BC,EAA4B,sCAC5BC,EAA2B,qCAC3BC,EAA0C,sCAC1CC,EAA6E,iBAG7E,MAAMC,EAAgB,QAChBC,EAAgB,oBAEhBC,KAAe,cACnB,CACE,CACE,IAAAC,EACA,KAAAC,EACA,MAAAC,EACA,UAAAC,EACA,YAAAC,EACA,UAAAC,EAAY,GACZ,OAAAC,EAAS,QACT,WAAAC,CACF,EACAC,IACG,CACH,KAAM,CACJ,aAAAC,EAAe,CAAC,EAChB,MAAAC,EACA,UAAAC,EAAY,GACZ,oBAAAC,EAAsB,GACtB,GAAGC,CACL,EAAIZ,EAEEa,KAAW,UAAuB,IAAI,EAEtC,CAACC,EAASC,CAAM,KAAI,cAA2B,CAAE,UAAW,CAAE,CAAC,EAE/D,CAACC,EAAcC,CAAe,KAAI,YAA6B,CAAC,CAAC,EAEvE,gCAAoBV,EAAK,IAAMM,EAAS,OAAyB,KAEjE,eAAYA,EAAU,CACpB,cAAejB,EACf,cAAeC,EACf,eAAgBG,GAAM,KACxB,CAAC,KAED,aAAU,IAAM,CACd,MAAMkB,EAAiBV,GACnB,MAAMW,GAAQ,CACd,MAAMC,EAAWlB,GAAW,UAAU,KAAKmB,GAAUA,GAAQ,SAAWF,GAAM,MAAM,EACpF,GAAIC,EACF,MAAO,CACL,IAAKD,EAAK,IACV,YAAaA,EAAK,YAClB,aAAcA,EAAK,aACnB,YAAaA,EAAK,YAClB,aAAcA,EAAK,aACnB,mBAAoBA,EAAK,mBACzB,GAAGC,CACL,CAEJ,CAAC,GACC,OAAOD,GAAQA,CAAI,EACvBF,EAAgBC,GAAgB,OAASA,GAAkB,CAAC,EAAI,CAAC,CAAC,CACpE,EAAG,CAAC,CAAC,KAGH,OAAC,OACC,IAAKL,EACL,aAAW,MAAG,iCAAkCT,EAAW,CAAE,YAAaJ,GAAM,QAAU,MAAO,CAAC,EAElG,mBAAC,OAAI,IAAKc,EACR,mBAAC,EAAAQ,QAAA,CACC,KAAM,CACJ,KAAMN,EACN,cAAe,CACb,GAAGJ,EACH,UAAAF,EACA,MAAOT,EACP,OAAQI,EACR,oBAAAM,EACA,WAAYL,GAAc,CAAC,EAC3B,WAAYU,GAAc,MAC5B,CACF,EACA,GAAI,oBAAoBjB,CAAG,GAC3B,UAAW,oBACX,MAAO,4BACP,YACEI,GAAe,CACb,EAAG,CACD,aAAc,GACd,SAAU,GACV,cAAe,CACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,KAAM,CACJ,aAAc,GACd,SAAU,GACV,cAAe,CACjB,CACF,EAEJ,EACF,EACF,CAEJ,CACF,EAEA,IAAOlB,KAAQ,cAAWa,CAAY",
6
6
  "names": ["CollectionShelves_exports", "__export", "CollectionShelves_default", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_SwiperBox", "import_track", "import_Styles", "import_useExposure", "import_useRollout", "import_CollectionShelvesItem", "import_react", "componentType", "componentName", "ShelfDisplay", "key", "data", "event", "buildData", "breakpoints", "className", "target", "metafields", "ref", "productsCard", "title", "isShowTag", "isShowOriginalPrice", "other", "innerRef", "viewRef", "inView", "currentItems", "setCurrentItems", "newCurrentData", "item", "findData", "params", "SwiperBox"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use strict";var R=Object.create;var x=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var H=(t,o)=>{for(var i in o)x(t,i,{get:o[i],enumerable:!0})},D=(t,o,i,h)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of A(o))!E.call(t,c)&&c!==i&&x(t,c,{get:()=>o[c],enumerable:!(h=T(o,c))||h.enumerable});return t};var O=(t,o,i)=>(i=t!=null?R(q(t)):{},D(o||!t||!t.__esModule?x(i,"default",{value:t,enumerable:!0}):i,t)),Q=t=>D(x({},"__esModule",{value:!0}),t);var G={};H(G,{default:()=>Z});module.exports=Q(G);var e=require("react/jsx-runtime"),y=require("../../helpers/utils.js"),I=require("react-responsive"),L=O(require("./FilterCardWrapItem")),d=require("react"),M=require("es-toolkit");const V=(t,o)=>{const{shopifyData:i={},isSale:h=!1,total:c,result:r,closeFilter:m,page:v,metafields:P,onPrimaryChange:N,onSecondaryChange:j,onNextPage:S,onPrevPage:z}=t,{advertisingSpace:k}=P,{buttonText:W,loadMoreText:B}=i,g=k||i?.advertisingSpace,[b,w]=(0,d.useState)([]),l=(0,I.useMediaQuery)({query:"(max-width: 1024px)"}),F=p=>{const n=(0,M.cloneDeep)(p||[]);if(g){const a=n.findIndex(u=>u.mImage);if(a===-1){const u=Math.min(m?g?.maxLocation||7:g?.minLocation||5,n.length);n.splice(u,0,g)}else{n.splice(a,1);const u=Math.min(m?g?.maxLocation||7:g?.minLocation||5,n.length);n.splice(u,0,g)}}return n};return(0,d.useImperativeHandle)(o,()=>({clearData(){w([])}})),(0,d.useEffect)(()=>{(r?.slug||r?.id)&&((v===1||!l)&&w([]),r?.products&&w(p=>{const n=r.products?.filter?.(s=>!p.some(f=>f.id===s.id));let a=[...p,...n];const u=a.filter?.(s=>!(!s?.metafields?.seoSetting?.noindex&&s.availableForSale&&s?.variants?.some(f=>f.availableForSale)));return a.push(...u),a=a.filter?.(s=>!s?.metafields?.seoSetting?.noindex&&s.availableForSale&&s?.variants?.some(f=>f.availableForSale)),h&&(a=a.filter?.(s=>!!s?.variants?.find(C=>C?.coupons?.length&&C?.coupons?.[0]&&typeof C?.coupons?.[0]=="object"))),(v===1&&!l||l)&&(a=F(a)),a}))},[r?.products,v,l,k]),(0,d.useEffect)(()=>{b?.length&&v===1&&!l&&w(F(b))},[m]),(0,e.jsxs)("div",{className:"filter-card-wrap-container",children:[(0,e.jsx)("div",{className:(0,y.cn)("min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3",{"laptop:grid-cols-4 tablet:grid-cols-3":m&&!l,"laptop:grid-cols-3 tablet:grid-cols-2":!m&&!l},"filter-card-wrap"),children:b?.map?.(p=>(0,e.jsx)(L.default,{data:p,buttonText:W,metafields:P,onPrimaryChange:(n,a)=>N?.(n,a),onSecondaryChange:(n,a)=>j?.(n,a)},p.id))}),l?(0,e.jsxs)("div",{onClick:()=>{S?.(r?.pageInfo?.endCursor)},className:"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more",children:[(0,e.jsx)("span",{children:B||"View More"}),(0,e.jsx)("div",{className:"size-[18px]",children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none",children:(0,e.jsx)("path",{d:"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z",fill:"#1D1D1F"})})})]}):null,!l&&c>18?(0,e.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[(0,e.jsx)("button",{name:"perv page",disabled:!r?.pageInfo?.hasPreviousPage,className:(0,y.cn)("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!r?.pageInfo?.hasPreviousPage}),onClick:()=>{z?.(r?.pageInfo?.startCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M12 5L7 10L12 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})}),(0,e.jsx)("button",{name:"next page",className:(0,y.cn)("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!r?.pageInfo?.hasNextPage}),disabled:!r?.pageInfo?.hasNextPage,onClick:()=>{S?.(r?.pageInfo?.endCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M7.5 5L12.5 10L7.5 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})})]}):null]})};var Z=(0,d.forwardRef)(V);
1
+ "use strict";var R=Object.create;var y=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var A=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,E=Object.prototype.hasOwnProperty;var H=(t,o)=>{for(var i in o)y(t,i,{get:o[i],enumerable:!0})},D=(t,o,i,h)=>{if(o&&typeof o=="object"||typeof o=="function")for(let c of A(o))!E.call(t,c)&&c!==i&&y(t,c,{get:()=>o[c],enumerable:!(h=T(o,c))||h.enumerable});return t};var O=(t,o,i)=>(i=t!=null?R(q(t)):{},D(o||!t||!t.__esModule?y(i,"default",{value:t,enumerable:!0}):i,t)),Q=t=>D(y({},"__esModule",{value:!0}),t);var G={};H(G,{default:()=>Z});module.exports=Q(G);var e=require("react/jsx-runtime"),b=require("../../helpers/utils.js"),I=require("react-responsive"),L=O(require("./FilterCardWrapItem")),d=require("react"),M=require("es-toolkit");const V=(t,o)=>{const{shopifyData:i={},isSale:h=!1,total:c,result:r,closeFilter:m,page:v,metafields:P,onPrimaryChange:N,onSecondaryChange:j,onNextPage:S,onPrevPage:z}=t,{advertisingSpace:k}=P,{buttonText:W,loadMoreText:B}=i,g=k||i?.advertisingSpace,[w,x]=(0,d.useState)([]),l=(0,I.useMediaQuery)({query:"(max-width: 1024px)"}),F=p=>{const n=(0,M.cloneDeep)(p||[]);if(g){const a=n.findIndex(u=>u.mImage);if(a===-1){const u=Math.min(m?g?.maxLocation||7:g?.minLocation||5,n.length);n.splice(u,0,g)}else{n.splice(a,1);const u=Math.min(m?g?.maxLocation||7:g?.minLocation||5,n.length);n.splice(u,0,g)}}return n};return(0,d.useImperativeHandle)(o,()=>({clearData(){x([])}})),(0,d.useEffect)(()=>{(r?.slug||r?.id)&&((v===1||!l)&&x([]),r?.products&&x(p=>{const n=r.products?.filter?.(s=>!p.some(f=>f.id===s.id));let a=[...p,...n];const u=a.filter?.(s=>!(!s?.metafields?.seoSetting?.noindex&&s.availableForSale&&s?.variants?.some(f=>f.availableForSale)));return a.push(...u),a=a.filter?.(s=>!s?.metafields?.seoSetting?.noindex&&s.availableForSale&&s?.variants?.some(f=>f.availableForSale)),h&&(a=a.filter?.(s=>!!s?.variants?.find(C=>C?.coupons?.length&&C?.coupons?.[0]&&typeof C?.coupons?.[0]=="object"))),(v===1&&!l||l)&&(a=F(a)),a}))},[r?.products,v,l,k]),(0,d.useEffect)(()=>{w?.length&&v===1&&!l&&x(F(w))},[m]),console.log(w,"data123123123"),(0,e.jsxs)("div",{className:"filter-card-wrap-container",children:[(0,e.jsx)("div",{className:(0,b.cn)("min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3",{"laptop:grid-cols-4 tablet:grid-cols-3":m&&!l,"laptop:grid-cols-3 tablet:grid-cols-2":!m&&!l},"filter-card-wrap"),children:w?.map?.(p=>(0,e.jsx)(L.default,{data:p,buttonText:W,metafields:P,onPrimaryChange:(n,a)=>N?.(n,a),onSecondaryChange:(n,a)=>j?.(n,a)},p.id))}),l?(0,e.jsxs)("div",{onClick:()=>{S?.(r?.pageInfo?.endCursor)},className:"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more",children:[(0,e.jsx)("span",{children:B||"View More"}),(0,e.jsx)("div",{className:"size-[18px]",children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none",children:(0,e.jsx)("path",{d:"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z",fill:"#1D1D1F"})})})]}):null,!l&&c>18?(0,e.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[(0,e.jsx)("button",{name:"perv page",disabled:!r?.pageInfo?.hasPreviousPage,className:(0,b.cn)("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!r?.pageInfo?.hasPreviousPage}),onClick:()=>{z?.(r?.pageInfo?.startCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M12 5L7 10L12 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})}),(0,e.jsx)("button",{name:"next page",className:(0,b.cn)("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!r?.pageInfo?.hasNextPage}),disabled:!r?.pageInfo?.hasNextPage,onClick:()=>{S?.(r?.pageInfo?.endCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M7.5 5L12.5 10L7.5 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})})]}):null]})};var Z=(0,d.forwardRef)(V);
2
2
  //# sourceMappingURL=FilterCardWrap.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/CollectionsFilters/FilterCardWrap.tsx"],
4
- "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport { useMediaQuery } from 'react-responsive'\nimport FilterCardWrapItem from './FilterCardWrapItem'\nimport { useState, useEffect, forwardRef, useImperativeHandle, type Ref } from 'react'\nimport { cloneDeep } from 'es-toolkit'\n\ntype FilterCardWrapProps = {\n isSale?: boolean\n result?: any\n total: number\n shopifyData?: any\n currentPage?: number\n closeFilter: boolean\n page: number\n metafields: any\n onPrimaryChange?: (item: any, sku: string) => void\n onSecondaryChange?: (item: any, sku: string) => void\n onNextPage?: (v: string) => void\n onPrevPage?: (v: string) => void\n}\n\nconst FilterCardWrap = (props: FilterCardWrapProps, ref: Ref<unknown> | undefined) => {\n const {\n shopifyData = {},\n isSale = false,\n total,\n result,\n closeFilter,\n page,\n metafields,\n onPrimaryChange,\n onSecondaryChange,\n onNextPage,\n onPrevPage,\n } = props\n const { advertisingSpace } = metafields\n const { buttonText, loadMoreText } = shopifyData\n\n const currentAdvertisingSpace = advertisingSpace || shopifyData?.advertisingSpace\n\n const [data, setData] = useState<any[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 1024px)' })\n\n const handleAdvertisingSpace = (products: any[]) => {\n const updatedProducts = cloneDeep(products || [])\n if (currentAdvertisingSpace) {\n const findIndex = updatedProducts.findIndex(item => item.mImage)\n if (findIndex === -1) {\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n } else {\n updatedProducts.splice(findIndex, 1)\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n }\n }\n return updatedProducts\n }\n\n useImperativeHandle(ref, () => ({\n clearData() {\n setData([])\n },\n }))\n\n // \u5904\u7406\u4EA7\u54C1\u6570\u636E\n useEffect(() => {\n if (result?.slug || result?.id) {\n ;(page === 1 || !isMobile) && setData([])\n if (result?.products) {\n setData(prevProducts => {\n // \u68C0\u67E5\u662F\u5426\u5DF2\u7ECF\u5B58\u5728\u4E8E prevProducts \u4E2D\uFF0C\u907F\u514D\u91CD\u590D\u6DFB\u52A0\n const newProducts = result.products?.filter?.(\n (product: { id: any }) => !prevProducts.some(prev => prev.id === product.id)\n )\n let updatedProducts = [...prevProducts, ...newProducts]\n /** \u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1 */\n const soldOutProducts = updatedProducts.filter?.(\n item =>\n !(\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n )\n // \u5C06\u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1\u6DFB\u52A0\u5230\u6700\u540E\n updatedProducts.push(...soldOutProducts)\n // \u8FC7\u6EE4\u6389 availableForSale \u4E3A false \u7684\u4EA7\u54C1\n updatedProducts = updatedProducts.filter?.(\n item =>\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n // \u5982\u679C\u662F\u6709\u6298\u6263\u7684\u4EA7\u54C1\uFF0C\u5219\u8FC7\u6EE4\u6389\u6CA1\u6709\u6298\u6263\u7684\u4EA7\u54C1\n if (isSale) {\n updatedProducts = updatedProducts.filter?.((item: any) => {\n const isShow = item?.variants?.find(\n (params: any) =>\n params?.coupons?.length && params?.coupons?.[0] && typeof params?.coupons?.[0] === 'object'\n )\n return !!isShow\n })\n }\n // \u5982\u679C advertisingSpace \u5B58\u5728\u4E14\u5C1A\u672A\u6DFB\u52A0\u5230\u6570\u7EC4\u4E2D\n if ((page === 1 && !isMobile) || isMobile) {\n updatedProducts = handleAdvertisingSpace(updatedProducts)\n }\n return updatedProducts\n })\n }\n }\n }, [result?.products, page, isMobile, advertisingSpace])\n\n useEffect(() => {\n if (!data?.length) return\n if (page === 1 && !isMobile) {\n setData(handleAdvertisingSpace(data))\n }\n }, [closeFilter])\n\n return (\n <div className=\"filter-card-wrap-container\">\n <div\n className={cn(\n 'min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3',\n {\n 'laptop:grid-cols-4 tablet:grid-cols-3': closeFilter && !isMobile,\n 'laptop:grid-cols-3 tablet:grid-cols-2': !closeFilter && !isMobile,\n },\n 'filter-card-wrap'\n )}\n >\n {data?.map?.(item => {\n return (\n <FilterCardWrapItem\n data={item}\n key={item.id}\n buttonText={buttonText}\n metafields={metafields}\n onPrimaryChange={(e, data) => onPrimaryChange?.(e, data)}\n onSecondaryChange={(e, data) => onSecondaryChange?.(e, data)}\n />\n )\n })}\n </div>\n {isMobile ? (\n <div\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n className=\"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more\"\n >\n <span>{loadMoreText || 'View More'}</span>\n <div className=\"size-[18px]\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"6\" viewBox=\"0 0 12 6\" fill=\"none\">\n <path\n d=\"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z\"\n fill=\"#1D1D1F\"\n />\n </svg>\n </div>\n </div>\n ) : null}\n {!isMobile && total > 18 ? (\n <div className=\"mt-6 flex items-center justify-end gap-4 cursor-pointer\">\n <button\n name=\"perv page\"\n disabled={!result?.pageInfo?.hasPreviousPage}\n className={cn(\n 'flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]',\n {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasPreviousPage,\n }\n )}\n onClick={() => {\n onPrevPage?.(result?.pageInfo?.startCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M12 5L7 10L12 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n <button\n name=\"next page\"\n className={cn(\n 'flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]',\n {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasNextPage,\n }\n )}\n disabled={!result?.pageInfo?.hasNextPage}\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M7.5 5L12.5 10L7.5 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n </div>\n ) : // <Paginator\n // className=\"mt-6\"\n // currentPage={currentPage}\n // onPageChange={(v: number) => {\n // setData([])\n // if(v > currentPage) {\n // onNextPage?.(result?.pageInfo?.endCursor)\n // } else {\n // onPrevPage?.(result?.pageInfo?.startCursor)\n // }\n // setCurrentPage(v)\n // }}\n // total={100}\n // />\n null}\n </div>\n )\n}\n\nexport default forwardRef(FilterCardWrap)\n"],
5
- "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA4IY,IAAAI,EAAA,6BA5IZC,EAAmB,kCACnBC,EAA8B,4BAC9BC,EAA+B,mCAC/BC,EAA+E,iBAC/EC,EAA0B,sBAiB1B,MAAMC,EAAiB,CAACC,EAA4BC,IAAkC,CACpF,KAAM,CACJ,YAAAC,EAAc,CAAC,EACf,OAAAC,EAAS,GACT,MAAAC,EACA,OAAAC,EACA,YAAAC,EACA,KAAAC,EACA,WAAAC,EACA,gBAAAC,EACA,kBAAAC,EACA,WAAAC,EACA,WAAAC,CACF,EAAIZ,EACE,CAAE,iBAAAa,CAAiB,EAAIL,EACvB,CAAE,WAAAM,EAAY,aAAAC,CAAa,EAAIb,EAE/Bc,EAA0BH,GAAoBX,GAAa,iBAE3D,CAACe,EAAMC,CAAO,KAAI,YAAgB,CAAC,CAAC,EAEpCC,KAAW,iBAAc,CAAE,MAAO,qBAAsB,CAAC,EAEzDC,EAA0BC,GAAoB,CAClD,MAAMC,KAAkB,aAAUD,GAAY,CAAC,CAAC,EAChD,GAAIL,EAAyB,CAC3B,MAAMO,EAAYD,EAAgB,UAAUE,GAAQA,EAAK,MAAM,EAC/D,GAAID,IAAc,GAAI,CACpB,MAAME,EACF,KAAK,IADWnB,EACPU,GAAyB,aAAe,EACxCA,GAAyB,aAAe,EADGM,EAAgB,MAAM,EAE9EA,EAAgB,OAAOG,EAAa,EAAGT,CAAuB,CAChE,KAAO,CACLM,EAAgB,OAAOC,EAAW,CAAC,EACnC,MAAME,EACF,KAAK,IADWnB,EACPU,GAAyB,aAAe,EACxCA,GAAyB,aAAe,EADGM,EAAgB,MAAM,EAE9EA,EAAgB,OAAOG,EAAa,EAAGT,CAAuB,CAChE,CACF,CACA,OAAOM,CACT,EAEA,gCAAoBrB,EAAK,KAAO,CAC9B,WAAY,CACViB,EAAQ,CAAC,CAAC,CACZ,CACF,EAAE,KAGF,aAAU,IAAM,EACVb,GAAQ,MAAQA,GAAQ,OACxBE,IAAS,GAAK,CAACY,IAAaD,EAAQ,CAAC,CAAC,EACpCb,GAAQ,UACVa,EAAQQ,GAAgB,CAEtB,MAAMC,EAActB,EAAO,UAAU,SAClCuB,GAAyB,CAACF,EAAa,KAAKG,GAAQA,EAAK,KAAOD,EAAQ,EAAE,CAC7E,EACA,IAAIN,EAAkB,CAAC,GAAGI,EAAc,GAAGC,CAAW,EAEtD,MAAMG,EAAkBR,EAAgB,SACtCE,GACE,EACE,CAACA,GAAM,YAAY,YAAY,SAC/BA,EAAK,kBACLA,GAAM,UAAU,KAAMA,GAAoCA,EAAK,gBAAgB,EAErF,EAEA,OAAAF,EAAgB,KAAK,GAAGQ,CAAe,EAEvCR,EAAkBA,EAAgB,SAChCE,GACE,CAACA,GAAM,YAAY,YAAY,SAC/BA,EAAK,kBACLA,GAAM,UAAU,KAAMA,GAAoCA,EAAK,gBAAgB,CACnF,EAEIrB,IACFmB,EAAkBA,EAAgB,SAAUE,GAKnC,CAAC,CAJOA,GAAM,UAAU,KAC5BO,GACCA,GAAQ,SAAS,QAAUA,GAAQ,UAAU,CAAC,GAAK,OAAOA,GAAQ,UAAU,CAAC,GAAM,QACvF,CAED,IAGExB,IAAS,GAAK,CAACY,GAAaA,KAC/BG,EAAkBF,EAAuBE,CAAe,GAEnDA,CACT,CAAC,EAGP,EAAG,CAACjB,GAAQ,SAAUE,EAAMY,EAAUN,CAAgB,CAAC,KAEvD,aAAU,IAAM,CACTI,GAAM,QACPV,IAAS,GAAK,CAACY,GACjBD,EAAQE,EAAuBH,CAAI,CAAC,CAExC,EAAG,CAACX,CAAW,CAAC,KAGd,QAAC,OAAI,UAAU,6BACb,oBAAC,OACC,aAAW,MACT,mEACA,CACE,wCAAyCA,GAAe,CAACa,EACzD,wCAAyC,CAACb,GAAe,CAACa,CAC5D,EACA,kBACF,EAEC,SAAAF,GAAM,MAAMO,MAET,OAAC,EAAAQ,QAAA,CACC,KAAMR,EAEN,WAAYV,EACZ,WAAYN,EACZ,gBAAiB,CAACyB,EAAGhB,IAASR,IAAkBwB,EAAGhB,CAAI,EACvD,kBAAmB,CAACgB,EAAGhB,IAASP,IAAoBuB,EAAGhB,CAAI,GAJtDO,EAAK,EAKZ,CAEH,EACH,EACCL,KACC,QAAC,OACC,QAAS,IAAM,CACbR,IAAaN,GAAQ,UAAU,SAAS,CAC1C,EACA,UAAU,qGAEV,oBAAC,QAAM,SAAAU,GAAgB,YAAY,KACnC,OAAC,OAAI,UAAU,cACb,mBAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,IAAI,QAAQ,WAAW,KAAK,OACpF,mBAAC,QACC,EAAE,oVACF,KAAK,UACP,EACF,EACF,GACF,EACE,KACH,CAACI,GAAYf,EAAQ,MACpB,QAAC,OAAI,UAAU,0DACb,oBAAC,UACC,KAAK,YACL,SAAU,CAACC,GAAQ,UAAU,gBAC7B,aAAW,MACT,wJACA,CACE,gCAAiC,CAACA,GAAQ,UAAU,eACtD,CACF,EACA,QAAS,IAAM,CACbO,IAAaP,GAAQ,UAAU,WAAW,CAC5C,EAEA,mBAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,mBACF,OAAO,UACP,eAAa,UACb,iBAAe,QACf,kBAAgB,QAClB,EACF,EACF,KACA,OAAC,UACC,KAAK,YACL,aAAW,MACT,wJACA,CACE,gCAAiC,CAACA,GAAQ,UAAU,WACtD,CACF,EACA,SAAU,CAACA,GAAQ,UAAU,YAC7B,QAAS,IAAM,CACbM,IAAaN,GAAQ,UAAU,SAAS,CAC1C,EAEA,mBAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,wBACF,OAAO,UACP,eAAa,UACb,iBAAe,QACf,kBAAgB,QAClB,EACF,EACF,GACF,EAeF,MACF,CAEJ,EAEA,IAAOd,KAAQ,cAAWQ,CAAc",
4
+ "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport { useMediaQuery } from 'react-responsive'\nimport FilterCardWrapItem from './FilterCardWrapItem'\nimport { useState, useEffect, forwardRef, useImperativeHandle, type Ref } from 'react'\nimport { cloneDeep } from 'es-toolkit'\n\ntype FilterCardWrapProps = {\n isSale?: boolean\n result?: any\n total: number\n shopifyData?: any\n currentPage?: number\n closeFilter: boolean\n page: number\n metafields: any\n onPrimaryChange?: (item: any, sku: string) => void\n onSecondaryChange?: (item: any, sku: string) => void\n onNextPage?: (v: string) => void\n onPrevPage?: (v: string) => void\n}\n\nconst FilterCardWrap = (props: FilterCardWrapProps, ref: Ref<unknown> | undefined) => {\n const {\n shopifyData = {},\n isSale = false,\n total,\n result,\n closeFilter,\n page,\n metafields,\n onPrimaryChange,\n onSecondaryChange,\n onNextPage,\n onPrevPage,\n } = props\n const { advertisingSpace } = metafields\n const { buttonText, loadMoreText } = shopifyData\n\n const currentAdvertisingSpace = advertisingSpace || shopifyData?.advertisingSpace\n\n const [data, setData] = useState<any[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 1024px)' })\n\n const handleAdvertisingSpace = (products: any[]) => {\n const updatedProducts = cloneDeep(products || [])\n if (currentAdvertisingSpace) {\n const findIndex = updatedProducts.findIndex(item => item.mImage)\n if (findIndex === -1) {\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n } else {\n updatedProducts.splice(findIndex, 1)\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n }\n }\n return updatedProducts\n }\n\n useImperativeHandle(ref, () => ({\n clearData() {\n setData([])\n },\n }))\n\n // \u5904\u7406\u4EA7\u54C1\u6570\u636E\n useEffect(() => {\n if (result?.slug || result?.id) {\n ;(page === 1 || !isMobile) && setData([])\n if (result?.products) {\n setData(prevProducts => {\n // \u68C0\u67E5\u662F\u5426\u5DF2\u7ECF\u5B58\u5728\u4E8E prevProducts \u4E2D\uFF0C\u907F\u514D\u91CD\u590D\u6DFB\u52A0\n const newProducts = result.products?.filter?.(\n (product: { id: any }) => !prevProducts.some(prev => prev.id === product.id)\n )\n let updatedProducts = [...prevProducts, ...newProducts]\n /** \u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1 */\n const soldOutProducts = updatedProducts.filter?.(\n item =>\n !(\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n )\n // \u5C06\u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1\u6DFB\u52A0\u5230\u6700\u540E\n updatedProducts.push(...soldOutProducts)\n // \u8FC7\u6EE4\u6389 availableForSale \u4E3A false \u7684\u4EA7\u54C1\n updatedProducts = updatedProducts.filter?.(\n item =>\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n // \u5982\u679C\u662F\u6709\u6298\u6263\u7684\u4EA7\u54C1\uFF0C\u5219\u8FC7\u6EE4\u6389\u6CA1\u6709\u6298\u6263\u7684\u4EA7\u54C1\n if (isSale) {\n updatedProducts = updatedProducts.filter?.((item: any) => {\n const isShow = item?.variants?.find(\n (params: any) =>\n params?.coupons?.length && params?.coupons?.[0] && typeof params?.coupons?.[0] === 'object'\n )\n return !!isShow\n })\n }\n // \u5982\u679C advertisingSpace \u5B58\u5728\u4E14\u5C1A\u672A\u6DFB\u52A0\u5230\u6570\u7EC4\u4E2D\n if ((page === 1 && !isMobile) || isMobile) {\n updatedProducts = handleAdvertisingSpace(updatedProducts)\n }\n return updatedProducts\n })\n }\n }\n }, [result?.products, page, isMobile, advertisingSpace])\n\n useEffect(() => {\n if (!data?.length) return\n if (page === 1 && !isMobile) {\n setData(handleAdvertisingSpace(data))\n }\n }, [closeFilter])\n\n console.log(data, 'data123123123')\n\n return (\n <div className=\"filter-card-wrap-container\">\n <div\n className={cn(\n 'min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3',\n {\n 'laptop:grid-cols-4 tablet:grid-cols-3': closeFilter && !isMobile,\n 'laptop:grid-cols-3 tablet:grid-cols-2': !closeFilter && !isMobile,\n },\n 'filter-card-wrap'\n )}\n >\n {data?.map?.(item => {\n return (\n <FilterCardWrapItem\n data={item}\n key={item.id}\n buttonText={buttonText}\n metafields={metafields}\n onPrimaryChange={(e, data) => onPrimaryChange?.(e, data)}\n onSecondaryChange={(e, data) => onSecondaryChange?.(e, data)}\n />\n )\n })}\n </div>\n {isMobile ? (\n <div\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n className=\"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more\"\n >\n <span>{loadMoreText || 'View More'}</span>\n <div className=\"size-[18px]\">\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"6\" viewBox=\"0 0 12 6\" fill=\"none\">\n <path\n d=\"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z\"\n fill=\"#1D1D1F\"\n />\n </svg>\n </div>\n </div>\n ) : null}\n {!isMobile && total > 18 ? (\n <div className=\"mt-6 flex items-center justify-end gap-4 cursor-pointer\">\n <button\n name=\"perv page\"\n disabled={!result?.pageInfo?.hasPreviousPage}\n className={cn(\n 'flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]',\n {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasPreviousPage,\n }\n )}\n onClick={() => {\n onPrevPage?.(result?.pageInfo?.startCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M12 5L7 10L12 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n <button\n name=\"next page\"\n className={cn(\n 'flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]',\n {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasNextPage,\n }\n )}\n disabled={!result?.pageInfo?.hasNextPage}\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M7.5 5L12.5 10L7.5 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n </div>\n ) : // <Paginator\n // className=\"mt-6\"\n // currentPage={currentPage}\n // onPageChange={(v: number) => {\n // setData([])\n // if(v > currentPage) {\n // onNextPage?.(result?.pageInfo?.endCursor)\n // } else {\n // onPrevPage?.(result?.pageInfo?.startCursor)\n // }\n // setCurrentPage(v)\n // }}\n // total={100}\n // />\n null}\n </div>\n )\n}\n\nexport default forwardRef(FilterCardWrap)\n"],
5
+ "mappings": "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",
6
6
  "names": ["FilterCardWrap_exports", "__export", "FilterCardWrap_default", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_react_responsive", "import_FilterCardWrapItem", "import_react", "import_es_toolkit", "FilterCardWrap", "props", "ref", "shopifyData", "isSale", "total", "result", "closeFilter", "page", "metafields", "onPrimaryChange", "onSecondaryChange", "onNextPage", "onPrevPage", "advertisingSpace", "buttonText", "loadMoreText", "currentAdvertisingSpace", "data", "setData", "isMobile", "handleAdvertisingSpace", "products", "updatedProducts", "findIndex", "item", "insertIndex", "prevProducts", "newProducts", "product", "prev", "soldOutProducts", "params", "FilterCardWrapItem", "e"]
7
7
  }