@lifi/perps-sdk-provider-lighter 8.2.1 → 9.0.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 +14 -10
- package/dist/cjs/LighterProvider.d.ts +5 -10
- package/dist/cjs/LighterProvider.d.ts.map +1 -1
- package/dist/cjs/LighterProvider.js +27 -26
- package/dist/cjs/LighterProvider.js.map +1 -1
- package/dist/cjs/constants.d.ts +5 -8
- package/dist/cjs/constants.d.ts.map +1 -1
- package/dist/cjs/constants.js +15 -12
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -4
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +6 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/signers/LighterSigner.d.ts +5 -7
- package/dist/cjs/signers/LighterSigner.d.ts.map +1 -1
- package/dist/cjs/signers/LighterSigner.js +5 -12
- package/dist/cjs/signers/LighterSigner.js.map +1 -1
- package/dist/cjs/signers/generated/wasmExecRuntime.d.ts +2 -0
- package/dist/cjs/signers/generated/wasmExecRuntime.d.ts.map +1 -0
- package/dist/cjs/signers/generated/wasmExecRuntime.js +569 -0
- package/dist/cjs/signers/generated/wasmExecRuntime.js.map +1 -0
- package/dist/cjs/signers/signActions.d.ts +2 -2
- package/dist/cjs/signers/signActions.d.ts.map +1 -1
- package/dist/cjs/signers/signActions.js +4 -10
- package/dist/cjs/signers/signActions.js.map +1 -1
- package/dist/cjs/signers/wasmBinaryUrl.js +11 -0
- package/dist/cjs/signers/wasmLoader.d.ts +1 -6
- package/dist/cjs/signers/wasmLoader.d.ts.map +1 -1
- package/dist/cjs/signers/wasmLoader.js +15 -69
- package/dist/cjs/signers/wasmLoader.js.map +1 -1
- package/dist/esm/LighterProvider.d.ts +53 -56
- package/dist/esm/LighterProvider.d.ts.map +1 -1
- package/dist/esm/LighterProvider.js +69 -48
- package/dist/esm/LighterProvider.js.map +1 -1
- package/dist/esm/constants.d.ts +25 -36
- package/dist/esm/constants.d.ts.map +1 -1
- package/dist/esm/constants.js +31 -18
- package/dist/esm/constants.js.map +1 -1
- package/dist/esm/index.d.ts +6 -7
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +5 -6
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/signers/LighterSigner.d.ts +10 -18
- package/dist/esm/signers/LighterSigner.d.ts.map +1 -1
- package/dist/esm/signers/LighterSigner.js +7 -14
- package/dist/esm/signers/LighterSigner.js.map +1 -1
- package/dist/esm/signers/generated/wasmExecRuntime.d.ts +8 -0
- package/dist/esm/signers/generated/wasmExecRuntime.d.ts.map +1 -0
- package/dist/esm/signers/generated/wasmExecRuntime.js +574 -0
- package/dist/esm/signers/generated/wasmExecRuntime.js.map +1 -0
- package/dist/esm/signers/signActions.d.ts +3 -5
- package/dist/esm/signers/signActions.d.ts.map +1 -1
- package/dist/esm/signers/signActions.js +4 -10
- package/dist/esm/signers/signActions.js.map +1 -1
- package/dist/esm/signers/wasmBinaryUrl.js +10 -0
- package/dist/esm/signers/wasmLoader.d.ts +7 -31
- package/dist/esm/signers/wasmLoader.d.ts.map +1 -1
- package/dist/esm/signers/wasmLoader.js +32 -108
- package/dist/esm/signers/wasmLoader.js.map +1 -1
- package/dist/types/LighterProvider.d.ts +53 -56
- package/dist/types/LighterProvider.d.ts.map +1 -1
- package/dist/types/constants.d.ts +25 -36
- package/dist/types/constants.d.ts.map +1 -1
- package/dist/types/index.d.ts +6 -7
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/signers/LighterSigner.d.ts +10 -18
- package/dist/types/signers/LighterSigner.d.ts.map +1 -1
- package/dist/types/signers/generated/wasmExecRuntime.d.ts +8 -0
- package/dist/types/signers/generated/wasmExecRuntime.d.ts.map +1 -0
- package/dist/types/signers/signActions.d.ts +3 -5
- package/dist/types/signers/signActions.d.ts.map +1 -1
- package/dist/types/signers/wasmLoader.d.ts +7 -31
- package/dist/types/signers/wasmLoader.d.ts.map +1 -1
- package/package.json +1 -4
- package/src/LighterProvider.ts +98 -101
- package/src/constants.ts +35 -45
- package/src/index.ts +13 -10
- package/src/signers/LighterSigner.ts +15 -36
- package/src/signers/generated/wasmExecRuntime.ts +575 -0
- package/src/signers/signActions.ts +12 -30
- package/src/signers/wasmBinaryUrl.d.ts +7 -0
- package/src/signers/wasmLoader.ts +33 -152
- package/dist/cjs/signers/index.d.ts +0 -11
- package/dist/cjs/signers/index.d.ts.map +0 -1
- package/dist/cjs/signers/index.js +0 -18
- package/dist/cjs/signers/index.js.map +0 -1
- package/dist/esm/signers/index.d.ts +0 -11
- package/dist/esm/signers/index.d.ts.map +0 -1
- package/dist/esm/signers/index.js +0 -7
- package/dist/esm/signers/index.js.map +0 -1
- package/dist/types/signers/index.d.ts +0 -11
- package/dist/types/signers/index.d.ts.map +0 -1
- package/dist/wasm/wasm_exec.js +0 -561
- package/src/signers/index.ts +0 -35
- package/wasm/lighter-signer.wasm +0 -0
- package/wasm/wasm_exec.js +0 -561
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAA2B,MAAM,iBAAiB,CAAA;AASrE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAE7E,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC/B,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EACL,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"signActions.js","sourceRoot":"","sources":["../../../src/signers/signActions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Static, bundler-analyzable URL for the package's own Go signer binary.
|
|
2
|
+
// Vite/webpack rewrite this `new URL(..., import.meta.url)` form into an
|
|
3
|
+
// emitted asset URL; Node ESM resolves it to the installed `file://` path.
|
|
4
|
+
// Hand-authored (not compiled from TS) because the CJS twin next to it must
|
|
5
|
+
// use `__filename` — one TS source cannot emit both.
|
|
6
|
+
|
|
7
|
+
export const lighterWasmBinaryUrl = new URL(
|
|
8
|
+
'../../wasm/lighter-signer.wasm',
|
|
9
|
+
import.meta.url
|
|
10
|
+
)
|
|
@@ -1,28 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Overrides for locating the Lighter Go WASM binary and its runtime loader.
|
|
3
|
-
* Supplying explicit URLs or source is useful when a bundler does not preserve
|
|
4
|
-
* the package's relative asset layout.
|
|
5
|
-
*
|
|
6
|
-
* @public
|
|
7
|
-
*/
|
|
8
|
-
export interface LoadLighterWasmOptions {
|
|
9
|
-
/** Override URL for the `.wasm` binary (browser: fetch; Node: fs). */
|
|
10
|
-
wasmBinaryUrl?: string | URL;
|
|
11
|
-
/** Override URL for Go's `wasm_exec.js` runtime. */
|
|
12
|
-
wasmExecJsUrl?: string | URL;
|
|
13
|
-
/**
|
|
14
|
-
* Pre-fetched source of Go's `wasm_exec.js`. Preferred over
|
|
15
|
-
* `wasmExecJsUrl` for bundlers (Vite/webpack) that may transform a `.js`
|
|
16
|
-
* URL on serve, breaking the IIFE that installs `globalThis.Go`. Pass via
|
|
17
|
-
* a `?raw` import (Vite) or equivalent so the original source survives
|
|
18
|
-
* intact.
|
|
19
|
-
*
|
|
20
|
-
* @security This string is evaluated via `new Function(...)`. The caller is
|
|
21
|
-
* responsible for ensuring it originates from the bundled `wasm_exec.js`;
|
|
22
|
-
* attacker-controlled content would execute arbitrary code in the host.
|
|
23
|
-
*/
|
|
24
|
-
wasmExecJsSource?: string;
|
|
25
|
-
}
|
|
26
1
|
/**
|
|
27
2
|
* Function table installed by the Lighter Go WASM runtime. Methods mirror the
|
|
28
3
|
* venue signer ABI and return a result containing either signed transaction
|
|
@@ -145,16 +120,17 @@ export interface SignResult {
|
|
|
145
120
|
error?: string;
|
|
146
121
|
}
|
|
147
122
|
/**
|
|
148
|
-
* Load the Lighter WASM signer
|
|
149
|
-
* the cached exports. The Go
|
|
150
|
-
* JS calls — we start it
|
|
151
|
-
*
|
|
123
|
+
* Load the Lighter WASM signer from the binary shipped with this package.
|
|
124
|
+
* Memoized per-process: subsequent calls return the cached exports. The Go
|
|
125
|
+
* runtime keeps a long-running goroutine to service JS calls — we start it
|
|
126
|
+
* once and never stop it.
|
|
127
|
+
* @internal
|
|
152
128
|
*/
|
|
153
|
-
export declare function loadLighterWasm(
|
|
129
|
+
export declare function loadLighterWasm(): Promise<LighterWasmExports>;
|
|
154
130
|
/**
|
|
155
131
|
* Testing helper — drop the cached WASM instance so the next load reinitializes.
|
|
156
132
|
*
|
|
157
|
-
* @
|
|
133
|
+
* @internal
|
|
158
134
|
*/
|
|
159
135
|
export declare function resetLighterWasmCache(): void;
|
|
160
136
|
//# sourceMappingURL=wasmLoader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasmLoader.d.ts","sourceRoot":"","sources":["../../../src/signers/wasmLoader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wasmLoader.d.ts","sourceRoot":"","sources":["../../../src/signers/wasmLoader.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM;QACpB,SAAS,CAAC,EAAE,MAAM,CAAA;QAClB,UAAU,CAAC,EAAE,MAAM,CAAA;QACnB,KAAK,CAAC,EAAE,MAAM,CAAA;KACf,CAAA;IACD,YAAY,EAAE,CACZ,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,KACjB;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvB,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9E;;;;;OAKG;IACH,eAAe,EAAE,CACf,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,KACjB;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3C;;;;;;;OAOG;IACH,gBAAgB,EAAE,CAChB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,KACjB,UAAU,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C;;;;;;;;;;;;;;;OAeG;IACH,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACnD,2EAA2E;IAC3E,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACnD;;;OAGG;IACH,mBAAmB,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACvD;;;;;OAKG;IACH,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IAChD,iFAAiF;IACjF,YAAY,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IAChD;;;OAGG;IACH,kBAAkB,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACtD;;;;;OAKG;IACH,eAAe,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACnD;;;OAGG;IACH,gBAAgB,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IACpD;;;;;;;OAOG;IACH,qBAAqB,EAAE,CACrB,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,UAAU,GAAG;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C;;;;OAIG;IACH,uBAAuB,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;IAC3D;;;;OAIG;IACH,4BAA4B,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,UAAU,CAAA;CACjE;AAED,gBAAgB;AAChB,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAyDD;;;;;;GAMG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAKnE;AAmDD;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C"}
|
|
@@ -1,46 +1,7 @@
|
|
|
1
1
|
// The Go runtime installs functions (SignCreateOrder, SignCancelOrder, etc.)
|
|
2
2
|
// onto `globalThis` when `go.run(instance)` starts the main goroutine.
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
// src/signers/../../wasm/lighter-signer.wasm → package-root wasm/
|
|
6
|
-
// dist/{esm,cjs}/signers/../../wasm/… → dist/wasm/ (shared)
|
|
7
|
-
// The build script copies the wasm assets into both dist subtrees so the same
|
|
8
|
-
// relative path resolves at runtime regardless of which bundle is loaded.
|
|
9
|
-
//
|
|
10
|
-
// To resolve the module's own URL in both ESM (where `__filename` is absent)
|
|
11
|
-
// and CJS (where `import.meta.url` is a syntax error), we parse a stack trace
|
|
12
|
-
// — `currentModuleUrl` always appears as the first frame, and V8 includes the
|
|
13
|
-
// emitting file path regardless of module system. Callers can override both
|
|
14
|
-
// asset URLs via {@link LoadLighterWasmOptions} to bypass this heuristic.
|
|
15
|
-
function currentModuleUrl() {
|
|
16
|
-
const cjsFilename = globalThis.__filename;
|
|
17
|
-
if (typeof cjsFilename === 'string' && cjsFilename.length > 0) {
|
|
18
|
-
return `file://${cjsFilename}`;
|
|
19
|
-
}
|
|
20
|
-
const stack = new Error().stack ?? '';
|
|
21
|
-
// Stack frames look like one of:
|
|
22
|
-
// " at currentModuleUrl (file:///abs/path/wasmLoader.js:29:10)"
|
|
23
|
-
// " at currentModuleUrl (/abs/path/wasmLoader.js:29:10)"
|
|
24
|
-
// " at currentModuleUrl (file:///abs/path/wasmLoader.ts:29:10)" (vitest)
|
|
25
|
-
// " at currentModuleUrl (http://localhost:5173/.../wasmLoader.ts?v=…:29:10)" (vite dev)
|
|
26
|
-
const match = stack.match(/\(([^)]+wasmLoader\.[tj]s[^)]*)\)/);
|
|
27
|
-
const frame = match?.[1] ?? '';
|
|
28
|
-
const withoutPos = frame.replace(/:\d+:\d+$/, '');
|
|
29
|
-
if (withoutPos.startsWith('file://') ||
|
|
30
|
-
withoutPos.startsWith('http://') ||
|
|
31
|
-
withoutPos.startsWith('https://')) {
|
|
32
|
-
return withoutPos;
|
|
33
|
-
}
|
|
34
|
-
if (withoutPos.length > 0) {
|
|
35
|
-
// Bare absolute path (Node CJS without `file://` prefix in some runners).
|
|
36
|
-
return `file://${withoutPos}`;
|
|
37
|
-
}
|
|
38
|
-
throw new Error('Could not resolve the Lighter WASM loader module URL. Pass an explicit ' +
|
|
39
|
-
'`wasmBinaryUrl` and `wasmExecJsUrl` to loadLighterWasm().');
|
|
40
|
-
}
|
|
41
|
-
function defaultAssetUrl(filename) {
|
|
42
|
-
return new URL(`../../wasm/${filename}`, currentModuleUrl());
|
|
43
|
-
}
|
|
3
|
+
import { WASM_EXEC_JS } from './generated/wasmExecRuntime.js';
|
|
4
|
+
import { lighterWasmBinaryUrl } from './wasmBinaryUrl.js';
|
|
44
5
|
const WASM_FUNCTION_NAMES = [
|
|
45
6
|
'GenerateAPIKey',
|
|
46
7
|
'CreateClient',
|
|
@@ -60,90 +21,53 @@ const WASM_FUNCTION_NAMES = [
|
|
|
60
21
|
'SignUpdateAccountAssetConfig',
|
|
61
22
|
];
|
|
62
23
|
let cachedExports;
|
|
63
|
-
// `node:fs/promises`
|
|
64
|
-
//
|
|
65
|
-
// `
|
|
66
|
-
//
|
|
24
|
+
// `node:fs/promises` is Node-only and reached solely for a `file://` asset URL,
|
|
25
|
+
// which never happens in a browser. Both ignore comments are required: without
|
|
26
|
+
// `webpackIgnore` a Next.js build fails with `UnhandledSchemeError: Reading
|
|
27
|
+
// from "node:fs/promises" is not handled by plugins`, and Vite would otherwise
|
|
28
|
+
// warn while externalising it. Node's `readFile` accepts the `file://` URL
|
|
29
|
+
// directly, so no `node:url` hop is needed.
|
|
67
30
|
async function readNodeFile(url) {
|
|
68
|
-
const
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
]);
|
|
72
|
-
return readFile(fileURLToPath(url));
|
|
31
|
+
const { readFile } = await import(
|
|
32
|
+
/* webpackIgnore: true */ /* @vite-ignore */ 'node:fs/promises');
|
|
33
|
+
return readFile(url);
|
|
73
34
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
* for `?url` imports, which `new URL(string)` rejects without a base.
|
|
78
|
-
*/
|
|
79
|
-
function toResolvedUrl(url) {
|
|
80
|
-
if (url instanceof URL) {
|
|
81
|
-
return url;
|
|
82
|
-
}
|
|
83
|
-
const base = typeof globalThis !== 'undefined' &&
|
|
84
|
-
globalThis.location?.href
|
|
85
|
-
? globalThis.location.href
|
|
86
|
-
: undefined;
|
|
87
|
-
return new URL(url, base);
|
|
88
|
-
}
|
|
89
|
-
async function readUrlBytes(url) {
|
|
90
|
-
const u = toResolvedUrl(url);
|
|
91
|
-
if (u.protocol === 'file:') {
|
|
92
|
-
const buf = await readNodeFile(u);
|
|
35
|
+
async function readWasmBinary(url) {
|
|
36
|
+
if (url.protocol === 'file:') {
|
|
37
|
+
const bytes = await readNodeFile(url);
|
|
93
38
|
// Copy the view into a fresh ArrayBuffer — `Buffer.buffer` is a shared
|
|
94
39
|
// ArrayBuffer in Node and the wasm instantiator expects a plain one.
|
|
95
|
-
return
|
|
40
|
+
return bytes.slice().buffer;
|
|
96
41
|
}
|
|
97
|
-
const response = await fetch(
|
|
42
|
+
const response = await fetch(url);
|
|
98
43
|
if (!response.ok) {
|
|
99
|
-
throw new Error(`Failed to fetch ${
|
|
44
|
+
throw new Error(`Failed to fetch ${url.href}: ${response.status} ${response.statusText}`);
|
|
100
45
|
}
|
|
101
46
|
return response.arrayBuffer();
|
|
102
47
|
}
|
|
103
|
-
async function readUrlText(url) {
|
|
104
|
-
const u = toResolvedUrl(url);
|
|
105
|
-
if (u.protocol === 'file:') {
|
|
106
|
-
const buf = await readNodeFile(u);
|
|
107
|
-
return new TextDecoder('utf-8').decode(buf);
|
|
108
|
-
}
|
|
109
|
-
const response = await fetch(u);
|
|
110
|
-
if (!response.ok) {
|
|
111
|
-
throw new Error(`Failed to fetch ${u.href}: ${response.status} ${response.statusText}`);
|
|
112
|
-
}
|
|
113
|
-
return response.text();
|
|
114
|
-
}
|
|
115
48
|
/**
|
|
116
|
-
* Load the Lighter WASM signer
|
|
117
|
-
* the cached exports. The Go
|
|
118
|
-
* JS calls — we start it
|
|
119
|
-
*
|
|
49
|
+
* Load the Lighter WASM signer from the binary shipped with this package.
|
|
50
|
+
* Memoized per-process: subsequent calls return the cached exports. The Go
|
|
51
|
+
* runtime keeps a long-running goroutine to service JS calls — we start it
|
|
52
|
+
* once and never stop it.
|
|
53
|
+
* @internal
|
|
120
54
|
*/
|
|
121
|
-
export async function loadLighterWasm(
|
|
55
|
+
export async function loadLighterWasm() {
|
|
122
56
|
if (!cachedExports) {
|
|
123
|
-
cachedExports = loadWasmUncached(
|
|
57
|
+
cachedExports = loadWasmUncached();
|
|
124
58
|
}
|
|
125
59
|
return cachedExports;
|
|
126
60
|
}
|
|
127
|
-
async function loadWasmUncached(
|
|
128
|
-
const
|
|
129
|
-
// Prefer a pre-fetched source string (bundler `?raw` imports) over a URL —
|
|
130
|
-
// bundlers may transform a `.js` URL on serve, breaking the IIFE that sets
|
|
131
|
-
// `globalThis.Go`.
|
|
132
|
-
const wasmExecSourcePromise = options?.wasmExecJsSource !== undefined
|
|
133
|
-
? Promise.resolve(options.wasmExecJsSource)
|
|
134
|
-
: readUrlText(options?.wasmExecJsUrl ?? defaultAssetUrl('wasm_exec.js'));
|
|
135
|
-
const [wasmExecSource, wasmBytes] = await Promise.all([
|
|
136
|
-
wasmExecSourcePromise,
|
|
137
|
-
readUrlBytes(wasmBinaryUrl),
|
|
138
|
-
]);
|
|
61
|
+
async function loadWasmUncached() {
|
|
62
|
+
const wasmBytes = await readWasmBinary(lighterWasmBinaryUrl);
|
|
139
63
|
// wasm_exec.js is an IIFE that installs `globalThis.Go = class { ... }` plus
|
|
140
|
-
// fs/process/crypto polyfills. Evaluating
|
|
64
|
+
// fs/process/crypto polyfills. Evaluating the packaged text keeps Go's runtime
|
|
141
65
|
// opaque to consumer bundlers — it references require/process/fs/crypto, which
|
|
142
|
-
// Vite/webpack choke on if they try to parse it as a module. The
|
|
143
|
-
//
|
|
144
|
-
//
|
|
66
|
+
// Vite/webpack choke on if they try to parse it as a module. The text is
|
|
67
|
+
// generated from this package's vendored wasm_exec.js at build time and is
|
|
68
|
+
// never caller-supplied.
|
|
145
69
|
// nosec
|
|
146
|
-
const installGo = new Function(`${
|
|
70
|
+
const installGo = new Function(`${WASM_EXEC_JS}; return globalThis.Go`);
|
|
147
71
|
const Go = installGo();
|
|
148
72
|
const go = new Go();
|
|
149
73
|
const { instance } = await WebAssembly.instantiate(wasmBytes, go.importObject);
|
|
@@ -179,7 +103,7 @@ async function yieldToGoRuntime() {
|
|
|
179
103
|
/**
|
|
180
104
|
* Testing helper — drop the cached WASM instance so the next load reinitializes.
|
|
181
105
|
*
|
|
182
|
-
* @
|
|
106
|
+
* @internal
|
|
183
107
|
*/
|
|
184
108
|
export function resetLighterWasmCache() {
|
|
185
109
|
cachedExports = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasmLoader.js","sourceRoot":"","sources":["../../../src/signers/wasmLoader.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,uEAAuE;
|
|
1
|
+
{"version":3,"file":"wasmLoader.js","sourceRoot":"","sources":["../../../src/signers/wasmLoader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,71 +1,43 @@
|
|
|
1
|
-
import { type PerpsProviderPlugin } from '@lifi/perps-sdk';
|
|
2
|
-
import type { LighterProviderKey } from '@lifi/perps-types';
|
|
1
|
+
import { type PerpsProviderPlugin, type StorageAdapter } from '@lifi/perps-sdk';
|
|
3
2
|
import type { Address } from 'viem';
|
|
4
|
-
import type
|
|
5
|
-
import type { LighterReadOnlyTokenManagerOptions } from './signers/LighterReadOnlyTokenManager.js';
|
|
6
|
-
import type { LighterSigner } from './signers/LighterSigner.js';
|
|
3
|
+
import { type LighterDeployment } from './constants.js';
|
|
7
4
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
5
|
+
* Consumer-level overrides for a ready-made Lighter provider plugin. Every
|
|
6
|
+
* deployment fact — provider key, endpoints, signing chain id, collateral
|
|
7
|
+
* asset, explorer — belongs to the SDK's {@link LighterDeployment} descriptor
|
|
8
|
+
* and is not settable here; the signer, API-key store and read-only token
|
|
9
|
+
* manager are created per plugin instance.
|
|
12
10
|
*
|
|
13
11
|
* Auth-token resolution order for the auth-gated reads:
|
|
14
12
|
* 1. Per-call `options.lighterAuthToken`
|
|
15
13
|
* 2. Constructor `authToken` (string or async factory)
|
|
16
|
-
* 3. Persisted long-lived read-only token
|
|
17
|
-
*
|
|
18
|
-
* 4. Fresh 1h create via
|
|
19
|
-
*
|
|
14
|
+
* 3. Persisted long-lived read-only token, keyed on the resolved Lighter
|
|
15
|
+
* `accountIndex`
|
|
16
|
+
* 4. Fresh 1h create via this instance's WASM signer + the user's registered
|
|
17
|
+
* API key
|
|
20
18
|
*
|
|
21
19
|
* When none of these yields a token the auth-gated reads degrade gracefully:
|
|
22
20
|
* - `getOrders`, `getActivity` return empty results (mirrors backend behaviour)
|
|
23
21
|
* - `getOrder` throws `Unauthorized`
|
|
24
22
|
* - `getAccount` returns zero fee tier rather than failing
|
|
25
23
|
*
|
|
26
|
-
* `WASM_BLOB` write actions (`signActions`) require `signer` and `keyStore` to
|
|
27
|
-
* be supplied; the `EVM_TX` arm signs with the end-user wallet alone.
|
|
28
|
-
*
|
|
29
24
|
* @public
|
|
30
25
|
*/
|
|
31
26
|
export interface LighterProviderOptions {
|
|
32
27
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
* Set a distinct key (e.g. `'lighter-rh'`) to register a second Lighter
|
|
37
|
-
* instance on the same client.
|
|
28
|
+
* Persistence backend for this instance's Lighter API keypair and read-only
|
|
29
|
+
* token. Defaults to browser `localStorage` (encrypted at rest). Pass a
|
|
30
|
+
* custom adapter for SSR / non-browser hosts or another storage backend.
|
|
38
31
|
*/
|
|
39
|
-
|
|
40
|
-
/** Lighter REST base URL. Defaults to mainnet. */
|
|
41
|
-
restUrl?: string;
|
|
32
|
+
storage?: StorageAdapter;
|
|
42
33
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
34
|
+
* Lighter REST base URL. Defaults to the deployment's own endpoint; override
|
|
35
|
+
* to point at a reverse proxy, self-hosted mirror or rate-limit gateway. The
|
|
36
|
+
* instance's signer and read-only token manager follow this URL.
|
|
46
37
|
*/
|
|
47
|
-
|
|
48
|
-
/** Pre-created Lighter read-only bearer. */
|
|
38
|
+
restUrl?: string;
|
|
39
|
+
/** Pre-created Lighter read-only bearer, bypassing SDK token resolution. */
|
|
49
40
|
authToken?: string | (() => string | Promise<string>);
|
|
50
|
-
/**
|
|
51
|
-
* WASM signer instance. Required for the `WASM_BLOB` arm of `signActions`
|
|
52
|
-
* and for on-demand auth-token creating from the user's API key. The default
|
|
53
|
-
* configuration loads the WASM blob shipped with this package.
|
|
54
|
-
*/
|
|
55
|
-
signer?: LighterSigner;
|
|
56
|
-
/**
|
|
57
|
-
* Store for the user's per-address Lighter API keypair. Required for the
|
|
58
|
-
* `WASM_BLOB` arm of `signActions` and for on-demand auth-token creating.
|
|
59
|
-
*/
|
|
60
|
-
keyStore?: LighterKeyStore;
|
|
61
|
-
/**
|
|
62
|
-
* Injection overrides (storage, fetcher, clock, host) for the read-only
|
|
63
|
-
* token manager, which is always active — Lighter reads create a long-lived
|
|
64
|
-
* read-only token on first use and reuse it thereafter. The host defaults to
|
|
65
|
-
* `restUrl`. This does not enable or disable the manager; it only overrides
|
|
66
|
-
* its dependencies (primarily for tests / non-browser storage).
|
|
67
|
-
*/
|
|
68
|
-
readOnlyTokenOptions?: LighterReadOnlyTokenManagerOptions;
|
|
69
41
|
/** Token lifetime for on-demand standard-token creates (Lighter caps at 8h). Default 1h. */
|
|
70
42
|
tokenLifetimeSeconds?: number;
|
|
71
43
|
/** Re-create when the cached standard token's remaining life is below this. Default 60s. */
|
|
@@ -97,16 +69,24 @@ export interface LighterPerpsProvider extends PerpsProviderPlugin {
|
|
|
97
69
|
resolveAuthToken(address: Address): Promise<string | undefined>;
|
|
98
70
|
}
|
|
99
71
|
/**
|
|
100
|
-
* Lighter provider plugin
|
|
101
|
-
*
|
|
102
|
-
*
|
|
72
|
+
* Build a Lighter provider plugin for one deployment. The deployment
|
|
73
|
+
* descriptor is SDK-owned, so this stays package-internal: consumers reach it
|
|
74
|
+
* through {@link lighterProvider} / {@link lighterRhProvider}.
|
|
103
75
|
*
|
|
104
|
-
*
|
|
105
|
-
|
|
106
|
-
|
|
76
|
+
* @internal
|
|
77
|
+
*/
|
|
78
|
+
export declare const createLighterProvider: (deployment: LighterDeployment, options?: LighterProviderOptions) => LighterPerpsProvider;
|
|
79
|
+
/**
|
|
80
|
+
* Lighter mainnet provider plugin. Returns an object implementing
|
|
81
|
+
* {@link PerpsProviderPlugin}, mirroring the `EthereumProvider()` /
|
|
82
|
+
* `hyperliquidProvider()` shape used by the rest of the LI.FI SDK family.
|
|
107
83
|
*
|
|
108
|
-
*
|
|
109
|
-
*
|
|
84
|
+
* Read functions call Lighter's REST API directly with no LI.FI backend hop;
|
|
85
|
+
* auth-gated reads resolve their token via the order documented on
|
|
86
|
+
* {@link LighterProviderOptions}. Write actions (`WASM_BLOB` and `EVM_TX`
|
|
87
|
+
* signing) are dispatched via `signActions` — `PerpsClient.execute` delegates
|
|
88
|
+
* those arms here. The instance owns its WASM signer, API-key store and
|
|
89
|
+
* read-only token manager.
|
|
110
90
|
*
|
|
111
91
|
* @example
|
|
112
92
|
* ```ts
|
|
@@ -118,6 +98,23 @@ export interface LighterPerpsProvider extends PerpsProviderPlugin {
|
|
|
118
98
|
* @public
|
|
119
99
|
*/
|
|
120
100
|
export declare const lighterProvider: (options?: LighterProviderOptions) => LighterPerpsProvider;
|
|
101
|
+
/**
|
|
102
|
+
* Lighter-on-Robinhood-chain provider plugin. Same contract as
|
|
103
|
+
* {@link lighterProvider}, bound to the RH deployment: its own endpoints,
|
|
104
|
+
* zkLighter signing chain id, USDG collateral, and its own signer, API-key
|
|
105
|
+
* store and read-only token manager. Registering both factories on one client
|
|
106
|
+
* keeps their credentials and caches separate.
|
|
107
|
+
*
|
|
108
|
+
* @example
|
|
109
|
+
* ```ts
|
|
110
|
+
* const client = createPerpsClient({
|
|
111
|
+
* integrator: 'my-app',
|
|
112
|
+
* providers: [lighterProvider(), lighterRhProvider()],
|
|
113
|
+
* })
|
|
114
|
+
* ```
|
|
115
|
+
* @public
|
|
116
|
+
*/
|
|
117
|
+
export declare const lighterRhProvider: (options?: LighterProviderOptions) => LighterPerpsProvider;
|
|
121
118
|
/**
|
|
122
119
|
* Alias matching `@lifi/sdk`'s capitalised factory naming (`EVM()`, `EthereumProvider()`).
|
|
123
120
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"LighterProvider.d.ts","sourceRoot":"","sources":["../../src/LighterProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,mBAAmB,EAgBxB,KAAK,cAAc,EAEpB,MAAM,iBAAiB,CAAA;AA4BxB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAGnC,OAAO,EAUL,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAA;AAsGvB;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;OAIG;IACH,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;IACrD,4FAA4F;IAC5F,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,4FAA4F;IAC5F,uBAAuB,CAAC,EAAE,MAAM,CAAA;IAChC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAQD;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,mBAAmB;IAC/D;;;;;OAKG;IACH,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAA;CAChE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,iBAAiB,EAC7B,UAAS,sBAA2B,KACnC,oBA+kCF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,eAAe,GAC1B,UAAS,sBAA2B,KACnC,oBACyD,CAAA;AAE5D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,iBAAiB,GAC5B,UAAS,sBAA2B,KACnC,oBAA6E,CAAA;AAEhF;;;;GAIG;AACH,eAAO,MAAM,OAAO,aA7BT,sBAAsB,KAC9B,oBA4BmC,CAAA"}
|
|
@@ -32,11 +32,12 @@ export declare const DEFAULT_LIGHTER_REST_URL = "https://mainnet.zklighter.ellio
|
|
|
32
32
|
*/
|
|
33
33
|
export declare const DEFAULT_LIGHTER_WS_URL = "wss://mainnet.zklighter.elliot.ai/stream";
|
|
34
34
|
/**
|
|
35
|
-
* zkLighter L2 signing chain id
|
|
35
|
+
* zkLighter L2 signing chain id for the Lighter mainnet deployment, from
|
|
36
|
+
* `elliottech/lighter-python` v1.1.2 `lighter/endpoint_profiles.py`.
|
|
36
37
|
*
|
|
37
38
|
* @public
|
|
38
39
|
*/
|
|
39
|
-
export declare const
|
|
40
|
+
export declare const LIGHTER_MAINNET_SIGNER_CHAIN_ID = 304;
|
|
40
41
|
/**
|
|
41
42
|
* Base URL the mainnet Lighter zkLighter explorer resolves a tx hash against
|
|
42
43
|
* (`${base}${txHash}`).
|
|
@@ -66,21 +67,19 @@ export interface LighterCollateralAsset {
|
|
|
66
67
|
*/
|
|
67
68
|
export declare const LIGHTER_COLLATERAL_ASSETS: Record<LighterProviderKey, LighterCollateralAsset>;
|
|
68
69
|
/**
|
|
69
|
-
* The venue
|
|
70
|
-
* another.
|
|
71
|
-
*
|
|
70
|
+
* The immutable venue facts that distinguish one Lighter deployment from
|
|
71
|
+
* another. The SDK owns one descriptor per supported deployment; consumers
|
|
72
|
+
* select a deployment by picking its provider factory, never by assembling
|
|
73
|
+
* these fields.
|
|
72
74
|
*
|
|
73
75
|
* @public
|
|
74
76
|
*/
|
|
75
|
-
export interface
|
|
76
|
-
/** Wire-visible `Provider.key` and the plugin `type`; unique per
|
|
77
|
+
export interface LighterDeployment {
|
|
78
|
+
/** Wire-visible `Provider.key` and the plugin `type`; unique per deployment. */
|
|
77
79
|
providerKey: LighterProviderKey;
|
|
78
80
|
restUrl: string;
|
|
79
81
|
wsUrl: string;
|
|
80
|
-
/**
|
|
81
|
-
* zkLighter L2 signing chain id to construct this instance's
|
|
82
|
-
* {@link LighterSigner} with.
|
|
83
|
-
*/
|
|
82
|
+
/** zkLighter L2 signing chain id this deployment's transactions are signed against. */
|
|
84
83
|
signerChainId: number;
|
|
85
84
|
/**
|
|
86
85
|
* Collateral asset this deployment settles in — signed into its withdrawals
|
|
@@ -89,56 +88,46 @@ export interface LighterInstanceConfig {
|
|
|
89
88
|
collateral: LighterCollateralAsset;
|
|
90
89
|
/**
|
|
91
90
|
* Explorer tx base URL for transfer-activity links (`${base}${txHash}`).
|
|
92
|
-
* When omitted, transfer links are not emitted for this
|
|
91
|
+
* When omitted, transfer links are not emitted for this deployment.
|
|
93
92
|
*/
|
|
94
93
|
explorerTxBaseUrl?: string;
|
|
95
94
|
}
|
|
96
95
|
/**
|
|
97
|
-
*
|
|
98
|
-
* `lighterWsProvider()` apply when constructed with no instance overrides.
|
|
96
|
+
* Lighter mainnet, as served by `lighterProvider()`.
|
|
99
97
|
*
|
|
100
98
|
* @public
|
|
101
99
|
*/
|
|
102
|
-
export declare const
|
|
100
|
+
export declare const LIGHTER_MAINNET_DEPLOYMENT: LighterDeployment;
|
|
103
101
|
/**
|
|
104
|
-
*
|
|
102
|
+
* REST base URL for the Lighter Robinhood deployment.
|
|
105
103
|
*
|
|
106
104
|
* @public
|
|
107
105
|
*/
|
|
108
106
|
export declare const LIGHTER_RH_REST_URL = "https://api.rh.lighter.xyz";
|
|
109
107
|
/**
|
|
110
|
-
*
|
|
108
|
+
* WebSocket URL for the Lighter Robinhood deployment.
|
|
111
109
|
*
|
|
112
110
|
* @public
|
|
113
111
|
*/
|
|
114
112
|
export declare const LIGHTER_RH_WS_URL = "wss://api.rh.lighter.xyz/stream";
|
|
115
113
|
/**
|
|
116
|
-
*
|
|
117
|
-
*
|
|
114
|
+
* zkLighter L2 signing chain id for the Lighter Robinhood deployment, from
|
|
115
|
+
* `elliottech/lighter-python` v1.1.2 `lighter/endpoint_profiles.py`
|
|
116
|
+
* (`ROBINHOOD.chain_id`) and its `signer_client.py` host fallback. Distinct
|
|
117
|
+
* from mainnet's 304 and from Robinhood's L1 chain id 4663 — signing with
|
|
118
|
+
* either yields a venue-rejected transaction.
|
|
118
119
|
*
|
|
119
120
|
* @public
|
|
120
121
|
*/
|
|
121
|
-
export
|
|
122
|
-
/**
|
|
123
|
-
* zkLighter L2 signing chain id for the RH instance. Unverified from public
|
|
124
|
-
* sources — must be the value confirmed against lighter-go / RH support, not
|
|
125
|
-
* mainnet's 304 nor the RH L1 chain id 4663.
|
|
126
|
-
*/
|
|
127
|
-
signerChainId: number;
|
|
128
|
-
/**
|
|
129
|
-
* RH zkLighter explorer tx base URL. Omit until confirmed; transfer links are
|
|
130
|
-
* then left unset rather than pointed at the mainnet explorer.
|
|
131
|
-
*/
|
|
132
|
-
explorerTxBaseUrl?: string;
|
|
133
|
-
}
|
|
122
|
+
export declare const LIGHTER_RH_SIGNER_CHAIN_ID = 466324;
|
|
134
123
|
/**
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
124
|
+
* Lighter on Robinhood chain, as served by `lighterRhProvider()`. No explorer
|
|
125
|
+
* base URL: the RH zkLighter explorer is unpublished, so transfer links are
|
|
126
|
+
* left unset rather than pointed at the mainnet explorer.
|
|
138
127
|
*
|
|
139
128
|
* @public
|
|
140
129
|
*/
|
|
141
|
-
export declare const
|
|
130
|
+
export declare const LIGHTER_RH_DEPLOYMENT: LighterDeployment;
|
|
142
131
|
/** @internal */
|
|
143
132
|
export declare const DEFAULT_TRADES_LIMIT = 50;
|
|
144
133
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAGpE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,YAAY,CAAA;AAE7C;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,eAAe,CAAA;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,SAAS,CAAA;AAE9C;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,wCAAwC,CAAA;AAC7E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,6CAA6C,CAAA;AAEhF
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAGpE;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,YAAY,CAAA;AAE7C;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,eAAe,CAAA;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,SAAS,CAAA;AAE9C;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,wCAAwC,CAAA;AAC7E;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,6CAA6C,CAAA;AAEhF;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,MAAM,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,2CACP,CAAA;AAE1C;;;;;;GAMG;AACH,MAAM,WAAW,sBAAsB;IACrC,gFAAgF;IAChF,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAC5C,kBAAkB,EAClB,sBAAsB,CAUvB,CAAA;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAChC,gFAAgF;IAChF,WAAW,EAAE,kBAAkB,CAAA;IAC/B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,uFAAuF;IACvF,aAAa,EAAE,MAAM,CAAA;IACrB;;;OAGG;IACH,UAAU,EAAE,sBAAsB,CAAA;IAClC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,iBAOvC,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,+BAA+B,CAAA;AAC/D;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,oCAAoC,CAAA;AAElE;;;;;;;;GAQG;AACH,eAAO,MAAM,0BAA0B,SAAS,CAAA;AAEhD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,EAAE,iBAOlC,CAAA;AAEF,gBAAgB;AAChB,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,UAAY,CAAA;AAE/C;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,EAAE,OAAoC,CAAA;AAExE;;;;;;GAMG;AACH,eAAO,MAAM,4BAA4B,MAAM,CAAA;AAE/C;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,MAAM,CAAA;AAE5C;;;;;;;;GAQG;AACH,eAAO,MAAM,qBAAqB,KAAK,CAAA;AAEvC,gBAAgB;AAChB,QAAA,MAAM,8BAA8B,QAAQ,CAAA;AAE5C;;;;GAIG;AACH,QAAA,MAAM,yBAAyB,QAAQ,CAAA;AAEvC;;;;;;GAMG;AACH,QAAA,MAAM,qBAAqB,aAAoB,CAAA;AAE/C;;;;;;GAMG;AACH,QAAA,MAAM,6BAA6B,MAAM,CAAA;AAEzC,OAAO,EACL,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,qBAAqB,GACtB,CAAA"}
|