UNPKG

@fremtind/jkl-formatters-util

Version:
55 lines (54 loc) 2.35 kB
var __defProp = Object.defineProperty; var __getOwnPropSymbols = Object.getOwnPropertySymbols; var __hasOwnProp = Object.prototype.hasOwnProperty; var __propIsEnum = Object.prototype.propertyIsEnumerable; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __spreadValues = (a, b) => { for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]); if (__getOwnPropSymbols) for (var prop of __getOwnPropSymbols(b)) { if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]); } return a; }; var __objRest = (source, exclude) => { var target = {}; for (var prop in source) if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0) target[prop] = source[prop]; if (source != null && __getOwnPropSymbols) for (var prop of __getOwnPropSymbols(source)) { if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop)) target[prop] = source[prop]; } return target; }; import { unicode } from "@fremtind/jkl-constants-util"; import { formatNumber } from "../util/formatNumber"; import { parseNumber } from "../util/parseNumber"; const defaultOptions = { locale: "no-NB", minimumFractionDigits: 0, maximumFractionDigits: 2, suffix: "kr" }; function formatValuta(input, options) { const number = parseNumber(input); if (isNaN(number)) { return input.toString(); } const fractionOptions = Number.isInteger(number) ? {} : { minimumFractionDigits: 2, maximumFractionDigits: 2 }; const suffix = (options == null ? void 0 : options.suffix) !== void 0 ? options.suffix : defaultOptions.suffix; const _a = __spreadValues(__spreadValues(__spreadValues({}, defaultOptions), fractionOptions), options), { prefix } = _a, formatOptions = __objRest(_a, ["prefix"]); const prefixString = (prefix == null ? void 0 : prefix.length) ? "".concat(prefix).concat(unicode.nbsp) : ""; const suffixString = (suffix == null ? void 0 : suffix.length) ? "".concat(unicode.nbsp).concat(suffix) : ""; const formattedNumber = formatNumber(number, formatOptions); return "".concat(prefixString).concat(formattedNumber).concat(suffixString); } export { formatValuta }; //# sourceMappingURL=formatValuta.js.map