@lanaco/lnc-react-ui
Version:
React component library
32 lines (25 loc) • 2.35 kB
JavaScript
"use strict";const r=require("react/jsx-runtime"),o=require("react"),k=require("./emotion-styled.browser.esm-Cle7tAM9.cjs"),y=require("./consts-CtNoHdBj.cjs"),P=require("./useDetectMobile-D6d5LpdL.cjs"),g=require("./index-DHJmdMN8.cjs"),q=require("./index-Dit169OA.cjs"),M=k.newStyled.div`
display: grid;
grid-template-columns: repeat(6, 1fr);
gap: 1.25rem;
& .text-block-v1 {
grid-column: 1 / 4;
max-width: 27rem;
margin: auto;
}
@media (max-width: ${y.MOBILE_SIZE_PX+"px"}) {
grid-template-columns: repeat(2, 1fr);
& .text-block-v1 {
grid-column: 1 / 3;
max-width: unset;
margin: unset;
}
& .simple-product-card {
max-width: unset;
min-width: unset;
width: unset;
}
& .img-wrapper {
}
}
`,_=o.forwardRef((i,s)=>r.jsx(g.SkeletonWrapper,{})),v=({limit:i=6,isLoading:s=!1,keyPrefix:n})=>r.jsx(r.Fragment,{children:Array.from({length:i},(d,c)=>r.jsx(_,{isLoading:s},`${n}-skeleton-product-card-${c}`))}),R=({children:i,fallbackComponent:s=r.jsx(r.Fragment,{}),isLoading:n=!1,limit:d,keyPrefix:c})=>r.jsx(o.Suspense,{fallbackComponent:s,children:n===!0?r.jsx(v,{isLoading:n,limit:d,keyPrefix:c}):i}),p=o.memo(g.SimpleProductCard),U=o.forwardRef((i,s)=>{const{title:n,subtitle:d,description:c,buttonText:j,buttonLink:f,items:t,onButtonAction:h=()=>{},onSelectCard:u=()=>{},isLoading:S=!1,limit:a=6}=i,w=P.useDetectMobile(),b=o.useMemo(()=>{var m;return r.jsx(r.Fragment,{children:w===!0?(m=t==null?void 0:t.slice(0,4))==null?void 0:m.map((e,l)=>r.jsx(p,{title:e==null?void 0:e.title,price:e==null?void 0:e.price,currency:e==null?void 0:e.currency,image:e==null?void 0:e.image,sellerUuid:e==null?void 0:e.sellerUuid,uuid:e==null?void 0:e.uuid,onSelectCard:()=>u==null?void 0:u(e==null?void 0:e.uuid)},l)):t==null?void 0:t.map((e,l)=>r.jsx(p,{title:e==null?void 0:e.title,price:e==null?void 0:e.price,currency:e==null?void 0:e.currency,image:e==null?void 0:e.image,sellerUuid:e==null?void 0:e.sellerUuid,uuid:e==null?void 0:e.uuid,onSelectCard:()=>u==null?void 0:u(e==null?void 0:e.uuid)},l))})},[t]);return r.jsxs(M,{ref:s,limit:a,children:[r.jsx(q.TextBlockV1,{subtitle:d,title:n,description:c,buttonText:j,buttonLink:f,onButtonAction:h,className:"text-block-v1"}),r.jsx(R,{isLoading:S,limit:a,keyPrefix:"explore-landing",children:b})]})});module.exports=U;