@ercworldio/blockchain-shared 1.0.1-dev.13 → 1.0.1-dev.15

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.
@@ -125,6 +125,11 @@
125
125
  "name": "qn-custodial-webhook-sol-dev",
126
126
  "network": "solana-devnet",
127
127
  "template": "solanaWalletFilter"
128
+ },
129
+ {
130
+ "name": "qn-custodial-webhook-sol-local",
131
+ "network": "solana-devnet",
132
+ "template": "solanaWalletFilter"
128
133
  }
129
134
  ],
130
135
  "contracts": [
@@ -211,6 +216,11 @@
211
216
  "name": "qn-custodial-webhook-bsc-dev",
212
217
  "network": "bnbchain-testnet",
213
218
  "template": "evmWalletFilter"
219
+ },
220
+ {
221
+ "name": "qn-custodial-webhook-bsc-local",
222
+ "network": "bnbchain-testnet",
223
+ "template": "evmWalletFilter"
214
224
  }
215
225
  ],
216
226
  "contracts": [
@@ -370,6 +380,11 @@
370
380
  "name": "qn-custodial-webhook-avax-dev",
371
381
  "network": "avalanche-fuji",
372
382
  "template": "evmWalletFilter"
383
+ },
384
+ {
385
+ "name": "qn-custodial-webhook-avax-local",
386
+ "network": "avalanche-fuji",
387
+ "template": "evmWalletFilter"
373
388
  }
374
389
  ],
375
390
  "contracts": [
@@ -471,6 +486,11 @@
471
486
  "name": "qn-custodial-webhook-eth-dev",
472
487
  "network": "ethereum-sepolia",
473
488
  "template": "evmWalletFilter"
489
+ },
490
+ {
491
+ "name": "qn-custodial-webhook-eth-local",
492
+ "network": "ethereum-sepolia",
493
+ "template": "evmWalletFilter"
474
494
  }
475
495
  ],
476
496
  "contracts": [
@@ -558,6 +578,11 @@
558
578
  "name": "qn-custodial-webhook-pol-dev",
559
579
  "network": "polygon-amoy",
560
580
  "template": "evmWalletFilter"
581
+ },
582
+ {
583
+ "name": "qn-custodial-webhook-pol-local",
584
+ "network": "polygon-amoy",
585
+ "template": "evmWalletFilter"
561
586
  }
562
587
  ],
563
588
  "contracts": [
@@ -644,6 +669,11 @@
644
669
  "name": "qn-custodial-webhook-mon-dev",
645
670
  "network": "monad-testnet",
646
671
  "template": "evmWalletFilter"
672
+ },
673
+ {
674
+ "name": "qn-custodial-webhook-mon-local",
675
+ "network": "monad-testnet",
676
+ "template": "evmWalletFilter"
647
677
  }
648
678
  ],
649
679
  "contracts": [
@@ -14,8 +14,7 @@ declare class QnWebhookAddressManager {
14
14
  /** Returns the { name, network } pairs for the notification configs of a given chain. */
15
15
  private get_webhook_keys_for_chain;
16
16
  private get_notif_configs;
17
- private is_stale;
18
- private load;
17
+ private load_entries;
19
18
  private ensure_loaded;
20
19
  private matches_key;
21
20
  add_address(blockchain: BlockchainType, address: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"QnWebhookAddressManager.d.ts","sourceRoot":"","sources":["../../../src/services/quicknode-notifications/QnWebhookAddressManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AA8BlE,cAAM,uBAAuB;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA0B;IACjD,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,KAAK,CAAmD;IAEhE,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO;IAMP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,kBAAkB,GAAG,uBAAuB;IAOzG,OAAO,CAAC,wBAAwB;IAKhC,yFAAyF;IACzF,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,iBAAiB;IAkBzB,OAAO,CAAC,QAAQ;YAMF,IAAI;YAyCJ,aAAa;IAQ3B,OAAO,CAAC,WAAW;IAIN,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB1E,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB1F;;;;OAIG;IACU,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBvF;;;;OAIG;IACU,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwB5F;;;;OAIG;IACU,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBzH;;;;OAIG;IACU,0BAA0B,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAsBhH,sBAAsB;CAuBvC;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"QnWebhookAddressManager.d.ts","sourceRoot":"","sources":["../../../src/services/quicknode-notifications/QnWebhookAddressManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAyBlE,cAAM,uBAAuB;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA0B;IACjD,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,KAAK,CAAqD;IAElE,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO;IAMP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,kBAAkB,GAAG,uBAAuB;IAOzG,OAAO,CAAC,wBAAwB;IAKhC,yFAAyF;IACzF,OAAO,CAAC,0BAA0B;IAQlC,OAAO,CAAC,iBAAiB;YAkBX,YAAY;YA+BZ,aAAa;IAQ3B,OAAO,CAAC,WAAW;IAIN,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB1E,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmB1F;;;;OAIG;IACU,oBAAoB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAwBvF;;;;OAIG;IACU,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB5F;;;;OAIG;IACU,qBAAqB,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBzH;;;;OAIG;IACU,0BAA0B,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;YAsBhH,sBAAsB;CAuBvC;AAED,eAAe,uBAAuB,CAAC"}
@@ -12,6 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
+ const AsyncTTLCache_1 = __importDefault(require("../../utils/AsyncTTLCache"));
15
16
  const ChainManager_1 = __importDefault(require("../ChainManager"));
16
17
  const DepositAddressService_1 = __importDefault(require("../DepositAddressService"));
17
18
  const QnNotificationsApi_1 = __importDefault(require("./QnNotificationsApi"));
@@ -20,7 +21,7 @@ const ADDRESS_SYNC_BATCH_SIZE = 500;
20
21
  const ADDRESS_LOG_THRESHOLD = 1000;
21
22
  class QnWebhookAddressManager {
22
23
  constructor(config, db, rlc) {
23
- this.cache = new Map();
24
+ this.cache = AsyncTTLCache_1.default.create(CACHE_TTL_MS);
24
25
  this.config = config;
25
26
  this.api = QnNotificationsApi_1.default.getInstance(config, rlc);
26
27
  this.db = db;
@@ -58,29 +59,15 @@ class QnWebhookAddressManager {
58
59
  .flatMap(([_, cfg]) => cfg.quicknodeNotificationConfig.map(n => (Object.assign(Object.assign({}, n), { blockchain: cfg.blockchainType }))))
59
60
  .filter((n, i, arr) => arr.findIndex(x => x.name === n.name) === i);
60
61
  }
61
- is_stale(blockchain) {
62
- const cached = this.cache.get(blockchain);
63
- if (!cached)
64
- return true;
65
- return Date.now() - cached.loaded_at > CACHE_TTL_MS;
66
- }
67
- load(blockchain) {
62
+ load_entries(blockchain) {
68
63
  return __awaiter(this, void 0, void 0, function* () {
69
64
  const notif_configs = this.get_notif_configs(blockchain);
70
65
  if (notif_configs.length === 0)
71
- return;
72
- let all_webhooks = [];
73
- try {
74
- const res = yield this.api.get_all_webhooks();
75
- all_webhooks = res.data || [];
76
- }
77
- catch (error) {
78
- console.error(`QnWebhookAddressManager: Failed to fetch webhooks for blockchain=${blockchain}`, error);
79
- return;
80
- }
81
- // Get all addresses to add to webhook
66
+ return [];
67
+ const res = yield this.api.get_all_webhooks();
68
+ const all_webhooks = res.data || [];
82
69
  const addresses = yield this.fetch_all_db_addresses(blockchain);
83
- console.log(`Loading ${addresses.length} addresses from db`);
70
+ console.log(`Loaded ${addresses.length} addresses from db`);
84
71
  const entries = [];
85
72
  for (const notif_config of notif_configs) {
86
73
  const existing = all_webhooks.find(w => {
@@ -88,7 +75,6 @@ class QnWebhookAddressManager {
88
75
  return ((_a = w.name) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === notif_config.name.toLowerCase() &&
89
76
  ((_b = w.network) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === notif_config.network.toLowerCase();
90
77
  });
91
- console.log(`Existing webhooks matching update: `, existing);
92
78
  if (!existing) {
93
79
  console.warn(`QnWebhookAddressManager: No webhook found for config=${notif_config.name} network=${notif_config.network}`);
94
80
  continue;
@@ -101,17 +87,12 @@ class QnWebhookAddressManager {
101
87
  address_set: new Set(addresses),
102
88
  });
103
89
  }
104
- this.cache.set(blockchain, { entries, loaded_at: Date.now() });
90
+ return entries;
105
91
  });
106
92
  }
107
93
  ensure_loaded(blockchain) {
108
94
  return __awaiter(this, void 0, void 0, function* () {
109
- var _a;
110
- if (this.is_stale(blockchain)) {
111
- console.log(`Stale: loading...`);
112
- yield this.load(blockchain);
113
- }
114
- return ((_a = this.cache.get(blockchain)) === null || _a === void 0 ? void 0 : _a.entries) || [];
95
+ return this.cache.get_value(blockchain, blockchain, (bc) => this.load_entries(bc));
115
96
  });
116
97
  }
117
98
  matches_key(entry, key) {
@@ -176,9 +157,9 @@ class QnWebhookAddressManager {
176
157
  const entries = (yield this.ensure_loaded(blockchain))
177
158
  .filter(e => keys.some(k => this.matches_key(e, k)));
178
159
  for (const entry of entries) {
179
- if (entry.address_set.has(address))
180
- continue;
181
- entry.address_set.add(address);
160
+ // if (entry.address_set.has(address)) continue;
161
+ if (!entry.address_set.has(address) && !entry.address_set.has(address.toLowerCase()))
162
+ entry.address_set.add(address);
182
163
  try {
183
164
  console.log(`add_address_to_chain: Updating webhook addresses. new set ${entry.address_set.size} addresses`);
184
165
  yield this.api.update_webhook_addresses(entry.webhook_id, entry.template, Array.from(entry.address_set));
@@ -207,9 +188,9 @@ class QnWebhookAddressManager {
207
188
  const entries = (yield this.ensure_loaded(blockchain))
208
189
  .filter(e => keys.some(k => this.matches_key(e, k)));
209
190
  for (const entry of entries) {
210
- if (!entry.address_set.has(address))
211
- continue;
212
- entry.address_set.delete(address);
191
+ // if (!entry.address_set.has(address)) continue;
192
+ if (entry.address_set.has(address) || entry.address_set.has(address.toLowerCase()))
193
+ entry.address_set.delete(address);
213
194
  try {
214
195
  console.log(`remove_address_from_chain: Updating webhook addresses. new set ${entry.address_set.size} addresses`);
215
196
  yield this.api.update_webhook_addresses(entry.webhook_id, entry.template, Array.from(entry.address_set));
@@ -27,6 +27,7 @@ declare class SetupNotifications extends BaseErrors {
27
27
  * The `blockchain` filter value in DepositAddressService is the string stored
28
28
  * in the DB — e.g. "solana", "evm", "ethereum", etc.
29
29
  */
30
+ private fetch_contract_addresses;
30
31
  private fetch_all_db_addresses;
31
32
  /**
32
33
  * Register a newly-created webhook entry in the internal maps.
@@ -1 +1 @@
1
- {"version":3,"file":"SetupNotifications.d.ts","sourceRoot":"","sources":["../../../src/services/quicknode-notifications/SetupNotifications.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAQlE,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;IAC3B,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B;AAWD,cAAM,kBAAmB,SAAQ,UAAU;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,GAAG,CAAqB;IAEhC,OAAO,CAAC,WAAW,CAAoD;IAEvE,OAAO,CAAC,aAAa,CAA8D;IAEnF,OAAO,CAAC,eAAe,CAAqD;IAC5E,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO;IAOP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,kBAAkB,GAAG,kBAAkB;IAO5F,mBAAmB,IAAI,MAAM,EAAE;IAI/B,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IAOhF;;;;OAIG;YACW,sBAAsB;IAuBpC;;OAEG;IACH,OAAO,CAAC,cAAc;IAOT,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAwH3B,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyDvE,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAe1F;AAED,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"SetupNotifications.d.ts","sourceRoot":"","sources":["../../../src/services/quicknode-notifications/SetupNotifications.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAiB,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAQlE,MAAM,WAAW,wBAAwB;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,cAAc,CAAC;IAC3B,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAC5B;AAWD,cAAM,kBAAmB,SAAQ,UAAU;IACvC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAqB;IAC5C,OAAO,CAAC,GAAG,CAAqB;IAEhC,OAAO,CAAC,WAAW,CAAoD;IAEvE,OAAO,CAAC,aAAa,CAA8D;IAEnF,OAAO,CAAC,eAAe,CAAqD;IAC5E,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,EAAE,CAAgB;IAC1B,OAAO;IAOP,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,EAAE,kBAAkB,GAAG,kBAAkB;IAO5F,mBAAmB,IAAI,MAAM,EAAE;IAI/B,uBAAuB,CAAC,EAAE,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IAOhF;;;;OAIG;YACW,wBAAwB;YAUxB,sBAAsB;IAuBpC;;OAEG;IACH,OAAO,CAAC,cAAc;IAOT,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA0H3B,WAAW,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyDvE,cAAc,CAAC,UAAU,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAe1F;AAED,eAAe,kBAAkB,CAAC"}
@@ -53,6 +53,18 @@ class SetupNotifications extends errors_1.default {
53
53
  * The `blockchain` filter value in DepositAddressService is the string stored
54
54
  * in the DB — e.g. "solana", "evm", "ethereum", etc.
55
55
  */
56
+ fetch_contract_addresses(notif_config) {
57
+ return __awaiter(this, void 0, void 0, function* () {
58
+ var _a;
59
+ if (!notif_config.chain_id) {
60
+ console.warn(`SetupNotifications: source='contract' but no chain_id set for ${notif_config.name} — skipping`);
61
+ return [];
62
+ }
63
+ const chain_manager = ChainManager_1.default.getInstance(this.config);
64
+ const escrow_config = chain_manager.getEscrowContractForChain(notif_config.chain_id);
65
+ return (_a = escrow_config === null || escrow_config === void 0 ? void 0 : escrow_config.addresses) !== null && _a !== void 0 ? _a : [];
66
+ });
67
+ }
56
68
  fetch_all_db_addresses(blockchain) {
57
69
  return __awaiter(this, void 0, void 0, function* () {
58
70
  const service = new DepositAddressService_1.default(this.db);
@@ -117,8 +129,10 @@ class SetupNotifications extends errors_1.default {
117
129
  return ((_a = w.name) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === notif_config.name.toLowerCase() &&
118
130
  ((_b = w.network) === null || _b === void 0 ? void 0 : _b.toLowerCase()) === notif_config.network.toLowerCase();
119
131
  });
120
- // Fetch current addresses from the DB for this blockchain
121
- const db_addresses = yield this.fetch_all_db_addresses(notif_config.blockchain);
132
+ // Fetch addresses — contract source uses escrow addresses, wallet source uses DB deposit addresses
133
+ const db_addresses = notif_config.source === 'contract'
134
+ ? yield this.fetch_contract_addresses(notif_config)
135
+ : yield this.fetch_all_db_addresses(notif_config.blockchain);
122
136
  console.log(`SetupNotifications: ${db_addresses.length} DB addresses for blockchain=${notif_config.blockchain}`);
123
137
  let webhook_id;
124
138
  if (existing) {
@@ -12,6 +12,10 @@ export type QuicknodeNotificationConfig = {
12
12
  name: string;
13
13
  network: string;
14
14
  template: 'solanaWalletFilter' | 'evmWalletFilter';
15
+ /** 'wallet' (default) = custodial deposit addresses; 'contract' = escrow contract addresses */
16
+ source?: 'wallet' | 'contract';
17
+ /** Required when source === 'contract' — the chain ID to look up the escrow contract */
18
+ chain_id?: number;
15
19
  };
16
20
  export type QuicknodeStreamConfig = {
17
21
  network: string;
@@ -1 +1 @@
1
- {"version":3,"file":"chain_manager.d.ts","sourceRoot":"","sources":["../../../src/services/types/chain_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,6BAA6B,GAAG;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC;CACjC,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,oBAAoB,GAAG,iBAAiB,CAAC;CACtD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,GAAG,qBAAqB,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,GAAG,cAAc,CAAC;IAC7H,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CAC3C,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,0BAA0B,EAAE,CAAC;IACpD,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAA;CAChC,CAAA;AAGD,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0BAA0B,EAAE,MAAM,CAAC;IACnC,0BAA0B,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,UAAU;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"chain_manager.d.ts","sourceRoot":"","sources":["../../../src/services/types/chain_manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAElD,MAAM,MAAM,6BAA6B,GAAG;IACxC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAC;CACjC,CAAA;AAED,MAAM,MAAM,2BAA2B,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,oBAAoB,GAAG,iBAAiB,CAAC;IACnD,+FAA+F;IAC/F,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC/B,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,GAAG,qBAAqB,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,GAAG,cAAc,CAAC;IAC7H,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;CAC3C,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,qBAAqB,EAAE,0BAA0B,EAAE,CAAC;IACpD,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB,CAAA;AAED,MAAM,MAAM,0BAA0B,GAAG;IACrC,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,qBAAqB,CAAC;IAC/B,IAAI,EAAE,SAAS,GAAG,kBAAkB,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,UAAU,GAAG,QAAQ,CAAA;CAChC,CAAA;AAGD,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,MAAM,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,sBAAsB;IACnC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,0BAA0B,EAAE,MAAM,CAAC;IACnC,0BAA0B,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,UAAU;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;CAC7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ercworldio/blockchain-shared",
3
- "version": "1.0.1-dev.13",
3
+ "version": "1.0.1-dev.15",
4
4
  "description": "Shared library for blockchain projects",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",