{"version":3,"file":"formatValue.mjs","names":[],"sources":["../../../src/base-ui/Statistic/formatValue.ts"],"sourcesContent":["const grouping = new Intl.NumberFormat('en-US', { maximumFractionDigits: 0 });\n\nexport const formatStatisticValue = (\n  value: number | string | undefined,\n  precision?: number,\n): string => {\n  if (value === undefined || value === null) return '';\n  if (typeof value === 'string') {\n    if (!/^-?\\d+(\\.\\d+)?$/.test(value)) return value;\n    return formatStatisticValue(Number(value), precision);\n  }\n  if (!Number.isFinite(value)) return String(value);\n\n  if (precision !== undefined) {\n    return new Intl.NumberFormat('en-US', {\n      maximumFractionDigits: precision,\n      minimumFractionDigits: precision,\n    }).format(value);\n  }\n\n  const raw = String(value);\n  if (raw.includes('e')) return raw;\n\n  const [integer, decimal] = raw.split('.');\n  const grouped = grouping.format(Number(integer));\n\n  return decimal ? `${grouped}.${decimal}` : grouped;\n};\n"],"mappings":";AAAA,MAAM,WAAW,IAAI,KAAK,aAAa,SAAS,EAAE,uBAAuB,EAAE,CAAC;AAE5E,MAAa,wBACX,OACA,cACW;CACX,IAAI,UAAU,KAAA,KAAa,UAAU,MAAM,OAAO;CAClD,IAAI,OAAO,UAAU,UAAU;EAC7B,IAAI,CAAC,kBAAkB,KAAK,KAAK,GAAG,OAAO;EAC3C,OAAO,qBAAqB,OAAO,KAAK,GAAG,SAAS;CACtD;CACA,IAAI,CAAC,OAAO,SAAS,KAAK,GAAG,OAAO,OAAO,KAAK;CAEhD,IAAI,cAAc,KAAA,GAChB,OAAO,IAAI,KAAK,aAAa,SAAS;EACpC,uBAAuB;EACvB,uBAAuB;CACzB,CAAC,CAAC,CAAC,OAAO,KAAK;CAGjB,MAAM,MAAM,OAAO,KAAK;CACxB,IAAI,IAAI,SAAS,GAAG,GAAG,OAAO;CAE9B,MAAM,CAAC,SAAS,WAAW,IAAI,MAAM,GAAG;CACxC,MAAM,UAAU,SAAS,OAAO,OAAO,OAAO,CAAC;CAE/C,OAAO,UAAU,GAAG,QAAQ,GAAG,YAAY;AAC7C"}