@airgap/module-kit 0.13.45-beta.2 → 0.13.45-beta.3
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/block-explorer/block-explorer.d.ts +1 -1
- package/factories/amount.js +4 -5
- package/factories/amount.js.map +1 -1
- package/factories/key.js +12 -17
- package/factories/key.js.map +1 -1
- package/factories/signature.js +3 -5
- package/factories/signature.js.map +1 -1
- package/factories/transaction.js +4 -16
- package/factories/transaction.js.map +1 -1
- package/factories/ui/alert.js +8 -20
- package/factories/ui/alert.js.map +1 -1
- package/factories/ui/text.js +1 -2
- package/factories/ui/text.js.map +1 -1
- package/index.js +13 -13
- package/index.js.map +1 -1
- package/internal/index.js +1 -1
- package/internal/index.js.map +1 -1
- package/internal/utils/protocol.js +3 -3
- package/internal/utils/protocol.js.map +1 -1
- package/module/extensions/extensions.d.ts +1 -1
- package/module/extensions/serialization/ProtocolSerializer.d.ts +2 -2
- package/module/module-network-registry.js +10 -13
- package/module/module-network-registry.js.map +1 -1
- package/module/module.d.ts +4 -4
- package/package.json +3 -3
- package/protocol/extensions/address/FetchDataForAddressExtension.d.ts +1 -1
- package/protocol/extensions/address/FetchDataForMultipleAddressesExtension.d.ts +1 -1
- package/protocol/extensions/address/MultiAddressPublicKeyExtension.d.ts +1 -1
- package/protocol/extensions/bip/Bip32Extension.d.ts +3 -3
- package/protocol/extensions/contract/ConfigurableContractExtension.d.ts +1 -1
- package/protocol/extensions/crypto/AESExtension.d.ts +1 -1
- package/protocol/extensions/crypto/AsymmetricEncryptionExtension.d.ts +1 -1
- package/protocol/extensions/crypto/CryptoExtension.d.ts +1 -1
- package/protocol/extensions/crypto/SignMessageExtension.d.ts +1 -1
- package/protocol/extensions/dapp/WalletConnectProtocol.d.ts +2 -2
- package/protocol/extensions/extensions.d.ts +1 -1
- package/protocol/extensions/multisig/multisig.d.ts +1 -1
- package/protocol/extensions/sub-protocol/GetTokenBalancesExtension.d.ts +2 -2
- package/protocol/extensions/sub-protocol/MultiTokenSubProtocolExtension.d.ts +1 -1
- package/protocol/extensions/sub-protocol/SingleTokenSubProtocolExtension.d.ts +1 -1
- package/protocol/extensions/sub-protocol/SubProtocolExtension.d.ts +1 -1
- package/protocol/extensions/transaction/ConfigurableTransactionInjectorExtension.d.ts +1 -1
- package/protocol/extensions/transaction/TransactionStatusCheckerExtension.d.ts +1 -1
- package/protocol/protocol.d.ts +20 -20
- package/types/address.d.ts +1 -1
- package/types/airgap.d.ts +7 -7
- package/types/amount.js +18 -23
- package/types/amount.js.map +1 -1
- package/types/bytes.d.ts +1 -1
- package/types/crypto.d.ts +3 -3
- package/types/fee.d.ts +1 -1
- package/types/key.d.ts +3 -3
- package/types/meta/utility-types.d.ts +6 -6
- package/types/module.d.ts +1 -1
- package/types/protocol.d.ts +2 -2
- package/types/sub-protocol.d.ts +1 -1
- package/types/transaction.d.ts +2 -2
- package/types/ui/text.d.ts +2 -2
- package/utils/amount.js +3 -4
- package/utils/amount.js.map +1 -1
- package/utils/interface.d.ts +1 -1
- package/utils/interface.js +2 -3
- package/utils/interface.js.map +1 -1
- package/utils/key.d.ts +1 -1
- package/utils/key.js +6 -7
- package/utils/key.js.map +1 -1
- package/utils/module.js +14 -16
- package/utils/module.js.map +1 -1
- package/utils/normalize.js +1 -2
- package/utils/normalize.js.map +1 -1
- package/utils/protocol.js +81 -55
- package/utils/protocol.js.map +1 -1
package/utils/protocol.js
CHANGED
|
@@ -1,20 +1,29 @@
|
|
|
1
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
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.
|
|
3
|
+
exports.walletConnectProtocolSchema = exports.transactionStatusCheckerSchema = exports.configurableTransactionInjectorSchema = exports.signMessageOfflineSchema = exports.signMessageBaseSchema = exports.asymmetricEncryptionOfflineSchema = exports.asymmetricEncryptionBaseSchema = exports.aesEncryptionSchema = exports.configurableContractProtocolSchema = exports.multiAddressPublicKeyProtocolSchema = exports.fetchDataForMultipleAddressesProtocolSchema = exports.fetchDataForAddressProtocolSchema = exports.getTokenBalancesSchema = exports.multiTokenSubProtocolOnlineSchema = exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema = exports.subProtocolSchema = exports.bip32OnlineProtocolSchema = exports.bip32OfflineProtocolSchema = exports.bip32BaseProtocolSchema = exports.onlineProtocolSchema = exports.offlineProtocolSchema = exports.baseProtocolSchema = exports.multisigSchema = void 0;
|
|
4
|
+
exports.isMultisig = isMultisig;
|
|
5
|
+
exports.isAnyProtocol = isAnyProtocol;
|
|
6
|
+
exports.isOfflineProtocol = isOfflineProtocol;
|
|
7
|
+
exports.isOnlineProtocol = isOnlineProtocol;
|
|
8
|
+
exports.isBip32Protocol = isBip32Protocol;
|
|
9
|
+
exports.isSubProtocol = isSubProtocol;
|
|
10
|
+
exports.isSingleTokenSubProtocol = isSingleTokenSubProtocol;
|
|
11
|
+
exports.isMultiTokenSubProtocol = isMultiTokenSubProtocol;
|
|
12
|
+
exports.canGetTokenBalances = canGetTokenBalances;
|
|
13
|
+
exports.canFetchDataForAddress = canFetchDataForAddress;
|
|
14
|
+
exports.canFetchDataForMultipleAddresses = canFetchDataForMultipleAddresses;
|
|
15
|
+
exports.hasMultiAddressPublicKeys = hasMultiAddressPublicKeys;
|
|
16
|
+
exports.hasConfigurableContract = hasConfigurableContract;
|
|
17
|
+
exports.canEncryptAES = canEncryptAES;
|
|
18
|
+
exports.canEncryptAsymmetric = canEncryptAsymmetric;
|
|
19
|
+
exports.canSignMessage = canSignMessage;
|
|
20
|
+
exports.hasConfigurableTransactionInjector = hasConfigurableTransactionInjector;
|
|
21
|
+
exports.isTransactionStatusChecker = isTransactionStatusChecker;
|
|
22
|
+
exports.supportsWalletConnect = supportsWalletConnect;
|
|
23
|
+
exports.protocolNetworkIdentifier = protocolNetworkIdentifier;
|
|
15
24
|
// @ts-ignore
|
|
16
|
-
|
|
17
|
-
|
|
25
|
+
const createHash = require("@airgap/coinlib-core/dependencies/src/create-hash-1.2.0/index");
|
|
26
|
+
const interface_1 = require("./interface");
|
|
18
27
|
// Schemas
|
|
19
28
|
exports.multisigSchema = {
|
|
20
29
|
getMultisigStatus: 'required'
|
|
@@ -27,18 +36,49 @@ exports.baseProtocolSchema = {
|
|
|
27
36
|
getDetailsFromTransaction: 'required',
|
|
28
37
|
getMetadata: 'required'
|
|
29
38
|
};
|
|
30
|
-
exports.offlineProtocolSchema =
|
|
31
|
-
exports.
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
39
|
+
exports.offlineProtocolSchema = {
|
|
40
|
+
...exports.baseProtocolSchema,
|
|
41
|
+
getCryptoConfiguration: 'required',
|
|
42
|
+
getKeyPairFromDerivative: 'required',
|
|
43
|
+
signTransactionWithSecretKey: 'required'
|
|
44
|
+
};
|
|
45
|
+
exports.onlineProtocolSchema = {
|
|
46
|
+
...exports.baseProtocolSchema,
|
|
47
|
+
broadcastTransaction: 'required',
|
|
48
|
+
getBalanceOfPublicKey: 'required',
|
|
49
|
+
getNetwork: 'required',
|
|
50
|
+
getTransactionFeeWithPublicKey: 'required',
|
|
51
|
+
getTransactionMaxAmountWithPublicKey: 'required',
|
|
52
|
+
getTransactionsForPublicKey: 'required',
|
|
53
|
+
prepareTransactionWithPublicKey: 'required'
|
|
54
|
+
};
|
|
55
|
+
exports.bip32BaseProtocolSchema = {
|
|
56
|
+
...exports.baseProtocolSchema,
|
|
57
|
+
deriveFromExtendedPublicKey: 'required'
|
|
58
|
+
};
|
|
59
|
+
exports.bip32OfflineProtocolSchema = {
|
|
60
|
+
...exports.bip32BaseProtocolSchema,
|
|
61
|
+
...exports.offlineProtocolSchema,
|
|
62
|
+
getExtendedKeyPairFromDerivative: 'required',
|
|
63
|
+
deriveFromExtendedSecretKey: 'required'
|
|
64
|
+
};
|
|
65
|
+
exports.bip32OnlineProtocolSchema = {
|
|
66
|
+
...exports.bip32BaseProtocolSchema,
|
|
67
|
+
...exports.onlineProtocolSchema
|
|
68
|
+
};
|
|
35
69
|
exports.subProtocolSchema = {
|
|
36
70
|
getType: 'required',
|
|
37
71
|
mainProtocol: 'required'
|
|
38
72
|
};
|
|
39
|
-
exports.singleTokenSubProtocolSchema =
|
|
73
|
+
exports.singleTokenSubProtocolSchema = {
|
|
74
|
+
...exports.subProtocolSchema,
|
|
75
|
+
getContractAddress: 'required'
|
|
76
|
+
};
|
|
40
77
|
exports.multiTokenSubProtocolBaseSchema = exports.singleTokenSubProtocolSchema;
|
|
41
|
-
exports.multiTokenSubProtocolOnlineSchema =
|
|
78
|
+
exports.multiTokenSubProtocolOnlineSchema = {
|
|
79
|
+
...exports.multiTokenSubProtocolBaseSchema,
|
|
80
|
+
...exports.onlineProtocolSchema
|
|
81
|
+
};
|
|
42
82
|
exports.getTokenBalancesSchema = {
|
|
43
83
|
getTokenBalancesOfPublicKey: 'required'
|
|
44
84
|
};
|
|
@@ -66,11 +106,17 @@ exports.aesEncryptionSchema = {
|
|
|
66
106
|
exports.asymmetricEncryptionBaseSchema = {
|
|
67
107
|
encryptAsymmetricWithPublicKey: 'required'
|
|
68
108
|
};
|
|
69
|
-
exports.asymmetricEncryptionOfflineSchema =
|
|
109
|
+
exports.asymmetricEncryptionOfflineSchema = {
|
|
110
|
+
...exports.asymmetricEncryptionBaseSchema,
|
|
111
|
+
decryptAsymmetricWithKeyPair: 'required'
|
|
112
|
+
};
|
|
70
113
|
exports.signMessageBaseSchema = {
|
|
71
114
|
verifyMessageWithPublicKey: 'required'
|
|
72
115
|
};
|
|
73
|
-
exports.signMessageOfflineSchema =
|
|
116
|
+
exports.signMessageOfflineSchema = {
|
|
117
|
+
...exports.signMessageBaseSchema,
|
|
118
|
+
signMessageWithKeyPair: 'required'
|
|
119
|
+
};
|
|
74
120
|
exports.configurableTransactionInjectorSchema = {
|
|
75
121
|
getInjectorUrl: 'required',
|
|
76
122
|
setInjectorUrl: 'required'
|
|
@@ -86,19 +132,15 @@ exports.walletConnectProtocolSchema = {
|
|
|
86
132
|
function isMultisig(protocol) {
|
|
87
133
|
return (0, interface_1.implementsInterface)(protocol, exports.multisigSchema);
|
|
88
134
|
}
|
|
89
|
-
exports.isMultisig = isMultisig;
|
|
90
135
|
function isAnyProtocol(object) {
|
|
91
136
|
return isOfflineProtocol(object) || isOnlineProtocol(object);
|
|
92
137
|
}
|
|
93
|
-
exports.isAnyProtocol = isAnyProtocol;
|
|
94
138
|
function isOfflineProtocol(object) {
|
|
95
139
|
return (0, interface_1.implementsInterface)(object, exports.offlineProtocolSchema);
|
|
96
140
|
}
|
|
97
|
-
exports.isOfflineProtocol = isOfflineProtocol;
|
|
98
141
|
function isOnlineProtocol(object) {
|
|
99
142
|
return (0, interface_1.implementsInterface)(object, exports.onlineProtocolSchema);
|
|
100
143
|
}
|
|
101
|
-
exports.isOnlineProtocol = isOnlineProtocol;
|
|
102
144
|
function isOfflineBip32Protocol(protocol) {
|
|
103
145
|
return (0, interface_1.implementsInterface)(protocol, exports.bip32OfflineProtocolSchema);
|
|
104
146
|
}
|
|
@@ -106,93 +148,77 @@ function isOnlineBip32Protocol(protocol) {
|
|
|
106
148
|
return (0, interface_1.implementsInterface)(protocol, exports.bip32OnlineProtocolSchema);
|
|
107
149
|
}
|
|
108
150
|
function isBip32Protocol(protocol) {
|
|
109
|
-
|
|
151
|
+
let extendedWithBip32 = false;
|
|
110
152
|
if (isOfflineProtocol(protocol)) {
|
|
111
153
|
extendedWithBip32 = isOfflineBip32Protocol(protocol);
|
|
112
154
|
}
|
|
113
155
|
if (isOnlineProtocol(protocol)) {
|
|
114
|
-
extendedWithBip32
|
|
156
|
+
extendedWithBip32 &&= isOnlineBip32Protocol(protocol);
|
|
115
157
|
}
|
|
116
158
|
return extendedWithBip32;
|
|
117
159
|
}
|
|
118
|
-
exports.isBip32Protocol = isBip32Protocol;
|
|
119
160
|
function isSubProtocol(protocol) {
|
|
120
161
|
return (0, interface_1.implementsInterface)(protocol, exports.subProtocolSchema);
|
|
121
162
|
}
|
|
122
|
-
exports.isSubProtocol = isSubProtocol;
|
|
123
163
|
function isSingleTokenSubProtocol(protocol) {
|
|
124
164
|
return (0, interface_1.implementsInterface)(protocol, exports.singleTokenSubProtocolSchema);
|
|
125
165
|
}
|
|
126
|
-
exports.isSingleTokenSubProtocol = isSingleTokenSubProtocol;
|
|
127
166
|
function isMultiTokenSubProtocol(protocol) {
|
|
128
|
-
|
|
167
|
+
let extendedWithMultiTokenSubProtocol = (0, interface_1.implementsInterface)(protocol, exports.multiTokenSubProtocolBaseSchema);
|
|
129
168
|
if (isOnlineProtocol(protocol)) {
|
|
130
|
-
extendedWithMultiTokenSubProtocol
|
|
169
|
+
extendedWithMultiTokenSubProtocol &&= (0, interface_1.implementsInterface)(protocol, exports.multiTokenSubProtocolOnlineSchema);
|
|
131
170
|
}
|
|
132
171
|
return extendedWithMultiTokenSubProtocol;
|
|
133
172
|
}
|
|
134
|
-
exports.isMultiTokenSubProtocol = isMultiTokenSubProtocol;
|
|
135
173
|
function canGetTokenBalances(protocol) {
|
|
136
174
|
return (0, interface_1.implementsInterface)(protocol, exports.getTokenBalancesSchema);
|
|
137
175
|
}
|
|
138
|
-
exports.canGetTokenBalances = canGetTokenBalances;
|
|
139
176
|
function canFetchDataForAddress(protocol) {
|
|
140
177
|
return (0, interface_1.implementsInterface)(protocol, exports.fetchDataForAddressProtocolSchema);
|
|
141
178
|
}
|
|
142
|
-
exports.canFetchDataForAddress = canFetchDataForAddress;
|
|
143
179
|
function canFetchDataForMultipleAddresses(protocol) {
|
|
144
180
|
return (0, interface_1.implementsInterface)(protocol, exports.fetchDataForMultipleAddressesProtocolSchema);
|
|
145
181
|
}
|
|
146
|
-
exports.canFetchDataForMultipleAddresses = canFetchDataForMultipleAddresses;
|
|
147
182
|
function hasMultiAddressPublicKeys(protocol) {
|
|
148
183
|
return (0, interface_1.implementsInterface)(protocol, exports.multiAddressPublicKeyProtocolSchema);
|
|
149
184
|
}
|
|
150
|
-
exports.hasMultiAddressPublicKeys = hasMultiAddressPublicKeys;
|
|
151
185
|
function hasConfigurableContract(protocol) {
|
|
152
186
|
return (0, interface_1.implementsInterface)(protocol, exports.configurableContractProtocolSchema);
|
|
153
187
|
}
|
|
154
|
-
exports.hasConfigurableContract = hasConfigurableContract;
|
|
155
188
|
function canEncryptAES(protocol) {
|
|
156
189
|
return (0, interface_1.implementsInterface)(protocol, exports.aesEncryptionSchema);
|
|
157
190
|
}
|
|
158
|
-
exports.canEncryptAES = canEncryptAES;
|
|
159
191
|
function canEncryptAsymmetric(protocol) {
|
|
160
|
-
|
|
192
|
+
let extendedWithAsymmetricEncryption = (0, interface_1.implementsInterface)(protocol, exports.asymmetricEncryptionBaseSchema);
|
|
161
193
|
if (isOfflineProtocol(protocol)) {
|
|
162
|
-
extendedWithAsymmetricEncryption
|
|
194
|
+
extendedWithAsymmetricEncryption &&= (0, interface_1.implementsInterface)(protocol, exports.asymmetricEncryptionOfflineSchema);
|
|
163
195
|
}
|
|
164
196
|
return extendedWithAsymmetricEncryption;
|
|
165
197
|
}
|
|
166
|
-
exports.canEncryptAsymmetric = canEncryptAsymmetric;
|
|
167
198
|
function canSignMessage(protocol) {
|
|
168
|
-
|
|
199
|
+
let extendedWithSignMessage = (0, interface_1.implementsInterface)(protocol, exports.signMessageBaseSchema);
|
|
169
200
|
if (isOfflineProtocol(protocol)) {
|
|
170
|
-
extendedWithSignMessage
|
|
201
|
+
extendedWithSignMessage &&= (0, interface_1.implementsInterface)(protocol, exports.signMessageOfflineSchema);
|
|
171
202
|
}
|
|
172
203
|
return extendedWithSignMessage;
|
|
173
204
|
}
|
|
174
|
-
exports.canSignMessage = canSignMessage;
|
|
175
205
|
function hasConfigurableTransactionInjector(protocol) {
|
|
176
206
|
return (0, interface_1.implementsInterface)(protocol, exports.configurableTransactionInjectorSchema);
|
|
177
207
|
}
|
|
178
|
-
exports.hasConfigurableTransactionInjector = hasConfigurableTransactionInjector;
|
|
179
208
|
function isTransactionStatusChecker(protocol) {
|
|
180
209
|
return (0, interface_1.implementsInterface)(protocol, exports.transactionStatusCheckerSchema);
|
|
181
210
|
}
|
|
182
|
-
exports.isTransactionStatusChecker = isTransactionStatusChecker;
|
|
183
211
|
function supportsWalletConnect(protocol) {
|
|
184
212
|
return (0, interface_1.implementsInterface)(protocol, exports.walletConnectProtocolSchema);
|
|
185
213
|
}
|
|
186
|
-
exports.supportsWalletConnect = supportsWalletConnect;
|
|
187
214
|
// Identifier
|
|
188
|
-
|
|
189
|
-
|
|
215
|
+
const sha256hashShort = (input) => {
|
|
216
|
+
const hash = createHash('sha256');
|
|
190
217
|
hash.update(input);
|
|
191
218
|
return hash.digest('base64').slice(0, 10);
|
|
192
219
|
};
|
|
193
220
|
function protocolNetworkIdentifier(network) {
|
|
194
|
-
|
|
195
|
-
return
|
|
221
|
+
const hashed = sha256hashShort(`${network.name}-${network.rpcUrl}`);
|
|
222
|
+
return `${network.type}-${hashed}`;
|
|
196
223
|
}
|
|
197
|
-
exports.protocolNetworkIdentifier = protocolNetworkIdentifier;
|
|
198
224
|
//# sourceMappingURL=protocol.js.map
|
package/utils/protocol.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/utils/protocol.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/utils/protocol.ts"],"names":[],"mappings":"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"}
|