@keplr-wallet/background 0.12.73 → 0.12.74-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/index.d.ts +1 -0
- package/build/index.js +9 -0
- package/build/index.js.map +1 -1
- package/build/keyring-ethereum/messages.js +10 -2
- package/build/keyring-ethereum/messages.js.map +1 -1
- package/build/keyring-ethereum/service.d.ts +2 -1
- package/build/keyring-ethereum/service.js +15 -3
- package/build/keyring-ethereum/service.js.map +1 -1
- package/build/token-erc20/constants.d.ts +1 -0
- package/build/token-erc20/constants.js +5 -0
- package/build/token-erc20/constants.js.map +1 -0
- package/build/token-erc20/handler.d.ts +4 -0
- package/build/token-erc20/handler.js +55 -0
- package/build/token-erc20/handler.js.map +1 -0
- package/build/token-erc20/index.d.ts +3 -0
- package/build/token-erc20/index.js +20 -0
- package/build/token-erc20/index.js.map +1 -0
- package/build/token-erc20/init.d.ts +4 -0
- package/build/token-erc20/init.js +15 -0
- package/build/token-erc20/init.js.map +1 -0
- package/build/token-erc20/internal.d.ts +2 -0
- package/build/token-erc20/internal.js +19 -0
- package/build/token-erc20/internal.js.map +1 -0
- package/build/token-erc20/messages.d.ts +38 -0
- package/build/token-erc20/messages.js +96 -0
- package/build/token-erc20/messages.js.map +1 -0
- package/build/token-erc20/service.d.ts +23 -0
- package/build/token-erc20/service.js +181 -0
- package/build/token-erc20/service.js.map +1 -0
- package/build/token-erc20/types.d.ts +2 -0
- package/build/token-erc20/types.js +3 -0
- package/build/token-erc20/types.js.map +1 -0
- package/build/tx-ethereum/constants.d.ts +1 -0
- package/build/tx-ethereum/constants.js +5 -0
- package/build/tx-ethereum/constants.js.map +1 -0
- package/build/tx-ethereum/handler.d.ts +4 -0
- package/build/tx-ethereum/handler.js +34 -0
- package/build/tx-ethereum/handler.js.map +1 -0
- package/build/tx-ethereum/index.d.ts +2 -0
- package/build/tx-ethereum/index.js +19 -0
- package/build/tx-ethereum/index.js.map +1 -0
- package/build/tx-ethereum/init.d.ts +4 -0
- package/build/tx-ethereum/init.js +12 -0
- package/build/tx-ethereum/init.js.map +1 -0
- package/build/tx-ethereum/internal.d.ts +2 -0
- package/build/tx-ethereum/internal.js +19 -0
- package/build/tx-ethereum/internal.js.map +1 -0
- package/build/tx-ethereum/messages.d.ts +12 -0
- package/build/tx-ethereum/messages.js +37 -0
- package/build/tx-ethereum/messages.js.map +1 -0
- package/build/tx-ethereum/service.d.ts +15 -0
- package/build/tx-ethereum/service.js +124 -0
- package/build/tx-ethereum/service.js.map +1 -0
- package/package.json +14 -13
- package/src/index.ts +23 -0
- package/src/keyring-ethereum/messages.ts +10 -2
- package/src/keyring-ethereum/service.ts +22 -4
- package/src/token-erc20/constants.ts +1 -0
- package/src/token-erc20/handler.ts +87 -0
- package/src/token-erc20/index.ts +3 -0
- package/src/token-erc20/init.ts +24 -0
- package/src/token-erc20/internal.ts +2 -0
- package/src/token-erc20/messages.ts +121 -0
- package/src/token-erc20/service.ts +205 -0
- package/src/token-erc20/types.ts +3 -0
- package/src/tx-ethereum/constants.ts +1 -0
- package/src/tx-ethereum/handler.ts +50 -0
- package/src/tx-ethereum/index.ts +2 -0
- package/src/tx-ethereum/init.ts +16 -0
- package/src/tx-ethereum/internal.ts +2 -0
- package/src/tx-ethereum/messages.ts +40 -0
- package/src/tx-ethereum/service.ts +147 -0
package/build/index.d.ts
CHANGED
package/build/index.js
CHANGED
|
@@ -41,7 +41,9 @@ const ChainsUI = __importStar(require("./chains-ui/internal"));
|
|
|
41
41
|
const ChainsUpdate = __importStar(require("./chains-update/internal"));
|
|
42
42
|
const SecretWasm = __importStar(require("./secret-wasm/internal"));
|
|
43
43
|
const BackgroundTx = __importStar(require("./tx/internal"));
|
|
44
|
+
const BackgroundTxEthereum = __importStar(require("./tx-ethereum/internal"));
|
|
44
45
|
const TokenCW20 = __importStar(require("./token-cw20/internal"));
|
|
46
|
+
const TokenERC20 = __importStar(require("./token-erc20/internal"));
|
|
45
47
|
const Interaction = __importStar(require("./interaction/internal"));
|
|
46
48
|
const Permission = __importStar(require("./permission/internal"));
|
|
47
49
|
const PhishingList = __importStar(require("./phishing-list/internal"));
|
|
@@ -64,6 +66,7 @@ __exportStar(require("./chains-update"), exports);
|
|
|
64
66
|
__exportStar(require("./secret-wasm"), exports);
|
|
65
67
|
__exportStar(require("./tx"), exports);
|
|
66
68
|
__exportStar(require("./token-cw20"), exports);
|
|
69
|
+
__exportStar(require("./token-erc20"), exports);
|
|
67
70
|
__exportStar(require("./interaction"), exports);
|
|
68
71
|
__exportStar(require("./permission"), exports);
|
|
69
72
|
__exportStar(require("./phishing-list"), exports);
|
|
@@ -88,8 +91,10 @@ privilegedOrigins, analyticsPrivilegedOrigins, msgPrivilegedOrigins, communityCh
|
|
|
88
91
|
updaterKVStore: storeCreator("updator"),
|
|
89
92
|
}, embedChainInfos, communityChainInfoRepo, interactionService, afterInitFn);
|
|
90
93
|
const tokenCW20Service = new TokenCW20.TokenCW20Service(storeCreator("tokens"), chainsService, interactionService);
|
|
94
|
+
const tokenERC20Service = new TokenERC20.TokenERC20Service(storeCreator("tokens-erc20"), chainsService, interactionService);
|
|
91
95
|
const permissionService = new Permission.PermissionService(storeCreator("permission"), privilegedOrigins, interactionService, chainsService);
|
|
92
96
|
const backgroundTxService = new BackgroundTx.BackgroundTxService(chainsService, notification);
|
|
97
|
+
const backgroundTxEthereumService = new BackgroundTxEthereum.BackgroundTxEthereumService(chainsService, notification);
|
|
93
98
|
const phishingListService = new PhishingList.PhishingListService({
|
|
94
99
|
blockListUrl: "https://raw.githubusercontent.com/chainapsis/phishing-block-list/main/block-list.txt",
|
|
95
100
|
twitterListUrl: "https://raw.githubusercontent.com/chainapsis/phishing-block-list/main/twitter-scammer-list.txt",
|
|
@@ -123,6 +128,7 @@ privilegedOrigins, analyticsPrivilegedOrigins, msgPrivilegedOrigins, communityCh
|
|
|
123
128
|
Permission.init(router, permissionService);
|
|
124
129
|
Chains.init(router, chainsService, permissionService, permissionInteractiveService);
|
|
125
130
|
BackgroundTx.init(router, backgroundTxService, permissionInteractiveService);
|
|
131
|
+
BackgroundTxEthereum.init(router, backgroundTxEthereumService, permissionInteractiveService);
|
|
126
132
|
PhishingList.init(router, phishingListService);
|
|
127
133
|
AutoLocker.init(router, autoLockAccountService);
|
|
128
134
|
Analytics.init(router, analyticsService);
|
|
@@ -133,6 +139,7 @@ privilegedOrigins, analyticsPrivilegedOrigins, msgPrivilegedOrigins, communityCh
|
|
|
133
139
|
ChainsUI.init(router, chainsUIService);
|
|
134
140
|
ChainsUpdate.init(router, chainsUpdateService);
|
|
135
141
|
TokenCW20.init(router, tokenCW20Service, permissionInteractiveService, keyRingCosmosService);
|
|
142
|
+
TokenERC20.init(router, tokenERC20Service, permissionInteractiveService);
|
|
136
143
|
SecretWasm.init(router, secretWasmService, permissionInteractiveService);
|
|
137
144
|
TokenScan.init(router, tokenScanService);
|
|
138
145
|
RecentSendHistory.init(router, recentSendHistoryService);
|
|
@@ -148,7 +155,9 @@ privilegedOrigins, analyticsPrivilegedOrigins, msgPrivilegedOrigins, communityCh
|
|
|
148
155
|
yield keyRingEthereumService.init();
|
|
149
156
|
yield permissionService.init();
|
|
150
157
|
yield tokenCW20Service.init();
|
|
158
|
+
yield tokenERC20Service.init();
|
|
151
159
|
yield backgroundTxService.init();
|
|
160
|
+
yield backgroundTxEthereumService.init();
|
|
152
161
|
yield phishingListService.init();
|
|
153
162
|
yield autoLockAccountService.init();
|
|
154
163
|
yield permissionInteractiveService.init();
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,8 +25,16 @@ class RequestSignEthereumMsg extends router_1.Message {
|
|
|
25
25
|
if (!this.signType) {
|
|
26
26
|
throw new Error("sign type not set");
|
|
27
27
|
}
|
|
28
|
-
// Validate
|
|
29
|
-
|
|
28
|
+
// Validate signer address.
|
|
29
|
+
try {
|
|
30
|
+
cosmos_1.Bech32Address.validate(this.signer);
|
|
31
|
+
}
|
|
32
|
+
catch (_a) {
|
|
33
|
+
const tempSigner = this.signer.substring(0, 2) === "0x" ? this.signer : "0x" + this.signer;
|
|
34
|
+
if (!tempSigner.match(/^0x[0-9A-Fa-f]*$/) || tempSigner.length !== 42) {
|
|
35
|
+
throw new Error("Signer is not valid hex address");
|
|
36
|
+
}
|
|
37
|
+
}
|
|
30
38
|
}
|
|
31
39
|
approveExternal() {
|
|
32
40
|
return true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/keyring-ethereum/messages.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AACrD,iDAA+C;AAE/C,2CAAoC;AAEpC,MAAa,sBAAuB,SAAQ,gBAAmB;IACtD,MAAM,CAAC,IAAI;QAChB,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,YACkB,OAAe,EACf,MAAc,EACd,OAAmB,EACnB,QAAqB;QAErC,KAAK,EAAE,CAAC;QALQ,YAAO,GAAP,OAAO,CAAQ;QACf,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAY;QACnB,aAAQ,GAAR,QAAQ,CAAa;IAGvC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;SACrC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;SACnC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAED,2BAA2B;QAC3B,sBAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/keyring-ethereum/messages.ts"],"names":[],"mappings":";;;AAAA,iDAAqD;AACrD,iDAA+C;AAE/C,2CAAoC;AAEpC,MAAa,sBAAuB,SAAQ,gBAAmB;IACtD,MAAM,CAAC,IAAI;QAChB,OAAO,uBAAuB,CAAC;IACjC,CAAC;IAED,YACkB,OAAe,EACf,MAAc,EACd,OAAmB,EACnB,QAAqB;QAErC,KAAK,EAAE,CAAC;QALQ,YAAO,GAAP,OAAO,CAAQ;QACf,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAY;QACnB,aAAQ,GAAR,QAAQ,CAAa;IAGvC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;SACrC;QAED,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;SACnC;QAED,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;SACtC;QAED,2BAA2B;QAC3B,IAAI;YACF,sBAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACrC;QAAC,WAAM;YACN,MAAM,UAAU,GACd,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1E,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,EAAE,EAAE;gBACrE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;aACpD;SACF;IACH,CAAC;IAEQ,eAAe;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,OAAO,iBAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,sBAAsB,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;CACF;AAlDD,wDAkDC"}
|
|
@@ -3,7 +3,7 @@ import { KeyRingService } from "../keyring";
|
|
|
3
3
|
import { InteractionService } from "../interaction";
|
|
4
4
|
import { AnalyticsService } from "../analytics";
|
|
5
5
|
import { Env } from "@keplr-wallet/router";
|
|
6
|
-
import { EthSignType } from "@keplr-wallet/types";
|
|
6
|
+
import { ChainInfo, EthSignType } from "@keplr-wallet/types";
|
|
7
7
|
import { KeyRingCosmosService } from "../keyring-cosmos";
|
|
8
8
|
export declare class KeyRingEthereumService {
|
|
9
9
|
protected readonly chainsService: ChainsService;
|
|
@@ -15,4 +15,5 @@ export declare class KeyRingEthereumService {
|
|
|
15
15
|
init(): Promise<void>;
|
|
16
16
|
signEthereumSelected(env: Env, origin: string, chainId: string, signer: string, message: Uint8Array, signType: EthSignType): Promise<Uint8Array>;
|
|
17
17
|
signEthereum(env: Env, origin: string, vaultId: string, chainId: string, signer: string, message: Uint8Array, signType: EthSignType): Promise<Uint8Array>;
|
|
18
|
+
static evmInfo(chainInfo: ChainInfo): ChainInfo["evm"] | undefined;
|
|
18
19
|
}
|
|
@@ -41,8 +41,9 @@ class KeyRingEthereumService {
|
|
|
41
41
|
return __awaiter(this, void 0, void 0, function* () {
|
|
42
42
|
const chainInfo = this.chainsService.getChainInfoOrThrow(chainId);
|
|
43
43
|
const isEthermintLike = keyring_1.KeyRingService.isEthermintLike(chainInfo);
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
const evmInfo = KeyRingEthereumService.evmInfo(chainInfo);
|
|
45
|
+
if (!isEthermintLike && !evmInfo) {
|
|
46
|
+
throw new Error("Not ethermint like and EVM chain");
|
|
46
47
|
}
|
|
47
48
|
const keyInfo = this.keyRingService.getKeyInfo(vaultId);
|
|
48
49
|
if (!keyInfo) {
|
|
@@ -51,11 +52,19 @@ class KeyRingEthereumService {
|
|
|
51
52
|
if (keyInfo.type === "ledger") {
|
|
52
53
|
keyring_cosmos_1.KeyRingCosmosService.throwErrorIfEthermintWithLedgerButNotSupported(chainId);
|
|
53
54
|
}
|
|
55
|
+
try {
|
|
56
|
+
cosmos_1.Bech32Address.validate(signer);
|
|
57
|
+
}
|
|
58
|
+
catch (_a) {
|
|
59
|
+
// Ignore mixed-case checksum
|
|
60
|
+
signer = (signer.substring(0, 2) === "0x" ? signer : "0x" + signer).toLowerCase();
|
|
61
|
+
}
|
|
54
62
|
const key = yield this.keyRingCosmosService.getKey(vaultId, chainId);
|
|
55
63
|
const bech32Prefix = this.chainsService.getChainInfoOrThrow(chainId).bech32Config
|
|
56
64
|
.bech32PrefixAccAddr;
|
|
57
65
|
const bech32Address = new cosmos_1.Bech32Address(key.address).toBech32(bech32Prefix);
|
|
58
|
-
|
|
66
|
+
const ethereumHexAddress = cosmos_1.Bech32Address.fromBech32(bech32Address, bech32Prefix).toHex(false);
|
|
67
|
+
if (signer !== bech32Address && signer !== ethereumHexAddress) {
|
|
59
68
|
throw new Error("Signer mismatched");
|
|
60
69
|
}
|
|
61
70
|
return yield this.interactionService.waitApproveV2(env, "/sign-ethereum", "request-sign-ethereum", {
|
|
@@ -131,6 +140,9 @@ class KeyRingEthereumService {
|
|
|
131
140
|
}));
|
|
132
141
|
});
|
|
133
142
|
}
|
|
143
|
+
static evmInfo(chainInfo) {
|
|
144
|
+
return chainInfo.evm;
|
|
145
|
+
}
|
|
134
146
|
}
|
|
135
147
|
exports.KeyRingEthereumService = KeyRingEthereumService;
|
|
136
148
|
//# sourceMappingURL=service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/keyring-ethereum/service.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,wCAA4C;AAI5C,+
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/keyring-ethereum/service.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,wCAA4C;AAI5C,+CAA6D;AAC7D,iDAAqD;AACrD,oCAAiC;AACjC,sDAK2B;AAC3B,8DAAwD;AAExD,MAAa,sBAAsB;IACjC,YACqB,aAA4B,EAC5B,cAA8B;IACjD,2EAA2E;IAC3E,kCAAkC;IACf,oBAA0C,EAC1C,kBAAsC,EACtC,gBAAkC;QANlC,kBAAa,GAAb,aAAa,CAAe;QAC5B,mBAAc,GAAd,cAAc,CAAgB;QAG9B,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,uBAAkB,GAAlB,kBAAkB,CAAoB;QACtC,qBAAgB,GAAhB,gBAAgB,CAAkB;IACpD,CAAC;IAEE,IAAI;;YACR,UAAU;QACZ,CAAC;KAAA;IAEK,oBAAoB,CACxB,GAAQ,EACR,MAAc,EACd,OAAe,EACf,MAAc,EACd,OAAmB,EACnB,QAAqB;;YAErB,OAAO,MAAM,IAAI,CAAC,YAAY,CAC5B,GAAG,EACH,MAAM,EACN,IAAI,CAAC,cAAc,CAAC,eAAe,EACnC,OAAO,EACP,MAAM,EACN,OAAO,EACP,QAAQ,CACT,CAAC;QACJ,CAAC;KAAA;IAEK,YAAY,CAChB,GAAQ,EACR,MAAc,EACd,OAAe,EACf,OAAe,EACf,MAAc,EACd,OAAmB,EACnB,QAAqB;;YAErB,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YAClE,MAAM,eAAe,GAAG,wBAAc,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAE1D,IAAI,CAAC,eAAe,IAAI,CAAC,OAAO,EAAE;gBAChC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACrD;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACxD,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;aAClC;YAED,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE;gBAC7B,qCAAoB,CAAC,8CAA8C,CACjE,OAAO,CACR,CAAC;aACH;YAED,IAAI;gBACF,sBAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAChC;YAAC,WAAM;gBACN,6BAA6B;gBAC7B,MAAM,GAAG,CACP,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,CACzD,CAAC,WAAW,EAAE,CAAC;aACjB;YAED,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACrE,MAAM,YAAY,GAChB,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,YAAY;iBACzD,mBAAmB,CAAC;YACzB,MAAM,aAAa,GAAG,IAAI,sBAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;YAC5E,MAAM,kBAAkB,GAAG,sBAAa,CAAC,UAAU,CACjD,aAAa,EACb,YAAY,CACb,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACf,IAAI,MAAM,KAAK,aAAa,IAAI,MAAM,KAAK,kBAAkB,EAAE;gBAC7D,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;aACtC;YAED,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,aAAa,CAChD,GAAG,EACH,gBAAgB,EAChB,uBAAuB,EACvB;gBACE,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,OAAO;gBACP,QAAQ;gBACR,OAAO,EAAE,OAAO,CAAC,IAAI;gBACrB,cAAc,EAAE,OAAO,CAAC,WAAW;aACpC,EACD,CAAO,GAA+B,EAAE,EAAE;gBACxC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,KAAK,UAAU,EAAE;oBAC5D,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;wBAChD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;qBACtD;oBACD,OAAO,GAAG,CAAC,SAAS,CAAC;iBACtB;qBAAM;oBACL,QAAQ,QAAQ,EAAE;wBAChB,KAAK,mBAAW,CAAC,OAAO,CAAC,CAAC;4BACxB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAC9C,OAAO,EACP,OAAO,EACP,eAAM,CAAC,MAAM,CAAC;gCACZ,eAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC;gCAC7C,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gCACtC,OAAO;6BACR,CAAC,EACF,WAAW,CACZ,CAAC;4BACF,OAAO,eAAM,CAAC,MAAM,CAAC;gCACnB,SAAS,CAAC,CAAC;gCACX,SAAS,CAAC,CAAC;gCACX,8FAA8F;gCAC9F,SAAS,CAAC,CAAC;oCACT,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;oCAC1B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;6BAC7B,CAAC,CAAC;yBACJ;wBACD,KAAK,mBAAW,CAAC,WAAW,CAAC,CAAC;4BAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;4BACvD,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAC9C,OAAO,EACP,OAAO,EACP,eAAM,CAAC,IAAI,CAAC,IAAA,wBAAS,EAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC,EACnD,WAAW,CACZ,CAAC;4BACF,OAAO,eAAM,CAAC,MAAM,CAAC;gCACnB,SAAS,CAAC,CAAC;gCACX,SAAS,CAAC,CAAC;gCACX,8FAA8F;gCAC9F,SAAS,CAAC,CAAC;oCACT,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;oCAC1B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;6BAC7B,CAAC,CAAC;yBACJ;wBACD,KAAK,mBAAW,CAAC,MAAM,CAAC,CAAC;4BACvB,MAAM,IAAI,GAAG,MAAM,uCAAsB,CAAC,aAAa,CACrD,IAAI,CAAC,KAAK,CAAC,eAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC5C,CAAC;4BACF,6FAA6F;4BAC7F,6DAA6D;4BAC7D,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAC9C,OAAO,EACP,OAAO,EACP,eAAM,CAAC,MAAM,CAAC;gCACZ,gBAAgB;gCAChB,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;gCACxB,aAAa;gCACb,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;gCACxB,eAAM,CAAC,IAAI,CAAC,IAAA,2BAAU,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC;gCACtD,eAAM,CAAC,IAAI,CAAC,IAAA,4BAAW,EAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,KAAK,CAAC;6BACxD,CAAC,EACF,WAAW,CACZ,CAAC;4BACF,OAAO,eAAM,CAAC,MAAM,CAAC;gCACnB,SAAS,CAAC,CAAC;gCACX,SAAS,CAAC,CAAC;gCACX,8FAA8F;gCAC9F,SAAS,CAAC,CAAC;oCACT,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;oCAC1B,CAAC,CAAC,eAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;6BAC7B,CAAC,CAAC;yBACJ;wBACD;4BACE,MAAM,IAAI,KAAK,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;qBACrD;iBACF;YACH,CAAC,CAAA,CACF,CAAC;QACJ,CAAC;KAAA;IAED,MAAM,CAAC,OAAO,CAAC,SAAoB;QACjC,OAAO,SAAS,CAAC,GAAG,CAAC;IACvB,CAAC;CACF;AAtLD,wDAsLC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const ROUTE = "token-erc20";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/token-erc20/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,KAAK,GAAG,aAAa,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Handler } from "@keplr-wallet/router";
|
|
2
|
+
import { TokenERC20Service } from "./service";
|
|
3
|
+
import { PermissionInteractiveService } from "../permission-interactive";
|
|
4
|
+
export declare const getHandler: (service: TokenERC20Service, permissionInteractionService: PermissionInteractiveService) => Handler;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.getHandler = void 0;
|
|
13
|
+
const router_1 = require("@keplr-wallet/router");
|
|
14
|
+
const messages_1 = require("./messages");
|
|
15
|
+
const getHandler = (service, permissionInteractionService) => {
|
|
16
|
+
return (env, msg) => {
|
|
17
|
+
switch (msg.constructor) {
|
|
18
|
+
case messages_1.GetAllERC20TokenInfosMsg:
|
|
19
|
+
return handleGetAllERC20TokenInfosMsg(service)(env, msg);
|
|
20
|
+
case messages_1.SuggestERC20TokenMsg:
|
|
21
|
+
return handleSuggestERC20TokenMsg(service, permissionInteractionService)(env, msg);
|
|
22
|
+
case messages_1.AddERC20TokenMsg:
|
|
23
|
+
return handleAddERC20TokenMsg(service)(env, msg);
|
|
24
|
+
case messages_1.RemoveERC20TokenMsg:
|
|
25
|
+
return handleRemoveERC20TokenMsg(service)(env, msg);
|
|
26
|
+
default:
|
|
27
|
+
throw new router_1.KeplrError("tokens", 120, "Unknown msg type");
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
exports.getHandler = getHandler;
|
|
32
|
+
const handleGetAllERC20TokenInfosMsg = (service) => {
|
|
33
|
+
return () => {
|
|
34
|
+
return service.getAllERC20TokenInfos();
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
const handleSuggestERC20TokenMsg = (service, permissionInteractionService) => {
|
|
38
|
+
return (env, msg) => __awaiter(void 0, void 0, void 0, function* () {
|
|
39
|
+
yield permissionInteractionService.ensureEnabled(env, [msg.chainId], msg.origin);
|
|
40
|
+
yield service.suggestERC20Token(env, msg.chainId, msg.contractAddress);
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
const handleAddERC20TokenMsg = (service) => {
|
|
44
|
+
return (_, msg) => __awaiter(void 0, void 0, void 0, function* () {
|
|
45
|
+
yield service.setERC20Token(msg.chainId, msg.currency);
|
|
46
|
+
return service.getAllERC20TokenInfos();
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
const handleRemoveERC20TokenMsg = (service) => {
|
|
50
|
+
return (_, msg) => {
|
|
51
|
+
service.removeERC20Token(msg.chainId, msg.contractAddress);
|
|
52
|
+
return service.getAllERC20TokenInfos();
|
|
53
|
+
};
|
|
54
|
+
};
|
|
55
|
+
//# sourceMappingURL=handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handler.js","sourceRoot":"","sources":["../../src/token-erc20/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAM8B;AAE9B,yCAKoB;AAGb,MAAM,UAAU,GAGR,CAAC,OAAO,EAAE,4BAA4B,EAAE,EAAE;IACvD,OAAO,CAAC,GAAQ,EAAE,GAAqB,EAAE,EAAE;QACzC,QAAQ,GAAG,CAAC,WAAW,EAAE;YACvB,KAAK,mCAAwB;gBAC3B,OAAO,8BAA8B,CAAC,OAAO,CAAC,CAC5C,GAAG,EACH,GAA+B,CAChC,CAAC;YACJ,KAAK,+BAAoB;gBACvB,OAAO,0BAA0B,CAC/B,OAAO,EACP,4BAA4B,CAC7B,CAAC,GAAG,EAAE,GAA2B,CAAC,CAAC;YACtC,KAAK,2BAAgB;gBACnB,OAAO,sBAAsB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,GAAuB,CAAC,CAAC;YACvE,KAAK,8BAAmB;gBACtB,OAAO,yBAAyB,CAAC,OAAO,CAAC,CACvC,GAAG,EACH,GAA0B,CAC3B,CAAC;YACJ;gBACE,MAAM,IAAI,mBAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;SAC3D;IACH,CAAC,CAAC;AACJ,CAAC,CAAC;AA3BW,QAAA,UAAU,cA2BrB;AAEF,MAAM,8BAA8B,GAEa,CAAC,OAAO,EAAE,EAAE;IAC3D,OAAO,GAAG,EAAE;QACV,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,0BAA0B,GAGa,CAC3C,OAAO,EACP,4BAA4B,EAC5B,EAAE;IACF,OAAO,CAAO,GAAG,EAAE,GAAG,EAAE,EAAE;QACxB,MAAM,4BAA4B,CAAC,aAAa,CAC9C,GAAG,EACH,CAAC,GAAG,CAAC,OAAO,CAAC,EACb,GAAG,CAAC,MAAM,CACX,CAAC;QACF,MAAM,OAAO,CAAC,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;IACzE,CAAC,CAAA,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,sBAAsB,GAEa,CAAC,OAAO,EAAE,EAAE;IACnD,OAAO,CAAO,CAAC,EAAE,GAAG,EAAE,EAAE;QACtB,MAAM,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QACvD,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC,CAAA,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAEa,CAAC,OAAO,EAAE,EAAE;IACtD,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAChB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;QAC3D,OAAO,OAAO,CAAC,qBAAqB,EAAE,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./service"), exports);
|
|
18
|
+
__exportStar(require("./messages"), exports);
|
|
19
|
+
__exportStar(require("./types"), exports);
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/token-erc20/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,6CAA2B;AAC3B,0CAAwB"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Router } from "@keplr-wallet/router";
|
|
2
|
+
import { TokenERC20Service } from "./service";
|
|
3
|
+
import { PermissionInteractiveService } from "../permission-interactive";
|
|
4
|
+
export declare function init(router: Router, service: TokenERC20Service, permissionInteractionService: PermissionInteractiveService): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.init = void 0;
|
|
4
|
+
const messages_1 = require("./messages");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
const handler_1 = require("./handler");
|
|
7
|
+
function init(router, service, permissionInteractionService) {
|
|
8
|
+
router.registerMessage(messages_1.GetAllERC20TokenInfosMsg);
|
|
9
|
+
router.registerMessage(messages_1.SuggestERC20TokenMsg);
|
|
10
|
+
router.registerMessage(messages_1.AddERC20TokenMsg);
|
|
11
|
+
router.registerMessage(messages_1.RemoveERC20TokenMsg);
|
|
12
|
+
router.addHandler(constants_1.ROUTE, (0, handler_1.getHandler)(service, permissionInteractionService));
|
|
13
|
+
}
|
|
14
|
+
exports.init = init;
|
|
15
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/token-erc20/init.ts"],"names":[],"mappings":";;;AACA,yCAKoB;AACpB,2CAAoC;AACpC,uCAAuC;AAIvC,SAAgB,IAAI,CAClB,MAAc,EACd,OAA0B,EAC1B,4BAA0D;IAE1D,MAAM,CAAC,eAAe,CAAC,mCAAwB,CAAC,CAAC;IACjD,MAAM,CAAC,eAAe,CAAC,+BAAoB,CAAC,CAAC;IAC7C,MAAM,CAAC,eAAe,CAAC,2BAAgB,CAAC,CAAC;IACzC,MAAM,CAAC,eAAe,CAAC,8BAAmB,CAAC,CAAC;IAE5C,MAAM,CAAC,UAAU,CAAC,iBAAK,EAAE,IAAA,oBAAU,EAAC,OAAO,EAAE,4BAA4B,CAAC,CAAC,CAAC;AAC9E,CAAC;AAXD,oBAWC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
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);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./service"), exports);
|
|
18
|
+
__exportStar(require("./init"), exports);
|
|
19
|
+
//# sourceMappingURL=internal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../../src/token-erc20/internal.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,yCAAuB"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Message } from "@keplr-wallet/router";
|
|
2
|
+
import { ERC20TokenInfo } from "./types";
|
|
3
|
+
import { AppCurrency } from "@keplr-wallet/types";
|
|
4
|
+
export declare class GetAllERC20TokenInfosMsg extends Message<Record<string, ERC20TokenInfo[] | undefined>> {
|
|
5
|
+
static type(): string;
|
|
6
|
+
constructor();
|
|
7
|
+
validateBasic(): void;
|
|
8
|
+
route(): string;
|
|
9
|
+
type(): string;
|
|
10
|
+
}
|
|
11
|
+
export declare class SuggestERC20TokenMsg extends Message<void> {
|
|
12
|
+
readonly chainId: string;
|
|
13
|
+
readonly contractAddress: string;
|
|
14
|
+
static type(): string;
|
|
15
|
+
constructor(chainId: string, contractAddress: string);
|
|
16
|
+
approveExternal(): boolean;
|
|
17
|
+
validateBasic(): void;
|
|
18
|
+
route(): string;
|
|
19
|
+
type(): string;
|
|
20
|
+
}
|
|
21
|
+
export declare class AddERC20TokenMsg extends Message<Record<string, ERC20TokenInfo[] | undefined>> {
|
|
22
|
+
readonly chainId: string;
|
|
23
|
+
readonly currency: AppCurrency;
|
|
24
|
+
static type(): string;
|
|
25
|
+
constructor(chainId: string, currency: AppCurrency);
|
|
26
|
+
validateBasic(): void;
|
|
27
|
+
route(): string;
|
|
28
|
+
type(): string;
|
|
29
|
+
}
|
|
30
|
+
export declare class RemoveERC20TokenMsg extends Message<Record<string, ERC20TokenInfo[] | undefined>> {
|
|
31
|
+
readonly chainId: string;
|
|
32
|
+
readonly contractAddress: string;
|
|
33
|
+
static type(): string;
|
|
34
|
+
constructor(chainId: string, contractAddress: string);
|
|
35
|
+
validateBasic(): void;
|
|
36
|
+
route(): string;
|
|
37
|
+
type(): string;
|
|
38
|
+
}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RemoveERC20TokenMsg = exports.AddERC20TokenMsg = exports.SuggestERC20TokenMsg = exports.GetAllERC20TokenInfosMsg = void 0;
|
|
4
|
+
const router_1 = require("@keplr-wallet/router");
|
|
5
|
+
const constants_1 = require("./constants");
|
|
6
|
+
class GetAllERC20TokenInfosMsg extends router_1.Message {
|
|
7
|
+
static type() {
|
|
8
|
+
return "GetAllERC20TokenInfosMsg";
|
|
9
|
+
}
|
|
10
|
+
constructor() {
|
|
11
|
+
super();
|
|
12
|
+
}
|
|
13
|
+
validateBasic() {
|
|
14
|
+
// noop
|
|
15
|
+
}
|
|
16
|
+
route() {
|
|
17
|
+
return constants_1.ROUTE;
|
|
18
|
+
}
|
|
19
|
+
type() {
|
|
20
|
+
return GetAllERC20TokenInfosMsg.type();
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.GetAllERC20TokenInfosMsg = GetAllERC20TokenInfosMsg;
|
|
24
|
+
class SuggestERC20TokenMsg extends router_1.Message {
|
|
25
|
+
static type() {
|
|
26
|
+
return "SuggestERC20TokenMsg";
|
|
27
|
+
}
|
|
28
|
+
constructor(chainId, contractAddress) {
|
|
29
|
+
super();
|
|
30
|
+
this.chainId = chainId;
|
|
31
|
+
this.contractAddress = contractAddress;
|
|
32
|
+
}
|
|
33
|
+
approveExternal() {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
validateBasic() {
|
|
37
|
+
if (!this.chainId) {
|
|
38
|
+
throw new router_1.KeplrError("tokens", 100, "Chain id is empty");
|
|
39
|
+
}
|
|
40
|
+
if (!this.contractAddress) {
|
|
41
|
+
throw new router_1.KeplrError("tokens", 101, "Contract address is empty");
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
route() {
|
|
45
|
+
return constants_1.ROUTE;
|
|
46
|
+
}
|
|
47
|
+
type() {
|
|
48
|
+
return SuggestERC20TokenMsg.type();
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.SuggestERC20TokenMsg = SuggestERC20TokenMsg;
|
|
52
|
+
class AddERC20TokenMsg extends router_1.Message {
|
|
53
|
+
static type() {
|
|
54
|
+
return "AddERC20TokenMsg";
|
|
55
|
+
}
|
|
56
|
+
constructor(chainId, currency) {
|
|
57
|
+
super();
|
|
58
|
+
this.chainId = chainId;
|
|
59
|
+
this.currency = currency;
|
|
60
|
+
}
|
|
61
|
+
validateBasic() {
|
|
62
|
+
if (!this.chainId) {
|
|
63
|
+
throw new router_1.KeplrError("tokens", 100, "Chain id is empty");
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
route() {
|
|
67
|
+
return constants_1.ROUTE;
|
|
68
|
+
}
|
|
69
|
+
type() {
|
|
70
|
+
return AddERC20TokenMsg.type();
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
exports.AddERC20TokenMsg = AddERC20TokenMsg;
|
|
74
|
+
class RemoveERC20TokenMsg extends router_1.Message {
|
|
75
|
+
static type() {
|
|
76
|
+
return "RemoveERC20TokenMsg";
|
|
77
|
+
}
|
|
78
|
+
constructor(chainId, contractAddress) {
|
|
79
|
+
super();
|
|
80
|
+
this.chainId = chainId;
|
|
81
|
+
this.contractAddress = contractAddress;
|
|
82
|
+
}
|
|
83
|
+
validateBasic() {
|
|
84
|
+
if (!this.chainId) {
|
|
85
|
+
throw new router_1.KeplrError("tokens", 100, "Chain id is empty");
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
route() {
|
|
89
|
+
return constants_1.ROUTE;
|
|
90
|
+
}
|
|
91
|
+
type() {
|
|
92
|
+
return RemoveERC20TokenMsg.type();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
exports.RemoveERC20TokenMsg = RemoveERC20TokenMsg;
|
|
96
|
+
//# sourceMappingURL=messages.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/token-erc20/messages.ts"],"names":[],"mappings":";;;AAAA,iDAA2D;AAC3D,2CAAoC;AAIpC,MAAa,wBAAyB,SAAQ,gBAE7C;IACQ,MAAM,CAAC,IAAI;QAChB,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,aAAa;QACX,OAAO;IACT,CAAC;IAED,KAAK;QACH,OAAO,iBAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,wBAAwB,CAAC,IAAI,EAAE,CAAC;IACzC,CAAC;CACF;AAtBD,4DAsBC;AAED,MAAa,oBAAqB,SAAQ,gBAAa;IAC9C,MAAM,CAAC,IAAI;QAChB,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED,YACkB,OAAe,EACf,eAAuB;QAEvC,KAAK,EAAE,CAAC;QAHQ,YAAO,GAAP,OAAO,CAAQ;QACf,oBAAe,GAAf,eAAe,CAAQ;IAGzC,CAAC;IAEQ,eAAe;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,mBAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;SAC1D;QAED,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;YACzB,MAAM,IAAI,mBAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,2BAA2B,CAAC,CAAC;SAClE;IACH,CAAC;IAED,KAAK;QACH,OAAO,iBAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,oBAAoB,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;CACF;AAjCD,oDAiCC;AAED,MAAa,gBAAiB,SAAQ,gBAErC;IACQ,MAAM,CAAC,IAAI;QAChB,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,YACkB,OAAe,EACf,QAAqB;QAErC,KAAK,EAAE,CAAC;QAHQ,YAAO,GAAP,OAAO,CAAQ;QACf,aAAQ,GAAR,QAAQ,CAAa;IAGvC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,mBAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;SAC1D;IACH,CAAC;IAED,KAAK;QACH,OAAO,iBAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,gBAAgB,CAAC,IAAI,EAAE,CAAC;IACjC,CAAC;CACF;AA3BD,4CA2BC;AAED,MAAa,mBAAoB,SAAQ,gBAExC;IACQ,MAAM,CAAC,IAAI;QAChB,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IAED,YACkB,OAAe,EACf,eAAuB;QAEvC,KAAK,EAAE,CAAC;QAHQ,YAAO,GAAP,OAAO,CAAQ;QACf,oBAAe,GAAf,eAAe,CAAQ;IAGzC,CAAC;IAED,aAAa;QACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB,MAAM,IAAI,mBAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;SAC1D;IACH,CAAC;IAED,KAAK;QACH,OAAO,iBAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,mBAAmB,CAAC,IAAI,EAAE,CAAC;IACpC,CAAC;CACF;AA3BD,kDA2BC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Env } from "@keplr-wallet/router";
|
|
2
|
+
import { AppCurrency, ChainInfo, ERC20Currency } from "@keplr-wallet/types";
|
|
3
|
+
import { ChainsService } from "../chains";
|
|
4
|
+
import { KVStore } from "@keplr-wallet/common";
|
|
5
|
+
import { InteractionService } from "../interaction";
|
|
6
|
+
import { ERC20TokenInfo } from "./types";
|
|
7
|
+
export declare class TokenERC20Service {
|
|
8
|
+
protected chainsService: ChainsService;
|
|
9
|
+
protected interactionService: InteractionService;
|
|
10
|
+
protected readonly kvStore: KVStore;
|
|
11
|
+
protected tokenMap: Map<string, ERC20TokenInfo[]>;
|
|
12
|
+
constructor(kvStore: KVStore, chainsService: ChainsService, interactionService: InteractionService);
|
|
13
|
+
init(): Promise<void>;
|
|
14
|
+
protected readonly onChainRemoved: (chainInfo: ChainInfo) => void;
|
|
15
|
+
getAllERC20TokenInfos: () => Record<string, ERC20TokenInfo[] | undefined>;
|
|
16
|
+
protected validateChainInfo(chainInfo: ChainInfo): void;
|
|
17
|
+
suggestERC20Token(env: Env, chainId: string, contractAddress: string): Promise<void>;
|
|
18
|
+
getERC20Token: (chainId: string, contractAddress: string) => ERC20TokenInfo | undefined;
|
|
19
|
+
setERC20Token(chainId: string, currency: AppCurrency): Promise<void>;
|
|
20
|
+
removeERC20Token(chainId: string, contractAddress: string): void;
|
|
21
|
+
static validateCurrency(currency: AppCurrency): Promise<AppCurrency>;
|
|
22
|
+
static validateERC20Currency(currency: ERC20Currency): Promise<ERC20Currency>;
|
|
23
|
+
}
|