@airgap/ethereum 0.13.16-beta.5 → 0.13.16-beta.7
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/package.json +1 -1
- package/v1/clients/node/AirGapNodeClient.d.ts +5 -0
- package/v1/clients/node/AirGapNodeClient.js +89 -1
- package/v1/clients/node/AirGapNodeClient.js.map +1 -1
- package/v1/clients/node/EthereumNodeClient.d.ts +3 -0
- package/v1/clients/node/EthereumNodeClient.js.map +1 -1
- package/v1/index.d.ts +2 -1
- package/v1/index.js +6 -1
- package/v1/index.js.map +1 -1
- package/v1/protocol/erc20/ERC20Protocol.d.ts +6 -0
- package/v1/protocol/erc20/ERC20Protocol.js +21 -0
- package/v1/protocol/erc20/ERC20Protocol.js.map +1 -1
- package/v1/utils/EthereumUtils.d.ts +1 -0
- package/v1/utils/EthereumUtils.js +6 -0
- package/v1/utils/EthereumUtils.js.map +1 -1
- package/v1/utils/protocol.d.ts +13 -0
- package/v1/utils/protocol.js +38 -0
- package/v1/utils/protocol.js.map +1 -0
package/package.json
CHANGED
|
@@ -26,6 +26,7 @@ export declare class EthereumRPCData {
|
|
|
26
26
|
abiEncoded(): string;
|
|
27
27
|
static addLeadingZeroPadding(value: string, targetLength?: number): string;
|
|
28
28
|
static removeLeadingZeroPadding(value: string): string;
|
|
29
|
+
static abiDecoded(value: string, encodedType: 'bytes'): string;
|
|
29
30
|
}
|
|
30
31
|
export declare class EthereumRPCDataBalanceOf extends EthereumRPCData {
|
|
31
32
|
static methodName: string;
|
|
@@ -54,6 +55,10 @@ export declare class AirGapNodeClient extends EthereumNodeClient {
|
|
|
54
55
|
estimateTransactionGas(fromAddress: string, toAddress: string, amount?: string, data?: string, gas?: string): Promise<BigNumber>;
|
|
55
56
|
estimateTransferGas(contractAddress: string, fromAddress: string, toAddress: string, hexAmount: string): Promise<BigNumber>;
|
|
56
57
|
getGasPrice(): Promise<BigNumber>;
|
|
58
|
+
getContractName(contractAddress: string): Promise<string | undefined>;
|
|
59
|
+
getContractSymbol(contractAddress: string): Promise<string | undefined>;
|
|
60
|
+
getContractDecimals(contractAddress: string): Promise<number | undefined>;
|
|
61
|
+
private contractCallBody;
|
|
57
62
|
private send;
|
|
58
63
|
private batchSend;
|
|
59
64
|
}
|
|
@@ -50,6 +50,15 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
50
50
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
51
|
}
|
|
52
52
|
};
|
|
53
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
54
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
55
|
+
if (ar || !(i in from)) {
|
|
56
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
57
|
+
ar[i] = from[i];
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
61
|
+
};
|
|
53
62
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
54
63
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
55
64
|
};
|
|
@@ -61,6 +70,7 @@ var axios_0_19_0_1 = __importDefault(require("@airgap/coinlib-core/dependencies/
|
|
|
61
70
|
var bignumber_1 = require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber");
|
|
62
71
|
var errors_1 = require("@airgap/coinlib-core/errors");
|
|
63
72
|
var coinlib_error_1 = require("@airgap/coinlib-core/errors/coinlib-error");
|
|
73
|
+
var coinlib_core_1 = require("@airgap/coinlib-core");
|
|
64
74
|
var EthereumUtils_1 = require("../../utils/EthereumUtils");
|
|
65
75
|
var EthereumNodeClient_1 = require("./EthereumNodeClient");
|
|
66
76
|
var EthereumRPCBody = /** @class */ (function (_super) {
|
|
@@ -111,6 +121,21 @@ var EthereumRPCData = /** @class */ (function () {
|
|
|
111
121
|
}
|
|
112
122
|
return result;
|
|
113
123
|
};
|
|
124
|
+
EthereumRPCData.abiDecoded = function (value, encodedType) {
|
|
125
|
+
switch (encodedType) {
|
|
126
|
+
case 'bytes':
|
|
127
|
+
if (value.startsWith('0x')) {
|
|
128
|
+
value = value.slice(2);
|
|
129
|
+
}
|
|
130
|
+
var buffer = Buffer.from(value, 'hex');
|
|
131
|
+
var offset = new bignumber_1.BigNumber(buffer.slice(0, 32).toString('hex'), 16).toNumber();
|
|
132
|
+
var length_1 = new bignumber_1.BigNumber(buffer.slice(offset, offset + 32).toString('hex'), 16).toNumber();
|
|
133
|
+
return buffer.slice(offset + 32, offset + 32 + length_1).toString('hex');
|
|
134
|
+
default:
|
|
135
|
+
(0, coinlib_core_1.assertNever)(encodedType);
|
|
136
|
+
throw new errors_1.UnsupportedError(coinlib_error_1.Domain.ETHEREUM, 'Unsupported ABI encoded type');
|
|
137
|
+
}
|
|
138
|
+
};
|
|
114
139
|
// 2 chars = 1 byte hence to get to 32 bytes we need 64 chars
|
|
115
140
|
EthereumRPCData.parametersLength = 64;
|
|
116
141
|
return EthereumRPCData;
|
|
@@ -276,7 +301,7 @@ var AirGapNodeClient = /** @class */ (function (_super) {
|
|
|
276
301
|
AirGapNodeClient.prototype.balanceOfBody = function (contractAddress, address, id) {
|
|
277
302
|
if (id === void 0) { id = 0; }
|
|
278
303
|
var data = new EthereumRPCDataBalanceOf(address);
|
|
279
|
-
return
|
|
304
|
+
return this.contractCallBody(contractAddress, data, [EthereumRPCBody.blockLatest], id);
|
|
280
305
|
};
|
|
281
306
|
AirGapNodeClient.prototype.estimateTransactionGas = function (fromAddress, toAddress, amount, data, gas) {
|
|
282
307
|
return __awaiter(this, void 0, void 0, function () {
|
|
@@ -318,6 +343,69 @@ var AirGapNodeClient = /** @class */ (function (_super) {
|
|
|
318
343
|
});
|
|
319
344
|
});
|
|
320
345
|
};
|
|
346
|
+
AirGapNodeClient.prototype.getContractName = function (contractAddress) {
|
|
347
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
348
|
+
var data, body, response, result;
|
|
349
|
+
return __generator(this, function (_a) {
|
|
350
|
+
switch (_a.label) {
|
|
351
|
+
case 0:
|
|
352
|
+
data = new EthereumRPCData('name()');
|
|
353
|
+
body = this.contractCallBody(contractAddress, data);
|
|
354
|
+
return [4 /*yield*/, this.send(body)];
|
|
355
|
+
case 1:
|
|
356
|
+
response = _a.sent();
|
|
357
|
+
if (!response.result) {
|
|
358
|
+
return [2 /*return*/, undefined];
|
|
359
|
+
}
|
|
360
|
+
result = EthereumRPCData.abiDecoded(response.result, 'bytes');
|
|
361
|
+
return [2 /*return*/, EthereumUtils_1.EthereumUtils.hexToUtf8(result)];
|
|
362
|
+
}
|
|
363
|
+
});
|
|
364
|
+
});
|
|
365
|
+
};
|
|
366
|
+
AirGapNodeClient.prototype.getContractSymbol = function (contractAddress) {
|
|
367
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
368
|
+
var data, body, response, result;
|
|
369
|
+
return __generator(this, function (_a) {
|
|
370
|
+
switch (_a.label) {
|
|
371
|
+
case 0:
|
|
372
|
+
data = new EthereumRPCData('symbol()');
|
|
373
|
+
body = this.contractCallBody(contractAddress, data);
|
|
374
|
+
return [4 /*yield*/, this.send(body)];
|
|
375
|
+
case 1:
|
|
376
|
+
response = _a.sent();
|
|
377
|
+
if (!response.result) {
|
|
378
|
+
return [2 /*return*/, undefined];
|
|
379
|
+
}
|
|
380
|
+
result = EthereumRPCData.abiDecoded(response.result, 'bytes');
|
|
381
|
+
return [2 /*return*/, EthereumUtils_1.EthereumUtils.hexToUtf8(result)];
|
|
382
|
+
}
|
|
383
|
+
});
|
|
384
|
+
});
|
|
385
|
+
};
|
|
386
|
+
AirGapNodeClient.prototype.getContractDecimals = function (contractAddress) {
|
|
387
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
388
|
+
var data, body, response;
|
|
389
|
+
return __generator(this, function (_a) {
|
|
390
|
+
switch (_a.label) {
|
|
391
|
+
case 0:
|
|
392
|
+
data = new EthereumRPCData('decimals()');
|
|
393
|
+
body = this.contractCallBody(contractAddress, data);
|
|
394
|
+
return [4 /*yield*/, this.send(body)];
|
|
395
|
+
case 1:
|
|
396
|
+
response = _a.sent();
|
|
397
|
+
if (!response.result) {
|
|
398
|
+
return [2 /*return*/, undefined];
|
|
399
|
+
}
|
|
400
|
+
return [2 /*return*/, EthereumUtils_1.EthereumUtils.hexToNumber(response.result).toNumber()];
|
|
401
|
+
}
|
|
402
|
+
});
|
|
403
|
+
});
|
|
404
|
+
};
|
|
405
|
+
AirGapNodeClient.prototype.contractCallBody = function (contractAddress, data, extraParams, id, jsonrpc) {
|
|
406
|
+
if (extraParams === void 0) { extraParams = []; }
|
|
407
|
+
return new EthereumRPCBody('eth_call', __spreadArray([{ to: contractAddress, data: data.abiEncoded() }], extraParams, true), id, jsonrpc);
|
|
408
|
+
};
|
|
321
409
|
AirGapNodeClient.prototype.send = function (body) {
|
|
322
410
|
return __awaiter(this, void 0, void 0, function () {
|
|
323
411
|
var response;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AirGapNodeClient.js","sourceRoot":"","sources":["../../../../src/v1/clients/node/AirGapNodeClient.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AirGapNodeClient.js","sourceRoot":"","sources":["../../../../src/v1/clients/node/AirGapNodeClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,4 +14,7 @@ export declare abstract class EthereumNodeClient {
|
|
|
14
14
|
abstract callBalanceOfOnContracts(contractAddresses: string[], address: string): Promise<{
|
|
15
15
|
[contractAddress: string]: BigNumber;
|
|
16
16
|
}>;
|
|
17
|
+
abstract getContractName(contractAddress: string): Promise<string | undefined>;
|
|
18
|
+
abstract getContractSymbol(contractAddress: string): Promise<string | undefined>;
|
|
19
|
+
abstract getContractDecimals(contractAddress: string): Promise<number | undefined>;
|
|
17
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EthereumNodeClient.js","sourceRoot":"","sources":["../../../../src/v1/clients/node/EthereumNodeClient.ts"],"names":[],"mappings":";;;AAGA;IAGE,4BAAY,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;
|
|
1
|
+
{"version":3,"file":"EthereumNodeClient.js","sourceRoot":"","sources":["../../../../src/v1/clients/node/EthereumNodeClient.ts"],"names":[],"mappings":";;;AAGA;IAGE,4BAAY,OAAe;QACzB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;IACxB,CAAC;IA4BH,yBAAC;AAAD,CAAC,AAjCD,IAiCC;AAjCqB,gDAAkB"}
|
package/v1/index.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ import { EthereumCryptoConfiguration } from './types/crypto';
|
|
|
18
18
|
import { ERC20TokenMetadata, ERC20TokenOptions, EthereumBaseProtocolOptions, EthereumProtocolNetwork, EthereumProtocolOptions, EthereumUnits } from './types/protocol';
|
|
19
19
|
import { EthereumRawUnsignedTransaction, EthereumSignedTransaction, EthereumTransactionCursor, EthereumTypedUnsignedTransaction, EthereumUnsignedTransaction } from './types/transaction';
|
|
20
20
|
import { EthereumUtils } from './utils/EthereumUtils';
|
|
21
|
+
import { isAnyEthereumProtocol, isEthereumERC20Protocol, isEthereumERC20Token, isEthereumProtocol } from './utils/protocol';
|
|
21
22
|
export { EthereumModule };
|
|
22
23
|
export { EthereumBaseProtocol, EthereumBaseProtocolImpl, EthereumProtocol, createEthereumProtocol, createEthereumProtocolOptions, ERC20Protocol, ERC20ProtocolImpl, ERC20Token, ERC20TokenImpl, createERC20Token };
|
|
23
24
|
export { EtherscanBlockExplorer };
|
|
@@ -25,5 +26,5 @@ export { DEFAULT_ETHEREUM_UNITS_METADATA };
|
|
|
25
26
|
export { EthereumNodeClient, AirGapNodeClient, EthereumInfoClient, EtherscanInfoClient };
|
|
26
27
|
export { EthereumCryptoConfiguration, EthereumUnits, EthereumProtocolNetwork, EthereumProtocolOptions, ERC20TokenMetadata, ERC20TokenOptions, EthereumBaseProtocolOptions, EthereumUnsignedTransaction, EthereumTypedUnsignedTransaction, EthereumRawUnsignedTransaction, EthereumSignedTransaction, EthereumTransactionCursor, EthereumRPCData, EthereumRPCBody, EthereumRPCResponse };
|
|
27
28
|
export { EthereumTransactionSignRequest, EthereumTypedTransactionSignRequest, EthereumTransactionSignResponse, ethereumUnsignedTransactionToRequest, ethereumSignedTransactionToResponse, ethereumTransactionSignRequestToUnsigned, ethereumTransactionSignResponseToSigned, EthereumTransactionValidator };
|
|
28
|
-
export { EthereumUtils };
|
|
29
|
+
export { EthereumUtils, isAnyEthereumProtocol, isEthereumProtocol, isEthereumERC20Protocol, isEthereumERC20Token };
|
|
29
30
|
export { erc20Tokens };
|
package/v1/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.erc20Tokens = exports.EthereumUtils = exports.EthereumTransactionValidator = exports.ethereumTransactionSignResponseToSigned = exports.ethereumTransactionSignRequestToUnsigned = exports.ethereumSignedTransactionToResponse = exports.ethereumUnsignedTransactionToRequest = exports.EthereumRPCBody = exports.EthereumRPCData = exports.EtherscanInfoClient = exports.EthereumInfoClient = exports.AirGapNodeClient = exports.EthereumNodeClient = exports.DEFAULT_ETHEREUM_UNITS_METADATA = exports.EtherscanBlockExplorer = exports.createERC20Token = exports.ERC20TokenImpl = exports.ERC20ProtocolImpl = exports.createEthereumProtocolOptions = exports.createEthereumProtocol = exports.EthereumBaseProtocolImpl = exports.EthereumModule = void 0;
|
|
3
|
+
exports.erc20Tokens = exports.isEthereumERC20Token = exports.isEthereumERC20Protocol = exports.isEthereumProtocol = exports.isAnyEthereumProtocol = exports.EthereumUtils = exports.EthereumTransactionValidator = exports.ethereumTransactionSignResponseToSigned = exports.ethereumTransactionSignRequestToUnsigned = exports.ethereumSignedTransactionToResponse = exports.ethereumUnsignedTransactionToRequest = exports.EthereumRPCBody = exports.EthereumRPCData = exports.EtherscanInfoClient = exports.EthereumInfoClient = exports.AirGapNodeClient = exports.EthereumNodeClient = exports.DEFAULT_ETHEREUM_UNITS_METADATA = exports.EtherscanBlockExplorer = exports.createERC20Token = exports.ERC20TokenImpl = exports.ERC20ProtocolImpl = exports.createEthereumProtocolOptions = exports.createEthereumProtocol = exports.EthereumBaseProtocolImpl = exports.EthereumModule = void 0;
|
|
4
4
|
var EtherscanBlockExplorer_1 = require("./block-explorer/EtherscanBlockExplorer");
|
|
5
5
|
Object.defineProperty(exports, "EtherscanBlockExplorer", { enumerable: true, get: function () { return EtherscanBlockExplorer_1.EtherscanBlockExplorer; } });
|
|
6
6
|
var EthereumInfoClient_1 = require("./clients/info/EthereumInfoClient");
|
|
@@ -37,4 +37,9 @@ var transaction_validator_1 = require("./serializer/v3/validators/transaction-va
|
|
|
37
37
|
Object.defineProperty(exports, "EthereumTransactionValidator", { enumerable: true, get: function () { return transaction_validator_1.EthereumTransactionValidator; } });
|
|
38
38
|
var EthereumUtils_1 = require("./utils/EthereumUtils");
|
|
39
39
|
Object.defineProperty(exports, "EthereumUtils", { enumerable: true, get: function () { return EthereumUtils_1.EthereumUtils; } });
|
|
40
|
+
var protocol_1 = require("./utils/protocol");
|
|
41
|
+
Object.defineProperty(exports, "isAnyEthereumProtocol", { enumerable: true, get: function () { return protocol_1.isAnyEthereumProtocol; } });
|
|
42
|
+
Object.defineProperty(exports, "isEthereumERC20Protocol", { enumerable: true, get: function () { return protocol_1.isEthereumERC20Protocol; } });
|
|
43
|
+
Object.defineProperty(exports, "isEthereumERC20Token", { enumerable: true, get: function () { return protocol_1.isEthereumERC20Token; } });
|
|
44
|
+
Object.defineProperty(exports, "isEthereumProtocol", { enumerable: true, get: function () { return protocol_1.isEthereumProtocol; } });
|
|
40
45
|
//# sourceMappingURL=index.js.map
|
package/v1/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/v1/index.ts"],"names":[],"mappings":";;;AAAA,kFAAgF;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/v1/index.ts"],"names":[],"mappings":";;;AAAA,kFAAgF;AA6DvE,uGA7DA,+CAAsB,OA6DA;AA5D/B,wEAAsE;AAoEvB,mGApEtC,uCAAkB,OAoEsC;AAnEjE,0EAAwE;AAmEL,oGAnE1D,yCAAmB,OAmE0D;AAlEtF,oEAAyH;AAkE5F,iGAlEpB,mCAAgB,OAkEoB;AAkB3C,gGApFyB,kCAAe,OAoFzB;AADf,gGAnF0C,kCAAe,OAmF1C;AAlFjB,wEAAsE;AAiE7D,mGAjEA,uCAAkB,OAiEA;AAhE3B,oDAAkD;AAyGzC,4FAzGA,yBAAW,OAyGA;AAxGpB,0DAAwD;AAoC/C,+FApCA,+BAAc,OAoCA;AAnCvB,gEAAiF;AA8C/E,kGA9CsB,iCAAiB,OA8CtB;AA7CnB,0DAA0F;AAgDxF,iGAhDO,6BAAgB,OAgDP;AADhB,+FA/CqC,2BAAc,OA+CrC;AA9ChB,wEAAiI;AAwDxH,gHAxDA,sDAA+B,OAwDA;AAjBtC,yGAvC8D,+CAAwB,OAuC9D;AAtC1B,gEAAqH;AAwCnH,uGAxCO,yCAAsB,OAwCP;AACtB,8GAzC+B,gDAA6B,OAyC/B;AAxC/B,iGAKgE;AAkF9D,oHAtFA,2DAAmC,OAsFA;AACnC,yHAtFA,gEAAwC,OAsFA;AACxC,wHAtFA,+DAAuC,OAsFA;AAHvC,qHAlFA,4DAAoC,OAkFA;AAhFtC,0FAA+F;AAoF7F,6GApFO,oDAA4B,OAoFP;AAhE9B,uDAAqD;AAqE5C,8FArEA,6BAAa,OAqEA;AApEtB,6CAA2H;AAoEnG,sGApEf,gCAAqB,OAoEe;AAAsB,wGApEnC,kCAAuB,OAoEmC;AAAE,qGApEnC,+BAAoB,OAoEmC;AAAjE,mGApEgC,6BAAkB,OAoEhC"}
|
|
@@ -6,6 +6,9 @@ import { ERC20ProtocolOptions, EthereumProtocolNetwork, EthereumUnits } from '..
|
|
|
6
6
|
import { EthereumSignedTransaction, EthereumTransactionCursor, EthereumUnsignedTransaction } from '../../types/transaction';
|
|
7
7
|
import { EthereumBaseProtocol, EthereumBaseProtocolImpl } from '../EthereumBaseProtocol';
|
|
8
8
|
export interface ERC20Protocol<_Units extends string, _ProtocolNetwork extends EthereumProtocolNetwork = EthereumProtocolNetwork> extends EthereumBaseProtocol<_Units, _ProtocolNetwork> {
|
|
9
|
+
name(): Promise<string | undefined>;
|
|
10
|
+
symbol(): Promise<string | undefined>;
|
|
11
|
+
decimals(): Promise<number | undefined>;
|
|
9
12
|
}
|
|
10
13
|
export declare abstract class ERC20ProtocolImpl<_Units extends string, _ProtocolNetwork extends EthereumProtocolNetwork = EthereumProtocolNetwork> extends EthereumBaseProtocolImpl<_Units, _ProtocolNetwork> implements ERC20Protocol<_Units, _ProtocolNetwork> {
|
|
11
14
|
protected readonly contractAddress: string;
|
|
@@ -22,5 +25,8 @@ export declare abstract class ERC20ProtocolImpl<_Units extends string, _Protocol
|
|
|
22
25
|
getBalanceOfAddresses(addresses: string[]): Promise<Balance<_Units>>;
|
|
23
26
|
getTransactionMaxAmountWithPublicKey(publicKey: PublicKey | ExtendedPublicKey, to: string[], configuration?: TransactionFullConfiguration<EthereumUnits>): Promise<Amount<_Units>>;
|
|
24
27
|
prepareTransactionWithPublicKey(publicKey: PublicKey | ExtendedPublicKey, details: TransactionDetails<_Units>[], configuration?: TransactionFullConfiguration<EthereumUnits>): Promise<EthereumUnsignedTransaction>;
|
|
28
|
+
name(): Promise<string | undefined>;
|
|
29
|
+
symbol(): Promise<string | undefined>;
|
|
30
|
+
decimals(): Promise<number | undefined>;
|
|
25
31
|
protected estimateGas(fromAddress: string, toAddress: string, amount: string | number | BigNumber | Amount, _data?: string): Promise<BigNumber>;
|
|
26
32
|
}
|
|
@@ -355,6 +355,27 @@ var ERC20ProtocolImpl = /** @class */ (function (_super) {
|
|
|
355
355
|
});
|
|
356
356
|
};
|
|
357
357
|
// Custom
|
|
358
|
+
ERC20ProtocolImpl.prototype.name = function () {
|
|
359
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
360
|
+
return __generator(this, function (_a) {
|
|
361
|
+
return [2 /*return*/, this.nodeClient.getContractName(this.contractAddress)];
|
|
362
|
+
});
|
|
363
|
+
});
|
|
364
|
+
};
|
|
365
|
+
ERC20ProtocolImpl.prototype.symbol = function () {
|
|
366
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
367
|
+
return __generator(this, function (_a) {
|
|
368
|
+
return [2 /*return*/, this.nodeClient.getContractSymbol(this.contractAddress)];
|
|
369
|
+
});
|
|
370
|
+
});
|
|
371
|
+
};
|
|
372
|
+
ERC20ProtocolImpl.prototype.decimals = function () {
|
|
373
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
374
|
+
return __generator(this, function (_a) {
|
|
375
|
+
return [2 /*return*/, this.nodeClient.getContractDecimals(this.contractAddress)];
|
|
376
|
+
});
|
|
377
|
+
});
|
|
378
|
+
};
|
|
358
379
|
ERC20ProtocolImpl.prototype.estimateGas = function (fromAddress, toAddress, amount, _data) {
|
|
359
380
|
return __awaiter(this, void 0, void 0, function () {
|
|
360
381
|
var hexAmount, blockchainAmount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ERC20Protocol.js","sourceRoot":"","sources":["../../../../src/v1/protocol/erc20/ERC20Protocol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAA0D;AAC1D,iHAA0F;AAC1F,aAAa;AACb,mGAAsF;AACtF,sDAAqG;AACrG,sDAAsD;AACtD,iDAc2B;AAC3B,qCAAgF;AAGhF,wEAA6E;AAS7E,2DAAyD;AACzD,gEAAwF;AAExF,IAAM,mBAAmB,GAAG,OAAO,CAAC,iEAAiE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"ERC20Protocol.js","sourceRoot":"","sources":["../../../../src/v1/protocol/erc20/ERC20Protocol.ts"],"names":[],"mappings":"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"}
|
|
@@ -123,6 +123,12 @@ var EthereumUtils = /** @class */ (function () {
|
|
|
123
123
|
return bignumber_1.BigNumber.isBigNumber(value);
|
|
124
124
|
}
|
|
125
125
|
};
|
|
126
|
+
EthereumUtils.hexToUtf8 = function (value) {
|
|
127
|
+
if (value.startsWith('0x')) {
|
|
128
|
+
value = value.slice(2);
|
|
129
|
+
}
|
|
130
|
+
return Buffer.from(value, 'hex').toString('utf-8');
|
|
131
|
+
};
|
|
126
132
|
EthereumUtils.utf8ToHex = function (value) {
|
|
127
133
|
var str = utf8.encode(value);
|
|
128
134
|
var hex = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EthereumUtils.js","sourceRoot":"","sources":["../../../src/v1/utils/EthereumUtils.ts"],"names":[],"mappings":";;;AAAA,gGAA8F;AAC9F,sDAA+D;AAC/D,2EAAkE;AAClE,gCAAgC;AAChC,4EAA4E;AAC5E,2CAA2C;AAC3C,IAAM,IAAI,GAAG,OAAO,CAAC,uDAAuD,CAAC,CAAA;AAC7E,IAAM,gBAAgB,GAAG,OAAO,CAAC,uDAAuD,CAAC,CAAA;AAEzF,qHAAqH;AACrH;IAAA;
|
|
1
|
+
{"version":3,"file":"EthereumUtils.js","sourceRoot":"","sources":["../../../src/v1/utils/EthereumUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AirGapAnyProtocol, Schema } from '@airgap/module-kit';
|
|
2
|
+
import { ERC20Protocol } from '../protocol/erc20/ERC20Protocol';
|
|
3
|
+
import { ERC20Token } from '../protocol/erc20/ERC20Token';
|
|
4
|
+
import { EthereumBaseProtocol } from '../protocol/EthereumBaseProtocol';
|
|
5
|
+
import { EthereumProtocol } from '../protocol/EthereumProtocol';
|
|
6
|
+
export declare const ethereumBaseProtocolSchema: Schema<EthereumBaseProtocol>;
|
|
7
|
+
export declare const ethereumProtocolSchema: Schema<EthereumProtocol>;
|
|
8
|
+
export declare const ethereumERC20ProtocolSchema: Schema<ERC20Protocol<string>>;
|
|
9
|
+
export declare const ethereumERC20TokenSchema: Schema<ERC20Token>;
|
|
10
|
+
export declare function isAnyEthereumProtocol(protocol: AirGapAnyProtocol): protocol is EthereumBaseProtocol;
|
|
11
|
+
export declare function isEthereumProtocol(protocol: AirGapAnyProtocol): protocol is EthereumProtocol;
|
|
12
|
+
export declare function isEthereumERC20Protocol(protocol: AirGapAnyProtocol): protocol is ERC20Protocol<string>;
|
|
13
|
+
export declare function isEthereumERC20Token(protocol: AirGapAnyProtocol): protocol is ERC20Token;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.isEthereumERC20Token = exports.isEthereumERC20Protocol = exports.isEthereumProtocol = exports.isAnyEthereumProtocol = exports.ethereumERC20TokenSchema = exports.ethereumERC20ProtocolSchema = exports.ethereumProtocolSchema = exports.ethereumBaseProtocolSchema = void 0;
|
|
15
|
+
var module_kit_1 = require("@airgap/module-kit");
|
|
16
|
+
// Schemas
|
|
17
|
+
exports.ethereumBaseProtocolSchema = __assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({}, module_kit_1.offlineProtocolSchema), module_kit_1.onlineProtocolSchema), module_kit_1.bip32OfflineProtocolSchema), module_kit_1.bip32OnlineProtocolSchema), module_kit_1.aesEncryptionSchema), module_kit_1.asymmetricEncryptionOfflineSchema), module_kit_1.signMessageOfflineSchema), module_kit_1.fetchDataForAddressProtocolSchema), module_kit_1.fetchDataForMultipleAddressesProtocolSchema), module_kit_1.transactionStatusCheckerSchema);
|
|
18
|
+
exports.ethereumProtocolSchema = __assign(__assign({}, exports.ethereumBaseProtocolSchema), { fetchTransactionCountForAddress: 'required', getGasPrice: 'required' });
|
|
19
|
+
exports.ethereumERC20ProtocolSchema = __assign(__assign({}, exports.ethereumBaseProtocolSchema), { name: 'required', symbol: 'required', decimals: 'required' });
|
|
20
|
+
exports.ethereumERC20TokenSchema = __assign(__assign({}, exports.ethereumERC20ProtocolSchema), module_kit_1.singleTokenSubProtocolSchema);
|
|
21
|
+
// Implementation Checks
|
|
22
|
+
function isAnyEthereumProtocol(protocol) {
|
|
23
|
+
return (0, module_kit_1.implementsInterface)(protocol, exports.ethereumBaseProtocolSchema);
|
|
24
|
+
}
|
|
25
|
+
exports.isAnyEthereumProtocol = isAnyEthereumProtocol;
|
|
26
|
+
function isEthereumProtocol(protocol) {
|
|
27
|
+
return (0, module_kit_1.implementsInterface)(protocol, exports.ethereumProtocolSchema);
|
|
28
|
+
}
|
|
29
|
+
exports.isEthereumProtocol = isEthereumProtocol;
|
|
30
|
+
function isEthereumERC20Protocol(protocol) {
|
|
31
|
+
return (0, module_kit_1.implementsInterface)(protocol, exports.ethereumERC20ProtocolSchema);
|
|
32
|
+
}
|
|
33
|
+
exports.isEthereumERC20Protocol = isEthereumERC20Protocol;
|
|
34
|
+
function isEthereumERC20Token(protocol) {
|
|
35
|
+
return (0, module_kit_1.implementsInterface)(protocol, exports.ethereumERC20TokenSchema);
|
|
36
|
+
}
|
|
37
|
+
exports.isEthereumERC20Token = isEthereumERC20Token;
|
|
38
|
+
//# sourceMappingURL=protocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/v1/utils/protocol.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,iDAe2B;AAO3B,UAAU;AAEG,QAAA,0BAA0B,iGAClC,kCAAqB,GACrB,iCAAoB,GACpB,uCAA0B,GAC1B,sCAAyB,GACzB,gCAAmB,GACnB,8CAAiC,GACjC,qCAAwB,GACxB,8CAAiC,GACjC,wDAA2C,GAC3C,2CAA8B,EAClC;AAEY,QAAA,sBAAsB,yBAC9B,kCAA0B,KAC7B,+BAA+B,EAAE,UAAU,EAC3C,WAAW,EAAE,UAAU,IACxB;AAEY,QAAA,2BAA2B,yBACnC,kCAA0B,KAC7B,IAAI,EAAE,UAAU,EAChB,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,UAAU,IACrB;AAEY,QAAA,wBAAwB,yBAChC,mCAA2B,GAC3B,yCAA4B,EAChC;AAED,wBAAwB;AAExB,SAAgB,qBAAqB,CAAC,QAA2B;IAC/D,OAAO,IAAA,gCAAmB,EAAuB,QAAQ,EAAE,kCAA0B,CAAC,CAAA;AACxF,CAAC;AAFD,sDAEC;AAED,SAAgB,kBAAkB,CAAC,QAA2B;IAC5D,OAAO,IAAA,gCAAmB,EAAmB,QAAQ,EAAE,8BAAsB,CAAC,CAAA;AAChF,CAAC;AAFD,gDAEC;AAED,SAAgB,uBAAuB,CAAC,QAA2B;IACjE,OAAO,IAAA,gCAAmB,EAAwB,QAAQ,EAAE,mCAA2B,CAAC,CAAA;AAC1F,CAAC;AAFD,0DAEC;AAED,SAAgB,oBAAoB,CAAC,QAA2B;IAC9D,OAAO,IAAA,gCAAmB,EAAa,QAAQ,EAAE,gCAAwB,CAAC,CAAA;AAC5E,CAAC;AAFD,oDAEC"}
|