@keplr-wallet/stores-ibc 0.12.300-rc.0 → 0.12.300

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/build/channel.js CHANGED
@@ -63,7 +63,7 @@ class IBCChannelStore {
63
63
  const migrate = yield this.kvStore.get("migrate/v1");
64
64
  if (!migrate) {
65
65
  const migrationData = new Map();
66
- for (const chainInfo of this.chainStore.modularChainInfos) {
66
+ for (const chainInfo of this.chainStore.chainInfos) {
67
67
  const chainIdentifier = cosmos_1.ChainIdHelper.parse(chainInfo.chainId);
68
68
  const legacyKey = `${chainIdentifier.identifier}-channels`;
69
69
  const legacyObj = yield this.legacyKVStore.get(legacyKey);
@@ -122,10 +122,7 @@ class IBCChannelStore {
122
122
  const savedChainIdentifiers = new Set(Object.keys(saved !== null && saved !== void 0 ? saved : {}));
123
123
  const removingChainIdentifiers = [];
124
124
  for (const savedChainIdentifier of savedChainIdentifiers) {
125
- if (!this.chainStore.hasModularChain(savedChainIdentifier) ||
126
- !this.chainStore
127
- .getModularChainInfoImpl(savedChainIdentifier)
128
- .matchModule("cosmos")) {
125
+ if (!this.chainStore.hasChain(savedChainIdentifier)) {
129
126
  removingChainIdentifiers.push(savedChainIdentifier);
130
127
  }
131
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"channel.js","sourceRoot":"","sources":["../src/channel.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="lodash" />
2
- import { AppCurrency, ModularChainInfo } from "@keplr-wallet/types";
3
- import { ChainStore, CosmosQueries, CosmwasmQueries, IQueriesStore, SecretQueries } from "@keplr-wallet/stores";
2
+ import { AppCurrency, ChainInfo } from "@keplr-wallet/types";
3
+ import { IChainInfoImpl, ChainStore, CosmosQueries, CosmwasmQueries, IQueriesStore, SecretQueries } from "@keplr-wallet/stores";
4
4
  import { KVStore } from "@keplr-wallet/common";
5
5
  import { EthereumQueries } from "@keplr-wallet/stores-eth";
6
6
  type CacheIBCDenomData = {
@@ -61,7 +61,7 @@ export declare class IBCCurrencyRegistrar {
61
61
  counterpartyPortId?: string;
62
62
  clientChainId?: string;
63
63
  }[];
64
- }, originChainInfo: ModularChainInfo | undefined, counterpartyChainInfo: ModularChainInfo | undefined, originCurrency: AppCurrency | undefined) => string;
64
+ }, originChainInfo: IChainInfoImpl | undefined, counterpartyChainInfo: IChainInfoImpl | undefined, originCurrency: AppCurrency | undefined) => string;
65
65
  static defaultCoinDenomGenerator(denomTrace: {
66
66
  denom: string;
67
67
  paths: {
@@ -71,7 +71,7 @@ export declare class IBCCurrencyRegistrar {
71
71
  counterpartyPortId?: string;
72
72
  clientChainId?: string;
73
73
  }[];
74
- }, _: ModularChainInfo | undefined, counterpartyChainInfo: ModularChainInfo | undefined, originCurrency: AppCurrency | undefined): string;
74
+ }, _: ChainInfo | undefined, counterpartyChainInfo: ChainInfo | undefined, originCurrency: AppCurrency | undefined): string;
75
75
  protected cacheDenomTracePaths: Map<string, CacheIBCDenomData>;
76
76
  protected staledDenomTracePaths: Map<string, CacheIBCDenomData>;
77
77
  protected cacheTokenInfoMetadata: Map<string, CacheTokenInfo>;
@@ -95,13 +95,12 @@ export declare class IBCCurrencyRegistrar {
95
95
  counterpartyPortId?: string;
96
96
  clientChainId?: string;
97
97
  }[];
98
- }, originChainInfo: ModularChainInfo | undefined, counterpartyChainInfo: ModularChainInfo | undefined, originCurrency: AppCurrency | undefined) => string);
98
+ }, originChainInfo: IChainInfoImpl | undefined, counterpartyChainInfo: IChainInfoImpl | undefined, originCurrency: AppCurrency | undefined) => string);
99
99
  protected init(): Promise<void>;
100
100
  protected ibcCurrencyRegistrar(chainId: string, coinMinimalDenom: string): {
101
101
  value: AppCurrency | undefined;
102
102
  done: boolean;
103
103
  } | undefined;
104
- protected isIBCAvailableChain(chainId: string): boolean;
105
104
  protected getERC20TokenInfo(chainId: string, contractAddress: string): {
106
105
  res: {
107
106
  coinDenom: string;
@@ -91,7 +91,8 @@ class IBCCurrencyRegistrar {
91
91
  });
92
92
  }
93
93
  ibcCurrencyRegistrar(chainId, coinMinimalDenom) {
94
- if (!this.isIBCAvailableChain(chainId)) {
94
+ var _a;
95
+ if (!this.chainStore.hasChain(chainId)) {
95
96
  return;
96
97
  }
97
98
  const denomHelper = new common_1.DenomHelper(coinMinimalDenom);
@@ -120,17 +121,17 @@ class IBCCurrencyRegistrar {
120
121
  if (!path.clientChainId) {
121
122
  return true;
122
123
  }
123
- return !this.isIBCAvailableChain(path.clientChainId);
124
+ return !this.chainStore.hasChain(path.clientChainId);
124
125
  })) {
125
126
  fromCache = true;
126
127
  denomTrace = cached.denomTrace;
127
128
  if (cached.originChainId &&
128
- this.isIBCAvailableChain(cached.originChainId)) {
129
- originChainInfo = this.chainStore.getModularChain(cached.originChainId);
129
+ this.chainStore.hasChain(cached.originChainId)) {
130
+ originChainInfo = this.chainStore.getChain(cached.originChainId);
130
131
  }
131
132
  if (cached.counterpartyChainId &&
132
- this.isIBCAvailableChain(cached.counterpartyChainId)) {
133
- counterpartyChainInfo = this.chainStore.getModularChain(cached.counterpartyChainId);
133
+ this.chainStore.hasChain(cached.counterpartyChainId)) {
134
+ counterpartyChainInfo = this.chainStore.getChain(cached.counterpartyChainId);
134
135
  }
135
136
  // 만약 이전의 cache에서 originChainId와 counterpartyChainId를 몰랐던 상태였는데
136
137
  // 현재는 알게된 경우에는 cache를 사용하지않고 지운다.
@@ -150,10 +151,10 @@ class IBCCurrencyRegistrar {
150
151
  // 만약 이전의 cache에서 originChainId와 counterpartyChainId를 몰랐던 상태였는데
151
152
  // 현재는 알게된 경우에는 cache를 사용하지않고 지운다.
152
153
  if ((cached.originChainId &&
153
- this.isIBCAvailableChain(cached.originChainId) &&
154
+ this.chainStore.hasChain(cached.originChainId) &&
154
155
  cached.originChainUnknown) ||
155
156
  (cached.counterpartyChainId &&
156
- this.isIBCAvailableChain(cached.counterpartyChainId) &&
157
+ this.chainStore.hasChain(cached.counterpartyChainId) &&
157
158
  cached.counterpartyChainUnknown)) {
158
159
  cached = undefined;
159
160
  fromCache = false;
@@ -196,9 +197,7 @@ class IBCCurrencyRegistrar {
196
197
  // 현재 ethereum ibc의 경우 ethereum까지 타고 들어가서 nested하게 처리할 방법은 없다.
197
198
  // 마지막 path일 경우만 처리한다.
198
199
  isLast &&
199
- this.chainStore
200
- .getModularChainInfoImpl(chainIdBefore)
201
- .hasFeature("ibc-v2") &&
200
+ this.chainStore.getChain(chainIdBefore).hasFeature("ibc-v2") &&
202
201
  denomTrace.denom.startsWith("0x")) {
203
202
  const clientState = this.queriesStore
204
203
  .get(chainIdBefore)
@@ -213,17 +212,16 @@ class IBCCurrencyRegistrar {
213
212
  if (!rawCounterpartyChainId) {
214
213
  rawCounterpartyChainId = ethereumChainId;
215
214
  }
216
- if (this.isIBCAvailableChain(ethereumChainId)) {
215
+ if (this.chainStore.hasChain(ethereumChainId)) {
217
216
  // TODO: counterparty channel id를 구해야할듯한데
218
217
  // https://github.com/cosmos/ibc-go/blob/a8b4af9c757f5235a965718597f73f039c4a5708/proto/ibc/core/client/v2/query.proto#L15
219
218
  // 이것으로 추정되지만 현재 cosmos testnet에서 해당 쿼리가 501 not implemented로 반환되기 때문에 일단 패스...
220
219
  path.clientChainId = ethereumChainId;
221
220
  chainIdBefore = ethereumChainId;
222
- originChainInfo =
223
- this.chainStore.getModularChain(ethereumChainId);
221
+ originChainInfo = this.chainStore.getChain(ethereumChainId);
224
222
  if (!counterpartyChainInfo) {
225
223
  counterpartyChainInfo =
226
- this.chainStore.getModularChain(ethereumChainId);
224
+ this.chainStore.getChain(ethereumChainId);
227
225
  }
228
226
  }
229
227
  else {
@@ -258,12 +256,12 @@ class IBCCurrencyRegistrar {
258
256
  }
259
257
  }
260
258
  if (clientState.clientChainId &&
261
- this.isIBCAvailableChain(clientState.clientChainId)) {
259
+ this.chainStore.hasChain(clientState.clientChainId)) {
262
260
  path.clientChainId = clientState.clientChainId;
263
261
  chainIdBefore = clientState.clientChainId;
264
- originChainInfo = this.chainStore.getModularChain(clientState.clientChainId);
262
+ originChainInfo = this.chainStore.getChain(clientState.clientChainId);
265
263
  if (!counterpartyChainInfo) {
266
- counterpartyChainInfo = this.chainStore.getModularChain(clientState.clientChainId);
264
+ counterpartyChainInfo = this.chainStore.getChain(clientState.clientChainId);
267
265
  }
268
266
  }
269
267
  else {
@@ -292,22 +290,21 @@ class IBCCurrencyRegistrar {
292
290
  }
293
291
  if (!originChainInfo &&
294
292
  cached.originChainId &&
295
- this.isIBCAvailableChain(cached.originChainId)) {
296
- originChainInfo = this.chainStore.getModularChain(cached.originChainId);
293
+ this.chainStore.hasChain(cached.originChainId)) {
294
+ originChainInfo = this.chainStore.getChain(cached.originChainId);
297
295
  }
298
296
  if (!counterpartyChainInfo &&
299
297
  cached.counterpartyChainId &&
300
- this.isIBCAvailableChain(cached.counterpartyChainId)) {
301
- counterpartyChainInfo = this.chainStore.getModularChain(cached.counterpartyChainId);
298
+ this.chainStore.hasChain(cached.counterpartyChainId)) {
299
+ counterpartyChainInfo = this.chainStore.getChain(cached.counterpartyChainId);
302
300
  }
303
301
  }
304
302
  }
305
303
  if (originChainInfo && denomTrace) {
306
304
  // 이 경우 ethereum 계열이기 때문에 다르게 처리해야한다.
307
- if (this.chainStore.isEvmOnlyChain(originChainInfo.chainId) &&
308
- "evm" in originChainInfo) {
305
+ if (this.chainStore.isEvmOnlyChain(originChainInfo.chainId)) {
309
306
  // 유저가 Add Token을 통해서 추가했을 경우
310
- const currency = originChainInfo.evm.currencies.find((cur) => {
307
+ const currency = originChainInfo.currencies.find((cur) => {
311
308
  return cur.coinMinimalDenom === `erc20:${denomTrace.denom}`;
312
309
  });
313
310
  if (currency) {
@@ -385,19 +382,14 @@ class IBCCurrencyRegistrar {
385
382
  const isERC20Currency = denomTrace.denom.split(/^(erc20)\/(\w+)$/).length === 4;
386
383
  switch (true) {
387
384
  case isCW20Currency:
388
- const modularChainInfoImpl = this.chainStore.getModularChainInfoImpl(originChainInfo.chainId);
389
- const isSecret20Currency = this.chainStore
390
- .getModularChainInfoImpl(originChainInfo.chainId)
391
- .hasFeature("secretwasm");
385
+ const isSecret20Currency = (_a = originChainInfo.features) === null || _a === void 0 ? void 0 : _a.includes("secretwasm");
392
386
  if (!isSecret20Currency) {
393
387
  let isFetching = false;
394
388
  // If the origin currency is ics20-cw20.
395
- let cw20Currency = modularChainInfoImpl
396
- .getCurrencies()
397
- .find((cur) => denomTrace &&
389
+ let cw20Currency = originChainInfo.currencies.find((cur) => denomTrace &&
398
390
  cur.coinMinimalDenom.startsWith(denomTrace.denom));
399
391
  if (!cw20Currency &&
400
- this.isIBCAvailableChain(originChainInfo.chainId)) {
392
+ this.chainStore.hasChain(originChainInfo.chainId)) {
401
393
  const originQueries = this.queriesStore.get(originChainInfo.chainId);
402
394
  if (originQueries.cosmwasm) {
403
395
  const contractAddress = denomTrace.denom.replace("cw20:", "");
@@ -433,12 +425,10 @@ class IBCCurrencyRegistrar {
433
425
  else {
434
426
  let isSecret20Fetching = false;
435
427
  // If the origin currency is ics20-cw20.
436
- let secret20Currency = modularChainInfoImpl
437
- .getCurrencies()
438
- .find((cur) => denomTrace &&
428
+ let secret20Currency = originChainInfo.currencies.find((cur) => denomTrace &&
439
429
  cur.coinMinimalDenom.startsWith(denomTrace.denom));
440
430
  if (!secret20Currency &&
441
- this.isIBCAvailableChain(originChainInfo.chainId)) {
431
+ this.chainStore.hasChain(originChainInfo.chainId)) {
442
432
  const originQueries = this.queriesStore.get(originChainInfo.chainId);
443
433
  if (originQueries.secret) {
444
434
  const contractAddress = denomTrace.denom.replace("cw20:", "");
@@ -475,15 +465,10 @@ class IBCCurrencyRegistrar {
475
465
  case isERC20Currency:
476
466
  let isERC20Fetching = false;
477
467
  // If the origin currency is ics20-erc20.
478
- let erc20Currency = this.chainStore
479
- .getModularChainInfoImpl(originChainInfo.chainId)
480
- .getCurrencies()
481
- .find((cur) => {
482
- return (denomTrace &&
483
- cur.coinMinimalDenom.startsWith(denomTrace.denom));
484
- });
468
+ let erc20Currency = originChainInfo.currencies.find((cur) => denomTrace &&
469
+ cur.coinMinimalDenom.startsWith(denomTrace.denom));
485
470
  if (!erc20Currency &&
486
- this.isIBCAvailableChain(originChainInfo.chainId)) {
471
+ this.chainStore.hasChain(originChainInfo.chainId)) {
487
472
  const originQueries = this.queriesStore.get(originChainInfo.chainId);
488
473
  if (originQueries.ethereum) {
489
474
  const contractAddress = denomTrace.denom.replace("erc20/", "");
@@ -517,12 +502,8 @@ class IBCCurrencyRegistrar {
517
502
  }
518
503
  break;
519
504
  default:
520
- const currency = this.chainStore
521
- .getModularChainInfoImpl(originChainInfo.chainId)
522
- .findCurrency(denomTrace.denom);
523
- if (this.chainStore
524
- .getModularChainInfoImpl(originChainInfo.chainId)
525
- .isCurrencyRegistrationInProgress(denomTrace.denom)) {
505
+ const currency = originChainInfo.findCurrency(denomTrace.denom);
506
+ if (originChainInfo.isCurrencyRegistrationInProgress(denomTrace.denom)) {
526
507
  isGlobalFetching = true;
527
508
  }
528
509
  if (currency && !("paths" in currency)) {
@@ -566,12 +547,6 @@ class IBCCurrencyRegistrar {
566
547
  };
567
548
  }
568
549
  }
569
- isIBCAvailableChain(chainId) {
570
- return (this.chainStore.hasModularChain(chainId) &&
571
- this.chainStore
572
- .getModularChainInfoImpl(chainId)
573
- .matchModules({ or: ["cosmos", "evm"] }));
574
- }
575
550
  getERC20TokenInfo(chainId, contractAddress) {
576
551
  var _a, _b;
577
552
  const { res: cached, staled } = this.getCacheTokenInfo(chainId, contractAddress);
@@ -1 +1 @@
1
- {"version":3,"file":"currency-registrar.js","sourceRoot":"","sources":["../src/currency-registrar.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"currency-registrar.js","sourceRoot":"","sources":["../src/currency-registrar.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keplr-wallet/stores-ibc",
3
- "version": "0.12.300-rc.0",
3
+ "version": "0.12.300",
4
4
  "main": "build/index.js",
5
5
  "author": "chainapsis",
6
6
  "license": "Apache-2.0",
@@ -16,11 +16,11 @@
16
16
  "lint-fix": "npx eslint --fix \"src/**/*\" && npx prettier --write \"src/**/*\""
17
17
  },
18
18
  "dependencies": {
19
- "@keplr-wallet/common": "0.12.300-rc.0",
20
- "@keplr-wallet/cosmos": "0.12.300-rc.0",
21
- "@keplr-wallet/stores": "0.12.300-rc.0",
22
- "@keplr-wallet/stores-eth": "0.12.300-rc.0",
23
- "@keplr-wallet/types": "0.12.300-rc.0",
19
+ "@keplr-wallet/common": "0.12.300",
20
+ "@keplr-wallet/cosmos": "0.12.300",
21
+ "@keplr-wallet/stores": "0.12.300",
22
+ "@keplr-wallet/stores-eth": "0.12.300",
23
+ "@keplr-wallet/types": "0.12.300",
24
24
  "lodash.debounce": "^4.0.8"
25
25
  },
26
26
  "peerDependencies": {
@@ -30,5 +30,5 @@
30
30
  "devDependencies": {
31
31
  "@types/lodash.debounce": "^4"
32
32
  },
33
- "gitHead": "8381489c409d1fe7810a8da05982c7d9432c6ff7"
33
+ "gitHead": "049eaa2ae2133fee7cd6e5e7288a63176f86cff2"
34
34
  }
package/src/channel.ts CHANGED
@@ -41,7 +41,7 @@ export class IBCChannelStore {
41
41
  if (!migrate) {
42
42
  const migrationData = new Map<string, Map<string, Channel>>();
43
43
 
44
- for (const chainInfo of this.chainStore.modularChainInfos) {
44
+ for (const chainInfo of this.chainStore.chainInfos) {
45
45
  const chainIdentifier = ChainIdHelper.parse(chainInfo.chainId);
46
46
  const legacyKey = `${chainIdentifier.identifier}-channels`;
47
47
  const legacyObj = await this.legacyKVStore.get<
@@ -116,12 +116,7 @@ export class IBCChannelStore {
116
116
  const savedChainIdentifiers = new Set<string>(Object.keys(saved ?? {}));
117
117
  const removingChainIdentifiers: string[] = [];
118
118
  for (const savedChainIdentifier of savedChainIdentifiers) {
119
- if (
120
- !this.chainStore.hasModularChain(savedChainIdentifier) ||
121
- !this.chainStore
122
- .getModularChainInfoImpl(savedChainIdentifier)
123
- .matchModule("cosmos")
124
- ) {
119
+ if (!this.chainStore.hasChain(savedChainIdentifier)) {
125
120
  removingChainIdentifiers.push(savedChainIdentifier);
126
121
  }
127
122
  }
@@ -1,10 +1,7 @@
1
1
  import { makeObservable, observable, runInAction } from "mobx";
2
+ import { AppCurrency, ChainInfo, ERC20Currency } from "@keplr-wallet/types";
2
3
  import {
3
- AppCurrency,
4
- ERC20Currency,
5
- ModularChainInfo,
6
- } from "@keplr-wallet/types";
7
- import {
4
+ IChainInfoImpl,
8
5
  ChainStore,
9
6
  CosmosQueries,
10
7
  CosmwasmQueries,
@@ -71,8 +68,8 @@ export class IBCCurrencyRegistrar {
71
68
  clientChainId?: string;
72
69
  }[];
73
70
  },
74
- _: ModularChainInfo | undefined,
75
- counterpartyChainInfo: ModularChainInfo | undefined,
71
+ _: ChainInfo | undefined,
72
+ counterpartyChainInfo: ChainInfo | undefined,
76
73
  originCurrency: AppCurrency | undefined
77
74
  ): string {
78
75
  if (originCurrency) {
@@ -132,8 +129,8 @@ export class IBCCurrencyRegistrar {
132
129
  clientChainId?: string;
133
130
  }[];
134
131
  },
135
- originChainInfo: ModularChainInfo | undefined,
136
- counterpartyChainInfo: ModularChainInfo | undefined,
132
+ originChainInfo: IChainInfoImpl | undefined,
133
+ counterpartyChainInfo: IChainInfoImpl | undefined,
137
134
  originCurrency: AppCurrency | undefined
138
135
  ) => string = IBCCurrencyRegistrar.defaultCoinDenomGenerator
139
136
  ) {
@@ -188,7 +185,7 @@ export class IBCCurrencyRegistrar {
188
185
  done: boolean;
189
186
  }
190
187
  | undefined {
191
- if (!this.isIBCAvailableChain(chainId)) {
188
+ if (!this.chainStore.hasChain(chainId)) {
192
189
  return;
193
190
  }
194
191
 
@@ -213,8 +210,8 @@ export class IBCCurrencyRegistrar {
213
210
 
214
211
  const hash = denomHelper.denom.replace("ibc/", "");
215
212
 
216
- let counterpartyChainInfo: ModularChainInfo | undefined;
217
- let originChainInfo: ModularChainInfo | undefined;
213
+ let counterpartyChainInfo: IChainInfoImpl | undefined;
214
+ let originChainInfo: IChainInfoImpl | undefined;
218
215
  let denomTrace:
219
216
  | {
220
217
  denom: string;
@@ -238,24 +235,22 @@ export class IBCCurrencyRegistrar {
238
235
  if (!path.clientChainId) {
239
236
  return true;
240
237
  }
241
- return !this.isIBCAvailableChain(path.clientChainId);
238
+ return !this.chainStore.hasChain(path.clientChainId);
242
239
  })
243
240
  ) {
244
241
  fromCache = true;
245
242
  denomTrace = cached.denomTrace;
246
243
  if (
247
244
  cached.originChainId &&
248
- this.isIBCAvailableChain(cached.originChainId)
245
+ this.chainStore.hasChain(cached.originChainId)
249
246
  ) {
250
- originChainInfo = this.chainStore.getModularChain(
251
- cached.originChainId
252
- );
247
+ originChainInfo = this.chainStore.getChain(cached.originChainId);
253
248
  }
254
249
  if (
255
250
  cached.counterpartyChainId &&
256
- this.isIBCAvailableChain(cached.counterpartyChainId)
251
+ this.chainStore.hasChain(cached.counterpartyChainId)
257
252
  ) {
258
- counterpartyChainInfo = this.chainStore.getModularChain(
253
+ counterpartyChainInfo = this.chainStore.getChain(
259
254
  cached.counterpartyChainId
260
255
  );
261
256
  }
@@ -281,10 +276,10 @@ export class IBCCurrencyRegistrar {
281
276
  // 현재는 알게된 경우에는 cache를 사용하지않고 지운다.
282
277
  if (
283
278
  (cached.originChainId &&
284
- this.isIBCAvailableChain(cached.originChainId) &&
279
+ this.chainStore.hasChain(cached.originChainId) &&
285
280
  cached.originChainUnknown) ||
286
281
  (cached.counterpartyChainId &&
287
- this.isIBCAvailableChain(cached.counterpartyChainId) &&
282
+ this.chainStore.hasChain(cached.counterpartyChainId) &&
288
283
  cached.counterpartyChainUnknown)
289
284
  ) {
290
285
  cached = undefined;
@@ -332,9 +327,7 @@ export class IBCCurrencyRegistrar {
332
327
  // 현재 ethereum ibc의 경우 ethereum까지 타고 들어가서 nested하게 처리할 방법은 없다.
333
328
  // 마지막 path일 경우만 처리한다.
334
329
  isLast &&
335
- this.chainStore
336
- .getModularChainInfoImpl(chainIdBefore)
337
- .hasFeature("ibc-v2") &&
330
+ this.chainStore.getChain(chainIdBefore).hasFeature("ibc-v2") &&
338
331
  denomTrace.denom.startsWith("0x")
339
332
  ) {
340
333
  const clientState = this.queriesStore
@@ -352,7 +345,7 @@ export class IBCCurrencyRegistrar {
352
345
  if (!rawCounterpartyChainId) {
353
346
  rawCounterpartyChainId = ethereumChainId;
354
347
  }
355
- if (this.isIBCAvailableChain(ethereumChainId)) {
348
+ if (this.chainStore.hasChain(ethereumChainId)) {
356
349
  // TODO: counterparty channel id를 구해야할듯한데
357
350
  // https://github.com/cosmos/ibc-go/blob/a8b4af9c757f5235a965718597f73f039c4a5708/proto/ibc/core/client/v2/query.proto#L15
358
351
  // 이것으로 추정되지만 현재 cosmos testnet에서 해당 쿼리가 501 not implemented로 반환되기 때문에 일단 패스...
@@ -360,11 +353,10 @@ export class IBCCurrencyRegistrar {
360
353
  path.clientChainId = ethereumChainId;
361
354
 
362
355
  chainIdBefore = ethereumChainId;
363
- originChainInfo =
364
- this.chainStore.getModularChain(ethereumChainId);
356
+ originChainInfo = this.chainStore.getChain(ethereumChainId);
365
357
  if (!counterpartyChainInfo) {
366
358
  counterpartyChainInfo =
367
- this.chainStore.getModularChain(ethereumChainId);
359
+ this.chainStore.getChain(ethereumChainId);
368
360
  }
369
361
  } else {
370
362
  originChainInfo = undefined;
@@ -406,16 +398,16 @@ export class IBCCurrencyRegistrar {
406
398
  }
407
399
  if (
408
400
  clientState.clientChainId &&
409
- this.isIBCAvailableChain(clientState.clientChainId)
401
+ this.chainStore.hasChain(clientState.clientChainId)
410
402
  ) {
411
403
  path.clientChainId = clientState.clientChainId;
412
404
 
413
405
  chainIdBefore = clientState.clientChainId;
414
- originChainInfo = this.chainStore.getModularChain(
406
+ originChainInfo = this.chainStore.getChain(
415
407
  clientState.clientChainId
416
408
  );
417
409
  if (!counterpartyChainInfo) {
418
- counterpartyChainInfo = this.chainStore.getModularChain(
410
+ counterpartyChainInfo = this.chainStore.getChain(
419
411
  clientState.clientChainId
420
412
  );
421
413
  }
@@ -448,18 +440,16 @@ export class IBCCurrencyRegistrar {
448
440
  if (
449
441
  !originChainInfo &&
450
442
  cached.originChainId &&
451
- this.isIBCAvailableChain(cached.originChainId)
443
+ this.chainStore.hasChain(cached.originChainId)
452
444
  ) {
453
- originChainInfo = this.chainStore.getModularChain(
454
- cached.originChainId
455
- );
445
+ originChainInfo = this.chainStore.getChain(cached.originChainId);
456
446
  }
457
447
  if (
458
448
  !counterpartyChainInfo &&
459
449
  cached.counterpartyChainId &&
460
- this.isIBCAvailableChain(cached.counterpartyChainId)
450
+ this.chainStore.hasChain(cached.counterpartyChainId)
461
451
  ) {
462
- counterpartyChainInfo = this.chainStore.getModularChain(
452
+ counterpartyChainInfo = this.chainStore.getChain(
463
453
  cached.counterpartyChainId
464
454
  );
465
455
  }
@@ -468,12 +458,9 @@ export class IBCCurrencyRegistrar {
468
458
 
469
459
  if (originChainInfo && denomTrace) {
470
460
  // 이 경우 ethereum 계열이기 때문에 다르게 처리해야한다.
471
- if (
472
- this.chainStore.isEvmOnlyChain(originChainInfo.chainId) &&
473
- "evm" in originChainInfo
474
- ) {
461
+ if (this.chainStore.isEvmOnlyChain(originChainInfo.chainId)) {
475
462
  // 유저가 Add Token을 통해서 추가했을 경우
476
- const currency = originChainInfo.evm.currencies.find((cur) => {
463
+ const currency = originChainInfo.currencies.find((cur) => {
477
464
  return cur.coinMinimalDenom === `erc20:${denomTrace!.denom}`;
478
465
  });
479
466
  if (currency) {
@@ -572,27 +559,20 @@ export class IBCCurrencyRegistrar {
572
559
  denomTrace.denom.split(/^(erc20)\/(\w+)$/).length === 4;
573
560
  switch (true) {
574
561
  case isCW20Currency:
575
- const modularChainInfoImpl =
576
- this.chainStore.getModularChainInfoImpl(
577
- originChainInfo.chainId
578
- );
579
- const isSecret20Currency = this.chainStore
580
- .getModularChainInfoImpl(originChainInfo.chainId)
581
- .hasFeature("secretwasm");
562
+ const isSecret20Currency =
563
+ originChainInfo.features?.includes("secretwasm");
582
564
 
583
565
  if (!isSecret20Currency) {
584
566
  let isFetching = false;
585
567
  // If the origin currency is ics20-cw20.
586
- let cw20Currency = modularChainInfoImpl
587
- .getCurrencies()
588
- .find(
589
- (cur) =>
590
- denomTrace &&
591
- cur.coinMinimalDenom.startsWith(denomTrace.denom)
592
- );
568
+ let cw20Currency = originChainInfo.currencies.find(
569
+ (cur) =>
570
+ denomTrace &&
571
+ cur.coinMinimalDenom.startsWith(denomTrace.denom)
572
+ );
593
573
  if (
594
574
  !cw20Currency &&
595
- this.isIBCAvailableChain(originChainInfo.chainId)
575
+ this.chainStore.hasChain(originChainInfo.chainId)
596
576
  ) {
597
577
  const originQueries = this.queriesStore.get(
598
578
  originChainInfo.chainId
@@ -642,16 +622,14 @@ export class IBCCurrencyRegistrar {
642
622
  } else {
643
623
  let isSecret20Fetching = false;
644
624
  // If the origin currency is ics20-cw20.
645
- let secret20Currency = modularChainInfoImpl
646
- .getCurrencies()
647
- .find(
648
- (cur) =>
649
- denomTrace &&
650
- cur.coinMinimalDenom.startsWith(denomTrace.denom)
651
- );
625
+ let secret20Currency = originChainInfo.currencies.find(
626
+ (cur) =>
627
+ denomTrace &&
628
+ cur.coinMinimalDenom.startsWith(denomTrace.denom)
629
+ );
652
630
  if (
653
631
  !secret20Currency &&
654
- this.isIBCAvailableChain(originChainInfo.chainId)
632
+ this.chainStore.hasChain(originChainInfo.chainId)
655
633
  ) {
656
634
  const originQueries = this.queriesStore.get(
657
635
  originChainInfo.chainId
@@ -704,18 +682,14 @@ export class IBCCurrencyRegistrar {
704
682
  case isERC20Currency:
705
683
  let isERC20Fetching = false;
706
684
  // If the origin currency is ics20-erc20.
707
- let erc20Currency = this.chainStore
708
- .getModularChainInfoImpl(originChainInfo.chainId)
709
- .getCurrencies()
710
- .find((cur) => {
711
- return (
712
- denomTrace &&
713
- cur.coinMinimalDenom.startsWith(denomTrace.denom)
714
- );
715
- });
685
+ let erc20Currency = originChainInfo.currencies.find(
686
+ (cur) =>
687
+ denomTrace &&
688
+ cur.coinMinimalDenom.startsWith(denomTrace.denom)
689
+ );
716
690
  if (
717
691
  !erc20Currency &&
718
- this.isIBCAvailableChain(originChainInfo.chainId)
692
+ this.chainStore.hasChain(originChainInfo.chainId)
719
693
  ) {
720
694
  const originQueries = this.queriesStore.get(
721
695
  originChainInfo.chainId
@@ -764,13 +738,11 @@ export class IBCCurrencyRegistrar {
764
738
  }
765
739
  break;
766
740
  default:
767
- const currency = this.chainStore
768
- .getModularChainInfoImpl(originChainInfo.chainId)
769
- .findCurrency(denomTrace.denom);
741
+ const currency = originChainInfo.findCurrency(denomTrace.denom);
770
742
  if (
771
- this.chainStore
772
- .getModularChainInfoImpl(originChainInfo.chainId)
773
- .isCurrencyRegistrationInProgress(denomTrace.denom)
743
+ originChainInfo.isCurrencyRegistrationInProgress(
744
+ denomTrace.denom
745
+ )
774
746
  ) {
775
747
  isGlobalFetching = true;
776
748
  }
@@ -822,15 +794,6 @@ export class IBCCurrencyRegistrar {
822
794
  }
823
795
  }
824
796
 
825
- protected isIBCAvailableChain(chainId: string): boolean {
826
- return (
827
- this.chainStore.hasModularChain(chainId) &&
828
- this.chainStore
829
- .getModularChainInfoImpl(chainId)
830
- .matchModules({ or: ["cosmos", "evm"] })
831
- );
832
- }
833
-
834
797
  protected getERC20TokenInfo(
835
798
  chainId: string,
836
799
  contractAddress: string