hodl-wallet 1.9.8 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/index.js +137 -87
- package/dist/index.js.map +1 -1
- package/dist/network/hyperliquid.d.ts +3 -14
- package/dist/network/hyperliquid.js +7 -47
- package/dist/network/hyperliquid.js.map +1 -1
- package/dist/network/lib/BaseNetwork.d.ts +1 -0
- package/dist/network/lib/BaseNetwork.js.map +1 -1
- package/dist/network/lib/BitcoinNetwork.d.ts +1 -0
- package/dist/network/lib/BitcoinNetwork.js +9 -0
- package/dist/network/lib/BitcoinNetwork.js.map +1 -1
- package/dist/network/lib/Web3Network.d.ts +2 -0
- package/dist/network/lib/Web3Network.js +20 -5
- package/dist/network/lib/Web3Network.js.map +1 -1
- package/dist/network/types.d.ts +2 -0
- package/dist/persist.d.ts +15 -6
- package/dist/persist.js +161 -22
- package/dist/persist.js.map +1 -1
- package/package.json +8 -4
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ Let's face it, Trust Wallet's sluggishness and annoying ads are so last season.
|
|
|
17
17
|
- 🚫 Zero ads, zero BS
|
|
18
18
|
- 🔒 Create wallets offline (because paranoia is just good sense in crypto)
|
|
19
19
|
- 🔍 Fully transparent, open-source code
|
|
20
|
-
- 🌐 Support for Bitcoin and Ethereum. Binance Smart Chain, Polygon, Avalanche, Optimism, Arbitrum, and
|
|
20
|
+
- 🌐 Support for Bitcoin and Ethereum. Binance Smart Chain, Polygon, Avalanche, Optimism, Arbitrum, Fantom, and Hyperliquid.
|
|
21
21
|
|
|
22
22
|
That's it! Follow the prompts and you're in crypto heaven.
|
|
23
23
|
|
|
@@ -52,6 +52,7 @@ Seamlessly manage your assets on multiple networks. HODL Wallet supports the fol
|
|
|
52
52
|
- Arbitrum One
|
|
53
53
|
- Fantom
|
|
54
54
|
- Avalanche C-Chain
|
|
55
|
+
- Hyperliquid
|
|
55
56
|
|
|
56
57
|
Each network supports its native token and popular tokens like USDT. You can easily add more tokens as needed.
|
|
57
58
|
|
package/dist/index.js
CHANGED
|
@@ -22,24 +22,29 @@ function errorMessage(error) {
|
|
|
22
22
|
}
|
|
23
23
|
import inquirerAutocomplete from 'inquirer-autocomplete-prompt';
|
|
24
24
|
inquirer.registerPrompt('autocomplete', inquirerAutocomplete);
|
|
25
|
-
process.on('SIGINT', () => {
|
|
26
|
-
process.exit();
|
|
27
|
-
});
|
|
28
25
|
class Wallet {
|
|
29
26
|
db;
|
|
30
27
|
network;
|
|
31
28
|
selectedNetwork;
|
|
32
29
|
networkUsage;
|
|
30
|
+
databaseExisted;
|
|
33
31
|
constructor(encryptionKey) {
|
|
34
32
|
const hodlDir = path.join(os.homedir(), '.HODL');
|
|
35
33
|
if (!fs.existsSync(hodlDir)) {
|
|
36
34
|
fs.mkdirSync(hodlDir, { recursive: true });
|
|
37
35
|
}
|
|
36
|
+
this.databaseExisted = fs.existsSync(path.join(hodlDir, 'persist.json'));
|
|
38
37
|
this.db = new Persist({ path: hodlDir, encryptionKey });
|
|
39
38
|
this.network = null;
|
|
40
39
|
this.selectedNetwork = null;
|
|
41
40
|
this.networkUsage = {};
|
|
42
41
|
}
|
|
42
|
+
async connect() {
|
|
43
|
+
await this.db.connect();
|
|
44
|
+
}
|
|
45
|
+
hasStoredDatabase() {
|
|
46
|
+
return this.databaseExisted;
|
|
47
|
+
}
|
|
43
48
|
/**
|
|
44
49
|
* @param {number | string} num
|
|
45
50
|
* @returns {string}
|
|
@@ -82,46 +87,45 @@ class Wallet {
|
|
|
82
87
|
}
|
|
83
88
|
const networkPlugins = await this.loadNetworkPlugins();
|
|
84
89
|
if (networkPlugins.length === 0) {
|
|
85
|
-
|
|
86
|
-
process.exit(1);
|
|
90
|
+
throw new Error('No valid network plugins found.');
|
|
87
91
|
}
|
|
88
92
|
await this.selectNetwork(networkPlugins, { autoSelect: true });
|
|
89
93
|
this.network = new this.selectedNetwork.NetworkClass(this.selectedNetwork);
|
|
90
94
|
this.network.name = this.selectedNetwork.name;
|
|
91
95
|
await this.loadAccount();
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
Wallet.displayError('Failed to initialize account.');
|
|
95
|
-
process.exit(1);
|
|
96
|
+
if (!await this.hasAccount()) {
|
|
97
|
+
throw new Error('Failed to initialize account.');
|
|
96
98
|
}
|
|
97
99
|
}
|
|
98
100
|
catch (error) {
|
|
99
|
-
|
|
100
|
-
process.exit(1);
|
|
101
|
+
throw new Error(`Initialization failed: ${errorMessage(error)}`);
|
|
101
102
|
}
|
|
102
103
|
}
|
|
103
104
|
/**
|
|
104
105
|
* @param {WalletAccount | any} account
|
|
105
106
|
* @returns {void}
|
|
106
107
|
*/
|
|
107
|
-
setAccount(account) {
|
|
108
|
+
async setAccount(account) {
|
|
108
109
|
if (!account) {
|
|
109
110
|
return;
|
|
110
111
|
}
|
|
111
|
-
this.db.set('account', this.network.constructor.name, account);
|
|
112
|
+
await this.db.set('account', this.network.constructor.name, account);
|
|
112
113
|
if (account.mnemonic) {
|
|
113
|
-
this.db.set('mnemonic', account.mnemonic);
|
|
114
|
+
await this.db.set('mnemonic', account.mnemonic);
|
|
114
115
|
}
|
|
115
116
|
}
|
|
116
117
|
async getAccount() {
|
|
117
|
-
const account = this.db.get('account', this.network.constructor.name);
|
|
118
|
+
const account = await this.db.get('account', this.network.constructor.name);
|
|
118
119
|
return account ?? null;
|
|
119
120
|
}
|
|
120
121
|
async getAddress() {
|
|
121
122
|
return this.db.get('account', this.network.constructor.name, 'address');
|
|
122
123
|
}
|
|
123
124
|
async getMnemonic() {
|
|
124
|
-
return this.db.get('mnemonic') ?? null;
|
|
125
|
+
return await this.db.get('mnemonic') ?? null;
|
|
126
|
+
}
|
|
127
|
+
async hasAccount() {
|
|
128
|
+
return typeof await this.db.get('account', this.network.constructor.name, 'address') === 'string';
|
|
125
129
|
}
|
|
126
130
|
async displayAccountAddress() {
|
|
127
131
|
const table = new AnyTable({
|
|
@@ -213,7 +217,7 @@ class Wallet {
|
|
|
213
217
|
* @returns {Promise<void>}
|
|
214
218
|
*/
|
|
215
219
|
async loadAccount(loggedIn = false) {
|
|
216
|
-
let
|
|
220
|
+
let accountExists = await this.hasAccount();
|
|
217
221
|
const mainChoices = ['Create New Account'];
|
|
218
222
|
if (loggedIn) {
|
|
219
223
|
mainChoices.push('Import Options');
|
|
@@ -227,7 +231,7 @@ class Wallet {
|
|
|
227
231
|
mainChoices.push('Import Mnemonic (12 or 24 words)');
|
|
228
232
|
mainChoices.push('Import Private-key');
|
|
229
233
|
}
|
|
230
|
-
if (!
|
|
234
|
+
if (!accountExists || loggedIn) {
|
|
231
235
|
let { accountAction } = await inquirer.prompt({
|
|
232
236
|
type: 'list',
|
|
233
237
|
name: 'accountAction',
|
|
@@ -273,13 +277,15 @@ class Wallet {
|
|
|
273
277
|
}
|
|
274
278
|
switch (accountAction) {
|
|
275
279
|
case 'Import Mnemonic (12 or 24 words)':
|
|
276
|
-
account = await this.importFromMnemonic();
|
|
280
|
+
const account = await this.importFromMnemonic();
|
|
277
281
|
if (!account) {
|
|
278
282
|
// Wallet.displayError('Invalid mnemonic.');
|
|
279
283
|
return;
|
|
280
284
|
}
|
|
281
|
-
this.setAccount(account);
|
|
285
|
+
await this.setAccount(account);
|
|
286
|
+
Persist.clearSensitiveData(account);
|
|
282
287
|
await this.displayAccountAddress();
|
|
288
|
+
accountExists = true;
|
|
283
289
|
break;
|
|
284
290
|
case 'Import Private-key':
|
|
285
291
|
await this.importPrivateKey();
|
|
@@ -287,8 +293,9 @@ class Wallet {
|
|
|
287
293
|
case 'Import HODL File':
|
|
288
294
|
const importedAccount = await this.importHODLFile();
|
|
289
295
|
if (importedAccount) {
|
|
290
|
-
|
|
296
|
+
Persist.clearSensitiveData(importedAccount);
|
|
291
297
|
await this.displayAccountAddress();
|
|
298
|
+
accountExists = true;
|
|
292
299
|
}
|
|
293
300
|
break;
|
|
294
301
|
}
|
|
@@ -324,13 +331,15 @@ class Wallet {
|
|
|
324
331
|
}
|
|
325
332
|
return;
|
|
326
333
|
}
|
|
327
|
-
|
|
334
|
+
if (!accountExists) {
|
|
335
|
+
throw new Error('Account was not initialized.');
|
|
336
|
+
}
|
|
328
337
|
}
|
|
329
338
|
/**
|
|
330
339
|
* @returns {Promise<boolean>}
|
|
331
340
|
*/
|
|
332
341
|
async confirmOverwrite() {
|
|
333
|
-
if (await this.
|
|
342
|
+
if (await this.hasAccount()) {
|
|
334
343
|
const { confirmOverwrite } = await inquirer.prompt({
|
|
335
344
|
type: 'confirm',
|
|
336
345
|
name: 'confirmOverwrite',
|
|
@@ -361,8 +370,7 @@ class Wallet {
|
|
|
361
370
|
return this.network.accountFromMnemonic(mnemonic);
|
|
362
371
|
}
|
|
363
372
|
async showBalance() {
|
|
364
|
-
|
|
365
|
-
if (!account) {
|
|
373
|
+
if (!await this.hasAccount()) {
|
|
366
374
|
Wallet.displayError('Account not initialized.');
|
|
367
375
|
return;
|
|
368
376
|
}
|
|
@@ -449,17 +457,22 @@ class Wallet {
|
|
|
449
457
|
if (!account) {
|
|
450
458
|
throw new Error('Account not initialized.');
|
|
451
459
|
}
|
|
452
|
-
|
|
453
|
-
if (
|
|
454
|
-
|
|
460
|
+
try {
|
|
461
|
+
if (token === this.selectedNetwork.nativeToken) {
|
|
462
|
+
if (!this.network.handleNativeTransfer) {
|
|
463
|
+
throw new Error('Selected network does not support native transfers.');
|
|
464
|
+
}
|
|
465
|
+
signedTx = await this.network.handleNativeTransfer(account, address, numericAmount);
|
|
455
466
|
}
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
467
|
+
else {
|
|
468
|
+
if (!this.network.handleERC20Transfer) {
|
|
469
|
+
throw new Error('Selected network does not support token transfers.');
|
|
470
|
+
}
|
|
471
|
+
signedTx = await this.network.handleERC20Transfer(account, token, address, numericAmount);
|
|
461
472
|
}
|
|
462
|
-
|
|
473
|
+
}
|
|
474
|
+
finally {
|
|
475
|
+
Persist.clearSensitiveData(account);
|
|
463
476
|
}
|
|
464
477
|
const receipt = await this.network.sendSignedTransaction(signedTx);
|
|
465
478
|
spinner.succeed('Transaction confirmed!');
|
|
@@ -555,7 +568,7 @@ class Wallet {
|
|
|
555
568
|
balance
|
|
556
569
|
};
|
|
557
570
|
const address = await this.getAddress();
|
|
558
|
-
this.db.add('transactions', address, this.selectedNetwork.nativeToken, transaction);
|
|
571
|
+
await this.db.add('transactions', address, this.selectedNetwork.nativeToken, transaction);
|
|
559
572
|
}
|
|
560
573
|
async showTransactions() {
|
|
561
574
|
const address = await this.getAddress();
|
|
@@ -661,7 +674,8 @@ class Wallet {
|
|
|
661
674
|
table.push([{ colSpan: 6, content: this.selectedNetwork.explorer + hash }]);
|
|
662
675
|
console.log(table.toString());
|
|
663
676
|
}
|
|
664
|
-
clearAccountData() {
|
|
677
|
+
async clearAccountData() {
|
|
678
|
+
await this.db.dispose();
|
|
665
679
|
}
|
|
666
680
|
async displayAccountDetails() {
|
|
667
681
|
const table = new AnyTable({
|
|
@@ -684,14 +698,14 @@ class Wallet {
|
|
|
684
698
|
table.push(['WARNING', "Please keep your private-key secure. Never share it."]);
|
|
685
699
|
}
|
|
686
700
|
console.log(table.toString());
|
|
701
|
+
Persist.clearSensitiveData(account);
|
|
687
702
|
}
|
|
688
703
|
async switchNetwork() {
|
|
689
704
|
const networkPlugins = await this.loadNetworkPlugins();
|
|
690
705
|
await this.selectNetwork(networkPlugins);
|
|
691
706
|
this.network = new this.selectedNetwork.NetworkClass(this.selectedNetwork);
|
|
692
707
|
this.network.name = this.selectedNetwork.name;
|
|
693
|
-
|
|
694
|
-
if (account) {
|
|
708
|
+
if (await this.hasAccount()) {
|
|
695
709
|
await this.displayAccountAddress();
|
|
696
710
|
}
|
|
697
711
|
else {
|
|
@@ -711,8 +725,13 @@ class Wallet {
|
|
|
711
725
|
fileName += '.HODL';
|
|
712
726
|
const data = await this.db.get();
|
|
713
727
|
const encryptionKey = await UIManager.getEncryptionKey();
|
|
714
|
-
|
|
715
|
-
|
|
728
|
+
try {
|
|
729
|
+
const encryptedData = Persist.encrypt(data, encryptionKey);
|
|
730
|
+
fs.writeFileSync(fileName, encryptedData);
|
|
731
|
+
}
|
|
732
|
+
finally {
|
|
733
|
+
Persist.clearSensitiveData(data);
|
|
734
|
+
}
|
|
716
735
|
const table = new AnyTable({
|
|
717
736
|
head: ['HODL File Exported'],
|
|
718
737
|
style: { head: ['green'] }
|
|
@@ -768,14 +787,19 @@ class Wallet {
|
|
|
768
787
|
}
|
|
769
788
|
const encryptedData = fs.readFileSync(filePath, 'utf8');
|
|
770
789
|
const encryptionKey = await UIManager.getEncryptionKey();
|
|
790
|
+
let importedData;
|
|
771
791
|
try {
|
|
772
|
-
|
|
773
|
-
|
|
792
|
+
importedData = Persist.decrypt(encryptedData, encryptionKey);
|
|
793
|
+
await this.db.set(importedData);
|
|
794
|
+
return await this.getAccount();
|
|
774
795
|
}
|
|
775
796
|
catch (error) {
|
|
776
797
|
Wallet.displayError('Failed to import HODL file.', 'The password is incorrect.');
|
|
777
798
|
return null;
|
|
778
799
|
}
|
|
800
|
+
finally {
|
|
801
|
+
Persist.clearSensitiveData(importedData);
|
|
802
|
+
}
|
|
779
803
|
}
|
|
780
804
|
async importPrivateKey() {
|
|
781
805
|
const { privateKey } = await inquirer.prompt({
|
|
@@ -786,14 +810,15 @@ class Wallet {
|
|
|
786
810
|
validate: (input) => {
|
|
787
811
|
if (input.trim() === '')
|
|
788
812
|
return true;
|
|
789
|
-
return
|
|
813
|
+
return this.network.validatePrivateKey(input) ||
|
|
814
|
+
'Please enter a valid private-key for the selected network or leave empty to cancel.';
|
|
790
815
|
}
|
|
791
816
|
});
|
|
792
817
|
if (!privateKey.trim()) {
|
|
793
818
|
return; // Silently return if empty
|
|
794
819
|
}
|
|
795
820
|
try {
|
|
796
|
-
this.setAccount(await this.network.privateKeyToAccount(privateKey));
|
|
821
|
+
await this.setAccount(await this.network.privateKeyToAccount(privateKey));
|
|
797
822
|
await this.displayAccountAddress();
|
|
798
823
|
}
|
|
799
824
|
catch (error) {
|
|
@@ -812,7 +837,8 @@ class Wallet {
|
|
|
812
837
|
});
|
|
813
838
|
if (useExistingMnemonic) {
|
|
814
839
|
useMnemonic = true;
|
|
815
|
-
this.setAccount(await this.network.accountFromMnemonic(existingMnemonic));
|
|
840
|
+
await this.setAccount(await this.network.accountFromMnemonic(existingMnemonic));
|
|
841
|
+
existingMnemonic = null;
|
|
816
842
|
}
|
|
817
843
|
}
|
|
818
844
|
if (!useMnemonic) {
|
|
@@ -834,10 +860,10 @@ class Wallet {
|
|
|
834
860
|
],
|
|
835
861
|
default: 12
|
|
836
862
|
});
|
|
837
|
-
this.setAccount(await this.network.createAccountFromMnemonic(wordCount));
|
|
863
|
+
await this.setAccount(await this.network.createAccountFromMnemonic(wordCount));
|
|
838
864
|
}
|
|
839
865
|
else {
|
|
840
|
-
this.setAccount(await this.network.createAccount());
|
|
866
|
+
await this.setAccount(await this.network.createAccount());
|
|
841
867
|
}
|
|
842
868
|
}
|
|
843
869
|
// Check if there are addresses in the address book
|
|
@@ -942,39 +968,7 @@ class UIManager {
|
|
|
942
968
|
console.log(table.toString());
|
|
943
969
|
}
|
|
944
970
|
}
|
|
945
|
-
|
|
946
|
-
const encryptionKey = await UIManager.getEncryptionKey();
|
|
947
|
-
let wallet;
|
|
948
|
-
try {
|
|
949
|
-
wallet = new Wallet(encryptionKey);
|
|
950
|
-
}
|
|
951
|
-
catch (error) {
|
|
952
|
-
console.error(errorMessage(error));
|
|
953
|
-
Wallet.displayError('Wrong password.');
|
|
954
|
-
process.exit(1);
|
|
955
|
-
}
|
|
956
|
-
const accountExists = await wallet.getMnemonic();
|
|
957
|
-
if (!accountExists) {
|
|
958
|
-
const confirmedKey = await UIManager.confirmEncryptionKey();
|
|
959
|
-
if (confirmedKey !== encryptionKey) {
|
|
960
|
-
Wallet.displayError('Passwords do not match. Please try again.');
|
|
961
|
-
process.exit(1);
|
|
962
|
-
}
|
|
963
|
-
}
|
|
964
|
-
try {
|
|
965
|
-
await wallet.initialize();
|
|
966
|
-
if (accountExists)
|
|
967
|
-
await wallet.displayAccountAddress();
|
|
968
|
-
}
|
|
969
|
-
catch (error) {
|
|
970
|
-
Wallet.displayError('Failed to initialize wallet.', error);
|
|
971
|
-
process.exit(1);
|
|
972
|
-
}
|
|
973
|
-
process.on('exit', () => {
|
|
974
|
-
wallet.clearAccountData();
|
|
975
|
-
UIManager.displayExitPhrase();
|
|
976
|
-
});
|
|
977
|
-
async function mainMenu() {
|
|
971
|
+
async function mainMenu(wallet) {
|
|
978
972
|
const { action } = await inquirer.prompt({
|
|
979
973
|
type: 'list',
|
|
980
974
|
name: 'action',
|
|
@@ -990,20 +984,76 @@ async function mainMenu() {
|
|
|
990
984
|
switch (action) {
|
|
991
985
|
case 'transferFunds':
|
|
992
986
|
await wallet.transferFunds();
|
|
993
|
-
return mainMenu();
|
|
987
|
+
return mainMenu(wallet);
|
|
994
988
|
case 'balance':
|
|
995
989
|
await wallet.showBalance();
|
|
996
|
-
return mainMenu();
|
|
990
|
+
return mainMenu(wallet);
|
|
997
991
|
case 'showTransactions':
|
|
998
992
|
await wallet.showTransactions();
|
|
999
|
-
return mainMenu();
|
|
993
|
+
return mainMenu(wallet);
|
|
1000
994
|
case 'account':
|
|
1001
995
|
await wallet.loadAccount(true);
|
|
1002
|
-
return mainMenu();
|
|
996
|
+
return mainMenu(wallet);
|
|
1003
997
|
case 'exit':
|
|
1004
|
-
|
|
998
|
+
return;
|
|
999
|
+
}
|
|
1000
|
+
}
|
|
1001
|
+
let activeWallet = null;
|
|
1002
|
+
let shutdownPromise = null;
|
|
1003
|
+
async function shutdown() {
|
|
1004
|
+
if (!shutdownPromise) {
|
|
1005
|
+
shutdownPromise = (async () => {
|
|
1006
|
+
if (activeWallet) {
|
|
1007
|
+
await activeWallet.clearAccountData();
|
|
1008
|
+
activeWallet = null;
|
|
1009
|
+
}
|
|
1010
|
+
UIManager.displayExitPhrase();
|
|
1011
|
+
})();
|
|
1012
|
+
}
|
|
1013
|
+
await shutdownPromise;
|
|
1014
|
+
}
|
|
1015
|
+
process.once('SIGINT', () => {
|
|
1016
|
+
void shutdown().finally(() => process.exit(130));
|
|
1017
|
+
});
|
|
1018
|
+
async function run() {
|
|
1019
|
+
UIManager.displayWelcome();
|
|
1020
|
+
let encryptionKey = await UIManager.getEncryptionKey();
|
|
1021
|
+
try {
|
|
1022
|
+
const wallet = new Wallet(encryptionKey);
|
|
1023
|
+
activeWallet = wallet;
|
|
1024
|
+
const databaseExisted = wallet.hasStoredDatabase();
|
|
1025
|
+
try {
|
|
1026
|
+
await wallet.connect();
|
|
1027
|
+
}
|
|
1028
|
+
catch (error) {
|
|
1029
|
+
console.error(errorMessage(error));
|
|
1030
|
+
Wallet.displayError('Wrong password.');
|
|
1031
|
+
process.exitCode = 1;
|
|
1032
|
+
return;
|
|
1033
|
+
}
|
|
1034
|
+
if (!databaseExisted) {
|
|
1035
|
+
const confirmedKey = await UIManager.confirmEncryptionKey();
|
|
1036
|
+
if (confirmedKey !== encryptionKey) {
|
|
1037
|
+
Wallet.displayError('Passwords do not match. Please try again.');
|
|
1038
|
+
process.exitCode = 1;
|
|
1039
|
+
return;
|
|
1040
|
+
}
|
|
1041
|
+
}
|
|
1042
|
+
encryptionKey = null;
|
|
1043
|
+
try {
|
|
1044
|
+
await wallet.initialize();
|
|
1045
|
+
await wallet.displayAccountAddress();
|
|
1046
|
+
await mainMenu(wallet);
|
|
1047
|
+
}
|
|
1048
|
+
catch (error) {
|
|
1049
|
+
Wallet.displayError('Failed to initialize wallet.', error);
|
|
1050
|
+
process.exitCode = 1;
|
|
1051
|
+
}
|
|
1052
|
+
}
|
|
1053
|
+
finally {
|
|
1054
|
+
encryptionKey = null;
|
|
1055
|
+
await shutdown();
|
|
1005
1056
|
}
|
|
1006
1057
|
}
|
|
1007
|
-
|
|
1008
|
-
mainMenu();
|
|
1058
|
+
await run();
|
|
1009
1059
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,GAAG,MAAM,KAAK,CAAC;AA2BtB,MAAM,QAAQ,GAAQ,KAAK,CAAC;AAC5B,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,SAAS,mBAAmB,CAAC,KAAc;IACvC,OAAO,CACH,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,OAAQ,KAAoC,CAAC,KAAK,KAAK,QAAQ,CAClE,CAAC;AACN,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAChC,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED,OAAO,oBAAoB,MAAM,8BAA8B,CAAC;AAChE,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;AAE9D,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACtB,OAAO,CAAC,IAAI,EAAE,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,MAAM,MAAM;IACA,EAAE,CAAU;IACZ,OAAO,CAAsB;IAC7B,eAAe,CAAgB;IAC/B,YAAY,CAAe;IAEnC,YAAY,aAAqB;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;QAEjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC1B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,EAAE,GAAG,IAAI,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;QAExD,IAAI,CAAC,OAAO,GAAG,IAAsC,CAAC;QACtD,IAAI,CAAC,eAAe,GAAG,IAAgC,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,YAAY,CAAC,GAAoB;QAC7B,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAEjC,4BAA4B;QAC5B,IAAI,GAAG,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,GAAG,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC;QAClC,CAAC;QAED,2EAA2E;QAC3E,IAAI,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE/B,4DAA4D;QAC5D,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,IAAI,CAAC;YACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAEhE,uCAAuC;YACvC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;YACvB,KAAK,MAAM,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBACjE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;oBAC5B,qCAAqC;oBACrC,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG;wBAC7B,KAAK,EAAE,KAAK;wBACZ,QAAQ,EAAE,CAAC;qBACd,CAAC;gBACN,CAAC;qBAAM,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpC,mBAAmB;oBACnB,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,GAAG;wBAC7B,KAAK,EAAE,KAAK,CAAC,KAAK;wBAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC;qBAChC,CAAC;gBACN,CAAC;gBACD,4DAA4D;YAChE,CAAC;YAED,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACvD,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,YAAY,CAAC,iCAAiC,CAAC,CAAC;gBACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;YACD,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/D,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3E,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAE9C,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YAExC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,CAAC,YAAY,CAAC,+BAA+B,CAAC,CAAC;gBACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC;QAEL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,YAAY,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;YACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,OAA6B;QACpC,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO;QACX,CAAC;QACD,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAEtE,OAAO,OAAO,IAAI,IAAI,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,WAAW;QACb,OAAO,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,qBAAqB;QAEvB,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC;YAC9C,KAAK,EAAE;gBACH,IAAI,EAAE,CAAC,OAAO,CAAC;aAClB;SACJ,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACpB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QAEpF,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAC,IAAI,EAAC,EAAE;YAC5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,IAAI,EAAE,CAA+B,CAAC;YAC/E,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC,CAAC;QAEJ,OAAO,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,aAAa,CACf,cAA+B,EAC/B,EAAE,UAAU,GAAG,KAAK,KAA+B,EAAE;QAErD,2DAA2D;QAC3D,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAChD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAEzC,oDAAoD;YACpD,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAExE,8DAA8D;YAC9D,IAAI,SAAS,KAAK,CAAC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC1E,MAAM,MAAM,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC;gBAC1E,OAAO,MAAM,GAAG,MAAM,CAAC;YAC3B,CAAC;YAED,OAAO,SAAS,GAAG,SAAS,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,eAA0C,CAAC;QAE/C,IAAI,UAAU,EAAE,CAAC;YACb,8DAA8D;YAC9D,eAAe,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACJ,8BAA8B;YAC9B,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBACtC,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,qBAAqB;gBAC9B,OAAO,EAAE,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC;aACrD,CAAC,CAAC;YACH,eAAe,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,CAAC,eAAe,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACvD,CAAC;QAED,6CAA6C;QAC7C,mEAAmE;QACnE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE7D,IAAI,CAAC,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;YAChJ,4EAA4E;YAC5E,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG;gBACtC,KAAK,EAAE,OAAO,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9D,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;aACvB,CAAC;QACN,CAAC;aAAM,IAAI,mBAAmB,CAAC,YAAY,CAAC,EAAE,CAAC;YAC3C,sCAAsC;YACtC,YAAY,CAAC,KAAK,GAAG,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACnD,YAAY,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG;gBACtC,KAAK,EAAE,CAAC;gBACR,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE;aACvB,CAAC;QACN,CAAC;QAED,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,QAAQ,GAAG,KAAK;QAC9B,IAAI,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAEtC,MAAM,WAAW,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAE3C,IAAI,QAAQ,EAAE,CAAC;YACX,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnC,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnC,WAAW,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACxC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACJ,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YACrC,WAAW,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACrD,WAAW,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC3C,CAAC;QAED,IAAI,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC;YACvB,IAAI,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC1C,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,2BAA2B;gBACpC,OAAO,EAAE,WAAW;aACvB,CAAC,CAAC;YAEH,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAC9B,OAAO;YACX,CAAC;YAED,IAAI,aAAa,KAAK,qBAAqB,EAAE,CAAC;gBAC1C,MAAM,kBAAkB,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;gBACzD,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBAChD,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EAAE,gCAAgC;oBACzC,OAAO,EAAE,kBAAkB;iBAC9B,CAAC,CAAC;gBAEH,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;oBAClC,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC;gBAED,QAAQ,iBAAiB,EAAE,CAAC;oBACxB,KAAK,gBAAgB;wBACjB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBACnC,MAAM;gBACd,CAAC;gBACD,OAAO;YACX,CAAC;YAED,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;gBACrC,MAAM,aAAa,GAAG,CAAC,kBAAkB,EAAE,kCAAkC,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;gBAChH,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBAC3C,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,0BAA0B;oBACnC,OAAO,EAAE,aAAa;iBACzB,CAAC,CAAC;gBAEH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC;gBAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvD,IAAI,CAAC,gBAAgB;oBAAE,OAAO;gBAE9B,aAAa,GAAG,YAAY,CAAC;YACjC,CAAC;YAED,QAAQ,aAAa,EAAE,CAAC;gBACpB,KAAK,kCAAkC;oBACnC,OAAO,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;wBACX,4CAA4C;wBAC5C,OAAO;oBACX,CAAC;oBACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBACzB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBACnC,MAAM;gBACV,KAAK,oBAAoB;oBACrB,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,MAAM;gBACV,KAAK,kBAAkB;oBACnB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpD,IAAI,eAAe,EAAE,CAAC;wBAClB,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;wBACjC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBACvC,CAAC;oBACD,MAAM;YACd,CAAC;YAED,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;gBACrC,MAAM,aAAa,GAAG,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,SAAS,CAAC,CAAC;gBAC5E,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBAC3C,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,cAAc;oBACpB,OAAO,EAAE,0BAA0B;oBACnC,OAAO,EAAE,aAAa;iBACzB,CAAC,CAAC;gBAEH,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACtC,CAAC;gBAED,QAAQ,YAAY,EAAE,CAAC;oBACnB,KAAK,oBAAoB;wBACrB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBACnC,MAAM;oBACV,KAAK,kBAAkB;wBACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;wBAC5B,MAAM;gBACd,CAAC;gBACD,OAAO;YACX,CAAC;YAGD,IAAI,aAAa,KAAK,oBAAoB,EAAE,CAAC;gBACzC,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvD,IAAI,CAAC,gBAAgB;oBAAE,OAAO;gBAC9B,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAClC,CAAC;YAED,IAAI,aAAa,KAAK,gBAAgB,EAAE,CAAC;gBACrC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;YAC/B,CAAC;YAED,OAAO;QACX,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB;QAClB,IAAI,MAAM,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YAC1B,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC/C,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,qFAAqF;gBAC9F,OAAO,EAAE,KAAK;aACjB,CAAC,CAAC;YAEH,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACpB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACvC,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,8CAA8C;YACvD,IAAI,EAAE,GAAG;YACT,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;oBAAE,OAAO,IAAI,CAAC;gBACrC,OAAO,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,gEAAgE,CAAC;YACpH,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YAAE,OAAO,IAAI,CAAC;QAElC,OAAO,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAExC,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;YAChD,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;QAE9E,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC;YAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;YACzB,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC;SACtB,CAAC,CAAC;QAEH,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE;YAClC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;QACjF,MAAM,WAAW,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAA0B,EAAE,EAAE,CAAC,CAAC;YAC5E,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC,CAAC,CAAC;QAEJ,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAEnD,0CAA0C;QAC1C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACxC,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,oBAAoB;YAC7B,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAK,GAAG,EAAE,EAAwB,EAAE;gBACjF,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;gBACpB,OAAO,WAAW;qBACb,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;qBACpI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACX,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;oBACrE,KAAK,EAAE,KAAK,CAAC,OAAO;iBACvB,CAAC,CAAC;qBACF,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,qCAAqC;YACvF,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,SAAS;YAAE,OAAO;QAEvB,IAAI,OAAO,GAAG,SAAS,CAAC;QAGxB,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE/C,IAAI,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC;QAC7C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,GAAG,CAAC,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC3B,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,oBAAoB;gBAC7B,OAAO;aACV,CAAC,CAAC,CAAC,KAAK,CAAC;QACd,CAAC;QAED,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACrC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,qBAAqB;YAC9B,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;oBAAE,OAAO,IAAI,CAAC;gBACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uDAAuD,CAAC;YAC9H,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACvB,OAAO;QACX,CAAC;QAED,2BAA2B;QAC3B,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAErC,wBAAwB;QACxB,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACjD,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC;YAChB,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,MAAM;SAClB,CAAC,CAAC,KAAK,EAAE,CAAC;QAEX,IAAI,CAAC;YACD,IAAI,QAA8C,CAAC;YACnD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAChD,CAAC;YACD,IAAI,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;gBAC7C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;oBACrC,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;gBAC3E,CAAC;gBACD,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;oBACpC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBAC1E,CAAC;gBACD,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;YAC9F,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,QAAsC,CAAuB,CAAC;YAEvH,OAAO,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;YAE1C,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,IAAI,OAAO,EAAE,IAAI,IAAI,cAAc,CAAC;YAEpF,yCAAyC;YACzC,IAAI,cAAc,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC;gBACD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAE9C,iDAAiD;gBACjD,IAAI,KAAK,KAAK,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC;oBAC7C,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;gBAC1E,CAAC;qBAAM,CAAC;oBACJ,cAAc,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;gBACtF,CAAC;gBAED,iDAAiD;gBACjD,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;YAExE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;YAClF,CAAC;YAED,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;YAEpG,6BAA6B;YAC7B,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;YAE7F,sEAAsE;YACtE,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;YACvF,IAAI,CAAC,eAAe,EAAE,CAAC;gBACnB,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACzC,CAAC;QAEL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACnC,IAAI,CAAC,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACxC,CAAC;IACL,CAAC;IAED;;;OAGG;IACH,uBAAuB,CAAC,KAAc;QAClC,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,QAAQ,IAAI,KAAK;YAC3E,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;YACtB,CAAC,CAAC,IAAI,CAAC;QACX,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC7E,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,YAAY,CAAC,OAAe,EAAE,IAAc;QAC/C,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,OAAO,CAAC;YACf,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE;YACxB,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,IAAI,IAAI,EAAE,CAAC;YACP,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,UAAU,CAAC,IAA4B;QACnC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE;YAC1C,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,KAAK;SAChB,CAAC,CAAC,OAAO,CAAC,2BAA2B,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,iBAAiB,CACnB,SAAiB,EACjB,KAAa,EACb,MAAc,EACd,IAAY,EACZ,OAAe;QAEf,MAAM,WAAW,GAAG;YAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS;YACT,KAAK;YACL,MAAM;YACN,IAAI;YACJ,OAAO;SACV,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,WAAW,CAAwB,IAAI,EAAE,CAAC;QAE7H,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;YACpE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE;SAC5B,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC,CAAC,CAAC;QAC/E,CAAC;QAED,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;YAC3C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAA8B,CAAC;YAC3G,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC/E,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;YACzE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QACnF,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAClC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACnC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,kDAAkD;SAC9D,CAAC,CAAC;QAEH,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;YAEvE,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;gBACvB,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;gBACvE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;aAC7B,CAAC,CAAC;YAEH,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,qBAAqB;QACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAkC,IAAI,EAAE,CAAC;QACxG,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO;YACP,IAAI,EAAE,IAAI,CAAC,IAAI;SAClB,CAAC,CAAC,CAAC;QAEJ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;gBACvB,IAAI,EAAE,CAAC,cAAc,CAAC;gBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE;aAC9B,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9B,OAAO;QACX,CAAC;QAED,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAEnD,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,iBAAiB;YACvB,OAAO,EAAE,8BAA8B;YACvC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAC/B,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,KAAK,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI;gBACrE,KAAK,EAAE,KAAK,CAAC,OAAO;aACvB,CAAC,CAAC;SACN,CAAC,CAAC;QAEH,IAAI,CAAC,eAAe;YAAE,OAAO;QAE7B,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC5C,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,+CAA+C;YACxD,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACjE,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;gBACvB,IAAI,EAAE,CAAC,cAAc,CAAC;gBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;aAC7B,CAAC,CAAC;YACH,KAAK,CAAC,IAAI,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAClC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,wBAAwB,CAC1B,OAAe,EACf,KAAa,EACb,MAAc,EACd,IAAY,EACZ,OAAe;QAEf,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;YACpE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;SAC7B,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAEzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAA8B,CAAC;QACtG,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QAEjD,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACvG,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,eAAe,CAAC,QAAQ,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC;QAE5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,gBAAgB;IAEhB,CAAC;IAED,KAAK,CAAC,qBAAqB;QAEvB,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;YAClD,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;YAC1B,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC;YAChD,OAAO;QACX,CAAC;QACD,KAAK,CAAC,IAAI,CACN,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC,EACpC,CAAC,aAAa,EAAE,OAAO,CAAC,UAAU,CAAC,CACtC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACX,KAAK,CAAC,IAAI,CAAC,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,0EAA0E,CAAC,CAAC,CAAC;QACxG,CAAC;aAAM,CAAC;YACJ,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,sDAAsD,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACvD,MAAM,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAC3E,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;QAE9C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,IAAI,OAAO,EAAE,CAAC;YACV,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,0BAA0B,IAAI,CAAC,eAAe,CAAC,IAAI,uCAAuC,CAAC,CAAC;YACxG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;QAC7D,IAAI,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACrC,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,mCAAmC;YAC5C,OAAO,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,QAAQ,IAAI,OAAO,CAAC;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;QACjC,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;QACzD,MAAM,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAE3D,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;QAE1C,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,oBAAoB,CAAC;YAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;SAC7B,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,CAAC,kBAAkB,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC3C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,cAAc;QAChB,yCAAyC;QACzC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,SAAS,GAAa,EAAE,CAAC;QAE7B,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YACzC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,CAAC;QAED,6CAA6C;QAC7C,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC;SACrC,CAAC,CAAC,CAAC;QAEJ,oDAAoD;QACpD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACvC,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,UAAU;YAChB,OAAO,EAAE,iBAAiB;YAC1B,MAAM,EAAE,CAAC,aAAsC,EAAE,KAAK,GAAG,EAAE,EAAwB,EAAE;gBACjF,KAAK,GAAG,KAAK,IAAI,EAAE,CAAC;gBAEpB,MAAM,eAAe,GAAG,WAAW;qBAC9B,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;qBAClI,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACX,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,KAAK,EAAE,KAAK,CAAC,KAAK;iBACrB,CAAC,CAAC,CAAC;gBAER,mEAAmE;gBACnE,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,GAAG,eAAe,CAAC,CAAC;YAC/D,CAAC;SACJ,CAAC,CAAC;QAEH,2CAA2C;QAC3C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,yBAAyB;QACzB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC;YACtD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;QAEzD,IAAI,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,YAAY,CAAC,6BAA6B,EAAE,4BAA4B,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACzC,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,sCAAsC;YAC/C,IAAI,EAAE,GAAG;YACT,QAAQ,EAAE,CAAC,KAAa,EAAE,EAAE;gBACxB,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;oBAAE,OAAO,IAAI,CAAC;gBACrC,OAAO,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,4DAA4D,CAAC;YAChH,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACrB,OAAO,CAAE,2BAA2B;QACxC,CAAC;QAED,IAAI,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QAChD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,gBAAgB;QAClB,IAAI,gBAAgB,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAChD,IAAI,WAAW,GAAG,KAAK,CAAC;QAExB,IAAI,gBAAgB,EAAE,CAAC;YACnB,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAClD,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,0CAA0C;gBACnD,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,IAAI,mBAAmB,EAAE,CAAC;gBACtB,WAAW,GAAG,IAAI,CAAC;gBACnB,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAC9E,CAAC;QACL,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBACjD,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EAAE,+BAA+B;gBACxC,OAAO,EAAE,IAAI;aAChB,CAAC,CAAC;YAEH,IAAI,kBAAkB,EAAE,CAAC;gBACrB,8BAA8B;gBAC9B,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;oBACxC,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE,gCAAgC;oBACzC,OAAO,EAAE;wBACL,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,EAAE,EAAE;wBAC1C,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,EAAE,EAAE;qBAChD;oBACD,OAAO,EAAE,EAAE;iBACd,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,SAAoB,CAAC,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;YACxD,CAAC;QACL,CAAC;QAED,mDAAmD;QACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAE9E,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBAC9C,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,6BAA6B,WAAW,CAAC,MAAM,uCAAuC;gBAC/F,OAAO,EAAE,KAAK;aACjB,CAAC,CAAC;YAEH,IAAI,eAAe,EAAE,CAAC;gBAElB,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBAE7B,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;oBACvB,IAAI,EAAE,CAAC,cAAc,CAAC;oBACtB,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;iBAC7B,CAAC,CAAC;gBACH,KAAK,CAAC,IAAI,CAAC,CAAC,qCAAqC,CAAC,CAAC,CAAC;gBACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClC,CAAC;QACL,CAAC;QAED,IAAI,OAAO,GAAG,2DAA2D,CAAC;QAC1E,IAAI,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAC3B,OAAO,IAAI,eAAe,CAAC;QAC/B,CAAC;QACD,OAAO,IAAI,IAAI,CAAC;QAEhB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC5C,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,eAAe;YACrB,OAAO;YACP,OAAO,EAAE,KAAK;SACjB,CAAC,CAAC;QAEH,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC;QACvC,CAAC;IACL,CAAC;CACJ;AAED,MAAM,SAAS;IACX,MAAM,CAAC,cAAc;QACjB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAE,0BAA0B;QACpD,OAAO,CAAC,GAAG,CAAC;;+CAE2B,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAE,mBAAmB;IAChD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,gBAAgB;QACzB,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,KAAK;YACX,OAAO,EAAE,WAAW;YACpB,IAAI,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,OAAO,GAAG,CAAC;IACf,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,oBAAoB;QAC7B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACzC,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,kBAAkB;YAC3B,IAAI,EAAE,GAAG;SACZ,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,iBAAiB;QACpB,MAAM,OAAO,GAAG;YACZ,8BAA8B;YAC9B,0BAA0B;YAC1B,sBAAsB;YACtB,0CAA0C;YAC1C,uEAAuE;YACvE,qEAAqE;YACrE,0DAA0D;YAC1D,kCAAkC;YAClC,6BAA6B;YAC7B,sDAAsD;YACtD,uFAAuF;YACvF,4CAA4C;YAC5C,oBAAoB;YACpB,qDAAqD;YACrD,4EAA4E;YAC5E,8EAA8E;YAC9E,+CAA+C;YAC/C,4FAA4F;YAC5F,8DAA8D;YAC9D,kCAAkC;YAClC,oEAAoE;YACpE,uCAAuC;YACvC,8CAA8C;YAC9C,0CAA0C;YAC1C,mDAAmD;SACtD,CAAC;QACF,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAEzE,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC;YACvB,IAAI,EAAE,CAAC,aAAa,CAAC;YACrB,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,EAAE;YAC3B,QAAQ,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;QAE3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClC,CAAC;CACJ;AAED,SAAS,CAAC,cAAc,EAAE,CAAC;AAC3B,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;AACzD,IAAI,MAAc,CAAC;AAEnB,IAAI,CAAC;IACD,MAAM,GAAG,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC;AACvC,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACb,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;IACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;AAEjD,IAAI,CAAC,aAAa,EAAE,CAAC;IACjB,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;IAC5D,IAAI,YAAY,KAAK,aAAa,EAAE,CAAC;QACjC,MAAM,CAAC,YAAY,CAAC,2CAA2C,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC;AAED,IAAI,CAAC;IACD,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAC1B,IAAI,aAAa;QAAE,MAAM,MAAM,CAAC,qBAAqB,EAAE,CAAC;AAC5D,CAAC;AAAC,OAAO,KAAK,EAAE,CAAC;IACb,MAAM,CAAC,YAAY,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;IACpB,MAAM,CAAC,gBAAgB,EAAE,CAAC;IAC1B,SAAS,CAAC,iBAAiB,EAAE,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,KAAK,UAAU,QAAQ;IACnB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACrC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,4BAA4B;QACrC,OAAO,EAAE;YACL,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,eAAe,EAAE;YAClD,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE;YAC1C,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,kBAAkB,EAAE;YAC1D,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,SAAS,EAAE;YAC9C,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;SAClC;KACJ,CAAC,CAAC;IAEH,QAAQ,MAAM,EAAE,CAAC;QACb,KAAK,eAAe;YAChB,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC;YAC7B,OAAO,QAAQ,EAAE,CAAC;QACtB,KAAK,SAAS;YACV,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;YAC3B,OAAO,QAAQ,EAAE,CAAC;QACtB,KAAK,kBAAkB;YACnB,MAAM,MAAM,CAAC,gBAAgB,EAAE,CAAC;YAChC,OAAO,QAAQ,EAAE,CAAC;QACtB,KAAK,SAAS;YACV,MAAM,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC/B,OAAO,QAAQ,EAAE,CAAC;QACtB,KAAK,MAAM;YACP,OAAO,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;AACL,CAAC;AAED,wBAAwB;AACxB,QAAQ,EAAE,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type { SignedTransaction, TransferOptions, WalletAccount } from './types.js';
|
|
3
|
-
declare class Web3Network extends BaseEvmNetwork {
|
|
4
|
-
getBalance(address: string): Promise<string>;
|
|
5
|
-
getTokenBalance(address: string, tokenSymbol: string): Promise<number>;
|
|
6
|
-
getTokenBalances(address: string): Promise<Array<[string, string | number]>>;
|
|
7
|
-
transfer(_from: WalletAccount, _to: string, _amount: number | string, _options?: TransferOptions): Promise<SignedTransaction>;
|
|
8
|
-
transferToken(_from: WalletAccount, _to: string, _amount: number | string, _tokenSymbol: string, _options?: TransferOptions): Promise<SignedTransaction>;
|
|
9
|
-
estimateGas(_transaction: Parameters<BaseEvmNetwork['estimateGas']>[0]): Promise<bigint>;
|
|
10
|
-
getGasPrice(): Promise<bigint>;
|
|
11
|
-
sendSignedTransaction(_signedTx: SignedTransaction | string): Promise<unknown>;
|
|
12
|
-
}
|
|
1
|
+
import Web3Network from './lib/Web3Network.js';
|
|
13
2
|
declare const hyperliquid: {
|
|
14
3
|
NetworkClass: typeof Web3Network;
|
|
15
4
|
name: string;
|
|
16
5
|
url: string;
|
|
17
6
|
nativeToken: string;
|
|
18
7
|
explorer: string;
|
|
8
|
+
chainId: number;
|
|
19
9
|
tokens: {
|
|
20
|
-
|
|
10
|
+
PURR: {
|
|
21
11
|
address: string;
|
|
22
|
-
decimals: number;
|
|
23
12
|
};
|
|
24
13
|
};
|
|
25
14
|
};
|
|
@@ -1,54 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { getHyperliquidPerpsWithdrawableUsdc, getHyperliquidSpotBalance } from '../swap/hyperliquid.js';
|
|
3
|
-
class Web3Network extends BaseEvmNetwork {
|
|
4
|
-
async getBalance(address) {
|
|
5
|
-
return String(await getHyperliquidSpotBalance(address, this.config.nativeToken));
|
|
6
|
-
}
|
|
7
|
-
async getTokenBalance(address, tokenSymbol) {
|
|
8
|
-
if (tokenSymbol === this.config.nativeToken) {
|
|
9
|
-
return Number(await this.getBalance(address));
|
|
10
|
-
}
|
|
11
|
-
if (!this.config.tokens[tokenSymbol]) {
|
|
12
|
-
throw new Error(`Token ${tokenSymbol} not supported`);
|
|
13
|
-
}
|
|
14
|
-
return getHyperliquidSpotBalance(address, tokenSymbol);
|
|
15
|
-
}
|
|
16
|
-
async getTokenBalances(address) {
|
|
17
|
-
const balances = [
|
|
18
|
-
[`${this.config.nativeToken} Spot`, await this.getBalance(address)]
|
|
19
|
-
];
|
|
20
|
-
for (const symbol of Object.keys(this.config.tokens)) {
|
|
21
|
-
balances.push([`${symbol} Spot`, await this.getTokenBalance(address, symbol)]);
|
|
22
|
-
}
|
|
23
|
-
balances.push([`${this.config.nativeToken} Perps`, await getHyperliquidPerpsWithdrawableUsdc(address)]);
|
|
24
|
-
return balances;
|
|
25
|
-
}
|
|
26
|
-
async transfer(_from, _to, _amount, _options = {}) {
|
|
27
|
-
throw new Error('Hyperliquid spot transfers are not supported from the generic network menu yet. Use the swap flow for trading and BTC withdrawal.');
|
|
28
|
-
}
|
|
29
|
-
async transferToken(_from, _to, _amount, _tokenSymbol, _options = {}) {
|
|
30
|
-
throw new Error('Hyperliquid spot token transfers are not supported from the generic network menu yet. Use the swap flow for trading and BTC withdrawal.');
|
|
31
|
-
}
|
|
32
|
-
async estimateGas(_transaction) {
|
|
33
|
-
throw new Error('Hyperliquid spot balances do not use EVM gas estimation.');
|
|
34
|
-
}
|
|
35
|
-
async getGasPrice() {
|
|
36
|
-
throw new Error('Hyperliquid spot balances do not use EVM gas prices.');
|
|
37
|
-
}
|
|
38
|
-
async sendSignedTransaction(_signedTx) {
|
|
39
|
-
throw new Error('Hyperliquid spot transaction broadcasting is not supported from the generic network menu yet.');
|
|
40
|
-
}
|
|
41
|
-
}
|
|
1
|
+
import Web3Network from './lib/Web3Network.js';
|
|
42
2
|
const hyperliquid = {
|
|
43
3
|
NetworkClass: Web3Network,
|
|
44
4
|
name: '[ERC-20] Hyperliquid',
|
|
45
|
-
url: 'https://
|
|
46
|
-
nativeToken: '
|
|
47
|
-
explorer: 'https://
|
|
5
|
+
url: 'https://rpc.hyperliquid.xyz/evm',
|
|
6
|
+
nativeToken: 'HYPE',
|
|
7
|
+
explorer: 'https://hyperscan.com/tx/',
|
|
8
|
+
chainId: 999,
|
|
48
9
|
tokens: {
|
|
49
|
-
|
|
50
|
-
address: '
|
|
51
|
-
decimals: 8
|
|
10
|
+
'PURR': {
|
|
11
|
+
address: '0x9b498C3c8A0b8CD8BA1D9851d40D186F1872b44E',
|
|
52
12
|
}
|
|
53
13
|
}
|
|
54
14
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hyperliquid.js","sourceRoot":"","sources":["../../network/hyperliquid.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"hyperliquid.js","sourceRoot":"","sources":["../../network/hyperliquid.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,sBAAsB,CAAC;AAG/C,MAAM,WAAW,GAAG;IAChB,YAAY,EAAE,WAAW;IACzB,IAAI,EAAE,sBAAsB;IAC5B,GAAG,EAAE,iCAAiC;IACtC,WAAW,EAAE,MAAM;IACnB,QAAQ,EAAE,2BAA2B;IACrC,OAAO,EAAE,GAAG;IACZ,MAAM,EAAE;QACJ,MAAM,EAAE;YACJ,OAAO,EAAE,4CAA4C;SACxD;KACJ;CACoB,CAAC;AAE1B,eAAe,WAAW,CAAC"}
|
|
@@ -8,6 +8,7 @@ export default abstract class BaseNetwork implements BaseNetworkContract {
|
|
|
8
8
|
abstract transferToken(from: WalletAccount, to: string, amount: number | string, tokenSymbol: string, options?: TransferOptions): Promise<SignedTransaction | string | unknown>;
|
|
9
9
|
abstract estimateGas(transaction: unknown): Promise<unknown>;
|
|
10
10
|
abstract getGasPrice(): Promise<unknown>;
|
|
11
|
+
abstract validatePrivateKey(privateKey: string): boolean;
|
|
11
12
|
abstract privateKeyToAccount(privateKey: string): Promise<WalletAccount>;
|
|
12
13
|
abstract createAccount(): Promise<WalletAccount>;
|
|
13
14
|
abstract accountFromMnemonic(mnemonic: string): Promise<WalletAccount>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseNetwork.js","sourceRoot":"","sources":["../../../network/lib/BaseNetwork.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAgB,WAAW;IACrC,MAAM,CAAgB;IACtB,IAAI,CAAS;IAEb,YAAY,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseNetwork.js","sourceRoot":"","sources":["../../../network/lib/BaseNetwork.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,OAAO,OAAgB,WAAW;IACrC,MAAM,CAAgB;IACtB,IAAI,CAAS;IAEb,YAAY,MAAqB;QAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;IAC5B,CAAC;IAqCD,KAAK,CAAC,gBAAgB,CAAC,OAAe;QAClC,MAAM,QAAQ,GAAqC,EAAE,CAAC;QAEtD,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QAEhE,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;YACjE,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,QAAQ,CAAC;IACpB,CAAC;CAGJ"}
|
|
@@ -23,6 +23,7 @@ export default class BitcoinNetwork extends BaseNetwork {
|
|
|
23
23
|
estimateTxSize(numInputs: number, numOutputs: number): number;
|
|
24
24
|
createAccountDetails(keyPair: BitcoinKeyPair): WalletAccount;
|
|
25
25
|
createAccount(): Promise<WalletAccount>;
|
|
26
|
+
validatePrivateKey(privateKeyWIF: string): boolean;
|
|
26
27
|
privateKeyToAccount(privateKeyWIF: string): Promise<WalletAccount>;
|
|
27
28
|
accountFromMnemonic(mnemonic: string): Promise<WalletAccount>;
|
|
28
29
|
createAccountFromMnemonic(wordCount?: 12 | 24): Promise<WalletAccount>;
|
|
@@ -121,6 +121,15 @@ export default class BitcoinNetwork extends BaseNetwork {
|
|
|
121
121
|
const keyPair = ECPair.makeRandom({ network: this.network });
|
|
122
122
|
return this.createAccountDetails(keyPair);
|
|
123
123
|
}
|
|
124
|
+
validatePrivateKey(privateKeyWIF) {
|
|
125
|
+
try {
|
|
126
|
+
ECPair.fromWIF(privateKeyWIF, this.network);
|
|
127
|
+
return true;
|
|
128
|
+
}
|
|
129
|
+
catch {
|
|
130
|
+
return false;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
124
133
|
async privateKeyToAccount(privateKeyWIF) {
|
|
125
134
|
try {
|
|
126
135
|
const keyPair = ECPair.fromWIF(privateKeyWIF, this.network);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BitcoinNetwork.js","sourceRoot":"","sources":["../../../network/lib/BitcoinNetwork.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,OAAO,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAQvC,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;AAChC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;AAmBlC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,WAAW;IAC3C,OAAO,CAAkB;IACzB,GAAG,CAAS;IAEpB,YAAY,MAAqB;QAC7B,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC;QAChD,IAAI,CAAC,OAAO,GAAG,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;QAC/F,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAe;QAC5B,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,YAAY,CAAsB,YAAY,OAAO,EAAE,CAAC,CAAC;YACjF,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC;YACpC,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC;YACxC,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,cAAc,GAAG,UAAU,CAAC,aAAa,CAAC;gBAClE,CAAC,YAAY,CAAC,cAAc,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAC;QACzD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,OAAe,EAAE,WAAmB;QACtD,IAAI,WAAW,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YAC1C,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,SAAS,WAAW,mCAAmC,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,IAAmB,EACnB,EAAU,EACV,MAAuB,EACvB,UAA2B,EAAE;QAE7B,IAAI,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;YAEtC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;YAEpB,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACvB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEnD,IAAI,CAAC,QAAQ,CAAC;oBACV,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,KAAK,EAAE,IAAI,CAAC,IAAI;oBAChB,cAAc,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;oBACzC,QAAQ,EAAE,UAAU;iBACvB,CAAC,CAAC;gBAEH,eAAe,IAAI,IAAI,CAAC,KAAK,CAAC;gBAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC;gBACvE,IAAI,eAAe,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;oBAC7C,MAAM;gBACV,CAAC;YACL,CAAC;YAED,IAAI,eAAe,GAAG,QAAQ,GAAG,OAAO,EAAE,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;YAChF,CAAC;YAED,IAAI,CAAC,SAAS,CAAC;gBACX,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,QAAQ;aAClB,CAAC,CAAC;YAEH,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC;YACvE,MAAM,WAAW,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CAAC;YAC9D,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;gBACpB,IAAI,CAAC,SAAS,CAAC;oBACX,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,WAAW;iBACrB,CAAC,CAAC;YACP,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;gBAE3B,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;oBAC3E,OAAO,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBACnE,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,KAAK,EAAE,CAAC;oBACT,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,EAAE,CAAC,CAAC;gBAClE,CAAC;YACL,CAAC;YAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,CAAC;QAE7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;QAChE,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,IAAY;QAC7B,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,IAAI,MAAM,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;QAC7D,CAAC;IACL,CAAC;IAED,cAAc,CAAC,SAAiB,EAAE,UAAkB;QAChD,OAAO,SAAS,GAAG,EAAE,GAAG,UAAU,GAAG,EAAE,GAAG,EAAE,CAAC;IACjD,CAAC;IAED,oBAAoB,CAAC,OAAuB;QACxC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;YACtC,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACzD,CAAC;QAED,OAAO;YACH,OAAO;YACP,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE;YAC3B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;SAC5D,CAAC;IACN,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,aAAqB;QAC3C,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YAC5D,OAAO,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,8CAA8C,OAAO,EAAE,CAAC,CAAC;QAC7E,CAAC;IACL,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,QAAgB;QACtC,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,iBAAiB,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEpC,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC;YACtD,CAAC,CAAC,KAAK,CAAC,UAAU;YAClB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAEpC,MAAM,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,gBAAgB,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAEnF,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YACxC,MAAM,EAAE,OAAO,CAAC,SAAS;YACzB,OAAO,EAAE,IAAI,CAAC,OAAO;SACxB,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QAED,OAAO;YACH,OAAO;YACP,UAAU,EAAE,OAAO,CAAC,KAAK,EAAE;YAC3B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YACzD,QAAQ;SACX,CAAC;IACN,CAAC;IAED,KAAK,CAAC,yBAAyB,CAAC,YAAqB,EAAE;QACnD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,SAAS,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,0CAA0C,GAAG,OAAO,CAAC,CAAC;QAC1E,CAAC;IACL,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAC7B,OAAO,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED,aAAa,CAAC,QAAgB;QAC1B,OAAO,QAAQ,GAAG,SAAS,CAAC;IAChC,CAAC;IAED,aAAa,CAAC,GAAoB;QAC9B,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAe;QAC1B,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,YAAY,CAAgB,YAAY,OAAO,OAAO,CAAC,CAAC;QAC9E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;IACL,CAAC;IAED,KAAK,CAAC,oBAAoB,CACtB,IAAmB,EACnB,EAAU,EACV,MAAuB,EACvB,UAA2B,EAAE;QAE7B,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,qBAAqB,CAAC,QAAoC;QAC5D,MAAM,cAAc,GAAG,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,cAAc,CAAC;QACzF,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,CAAC;QAED,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAClC,KAAK,EACL;gBACI,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACL,cAAc,EAAE,YAAY;iBAC/B;gBACD,IAAI,EAAE,cAAc;aACvB,EACD,MAAM,CACT,CAAC;YACF,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;QACnE,CAAC;IACL,CAAC;IAID,KAAK,CAAC,YAAY,CACd,IAAY,EACZ,UAAuB,EAAE,EACzB,eAAgC,MAAM;QAEtC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;QAE5D,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACxC,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,MAAM,IAAI,KAAK,CAAC,GAAG,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,GAAG,OAAO,EAAE,CAAC,CAAC;QAC3E,CAAC;QAED,OAAO,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,aAAa;QACf,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACnE,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,WAAW;QACb,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrE,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"BitcoinNetwork.js","sourceRoot":"","sources":["../../../network/lib/BitcoinNetwork.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import type { NetworkConfig, SignedTransaction, TransferOptions, WalletAccount }
|
|
|
4
4
|
export default class Web3Network extends BaseNetwork {
|
|
5
5
|
private web3;
|
|
6
6
|
constructor(config: NetworkConfig);
|
|
7
|
+
private formatPrivateKey;
|
|
7
8
|
getBalance(address: string): Promise<string>;
|
|
8
9
|
transfer(from: WalletAccount, to: string, amount: number | string, options?: TransferOptions): Promise<SignedTransaction>;
|
|
9
10
|
transferToken(from: WalletAccount, to: string, amount: number | string, tokenSymbol: string, options?: TransferOptions): Promise<SignedTransaction>;
|
|
@@ -12,6 +13,7 @@ export default class Web3Network extends BaseNetwork {
|
|
|
12
13
|
handleERC20Transfer(account: WalletAccount, token: string, recipient: string, amount: number | string): Promise<SignedTransaction>;
|
|
13
14
|
handleNativeTransfer(account: WalletAccount, recipient: string, amount: number | string): Promise<SignedTransaction>;
|
|
14
15
|
getTokenBalance(address: string, tokenSymbol: string): Promise<string | number>;
|
|
16
|
+
validatePrivateKey(privateKey: string): boolean;
|
|
15
17
|
privateKeyToAccount(privateKey: string): Promise<WalletAccount>;
|
|
16
18
|
createAccount(): Promise<WalletAccount>;
|
|
17
19
|
accountFromMnemonic(mnemonic: string): Promise<WalletAccount>;
|
|
@@ -9,6 +9,9 @@ export default class Web3Network extends BaseNetwork {
|
|
|
9
9
|
super(config);
|
|
10
10
|
this.web3 = new Web3(config.url);
|
|
11
11
|
}
|
|
12
|
+
formatPrivateKey(privateKey) {
|
|
13
|
+
return privateKey.startsWith('0x') ? privateKey : `0x${privateKey}`;
|
|
14
|
+
}
|
|
12
15
|
async getBalance(address) {
|
|
13
16
|
const balanceWei = await this.web3.eth.getBalance(address);
|
|
14
17
|
return this.web3.utils.fromWei(balanceWei, 'ether');
|
|
@@ -21,7 +24,8 @@ export default class Web3Network extends BaseNetwork {
|
|
|
21
24
|
to,
|
|
22
25
|
value: this.web3.utils.toWei(amount.toString(), 'ether'),
|
|
23
26
|
gas: gasLimit,
|
|
24
|
-
gasPrice
|
|
27
|
+
gasPrice,
|
|
28
|
+
...(this.config.chainId !== undefined ? { chainId: this.config.chainId } : {})
|
|
25
29
|
};
|
|
26
30
|
return this.web3.eth.accounts.signTransaction(tx, from.privateKey);
|
|
27
31
|
}
|
|
@@ -41,7 +45,8 @@ export default class Web3Network extends BaseNetwork {
|
|
|
41
45
|
to: tokenConfig.address,
|
|
42
46
|
data,
|
|
43
47
|
gas: gasLimit,
|
|
44
|
-
gasPrice
|
|
48
|
+
gasPrice,
|
|
49
|
+
...(this.config.chainId !== undefined ? { chainId: this.config.chainId } : {})
|
|
45
50
|
};
|
|
46
51
|
return this.web3.eth.accounts.signTransaction(tx, from.privateKey);
|
|
47
52
|
}
|
|
@@ -93,14 +98,24 @@ export default class Web3Network extends BaseNetwork {
|
|
|
93
98
|
const decimals = Number(await contract.methods.decimals().call());
|
|
94
99
|
return Number((BigInt(balance) * 100n) / (10n ** BigInt(decimals))) / 100;
|
|
95
100
|
}
|
|
101
|
+
validatePrivateKey(privateKey) {
|
|
102
|
+
if (!privateKey) {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
this.web3.eth.accounts.privateKeyToAccount(this.formatPrivateKey(privateKey));
|
|
107
|
+
return true;
|
|
108
|
+
}
|
|
109
|
+
catch {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
96
113
|
async privateKeyToAccount(privateKey) {
|
|
97
114
|
if (!privateKey) {
|
|
98
115
|
throw new Error('Private key is required');
|
|
99
116
|
}
|
|
100
|
-
// Ensure private key has '0x' prefix
|
|
101
|
-
const formattedKey = privateKey.startsWith('0x') ? privateKey : `0x${privateKey}`;
|
|
102
117
|
try {
|
|
103
|
-
return this.web3.eth.accounts.privateKeyToAccount(
|
|
118
|
+
return this.web3.eth.accounts.privateKeyToAccount(this.formatPrivateKey(privateKey));
|
|
104
119
|
}
|
|
105
120
|
catch (error) {
|
|
106
121
|
const message = error instanceof Error ? error.message : String(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Web3Network.js","sourceRoot":"","sources":["../../../network/lib/Web3Network.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,WAAW;IACxC,IAAI,CAAO;IAEnB,YAAY,MAAqB;QAC7B,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,OAAe;QAC5B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;IAED,KAAK,CAAC,QAAQ,CACV,IAAmB,EACnB,EAAU,EACV,MAAuB,EACvB,UAA2B,EAAE;QAE7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,KAAK,CAAC;QAE3C,MAAM,EAAE,GAAG;YACP,IAAI,EAAE,IAAI,CAAC,OAAO;YAClB,EAAE;YACF,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC;YACxD,GAAG,EAAE,QAAQ;YACb,QAAQ;
|
|
1
|
+
{"version":3,"file":"Web3Network.js","sourceRoot":"","sources":["../../../network/lib/Web3Network.ts"],"names":[],"mappings":"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"}
|
package/dist/network/types.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export type NetworkConfig = {
|
|
|
8
8
|
nativeToken: string;
|
|
9
9
|
explorer: string;
|
|
10
10
|
tokens: Record<string, TokenConfig>;
|
|
11
|
+
chainId?: number;
|
|
11
12
|
network?: string;
|
|
12
13
|
};
|
|
13
14
|
export type NetworkConstructor = new (config: NetworkConfig) => BaseNetworkContract;
|
|
@@ -43,6 +44,7 @@ export interface BaseNetworkContract {
|
|
|
43
44
|
transferToken(from: WalletAccount, to: string, amount: number | string, tokenSymbol: string, options?: TransferOptions): Promise<SignedTransaction | string | unknown>;
|
|
44
45
|
estimateGas(transaction: unknown): Promise<unknown>;
|
|
45
46
|
getGasPrice(): Promise<unknown>;
|
|
47
|
+
validatePrivateKey(privateKey: string): boolean;
|
|
46
48
|
privateKeyToAccount(privateKey: string): Promise<WalletAccount>;
|
|
47
49
|
createAccount(): Promise<WalletAccount>;
|
|
48
50
|
accountFromMnemonic(mnemonic: string): Promise<WalletAccount>;
|
package/dist/persist.d.ts
CHANGED
|
@@ -2,18 +2,27 @@ import Deepbase from 'deepbase';
|
|
|
2
2
|
type PersistOptions = {
|
|
3
3
|
path: string;
|
|
4
4
|
encryptionKey: string;
|
|
5
|
-
name?: string;
|
|
6
|
-
stringify?: (obj: unknown) => string;
|
|
7
|
-
parse?: (encryptedData: string) => unknown;
|
|
8
5
|
};
|
|
6
|
+
type EncryptionKey = string | Buffer;
|
|
9
7
|
declare class Persist extends Deepbase {
|
|
8
|
+
private readonly encryptionKey;
|
|
9
|
+
private readonly memoryKey;
|
|
10
|
+
private disposed;
|
|
10
11
|
constructor(opts: PersistOptions);
|
|
11
|
-
|
|
12
|
-
static
|
|
13
|
-
static
|
|
12
|
+
dispose(): Promise<void>;
|
|
13
|
+
static clearSensitiveData(value: unknown): void;
|
|
14
|
+
static encrypt(obj: unknown, encryptionKey: EncryptionKey): string;
|
|
15
|
+
static decrypt(encryptedData: string, encryptionKey: EncryptionKey): unknown;
|
|
16
|
+
static decryptLegacy(encryptedData: string, encryptionKey: EncryptionKey): unknown;
|
|
14
17
|
static evpBytesToKey(password: Buffer, salt: Buffer, keyLen: number, ivLen: number): {
|
|
15
18
|
key: Buffer;
|
|
16
19
|
iv: Buffer;
|
|
17
20
|
};
|
|
21
|
+
private static transformSecrets;
|
|
22
|
+
private static isSensitivePath;
|
|
23
|
+
private static isRecord;
|
|
24
|
+
private static isSealedSecret;
|
|
25
|
+
private static sealSecret;
|
|
26
|
+
private static unsealSecret;
|
|
18
27
|
}
|
|
19
28
|
export default Persist;
|
package/dist/persist.js
CHANGED
|
@@ -4,24 +4,76 @@ const ALGORITHM = 'aes-256-gcm';
|
|
|
4
4
|
const KEY_LENGTH = 32;
|
|
5
5
|
const IV_LENGTH = 12;
|
|
6
6
|
const SALT_LENGTH = 16;
|
|
7
|
+
const SEALED_SECRET_VERSION = 1;
|
|
8
|
+
const SENSITIVE_FIELDS = new Set(['privateKey', 'mnemonic']);
|
|
7
9
|
class Persist extends Deepbase {
|
|
10
|
+
encryptionKey;
|
|
11
|
+
memoryKey;
|
|
12
|
+
disposed = false;
|
|
8
13
|
constructor(opts) {
|
|
9
|
-
opts.
|
|
10
|
-
|
|
11
|
-
opts.
|
|
12
|
-
super(
|
|
14
|
+
const encryptionKey = Buffer.from(opts.encryptionKey, 'utf8');
|
|
15
|
+
const memoryKey = crypto.randomBytes(KEY_LENGTH);
|
|
16
|
+
opts.encryptionKey = '';
|
|
17
|
+
super({
|
|
18
|
+
name: 'persist',
|
|
19
|
+
path: opts.path,
|
|
20
|
+
stringify: (obj) => Persist.encrypt(obj, encryptionKey),
|
|
21
|
+
parse: (encryptedData) => Persist.decrypt(encryptedData, encryptionKey),
|
|
22
|
+
encodeForMemory: (value, path) => Persist.transformSecrets(value, path, secret => Persist.sealSecret(secret, memoryKey)),
|
|
23
|
+
decodeFromMemory: (value, path) => Persist.transformSecrets(value, path, secret => Persist.unsealSecret(secret, memoryKey))
|
|
24
|
+
});
|
|
25
|
+
this.encryptionKey = encryptionKey;
|
|
26
|
+
this.memoryKey = memoryKey;
|
|
27
|
+
}
|
|
28
|
+
async dispose() {
|
|
29
|
+
if (this.disposed) {
|
|
30
|
+
return;
|
|
31
|
+
}
|
|
32
|
+
try {
|
|
33
|
+
await super.dispose({ clearMemory: true, releaseInstance: true });
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
this.encryptionKey.fill(0);
|
|
37
|
+
this.memoryKey.fill(0);
|
|
38
|
+
this.disposed = true;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
static clearSensitiveData(value) {
|
|
42
|
+
if (Array.isArray(value)) {
|
|
43
|
+
value.forEach(item => Persist.clearSensitiveData(item));
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (!Persist.isRecord(value)) {
|
|
47
|
+
return;
|
|
48
|
+
}
|
|
49
|
+
for (const [key, item] of Object.entries(value)) {
|
|
50
|
+
if (SENSITIVE_FIELDS.has(key)) {
|
|
51
|
+
value[key] = '';
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
Persist.clearSensitiveData(item);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
13
57
|
}
|
|
14
58
|
static encrypt(obj, encryptionKey) {
|
|
15
59
|
const salt = crypto.randomBytes(SALT_LENGTH);
|
|
16
60
|
const iv = crypto.randomBytes(IV_LENGTH);
|
|
17
61
|
const key = crypto.scryptSync(encryptionKey, salt, KEY_LENGTH);
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
cipher.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
62
|
+
let serialized;
|
|
63
|
+
try {
|
|
64
|
+
serialized = Buffer.from(JSON.stringify(obj), 'utf8');
|
|
65
|
+
const cipher = crypto.createCipheriv(ALGORITHM, key, iv);
|
|
66
|
+
const encrypted = Buffer.concat([
|
|
67
|
+
cipher.update(serialized),
|
|
68
|
+
cipher.final()
|
|
69
|
+
]);
|
|
70
|
+
const authTag = cipher.getAuthTag();
|
|
71
|
+
return `v2:${salt.toString('hex')}:${iv.toString('hex')}:${authTag.toString('hex')}:${encrypted.toString('hex')}`;
|
|
72
|
+
}
|
|
73
|
+
finally {
|
|
74
|
+
key.fill(0);
|
|
75
|
+
serialized?.fill(0);
|
|
76
|
+
}
|
|
25
77
|
}
|
|
26
78
|
static decrypt(encryptedData, encryptionKey) {
|
|
27
79
|
const parts = encryptedData.split(':');
|
|
@@ -32,13 +84,20 @@ class Persist extends Deepbase {
|
|
|
32
84
|
const authTag = Buffer.from(authTagHex, 'hex');
|
|
33
85
|
const encrypted = Buffer.from(encryptedHex, 'hex');
|
|
34
86
|
const key = crypto.scryptSync(encryptionKey, salt, KEY_LENGTH);
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
decipher.
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
87
|
+
let decrypted;
|
|
88
|
+
try {
|
|
89
|
+
const decipher = crypto.createDecipheriv(ALGORITHM, key, iv);
|
|
90
|
+
decipher.setAuthTag(authTag);
|
|
91
|
+
decrypted = Buffer.concat([
|
|
92
|
+
decipher.update(encrypted),
|
|
93
|
+
decipher.final()
|
|
94
|
+
]);
|
|
95
|
+
return JSON.parse(decrypted.toString('utf8'));
|
|
96
|
+
}
|
|
97
|
+
finally {
|
|
98
|
+
key.fill(0);
|
|
99
|
+
decrypted?.fill(0);
|
|
100
|
+
}
|
|
42
101
|
}
|
|
43
102
|
return Persist.decryptLegacy(encryptedData, encryptionKey);
|
|
44
103
|
}
|
|
@@ -51,10 +110,22 @@ class Persist extends Deepbase {
|
|
|
51
110
|
}
|
|
52
111
|
const salt = payload.subarray(8, 16);
|
|
53
112
|
const ciphertext = payload.subarray(16);
|
|
54
|
-
const
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
113
|
+
const password = Buffer.isBuffer(encryptionKey)
|
|
114
|
+
? Buffer.from(encryptionKey)
|
|
115
|
+
: Buffer.from(encryptionKey, 'utf8');
|
|
116
|
+
const { key, iv } = Persist.evpBytesToKey(password, salt, KEY_LENGTH, 16);
|
|
117
|
+
let decrypted;
|
|
118
|
+
try {
|
|
119
|
+
const decipher = crypto.createDecipheriv('aes-256-cbc', key, iv);
|
|
120
|
+
decrypted = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
|
|
121
|
+
return JSON.parse(decrypted.toString('utf8'));
|
|
122
|
+
}
|
|
123
|
+
finally {
|
|
124
|
+
password.fill(0);
|
|
125
|
+
key.fill(0);
|
|
126
|
+
iv.fill(0);
|
|
127
|
+
decrypted?.fill(0);
|
|
128
|
+
}
|
|
58
129
|
}
|
|
59
130
|
static evpBytesToKey(password, salt, keyLen, ivLen) {
|
|
60
131
|
let derived = Buffer.alloc(0);
|
|
@@ -72,6 +143,74 @@ class Persist extends Deepbase {
|
|
|
72
143
|
iv: derived.subarray(keyLen, keyLen + ivLen)
|
|
73
144
|
};
|
|
74
145
|
}
|
|
146
|
+
static transformSecrets(value, path, transform) {
|
|
147
|
+
if (Persist.isSensitivePath(path)) {
|
|
148
|
+
return transform(value);
|
|
149
|
+
}
|
|
150
|
+
if (Array.isArray(value)) {
|
|
151
|
+
return value.map((item, index) => Persist.transformSecrets(item, [...path, String(index)], transform));
|
|
152
|
+
}
|
|
153
|
+
if (Persist.isRecord(value)) {
|
|
154
|
+
return Object.fromEntries(Object.entries(value).map(([key, item]) => [
|
|
155
|
+
key,
|
|
156
|
+
Persist.transformSecrets(item, [...path, key], transform)
|
|
157
|
+
]));
|
|
158
|
+
}
|
|
159
|
+
return value;
|
|
160
|
+
}
|
|
161
|
+
static isSensitivePath(path) {
|
|
162
|
+
const field = path.at(-1);
|
|
163
|
+
return field !== undefined && SENSITIVE_FIELDS.has(field);
|
|
164
|
+
}
|
|
165
|
+
static isRecord(value) {
|
|
166
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
167
|
+
}
|
|
168
|
+
static isSealedSecret(value) {
|
|
169
|
+
if (!Persist.isRecord(value)) {
|
|
170
|
+
return false;
|
|
171
|
+
}
|
|
172
|
+
return (value.__hodlSealed === SEALED_SECRET_VERSION &&
|
|
173
|
+
typeof value.iv === 'string' &&
|
|
174
|
+
typeof value.authTag === 'string' &&
|
|
175
|
+
typeof value.ciphertext === 'string');
|
|
176
|
+
}
|
|
177
|
+
static sealSecret(secret, memoryKey) {
|
|
178
|
+
if (typeof secret !== 'string') {
|
|
179
|
+
throw new TypeError('Sensitive values must be strings before entering memory');
|
|
180
|
+
}
|
|
181
|
+
const iv = crypto.randomBytes(IV_LENGTH);
|
|
182
|
+
const cipher = crypto.createCipheriv(ALGORITHM, memoryKey, iv);
|
|
183
|
+
const plaintext = Buffer.from(secret, 'utf8');
|
|
184
|
+
try {
|
|
185
|
+
const ciphertext = Buffer.concat([cipher.update(plaintext), cipher.final()]);
|
|
186
|
+
return {
|
|
187
|
+
__hodlSealed: SEALED_SECRET_VERSION,
|
|
188
|
+
iv: iv.toString('hex'),
|
|
189
|
+
authTag: cipher.getAuthTag().toString('hex'),
|
|
190
|
+
ciphertext: ciphertext.toString('hex')
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
finally {
|
|
194
|
+
plaintext.fill(0);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
static unsealSecret(secret, memoryKey) {
|
|
198
|
+
if (!Persist.isSealedSecret(secret)) {
|
|
199
|
+
throw new TypeError('Sensitive value is not sealed in memory');
|
|
200
|
+
}
|
|
201
|
+
const iv = Buffer.from(secret.iv, 'hex');
|
|
202
|
+
const authTag = Buffer.from(secret.authTag, 'hex');
|
|
203
|
+
const ciphertext = Buffer.from(secret.ciphertext, 'hex');
|
|
204
|
+
const decipher = crypto.createDecipheriv(ALGORITHM, memoryKey, iv);
|
|
205
|
+
decipher.setAuthTag(authTag);
|
|
206
|
+
const plaintext = Buffer.concat([decipher.update(ciphertext), decipher.final()]);
|
|
207
|
+
try {
|
|
208
|
+
return plaintext.toString('utf8');
|
|
209
|
+
}
|
|
210
|
+
finally {
|
|
211
|
+
plaintext.fill(0);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
75
214
|
}
|
|
76
215
|
export default Persist;
|
|
77
216
|
//# sourceMappingURL=persist.js.map
|
package/dist/persist.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persist.js","sourceRoot":"","sources":["../persist.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,SAAS,GAAG,aAAa,CAAC;AAChC,MAAM,UAAU,GAAG,EAAE,CAAC;AACtB,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,WAAW,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"persist.js","sourceRoot":"","sources":["../persist.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "hodl-wallet",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "🧊 HODL Wallet - Fast CLI crypto wallet!",
|
|
5
5
|
"author": "Martin Clasen",
|
|
6
6
|
"repository": {
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"bugs": {
|
|
12
12
|
"url": "https://github.com/clasen/HODL/issues"
|
|
13
13
|
},
|
|
14
|
-
"homepage": "https://
|
|
14
|
+
"homepage": "https://hodl-waller.com",
|
|
15
15
|
"files": [
|
|
16
16
|
"dist/index.js",
|
|
17
17
|
"dist/index.d.ts",
|
|
@@ -50,6 +50,9 @@
|
|
|
50
50
|
"optimism",
|
|
51
51
|
"avalanche",
|
|
52
52
|
"avax",
|
|
53
|
+
"hyperliquid",
|
|
54
|
+
"hyperevm",
|
|
55
|
+
"hype",
|
|
53
56
|
"clasen"
|
|
54
57
|
],
|
|
55
58
|
"dependencies": {
|
|
@@ -57,7 +60,7 @@
|
|
|
57
60
|
"bip39": "3.1.0",
|
|
58
61
|
"bitcoinjs-lib": "6.1.7",
|
|
59
62
|
"cli-table3": "0.6.5",
|
|
60
|
-
"deepbase": "
|
|
63
|
+
"deepbase": "3.8.2",
|
|
61
64
|
"ecpair": "2.1.0",
|
|
62
65
|
"external-editor": "3.1.0",
|
|
63
66
|
"hdkey": "^0.6.0",
|
|
@@ -67,7 +70,7 @@
|
|
|
67
70
|
"ora": "8.1.1",
|
|
68
71
|
"tiny-secp256k1": "2.2.3",
|
|
69
72
|
"tmp": "0.2.7",
|
|
70
|
-
"web3": "4.
|
|
73
|
+
"web3": "4.16.0"
|
|
71
74
|
},
|
|
72
75
|
"devDependencies": {
|
|
73
76
|
"@types/node": "^24.12.4",
|
|
@@ -84,6 +87,7 @@
|
|
|
84
87
|
"test": "pnpm run build && node ./dist/test/test-all.js",
|
|
85
88
|
"test:network": "pnpm run build && node ./dist/test/test.js",
|
|
86
89
|
"test:integration": "pnpm run build && node ./dist/test/test-integration.js",
|
|
90
|
+
"test:persist": "pnpm run build && node ./dist/test/test-persist.js",
|
|
87
91
|
"test:quick": "pnpm run build && node ./dist/test/test.js --quick"
|
|
88
92
|
}
|
|
89
93
|
}
|