summaryrefslogtreecommitdiff
path: root/node_modules/@jet/environment/metrics/helpers/numerics.js
diff options
context:
space:
mode:
authorrxliuli <rxliuli@gmail.com>2025-11-04 05:03:50 +0800
committerrxliuli <rxliuli@gmail.com>2025-11-04 05:03:50 +0800
commitbce557cc2dc767628bed6aac87301a1be7c5431b (patch)
treeb51a051228d01fe3306cd7626d4a96768aadb944 /node_modules/@jet/environment/metrics/helpers/numerics.js
init commit
Diffstat (limited to 'node_modules/@jet/environment/metrics/helpers/numerics.js')
-rw-r--r--node_modules/@jet/environment/metrics/helpers/numerics.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/node_modules/@jet/environment/metrics/helpers/numerics.js b/node_modules/@jet/environment/metrics/helpers/numerics.js
new file mode 100644
index 0000000..822f51f
--- /dev/null
+++ b/node_modules/@jet/environment/metrics/helpers/numerics.js
@@ -0,0 +1,23 @@
+"use strict";
+/**
+ * Number related helper functions for metrics.
+ */
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.reduceSignificantDigits = void 0;
+/**
+ * Reduce significant figures of `value` by `significantDigits`.
+ * @param value - Value to reduce precision of.
+ * @param significantDigits - Number of significant digits to reduce precision by.
+ *
+ * Examples:
+ * value = 123.5, significantDigits = 0, result = 120 (no significant digit reduced)
+ * value = 123.5, significantDigits = 1, result = 120 (1 significant digit reduced)
+ * value = 123.5, significantDigits = 2, result = 100 (2 significant digit reduced)
+ */
+function reduceSignificantDigits(value, significantDigits) {
+ const roundFactor = Math.pow(10.0, significantDigits);
+ const roundingFunction = value > 0.0 ? Math.floor : Math.ceil;
+ return roundingFunction(value / roundFactor) * roundFactor;
+}
+exports.reduceSignificantDigits = reduceSignificantDigits;
+//# sourceMappingURL=numerics.js.map \ No newline at end of file