polkadot-api 0.6.0 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +291 -67
- package/dist/index.d.ts +291 -67
- package/dist/index.js +574 -444
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +578 -435
- package/dist/index.mjs.map +1 -1
- package/dist/min/index.d.ts +291 -67
- package/dist/min/index.js +1 -1
- package/dist/min/index.js.map +1 -1
- package/package.json +10 -15
package/dist/min/index.d.ts
CHANGED
|
@@ -1,15 +1,109 @@
|
|
|
1
|
-
import { HexString, SS58String, Enum, Binary, Descriptors, QueryFromDescriptors, TxFromDescriptors, EventsFromDescriptors, ConstFromDescriptors, BlockHeader, RuntimeDescriptor } from '@polkadot-api/substrate-bindings';
|
|
2
|
-
export { AccountId, AssetDescriptor, Binary, Codec, ConstFromDescriptors, Enum, EnumVariant, ErrorsFromDescriptors, EventsFromDescriptors, FixedSizeBinary, GetEnum, HexString, PlainDescriptor, QueryFromDescriptors, ResultPayload, RuntimeDescriptor, SS58String, StorageDescriptor, TxDescriptor, TxFromDescriptors, _Enum } from '@polkadot-api/substrate-bindings';
|
|
3
|
-
import { Observable } from 'rxjs';
|
|
4
|
-
import { BlockInfo, SystemEvent as SystemEvent$1 } from '@polkadot-api/observable-client';
|
|
5
|
-
import { ChainSpecData } from '@polkadot-api/substrate-client';
|
|
6
1
|
import { JsonRpcProvider } from '@polkadot-api/json-rpc-provider';
|
|
2
|
+
import { RuntimeContext, ChainHead$, BlockInfo, SystemEvent as SystemEvent$1, getObservableClient } from '@polkadot-api/observable-client';
|
|
3
|
+
import { HexString, Binary, SS58String, Enum, BlockHeader } from '@polkadot-api/substrate-bindings';
|
|
4
|
+
export { AccountId, Binary, Codec, Enum, EnumVariant, FixedSizeBinary, GetEnum, HexString, ResultPayload, SS58String, _Enum } from '@polkadot-api/substrate-bindings';
|
|
5
|
+
import { ChainSpecData } from '@polkadot-api/substrate-client';
|
|
6
|
+
import { Observable } from 'rxjs';
|
|
7
|
+
import { PolkadotSigner } from '@polkadot-api/polkadot-signer';
|
|
7
8
|
export { PolkadotSigner } from '@polkadot-api/polkadot-signer';
|
|
8
9
|
|
|
10
|
+
type PlainDescriptor<T> = {
|
|
11
|
+
_type?: T;
|
|
12
|
+
};
|
|
13
|
+
type AssetDescriptor<T> = string & {
|
|
14
|
+
_type?: T;
|
|
15
|
+
};
|
|
16
|
+
type StorageDescriptor<Args extends Array<any>, T, Optional extends true | false> = {
|
|
17
|
+
_type: T;
|
|
18
|
+
_args: Args;
|
|
19
|
+
_optional: Optional;
|
|
20
|
+
};
|
|
21
|
+
type TxDescriptor<Args extends {} | undefined> = {
|
|
22
|
+
___: Args;
|
|
23
|
+
};
|
|
24
|
+
type RuntimeDescriptor<Args extends Array<any>, T> = [Args, T];
|
|
25
|
+
type DescriptorEntry<T> = Record<string, Record<string, T>>;
|
|
26
|
+
type PalletDescriptors = Record<string, [
|
|
27
|
+
Record<string, number>,
|
|
28
|
+
Record<string, number>,
|
|
29
|
+
Record<string, number>,
|
|
30
|
+
Record<string, number>,
|
|
31
|
+
Record<string, number>
|
|
32
|
+
]>;
|
|
33
|
+
type PalletsTypedef<St extends DescriptorEntry<StorageDescriptor<any, any, any>>, Tx extends DescriptorEntry<TxDescriptor<any>>, Ev extends DescriptorEntry<PlainDescriptor<any>>, Err extends DescriptorEntry<PlainDescriptor<any>>, Ct extends DescriptorEntry<PlainDescriptor<any>>> = {
|
|
34
|
+
__storage: St;
|
|
35
|
+
__tx: Tx;
|
|
36
|
+
__event: Ev;
|
|
37
|
+
__error: Err;
|
|
38
|
+
__const: Ct;
|
|
39
|
+
};
|
|
40
|
+
type ApisDescriptors = DescriptorEntry<number>;
|
|
41
|
+
type ApisTypedef<T extends DescriptorEntry<RuntimeDescriptor<any, any>>> = T;
|
|
42
|
+
type DescriptorsValue = {
|
|
43
|
+
pallets: PalletDescriptors;
|
|
44
|
+
apis: ApisDescriptors;
|
|
45
|
+
};
|
|
46
|
+
type ChainDefinition = {
|
|
47
|
+
descriptors: Promise<DescriptorsValue> & {
|
|
48
|
+
pallets: PalletsTypedef<any, any, any, any, any>;
|
|
49
|
+
apis: ApisTypedef<any>;
|
|
50
|
+
};
|
|
51
|
+
asset: AssetDescriptor<any>;
|
|
52
|
+
checksums: Promise<string[]>;
|
|
53
|
+
};
|
|
54
|
+
type ExtractStorage<T extends DescriptorEntry<StorageDescriptor<any, any, any>>> = {
|
|
55
|
+
[K in keyof T]: {
|
|
56
|
+
[KK in keyof T[K]]: T[K][KK] extends StorageDescriptor<infer Key, infer Value, infer Optional> ? {
|
|
57
|
+
KeyArgs: Key;
|
|
58
|
+
Value: Value;
|
|
59
|
+
IsOptional: Optional;
|
|
60
|
+
} : unknown;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
type ExtractTx<T extends DescriptorEntry<TxDescriptor<any>>> = {
|
|
64
|
+
[K in keyof T]: {
|
|
65
|
+
[KK in keyof T[K]]: T[K][KK] extends TxDescriptor<infer Args> ? Args : unknown;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
type ExtractPlain<T extends DescriptorEntry<PlainDescriptor<any>>> = {
|
|
69
|
+
[K in keyof T]: {
|
|
70
|
+
[KK in keyof T[K]]: T[K][KK] extends PlainDescriptor<infer Value> ? Value : unknown;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
73
|
+
type QueryFromPalletsDef<T extends PalletsTypedef<any, any, any, any, any>> = ExtractStorage<T["__storage"]>;
|
|
74
|
+
type TxFromPalletsDef<T extends PalletsTypedef<any, any, any, any, any>> = ExtractTx<T["__tx"]>;
|
|
75
|
+
type EventsFromPalletsDef<T extends PalletsTypedef<any, any, any, any, any>> = ExtractPlain<T["__event"]>;
|
|
76
|
+
type ErrorsFromPalletsDef<T extends PalletsTypedef<any, any, any, any, any>> = ExtractPlain<T["__error"]>;
|
|
77
|
+
type ConstFromPalletsDef<T extends PalletsTypedef<any, any, any, any, any>> = ExtractPlain<T["__const"]>;
|
|
78
|
+
|
|
79
|
+
declare const enum OpType {
|
|
80
|
+
Storage = 0,
|
|
81
|
+
Tx = 1,
|
|
82
|
+
Event = 2,
|
|
83
|
+
Error = 3,
|
|
84
|
+
Const = 4
|
|
85
|
+
}
|
|
9
86
|
declare class Runtime {
|
|
10
|
-
|
|
11
|
-
|
|
87
|
+
private _ctx;
|
|
88
|
+
private _checksums;
|
|
89
|
+
private _descriptors;
|
|
12
90
|
private constructor();
|
|
91
|
+
/**
|
|
92
|
+
* @access package - Internal implementation detail. Do not use.
|
|
93
|
+
*/
|
|
94
|
+
static _create(ctx: RuntimeContext, checksums: string[], descriptors: DescriptorsValue): Runtime;
|
|
95
|
+
/**
|
|
96
|
+
* @access package - Internal implementation detail. Do not use.
|
|
97
|
+
*/
|
|
98
|
+
_getCtx(): RuntimeContext;
|
|
99
|
+
/**
|
|
100
|
+
* @access package - Internal implementation detail. Do not use.
|
|
101
|
+
*/
|
|
102
|
+
_getPalletChecksum(opType: OpType, pallet: string, name: string): string;
|
|
103
|
+
/**
|
|
104
|
+
* @access package - Internal implementation detail. Do not use.
|
|
105
|
+
*/
|
|
106
|
+
_getApiChecksum(name: string, method: string): string;
|
|
13
107
|
}
|
|
14
108
|
type RuntimeApi = Observable<Runtime> & {
|
|
15
109
|
latest: () => Promise<Runtime>;
|
|
@@ -18,6 +112,19 @@ interface IsCompatible {
|
|
|
18
112
|
(): Promise<boolean>;
|
|
19
113
|
(runtime: Runtime): boolean;
|
|
20
114
|
}
|
|
115
|
+
declare const compatibilityHelper: (runtimeApi: RuntimeApi, getDescriptorChecksum: (runtime: Runtime) => string) => (getChecksum: (ctx: RuntimeContext) => string | null) => {
|
|
116
|
+
isCompatible: IsCompatible;
|
|
117
|
+
waitChecksums: () => Promise<(ctx: RuntimeContext) => boolean>;
|
|
118
|
+
withCompatibleRuntime: <T>(chainHead: ChainHead$, mapper: (x: T) => string, error: () => Error) => (source$: Observable<T>) => Observable<[T, RuntimeContext]>;
|
|
119
|
+
compatibleRuntime$: (chainHead: ChainHead$, hash: string | null, error: () => Error) => Observable<RuntimeContext>;
|
|
120
|
+
};
|
|
121
|
+
type CompatibilityHelper = ReturnType<typeof compatibilityHelper>;
|
|
122
|
+
|
|
123
|
+
interface ConstantEntry<T> {
|
|
124
|
+
(): Promise<T>;
|
|
125
|
+
(runtime: Runtime): T;
|
|
126
|
+
isCompatible: IsCompatible;
|
|
127
|
+
}
|
|
21
128
|
|
|
22
129
|
type EventPhase = {
|
|
23
130
|
type: "ApplyExtrinsic";
|
|
@@ -64,53 +171,60 @@ type CallOptions$1 = Partial<{
|
|
|
64
171
|
at: string;
|
|
65
172
|
signal: AbortSignal;
|
|
66
173
|
}>;
|
|
67
|
-
type WithCallOptions$1<Args extends Array<any>> = [
|
|
174
|
+
type WithCallOptions$1<Args extends Array<any>> = Args["length"] extends 0 ? [options?: CallOptions$1] : [...args: Args, options?: CallOptions$1];
|
|
175
|
+
interface RuntimeCall<Args extends Array<any>, Payload> {
|
|
176
|
+
(...args: WithCallOptions$1<Args>): Promise<Payload>;
|
|
177
|
+
isCompatible: IsCompatible;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
type CallOptions = Partial<{
|
|
181
|
+
at: string;
|
|
182
|
+
signal: AbortSignal;
|
|
183
|
+
}>;
|
|
184
|
+
type WithCallOptions<Args extends Array<any>> = [
|
|
68
185
|
...args: Args,
|
|
69
|
-
options?: CallOptions
|
|
186
|
+
options?: CallOptions
|
|
70
187
|
];
|
|
71
188
|
type PossibleParents<A extends Array<any>> = A extends [...infer Left, any] ? Left | PossibleParents<Left> : [];
|
|
72
189
|
type StorageEntryWithoutKeys<Payload> = {
|
|
73
190
|
isCompatible: IsCompatible;
|
|
74
|
-
getValue: (options?: CallOptions
|
|
191
|
+
getValue: (options?: CallOptions) => Promise<Payload>;
|
|
75
192
|
watchValue: (bestOrFinalized?: "best" | "finalized") => Observable<Payload>;
|
|
76
193
|
};
|
|
77
194
|
type StorageEntryWithKeys<Args extends Array<any>, Payload> = {
|
|
78
195
|
isCompatible: IsCompatible;
|
|
79
|
-
getValue: (...args: [...WithCallOptions
|
|
196
|
+
getValue: (...args: [...WithCallOptions<Args>]) => Promise<Payload>;
|
|
80
197
|
watchValue: (...args: [...Args, bestOrFinalized?: "best" | "finalized"]) => Observable<Payload>;
|
|
81
|
-
getValues: (keys: Array<[...Args]>, options?: CallOptions
|
|
82
|
-
getEntries: (...args: WithCallOptions
|
|
198
|
+
getValues: (keys: Array<[...Args]>, options?: CallOptions) => Promise<Array<Payload>>;
|
|
199
|
+
getEntries: (...args: WithCallOptions<PossibleParents<Args>>) => Promise<Array<{
|
|
83
200
|
keyArgs: Args;
|
|
84
201
|
value: NonNullable<Payload>;
|
|
85
202
|
}>>;
|
|
86
203
|
};
|
|
87
204
|
type StorageEntry<Args extends Array<any>, Payload> = Args extends [] ? StorageEntryWithoutKeys<Payload> : StorageEntryWithKeys<Args, Payload>;
|
|
88
205
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
identifier: string;
|
|
93
|
-
value: Uint8Array;
|
|
94
|
-
additionalSigned: Uint8Array;
|
|
95
|
-
}>, metadata: Uint8Array, atBlockNumber: number, hasher?: (data: Uint8Array) => Uint8Array) => Promise<Uint8Array>;
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
type TxBroadcastEvent = {
|
|
99
|
-
type: "broadcasted";
|
|
100
|
-
} | {
|
|
101
|
-
type: "bestChainBlockIncluded";
|
|
102
|
-
block: {
|
|
103
|
-
hash: string;
|
|
104
|
-
index: number;
|
|
105
|
-
};
|
|
106
|
-
} | ({
|
|
107
|
-
type: "finalized";
|
|
108
|
-
} & TxFinalizedPayload);
|
|
109
|
-
type TxEvent = TxBroadcastEvent | {
|
|
206
|
+
type TxEvent = TxSigned | TxBroadcasted | TxBestBlocksState | TxFinalized;
|
|
207
|
+
type TxBroadcastEvent = TxSigned | TxBroadcasted | TxBestBlocksState | TxFinalized;
|
|
208
|
+
type TxSigned = {
|
|
110
209
|
type: "signed";
|
|
111
|
-
|
|
210
|
+
txHash: HexString;
|
|
211
|
+
};
|
|
212
|
+
type TxBroadcasted = {
|
|
213
|
+
type: "broadcasted";
|
|
214
|
+
txHash: HexString;
|
|
215
|
+
};
|
|
216
|
+
type TxBestBlocksState = {
|
|
217
|
+
type: "txBestBlocksState";
|
|
218
|
+
txHash: HexString;
|
|
219
|
+
} & (TxInBestBlocksNotFound | TxInBestBlocksFound);
|
|
220
|
+
type TxInBestBlocksNotFound = {
|
|
221
|
+
found: false;
|
|
222
|
+
isValid: boolean;
|
|
112
223
|
};
|
|
113
|
-
type
|
|
224
|
+
type TxInBestBlocksFound = {
|
|
225
|
+
found: true;
|
|
226
|
+
} & TxEventsPayload;
|
|
227
|
+
type TxEventsPayload = {
|
|
114
228
|
ok: boolean;
|
|
115
229
|
events: Array<SystemEvent$1["event"]>;
|
|
116
230
|
block: {
|
|
@@ -118,7 +232,12 @@ type TxFinalizedPayload = {
|
|
|
118
232
|
index: number;
|
|
119
233
|
};
|
|
120
234
|
};
|
|
121
|
-
type
|
|
235
|
+
type TxFinalized = {
|
|
236
|
+
type: "finalized";
|
|
237
|
+
txHash: HexString;
|
|
238
|
+
} & TxEventsPayload;
|
|
239
|
+
type TxOptions<Asset> = Partial<void extends Asset ? {
|
|
240
|
+
at: HexString | "best" | "finalized";
|
|
122
241
|
tip: bigint;
|
|
123
242
|
mortality: {
|
|
124
243
|
mortal: false;
|
|
@@ -126,7 +245,9 @@ type HintedSignExtensions<Asset> = Partial<void extends Asset ? {
|
|
|
126
245
|
mortal: true;
|
|
127
246
|
period: number;
|
|
128
247
|
};
|
|
248
|
+
nonce: number;
|
|
129
249
|
} : {
|
|
250
|
+
at: HexString | "best" | "finalized";
|
|
130
251
|
tip: bigint;
|
|
131
252
|
mortality: {
|
|
132
253
|
mortal: false;
|
|
@@ -135,20 +256,22 @@ type HintedSignExtensions<Asset> = Partial<void extends Asset ? {
|
|
|
135
256
|
period: number;
|
|
136
257
|
};
|
|
137
258
|
asset: Asset;
|
|
259
|
+
nonce: number;
|
|
138
260
|
}>;
|
|
139
|
-
type
|
|
140
|
-
type
|
|
261
|
+
type TxFinalizedPayload = Omit<TxFinalized, "type">;
|
|
262
|
+
type TxPromise<Asset> = (from: PolkadotSigner, txOptions?: TxOptions<Asset>) => Promise<TxFinalizedPayload>;
|
|
263
|
+
type TxObservable<Asset> = (from: PolkadotSigner, txOptions?: TxOptions<Asset>) => Observable<TxEvent>;
|
|
141
264
|
interface TxCall {
|
|
142
265
|
(): Promise<Binary>;
|
|
143
266
|
(runtime: Runtime): Binary;
|
|
144
267
|
}
|
|
145
|
-
type
|
|
268
|
+
type TxSignFn<Asset> = (from: PolkadotSigner, txOptions?: TxOptions<Asset>) => Promise<HexString>;
|
|
146
269
|
type Transaction<Arg extends {} | undefined, Pallet extends string, Name extends string, Asset> = {
|
|
147
|
-
sign:
|
|
270
|
+
sign: TxSignFn<Asset>;
|
|
148
271
|
signSubmitAndWatch: TxObservable<Asset>;
|
|
149
|
-
signAndSubmit:
|
|
272
|
+
signAndSubmit: TxPromise<Asset>;
|
|
150
273
|
getEncodedData: TxCall;
|
|
151
|
-
getEstimatedFees: (from: Uint8Array | SS58String,
|
|
274
|
+
getEstimatedFees: (from: Uint8Array | SS58String, txOptions?: TxOptions<Asset>) => Promise<bigint>;
|
|
152
275
|
decodedCall: Enum<{
|
|
153
276
|
[P in Pallet]: Enum<{
|
|
154
277
|
[N in Name]: Arg;
|
|
@@ -160,21 +283,10 @@ interface TxEntry<Arg extends {} | undefined, Pallet extends string, Name extend
|
|
|
160
283
|
isCompatible: IsCompatible;
|
|
161
284
|
}
|
|
162
285
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
(runtime: Runtime): T;
|
|
166
|
-
isCompatible: IsCompatible;
|
|
167
|
-
}
|
|
286
|
+
declare const submit$: (chainHead: ChainHead$, broadcastTx$: (tx: string) => Observable<never>, tx: HexString, at?: HexString, emitSign?: boolean) => Observable<TxEvent>;
|
|
287
|
+
declare const submit: (chainHead: ChainHead$, broadcastTx$: (tx: string) => Observable<never>, transaction: HexString, at?: HexString) => Promise<TxFinalizedPayload>;
|
|
168
288
|
|
|
169
|
-
|
|
170
|
-
at: string;
|
|
171
|
-
signal: AbortSignal;
|
|
172
|
-
}>;
|
|
173
|
-
type WithCallOptions<Args extends Array<any>> = Args["length"] extends 0 ? [options?: CallOptions] : [...args: Args, options?: CallOptions];
|
|
174
|
-
interface RuntimeCall<Args extends Array<any>, Payload> {
|
|
175
|
-
(...args: WithCallOptions<Args>): Promise<Payload>;
|
|
176
|
-
isCompatible: IsCompatible;
|
|
177
|
-
}
|
|
289
|
+
declare const createTxEntry: <Arg extends {} | undefined, Pallet extends string, Name extends string, Asset extends AssetDescriptor<any>>(pallet: Pallet, name: Name, assetChecksum: Asset, chainHead: ReturnType<ReturnType<typeof getObservableClient>["chainHead$"]>, broadcast: (tx: string) => Observable<never>, compatibilityHelper: CompatibilityHelper) => TxEntry<Arg, Pallet, Name, Asset["_type"]>;
|
|
178
290
|
|
|
179
291
|
type StorageApi<A extends Record<string, Record<string, {
|
|
180
292
|
KeyArgs: Array<any>;
|
|
@@ -209,32 +321,144 @@ type ConstApi<A extends Record<string, Record<string, any>>> = {
|
|
|
209
321
|
[KK in keyof A[K]]: ConstantEntry<A[K][KK]>;
|
|
210
322
|
};
|
|
211
323
|
};
|
|
212
|
-
type TypedApi<D extends
|
|
213
|
-
query: StorageApi<
|
|
214
|
-
tx: TxApi<
|
|
215
|
-
event: EvApi<
|
|
216
|
-
apis: RuntimeCallsApi<D["apis"]>;
|
|
217
|
-
constants: ConstApi<
|
|
324
|
+
type TypedApi<D extends ChainDefinition> = {
|
|
325
|
+
query: StorageApi<QueryFromPalletsDef<D["descriptors"]["pallets"]>>;
|
|
326
|
+
tx: TxApi<TxFromPalletsDef<D["descriptors"]["pallets"]>, D["asset"]["_type"]>;
|
|
327
|
+
event: EvApi<EventsFromPalletsDef<D["descriptors"]["pallets"]>>;
|
|
328
|
+
apis: RuntimeCallsApi<D["descriptors"]["apis"]>;
|
|
329
|
+
constants: ConstApi<ConstFromPalletsDef<D["descriptors"]["pallets"]>>;
|
|
218
330
|
runtime: RuntimeApi;
|
|
219
331
|
};
|
|
220
332
|
interface PolkadotClient {
|
|
333
|
+
/**
|
|
334
|
+
* Retrieve the ChainSpecData as it comes from the
|
|
335
|
+
* [JSON-RPC spec](https://paritytech.github.io/json-rpc-interface-spec/api/chainSpec.html)
|
|
336
|
+
*/
|
|
221
337
|
getChainSpecData: () => Promise<ChainSpecData>;
|
|
338
|
+
/**
|
|
339
|
+
* Observable that emits `BlockInfo` from the latest known finalized block.
|
|
340
|
+
* It's a multicast and stateful observable, that will synchronously replay
|
|
341
|
+
* its latest known state.
|
|
342
|
+
*/
|
|
222
343
|
finalizedBlock$: Observable<BlockInfo>;
|
|
344
|
+
/**
|
|
345
|
+
* @returns Latest known finalized block.
|
|
346
|
+
*/
|
|
223
347
|
getFinalizedBlock: () => Promise<BlockInfo>;
|
|
348
|
+
/**
|
|
349
|
+
* Observable that emits an Array of `BlockInfo`, being the first element the
|
|
350
|
+
* latest known best block, and the last element the latest known finalized
|
|
351
|
+
* block. It's a multicast and stateful observable, that will synchronously
|
|
352
|
+
* replay its latest known state. This array is an immutable data structure;
|
|
353
|
+
* i.e. a new array is emitted at every event but the reference to its
|
|
354
|
+
* children are stable if the children didn't change.
|
|
355
|
+
*
|
|
356
|
+
* Note that subscribing to this observable already supersedes the need of
|
|
357
|
+
* subscribing to `finalizedBlock$`, since the last element of the array will
|
|
358
|
+
* be the latest known finalized block.
|
|
359
|
+
*/
|
|
224
360
|
bestBlocks$: Observable<BlockInfo[]>;
|
|
361
|
+
/**
|
|
362
|
+
* @returns Array of `BlockInfo`, being the first element the latest
|
|
363
|
+
* known best block, and the last element the latest known
|
|
364
|
+
* finalized block.
|
|
365
|
+
*/
|
|
225
366
|
getBestBlocks: () => Promise<BlockInfo[]>;
|
|
367
|
+
/**
|
|
368
|
+
* Observable to watch Block Body.
|
|
369
|
+
*
|
|
370
|
+
* @param hash It can be a block hash, `"finalized"`, or `"best"`
|
|
371
|
+
* @returns Observable to watch a block body. There'll be just one event
|
|
372
|
+
* with the payload and the observable will complete.
|
|
373
|
+
*/
|
|
226
374
|
watchBlockBody: (hash: string) => Observable<HexString[]>;
|
|
375
|
+
/**
|
|
376
|
+
* Get Block Body (Promise-based)
|
|
377
|
+
*
|
|
378
|
+
* @param hash It can be a block hash, `"finalized"`, or `"best"`
|
|
379
|
+
* @returns Block body.
|
|
380
|
+
*/
|
|
227
381
|
getBlockBody: (hash: string) => Promise<HexString[]>;
|
|
382
|
+
/**
|
|
383
|
+
* Get Block Header (Promise-based)
|
|
384
|
+
*
|
|
385
|
+
* @param hash It can be a block hash, `"finalized"` (default), or
|
|
386
|
+
* `"best"`
|
|
387
|
+
* @returns Block hash.
|
|
388
|
+
*/
|
|
228
389
|
getBlockHeader: (hash?: string) => Promise<BlockHeader>;
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
390
|
+
/**
|
|
391
|
+
* Broadcast a transaction (Promise-based)
|
|
392
|
+
*
|
|
393
|
+
* @param transaction SCALE-encoded tx to broadcast.
|
|
394
|
+
* @param at It can be a block hash, `"finalized"`, or `"best"`.
|
|
395
|
+
* That block will be used to verify the validity of
|
|
396
|
+
* the tx, retrieve the next nonce,
|
|
397
|
+
* and create the mortality taking that block into
|
|
398
|
+
* account.
|
|
399
|
+
*/
|
|
400
|
+
submit: (transaction: HexString, at?: HexString) => Promise<TxFinalizedPayload>;
|
|
401
|
+
/**
|
|
402
|
+
* Broadcast a transaction and returns an Observable. The observable will
|
|
403
|
+
* complete as soon as the transaction is in a finalized block.
|
|
404
|
+
*
|
|
405
|
+
* @param transaction SCALE-encoded tx to broadcast.
|
|
406
|
+
* @param at It can be a block hash, `"finalized"`, or `"best"`.
|
|
407
|
+
* That block will be used to verify the validity of
|
|
408
|
+
* the tx, retrieve the next nonce,
|
|
409
|
+
* and create the mortality taking that block into
|
|
410
|
+
* account.
|
|
411
|
+
*/
|
|
412
|
+
submitAndWatch: (transaction: HexString, at?: HexString) => Observable<TxBroadcastEvent>;
|
|
413
|
+
/**
|
|
414
|
+
* Returns an instance of a `TypedApi`
|
|
415
|
+
*
|
|
416
|
+
* @param descriptors Pass descriptors from `@polkadot-api/descriptors`
|
|
417
|
+
* generated by `papi` CLI.
|
|
418
|
+
*/
|
|
419
|
+
getTypedApi: <D extends ChainDefinition>(descriptors: D) => TypedApi<D>;
|
|
232
420
|
destroy: () => void;
|
|
421
|
+
/**
|
|
422
|
+
* This API is meant as an "escape hatch" to allow access to debug endpoints
|
|
423
|
+
* such as `system_version`, and other useful endpoints that are not spec
|
|
424
|
+
* compliant.
|
|
425
|
+
*
|
|
426
|
+
* @example
|
|
427
|
+
*
|
|
428
|
+
* const systemVersion = await client._request<string>("system_version", [])
|
|
429
|
+
* const myFancyThhing = await client._request<
|
|
430
|
+
* { value: string },
|
|
431
|
+
* [id: number]
|
|
432
|
+
* >("very_fancy", [1714])
|
|
433
|
+
*
|
|
434
|
+
*/
|
|
435
|
+
_request: <Reply = any, Params extends Array<any> = any[]>(method: string, params: Params) => Promise<Reply>;
|
|
233
436
|
}
|
|
234
437
|
type FixedSizeArray<L extends number, T> = Array<T> & {
|
|
235
438
|
length: L;
|
|
236
439
|
};
|
|
237
440
|
|
|
441
|
+
/**
|
|
442
|
+
* This is the top-level export for `polkadot-api`.
|
|
443
|
+
*
|
|
444
|
+
* @param provider A `JsonRpcProvider` compliant with the [JSON-RPC
|
|
445
|
+
* spec](https://paritytech.github.io/json-rpc-interface-spec/),
|
|
446
|
+
* which must support the `chainHead`, `transaction` and
|
|
447
|
+
* `chainSpec` groups.
|
|
448
|
+
* @example
|
|
449
|
+
*
|
|
450
|
+
* import { createClient } from "polkadot-api"
|
|
451
|
+
* import { getSmProvider } from "polkadot-api/sm-provider"
|
|
452
|
+
* import { chainSpec } from "polkadot-api/chains/polkadot"
|
|
453
|
+
* import { start } from "polkadot-api/smoldot"
|
|
454
|
+
*
|
|
455
|
+
* const smoldot = start()
|
|
456
|
+
* const chain = await smoldot.addChain({ chainSpec })
|
|
457
|
+
*
|
|
458
|
+
* // Connect to the polkadot relay chain.
|
|
459
|
+
* const client = createClient(getSmProvider(chain))
|
|
460
|
+
*
|
|
461
|
+
*/
|
|
238
462
|
declare function createClient(provider: JsonRpcProvider): PolkadotClient;
|
|
239
463
|
|
|
240
|
-
export { type EventPhase, type FixedSizeArray, type PolkadotClient, type Transaction, type TxBroadcastEvent, type TxEvent, type TxFinalizedPayload, type TypedApi, createClient };
|
|
464
|
+
export { type ApisDescriptors, type ApisTypedef, type AssetDescriptor, type ChainDefinition, type ConstFromPalletsDef, type DescriptorEntry, type DescriptorsValue, type ErrorsFromPalletsDef, type EventPhase, type EventsFromPalletsDef, type FixedSizeArray, type PalletDescriptors, type PalletsTypedef, type PlainDescriptor, type PolkadotClient, type QueryFromPalletsDef, type RuntimeDescriptor, type StorageDescriptor, type Transaction, type TxBestBlocksState, type TxBroadcastEvent, type TxBroadcasted, type TxCall, type TxDescriptor, type TxEntry, type TxEvent, type TxEventsPayload, type TxFinalized, type TxFinalizedPayload, type TxFromPalletsDef, type TxInBestBlocksFound, type TxInBestBlocksNotFound, type TxObservable, type TxOptions, type TxPromise, type TxSignFn, type TxSigned, type TypedApi, createClient, createTxEntry, submit, submit$ };
|
package/dist/min/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var L=Object.defineProperty;var Me=Object.getOwnPropertyDescriptor;var Ne=Object.getOwnPropertyNames;var Ue=Object.prototype.hasOwnProperty;var Le=(e,t,r)=>t in e?L(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;var ae=(e,t)=>{for(var r in t)L(e,r,{get:t[r],enumerable:!0})},Ge=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of Ne(t))!Ue.call(e,i)&&i!==r&&L(e,i,{get:()=>t[i],enumerable:!(n=Me(t,i))||n.enumerable});return e};var je=e=>Ge(L({},"__esModule",{value:!0}),e);var ne=(e,t,r)=>(Le(e,typeof t!="symbol"?t+"":t,r),r);var ut={};ae(ut,{AccountId:()=>w.AccountId,Binary:()=>w.Binary,Enum:()=>w.Enum,FixedSizeBinary:()=>w.FixedSizeBinary,_Enum:()=>w._Enum,createClient:()=>mt});module.exports=je(ut);var ze=require("@polkadot-api/substrate-client"),N=require("rxjs");var G=require("rxjs");var O=require("rxjs");var re=class{constructor(t,r){ne(this,"_ctx");ne(this,"_checksums");this._ctx=t,this._checksums=r}};function _(e){return e._ctx}function le(e,t){return e._checksums[t]}var ce=(e,t)=>new re(e,t),pe=(e,t)=>{let r,n=null;r=new Promise(l=>{n=l});let i=(0,O.combineLatest)([t.runtime$,e]);i.subscribe(([l,p])=>{if(l){let c=ce(l,p);n?(n(c),n=null):r=Promise.resolve(c)}else n||(r=new Promise(c=>{n=c}))});let a=i.pipe((0,O.filter)(([l])=>!!l),(0,O.map)(([l,p])=>ce(l,p)));return a.latest=()=>r,a},H=(e,t)=>r=>{function n(c){let m=_(c),y=le(c,t);return r(m)===y}let i=c=>c?n(c):e.latest().then(n),a=async()=>{let c=await e.latest();return m=>r(m)===le(c,t)};return{isCompatible:i,waitChecksums:a,withCompatibleRuntime:(c,m,y)=>u=>(0,O.combineLatest)([u.pipe(c.withRuntime(m)),a()]).pipe((0,O.map)(([[s,d],o])=>{if(!o(d))throw y();return[s,d]})),compatibleRuntime$:(c,m,y)=>(0,O.combineLatest)([c.getRuntimeContext$(m),a()]).pipe((0,O.map)(([u,s])=>{if(!s(u))throw y();return u}))}};var me=(e,t,r,n)=>{let{isCompatible:i,compatibleRuntime$:a}=n(y=>y.checksumBuilder.buildConstant(e,t)),l=()=>new Error(`Incompatible runtime entry Constant(${e}.${t})`),p=new WeakMap,c=y=>{if(p.has(y))return p.get(y);let s=y.metadata.pallets.find(o=>o.name===e)?.constants.find(o=>o.name===t),d=y.dynamicBuilder.buildConstant(e,t).dec(s.value);return p.set(y,d),d};return Object.assign(y=>{if(y){if(!i(y))throw l();return c(_(y))}return(0,G.firstValueFrom)(a(r,null,l).pipe((0,G.map)(c)))},{isCompatible:i})};var D=require("rxjs");var j=require("rxjs"),ue=(0,j.share)({connector:()=>new j.ReplaySubject(1),resetOnError:!0,resetOnComplete:!0,resetOnRefCountZero:!0});var ye=require("@polkadot-api/utils"),de=require("rxjs");function M(e,t){return new Promise((r,n)=>{let i=null,a=!1,l=t?()=>{i?.unsubscribe(),n(new ye.AbortError)}:de.noop;i=e.subscribe({next:p=>{r(p),i?.unsubscribe(),a=!0},error:p=>{t?.removeEventListener("abort",l),n(p)},complete:()=>{t?.removeEventListener("abort",l),n(new Error("Observable completed without emitting"))}}),a||t?.addEventListener("abort",l)})}var K=require("rxjs"),be=(e,t=1/0)=>r=>new K.Observable(n=>{let i,a=new Map,l=new Map,p=new Map,c=0,m=0,y=0,u=()=>{let s=a.get(m);if(!s){l.size===0&&(typeof i>"u"||i.closed)&&n.complete();return}let d=m++;a.delete(d),y!==d&&p.set(d,[]),l.set(d,s.subscribe({next(o){y===d?n.next(o):p.get(d).push(o)},complete(){if(l.delete(d),d===y)for(y++;p.has(y)&&(p.get(y).forEach(o=>n.next(o)),p.delete(y),!l.has(y));)y++;u()},error(o){n.error(o)}}))};return i=r.subscribe({next(s){let d=c++;a.set(d,(0,K.defer)(()=>e(s,d))),l.size<t&&u()},error(s){n.error(s)},complete(){l.size===0&&n.complete()}}),()=>{l.forEach(s=>s.unsubscribe()),i.unsubscribe(),a.clear(),p.clear()}});var q=require("rxjs"),ge=(e,t)=>r=>new q.Observable(n=>{let i=new Array,a=!1,l=c=>{let m=new q.Subscription;i.push(m),i.length>t&&(i[0].unsubscribe(),i=i.slice(1));let y=e(c).subscribe({next(u){let s=i.indexOf(m);i.slice(0,s).forEach(d=>d.unsubscribe()),i=i.slice(s),n.next(u)},error(u){n.error(u)},complete(){let u=i.indexOf(m);i.splice(u,1),i.length===0&&a&&n.complete()}});m.add(y)},p=r.subscribe({next(c){l(c)},error(c){n.error(c)},complete(){i.length===0&&n.complete(),a=!0}});return()=>{p.unsubscribe(),i.forEach(c=>c.unsubscribe())}});var fe=(e,t,r,n)=>{let{isCompatible:i,withCompatibleRuntime:a}=n(u=>u.checksumBuilder.buildEvent(e,t)),l=()=>new Error(`Incompatible runtime entry Event(${e}.${t})`),p=r.finalized$.pipe(a(r,u=>u.hash,l),be(([u])=>r.eventsAt$(u.hash).pipe((0,D.map)(s=>s.filter(o=>o.event.type===e&&o.event.value.type===t).map(o=>({meta:{phase:o.phase,block:u},payload:o.event.value.value}))))),ue);return{watch:u=>p.pipe((0,D.mergeMap)(s=>u?s.filter(d=>u(d.payload)):s)),pull:()=>(0,D.firstValueFrom)(p),filter:u=>u.filter(s=>s.type===e&&s.value.type===t).map(s=>s.value.value),isCompatible:i}};var We=require("@polkadot-api/observable-client");var xe=require("@polkadot-api/utils"),J=require("rxjs"),Ke=e=>typeof e!="object"?!1:Object.keys(e).every(t=>t==="at"&&typeof e.at=="string"||t==="signal"&&e.signal instanceof AbortSignal),he=(e,t,r,n)=>{let{isCompatible:i,compatibleRuntime$:a}=n(m=>m.checksumBuilder.buildRuntimeCall(e,t)),l=`${e}_${t}`,p=()=>new Error(`Incompatible runtime entry RuntimeCall(${l})`);return Object.assign((...m)=>{let y=m[m.length-1],u=Ke(y),{signal:s,at:d}=u?y:{},o=d??null,S=a(r,o,p).pipe((0,J.mergeMap)(A=>{let E=A.dynamicBuilder.buildRuntimeCall(e,t);return r.call$(o,l,(0,xe.toHex)(E.args.enc(m))).pipe((0,J.map)(E.value.dec))}));return M(S,s)},{isCompatible:i})};var P=require("rxjs"),Ee=require("@polkadot-api/observable-client"),Ce=e=>typeof e!="object"?!1:Object.keys(e).every(t=>t==="at"&&typeof e.at=="string"||t==="signal"&&e.signal instanceof AbortSignal),Se=(e,t,r,n)=>{let i=e==="System"&&t==="Number",{isCompatible:a,waitChecksums:l,withCompatibleRuntime:p}=n(o=>o.checksumBuilder.buildStorage(e,t)),c=()=>new Error(`Incompatible runtime entry Storage(${e}.${t})`),m=o=>new Error(`Invalid Arguments calling ${e}.${t}(${o})`),y=(...o)=>{let S=o[o.length-1],A=S==="best"||S==="finalized"?o.slice(0,-1):o;return i?r.bestBlocks$.pipe((0,P.map)(E=>E.at(S==="best"?0:-1).number),(0,P.distinctUntilChanged)()):r[S==="best"?"best$":"finalized$"].pipe((0,P.debounceTime)(0),p(r,E=>E.hash,c),ge(([E,k])=>{let R=k.dynamicBuilder.buildStorage(e,t);return r.storage$(E.hash,"value",()=>R.enc(...A)).pipe((0,P.map)(g=>({val:g,codecs:R})))},4),(0,P.distinctUntilChanged)((E,k)=>E.val===k.val),(0,P.map)(({val:E,codecs:k})=>E===null?k.fallback:k.dec(E)))},u=async(...o)=>{let S=o[o.length-1],A=Ce(S),{signal:E,at:k}=A?S:{},R=k??null,g;if(i)g=r.bestBlocks$.pipe((0,P.map)(f=>R==="finalized"||!R?f.at(-1):R==="best"?f.at(0):f.find(x=>x.hash===R)),(0,P.map)(f=>{if(!f)throw new Ee.NotBestBlockError;return f.number}),(0,P.distinctUntilChanged)());else{let f=await l();g=r.storage$(R,"value",x=>{if(!f(x))throw c();let h=x.dynamicBuilder.buildStorage(e,t),C=o.length===h.len?o:o.slice(0,-1);if(o!==C&&!A)throw m(o);return h.enc(...C)},null,(x,h)=>{let C=h.dynamicBuilder.buildStorage(e,t);return x===null?C.fallback:C.dec(x)})}return M(g,E)};return{isCompatible:a,getValue:u,getValues:(o,S)=>Promise.all(o.map(A=>u(...S?[...A,S]:A))),getEntries:async(...o)=>{let S=o[o.length-1],A=Ce(S),{signal:E,at:k}=A?S:{},R=k??null,g=await l(),f=r.storage$(R,"descendantsValues",x=>{if(!g(x))throw c();let h=x.dynamicBuilder.buildStorage(e,t);if(o.length>h.len)throw m(o);let C=o.length>0&&A?o.slice(0,-1):o;if(o.length===h.len&&C===o)throw m(o);return h.enc(...C)},null,(x,h)=>{let C=h.dynamicBuilder.buildStorage(e,t);return x.map(({key:U,value:te})=>({keyArgs:C.keyDecoder(U),value:C.dec(te)}))});return M(f,E)},watchValue:y}};var v=require("@polkadot-api/substrate-bindings"),B=require("@polkadot-api/utils"),b=require("rxjs");var ve=require("@polkadot-api/signer"),qe=(e,t)=>{let r=e.filter(a=>a.phase.type==="ApplyExtrinsic"&&a.phase.value===t).map(a=>a.event),n=r[r.length-1];return{ok:n.type==="System"&&n.value.type==="ExtrinsicSuccess",events:r}},Je=(0,v.AccountId)().enc,Ae=(e,t)=>{let r=a=>(0,b.concat)(e.finalized$.pipe((0,b.take)(1),(0,b.mergeMap)(l=>e.validateTx$(a,l.hash)),(0,b.map)(l=>{if(!l)throw new Error("Invalid");return{type:"broadcasted"}})),new b.Observable(l=>{let p=e.trackTx$(a).subscribe(l);return p.add(t.broadcastTx$(a).subscribe({error(c){l.error(c)}})),p})),n=a=>r(a).pipe((0,b.mergeMap)(l=>l.type!=="finalized"?(0,b.of)(l):e.eventsAt$(l.block.hash).pipe((0,b.map)(p=>({...l,...qe(p,Number(l.block.index))})))));return{submit$:n,submit:async a=>(0,b.lastValueFrom)(n(a)).then(l=>{if(l.type!=="finalized")throw null;let p={...l};return delete p.type,p})}},Ze=(0,v.Tuple)(v.compact,v.compact,v.u8,v.u128).dec,Qe=e=>Ze(e)[3],Xe=new Uint8Array(64),Ye=()=>Xe,Te=(e,t,r,n,i,a,l)=>{let{isCompatible:p,compatibleRuntime$:c}=l(u=>u.checksumBuilder.buildCall(e,t)),m=()=>new Error(`Incompatible runtime entry Tx(${e}.${t})`);return Object.assign(u=>{let s=({dynamicBuilder:g,asset:[f,x]},h,C={})=>{let U=C;if(C.asset){if(r!==x)throw new Error("Incompatible runtime asset");U={...C,asset:f(C.asset)}}let{location:te,codec:_e}=g.buildCall(e,t);return{callData:v.Binary.fromBytes((0,B.mergeUint8)(new Uint8Array(te),_e.enc(h))),hinted:U}},d=(g,f={})=>c(n,null,m).pipe((0,b.map)(x=>s(x,g,f))),o=g=>{if(g){if(!p(g))throw m();return s(_(g),u).callData}return(0,b.firstValueFrom)(d(u).pipe((0,b.map)(f=>f.callData)))},S=(g,f)=>d(u,f).pipe((0,b.withLatestFrom)(n.finalized$),(0,b.take)(1),(0,b.mergeMap)(([{callData:x,hinted:h},C])=>a(g,x.asBytes(),C,h))),A=(g,f)=>(0,b.firstValueFrom)(S(g,f)).then(B.toHex),E=(g,f)=>A(g,f).then(i.submit),k=(g,f)=>S(g,f).pipe((0,b.mergeMap)(x=>{let h=(0,B.toHex)(x);return i.submit$(h).pipe((0,b.startWith)({type:"signed",tx:h}))}));return{getEstimatedFees:async(g,f)=>{let x=(0,ve.getPolkadotSigner)(g instanceof Uint8Array?g:Je(g),"Sr25519",Ye),h=(0,B.fromHex)(await A(x,f)),C=(0,B.toHex)((0,B.mergeUint8)(h,v.u32.enc(h.length)));return(0,b.firstValueFrom)(n.call$(null,"TransactionPaymentApi_query_info",C).pipe((0,b.map)(Qe)))},decodedCall:{type:e,value:(0,v.Enum)(t,u)},getEncodedData:o,sign:A,signSubmitAndWatch:k,signAndSubmit:E}},{isCompatible:p})};var I=require("rxjs");var Pe=require("@polkadot-api/substrate-bindings"),Re=require("rxjs");var V=require("rxjs"),z=require("@polkadot-api/substrate-bindings"),Z=require("@polkadot-api/metadata-builders"),ke=require("@polkadot-api/utils"),T=new Uint8Array,et=(0,z.Storage)("System")("BlockHash",V.noop,[z.u32,z.Twox64Concat]).enc(0),Q=e=>e.chainHead.storage$(e.at,"value",()=>et,null).pipe((0,V.map)(t=>(0,ke.fromHex)(t))),X=(e,t)=>{let r=(0,Z.getLookupFn)(t.lookup),n=(0,Z.getDynamicBuilder)(t),i=t.pallets.find(c=>c.name==="System").constants.find(c=>c.name==="Version"),a=r(i.type),l=n.buildDefinition(i.type).dec;if(a.type!=="struct")throw new Error("not a struct");let p=n.buildDefinition(a.value[e].id).enc;return(0,V.of)(p(l(i.value)[e]))};var Oe=e=>(0,Re.of)({value:Pe.compactBn.enc(e),additionalSigned:T});var Y=require("rxjs"),W=require("@polkadot-api/substrate-bindings"),$e=require("@polkadot-api/utils");function tt(e){let t=0;for(;!(e&1);)t++,e>>=1;return t}var nt=(0,W.enhanceEncoder)((0,W.Bytes)(2).enc,e=>{let t=Math.max(e.period>>12,1),r=Math.min(Math.max(tt(e.period)-1,1),15),n=e.phase/t<<4;return W.u16.enc(r|n)}),rt=new Uint8Array([0]),we=(e,t)=>{if(!e)return Q(t).pipe((0,Y.map)(i=>({additionalSigned:i,value:rt})));let{period:r,blockNumber:n}=e;return(0,Y.of)({additionalSigned:(0,$e.fromHex)(t.at),value:nt({period:r,phase:n%r})})};var Be=require("rxjs"),F=require("@polkadot-api/substrate-bindings");var ot=(0,F.Struct)({tip:F.compact,asset:(0,F.Option)((0,F.Bytes)(1/0))}).enc,Ie=(e,t)=>(0,Be.of)({value:ot({tip:e,asset:t}),additionalSigned:T});var ie={};ae(ie,{CheckGenesis:()=>it,CheckNonce:()=>at,CheckSpecVersion:()=>lt,CheckTxVersion:()=>ct});var Fe=require("rxjs");var it=e=>Q(e).pipe((0,Fe.map)(t=>({value:T,additionalSigned:t})));var oe=require("rxjs"),$=require("@polkadot-api/substrate-bindings");var ee=require("@polkadot-api/utils"),st={1:$.u8.dec,2:$.u16.dec,4:$.u32.dec,8:$.u64.dec},at=e=>e.chainHead.call$(e.at,"AccountNonceApi_account_nonce",(0,ee.toHex)(e.from)).pipe((0,oe.map)(t=>{let r=(0,ee.fromHex)(t),n=st[r.length];if(!n)throw new Error("AccountNonceApi_account_nonce retrieved wrong data");return $.compact.enc(n(r))}),(0,oe.map)(t=>({value:t,additionalSigned:T})));var He=require("rxjs");var lt=({metadata:e})=>X("spec_version",e).pipe((0,He.map)(t=>({additionalSigned:t,value:T})));var De=require("rxjs");var ct=({metadata:e})=>X("transaction_version",e).pipe((0,De.map)(t=>({additionalSigned:t,value:T})));var se=require("@polkadot-api/substrate-bindings");var Ve=e=>(t,r,n,i)=>e.getRuntimeContext$(n.hash).pipe((0,I.take)(1),(0,I.mergeMap)(a=>{let l={metadata:a.metadata,chainHead:e,callData:r,at:n.hash,from:t.publicKey},p=i?.mortality?i.mortality.mortal?{period:i.mortality.period,blockNumber:n.number}:void 0:{period:64,blockNumber:n.number};return(0,I.combineLatest)(a.metadata.extrinsic.signedExtensions.map(({identifier:c,type:m,additionalSigned:y})=>{if(c==="CheckMortality")return we(p,l);if(c==="ChargeTransactionPayment")return Oe(i?.tip??0n);if(c==="ChargeAssetTxPayment")return Ie(i?.tip??0n,i?.asset);let u=ie[c];if(!u){if(a.dynamicBuilder.buildDefinition(m)===se._void&&a.dynamicBuilder.buildDefinition(y)===se._void)return(0,I.of)({value:T,additionalSigned:T});throw new Error(`Unsupported signed-extension: ${c}`)}return u(l)})).pipe((0,I.mergeMap)(c=>t.sign(r,Object.fromEntries(a.metadata.extrinsic.signedExtensions.map(({identifier:m},y)=>[m,{identifier:m,...c[y]}])),a.metadataRaw,n.number)))}));var pt=(e,t,r,n)=>{let i=pe(e.checksums,r),{pallets:a,apis:l}=e,p={};for(let s in a){p[s]||(p[s]={});let[d]=a[s];for(let o in d)p[s][o]=Se(s,o,r,H(i,d[o]))}let c={};for(let s in a){c[s]||(c[s]={});let[,d]=a[s];for(let o in d)c[s][o]=Te(s,o,e.asset,r,n,t,H(i,d[o]))}let m={};for(let s in a){m[s]||(m[s]={});let[,,d]=a[s];for(let o in d)m[s][o]=fe(s,o,r,H(i,d[o]))}let y={};for(let s in a){y[s]||(y[s]={});let[,,,,d]=a[s];for(let o in d)y[s][o]=me(s,o,r,H(i,d[o]))}let u={};for(let s in l){u[s]||(u[s]={});let d=l[s];for(let o in d)u[s][o]=he(s,o,r,H(i,d[o]))}return{query:p,tx:c,event:m,apis:u,constants:y,runtime:i}};function mt(e){let t=(0,ze.createClient)(e),r=(0,We.getObservableClient)(t),n=r.chainHead$(),i=Ve(n),a=Ae(n,r),{submit:l,submit$:p}=a,{getChainSpecData:c}=t;return{getChainSpecData:c,finalizedBlock$:n.finalized$,getFinalizedBlock:()=>(0,N.firstValueFrom)(n.finalized$),bestBlocks$:n.bestBlocks$,getBestBlocks:()=>(0,N.firstValueFrom)(n.bestBlocks$),watchBlockBody:n.body$,getBlockBody:m=>(0,N.firstValueFrom)(n.body$(m)),getBlockHeader:m=>(0,N.firstValueFrom)(n.header$(m??null)),submit:l,submitAndWatch:p,getTypedApi:m=>pt(m,i,n,a),destroy:()=>{n.unfollow(),r.destroy()}}}var w=require("@polkadot-api/substrate-bindings");
|
|
1
|
+
"use strict";var se=Object.defineProperty;var je=Object.getOwnPropertyDescriptor;var qe=Object.getOwnPropertyNames;var Ke=Object.prototype.hasOwnProperty;var me=(e,t)=>{for(var r in t)se(e,r,{get:t[r],enumerable:!0})},Je=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of qe(t))!Ke.call(e,o)&&o!==r&&se(e,o,{get:()=>t[o],enumerable:!(n=je(t,o))||n.enumerable});return e};var Ze=e=>Je(se({},"__esModule",{value:!0}),e);var ht={};me(ht,{AccountId:()=>B.AccountId,Binary:()=>B.Binary,Enum:()=>B.Enum,FixedSizeBinary:()=>B.FixedSizeBinary,_Enum:()=>B._Enum,createClient:()=>gt});module.exports=Ze(ht);var Le=require("@polkadot-api/observable-client"),Ue=require("@polkadot-api/substrate-client"),U=require("rxjs");var j=require("rxjs"),ue=(e,t,r,n)=>{let{isCompatible:o,compatibleRuntime$:p}=n(u=>u.checksumBuilder.buildConstant(e,t)),c=()=>new Error(`Incompatible runtime entry Constant(${e}.${t})`),y=new WeakMap,s=u=>{if(y.has(u))return y.get(u);let l=u.metadata.pallets.find(i=>i.name===e)?.constants.find(i=>i.name===t),m=u.dynamicBuilder.buildConstant(e,t).dec(l.value);return y.set(u,m),m};return Object.assign(u=>{if(u){if(!o(u))throw c();return s(u._getCtx())}return(0,j.firstValueFrom)(p(r,null,c).pipe((0,j.map)(s)))},{isCompatible:o})};var H=require("rxjs");var q=require("rxjs"),be=(0,q.share)({connector:()=>new q.ReplaySubject(1),resetOnError:!0,resetOnComplete:!0,resetOnRefCountZero:!0});var ye=require("@polkadot-api/utils"),de=require("rxjs");function N(e,t){return new Promise((r,n)=>{let o=null,p=!1,c=t?()=>{o?.unsubscribe(),n(new ye.AbortError)}:de.noop;o=e.subscribe({next:y=>{r(y),o?.unsubscribe(),p=!0},error:y=>{t?.removeEventListener("abort",c),n(y)},complete:()=>{t?.removeEventListener("abort",c),n(new Error("Observable completed without emitting"))}}),p||t?.addEventListener("abort",c)})}var K=require("rxjs"),fe=(e,t=1/0)=>r=>new K.Observable(n=>{let o,p=new Map,c=new Map,y=new Map,s=0,b=0,u=0,a=()=>{let l=p.get(b);if(!l){c.size===0&&(typeof o>"u"||o.closed)&&n.complete();return}let m=b++;p.delete(m),u!==m&&y.set(m,[]),c.set(m,l.subscribe({next(i){u===m?n.next(i):y.get(m).push(i)},complete(){if(c.delete(m),m===u)for(u++;y.has(u)&&(y.get(u).forEach(i=>n.next(i)),y.delete(u),!c.has(u));)u++;a()},error(i){n.error(i)}}))};return o=r.subscribe({next(l){let m=s++;p.set(m,(0,K.defer)(()=>e(l,m))),c.size<t&&a()},error(l){n.error(l)},complete(){c.size===0&&n.complete()}}),()=>{c.forEach(l=>l.unsubscribe()),o.unsubscribe(),p.clear(),y.clear()}});var J=require("rxjs"),ge=(e,t)=>r=>new J.Observable(n=>{let o=new Array,p=!1,c=s=>{let b=new J.Subscription;o.push(b),o.length>t&&(o[0].unsubscribe(),o=o.slice(1));let u=e(s).subscribe({next(a){let l=o.indexOf(b);o.slice(0,l).forEach(m=>m.unsubscribe()),o=o.slice(l),n.next(a)},error(a){n.error(a)},complete(){let a=o.indexOf(b);o.splice(a,1),o.length===0&&p&&n.complete()}});b.add(u)},y=r.subscribe({next(s){c(s)},error(s){n.error(s)},complete(){o.length===0&&n.complete(),p=!0}});return()=>{y.unsubscribe(),o.forEach(s=>s.unsubscribe())}});var xe=require("rxjs"),he={},Ce=e=>t=>new xe.Observable(r=>{let n=he,o=t.subscribe({next(p){r.next(n=p)},error(p){r.error(p)},complete(){n===he?r.complete():o=e(n).subscribe(r)}});return()=>{o.unsubscribe()}});var ve=(e,t,r,n)=>{let{isCompatible:o,withCompatibleRuntime:p}=n(a=>a.checksumBuilder.buildEvent(e,t)),c=()=>new Error(`Incompatible runtime entry Event(${e}.${t})`),y=r.finalized$.pipe(p(r,a=>a.hash,c),fe(([a])=>r.eventsAt$(a.hash).pipe((0,H.map)(l=>l.filter(i=>i.event.type===e&&i.event.value.type===t).map(i=>({meta:{phase:i.phase,block:a},payload:i.event.value.value}))))),be);return{watch:a=>y.pipe((0,H.mergeMap)(l=>a?l.filter(m=>a(m.payload)):l)),pull:()=>(0,H.firstValueFrom)(y),filter:a=>a.filter(l=>l.type===e&&l.value.type===t).map(l=>l.value.value),isCompatible:o}};var A=require("rxjs");var ae=class e{constructor(t,r,n){this._ctx=t;this._checksums=r;this._descriptors=n}static _create(t,r,n){return new e(t,r,n)}_getCtx(){return this._ctx}_getPalletChecksum(t,r,n){return this._checksums[this._descriptors.pallets[r][t][n]]}_getApiChecksum(t,r){return this._checksums[this._descriptors.apis[t][r]]}},Ee=(e,t,r)=>{let n=(0,A.connectable)((0,A.combineLatest)([r.runtime$,e,t]).pipe((0,A.map)(([p,c,y])=>p?ae._create(p,c,y):null)),{connector:()=>new A.ReplaySubject(1)});n.connect();let o=n.pipe((0,A.filter)(p=>!!p));return o.latest=()=>(0,A.firstValueFrom)(o),o},_=(e,t)=>r=>{function n(s){return r(s._getCtx())===t(s)}let o=s=>s?n(s):e.latest().then(n),p=async()=>{let s=await e.latest();return b=>r(b)===t(s)};return{isCompatible:o,waitChecksums:p,withCompatibleRuntime:(s,b,u)=>a=>(0,A.combineLatest)([a.pipe(s.withRuntime(b)),p()]).pipe((0,A.map)(([[l,m],i])=>{if(!i(m))throw u();return[l,m]})),compatibleRuntime$:(s,b,u)=>(0,A.combineLatest)([s.getRuntimeContext$(b),p()]).pipe((0,A.map)(([a,l])=>{if(!l(a))throw u();return a}))}};var Se=require("@polkadot-api/utils"),Z=require("rxjs"),Ye=e=>typeof e!="object"?!1:Object.keys(e).every(t=>t==="at"&&typeof e.at=="string"||t==="signal"&&e.signal instanceof AbortSignal),ke=(e,t,r,n)=>{let{isCompatible:o,compatibleRuntime$:p}=n(b=>b.checksumBuilder.buildRuntimeCall(e,t)),c=`${e}_${t}`,y=()=>new Error(`Incompatible runtime entry RuntimeCall(${c})`);return Object.assign((...b)=>{let u=b[b.length-1],a=Ye(u),{signal:l,at:m}=a?u:{},i=m??null,C=p(r,i,y).pipe((0,Z.mergeMap)(T=>{let E=T.dynamicBuilder.buildRuntimeCall(e,t);return r.call$(i,c,(0,Se.toHex)(E.args.enc(b))).pipe((0,Z.map)(E.value.dec))}));return N(C,l)},{isCompatible:o})};var $=require("rxjs"),Te=require("@polkadot-api/observable-client"),Ae=e=>typeof e!="object"?!1:Object.keys(e).every(t=>t==="at"&&typeof e.at=="string"||t==="signal"&&e.signal instanceof AbortSignal),Pe=(e,t,r,n)=>{let o=e==="System"&&t==="Number",{isCompatible:p,waitChecksums:c,withCompatibleRuntime:y}=n(i=>i.checksumBuilder.buildStorage(e,t)),s=()=>new Error(`Incompatible runtime entry Storage(${e}.${t})`),b=i=>new Error(`Invalid Arguments calling ${e}.${t}(${i})`),u=(...i)=>{let C=i[i.length-1],T=C==="best"||C==="finalized"?i.slice(0,-1):i;return o?r.bestBlocks$.pipe((0,$.map)(E=>E.at(C==="best"?0:-1).number),(0,$.distinctUntilChanged)()):r[C==="best"?"best$":"finalized$"].pipe((0,$.debounceTime)(0),y(r,E=>E.hash,s),ge(([E,O])=>{let w=O.dynamicBuilder.buildStorage(e,t);return r.storage$(E.hash,"value",()=>w.enc(...T)).pipe((0,$.map)(f=>({val:f,codecs:w})))},4),(0,$.distinctUntilChanged)((E,O)=>E.val===O.val),(0,$.map)(({val:E,codecs:O})=>E===null?O.fallback:O.dec(E)))},a=async(...i)=>{let C=i[i.length-1],T=Ae(C),{signal:E,at:O}=T?C:{},w=O??null,f;if(o)f=r.bestBlocks$.pipe((0,$.map)(d=>w==="finalized"||!w?d.at(-1):w==="best"?d.at(0):d.find(g=>g.hash===w)),(0,$.map)(d=>{if(!d)throw new Te.NotBestBlockError;return d.number}),(0,$.distinctUntilChanged)());else{let d=await c();f=r.storage$(w,"value",g=>{if(!d(g))throw s();let h=g.dynamicBuilder.buildStorage(e,t),v=i.length===h.len?i:i.slice(0,-1);if(i!==v&&!T)throw b(i);return h.enc(...v)},null,(g,h)=>{let v=h.dynamicBuilder.buildStorage(e,t);return g===null?v.fallback:v.dec(g)})}return N(f,E)};return{isCompatible:p,getValue:a,getValues:(i,C)=>Promise.all(i.map(T=>a(...C?[...T,C]:T))),getEntries:async(...i)=>{let C=i[i.length-1],T=Ae(C),{signal:E,at:O}=T?C:{},w=O??null,f=await c(),d=r.storage$(w,"descendantsValues",g=>{if(!f(g))throw s();let h=g.dynamicBuilder.buildStorage(e,t);if(i.length>h.len)throw b(i);let v=i.length>0&&T?i.slice(0,-1):i;if(i.length===h.len&&v===i)throw b(i);return h.enc(...v)},null,(g,h)=>{let v=h.dynamicBuilder.buildStorage(e,t);return g.map(({key:G,value:ie})=>({keyArgs:v.keyDecoder(G),value:v.dec(ie)}))});return N(d,E)},watchValue:u}};var k=require("@polkadot-api/substrate-bindings"),z=require("@polkadot-api/utils"),S=require("rxjs"),Ne=require("@polkadot-api/signer");var I=require("rxjs");var $e=require("@polkadot-api/substrate-bindings"),we=require("rxjs");var F=require("rxjs"),D=require("@polkadot-api/substrate-bindings"),Y=require("@polkadot-api/metadata-builders"),Oe=require("@polkadot-api/utils"),P=new Uint8Array,Qe=(0,D.Storage)("System")("BlockHash",F.noop,[D.u32,D.Twox64Concat]).enc(0),Q=e=>e.chainHead.storage$(e.at,"value",()=>Qe,null).pipe((0,F.map)(t=>(0,Oe.fromHex)(t))),X=(e,t)=>{let r=(0,Y.getLookupFn)(t.lookup),n=(0,Y.getDynamicBuilder)(t),o=t.pallets.find(s=>s.name==="System").constants.find(s=>s.name==="Version"),p=r(o.type),c=n.buildDefinition(o.type).dec;if(p.type!=="struct")throw new Error("not a struct");let y=n.buildDefinition(p.value[e].id).enc;return(0,F.of)(y(c(o.value)[e]))};var Re=e=>(0,we.of)({value:$e.compactBn.enc(e),additionalSigned:P});var ee=require("rxjs"),M=require("@polkadot-api/substrate-bindings"),Be=require("@polkadot-api/utils");function Xe(e){let t=0;for(;!(e&1);)t++,e>>=1;return t}var et=(0,M.enhanceEncoder)((0,M.Bytes)(2).enc,e=>{let t=Math.max(e.period>>12,1),r=Math.min(Math.max(Xe(e.period)-1,1),15),n=e.phase/t<<4;return M.u16.enc(r|n)}),tt=new Uint8Array([0]),Ie=(e,t)=>{if(!e)return Q(t).pipe((0,ee.map)(o=>({additionalSigned:o,value:tt})));let{period:r,blockNumber:n}=e;return(0,ee.of)({additionalSigned:(0,Be.fromHex)(t.at),value:et({period:r,phase:n%r})})};var Ve=require("rxjs"),V=require("@polkadot-api/substrate-bindings");var nt=(0,V.Struct)({tip:V.compact,asset:(0,V.Option)((0,V.Bytes)(1/0))}).enc,ze=(e,t)=>(0,Ve.of)({value:nt({tip:e,asset:t}),additionalSigned:P});var le={};me(le,{CheckGenesis:()=>rt,CheckNonce:()=>it,CheckSpecVersion:()=>st,CheckTxVersion:()=>at,getNonce:()=>re});var He=require("rxjs");var rt=e=>Q(e).pipe((0,He.map)(t=>({value:P,additionalSigned:t})));var te=require("rxjs"),R=require("@polkadot-api/substrate-bindings");var ne=require("@polkadot-api/utils"),_e="AccountNonceApi_account_nonce",ot={1:R.u8.dec,2:R.u16.dec,4:R.u32.dec,8:R.u64.dec},re=e=>(0,te.of)({value:R.compact.enc(e),additionalSigned:P}),it=e=>e.chainHead.call$(e.at,_e,(0,ne.toHex)(e.from)).pipe((0,te.mergeMap)(t=>{let r=(0,ne.fromHex)(t),n=ot[r.length];if(!n)throw new Error(`${_e} retrieved wrong data`);return re(n(r))}));var Fe=require("rxjs");var st=({metadata:e})=>X("spec_version",e).pipe((0,Fe.map)(t=>({additionalSigned:t,value:P})));var De=require("rxjs");var at=({metadata:e})=>X("transaction_version",e).pipe((0,De.map)(t=>({additionalSigned:t,value:P})));var pe=require("@polkadot-api/substrate-bindings");var Me=(e,t,r,n,o={})=>e.getRuntimeContext$(n.hash).pipe((0,I.take)(1),(0,I.mergeMap)(p=>{let c={metadata:p.metadata,chainHead:e,callData:r,at:n.hash,from:t.publicKey},y=o.mortality?o.mortality.mortal?{period:o.mortality.period,blockNumber:n.number}:void 0:{period:64,blockNumber:n.number};return(0,I.combineLatest)(p.metadata.extrinsic.signedExtensions.map(({identifier:s,type:b,additionalSigned:u})=>{if(s==="CheckMortality")return Ie(y,c);if(s==="ChargeTransactionPayment")return Re(o.tip??0n);if(s==="ChargeAssetTxPayment")return ze(o.tip??0n,o.asset);if(s==="CheckNonce"&&"nonce"in o)return re(o.nonce);let a=le[s];if(!a){if(p.dynamicBuilder.buildDefinition(b)===pe._void&&p.dynamicBuilder.buildDefinition(u)===pe._void)return(0,I.of)({value:P,additionalSigned:P});throw new Error(`Unsupported signed-extension: ${s}`)}return a(c)})).pipe((0,I.mergeMap)(s=>t.sign(r,Object.fromEntries(p.metadata.extrinsic.signedExtensions.map(({identifier:b},u)=>[b,{identifier:b,...s[u]}])),p.metadataRaw,n.number)))}));var We=require("@polkadot-api/substrate-bindings"),x=require("rxjs");var oe=require("@polkadot-api/utils"),lt=e=>(0,oe.toHex)((0,We.Blake2256)((0,oe.fromHex)(e))),pt=(e,t)=>new x.Observable(r=>{let n=new Map,o,p,c=()=>{let s=o.best,b=n.get(s);for(;!b;){let l=o.blocks.get(s);if(!l)break;b=n.get(s=l.parent)}if(!b)return;let u=o.blocks.get(b.hash).number<=o.blocks.get(o.finalized).number,a=b.found.type;if(a&&typeof p=="object"&&p.hash===b.hash){u&&r.complete();return}r.next(p=a?{hash:b.hash,...b.found}:b.found.isValid),u&&(a?r.complete():b.found.isValid||r.error(new Error("Invalid")))},y=t.pipe((0,x.distinctUntilChanged)((s,b)=>s.finalized===b.finalized&&s.best===b.best)).subscribe({next:s=>{o=s,n.size!==0&&c()},error(s){r.error(s)}});return y.add(e.subscribe({next:s=>{n.set(s.hash,s),c()},error(s){r.error(s)}})),y}).pipe((0,x.distinctUntilChanged)((r,n)=>r===n)),ct=(e,t)=>{let r=e.filter(p=>p.phase.type==="ApplyExtrinsic"&&p.phase.value===t).map(p=>p.event),n=r[r.length-1];return{ok:n.type==="System"&&n.value.type==="ExtrinsicSuccess",events:r}},W=(e,t,r,n,o=!1)=>{let p=lt(r),c=(a,l)=>({type:a,txHash:p,...l}),s=e.pinnedBlocks$.pipe((0,x.take)(1),(0,x.map)(a=>a.blocks.get(n)?.hash??a.finalized)).pipe((0,x.mergeMap)(a=>e.validateTx$(a,r).pipe((0,x.filter)(l=>!l),(0,x.map)(()=>{throw new Error("Invalid")})))),b=new x.Observable(a=>{let l=e.trackTx$(r).subscribe(a);return l.add(t(r).subscribe({error(m){a.error(m)}})),l}),u=pt(b,e.pinnedBlocks$).pipe((0,x.map)(a=>a===!0||a===!1?c("txBestBlocksState",{found:!1,isValid:a}):c("txBestBlocksState",{found:!0,block:{index:a.index,hash:a.hash},...ct(a.events,a.index)})));return(0,x.concat)(o?(0,x.of)(c("signed",{})):x.EMPTY,s,(0,x.of)(c("broadcasted",{})),u.pipe(Ce(({found:a,type:l,...m})=>a?(0,x.of)(c("finalized",m)):x.EMPTY)))},L=async(e,t,r,n)=>(0,x.lastValueFrom)(W(e,t,r,n)).then(o=>{if(o.type!=="finalized")throw null;let p={...o};return delete p.type,p});var mt=(0,k.AccountId)().enc,ut=(0,k.Tuple)(k.compact,k.compact,k.u8,k.u128).dec,bt=e=>ut(e)[3],yt=new Uint8Array(64),dt=()=>yt,ce=(e,t,r,n,o,p)=>{let{isCompatible:c,compatibleRuntime$:y}=p(u=>u.checksumBuilder.buildCall(e,t)),s=()=>new Error(`Incompatible runtime entry Tx(${e}.${t})`);return Object.assign(u=>{let a=({dynamicBuilder:f,asset:[d,g]},h,v={})=>{let G=v;if(v.asset){if(r!==g)throw new Error("Incompatible runtime asset");G={...v,asset:d(v.asset)}}let{location:ie,codec:Ge}=f.buildCall(e,t);return{callData:k.Binary.fromBytes((0,z.mergeUint8)(new Uint8Array(ie),Ge.enc(h))),options:G}},l=(f,d={})=>y(n,null,s).pipe((0,S.map)(g=>a(g,f,d))),m=f=>{if(!f)return(0,S.firstValueFrom)(l(u).pipe((0,S.map)(d=>d.callData)));if(!c(f))throw s();return a(f._getCtx(),u).callData},i=(f,{...d},g)=>l(u,d).pipe((0,S.mergeMap)(({callData:h,options:v})=>Me(n,f,h.asBytes(),g,v))),C=(f,{at:d,...g}={})=>(!d||d==="finalized"?n.finalized$:d==="best"?n.best$:n.bestBlocks$.pipe((0,S.map)(h=>h.find(v=>v.hash===d)))).pipe((0,S.take)(1),(0,S.mergeMap)(h=>h?i(f,g,h).pipe((0,S.map)(v=>({tx:(0,z.toHex)(v),block:h}))):(0,S.throwError)(()=>new Error(`Uknown block ${d}`)))),T=(f,d)=>(0,S.firstValueFrom)(C(f,d)).then(g=>g.tx),E=(f,d)=>(0,S.firstValueFrom)(C(f,d)).then(({tx:g,block:h})=>L(n,o,g,h.hash)),O=(f,d)=>C(f,d).pipe((0,S.mergeMap)(({tx:g,block:h})=>W(n,o,g,h.hash,!0)));return{getEstimatedFees:async(f,d)=>{let g=(0,Ne.getPolkadotSigner)(f instanceof Uint8Array?f:mt(f),"Sr25519",dt),h=(0,z.fromHex)(await T(g,d)),v=(0,z.toHex)((0,z.mergeUint8)(h,k.u32.enc(h.length)));return(0,S.firstValueFrom)(n.call$(null,"TransactionPaymentApi_query_info",v).pipe((0,S.map)(bt)))},decodedCall:{type:e,value:(0,k.Enum)(t,u)},getEncodedData:m,sign:T,signSubmitAndWatch:O,signAndSubmit:E}},{isCompatible:c})};var ft=(e,t,r)=>{let n=Ee(e.checksums,e.descriptors,t),o={},p=l=>new Proxy(o,{get(m,i){return l(i)}}),c=l=>{let m={};return p(i=>(m[i]||(m[i]={}),p(C=>(m[i][C]||(m[i][C]=l(i,C)),m[i][C]))))},y=c((l,m)=>Pe(l,m,t,_(n,i=>i._getPalletChecksum(0,l,m)))),s=c((l,m)=>ce(l,m,e.asset,t,r,_(n,i=>i._getPalletChecksum(1,l,m)))),b=c((l,m)=>ve(l,m,t,_(n,i=>i._getPalletChecksum(2,l,m)))),u=c((l,m)=>ue(l,m,t,_(n,i=>i._getPalletChecksum(4,l,m)))),a=c((l,m)=>ke(l,m,t,_(n,i=>i._getApiChecksum(l,m))));return{query:y,tx:s,event:b,apis:a,constants:u,runtime:n}};function gt(e){let t=(0,Ue.createClient)(e),r=(0,Le.getObservableClient)(t),n=r.chainHead$(),{getChainSpecData:o}=t,p=t.request,{broadcastTx$:c}=r;return{getChainSpecData:o,finalizedBlock$:n.finalized$,getFinalizedBlock:()=>(0,U.firstValueFrom)(n.finalized$),bestBlocks$:n.bestBlocks$,getBestBlocks:()=>(0,U.firstValueFrom)(n.bestBlocks$),watchBlockBody:n.body$,getBlockBody:y=>(0,U.firstValueFrom)(n.body$(y)),getBlockHeader:y=>(0,U.firstValueFrom)(n.header$(y??null)),submit:(...y)=>L(n,c,...y),submitAndWatch:(...y)=>W(n,c,...y),getTypedApi:y=>ft(y,n,c),destroy:()=>{n.unfollow(),r.destroy()},_request:p}}var B=require("@polkadot-api/substrate-bindings");
|
|
2
2
|
//# sourceMappingURL=index.js.map
|