@bitgo-beta/account-lib 2.24.1-alpha.42 → 2.24.1-alpha.420
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 +1 -1
- package/dist/resources/dot/index.js +6 -2
- package/dist/resources/dot/westend.d.ts +1 -1
- package/dist/resources/dot/westend.d.ts.map +1 -1
- package/dist/resources/dot/westend.js +2 -2
- package/dist/resources/dot/westend.ts +1 -1
- package/dist/src/index.d.ts +106 -4
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +258 -17
- package/dist/src/keyPair/index.js +24 -11
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +27 -10
- package/dist/src/utils/messages/index.d.ts +10 -0
- package/dist/src/utils/messages/index.d.ts.map +1 -0
- package/dist/src/utils/messages/index.js +30 -0
- package/dist/test/resources/ed25519Deriver.d.ts +15 -0
- package/dist/test/resources/ed25519Deriver.d.ts.map +1 -0
- package/dist/test/resources/ed25519Deriver.js +18 -0
- package/dist/test/resources/testTransaction.d.ts +11 -0
- package/dist/test/resources/testTransaction.d.ts.map +1 -0
- package/dist/test/resources/testTransaction.js +19 -0
- package/dist/test/resources/testTransactionBuilder.d.ts +26 -0
- package/dist/test/resources/testTransactionBuilder.d.ts.map +1 -0
- package/dist/test/resources/testTransactionBuilder.js +47 -0
- package/dist/test/unit/coin/baseCoin/transactionBuilder.d.ts +2 -0
- package/dist/test/unit/coin/baseCoin/transactionBuilder.d.ts.map +1 -0
- package/dist/test/unit/coin/baseCoin/transactionBuilder.js +135 -0
- package/dist/test/unit/fixtures.d.ts +16 -0
- package/dist/test/unit/fixtures.d.ts.map +1 -0
- package/dist/test/unit/fixtures.js +43 -0
- package/dist/test/unit/index.d.ts +2 -0
- package/dist/test/unit/index.d.ts.map +1 -0
- package/dist/test/unit/index.js +13 -0
- package/dist/test/unit/keyPair/index.d.ts +2 -0
- package/dist/test/unit/keyPair/index.d.ts.map +1 -0
- package/dist/test/unit/keyPair/index.js +132 -0
- package/dist/test/unit/messageFactory.d.ts +2 -0
- package/dist/test/unit/messageFactory.d.ts.map +1 -0
- package/dist/test/unit/messageFactory.js +52 -0
- package/dist/test/unit/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
- package/dist/test/unit/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/mpc/tss/ecdsa/ecdsa.js +333 -0
- package/dist/test/unit/mpc/tss/eddsa/eddsa.d.ts +5 -0
- package/dist/test/unit/mpc/tss/eddsa/eddsa.d.ts.map +1 -0
- package/dist/test/unit/mpc/tss/eddsa/eddsa.js +322 -0
- package/dist/test/unit/mpc/tss/fixtures/ecdsa.d.ts +130 -0
- package/dist/test/unit/mpc/tss/fixtures/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/mpc/tss/fixtures/ecdsa.js +283 -0
- package/dist/test/unit/utils/crypto.d.ts +2 -0
- package/dist/test/unit/utils/crypto.d.ts.map +1 -0
- package/dist/test/unit/utils/crypto.js +60 -0
- package/dist/test/unit/utils/ed25519KeyDeriver.d.ts +2 -0
- package/dist/test/unit/utils/ed25519KeyDeriver.d.ts.map +1 -0
- package/dist/test/unit/utils/ed25519KeyDeriver.js +23 -0
- package/dist/test/unit/utils/index.d.ts +2 -0
- package/dist/test/unit/utils/index.d.ts.map +1 -0
- package/dist/test/unit/utils/index.js +61 -0
- package/dist/test/unit/utils/messages/index.d.ts +2 -0
- package/dist/test/unit/utils/messages/index.d.ts.map +1 -0
- package/dist/test/unit/utils/messages/index.js +51 -0
- package/dist/test/unit/verifyMessage.d.ts +2 -0
- package/dist/test/unit/verifyMessage.d.ts.map +1 -0
- package/dist/test/unit/verifyMessage.js +96 -0
- package/dist/tsconfig.tsbuildinfo +1 -43387
- package/package.json +75 -31
- package/.mocharc.js +0 -10
- package/CHANGELOG.md +0 -389
- package/DEVELOPER.md +0 -93
- package/resources/README.md +0 -17
- package/resources/cspr/contract/keys-manager.wasm +0 -0
- package/resources/dot/index.ts +0 -2
- package/resources/dot/mainnet.ts +0 -2
- package/resources/dot/westend.ts +0 -2
package/dist/src/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { BaseBuilder, BaseTransactionBuilderFactory, Ed25519KeyDeriver, Ed25519BIP32, Eddsa, accountLibBaseCoin, acountLibCrypto, BaseMessageBuilderFactory, MessageStandardType } from '@bitgo-beta/sdk-core';
|
|
1
2
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
-
|
|
3
|
-
export { Eddsa, Ed25519BIP32 };
|
|
3
|
+
export { Ed25519BIP32, Eddsa };
|
|
4
4
|
/**
|
|
5
5
|
* Deprecated after version 2.19.0
|
|
6
6
|
* Retained for short term backwards compatibility - migrate to: @bitgo-beta/sdk-api and @bitgo-beta/sdk-core
|
|
@@ -18,8 +18,6 @@ import { XtzLib as Xtz } from '@bitgo-beta/sdk-coin-xtz';
|
|
|
18
18
|
export { Xtz };
|
|
19
19
|
import * as Eth from '@bitgo-beta/sdk-coin-eth';
|
|
20
20
|
export { Eth };
|
|
21
|
-
import * as Eth2 from '@bitgo-beta/sdk-coin-eth2';
|
|
22
|
-
export { Eth2 };
|
|
23
21
|
import * as Etc from '@bitgo-beta/sdk-coin-etc';
|
|
24
22
|
export { Etc };
|
|
25
23
|
import * as AvaxC from '@bitgo-beta/sdk-coin-avaxc';
|
|
@@ -36,12 +34,48 @@ import { StxLib as Stx } from '@bitgo-beta/sdk-coin-stx';
|
|
|
36
34
|
export { Stx };
|
|
37
35
|
import { AlgoLib as Algo } from '@bitgo-beta/sdk-coin-algo';
|
|
38
36
|
export { Algo };
|
|
37
|
+
import * as Arbeth from '@bitgo-beta/sdk-coin-arbeth';
|
|
38
|
+
export { Arbeth };
|
|
39
39
|
import * as Atom from '@bitgo-beta/sdk-coin-atom';
|
|
40
40
|
export { Atom };
|
|
41
|
+
import * as Osmo from '@bitgo-beta/sdk-coin-osmo';
|
|
42
|
+
export { Osmo };
|
|
41
43
|
import { AvaxpLib as AvaxP } from '@bitgo-beta/sdk-coin-avaxp';
|
|
42
44
|
export { AvaxP };
|
|
45
|
+
import * as Tia from '@bitgo-beta/sdk-coin-tia';
|
|
46
|
+
export { Tia };
|
|
47
|
+
import * as Bera from '@bitgo-beta/sdk-coin-bera';
|
|
48
|
+
export { Bera };
|
|
49
|
+
import * as Bld from '@bitgo-beta/sdk-coin-bld';
|
|
50
|
+
export { Bld };
|
|
51
|
+
import * as Hash from '@bitgo-beta/sdk-coin-hash';
|
|
52
|
+
export { Hash };
|
|
53
|
+
import * as Sei from '@bitgo-beta/sdk-coin-sei';
|
|
54
|
+
export { Sei };
|
|
55
|
+
import * as Injective from '@bitgo-beta/sdk-coin-injective';
|
|
56
|
+
export { Injective };
|
|
57
|
+
import * as Islm from '@bitgo-beta/sdk-coin-islm';
|
|
58
|
+
export { Islm };
|
|
59
|
+
import * as Zeta from '@bitgo-beta/sdk-coin-zeta';
|
|
60
|
+
export { Zeta };
|
|
61
|
+
import * as Coreum from '@bitgo-beta/sdk-coin-coreum';
|
|
62
|
+
export { Coreum };
|
|
63
|
+
import * as Rune from '@bitgo-beta/sdk-coin-rune';
|
|
64
|
+
export { Rune };
|
|
65
|
+
import * as Baby from '@bitgo-beta/sdk-coin-baby';
|
|
66
|
+
export { Baby };
|
|
67
|
+
import * as Mon from '@bitgo-beta/sdk-coin-mon';
|
|
68
|
+
export { Mon };
|
|
69
|
+
import * as Cronos from '@bitgo-beta/sdk-coin-cronos';
|
|
70
|
+
export { Cronos };
|
|
71
|
+
import * as Initia from '@bitgo-beta/sdk-coin-initia';
|
|
72
|
+
export { Initia };
|
|
73
|
+
import * as Asi from '@bitgo-beta/sdk-coin-asi';
|
|
74
|
+
export { Asi };
|
|
43
75
|
import * as Sol from '@bitgo-beta/sdk-coin-sol';
|
|
44
76
|
export { Sol };
|
|
77
|
+
import * as Ada from '@bitgo-beta/sdk-coin-ada';
|
|
78
|
+
export { Ada };
|
|
45
79
|
import * as Dot from '@bitgo-beta/sdk-coin-dot';
|
|
46
80
|
export { Dot };
|
|
47
81
|
import * as Near from '@bitgo-beta/sdk-coin-near';
|
|
@@ -50,8 +84,54 @@ import * as Bsc from '@bitgo-beta/sdk-coin-bsc';
|
|
|
50
84
|
export { Bsc };
|
|
51
85
|
import * as Polygon from '@bitgo-beta/sdk-coin-polygon';
|
|
52
86
|
export { Polygon };
|
|
87
|
+
import * as Polyx from '@bitgo-beta/sdk-coin-polyx';
|
|
88
|
+
export { Polyx };
|
|
89
|
+
import * as Opeth from '@bitgo-beta/sdk-coin-opeth';
|
|
90
|
+
export { Opeth };
|
|
53
91
|
import * as Sui from '@bitgo-beta/sdk-coin-sui';
|
|
54
92
|
export { Sui };
|
|
93
|
+
import * as Ton from '@bitgo-beta/sdk-coin-ton';
|
|
94
|
+
export { Ton };
|
|
95
|
+
import * as XRP from '@bitgo-beta/sdk-coin-xrp';
|
|
96
|
+
export { XRP };
|
|
97
|
+
import * as zkEth from '@bitgo-beta/sdk-coin-zketh';
|
|
98
|
+
export { zkEth };
|
|
99
|
+
import * as Oas from '@bitgo-beta/sdk-coin-oas';
|
|
100
|
+
export { Oas };
|
|
101
|
+
import * as Coredao from '@bitgo-beta/sdk-coin-coredao';
|
|
102
|
+
export { Coredao };
|
|
103
|
+
import * as Apt from '@bitgo-beta/sdk-coin-apt';
|
|
104
|
+
export { Apt };
|
|
105
|
+
import * as Apechain from '@bitgo-beta/sdk-coin-apechain';
|
|
106
|
+
export { Apechain };
|
|
107
|
+
import * as Tao from '@bitgo-beta/sdk-coin-tao';
|
|
108
|
+
export { Tao };
|
|
109
|
+
import * as Icp from '@bitgo-beta/sdk-coin-icp';
|
|
110
|
+
export { Icp };
|
|
111
|
+
import * as Flr from '@bitgo-beta/sdk-coin-flr';
|
|
112
|
+
export { Flr };
|
|
113
|
+
import * as EvmCoin from '@bitgo-beta/sdk-coin-evm';
|
|
114
|
+
export { EvmCoin };
|
|
115
|
+
import * as Sgb from '@bitgo-beta/sdk-coin-sgb';
|
|
116
|
+
export { Sgb };
|
|
117
|
+
import * as Xdc from '@bitgo-beta/sdk-coin-xdc';
|
|
118
|
+
export { Xdc };
|
|
119
|
+
import * as Wemix from '@bitgo-beta/sdk-coin-wemix';
|
|
120
|
+
export { Wemix };
|
|
121
|
+
import * as World from '@bitgo-beta/sdk-coin-world';
|
|
122
|
+
export { World };
|
|
123
|
+
import * as Stt from '@bitgo-beta/sdk-coin-stt';
|
|
124
|
+
export { Stt };
|
|
125
|
+
import * as Soneium from '@bitgo-beta/sdk-coin-soneium';
|
|
126
|
+
export { Soneium };
|
|
127
|
+
import * as Vet from '@bitgo-beta/sdk-coin-vet';
|
|
128
|
+
export { Vet };
|
|
129
|
+
import * as CosmosSharedCoin from '@bitgo-beta/sdk-coin-cosmos';
|
|
130
|
+
export { CosmosSharedCoin };
|
|
131
|
+
import * as Canton from '@bitgo-beta/sdk-coin-canton';
|
|
132
|
+
export { Canton };
|
|
133
|
+
import { MIDNIGHT_TNC_HASH } from './utils';
|
|
134
|
+
export { MIDNIGHT_TNC_HASH };
|
|
55
135
|
/**
|
|
56
136
|
* Get the list of coin tickers supported by this library.
|
|
57
137
|
*/
|
|
@@ -63,6 +143,7 @@ export declare const supportedCoins: string[];
|
|
|
63
143
|
* @returns {any} An instance of a {@code TransactionBuilder}
|
|
64
144
|
*/
|
|
65
145
|
export declare function getBuilder(coinName: string): BaseBuilder;
|
|
146
|
+
export declare function getMessageBuilderFactory(coinName: string): BaseMessageBuilderFactory;
|
|
66
147
|
/**
|
|
67
148
|
* Register a new coin instance with its builder factory
|
|
68
149
|
*
|
|
@@ -73,4 +154,25 @@ export declare function getBuilder(coinName: string): BaseBuilder;
|
|
|
73
154
|
export declare function register<T extends BaseTransactionBuilderFactory>(coinName: string, builderFactory: {
|
|
74
155
|
new (_coinConfig: Readonly<CoinConfig>): T;
|
|
75
156
|
}): T;
|
|
157
|
+
/**
|
|
158
|
+
* Register a new coin instance with its message builder factory constructor.
|
|
159
|
+
*
|
|
160
|
+
* @param {string} coinName coin name as it was registered in @bitgo-beta/statics
|
|
161
|
+
* @param {any} messageBuilderFactory the message builder factory class for that coin
|
|
162
|
+
* @returns {any} the message builder factory instance for the registered coin
|
|
163
|
+
*/
|
|
164
|
+
export declare function registerMessageBuilderFactory<T extends BaseMessageBuilderFactory>(coinName: string, messageBuilderFactory: {
|
|
165
|
+
new (_coinConfig: Readonly<CoinConfig>): T;
|
|
166
|
+
}): T;
|
|
167
|
+
/**
|
|
168
|
+
* Verify a message against the given encoded payload.
|
|
169
|
+
*
|
|
170
|
+
* @param {string} coinName - The name of the coin.
|
|
171
|
+
* @param {string} messageRaw - The raw message to verify.
|
|
172
|
+
* @param {string} messageEncoded - The encoded message to verify against.
|
|
173
|
+
* @param {MessageStandardType} messageStandardType - The type of message standard.
|
|
174
|
+
* @param {Record<string, unknown>} [metadata] - Optional metadata for verification.
|
|
175
|
+
* @returns {Promise<boolean>} - Returns true if the verification is successful, false otherwise.
|
|
176
|
+
*/
|
|
177
|
+
export declare function verifyMessage(coinName: string, messageRaw: string, messageEncoded: string, messageStandardType: MessageStandardType, metadata?: Record<string, unknown>): Promise<boolean>;
|
|
76
178
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -11,20 +15,36 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
|
|
|
11
15
|
}) : function(o, v) {
|
|
12
16
|
o["default"] = v;
|
|
13
17
|
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
};
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
21
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
|
-
exports.
|
|
23
|
-
|
|
36
|
+
exports.Apt = exports.Coredao = exports.Oas = exports.zkEth = exports.XRP = exports.Ton = exports.Sui = exports.Opeth = exports.Polyx = exports.Polygon = exports.Bsc = exports.Near = exports.Dot = exports.Ada = exports.Sol = exports.Asi = exports.Initia = exports.Cronos = exports.Mon = exports.Baby = exports.Rune = exports.Coreum = exports.Zeta = exports.Islm = exports.Injective = exports.Sei = exports.Hash = exports.Bld = exports.Bera = exports.Tia = exports.AvaxP = exports.Osmo = exports.Atom = exports.Arbeth = exports.Algo = exports.Stx = exports.Cspr = exports.Hbar = exports.Celo = exports.Rbtc = exports.AvaxC = exports.Etc = exports.Eth = exports.Xtz = exports.Trx = exports.BaseCoin = exports.Ed25519KeyDeriver = exports.crypto = exports.Eddsa = exports.Ed25519BIP32 = void 0;
|
|
37
|
+
exports.supportedCoins = exports.MIDNIGHT_TNC_HASH = exports.Canton = exports.CosmosSharedCoin = exports.Vet = exports.Soneium = exports.Stt = exports.World = exports.Wemix = exports.Xdc = exports.Sgb = exports.EvmCoin = exports.Flr = exports.Icp = exports.Tao = exports.Apechain = void 0;
|
|
38
|
+
exports.getBuilder = getBuilder;
|
|
39
|
+
exports.getMessageBuilderFactory = getMessageBuilderFactory;
|
|
40
|
+
exports.register = register;
|
|
41
|
+
exports.registerMessageBuilderFactory = registerMessageBuilderFactory;
|
|
42
|
+
exports.verifyMessage = verifyMessage;
|
|
24
43
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
25
|
-
Object.defineProperty(exports, "Ed25519BIP32", { enumerable: true, get: function () { return sdk_core_1.Ed25519BIP32; } });
|
|
26
44
|
Object.defineProperty(exports, "Ed25519KeyDeriver", { enumerable: true, get: function () { return sdk_core_1.Ed25519KeyDeriver; } });
|
|
45
|
+
Object.defineProperty(exports, "Ed25519BIP32", { enumerable: true, get: function () { return sdk_core_1.Ed25519BIP32; } });
|
|
27
46
|
Object.defineProperty(exports, "Eddsa", { enumerable: true, get: function () { return sdk_core_1.Eddsa; } });
|
|
47
|
+
const statics_1 = require("@bitgo-beta/statics");
|
|
28
48
|
/**
|
|
29
49
|
* Deprecated after version 2.19.0
|
|
30
50
|
* Retained for short term backwards compatibility - migrate to: @bitgo-beta/sdk-api and @bitgo-beta/sdk-core
|
|
@@ -42,8 +62,6 @@ const sdk_coin_xtz_1 = require("@bitgo-beta/sdk-coin-xtz");
|
|
|
42
62
|
Object.defineProperty(exports, "Xtz", { enumerable: true, get: function () { return sdk_coin_xtz_1.XtzLib; } });
|
|
43
63
|
const Eth = __importStar(require("@bitgo-beta/sdk-coin-eth"));
|
|
44
64
|
exports.Eth = Eth;
|
|
45
|
-
const Eth2 = __importStar(require("@bitgo-beta/sdk-coin-eth2"));
|
|
46
|
-
exports.Eth2 = Eth2;
|
|
47
65
|
const Etc = __importStar(require("@bitgo-beta/sdk-coin-etc"));
|
|
48
66
|
exports.Etc = Etc;
|
|
49
67
|
const AvaxC = __importStar(require("@bitgo-beta/sdk-coin-avaxc"));
|
|
@@ -60,12 +78,48 @@ const sdk_coin_stx_1 = require("@bitgo-beta/sdk-coin-stx");
|
|
|
60
78
|
Object.defineProperty(exports, "Stx", { enumerable: true, get: function () { return sdk_coin_stx_1.StxLib; } });
|
|
61
79
|
const sdk_coin_algo_1 = require("@bitgo-beta/sdk-coin-algo");
|
|
62
80
|
Object.defineProperty(exports, "Algo", { enumerable: true, get: function () { return sdk_coin_algo_1.AlgoLib; } });
|
|
81
|
+
const Arbeth = __importStar(require("@bitgo-beta/sdk-coin-arbeth"));
|
|
82
|
+
exports.Arbeth = Arbeth;
|
|
63
83
|
const Atom = __importStar(require("@bitgo-beta/sdk-coin-atom"));
|
|
64
84
|
exports.Atom = Atom;
|
|
85
|
+
const Osmo = __importStar(require("@bitgo-beta/sdk-coin-osmo"));
|
|
86
|
+
exports.Osmo = Osmo;
|
|
65
87
|
const sdk_coin_avaxp_1 = require("@bitgo-beta/sdk-coin-avaxp");
|
|
66
88
|
Object.defineProperty(exports, "AvaxP", { enumerable: true, get: function () { return sdk_coin_avaxp_1.AvaxpLib; } });
|
|
89
|
+
const Tia = __importStar(require("@bitgo-beta/sdk-coin-tia"));
|
|
90
|
+
exports.Tia = Tia;
|
|
91
|
+
const Bera = __importStar(require("@bitgo-beta/sdk-coin-bera"));
|
|
92
|
+
exports.Bera = Bera;
|
|
93
|
+
const Bld = __importStar(require("@bitgo-beta/sdk-coin-bld"));
|
|
94
|
+
exports.Bld = Bld;
|
|
95
|
+
const Hash = __importStar(require("@bitgo-beta/sdk-coin-hash"));
|
|
96
|
+
exports.Hash = Hash;
|
|
97
|
+
const Sei = __importStar(require("@bitgo-beta/sdk-coin-sei"));
|
|
98
|
+
exports.Sei = Sei;
|
|
99
|
+
const Injective = __importStar(require("@bitgo-beta/sdk-coin-injective"));
|
|
100
|
+
exports.Injective = Injective;
|
|
101
|
+
const Islm = __importStar(require("@bitgo-beta/sdk-coin-islm"));
|
|
102
|
+
exports.Islm = Islm;
|
|
103
|
+
const Zeta = __importStar(require("@bitgo-beta/sdk-coin-zeta"));
|
|
104
|
+
exports.Zeta = Zeta;
|
|
105
|
+
const Coreum = __importStar(require("@bitgo-beta/sdk-coin-coreum"));
|
|
106
|
+
exports.Coreum = Coreum;
|
|
107
|
+
const Rune = __importStar(require("@bitgo-beta/sdk-coin-rune"));
|
|
108
|
+
exports.Rune = Rune;
|
|
109
|
+
const Baby = __importStar(require("@bitgo-beta/sdk-coin-baby"));
|
|
110
|
+
exports.Baby = Baby;
|
|
111
|
+
const Mon = __importStar(require("@bitgo-beta/sdk-coin-mon"));
|
|
112
|
+
exports.Mon = Mon;
|
|
113
|
+
const Cronos = __importStar(require("@bitgo-beta/sdk-coin-cronos"));
|
|
114
|
+
exports.Cronos = Cronos;
|
|
115
|
+
const Initia = __importStar(require("@bitgo-beta/sdk-coin-initia"));
|
|
116
|
+
exports.Initia = Initia;
|
|
117
|
+
const Asi = __importStar(require("@bitgo-beta/sdk-coin-asi"));
|
|
118
|
+
exports.Asi = Asi;
|
|
67
119
|
const Sol = __importStar(require("@bitgo-beta/sdk-coin-sol"));
|
|
68
120
|
exports.Sol = Sol;
|
|
121
|
+
const Ada = __importStar(require("@bitgo-beta/sdk-coin-ada"));
|
|
122
|
+
exports.Ada = Ada;
|
|
69
123
|
const Dot = __importStar(require("@bitgo-beta/sdk-coin-dot"));
|
|
70
124
|
exports.Dot = Dot;
|
|
71
125
|
const Near = __importStar(require("@bitgo-beta/sdk-coin-near"));
|
|
@@ -74,8 +128,54 @@ const Bsc = __importStar(require("@bitgo-beta/sdk-coin-bsc"));
|
|
|
74
128
|
exports.Bsc = Bsc;
|
|
75
129
|
const Polygon = __importStar(require("@bitgo-beta/sdk-coin-polygon"));
|
|
76
130
|
exports.Polygon = Polygon;
|
|
131
|
+
const Polyx = __importStar(require("@bitgo-beta/sdk-coin-polyx"));
|
|
132
|
+
exports.Polyx = Polyx;
|
|
133
|
+
const Opeth = __importStar(require("@bitgo-beta/sdk-coin-opeth"));
|
|
134
|
+
exports.Opeth = Opeth;
|
|
77
135
|
const Sui = __importStar(require("@bitgo-beta/sdk-coin-sui"));
|
|
78
136
|
exports.Sui = Sui;
|
|
137
|
+
const Ton = __importStar(require("@bitgo-beta/sdk-coin-ton"));
|
|
138
|
+
exports.Ton = Ton;
|
|
139
|
+
const XRP = __importStar(require("@bitgo-beta/sdk-coin-xrp"));
|
|
140
|
+
exports.XRP = XRP;
|
|
141
|
+
const zkEth = __importStar(require("@bitgo-beta/sdk-coin-zketh"));
|
|
142
|
+
exports.zkEth = zkEth;
|
|
143
|
+
const Oas = __importStar(require("@bitgo-beta/sdk-coin-oas"));
|
|
144
|
+
exports.Oas = Oas;
|
|
145
|
+
const Coredao = __importStar(require("@bitgo-beta/sdk-coin-coredao"));
|
|
146
|
+
exports.Coredao = Coredao;
|
|
147
|
+
const Apt = __importStar(require("@bitgo-beta/sdk-coin-apt"));
|
|
148
|
+
exports.Apt = Apt;
|
|
149
|
+
const Apechain = __importStar(require("@bitgo-beta/sdk-coin-apechain"));
|
|
150
|
+
exports.Apechain = Apechain;
|
|
151
|
+
const Tao = __importStar(require("@bitgo-beta/sdk-coin-tao"));
|
|
152
|
+
exports.Tao = Tao;
|
|
153
|
+
const Icp = __importStar(require("@bitgo-beta/sdk-coin-icp"));
|
|
154
|
+
exports.Icp = Icp;
|
|
155
|
+
const Flr = __importStar(require("@bitgo-beta/sdk-coin-flr"));
|
|
156
|
+
exports.Flr = Flr;
|
|
157
|
+
const EvmCoin = __importStar(require("@bitgo-beta/sdk-coin-evm"));
|
|
158
|
+
exports.EvmCoin = EvmCoin;
|
|
159
|
+
const Sgb = __importStar(require("@bitgo-beta/sdk-coin-sgb"));
|
|
160
|
+
exports.Sgb = Sgb;
|
|
161
|
+
const Xdc = __importStar(require("@bitgo-beta/sdk-coin-xdc"));
|
|
162
|
+
exports.Xdc = Xdc;
|
|
163
|
+
const Wemix = __importStar(require("@bitgo-beta/sdk-coin-wemix"));
|
|
164
|
+
exports.Wemix = Wemix;
|
|
165
|
+
const World = __importStar(require("@bitgo-beta/sdk-coin-world"));
|
|
166
|
+
exports.World = World;
|
|
167
|
+
const Stt = __importStar(require("@bitgo-beta/sdk-coin-stt"));
|
|
168
|
+
exports.Stt = Stt;
|
|
169
|
+
const Soneium = __importStar(require("@bitgo-beta/sdk-coin-soneium"));
|
|
170
|
+
exports.Soneium = Soneium;
|
|
171
|
+
const Vet = __importStar(require("@bitgo-beta/sdk-coin-vet"));
|
|
172
|
+
exports.Vet = Vet;
|
|
173
|
+
const CosmosSharedCoin = __importStar(require("@bitgo-beta/sdk-coin-cosmos"));
|
|
174
|
+
exports.CosmosSharedCoin = CosmosSharedCoin;
|
|
175
|
+
const Canton = __importStar(require("@bitgo-beta/sdk-coin-canton"));
|
|
176
|
+
exports.Canton = Canton;
|
|
177
|
+
const utils_1 = require("./utils");
|
|
178
|
+
Object.defineProperty(exports, "MIDNIGHT_TNC_HASH", { enumerable: true, get: function () { return utils_1.MIDNIGHT_TNC_HASH; } });
|
|
79
179
|
const coinBuilderMap = {
|
|
80
180
|
trx: Trx.WrappedBuilder,
|
|
81
181
|
ttrx: Trx.WrappedBuilder,
|
|
@@ -86,10 +186,11 @@ const coinBuilderMap = {
|
|
|
86
186
|
eth: Eth.TransactionBuilder,
|
|
87
187
|
teth: Eth.TransactionBuilder,
|
|
88
188
|
gteth: Eth.TransactionBuilder,
|
|
189
|
+
hteth: Eth.TransactionBuilder,
|
|
89
190
|
rbtc: Rbtc.TransactionBuilder,
|
|
90
191
|
trbtc: Rbtc.TransactionBuilder,
|
|
91
192
|
celo: Celo.TransactionBuilder,
|
|
92
|
-
tcelo: Celo.
|
|
193
|
+
tcelo: Celo.TestnetTransactionBuilder,
|
|
93
194
|
avaxc: AvaxC.TransactionBuilder,
|
|
94
195
|
tavaxc: AvaxC.TransactionBuilder,
|
|
95
196
|
bsc: Bsc.TransactionBuilder,
|
|
@@ -113,9 +214,108 @@ const coinBuilderMap = {
|
|
|
113
214
|
tpolygon: Polygon.TransactionBuilder,
|
|
114
215
|
sui: Sui.TransactionBuilderFactory,
|
|
115
216
|
tsui: Sui.TransactionBuilderFactory,
|
|
217
|
+
tia: Tia.TransactionBuilderFactory,
|
|
218
|
+
ttia: Tia.TransactionBuilderFactory,
|
|
116
219
|
atom: Atom.TransactionBuilderFactory,
|
|
117
220
|
tatom: Atom.TransactionBuilderFactory,
|
|
221
|
+
osmo: Osmo.TransactionBuilderFactory,
|
|
222
|
+
tosmo: Osmo.TransactionBuilderFactory,
|
|
223
|
+
bld: Bld.TransactionBuilderFactory,
|
|
224
|
+
tbld: Bld.TransactionBuilderFactory,
|
|
225
|
+
hash: Hash.TransactionBuilderFactory,
|
|
226
|
+
thash: Hash.TransactionBuilderFactory,
|
|
227
|
+
sei: Sei.TransactionBuilderFactory,
|
|
228
|
+
tsei: Sei.TransactionBuilderFactory,
|
|
229
|
+
injective: Injective.TransactionBuilderFactory,
|
|
230
|
+
tinjective: Injective.TransactionBuilderFactory,
|
|
231
|
+
zeta: Zeta.TransactionBuilderFactory,
|
|
232
|
+
tzeta: Zeta.TransactionBuilderFactory,
|
|
233
|
+
islm: Islm.TransactionBuilderFactory,
|
|
234
|
+
tislm: Islm.TransactionBuilderFactory,
|
|
235
|
+
coreum: Coreum.TransactionBuilderFactory,
|
|
236
|
+
tcoreum: Coreum.TransactionBuilderFactory,
|
|
237
|
+
arbeth: Arbeth.TransactionBuilder,
|
|
238
|
+
tarbeth: Arbeth.TransactionBuilder,
|
|
239
|
+
opeth: Opeth.TransactionBuilder,
|
|
240
|
+
topeth: Opeth.TransactionBuilder,
|
|
241
|
+
ton: Ton.TransactionBuilder,
|
|
242
|
+
tton: Ton.TransactionBuilder,
|
|
243
|
+
zketh: zkEth.TransactionBuilder,
|
|
244
|
+
tzketh: zkEth.TransactionBuilder,
|
|
245
|
+
bera: Bera.TransactionBuilder,
|
|
246
|
+
tbera: Bera.TransactionBuilder,
|
|
247
|
+
rune: Rune.TransactionBuilderFactory,
|
|
248
|
+
trune: Rune.TransactionBuilderFactory,
|
|
249
|
+
oas: Oas.TransactionBuilder,
|
|
250
|
+
toas: Oas.TransactionBuilder,
|
|
251
|
+
coredao: Coredao.TransactionBuilder,
|
|
252
|
+
tcoredao: Coredao.TransactionBuilder,
|
|
253
|
+
apechain: Apechain.TransactionBuilder,
|
|
254
|
+
tapechain: Apechain.TransactionBuilder,
|
|
255
|
+
apt: Apt.TransactionBuilder,
|
|
256
|
+
tapt: Apt.TransactionBuilder,
|
|
257
|
+
tao: Tao.TransactionBuilderFactory,
|
|
258
|
+
ttao: Tao.TransactionBuilderFactory,
|
|
259
|
+
icp: Icp.TransactionBuilder,
|
|
260
|
+
ticp: Icp.TransactionBuilder,
|
|
261
|
+
baby: Baby.TransactionBuilder,
|
|
262
|
+
tbaby: Baby.TransactionBuilder,
|
|
263
|
+
cronos: Cronos.TransactionBuilder,
|
|
264
|
+
tcronos: Cronos.TransactionBuilder,
|
|
265
|
+
initia: Initia.TransactionBuilder,
|
|
266
|
+
tinitia: Initia.TransactionBuilder,
|
|
267
|
+
asi: Asi.TransactionBuilder,
|
|
268
|
+
tasi: Asi.TransactionBuilder,
|
|
269
|
+
flr: Flr.TransactionBuilder,
|
|
270
|
+
tflr: Flr.TransactionBuilder,
|
|
271
|
+
sgb: Sgb.TransactionBuilder,
|
|
272
|
+
tsgb: Sgb.TransactionBuilder,
|
|
273
|
+
xdc: Xdc.TransactionBuilder,
|
|
274
|
+
txdc: Xdc.TransactionBuilder,
|
|
275
|
+
wemix: Wemix.TransactionBuilder,
|
|
276
|
+
twemix: Wemix.TransactionBuilder,
|
|
277
|
+
mon: Mon.TransactionBuilder,
|
|
278
|
+
tmon: Mon.TransactionBuilder,
|
|
279
|
+
world: World.TransactionBuilder,
|
|
280
|
+
tworld: World.TransactionBuilder,
|
|
281
|
+
soneium: Soneium.TransactionBuilder,
|
|
282
|
+
tsoneium: Soneium.TransactionBuilder,
|
|
283
|
+
tstt: Stt.TransactionBuilder,
|
|
284
|
+
polyx: Polyx.TransactionBuilderFactory,
|
|
285
|
+
tpolyx: Polyx.TransactionBuilderFactory,
|
|
286
|
+
vet: Vet.TransactionBuilderFactory,
|
|
287
|
+
tvet: Vet.TransactionBuilderFactory,
|
|
288
|
+
canton: Canton.TransactionBuilderFactory,
|
|
289
|
+
tcanton: Canton.TransactionBuilderFactory,
|
|
290
|
+
};
|
|
291
|
+
const coinMessageBuilderFactoryMap = {
|
|
292
|
+
eth: Eth.MessageBuilderFactory,
|
|
293
|
+
hteth: Eth.MessageBuilderFactory,
|
|
294
|
+
bsc: Bsc.MessageBuilderFactory,
|
|
295
|
+
tbsc: Bsc.MessageBuilderFactory,
|
|
296
|
+
ada: Ada.MessageBuilderFactory,
|
|
297
|
+
tada: Ada.MessageBuilderFactory,
|
|
298
|
+
sol: Sol.MessageBuilderFactory,
|
|
299
|
+
tsol: Sol.MessageBuilderFactory,
|
|
300
|
+
arbeth: Eth.MessageBuilderFactory,
|
|
301
|
+
tarbeth: Eth.MessageBuilderFactory,
|
|
302
|
+
opeth: Eth.MessageBuilderFactory,
|
|
303
|
+
topeth: Eth.MessageBuilderFactory,
|
|
304
|
+
baseeth: Eth.MessageBuilderFactory,
|
|
305
|
+
tbaseeth: Eth.MessageBuilderFactory,
|
|
306
|
+
polygon: Eth.MessageBuilderFactory,
|
|
307
|
+
tpolygon: Eth.MessageBuilderFactory,
|
|
118
308
|
};
|
|
309
|
+
statics_1.coins
|
|
310
|
+
.filter((coin) => coin.features.includes(statics_1.CoinFeature.SHARED_EVM_SDK))
|
|
311
|
+
.forEach((coin) => {
|
|
312
|
+
coinBuilderMap[coin.name] = EvmCoin.TransactionBuilder;
|
|
313
|
+
});
|
|
314
|
+
statics_1.coins
|
|
315
|
+
.filter((coin) => coin.features.includes(statics_1.CoinFeature.SHARED_COSMOS_SDK))
|
|
316
|
+
.forEach((coin) => {
|
|
317
|
+
coinBuilderMap[coin.name] = CosmosSharedCoin.TransactionBuilder;
|
|
318
|
+
});
|
|
119
319
|
/**
|
|
120
320
|
* Get the list of coin tickers supported by this library.
|
|
121
321
|
*/
|
|
@@ -133,7 +333,13 @@ function getBuilder(coinName) {
|
|
|
133
333
|
}
|
|
134
334
|
return new builderClass(statics_1.coins.get(coinName));
|
|
135
335
|
}
|
|
136
|
-
|
|
336
|
+
function getMessageBuilderFactory(coinName) {
|
|
337
|
+
const messageBuilderFactoryClass = coinMessageBuilderFactoryMap[coinName];
|
|
338
|
+
if (!messageBuilderFactoryClass) {
|
|
339
|
+
throw new sdk_core_1.BuildMessageError(`Message builder factory for coin ${coinName} not supported`);
|
|
340
|
+
}
|
|
341
|
+
return new messageBuilderFactoryClass(statics_1.coins.get(coinName));
|
|
342
|
+
}
|
|
137
343
|
/**
|
|
138
344
|
* Register a new coin instance with its builder factory
|
|
139
345
|
*
|
|
@@ -148,5 +354,40 @@ function register(coinName, builderFactory) {
|
|
|
148
354
|
coinBuilderMap[coinName] = builderFactory; // For now register the constructor function until reimplement getBuilder method
|
|
149
355
|
return factory;
|
|
150
356
|
}
|
|
151
|
-
|
|
152
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLGlEQUFvRTtBQUNwRSxtREFTOEI7QUFDZCw2RkFKZCx1QkFBWSxPQUljO0FBUW5CLGtHQVhQLDRCQUFpQixPQVdPO0FBUmpCLHNGQUZQLGdCQUFLLE9BRU87QUFFZDs7O0dBR0c7QUFDVSxRQUFBLE1BQU0sR0FBRywwQkFBZSxDQUFDO0FBSXRDOzs7R0FHRztBQUNVLFFBQUEsUUFBUSxHQUFHLDZCQUFrQixDQUFDO0FBRTNDLFFBQVE7QUFDUiw4REFBZ0Q7QUFDdkMsa0JBQUc7QUFFWiwyREFBeUQ7QUFDaEQsb0ZBRFUscUJBQUcsT0FDVjtBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGtFQUFvRDtBQUMzQyxzQkFBSztBQUVkLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDZEQUE0RDtBQUNuRCxxRkFEVyx1QkFBSSxPQUNYO0FBRWIsMkRBQXlEO0FBQ2hELG9GQURVLHFCQUFHLE9BQ1Y7QUFFWiw2REFBNEQ7QUFDbkQscUZBRFcsdUJBQUksT0FDWDtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLCtEQUErRDtBQUN0RCxzRkFEWSx5QkFBSyxPQUNaO0FBRWQsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pDLG9CQUFJO0FBRWIsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosc0VBQXdEO0FBQy9DLDBCQUFPO0FBRWhCLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLE1BQU0sY0FBYyxHQUFHO0lBQ3JCLEdBQUcsRUFBRSxHQUFHLENBQUMs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O0lBQzNILE9BQU8sT0FBTyxDQUFDO0FBQ2pCLENBQUM7QUFURCw0QkFTQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvaW5zLCBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQge1xuICBhY291bnRMaWJDcnlwdG8sXG4gIGFjY291bnRMaWJCYXNlQ29pbixcbiAgQmFzZUJ1aWxkZXIsXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsXG4gIEVkMjU1MTlCSVAzMixcbiAgRWQyNTUxOUtleURlcml2ZXIsXG4gIEVkZHNhLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5leHBvcnQgeyBFZGRzYSwgRWQyNTUxOUJJUDMyIH07XG5cbi8qKlxuICogRGVwcmVjYXRlZCBhZnRlciB2ZXJzaW9uIDIuMTkuMFxuICogUmV0YWluZWQgZm9yIHNob3J0IHRlcm0gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgLSBtaWdyYXRlIHRvOiBAYml0Z28tYmV0YS9zZGstYXBpIGFuZCBAYml0Z28tYmV0YS9zZGstY29yZVxuICovXG5leHBvcnQgY29uc3QgY3J5cHRvID0gYWNvdW50TGliQ3J5cHRvO1xuXG5leHBvcnQgeyBFZDI1NTE5S2V5RGVyaXZlciB9O1xuXG4vKipcbiAqIERlcHJlY2F0ZWQgYWZ0ZXIgdmVyc2lvbiAyLjE5LjBcbiAqIFJldGFpbmVkIGZvciBzaG9ydCB0ZXJtIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IC0gbWlncmF0ZSB0bzogQGJpdGdvLWJldGEvc2RrLWFwaSBhbmQgQGJpdGdvLWJldGEvc2RrLWNvcmVcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VDb2luID0gYWNjb3VudExpYkJhc2VDb2luO1xuXG4vLyBjb2luc1xuaW1wb3J0ICogYXMgVHJ4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXRyeCc7XG5leHBvcnQgeyBUcnggfTtcblxuaW1wb3J0IHsgWHR6TGliIGFzIFh0eiB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXh0eic7XG5leHBvcnQgeyBYdHogfTtcblxuaW1wb3J0ICogYXMgRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5leHBvcnQgeyBFdGggfTtcblxuaW1wb3J0ICogYXMgRXRoMiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ldGgyJztcbmV4cG9ydCB7IEV0aDIgfTtcblxuaW1wb3J0ICogYXMgRXRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0Yyc7XG5leHBvcnQgeyBFdGMgfTtcblxuaW1wb3J0ICogYXMgQXZheEMgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXZheGMnO1xuZXhwb3J0IHsgQXZheEMgfTtcblxuaW1wb3J0ICogYXMgUmJ0YyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1yYnRjJztcbmV4cG9ydCB7IFJidGMgfTtcblxuaW1wb3J0ICogYXMgQ2VsbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jZWxvJztcbmV4cG9ydCB7IENlbG8gfTtcblxuaW1wb3J0ICogYXMgSGJhciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1oYmFyJztcbmV4cG9ydCB7IEhiYXIgfTtcblxuaW1wb3J0IHsgQ3NwckxpYiBhcyBDc3ByIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY3Nwcic7XG5leHBvcnQgeyBDc3ByIH07XG5cbmltcG9ydCB7IFN0eExpYiBhcyBTdHggfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdHgnO1xuZXhwb3J0IHsgU3R4IH07XG5cbmltcG9ydCB7IEFsZ29MaWIgYXMgQWxnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFsZ28nO1xuZXhwb3J0IHsgQWxnbyB9O1xuXG5pbXBvcnQgKiBhcyBBdG9tIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF0b20nO1xuZXhwb3J0IHsgQXRvbSB9O1xuXG5pbXBvcnQgeyBBdmF4cExpYiBhcyBBdmF4UCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF2YXhwJztcbmV4cG9ydCB7IEF2YXhQIH07XG5cbmltcG9ydCAqIGFzIFNvbCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb2wnO1xuZXhwb3J0IHsgU29sIH07XG5cbmltcG9ydCAqIGFzIERvdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1kb3QnO1xuZXhwb3J0IHsgRG90IH07XG5cbmltcG9ydCAqIGFzIE5lYXIgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tbmVhcic7XG5leHBvcnQgeyBOZWFyIH07XG5cbmltcG9ydCAqIGFzIEJzYyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ic2MnO1xuZXhwb3J0IHsgQnNjIH07XG5cbmltcG9ydCAqIGFzIFBvbHlnb24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcG9seWdvbic7XG5leHBvcnQgeyBQb2x5Z29uIH07XG5cbmltcG9ydCAqIGFzIFN1aSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdWknO1xuZXhwb3J0IHsgU3VpIH07XG5cbmNvbnN0IGNvaW5CdWlsZGVyTWFwID0ge1xuICB0cng6IFRyeC5XcmFwcGVkQnVpbGRlcixcbiAgdHRyeDogVHJ4LldyYXBwZWRCdWlsZGVyLFxuICB4dHo6IFh0ei5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHR4dHo6IFh0ei5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGV0YzogRXRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGV0YzogRXRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0ZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBndGV0aDogRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcmJ0YzogUmJ0Yy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRyYnRjOiBSYnRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgY2VsbzogQ2Vsby5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjZWxvOiBDZWxvLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXZheGM6IEF2YXhDLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGF2YXhjOiBBdmF4Qy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGJzYzogQnNjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGJzYzogQnNjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXZheHA6IEF2YXhQLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhdmF4cDogQXZheFAuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgaGJhcjogSGJhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0aGJhcjogSGJhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBjc3ByOiBDc3ByLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRjc3ByOiBDc3ByLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHN0eDogU3R4LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRzdHg6IFN0eC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBhbGdvOiBBbGdvLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhbGdvOiBBbGdvLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHNvbDogU29sLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRzb2w6IFNvbC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBkb3Q6IERvdC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0ZG90OiBEb3QuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgbmVhcjogTmVhci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBwb2x5Z29uOiBQb2x5Z29uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHBvbHlnb246IFBvbHlnb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBzdWk6IFN1aS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c3VpOiBTdWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYXRvbTogQXRvbS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YXRvbTogQXRvbS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxufTtcblxuLyoqXG4gKiBHZXQgdGhlIGxpc3Qgb2YgY29pbiB0aWNrZXJzIHN1cHBvcnRlZCBieSB0aGlzIGxpYnJhcnkuXG4gKi9cbmV4cG9ydCBjb25zdCBzdXBwb3J0ZWRDb2lucyA9IE9iamVjdC5rZXlzKGNvaW5CdWlsZGVyTWFwKTtcblxuLyoqXG4gKiBHZXQgYSB0cmFuc2FjdGlvbiBidWlsZGVyIGZvciB0aGUgZ2l2ZW4gY29pbi5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gY29pbk5hbWUgT25lIG9mIHRoZSB7QGNvZGUgc3VwcG9ydGVkQ29pbnN9XG4gKiBAcmV0dXJucyB7YW55fSBBbiBpbnN0YW5jZSBvZiBhIHtAY29kZSBUcmFuc2FjdGlvbkJ1aWxkZXJ9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRCdWlsZGVyKGNvaW5OYW1lOiBzdHJpbmcpOiBCYXNlQnVpbGRlciB7XG4gIGNvbnN0IGJ1aWxkZXJDbGFzcyA9IGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXTtcbiAgaWYgKCFidWlsZGVyQ2xhc3MpIHtcbiAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBDb2luICR7Y29pbk5hbWV9IG5vdCBzdXBwb3J0ZWRgKTtcbiAgfVxuXG4gIHJldHVybiBuZXcgYnVpbGRlckNsYXNzKGNvaW5zLmdldChjb2luTmFtZSkpO1xufVxuXG4vKipcbiAqIFJlZ2lzdGVyIGEgbmV3IGNvaW4gaW5zdGFuY2Ugd2l0aCBpdHMgYnVpbGRlciBmYWN0b3J5XG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGNvaW5OYW1lIGNvaW4gbmFtZSBhcyBpdCB3YXMgcmVnaXN0ZXJlZCBpbiBAYml0Z28tYmV0YS9zdGF0aWNzXG4gKiBAcGFyYW0ge2FueX0gYnVpbGRlckZhY3RvcnkgdGhlIGJ1aWxkZXIgZmFjdG9yeSBjbGFzcyBmb3IgdGhhdCBjb2luXG4gKiBAcmV0dXJucyB7YW55fSB0aGUgZmFjdG9yeSBpbnN0YW5jZSBmb3IgdGhlIHJlZ2lzdGVyZWQgY29pblxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXI8VCBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5PihcbiAgY29pbk5hbWU6IHN0cmluZyxcbiAgYnVpbGRlckZhY3Rvcnk6IHsgbmV3IChfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pOiBUIH0sXG4pOiBUIHtcbiAgY29uc3QgY29pbkNvbmZpZyA9IGNvaW5zLmdldChjb2luTmFtZSk7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgYnVpbGRlckZhY3RvcnkoY29pbkNvbmZpZyk7XG4gIC8vIGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXSA9IGZhY3Rvcnk7XG4gIGNvaW5CdWlsZGVyTWFwW2NvaW5OYW1lXSA9IGJ1aWxkZXJGYWN0b3J5OyAvLyBGb3Igbm93IHJlZ2lzdGVyIHRoZSBjb25zdHJ1Y3RvciBmdW5jdGlvbiB1bnRpbCByZWltcGxlbWVudCBnZXRCdWlsZGVyIG1ldGhvZFxuICByZXR1cm4gZmFjdG9yeTtcbn1cbiJdfQ==
|
|
357
|
+
/**
|
|
358
|
+
* Register a new coin instance with its message builder factory constructor.
|
|
359
|
+
*
|
|
360
|
+
* @param {string} coinName coin name as it was registered in @bitgo-beta/statics
|
|
361
|
+
* @param {any} messageBuilderFactory the message builder factory class for that coin
|
|
362
|
+
* @returns {any} the message builder factory instance for the registered coin
|
|
363
|
+
*/
|
|
364
|
+
function registerMessageBuilderFactory(coinName, messageBuilderFactory) {
|
|
365
|
+
const coinConfig = statics_1.coins.get(coinName);
|
|
366
|
+
const factory = new messageBuilderFactory(coinConfig);
|
|
367
|
+
coinMessageBuilderFactoryMap[coinName] = messageBuilderFactory;
|
|
368
|
+
return factory;
|
|
369
|
+
}
|
|
370
|
+
/**
|
|
371
|
+
* Verify a message against the given encoded payload.
|
|
372
|
+
*
|
|
373
|
+
* @param {string} coinName - The name of the coin.
|
|
374
|
+
* @param {string} messageRaw - The raw message to verify.
|
|
375
|
+
* @param {string} messageEncoded - The encoded message to verify against.
|
|
376
|
+
* @param {MessageStandardType} messageStandardType - The type of message standard.
|
|
377
|
+
* @param {Record<string, unknown>} [metadata] - Optional metadata for verification.
|
|
378
|
+
* @returns {Promise<boolean>} - Returns true if the verification is successful, false otherwise.
|
|
379
|
+
*/
|
|
380
|
+
async function verifyMessage(coinName, messageRaw, messageEncoded, messageStandardType, metadata) {
|
|
381
|
+
try {
|
|
382
|
+
const messageBuilderFactory = getMessageBuilderFactory(coinName);
|
|
383
|
+
const messageBuilder = messageBuilderFactory.getMessageBuilder(messageStandardType);
|
|
384
|
+
messageBuilder.setPayload(messageRaw);
|
|
385
|
+
const message = await messageBuilder.build();
|
|
386
|
+
return await message.verifyEncodedPayload(messageEncoded, metadata);
|
|
387
|
+
}
|
|
388
|
+
catch (e) {
|
|
389
|
+
console.error(`Error verifying message for coin ${coinName}:`, e);
|
|
390
|
+
return false;
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQThXQSxnQ0FPQztBQUVELDREQU1DO0FBU0QsNEJBU0M7QUFTRCxzRUFRQztBQVlELHNDQWlCQztBQTdiRCxtREFZOEI7QUFVckIsa0dBbEJQLDRCQUFpQixPQWtCTztBQVJqQiw2RkFUUCx1QkFBWSxPQVNPO0FBQUUsc0ZBUnJCLGdCQUFLLE9BUXFCO0FBRDVCLGlEQUFpRjtBQUdqRjs7O0dBR0c7QUFDVSxRQUFBLE1BQU0sR0FBRywwQkFBZSxDQUFDO0FBSXRDOzs7R0FHRztBQUNVLFFBQUEsUUFBUSxHQUFHLDZCQUFrQixDQUFDO0FBRTNDLFFBQVE7QUFDUiw4REFBZ0Q7QUFDdkMsa0JBQUc7QUFFWiwyREFBeUQ7QUFDaEQsb0ZBRFUscUJBQUcsT0FDVjtBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLDhEQUFnRDtBQUN2QyxrQkFBRztBQUVaLGtFQUFvRDtBQUMzQyxzQkFBSztBQUVkLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLDZEQUE0RDtBQUNuRCxxRkFEVyx1QkFBSSxPQUNYO0FBRWIsMkRBQXlEO0FBQ2hELG9GQURVLHFCQUFHLE9BQ1Y7QUFFWiw2REFBNEQ7QUFDbkQscUZBRFcsdUJBQUksT0FDWDtBQUViLG9FQUFzRDtBQUM3Qyx3QkFBTTtBQUVmLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLGdFQUFrRDtBQUN6QyxvQkFBSTtBQUViLCtEQUErRDtBQUN0RCxzRkFEWSx5QkFBSyxPQUNaO0FBRWQsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pDLG9CQUFJO0FBRWIsOERBQWdEO0FBQ3ZDLGtCQUFHO0FBRVosZ0VBQWtEO0FBQ3pD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QUFFLFNBQVMsQ0FBQyx5QkFBeUI7SUFDL0MsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsTUFBTSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDeEMsT0FBTyxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDekMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDN0IsS0FBSyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDOUIsSUFBSSxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDcEMsS0FBSyxFQUFFLElBQUksQ0FBQyx5QkFBeUI7SUFDckMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDbkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDcEMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxrQkFBa0I7SUFDckMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxrQkFBa0I7SUFDdEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsSUFBSSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDN0IsS0FBSyxFQUFFLElBQUksQ0FBQyxrQkFBa0I7SUFDOUIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDakMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0I7SUFDbEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDM0IsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDL0IsTUFBTSxFQUFFLEtBQUssQ0FBQyxrQkFBa0I7SUFDaEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDbkMsUUFBUSxFQUFFLE9BQU8sQ0FBQyxrQkFBa0I7SUFDcEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxrQkFBa0I7SUFDNUIsS0FBSyxFQUFFLEtBQUssQ0FBQyx5QkFBeUI7SUFDdEMsTUFBTSxFQUFFLEtBQUssQ0FBQyx5QkFBeUI7SUFDdkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbEMsSUFBSSxFQUFFLEdBQUcsQ0FBQyx5QkFBeUI7SUFDbkMsTUFBTSxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7SUFDeEMsT0FBTyxFQUFFLE1BQU0sQ0FBQyx5QkFBeUI7Q0FDMUMsQ0FBQztBQUVGLE1BQU0sNEJBQTRCLEdBQUc7SUFDbkMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsS0FBSyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDaEMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsR0FBRyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDOUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDL0IsTUFBTSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDakMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDaEMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDakMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbkMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7SUFDbEMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7Q0FDcEMsQ0FBQztBQUVGLGVBQUs7S0FDRixNQUFNLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLHFCQUFXLENBQUMsY0FBYyxDQUFDLENBQUM7S0FDcEUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7SUFDaEIsY0FBYyxDQUFDLElB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QztRQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0NBQW9DLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlQnVpbGRlcixcbiAgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgRWQyNTUxOUtleURlcml2ZXIsXG4gIEVkMjU1MTlCSVAzMixcbiAgRWRkc2EsXG4gIGFjY291bnRMaWJCYXNlQ29pbixcbiAgYWNvdW50TGliQ3J5cHRvLFxuICBCYXNlTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBCdWlsZE1lc3NhZ2VFcnJvcixcbiAgTWVzc2FnZVN0YW5kYXJkVHlwZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgQ29pbkNvbmZpZywgQ29pbkZlYXR1cmUsIGNvaW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5leHBvcnQgeyBFZDI1NTE5QklQMzIsIEVkZHNhIH07XG5cbi8qKlxuICogRGVwcmVjYXRlZCBhZnRlciB2ZXJzaW9uIDIuMTkuMFxuICogUmV0YWluZWQgZm9yIHNob3J0IHRlcm0gYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgLSBtaWdyYXRlIHRvOiBAYml0Z28tYmV0YS9zZGstYXBpIGFuZCBAYml0Z28tYmV0YS9zZGstY29yZVxuICovXG5leHBvcnQgY29uc3QgY3J5cHRvID0gYWNvdW50TGliQ3J5cHRvO1xuXG5leHBvcnQgeyBFZDI1NTE5S2V5RGVyaXZlciB9O1xuXG4vKipcbiAqIERlcHJlY2F0ZWQgYWZ0ZXIgdmVyc2lvbiAyLjE5LjBcbiAqIFJldGFpbmVkIGZvciBzaG9ydCB0ZXJtIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IC0gbWlncmF0ZSB0bzogQGJpdGdvLWJldGEvc2RrLWFwaSBhbmQgQGJpdGdvLWJldGEvc2RrLWNvcmVcbiAqL1xuZXhwb3J0IGNvbnN0IEJhc2VDb2luID0gYWNjb3VudExpYkJhc2VDb2luO1xuXG4vLyBjb2luc1xuaW1wb3J0ICogYXMgVHJ4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXRyeCc7XG5leHBvcnQgeyBUcnggfTtcblxuaW1wb3J0IHsgWHR6TGliIGFzIFh0eiB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXh0eic7XG5leHBvcnQgeyBYdHogfTtcblxuaW1wb3J0ICogYXMgRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0aCc7XG5leHBvcnQgeyBFdGggfTtcblxuaW1wb3J0ICogYXMgRXRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWV0Yyc7XG5leHBvcnQgeyBFdGMgfTtcblxuaW1wb3J0ICogYXMgQXZheEMgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXZheGMnO1xuZXhwb3J0IHsgQXZheEMgfTtcblxuaW1wb3J0ICogYXMgUmJ0YyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1yYnRjJztcbmV4cG9ydCB7IFJidGMgfTtcblxuaW1wb3J0ICogYXMgQ2VsbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jZWxvJztcbmV4cG9ydCB7IENlbG8gfTtcblxuaW1wb3J0ICogYXMgSGJhciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1oYmFyJztcbmV4cG9ydCB7IEhiYXIgfTtcblxuaW1wb3J0IHsgQ3NwckxpYiBhcyBDc3ByIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY3Nwcic7XG5leHBvcnQgeyBDc3ByIH07XG5cbmltcG9ydCB7IFN0eExpYiBhcyBTdHggfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdHgnO1xuZXhwb3J0IHsgU3R4IH07XG5cbmltcG9ydCB7IEFsZ29MaWIgYXMgQWxnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFsZ28nO1xuZXhwb3J0IHsgQWxnbyB9O1xuXG5pbXBvcnQgKiBhcyBBcmJldGggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYXJiZXRoJztcbmV4cG9ydCB7IEFyYmV0aCB9O1xuXG5pbXBvcnQgKiBhcyBBdG9tIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF0b20nO1xuZXhwb3J0IHsgQXRvbSB9O1xuXG5pbXBvcnQgKiBhcyBPc21vIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLW9zbW8nO1xuZXhwb3J0IHsgT3NtbyB9O1xuXG5pbXBvcnQgeyBBdmF4cExpYiBhcyBBdmF4UCB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWF2YXhwJztcbmV4cG9ydCB7IEF2YXhQIH07XG5cbmltcG9ydCAqIGFzIFRpYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10aWEnO1xuZXhwb3J0IHsgVGlhIH07XG5cbmltcG9ydCAqIGFzIEJlcmEgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYmVyYSc7XG5leHBvcnQgeyBCZXJhIH07XG5cbmltcG9ydCAqIGFzIEJsZCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ibGQnO1xuZXhwb3J0IHsgQmxkIH07XG5cbmltcG9ydCAqIGFzIEhhc2ggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4taGFzaCc7XG5leHBvcnQgeyBIYXNoIH07XG5cbmltcG9ydCAqIGFzIFNlaSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zZWknO1xuZXhwb3J0IHsgU2VpIH07XG5cbmltcG9ydCAqIGFzIEluamVjdGl2ZSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pbmplY3RpdmUnO1xuZXhwb3J0IHsgSW5qZWN0aXZlIH07XG5cbmltcG9ydCAqIGFzIElzbG0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4taXNsbSc7XG5leHBvcnQgeyBJc2xtIH07XG5cbmltcG9ydCAqIGFzIFpldGEgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4temV0YSc7XG5leHBvcnQgeyBaZXRhIH07XG5cbmltcG9ydCAqIGFzIENvcmV1bSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jb3JldW0nO1xuZXhwb3J0IHsgQ29yZXVtIH07XG5cbmltcG9ydCAqIGFzIFJ1bmUgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcnVuZSc7XG5leHBvcnQgeyBSdW5lIH07XG5cbmltcG9ydCAqIGFzIEJhYnkgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tYmFieSc7XG5leHBvcnQgeyBCYWJ5IH07XG5cbmltcG9ydCAqIGFzIE1vbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1tb24nO1xuZXhwb3J0IHsgTW9uIH07XG5cbmltcG9ydCAqIGFzIENyb25vcyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jcm9ub3MnO1xuZXhwb3J0IHsgQ3Jvbm9zIH07XG5cbmltcG9ydCAqIGFzIEluaXRpYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pbml0aWEnO1xuZXhwb3J0IHsgSW5pdGlhIH07XG5cbmltcG9ydCAqIGFzIEFzaSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hc2knO1xuZXhwb3J0IHsgQXNpIH07XG5cbmltcG9ydCAqIGFzIFNvbCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb2wnO1xuZXhwb3J0IHsgU29sIH07XG5cbmltcG9ydCAqIGFzIEFkYSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hZGEnO1xuZXhwb3J0IHsgQWRhIH07XG5cbmltcG9ydCAqIGFzIERvdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1kb3QnO1xuZXhwb3J0IHsgRG90IH07XG5cbmltcG9ydCAqIGFzIE5lYXIgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tbmVhcic7XG5leHBvcnQgeyBOZWFyIH07XG5cbmltcG9ydCAqIGFzIEJzYyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1ic2MnO1xuZXhwb3J0IHsgQnNjIH07XG5cbmltcG9ydCAqIGFzIFBvbHlnb24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tcG9seWdvbic7XG5leHBvcnQgeyBQb2x5Z29uIH07XG5cbmltcG9ydCAqIGFzIFBvbHl4IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXBvbHl4JztcbmV4cG9ydCB7IFBvbHl4IH07XG5cbmltcG9ydCAqIGFzIE9wZXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLW9wZXRoJztcbmV4cG9ydCB7IE9wZXRoIH07XG5cbmltcG9ydCAqIGFzIFN1aSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zdWknO1xuZXhwb3J0IHsgU3VpIH07XG5cbmltcG9ydCAqIGFzIFRvbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10b24nO1xuZXhwb3J0IHsgVG9uIH07XG5cbmltcG9ydCAqIGFzIFhSUCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi14cnAnO1xuZXhwb3J0IHsgWFJQIH07XG5cbmltcG9ydCAqIGFzIHprRXRoIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXprZXRoJztcbmV4cG9ydCB7IHprRXRoIH07XG5cbmltcG9ydCAqIGFzIE9hcyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1vYXMnO1xuZXhwb3J0IHsgT2FzIH07XG5cbmltcG9ydCAqIGFzIENvcmVkYW8gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY29yZWRhbyc7XG5leHBvcnQgeyBDb3JlZGFvIH07XG5cbmltcG9ydCAqIGFzIEFwdCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1hcHQnO1xuZXhwb3J0IHsgQXB0IH07XG5cbmltcG9ydCAqIGFzIEFwZWNoYWluIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLWFwZWNoYWluJztcbmV4cG9ydCB7IEFwZWNoYWluIH07XG5cbmltcG9ydCAqIGFzIFRhbyBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi10YW8nO1xuZXhwb3J0IHsgVGFvIH07XG5cbmltcG9ydCAqIGFzIEljcCBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1pY3AnO1xuZXhwb3J0IHsgSWNwIH07XG5cbmltcG9ydCAqIGFzIEZsciBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1mbHInO1xuZXhwb3J0IHsgRmxyIH07XG5cbmltcG9ydCAqIGFzIEV2bUNvaW4gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tZXZtJztcbmV4cG9ydCB7IEV2bUNvaW4gfTtcblxuaW1wb3J0ICogYXMgU2diIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXNnYic7XG5leHBvcnQgeyBTZ2IgfTtcblxuaW1wb3J0ICogYXMgWGRjIGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXhkYyc7XG5leHBvcnQgeyBYZGMgfTtcblxuaW1wb3J0ICogYXMgV2VtaXggZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4td2VtaXgnO1xuZXhwb3J0IHsgV2VtaXggfTtcblxuaW1wb3J0ICogYXMgV29ybGQgZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4td29ybGQnO1xuZXhwb3J0IHsgV29ybGQgfTtcblxuaW1wb3J0ICogYXMgU3R0IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXN0dCc7XG5leHBvcnQgeyBTdHQgfTtcblxuaW1wb3J0ICogYXMgU29uZWl1bSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1zb25laXVtJztcbmV4cG9ydCB7IFNvbmVpdW0gfTtcblxuaW1wb3J0ICogYXMgVmV0IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb2luLXZldCc7XG5leHBvcnQgeyBWZXQgfTtcblxuaW1wb3J0ICogYXMgQ29zbW9zU2hhcmVkQ29pbiBmcm9tICdAYml0Z28tYmV0YS9zZGstY29pbi1jb3Ntb3MnO1xuZXhwb3J0IHsgQ29zbW9zU2hhcmVkQ29pbiB9O1xuXG5pbXBvcnQgKiBhcyBDYW50b24gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvaW4tY2FudG9uJztcbmV4cG9ydCB7IENhbnRvbiB9O1xuXG5pbXBvcnQgeyBNSUROSUdIVF9UTkNfSEFTSCB9IGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0IHsgTUlETklHSFRfVE5DX0hBU0ggfTtcblxuY29uc3QgY29pbkJ1aWxkZXJNYXAgPSB7XG4gIHRyeDogVHJ4LldyYXBwZWRCdWlsZGVyLFxuICB0dHJ4OiBUcnguV3JhcHBlZEJ1aWxkZXIsXG4gIHh0ejogWHR6LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHh0ejogWHR6LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgZXRjOiBFdGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0ZXRjOiBFdGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBldGg6IEV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRldGg6IEV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGd0ZXRoOiBFdGguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBodGV0aDogRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcmJ0YzogUmJ0Yy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRyYnRjOiBSYnRjLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgY2VsbzogQ2Vsby5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjZWxvOiBDZWxvLlRlc3RuZXRUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGF2YXhjOiBBdmF4Qy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRhdmF4YzogQXZheEMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBic2M6IEJzYy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRic2M6IEJzYy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGF2YXhwOiBBdmF4UC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YXZheHA6IEF2YXhQLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGhiYXI6IEhiYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGhiYXI6IEhiYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgY3NwcjogQ3Nwci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0Y3NwcjogQ3Nwci5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBzdHg6IFN0eC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c3R4OiBTdHguVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYWxnbzogQWxnby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0YWxnbzogQWxnby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBzb2w6IFNvbC5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0c29sOiBTb2wuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgZG90OiBEb3QuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGRvdDogRG90LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIG5lYXI6IE5lYXIuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgcG9seWdvbjogUG9seWdvbi5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRwb2x5Z29uOiBQb2x5Z29uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgc3VpOiBTdWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHN1aTogU3VpLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRpYTogVGlhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHR0aWE6IFRpYS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICBhdG9tOiBBdG9tLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRhdG9tOiBBdG9tLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIG9zbW86IE9zbW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdG9zbW86IE9zbW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgYmxkOiBCbGQuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGJsZDogQmxkLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGhhc2g6IEhhc2guVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGhhc2g6IEhhc2guVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgc2VpOiBTZWkuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHNlaTogU2VpLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGluamVjdGl2ZTogSW5qZWN0aXZlLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRpbmplY3RpdmU6IEluamVjdGl2ZS5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB6ZXRhOiBaZXRhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHR6ZXRhOiBaZXRhLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGlzbG06IElzbG0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGlzbG06IElzbG0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgY29yZXVtOiBDb3JldW0uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdGNvcmV1bTogQ29yZXVtLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGFyYmV0aDogQXJiZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGFyYmV0aDogQXJiZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgb3BldGg6IE9wZXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdG9wZXRoOiBPcGV0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRvbjogVG9uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHRvbjogVG9uLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgemtldGg6IHprRXRoLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHprZXRoOiB6a0V0aC5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGJlcmE6IEJlcmEuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YmVyYTogQmVyYS5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHJ1bmU6IFJ1bmUuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHJ1bmU6IFJ1bmUuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgb2FzOiBPYXMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0b2FzOiBPYXMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBjb3JlZGFvOiBDb3JlZGFvLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGNvcmVkYW86IENvcmVkYW8uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBhcGVjaGFpbjogQXBlY2hhaW4uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXBlY2hhaW46IEFwZWNoYWluLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXB0OiBBcHQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXB0OiBBcHQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YW86IFRhby5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxuICB0dGFvOiBUYW8uVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgaWNwOiBJY3AuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0aWNwOiBJY3AuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBiYWJ5OiBCYWJ5LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGJhYnk6IEJhYnkuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBjcm9ub3M6IENyb25vcy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRjcm9ub3M6IENyb25vcy5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIGluaXRpYTogSW5pdGlhLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdGluaXRpYTogSW5pdGlhLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgYXNpOiBBc2kuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0YXNpOiBBc2kuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICBmbHI6IEZsci5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRmbHI6IEZsci5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHNnYjogU2diLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHNnYjogU2diLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgeGRjOiBYZGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0eGRjOiBYZGMuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB3ZW1peDogV2VtaXguVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0d2VtaXg6IFdlbWl4LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgbW9uOiBNb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0bW9uOiBNb24uVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB3b3JsZDogV29ybGQuVHJhbnNhY3Rpb25CdWlsZGVyLFxuICB0d29ybGQ6IFdvcmxkLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgc29uZWl1bTogU29uZWl1bS5UcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIHRzb25laXVtOiBTb25laXVtLlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgdHN0dDogU3R0LlRyYW5zYWN0aW9uQnVpbGRlcixcbiAgcG9seXg6IFBvbHl4LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRwb2x5eDogUG9seXguVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdmV0OiBWZXQuVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSxcbiAgdHZldDogVmV0LlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIGNhbnRvbjogQ2FudG9uLlRyYW5zYWN0aW9uQnVpbGRlckZhY3RvcnksXG4gIHRjYW50b246IENhbnRvbi5UcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LFxufTtcblxuY29uc3QgY29pbk1lc3NhZ2VCdWlsZGVyRmFjdG9yeU1hcCA9IHtcbiAgZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBodGV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgYnNjOiBCc2MuTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YnNjOiBCc2MuTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBhZGE6IEFkYS5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG4gIHRhZGE6IEFkYS5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG4gIHNvbDogU29sLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdHNvbDogU29sLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgYXJiZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YXJiZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBvcGV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdG9wZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICBiYXNlZXRoOiBFdGguTWVzc2FnZUJ1aWxkZXJGYWN0b3J5LFxuICB0YmFzZWV0aDogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgcG9seWdvbjogRXRoLk1lc3NhZ2VCdWlsZGVyRmFjdG9yeSxcbiAgdHBvbHlnb246IEV0aC5NZXNzYWdlQnVpbGRlckZhY3RvcnksXG59O1xuXG5jb2luc1xuICAuZmlsdGVyKChjb2luKSA9PiBjb2luLmZlYXR1cmVzLmluY2x1ZGVzKENvaW5GZWF0dXJlLlNIQVJFRF9FVk1fU0RLKSlcbiAgLmZvckVhY2goKGNvaW4pID0+IHtcbiAgICBjb2luQnVpbGRlck1hcFtjb2luLm5hbWVdID0gRXZtQ29pbi5UcmFuc2FjdGlvbkJ1aWxkZXI7XG4gIH0pO1xuXG5jb2luc1xuICAuZmlsdGVyKChjb2luKSA9PiBjb2luLmZlYXR1cmVzLmluY2x1ZGVzKENvaW5GZWF0dXJlLlNIQVJFRF9DT1NNT1NfU0RLKSlcbiAgLmZvckVhY2goKGNvaW4pID0+IHtcbiAgICBjb2luQnVpbGRlck1hcFtjb2luLm5hbWVdID0gQ29zbW9zU2hhcmVkQ29pbi5UcmFuc2FjdGlvbkJ1aWxkZXI7XG4gIH0pO1xuXG4vKipcbiAqIEdldCB0aGUgbGlzdCBvZiBjb2luIHRpY2tlcnMgc3VwcG9ydGVkIGJ5IHRoaXMgbGlicmFyeS5cbiAqL1xuZXhwb3J0IGNvbnN0IHN1cHBvcnRlZENvaW5zID0gT2JqZWN0LmtleXMoY29pbkJ1aWxkZXJNYXApO1xuXG4vKipcbiAqIEdldCBhIHRyYW5zYWN0aW9uIGJ1aWxkZXIgZm9yIHRoZSBnaXZlbiBjb2luLlxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBjb2luTmFtZSBPbmUgb2YgdGhlIHtAY29kZSBzdXBwb3J0ZWRDb2luc31cbiAqIEByZXR1cm5zIHthbnl9IEFuIGluc3RhbmNlIG9mIGEge0Bjb2RlIFRyYW5zYWN0aW9uQnVpbGRlcn1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGdldEJ1aWxkZXIoY29pbk5hbWU6IHN0cmluZyk6IEJhc2VCdWlsZGVyIHtcbiAgY29uc3QgYnVpbGRlckNsYXNzID0gY29pbkJ1aWxkZXJNYXBbY29pbk5hbWVdO1xuICBpZiAoIWJ1aWxkZXJDbGFzcykge1xuICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYENvaW4gJHtjb2luTmFtZX0gbm90IHN1cHBvcnRlZGApO1xuICB9XG5cbiAgcmV0dXJuIG5ldyBidWlsZGVyQ2xhc3MoY29pbnMuZ2V0KGNvaW5OYW1lKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNZXNzYWdlQnVpbGRlckZhY3RvcnkoY29pbk5hbWU6IHN0cmluZyk6IEJhc2VNZXNzYWdlQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdCBtZXNzYWdlQnVpbGRlckZhY3RvcnlDbGFzcyA9IGNvaW5NZXNzYWdlQnVpbGRlckZhY3RvcnlNYXBbY29pbk5hbWVdO1xuICBpZiAoIW1lc3NhZ2VCdWlsZGVyRmFjdG9yeUNsYXNzKSB7XG4gICAgdGhyb3cgbmV3IEJ1aWxkTWVzc2FnZUVycm9yKGBNZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBmb3IgY29pbiAke2NvaW5OYW1lfSBub3Qgc3VwcG9ydGVkYCk7XG4gIH1cbiAgcmV0dXJuIG5ldyBtZXNzYWdlQnVpbGRlckZhY3RvcnlDbGFzcyhjb2lucy5nZXQoY29pbk5hbWUpKTtcbn1cblxuLyoqXG4gKiBSZWdpc3RlciBhIG5ldyBjb2luIGluc3RhbmNlIHdpdGggaXRzIGJ1aWxkZXIgZmFjdG9yeVxuICpcbiAqIEBwYXJhbSB7c3RyaW5nfSBjb2luTmFtZSBjb2luIG5hbWUgYXMgaXQgd2FzIHJlZ2lzdGVyZWQgaW4gQGJpdGdvLWJldGEvc3RhdGljc1xuICogQHBhcmFtIHthbnl9IGJ1aWxkZXJGYWN0b3J5IHRoZSBidWlsZGVyIGZhY3RvcnkgY2xhc3MgZm9yIHRoYXQgY29pblxuICogQHJldHVybnMge2FueX0gdGhlIGZhY3RvcnkgaW5zdGFuY2UgZm9yIHRoZSByZWdpc3RlcmVkIGNvaW5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlZ2lzdGVyPFQgZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeT4oXG4gIGNvaW5OYW1lOiBzdHJpbmcsXG4gIGJ1aWxkZXJGYWN0b3J5OiB7IG5ldyAoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KTogVCB9LFxuKTogVCB7XG4gIGNvbnN0IGNvaW5Db25maWcgPSBjb2lucy5nZXQoY29pbk5hbWUpO1xuICBjb25zdCBmYWN0b3J5ID0gbmV3IGJ1aWxkZXJGYWN0b3J5KGNvaW5Db25maWcpO1xuICAvLyBjb2luQnVpbGRlck1hcFtjb2luTmFtZV0gPSBmYWN0b3J5O1xuICBjb2luQnVpbGRlck1hcFtjb2luTmFtZV0gPSBidWlsZGVyRmFjdG9yeTsgLy8gRm9yIG5vdyByZWdpc3RlciB0aGUgY29uc3RydWN0b3IgZnVuY3Rpb24gdW50aWwgcmVpbXBsZW1lbnQgZ2V0QnVpbGRlciBtZXRob2RcbiAgcmV0dXJuIGZhY3Rvcnk7XG59XG5cbi8qKlxuICogUmVnaXN0ZXIgYSBuZXcgY29pbiBpbnN0YW5jZSB3aXRoIGl0cyBtZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBjb25zdHJ1Y3Rvci5cbiAqXG4gKiBAcGFyYW0ge3N0cmluZ30gY29pbk5hbWUgY29pbiBuYW1lIGFzIGl0IHdhcyByZWdpc3RlcmVkIGluIEBiaXRnby1iZXRhL3N0YXRpY3NcbiAqIEBwYXJhbSB7YW55fSBtZXNzYWdlQnVpbGRlckZhY3RvcnkgdGhlIG1lc3NhZ2UgYnVpbGRlciBmYWN0b3J5IGNsYXNzIGZvciB0aGF0IGNvaW5cbiAqIEByZXR1cm5zIHthbnl9IHRoZSBtZXNzYWdlIGJ1aWxkZXIgZmFjdG9yeSBpbnN0YW5jZSBmb3IgdGhlIHJlZ2lzdGVyZWQgY29pblxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVnaXN0ZXJNZXNzYWdlQnVpbGRlckZhY3Rvcnk8VCBleHRlbmRzIEJhc2VNZXNzYWdlQnVpbGRlckZhY3Rvcnk+KFxuICBjb2luTmFtZTogc3RyaW5nLFxuICBtZXNzYWdlQnVpbGRlckZhY3Rvcnk6IHsgbmV3IChfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pOiBUIH0sXG4pOiBUIHtcbiAgY29uc3QgY29pbkNvbmZpZyA9IGNvaW5zLmdldChjb2luTmFtZSk7XG4gIGNvbnN0IGZhY3RvcnkgPSBuZXcgbWVzc2FnZUJ1aWxkZXJGYWN0b3J5KGNvaW5Db25maWcpO1xuICBjb2luTWVzc2FnZUJ1aWxkZXJGYWN0b3J5TWFwW2NvaW5OYW1lXSA9IG1lc3NhZ2VCdWlsZGVyRmFjdG9yeTtcbiAgcmV0dXJuIGZhY3Rvcnk7XG59XG5cbi8qKlxuICogVmVyaWZ5IGEgbWVzc2FnZSBhZ2FpbnN0IHRoZSBnaXZlbiBlbmNvZGVkIHBheWxvYWQuXG4gKlxuICogQHBhcmFtIHtzdHJpbmd9IGNvaW5OYW1lIC0gVGhlIG5hbWUgb2YgdGhlIGNvaW4uXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZVJhdyAtIFRoZSByYXcgbWVzc2FnZSB0byB2ZXJpZnkuXG4gKiBAcGFyYW0ge3N0cmluZ30gbWVzc2FnZUVuY29kZWQgLSBUaGUgZW5jb2RlZCBtZXNzYWdlIHRvIHZlcmlmeSBhZ2FpbnN0LlxuICogQHBhcmFtIHtNZXNzYWdlU3RhbmRhcmRUeXBlfSBtZXNzYWdlU3RhbmRhcmRUeXBlIC0gVGhlIHR5cGUgb2YgbWVzc2FnZSBzdGFuZGFyZC5cbiAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgdW5rbm93bj59IFttZXRhZGF0YV0gLSBPcHRpb25hbCBtZXRhZGF0YSBmb3IgdmVyaWZpY2F0aW9uLlxuICogQHJldHVybnMge1Byb21pc2U8Ym9vbGVhbj59IC0gUmV0dXJucyB0cnVlIGlmIHRoZSB2ZXJpZmljYXRpb24gaXMgc3VjY2Vzc2Z1bCwgZmFsc2Ugb3RoZXJ3aXNlLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdmVyaWZ5TWVzc2FnZShcbiAgY29pbk5hbWU6IHN0cmluZyxcbiAgbWVzc2FnZVJhdzogc3RyaW5nLFxuICBtZXNzYWdlRW5jb2RlZDogc3RyaW5nLFxuICBtZXNzYWdlU3RhbmRhcmRUeXBlOiBNZXNzYWdlU3RhbmRhcmRUeXBlLFxuICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuKTogUHJvbWlzZTxib29sZWFuPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgbWVzc2FnZUJ1aWxkZXJGYWN0b3J5ID0gZ2V0TWVzc2FnZUJ1aWxkZXJGYWN0b3J5KGNvaW5OYW1lKTtcbiAgICBjb25zdCBtZXNzYWdlQnVpbGRlciA9IG1lc3NhZ2VCdWlsZGVyRmFjdG9yeS5nZXRNZXNzYWdlQnVpbGRlcihtZXNzYWdlU3RhbmRhcmRUeXBlKTtcbiAgICBtZXNzYWdlQnVpbGRlci5zZXRQYXlsb2FkKG1lc3NhZ2VSYXcpO1xuICAgIGNvbnN0IG1lc3NhZ2UgPSBhd2FpdCBtZXNzYWdlQnVpbGRlci5idWlsZCgpO1xuICAgIHJldHVybiBhd2FpdCBtZXNzYWdlLnZlcmlmeUVuY29kZWRQYXlsb2FkKG1lc3NhZ2VFbmNvZGVkLCBtZXRhZGF0YSk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBjb25zb2xlLmVycm9yKGBFcnJvciB2ZXJpZnlpbmcgbWVzc2FnZSBmb3IgY29pbiAke2NvaW5OYW1lfTpgLCBlKTtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiJdfQ==
|