UNPKG

@lanaco/lnc-react-ui

Version:

React component library

32 lines (25 loc) 2.35 kB
"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;