@gnolang/gnonative 1.2.1 → 1.3.0
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/README.md +6 -6
- package/android/libs/gnocore.aar +0 -0
- package/build/api/GnoNativeApi.d.ts +50 -0
- package/build/api/GnoNativeApi.d.ts.map +1 -0
- package/build/api/GnoNativeApi.js +261 -0
- package/build/api/GnoNativeApi.js.map +1 -0
- package/build/api/index.d.ts +3 -0
- package/build/api/index.d.ts.map +1 -0
- package/build/api/index.js +3 -0
- package/build/api/index.js.map +1 -0
- package/build/{hooks/use-gno.d.ts → api/types.d.ts} +18 -13
- package/build/api/types.d.ts.map +1 -0
- package/build/api/types.js +7 -0
- package/build/api/types.js.map +1 -0
- package/build/index.d.ts +1 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/provider/gnonative-provider.d.ts +4 -35
- package/build/provider/gnonative-provider.d.ts.map +1 -1
- package/build/provider/gnonative-provider.js +5 -249
- package/build/provider/gnonative-provider.js.map +1 -1
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64/GnoCore.framework/GnoCore +0 -0
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64/GnoCore.framework/Versions/A/GnoCore +0 -0
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64/GnoCore.framework/Versions/Current/GnoCore +0 -0
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64_x86_64-simulator/GnoCore.framework/GnoCore +0 -0
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64_x86_64-simulator/GnoCore.framework/Versions/A/GnoCore +0 -0
- package/ios/Frameworks/GnoCore.xcframework/ios-arm64_x86_64-simulator/GnoCore.framework/Versions/Current/GnoCore +0 -0
- package/package.json +1 -1
- package/src/api/GnoNativeApi.ts +388 -0
- package/src/api/index.ts +2 -0
- package/src/api/types.ts +78 -0
- package/src/index.ts +2 -1
- package/src/provider/gnonative-provider.tsx +8 -428
- package/build/hooks/types.d.ts +0 -17
- package/build/hooks/types.d.ts.map +0 -1
- package/build/hooks/types.js +0 -2
- package/build/hooks/types.js.map +0 -1
- package/build/hooks/use-gno.d.ts.map +0 -1
- package/build/hooks/use-gno.js +0 -256
- package/build/hooks/use-gno.js.map +0 -1
- package/src/hooks/types.ts +0 -19
- package/src/hooks/use-gno.ts +0 -431
package/README.md
CHANGED
|
@@ -64,22 +64,22 @@ export default function App() {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
const InnerApp = () => {
|
|
67
|
-
const
|
|
67
|
+
const { gnonative } = useGnoNativeContext();
|
|
68
68
|
const [greeting, setGreeting] = useState('');
|
|
69
69
|
|
|
70
70
|
useEffect(() => {
|
|
71
71
|
(async () => {
|
|
72
72
|
try {
|
|
73
|
-
const accounts = await
|
|
73
|
+
const accounts = await gnonative.listKeyInfo();
|
|
74
74
|
console.log(accounts);
|
|
75
75
|
|
|
76
|
-
const remote = await
|
|
77
|
-
const chainId = await
|
|
76
|
+
const remote = await gnonative.getRemote();
|
|
77
|
+
const chainId = await gnonative.getChainID();
|
|
78
78
|
console.log('Remote %s ChainId %s', remote, chainId);
|
|
79
79
|
|
|
80
|
-
setGreeting(await
|
|
80
|
+
setGreeting(await gnonative.hello('Gno'));
|
|
81
81
|
|
|
82
|
-
for await (const res of await
|
|
82
|
+
for await (const res of await gnonative.helloStream('Gno')) {
|
|
83
83
|
console.log(res.greeting);
|
|
84
84
|
}
|
|
85
85
|
} catch (error) {
|
package/android/libs/gnocore.aar
CHANGED
|
Binary file
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { CallResponse, DeleteAccountResponse, GetActiveAccountResponse, HelloStreamResponse, KeyInfo, QueryAccountResponse, QueryResponse, SelectAccountResponse, SendResponse, SetChainIDResponse, SetPasswordResponse, SetRemoteResponse } from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
2
|
+
import { GnoNativeService } from '@buf/gnolang_gnonative.connectrpc_es/rpc_connect';
|
|
3
|
+
import { PromiseClient } from '@connectrpc/connect';
|
|
4
|
+
import { GnoKeyApi, BridgeStatus, Config } from './types';
|
|
5
|
+
import { GoBridgeInterface } from '../GoBridge';
|
|
6
|
+
export declare class GnoNativeApi implements GnoKeyApi, GoBridgeInterface {
|
|
7
|
+
#private;
|
|
8
|
+
bridgeStatus: BridgeStatus;
|
|
9
|
+
config: Config;
|
|
10
|
+
clientInstance: PromiseClient<typeof GnoNativeService> | undefined;
|
|
11
|
+
constructor(config: Config);
|
|
12
|
+
initClient(): Promise<boolean>;
|
|
13
|
+
setRemote(remote: string): Promise<SetRemoteResponse>;
|
|
14
|
+
getRemote(): Promise<string>;
|
|
15
|
+
setChainID(chainId: string): Promise<SetChainIDResponse>;
|
|
16
|
+
getChainID(): Promise<string>;
|
|
17
|
+
createAccount(nameOrBech32: string, mnemonic: string, password: string): Promise<KeyInfo | undefined>;
|
|
18
|
+
generateRecoveryPhrase(): Promise<string>;
|
|
19
|
+
hasKeyByName(name: string): Promise<boolean>;
|
|
20
|
+
hasKeyByAddress(address: Uint8Array): Promise<boolean>;
|
|
21
|
+
hasKeyByNameOrAddress(nameOrBech32: string): Promise<boolean>;
|
|
22
|
+
getKeyInfoByName(name: string): Promise<KeyInfo | undefined>;
|
|
23
|
+
getKeyInfoByAddress(address: Uint8Array): Promise<KeyInfo | undefined>;
|
|
24
|
+
getKeyInfoByNameOrAddress(nameOrBech32: string): Promise<KeyInfo | undefined>;
|
|
25
|
+
listKeyInfo(): Promise<KeyInfo[]>;
|
|
26
|
+
selectAccount(nameOrBech32: string): Promise<SelectAccountResponse>;
|
|
27
|
+
getClient(): Promise<PromiseClient<typeof GnoNativeService>>;
|
|
28
|
+
isInitialized(): boolean;
|
|
29
|
+
setPassword(password: string): Promise<SetPasswordResponse>;
|
|
30
|
+
getActiveAccount(): Promise<GetActiveAccountResponse>;
|
|
31
|
+
queryAccount(address: Uint8Array): Promise<QueryAccountResponse>;
|
|
32
|
+
deleteAccount(nameOrBech32: string, password: string | undefined, skipPassword: boolean): Promise<DeleteAccountResponse>;
|
|
33
|
+
query(path: string, data: Uint8Array): Promise<QueryResponse>;
|
|
34
|
+
render(packagePath: string, args: string): Promise<string>;
|
|
35
|
+
qEval(packagePath: string, expression: string): Promise<string>;
|
|
36
|
+
call(packagePath: string, fnc: string, args: string[], gasFee: string, gasWanted: number, send?: string, memo?: string): Promise<AsyncIterable<CallResponse>>;
|
|
37
|
+
send(toAddress: Uint8Array, send: string, gasFee: string, gasWanted: number, memo?: string): Promise<AsyncIterable<SendResponse>>;
|
|
38
|
+
addressToBech32(address: Uint8Array): Promise<string>;
|
|
39
|
+
addressFromBech32(bech32Address: string): Promise<Uint8Array>;
|
|
40
|
+
hello(name: string): Promise<string>;
|
|
41
|
+
helloStream(name: string): Promise<AsyncIterable<HelloStreamResponse>>;
|
|
42
|
+
initBridge(): Promise<void>;
|
|
43
|
+
closeBridge(): Promise<void>;
|
|
44
|
+
getTcpPort(): Promise<number>;
|
|
45
|
+
invokeGrpcMethod(method: string, jsonMessage: string): Promise<string>;
|
|
46
|
+
createStreamClient(method: string, jsonMessage: string): Promise<string>;
|
|
47
|
+
streamClientReceive(id: string): Promise<string>;
|
|
48
|
+
closeStreamClient(id: string): Promise<void>;
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=GnoNativeApi.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GnoNativeApi.d.ts","sourceRoot":"","sources":["../../src/api/GnoNativeApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
import { AddressFromBech32Request, AddressToBech32Request, CallRequest, CreateAccountRequest, DeleteAccountRequest, GenerateRecoveryPhraseRequest, GetActiveAccountRequest, GetChainIDRequest, GetKeyInfoByAddressRequest, GetKeyInfoByNameOrAddressRequest, GetKeyInfoByNameRequest, GetRemoteRequest, HasKeyByAddressRequest, HasKeyByNameOrAddressRequest, HasKeyByNameRequest, HelloRequest, ListKeyInfoRequest, MsgCall, MsgSend, QEvalRequest, QueryAccountRequest, QueryRequest, RenderRequest, SelectAccountRequest, SendRequest, SetChainIDRequest, SetPasswordRequest, SetRemoteRequest, } from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
2
|
+
import { BridgeStatus } from './types';
|
|
3
|
+
import { GoBridge } from '../GoBridge';
|
|
4
|
+
import * as Grpc from '../grpc/client';
|
|
5
|
+
export class GnoNativeApi {
|
|
6
|
+
bridgeStatus = BridgeStatus.Stopped;
|
|
7
|
+
config;
|
|
8
|
+
clientInstance;
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.config = config;
|
|
11
|
+
}
|
|
12
|
+
async initClient() {
|
|
13
|
+
if (this.bridgeStatus === BridgeStatus.Stopped) {
|
|
14
|
+
console.log('Bridge stopped. Initializing...');
|
|
15
|
+
await this.#initBridge();
|
|
16
|
+
}
|
|
17
|
+
if (this.clientInstance) {
|
|
18
|
+
console.error('GoBridge already initialized.');
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
const port = await GoBridge.getTcpPort();
|
|
22
|
+
console.log('GoBridge GRPC client instance port: %s', port);
|
|
23
|
+
const client = Grpc.createClient(port);
|
|
24
|
+
this.clientInstance = client;
|
|
25
|
+
console.log('GoBridge GRPC client instance. Done.');
|
|
26
|
+
try {
|
|
27
|
+
await this.clientInstance.setRemote(new SetRemoteRequest({ remote: this.config.remote }));
|
|
28
|
+
await this.clientInstance.setChainID(new SetChainIDRequest({ chainId: this.config.chain_id }));
|
|
29
|
+
console.log('✅ GnoNative bridge initialized.');
|
|
30
|
+
return true;
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
console.error(error);
|
|
34
|
+
return false;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async #initBridge() {
|
|
38
|
+
if (this.bridgeStatus === BridgeStatus.Stopped) {
|
|
39
|
+
console.log('Initializing bridge...');
|
|
40
|
+
this.bridgeStatus = BridgeStatus.Starting;
|
|
41
|
+
await GoBridge.initBridge();
|
|
42
|
+
console.log('Bridge initialized.');
|
|
43
|
+
this.bridgeStatus = BridgeStatus.Started;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
#getClient() {
|
|
47
|
+
if (!this.clientInstance) {
|
|
48
|
+
throw new Error('GoBridge client instance not initialized.');
|
|
49
|
+
}
|
|
50
|
+
return this.clientInstance;
|
|
51
|
+
}
|
|
52
|
+
async setRemote(remote) {
|
|
53
|
+
const client = await this.#getClient();
|
|
54
|
+
const response = await client.setRemote(new SetRemoteRequest({ remote }));
|
|
55
|
+
return response;
|
|
56
|
+
}
|
|
57
|
+
async getRemote() {
|
|
58
|
+
const client = await this.#getClient();
|
|
59
|
+
const response = await client.getRemote(new GetRemoteRequest());
|
|
60
|
+
return response.remote;
|
|
61
|
+
}
|
|
62
|
+
async setChainID(chainId) {
|
|
63
|
+
const client = await this.#getClient();
|
|
64
|
+
const response = await client.setChainID(new SetChainIDRequest({ chainId }));
|
|
65
|
+
return response;
|
|
66
|
+
}
|
|
67
|
+
async getChainID() {
|
|
68
|
+
const client = await this.#getClient();
|
|
69
|
+
const response = await client.getChainID(new GetChainIDRequest());
|
|
70
|
+
return response.chainId;
|
|
71
|
+
}
|
|
72
|
+
async createAccount(nameOrBech32, mnemonic, password) {
|
|
73
|
+
const client = await this.#getClient();
|
|
74
|
+
const reponse = await client.createAccount(new CreateAccountRequest({
|
|
75
|
+
nameOrBech32,
|
|
76
|
+
mnemonic,
|
|
77
|
+
password,
|
|
78
|
+
}));
|
|
79
|
+
return reponse.key;
|
|
80
|
+
}
|
|
81
|
+
async generateRecoveryPhrase() {
|
|
82
|
+
const client = await this.#getClient();
|
|
83
|
+
const response = await client.generateRecoveryPhrase(new GenerateRecoveryPhraseRequest());
|
|
84
|
+
return response.phrase;
|
|
85
|
+
}
|
|
86
|
+
async hasKeyByName(name) {
|
|
87
|
+
const client = await this.#getClient();
|
|
88
|
+
const response = await client.hasKeyByName(new HasKeyByNameRequest({ name }));
|
|
89
|
+
return response.has;
|
|
90
|
+
}
|
|
91
|
+
async hasKeyByAddress(address) {
|
|
92
|
+
const client = await this.#getClient();
|
|
93
|
+
const response = await client.hasKeyByAddress(new HasKeyByAddressRequest({ address }));
|
|
94
|
+
return response.has;
|
|
95
|
+
}
|
|
96
|
+
async hasKeyByNameOrAddress(nameOrBech32) {
|
|
97
|
+
const client = await this.#getClient();
|
|
98
|
+
const response = await client.hasKeyByNameOrAddress(new HasKeyByNameOrAddressRequest({ nameOrBech32 }));
|
|
99
|
+
return response.has;
|
|
100
|
+
}
|
|
101
|
+
async getKeyInfoByName(name) {
|
|
102
|
+
const client = await this.#getClient();
|
|
103
|
+
const response = await client.getKeyInfoByName(new GetKeyInfoByNameRequest({ name }));
|
|
104
|
+
return response.key;
|
|
105
|
+
}
|
|
106
|
+
async getKeyInfoByAddress(address) {
|
|
107
|
+
const client = await this.#getClient();
|
|
108
|
+
const response = await client.getKeyInfoByAddress(new GetKeyInfoByAddressRequest({ address }));
|
|
109
|
+
return response.key;
|
|
110
|
+
}
|
|
111
|
+
async getKeyInfoByNameOrAddress(nameOrBech32) {
|
|
112
|
+
const client = await this.#getClient();
|
|
113
|
+
const response = await client.getKeyInfoByNameOrAddress(new GetKeyInfoByNameOrAddressRequest({ nameOrBech32 }));
|
|
114
|
+
return response.key;
|
|
115
|
+
}
|
|
116
|
+
async listKeyInfo() {
|
|
117
|
+
const client = await this.#getClient();
|
|
118
|
+
const response = await client.listKeyInfo(new ListKeyInfoRequest());
|
|
119
|
+
return response.keys;
|
|
120
|
+
}
|
|
121
|
+
async selectAccount(nameOrBech32) {
|
|
122
|
+
const client = await this.#getClient();
|
|
123
|
+
const response = await client.selectAccount(new SelectAccountRequest({
|
|
124
|
+
nameOrBech32,
|
|
125
|
+
}));
|
|
126
|
+
return response;
|
|
127
|
+
}
|
|
128
|
+
async getClient() {
|
|
129
|
+
if (!this.clientInstance) {
|
|
130
|
+
throw new Error('GoBridge client instance not initialized.');
|
|
131
|
+
}
|
|
132
|
+
return this.clientInstance;
|
|
133
|
+
}
|
|
134
|
+
isInitialized() {
|
|
135
|
+
return this.clientInstance !== undefined;
|
|
136
|
+
}
|
|
137
|
+
async setPassword(password) {
|
|
138
|
+
const client = await this.#getClient();
|
|
139
|
+
const response = await client.setPassword(new SetPasswordRequest({ password }));
|
|
140
|
+
return response;
|
|
141
|
+
}
|
|
142
|
+
async getActiveAccount() {
|
|
143
|
+
const client = await this.#getClient();
|
|
144
|
+
const response = await client.getActiveAccount(new GetActiveAccountRequest());
|
|
145
|
+
return response;
|
|
146
|
+
}
|
|
147
|
+
async queryAccount(address) {
|
|
148
|
+
const client = await this.#getClient();
|
|
149
|
+
const reponse = await client.queryAccount(new QueryAccountRequest({ address }));
|
|
150
|
+
return reponse;
|
|
151
|
+
}
|
|
152
|
+
async deleteAccount(nameOrBech32, password, skipPassword) {
|
|
153
|
+
const client = await this.#getClient();
|
|
154
|
+
const response = await client.deleteAccount(new DeleteAccountRequest({
|
|
155
|
+
nameOrBech32,
|
|
156
|
+
password,
|
|
157
|
+
skipPassword,
|
|
158
|
+
}));
|
|
159
|
+
return response;
|
|
160
|
+
}
|
|
161
|
+
async query(path, data) {
|
|
162
|
+
const client = await this.#getClient();
|
|
163
|
+
const reponse = await client.query(new QueryRequest({
|
|
164
|
+
path,
|
|
165
|
+
data,
|
|
166
|
+
}));
|
|
167
|
+
return reponse;
|
|
168
|
+
}
|
|
169
|
+
async render(packagePath, args) {
|
|
170
|
+
const client = await this.#getClient();
|
|
171
|
+
const reponse = await client.render(new RenderRequest({
|
|
172
|
+
packagePath,
|
|
173
|
+
args,
|
|
174
|
+
}));
|
|
175
|
+
return reponse.result;
|
|
176
|
+
}
|
|
177
|
+
async qEval(packagePath, expression) {
|
|
178
|
+
const client = await this.#getClient();
|
|
179
|
+
const reponse = await client.qEval(new QEvalRequest({
|
|
180
|
+
packagePath,
|
|
181
|
+
expression,
|
|
182
|
+
}));
|
|
183
|
+
return reponse.result;
|
|
184
|
+
}
|
|
185
|
+
async call(packagePath, fnc, args, gasFee, gasWanted, send, memo) {
|
|
186
|
+
const client = await this.#getClient();
|
|
187
|
+
const reponse = client.call(new CallRequest({
|
|
188
|
+
gasFee,
|
|
189
|
+
gasWanted: BigInt(gasWanted),
|
|
190
|
+
memo,
|
|
191
|
+
msgs: [
|
|
192
|
+
new MsgCall({
|
|
193
|
+
packagePath,
|
|
194
|
+
fnc,
|
|
195
|
+
args,
|
|
196
|
+
send,
|
|
197
|
+
}),
|
|
198
|
+
],
|
|
199
|
+
}));
|
|
200
|
+
return reponse;
|
|
201
|
+
}
|
|
202
|
+
async send(toAddress, send, gasFee, gasWanted, memo) {
|
|
203
|
+
const client = await this.#getClient();
|
|
204
|
+
const reponse = client.send(new SendRequest({
|
|
205
|
+
gasFee,
|
|
206
|
+
gasWanted: BigInt(gasWanted),
|
|
207
|
+
memo,
|
|
208
|
+
msgs: [
|
|
209
|
+
new MsgSend({
|
|
210
|
+
toAddress,
|
|
211
|
+
send,
|
|
212
|
+
}),
|
|
213
|
+
],
|
|
214
|
+
}));
|
|
215
|
+
return reponse;
|
|
216
|
+
}
|
|
217
|
+
async addressToBech32(address) {
|
|
218
|
+
const client = await this.#getClient();
|
|
219
|
+
const response = await client.addressToBech32(new AddressToBech32Request({ address }));
|
|
220
|
+
return response.bech32Address;
|
|
221
|
+
}
|
|
222
|
+
async addressFromBech32(bech32Address) {
|
|
223
|
+
const client = await this.#getClient();
|
|
224
|
+
const response = await client.addressFromBech32(new AddressFromBech32Request({ bech32Address }));
|
|
225
|
+
return response.address;
|
|
226
|
+
}
|
|
227
|
+
// // debug
|
|
228
|
+
async hello(name) {
|
|
229
|
+
const client = await this.#getClient();
|
|
230
|
+
const response = await client.hello(new HelloRequest({ name }));
|
|
231
|
+
return response.greeting;
|
|
232
|
+
}
|
|
233
|
+
// // debug
|
|
234
|
+
async helloStream(name) {
|
|
235
|
+
const client = await this.#getClient();
|
|
236
|
+
return client.helloStream(new HelloRequest({ name }));
|
|
237
|
+
}
|
|
238
|
+
// Go Bridge Interface:
|
|
239
|
+
initBridge() {
|
|
240
|
+
return GoBridge.initBridge();
|
|
241
|
+
}
|
|
242
|
+
closeBridge() {
|
|
243
|
+
return GoBridge.closeBridge();
|
|
244
|
+
}
|
|
245
|
+
getTcpPort() {
|
|
246
|
+
return GoBridge.getTcpPort();
|
|
247
|
+
}
|
|
248
|
+
invokeGrpcMethod(method, jsonMessage) {
|
|
249
|
+
return GoBridge.invokeGrpcMethod(method, jsonMessage);
|
|
250
|
+
}
|
|
251
|
+
createStreamClient(method, jsonMessage) {
|
|
252
|
+
return GoBridge.createStreamClient(method, jsonMessage);
|
|
253
|
+
}
|
|
254
|
+
streamClientReceive(id) {
|
|
255
|
+
return GoBridge.streamClientReceive(id);
|
|
256
|
+
}
|
|
257
|
+
closeStreamClient(id) {
|
|
258
|
+
return GoBridge.closeStreamClient(id);
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
//# sourceMappingURL=GnoNativeApi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GnoNativeApi.js","sourceRoot":"","sources":["../../src/api/GnoNativeApi.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AddressFromBech32Request,\n AddressToBech32Request,\n CallRequest,\n CallResponse,\n CreateAccountRequest,\n DeleteAccountRequest,\n DeleteAccountResponse,\n GenerateRecoveryPhraseRequest,\n GetActiveAccountRequest,\n GetActiveAccountResponse,\n GetChainIDRequest,\n GetKeyInfoByAddressRequest,\n GetKeyInfoByNameOrAddressRequest,\n GetKeyInfoByNameRequest,\n GetRemoteRequest,\n HasKeyByAddressRequest,\n HasKeyByNameOrAddressRequest,\n HasKeyByNameRequest,\n HelloRequest,\n HelloStreamResponse,\n KeyInfo,\n ListKeyInfoRequest,\n MsgCall,\n MsgSend,\n QEvalRequest,\n QueryAccountRequest,\n QueryAccountResponse,\n QueryRequest,\n QueryResponse,\n RenderRequest,\n SelectAccountRequest,\n SelectAccountResponse,\n SendRequest,\n SendResponse,\n SetChainIDRequest,\n SetChainIDResponse,\n SetPasswordRequest,\n SetPasswordResponse,\n SetRemoteRequest,\n SetRemoteResponse,\n} from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';\nimport { GnoNativeService } from '@buf/gnolang_gnonative.connectrpc_es/rpc_connect';\nimport { PromiseClient } from '@connectrpc/connect';\n\nimport { GnoKeyApi, BridgeStatus, Config } from './types';\nimport { GoBridge, GoBridgeInterface } from '../GoBridge';\nimport * as Grpc from '../grpc/client';\n\nexport class GnoNativeApi implements GnoKeyApi, GoBridgeInterface {\n bridgeStatus = BridgeStatus.Stopped;\n config: Config;\n clientInstance: PromiseClient<typeof GnoNativeService> | undefined;\n\n constructor(config: Config) {\n this.config = config;\n }\n\n async initClient() {\n if (this.bridgeStatus === BridgeStatus.Stopped) {\n console.log('Bridge stopped. Initializing...');\n await this.#initBridge();\n }\n\n if (this.clientInstance) {\n console.error('GoBridge already initialized.');\n return true;\n }\n\n const port = await GoBridge.getTcpPort();\n console.log('GoBridge GRPC client instance port: %s', port);\n const client = Grpc.createClient(port);\n this.clientInstance = client;\n console.log('GoBridge GRPC client instance. Done.');\n\n try {\n await this.clientInstance.setRemote(new SetRemoteRequest({ remote: this.config.remote }));\n await this.clientInstance.setChainID(\n new SetChainIDRequest({ chainId: this.config.chain_id }),\n );\n console.log('✅ GnoNative bridge initialized.');\n return true;\n } catch (error) {\n console.error(error);\n return false;\n }\n }\n\n async #initBridge() {\n if (this.bridgeStatus === BridgeStatus.Stopped) {\n console.log('Initializing bridge...');\n this.bridgeStatus = BridgeStatus.Starting;\n await GoBridge.initBridge();\n console.log('Bridge initialized.');\n this.bridgeStatus = BridgeStatus.Started;\n }\n }\n\n #getClient() {\n if (!this.clientInstance) {\n throw new Error('GoBridge client instance not initialized.');\n }\n\n return this.clientInstance;\n }\n\n async setRemote(remote: string): Promise<SetRemoteResponse> {\n const client = await this.#getClient();\n const response = await client.setRemote(new SetRemoteRequest({ remote }));\n return response;\n }\n\n async getRemote(): Promise<string> {\n const client = await this.#getClient();\n const response = await client.getRemote(new GetRemoteRequest());\n return response.remote;\n }\n\n async setChainID(chainId: string): Promise<SetChainIDResponse> {\n const client = await this.#getClient();\n const response = await client.setChainID(new SetChainIDRequest({ chainId }));\n return response;\n }\n\n async getChainID() {\n const client = await this.#getClient();\n const response = await client.getChainID(new GetChainIDRequest());\n return response.chainId;\n }\n\n async createAccount(\n nameOrBech32: string,\n mnemonic: string,\n password: string,\n ): Promise<KeyInfo | undefined> {\n const client = await this.#getClient();\n const reponse = await client.createAccount(\n new CreateAccountRequest({\n nameOrBech32,\n mnemonic,\n password,\n }),\n );\n return reponse.key;\n }\n\n async generateRecoveryPhrase() {\n const client = await this.#getClient();\n const response = await client.generateRecoveryPhrase(new GenerateRecoveryPhraseRequest());\n return response.phrase;\n }\n\n async hasKeyByName(name: string) {\n const client = await this.#getClient();\n const response = await client.hasKeyByName(new HasKeyByNameRequest({ name }));\n return response.has;\n }\n\n async hasKeyByAddress(address: Uint8Array) {\n const client = await this.#getClient();\n const response = await client.hasKeyByAddress(new HasKeyByAddressRequest({ address }));\n return response.has;\n }\n\n async hasKeyByNameOrAddress(nameOrBech32: string) {\n const client = await this.#getClient();\n const response = await client.hasKeyByNameOrAddress(\n new HasKeyByNameOrAddressRequest({ nameOrBech32 }),\n );\n return response.has;\n }\n\n async getKeyInfoByName(name: string): Promise<KeyInfo | undefined> {\n const client = await this.#getClient();\n const response = await client.getKeyInfoByName(new GetKeyInfoByNameRequest({ name }));\n return response.key;\n }\n\n async getKeyInfoByAddress(address: Uint8Array): Promise<KeyInfo | undefined> {\n const client = await this.#getClient();\n const response = await client.getKeyInfoByAddress(new GetKeyInfoByAddressRequest({ address }));\n return response.key;\n }\n\n async getKeyInfoByNameOrAddress(nameOrBech32: string): Promise<KeyInfo | undefined> {\n const client = await this.#getClient();\n const response = await client.getKeyInfoByNameOrAddress(\n new GetKeyInfoByNameOrAddressRequest({ nameOrBech32 }),\n );\n return response.key;\n }\n\n async listKeyInfo(): Promise<KeyInfo[]> {\n const client = await this.#getClient();\n const response = await client.listKeyInfo(new ListKeyInfoRequest());\n return response.keys;\n }\n\n async selectAccount(nameOrBech32: string): Promise<SelectAccountResponse> {\n const client = await this.#getClient();\n const response = await client.selectAccount(\n new SelectAccountRequest({\n nameOrBech32,\n }),\n );\n return response;\n }\n\n async getClient(): Promise<PromiseClient<typeof GnoNativeService>> {\n if (!this.clientInstance) {\n throw new Error('GoBridge client instance not initialized.');\n }\n return this.clientInstance;\n }\n\n isInitialized(): boolean {\n return this.clientInstance !== undefined;\n }\n\n async setPassword(password: string): Promise<SetPasswordResponse> {\n const client = await this.#getClient();\n const response = await client.setPassword(new SetPasswordRequest({ password }));\n return response;\n }\n\n async getActiveAccount(): Promise<GetActiveAccountResponse> {\n const client = await this.#getClient();\n const response = await client.getActiveAccount(new GetActiveAccountRequest());\n return response;\n }\n\n async queryAccount(address: Uint8Array): Promise<QueryAccountResponse> {\n const client = await this.#getClient();\n const reponse = await client.queryAccount(new QueryAccountRequest({ address }));\n return reponse;\n }\n\n async deleteAccount(\n nameOrBech32: string,\n password: string | undefined,\n skipPassword: boolean,\n ): Promise<DeleteAccountResponse> {\n const client = await this.#getClient();\n const response = await client.deleteAccount(\n new DeleteAccountRequest({\n nameOrBech32,\n password,\n skipPassword,\n }),\n );\n return response;\n }\n\n async query(path: string, data: Uint8Array): Promise<QueryResponse> {\n const client = await this.#getClient();\n const reponse = await client.query(\n new QueryRequest({\n path,\n data,\n }),\n );\n return reponse;\n }\n\n async render(packagePath: string, args: string) {\n const client = await this.#getClient();\n const reponse = await client.render(\n new RenderRequest({\n packagePath,\n args,\n }),\n );\n return reponse.result;\n }\n\n async qEval(packagePath: string, expression: string) {\n const client = await this.#getClient();\n const reponse = await client.qEval(\n new QEvalRequest({\n packagePath,\n expression,\n }),\n );\n return reponse.result;\n }\n\n async call(\n packagePath: string,\n fnc: string,\n args: string[],\n gasFee: string,\n gasWanted: number,\n send?: string,\n memo?: string,\n ): Promise<AsyncIterable<CallResponse>> {\n const client = await this.#getClient();\n const reponse = client.call(\n new CallRequest({\n gasFee,\n gasWanted: BigInt(gasWanted),\n memo,\n msgs: [\n new MsgCall({\n packagePath,\n fnc,\n args,\n send,\n }),\n ],\n }),\n );\n return reponse;\n }\n\n async send(\n toAddress: Uint8Array,\n send: string,\n gasFee: string,\n gasWanted: number,\n memo?: string,\n ): Promise<AsyncIterable<SendResponse>> {\n const client = await this.#getClient();\n const reponse = client.send(\n new SendRequest({\n gasFee,\n gasWanted: BigInt(gasWanted),\n memo,\n msgs: [\n new MsgSend({\n toAddress,\n send,\n }),\n ],\n }),\n );\n return reponse;\n }\n\n async addressToBech32(address: Uint8Array) {\n const client = await this.#getClient();\n const response = await client.addressToBech32(new AddressToBech32Request({ address }));\n return response.bech32Address;\n }\n\n async addressFromBech32(bech32Address: string) {\n const client = await this.#getClient();\n const response = await client.addressFromBech32(\n new AddressFromBech32Request({ bech32Address }),\n );\n return response.address;\n }\n\n // // debug\n async hello(name: string) {\n const client = await this.#getClient();\n const response = await client.hello(new HelloRequest({ name }));\n return response.greeting;\n }\n\n // // debug\n async helloStream(name: string): Promise<AsyncIterable<HelloStreamResponse>> {\n const client = await this.#getClient();\n return client.helloStream(new HelloRequest({ name }));\n }\n\n // Go Bridge Interface:\n initBridge(): Promise<void> {\n return GoBridge.initBridge();\n }\n closeBridge(): Promise<void> {\n return GoBridge.closeBridge();\n }\n getTcpPort(): Promise<number> {\n return GoBridge.getTcpPort();\n }\n invokeGrpcMethod(method: string, jsonMessage: string): Promise<string> {\n return GoBridge.invokeGrpcMethod(method, jsonMessage);\n }\n createStreamClient(method: string, jsonMessage: string): Promise<string> {\n return GoBridge.createStreamClient(method, jsonMessage);\n }\n streamClientReceive(id: string): Promise<string> {\n return GoBridge.streamClientReceive(id);\n }\n closeStreamClient(id: string): Promise<void> {\n return GoBridge.closeStreamClient(id);\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,SAAS,CAAC","sourcesContent":["export * from './GnoNativeApi';\nexport * from './types';\n"]}
|
|
@@ -1,19 +1,27 @@
|
|
|
1
|
-
import { CallResponse, DeleteAccountResponse, GetActiveAccountResponse, HelloStreamResponse, QueryAccountResponse, QueryResponse, SelectAccountResponse, SendResponse, SetChainIDResponse, SetPasswordResponse, SetRemoteResponse } from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { CallResponse, DeleteAccountResponse, GetActiveAccountResponse, HelloStreamResponse, QueryAccountResponse, QueryResponse, SelectAccountResponse, SendResponse, SetChainIDResponse, SetPasswordResponse, SetRemoteResponse, KeyInfo } from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
2
|
+
export declare enum BridgeStatus {
|
|
3
|
+
Stopped = 0,
|
|
4
|
+
Starting = 1,
|
|
5
|
+
Started = 2
|
|
6
|
+
}
|
|
7
|
+
export interface Config {
|
|
8
|
+
remote: string;
|
|
9
|
+
chain_id: string;
|
|
10
|
+
}
|
|
11
|
+
export interface GnoKeyApi {
|
|
4
12
|
setRemote: (remote: string) => Promise<SetRemoteResponse>;
|
|
5
13
|
getRemote: () => Promise<string>;
|
|
6
14
|
setChainID: (chainId: string) => Promise<SetChainIDResponse>;
|
|
7
15
|
getChainID: () => Promise<string>;
|
|
8
|
-
createAccount: (nameOrBech32: string, mnemonic: string, password: string) => Promise<
|
|
16
|
+
createAccount: (nameOrBech32: string, mnemonic: string, password: string) => Promise<KeyInfo | undefined>;
|
|
9
17
|
generateRecoveryPhrase: () => Promise<string>;
|
|
10
|
-
listKeyInfo: () => Promise<
|
|
18
|
+
listKeyInfo: () => Promise<KeyInfo[]>;
|
|
11
19
|
hasKeyByName: (name: string) => Promise<boolean>;
|
|
12
20
|
hasKeyByAddress: (address: Uint8Array) => Promise<boolean>;
|
|
13
21
|
hasKeyByNameOrAddress: (nameOrBech32: string) => Promise<boolean>;
|
|
14
|
-
getKeyInfoByName: (name: string) => Promise<
|
|
15
|
-
getKeyInfoByAddress: (address: Uint8Array) => Promise<
|
|
16
|
-
getKeyInfoByNameOrAddress: (nameOrBech32: string) => Promise<
|
|
22
|
+
getKeyInfoByName: (name: string) => Promise<KeyInfo | undefined>;
|
|
23
|
+
getKeyInfoByAddress: (address: Uint8Array) => Promise<KeyInfo | undefined>;
|
|
24
|
+
getKeyInfoByNameOrAddress: (nameOrBech32: string) => Promise<KeyInfo | undefined>;
|
|
17
25
|
selectAccount: (nameOrBech32: string) => Promise<SelectAccountResponse>;
|
|
18
26
|
setPassword: (password: string) => Promise<SetPasswordResponse>;
|
|
19
27
|
getActiveAccount: () => Promise<GetActiveAccountResponse>;
|
|
@@ -22,14 +30,11 @@ export interface GnoResponse {
|
|
|
22
30
|
query: (path: string, data: Uint8Array) => Promise<QueryResponse>;
|
|
23
31
|
render: (packagePath: string, args: string) => Promise<string>;
|
|
24
32
|
qEval: (packagePath: string, expression: string) => Promise<string>;
|
|
25
|
-
call: (packagePath: string, fnc: string, args:
|
|
33
|
+
call: (packagePath: string, fnc: string, args: string[], gasFee: string, gasWanted: number, send?: string, memo?: string) => Promise<AsyncIterable<CallResponse>>;
|
|
26
34
|
send: (toAddress: Uint8Array, send: string, gasFee: string, gasWanted: number, memo?: string) => Promise<AsyncIterable<SendResponse>>;
|
|
27
35
|
addressToBech32: (address: Uint8Array) => Promise<string>;
|
|
28
36
|
addressFromBech32: (bech32Address: string) => Promise<Uint8Array>;
|
|
29
|
-
closeBridge: () => Promise<void>;
|
|
30
|
-
initBridge: () => Promise<void>;
|
|
31
37
|
hello: (name: string) => Promise<string>;
|
|
32
38
|
helloStream: (name: string) => Promise<AsyncIterable<HelloStreamResponse>>;
|
|
33
39
|
}
|
|
34
|
-
|
|
35
|
-
//# sourceMappingURL=use-gno.d.ts.map
|
|
40
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export var BridgeStatus;
|
|
2
|
+
(function (BridgeStatus) {
|
|
3
|
+
BridgeStatus[BridgeStatus["Stopped"] = 0] = "Stopped";
|
|
4
|
+
BridgeStatus[BridgeStatus["Starting"] = 1] = "Starting";
|
|
5
|
+
BridgeStatus[BridgeStatus["Started"] = 2] = "Started";
|
|
6
|
+
})(BridgeStatus || (BridgeStatus = {}));
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/api/types.ts"],"names":[],"mappings":"AAeA,MAAM,CAAN,IAAY,YAIX;AAJD,WAAY,YAAY;IACtB,qDAAO,CAAA;IACP,uDAAQ,CAAA;IACR,qDAAO,CAAA;AACT,CAAC,EAJW,YAAY,KAAZ,YAAY,QAIvB","sourcesContent":["import {\n CallResponse,\n DeleteAccountResponse,\n GetActiveAccountResponse,\n HelloStreamResponse,\n QueryAccountResponse,\n QueryResponse,\n SelectAccountResponse,\n SendResponse,\n SetChainIDResponse,\n SetPasswordResponse,\n SetRemoteResponse,\n KeyInfo,\n} from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';\n\nexport enum BridgeStatus {\n Stopped,\n Starting,\n Started,\n}\n\nexport interface Config {\n remote: string;\n chain_id: string;\n}\n\nexport interface GnoKeyApi {\n setRemote: (remote: string) => Promise<SetRemoteResponse>;\n getRemote: () => Promise<string>;\n setChainID: (chainId: string) => Promise<SetChainIDResponse>;\n getChainID: () => Promise<string>;\n createAccount: (\n nameOrBech32: string,\n mnemonic: string,\n password: string,\n ) => Promise<KeyInfo | undefined>;\n generateRecoveryPhrase: () => Promise<string>;\n listKeyInfo: () => Promise<KeyInfo[]>;\n hasKeyByName: (name: string) => Promise<boolean>;\n hasKeyByAddress: (address: Uint8Array) => Promise<boolean>;\n hasKeyByNameOrAddress: (nameOrBech32: string) => Promise<boolean>;\n getKeyInfoByName: (name: string) => Promise<KeyInfo | undefined>;\n getKeyInfoByAddress: (address: Uint8Array) => Promise<KeyInfo | undefined>;\n getKeyInfoByNameOrAddress: (nameOrBech32: string) => Promise<KeyInfo | undefined>;\n selectAccount: (nameOrBech32: string) => Promise<SelectAccountResponse>;\n setPassword: (password: string) => Promise<SetPasswordResponse>;\n getActiveAccount: () => Promise<GetActiveAccountResponse>;\n queryAccount: (address: Uint8Array) => Promise<QueryAccountResponse>;\n deleteAccount: (\n nameOrBech32: string,\n password: string | undefined,\n skipPassword: boolean,\n ) => Promise<DeleteAccountResponse>;\n query: (path: string, data: Uint8Array) => Promise<QueryResponse>;\n render: (packagePath: string, args: string) => Promise<string>;\n qEval: (packagePath: string, expression: string) => Promise<string>;\n call: (\n packagePath: string,\n fnc: string,\n args: string[],\n gasFee: string,\n gasWanted: number,\n send?: string,\n memo?: string,\n ) => Promise<AsyncIterable<CallResponse>>;\n send: (\n toAddress: Uint8Array,\n send: string,\n gasFee: string,\n gasWanted: number,\n memo?: string,\n ) => Promise<AsyncIterable<SendResponse>>;\n addressToBech32: (address: Uint8Array) => Promise<string>;\n addressFromBech32: (bech32Address: string) => Promise<Uint8Array>;\n // debug\n hello: (name: string) => Promise<string>;\n helloStream: (name: string) => Promise<AsyncIterable<HelloStreamResponse>>;\n}\n"]}
|
package/build/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import GnonativeView from './GnonativeView';
|
|
|
4
4
|
import 'fast-text-encoding';
|
|
5
5
|
export declare function addChangeListener(listener: (event: ChangeEventPayload) => void): Subscription;
|
|
6
6
|
export { ChangeEventPayload, GnonativeView, GnonativeViewProps };
|
|
7
|
-
export { useGno } from './hooks/use-gno';
|
|
8
7
|
export * from './provider/gnonative-provider';
|
|
9
8
|
export * from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
9
|
+
export * from './api/GnoNativeApi';
|
|
10
10
|
//# sourceMappingURL=index.d.ts.map
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAInF,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE3E,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oBAAoB,CAAC;AAM5B,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,GAAG,YAAY,CAE7F;AAED,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;AACjE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoC,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAInF,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE3E,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oBAAoB,CAAC;AAM5B,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,GAAG,YAAY,CAE7F;AAED,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;AACjE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sDAAsD,CAAC;AAErE,cAAc,oBAAoB,CAAC"}
|
package/build/index.js
CHANGED
|
@@ -8,7 +8,7 @@ export function addChangeListener(listener) {
|
|
|
8
8
|
return emitter.addListener('onChange', listener);
|
|
9
9
|
}
|
|
10
10
|
export { GnonativeView };
|
|
11
|
-
export { useGno } from './hooks/use-gno';
|
|
12
11
|
export * from './provider/gnonative-provider';
|
|
13
12
|
export * from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';
|
|
13
|
+
export * from './api/GnoNativeApi';
|
|
14
14
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAgB,MAAM,mBAAmB,CAAC;AAKnF,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oBAAoB,CAAC;AAE3B,MAAc,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAE3F,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,eAAe,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAElF,MAAM,UAAU,iBAAiB,CAAC,QAA6C;IAC7E,OAAO,OAAO,CAAC,WAAW,CAAqB,UAAU,EAAE,QAAQ,CAAC,CAAC;AACvE,CAAC;AAED,OAAO,EAAsB,aAAa,EAAsB,CAAC;AACjE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAgB,MAAM,mBAAmB,CAAC;AAKnF,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAC5C,OAAO,oBAAoB,CAAC;AAE3B,MAAc,CAAC,aAAa,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAE3F,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,eAAe,IAAI,kBAAkB,CAAC,SAAS,CAAC,CAAC;AAElF,MAAM,UAAU,iBAAiB,CAAC,QAA6C;IAC7E,OAAO,OAAO,CAAC,WAAW,CAAqB,UAAU,EAAE,QAAQ,CAAC,CAAC;AACvE,CAAC;AAED,OAAO,EAAsB,aAAa,EAAsB,CAAC;AACjE,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sDAAsD,CAAC;AAErE,cAAc,oBAAoB,CAAC","sourcesContent":["import { EventEmitter, NativeModulesProxy, Subscription } from 'expo-modules-core';\n\n// Import the native module. On web, it will be resolved to Gnonative.web.ts\n// and on native platforms to Gnonative.ts\nimport { ChangeEventPayload, GnonativeViewProps } from './Gnonative.types';\nimport GnonativeModule from './GnonativeModule';\nimport GnonativeView from './GnonativeView';\nimport 'fast-text-encoding';\n\n(Symbol as any).asyncIterator = Symbol.asyncIterator || Symbol.for('Symbol.asyncIterator');\n\nconst emitter = new EventEmitter(GnonativeModule ?? NativeModulesProxy.Gnonative);\n\nexport function addChangeListener(listener: (event: ChangeEventPayload) => void): Subscription {\n return emitter.addListener<ChangeEventPayload>('onChange', listener);\n}\n\nexport { ChangeEventPayload, GnonativeView, GnonativeViewProps };\nexport * from './provider/gnonative-provider';\nexport * from '@buf/gnolang_gnonative.bufbuild_es/gnonativetypes_pb';\n\nexport * from './api/GnoNativeApi';\n"]}
|
|
@@ -1,41 +1,10 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { GnoNativeApi } from '../api';
|
|
2
|
+
import { Config } from '../api/types';
|
|
3
3
|
export interface GnoNativeContextProps {
|
|
4
|
-
|
|
5
|
-
setRemote: (remote: string) => Promise<SetRemoteResponse>;
|
|
6
|
-
getRemote: () => Promise<string>;
|
|
7
|
-
setChainID: (chainId: string) => Promise<SetChainIDResponse>;
|
|
8
|
-
getChainID: () => Promise<string>;
|
|
9
|
-
createAccount: (nameOrBech32: string, mnemonic: string, password: string) => Promise<GnoAccount | undefined>;
|
|
10
|
-
generateRecoveryPhrase: () => Promise<string>;
|
|
11
|
-
listKeyInfo: () => Promise<GnoAccount[]>;
|
|
12
|
-
hasKeyByName: (name: string) => Promise<boolean>;
|
|
13
|
-
hasKeyByAddress: (address: Uint8Array) => Promise<boolean>;
|
|
14
|
-
hasKeyByNameOrAddress: (nameOrBech32: string) => Promise<boolean>;
|
|
15
|
-
getKeyInfoByName: (name: string) => Promise<GnoAccount | undefined>;
|
|
16
|
-
getKeyInfoByAddress: (address: Uint8Array) => Promise<GnoAccount | undefined>;
|
|
17
|
-
getKeyInfoByNameOrAddress: (nameOrBech32: string) => Promise<GnoAccount | undefined>;
|
|
18
|
-
selectAccount: (nameOrBech32: string) => Promise<SelectAccountResponse>;
|
|
19
|
-
setPassword: (password: string) => Promise<SetPasswordResponse>;
|
|
20
|
-
getActiveAccount: () => Promise<GetActiveAccountResponse>;
|
|
21
|
-
queryAccount: (address: Uint8Array) => Promise<QueryAccountResponse>;
|
|
22
|
-
deleteAccount: (nameOrBech32: string, password: string | undefined, skipPassword: boolean) => Promise<DeleteAccountResponse>;
|
|
23
|
-
query: (path: string, data: Uint8Array) => Promise<QueryResponse>;
|
|
24
|
-
render: (packagePath: string, args: string) => Promise<string>;
|
|
25
|
-
qEval: (packagePath: string, expression: string) => Promise<string>;
|
|
26
|
-
call: (packagePath: string, fnc: string, args: string[], gasFee: string, gasWanted: number, send?: string, memo?: string) => Promise<AsyncIterable<CallResponse>>;
|
|
27
|
-
send: (toAddress: Uint8Array, send: string, gasFee: string, gasWanted: number, memo?: string) => Promise<AsyncIterable<SendResponse>>;
|
|
28
|
-
addressToBech32: (address: Uint8Array) => Promise<string>;
|
|
29
|
-
addressFromBech32: (bech32Address: string) => Promise<Uint8Array>;
|
|
30
|
-
hello: (name: string) => Promise<string>;
|
|
31
|
-
helloStream: (name: string) => Promise<AsyncIterable<HelloStreamResponse>>;
|
|
32
|
-
}
|
|
33
|
-
interface ConfigProps {
|
|
34
|
-
remote: string;
|
|
35
|
-
chain_id: string;
|
|
4
|
+
gnonative: GnoNativeApi;
|
|
36
5
|
}
|
|
37
6
|
interface GnoNativeProviderProps {
|
|
38
|
-
config:
|
|
7
|
+
config: Config;
|
|
39
8
|
children: React.ReactNode;
|
|
40
9
|
}
|
|
41
10
|
declare const GnoNativeProvider: React.FC<GnoNativeProviderProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gnonative-provider.d.ts","sourceRoot":"","sources":["../../src/provider/gnonative-provider.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gnonative-provider.d.ts","sourceRoot":"","sources":["../../src/provider/gnonative-provider.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAEtC,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,YAAY,CAAC;CACzB;AAED,UAAU,sBAAsB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAID,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAqCvD,CAAC;AAEF,iBAAS,mBAAmB,0BAO3B;AAED,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,CAAC"}
|