@pinnacle0/web-ui 0.5.37 → 0.5.39

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.
@@ -1,7 +1,8 @@
1
1
  function rounding(value, algorithm, maxScale) {
2
- if (!Number.isInteger(maxScale) || maxScale < 0 || maxScale > 10) {
3
- throw new Error("[web-ui] NumberUtil.rounding maxScale must be an integer in range [0, 10]");
4
- }
2
+ if (!Number.isInteger(maxScale) || maxScale < 0 || maxScale > 10)
3
+ throw new Error("[web-ui] NumberUtil.rounding: maxScale must be an integer between [0, 10]");
4
+ if (!Number.isFinite(value))
5
+ return value;
5
6
  /**
6
7
  * Take "4.975" as an example.
7
8
  * First, we split the number by the decimal point to get ["4", "975"].
@@ -15,18 +16,17 @@ function rounding(value, algorithm, maxScale) {
15
16
  * Therefore, we first get 4.975 * 10^3 = 4975. Then, we get 4975 / 10^(3 - 2) = 497.5 and we round this number.
16
17
  * In the end, we divide this number by 10^maxScale to obtained the final answer, i.e. 498 / 10^2 = 4.98 (assume algorithm is "round").
17
18
  */
18
- var parts = Number(value).toString().split(".");
19
- var adjustmentScale = parts.length < 2 ? 0 : parts[1].length;
20
- var adjustmentPowerOf10 = Math.pow(10, adjustmentScale);
21
- var isAdjustmentSafe = Number(value) * adjustmentPowerOf10 <= Number.MAX_SAFE_INTEGER;
22
- var powerOf10 = Math.pow(10, maxScale);
23
- if (adjustmentScale > maxScale && isAdjustmentSafe) {
24
- var diffPowerOf10 = Math.pow(10, (adjustmentScale - maxScale));
25
- return Math[algorithm]((value * adjustmentPowerOf10) / diffPowerOf10) / powerOf10;
26
- }
27
- else {
28
- return Math[algorithm](value * powerOf10) / powerOf10;
19
+ // for passing exponential notation string to it
20
+ var func = Math[algorithm];
21
+ var precision = maxScale == null ? 0 : maxScale >= 0 ? Math.min(maxScale, 292) : Math.max(maxScale, -292);
22
+ if (precision) {
23
+ // Shift with exponential notation to avoid floating-point issues.
24
+ var pair = "".concat(value, "e").split("e");
25
+ var roundedValue = func("".concat(pair[0], "e").concat(+pair[1] + precision));
26
+ pair = "".concat(roundedValue, "e").split("e");
27
+ return +"".concat(pair[0], "e").concat(+pair[1] - precision);
29
28
  }
29
+ return func(value);
30
30
  }
31
31
  function roundingToString(value, algorithm, scale) {
32
32
  return rounding(value, algorithm, scale).toFixed(scale);
@@ -1 +1 @@
1
- {"version":3,"file":"NumberUtil.js","sourceRoot":"","sources":["../../src/internal/NumberUtil.ts"],"names":[],"mappings":"AAAA,SAAS,QAAQ,CAAC,KAAa,EAAE,SAAqC,EAAE,QAAgB;IACpF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,EAAE,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IACjG,CAAC;IACD;;;;;;;;;;;;OAYG;IACH,IAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClD,IAAM,eAAe,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC/D,IAAM,mBAAmB,GAAG,SAAA,EAAE,EAAI,eAAe,CAAA,CAAC;IAClD,IAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,mBAAmB,IAAI,MAAM,CAAC,gBAAgB,CAAC;IACxF,IAAM,SAAS,GAAG,SAAA,EAAE,EAAI,QAAQ,CAAA,CAAC;IACjC,IAAI,eAAe,GAAG,QAAQ,IAAI,gBAAgB,EAAE,CAAC;QACjD,IAAM,aAAa,GAAG,SAAA,EAAE,EAAI,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAA,CAAC;QACzD,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,GAAG,mBAAmB,CAAC,GAAG,aAAa,CAAC,GAAG,SAAS,CAAC;IACtF,CAAC;SAAM,CAAC;QACJ,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;IAC1D,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,SAAqC,EAAE,KAAa;IACzF,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAClD,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,sCAA+B,GAAG,8BAAoB,GAAG,MAAG,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,QAAQ,UAAA;IACR,gBAAgB,kBAAA;IAChB,KAAK,OAAA;CACR,CAAC,CAAC"}
1
+ {"version":3,"file":"NumberUtil.js","sourceRoot":"","sources":["../../src/internal/NumberUtil.ts"],"names":[],"mappings":"AAAA,SAAS,QAAQ,CAAC,KAAa,EAAE,SAAqC,EAAE,QAAgB;IACpF,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;IAC/J,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAE1C;;;;;;;;;;;;OAYG;IAEH,gDAAgD;IAChD,IAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAQ,CAAC;IAEpC,IAAM,SAAS,GAAG,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;IAC5G,IAAI,SAAS,EAAE,CAAC;QACZ,kEAAkE;QAClE,IAAI,IAAI,GAAG,UAAG,KAAK,MAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,IAAM,YAAY,GAAG,IAAI,CAAC,UAAG,IAAI,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAE,CAAC,CAAC;QAChE,IAAI,GAAG,UAAG,YAAY,MAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,OAAO,CAAC,UAAG,IAAI,CAAC,CAAC,CAAC,cAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,SAAS,CAAE,CAAC;IACjD,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,SAAqC,EAAE,KAAa;IACzF,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAClD,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,sCAA+B,GAAG,8BAAoB,GAAG,MAAG,CAAC,CAAC;IAClF,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,CAAC,IAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,QAAQ,UAAA;IACR,gBAAgB,kBAAA;IAChB,KAAK,OAAA;CACR,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pinnacle0/web-ui",
3
- "version": "0.5.37",
3
+ "version": "0.5.39",
4
4
  "author": "Pinnacle",
5
5
  "license": "MIT",
6
6
  "sideEffects": [
@@ -20,7 +20,7 @@
20
20
  "@ant-design/cssinjs": "1.17.2",
21
21
  "@ant-design/icons": "5.2.6",
22
22
  "@juggle/resize-observer": "3.4.0",
23
- "@tanstack/react-virtual": "3.0.0-beta.30",
23
+ "@tanstack/react-virtual": "3.0.1",
24
24
  "antd": "5.11.1",
25
25
  "classnames": "2.3.2",
26
26
  "dayjs": "1.11.10",
@@ -35,7 +35,7 @@
35
35
  },
36
36
  "devDependencies": {
37
37
  "@testing-library/dom": "9.3.3",
38
- "@testing-library/jest-dom": "6.1.4",
38
+ "@testing-library/jest-dom": "6.1.5",
39
39
  "@testing-library/react": "14.1.2",
40
40
  "@testing-library/user-event": "14.5.1",
41
41
  "@types/fs-extra": "11.0.4",