koval-ui
Version:
React components collection with minimalistic design. Supports theming, layout, and input validation.
3 lines (2 loc) • 1.21 kB
JavaScript
"use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const N=require("react/jsx-runtime"),s=require("react"),q=require("classnames"),y=require("../../internal/locale/useBrowserLocale.cjs"),S=require("./Number.module.css.cjs"),i=require("./types.cjs"),o=s.forwardRef(({value:m,className:l,locale:t,localeMatcher:n=i.LocaleMatchers["best fit"],digitsConfig:e={integer:{minimum:1},significant:{minimum:1,maximum:21},fraction:{}},grouping:r,signDisplay:u=i.SignDisplayModes.auto,...f},b)=>{const x=y.useBrowserLocale(),a=t||x,c=s.useMemo(()=>m?new Intl.NumberFormat(a,{localeMatcher:n,style:i.Styles.percent,minimumIntegerDigits:e.integer?.minimum,minimumFractionDigits:e.fraction?.minimum,minimumSignificantDigits:e.significant?.minimum,maximumSignificantDigits:e.significant?.maximum,maximumFractionDigits:e.fraction?.maximum,useGrouping:r,signDisplay:u}).format(m):"",[e.fraction?.maximum,e.fraction?.minimum,e.integer?.minimum,e.significant?.maximum,e.significant?.minimum,r,a,n,u,m]);return m&&N.jsx("span",{...f,title:c,className:q(S.default.number,l),ref:b,children:c})});o.displayName="NumberPercent";exports.NumberPercent=o;
//# sourceMappingURL=NumberPercent.cjs.map