@ledgerhq/coin-sui 0.2.1 → 0.2.2-next.0
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/CHANGELOG.md +10 -0
- package/jest.integ.config.js +1 -0
- package/lib/network/sdk.integration.test.js +23 -0
- package/lib/network/sdk.integration.test.js.map +1 -1
- package/lib/network/sdk.test.js +0 -24
- package/lib/network/sdk.test.js.map +1 -1
- package/lib-es/network/sdk.integration.test.js +24 -1
- package/lib-es/network/sdk.integration.test.js.map +1 -1
- package/lib-es/network/sdk.test.js +1 -25
- package/lib-es/network/sdk.test.js.map +1 -1
- package/package.json +6 -6
- package/src/network/sdk.integration.test.ts +26 -1
- package/src/network/sdk.test.ts +0 -30
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
# @ledgerhq/coin-sui
|
|
2
2
|
|
|
3
|
+
## 0.2.2-next.0
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [[`6f61972`](https://github.com/LedgerHQ/ledger-live/commit/6f619728e200270a674ffb13b10375765b55ae4b), [`3f8a531`](https://github.com/LedgerHQ/ledger-live/commit/3f8a53196dfb80d084056e0d896e09869c8ff949), [`8d36e9b`](https://github.com/LedgerHQ/ledger-live/commit/8d36e9b2474a4c600427f357adad04f99a89e13d), [`b580b04`](https://github.com/LedgerHQ/ledger-live/commit/b580b04e02392a706534c2fceba192ae3b6242ef), [`1e56618`](https://github.com/LedgerHQ/ledger-live/commit/1e56618a3c31e7980074072e0aae9422c145f4b3), [`4c6b682`](https://github.com/LedgerHQ/ledger-live/commit/4c6b682b9929334a7be13212a69f2c6a614f372c), [`bf3dec3`](https://github.com/LedgerHQ/ledger-live/commit/bf3dec3eb166f80e066f466e0e03291c9a141a81)]:
|
|
8
|
+
- @ledgerhq/types-live@6.67.0-next.0
|
|
9
|
+
- @ledgerhq/coin-framework@3.0.0-next.0
|
|
10
|
+
- @ledgerhq/cryptoassets@13.15.0-next.0
|
|
11
|
+
- @ledgerhq/types-cryptoassets@7.22.0-next.0
|
|
12
|
+
|
|
3
13
|
## 0.2.1
|
|
4
14
|
|
|
5
15
|
### Patch Changes
|
package/jest.integ.config.js
CHANGED
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const bignumber_js_1 = __importDefault(require("bignumber.js"));
|
|
7
7
|
const sdk_1 = require("./sdk");
|
|
8
|
+
const sdk_2 = require("./sdk");
|
|
8
9
|
describe("getOperations", () => {
|
|
9
10
|
describe("Account 0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164", () => {
|
|
10
11
|
// https://suiscan.xyz/mainnet/account/0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164/activity
|
|
@@ -67,4 +68,26 @@ describe("getOperations", () => {
|
|
|
67
68
|
});
|
|
68
69
|
});
|
|
69
70
|
});
|
|
71
|
+
describe("getBalance", () => {
|
|
72
|
+
test("getAccount should return account balance", async () => {
|
|
73
|
+
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
74
|
+
const balance = await (0, sdk_2.getAccount)(address);
|
|
75
|
+
expect(balance).toHaveProperty("blockHeight");
|
|
76
|
+
expect(balance).toHaveProperty("balance");
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe("createTransaction", () => {
|
|
80
|
+
test("createTransaction should build a transaction", async () => {
|
|
81
|
+
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
82
|
+
const transaction = {
|
|
83
|
+
mode: "sent",
|
|
84
|
+
family: "sui",
|
|
85
|
+
amount: new bignumber_js_1.default(100),
|
|
86
|
+
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
87
|
+
errors: {},
|
|
88
|
+
};
|
|
89
|
+
const tx = await (0, sdk_1.createTransaction)(address, transaction);
|
|
90
|
+
expect(tx).toBeInstanceOf(Uint8Array);
|
|
91
|
+
});
|
|
92
|
+
});
|
|
70
93
|
//# sourceMappingURL=sdk.integration.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.integration.test.js","sourceRoot":"","sources":["../../src/network/sdk.integration.test.ts"],"names":[],"mappings":";;;;;AAAA,gEAAqC;AACrC,+
|
|
1
|
+
{"version":3,"file":"sdk.integration.test.js","sourceRoot":"","sources":["../../src/network/sdk.integration.test.ts"],"names":[],"mappings":"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"}
|
package/lib/network/sdk.test.js
CHANGED
|
@@ -95,12 +95,6 @@ const mockTransaction = {
|
|
|
95
95
|
checkpoint: "313024",
|
|
96
96
|
};
|
|
97
97
|
describe("SDK Functions", () => {
|
|
98
|
-
test("getAccount should return account balance", async () => {
|
|
99
|
-
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
100
|
-
const balance = await (0, sdk_1.getAccount)(address);
|
|
101
|
-
expect(balance).toHaveProperty("blockHeight");
|
|
102
|
-
expect(balance).toHaveProperty("balance");
|
|
103
|
-
});
|
|
104
98
|
test("getOperationType should return IN for incoming tx", () => {
|
|
105
99
|
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
106
100
|
expect((0, sdk_1.getOperationType)(address, mockTransaction.transaction?.data)).toBe("IN");
|
|
@@ -130,12 +124,6 @@ describe("SDK Functions", () => {
|
|
|
130
124
|
expect(operation).toHaveProperty("id");
|
|
131
125
|
expect(operation).toHaveProperty("accountId", accountId);
|
|
132
126
|
});
|
|
133
|
-
test("getOperations should fetch operations", async () => {
|
|
134
|
-
const accountId = "mockAccountId";
|
|
135
|
-
const addr = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
136
|
-
const operations = await (0, sdk_1.getOperations)(accountId, addr);
|
|
137
|
-
expect(Array.isArray(operations)).toBe(true);
|
|
138
|
-
});
|
|
139
127
|
test("paymentInfo should return gas budget and fees", async () => {
|
|
140
128
|
const sender = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
141
129
|
const fakeTransaction = {
|
|
@@ -150,17 +138,5 @@ describe("SDK Functions", () => {
|
|
|
150
138
|
expect(info).toHaveProperty("totalGasUsed");
|
|
151
139
|
expect(info).toHaveProperty("fees");
|
|
152
140
|
});
|
|
153
|
-
test("createTransaction should build a transaction", async () => {
|
|
154
|
-
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
155
|
-
const transaction = {
|
|
156
|
-
mode: "sent",
|
|
157
|
-
family: "sui",
|
|
158
|
-
amount: new bignumber_js_1.BigNumber(100),
|
|
159
|
-
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
160
|
-
errors: {},
|
|
161
|
-
};
|
|
162
|
-
const tx = await (0, sdk_1.createTransaction)(address, transaction);
|
|
163
|
-
expect(tx).toBeInstanceOf(Uint8Array);
|
|
164
|
-
});
|
|
165
141
|
});
|
|
166
142
|
//# sourceMappingURL=sdk.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.test.js","sourceRoot":"","sources":["../../src/network/sdk.test.ts"],"names":[],"mappings":";;AACA,+
|
|
1
|
+
{"version":3,"file":"sdk.test.js","sourceRoot":"","sources":["../../src/network/sdk.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import BigNumber from "bignumber.js";
|
|
2
|
-
import { getOperations } from "./sdk";
|
|
2
|
+
import { createTransaction, getOperations } from "./sdk";
|
|
3
|
+
import { getAccount } from "./sdk";
|
|
3
4
|
describe("getOperations", () => {
|
|
4
5
|
describe("Account 0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164", () => {
|
|
5
6
|
// https://suiscan.xyz/mainnet/account/0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164/activity
|
|
@@ -62,4 +63,26 @@ describe("getOperations", () => {
|
|
|
62
63
|
});
|
|
63
64
|
});
|
|
64
65
|
});
|
|
66
|
+
describe("getBalance", () => {
|
|
67
|
+
test("getAccount should return account balance", async () => {
|
|
68
|
+
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
69
|
+
const balance = await getAccount(address);
|
|
70
|
+
expect(balance).toHaveProperty("blockHeight");
|
|
71
|
+
expect(balance).toHaveProperty("balance");
|
|
72
|
+
});
|
|
73
|
+
});
|
|
74
|
+
describe("createTransaction", () => {
|
|
75
|
+
test("createTransaction should build a transaction", async () => {
|
|
76
|
+
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
77
|
+
const transaction = {
|
|
78
|
+
mode: "sent",
|
|
79
|
+
family: "sui",
|
|
80
|
+
amount: new BigNumber(100),
|
|
81
|
+
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
82
|
+
errors: {},
|
|
83
|
+
};
|
|
84
|
+
const tx = await createTransaction(address, transaction);
|
|
85
|
+
expect(tx).toBeInstanceOf(Uint8Array);
|
|
86
|
+
});
|
|
87
|
+
});
|
|
65
88
|
//# sourceMappingURL=sdk.integration.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.integration.test.js","sourceRoot":"","sources":["../../src/network/sdk.integration.test.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"sdk.integration.test.js","sourceRoot":"","sources":["../../src/network/sdk.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getOperationType, getOperationSenders, getOperationRecipients, getOperationAmount, getOperationFee, getOperationDate, transactionToOperation, paymentInfo, } from "./sdk";
|
|
2
2
|
import { BigNumber } from "bignumber.js";
|
|
3
3
|
const mockTransaction = {
|
|
4
4
|
digest: "DhKLpX5kwuKuyRa71RGqpX5EY2M8Efw535ZVXYXsRiDt",
|
|
@@ -93,12 +93,6 @@ const mockTransaction = {
|
|
|
93
93
|
checkpoint: "313024",
|
|
94
94
|
};
|
|
95
95
|
describe("SDK Functions", () => {
|
|
96
|
-
test("getAccount should return account balance", async () => {
|
|
97
|
-
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
98
|
-
const balance = await getAccount(address);
|
|
99
|
-
expect(balance).toHaveProperty("blockHeight");
|
|
100
|
-
expect(balance).toHaveProperty("balance");
|
|
101
|
-
});
|
|
102
96
|
test("getOperationType should return IN for incoming tx", () => {
|
|
103
97
|
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
104
98
|
expect(getOperationType(address, mockTransaction.transaction?.data)).toBe("IN");
|
|
@@ -128,12 +122,6 @@ describe("SDK Functions", () => {
|
|
|
128
122
|
expect(operation).toHaveProperty("id");
|
|
129
123
|
expect(operation).toHaveProperty("accountId", accountId);
|
|
130
124
|
});
|
|
131
|
-
test("getOperations should fetch operations", async () => {
|
|
132
|
-
const accountId = "mockAccountId";
|
|
133
|
-
const addr = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
134
|
-
const operations = await getOperations(accountId, addr);
|
|
135
|
-
expect(Array.isArray(operations)).toBe(true);
|
|
136
|
-
});
|
|
137
125
|
test("paymentInfo should return gas budget and fees", async () => {
|
|
138
126
|
const sender = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
139
127
|
const fakeTransaction = {
|
|
@@ -148,17 +136,5 @@ describe("SDK Functions", () => {
|
|
|
148
136
|
expect(info).toHaveProperty("totalGasUsed");
|
|
149
137
|
expect(info).toHaveProperty("fees");
|
|
150
138
|
});
|
|
151
|
-
test("createTransaction should build a transaction", async () => {
|
|
152
|
-
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
153
|
-
const transaction = {
|
|
154
|
-
mode: "sent",
|
|
155
|
-
family: "sui",
|
|
156
|
-
amount: new BigNumber(100),
|
|
157
|
-
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
158
|
-
errors: {},
|
|
159
|
-
};
|
|
160
|
-
const tx = await createTransaction(address, transaction);
|
|
161
|
-
expect(tx).toBeInstanceOf(Uint8Array);
|
|
162
|
-
});
|
|
163
139
|
});
|
|
164
140
|
//# sourceMappingURL=sdk.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.test.js","sourceRoot":"","sources":["../../src/network/sdk.test.ts"],"names":[],"mappings":"AACA,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"sdk.test.js","sourceRoot":"","sources":["../../src/network/sdk.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ledgerhq/coin-sui",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2-next.0",
|
|
4
4
|
"description": "Ledger Sui Coin integration",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Ledger",
|
|
@@ -114,15 +114,15 @@
|
|
|
114
114
|
"bignumber.js": "^9.1.2",
|
|
115
115
|
"lodash": "4.17.21",
|
|
116
116
|
"rxjs": "^7.8.1",
|
|
117
|
-
"@ledgerhq/coin-framework": "^
|
|
117
|
+
"@ledgerhq/coin-framework": "^3.0.0-next.0",
|
|
118
|
+
"@ledgerhq/cryptoassets": "^13.15.0-next.0",
|
|
118
119
|
"@ledgerhq/errors": "^6.19.1",
|
|
119
|
-
"@ledgerhq/cryptoassets": "^13.14.1",
|
|
120
|
-
"@ledgerhq/hw-app-sui": "^1.1.0",
|
|
121
120
|
"@ledgerhq/live-env": "^2.8.0",
|
|
121
|
+
"@ledgerhq/hw-app-sui": "^1.1.0",
|
|
122
122
|
"@ledgerhq/live-network": "^2.0.7",
|
|
123
123
|
"@ledgerhq/logs": "^6.12.0",
|
|
124
|
-
"@ledgerhq/types-cryptoassets": "^7.
|
|
125
|
-
"@ledgerhq/types-live": "^6.
|
|
124
|
+
"@ledgerhq/types-cryptoassets": "^7.22.0-next.0",
|
|
125
|
+
"@ledgerhq/types-live": "^6.67.0-next.0"
|
|
126
126
|
},
|
|
127
127
|
"devDependencies": {
|
|
128
128
|
"@faker-js/faker": "^8.4.1",
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import BigNumber from "bignumber.js";
|
|
2
|
-
import { getOperations } from "./sdk";
|
|
2
|
+
import { createTransaction, getOperations } from "./sdk";
|
|
3
3
|
import type { Operation } from "@ledgerhq/types-live";
|
|
4
|
+
import { getAccount } from "./sdk";
|
|
4
5
|
|
|
5
6
|
describe("getOperations", () => {
|
|
6
7
|
describe("Account 0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164", () => {
|
|
@@ -73,3 +74,27 @@ describe("getOperations", () => {
|
|
|
73
74
|
});
|
|
74
75
|
});
|
|
75
76
|
});
|
|
77
|
+
|
|
78
|
+
describe("getBalance", () => {
|
|
79
|
+
test("getAccount should return account balance", async () => {
|
|
80
|
+
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
81
|
+
const balance = await getAccount(address);
|
|
82
|
+
expect(balance).toHaveProperty("blockHeight");
|
|
83
|
+
expect(balance).toHaveProperty("balance");
|
|
84
|
+
});
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
describe("createTransaction", () => {
|
|
88
|
+
test("createTransaction should build a transaction", async () => {
|
|
89
|
+
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
90
|
+
const transaction = {
|
|
91
|
+
mode: "sent",
|
|
92
|
+
family: "sui" as const,
|
|
93
|
+
amount: new BigNumber(100),
|
|
94
|
+
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
95
|
+
errors: {},
|
|
96
|
+
};
|
|
97
|
+
const tx = await createTransaction(address, transaction);
|
|
98
|
+
expect(tx).toBeInstanceOf(Uint8Array);
|
|
99
|
+
});
|
|
100
|
+
});
|
package/src/network/sdk.test.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { TransactionBlockData, SuiTransactionBlockResponse } from "@mysten/sui/client";
|
|
2
2
|
import {
|
|
3
|
-
getAccount,
|
|
4
3
|
getOperationType,
|
|
5
4
|
getOperationSenders,
|
|
6
5
|
getOperationRecipients,
|
|
@@ -8,9 +7,7 @@ import {
|
|
|
8
7
|
getOperationFee,
|
|
9
8
|
getOperationDate,
|
|
10
9
|
transactionToOperation,
|
|
11
|
-
getOperations,
|
|
12
10
|
paymentInfo,
|
|
13
|
-
createTransaction,
|
|
14
11
|
} from "./sdk";
|
|
15
12
|
|
|
16
13
|
import { BigNumber } from "bignumber.js";
|
|
@@ -109,13 +106,6 @@ const mockTransaction = {
|
|
|
109
106
|
};
|
|
110
107
|
|
|
111
108
|
describe("SDK Functions", () => {
|
|
112
|
-
test("getAccount should return account balance", async () => {
|
|
113
|
-
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
114
|
-
const balance = await getAccount(address);
|
|
115
|
-
expect(balance).toHaveProperty("blockHeight");
|
|
116
|
-
expect(balance).toHaveProperty("balance");
|
|
117
|
-
});
|
|
118
|
-
|
|
119
109
|
test("getOperationType should return IN for incoming tx", () => {
|
|
120
110
|
const address = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
121
111
|
expect(
|
|
@@ -166,13 +156,6 @@ describe("SDK Functions", () => {
|
|
|
166
156
|
expect(operation).toHaveProperty("accountId", accountId);
|
|
167
157
|
});
|
|
168
158
|
|
|
169
|
-
test("getOperations should fetch operations", async () => {
|
|
170
|
-
const accountId = "mockAccountId";
|
|
171
|
-
const addr = "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164";
|
|
172
|
-
const operations = await getOperations(accountId, addr);
|
|
173
|
-
expect(Array.isArray(operations)).toBe(true);
|
|
174
|
-
});
|
|
175
|
-
|
|
176
159
|
test("paymentInfo should return gas budget and fees", async () => {
|
|
177
160
|
const sender = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
178
161
|
const fakeTransaction = {
|
|
@@ -187,17 +170,4 @@ describe("SDK Functions", () => {
|
|
|
187
170
|
expect(info).toHaveProperty("totalGasUsed");
|
|
188
171
|
expect(info).toHaveProperty("fees");
|
|
189
172
|
});
|
|
190
|
-
|
|
191
|
-
test("createTransaction should build a transaction", async () => {
|
|
192
|
-
const address = "0x6e143fe0a8ca010a86580dafac44298e5b1b7d73efc345356a59a15f0d7824f0";
|
|
193
|
-
const transaction = {
|
|
194
|
-
mode: "sent",
|
|
195
|
-
family: "sui" as const,
|
|
196
|
-
amount: new BigNumber(100),
|
|
197
|
-
recipient: "0x33444cf803c690db96527cec67e3c9ab512596f4ba2d4eace43f0b4f716e0164",
|
|
198
|
-
errors: {},
|
|
199
|
-
};
|
|
200
|
-
const tx = await createTransaction(address, transaction);
|
|
201
|
-
expect(tx).toBeInstanceOf(Uint8Array);
|
|
202
|
-
});
|
|
203
173
|
});
|