@keplr-wallet/unit 0.12.0-alpha.0 → 0.12.0-alpha.2
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/LICENSE +8 -2
- package/build/coin-pretty.d.ts +1 -1
- package/build/coin-utils.d.ts +2 -7
- package/build/coin-utils.js +2 -20
- package/build/coin-utils.js.map +1 -1
- package/build/coin.js +4 -4
- package/build/coin.js.map +1 -1
- package/build/decimal.d.ts +10 -5
- package/build/decimal.js +101 -60
- package/build/decimal.js.map +1 -1
- package/build/decimal.spec.js +23 -0
- package/build/decimal.spec.js.map +1 -1
- package/build/etc.spec.js +58 -58
- package/build/etc.spec.js.map +1 -1
- package/build/index.js +5 -1
- package/build/index.js.map +1 -1
- package/build/int-pretty.d.ts +1 -1
- package/build/int.d.ts +3 -3
- package/build/int.js +15 -22
- package/build/int.js.map +1 -1
- package/build/price-pretty.d.ts +1 -1
- package/build/rate-pretty.d.ts +1 -1
- package/build/utils.d.ts +7 -0
- package/build/utils.js +25 -0
- package/build/utils.js.map +1 -0
- package/package.json +3 -4
- package/src/coin-utils.ts +2 -24
- package/src/decimal.spec.ts +26 -0
- package/src/decimal.ts +69 -16
- package/src/int.ts +5 -9
- package/src/utils.ts +24 -0
package/build/etc.spec.js
CHANGED
@@ -3,64 +3,64 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const etc_1 = require("./etc");
|
4
4
|
describe("Test etc utils", () => {
|
5
5
|
it("Test exponentDecStringToDecString", () => {
|
6
|
-
expect(etc_1.exponentDecStringToDecString("1e+0")).toBe("1");
|
7
|
-
expect(etc_1.exponentDecStringToDecString("1e+1")).toBe("10");
|
8
|
-
expect(etc_1.exponentDecStringToDecString("123e+1")).toBe("1230");
|
9
|
-
expect(etc_1.exponentDecStringToDecString("123e+2")).toBe("12300");
|
10
|
-
expect(etc_1.exponentDecStringToDecString("123e+3")).toBe("123000");
|
11
|
-
expect(etc_1.exponentDecStringToDecString("123e+4")).toBe("1230000");
|
12
|
-
expect(etc_1.exponentDecStringToDecString("-1e+0")).toBe("-1");
|
13
|
-
expect(etc_1.exponentDecStringToDecString("-1e+1")).toBe("-10");
|
14
|
-
expect(etc_1.exponentDecStringToDecString("-123e+1")).toBe("-1230");
|
15
|
-
expect(etc_1.exponentDecStringToDecString("-123e+2")).toBe("-12300");
|
16
|
-
expect(etc_1.exponentDecStringToDecString("-123e+3")).toBe("-123000");
|
17
|
-
expect(etc_1.exponentDecStringToDecString("-123e+4")).toBe("-1230000");
|
18
|
-
expect(etc_1.exponentDecStringToDecString("1.2e+0")).toBe("1.2");
|
19
|
-
expect(etc_1.exponentDecStringToDecString("1.2e+1")).toBe("12");
|
20
|
-
expect(etc_1.exponentDecStringToDecString("1.23e+1")).toBe("12.3");
|
21
|
-
expect(etc_1.exponentDecStringToDecString("1.23e+2")).toBe("123");
|
22
|
-
expect(etc_1.exponentDecStringToDecString("1.23e+3")).toBe("1230");
|
23
|
-
expect(etc_1.exponentDecStringToDecString("1.23e+4")).toBe("12300");
|
24
|
-
expect(etc_1.exponentDecStringToDecString("-1.2e+0")).toBe("-1.2");
|
25
|
-
expect(etc_1.exponentDecStringToDecString("-1.2e+1")).toBe("-12");
|
26
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e+1")).toBe("-12.3");
|
27
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e+2")).toBe("-123");
|
28
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e+3")).toBe("-1230");
|
29
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e+4")).toBe("-12300");
|
30
|
-
expect(etc_1.exponentDecStringToDecString("1e-0")).toBe("1");
|
31
|
-
expect(etc_1.exponentDecStringToDecString("1e-1")).toBe("0.1");
|
32
|
-
expect(etc_1.exponentDecStringToDecString("123e-1")).toBe("12.3");
|
33
|
-
expect(etc_1.exponentDecStringToDecString("123e-2")).toBe("1.23");
|
34
|
-
expect(etc_1.exponentDecStringToDecString("123e-3")).toBe("0.123");
|
35
|
-
expect(etc_1.exponentDecStringToDecString("123e-4")).toBe("0.0123");
|
36
|
-
expect(etc_1.exponentDecStringToDecString("-1e-0")).toBe("-1");
|
37
|
-
expect(etc_1.exponentDecStringToDecString("-1e-1")).toBe("-0.1");
|
38
|
-
expect(etc_1.exponentDecStringToDecString("-123e-1")).toBe("-12.3");
|
39
|
-
expect(etc_1.exponentDecStringToDecString("-123e-2")).toBe("-1.23");
|
40
|
-
expect(etc_1.exponentDecStringToDecString("-123e-3")).toBe("-0.123");
|
41
|
-
expect(etc_1.exponentDecStringToDecString("-123e-4")).toBe("-0.0123");
|
42
|
-
expect(etc_1.exponentDecStringToDecString("1.2e-0")).toBe("1.2");
|
43
|
-
expect(etc_1.exponentDecStringToDecString("1.2e-1")).toBe("0.12");
|
44
|
-
expect(etc_1.exponentDecStringToDecString("1.23e-1")).toBe("0.123");
|
45
|
-
expect(etc_1.exponentDecStringToDecString("1.23e-2")).toBe("0.0123");
|
46
|
-
expect(etc_1.exponentDecStringToDecString("1.23e-3")).toBe("0.00123");
|
47
|
-
expect(etc_1.exponentDecStringToDecString("1.23e-4")).toBe("0.000123");
|
48
|
-
expect(etc_1.exponentDecStringToDecString("-1.2e-0")).toBe("-1.2");
|
49
|
-
expect(etc_1.exponentDecStringToDecString("-1.2e-1")).toBe("-0.12");
|
50
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e-1")).toBe("-0.123");
|
51
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e-2")).toBe("-0.0123");
|
52
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e-3")).toBe("-0.00123");
|
53
|
-
expect(etc_1.exponentDecStringToDecString("-1.23e-4")).toBe("-0.000123");
|
54
|
-
expect(etc_1.exponentDecStringToDecString("0.00123e+1")).toBe("0.0123");
|
55
|
-
expect(etc_1.exponentDecStringToDecString("0.00123e-1")).toBe("0.000123");
|
56
|
-
expect(etc_1.exponentDecStringToDecString("0.00123e+4")).toBe("12.3");
|
57
|
-
expect(etc_1.exponentDecStringToDecString("0.00123e-4")).toBe("0.000000123");
|
58
|
-
expect(etc_1.exponentDecStringToDecString("1234.567e+2")).toBe("123456.7");
|
59
|
-
expect(etc_1.exponentDecStringToDecString("1234.567e+3")).toBe("1234567");
|
60
|
-
expect(etc_1.exponentDecStringToDecString("1234.567e+4")).toBe("12345670");
|
61
|
-
expect(etc_1.exponentDecStringToDecString("1234.567e+10")).toBe("12345670000000");
|
62
|
-
expect(etc_1.exponentDecStringToDecString("-0.00123e+1")).toBe("-0.0123");
|
63
|
-
expect(etc_1.exponentDecStringToDecString("-0.00123e-1")).toBe("-0.000123");
|
6
|
+
expect((0, etc_1.exponentDecStringToDecString)("1e+0")).toBe("1");
|
7
|
+
expect((0, etc_1.exponentDecStringToDecString)("1e+1")).toBe("10");
|
8
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e+1")).toBe("1230");
|
9
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e+2")).toBe("12300");
|
10
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e+3")).toBe("123000");
|
11
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e+4")).toBe("1230000");
|
12
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1e+0")).toBe("-1");
|
13
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1e+1")).toBe("-10");
|
14
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e+1")).toBe("-1230");
|
15
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e+2")).toBe("-12300");
|
16
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e+3")).toBe("-123000");
|
17
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e+4")).toBe("-1230000");
|
18
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.2e+0")).toBe("1.2");
|
19
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.2e+1")).toBe("12");
|
20
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e+1")).toBe("12.3");
|
21
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e+2")).toBe("123");
|
22
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e+3")).toBe("1230");
|
23
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e+4")).toBe("12300");
|
24
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.2e+0")).toBe("-1.2");
|
25
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.2e+1")).toBe("-12");
|
26
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e+1")).toBe("-12.3");
|
27
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e+2")).toBe("-123");
|
28
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e+3")).toBe("-1230");
|
29
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e+4")).toBe("-12300");
|
30
|
+
expect((0, etc_1.exponentDecStringToDecString)("1e-0")).toBe("1");
|
31
|
+
expect((0, etc_1.exponentDecStringToDecString)("1e-1")).toBe("0.1");
|
32
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e-1")).toBe("12.3");
|
33
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e-2")).toBe("1.23");
|
34
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e-3")).toBe("0.123");
|
35
|
+
expect((0, etc_1.exponentDecStringToDecString)("123e-4")).toBe("0.0123");
|
36
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1e-0")).toBe("-1");
|
37
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1e-1")).toBe("-0.1");
|
38
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e-1")).toBe("-12.3");
|
39
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e-2")).toBe("-1.23");
|
40
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e-3")).toBe("-0.123");
|
41
|
+
expect((0, etc_1.exponentDecStringToDecString)("-123e-4")).toBe("-0.0123");
|
42
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.2e-0")).toBe("1.2");
|
43
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.2e-1")).toBe("0.12");
|
44
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e-1")).toBe("0.123");
|
45
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e-2")).toBe("0.0123");
|
46
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e-3")).toBe("0.00123");
|
47
|
+
expect((0, etc_1.exponentDecStringToDecString)("1.23e-4")).toBe("0.000123");
|
48
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.2e-0")).toBe("-1.2");
|
49
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.2e-1")).toBe("-0.12");
|
50
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e-1")).toBe("-0.123");
|
51
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e-2")).toBe("-0.0123");
|
52
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e-3")).toBe("-0.00123");
|
53
|
+
expect((0, etc_1.exponentDecStringToDecString)("-1.23e-4")).toBe("-0.000123");
|
54
|
+
expect((0, etc_1.exponentDecStringToDecString)("0.00123e+1")).toBe("0.0123");
|
55
|
+
expect((0, etc_1.exponentDecStringToDecString)("0.00123e-1")).toBe("0.000123");
|
56
|
+
expect((0, etc_1.exponentDecStringToDecString)("0.00123e+4")).toBe("12.3");
|
57
|
+
expect((0, etc_1.exponentDecStringToDecString)("0.00123e-4")).toBe("0.000000123");
|
58
|
+
expect((0, etc_1.exponentDecStringToDecString)("1234.567e+2")).toBe("123456.7");
|
59
|
+
expect((0, etc_1.exponentDecStringToDecString)("1234.567e+3")).toBe("1234567");
|
60
|
+
expect((0, etc_1.exponentDecStringToDecString)("1234.567e+4")).toBe("12345670");
|
61
|
+
expect((0, etc_1.exponentDecStringToDecString)("1234.567e+10")).toBe("12345670000000");
|
62
|
+
expect((0, etc_1.exponentDecStringToDecString)("-0.00123e+1")).toBe("-0.0123");
|
63
|
+
expect((0, etc_1.exponentDecStringToDecString)("-0.00123e-1")).toBe("-0.000123");
|
64
64
|
});
|
65
65
|
});
|
66
66
|
//# sourceMappingURL=etc.spec.js.map
|
package/build/etc.spec.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"etc.spec.js","sourceRoot":"","sources":["../src/etc.spec.ts"],"names":[],"mappings":";;AAAA,+BAAqD;AAErD,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;QAC3C,MAAM,CAAC,kCAA4B,
|
1
|
+
{"version":3,"file":"etc.spec.js","sourceRoot":"","sources":["../src/etc.spec.ts"],"names":[],"mappings":"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"}
|
package/build/index.js
CHANGED
@@ -1,7 +1,11 @@
|
|
1
1
|
"use strict";
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
3
|
if (k2 === undefined) k2 = k;
|
4
|
-
Object.
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
7
|
+
}
|
8
|
+
Object.defineProperty(o, k2, desc);
|
5
9
|
}) : (function(o, m, k, k2) {
|
6
10
|
if (k2 === undefined) k2 = k;
|
7
11
|
o[k2] = m[k];
|
package/build/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,gDAA8B;AAC9B,yCAAuB;AACvB,wCAAsB;AACtB,4CAA0B;AAC1B,+CAA6B;AAC7B,8CAA4B;AAC5B,iDAA+B;AAC/B,gDAA8B"}
|
package/build/int-pretty.d.ts
CHANGED
package/build/int.d.ts
CHANGED
@@ -1,8 +1,9 @@
|
|
1
1
|
import bigInteger from "big-integer";
|
2
|
-
import { Dec } from "./decimal";
|
2
|
+
import type { Dec } from "./decimal";
|
3
3
|
export declare class Int {
|
4
4
|
protected static maxInt: bigInteger.BigInteger;
|
5
5
|
protected int: bigInteger.BigInteger;
|
6
|
+
toDec: () => Dec;
|
6
7
|
/**
|
7
8
|
* @param int - Parse a number | bigInteger | string into a bigInt.
|
8
9
|
*/
|
@@ -26,11 +27,11 @@ export declare class Int {
|
|
26
27
|
mod(i: Int): Int;
|
27
28
|
neg(): Int;
|
28
29
|
pow(i: Uint): Int;
|
29
|
-
toDec(): Dec;
|
30
30
|
toBigNumber(): bigInteger.BigInteger;
|
31
31
|
}
|
32
32
|
export declare class Uint {
|
33
33
|
protected uint: bigInteger.BigInteger;
|
34
|
+
toDec: () => Dec;
|
34
35
|
/**
|
35
36
|
* @param uint - Parse a number | bigInteger | string into a bigUint.
|
36
37
|
*/
|
@@ -49,6 +50,5 @@ export declare class Uint {
|
|
49
50
|
div(i: Uint): Uint;
|
50
51
|
mod(i: Uint): Uint;
|
51
52
|
pow(i: Uint): Uint;
|
52
|
-
toDec(): Dec;
|
53
53
|
toBigNumber(): bigInteger.BigInteger;
|
54
54
|
}
|
package/build/int.js
CHANGED
@@ -5,7 +5,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
exports.Uint = exports.Int = void 0;
|
7
7
|
const big_integer_1 = __importDefault(require("big-integer"));
|
8
|
-
const decimal_1 = require("./decimal");
|
9
8
|
const etc_1 = require("./etc");
|
10
9
|
class Int {
|
11
10
|
/**
|
@@ -16,21 +15,21 @@ class Int {
|
|
16
15
|
int = int.toString();
|
17
16
|
}
|
18
17
|
if (typeof int === "string") {
|
19
|
-
if (!etc_1.isValidIntegerString(int)) {
|
20
|
-
if (etc_1.isExponentDecString(int)) {
|
21
|
-
int = etc_1.exponentDecStringToDecString(int);
|
18
|
+
if (!(0, etc_1.isValidIntegerString)(int)) {
|
19
|
+
if ((0, etc_1.isExponentDecString)(int)) {
|
20
|
+
int = (0, etc_1.exponentDecStringToDecString)(int);
|
22
21
|
}
|
23
22
|
else {
|
24
23
|
throw new Error(`invalid integer: ${int}`);
|
25
24
|
}
|
26
25
|
}
|
27
|
-
this.int = big_integer_1.default(int);
|
26
|
+
this.int = (0, big_integer_1.default)(int);
|
28
27
|
}
|
29
28
|
else if (typeof int === "bigint") {
|
30
|
-
this.int = big_integer_1.default(int);
|
29
|
+
this.int = (0, big_integer_1.default)(int);
|
31
30
|
}
|
32
31
|
else {
|
33
|
-
this.int = big_integer_1.default(int);
|
32
|
+
this.int = (0, big_integer_1.default)(int);
|
34
33
|
}
|
35
34
|
this.checkBitLen();
|
36
35
|
}
|
@@ -49,7 +48,7 @@ class Int {
|
|
49
48
|
return this.int.isPositive();
|
50
49
|
}
|
51
50
|
isZero() {
|
52
|
-
return this.int.eq(big_integer_1.default(0));
|
51
|
+
return this.int.eq((0, big_integer_1.default)(0));
|
53
52
|
}
|
54
53
|
equals(i) {
|
55
54
|
return this.int.equals(i.int);
|
@@ -93,16 +92,13 @@ class Int {
|
|
93
92
|
pow(i) {
|
94
93
|
return new Int(this.int.pow(i.toBigNumber()));
|
95
94
|
}
|
96
|
-
toDec() {
|
97
|
-
return new decimal_1.Dec(this);
|
98
|
-
}
|
99
95
|
toBigNumber() {
|
100
96
|
return this.int;
|
101
97
|
}
|
102
98
|
}
|
103
99
|
exports.Int = Int;
|
104
100
|
// (2 ** 256) - 1
|
105
|
-
Int.maxInt = big_integer_1.default("115792089237316195423570985008687907853269984665640564039457584007913129639935");
|
101
|
+
Int.maxInt = (0, big_integer_1.default)("115792089237316195423570985008687907853269984665640564039457584007913129639935");
|
106
102
|
class Uint {
|
107
103
|
/**
|
108
104
|
* @param uint - Parse a number | bigInteger | string into a bigUint.
|
@@ -112,21 +108,21 @@ class Uint {
|
|
112
108
|
uint = uint.toString();
|
113
109
|
}
|
114
110
|
if (typeof uint === "string") {
|
115
|
-
if (!etc_1.isValidIntegerString(uint)) {
|
116
|
-
if (etc_1.isExponentDecString(uint)) {
|
117
|
-
uint = etc_1.exponentDecStringToDecString(uint);
|
111
|
+
if (!(0, etc_1.isValidIntegerString)(uint)) {
|
112
|
+
if ((0, etc_1.isExponentDecString)(uint)) {
|
113
|
+
uint = (0, etc_1.exponentDecStringToDecString)(uint);
|
118
114
|
}
|
119
115
|
else {
|
120
116
|
throw new Error(`invalid integer: ${uint}`);
|
121
117
|
}
|
122
118
|
}
|
123
|
-
this.uint = big_integer_1.default(uint);
|
119
|
+
this.uint = (0, big_integer_1.default)(uint);
|
124
120
|
}
|
125
121
|
else if (typeof uint === "bigint") {
|
126
|
-
this.uint = big_integer_1.default(uint);
|
122
|
+
this.uint = (0, big_integer_1.default)(uint);
|
127
123
|
}
|
128
124
|
else {
|
129
|
-
this.uint = big_integer_1.default(uint);
|
125
|
+
this.uint = (0, big_integer_1.default)(uint);
|
130
126
|
}
|
131
127
|
if (this.uint.isNegative()) {
|
132
128
|
throw new TypeError("Uint should not be negative");
|
@@ -142,7 +138,7 @@ class Uint {
|
|
142
138
|
return this.uint.toString(10);
|
143
139
|
}
|
144
140
|
isZero() {
|
145
|
-
return this.uint.eq(big_integer_1.default(0));
|
141
|
+
return this.uint.eq((0, big_integer_1.default)(0));
|
146
142
|
}
|
147
143
|
equals(i) {
|
148
144
|
return this.uint.equals(i.uint);
|
@@ -177,9 +173,6 @@ class Uint {
|
|
177
173
|
pow(i) {
|
178
174
|
return new Uint(this.uint.pow(i.toBigNumber()));
|
179
175
|
}
|
180
|
-
toDec() {
|
181
|
-
return new decimal_1.Dec(new Int(this.toString()));
|
182
|
-
}
|
183
176
|
toBigNumber() {
|
184
177
|
return this.uint;
|
185
178
|
}
|
package/build/int.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"int.js","sourceRoot":"","sources":["../src/int.ts"],"names":[],"mappings":";;;;;;AAAA,8DAAqC;
|
1
|
+
{"version":3,"file":"int.js","sourceRoot":"","sources":["../src/int.ts"],"names":[],"mappings":"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"}
|
package/build/price-pretty.d.ts
CHANGED
@@ -3,7 +3,7 @@ import { Dec } from "./decimal";
|
|
3
3
|
import { FiatCurrency } from "@keplr-wallet/types";
|
4
4
|
import { DeepReadonly } from "utility-types";
|
5
5
|
import bigInteger from "big-integer";
|
6
|
-
export
|
6
|
+
export type PricePrettyOptions = {
|
7
7
|
separator: string;
|
8
8
|
upperCase: boolean;
|
9
9
|
lowerCase: boolean;
|
package/build/rate-pretty.d.ts
CHANGED
@@ -2,7 +2,7 @@ import { IntPretty, IntPrettyOptions } from "./int-pretty";
|
|
2
2
|
import { Dec } from "./decimal";
|
3
3
|
import { DeepReadonly } from "utility-types";
|
4
4
|
import bigInteger from "big-integer";
|
5
|
-
export
|
5
|
+
export type RatePrettyOptions = {
|
6
6
|
separator: string;
|
7
7
|
symbol: string;
|
8
8
|
};
|
package/build/utils.d.ts
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
/**
|
2
|
+
* Change the non-locale integer string to locale string.
|
3
|
+
* Only support en-US format.
|
4
|
+
* This method uses the BigInt if the environment supports the BigInt.
|
5
|
+
* @param numberStr
|
6
|
+
*/
|
7
|
+
export declare function integerStringToUSLocaleString(numberStr: string): string;
|
package/build/utils.js
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.integerStringToUSLocaleString = void 0;
|
4
|
+
/**
|
5
|
+
* Change the non-locale integer string to locale string.
|
6
|
+
* Only support en-US format.
|
7
|
+
* This method uses the BigInt if the environment supports the BigInt.
|
8
|
+
* @param numberStr
|
9
|
+
*/
|
10
|
+
function integerStringToUSLocaleString(numberStr) {
|
11
|
+
if (numberStr.indexOf(".") >= 0) {
|
12
|
+
throw new Error(`${numberStr} is not integer`);
|
13
|
+
}
|
14
|
+
if (typeof BigInt !== "undefined") {
|
15
|
+
return BigInt(numberStr).toLocaleString("en-US");
|
16
|
+
}
|
17
|
+
const integer = numberStr;
|
18
|
+
const chunks = [];
|
19
|
+
for (let i = integer.length; i > 0; i -= 3) {
|
20
|
+
chunks.push(integer.slice(Math.max(0, i - 3), i));
|
21
|
+
}
|
22
|
+
return chunks.reverse().join(",");
|
23
|
+
}
|
24
|
+
exports.integerStringToUSLocaleString = integerStringToUSLocaleString;
|
25
|
+
//# sourceMappingURL=utils.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,SAAgB,6BAA6B,CAAC,SAAiB;IAC7D,IAAI,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAC/B,MAAM,IAAI,KAAK,CAAC,GAAG,SAAS,iBAAiB,CAAC,CAAC;KAChD;IAED,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;KAClD;IAED,MAAM,OAAO,GAAG,SAAS,CAAC;IAE1B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;QAC1C,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACnD;IAED,OAAO,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC;AAjBD,sEAiBC"}
|
package/package.json
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
{
|
2
2
|
"name": "@keplr-wallet/unit",
|
3
|
-
"version": "0.12.0-alpha.
|
3
|
+
"version": "0.12.0-alpha.2",
|
4
4
|
"main": "build/index.js",
|
5
5
|
"author": "chainapsis",
|
6
6
|
"license": "Apache-2.0",
|
7
|
-
"private": false,
|
8
7
|
"publishConfig": {
|
9
8
|
"access": "public"
|
10
9
|
},
|
@@ -17,9 +16,9 @@
|
|
17
16
|
"lint-fix": "eslint --fix \"src/**/*\" && prettier --write \"src/**/*\""
|
18
17
|
},
|
19
18
|
"dependencies": {
|
20
|
-
"@keplr-wallet/types": "0.12.0-alpha.
|
19
|
+
"@keplr-wallet/types": "0.12.0-alpha.2",
|
21
20
|
"big-integer": "^1.6.48",
|
22
21
|
"utility-types": "^3.10.0"
|
23
22
|
},
|
24
|
-
"gitHead": "
|
23
|
+
"gitHead": "ac984666c53de8f9325d02ff62f1a0febcafa310"
|
25
24
|
}
|
package/src/coin-utils.ts
CHANGED
@@ -3,6 +3,7 @@ import { Int } from "./int";
|
|
3
3
|
import { Dec } from "./decimal";
|
4
4
|
import { DecUtils } from "./dec-utils";
|
5
5
|
import { Currency } from "@keplr-wallet/types";
|
6
|
+
import { integerStringToUSLocaleString } from "./utils";
|
6
7
|
|
7
8
|
export class CoinUtils {
|
8
9
|
static createCoinsFromPrimitives(
|
@@ -148,30 +149,7 @@ export class CoinUtils {
|
|
148
149
|
);
|
149
150
|
}
|
150
151
|
|
151
|
-
|
152
|
-
* Change the non-locale integer string to locale string.
|
153
|
-
* Only support en-US format.
|
154
|
-
* This method uses the BigInt if the environment supports the BigInt.
|
155
|
-
* @param numberStr
|
156
|
-
*/
|
157
|
-
static integerStringToUSLocaleString(numberStr: string): string {
|
158
|
-
if (numberStr.indexOf(".") >= 0) {
|
159
|
-
throw new Error(`${numberStr} is not integer`);
|
160
|
-
}
|
161
|
-
|
162
|
-
if (typeof BigInt !== "undefined") {
|
163
|
-
return BigInt(numberStr).toLocaleString("en-US");
|
164
|
-
}
|
165
|
-
|
166
|
-
const integer = numberStr;
|
167
|
-
|
168
|
-
const chunks: string[] = [];
|
169
|
-
for (let i = integer.length; i > 0; i -= 3) {
|
170
|
-
chunks.push(integer.slice(Math.max(0, i - 3), i));
|
171
|
-
}
|
172
|
-
|
173
|
-
return chunks.reverse().join(",");
|
174
|
-
}
|
152
|
+
static integerStringToUSLocaleString = integerStringToUSLocaleString;
|
175
153
|
|
176
154
|
static coinToTrimmedString(
|
177
155
|
coin: Coin,
|
package/src/decimal.spec.ts
CHANGED
@@ -198,6 +198,32 @@ describe("Test decimals", () => {
|
|
198
198
|
}
|
199
199
|
});
|
200
200
|
|
201
|
+
// from: https://github.com/osmosis-labs/cosmos-sdk/blob/5b0f9cfa4331ad3c64d9690318e4621b569b9a50/types/decimal_test.go#L372
|
202
|
+
it("Test Dec approxRoot", () => {
|
203
|
+
const tests: { d: Dec; r: number; res: Dec }[] = [
|
204
|
+
{ d: new Dec(1), r: 10, res: new Dec(1) }, // 1.0 ^ (0.1) => 1.0
|
205
|
+
{ d: new Dec(25, 2), r: 2, res: new Dec(5, 1) }, // 0.25 ^ (0.5) => 0.5,
|
206
|
+
{ d: new Dec(4, 2), r: 2, res: new Dec(2, 1) }, // 0.04 ^ (0.5) => 0.2
|
207
|
+
{ d: new Dec(27), r: 3, res: new Dec(3) }, // 27 ^ (1/3) => 3
|
208
|
+
{ d: new Dec(-81), r: 4, res: new Dec(-3) }, // -81 ^ (0.25) => -3
|
209
|
+
{ d: new Dec(2), r: 2, res: new Dec("1414213562373095049", 18) }, // 2 ^ (0.5) => 1.414213562373095049
|
210
|
+
{
|
211
|
+
d: new Dec(1005, 3),
|
212
|
+
r: 31536000,
|
213
|
+
res: new Dec("1.000000000158153904"),
|
214
|
+
}, // 1.005 ^ (1/31536000) ≈ 1.00000000016
|
215
|
+
{ d: Dec.smallestDec, r: 2, res: new Dec(1, 9) }, // 1e-18 ^ (0.5) => 1e-9
|
216
|
+
{ d: Dec.smallestDec, r: 3, res: new Dec("0.000000999999999997") }, // 1e-18 ^ (1/3) => 1e-6
|
217
|
+
{ d: new Dec(1, 8), r: 3, res: new Dec("0.002154434690031900") }, // 1e-8 ^ (1/3) ≈ 0.00215443469
|
218
|
+
];
|
219
|
+
|
220
|
+
for (const test of tests) {
|
221
|
+
const res = test.d.approxRoot(test.r);
|
222
|
+
|
223
|
+
expect(res.toString()).toBe(test.res.toString());
|
224
|
+
}
|
225
|
+
});
|
226
|
+
|
201
227
|
it("dec should be caculated properly", () => {
|
202
228
|
const tests: {
|
203
229
|
d1: Dec;
|