@lanaco/lnc-react-ui
Version:
React component library
54 lines (46 loc) • 2.01 kB
JavaScript
"use strict";const r=require("react/jsx-runtime"),l=require("react"),o=require("./emotion-styled.browser.esm-Cle7tAM9.cjs"),d=require("./consts-CtNoHdBj.cjs"),f=require("./index-Dn5tPLgP.cjs"),v=o.newStyled.div`
display: flex;
flex-direction: column;
padding: 1.25rem;
gap: 1.25rem;
& .wrapper-title {
font-weight: 600;
font-size: 1rem;
}
@media (max-width: ${d.MOBILE_SIZE_PX+"px"}) {
padding: 0;
}
`,j=o.newStyled.div`
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 1.5rem;
@media (max-width: ${d.MOBILE_SIZE_PX+"px"}) {
grid-template-columns: repeat(2, 1fr);
gap: 0.5rem;
}
`,w=o.newStyled.div`
display: flex;
flex-direction: column;
gap: 0.75rem;
font-weight: 500;
font-size: 0.875rem;
& .group-items {
padding: 0 0.75rem;
display: flex;
flex-direction: column;
gap: 0.5rem;
font-size: 0.75rem;
font-weight: 400;
& .count-txt {
color: var(--gray-600, #676e79);
}
}
& .region,
.city {
cursor: pointer;
transition: var(--transition);
&:hover {
color: var(--primary-500, #f59e0b);
}
}
`,S=l.forwardRef((c,m)=>{const{title:p,items:t,options:i,onSelectRegion:g=()=>{},onSelectCity:u=()=>{}}=c;return r.jsxs(v,{ref:m,children:[r.jsx("div",{className:"wrapper-title",children:p}),(i==null?void 0:i.length)>0&&r.jsx(f.SelectBar,{items:i,onRemove:e=>{},onSelect:e=>{},labelKey:"name",valueKey:"code",noMargin:!0}),r.jsx(j,{children:t==null?void 0:t.map((e,s)=>{var a;return r.jsxs(w,{children:[r.jsx("div",{className:"region",onClick:()=>g(e==null?void 0:e.code),children:e==null?void 0:e.name}),r.jsx("div",{className:"group-items",children:(a=e==null?void 0:e.cities)==null?void 0:a.map((n,h)=>r.jsx(l.Fragment,{children:r.jsxs("div",{className:"city",onClick:()=>u(n==null?void 0:n.code),children:[r.jsx("span",{children:n==null?void 0:n.name}),r.jsxs("span",{className:"count-txt",children:["(",n==null?void 0:n.count,")"]})]})},s+h))})]},s)})})]})});module.exports=S;