neo-n3-walletkit 0.1.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/LICENSE +21 -0
- package/README.md +353 -0
- package/dist/address.d.ts +5 -0
- package/dist/address.d.ts.map +1 -0
- package/dist/address.js +16 -0
- package/dist/address.js.map +1 -0
- package/dist/contract.d.ts +21 -0
- package/dist/contract.d.ts.map +1 -0
- package/dist/contract.js +62 -0
- package/dist/contract.js.map +1 -0
- package/dist/errors.d.ts +11 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +21 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -0
- package/dist/neoline/adapter.d.ts +35 -0
- package/dist/neoline/adapter.d.ts.map +1 -0
- package/dist/neoline/adapter.js +289 -0
- package/dist/neoline/adapter.js.map +1 -0
- package/dist/neoline/index.d.ts +3 -0
- package/dist/neoline/index.d.ts.map +1 -0
- package/dist/neoline/index.js +2 -0
- package/dist/neoline/index.js.map +1 -0
- package/dist/neoline/types.d.ts +86 -0
- package/dist/neoline/types.d.ts.map +1 -0
- package/dist/neoline/types.js +2 -0
- package/dist/neoline/types.js.map +1 -0
- package/dist/onegate/adapter.d.ts +35 -0
- package/dist/onegate/adapter.d.ts.map +1 -0
- package/dist/onegate/adapter.js +351 -0
- package/dist/onegate/adapter.js.map +1 -0
- package/dist/onegate/index.d.ts +3 -0
- package/dist/onegate/index.d.ts.map +1 -0
- package/dist/onegate/index.js +2 -0
- package/dist/onegate/index.js.map +1 -0
- package/dist/onegate/types.d.ts +80 -0
- package/dist/onegate/types.d.ts.map +1 -0
- package/dist/onegate/types.js +2 -0
- package/dist/onegate/types.js.map +1 -0
- package/dist/types.d.ts +69 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/wallet-connect/adapter.d.ts +33 -0
- package/dist/wallet-connect/adapter.d.ts.map +1 -0
- package/dist/wallet-connect/adapter.js +198 -0
- package/dist/wallet-connect/adapter.js.map +1 -0
- package/dist/wallet-connect/index.d.ts +3 -0
- package/dist/wallet-connect/index.d.ts.map +1 -0
- package/dist/wallet-connect/index.js +2 -0
- package/dist/wallet-connect/index.js.map +1 -0
- package/dist/wallet-connect/types.d.ts +16 -0
- package/dist/wallet-connect/types.d.ts.map +1 -0
- package/dist/wallet-connect/types.js +2 -0
- package/dist/wallet-connect/types.js.map +1 -0
- package/dist/wallet-kit.d.ts +40 -0
- package/dist/wallet-kit.d.ts.map +1 -0
- package/dist/wallet-kit.js +137 -0
- package/dist/wallet-kit.js.map +1 -0
- package/package.json +75 -0
|
@@ -0,0 +1,289 @@
|
|
|
1
|
+
import { WalletNotConnectedError, WalletRequestError } from "../errors.js";
|
|
2
|
+
const SUPPORTED_METHODS = ["invokeFunction", "testInvoke"];
|
|
3
|
+
const DEFAULT_READY_TIMEOUT = 5_000;
|
|
4
|
+
/**
|
|
5
|
+
* Adapter for the NeoLine N3 browser extension.
|
|
6
|
+
*/
|
|
7
|
+
export class NeoLineAdapter {
|
|
8
|
+
provider;
|
|
9
|
+
currentSession = null;
|
|
10
|
+
listeners = new Set();
|
|
11
|
+
eventsBound = false;
|
|
12
|
+
lastMethods = [...SUPPORTED_METHODS];
|
|
13
|
+
constructor(provider) {
|
|
14
|
+
this.provider = provider;
|
|
15
|
+
}
|
|
16
|
+
static async init(options = {}) {
|
|
17
|
+
const provider = await waitForNeoLine(options.waitForReadyMs);
|
|
18
|
+
return new NeoLineAdapter(provider);
|
|
19
|
+
}
|
|
20
|
+
static fromProvider(provider) {
|
|
21
|
+
return new NeoLineAdapter(provider);
|
|
22
|
+
}
|
|
23
|
+
get session() {
|
|
24
|
+
return this.currentSession;
|
|
25
|
+
}
|
|
26
|
+
isConnected() {
|
|
27
|
+
return this.currentSession !== null;
|
|
28
|
+
}
|
|
29
|
+
getChainId() {
|
|
30
|
+
return this.currentSession?.network ?? null;
|
|
31
|
+
}
|
|
32
|
+
getAccountAddress() {
|
|
33
|
+
return this.currentSession?.accountAddress ?? null;
|
|
34
|
+
}
|
|
35
|
+
async manageSession(network, methods = []) {
|
|
36
|
+
this.assertSupportedMethods(methods);
|
|
37
|
+
if (methods.length > 0) {
|
|
38
|
+
this.lastMethods = [...methods];
|
|
39
|
+
}
|
|
40
|
+
this.bindEvents();
|
|
41
|
+
if (this.currentSession &&
|
|
42
|
+
(!network || this.currentSession.network === network) &&
|
|
43
|
+
methods.every(method => this.currentSession?.methods.includes(method))) {
|
|
44
|
+
return this.currentSession;
|
|
45
|
+
}
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
async connect(network, methods) {
|
|
49
|
+
this.assertSupportedMethods(methods);
|
|
50
|
+
this.bindEvents();
|
|
51
|
+
const providerNetwork = await this.readNetwork();
|
|
52
|
+
if (providerNetwork !== network) {
|
|
53
|
+
throw new WalletRequestError(`NeoLine is connected to ${providerNetwork}, but WalletKit requires ${network}. Switch the network in NeoLine and try again.`, { expected: network, actual: providerNetwork });
|
|
54
|
+
}
|
|
55
|
+
const account = await this.provider.getAccount();
|
|
56
|
+
this.lastMethods = [...methods];
|
|
57
|
+
return this.setConnectedSession(account.address, network, methods);
|
|
58
|
+
}
|
|
59
|
+
async createConnection(network, methods) {
|
|
60
|
+
return {
|
|
61
|
+
approval: () => this.connect(network, methods)
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
async disconnect() {
|
|
65
|
+
// NeoLine exposes no dAPI disconnect method, so this disconnects WalletKit's
|
|
66
|
+
// local session. Users can disconnect the dApp fully inside NeoLine.
|
|
67
|
+
this.setSession(null);
|
|
68
|
+
}
|
|
69
|
+
onSessionChange(listener) {
|
|
70
|
+
this.listeners.add(listener);
|
|
71
|
+
return () => this.listeners.delete(listener);
|
|
72
|
+
}
|
|
73
|
+
async request(method, params, _context) {
|
|
74
|
+
if (!this.currentSession) {
|
|
75
|
+
throw new WalletNotConnectedError();
|
|
76
|
+
}
|
|
77
|
+
const request = requireInvocation(params);
|
|
78
|
+
if (method === "invokeFunction") {
|
|
79
|
+
return this.invoke(request);
|
|
80
|
+
}
|
|
81
|
+
if (method === "testInvoke") {
|
|
82
|
+
return this.testInvoke(request);
|
|
83
|
+
}
|
|
84
|
+
throw new WalletRequestError(`NeoLine does not support the WalletKit method "${method}".`, method);
|
|
85
|
+
}
|
|
86
|
+
async invoke(request) {
|
|
87
|
+
const common = writeOptions(request);
|
|
88
|
+
if (request.invocations.length === 1) {
|
|
89
|
+
const result = await this.provider.invoke({
|
|
90
|
+
...formatInvocation(request.invocations[0]),
|
|
91
|
+
signers: request.signers ?? [],
|
|
92
|
+
broadcastOverride: false,
|
|
93
|
+
...common
|
|
94
|
+
});
|
|
95
|
+
return result.txid;
|
|
96
|
+
}
|
|
97
|
+
if (!this.provider.invokeMultiple) {
|
|
98
|
+
throw new WalletRequestError("This NeoLine provider does not support multiple invocations.", request);
|
|
99
|
+
}
|
|
100
|
+
const result = await this.provider.invokeMultiple({
|
|
101
|
+
invokeArgs: request.invocations.map(formatInvocation),
|
|
102
|
+
signers: request.signers ?? [],
|
|
103
|
+
broadcastOverride: false,
|
|
104
|
+
...common
|
|
105
|
+
});
|
|
106
|
+
return result.txid;
|
|
107
|
+
}
|
|
108
|
+
async testInvoke(request) {
|
|
109
|
+
if (request.invocations.length !== 1) {
|
|
110
|
+
throw new WalletRequestError("NeoLine testInvoke currently supports one invocation per request.", request);
|
|
111
|
+
}
|
|
112
|
+
const result = await this.provider.invokeRead({
|
|
113
|
+
...formatInvocation(request.invocations[0]),
|
|
114
|
+
signers: request.signers ?? []
|
|
115
|
+
});
|
|
116
|
+
return normalizeReadResult(result);
|
|
117
|
+
}
|
|
118
|
+
assertSupportedMethods(methods) {
|
|
119
|
+
const unsupported = methods.filter(method => !SUPPORTED_METHODS.includes(method));
|
|
120
|
+
if (unsupported.length > 0) {
|
|
121
|
+
throw new WalletRequestError(`NeoLine does not support these WalletKit methods: ${unsupported.join(", ")}.`, unsupported);
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
async readNetwork() {
|
|
125
|
+
const networks = await this.provider.getNetworks();
|
|
126
|
+
const network = toNetworkType(networks.defaultNetwork, networks.chainId);
|
|
127
|
+
if (!network) {
|
|
128
|
+
throw new WalletRequestError(`WalletKit could not identify NeoLine network "${networks.defaultNetwork}".`, networks);
|
|
129
|
+
}
|
|
130
|
+
return network;
|
|
131
|
+
}
|
|
132
|
+
bindEvents() {
|
|
133
|
+
if (this.eventsBound) {
|
|
134
|
+
return;
|
|
135
|
+
}
|
|
136
|
+
this.eventsBound = true;
|
|
137
|
+
this.bindEvent("CONNECTED", value => void this.refreshFromEvent(value));
|
|
138
|
+
this.bindEvent("ACCOUNT_CHANGED", value => void this.refreshFromEvent(value));
|
|
139
|
+
this.bindEvent("NETWORK_CHANGED", () => void this.refreshFromEvent());
|
|
140
|
+
this.bindEvent("DISCONNECTED", () => this.setSession(null));
|
|
141
|
+
}
|
|
142
|
+
bindEvent(name, listener) {
|
|
143
|
+
const eventName = this.provider.EVENT?.[name] ?? `NEOLine.N3.EVENT.${name}`;
|
|
144
|
+
if (this.provider.addEventListener) {
|
|
145
|
+
this.provider.addEventListener(eventName, listener);
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (typeof window !== "undefined") {
|
|
149
|
+
window.addEventListener(eventName, event => {
|
|
150
|
+
listener("detail" in event ? event.detail : event);
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
async refreshFromEvent(value) {
|
|
155
|
+
try {
|
|
156
|
+
const network = await this.readNetwork();
|
|
157
|
+
const eventAddress = readEventAddress(value);
|
|
158
|
+
const address = eventAddress ?? (await this.provider.getAccount()).address;
|
|
159
|
+
this.setConnectedSession(address, network, this.lastMethods);
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
this.setSession(null);
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
setConnectedSession(accountAddress, network, methods) {
|
|
166
|
+
this.lastMethods = [...methods];
|
|
167
|
+
const session = {
|
|
168
|
+
provider: "neoline",
|
|
169
|
+
network,
|
|
170
|
+
methods: [...methods],
|
|
171
|
+
accountAddress,
|
|
172
|
+
raw: this.provider
|
|
173
|
+
};
|
|
174
|
+
this.setSession(session);
|
|
175
|
+
return session;
|
|
176
|
+
}
|
|
177
|
+
setSession(session) {
|
|
178
|
+
this.currentSession = session;
|
|
179
|
+
for (const listener of this.listeners) {
|
|
180
|
+
void listener(session);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
function formatInvocation(invocation) {
|
|
185
|
+
if (invocation.abortOnFail !== undefined) {
|
|
186
|
+
throw new WalletRequestError("NeoLine does not support abortOnFail.", invocation);
|
|
187
|
+
}
|
|
188
|
+
return {
|
|
189
|
+
scriptHash: invocation.scriptHash,
|
|
190
|
+
operation: invocation.operation,
|
|
191
|
+
args: invocation.args ?? []
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
function writeOptions(request) {
|
|
195
|
+
if (request.extraNetworkFee !== undefined ||
|
|
196
|
+
request.networkFeeOverride !== undefined) {
|
|
197
|
+
throw new WalletRequestError("NeoLine network-fee overrides are not supported by WalletKit.", request);
|
|
198
|
+
}
|
|
199
|
+
return {
|
|
200
|
+
...(request.extraSystemFee === undefined
|
|
201
|
+
? {}
|
|
202
|
+
: { extraSystemFee: String(request.extraSystemFee) }),
|
|
203
|
+
...(request.systemFeeOverride === undefined
|
|
204
|
+
? {}
|
|
205
|
+
: { overrideSystemFee: String(request.systemFeeOverride) })
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
function normalizeReadResult(result) {
|
|
209
|
+
return {
|
|
210
|
+
script: result.script,
|
|
211
|
+
state: result.state === "HALT" ? "HALT" : "FAULT",
|
|
212
|
+
gasconsumed: result.gasconsumed ?? result.gas_consumed ?? "0",
|
|
213
|
+
exception: result.exception ?? null,
|
|
214
|
+
notifications: (result.notifications ?? []),
|
|
215
|
+
stack: result.stack
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
function requireInvocation(value) {
|
|
219
|
+
if (!value ||
|
|
220
|
+
typeof value !== "object" ||
|
|
221
|
+
!("invocations" in value) ||
|
|
222
|
+
!Array.isArray(value.invocations) ||
|
|
223
|
+
value.invocations.length === 0) {
|
|
224
|
+
throw new WalletRequestError("Expected a Neo contract invocation request.", value);
|
|
225
|
+
}
|
|
226
|
+
return value;
|
|
227
|
+
}
|
|
228
|
+
function toNetworkType(value, chainId) {
|
|
229
|
+
if (chainId === 3) {
|
|
230
|
+
return "neo3:mainnet";
|
|
231
|
+
}
|
|
232
|
+
if (chainId === 6) {
|
|
233
|
+
return "neo3:testnet";
|
|
234
|
+
}
|
|
235
|
+
if (chainId === 0) {
|
|
236
|
+
return "neo3:private";
|
|
237
|
+
}
|
|
238
|
+
const normalized = value.toLowerCase();
|
|
239
|
+
if (normalized.includes("test")) {
|
|
240
|
+
return "neo3:testnet";
|
|
241
|
+
}
|
|
242
|
+
if (normalized.includes("main")) {
|
|
243
|
+
return "neo3:mainnet";
|
|
244
|
+
}
|
|
245
|
+
if (normalized.includes("private") || normalized.includes("local")) {
|
|
246
|
+
return "neo3:private";
|
|
247
|
+
}
|
|
248
|
+
return null;
|
|
249
|
+
}
|
|
250
|
+
function readEventAddress(value) {
|
|
251
|
+
if (value &&
|
|
252
|
+
typeof value === "object" &&
|
|
253
|
+
"address" in value &&
|
|
254
|
+
typeof value.address === "string") {
|
|
255
|
+
return value.address;
|
|
256
|
+
}
|
|
257
|
+
return null;
|
|
258
|
+
}
|
|
259
|
+
async function waitForNeoLine(waitForReadyMs = DEFAULT_READY_TIMEOUT) {
|
|
260
|
+
if (typeof window === "undefined") {
|
|
261
|
+
throw new WalletRequestError("NeoLine requires a browser with the NeoLine N3 extension installed.", null);
|
|
262
|
+
}
|
|
263
|
+
const createProvider = () => {
|
|
264
|
+
const global = window.NEOLineN3;
|
|
265
|
+
return global?.Init ? new global.Init() : null;
|
|
266
|
+
};
|
|
267
|
+
const existing = createProvider();
|
|
268
|
+
if (existing) {
|
|
269
|
+
return existing;
|
|
270
|
+
}
|
|
271
|
+
return new Promise((resolve, reject) => {
|
|
272
|
+
const eventName = "NEOLine.N3.EVENT.READY";
|
|
273
|
+
const timeout = window.setTimeout(() => {
|
|
274
|
+
window.removeEventListener(eventName, onReady);
|
|
275
|
+
reject(new WalletRequestError("NeoLine N3 was not detected. Install or unlock the NeoLine extension and try again.", null));
|
|
276
|
+
}, waitForReadyMs);
|
|
277
|
+
const onReady = () => {
|
|
278
|
+
const provider = createProvider();
|
|
279
|
+
if (!provider) {
|
|
280
|
+
return;
|
|
281
|
+
}
|
|
282
|
+
window.clearTimeout(timeout);
|
|
283
|
+
window.removeEventListener(eventName, onReady);
|
|
284
|
+
resolve(provider);
|
|
285
|
+
};
|
|
286
|
+
window.addEventListener(eventName, onReady);
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
//# sourceMappingURL=adapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/neoline/adapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { NeoLineAdapter } from "./adapter.js";
|
|
2
|
+
export type { NeoLineAccount, NeoLineArg, NeoLineBalance, NeoLineInvocation, NeoLineInvokeParams, NeoLineInvokeReadParams, NeoLineInvokeResult, NeoLineN3Provider, NeoLineNetworks, NeoLineOptions, NeoLineReadResult, NeoLineSignerOptions, NeoLineWriteOptions } from "./types.js";
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/neoline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,YAAY,EACV,cAAc,EACd,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/neoline/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import type { Signer } from "@cityofzion/neon-dappkit-types";
|
|
2
|
+
import type { WalletArg, WalletKitClientOptions } from "../types.js";
|
|
3
|
+
export interface NeoLineOptions extends WalletKitClientOptions {
|
|
4
|
+
/** Time to wait for the NeoLine extension to inject its N3 provider. */
|
|
5
|
+
waitForReadyMs?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface NeoLineAccount {
|
|
8
|
+
address: string;
|
|
9
|
+
label?: string;
|
|
10
|
+
isLedger?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface NeoLineNetworks {
|
|
13
|
+
chainId: number;
|
|
14
|
+
networks: string[];
|
|
15
|
+
defaultNetwork: string;
|
|
16
|
+
}
|
|
17
|
+
export interface NeoLineInvokeResult {
|
|
18
|
+
txid: string;
|
|
19
|
+
nodeURL?: string;
|
|
20
|
+
signedTx?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface NeoLineReadResult {
|
|
23
|
+
script: string;
|
|
24
|
+
state: "HALT" | "FAULT" | string;
|
|
25
|
+
stack: unknown[];
|
|
26
|
+
gasconsumed?: string;
|
|
27
|
+
gas_consumed?: string;
|
|
28
|
+
exception?: string | null;
|
|
29
|
+
notifications?: unknown[];
|
|
30
|
+
}
|
|
31
|
+
export interface NeoLineBalance {
|
|
32
|
+
contract: string;
|
|
33
|
+
symbol: string;
|
|
34
|
+
amount: string;
|
|
35
|
+
}
|
|
36
|
+
export type NeoLineArg = WalletArg;
|
|
37
|
+
export interface NeoLineInvocation {
|
|
38
|
+
scriptHash: string;
|
|
39
|
+
operation: string;
|
|
40
|
+
args?: NeoLineArg[];
|
|
41
|
+
}
|
|
42
|
+
export interface NeoLineSignerOptions {
|
|
43
|
+
signers?: Signer[];
|
|
44
|
+
}
|
|
45
|
+
export interface NeoLineWriteOptions {
|
|
46
|
+
broadcastOverride?: boolean;
|
|
47
|
+
fee?: string;
|
|
48
|
+
extraSystemFee?: string;
|
|
49
|
+
overrideSystemFee?: string;
|
|
50
|
+
}
|
|
51
|
+
export type NeoLineInvokeParams = NeoLineInvocation & NeoLineSignerOptions & NeoLineWriteOptions;
|
|
52
|
+
export type NeoLineInvokeReadParams = NeoLineInvocation & NeoLineSignerOptions;
|
|
53
|
+
export interface NeoLineN3Provider {
|
|
54
|
+
EVENT?: Record<string, string>;
|
|
55
|
+
getAccount(): Promise<NeoLineAccount>;
|
|
56
|
+
getNetworks(): Promise<NeoLineNetworks>;
|
|
57
|
+
getBalance(params: {
|
|
58
|
+
address: string;
|
|
59
|
+
}): Promise<Record<string, NeoLineBalance[]>>;
|
|
60
|
+
getApplicationLog(params: {
|
|
61
|
+
txid: string;
|
|
62
|
+
}): Promise<Record<string, unknown>>;
|
|
63
|
+
invoke(params: NeoLineInvokeParams): Promise<NeoLineInvokeResult>;
|
|
64
|
+
invokeMultiple?(params: {
|
|
65
|
+
invokeArgs: NeoLineInvocation[];
|
|
66
|
+
signers?: Signer[];
|
|
67
|
+
} & NeoLineWriteOptions): Promise<NeoLineInvokeResult>;
|
|
68
|
+
invokeRead(params: NeoLineInvokeReadParams): Promise<NeoLineReadResult>;
|
|
69
|
+
invokeReadMulti?(params: {
|
|
70
|
+
invokeReadArgs: NeoLineInvocation[];
|
|
71
|
+
signers?: Signer[];
|
|
72
|
+
}): Promise<NeoLineReadResult[]>;
|
|
73
|
+
ScriptHashToAddress(params: {
|
|
74
|
+
scriptHash: string;
|
|
75
|
+
}): Promise<{
|
|
76
|
+
address: string;
|
|
77
|
+
}>;
|
|
78
|
+
AddressToScriptHash(params: {
|
|
79
|
+
address: string;
|
|
80
|
+
}): Promise<{
|
|
81
|
+
scriptHash: string;
|
|
82
|
+
}>;
|
|
83
|
+
addEventListener?(event: string, listener: (value: unknown) => void): void;
|
|
84
|
+
removeEventListener?(event: string, listener: (value: unknown) => void): void;
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/neoline/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/neoline/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ConnectionProposal, Method, NetworkType, SessionListener, WalletAdapter, WalletSession } from "../types.js";
|
|
2
|
+
import type { OneGateOptions, OneGateProvider } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Adapter for OneGate's current NEP-21 Neo N3 provider.
|
|
5
|
+
*/
|
|
6
|
+
export declare class OneGateAdapter implements WalletAdapter {
|
|
7
|
+
readonly provider: OneGateProvider;
|
|
8
|
+
private currentSession;
|
|
9
|
+
private readonly listeners;
|
|
10
|
+
private eventsBound;
|
|
11
|
+
private lastMethods;
|
|
12
|
+
private constructor();
|
|
13
|
+
static init(options?: OneGateOptions): Promise<OneGateAdapter>;
|
|
14
|
+
static fromProvider(provider: OneGateProvider): OneGateAdapter;
|
|
15
|
+
get session(): WalletSession | null;
|
|
16
|
+
isConnected(): boolean;
|
|
17
|
+
getChainId(): NetworkType | null;
|
|
18
|
+
getAccountAddress(): string | null;
|
|
19
|
+
manageSession(network?: NetworkType, methods?: Method[]): Promise<WalletSession | null>;
|
|
20
|
+
connect(network: NetworkType, methods: Method[]): Promise<WalletSession>;
|
|
21
|
+
createConnection(network: NetworkType, methods: Method[]): Promise<ConnectionProposal>;
|
|
22
|
+
disconnect(): Promise<void>;
|
|
23
|
+
onSessionChange(listener: SessionListener): () => void;
|
|
24
|
+
request<T>(method: Method, params: unknown, _context?: string): Promise<T>;
|
|
25
|
+
private invoke;
|
|
26
|
+
private testInvoke;
|
|
27
|
+
private assertSupportedMethods;
|
|
28
|
+
private readNetwork;
|
|
29
|
+
private bindEvents;
|
|
30
|
+
private refreshAccount;
|
|
31
|
+
private refreshSession;
|
|
32
|
+
private setConnectedSession;
|
|
33
|
+
private setSession;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=adapter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../src/onegate/adapter.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,kBAAkB,EAClB,MAAM,EACN,WAAW,EACX,eAAe,EACf,aAAa,EAEb,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAIV,cAAc,EACd,eAAe,EAGhB,MAAM,YAAY,CAAC;AAOpB;;GAEG;AACH,qBAAa,cAAe,YAAW,aAAa;IAClD,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;IAEnC,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA8B;IACxD,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAAoC;IAEvD,OAAO;WAIM,IAAI,CAAC,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,cAAc,CAAC;IAKxE,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,eAAe,GAAG,cAAc;IAI9D,IAAI,OAAO,IAAI,aAAa,GAAG,IAAI,CAElC;IAED,WAAW,IAAI,OAAO;IAItB,UAAU,IAAI,WAAW,GAAG,IAAI;IAIhC,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAI5B,aAAa,CACjB,OAAO,CAAC,EAAE,WAAW,EACrB,OAAO,GAAE,MAAM,EAAO,GACrB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IA2B1B,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IA4BxE,gBAAgB,CACpB,OAAO,EAAE,WAAW,EACpB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,kBAAkB,CAAC;IAMxB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC,eAAe,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,IAAI;IAKhD,OAAO,CAAC,CAAC,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,OAAO,EACf,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,CAAC,CAAC;YAmBC,MAAM;YAON,UAAU;IAsBxB,OAAO,CAAC,sBAAsB;IAY9B,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,cAAc;YAYR,cAAc;IAS5B,OAAO,CAAC,mBAAmB;IAiB3B,OAAO,CAAC,UAAU;CAMnB"}
|