decentralcardgame-cardchain-client-ts 0.0.25 → 0.0.26
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/DecentralCardGame.cardchain.cardchain/module.js +364 -338
- package/DecentralCardGame.cardchain.cardchain/module.ts +530 -495
- package/DecentralCardGame.cardchain.cardchain/registry.js +66 -64
- package/DecentralCardGame.cardchain.cardchain/registry.ts +66 -64
- package/DecentralCardGame.cardchain.cardchain/rest.js +31 -17
- package/DecentralCardGame.cardchain.cardchain/rest.ts +138 -94
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/card.js +287 -106
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/card.ts +326 -107
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/copyright_proposal.js +38 -14
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/copyright_proposal.ts +45 -17
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/council.js +104 -47
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/council.ts +122 -50
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/genesis.js +92 -74
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/genesis.ts +109 -66
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/image.js +25 -17
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/image.ts +29 -20
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/match.js +107 -51
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/match.ts +130 -50
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/match_reporter_proposal.js +29 -10
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/match_reporter_proposal.ts +32 -10
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/num.js +17 -8
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/num.ts +21 -11
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/params.js +178 -57
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/params.ts +205 -60
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/query.js +666 -446
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/query.ts +764 -459
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/running_average.js +17 -14
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/running_average.ts +24 -15
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/sell_offer.js +45 -16
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/sell_offer.ts +53 -19
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/server.js +31 -12
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/server.ts +37 -15
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/set.js +138 -62
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/set.ts +173 -67
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/set_proposal.js +31 -12
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/set_proposal.ts +37 -15
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/tx.js +1609 -1024
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/tx.ts +1821 -1153
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/user.js +207 -98
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/user.ts +261 -96
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/voting.js +178 -108
- package/DecentralCardGame.cardchain.cardchain/types/DecentralCardGame/cardchain/cardchain/voting.ts +200 -123
- package/DecentralCardGame.cardchain.cardchain/types/amino/amino.ts +1 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/card.js +86 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/card.ts +90 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/query.js +219 -114
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/query.ts +265 -120
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/set.js +186 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/set.ts +210 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/tx.js +91 -0
- package/DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/tx.ts +113 -0
- package/DecentralCardGame.cardchain.cardchain/types.js +3 -1
- package/DecentralCardGame.cardchain.cardchain/types.ts +4 -0
- package/DecentralCardGame.cardchain.featureflag/rest.ts +6 -6
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/flag.js +86 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/flag.ts +114 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/genesis.js +164 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/genesis.ts +205 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/params.js +40 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/params.ts +62 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/proposal.js +100 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/proposal.ts +130 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/query.js +325 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/query.ts +424 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/tx.js +9 -0
- package/DecentralCardGame.cardchain.featureflag/types/DecentralCardGame/cardchain/featureflag/tx.ts +21 -0
- package/client.js +3 -9
- package/client.ts +154 -167
- package/cosmos.auth.v1beta1/rest.ts +21 -21
- package/cosmos.authz.v1beta1/module.js +17 -17
- package/cosmos.authz.v1beta1/module.ts +25 -25
- package/cosmos.authz.v1beta1/registry.js +4 -4
- package/cosmos.authz.v1beta1/registry.ts +4 -4
- package/cosmos.authz.v1beta1/rest.ts +75 -75
- package/cosmos.bank.v1beta1/rest.ts +9 -9
- package/cosmos.distribution.v1beta1/module.js +27 -27
- package/cosmos.distribution.v1beta1/module.ts +42 -42
- package/cosmos.distribution.v1beta1/registry.js +4 -4
- package/cosmos.distribution.v1beta1/registry.ts +4 -4
- package/cosmos.distribution.v1beta1/rest.ts +20 -20
- package/cosmos.gov.v1/module.js +24 -24
- package/cosmos.gov.v1/module.ts +36 -36
- package/cosmos.gov.v1/registry.js +4 -4
- package/cosmos.gov.v1/registry.ts +4 -4
- package/cosmos.gov.v1/rest.ts +90 -90
- package/cosmos.gov.v1beta1/module.js +27 -27
- package/cosmos.gov.v1beta1/module.ts +42 -42
- package/cosmos.gov.v1beta1/registry.js +4 -4
- package/cosmos.gov.v1beta1/registry.ts +4 -4
- package/cosmos.gov.v1beta1/rest.ts +152 -152
- package/cosmos.group.v1/module.js +108 -108
- package/cosmos.group.v1/module.ts +164 -164
- package/cosmos.group.v1/registry.js +18 -18
- package/cosmos.group.v1/registry.ts +18 -18
- package/cosmos.group.v1/rest.js +5 -5
- package/cosmos.group.v1/rest.ts +214 -214
- package/cosmos.mint.v1beta1/rest.ts +13 -13
- package/cosmos.nft.v1beta1/rest.ts +132 -132
- package/cosmos.slashing.v1beta1/rest.ts +19 -19
- package/cosmos.staking.v1beta1/module.js +39 -39
- package/cosmos.staking.v1beta1/module.ts +59 -59
- package/cosmos.staking.v1beta1/registry.js +6 -6
- package/cosmos.staking.v1beta1/registry.ts +6 -6
- package/cosmos.staking.v1beta1/rest.ts +95 -95
- package/cosmos.upgrade.v1beta1/module.js +16 -16
- package/cosmos.upgrade.v1beta1/module.ts +24 -24
- package/cosmos.upgrade.v1beta1/registry.js +2 -2
- package/cosmos.upgrade.v1beta1/registry.ts +2 -2
- package/ibc.applications.interchain_accounts.controller.v1/rest.ts +10 -10
- package/ibc.applications.interchain_accounts.host.v1/rest.ts +13 -13
- package/ibc.applications.transfer.v1/rest.ts +3 -3
- package/ibc.core.channel.v1/rest.ts +44 -44
- package/package.json +1 -1
package/client.ts
CHANGED
|
@@ -1,182 +1,169 @@
|
|
|
1
1
|
/// <reference path="./types.d.ts" />
|
|
2
2
|
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
GeneratedType,
|
|
4
|
+
OfflineSigner,
|
|
5
|
+
EncodeObject,
|
|
6
|
+
Registry,
|
|
7
7
|
} from "@cosmjs/proto-signing";
|
|
8
|
-
import {StdFee} from "@cosmjs/amino";
|
|
9
|
-
import {
|
|
10
|
-
import {Env} from "./env";
|
|
11
|
-
import {UnionToIntersection, Return, Constructor} from "./helpers";
|
|
12
|
-
import {Module} from "./modules";
|
|
13
|
-
import {EventEmitter} from "events";
|
|
14
|
-
import {ChainInfo} from "@keplr-wallet/types";
|
|
15
|
-
import {
|
|
16
|
-
createDecentralCardgameAminoConverters
|
|
17
|
-
} from "./DecentralCardGame.cardchain.cardchain/types/cardchain/cardchain/aminomessages";
|
|
8
|
+
import { StdFee } from "@cosmjs/amino";
|
|
9
|
+
import { SigningStargateClient } from "@cosmjs/stargate";
|
|
10
|
+
import { Env } from "./env";
|
|
11
|
+
import { UnionToIntersection, Return, Constructor } from "./helpers";
|
|
12
|
+
import { Module } from "./modules";
|
|
13
|
+
import { EventEmitter } from "events";
|
|
14
|
+
import { ChainInfo } from "@keplr-wallet/types";
|
|
18
15
|
|
|
19
16
|
const defaultFee = {
|
|
20
|
-
|
|
21
|
-
|
|
17
|
+
amount: [],
|
|
18
|
+
gas: "200000",
|
|
22
19
|
};
|
|
23
20
|
|
|
24
21
|
export class IgniteClient extends EventEmitter {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
class AugmentedClient extends this {
|
|
35
|
-
static plugins = currentPlugins.concat(plugin);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
if (Array.isArray(plugin)) {
|
|
39
|
-
type Extension = UnionToIntersection<Return<T>['module']>
|
|
40
|
-
return AugmentedClient as typeof IgniteClient & Constructor<Extension>;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
type Extension = Return<T>['module']
|
|
44
|
-
return AugmentedClient as typeof IgniteClient & Constructor<Extension>;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
async signAndBroadcast(msgs: EncodeObject[], fee: StdFee, memo: string) {
|
|
48
|
-
if (this.signer) {
|
|
49
|
-
const {address} = (await this.signer.getAccounts())[0];
|
|
50
|
-
const signingClient = await SigningStargateClient.connectWithSigner(this.env.rpcURL, this.signer, {
|
|
51
|
-
aminoTypes: this.aminoTypes,
|
|
52
|
-
registry: new Registry(this.registry),
|
|
53
|
-
prefix: this.env.prefix
|
|
54
|
-
});
|
|
55
|
-
return await signingClient.signAndBroadcast(address, msgs, fee ? fee : defaultFee, memo)
|
|
56
|
-
} else {
|
|
57
|
-
throw new Error(" Signer is not present.");
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
constructor(env: Env, signer?: OfflineSigner) {
|
|
62
|
-
super();
|
|
63
|
-
this.env = env;
|
|
64
|
-
this.setMaxListeners(0);
|
|
65
|
-
this.signer = signer;
|
|
66
|
-
this.aminoTypes = new AminoTypes({additions: createDecentralCardgameAminoConverters(), prefix:"cc"})
|
|
67
|
-
const classConstructor = this.constructor as typeof IgniteClient;
|
|
68
|
-
classConstructor.plugins.forEach(plugin => {
|
|
69
|
-
const pluginInstance = plugin(this);
|
|
70
|
-
Object.assign(this, pluginInstance.module)
|
|
71
|
-
if (this.registry) {
|
|
72
|
-
this.registry = this.registry.concat(pluginInstance.registry)
|
|
73
|
-
}
|
|
74
|
-
});
|
|
22
|
+
static plugins: Module[] = [];
|
|
23
|
+
env: Env;
|
|
24
|
+
signer?: OfflineSigner;
|
|
25
|
+
registry: Array<[string, GeneratedType]> = [];
|
|
26
|
+
static plugin<T extends Module | Module[]>(plugin: T) {
|
|
27
|
+
const currentPlugins = this.plugins;
|
|
28
|
+
|
|
29
|
+
class AugmentedClient extends this {
|
|
30
|
+
static plugins = currentPlugins.concat(plugin);
|
|
75
31
|
}
|
|
76
32
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
33
|
+
if (Array.isArray(plugin)) {
|
|
34
|
+
type Extension = UnionToIntersection<Return<T>['module']>
|
|
35
|
+
return AugmentedClient as typeof IgniteClient & Constructor<Extension>;
|
|
80
36
|
}
|
|
81
37
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
38
|
+
type Extension = Return<T>['module']
|
|
39
|
+
return AugmentedClient as typeof IgniteClient & Constructor<Extension>;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
async signAndBroadcast(msgs: EncodeObject[], fee: StdFee, memo: string) {
|
|
43
|
+
if (this.signer) {
|
|
44
|
+
const { address } = (await this.signer.getAccounts())[0];
|
|
45
|
+
const signingClient = await SigningStargateClient.connectWithSigner(this.env.rpcURL, this.signer, { registry: new Registry(this.registry), prefix: this.env.prefix });
|
|
46
|
+
return await signingClient.signAndBroadcast(address, msgs, fee ? fee : defaultFee, memo)
|
|
47
|
+
} else {
|
|
48
|
+
throw new Error(" Signer is not present.");
|
|
85
49
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
constructor(env: Env, signer?: OfflineSigner) {
|
|
53
|
+
super();
|
|
54
|
+
this.env = env;
|
|
55
|
+
this.setMaxListeners(0);
|
|
56
|
+
this.signer = signer;
|
|
57
|
+
const classConstructor = this.constructor as typeof IgniteClient;
|
|
58
|
+
classConstructor.plugins.forEach(plugin => {
|
|
59
|
+
const pluginInstance = plugin(this);
|
|
60
|
+
Object.assign(this, pluginInstance.module)
|
|
61
|
+
if (this.registry) {
|
|
62
|
+
this.registry = this.registry.concat(pluginInstance.registry)
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
useSigner(signer: OfflineSigner) {
|
|
67
|
+
this.signer = signer;
|
|
68
|
+
this.emit("signer-changed", this.signer);
|
|
69
|
+
}
|
|
70
|
+
removeSigner() {
|
|
71
|
+
this.signer = undefined;
|
|
72
|
+
this.emit("signer-changed", this.signer);
|
|
73
|
+
}
|
|
74
|
+
async useKeplr(keplrChainInfo: Partial<ChainInfo> = {}) {
|
|
75
|
+
// Using queryClients directly because BaseClient has no knowledge of the modules at this stage
|
|
76
|
+
try {
|
|
77
|
+
const queryClient = (
|
|
78
|
+
await import("./cosmos.base.tendermint.v1beta1/module")
|
|
79
|
+
).queryClient;
|
|
80
|
+
const stakingQueryClient = (
|
|
81
|
+
await import("./cosmos.staking.v1beta1/module")
|
|
82
|
+
).queryClient;
|
|
83
|
+
const bankQueryClient = (await import("./cosmos.bank.v1beta1/module"))
|
|
84
|
+
.queryClient;
|
|
85
|
+
|
|
86
|
+
const stakingqc = stakingQueryClient({ addr: this.env.apiURL });
|
|
87
|
+
const qc = queryClient({ addr: this.env.apiURL });
|
|
88
|
+
const node_info = await (await qc.serviceGetNodeInfo()).data;
|
|
89
|
+
const chainId = node_info.default_node_info?.network ?? "";
|
|
90
|
+
const chainName = chainId?.toUpperCase() + " Network";
|
|
91
|
+
const staking = await (await stakingqc.queryParams()).data;
|
|
92
|
+
const bankqc = bankQueryClient({ addr: this.env.apiURL });
|
|
93
|
+
const tokens = await (await bankqc.queryTotalSupply()).data;
|
|
94
|
+
const addrPrefix = this.env.prefix ?? "cosmos";
|
|
95
|
+
const rpc = this.env.rpcURL;
|
|
96
|
+
const rest = this.env.apiURL;
|
|
97
|
+
let stakeCurrency = {
|
|
98
|
+
coinDenom: staking.params?.bond_denom?.toUpperCase() ?? "",
|
|
99
|
+
coinMinimalDenom: staking.params?.bond_denom ?? "",
|
|
100
|
+
coinDecimals: 0,
|
|
101
|
+
};
|
|
102
|
+
|
|
103
|
+
let bip44 = {
|
|
104
|
+
coinType: 118,
|
|
105
|
+
};
|
|
106
|
+
|
|
107
|
+
let bech32Config = {
|
|
108
|
+
bech32PrefixAccAddr: addrPrefix,
|
|
109
|
+
bech32PrefixAccPub: addrPrefix + "pub",
|
|
110
|
+
bech32PrefixValAddr: addrPrefix + "valoper",
|
|
111
|
+
bech32PrefixValPub: addrPrefix + "valoperpub",
|
|
112
|
+
bech32PrefixConsAddr: addrPrefix + "valcons",
|
|
113
|
+
bech32PrefixConsPub: addrPrefix + "valconspub",
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
let currencies =
|
|
117
|
+
tokens.supply?.map((x) => {
|
|
118
|
+
const y = {
|
|
119
|
+
coinDenom: x.denom?.toUpperCase() ?? "",
|
|
120
|
+
coinMinimalDenom: x.denom ?? "",
|
|
121
|
+
coinDecimals: 0,
|
|
122
|
+
};
|
|
123
|
+
return y;
|
|
124
|
+
}) ?? [];
|
|
125
|
+
|
|
126
|
+
let feeCurrencies =
|
|
127
|
+
tokens.supply?.map((x) => {
|
|
128
|
+
const y = {
|
|
129
|
+
coinDenom: x.denom?.toUpperCase() ?? "",
|
|
130
|
+
coinMinimalDenom: x.denom ?? "",
|
|
131
|
+
coinDecimals: 0,
|
|
132
|
+
};
|
|
133
|
+
return y;
|
|
134
|
+
}) ?? [];
|
|
135
|
+
|
|
136
|
+
let coinType = 118;
|
|
137
|
+
|
|
138
|
+
if (chainId) {
|
|
139
|
+
const suggestOptions: ChainInfo = {
|
|
140
|
+
chainId,
|
|
141
|
+
chainName,
|
|
142
|
+
rpc,
|
|
143
|
+
rest,
|
|
144
|
+
stakeCurrency,
|
|
145
|
+
bip44,
|
|
146
|
+
bech32Config,
|
|
147
|
+
currencies,
|
|
148
|
+
feeCurrencies,
|
|
149
|
+
...keplrChainInfo,
|
|
150
|
+
};
|
|
151
|
+
await window.keplr.experimentalSuggestChain(suggestOptions);
|
|
152
|
+
|
|
153
|
+
window.keplr.defaultOptions = {
|
|
154
|
+
sign: {
|
|
155
|
+
preferNoSetFee: true,
|
|
156
|
+
preferNoSetMemo: true,
|
|
157
|
+
},
|
|
158
|
+
};
|
|
159
|
+
}
|
|
160
|
+
await window.keplr.enable(chainId);
|
|
161
|
+
this.signer = window.keplr.getOfflineSigner(chainId);
|
|
162
|
+
this.emit("signer-changed", this.signer);
|
|
163
|
+
} catch (e) {
|
|
164
|
+
throw new Error(
|
|
165
|
+
"Could not load tendermint, staking and bank modules. Please ensure your client loads them to use useKeplr()"
|
|
166
|
+
);
|
|
181
167
|
}
|
|
168
|
+
}
|
|
182
169
|
}
|
|
@@ -9,6 +9,26 @@
|
|
|
9
9
|
* ---------------------------------------------------------------
|
|
10
10
|
*/
|
|
11
11
|
|
|
12
|
+
/**
|
|
13
|
+
* Params defines the parameters for the auth module.
|
|
14
|
+
*/
|
|
15
|
+
export interface Authv1Beta1Params {
|
|
16
|
+
/** @format uint64 */
|
|
17
|
+
max_memo_characters?: string;
|
|
18
|
+
|
|
19
|
+
/** @format uint64 */
|
|
20
|
+
tx_sig_limit?: string;
|
|
21
|
+
|
|
22
|
+
/** @format uint64 */
|
|
23
|
+
tx_size_cost_per_byte?: string;
|
|
24
|
+
|
|
25
|
+
/** @format uint64 */
|
|
26
|
+
sig_verify_cost_ed25519?: string;
|
|
27
|
+
|
|
28
|
+
/** @format uint64 */
|
|
29
|
+
sig_verify_cost_secp256k1?: string;
|
|
30
|
+
}
|
|
31
|
+
|
|
12
32
|
/**
|
|
13
33
|
* `Any` contains an arbitrary serialized protocol buffer message along with a
|
|
14
34
|
URL that describes the type of the serialized message.
|
|
@@ -230,26 +250,6 @@ export interface V1Beta1PageResponse {
|
|
|
230
250
|
total?: string;
|
|
231
251
|
}
|
|
232
252
|
|
|
233
|
-
/**
|
|
234
|
-
* Params defines the parameters for the auth module.
|
|
235
|
-
*/
|
|
236
|
-
export interface V1Beta1Params {
|
|
237
|
-
/** @format uint64 */
|
|
238
|
-
max_memo_characters?: string;
|
|
239
|
-
|
|
240
|
-
/** @format uint64 */
|
|
241
|
-
tx_sig_limit?: string;
|
|
242
|
-
|
|
243
|
-
/** @format uint64 */
|
|
244
|
-
tx_size_cost_per_byte?: string;
|
|
245
|
-
|
|
246
|
-
/** @format uint64 */
|
|
247
|
-
sig_verify_cost_ed25519?: string;
|
|
248
|
-
|
|
249
|
-
/** @format uint64 */
|
|
250
|
-
sig_verify_cost_secp256k1?: string;
|
|
251
|
-
}
|
|
252
|
-
|
|
253
253
|
/**
|
|
254
254
|
* Since: cosmos-sdk 0.46.2
|
|
255
255
|
*/
|
|
@@ -357,7 +357,7 @@ export interface V1Beta1QueryModuleAccountsResponse {
|
|
|
357
357
|
*/
|
|
358
358
|
export interface V1Beta1QueryParamsResponse {
|
|
359
359
|
/** params defines the parameters of the module. */
|
|
360
|
-
params?:
|
|
360
|
+
params?: Authv1Beta1Params;
|
|
361
361
|
}
|
|
362
362
|
|
|
363
363
|
import axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse, ResponseType } from "axios";
|
|
@@ -3,16 +3,16 @@ import { SigningStargateClient } from "@cosmjs/stargate";
|
|
|
3
3
|
import { Registry } from "@cosmjs/proto-signing";
|
|
4
4
|
import { msgTypes } from './registry';
|
|
5
5
|
import { Api } from "./rest";
|
|
6
|
-
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
7
|
-
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
8
6
|
import { MsgRevoke } from "./types/cosmos/authz/v1beta1/tx";
|
|
7
|
+
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
8
|
+
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
9
9
|
import { GenericAuthorization as typeGenericAuthorization } from "./types";
|
|
10
10
|
import { Grant as typeGrant } from "./types";
|
|
11
11
|
import { GrantAuthorization as typeGrantAuthorization } from "./types";
|
|
12
12
|
import { GrantQueueItem as typeGrantQueueItem } from "./types";
|
|
13
13
|
import { EventGrant as typeEventGrant } from "./types";
|
|
14
14
|
import { EventRevoke as typeEventRevoke } from "./types";
|
|
15
|
-
export {
|
|
15
|
+
export { MsgRevoke, MsgExec, MsgGrant };
|
|
16
16
|
export const registry = new Registry(msgTypes);
|
|
17
17
|
function getStructure(template) {
|
|
18
18
|
const structure = { fields: [] };
|
|
@@ -28,18 +28,18 @@ const defaultFee = {
|
|
|
28
28
|
};
|
|
29
29
|
export const txClient = ({ signer, prefix, addr } = { addr: "http://localhost:26657", prefix: "cosmos" }) => {
|
|
30
30
|
return {
|
|
31
|
-
async
|
|
31
|
+
async sendMsgRevoke({ value, fee, memo }) {
|
|
32
32
|
if (!signer) {
|
|
33
|
-
throw new Error('TxClient:
|
|
33
|
+
throw new Error('TxClient:sendMsgRevoke: Unable to sign Tx. Signer is not present.');
|
|
34
34
|
}
|
|
35
35
|
try {
|
|
36
36
|
const { address } = (await signer.getAccounts())[0];
|
|
37
37
|
const signingClient = await SigningStargateClient.connectWithSigner(addr, signer, { registry, prefix });
|
|
38
|
-
let msg = this.
|
|
38
|
+
let msg = this.msgRevoke({ value: MsgRevoke.fromPartial(value) });
|
|
39
39
|
return await signingClient.signAndBroadcast(address, [msg], fee ? fee : defaultFee, memo);
|
|
40
40
|
}
|
|
41
41
|
catch (e) {
|
|
42
|
-
throw new Error('TxClient:
|
|
42
|
+
throw new Error('TxClient:sendMsgRevoke: Could not broadcast Tx: ' + e.message);
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
45
|
async sendMsgExec({ value, fee, memo }) {
|
|
@@ -56,26 +56,26 @@ export const txClient = ({ signer, prefix, addr } = { addr: "http://localhost:26
|
|
|
56
56
|
throw new Error('TxClient:sendMsgExec: Could not broadcast Tx: ' + e.message);
|
|
57
57
|
}
|
|
58
58
|
},
|
|
59
|
-
async
|
|
59
|
+
async sendMsgGrant({ value, fee, memo }) {
|
|
60
60
|
if (!signer) {
|
|
61
|
-
throw new Error('TxClient:
|
|
61
|
+
throw new Error('TxClient:sendMsgGrant: Unable to sign Tx. Signer is not present.');
|
|
62
62
|
}
|
|
63
63
|
try {
|
|
64
64
|
const { address } = (await signer.getAccounts())[0];
|
|
65
65
|
const signingClient = await SigningStargateClient.connectWithSigner(addr, signer, { registry, prefix });
|
|
66
|
-
let msg = this.
|
|
66
|
+
let msg = this.msgGrant({ value: MsgGrant.fromPartial(value) });
|
|
67
67
|
return await signingClient.signAndBroadcast(address, [msg], fee ? fee : defaultFee, memo);
|
|
68
68
|
}
|
|
69
69
|
catch (e) {
|
|
70
|
-
throw new Error('TxClient:
|
|
70
|
+
throw new Error('TxClient:sendMsgGrant: Could not broadcast Tx: ' + e.message);
|
|
71
71
|
}
|
|
72
72
|
},
|
|
73
|
-
|
|
73
|
+
msgRevoke({ value }) {
|
|
74
74
|
try {
|
|
75
|
-
return { typeUrl: "/cosmos.authz.v1beta1.
|
|
75
|
+
return { typeUrl: "/cosmos.authz.v1beta1.MsgRevoke", value: MsgRevoke.fromPartial(value) };
|
|
76
76
|
}
|
|
77
77
|
catch (e) {
|
|
78
|
-
throw new Error('TxClient:
|
|
78
|
+
throw new Error('TxClient:MsgRevoke: Could not create message: ' + e.message);
|
|
79
79
|
}
|
|
80
80
|
},
|
|
81
81
|
msgExec({ value }) {
|
|
@@ -86,12 +86,12 @@ export const txClient = ({ signer, prefix, addr } = { addr: "http://localhost:26
|
|
|
86
86
|
throw new Error('TxClient:MsgExec: Could not create message: ' + e.message);
|
|
87
87
|
}
|
|
88
88
|
},
|
|
89
|
-
|
|
89
|
+
msgGrant({ value }) {
|
|
90
90
|
try {
|
|
91
|
-
return { typeUrl: "/cosmos.authz.v1beta1.
|
|
91
|
+
return { typeUrl: "/cosmos.authz.v1beta1.MsgGrant", value: MsgGrant.fromPartial(value) };
|
|
92
92
|
}
|
|
93
93
|
catch (e) {
|
|
94
|
-
throw new Error('TxClient:
|
|
94
|
+
throw new Error('TxClient:MsgGrant: Could not create message: ' + e.message);
|
|
95
95
|
}
|
|
96
96
|
},
|
|
97
97
|
};
|
|
@@ -7,9 +7,9 @@ import { msgTypes } from './registry';
|
|
|
7
7
|
import { IgniteClient } from "../client"
|
|
8
8
|
import { MissingWalletError } from "../helpers"
|
|
9
9
|
import { Api } from "./rest";
|
|
10
|
-
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
11
|
-
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
12
10
|
import { MsgRevoke } from "./types/cosmos/authz/v1beta1/tx";
|
|
11
|
+
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
12
|
+
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
13
13
|
|
|
14
14
|
import { GenericAuthorization as typeGenericAuthorization} from "./types"
|
|
15
15
|
import { Grant as typeGrant} from "./types"
|
|
@@ -18,10 +18,10 @@ import { GrantQueueItem as typeGrantQueueItem} from "./types"
|
|
|
18
18
|
import { EventGrant as typeEventGrant} from "./types"
|
|
19
19
|
import { EventRevoke as typeEventRevoke} from "./types"
|
|
20
20
|
|
|
21
|
-
export {
|
|
21
|
+
export { MsgRevoke, MsgExec, MsgGrant };
|
|
22
22
|
|
|
23
|
-
type
|
|
24
|
-
value:
|
|
23
|
+
type sendMsgRevokeParams = {
|
|
24
|
+
value: MsgRevoke,
|
|
25
25
|
fee?: StdFee,
|
|
26
26
|
memo?: string
|
|
27
27
|
};
|
|
@@ -32,23 +32,23 @@ type sendMsgExecParams = {
|
|
|
32
32
|
memo?: string
|
|
33
33
|
};
|
|
34
34
|
|
|
35
|
-
type
|
|
36
|
-
value:
|
|
35
|
+
type sendMsgGrantParams = {
|
|
36
|
+
value: MsgGrant,
|
|
37
37
|
fee?: StdFee,
|
|
38
38
|
memo?: string
|
|
39
39
|
};
|
|
40
40
|
|
|
41
41
|
|
|
42
|
-
type
|
|
43
|
-
value:
|
|
42
|
+
type msgRevokeParams = {
|
|
43
|
+
value: MsgRevoke,
|
|
44
44
|
};
|
|
45
45
|
|
|
46
46
|
type msgExecParams = {
|
|
47
47
|
value: MsgExec,
|
|
48
48
|
};
|
|
49
49
|
|
|
50
|
-
type
|
|
51
|
-
value:
|
|
50
|
+
type msgGrantParams = {
|
|
51
|
+
value: MsgGrant,
|
|
52
52
|
};
|
|
53
53
|
|
|
54
54
|
|
|
@@ -81,17 +81,17 @@ export const txClient = ({ signer, prefix, addr }: TxClientOptions = { addr: "ht
|
|
|
81
81
|
|
|
82
82
|
return {
|
|
83
83
|
|
|
84
|
-
async
|
|
84
|
+
async sendMsgRevoke({ value, fee, memo }: sendMsgRevokeParams): Promise<DeliverTxResponse> {
|
|
85
85
|
if (!signer) {
|
|
86
|
-
throw new Error('TxClient:
|
|
86
|
+
throw new Error('TxClient:sendMsgRevoke: Unable to sign Tx. Signer is not present.')
|
|
87
87
|
}
|
|
88
88
|
try {
|
|
89
89
|
const { address } = (await signer.getAccounts())[0];
|
|
90
90
|
const signingClient = await SigningStargateClient.connectWithSigner(addr,signer,{registry, prefix});
|
|
91
|
-
let msg = this.
|
|
91
|
+
let msg = this.msgRevoke({ value: MsgRevoke.fromPartial(value) })
|
|
92
92
|
return await signingClient.signAndBroadcast(address, [msg], fee ? fee : defaultFee, memo)
|
|
93
93
|
} catch (e: any) {
|
|
94
|
-
throw new Error('TxClient:
|
|
94
|
+
throw new Error('TxClient:sendMsgRevoke: Could not broadcast Tx: '+ e.message)
|
|
95
95
|
}
|
|
96
96
|
},
|
|
97
97
|
|
|
@@ -109,26 +109,26 @@ export const txClient = ({ signer, prefix, addr }: TxClientOptions = { addr: "ht
|
|
|
109
109
|
}
|
|
110
110
|
},
|
|
111
111
|
|
|
112
|
-
async
|
|
112
|
+
async sendMsgGrant({ value, fee, memo }: sendMsgGrantParams): Promise<DeliverTxResponse> {
|
|
113
113
|
if (!signer) {
|
|
114
|
-
throw new Error('TxClient:
|
|
114
|
+
throw new Error('TxClient:sendMsgGrant: Unable to sign Tx. Signer is not present.')
|
|
115
115
|
}
|
|
116
116
|
try {
|
|
117
117
|
const { address } = (await signer.getAccounts())[0];
|
|
118
118
|
const signingClient = await SigningStargateClient.connectWithSigner(addr,signer,{registry, prefix});
|
|
119
|
-
let msg = this.
|
|
119
|
+
let msg = this.msgGrant({ value: MsgGrant.fromPartial(value) })
|
|
120
120
|
return await signingClient.signAndBroadcast(address, [msg], fee ? fee : defaultFee, memo)
|
|
121
121
|
} catch (e: any) {
|
|
122
|
-
throw new Error('TxClient:
|
|
122
|
+
throw new Error('TxClient:sendMsgGrant: Could not broadcast Tx: '+ e.message)
|
|
123
123
|
}
|
|
124
124
|
},
|
|
125
125
|
|
|
126
126
|
|
|
127
|
-
|
|
127
|
+
msgRevoke({ value }: msgRevokeParams): EncodeObject {
|
|
128
128
|
try {
|
|
129
|
-
return { typeUrl: "/cosmos.authz.v1beta1.
|
|
129
|
+
return { typeUrl: "/cosmos.authz.v1beta1.MsgRevoke", value: MsgRevoke.fromPartial( value ) }
|
|
130
130
|
} catch (e: any) {
|
|
131
|
-
throw new Error('TxClient:
|
|
131
|
+
throw new Error('TxClient:MsgRevoke: Could not create message: ' + e.message)
|
|
132
132
|
}
|
|
133
133
|
},
|
|
134
134
|
|
|
@@ -140,11 +140,11 @@ export const txClient = ({ signer, prefix, addr }: TxClientOptions = { addr: "ht
|
|
|
140
140
|
}
|
|
141
141
|
},
|
|
142
142
|
|
|
143
|
-
|
|
143
|
+
msgGrant({ value }: msgGrantParams): EncodeObject {
|
|
144
144
|
try {
|
|
145
|
-
return { typeUrl: "/cosmos.authz.v1beta1.
|
|
145
|
+
return { typeUrl: "/cosmos.authz.v1beta1.MsgGrant", value: MsgGrant.fromPartial( value ) }
|
|
146
146
|
} catch (e: any) {
|
|
147
|
-
throw new Error('TxClient:
|
|
147
|
+
throw new Error('TxClient:MsgGrant: Could not create message: ' + e.message)
|
|
148
148
|
}
|
|
149
149
|
},
|
|
150
150
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
2
|
-
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
3
1
|
import { MsgRevoke } from "./types/cosmos/authz/v1beta1/tx";
|
|
2
|
+
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
3
|
+
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
4
4
|
const msgTypes = [
|
|
5
|
-
["/cosmos.authz.v1beta1.MsgGrant", MsgGrant],
|
|
6
|
-
["/cosmos.authz.v1beta1.MsgExec", MsgExec],
|
|
7
5
|
["/cosmos.authz.v1beta1.MsgRevoke", MsgRevoke],
|
|
6
|
+
["/cosmos.authz.v1beta1.MsgExec", MsgExec],
|
|
7
|
+
["/cosmos.authz.v1beta1.MsgGrant", MsgGrant],
|
|
8
8
|
];
|
|
9
9
|
export { msgTypes };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { GeneratedType } from "@cosmjs/proto-signing";
|
|
2
|
-
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
3
|
-
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
4
2
|
import { MsgRevoke } from "./types/cosmos/authz/v1beta1/tx";
|
|
3
|
+
import { MsgExec } from "./types/cosmos/authz/v1beta1/tx";
|
|
4
|
+
import { MsgGrant } from "./types/cosmos/authz/v1beta1/tx";
|
|
5
5
|
|
|
6
6
|
const msgTypes: Array<[string, GeneratedType]> = [
|
|
7
|
-
["/cosmos.authz.v1beta1.MsgGrant", MsgGrant],
|
|
8
|
-
["/cosmos.authz.v1beta1.MsgExec", MsgExec],
|
|
9
7
|
["/cosmos.authz.v1beta1.MsgRevoke", MsgRevoke],
|
|
8
|
+
["/cosmos.authz.v1beta1.MsgExec", MsgExec],
|
|
9
|
+
["/cosmos.authz.v1beta1.MsgGrant", MsgGrant],
|
|
10
10
|
|
|
11
11
|
];
|
|
12
12
|
|