@oliasoft-open-source/units 5.4.0 → 5.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +2 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +1 -1
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -12,15 +12,14 @@ const safeToString = (value) => {
|
|
|
12
12
|
* scientific notation are preserved as entered.
|
|
13
13
|
*
|
|
14
14
|
* @param value - numeric value in string representation
|
|
15
|
-
* @param precision - number of significant digits
|
|
16
15
|
* @returns the cosmetically rounded string
|
|
17
16
|
*
|
|
18
17
|
* @example
|
|
19
18
|
* roundNumberCosmetic('9750.000000000004') -> '9750'
|
|
20
19
|
*/
|
|
21
|
-
const roundNumberCosmetic = (value
|
|
20
|
+
const roundNumberCosmetic = (value) => {
|
|
22
21
|
if (require_units.isScientificStringNum(value)) return value;
|
|
23
|
-
return safeToString(require_units.roundToPrecision(require_units.toNum(value),
|
|
22
|
+
return safeToString(require_units.roundToPrecision(require_units.toNum(value), COSMETIC_ROUNDING_DEFAULT_PRECISION));
|
|
24
23
|
};
|
|
25
24
|
//#endregion
|
|
26
25
|
//#region src/index.ts
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["toString","isScientificStringNum","roundToPrecision","toNum"],"sources":["../src/rounding/cosmetic-rounding.ts","../src/index.ts"],"sourcesContent":["import { isScientificStringNum, toNum, toString } from '../numbers/numbers.ts';\nimport { roundToPrecision } from './rounding.ts';\n\nconst COSMETIC_ROUNDING_DEFAULT_PRECISION = 14;\n\nconst safeToString = (value: string | number): string => {\n return String(toString(value));\n};\n/**\n * Applies display-only rounding to remove floating-point conversion noise.\n *\n * The value is rounded to 14 significant digits, while strings written in\n * scientific notation are preserved as entered.\n *\n * @param value - numeric value in string representation\n * @
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["toString","isScientificStringNum","roundToPrecision","toNum"],"sources":["../src/rounding/cosmetic-rounding.ts","../src/index.ts"],"sourcesContent":["import { isScientificStringNum, toNum, toString } from '../numbers/numbers.ts';\nimport { roundToPrecision } from './rounding.ts';\n\nconst COSMETIC_ROUNDING_DEFAULT_PRECISION = 14;\n\nconst safeToString = (value: string | number): string => {\n return String(toString(value));\n};\n\n/**\n * Applies display-only rounding to remove floating-point conversion noise.\n *\n * The value is rounded to 14 significant digits, while strings written in\n * scientific notation are preserved as entered.\n *\n * @param value - numeric value in string representation\n * @returns the cosmetically rounded string\n *\n * @example\n * roundNumberCosmetic('9750.000000000004') -> '9750'\n */\nexport const roundNumberCosmetic = (value: string): string => {\n if (isScientificStringNum(value)) {\n return value;\n }\n\n return safeToString(\n roundToPrecision(toNum(value), COSMETIC_ROUNDING_DEFAULT_PRECISION),\n );\n};\n","/* istanbul ignore file */\nimport {\n label,\n showAltUnitsList,\n getAltUnitsListByQuantity,\n checkAndCleanDecimalComma,\n unitFromKey,\n to,\n split,\n unum,\n toBase,\n altUnitsList,\n convertTable,\n roundNumberWithLabel,\n withUnit,\n unumWithUnit,\n validateAndClean,\n isValueWithUnit,\n getValue,\n getUnit,\n convertSamePrecision,\n convertAndGetValue,\n convertAndGetValueStrict,\n getUnitsForQuantity,\n getQuantities,\n unitFromQuantity,\n withPrettyUnitLabel,\n validateNumber,\n} from './units.ts';\n\nimport {\n ALT_UNITS,\n LABELS,\n UNIT_FROM_KEY,\n KNOWN_CONVERSIONS,\n DEPRECATED_UNITS,\n UNIT_ALIASES,\n INTERMEDIATE_CONVERSIONS,\n KNOWN_UNITS,\n QUANTITIES_DESCRIPTION,\n UNITS_DESCRIPTION,\n} from './constants.ts';\n\nimport {\n isNumeric,\n isNonNumerical,\n isEmptyValueWithUnit,\n allNumbers,\n formatNumber,\n charCount,\n getNumberOfDigitsToShow,\n fraction,\n isFraction,\n asFraction,\n numFraction,\n cleanNumStr,\n cleanNum,\n stripLeadingZeros,\n} from './utils.ts';\n\nimport {\n toNum,\n toString,\n isValidNum,\n isScientificStringNum,\n} from './numbers/numbers.ts';\n\nimport {\n displayNumber,\n displayNumberToFixed,\n} from './numbers/display-number.ts';\n\nimport {\n round,\n roundToFixed,\n roundToPrecision,\n roundToDecimalPrecision,\n roundByMagnitude,\n roundByMagnitudeToFixed,\n roundByRange,\n} from './rounding/rounding.ts';\n\nimport { roundNumberCosmetic } from './rounding/cosmetic-rounding.ts';\n\nimport {\n isCloseTo,\n isDeepCloseTo,\n isCloseToOrLessThan,\n isCloseToOrGreaterThan,\n} from './comparison/comparison.ts';\n\nexport {\n // Units\n label,\n showAltUnitsList,\n getAltUnitsListByQuantity,\n getUnitsForQuantity,\n getQuantities,\n checkAndCleanDecimalComma,\n unitFromKey,\n unitFromQuantity,\n to,\n split,\n unum,\n toBase,\n altUnitsList,\n convertTable,\n roundNumberWithLabel,\n withUnit,\n unumWithUnit,\n validateAndClean,\n isValueWithUnit,\n getValue,\n getUnit,\n convertSamePrecision,\n convertAndGetValue,\n convertAndGetValueStrict,\n withPrettyUnitLabel,\n validateNumber,\n //Rounding\n round,\n roundToFixed,\n roundToPrecision,\n roundToDecimalPrecision,\n roundByMagnitude,\n roundByMagnitudeToFixed,\n roundByRange,\n roundNumberCosmetic,\n //Comparison\n isCloseTo,\n isDeepCloseTo,\n isCloseToOrLessThan,\n isCloseToOrGreaterThan,\n // Utils\n isNumeric,\n isNonNumerical,\n isEmptyValueWithUnit,\n allNumbers,\n formatNumber,\n displayNumber,\n displayNumberToFixed,\n charCount,\n getNumberOfDigitsToShow,\n fraction,\n isFraction,\n asFraction,\n numFraction,\n cleanNumStr,\n cleanNum,\n toNum,\n toString,\n isValidNum,\n isScientificStringNum,\n stripLeadingZeros,\n // Constants\n ALT_UNITS,\n LABELS,\n UNIT_FROM_KEY,\n KNOWN_CONVERSIONS,\n DEPRECATED_UNITS,\n UNIT_ALIASES,\n INTERMEDIATE_CONVERSIONS,\n KNOWN_UNITS,\n QUANTITIES_DESCRIPTION,\n UNITS_DESCRIPTION,\n};\n"],"mappings":";;;AAGA,MAAM,sCAAsC;AAE5C,MAAM,gBAAgB,UAAmC;AACvD,QAAO,OAAOA,cAAAA,SAAS,MAAM,CAAC;;;;;;;;;;;;;;AAehC,MAAa,uBAAuB,UAA0B;AAC5D,KAAIC,cAAAA,sBAAsB,MAAM,CAC9B,QAAO;AAGT,QAAO,aACLC,cAAAA,iBAAiBC,cAAAA,MAAM,MAAM,EAAE,oCAAoC,CACpE"}
|
package/dist/index.d.cts
CHANGED
|
@@ -357,7 +357,7 @@ declare const roundByRange: <Value extends number | string | null | undefined>(v
|
|
|
357
357
|
declare const roundToFixed: <Value extends number | string | null | undefined>(value: Value, n?: number) => Value;
|
|
358
358
|
//#endregion
|
|
359
359
|
//#region src/rounding/cosmetic-rounding.d.ts
|
|
360
|
-
declare const roundNumberCosmetic: (value: string
|
|
360
|
+
declare const roundNumberCosmetic: (value: string) => string;
|
|
361
361
|
//#endregion
|
|
362
362
|
//#region src/comparison/comparison.d.ts
|
|
363
363
|
type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
|
package/dist/index.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/constants.ts","../src/utils.ts","../src/numbers/display-number.ts","../src/rounding/rounding.ts","../src/rounding/cosmetic-rounding.ts","../src/comparison/comparison.ts"],"mappings":";;;;cAQa,MAAA,EAAQ,MAAA;AAAA,cAgOR,SAAA,EAAW,MAAA;AAAA,cAiMX,aAAA,EAAe,MAAA;AAAA,cA8Gf,iBAAA,EAAmB,MAAA,UAAgB,GAAA;AAAA,cA4gBnC,gBAAA,EAAkB,MAAA;AAAA,cAclB,YAAA,EAAc,MAAA;AAAA,cAYd,wBAAA,EAA0B,MAAA;AAAA,cA0K1B,WAAA;AAAA,cAaA,sBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA8FA,iBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCtzCG,oBAAA,CAAqB,GAAA;AAAA,cAkBxB,UAAA,GAAc,KAAA;AAAA,iBAeX,SAAA,CAAU,CAAA;AAAA,iBA6BV,UAAA,CAAW,GAAA;AAAA,cAWd,YAAA,GACX,MAAA;AAAA,iBAUc,SAAA,CAAU,GAAA,mBAAsB,GAAA;AAAA,iBAyBhC,uBAAA,CACd,GAAA,mBACA,YAAA;AAAA,iBAsCc,QAAA,CAAS,GAAA,wBAA2B,QAAA,UAAkB,GAAA;AAAA,iBA8BtD,UAAA,CAAW,GAAA;AAAA,iBAsBX,WAAA,CAAY,GAAA;AAAA,iBAgDZ,WAAA,CAAY,GAAA;AAAA,cAwCf,iBAAA,GAAqB,KAAA;AAAA,iBAgBlB,QAAA,CAAS,GAAA;AAAA,cAaZ,cAAA,GAAkB,KAAA;;;KCjU1B,oBAAA;EACH,UAAA;EACA,SAAA;EACA,mBAAA;EACA,mBAAA;EACA,0BAAA;EACA,QAAA;EACA,oBAAA;EACA,gBAAA;AAAA;AAAA,cAqHW,aAAA,qDACX,KAAA,EAAO,KAAA,EACP,OAAA,GAAU,oBAAA;AAAA,cA0CC,oBAAA,4CACX,KAAA,EAAO,KAAA,EACP,OAAA,GAAU,oBAAA;;;cC/JC,KAAA,qDACX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyGU,gBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyCU,uBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAqEU,gBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyCU,uBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAkEU,YAAA,qDACX,KAAA,EAAO,KAAA,EACP,GAAA,UACA,GAAA,UACA,CAAA,cACC,KAAA;AAAA,cAsCU,YAAA,qDACX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;;;cCvZU,mBAAA,
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../src/constants.ts","../src/utils.ts","../src/numbers/display-number.ts","../src/rounding/rounding.ts","../src/rounding/cosmetic-rounding.ts","../src/comparison/comparison.ts"],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -357,7 +357,7 @@ declare const roundByRange: <Value extends number | string | null | undefined>(v
|
|
|
357
357
|
declare const roundToFixed: <Value extends number | string | null | undefined>(value: Value, n?: number) => Value;
|
|
358
358
|
//#endregion
|
|
359
359
|
//#region src/rounding/cosmetic-rounding.d.ts
|
|
360
|
-
declare const roundNumberCosmetic: (value: string
|
|
360
|
+
declare const roundNumberCosmetic: (value: string) => string;
|
|
361
361
|
//#endregion
|
|
362
362
|
//#region src/comparison/comparison.d.ts
|
|
363
363
|
type Without<T, U> = { [P in Exclude<keyof T, keyof U>]?: never };
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/constants.ts","../src/utils.ts","../src/numbers/display-number.ts","../src/rounding/rounding.ts","../src/rounding/cosmetic-rounding.ts","../src/comparison/comparison.ts"],"mappings":";;;;cAQa,MAAA,EAAQ,MAAA;AAAA,cAgOR,SAAA,EAAW,MAAA;AAAA,cAiMX,aAAA,EAAe,MAAA;AAAA,cA8Gf,iBAAA,EAAmB,MAAA,UAAgB,GAAA;AAAA,cA4gBnC,gBAAA,EAAkB,MAAA;AAAA,cAclB,YAAA,EAAc,MAAA;AAAA,cAYd,wBAAA,EAA0B,MAAA;AAAA,cA0K1B,WAAA;AAAA,cAaA,sBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA8FA,iBAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBCtzCG,oBAAA,CAAqB,GAAA;AAAA,cAkBxB,UAAA,GAAc,KAAA;AAAA,iBAeX,SAAA,CAAU,CAAA;AAAA,iBA6BV,UAAA,CAAW,GAAA;AAAA,cAWd,YAAA,GACX,MAAA;AAAA,iBAUc,SAAA,CAAU,GAAA,mBAAsB,GAAA;AAAA,iBAyBhC,uBAAA,CACd,GAAA,mBACA,YAAA;AAAA,iBAsCc,QAAA,CAAS,GAAA,wBAA2B,QAAA,UAAkB,GAAA;AAAA,iBA8BtD,UAAA,CAAW,GAAA;AAAA,iBAsBX,WAAA,CAAY,GAAA;AAAA,iBAgDZ,WAAA,CAAY,GAAA;AAAA,cAwCf,iBAAA,GAAqB,KAAA;AAAA,iBAgBlB,QAAA,CAAS,GAAA;AAAA,cAaZ,cAAA,GAAkB,KAAA;;;KCjU1B,oBAAA;EACH,UAAA;EACA,SAAA;EACA,mBAAA;EACA,mBAAA;EACA,0BAAA;EACA,QAAA;EACA,oBAAA;EACA,gBAAA;AAAA;AAAA,cAqHW,aAAA,qDACX,KAAA,EAAO,KAAA,EACP,OAAA,GAAU,oBAAA;AAAA,cA0CC,oBAAA,4CACX,KAAA,EAAO,KAAA,EACP,OAAA,GAAU,oBAAA;;;cC/JC,KAAA,qDACX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyGU,gBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyCU,uBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAqEU,gBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAyCU,uBAAA,qDAGX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;AAAA,cAkEU,YAAA,qDACX,KAAA,EAAO,KAAA,EACP,GAAA,UACA,GAAA,UACA,CAAA,cACC,KAAA;AAAA,cAsCU,YAAA,qDACX,KAAA,EAAO,KAAA,EACP,CAAA,cACC,KAAA;;;cCvZU,mBAAA,
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/constants.ts","../src/utils.ts","../src/numbers/display-number.ts","../src/rounding/rounding.ts","../src/rounding/cosmetic-rounding.ts","../src/comparison/comparison.ts"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -11,15 +11,14 @@ const safeToString = (value) => {
|
|
|
11
11
|
* scientific notation are preserved as entered.
|
|
12
12
|
*
|
|
13
13
|
* @param value - numeric value in string representation
|
|
14
|
-
* @param precision - number of significant digits
|
|
15
14
|
* @returns the cosmetically rounded string
|
|
16
15
|
*
|
|
17
16
|
* @example
|
|
18
17
|
* roundNumberCosmetic('9750.000000000004') -> '9750'
|
|
19
18
|
*/
|
|
20
|
-
const roundNumberCosmetic = (value
|
|
19
|
+
const roundNumberCosmetic = (value) => {
|
|
21
20
|
if (isScientificStringNum(value)) return value;
|
|
22
|
-
return safeToString(roundToPrecision(toNum(value),
|
|
21
|
+
return safeToString(roundToPrecision(toNum(value), COSMETIC_ROUNDING_DEFAULT_PRECISION));
|
|
23
22
|
};
|
|
24
23
|
//#endregion
|
|
25
24
|
//#region src/index.ts
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/rounding/cosmetic-rounding.ts","../src/index.ts"],"sourcesContent":["import { isScientificStringNum, toNum, toString } from '../numbers/numbers.ts';\nimport { roundToPrecision } from './rounding.ts';\n\nconst COSMETIC_ROUNDING_DEFAULT_PRECISION = 14;\n\nconst safeToString = (value: string | number): string => {\n return String(toString(value));\n};\n/**\n * Applies display-only rounding to remove floating-point conversion noise.\n *\n * The value is rounded to 14 significant digits, while strings written in\n * scientific notation are preserved as entered.\n *\n * @param value - numeric value in string representation\n * @
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/rounding/cosmetic-rounding.ts","../src/index.ts"],"sourcesContent":["import { isScientificStringNum, toNum, toString } from '../numbers/numbers.ts';\nimport { roundToPrecision } from './rounding.ts';\n\nconst COSMETIC_ROUNDING_DEFAULT_PRECISION = 14;\n\nconst safeToString = (value: string | number): string => {\n return String(toString(value));\n};\n\n/**\n * Applies display-only rounding to remove floating-point conversion noise.\n *\n * The value is rounded to 14 significant digits, while strings written in\n * scientific notation are preserved as entered.\n *\n * @param value - numeric value in string representation\n * @returns the cosmetically rounded string\n *\n * @example\n * roundNumberCosmetic('9750.000000000004') -> '9750'\n */\nexport const roundNumberCosmetic = (value: string): string => {\n if (isScientificStringNum(value)) {\n return value;\n }\n\n return safeToString(\n roundToPrecision(toNum(value), COSMETIC_ROUNDING_DEFAULT_PRECISION),\n );\n};\n","/* istanbul ignore file */\nimport {\n label,\n showAltUnitsList,\n getAltUnitsListByQuantity,\n checkAndCleanDecimalComma,\n unitFromKey,\n to,\n split,\n unum,\n toBase,\n altUnitsList,\n convertTable,\n roundNumberWithLabel,\n withUnit,\n unumWithUnit,\n validateAndClean,\n isValueWithUnit,\n getValue,\n getUnit,\n convertSamePrecision,\n convertAndGetValue,\n convertAndGetValueStrict,\n getUnitsForQuantity,\n getQuantities,\n unitFromQuantity,\n withPrettyUnitLabel,\n validateNumber,\n} from './units.ts';\n\nimport {\n ALT_UNITS,\n LABELS,\n UNIT_FROM_KEY,\n KNOWN_CONVERSIONS,\n DEPRECATED_UNITS,\n UNIT_ALIASES,\n INTERMEDIATE_CONVERSIONS,\n KNOWN_UNITS,\n QUANTITIES_DESCRIPTION,\n UNITS_DESCRIPTION,\n} from './constants.ts';\n\nimport {\n isNumeric,\n isNonNumerical,\n isEmptyValueWithUnit,\n allNumbers,\n formatNumber,\n charCount,\n getNumberOfDigitsToShow,\n fraction,\n isFraction,\n asFraction,\n numFraction,\n cleanNumStr,\n cleanNum,\n stripLeadingZeros,\n} from './utils.ts';\n\nimport {\n toNum,\n toString,\n isValidNum,\n isScientificStringNum,\n} from './numbers/numbers.ts';\n\nimport {\n displayNumber,\n displayNumberToFixed,\n} from './numbers/display-number.ts';\n\nimport {\n round,\n roundToFixed,\n roundToPrecision,\n roundToDecimalPrecision,\n roundByMagnitude,\n roundByMagnitudeToFixed,\n roundByRange,\n} from './rounding/rounding.ts';\n\nimport { roundNumberCosmetic } from './rounding/cosmetic-rounding.ts';\n\nimport {\n isCloseTo,\n isDeepCloseTo,\n isCloseToOrLessThan,\n isCloseToOrGreaterThan,\n} from './comparison/comparison.ts';\n\nexport {\n // Units\n label,\n showAltUnitsList,\n getAltUnitsListByQuantity,\n getUnitsForQuantity,\n getQuantities,\n checkAndCleanDecimalComma,\n unitFromKey,\n unitFromQuantity,\n to,\n split,\n unum,\n toBase,\n altUnitsList,\n convertTable,\n roundNumberWithLabel,\n withUnit,\n unumWithUnit,\n validateAndClean,\n isValueWithUnit,\n getValue,\n getUnit,\n convertSamePrecision,\n convertAndGetValue,\n convertAndGetValueStrict,\n withPrettyUnitLabel,\n validateNumber,\n //Rounding\n round,\n roundToFixed,\n roundToPrecision,\n roundToDecimalPrecision,\n roundByMagnitude,\n roundByMagnitudeToFixed,\n roundByRange,\n roundNumberCosmetic,\n //Comparison\n isCloseTo,\n isDeepCloseTo,\n isCloseToOrLessThan,\n isCloseToOrGreaterThan,\n // Utils\n isNumeric,\n isNonNumerical,\n isEmptyValueWithUnit,\n allNumbers,\n formatNumber,\n displayNumber,\n displayNumberToFixed,\n charCount,\n getNumberOfDigitsToShow,\n fraction,\n isFraction,\n asFraction,\n numFraction,\n cleanNumStr,\n cleanNum,\n toNum,\n toString,\n isValidNum,\n isScientificStringNum,\n stripLeadingZeros,\n // Constants\n ALT_UNITS,\n LABELS,\n UNIT_FROM_KEY,\n KNOWN_CONVERSIONS,\n DEPRECATED_UNITS,\n UNIT_ALIASES,\n INTERMEDIATE_CONVERSIONS,\n KNOWN_UNITS,\n QUANTITIES_DESCRIPTION,\n UNITS_DESCRIPTION,\n};\n"],"mappings":";;AAGA,MAAM,sCAAsC;AAE5C,MAAM,gBAAgB,UAAmC;AACvD,QAAO,OAAO,SAAS,MAAM,CAAC;;;;;;;;;;;;;;AAehC,MAAa,uBAAuB,UAA0B;AAC5D,KAAI,sBAAsB,MAAM,CAC9B,QAAO;AAGT,QAAO,aACL,iBAAiB,MAAM,MAAM,EAAE,oCAAoC,CACpE"}
|