@rdsaude/pulso-react-components
Version:
Biblioteca de componentes React do Pulso Design System da RD Saúde oferece componentes consistentes e de alto desempenho, alinhados com os padrões da RDSaúde. Ideal para desenvolver aplicações modernas e acessíveis.
31 lines • 8.57 kB
JavaScript
import{a as m}from"./chunk-YKPNWTSV.js";import{a}from"./chunk-V5IX4U5J.js";import{a as N,b as E,c as v}from"./chunk-UABQX4UA.js";import{Children as x,cloneElement as k,forwardRef as te,isValidElement as y}from"react";var D=a({base:"flex flex-col items-start justify-center gap-none rounded-pill font-rdmodern",variants:{size:{md:"",ml:"",lg:"",xl:""},hasError:{true:"h-full outline-none",false:""},hasReadonly:{true:"border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly",false:""},hasDisabled:{true:"border-none bg-action-fill-neutral-tertiary-disabled",false:""}},defaultVariants:{size:"md"}}),w=a({base:"flex items-center justify-center",variants:{size:{md:"pr-onepulse",ml:"pr-twopulse",lg:"pr-twopulse",xl:"pr-twopulse"}},defaultVariants:{size:"md",hasLabelText:!0}}),P=a({base:"flex items-center justify-center outline-none",variants:{size:{md:"h-tiny w-tiny pr-none",ml:"h-small w-small pr-none",lg:"h-medium w-medium pr-none",xl:"h-medium w-medium pr-none"}},defaultVariants:{size:"md"}}),I=a({base:`
mb-twopulse h-full cursor-pointer items-center justify-center rounded-pill
p-halfpulse text-text-neutral bg-action-fill-neutral-tertiary-enabled [&:not(:focus-visisble)]:outline-none
`,variants:{size:{md:"",ml:"",lg:"",xl:""},hasError:{true:"outline-none ring-forms-border-error ring-halfpulse focus:ring-forms-border-error",false:`
hover:border-action-border-neutral-tertiary-hovered focus-visible:border-action-border-focused
`},hasDisabled:{true:`outline-none
`},hasReadonly:{true:`outline-none
`}},defaultVariants:{size:"md"},compoundVariants:[{hasDisabled:!1,hasReadonly:!1,hasError:!1,class:`
focus-visible:ring-action-border-focused focus-visible:ring-halfpulse
`}]}),L=a({base:`flex bg-action-fill-neutral-tertiary-enabled rounded-pill min-w-[128px] border-action-border-neutral-tertiary-enabled
hover:bg-action-fill-neutral-tertiary-hovered hover:border-action-fill-neutral-tertiary-hovered outline-none
`,variants:{size:{md:"min-h-medium px-fourpulse py-onepulse",ml:"min-h-mediumlarge px-fourpulse py-twopulse",lg:"min-h-large px-fivepulse py-twopulse",xl:"min-h-extralarge px-sixpulse py-threepulse"},hasReadonly:{true:`border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly text-text-neutral-readonly
hover:bg-action-fill-neutral-tertiary-readonly active:bg-action-fill-neutral-tertiary-readonly
outline-none
`},hasDisabled:{true:`border-action-border-neutral-tertiary-disabled border-none bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled
hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled
outline-none
`},hasError:{true:"h-full outline-none",false:""}},defaultVariants:{size:"md"},compoundVariants:[{hasDisabled:!1,hasReadonly:!1,hasError:!1,class:`
active:bg-action-fill-neutral-tertiary-pressed active:border-none
active:border-action-border-neutral-tertiary-pressed active:outline-none
focus-visible:ring-action-border-focused focus-visible:ring-halfpulse [&:not(:focus-visisble)]:outline-none
`}]}),S=a({base:`w-full flex bg-action-fill-neutral-tertiary-enabled rounded-pill
hover:bg-action-fill-neutral-tertiary-hovered
active:bg-action-fill-neutral-tertiary-pressed active:border-action-border-neutral-tertiary-pressed outline-none`,variants:{size:{md:"p-twopulse",ml:"p-twopulse",lg:"p-twopulse",xl:"p-threepulse"},hasReadonly:{true:`border-action-border-neutral-tertiary-readonly border-none bg-action-fill-neutral-tertiary-readonly text-text-neutral-readonly
hover:bg-action-fill-neutral-tertiary-readonly active:bg-action-fill-neutral-tertiary-readonly
outline-none
`},hasDisabled:{true:`border-action-border-neutral-tertiary-disabled border-none bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled
hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled outline-none`},hasError:{true:"h-full outline-none",false:""}},defaultVariants:{size:"md"},compoundVariants:[{hasDisabled:!1,hasReadonly:!1,hasError:!1,class:`
focus-visible:ring-action-border-focused focus-visible:ring-halfpulse
`}]}),A=a({base:"ml-halfpulse flex items-center bg-transparent",variants:{size:{md:"px-fourpulse",ml:"px-fourpulse",lg:"px-fivepulse",xl:"px-sixpulse"},hasError:{true:"font-semibold text-threepulse leading-medium tracking-tiny",false:"font-semibold text-threepulse leading-medium tracking-tiny"}},defaultVariants:{size:"md"}}),M=a({base:"flex items-center bg-transparent",variants:{size:{md:"px-threepulse",ml:"px-fourpulse",lg:"px-fivepulse",xl:"px-sixpulse"},hasError:{true:"font-semibold text-text-danger-alternative text-threepulse leading-medium tracking-tiny"}},defaultVariants:{size:"md"}}),H=a({base:"flex flex-col pl-eightpulse",variants:{size:{md:"",ml:"",lg:"",xl:""}},defaultVariants:{size:"md"}});var F=a({base:"line-clamp-4 min-h-small overflow-hidden text-left font-family-modern font-regular text-neutral-default",variants:{size:{md:"pt-halfpulse text-threepulse leading-medium",ml:"pt-halfpulse text-threeandhalfpulse leading-small",lg:"pt-onepulse text-fourpulse leading-small",xl:"pt-onepulse text-fourpulse leading-small"},hasError:{true:"font-semibold"},hasDisabled:{true:"text-neutral-disabled"},hasReadonly:{true:"text-neutral-readonly"}},defaultVariants:{size:"md"}});import{jsx as ee}from"react/jsx-runtime";function f({children:r,size:t="md",error:e=!1,disabled:n=!1,readonly:s=!1}){return ee("span",{className:F({size:t,hasError:e,hasDisabled:n,hasReadonly:s,className:!r&&"hidden"}),children:r})}var j=a({base:"flex flex-row items-center justify-start gap-half-pulse text-ellipsis"}),_=a({base:"line-clamp-2 pl-onepulse text-left font-family-modern font-semibold text-text-neutral"}),B=a({base:"line-clamp-2 pl-onepulse text-left font-family-modern font-semibold text-text-danger-alternative"});import{jsx as Y,jsxs as re}from"react/jsx-runtime";function h({icon:r,children:t,isError:e=!1}){return re("div",{className:j(),children:[r&&Y(m,{size:"tiny",symbol:r,color:e?"colorTextDangerAlternative":"colorTextNeutralDefault"}),Y("span",{className:e?B():_(),children:t})]})}import{jsx as d,jsxs as q}from"react/jsx-runtime";var ae="Checkbox",oe=r=>({md:"tiny",ml:"small",lg:"medium",xl:"medium"})[r]||"medium",G=({symbol:r,size:t="md",disabled:e,readonly:n,hasLabelText:s})=>{let p=oe(t),o=s?w({size:t}):P({size:t});return d("div",{className:o,children:d(m,{symbol:r,size:p,color:e?"colorTextNeutralDisabled":n?"colorTextNeutralReadonly":"colorTextNeutralDefault"})})},J=({children:r,size:t,disabled:e,readonly:n,error:s})=>{let o=!!x.toArray(r).find(l=>y(l)&&l.type===f&&l.props.children)?L({size:t,hasDisabled:e,hasReadonly:n,hasError:!!s}):S({size:t,hasDisabled:e,hasReadonly:n,hasError:!!s});return d("div",{className:I({size:t,hasError:!!s}),children:d("div",{className:o,tabIndex:0,children:r})})},K=te((r,t)=>{let z=r,{size:e="md",checked:n=!1,indeterminate:s=!1,onClick:p,error:o,disabled:l,readonly:c,children:g,feedbackMessage:C,hasFeedbackMessage:Q=!0,icon:U}=z,W=v(z,["size","checked","indeterminate","onClick","error","disabled","readonly","children","feedbackMessage","hasFeedbackMessage","icon"]),X=s?"rdicon-checkbox-indeterminate":n?"rdicon-checkbox-checked":"rdicon-checkbox-unchecked",Z=i=>{i.stopPropagation(),!(l||c)&&typeof p=="function"&&p(!n)},u=x.toArray(g).find(i=>y(i)&&i.type===f),b=x.toArray(g).find(i=>y(i)&&i.type===h),V=x.toArray(g).find(i=>y(i)&&i.type===O),R=W,{feedbackMessage:se}=R,$=v(R,["feedbackMessage"]),T=o||Q&&C;return q("div",E(N({ref:t},$),{role:"checkbox","aria-checked":n||s,"aria-disabled":l||c,onClick:Z,className:D({size:e,hasError:!!o,hasDisabled:!!l,hasReadonly:!!c}),children:[q(J,{size:e,disabled:l,readonly:c,error:o,children:[d(G,{symbol:X,size:e,disabled:l,readonly:c,hasLabelText:!!(u!=null&&u.props.children)}),u&&k(u,{size:e,disabled:l,readonly:c,error:o})]}),(b||T)&&u&&d("div",{className:b!=null&&b.props.children||T?A({size:e,hasError:!!o}):M({size:e,hasError:!!o}),children:k(b||d(h,{icon:o?"rdicon-warning-circle":U,isError:o,children:C}),{size:e})}),V&&k(V,{size:e,disabled:l||c,error:o})]}))}),O=({children:r,size:t="md"})=>d("div",{className:H({size:t}),children:r});K.displayName=ae;var le={Root:K,Label:f,HelperText:h,Parent:O,Actions:J,IconCheck:G};export{le as a};
//# sourceMappingURL=chunk-RJMQRXVU.js.map