| 123456789101112131415161718192021222324252627282930313233343536 |
- "use strict";
- Object.defineProperty(exports, "__esModule", { value: true });
- exports.floatFormatter = exports.keepSignificantDigits = exports.integerFormatter = void 0;
- const leftPadding = (size) => {
- return (input) => {
- if (input.length < size) {
- return " ".repeat(size - input.length) + input;
- }
- return input;
- };
- };
- exports.integerFormatter = (size) => {
- const padding = leftPadding(size);
- return (integer) => padding("" + integer);
- };
- const { floor, log10, pow } = Math;
- const numberOfDigits = (n) => floor(log10(n) + 1);
- exports.keepSignificantDigits = (digits) => (value) => {
- const valueDigits = numberOfDigits(value);
- if (valueDigits > digits) {
- const extraDigits = valueDigits - digits;
- const magnitude = pow(10, extraDigits);
- return value - (value % magnitude);
- }
- return value;
- };
- exports.floatFormatter = (size, fractionDigits) => {
- const numberFormatter = new Intl.NumberFormat("en-US", {
- maximumFractionDigits: fractionDigits,
- minimumFractionDigits: fractionDigits,
- useGrouping: false,
- });
- const padding = leftPadding(size);
- return (float) => padding(numberFormatter.format(float));
- };
- //# sourceMappingURL=formatters.js.map
|