UNPKG

@visa/nova-react

Version:

Visa Product Design System Nova React library. Compatible with React ^19.

2 lines (1 loc) 858 B
import{jsxs as r,jsx as a}from"react/jsx-runtime";import e from"clsx";const s="v-progress",l={large:72,small:48},c=({className:c,children:i,indeterminate:t=!1,paused:o=!1,progressSize:n="large",style:m,value:u,...d})=>{const p="string"==typeof n?l[n]:n,g=2*Math.PI*(p/2-2);return r("div",{className:e(s,`${s}-circular`,"small"===n&&`${s}-circular-small`,t&&`${s}-indeterminate`,c),role:t?void 0:"progressbar",style:{animationPlayState:o?"paused":"running","--v-progress-circular-size":`${p}px`,...m},...d,children:[r("svg",{className:`${s}-circular-track`,children:[a("circle",{className:`${s}-circular-background`,style:t?{strokeDasharray:""+(g-g/5)}:void 0}),a("circle",{className:`${s}-circular-bar`,style:{strokeDasharray:t?""+(g-g/5):`${g*(u||0)/100}, ${g}`,strokeDashoffset:t?null:"0"}})]}),i]})};c.displayName="ProgressCircular";export{c as default};