@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.
23 lines • 18.7 kB
JavaScript
;var pr=Object.create;var E=Object.defineProperty,dr=Object.defineProperties,ur=Object.getOwnPropertyDescriptor,mr=Object.getOwnPropertyDescriptors,br=Object.getOwnPropertyNames,O=Object.getOwnPropertySymbols,fr=Object.getPrototypeOf,G=Object.prototype.hasOwnProperty,io=Object.prototype.propertyIsEnumerable;var so=(o,e,r)=>e in o?E(o,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[e]=r,l=(o,e)=>{for(var r in e||(e={}))G.call(e,r)&&so(o,r,e[r]);if(O)for(var r of O(e))io.call(e,r)&&so(o,r,e[r]);return o},d=(o,e)=>dr(o,mr(e));var u=(o,e)=>{var r={};for(var t in o)G.call(o,t)&&e.indexOf(t)<0&&(r[t]=o[t]);if(o!=null&&O)for(var t of O(o))e.indexOf(t)<0&&io.call(o,t)&&(r[t]=o[t]);return r};var K=(o,e)=>{for(var r in e)E(o,r,{get:e[r],enumerable:!0})},lo=(o,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of br(e))!G.call(o,a)&&a!==r&&E(o,a,{get:()=>e[a],enumerable:!(t=ur(e,a))||t.enumerable});return o};var x=(o,e,r)=>(r=o!=null?pr(fr(o)):{},lo(e||!o||!o.__esModule?E(r,"default",{value:o,enumerable:!0}):r,o)),yr=o=>lo(E({},"__esModule",{value:!0}),o);var hr={};K(hr,{Snackbar:()=>ir});module.exports=yr(hr);var ar=require("@radix-ui/react-context"),nr=require("react");var I={};K(I,{Icon:()=>q,IconDualColor:()=>J,Root:()=>X});var A=x(require("react"),1),Po=require("@ark-ui/react/factory");var co=x(require("react"),1);var C=x(require("react"),1);function F(o,e){let{targets:r,props:t,keyPrefix:a="inject",asChild:s}=e,n=C.Children.map(o,(i,p)=>{var P,v;if(!C.isValidElement(i))return i;let m=(v=(P=i.type)==null?void 0:P.displayName)!=null?v:"",b=r.includes(m),f=i.props;return C.cloneElement(i,d(l({},b?t:{}),{key:`${a}-${p.toString()}`}),F(f==null?void 0:f.children,{targets:r,props:t,keyPrefix:a,asChild:f==null?void 0:f.asChild}))});return s?n==null?void 0:n[0]:n}function M(o,{targets:e,props:r,asChild:t}){let a=co.useId();return F(o,{targets:e,props:r,asChild:t,keyPrefix:a})}var po=require("clsx"),uo=require("tailwind-merge"),g=(...o)=>(0,uo.twMerge)((0,po.clsx)(...o));var fo=x(require("react"),1);var V=x(require("react"),1),y=require("@raiadrogasil/pulso-design-tokens");var mo=x(require("react"),1),Sr=require("react/jsx-runtime"),bo=mo.createContext({currentTheme:"rdsaudesistemas"});function z(){let o=V.useMemo(()=>({rdsaudesistemas:y.RDSAUDESISTEMAS_TOKENS,drogasil:y.DROGASIL_TOKENS,raia:y.RAIA_TOKENS,subscription:y.SUBSCRIPTION_TOKENS,prime:y.PRIME_TOKENS}),[]),e=V.useContext(bo);if(!e)throw new Error("[Pulso] useTheme precisa estar dentro de um <ThemeProvider>. Verifique se o provedor est\xE1 corretamente configurado na raiz da aplica\xE7\xE3o.");let{currentTheme:r}=e;return l(l({},y.GLOBALS_TOKENS),o[r])}var N=require("react/jsx-runtime");function yo({color:o="brand",srText:e}){let r=z(),a=fo.useMemo(()=>({brand:r.colorActionFillBrandPrimaryEnabled,neutral:r.colorTextNeutralReadonly,black:r.colorTextNeutralDefault,white:r.colorTextNeutralInverse}),[r])[o];return(0,N.jsx)("div",{role:"status",className:g("grid size-8 place-items-center"),"aria-label":e,children:(0,N.jsxs)("svg",{className:g("size-6 animate-spin fill-none"),viewBox:"0 0 24 24",children:[(0,N.jsx)("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M0 12c0 6.627 5.373 12 12 12s12-5.373 12-12S18.627 0 12 0v2c5.523 0 10 4.477 10 10s-4.477 10-10 10S2 17.523 2 12H0z",fill:a}),(0,N.jsx)("title",{children:e})]})})}var So=require("tailwind-variants"),c=(0,So.createTV)({twMerge:!0,twMergeConfig:{extend:{classGroups:{"font-size":[{text:["threepulse","threeandhalfpulse"]}],"border-width":[{border:["quarterpulse","halfpulse"]}],"--tw-ring-inset":[{ring:["none","quarterpulse","halfpulse"]}]}}}});var kr=c({slots:{root:["inline-flex shrink-0 cursor-pointer items-center justify-center whitespace-nowrap","gap-x-[var(--spacing-inline-twopulse)] rounded-full","outline-[var(--color-action-border-focused)] outline-offset-2","font-inherit font-bold tracking-[var(--letter-spacing-default)]","focus-visible:outline-2","disabled:cursor-not-allowed disabled:text-[var(--color-text-neutral-disabled)]"]},variants:{variant:{"brand-primary":{root:["bg-[var(--color-action-fill-brand-primary-enabled)]","text-[var(--color-text-neutral-inverse)]","enabled:hover:bg-[var(--color-action-fill-brand-primary-hovered)]","active:bg-[var(--color-action-fill-brand-primary-pressed)]","disabled:bg-[var(--color-action-fill-brand-primary-disabled)]"]},"neutral-secondary":{root:["ring-[var(--color-action-border-neutral-secondary-enabled)]","ring-[length:var(--border-width-quarterpulse)]","bg-[var(--color-action-fill-neutral-secondary-enabled)]","text-[var(--color-text-neutral-default)]","enabled:hover:ring-[var(--color-action-border-neutral-secondary-hovered)]","enabled:hover:bg-[var(--color-action-fill-neutral-secondary-hovered)]","active:ring-[var(--color-action-border-neutral-secondary-pressed)]","active:bg-[var(--color-action-fill-neutral-secondary-pressed)]","disabled:ring-[var(--color-action-border-neutral-secondary-disabled)]","disabled:bg-[var(--color-action-fill-neutral-secondary-disabled)]"]},"neutral-tertiary":{root:["ring-[var(--color-action-border-neutral-tertiary-enabled)]","ring-[length:var(--border-width-quarterpulse)]","bg-[var(--color-action-fill-neutral-tertiary-enabled)]","text-[var(--color-text-neutral-default)]","enabled:hover:ring-[var(--color-action-border-neutral-tertiary-hovered)]","enabled:hover:bg-[var(--color-action-fill-neutral-tertiary-hovered)]","active:ring-[var(--color-action-border-neutral-tertiary-pressed)]","active:bg-[var(--color-action-fill-neutral-tertiary-pressed)]","disabled:ring-[var(--color-action-border-neutral-tertiary-disabled)]","disabled:bg-[var(--color-action-fill-neutral-tertiary-disabled)]"]}},size:{md:{root:["h-[var(--sizing-medium)] min-w-8 px-[var(--padding-inset-fourpulse)]","text-[length:var(--font-size-threepulse)]","leading-[var(--line-height-medium)]"]},ml:{root:["h-[var(--sizing-mediumlarge)] min-w-10 px-[var(--padding-inset-fourpulse)]"]},lg:{root:["h-[var(--sizing-large)] min-w-12 px-[var(--padding-inset-fivepulse)]"]},xl:{root:["h-[var(--sizing-extralarge)] min-w-14 px-[var(--padding-inset-sixpulse)]"]}},asIconOnly:{true:{root:"aspect-square px-0"}}},compoundVariants:[{size:["ml","lg"],class:{root:["text-[length:var(--font-size-threeandhalfpulse)]","leading-[var(--line-height-small)]"]}}],defaultVariants:{variant:"brand-primary",size:"ml",asIconOnly:!1}}),{root:ko}=kr();var H=require("react/jsx-runtime");function X(m){var b=m,{children:o,className:e,variant:r="brand-primary",size:t,disabled:a,loading:s,asChild:n,full:i}=b,p=u(b,["children","className","variant","size","disabled","loading","asChild","full"]);let f=M(o,{targets:["ButtonIcon","ButtonIconDualColor"],props:{variant:r,size:t,disabled:a},asChild:n}),P=!a&&s,v={"brand-primary":"white","neutral-secondary":"black","neutral-tertiary":"black"},T={"aria-live":"polite","aria-busy":!0},lr=A.useCallback(()=>{var ao,no;if(A.Children.count(o)===1&&A.isValidElement(o)){let cr=(no=(ao=o.type)==null?void 0:ao.displayName)!=null?no:"";return["ButtonIcon","ButtonIconDualColor"].includes(cr)}return!1},[o]);return(0,H.jsx)(Po.ark.button,d(l(l({},p),P&&T),{className:g(ko({variant:r,size:t,asIconOnly:lr(),className:P&&"pointer-events-none"}),i&&"w-full",e),disabled:a,"data-scope":"button",children:P?(0,H.jsx)(yo,{color:v[r]}):f}))}X.displayName="ButtonRoot";var go=require("react");var vo=x(require("react"),1);var xo=require("react/jsx-runtime");function S(a){var s=a,{symbol:o="rdicon-default",size:e="small",color:r="colorActionFillBrandPrimaryEnabled"}=s,t=u(s,["symbol","size","color"]);let n=z(),i=vo.useMemo(()=>({tiny:n.sizingTiny,"extra-small":n.sizingExtrasmall,small:n.sizingSmall,medium:n.sizingMedium}),[]);return(0,xo.jsx)("i",d(l({},t),{className:o,style:{fontSize:i[e],color:n[r],display:"inline-flex"}}))}S.displayName="Icon";var Io=require("react/jsx-runtime");function q({variant:o,size:e,disabled:r,iconColor:t,symbol:a}){let s={md:"extra-small",ml:"small",lg:"small",xl:"small"},n={"brand-primary":"colorTextNeutralInverse","neutral-secondary":"colorTextNeutralDefault","neutral-tertiary":"colorTextNeutralDefault"},i=(0,go.useMemo)(()=>r?"colorTextNeutralDisabled":t||n[o],[r,o]),p=s[e];return(0,Io.jsx)(S,{color:i,size:p,symbol:a})}q.displayName="ButtonIcon";var _={};K(_,{Bottom:()=>$,Root:()=>Y,Top:()=>W});var ho=require("@ark-ui/react/factory");var Ro=require("react/jsx-runtime");function Y(s){var n=s,{children:o,size:e="small",disabled:r=!1,asChild:t}=n,a=u(n,["children","size","disabled","asChild"]);let i=M(o,{targets:["IconDualColorTop","IconDualColorBottom"],props:{size:e,disabled:r},asChild:t});return(0,Ro.jsx)(ho.ark.div,d(l({"data-testid":"icon-dual-color-root","aria-label":"\xCDcones","aria-disabled":r,asChild:t},a),{className:"relative flex [&>[data-icon=top]]:absolute",children:i}))}Y.displayName="IconDualColorRoot";var To=require("react/jsx-runtime");function W(s){var n=s,{children:o,color:e="colorActionTextOnbrandDefault",size:r,disabled:t}=n,a=u(n,["children","color","size","disabled"]);return(0,To.jsx)(S,d(l({"data-testid":"icon-dual-color-top","data-icon":"top","data-size":r,color:t?"colorTextNeutralDisabled":e,size:r},a),{children:o}))}W.displayName="IconDualColorTop";var Co=require("react/jsx-runtime");function $(s){var n=s,{children:o,color:e="colorTextNeutralDefault",size:r,disabled:t}=n,a=u(n,["children","color","size","disabled"]);return(0,Co.jsx)(S,d(l({"data-testid":"icon-dual-color-bottom","data-icon":"bottom","data-size":r,color:t?"colorTextNeutralDisabled":e,size:r},a),{children:o}))}$.displayName="IconDualColorBottom";var No=require("react/jsx-runtime");function J(r){var t=r,{size:o="ml"}=t,e=u(t,["size"]);let a={md:"extra-small",ml:"small",lg:"small",xl:"small"};return(0,No.jsx)(_.Root,d(l({},e),{size:a[o]}))}J.displayName="ButtonIconDualColor";var Q=require("react/jsx-runtime"),Ao=o=>{let{closable:e,onClickAction:r}=o;return(0,Q.jsx)(I.Root,{variant:"neutral-tertiary",onClick:r,"data-testid":"snackbar-action-button",size:"ml",children:(0,Q.jsx)(I.Icon,{symbol:e?"rdicon-dismiss":"rdicon-chevron-right"})})};var Do=c({base:`
text-text-neutral text-threeandhalfpulse !font-rdmodern font-regular
leading-small line-clamp-2
`});var _o=require("react/jsx-runtime"),Eo=o=>{let{children:e}=o;return(0,_o.jsx)("p",{className:Do({}),"data-testid":"snackbar-description","aria-label":e==null?void 0:e.toString(),children:e})};var Lo=require("react");var Bo=require("react/jsx-runtime"),wo=o=>{let{symbol:e,__scopeSnackbar:r}=o,{type:t}=h(k,r),a={success:"colorTextSuccessAlternative",informative:"colorTextInformativeAlternative",warning:"colorTextWarningAlternative",danger:"colorTextDangerAlternative","brand-accent":"colorActionTextOnbrandDefault"},s=(0,Lo.useCallback)(()=>a[t],[t]);return(0,Bo.jsx)(S,{symbol:e,size:"small",color:s(),"data-testid":"snackbar-icon"})};var Oo=c({base:`
text-text-neutral text-threeandhalfpulse !font-rdmodern font-bold leading-small
truncate max-w-full
`});var Vo=require("react/jsx-runtime"),Mo=o=>{let{children:e}=o;return(0,Vo.jsx)("p",{className:Oo({}),"data-testid":"snackbar-title","aria-label":e==null?void 0:e.toString(),children:e})};var zo=c({base:`
flex flex-row gap-twopulse items-center justify-start
px-fourpulse pt-fourpulse
`}),Uo=c({base:`
flex flex-col w-full overflow-hidden gap-onepulse max-h-huge
`});var R=require("react/jsx-runtime"),Go=o=>{let{description:e,title:r,onClickAction:t,closable:a,iconName:s,__scopeSnackbar:n}=o,{layout:i,setPaused:p}=h(k,n),m=()=>{p(!0)},b=()=>{p(!1)};return(0,R.jsxs)("div",{className:zo({}),"data-testid":"snackbar-content",onMouseDown:m,onMouseUp:b,children:[s!==void 0&&(0,R.jsx)(wo,{symbol:s}),(0,R.jsxs)("div",{className:Uo({}),children:[r&&(0,R.jsx)(Mo,{children:r}),(0,R.jsx)(Eo,{children:e})]}),i===void 0&&(0,R.jsx)(Ao,{closable:a,onClickAction:t})]})};var Yo=require("@radix-ui/react-context"),Wo=require("react");var Z=require("react/jsx-runtime");function Ko(a){var s=a,{__scopeLink:o,color:e="colorTextNeutralDefault",className:r}=s,t=u(s,["__scopeLink","color","className"]);let{size:n,disabled:i}=Fo("LinkIcon",o),p={md:"tiny",ml:"tiny"};return(0,Z.jsx)("div",{className:`flex items-center ${r&&r}`,role:"figure",children:(0,Z.jsx)(S,d(l({},t),{symbol:"rdicon-open",color:i?"colorTextNeutralDisabled":e,size:p[n]}))})}var Ho=c({base:"letter-spacing-default inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md rounded-pill border-action-border-neutral-tertiary-enabled bg-action-fill-neutral-tertiary-enabled px-fourpulse text-text-neutral hover:border-action-border-neutral-tertiary-hovered hover:bg-action-fill-neutral-tertiary-hovered focus:border-action-border-focused focus:border-halfpulse active:border-action-border-neutral-tertiary-pressed active:bg-action-fill-neutral-tertiary-pressed focus:active:border-action-border-focused",variants:{size:{md:"h-medium min-w-medium font-semibold text-threepulse leading-medium",ml:"h-mediumlarge min-w-mediumlarge font-semibold text-threeandhalfpulse leading-small"},disabled:{true:"cursor-not-allowed border-action-border-neutral-tertiary-disabled bg-action-fill-neutral-tertiary-disabled text-text-neutral-disabled hover:bg-action-fill-neutral-tertiary-disabled active:bg-action-fill-neutral-tertiary-disabled",false:""},full:{true:"w-full"},withIcon:{true:"pl-1"}},defaultVariants:{size:"md"}}),Xo=c({base:"inline-flex h-small items-center justify-center underline decoration-solid"}),qo=c({base:"pl-onepulse no-underline"});var D=require("react/jsx-runtime"),j="Link",$o=(0,Wo.forwardRef)((o,e)=>{let v=o,{children:r,icon:t,size:a,disabled:s,full:n,__scopeLink:i,href:p,onClick:m}=v,b=u(v,["children","icon","size","disabled","full","__scopeLink","href","onClick"]),f=Ho({size:a,disabled:s,full:n}),P=T=>{if(s){T.preventDefault(),T.stopPropagation();return}m&&m(T)};return(0,D.jsx)(vr,{scope:i,size:a,disabled:s,children:(0,D.jsxs)("a",d(l({},b),{ref:e,href:s?void 0:p,className:f,"aria-disabled":s,role:"link",onClick:P,children:[(0,D.jsx)("div",{className:Xo(),children:r}),t&&(0,D.jsx)(Ko,{className:qo()})]}))})});$o.displayName=j;var[Pr]=(0,Yo.createContextScope)(j),[vr,Fo]=Pr(j),oo={Root:$o};var Jo=c({base:`
flex pl-twelvepulse pr-fourpulse pt-twopulse
`}),Qo=c({base:`
flex pl-eightpulse pr-fourpulse pt-twopulse
`});var L=require("react/jsx-runtime"),Zo=o=>{let{__scopeSnackbar:e}=o,{onClickFooter:r,layout:t,buttonLabel:a,setPaused:s}=h(k,e),n=()=>{s(!0)},i=()=>{s(!1)};if(t!==void 0)return t==="with-link"?(0,L.jsx)("div",{className:Qo({}),"data-testid":"snackbar-footer-link",onMouseDown:n,onMouseUp:i,children:(0,L.jsx)(oo.Root,{icon:!0,size:"ml",onClick:r,children:a===""||!a?"Link":a})}):(0,L.jsx)("div",{className:Jo({}),"data-testid":"snackbar-footer-button",onMouseDown:n,onMouseUp:i,children:(0,L.jsx)(I.Root,{onClick:r,full:!0,variant:"neutral-secondary",size:"ml",children:a===""||!a?"Button":a})})};var B=x(require("react"),1);var or=require("react");var w=require("react");function jo(o,e,r){let[s,n]=(0,w.useState)(Math.min(Math.max(o,0),100));return(0,w.useEffect)(()=>{n(Math.min(Math.max(o,0),100)),o===100&&r&&r()},[o,r]),(0,w.useEffect)(()=>{if(e){let i=e/100,p=0,m=setInterval(()=>{p+=1,n(b=>Math.min(Math.max(b+1,0),100)),p>=100&&(clearInterval(m),r==null||r())},i);return()=>clearInterval(m)}},[e,r]),{currentPercentage:s,PROGRESS_INDICATOR_MIN_VALUE:0,PROGRESS_INDICATOR_MAX_VALUE:100}}var ro=require("react/jsx-runtime"),xr=c({base:"flex w-full min-w-48 overflow-hidden rounded-pill p-none",variants:{variant:{brand:"*:bg-action-fill-brand-primary-enabled",neutral:"*:bg-text-neutral","neutral-readonly":"*:bg-text-neutral-readonly",inverse:"*:bg-text-neutral-inverse",informative:"*:bg-text-informative-alternative",success:"*:bg-text-success-alternative",warning:"*:bg-text-warning-alternative",danger:"*:bg-text-danger-alternative"},size:{tiny:"h-tiny",mini:"h-3",micro:"h-2",nano:"h-1",pico:"h-[0.125rem]"}},defaultVariants:{variant:"brand",size:"tiny"}}),U=(0,or.forwardRef)((m,p)=>{var b=m,{variant:o,size:e,percentage:r=0,duration:t=0,onComplete:a,bgTransparent:s,className:n}=b,i=u(b,["variant","size","percentage","duration","onComplete","bgTransparent","className"]);if(r>0&&t)throw new Error("As propriedades 'percentage' e 'duration' s\xE3o mutuamente exclusivas. Por favor, forne\xE7a apenas uma delas.");i["aria-labelledby"]||console.warn('A propriedade "aria-labelledby" \xE9 obrigat\xF3ria para acessibilidade. Por favor, forne\xE7a um r\xF3tulo para o componente.');let{currentPercentage:f,PROGRESS_INDICATOR_MIN_VALUE:P,PROGRESS_INDICATOR_MAX_VALUE:v}=jo(r,t,a),T=g(xr({variant:o,size:e,className:s?"bg-transparent":"bg-[--color-fill-neutral-fallback]"}),n);return(0,ro.jsx)("div",d(l({},i),{role:"meter",ref:p,className:T,style:{"--color-fill-neutral-fallback":"#E6E6E6","--progress-width":`${f}%`},"aria-valuenow":f,"aria-valuemin":P,"aria-valuemax":v,children:(0,ro.jsx)("span",{className:g("block h-full w-[--progress-width] rounded-tr-pill rounded-br-pill transition-transform ease-linear")})}))});U.displayName="ProgressIndicator";var rr=c({base:`
max-h-onepulse px-0.5
`});var eo=require("react/jsx-runtime"),er=o=>{let{__scopeSnackbar:e}=o,{duration:r=5e3,type:t,isPaused:a}=h(k,e),s={success:"success",informative:"informative",warning:"warning",danger:"danger","brand-accent":"brand"},[n,i]=B.default.useState(0);B.default.useEffect(()=>{if(a)return;let m=setInterval(()=>{i(b=>{let f=b+100/(r/100);return Math.min(f,100)})},100);return()=>clearInterval(m)},[a,r]);let p=(0,B.useCallback)(()=>s[t],[t]);return(0,eo.jsx)("div",{className:rr({}),"data-testid":"snackbar-timebar",children:(0,eo.jsx)(U,{percentage:n,bgTransparent:!0,size:"nano",variant:p()})})};var tr=c({base:`
flex flex-col min-w-[256px] max-w-[768px] border-quarterpulse
rounded-form border-border-neutral overflow-hidden
pb-fourpulse
`,variants:{type:{"brand-accent":"bg-fill-neutral",informative:"bg-fill-informative-alternative",success:"bg-fill-success-alternative",warning:"bg-fill-warning-alternative",danger:"bg-fill-danger-alternative"}}});var to=require("react/jsx-runtime"),k="Snackbar",sr=o=>{let{type:e,children:r,layout:t,duration:a,buttonLabel:s,onClickFooter:n,__scopeSnackbar:i}=o,[p,m]=(0,nr.useState)(!1);return(0,to.jsx)(Ir,{scope:i,layout:t,type:e,buttonLabel:s,onClickFooter:()=>n==null?void 0:n(),duration:a,isPaused:p,setPaused:m,children:(0,to.jsx)("div",{className:tr({type:e}),"data-testid":"snackbar-root",children:r})})};sr.displayName=k;var[gr]=(0,ar.createContextScope)(k),[Ir,h]=gr(k),ir={Root:sr,Content:Go,Footer:Zo,Timebar:er};0&&(module.exports={Snackbar});
//# sourceMappingURL=index.cjs.map