UNPKG

laif-ds

Version:

Design System di Laif con componenti React basati su principi di Atomic Design

70 lines (69 loc) 3.1 kB
"use client"; import D from "./exponent.js"; import H from "./formatGroup.js"; import J from "./formatNumerals.js"; import z from "./formatSpecifier.js"; import K from "./formatTrim.js"; import A from "./formatTypes.js"; import { prefixExponent as O } from "./formatPrefixAuto.js"; import N from "./identity.js"; var C = Array.prototype.map, E = ["y", "z", "a", "f", "p", "n", "µ", "m", "", "k", "M", "G", "T", "P", "E", "Z", "Y"]; function nn(r) { var M = r.grouping === void 0 || r.thousands === void 0 ? N : H(C.call(r.grouping, Number), r.thousands + ""), G = r.currency === void 0 ? "" : r.currency[0] + "", I = r.currency === void 0 ? "" : r.currency[1] + "", L = r.decimal === void 0 ? "." : r.decimal + "", $ = r.numerals === void 0 ? N : J(C.call(r.numerals, String)), j = r.percent === void 0 ? "%" : r.percent + "", F = r.minus === void 0 ? "−" : r.minus + "", X = r.nan === void 0 ? "NaN" : r.nan + ""; function w(t) { t = z(t); var a = t.fill, h = t.align, m = t.sign, g = t.symbol, s = t.zero, u = t.width, b = t.comma, d = t.precision, k = t.trim, i = t.type; i === "n" ? (b = !0, i = "g") : A[i] || (d === void 0 && (d = 12), k = !0, i = "g"), (s || a === "0" && h === "=") && (s = !0, a = "0", h = "="); var Z = g === "$" ? G : g === "#" && /[boxX]/.test(i) ? "0" + i.toLowerCase() : "", q = g === "$" ? I : /[%p]/.test(i) ? j : "", S = A[i], B = /[defgprs%]/.test(i); d = d === void 0 ? 6 : /[gprs]/.test(i) ? Math.max(1, Math.min(21, d)) : Math.max(0, Math.min(20, d)); function P(n) { var e = Z, f = q, p, T, y; if (i === "c") f = S(n) + f, n = ""; else { n = +n; var x = n < 0 || 1 / n < 0; if (n = isNaN(n) ? X : S(Math.abs(n), d), k && (n = K(n)), x && +n == 0 && m !== "+" && (x = !1), e = (x ? m === "(" ? m : F : m === "-" || m === "(" ? "" : m) + e, f = (i === "s" ? E[8 + O / 3] : "") + f + (x && m === "(" ? ")" : ""), B) { for (p = -1, T = n.length; ++p < T; ) if (y = n.charCodeAt(p), 48 > y || y > 57) { f = (y === 46 ? L + n.slice(p + 1) : n.slice(p)) + f, n = n.slice(0, p); break; } } } b && !s && (n = M(n, 1 / 0)); var c = e.length + n.length + f.length, o = c < u ? new Array(u - c + 1).join(a) : ""; switch (b && s && (n = M(o + n, o.length ? u - f.length : 1 / 0), o = ""), h) { case "<": n = e + n + f + o; break; case "=": n = e + o + n + f; break; case "^": n = o.slice(0, c = o.length >> 1) + e + n + f + o.slice(c); break; default: n = o + e + n + f; break; } return $(n); } return P.toString = function() { return t + ""; }, P; } function Y(t, a) { var h = w((t = z(t), t.type = "f", t)), m = Math.max(-8, Math.min(8, Math.floor(D(a) / 3))) * 3, g = Math.pow(10, -m), s = E[8 + m / 3]; return function(u) { return h(g * u) + s; }; } return { format: w, formatPrefix: Y }; } export { nn as default };