@airgap/icp 0.13.11-beta.0 → 0.13.11-beta.10
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 +15 -16
- package/v1/index.d.ts +5 -3
- package/v1/index.js +4 -1
- package/v1/index.js.map +1 -1
- package/v1/module/ICPModule.d.ts +2 -3
- package/v1/module/ICPModule.js +22 -10
- package/v1/module/ICPModule.js.map +1 -1
- package/v1/protocol/ICPImplementation.d.ts +13 -5
- package/v1/protocol/ICPImplementation.js +92 -58
- package/v1/protocol/ICPImplementation.js.map +1 -1
- package/v1/protocol/ICPProtocol.d.ts +9 -2
- package/v1/protocol/ICPProtocol.js +44 -35
- package/v1/protocol/ICPProtocol.js.map +1 -1
- package/v1/protocol/icrc/CkBTCProtocol.d.ts +13 -0
- package/v1/protocol/icrc/CkBTCProtocol.js +328 -0
- package/v1/protocol/icrc/CkBTCProtocol.js.map +1 -0
- package/v1/protocol/icrc/ICRC1Protocol.d.ts +95 -0
- package/v1/protocol/icrc/ICRC1Protocol.js +717 -0
- package/v1/protocol/icrc/ICRC1Protocol.js.map +1 -0
- package/v1/serializer/v3/serializer-companion.js +16 -0
- package/v1/serializer/v3/serializer-companion.js.map +1 -1
- package/v1/types/ckbtc/metadata.d.ts +4 -0
- package/v1/types/ckbtc/metadata.js +3 -0
- package/v1/types/ckbtc/metadata.js.map +1 -0
- package/v1/types/crypto.d.ts +2 -0
- package/v1/types/crypto.js +3 -0
- package/v1/types/crypto.js.map +1 -0
- package/v1/types/icrc/account.d.ts +4 -0
- package/v1/types/icrc/account.js +3 -0
- package/v1/types/icrc/account.js.map +1 -0
- package/v1/types/icrc/ledger.d.ts +15 -0
- package/v1/types/icrc/ledger.js +92 -0
- package/v1/types/icrc/ledger.js.map +1 -0
- package/v1/types/icrc/metadata.d.ts +6 -0
- package/v1/types/icrc/metadata.js +3 -0
- package/v1/types/icrc/metadata.js.map +1 -0
- package/v1/types/icrc/transfer.d.ts +9 -0
- package/v1/types/icrc/transfer.js +3 -0
- package/v1/types/icrc/transfer.js.map +1 -0
- package/v1/types/ledger.d.ts +0 -1
- package/v1/types/ledger.js +1 -2
- package/v1/types/ledger.js.map +1 -1
- package/v1/types/protocol.d.ts +30 -1
- package/v1/utils/convert.d.ts +3 -1
- package/v1/utils/convert.js +9 -1
- package/v1/utils/convert.js.map +1 -1
- package/v1/utils/hdkey.js +28 -5
- package/v1/utils/hdkey.js.map +1 -1
- package/v1/utils/icrc1.d.ts +20 -0
- package/v1/utils/icrc1.js +171 -0
- package/v1/utils/icrc1.js.map +1 -0
- package/v1/utils/secp256k1.js +31 -7
- package/v1/utils/secp256k1.js.map +1 -1
- package/airgap-coinlib-icp.min.js +0 -91775
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
26
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
27
|
+
if (!m) return o;
|
|
28
|
+
var i = m.call(o), r, ar = [], e;
|
|
29
|
+
try {
|
|
30
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
31
|
+
}
|
|
32
|
+
catch (error) { e = { error: error }; }
|
|
33
|
+
finally {
|
|
34
|
+
try {
|
|
35
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
36
|
+
}
|
|
37
|
+
finally { if (e) throw e.error; }
|
|
38
|
+
}
|
|
39
|
+
return ar;
|
|
40
|
+
};
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.getICRC1AccountFromAddress = exports.getICRC1AddressFromAccount = exports.getICRC1AddressFromPrincipal = exports.getICRC1AddressFromPublicKey = exports.getDetailsFromTransferArgs = exports.decodeICRC1TransferArgs = exports.decodeICRC1Metadata = exports.decodeICRC1Account = exports.decodeOptionalICRC1Account = exports.encodeICRC1Account = void 0;
|
|
43
|
+
var hex_1 = require("@airgap/coinlib-core/utils/hex");
|
|
44
|
+
var module_kit_1 = require("@airgap/module-kit");
|
|
45
|
+
var ICPImplementation_1 = require("../protocol/ICPImplementation");
|
|
46
|
+
var ledger_1 = require("../types/icrc/ledger");
|
|
47
|
+
var IDL = __importStar(require("../utils/idl"));
|
|
48
|
+
var convert_1 = require("./convert");
|
|
49
|
+
var principal_1 = require("./principal");
|
|
50
|
+
function encodeICRC1Account(account) {
|
|
51
|
+
return {
|
|
52
|
+
owner: (0, hex_1.isHex)(account.owner) ? principal_1.Principal.fromHex(account.owner) : principal_1.Principal.from(account.owner),
|
|
53
|
+
subaccount: account.subaccount ? [Buffer.from(account.subaccount, 'hex')] : []
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
exports.encodeICRC1Account = encodeICRC1Account;
|
|
57
|
+
function decodeOptionalICRC1Account(account) {
|
|
58
|
+
// TODO: maybe decode with IDL?
|
|
59
|
+
if (!account || account.length === 0) {
|
|
60
|
+
return undefined;
|
|
61
|
+
}
|
|
62
|
+
return decodeICRC1Account(account);
|
|
63
|
+
}
|
|
64
|
+
exports.decodeOptionalICRC1Account = decodeOptionalICRC1Account;
|
|
65
|
+
function decodeICRC1Account(account) {
|
|
66
|
+
return {
|
|
67
|
+
owner: account[0].owner.toText(),
|
|
68
|
+
subaccount: account[0].subaccount && account[0].subaccount.length > 0
|
|
69
|
+
? Buffer.from(account[0].subaccount[0]).toString('hex')
|
|
70
|
+
: undefined
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
exports.decodeICRC1Account = decodeICRC1Account;
|
|
74
|
+
function decodeICRC1Metadata(metadata) {
|
|
75
|
+
// TODO: maybe decode with IDL?
|
|
76
|
+
return metadata.reduce(function (acc, next) {
|
|
77
|
+
var _a;
|
|
78
|
+
switch (next[0]) {
|
|
79
|
+
case 'icrc1:name':
|
|
80
|
+
return Object.assign(acc, { name: next[1].Text });
|
|
81
|
+
case 'icrc1:symbol':
|
|
82
|
+
return Object.assign(acc, { symbol: next[1].Text });
|
|
83
|
+
case 'icrc1:decimals':
|
|
84
|
+
return Object.assign(acc, { decimals: Number(next[1].Nat) });
|
|
85
|
+
case 'icrc1:fee':
|
|
86
|
+
return Object.assign(acc, { fee: next[1].Nat.toString() });
|
|
87
|
+
default:
|
|
88
|
+
return Object.assign(acc, (_a = {}, _a[next[0]] = next[1], _a));
|
|
89
|
+
}
|
|
90
|
+
}, {});
|
|
91
|
+
}
|
|
92
|
+
exports.decodeICRC1Metadata = decodeICRC1Metadata;
|
|
93
|
+
function decodeICRC1TransferArgs(transaction) {
|
|
94
|
+
var TransferArg = (0, ledger_1.icrcIDLTypes)(IDL).TransferArg;
|
|
95
|
+
var transferArg = IDL.decode([TransferArg], transaction)[0];
|
|
96
|
+
return {
|
|
97
|
+
fromSubaccount: transferArg.from_subaccount && transferArg.from_subaccount.length > 0
|
|
98
|
+
? Buffer.from(transferArg.from_subaccount).toString('hex')
|
|
99
|
+
: undefined,
|
|
100
|
+
to: decodeICRC1Account(transferArg.to),
|
|
101
|
+
amount: transferArg.amount.toString(),
|
|
102
|
+
fee: transferArg.fee && transferArg.fee.length > 0 ? transferArg.fee.toString() : undefined,
|
|
103
|
+
memo: transferArg.memo && transferArg.memo.length > 0 ? Buffer.from(transferArg.memo).toString('hex') : undefined,
|
|
104
|
+
createdAtTime: transferArg.created_at_time && transferArg.created_at_time.length > 0
|
|
105
|
+
? transferArg.created_at_time.toString()
|
|
106
|
+
: undefined
|
|
107
|
+
};
|
|
108
|
+
}
|
|
109
|
+
exports.decodeICRC1TransferArgs = decodeICRC1TransferArgs;
|
|
110
|
+
function getDetailsFromTransferArgs(transferArgs, publicKey, network, defaultFee) {
|
|
111
|
+
var from = (0, ICPImplementation_1.getAddressFromPublicKey)(publicKey, transferArgs.fromSubaccount);
|
|
112
|
+
var to = (0, ICPImplementation_1.getAddressFromPrincipal)(transferArgs.to.owner, transferArgs.to.subaccount);
|
|
113
|
+
return [
|
|
114
|
+
{
|
|
115
|
+
from: [from],
|
|
116
|
+
to: [to],
|
|
117
|
+
isInbound: from === to,
|
|
118
|
+
amount: (0, module_kit_1.newAmount)(transferArgs.amount, 'blockchain'),
|
|
119
|
+
fee: transferArgs.fee ? (0, module_kit_1.newAmount)(transferArgs.fee, 'blockchain') : defaultFee,
|
|
120
|
+
network: network,
|
|
121
|
+
arbitraryData: transferArgs.memo
|
|
122
|
+
}
|
|
123
|
+
];
|
|
124
|
+
}
|
|
125
|
+
exports.getDetailsFromTransferArgs = getDetailsFromTransferArgs;
|
|
126
|
+
function getICRC1AddressFromPublicKey(publicKey, subAccount) {
|
|
127
|
+
// Get principal from public key
|
|
128
|
+
var principal = (0, ICPImplementation_1.getPrincipalFromPublicKey)(publicKey);
|
|
129
|
+
return getICRC1AddressFromPrincipal(principal, subAccount);
|
|
130
|
+
}
|
|
131
|
+
exports.getICRC1AddressFromPublicKey = getICRC1AddressFromPublicKey;
|
|
132
|
+
function getICRC1AddressFromPrincipal(principalOrText, subAccountOrUndefined) {
|
|
133
|
+
var principal = typeof principalOrText === 'string'
|
|
134
|
+
? (0, hex_1.isHex)(principalOrText)
|
|
135
|
+
? principal_1.Principal.fromHex(principalOrText)
|
|
136
|
+
: principal_1.Principal.from(principalOrText)
|
|
137
|
+
: principalOrText;
|
|
138
|
+
var subAccount = typeof subAccountOrUndefined === 'string'
|
|
139
|
+
? Buffer.from(subAccountOrUndefined, 'hex')
|
|
140
|
+
: typeof subAccountOrUndefined === 'undefined' || subAccountOrUndefined.length === 0
|
|
141
|
+
? undefined
|
|
142
|
+
: Buffer.from(subAccountOrUndefined);
|
|
143
|
+
if (subAccount === undefined) {
|
|
144
|
+
return principal.toText();
|
|
145
|
+
}
|
|
146
|
+
// It's not specified yet how the checksum should be calculated, we should treat the below as a placeholder
|
|
147
|
+
var checksum = (0, convert_1.calculateCrc16)(Buffer.concat([principal.toUint8Array(), subAccount]));
|
|
148
|
+
return "".concat(principal.toText(), "-").concat(checksum.slice(0, 2).toString('hex'), ".").concat(subAccount.toString('hex').replace(/^(00)+/, ''));
|
|
149
|
+
}
|
|
150
|
+
exports.getICRC1AddressFromPrincipal = getICRC1AddressFromPrincipal;
|
|
151
|
+
function getICRC1AddressFromAccount(account) {
|
|
152
|
+
return getICRC1AddressFromPrincipal(account.owner, account.subaccount);
|
|
153
|
+
}
|
|
154
|
+
exports.getICRC1AddressFromAccount = getICRC1AddressFromAccount;
|
|
155
|
+
function getICRC1AccountFromAddress(address) {
|
|
156
|
+
if (!address.includes('.')) {
|
|
157
|
+
return {
|
|
158
|
+
owner: address
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
var _a = __read(address.split('.', 2), 2), principalWithChecksum = _a[0], subaccount = _a[1];
|
|
162
|
+
var principalChecksumDivider = principalWithChecksum.lastIndexOf('-');
|
|
163
|
+
var principal = principalWithChecksum.slice(0, principalChecksumDivider);
|
|
164
|
+
// TODO: check checksum?
|
|
165
|
+
return {
|
|
166
|
+
owner: principal,
|
|
167
|
+
subaccount: subaccount
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
exports.getICRC1AccountFromAddress = getICRC1AccountFromAddress;
|
|
171
|
+
//# sourceMappingURL=icrc1.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"icrc1.js","sourceRoot":"","sources":["../../../src/v1/utils/icrc1.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAAsD;AACtD,iDAAyE;AAEzE,mEAA2H;AAE3H,+CAAmD;AAInD,gDAAmC;AAEnC,qCAA0C;AAC1C,yCAAuC;AAEvC,SAAgB,kBAAkB,CAAC,OAAqB;IACtD,OAAO;QACL,KAAK,EAAE,IAAA,WAAK,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAS,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAS,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;QAC9F,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;KAC/E,CAAA;AACH,CAAC;AALD,gDAKC;AAED,SAAgB,0BAA0B,CAAC,OAAY;IACrD,+BAA+B;IAC/B,IAAI,CAAC,OAAO,IAAK,OAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/C,OAAO,SAAS,CAAA;KACjB;IAED,OAAO,kBAAkB,CAAC,OAAO,CAAC,CAAA;AACpC,CAAC;AAPD,gEAOC;AAED,SAAgB,kBAAkB,CAAC,OAAY;IAC7C,OAAO;QACL,KAAK,EAAG,OAAO,CAAC,CAAC,CAAC,CAAC,KAAmB,CAAC,MAAM,EAAE;QAC/C,UAAU,EACR,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,IAAK,OAAO,CAAC,CAAC,CAAC,CAAC,UAAoB,CAAC,MAAM,GAAG,CAAC;YAClE,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YACvD,CAAC,CAAC,SAAS;KAChB,CAAA;AACH,CAAC;AARD,gDAQC;AAED,SAAgB,mBAAmB,CAAC,QAAa;IAC/C,+BAA+B;IAC/B,OAAQ,QAAkB,CAAC,MAAM,CAAC,UAAC,GAAwC,EAAE,IAAmB;;QAC9F,QAAQ,IAAI,CAAC,CAAC,CAAC,EAAE;YACf,KAAK,YAAY;gBACf,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YACnD,KAAK,cAAc;gBACjB,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YACrD,KAAK,gBAAgB;gBACnB,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC9D,KAAK,WAAW;gBACd,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,EAAG,IAAI,CAAC,CAAC,CAAC,CAAC,GAAc,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;YACxE;gBACE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,YAAI,GAAC,IAAI,CAAC,CAAC,CAAC,IAAG,IAAI,CAAC,CAAC,CAAC,MAAG,CAAA;SACpD;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;AACR,CAAC;AAhBD,kDAgBC;AAED,SAAgB,uBAAuB,CAAC,WAAmB;IACjD,IAAA,WAAW,GAAK,IAAA,qBAAY,EAAC,GAAG,CAAC,YAAtB,CAAsB;IACzC,IAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAQ,CAAA;IAEpE,OAAO;QACL,cAAc,EACZ,WAAW,CAAC,eAAe,IAAK,WAAW,CAAC,eAAyB,CAAC,MAAM,GAAG,CAAC;YAC9E,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC1D,CAAC,CAAC,SAAS;QACf,EAAE,EAAE,kBAAkB,CAAC,WAAW,CAAC,EAAE,CAAC;QACtC,MAAM,EAAG,WAAW,CAAC,MAAiB,CAAC,QAAQ,EAAE;QACjD,GAAG,EAAE,WAAW,CAAC,GAAG,IAAK,WAAW,CAAC,GAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAE,WAAW,CAAC,GAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS;QAClH,IAAI,EAAE,WAAW,CAAC,IAAI,IAAK,WAAW,CAAC,IAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;QAC5H,aAAa,EACX,WAAW,CAAC,eAAe,IAAK,WAAW,CAAC,eAAyB,CAAC,MAAM,GAAG,CAAC;YAC9E,CAAC,CAAE,WAAW,CAAC,eAA0B,CAAC,QAAQ,EAAE;YACpD,CAAC,CAAC,SAAS;KAChB,CAAA;AACH,CAAC;AAlBD,0DAkBC;AAED,SAAgB,0BAA0B,CACxC,YAA+B,EAC/B,SAAiB,EACjB,OAA6B,EAC7B,UAA0B;IAE1B,IAAM,IAAI,GAAW,IAAA,2CAAuB,EAAC,SAAS,EAAE,YAAY,CAAC,cAAc,CAAC,CAAA;IACpF,IAAM,EAAE,GAAW,IAAA,2CAAuB,EAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC,UAAU,CAAC,CAAA;IAE7F,OAAO;QACL;YACE,IAAI,EAAE,CAAC,IAAI,CAAC;YACZ,EAAE,EAAE,CAAC,EAAE,CAAC;YACR,SAAS,EAAE,IAAI,KAAK,EAAE;YAEtB,MAAM,EAAE,IAAA,sBAAS,EAAC,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC;YACpD,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,IAAA,sBAAS,EAAC,YAAY,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU;YAE9E,OAAO,SAAA;YACP,aAAa,EAAE,YAAY,CAAC,IAAI;SACjC;KACF,CAAA;AACH,CAAC;AAtBD,gEAsBC;AAED,SAAgB,4BAA4B,CAAC,SAAiB,EAAE,UAAyC;IACvG,gCAAgC;IAChC,IAAM,SAAS,GAAG,IAAA,6CAAyB,EAAC,SAAS,CAAC,CAAA;IAEtD,OAAO,4BAA4B,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;AAC5D,CAAC;AALD,oEAKC;AAED,SAAgB,4BAA4B,CAC1C,eAAmC,EACnC,qBAAoD;IAEpD,IAAM,SAAS,GACb,OAAO,eAAe,KAAK,QAAQ;QACjC,CAAC,CAAC,IAAA,WAAK,EAAC,eAAe,CAAC;YACtB,CAAC,CAAC,qBAAS,CAAC,OAAO,CAAC,eAAe,CAAC;YACpC,CAAC,CAAC,qBAAS,CAAC,IAAI,CAAC,eAAe,CAAC;QACnC,CAAC,CAAC,eAAe,CAAA;IAErB,IAAM,UAAU,GACd,OAAO,qBAAqB,KAAK,QAAQ;QACvC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE,KAAK,CAAC;QAC3C,CAAC,CAAC,OAAO,qBAAqB,KAAK,WAAW,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC;YACpF,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAA;IAExC,IAAI,UAAU,KAAK,SAAS,EAAE;QAC5B,OAAO,SAAS,CAAC,MAAM,EAAE,CAAA;KAC1B;IAED,2GAA2G;IAC3G,IAAM,QAAQ,GAAW,IAAA,wBAAc,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,YAAY,EAAE,EAAE,UAAU,CAAC,CAAC,CAAC,CAAA;IAE9F,OAAO,UAAG,SAAS,CAAC,MAAM,EAAE,cAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAI,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAE,CAAA;AAC5H,CAAC;AA1BD,oEA0BC;AAED,SAAgB,0BAA0B,CAAC,OAAqB;IAC9D,OAAO,4BAA4B,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,CAAA;AACxE,CAAC;AAFD,gEAEC;AAED,SAAgB,0BAA0B,CAAC,OAAe;IACxD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;QAC1B,OAAO;YACL,KAAK,EAAE,OAAO;SACf,CAAA;KACF;IAEK,IAAA,KAAA,OAAsC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,IAAA,EAA1D,qBAAqB,QAAA,EAAE,UAAU,QAAyB,CAAA;IACjE,IAAM,wBAAwB,GAAW,qBAAqB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAC/E,IAAM,SAAS,GAAW,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAA;IAClF,wBAAwB;IAExB,OAAO;QACL,KAAK,EAAE,SAAS;QAChB,UAAU,YAAA;KACX,CAAA;AACH,CAAC;AAhBD,gEAgBC"}
|
package/v1/utils/secp256k1.js
CHANGED
|
@@ -14,6 +14,29 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
14
14
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
15
|
};
|
|
16
16
|
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
17
40
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
18
41
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
19
42
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -72,14 +95,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
72
95
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
73
96
|
exports.Secp256k1KeyIdentity = exports.Secp256k1PublicKey = void 0;
|
|
74
97
|
/* eslint-disable no-underscore-dangle */
|
|
75
|
-
|
|
76
|
-
var
|
|
77
|
-
var tweetnacl_1 = require("tweetnacl");
|
|
78
|
-
var hdkey_1 = __importDefault(require("./hdkey"));
|
|
98
|
+
// tslint:disable: max-classes-per-file
|
|
99
|
+
var nacl = __importStar(require("@airgap/coinlib-core/dependencies/src/tweetnacl-1.0.1/nacl"));
|
|
79
100
|
var bip39_1 = require("bip39");
|
|
101
|
+
var js_sha256_1 = require("js-sha256");
|
|
102
|
+
var secp256k1_1 = __importDefault(require("secp256k1"));
|
|
103
|
+
var auth_1 = require("./auth");
|
|
80
104
|
var buffer_1 = require("./buffer");
|
|
81
105
|
var der_1 = require("./der");
|
|
82
|
-
var
|
|
106
|
+
var hdkey_1 = __importDefault(require("./hdkey"));
|
|
83
107
|
var Secp256k1PublicKey = /** @class */ (function () {
|
|
84
108
|
// `fromRaw` and `fromDer` should be used for instantiation, not this constructor.
|
|
85
109
|
function Secp256k1PublicKey(key) {
|
|
@@ -146,9 +170,9 @@ var Secp256k1KeyIdentity = /** @class */ (function (_super) {
|
|
|
146
170
|
}
|
|
147
171
|
}
|
|
148
172
|
else {
|
|
149
|
-
privateKey = new Uint8Array(
|
|
173
|
+
privateKey = new Uint8Array(nacl.randomBytes(32));
|
|
150
174
|
while (!secp256k1_1.default.privateKeyVerify(privateKey)) {
|
|
151
|
-
privateKey = new Uint8Array(
|
|
175
|
+
privateKey = new Uint8Array(nacl.randomBytes(32));
|
|
152
176
|
}
|
|
153
177
|
}
|
|
154
178
|
var publicKeyRaw = secp256k1_1.default.publicKeyCreate(privateKey, false);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"secp256k1.js","sourceRoot":"","sources":["../../../src/v1/utils/secp256k1.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"secp256k1.js","sourceRoot":"","sources":["../../../src/v1/utils/secp256k1.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAyC;AACzC,uCAAuC;AACvC,+FAAkF;AAClF,+BAA0C;AAC1C,uCAAkC;AAClC,wDAAiC;AAEjC,+BAAyF;AACzF,mCAAqD;AACrD,6BAAyD;AACzD,kDAA2B;AAM3B;IA8BE,kFAAkF;IAClF,4BAAoB,GAAgB;QAClC,GAAG,CAAC,UAAU,CAAA;QACd,IAAI,CAAC,MAAM,GAAG,GAAG,CAAA;QACjB,IAAI,CAAC,MAAM,GAAG,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA;IACjD,CAAC;IAlCD;;;;OAIG;IACW,uBAAI,GAAlB,UAAmB,GAAc;QAC/B,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAA;IAClC,CAAC;IAEa,0BAAO,GAArB,UAAsB,MAAmB;QACvC,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAA;IACvC,CAAC;IAEa,0BAAO,GAArB,UAAsB,MAA2B;QAC/C,OAAO,IAAI,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IACvD,CAAC;IAEc,4BAAS,GAAxB,UAAyB,SAAsB;QAC7C,OAAO,IAAA,aAAO,EAAC,SAAS,EAAE,mBAAa,CAAC,CAAC,MAA6B,CAAA;IACxE,CAAC;IAEc,4BAAS,GAAxB,UAAyB,GAAwB;QAC/C,OAAO,IAAA,eAAS,EAAC,GAAG,EAAE,mBAAa,CAAC,CAAA;IACtC,CAAC;IAaM,kCAAK,GAAZ;QACE,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAEM,kCAAK,GAAZ;QACE,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IACH,yBAAC;AAAD,CAAC,AA5CD,IA4CC;AA5CY,gDAAkB;AA8C/B;IAA0C,wCAAY;IAmGpD,8BAAsB,SAA6B,EAAY,WAAwB;QAAvF,YACE,iBAAO,SAER;QAH8D,iBAAW,GAAX,WAAW,CAAa;QAErF,KAAI,CAAC,UAAU,GAAG,SAAS,CAAA;;IAC7B,CAAC;IArGD;;;;;;;OAOG;IACW,6BAAQ,GAAtB,UAAuB,IAAiB;QACtC,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,EAAE,EAAE;YAClC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAA;SAC7D;QACD,IAAI,UAAsB,CAAA;QAE1B,IAAI,IAAI,EAAE;YACR,yEAAyE;YACzE,yBAAyB;YACzB,UAAU,GAAG,IAAI,CAAA;YACjB,IAAI,CAAC,mBAAS,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;gBAC3C,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;aACxC;SACF;aAAM;YACL,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;YACjD,OAAO,CAAC,mBAAS,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE;gBAC9C,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAA;aAClD;SACF;QAED,IAAM,YAAY,GAAG,mBAAS,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;QAEjE,IAAM,SAAS,GAAG,kBAAkB,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAC1D,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA;IACxC,CAAC;IAEa,mCAAc,GAA5B,UAA6B,GAA8B;QACnD,IAAA,KAAA,OAAgC,GAAG,IAAA,EAAlC,YAAY,QAAA,EAAE,aAAa,QAAO,CAAA;QACzC,OAAO,IAAI,oBAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAA,sBAAa,EAAC,YAAY,CAAC,CAAC,EAAE,IAAA,sBAAa,EAAC,aAAa,CAAC,CAAC,CAAA;IACxH,CAAC;IAEa,6BAAQ,GAAtB,UAAuB,IAAY;QACjC,IAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;gBAClE,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;aACnD;YACD,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;SAC3E;QACD,MAAM,IAAI,KAAK,CAAC,+DAAwD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAE,CAAC,CAAA;IACjG,CAAC;IAED;;;;;OAKG;IACW,gCAAW,GAAzB,UAA0B,SAAsB,EAAE,UAAuB;QACvE,OAAO,IAAI,oBAAoB,CAAC,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAA;IACpF,CAAC;IAED;;;;OAIG;IACW,kCAAa,GAA3B,UAA4B,SAAsB;QAChD,IAAM,SAAS,GAAG,mBAAS,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAA;QAC7E,IAAM,QAAQ,GAAG,oBAAoB,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;QACvF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;;;OAKG;IACW,mCAAc,GAA5B,UACE,UAA6B,EAC7B,QAA6B,EAC7B,cAA4C;QAA5C,+BAAA,EAAA,oCAA4C;QAE5C,oCAAoC;QACpC,IAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAA;QAC5E,8CAA8C;QAC9C,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE;YAClE,OAAO,CAAC,IAAI,CAAC,mGAAmG,CAAC,CAAA;SAClH;QAED,IAAM,IAAI,GAAG,IAAA,0BAAkB,EAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACjD,IAAM,IAAI,GAAG,eAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAA;QACvC,IAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAA;QAE5C,OAAO,oBAAoB,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;IAChE,CAAC;IASD;;;OAGG;IACI,qCAAM,GAAb;QACE,OAAO,CAAC,IAAA,oBAAW,EAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,IAAA,oBAAW,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAA;IAC9E,CAAC;IAED;;;OAGG;IACI,yCAAU,GAAjB;QACE,OAAO;YACL,SAAS,EAAE,IAAI,CAAC,WAAW;YAC3B,SAAS,EAAE,IAAI,CAAC,UAAU;SAC3B,CAAA;IACH,CAAC;IAED;;;OAGG;IACI,2CAAY,GAAnB;QACE,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED;;;;OAIG;IACU,mCAAI,GAAjB,UAAkB,SAAsB;;;;gBAChC,IAAI,GAAG,kBAAM,CAAC,MAAM,EAAE,CAAA;gBAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;gBAChB,SAAS,GAAG,mBAAS,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAA;gBACvH,sBAAO,SAAsB,EAAA;;;KAC9B;IACH,2BAAC;AAAD,CAAC,AA9ID,CAA0C,mBAAY,GA8IrD;AA9IY,oDAAoB;AAgJjC,kBAAe,oBAAoB,CAAA"}
|