@skate-org/amm-core-v2 2.0.0-beta.0 → 2.0.0-beta.2
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/CHANGELOG.md +54 -0
- package/dist/adapter/skate.d.ts +15 -0
- package/dist/adapter/skate.d.ts.map +1 -1
- package/dist/deployment/_notDeployed.d.ts +5 -0
- package/dist/deployment/_notDeployed.d.ts.map +1 -0
- package/dist/deployment/aggregated/_type_.d.ts +10 -2
- package/dist/deployment/aggregated/_type_.d.ts.map +1 -1
- package/dist/deployment/aggregated/dev.d.ts.map +1 -1
- package/dist/deployment/aggregated/retrieval.d.ts +19 -0
- package/dist/deployment/aggregated/retrieval.d.ts.map +1 -1
- package/dist/deployment/index.d.ts +1 -0
- package/dist/deployment/index.d.ts.map +1 -1
- package/dist/deployment/kernel.d.ts.map +1 -1
- package/dist/deployment/periphery.d.ts.map +1 -1
- package/dist/deployment/svm.d.ts +19 -0
- package/dist/deployment/svm.d.ts.map +1 -0
- package/dist/index.cjs +85 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +80 -11
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,59 @@
|
|
|
1
1
|
# @skate-org/amm-core-v2
|
|
2
2
|
|
|
3
|
+
## 2.0.0-beta.2 — 2026-05-17
|
|
4
|
+
|
|
5
|
+
SVM-side periphery wired into the deployment catalog. Solana mainnet
|
|
6
|
+
(chain_id 901) goes from "no deployment yet" to LIVE in DEV.
|
|
7
|
+
|
|
8
|
+
- **`deployment/svm.ts` (new):** `SVM_DEPLOYMENT_DEV` table per
|
|
9
|
+
`SvmChain` carrying deploy-wide pubkeys — `periphery_pool` program,
|
|
10
|
+
`action_box` program, `action_box state_v3` PDA, `task_ledger` PDA,
|
|
11
|
+
manager — plus a `SvmDeploymentFor(chain, mode)` accessor that
|
|
12
|
+
mirrors the kernel/periphery `…For(chain, mode)` pattern. Solana
|
|
13
|
+
mainnet (chain_id 901) is populated; Eclipse still empty.
|
|
14
|
+
STAGING / PRODUCTION throw `SdkError("not yet deployed")`.
|
|
15
|
+
- **`SvmPeripheryInfo` extended:** now carries the per-pool PDAs
|
|
16
|
+
(`peripheryPool`, `poolAuthority`, `dust`, `poolToken0Vault`,
|
|
17
|
+
`poolToken1Vault`) plus `manager` so builders can populate
|
|
18
|
+
`accountsStrict({...})` from the catalog without keypair math at
|
|
19
|
+
call time. `tokenProgramId0/1` / `token0/1` / `chain` carry over
|
|
20
|
+
from beta.1. Additive type change (existing fields kept).
|
|
21
|
+
- **`POOL_INFO_Dev.USDC_USDT.peripheryInfo[CHAIN.SOLANA]`
|
|
22
|
+
populated** with the deployed `usdc-usdt-1bps` pool — PDAs and
|
|
23
|
+
vaults verified on-chain 2026-05-15 against the handover repo at
|
|
24
|
+
`/home/phil/works/handover/amm/solana_contracts/skate_amm/
|
|
25
|
+
config/pools.deployment.json`. Same kernel route as Arbitrum
|
|
26
|
+
periphery — Solana joins as an additional periphery for the same
|
|
27
|
+
kernel pool.
|
|
28
|
+
- **Retrieval helpers** now report SOLANA alongside ARBITRUM:
|
|
29
|
+
`getSupportedChains("DEV")` returns `[CHAIN.SOLANA, CHAIN.ARBITRUM]`,
|
|
30
|
+
`findTokensBySymbol("USDC")` finds both the Arbitrum USDC ERC-20 and
|
|
31
|
+
the Solana USDC mint. Unit tests updated accordingly.
|
|
32
|
+
- **`svmBytes32Base58ToEvmAddress(value)` (new export)** in
|
|
33
|
+
`adapter/skate.ts`. Composes `bytes32ToEvmAddress(base58ToBytes32(...))`
|
|
34
|
+
for the common case of decoding an SVM-stored EVM address
|
|
35
|
+
(`kernel_pool`, `kernel_factory`) back to its 0x-prefixed lowercase
|
|
36
|
+
form. Used by `@skate-org/amm-svm-v2`'s `readPeripheryPool`.
|
|
37
|
+
|
|
38
|
+
## 2.0.0-beta.1 — 2026-05-07
|
|
39
|
+
|
|
40
|
+
Two new token-lookup helpers in `deployment/aggregated/retrieval.ts`:
|
|
41
|
+
|
|
42
|
+
- **`findTokensBySymbol(symbol, chainIds?, mode?)`** — search the
|
|
43
|
+
deployment catalog for tokens with a given symbol, optionally
|
|
44
|
+
filtered to specific chains. Symbol comparison is case-insensitive;
|
|
45
|
+
results are deduped by `(chainId, address)`. Pass `chainIds` as
|
|
46
|
+
`undefined` (or omit) to search every supported chain.
|
|
47
|
+
- **`getTokenSymbol(address, chainId, mode?)`** — reverse lookup;
|
|
48
|
+
returns the token symbol at `(address, chainId)`, or `null` if no
|
|
49
|
+
supported token matches. Address comparison is case-insensitive.
|
|
50
|
+
|
|
51
|
+
Both functions reuse the existing `getSupportedTokens` /
|
|
52
|
+
`getSupportedChains` accessors so they automatically pick up new pools
|
|
53
|
+
as the deployment table grows. 12 new unit tests covering case-
|
|
54
|
+
insensitive matching, dedup behavior, mixed-valid/invalid `chainIds`,
|
|
55
|
+
and unsupported-chain returns.
|
|
56
|
+
|
|
3
57
|
## 2.0.0-beta.0 — 2026-05-07
|
|
4
58
|
|
|
5
59
|
First **beta**. Promoted under the `beta` dist-tag; `latest` stays at
|
package/dist/adapter/skate.d.ts
CHANGED
|
@@ -5,6 +5,21 @@ export declare function hexToBase58(hexString: `0x${string}`): string;
|
|
|
5
5
|
export declare function bytes32ToBase58(hexStr: string): string;
|
|
6
6
|
export declare function evmAddressToBytes32(address: string): `0x${string}`;
|
|
7
7
|
export declare function bytes32ToEvmAddress(bytes32: string): `0x${string}`;
|
|
8
|
+
/**
|
|
9
|
+
* Decode the canonical SVM-side encoding of an EVM address back to its
|
|
10
|
+
* 0x-prefixed lowercase EVM form.
|
|
11
|
+
*
|
|
12
|
+
* SVM periphery contracts store cross-VM addresses (kernel pool, kernel
|
|
13
|
+
* factory, etc.) as base58 of the address left-padded to bytes32 — the
|
|
14
|
+
* "bytes32-base58" form produced at deploy time by
|
|
15
|
+
* `evmAddressToBytes32Base58`. SDK readers reverse it: base58-decode to
|
|
16
|
+
* 32 bytes, then truncate to the trailing 20-byte EVM address.
|
|
17
|
+
*
|
|
18
|
+
* Composition of two existing primitives, named for the common case so
|
|
19
|
+
* readers don't reinvent it. Any reader pulling an EVM address out of an
|
|
20
|
+
* SVM Anchor account should call this.
|
|
21
|
+
*/
|
|
22
|
+
export declare function svmBytes32Base58ToEvmAddress(value: string): `0x${string}`;
|
|
8
23
|
export declare function toBase58(buffer: Buffer): string;
|
|
9
24
|
export declare function bufferFromBase58(base58String: string): Buffer;
|
|
10
25
|
export declare function toBytes32Address(rawAddress: string, vmType: VM): `0x${string}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skate.d.ts","sourceRoot":"","sources":["../../src/adapter/skate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAE9B,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAMhE;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAG5D;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,KAAK,MAAM,EAAE,GAAG,MAAM,CAE5D;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAMtD;AAmBD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAKlE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAIlE;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,MAAM,EAAE,CAc9E;AAED,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,KAAK,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAWpF"}
|
|
1
|
+
{"version":3,"file":"skate.d.ts","sourceRoot":"","sources":["../../src/adapter/skate.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAE9B,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAMhE;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAG5D;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,KAAK,MAAM,EAAE,GAAG,MAAM,CAE5D;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAMtD;AAmBD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAKlE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAIlE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAEzE;AAED,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAE7D;AAED,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,KAAK,MAAM,EAAE,CAc9E;AAED,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,KAAK,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAWpF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { EnvMode } from "../types";
|
|
2
|
+
/** Shared "not yet deployed" guard for STAGING / PRODUCTION accessors.
|
|
3
|
+
* `surface` distinguishes which side is missing (kernel / periphery / SVM). */
|
|
4
|
+
export declare function notDeployed(scope: string, mode: Exclude<EnvMode, "DEV">, surface?: string): never;
|
|
5
|
+
//# sourceMappingURL=_notDeployed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_notDeployed.d.ts","sourceRoot":"","sources":["../../src/deployment/_notDeployed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGnC;gFACgF;AAChF,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,EAC7B,OAAO,SAAW,GACjB,KAAK,CAKP"}
|
|
@@ -11,9 +11,17 @@ export interface EvmPeripheryInfo {
|
|
|
11
11
|
chain: string;
|
|
12
12
|
}
|
|
13
13
|
export interface SvmPeripheryInfo {
|
|
14
|
-
/** Periphery pool PDA (base58
|
|
14
|
+
/** Periphery pool state PDA (base58). */
|
|
15
15
|
peripheryPool: string;
|
|
16
|
-
/**
|
|
16
|
+
/** Pool-authority PDA (base58, signer-only — has no on-chain account). */
|
|
17
|
+
poolAuthority: string;
|
|
18
|
+
/** Dust PDA (base58). */
|
|
19
|
+
dust: string;
|
|
20
|
+
/** Pool token0 vault PDA (base58). */
|
|
21
|
+
poolToken0Vault: string;
|
|
22
|
+
/** Pool token1 vault PDA (base58). */
|
|
23
|
+
poolToken1Vault: string;
|
|
24
|
+
/** Periphery manager pubkey (base58). Matches the deploy-wide manager. */
|
|
17
25
|
manager: string;
|
|
18
26
|
/** SPL or Token-2022 program id for token0. */
|
|
19
27
|
tokenProgramId0: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_type_.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/_type_.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,
|
|
1
|
+
{"version":3,"file":"_type_.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/_type_.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,OAAO,EAAE,KAAK,MAAM,EAAE,CAAC;IACvB,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,sCAAsC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,sCAAsC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,gBAAgB;IAC/B,yDAAyD;IACzD,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,KAAK,CAAC;IACd,MAAM,EAAE,KAAK,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,SAAS,KAAK,IAC1C,CAAC,SAAS,QAAQ,GAAG,gBAAgB,GACnC,CAAC,SAAS,QAAQ,GAAG,gBAAgB,GACrC,CAAC,SAAS,QAAQ,GAAG,gBAAgB,GACrC,KAAK,CAAC;AAEV,MAAM,MAAM,YAAY,GAAG,MAAM,CAC/B,OAAO,EACP;IACE,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE;SAAG,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC;KAAE,CAAC;CACvD,CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/dev.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,eAAO,MAAM,aAAa,EAAE,
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/dev.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,eAAO,MAAM,aAAa,EAAE,YAoD3B,CAAC"}
|
|
@@ -19,4 +19,23 @@ export declare function getOtherTokensInPairs(chainId: CHAIN, tokenAddress: stri
|
|
|
19
19
|
export declare function kernelPoolToPoolKey(kernelPool: `0x${string}`, mode?: EnvMode): PoolKey;
|
|
20
20
|
export declare function getPeripheryDetailsByKernelPoolAndChainId<K extends CHAIN>(kernelPool: `0x${string}`, chainId: K, mode?: EnvMode): PeripheryInfoFor<K> | null;
|
|
21
21
|
export declare function getPeripheryDetailsByKernelPoolAndChainId(kernelPool: `0x${string}`, chainId: number, mode?: EnvMode): PeripheryInfoFor<CHAIN> | null;
|
|
22
|
+
/**
|
|
23
|
+
* Find tokens by case-insensitive symbol across one or more chains.
|
|
24
|
+
*
|
|
25
|
+
* Same token symbol on different chains has different addresses, so the
|
|
26
|
+
* return type is `Array<Token>` (not a single record) — the same
|
|
27
|
+
* `(symbol, chainId)` pair always points at one token, but
|
|
28
|
+
* `(symbol, chainIds[])` may produce many.
|
|
29
|
+
*
|
|
30
|
+
* Pass `chainIds` undefined / omitted to search every supported chain.
|
|
31
|
+
*/
|
|
32
|
+
export declare function findTokensBySymbol(symbol: string, chainIds?: readonly CHAIN[], mode?: EnvMode): Token[];
|
|
33
|
+
/**
|
|
34
|
+
* Reverse lookup: return the symbol of the token at `address` on
|
|
35
|
+
* `chainId`, or `null` if no supported token matches that pair.
|
|
36
|
+
*
|
|
37
|
+
* Address comparison is case-insensitive; symbol is returned in the
|
|
38
|
+
* casing the deployment table records.
|
|
39
|
+
*/
|
|
40
|
+
export declare function getTokenSymbol(address: string, chainId: CHAIN, mode?: EnvMode): string | null;
|
|
22
41
|
//# sourceMappingURL=retrieval.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"retrieval.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/retrieval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAIjD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEjD,wBAAgB,cAAc,CAAC,IAAI,GAAE,OAAsB,GAAG,YAAY,CAMzE;AAED,wBAAgB,cAAc,CAAC,IAAI,GAAE,OAAsB,GAAG,OAAO,EAAE,CAEtE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,OAAsB;;;;;
|
|
1
|
+
{"version":3,"file":"retrieval.d.ts","sourceRoot":"","sources":["../../../src/deployment/aggregated/retrieval.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAIjD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEjD,wBAAgB,cAAc,CAAC,IAAI,GAAE,OAAsB,GAAG,YAAY,CAMzE;AAED,wBAAgB,cAAc,CAAC,IAAI,GAAE,OAAsB,GAAG,OAAO,EAAE,CAEtE;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,GAAE,OAAsB;;;;;iCAkClB,CAAA;SAhCxD;AAED,wBAAgB,kBAAkB,CAAC,IAAI,GAAE,OAAsB,GAAG,KAAK,EAAE,CASxE;AAED,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,KAAK,EACd,IAAI,GAAE,OAAsB,GAC3B,CAAC,SAAS,GAAG;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,EAAE,CActC;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,GAAE,OAAsB,GAAG,KAAK,EAAE,CAcxF;AAED,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,KAAK,EACd,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE,OAAsB,GAC3B,KAAK,EAAE,CAeT;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,KAAK,MAAM,EAAE,EAAE,IAAI,GAAE,OAAsB,GAAG,OAAO,CAOpG;AAED,wBAAgB,yCAAyC,CAAC,CAAC,SAAS,KAAK,EACvE,UAAU,EAAE,KAAK,MAAM,EAAE,EACzB,OAAO,EAAE,CAAC,EACV,IAAI,CAAC,EAAE,OAAO,GACb,gBAAgB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;AAC9B,wBAAgB,yCAAyC,CACvD,UAAU,EAAE,KAAK,MAAM,EAAE,EACzB,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,OAAO,GACb,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;AAWlC;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,SAAS,KAAK,EAAE,EAC3B,IAAI,GAAE,OAAsB,GAC3B,KAAK,EAAE,CAeT;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,EACd,IAAI,GAAE,OAAsB,GAC3B,MAAM,GAAG,IAAI,CAMf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deployment/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/deployment/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/deployment/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAkBjC,eAAO,MAAM,yBAAyB,+CAA+C,CAAC;AAoBtF,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAIjE,CAAC;AAEF,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAEhD;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../../src/deployment/kernel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAkBjC,eAAO,MAAM,yBAAyB,+CAA+C,CAAC;AAoBtF,eAAO,MAAM,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAIjE,CAAC;AAEF,uDAAuD;AACvD,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,CAEhD;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,MAAM,EAAE,CAGjE;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,OAAO,GAAG,KAAK,MAAM,EAAE,CAGtE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"periphery.d.ts","sourceRoot":"","sources":["../../src/deployment/periphery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAO1C,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,KAAK,MAAM,EAAE,CAAC;IACzB,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,KAAK,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;IAChC,oBAAoB,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,iBAAiB,EAAE,KAAK,MAAM,EAAE,CAAC;CAClC;AAED,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAWrE,CAAC;
|
|
1
|
+
{"version":3,"file":"periphery.d.ts","sourceRoot":"","sources":["../../src/deployment/periphery.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAO1C,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,KAAK,MAAM,EAAE,CAAC;IACzB,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,KAAK,MAAM,EAAE,CAAC;IACzB,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,gBAAgB,EAAE,KAAK,MAAM,EAAE,CAAC;IAChC,oBAAoB,EAAE,KAAK,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,KAAK,MAAM,EAAE,CAAC;IAC5B,iBAAiB,EAAE,KAAK,MAAM,EAAE,CAAC;CAClC;AAED,eAAO,MAAM,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,mBAAmB,CAAC,CAWrE,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,GACZ,mBAAmB,GAAG,IAAI,CAG5B;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,GACZ,KAAK,MAAM,EAAE,GAAG,IAAI,CAEtB;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,GACZ,KAAK,MAAM,EAAE,GAAG,IAAI,CAEtB;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,GACZ,KAAK,MAAM,EAAE,GAAG,IAAI,CAEtB;AAED,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,OAAO,GACZ,KAAK,MAAM,EAAE,GAAG,IAAI,CAEtB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { EnvMode } from "../types";
|
|
2
|
+
import type { SvmChain } from "../types/chain-vm";
|
|
3
|
+
/** Deploy-wide SVM pubkeys. Per-pool addresses live in
|
|
4
|
+
* `POOL_INFO_<mode>[<key>].peripheryInfo[<chain>]`. */
|
|
5
|
+
export interface SvmDeployment {
|
|
6
|
+
peripheryPoolProgramId: string;
|
|
7
|
+
actionBoxProgramId: string;
|
|
8
|
+
/** `action_box state_v3` PDA. One per deploy. */
|
|
9
|
+
actionBoxStateV3: string;
|
|
10
|
+
/** `task_ledger` PDA (replay bitmap). */
|
|
11
|
+
taskLedger: string;
|
|
12
|
+
/** Manager pubkey — also serves as gateway and task-ledger admin. */
|
|
13
|
+
manager: string;
|
|
14
|
+
}
|
|
15
|
+
export declare const SVM_DEPLOYMENT_DEV: Partial<Record<SvmChain, SvmDeployment>>;
|
|
16
|
+
/** Returns `null` for an unregistered SvmChain in DEV; throws for
|
|
17
|
+
* STAGING/PRODUCTION (no SVM deploy yet). */
|
|
18
|
+
export declare function SvmDeploymentFor(chain: SvmChain, mode: EnvMode): SvmDeployment | null;
|
|
19
|
+
//# sourceMappingURL=svm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"svm.d.ts","sourceRoot":"","sources":["../../src/deployment/svm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAGlD;wDACwD;AACxD,MAAM,WAAW,aAAa;IAC5B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iDAAiD;IACjD,gBAAgB,EAAE,MAAM,CAAC;IACzB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAQvE,CAAC;AAEF;8CAC8C;AAC9C,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,QAAQ,EACf,IAAI,EAAE,OAAO,GACZ,aAAa,GAAG,IAAI,CAGtB"}
|
package/dist/index.cjs
CHANGED
|
@@ -42,8 +42,10 @@ __export(index_exports, {
|
|
|
42
42
|
PeripheryDeploymentFor: () => PeripheryDeploymentFor,
|
|
43
43
|
PeripheryEventEmitterAddress: () => PeripheryEventEmitterAddress,
|
|
44
44
|
PeripheryManagerAddress: () => PeripheryManagerAddress,
|
|
45
|
+
SVM_DEPLOYMENT_DEV: () => SVM_DEPLOYMENT_DEV,
|
|
45
46
|
SdkError: () => SdkError,
|
|
46
47
|
SkateGatewayAddress: () => SkateGatewayAddress,
|
|
48
|
+
SvmDeploymentFor: () => SvmDeploymentFor,
|
|
47
49
|
TaskPhase: () => TaskPhase,
|
|
48
50
|
VM: () => VM,
|
|
49
51
|
addDelta: () => addDelta,
|
|
@@ -53,6 +55,7 @@ __export(index_exports, {
|
|
|
53
55
|
bytes32ToBase58: () => bytes32ToBase58,
|
|
54
56
|
bytes32ToEvmAddress: () => bytes32ToEvmAddress,
|
|
55
57
|
evmAddressToBytes32: () => evmAddressToBytes32,
|
|
58
|
+
findTokensBySymbol: () => findTokensBySymbol,
|
|
56
59
|
fromBytes32Address: () => fromBytes32Address,
|
|
57
60
|
getAllPoolInfo: () => getAllPoolInfo,
|
|
58
61
|
getAllPoolKeys: () => getAllPoolKeys,
|
|
@@ -73,12 +76,14 @@ __export(index_exports, {
|
|
|
73
76
|
getSupportedPairs: () => getSupportedPairs,
|
|
74
77
|
getSupportedTokens: () => getSupportedTokens,
|
|
75
78
|
getTickAtSqrtRatio: () => getTickAtSqrtRatio,
|
|
79
|
+
getTokenSymbol: () => getTokenSymbol,
|
|
76
80
|
hexToBase58: () => hexToBase58,
|
|
77
81
|
kernelPoolToPoolKey: () => kernelPoolToPoolKey,
|
|
78
82
|
mulDiv: () => mulDiv,
|
|
79
83
|
mulDivRoundingUp: () => mulDivRoundingUp,
|
|
80
84
|
normalizeMode: () => normalizeMode,
|
|
81
85
|
skateAdapter: () => skate_exports,
|
|
86
|
+
svmBytes32Base58ToEvmAddress: () => svmBytes32Base58ToEvmAddress,
|
|
82
87
|
toBase58: () => toBase58,
|
|
83
88
|
toBytes32Address: () => toBytes32Address,
|
|
84
89
|
vmTypeFromChain: () => vmTypeFromChain
|
|
@@ -228,6 +233,13 @@ var SdkError = class extends Error {
|
|
|
228
233
|
}
|
|
229
234
|
};
|
|
230
235
|
|
|
236
|
+
// src/deployment/_notDeployed.ts
|
|
237
|
+
function notDeployed(scope, mode, surface = "SDK v2") {
|
|
238
|
+
throw new SdkError(
|
|
239
|
+
`${scope}: ${surface} is not yet deployed to ${mode}; only DEV is wired today. Either pass mode="DEV" or wait for the v2 service to ship to ${mode}.`
|
|
240
|
+
);
|
|
241
|
+
}
|
|
242
|
+
|
|
231
243
|
// src/deployment/kernel.ts
|
|
232
244
|
var KERNEL_MANAGER_Dev = "0x17B7207837e8884f7f687f1f4057751BDAf70a01";
|
|
233
245
|
var KERNEL_EVENT_EMITTER_Dev = "0x8989b3ecb65f250ab7A0DC03589B0Cc8b8b04b81";
|
|
@@ -240,11 +252,6 @@ var KERNEL_CHAIN_BY_MODE = {
|
|
|
240
252
|
function KernelChain(mode) {
|
|
241
253
|
return KERNEL_CHAIN_BY_MODE[mode];
|
|
242
254
|
}
|
|
243
|
-
function notDeployed(scope, mode) {
|
|
244
|
-
throw new SdkError(
|
|
245
|
-
`${scope}: SDK v2 is not yet deployed to ${mode}; only DEV is wired today. Either pass mode="DEV" or wait for the v2 service to ship to ${mode}.`
|
|
246
|
-
);
|
|
247
|
-
}
|
|
248
255
|
function KernelManagerAddress(mode) {
|
|
249
256
|
if (mode === "DEV") return KERNEL_MANAGER_Dev;
|
|
250
257
|
return notDeployed("KernelManagerAddress", mode);
|
|
@@ -267,13 +274,8 @@ var PERIPHERY_DEV = {
|
|
|
267
274
|
peripheryPoolImpl: "0x803ed7fa8934D4fe51A276cA02506b585cdb3eb4"
|
|
268
275
|
}
|
|
269
276
|
};
|
|
270
|
-
function notDeployed2(scope, mode) {
|
|
271
|
-
throw new SdkError(
|
|
272
|
-
`${scope}: SDK v2 is not yet deployed to ${mode}; only DEV is wired today. Either pass mode="DEV" or wait for the v2 service to ship to ${mode}.`
|
|
273
|
-
);
|
|
274
|
-
}
|
|
275
277
|
function PeripheryDeploymentFor(chain, mode) {
|
|
276
|
-
if (mode !== "DEV") return
|
|
278
|
+
if (mode !== "DEV") return notDeployed("PeripheryDeploymentFor", mode);
|
|
277
279
|
return PERIPHERY_DEV[chain] ?? null;
|
|
278
280
|
}
|
|
279
281
|
function PeripheryManagerAddress(chain, mode) {
|
|
@@ -289,6 +291,21 @@ function ActionBoxAddress(chain, mode) {
|
|
|
289
291
|
return PeripheryDeploymentFor(chain, mode)?.actionBox ?? null;
|
|
290
292
|
}
|
|
291
293
|
|
|
294
|
+
// src/deployment/svm.ts
|
|
295
|
+
var SVM_DEPLOYMENT_DEV = {
|
|
296
|
+
[901 /* SOLANA */]: {
|
|
297
|
+
peripheryPoolProgramId: "SPPZB76TV1oSusXvGYQDK7KZGyLBmWbr8CuzNcjb98y",
|
|
298
|
+
actionBoxProgramId: "SABZ2zgj8G8jD7V9s6hSMkT1fvNyMavssNigmmTMqa2",
|
|
299
|
+
actionBoxStateV3: "G1qLtJDbkY4JBtD7sdjqGN8GJ38QRDbzp2fWEYY4apAh",
|
|
300
|
+
taskLedger: "SkTLHEfy9X3PeMVa2dEYysg9Ccq8KtNG7zYNTAaB1NV",
|
|
301
|
+
manager: "SGMSTk5t2gmiHKQjtb9XV6qviasgD5UKTsVMHLGCSZA"
|
|
302
|
+
}
|
|
303
|
+
};
|
|
304
|
+
function SvmDeploymentFor(chain, mode) {
|
|
305
|
+
if (mode !== "DEV") return notDeployed("SvmDeploymentFor", mode, "SDK v2 SVM side");
|
|
306
|
+
return SVM_DEPLOYMENT_DEV[chain] ?? null;
|
|
307
|
+
}
|
|
308
|
+
|
|
292
309
|
// src/deployment/aggregated/dev.ts
|
|
293
310
|
var POOL_INFO_Dev = {
|
|
294
311
|
USDC_USDT: {
|
|
@@ -314,6 +331,31 @@ var POOL_INFO_Dev = {
|
|
|
314
331
|
},
|
|
315
332
|
address: "0x0433CCB013a590eA4231aAC9ddf05bb753c14127",
|
|
316
333
|
chain: "ARBITRUM"
|
|
334
|
+
},
|
|
335
|
+
[901 /* SOLANA */]: {
|
|
336
|
+
token0: {
|
|
337
|
+
address: "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
|
|
338
|
+
symbol: "USDC",
|
|
339
|
+
isNative: false,
|
|
340
|
+
decimal: 6,
|
|
341
|
+
chainId: 901 /* SOLANA */
|
|
342
|
+
},
|
|
343
|
+
token1: {
|
|
344
|
+
address: "Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
|
|
345
|
+
symbol: "USDT",
|
|
346
|
+
isNative: false,
|
|
347
|
+
decimal: 6,
|
|
348
|
+
chainId: 901 /* SOLANA */
|
|
349
|
+
},
|
|
350
|
+
peripheryPool: "G2j8vLu3ryzUqPYpknpBcBLDcFiiRmXtB7z9Dpg9dVxe",
|
|
351
|
+
poolAuthority: "2Mvbo1TrsVeqyjQwNcdDDGjFNbwMk4tV8oD2TN2fV4Nw",
|
|
352
|
+
dust: "4m1AdUZvYJUSMTYpFH8df1JrgHTqUeKA3Xf7DapB4VcX",
|
|
353
|
+
poolToken0Vault: "BihGfVYmaT4KpiHiBLwH2ad9Q2ybYVHS2Bd3hQtzg486",
|
|
354
|
+
poolToken1Vault: "3DW4k4ims6dFB2cXBk5m1uAfh1zowuj9CzBbF4jm1FRh",
|
|
355
|
+
manager: "SGMSTk5t2gmiHKQjtb9XV6qviasgD5UKTsVMHLGCSZA",
|
|
356
|
+
tokenProgramId0: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
|
|
357
|
+
tokenProgramId1: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
|
|
358
|
+
chain: "SOLANA"
|
|
317
359
|
}
|
|
318
360
|
}
|
|
319
361
|
}
|
|
@@ -411,6 +453,29 @@ function getPeripheryDetailsByKernelPoolAndChainId(kernelPool, chainId, mode = "
|
|
|
411
453
|
const info = getAllPoolInfo(mode);
|
|
412
454
|
return info[poolKey]?.peripheryInfo[chainId] ?? null;
|
|
413
455
|
}
|
|
456
|
+
function findTokensBySymbol(symbol, chainIds, mode = "PRODUCTION") {
|
|
457
|
+
const normalized = symbol.toLowerCase();
|
|
458
|
+
const chains = chainIds ?? getSupportedChains(mode);
|
|
459
|
+
const out = [];
|
|
460
|
+
const seen = /* @__PURE__ */ new Set();
|
|
461
|
+
for (const chainId of chains) {
|
|
462
|
+
for (const t of getSupportedTokens(chainId, mode)) {
|
|
463
|
+
if (t.symbol.toLowerCase() !== normalized) continue;
|
|
464
|
+
const key = `${t.chainId}:${t.address.toLowerCase()}`;
|
|
465
|
+
if (seen.has(key)) continue;
|
|
466
|
+
seen.add(key);
|
|
467
|
+
out.push(t);
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
return out;
|
|
471
|
+
}
|
|
472
|
+
function getTokenSymbol(address, chainId, mode = "PRODUCTION") {
|
|
473
|
+
const needle = address.toLowerCase();
|
|
474
|
+
for (const t of getSupportedTokens(chainId, mode)) {
|
|
475
|
+
if (t.address.toLowerCase() === needle) return t.symbol;
|
|
476
|
+
}
|
|
477
|
+
return null;
|
|
478
|
+
}
|
|
414
479
|
|
|
415
480
|
// src/adapter/skate.ts
|
|
416
481
|
var skate_exports = {};
|
|
@@ -423,6 +488,7 @@ __export(skate_exports, {
|
|
|
423
488
|
evmAddressToBytes32: () => evmAddressToBytes32,
|
|
424
489
|
fromBytes32Address: () => fromBytes32Address,
|
|
425
490
|
hexToBase58: () => hexToBase58,
|
|
491
|
+
svmBytes32Base58ToEvmAddress: () => svmBytes32Base58ToEvmAddress,
|
|
426
492
|
toBase58: () => toBase58,
|
|
427
493
|
toBytes32Address: () => toBytes32Address
|
|
428
494
|
});
|
|
@@ -557,6 +623,9 @@ function bytes32ToEvmAddress(bytes32) {
|
|
|
557
623
|
const addressBigInt = userBigInt & BigInt("0xffffffffffffffffffffffffffffffffffffffff");
|
|
558
624
|
return `0x${addressBigInt.toString(16).padStart(40, "0")}`.toLowerCase();
|
|
559
625
|
}
|
|
626
|
+
function svmBytes32Base58ToEvmAddress(value) {
|
|
627
|
+
return bytes32ToEvmAddress(base58ToBytes32(value));
|
|
628
|
+
}
|
|
560
629
|
function toBase58(buffer) {
|
|
561
630
|
return bs58Encode(buffer);
|
|
562
631
|
}
|
|
@@ -960,8 +1029,10 @@ function addDelta(x, y) {
|
|
|
960
1029
|
PeripheryDeploymentFor,
|
|
961
1030
|
PeripheryEventEmitterAddress,
|
|
962
1031
|
PeripheryManagerAddress,
|
|
1032
|
+
SVM_DEPLOYMENT_DEV,
|
|
963
1033
|
SdkError,
|
|
964
1034
|
SkateGatewayAddress,
|
|
1035
|
+
SvmDeploymentFor,
|
|
965
1036
|
TaskPhase,
|
|
966
1037
|
VM,
|
|
967
1038
|
addDelta,
|
|
@@ -971,6 +1042,7 @@ function addDelta(x, y) {
|
|
|
971
1042
|
bytes32ToBase58,
|
|
972
1043
|
bytes32ToEvmAddress,
|
|
973
1044
|
evmAddressToBytes32,
|
|
1045
|
+
findTokensBySymbol,
|
|
974
1046
|
fromBytes32Address,
|
|
975
1047
|
getAllPoolInfo,
|
|
976
1048
|
getAllPoolKeys,
|
|
@@ -991,12 +1063,14 @@ function addDelta(x, y) {
|
|
|
991
1063
|
getSupportedPairs,
|
|
992
1064
|
getSupportedTokens,
|
|
993
1065
|
getTickAtSqrtRatio,
|
|
1066
|
+
getTokenSymbol,
|
|
994
1067
|
hexToBase58,
|
|
995
1068
|
kernelPoolToPoolKey,
|
|
996
1069
|
mulDiv,
|
|
997
1070
|
mulDivRoundingUp,
|
|
998
1071
|
normalizeMode,
|
|
999
1072
|
skateAdapter,
|
|
1073
|
+
svmBytes32Base58ToEvmAddress,
|
|
1000
1074
|
toBase58,
|
|
1001
1075
|
toBytes32Address,
|
|
1002
1076
|
vmTypeFromChain
|