suidouble 1.14.3 → 1.15.1-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/index.js +2 -0
- package/lib/SuiCoin.js +16 -8
- package/lib/SuiMaster.js +4 -1
- package/package.json +2 -2
- package/test/coins.test.js +16 -0
package/index.js
CHANGED
|
@@ -7,6 +7,7 @@ import SuiLocalTestValidator from './lib/SuiLocalTestValidator.js';
|
|
|
7
7
|
import SuiMemoryObjectStorage from './lib/SuiMemoryObjectStorage.js';
|
|
8
8
|
import SuiCoin from './lib/SuiCoin.js';
|
|
9
9
|
import SuiCoins from './lib/SuiCoins.js';
|
|
10
|
+
import SuiPaginatedResponse from './lib/SuiPaginatedResponse.js';
|
|
10
11
|
import { Transaction, Commands } from '@mysten/sui/transactions';
|
|
11
12
|
import { bcs } from '@mysten/sui/bcs';
|
|
12
13
|
|
|
@@ -28,4 +29,5 @@ export {
|
|
|
28
29
|
SuiMemoryObjectStorage,
|
|
29
30
|
SuiCoin,
|
|
30
31
|
SuiCoins,
|
|
32
|
+
SuiPaginatedResponse,
|
|
31
33
|
};
|
package/lib/SuiCoin.js
CHANGED
|
@@ -103,10 +103,10 @@ export default class SuiCoin {
|
|
|
103
103
|
const asBig = BigInt(Math.floor(Number(asFloatString)));
|
|
104
104
|
|
|
105
105
|
if (asBig > 1000n) {
|
|
106
|
-
if (asBig < 1000000n) return this.formatWithAbbr(asBig, 1000n, 'K');
|
|
107
|
-
if (asBig >= 1000000n && asBig < 1000000000n) return this.formatWithAbbr(asBig, 1000000n, 'M');
|
|
108
|
-
if (asBig >= 1000000000n && asBig < 1000000000000n) return this.formatWithAbbr(asBig, 1000000000n, 'B');
|
|
109
|
-
if (asBig >= 1000000000000n) return this.formatWithAbbr(asBig, 1000000000000n, 'T');
|
|
106
|
+
if (asBig < 1000000n) return this.formatWithAbbr(asBig, 1000n, 'K', separateThousands);
|
|
107
|
+
if (asBig >= 1000000n && asBig < 1000000000n) return this.formatWithAbbr(asBig, 1000000n, 'M', separateThousands);
|
|
108
|
+
if (asBig >= 1000000000n && asBig < 1000000000000n) return this.formatWithAbbr(asBig, 1000000000n, 'B', separateThousands);
|
|
109
|
+
if (asBig >= 1000000000000n) return this.formatWithAbbr(asBig, 1000000000000n, 'T', separateThousands);
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
112
|
|
|
@@ -133,12 +133,20 @@ export default class SuiCoin {
|
|
|
133
133
|
*
|
|
134
134
|
* @returns {string}
|
|
135
135
|
*/
|
|
136
|
-
formatWithAbbr(amount, measureUnit, abbrSymbol) {
|
|
137
|
-
let showAmount = (''+(Number(amount) / Number(measureUnit / 1000n)));
|
|
136
|
+
formatWithAbbr(amount, measureUnit, abbrSymbol, separateThousands = false) {
|
|
137
|
+
let showAmount = (''+Math.floor(Number(amount) / Number(measureUnit / 1000n)));
|
|
138
138
|
showAmount = showAmount.padEnd(4, '0');
|
|
139
139
|
|
|
140
140
|
const result = Intl.NumberFormat('en-US').format(Number(showAmount));
|
|
141
|
-
|
|
141
|
+
|
|
142
|
+
let separator = '';
|
|
143
|
+
if (separateThousands) {
|
|
144
|
+
separator = (typeof separateThousands === 'string') ? separateThousands : ',';
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
const pcs = result.split(',');
|
|
148
|
+
const lastPc = pcs.pop();
|
|
149
|
+
return pcs.join( separator ) + '.' + lastPc + abbrSymbol;
|
|
142
150
|
}
|
|
143
151
|
|
|
144
152
|
|
|
@@ -222,7 +230,7 @@ export default class SuiCoin {
|
|
|
222
230
|
}
|
|
223
231
|
|
|
224
232
|
if (this.__getMetadataPromise) {
|
|
225
|
-
return await this.__getMetadataPromise
|
|
233
|
+
return await this.__getMetadataPromise;
|
|
226
234
|
}
|
|
227
235
|
|
|
228
236
|
// be sure it asyncs in 1 thread
|
package/lib/SuiMaster.js
CHANGED
|
@@ -406,10 +406,13 @@ export default class SuiMaster extends SuiCommonMethods {
|
|
|
406
406
|
}
|
|
407
407
|
|
|
408
408
|
async fetchTransactions(params = {}) {
|
|
409
|
-
|
|
409
|
+
let filter = {};
|
|
410
410
|
if (params.fromAddress) {
|
|
411
411
|
filter.FromAddress = params.fromAddress;
|
|
412
412
|
}
|
|
413
|
+
if (params.filter) {
|
|
414
|
+
filter = params.filter;
|
|
415
|
+
}
|
|
413
416
|
|
|
414
417
|
const queryParams = {
|
|
415
418
|
descending_order: false,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "suidouble",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.15.1-1",
|
|
4
4
|
"description": "Set of provider, package and object classes for javascript representation of Sui Move smart contracts. Use same code for publishing, upgrading, integration testing, interaction with smart contracts and integration in browser web3 dapps",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"author": "suidouble (https://github.com/suidouble)",
|
|
23
23
|
"license": "Apache-2.0",
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@mysten/sui": "^1.
|
|
25
|
+
"@mysten/sui": "^1.15.1",
|
|
26
26
|
"@polymedia/coinmeta": "^0.0.17",
|
|
27
27
|
"@wallet-standard/core": "^1.0.3",
|
|
28
28
|
"websocket": "^1.0.35"
|
package/test/coins.test.js
CHANGED
|
@@ -108,11 +108,27 @@ test('string representation (withAbbr) works ok', async t => {
|
|
|
108
108
|
const toDisplayM2 = suiCoin.amountToString(suiMaster.MIST_PER_SUI * BigInt(2000000) + BigInt(900), {withAbbr: true}); // 1000 SUI + 1 mist
|
|
109
109
|
t.equal(toDisplayM2, '2.000M');
|
|
110
110
|
|
|
111
|
+
const toDisplayM2spec = suiCoin.amountToString(148518424765531477n, {withAbbr: true}); // 1000 SUI + 1 mist
|
|
112
|
+
t.equal(toDisplayM2spec, '148.518M');
|
|
113
|
+
|
|
114
|
+
|
|
111
115
|
const toDisplayB1 = suiCoin.amountToString(suiMaster.MIST_PER_SUI * BigInt(1000000000) + BigInt(1), {withAbbr: true}); // 1000 SUI + 1 mist
|
|
112
116
|
t.equal(toDisplayB1, '1.000B');
|
|
113
117
|
|
|
118
|
+
const toDisplayB2spec = suiCoin.amountToString(148518424765531477000n, {withAbbr: true}); // 1000 SUI + 1 mist
|
|
119
|
+
t.equal(toDisplayB2spec, '148.518B');
|
|
120
|
+
|
|
114
121
|
const toDisplayT1 = suiCoin.amountToString(suiMaster.MIST_PER_SUI * BigInt(1000000000000) + BigInt(1), {withAbbr: true}); // 1000 SUI + 1 mist
|
|
115
122
|
t.equal(toDisplayT1, '1.000T');
|
|
123
|
+
|
|
124
|
+
const toDisplayT2spec = suiCoin.amountToString(148518424765531477000000n, {withAbbr: true}); // 1000 SUI + 1 mist
|
|
125
|
+
t.equal(toDisplayT2spec, '148.518T');
|
|
126
|
+
|
|
127
|
+
const toDisplayT20spec = suiCoin.amountToString(148518424765531477000000000n, {withAbbr: true}); // 1000 SUI + 1 mist
|
|
128
|
+
t.equal(toDisplayT20spec, '148518.424T');
|
|
129
|
+
|
|
130
|
+
const toDisplayT20spec2 = suiCoin.amountToString(148518424765531477000000000n, {withAbbr: true, separateThousands: true}); // 1000 SUI + 1 mist
|
|
131
|
+
t.equal(toDisplayT20spec2, '148,518.424T');
|
|
116
132
|
});
|
|
117
133
|
|
|
118
134
|
|