@sidhujag/sysweb3-keyring 2.1.0 → 2.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/CHANGELOG.md +11 -0
- package/README.md +46 -108
- package/cjs/evm-fees.js +223 -0
- package/cjs/evm-fees.js.map +1 -0
- package/cjs/keyring-core.js +1 -227
- package/cjs/keyring-core.js.map +1 -1
- package/cjs/keyring-manager.js +4 -3
- package/cjs/keyring-manager.js.map +1 -1
- package/cjs/software.js +12 -11
- package/cjs/software.js.map +1 -1
- package/cjs/transactions/ethereum.js +194 -190
- package/cjs/transactions/ethereum.js.map +1 -1
- package/cjs/transactions/evm-local-signer.js +28 -7
- package/cjs/transactions/evm-local-signer.js.map +1 -1
- package/cjs/transactions/evm-submission.js +179 -0
- package/cjs/transactions/evm-submission.js.map +1 -0
- package/cjs/transactions/index.js +1 -0
- package/cjs/transactions/index.js.map +1 -1
- package/cjs/transactions/prepared-evm.js +2 -0
- package/cjs/transactions/prepared-evm.js.map +1 -1
- package/cjs/types.js.map +1 -1
- package/cjs/utils/derivation-paths.js +4 -3
- package/cjs/utils/derivation-paths.js.map +1 -1
- package/cjs/utils/watch-descriptor.js +3 -2
- package/cjs/utils/watch-descriptor.js.map +1 -1
- package/esm/types.js.map +1 -1
- package/esm/utils/derivation-paths.js +2 -1
- package/esm/utils/derivation-paths.js.map +1 -1
- package/package.json +24 -11
- package/types/evm-fees.d.ts +42 -0
- package/types/keyring-core.d.ts +3 -8
- package/types/keyring-manager.d.ts +8 -3
- package/types/software.d.ts +6 -11
- package/types/transactions/ethereum.d.ts +10 -8
- package/types/transactions/evm-local-signer.d.ts +4 -1
- package/types/transactions/evm-submission.d.ts +48 -0
- package/types/transactions/index.d.ts +1 -0
- package/types/types.d.ts +4 -0
- package/cjs/bip84-native.js +0 -8
- package/cjs/bip84-native.js.map +0 -1
- package/cjs/public-bip84.js +0 -157
- package/cjs/public-bip84.js.map +0 -1
- package/cjs/software-utxo-account.js +0 -12
- package/cjs/software-utxo-account.js.map +0 -1
- package/cjs/transactions/bip84-native-plan.js +0 -481
- package/cjs/transactions/bip84-native-plan.js.map +0 -1
- package/cjs/transactions/prepared-bip84.js +0 -214
- package/cjs/transactions/prepared-bip84.js.map +0 -1
- package/types/bip84-native.d.ts +0 -3
- package/types/public-bip84.d.ts +0 -39
- package/types/software-utxo-account.d.ts +0 -13
- package/types/transactions/bip84-native-plan.d.ts +0 -83
- package/types/transactions/prepared-bip84.d.ts +0 -27
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.captureEvmSubmission = captureEvmSubmission;
|
|
4
|
+
exports.evmSubmissionFailure = evmSubmissionFailure;
|
|
5
|
+
exports.copyEvmSubmissionFailure = copyEvmSubmissionFailure;
|
|
6
|
+
exports.submitSignedEvmTransaction = submitSignedEvmTransaction;
|
|
7
|
+
const transaction_1 = require("ethers/transaction");
|
|
8
|
+
function assertSynchronous(check) {
|
|
9
|
+
const result = check();
|
|
10
|
+
if (result !== undefined) {
|
|
11
|
+
if (result &&
|
|
12
|
+
(typeof result === 'object' || typeof result === 'function')) {
|
|
13
|
+
void Promise.resolve(result).catch(() => undefined);
|
|
14
|
+
}
|
|
15
|
+
throw new Error('EVM submission guard must return undefined synchronously');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/** Capture once, before RPC or device work. Never reread host capabilities later. */
|
|
19
|
+
function captureEvmSubmission(input, assertCurrent, capture) {
|
|
20
|
+
const context = Object.freeze({
|
|
21
|
+
account: Object.freeze({ ...input.account }),
|
|
22
|
+
network: Object.freeze({ ...input.network }),
|
|
23
|
+
operation: input.operation,
|
|
24
|
+
...(input.originalHash !== undefined
|
|
25
|
+
? { originalHash: input.originalHash }
|
|
26
|
+
: {}),
|
|
27
|
+
});
|
|
28
|
+
assertSynchronous(assertCurrent);
|
|
29
|
+
if (capture !== undefined && typeof capture !== 'function') {
|
|
30
|
+
throw new TypeError('Invalid EVM submission lifecycle factory');
|
|
31
|
+
}
|
|
32
|
+
const lifecycle = capture?.(context);
|
|
33
|
+
const hostGuard = lifecycle?.assertCurrent;
|
|
34
|
+
const persistSigned = lifecycle?.persistSigned;
|
|
35
|
+
if (capture &&
|
|
36
|
+
(!lifecycle ||
|
|
37
|
+
typeof lifecycle !== 'object' ||
|
|
38
|
+
typeof hostGuard !== 'function' ||
|
|
39
|
+
typeof persistSigned !== 'function')) {
|
|
40
|
+
if (lifecycle && typeof lifecycle.then === 'function') {
|
|
41
|
+
void Promise.resolve(lifecycle).catch(() => undefined);
|
|
42
|
+
}
|
|
43
|
+
throw new TypeError('EVM submission lifecycle must be captured synchronously');
|
|
44
|
+
}
|
|
45
|
+
const guard = () => {
|
|
46
|
+
assertSynchronous(assertCurrent);
|
|
47
|
+
if (hostGuard)
|
|
48
|
+
assertSynchronous(hostGuard);
|
|
49
|
+
};
|
|
50
|
+
guard();
|
|
51
|
+
return Object.freeze({
|
|
52
|
+
context,
|
|
53
|
+
assertCurrent: guard,
|
|
54
|
+
...(persistSigned ? { persistSigned } : {}),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
const failures = new WeakMap();
|
|
58
|
+
/** Only local stage evidence can label an error as a possibly dispatched send. */
|
|
59
|
+
function evmSubmissionFailure(error) {
|
|
60
|
+
return ((error && (typeof error === 'object' || typeof error === 'function')
|
|
61
|
+
? failures.get(error)
|
|
62
|
+
: undefined) ?? { transactionNotBroadcast: true });
|
|
63
|
+
}
|
|
64
|
+
/** Preserve local evidence when an existing public API wraps its Error object. */
|
|
65
|
+
function copyEvmSubmissionFailure(source, target) {
|
|
66
|
+
if (source && (typeof source === 'object' || typeof source === 'function')) {
|
|
67
|
+
const failure = failures.get(source);
|
|
68
|
+
if (failure)
|
|
69
|
+
failures.set(target, failure);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/** The sole local-signature dispatch boundary. No nonce/fee selection or retry. */
|
|
73
|
+
async function submitSignedEvmTransaction(rawTransaction, broadcast, boundary, beforeBroadcast) {
|
|
74
|
+
let dispatched = false;
|
|
75
|
+
let hash;
|
|
76
|
+
try {
|
|
77
|
+
// Public callers may supply a boundary object. Detach its data and function
|
|
78
|
+
// references before awaiting storage, just as captureEvmSubmission does.
|
|
79
|
+
const captured = boundary &&
|
|
80
|
+
Object.freeze({
|
|
81
|
+
context: Object.freeze({
|
|
82
|
+
...boundary.context,
|
|
83
|
+
account: Object.freeze({ ...boundary.context.account }),
|
|
84
|
+
network: Object.freeze({ ...boundary.context.network }),
|
|
85
|
+
}),
|
|
86
|
+
assertCurrent: boundary.assertCurrent,
|
|
87
|
+
persistSigned: boundary.persistSigned,
|
|
88
|
+
});
|
|
89
|
+
const guard = () => {
|
|
90
|
+
if (captured)
|
|
91
|
+
assertSynchronous(captured.assertCurrent);
|
|
92
|
+
};
|
|
93
|
+
guard();
|
|
94
|
+
if (captured) {
|
|
95
|
+
if (typeof rawTransaction !== 'string')
|
|
96
|
+
throw new TypeError('Signed EVM bytes must be a string');
|
|
97
|
+
const tx = transaction_1.Transaction.from(rawTransaction);
|
|
98
|
+
if (!tx.isSigned() ||
|
|
99
|
+
tx.serialized !== rawTransaction ||
|
|
100
|
+
tx.from?.toLowerCase() !==
|
|
101
|
+
captured.context.account.address.toLowerCase() ||
|
|
102
|
+
tx.chainId !== BigInt(captured.context.network.chainId)) {
|
|
103
|
+
throw new Error('Signed EVM submission does not match captured context');
|
|
104
|
+
}
|
|
105
|
+
hash = tx.hash;
|
|
106
|
+
const record = Object.freeze({
|
|
107
|
+
context: captured.context,
|
|
108
|
+
rawTransaction,
|
|
109
|
+
hash,
|
|
110
|
+
from: tx.from,
|
|
111
|
+
chainId: tx.chainId.toString(),
|
|
112
|
+
nonce: tx.nonce,
|
|
113
|
+
type: tx.type,
|
|
114
|
+
});
|
|
115
|
+
if (captured.persistSigned) {
|
|
116
|
+
const acknowledgement = captured.persistSigned(record);
|
|
117
|
+
if (!acknowledgement || typeof acknowledgement.then !== 'function') {
|
|
118
|
+
throw new TypeError('EVM signed persistence must return an acknowledgement Promise');
|
|
119
|
+
}
|
|
120
|
+
await acknowledgement;
|
|
121
|
+
guard();
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
if (beforeBroadcast)
|
|
125
|
+
assertSynchronous(beforeBroadcast);
|
|
126
|
+
guard();
|
|
127
|
+
dispatched = true;
|
|
128
|
+
return await broadcast(rawTransaction);
|
|
129
|
+
}
|
|
130
|
+
catch (cause) {
|
|
131
|
+
const failure = Object.freeze({
|
|
132
|
+
transactionNotBroadcast: !dispatched,
|
|
133
|
+
...(hash ? { signedTransactionHash: hash } : {}),
|
|
134
|
+
});
|
|
135
|
+
// Preserve provider Error identity/class and its data/shortMessage/reason/
|
|
136
|
+
// cause contract. Only the locally owned submission fields are overwritten.
|
|
137
|
+
let error = cause instanceof Error
|
|
138
|
+
? cause
|
|
139
|
+
: new Error(typeof cause === 'string' ? cause : 'EVM submission failed');
|
|
140
|
+
if (!(cause instanceof Error) && cause && typeof cause === 'object') {
|
|
141
|
+
// JSON-RPC adapters can reject with a plain error object. Copy data
|
|
142
|
+
// descriptors without invoking accessors or accepting its stage claim.
|
|
143
|
+
for (const [key, descriptor] of Object.entries(Object.getOwnPropertyDescriptors(cause))) {
|
|
144
|
+
if (key !== 'transactionNotBroadcast' &&
|
|
145
|
+
key !== 'signedTransactionHash' &&
|
|
146
|
+
'value' in descriptor) {
|
|
147
|
+
Object.defineProperty(error, key, descriptor);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
const stageDescriptors = Object.fromEntries(Object.entries({ ...failure, signedTransactionHash: hash }).map(([key, value]) => [
|
|
152
|
+
key,
|
|
153
|
+
{ value, enumerable: true, configurable: true, writable: true },
|
|
154
|
+
]));
|
|
155
|
+
try {
|
|
156
|
+
Object.defineProperties(error, stageDescriptors);
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
// A frozen provider Error may have non-configurable forged stage fields.
|
|
160
|
+
// Retain its original details/cause without allowing those fields to win.
|
|
161
|
+
const wrapped = new Error(error.message);
|
|
162
|
+
wrapped.name = error.name;
|
|
163
|
+
const descriptors = Object.getOwnPropertyDescriptors(error);
|
|
164
|
+
delete descriptors.transactionNotBroadcast;
|
|
165
|
+
delete descriptors.signedTransactionHash;
|
|
166
|
+
Object.defineProperties(wrapped, descriptors);
|
|
167
|
+
if (!Object.prototype.hasOwnProperty.call(wrapped, 'cause'))
|
|
168
|
+
Object.defineProperty(wrapped, 'cause', {
|
|
169
|
+
value: error,
|
|
170
|
+
configurable: true,
|
|
171
|
+
});
|
|
172
|
+
Object.defineProperties(wrapped, stageDescriptors);
|
|
173
|
+
error = wrapped;
|
|
174
|
+
}
|
|
175
|
+
failures.set(error, failure);
|
|
176
|
+
throw error;
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=evm-submission.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evm-submission.js","sourceRoot":"","sources":["../../../src/transactions/evm-submission.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,4 +16,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./ethereum"), exports);
|
|
18
18
|
__exportStar(require("./syscoin"), exports);
|
|
19
|
+
__exportStar(require("./evm-submission"), exports);
|
|
19
20
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transactions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4CAA0B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/transactions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4CAA0B;AAE1B,mDAAiC"}
|
|
@@ -6,6 +6,7 @@ exports.signPreparedEvmEnvelope = signPreparedEvmEnvelope;
|
|
|
6
6
|
const address_1 = require("ethers/address");
|
|
7
7
|
const crypto_1 = require("ethers/crypto");
|
|
8
8
|
const transaction_1 = require("ethers/transaction");
|
|
9
|
+
const evm_fees_1 = require("../evm-fees");
|
|
9
10
|
const evm_local_signer_1 = require("./evm-local-signer");
|
|
10
11
|
const UINT256 = (1n << 256n) - 1n;
|
|
11
12
|
const UINT64 = (1n << 64n) - 1n;
|
|
@@ -115,6 +116,7 @@ function snapshotPreparedEvmRequest(input) {
|
|
|
115
116
|
gasLimit: quantity(transaction.gasLimit, UINT64, true),
|
|
116
117
|
data: transaction.data.toLowerCase(),
|
|
117
118
|
};
|
|
119
|
+
(0, evm_fees_1.assertEvmGasLimit)(BigInt(common.gasLimit), BigInt(chainId));
|
|
118
120
|
const fees = type === 0
|
|
119
121
|
? { type: 0, gasPrice: quantity(transaction.gasPrice) }
|
|
120
122
|
: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prepared-evm.js","sourceRoot":"","sources":["../../../src/transactions/prepared-evm.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"prepared-evm.js","sourceRoot":"","sources":["../../../src/transactions/prepared-evm.ts"],"names":[],"mappings":"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"}
|
package/cjs/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAKA,+DAAmE;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";;;AAKA,+DAAmE;AA4VnE,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;IACjB,mDAA6B,CAAA;IAC7B,uCAAiB,CAAA;AACnB,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAED,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sDAA+B,CAAA;IAC/B,kDAA2B,CAAA;IAC3B,wCAAiB,CAAA;IACjB,kDAA2B,CAAA;AAC7B,CAAC,EALW,mBAAmB,mCAAnB,mBAAmB,QAK9B"}
|
|
@@ -8,8 +8,9 @@ exports.getBipStandard = getBipStandard;
|
|
|
8
8
|
exports.getAccountDerivationPath = getAccountDerivationPath;
|
|
9
9
|
exports.getAddressDerivationPath = getAddressDerivationPath;
|
|
10
10
|
exports.convertExtendedKeyVersion = convertExtendedKeyVersion;
|
|
11
|
-
// Import coins data from the relative package in the monorepo
|
|
12
11
|
const sysweb3_network_1 = require("@sidhujag/sysweb3-network");
|
|
12
|
+
const buffer_1 = require("buffer");
|
|
13
|
+
// Import coins data from the relative package in the monorepo
|
|
13
14
|
/**
|
|
14
15
|
* Get coin information by coin shortcut or slip44
|
|
15
16
|
* Priority: 1) Check if slip44=60 (EVM), 2) Check coins.ts (UTXO), 3) Default to unknown
|
|
@@ -106,8 +107,8 @@ function convertExtendedKeyVersion(extendedKey, targetVersionHex) {
|
|
|
106
107
|
// Lazy import to avoid bundling when unused
|
|
107
108
|
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
108
109
|
const bs58check = require('bs58check');
|
|
109
|
-
const decoded = Buffer.from(bs58check.decode(extendedKey));
|
|
110
|
-
const target = Buffer.from(targetVersionHex, 'hex');
|
|
110
|
+
const decoded = buffer_1.Buffer.from(bs58check.decode(extendedKey));
|
|
111
|
+
const target = buffer_1.Buffer.from(targetVersionHex, 'hex');
|
|
111
112
|
target.copy(decoded, 0, 0, 4);
|
|
112
113
|
return bs58check.encode(decoded);
|
|
113
114
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ const secp256k1_1 = __importDefault(require("@bitcoinerlab/secp256k1"));
|
|
|
8
8
|
const sysweb3_network_1 = require("@sidhujag/sysweb3-network");
|
|
9
9
|
const bip32_1 = require("bip32");
|
|
10
10
|
const bs58check_1 = __importDefault(require("bs58check"));
|
|
11
|
+
const buffer_1 = require("buffer");
|
|
11
12
|
const syscoinjs_lib_1 = require("syscoinjs-lib");
|
|
12
13
|
const bip32 = (0, bip32_1.BIP32Factory)(secp256k1_1.default);
|
|
13
14
|
const bitcoin = syscoinjs_lib_1.utils.bitcoinjs;
|
|
@@ -107,7 +108,7 @@ const deriveDescriptorAddress = (descriptor, network, options) => {
|
|
|
107
108
|
return invalid();
|
|
108
109
|
const config = (0, sysweb3_network_1.getNetworkConfig)(network.slip44, network.currency);
|
|
109
110
|
const addressNetwork = network.slip44 === 1 ? config.networks.testnet : config.networks.mainnet;
|
|
110
|
-
const payload = Buffer.from(bs58check_1.default.decode(parsed[5]));
|
|
111
|
+
const payload = buffer_1.Buffer.from(bs58check_1.default.decode(parsed[5]));
|
|
111
112
|
if (payload.length !== 78 || ![2, 3].includes(payload[45]))
|
|
112
113
|
return invalid();
|
|
113
114
|
const root = bip32.fromBase58(parsed[5], {
|
|
@@ -137,7 +138,7 @@ const deriveDescriptorAddress = (descriptor, network, options) => {
|
|
|
137
138
|
});
|
|
138
139
|
if (!payment.address ||
|
|
139
140
|
!payment.output ||
|
|
140
|
-
!Buffer.from(bitcoin.address.toOutputScript(payment.address, addressNetwork)).equals(Buffer.from(payment.output)))
|
|
141
|
+
!buffer_1.Buffer.from(bitcoin.address.toOutputScript(payment.address, addressNetwork)).equals(buffer_1.Buffer.from(payment.output)))
|
|
141
142
|
return invalid();
|
|
142
143
|
return payment.address;
|
|
143
144
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watch-descriptor.js","sourceRoot":"","sources":["../../../src/utils/watch-descriptor.ts"],"names":[],"mappings":";;;;;;AAAA,wEAA0C;AAC1C,+DAKmC;AACnC,iCAAqC;AACrC,0DAAkC;AAClC,iDAAsD;AAEtD,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,mBAAG,CAAC,CAAC;AAChC,MAAM,OAAO,GAAG,qBAAY,CAAC,SAAS,CAAC;AACvC,MAAM,OAAO,GAAG,GAAU,EAAE;IAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACzE,CAAC,CAAC;AACF,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE;IAC3C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,UAAU;QAC9D,OAAO,OAAO,EAAE,CAAC;IACnB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,8EAA8E;AACvE,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE;IAC1D,MAAM,KAAK,GACT,mGAAmG,CAAC;IACtG,MAAM,MAAM,GAAG,kCAAkC,CAAC;IAClD,MAAM,UAAU,GAAG;QACjB,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY;KACb,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,IAAY,EAAE,EAAE;QAC7C,MAAM,GAAG,GAAG,OAAO,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,GACR,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAClE,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;gBACpD,MAAM,IAAI,SAAS,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,IAAI,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EACtB,KAAK,GAAG,CAAC,EACT,KAAK,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAC5B,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;QACzC,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QACpC,IAAI,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YAClB,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,IAAI,KAAK;QAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE;QAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACrE,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC,IAAI,CACf,EAAE,MAAM,EAAE,CAAC,EAAE,EACb,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CACrE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC,CAAC;AA1CW,QAAA,kBAAkB,sBA0C7B;AAEF,iFAAiF;AAC1E,MAAM,uBAAuB,GAAG,CACrC,UAAkB,EAClB,OAAiB,EACjB,OAA8C,EACtC,EAAE;IACV,IACE,OAAO,UAAU,KAAK,QAAQ;QAC9B,CAAC,UAAU;QACX,UAAU,CAAC,MAAM,GAAG,KAAK;QACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;QACrB,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC;QAEtE,OAAO,OAAO,EAAE,CAAC;IACnB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,IACE,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjE,OAAO,OAAO,EAAE,CAAC;IAEnB,MAAM,MAAM,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO;QAAE,OAAO,OAAO,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,MAAM,GACV,8IAA8I,CAAC,IAAI,CACjJ,GAAG,CACJ,CAAC;IACJ,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,EAAE,CAAC;IAC9B,IAAI,MAAM,CAAC,CAAC,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aACN,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;aACtB,KAAK,CAAC,MAAM,CAAC;aACb,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACX,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,OAAO,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,OAAO,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE3E,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,8BAAY,CAAC,OAAO;QAAE,OAAO,OAAO,EAAE,CAAC;IACxE,MAAM,IAAI,GAAG,IAAA,0BAAQ,EAAC;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,QAAQ;QACtB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,IACE,CAAC,IAAI;QACL,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;QACxC,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;QAExC,OAAO,OAAO,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,IAAA,kCAAgB,EAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,cAAc,GAClB,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAE3E,MAAM,OAAO,GAAG,
|
|
1
|
+
{"version":3,"file":"watch-descriptor.js","sourceRoot":"","sources":["../../../src/utils/watch-descriptor.ts"],"names":[],"mappings":";;;;;;AAAA,wEAA0C;AAC1C,+DAKmC;AACnC,iCAAqC;AACrC,0DAAkC;AAClC,mCAAgC;AAChC,iDAAsD;AAEtD,MAAM,KAAK,GAAG,IAAA,oBAAY,EAAC,mBAAG,CAAC,CAAC;AAChC,MAAM,OAAO,GAAG,qBAAY,CAAC,SAAS,CAAC;AACvC,MAAM,OAAO,GAAG,GAAU,EAAE;IAC1B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACzE,CAAC,CAAC;AACF,MAAM,UAAU,GAAG,CAAC,KAAa,EAAU,EAAE;IAC3C,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,IAAI,UAAU;QAC9D,OAAO,OAAO,EAAE,CAAC;IACnB,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,8EAA8E;AACvE,MAAM,kBAAkB,GAAG,CAAC,KAAa,EAAU,EAAE;IAC1D,MAAM,KAAK,GACT,mGAAmG,CAAC;IACtG,MAAM,MAAM,GAAG,kCAAkC,CAAC;IAClD,MAAM,UAAU,GAAG;QACjB,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY;KACb,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,IAAY,EAAE,EAAE;QAC7C,MAAM,GAAG,GAAG,OAAO,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,MAAM,GACR,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;QAClE,UAAU,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;YACtC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;gBACpD,MAAM,IAAI,SAAS,CAAC;QACxB,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,IAAI,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EACtB,KAAK,GAAG,CAAC,EACT,KAAK,GAAG,CAAC,CAAC;IACZ,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC1C,IAAI,QAAQ,GAAG,CAAC;YAAE,OAAO,EAAE,CAAC;QAC5B,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;QACzC,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QACpC,IAAI,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YAClB,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,IAAI,KAAK;QAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,KAAK,EAAE;QAAE,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACrE,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC;IACtB,OAAO,KAAK,CAAC,IAAI,CACf,EAAE,MAAM,EAAE,CAAC,EAAE,EACb,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CACX,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CACrE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC,CAAC;AA1CW,QAAA,kBAAkB,sBA0C7B;AAEF,iFAAiF;AAC1E,MAAM,uBAAuB,GAAG,CACrC,UAAkB,EAClB,OAAiB,EACjB,OAA8C,EACtC,EAAE;IACV,IACE,OAAO,UAAU,KAAK,QAAQ;QAC9B,CAAC,UAAU;QACX,UAAU,CAAC,MAAM,GAAG,KAAK;QACzB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;QACrB,CAAC,OAAO,EAAE,MAAM,KAAK,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC;QAEtE,OAAO,OAAO,EAAE,CAAC;IACnB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpC,IACE,KAAK,CAAC,MAAM,GAAG,CAAC;QAChB,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,IAAA,0BAAkB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjE,OAAO,OAAO,EAAE,CAAC;IAEnB,MAAM,MAAM,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO;QAAE,OAAO,OAAO,EAAE,CAAC;IAC1C,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,MAAM,GACV,8IAA8I,CAAC,IAAI,CACjJ,GAAG,CACJ,CAAC;IACJ,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,EAAE,CAAC;IAC9B,IAAI,MAAM,CAAC,CAAC,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aACN,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;aACtB,KAAK,CAAC,MAAM,CAAC;aACb,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACX,IAAI,QAAQ,CAAC,MAAM,GAAG,EAAE;QAAE,OAAO,OAAO,EAAE,CAAC;IAC3C,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACjD,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,OAAO,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE3E,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,8BAAY,CAAC,OAAO;QAAE,OAAO,OAAO,EAAE,CAAC;IACxE,MAAM,IAAI,GAAG,IAAA,0BAAQ,EAAC;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,QAAQ;QACtB,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IACH,IACE,CAAC,IAAI;QACL,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC;QACxC,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;QAExC,OAAO,OAAO,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,IAAA,kCAAgB,EAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClE,MAAM,cAAc,GAClB,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;IAE3E,MAAM,OAAO,GAAG,eAAM,CAAC,IAAI,CAAC,mBAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAAE,OAAO,OAAO,EAAE,CAAC;IAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;QACvC,GAAG,cAAc;QACjB,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE;KAChE,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;QAAE,OAAO,OAAO,EAAE,CAAC;IACzC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7C,2EAA2E;IAC3E,IAAI,UAAU,CAAC,KAAK,KAAK,MAAM,IAAI,WAAW,CAAC,KAAK,KAAK,KAAK;QAC5D,OAAO,OAAO,EAAE,CAAC;IACnB,MAAM,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC;IACrC,MAAM,OAAO,GACX,IAAI,KAAK,KAAK;QACZ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;QAC7D,CAAC,CAAC,IAAI,KAAK,MAAM;YACjB,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;YAC9D,CAAC,CAAC,IAAI,KAAK,IAAI;gBACf,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACpB,cAAc,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC/B,OAAO,EAAE,cAAc;iBACxB,CAAC;gBACJ,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;oBACpB,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;oBACpE,OAAO,EAAE,cAAc;iBACxB,CAAC,CAAC;IACT,IACE,CAAC,OAAO,CAAC,OAAO;QAChB,CAAC,OAAO,CAAC,MAAM;QACf,CAAC,eAAM,CAAC,IAAI,CACV,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,cAAc,CAAC,CAChE,CAAC,MAAM,CAAC,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAErC,OAAO,OAAO,EAAE,CAAC;IACnB,OAAO,OAAO,CAAC,OAAO,CAAC;AACzB,CAAC,CAAC;AA/FW,QAAA,uBAAuB,2BA+FlC"}
|
package/esm/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAKA,OAAO,EAAY,YAAY,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAKA,OAAO,EAAY,YAAY,EAAE,MAAM,2BAA2B,CAAC;AA4VnE,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,6CAAuB,CAAA;IACvB,2CAAqB,CAAA;IACrB,uCAAiB,CAAA;IACjB,mDAA6B,CAAA;IAC7B,uCAAiB,CAAA;AACnB,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sDAA+B,CAAA;IAC/B,kDAA2B,CAAA;IAC3B,wCAAiB,CAAA;IACjB,kDAA2B,CAAA;AAC7B,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
// Import coins data from the relative package in the monorepo
|
|
2
1
|
import { findCoin } from '@sidhujag/sysweb3-network';
|
|
2
|
+
import { Buffer } from 'buffer';
|
|
3
|
+
// Import coins data from the relative package in the monorepo
|
|
3
4
|
/**
|
|
4
5
|
* Get coin information by coin shortcut or slip44
|
|
5
6
|
* Priority: 1) Check if slip44=60 (EVM), 2) Check coins.ts (UTXO), 3) Default to unknown
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"derivation-paths.js","sourceRoot":"","sources":["../../../src/utils/derivation-paths.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sidhujag/sysweb3-keyring",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.1",
|
|
4
4
|
"description": "Keyring Manager for UTXO and Web3 Wallets",
|
|
5
5
|
"main": "cjs/index.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -18,6 +18,12 @@
|
|
|
18
18
|
"cjs/transactions/syscoin-core.js": [
|
|
19
19
|
"types/transactions/syscoin-core.d.ts"
|
|
20
20
|
],
|
|
21
|
+
"cjs/transactions/evm-submission": [
|
|
22
|
+
"types/transactions/evm-submission.d.ts"
|
|
23
|
+
],
|
|
24
|
+
"cjs/transactions/evm-submission.js": [
|
|
25
|
+
"types/transactions/evm-submission.d.ts"
|
|
26
|
+
],
|
|
21
27
|
"cjs/transactions/ethereum": [
|
|
22
28
|
"types/transactions/ethereum.d.ts"
|
|
23
29
|
],
|
|
@@ -48,17 +54,23 @@
|
|
|
48
54
|
"cjs/ledger/host-types.js": [
|
|
49
55
|
"types/ledger/host-types.d.ts"
|
|
50
56
|
],
|
|
51
|
-
"cjs/
|
|
52
|
-
"types/
|
|
57
|
+
"cjs/evm-fees": [
|
|
58
|
+
"types/evm-fees.d.ts"
|
|
59
|
+
],
|
|
60
|
+
"cjs/evm-fees.js": [
|
|
61
|
+
"types/evm-fees.d.ts"
|
|
62
|
+
],
|
|
63
|
+
"cjs/utils/watch-descriptor": [
|
|
64
|
+
"types/utils/watch-descriptor.d.ts"
|
|
53
65
|
],
|
|
54
|
-
"cjs/
|
|
55
|
-
"types/
|
|
66
|
+
"cjs/utils/watch-descriptor.js": [
|
|
67
|
+
"types/utils/watch-descriptor.d.ts"
|
|
56
68
|
],
|
|
57
|
-
"cjs/
|
|
58
|
-
"types/
|
|
69
|
+
"cjs/utils/derivation-paths": [
|
|
70
|
+
"types/utils/derivation-paths.d.ts"
|
|
59
71
|
],
|
|
60
|
-
"cjs/
|
|
61
|
-
"types/
|
|
72
|
+
"cjs/utils/derivation-paths.js": [
|
|
73
|
+
"types/utils/derivation-paths.d.ts"
|
|
62
74
|
]
|
|
63
75
|
}
|
|
64
76
|
},
|
|
@@ -77,7 +89,7 @@
|
|
|
77
89
|
"@ledgerhq/device-transport-kit-web-hid": "1.2.4",
|
|
78
90
|
"@metamask/eth-sig-util": "^8.2.0",
|
|
79
91
|
"@sidhujag/sysweb3-core": "^1.0.29",
|
|
80
|
-
"@sidhujag/sysweb3-network": "^1.0.
|
|
92
|
+
"@sidhujag/sysweb3-network": "^1.0.111",
|
|
81
93
|
"@sidhujag/sysweb3-utils": "^1.1.280",
|
|
82
94
|
"@trezor/connect-webextension": "10.0.1",
|
|
83
95
|
"bip32": "^5.0.1",
|
|
@@ -85,13 +97,14 @@
|
|
|
85
97
|
"bitcoin-ops": "^1.4.1",
|
|
86
98
|
"bitcoinjs-lib": "^7.0.5",
|
|
87
99
|
"bs58check": "^3.0.1",
|
|
100
|
+
"buffer": "^6.0.3",
|
|
88
101
|
"crypto-js": "^4.1.1",
|
|
89
102
|
"ethers": "^6.17.0",
|
|
90
103
|
"rxjs": "7.8.2",
|
|
91
104
|
"varuint-bitcoin": "^2.0.0"
|
|
92
105
|
},
|
|
93
106
|
"peerDependencies": {
|
|
94
|
-
"syscoinjs-lib": "^1.0.
|
|
107
|
+
"syscoinjs-lib": "^1.0.277"
|
|
95
108
|
},
|
|
96
109
|
"resolutions": {
|
|
97
110
|
"axios": "^1.18.1",
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
export interface EvmFeeReader {
|
|
2
|
+
getGasPrice(): Promise<unknown>;
|
|
3
|
+
getBlock(tag: 'latest'): Promise<{
|
|
4
|
+
baseFeePerGas?: unknown;
|
|
5
|
+
} | null>;
|
|
6
|
+
send(method: 'eth_maxPriorityFeePerGas' | 'eth_feeHistory', params: unknown[]): Promise<unknown>;
|
|
7
|
+
readonly signal?: AbortSignal;
|
|
8
|
+
}
|
|
9
|
+
export interface EvmFeeOptions {
|
|
10
|
+
/** The host retains responsibility for chain, endpoint and account binding. */
|
|
11
|
+
assertCurrent?: () => void;
|
|
12
|
+
signal?: AbortSignal;
|
|
13
|
+
minPriorityFee?: unknown;
|
|
14
|
+
/** Positive, whole percentage; the existing recommendation uses 250. */
|
|
15
|
+
feeMultiplier?: number;
|
|
16
|
+
}
|
|
17
|
+
export type EvmFeeData = Readonly<{
|
|
18
|
+
gasPrice: bigint;
|
|
19
|
+
/** Absent only when the observed header has no base-fee field. */
|
|
20
|
+
baseFeePerGas?: bigint;
|
|
21
|
+
maxFeePerGas: bigint;
|
|
22
|
+
maxPriorityFeePerGas: bigint;
|
|
23
|
+
}>;
|
|
24
|
+
/** A validated limit failed its wire bounds or an activated protocol bound. */
|
|
25
|
+
export declare class EvmGasLimitError extends Error {
|
|
26
|
+
readonly code: 'SYSWEB3_EVM_GAS_LIMIT_INVALID' | 'SYSWEB3_EVM_GAS_LIMIT_EXCEEDED';
|
|
27
|
+
constructor(code: 'SYSWEB3_EVM_GAS_LIMIT_INVALID' | 'SYSWEB3_EVM_GAS_LIMIT_EXCEEDED');
|
|
28
|
+
}
|
|
29
|
+
/** The host supplies a verified chain and, if sampled, its block gas limit. */
|
|
30
|
+
export declare function assertEvmGasLimit(gasLimit: bigint, chainId: bigint, sampledBlockGasLimit?: bigint): bigint;
|
|
31
|
+
/** Accept the SDK's existing BigNumberish forms without permissive zero coercion. */
|
|
32
|
+
export declare function parseEvmFeeQuantity(value: unknown, label?: string): bigint;
|
|
33
|
+
/**
|
|
34
|
+
* The existing successful-estimate policy: floor(estimate * 120 / 100), then
|
|
35
|
+
* the configured minimum if larger. Callers retain chain/resource bounds.
|
|
36
|
+
*/
|
|
37
|
+
export declare function bufferedEvmGasLimit(estimate: bigint, minimum?: bigint): bigint;
|
|
38
|
+
/**
|
|
39
|
+
* No signer, transport, network registry or provider implementation is imported.
|
|
40
|
+
* Reads are serialized and guarded; RPC failures never become fabricated fees.
|
|
41
|
+
*/
|
|
42
|
+
export declare function getEvmFeeData(reader: EvmFeeReader, options?: EvmFeeOptions): Promise<EvmFeeData>;
|
package/types/keyring-core.d.ts
CHANGED
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
import { INetwork, INetworkType } from '@sidhujag/sysweb3-network';
|
|
2
2
|
import { IDecryptPrivateRecordParams, IEncryptedPrivateRecord, IEncryptPrivateRecordParams } from './private-records';
|
|
3
3
|
import { SyscoinHDSigner } from './signers';
|
|
4
|
-
import { Bip84HdPublicRequest, Bip84HdPublicResult } from './software-utxo-account';
|
|
5
|
-
import { Bip84Guard } from './transactions/bip84-native-plan';
|
|
6
|
-
import { PreparedBip84SigningRequest, SignedBip84NativeTransaction } from './transactions/prepared-bip84';
|
|
7
4
|
import { type ISyscoinHardwareSigners } from './transactions/syscoin-core';
|
|
8
5
|
import { IKeyringAccountState, ICreateSmartAccountParams, ISyscoinTransactions, KeyringAccountType, IEthereumTransactions } from './types';
|
|
9
6
|
import type { LedgerKeyring } from './ledger';
|
|
10
7
|
import type { EncryptedEvmHdRuntimeAccount, EvmHdRuntimeAccountOptions, EvmHdRuntimeAccountRequest } from './software-hd-account';
|
|
11
8
|
import type { VaultPersistence, VaultStoragePort } from './storage-core';
|
|
9
|
+
import type { CaptureEvmSubmission } from './transactions/evm-submission';
|
|
12
10
|
import type { PreparedEvmSigningOptions, PreparedSoftwareEvmSigningRequest, SignedPreparedEvmTransaction } from './transactions/prepared-evm';
|
|
13
11
|
import type { TrezorKeyring } from './trezor';
|
|
14
12
|
/** Explicit asynchronous host storage; no browser or global DI fallback. */
|
|
@@ -36,6 +34,8 @@ export interface KeyringCoreDependencies<TLedger extends KeyringLedgerSigner | u
|
|
|
36
34
|
trezorSigner: TTrezor;
|
|
37
35
|
/** Trusted host adapters; absent device capabilities fail closed. */
|
|
38
36
|
syscoinHardwareSigners?: ISyscoinHardwareSigners;
|
|
37
|
+
/** Trusted host lifecycle, captured before each locally signed EVM submission. */
|
|
38
|
+
captureEvmSubmission?: CaptureEvmSubmission;
|
|
39
39
|
}
|
|
40
40
|
export interface ISysAccount {
|
|
41
41
|
address: string;
|
|
@@ -76,7 +76,6 @@ export declare class KeyringCore<TLedger extends KeyringLedgerSigner | undefined
|
|
|
76
76
|
private sessionPassword;
|
|
77
77
|
private sessionMnemonic;
|
|
78
78
|
private privateRecordSessionRevision;
|
|
79
|
-
private bip84Operation;
|
|
80
79
|
constructor(dependencies: KeyringCoreDependencies<TLedger, TTrezor>);
|
|
81
80
|
private createSyscoinTransactions;
|
|
82
81
|
private requireLedgerSigner;
|
|
@@ -191,10 +190,6 @@ export declare class KeyringCore<TLedger extends KeyringLedgerSigner | undefined
|
|
|
191
190
|
*/
|
|
192
191
|
private getDecryptedPrivateKey;
|
|
193
192
|
private capturePsbtSigningContext;
|
|
194
|
-
/** Fixed-profile public UTXO derivation; private material remains operation-local. */
|
|
195
|
-
protected deriveSoftwareBip84HdPublicAccount(input: Bip84HdPublicRequest, options: Bip84Guard): Promise<Bip84HdPublicResult>;
|
|
196
|
-
/** Fixed selected-account native signing. No storage, discovery or broadcast. */
|
|
197
|
-
protected signPreparedSoftwareBip84Transaction(input: PreparedBip84SigningRequest, options: Bip84Guard): Promise<SignedBip84NativeTransaction>;
|
|
198
193
|
/** Fixed-path derivation for an authenticated software host; no persistence. */
|
|
199
194
|
protected deriveSoftwareEvmHdRuntimeAccount(input: EvmHdRuntimeAccountRequest, options: EvmHdRuntimeAccountOptions): Promise<EncryptedEvmHdRuntimeAccount>;
|
|
200
195
|
/** The software facade owns this public capability; no device fallback. */
|
|
@@ -2,11 +2,16 @@ import { HardwareWalletManager } from './hardware-wallet-manager';
|
|
|
2
2
|
import { KeyringCore } from './keyring-core';
|
|
3
3
|
import { LedgerKeyring } from './ledger';
|
|
4
4
|
import { TrezorKeyring } from './trezor';
|
|
5
|
-
import type { IKeyringManager } from './types';
|
|
6
5
|
import type { LedgerHost } from './ledger/host-types';
|
|
6
|
+
import type { CaptureEvmSubmission } from './transactions/evm-submission';
|
|
7
|
+
import type { IKeyringManager } from './types';
|
|
7
8
|
export type { ISysAccount } from './keyring-core';
|
|
8
9
|
/** Existing browser entry. Native/software hosts must use the software entry. */
|
|
9
10
|
export declare class KeyringManager extends KeyringCore<LedgerKeyring, TrezorKeyring> implements IKeyringManager {
|
|
10
|
-
constructor(sharedHardwareWalletManager?: HardwareWalletManager, ledgerHost?: LedgerHost
|
|
11
|
-
|
|
11
|
+
constructor(sharedHardwareWalletManager?: HardwareWalletManager, ledgerHost?: LedgerHost, options?: {
|
|
12
|
+
captureEvmSubmission?: CaptureEvmSubmission;
|
|
13
|
+
});
|
|
14
|
+
static createInitialized(seed: string, password: string, vaultStateGetter: () => any, options?: {
|
|
15
|
+
captureEvmSubmission?: CaptureEvmSubmission;
|
|
16
|
+
}): Promise<KeyringManager>;
|
|
12
17
|
}
|
package/types/software.d.ts
CHANGED
|
@@ -2,9 +2,7 @@
|
|
|
2
2
|
import { KeyringCore } from './keyring-core';
|
|
3
3
|
import type { KeyringStoragePort } from './keyring-core';
|
|
4
4
|
import type { EncryptedEvmHdRuntimeAccount, EvmHdRuntimeAccountOptions, EvmHdRuntimeAccountRequest } from './software-hd-account';
|
|
5
|
-
import type {
|
|
6
|
-
import type { Bip84Guard } from './transactions/bip84-native-plan';
|
|
7
|
-
import type { PreparedBip84SigningRequest, SignedBip84NativeTransaction } from './transactions/prepared-bip84';
|
|
5
|
+
import type { CaptureEvmSubmission } from './transactions/evm-submission';
|
|
8
6
|
import type { PreparedEvmSigningOptions, PreparedSoftwareEvmSigningRequest, SignedPreparedEvmTransaction } from './transactions/prepared-evm';
|
|
9
7
|
declare const softwareHostBrand: unique symbol;
|
|
10
8
|
/** Opaque handle minted by createSoftwareKeyringHost; no injectable persistence. */
|
|
@@ -12,7 +10,9 @@ export interface SoftwareKeyringHost {
|
|
|
12
10
|
readonly [softwareHostBrand]: true;
|
|
13
11
|
}
|
|
14
12
|
/** Create once per wallet authority, then share with its per-network keyrings. */
|
|
15
|
-
export declare const createSoftwareKeyringHost: (storage: KeyringStoragePort
|
|
13
|
+
export declare const createSoftwareKeyringHost: (storage: KeyringStoragePort, options?: {
|
|
14
|
+
captureEvmSubmission?: CaptureEvmSubmission;
|
|
15
|
+
}) => SoftwareKeyringHost;
|
|
16
16
|
export declare class SoftwareKeyring extends KeyringCore<undefined, undefined> {
|
|
17
17
|
constructor(host: SoftwareKeyringHost);
|
|
18
18
|
/**
|
|
@@ -21,10 +21,6 @@ export declare class SoftwareKeyring extends KeyringCore<undefined, undefined> {
|
|
|
21
21
|
* never a public account/catalogue DTO. The host owns index allocation.
|
|
22
22
|
*/
|
|
23
23
|
deriveEvmHdRuntimeAccount(request: EvmHdRuntimeAccountRequest, options: EvmHdRuntimeAccountOptions): Promise<EncryptedEvmHdRuntimeAccount>;
|
|
24
|
-
/** Derive public BIP84 account data from the live seed; no storage or discovery. */
|
|
25
|
-
deriveBip84HdPublicAccount(request: Bip84HdPublicRequest, options: Bip84Guard): Promise<Bip84HdPublicResult>;
|
|
26
|
-
/** Sign the selected HD account's exact prepared native transaction offline. */
|
|
27
|
-
signPreparedBip84Transaction(request: PreparedBip84SigningRequest, options: Bip84Guard): Promise<SignedBip84NativeTransaction>;
|
|
28
24
|
/**
|
|
29
25
|
* Sign exactly the prepared envelope without RPC, fee/nonce discovery or
|
|
30
26
|
* broadcasting. The host must journal the result before submitting it.
|
|
@@ -44,6 +40,5 @@ export type { KeyringStoragePort } from './keyring-core';
|
|
|
44
40
|
export type { IKeyringAccountState } from './types';
|
|
45
41
|
export type { PreparedEvmTransaction, PreparedEvmSigningOptions, PreparedSoftwareEvmSigningRequest, SignedPreparedEvmTransaction, } from './transactions/prepared-evm';
|
|
46
42
|
export type { EncryptedEvmHdRuntimeAccount, EvmHdRuntimeAccountOptions, EvmHdRuntimeAccountRequest, } from './software-hd-account';
|
|
47
|
-
export
|
|
48
|
-
export type {
|
|
49
|
-
export type { PreparedBip84SigningRequest, SignedBip84NativeTransaction, } from './transactions/prepared-bip84';
|
|
43
|
+
export { captureEvmSubmission, submitSignedEvmTransaction, evmSubmissionFailure, } from './transactions/evm-submission';
|
|
44
|
+
export type { CaptureEvmSubmission, EvmSubmissionContext, EvmSubmissionLifecycle, EvmSignedSubmission, EvmSubmissionBoundary, } from './transactions/evm-submission';
|