@keplr-wallet/chain-validator 0.11.45 → 0.11.46
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/feature.js +1 -0
- package/build/feature.js.map +1 -1
- package/build/schema.d.ts +2 -1
- package/build/schema.js +23 -4
- package/build/schema.js.map +1 -1
- package/package.json +4 -4
- package/src/feature.ts +1 -0
- package/src/schema.ts +38 -3
package/build/feature.js
CHANGED
package/build/feature.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"feature.js","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"feature.js","sourceRoot":"","sources":["../src/feature.ts"],"names":[],"mappings":"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"}
|
package/build/schema.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Bech32Config, ChainInfo, Currency, CW20Currency, Secret20Currency } from "@keplr-wallet/types";
|
|
1
|
+
import { Bech32Config, ChainInfo, Currency, CW20Currency, Secret20Currency, ERC20Currency } from "@keplr-wallet/types";
|
|
2
2
|
import Joi from "joi";
|
|
3
3
|
export declare const CurrencySchema: Joi.ObjectSchema<Currency>;
|
|
4
4
|
export declare const CW20CurrencySchema: Joi.ObjectSchema<CW20Currency>;
|
|
5
5
|
export declare const Secret20CurrencySchema: Joi.ObjectSchema<Secret20Currency>;
|
|
6
|
+
export declare const ERC20CurrencySchema: Joi.ObjectSchema<ERC20Currency>;
|
|
6
7
|
export declare const FeeCurrencySchema: Joi.ObjectSchema<Currency & {
|
|
7
8
|
readonly gasPriceStep?: {
|
|
8
9
|
readonly low: number;
|
package/build/schema.js
CHANGED
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.ChainInfoSchema = exports.SuggestingBIP44Schema = exports.Bech32ConfigSchema = exports.FeeCurrencySchema = exports.Secret20CurrencySchema = exports.CW20CurrencySchema = exports.CurrencySchema = void 0;
|
|
6
|
+
exports.ChainInfoSchema = exports.SuggestingBIP44Schema = exports.Bech32ConfigSchema = exports.FeeCurrencySchema = exports.ERC20CurrencySchema = exports.Secret20CurrencySchema = exports.CW20CurrencySchema = exports.CurrencySchema = void 0;
|
|
7
7
|
const feature_1 = require("./feature");
|
|
8
8
|
const joi_1 = __importDefault(require("joi"));
|
|
9
9
|
exports.CurrencySchema = joi_1.default.object({
|
|
@@ -40,6 +40,19 @@ exports.Secret20CurrencySchema = exports.CurrencySchema
|
|
|
40
40
|
return Object.assign(Object.assign({}, value), { coinMinimalDenom: `${value.type}:${value.contractAddress}:` + value.coinMinimalDenom });
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
|
+
exports.ERC20CurrencySchema = exports.CurrencySchema
|
|
44
|
+
.keys({
|
|
45
|
+
type: joi_1.default.string().equal("erc20").required(),
|
|
46
|
+
contractAddress: joi_1.default.string().required(),
|
|
47
|
+
})
|
|
48
|
+
.custom((value) => {
|
|
49
|
+
if (value.coinMinimalDenom.startsWith(`${value.type}:${value.contractAddress}:`)) {
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
return Object.assign(Object.assign({}, value), { coinMinimalDenom: `${value.type}:${value.contractAddress}:` + value.coinMinimalDenom });
|
|
54
|
+
}
|
|
55
|
+
});
|
|
43
56
|
const GasPriceStepSchema = joi_1.default.object({
|
|
44
57
|
low: joi_1.default.number().strict().required(),
|
|
45
58
|
average: joi_1.default.number().strict().required(),
|
|
@@ -118,7 +131,7 @@ exports.ChainInfoSchema = joi_1.default.object({
|
|
|
118
131
|
bech32Config: exports.Bech32ConfigSchema.required(),
|
|
119
132
|
currencies: joi_1.default.array()
|
|
120
133
|
.min(1)
|
|
121
|
-
.items(exports.CurrencySchema, exports.CW20CurrencySchema, exports.Secret20CurrencySchema)
|
|
134
|
+
.items(exports.CurrencySchema, exports.CW20CurrencySchema, exports.Secret20CurrencySchema, exports.ERC20CurrencySchema)
|
|
122
135
|
.custom((values) => {
|
|
123
136
|
const dups = {};
|
|
124
137
|
for (const val of values) {
|
|
@@ -150,12 +163,18 @@ exports.ChainInfoSchema = joi_1.default.object({
|
|
|
150
163
|
.items(joi_1.default.string().valid(...feature_1.SupportedChainFeatures))
|
|
151
164
|
.unique()
|
|
152
165
|
.custom((value) => {
|
|
153
|
-
|
|
154
|
-
|
|
166
|
+
const numTokenContracts = [
|
|
167
|
+
value.indexOf("cosmwasm"),
|
|
168
|
+
value.indexOf("secretwasm"),
|
|
169
|
+
value.indexOf("evmos-erc20"),
|
|
170
|
+
].filter((val) => val >= 0).length;
|
|
171
|
+
if (numTokenContracts > 1) {
|
|
172
|
+
throw new Error("cosmwasm, secretwasm, and evmos-erc20 are not compatible");
|
|
155
173
|
}
|
|
156
174
|
return value;
|
|
157
175
|
}),
|
|
158
176
|
chainSymbolImageUrl: joi_1.default.string().uri(),
|
|
177
|
+
ethereumJsonRpc: joi_1.default.string().uri(),
|
|
159
178
|
}).custom((value) => {
|
|
160
179
|
var _a;
|
|
161
180
|
if ((_a = value.alternativeBIP44s) === null || _a === void 0 ? void 0 : _a.find((bip44) => bip44.coinType === value.bip44.coinType)) {
|
package/build/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keplr-wallet/chain-validator",
|
|
3
|
-
"version": "0.11.
|
|
3
|
+
"version": "0.11.46",
|
|
4
4
|
"main": "build/index.js",
|
|
5
5
|
"author": "chainapsis",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
"lint-fix": "eslint --fix \"src/**/*\" && prettier --write \"src/**/*\""
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@keplr-wallet/cosmos": "0.11.
|
|
21
|
-
"@keplr-wallet/types": "0.11.
|
|
20
|
+
"@keplr-wallet/cosmos": "0.11.46",
|
|
21
|
+
"@keplr-wallet/types": "0.11.46",
|
|
22
22
|
"axios": "^0.27.2",
|
|
23
23
|
"joi": "^17.5.0",
|
|
24
24
|
"utility-types": "^3.10.0"
|
|
25
25
|
},
|
|
26
|
-
"gitHead": "
|
|
26
|
+
"gitHead": "77b91ddbb031fb1c539f22b0f9b0988919322ecc"
|
|
27
27
|
}
|
package/src/feature.ts
CHANGED
package/src/schema.ts
CHANGED
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
FeeCurrency,
|
|
9
9
|
Secret20Currency,
|
|
10
10
|
WithGasPriceStep,
|
|
11
|
+
ERC20Currency,
|
|
11
12
|
} from "@keplr-wallet/types";
|
|
12
13
|
import { SupportedChainFeatures } from "./feature";
|
|
13
14
|
|
|
@@ -64,6 +65,27 @@ export const Secret20CurrencySchema = (CurrencySchema as ObjectSchema<Secret20Cu
|
|
|
64
65
|
}
|
|
65
66
|
});
|
|
66
67
|
|
|
68
|
+
export const ERC20CurrencySchema = (CurrencySchema as ObjectSchema<ERC20Currency>)
|
|
69
|
+
.keys({
|
|
70
|
+
type: Joi.string().equal("erc20").required(),
|
|
71
|
+
contractAddress: Joi.string().required(),
|
|
72
|
+
})
|
|
73
|
+
.custom((value: ERC20Currency) => {
|
|
74
|
+
if (
|
|
75
|
+
value.coinMinimalDenom.startsWith(
|
|
76
|
+
`${value.type}:${value.contractAddress}:`
|
|
77
|
+
)
|
|
78
|
+
) {
|
|
79
|
+
return value;
|
|
80
|
+
} else {
|
|
81
|
+
return {
|
|
82
|
+
...value,
|
|
83
|
+
coinMinimalDenom:
|
|
84
|
+
`${value.type}:${value.contractAddress}:` + value.coinMinimalDenom,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
|
|
67
89
|
const GasPriceStepSchema = Joi.object<{
|
|
68
90
|
readonly low: number;
|
|
69
91
|
readonly average: number;
|
|
@@ -158,7 +180,12 @@ export const ChainInfoSchema = Joi.object<ChainInfo>({
|
|
|
158
180
|
bech32Config: Bech32ConfigSchema.required(),
|
|
159
181
|
currencies: Joi.array()
|
|
160
182
|
.min(1)
|
|
161
|
-
.items(
|
|
183
|
+
.items(
|
|
184
|
+
CurrencySchema,
|
|
185
|
+
CW20CurrencySchema,
|
|
186
|
+
Secret20CurrencySchema,
|
|
187
|
+
ERC20CurrencySchema
|
|
188
|
+
)
|
|
162
189
|
.custom((values: AppCurrency[]) => {
|
|
163
190
|
const dups: { [denom: string]: boolean | undefined } = {};
|
|
164
191
|
|
|
@@ -194,13 +221,21 @@ export const ChainInfoSchema = Joi.object<ChainInfo>({
|
|
|
194
221
|
.items(Joi.string().valid(...SupportedChainFeatures))
|
|
195
222
|
.unique()
|
|
196
223
|
.custom((value: string[]) => {
|
|
197
|
-
|
|
198
|
-
|
|
224
|
+
const numTokenContracts = [
|
|
225
|
+
value.indexOf("cosmwasm"),
|
|
226
|
+
value.indexOf("secretwasm"),
|
|
227
|
+
value.indexOf("evmos-erc20"),
|
|
228
|
+
].filter((val) => val >= 0).length;
|
|
229
|
+
if (numTokenContracts > 1) {
|
|
230
|
+
throw new Error(
|
|
231
|
+
"cosmwasm, secretwasm, and evmos-erc20 are not compatible"
|
|
232
|
+
);
|
|
199
233
|
}
|
|
200
234
|
|
|
201
235
|
return value;
|
|
202
236
|
}),
|
|
203
237
|
chainSymbolImageUrl: Joi.string().uri(),
|
|
238
|
+
ethereumJsonRpc: Joi.string().uri(),
|
|
204
239
|
}).custom((value: ChainInfo) => {
|
|
205
240
|
if (
|
|
206
241
|
value.alternativeBIP44s?.find(
|