sablier 3.10.0 → 3.11.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/CHANGELOG.md +18 -0
- package/dist/cjs/evm/chains/specs.js +9 -0
- package/dist/cjs/evm/chains/specs.js.map +1 -1
- package/dist/cjs/evm/helpers.js +2 -1
- package/dist/cjs/evm/helpers.js.map +1 -1
- package/dist/cjs/evm/index.js +2 -1
- package/dist/cjs/evm/index.js.map +1 -1
- package/dist/cjs/evm/releases/features.js +10 -0
- package/dist/cjs/evm/releases/features.js.map +1 -1
- package/dist/cjs/evm/types.js.map +1 -1
- package/dist/esm/evm/chains/specs.js +9 -0
- package/dist/esm/evm/chains/specs.js.map +1 -1
- package/dist/esm/evm/helpers.js +1 -1
- package/dist/esm/evm/helpers.js.map +1 -1
- package/dist/esm/evm/index.js +1 -1
- package/dist/esm/evm/index.js.map +1 -1
- package/dist/esm/evm/releases/features.js +9 -0
- package/dist/esm/evm/releases/features.js.map +1 -1
- package/dist/esm/evm/types.js.map +1 -1
- package/dist/types/evm/chains/specs.d.ts +9 -0
- package/dist/types/evm/chains/specs.d.ts.map +1 -1
- package/dist/types/evm/helpers.d.ts +1 -1
- package/dist/types/evm/helpers.d.ts.map +1 -1
- package/dist/types/evm/index.d.ts +1 -1
- package/dist/types/evm/index.d.ts.map +1 -1
- package/dist/types/evm/releases/features.d.ts +7 -0
- package/dist/types/evm/releases/features.d.ts.map +1 -1
- package/dist/types/evm/types.d.ts +1 -0
- package/dist/types/evm/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../../src/evm/chains/specs.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n abstract as _abstract,\n arbitrum as _arbitrum,\n arbitrumSepolia as _arbitrumSepolia,\n avalanche as _avalanche,\n base as _base,\n baseSepolia as _baseSepolia,\n battlechainTestnet as _battlechainTestnet,\n berachain as _berachain,\n blast as _blast,\n bsc as _bsc,\n chiliz as _chiliz,\n coreDao as _coreDao,\n gnosis as _gnosis,\n hyperEvm as _hyperEvm,\n lightlinkPhoenix as _lightlinkPhoenix,\n linea as _linea,\n lineaSepolia as _lineaSepolia,\n mainnet as _mainnet,\n mode as _mode,\n monad as _monad,\n morph as _morph,\n optimism as _optimism,\n optimismSepolia as _optimismSepolia,\n polygon as _polygon,\n ronin as _ronin,\n scroll as _scroll,\n sei as _sei,\n sepolia as _sepolia,\n sonic as _sonic,\n sophon as _sophon,\n superseed as _superseed,\n superseedSepolia as _superseedSepolia,\n taiko as _taiko,\n unichain as _unichain,\n xdc as _xdc,\n zksync as _zksync,\n zksyncSepoliaTestnet as _zksyncSepoliaTestnet,\n} from \"viem/chains\";\n// import { berachain } from \"viem/chains/definitions/zksync\";\nimport type { ChainSpec } from \"./builder.js\";\nimport { denergy, tangle } from \"./custom.js\";\n\nconst COIN_GECKO = {\n eth: \"ethereum\",\n mon: \"monad\",\n} as const;\n\nexport const chainSpecs = {\n /* -------------------------------------------------------------------------- */\n /* ABSTRACT */\n /* -------------------------------------------------------------------------- */\n abstract: {\n base: _abstract,\n meta: {\n coinGeckoPlatformId: \"abstract\",\n isZk: true,\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"abstract-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ARBITRUM */\n /* -------------------------------------------------------------------------- */\n arbitrum: {\n base: _arbitrum,\n meta: {\n coinGeckoPlatformId: \"arbitrum-one\",\n name: \"Arbitrum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\",\n },\n rpc: {\n alchemy: \"arb-mainnet\",\n infura: \"arbitrum-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ARBITRUM SEPOLIA */\n /* -------------------------------------------------------------------------- */\n arbitrumSepolia: {\n base: _arbitrumSepolia,\n meta: {\n slug: \"arbitrum-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n infura: \"arbitrum-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* AVALANCHE */\n /* -------------------------------------------------------------------------- */\n avalanche: {\n base: _avalanche,\n meta: {\n coinGeckoPlatformId: \"avalanche\",\n },\n nativeCurrency: {\n coinGeckoId: \"avalanche-2\",\n wrapperContract: \"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7\",\n },\n rpc: {\n alchemy: \"avax-mainnet\",\n infura: \"avalanche-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BASE */\n /* -------------------------------------------------------------------------- */\n base: {\n base: _base,\n meta: {\n coinGeckoPlatformId: \"base\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"base-mainnet\",\n infura: \"base-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BASE SEPOLIA */\n /* -------------------------------------------------------------------------- */\n baseSepolia: {\n base: _baseSepolia,\n meta: {\n slug: \"base-sepolia\",\n ui: \"SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"base-sepolia\",\n infura: \"base-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BATTLECHAIN TESTNET */\n /* -------------------------------------------------------------------------- */\n battlechainTestnet: {\n base: _battlechainTestnet,\n meta: {\n isZk: true,\n slug: \"battlechain-testnet\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BERACHAIN */\n /* -------------------------------------------------------------------------- */\n berachain: {\n base: _berachain,\n meta: {\n coinGeckoPlatformId: \"berachain\",\n },\n nativeCurrency: {\n coinGeckoId: \"berachain-bera\",\n wrapperContract: \"0x6969696969696969696969696969696969696969\",\n },\n rpc: {\n alchemy: \"berachain-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BLAST */\n /* -------------------------------------------------------------------------- */\n blast: {\n base: _blast,\n meta: {\n coinGeckoPlatformId: \"blast\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4300000000000000000000000000000000000004\",\n },\n rpc: {\n alchemy: \"blast-mainnet\",\n infura: \"blast-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BSC */\n /* -------------------------------------------------------------------------- */\n bsc: {\n base: _bsc,\n meta: {\n coinGeckoPlatformId: \"binance-smart-chain\",\n name: \"BNB Chain\",\n },\n nativeCurrency: {\n coinGeckoId: \"binancecoin\",\n wrapperContract: \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\",\n },\n rpc: {\n alchemy: \"bnb-mainnet\",\n infura: \"bsc-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* CHILIZ */\n /* -------------------------------------------------------------------------- */\n chiliz: {\n base: _chiliz,\n meta: {\n coinGeckoPlatformId: \"chiliz\",\n name: \"Chiliz\",\n },\n nativeCurrency: {\n coinGeckoId: \"chiliz\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://chiliscan.com\" },\n },\n rpcUrls: {\n default: {\n http: [\"https://rpc.chiliz.com\"],\n },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* CORE DAO */\n /* -------------------------------------------------------------------------- */\n coreDao: {\n base: _coreDao,\n meta: {\n coinGeckoPlatformId: \"core\",\n slug: \"core-dao\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"coredaoorg\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* DENERGY */\n /* -------------------------------------------------------------------------- */\n denergy: {\n base: denergy,\n meta: {},\n nativeCurrency: {\n coinGeckoId: \"watt\",\n wrapperContract: \"0x87fFB2d57f78d5A8E17db78F3290A367299b5B07\",\n },\n rpc: {\n routemesh: false,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* GNOSIS */\n /* -------------------------------------------------------------------------- */\n gnosis: {\n base: _gnosis,\n meta: {\n coinGeckoPlatformId: \"xdai\",\n },\n nativeCurrency: {\n coinGeckoId: \"dai\",\n wrapperContract: \"0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1\",\n },\n rpc: {\n alchemy: \"gnosis-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* HYPEREVM */\n /* -------------------------------------------------------------------------- */\n hyperevm: {\n base: _hyperEvm,\n meta: {\n coinGeckoPlatformId: \"hyperevm\",\n },\n nativeCurrency: {\n coinGeckoId: \"hyperliquid\",\n wrapperContract: \"0x5555555555555555555555555555555555555555\",\n },\n overrides: {\n contracts: {\n multicall3: {\n address: \"0xcA11bde05977b3631167028862bE2a173976CA11\",\n blockCreated: 13_051,\n },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LIGHTLINK */\n /* -------------------------------------------------------------------------- */\n lightlink: {\n base: _lightlinkPhoenix,\n meta: {\n coinGeckoPlatformId: \"lightlink\",\n name: \"Lightlink\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LINEA */\n /* -------------------------------------------------------------------------- */\n linea: {\n base: _linea,\n meta: {\n coinGeckoPlatformId: \"linea\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f\",\n },\n rpc: {\n alchemy: \"linea-mainnet\",\n infura: \"linea-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LINEA SEPOLIA */\n /* -------------------------------------------------------------------------- */\n lineaSepolia: {\n base: _lineaSepolia,\n meta: {\n name: \"Linea Sepolia\",\n slug: \"linea-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"linea-sepolia\",\n infura: \"linea-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MAINNET */\n /* -------------------------------------------------------------------------- */\n mainnet: {\n base: _mainnet,\n meta: {\n coinGeckoPlatformId: \"ethereum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\",\n },\n rpc: {\n alchemy: \"eth-mainnet\",\n infura: \"mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MODE */\n /* -------------------------------------------------------------------------- */\n mode: {\n base: _mode,\n meta: {\n coinGeckoPlatformId: \"mode\",\n name: \"Mode\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MONAD */\n /* -------------------------------------------------------------------------- */\n monad: {\n base: _monad,\n meta: {\n coinGeckoPlatformId: \"monad\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.mon,\n wrapperContract: \"0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://monadscan.com\" },\n },\n },\n rpc: {\n alchemy: \"monad-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MORPH */\n /* -------------------------------------------------------------------------- */\n morph: {\n base: _morph,\n meta: {\n coinGeckoPlatformId: \"morph-l2\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5300000000000000000000000000000000000011\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* OPTIMISM */\n /* -------------------------------------------------------------------------- */\n optimism: {\n base: _optimism,\n meta: {\n coinGeckoPlatformId: \"optimistic-ethereum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"opt-mainnet\",\n infura: \"optimism-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* OPTIMISM SEPOLIA */\n /* -------------------------------------------------------------------------- */\n optimismSepolia: {\n base: _optimismSepolia,\n meta: {\n slug: \"optimism-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"opt-sepolia\",\n infura: \"optimism-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* POLYGON */\n /* -------------------------------------------------------------------------- */\n polygon: {\n base: _polygon,\n meta: {\n coinGeckoPlatformId: \"polygon-pos\",\n },\n nativeCurrency: {\n coinGeckoId: \"polygon-ecosystem-token\",\n wrapperContract: \"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270\",\n },\n rpc: {\n alchemy: \"polygon-mainnet\",\n infura: \"polygon-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* RONIN */\n /* -------------------------------------------------------------------------- */\n ronin: {\n base: _ronin,\n meta: {\n coinGeckoPlatformId: \"ronin\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"ronin\",\n },\n rpc: {\n alchemy: \"ronin-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SCROLL */\n /* -------------------------------------------------------------------------- */\n scroll: {\n base: _scroll,\n meta: {\n coinGeckoPlatformId: \"scroll\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5300000000000000000000000000000000000004\",\n },\n rpc: {\n alchemy: \"scroll-mainnet\",\n infura: \"scroll-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SEI */\n /* -------------------------------------------------------------------------- */\n sei: {\n base: _sei,\n meta: {\n coinGeckoPlatformId: \"sei-v2\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"sei-network\",\n wrapperContract: \"0xE30feDd158A2e3b13e9badaeABaFc5516e95e8C7\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://seiscan.io\" },\n },\n rpcUrls: {\n default: {\n http: [\"https://evm-rpc.sei-apis.com\", \"https://sei.drpc.org\"],\n },\n },\n },\n rpc: {\n alchemy: \"sei-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SEPOLIA */\n /* -------------------------------------------------------------------------- */\n sepolia: {\n base: _sepolia,\n meta: {\n ui: \"SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x7b79995e5f793A07Bc00c21412e50Ecae098E7f9\",\n },\n rpc: {\n alchemy: \"eth-sepolia\",\n infura: \"sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SONIC */\n /* -------------------------------------------------------------------------- */\n sonic: {\n base: _sonic,\n meta: {\n coinGeckoPlatformId: \"sonic\",\n },\n nativeCurrency: {\n coinGeckoId: \"sonic-3\",\n wrapperContract: \"0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38\",\n },\n rpc: {\n alchemy: \"sonic-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SOPHON */\n /* -------------------------------------------------------------------------- */\n sophon: {\n base: _sophon,\n meta: {\n coinGeckoPlatformId: \"sophon\",\n isZk: true,\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"sophon\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://sophscan.xyz\" },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SUPERSEED */\n /* -------------------------------------------------------------------------- */\n superseed: {\n base: _superseed,\n meta: {\n coinGeckoPlatformId: \"superseed\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"superseed-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SUPERSEED SEPOLIA */\n /* -------------------------------------------------------------------------- */\n superseedSepolia: {\n base: _superseedSepolia,\n meta: {\n slug: \"superseed-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* TAIKO */\n /* -------------------------------------------------------------------------- */\n taiko: {\n base: _taiko,\n meta: {\n coinGeckoPlatformId: \"taiko\",\n name: \"Taiko\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* TANGLE */\n /* -------------------------------------------------------------------------- */\n tangle: {\n base: tangle,\n meta: {},\n nativeCurrency: {\n coinGeckoId: \"tangle-network\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* UNICHAIN */\n /* -------------------------------------------------------------------------- */\n unichain: {\n base: _unichain,\n meta: {\n coinGeckoPlatformId: \"unichain\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"unichain-mainnet\",\n infura: \"unichain-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* XDC */\n /* -------------------------------------------------------------------------- */\n xdc: {\n base: _xdc,\n meta: {\n coinGeckoPlatformId: \"xdc-network\",\n name: \"XDC\",\n },\n nativeCurrency: {\n coinGeckoId: \"xdce-crowd-sale\",\n wrapperContract: \"0x951857744785E80e2De051c32EE7b25f9c458C42\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ZKSYNC */\n /* -------------------------------------------------------------------------- */\n zksync: {\n base: _zksync,\n meta: {\n coinGeckoPlatformId: \"zksync\",\n isZk: true,\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5AEa5775959fBC2557Cc8789bC1bf90A239D9a91\",\n },\n overrides: {\n blockExplorers: {\n default: {\n apiUrl: \"https://block-explorer-api.mainnet.zksync.io/api\",\n name: \"ZKsync Explorer\",\n url: \"https://explorer.zksync.io\",\n },\n native: {\n apiUrl: \"https://block-explorer-api.mainnet.zksync.io/api\",\n name: \"ZKsync Explorer\",\n url: \"https://explorer.zksync.io\",\n },\n },\n },\n rpc: {\n alchemy: \"zksync-mainnet\",\n infura: \"zksync-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ZKSYNC SEPOLIA */\n /* -------------------------------------------------------------------------- */\n zksyncSepolia: {\n base: _zksyncSepoliaTestnet,\n meta: {\n isZk: true,\n slug: \"zksync-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n overrides: {\n blockExplorers: {\n default: {\n apiUrl: \"https://block-explorer-api.sepolia.zksync.dev/api\",\n name: \"ZKsync Explorer\",\n url: \"https://sepolia.explorer.zksync.io\",\n },\n },\n },\n },\n} satisfies Record<string, ChainSpec>;\n"]}
|
|
1
|
+
{"version":3,"file":"specs.js","sourceRoot":"","sources":["../../../../src/evm/chains/specs.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n abstract as _abstract,\n arbitrum as _arbitrum,\n arbitrumSepolia as _arbitrumSepolia,\n avalanche as _avalanche,\n base as _base,\n baseSepolia as _baseSepolia,\n battlechainTestnet as _battlechainTestnet,\n berachain as _berachain,\n blast as _blast,\n bsc as _bsc,\n chiliz as _chiliz,\n coreDao as _coreDao,\n gnosis as _gnosis,\n hyperEvm as _hyperEvm,\n lightlinkPhoenix as _lightlinkPhoenix,\n linea as _linea,\n lineaSepolia as _lineaSepolia,\n mainnet as _mainnet,\n mode as _mode,\n monad as _monad,\n morph as _morph,\n optimism as _optimism,\n optimismSepolia as _optimismSepolia,\n polygon as _polygon,\n ronin as _ronin,\n scroll as _scroll,\n sei as _sei,\n sepolia as _sepolia,\n sonic as _sonic,\n sophon as _sophon,\n superseed as _superseed,\n superseedSepolia as _superseedSepolia,\n taiko as _taiko,\n unichain as _unichain,\n xdc as _xdc,\n zksync as _zksync,\n zksyncSepoliaTestnet as _zksyncSepoliaTestnet,\n} from \"viem/chains\";\n// import { berachain } from \"viem/chains/definitions/zksync\";\nimport type { ChainSpec } from \"./builder.js\";\nimport { denergy, tangle } from \"./custom.js\";\n\nconst COIN_GECKO = {\n eth: \"ethereum\",\n mon: \"monad\",\n} as const;\n\nexport const chainSpecs = {\n /* -------------------------------------------------------------------------- */\n /* ABSTRACT */\n /* -------------------------------------------------------------------------- */\n abstract: {\n base: _abstract,\n meta: {\n coinGeckoPlatformId: \"abstract\",\n isZk: true,\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"abstract-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ARBITRUM */\n /* -------------------------------------------------------------------------- */\n arbitrum: {\n base: _arbitrum,\n meta: {\n coinGeckoPlatformId: \"arbitrum-one\",\n name: \"Arbitrum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\",\n },\n rpc: {\n alchemy: \"arb-mainnet\",\n infura: \"arbitrum-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ARBITRUM SEPOLIA */\n /* -------------------------------------------------------------------------- */\n arbitrumSepolia: {\n base: _arbitrumSepolia,\n meta: {\n slug: \"arbitrum-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n infura: \"arbitrum-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* AVALANCHE */\n /* -------------------------------------------------------------------------- */\n avalanche: {\n base: _avalanche,\n meta: {\n coinGeckoPlatformId: \"avalanche\",\n },\n nativeCurrency: {\n coinGeckoId: \"avalanche-2\",\n wrapperContract: \"0xB31f66AA3C1e785363F0875A1B74E27b85FD66c7\",\n },\n overrides: {\n blockExplorers: {\n default: {\n apiUrl: \"https://api.snowscan.xyz/api\",\n name: \"Snowscan\",\n url: \"https://snowscan.xyz\",\n },\n },\n },\n rpc: {\n alchemy: \"avax-mainnet\",\n infura: \"avalanche-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BASE */\n /* -------------------------------------------------------------------------- */\n base: {\n base: _base,\n meta: {\n coinGeckoPlatformId: \"base\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"base-mainnet\",\n infura: \"base-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BASE SEPOLIA */\n /* -------------------------------------------------------------------------- */\n baseSepolia: {\n base: _baseSepolia,\n meta: {\n slug: \"base-sepolia\",\n ui: \"SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"base-sepolia\",\n infura: \"base-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BATTLECHAIN TESTNET */\n /* -------------------------------------------------------------------------- */\n battlechainTestnet: {\n base: _battlechainTestnet,\n meta: {\n isZk: true,\n slug: \"battlechain-testnet\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BERACHAIN */\n /* -------------------------------------------------------------------------- */\n berachain: {\n base: _berachain,\n meta: {\n coinGeckoPlatformId: \"berachain\",\n },\n nativeCurrency: {\n coinGeckoId: \"berachain-bera\",\n wrapperContract: \"0x6969696969696969696969696969696969696969\",\n },\n rpc: {\n alchemy: \"berachain-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BLAST */\n /* -------------------------------------------------------------------------- */\n blast: {\n base: _blast,\n meta: {\n coinGeckoPlatformId: \"blast\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4300000000000000000000000000000000000004\",\n },\n rpc: {\n alchemy: \"blast-mainnet\",\n infura: \"blast-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* BSC */\n /* -------------------------------------------------------------------------- */\n bsc: {\n base: _bsc,\n meta: {\n coinGeckoPlatformId: \"binance-smart-chain\",\n name: \"BNB Chain\",\n },\n nativeCurrency: {\n coinGeckoId: \"binancecoin\",\n wrapperContract: \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\",\n },\n rpc: {\n alchemy: \"bnb-mainnet\",\n infura: \"bsc-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* CHILIZ */\n /* -------------------------------------------------------------------------- */\n chiliz: {\n base: _chiliz,\n meta: {\n coinGeckoPlatformId: \"chiliz\",\n name: \"Chiliz\",\n },\n nativeCurrency: {\n coinGeckoId: \"chiliz\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://chiliscan.com\" },\n },\n rpcUrls: {\n default: {\n http: [\"https://rpc.chiliz.com\"],\n },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* CORE DAO */\n /* -------------------------------------------------------------------------- */\n coreDao: {\n base: _coreDao,\n meta: {\n coinGeckoPlatformId: \"core\",\n slug: \"core-dao\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"coredaoorg\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* DENERGY */\n /* -------------------------------------------------------------------------- */\n denergy: {\n base: denergy,\n meta: {},\n nativeCurrency: {\n coinGeckoId: \"watt\",\n wrapperContract: \"0x87fFB2d57f78d5A8E17db78F3290A367299b5B07\",\n },\n rpc: {\n routemesh: false,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* GNOSIS */\n /* -------------------------------------------------------------------------- */\n gnosis: {\n base: _gnosis,\n meta: {\n coinGeckoPlatformId: \"xdai\",\n },\n nativeCurrency: {\n coinGeckoId: \"dai\",\n wrapperContract: \"0x6A023CCd1ff6F2045C3309768eAd9E68F978f6e1\",\n },\n rpc: {\n alchemy: \"gnosis-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* HYPEREVM */\n /* -------------------------------------------------------------------------- */\n hyperevm: {\n base: _hyperEvm,\n meta: {\n coinGeckoPlatformId: \"hyperevm\",\n },\n nativeCurrency: {\n coinGeckoId: \"hyperliquid\",\n wrapperContract: \"0x5555555555555555555555555555555555555555\",\n },\n overrides: {\n contracts: {\n multicall3: {\n address: \"0xcA11bde05977b3631167028862bE2a173976CA11\",\n blockCreated: 13_051,\n },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LIGHTLINK */\n /* -------------------------------------------------------------------------- */\n lightlink: {\n base: _lightlinkPhoenix,\n meta: {\n coinGeckoPlatformId: \"lightlink\",\n name: \"Lightlink\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LINEA */\n /* -------------------------------------------------------------------------- */\n linea: {\n base: _linea,\n meta: {\n coinGeckoPlatformId: \"linea\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f\",\n },\n rpc: {\n alchemy: \"linea-mainnet\",\n infura: \"linea-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* LINEA SEPOLIA */\n /* -------------------------------------------------------------------------- */\n lineaSepolia: {\n base: _lineaSepolia,\n meta: {\n name: \"Linea Sepolia\",\n slug: \"linea-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"linea-sepolia\",\n infura: \"linea-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MAINNET */\n /* -------------------------------------------------------------------------- */\n mainnet: {\n base: _mainnet,\n meta: {\n coinGeckoPlatformId: \"ethereum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\",\n },\n rpc: {\n alchemy: \"eth-mainnet\",\n infura: \"mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MODE */\n /* -------------------------------------------------------------------------- */\n mode: {\n base: _mode,\n meta: {\n coinGeckoPlatformId: \"mode\",\n name: \"Mode\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MONAD */\n /* -------------------------------------------------------------------------- */\n monad: {\n base: _monad,\n meta: {\n coinGeckoPlatformId: \"monad\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.mon,\n wrapperContract: \"0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://monadscan.com\" },\n },\n },\n rpc: {\n alchemy: \"monad-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* MORPH */\n /* -------------------------------------------------------------------------- */\n morph: {\n base: _morph,\n meta: {\n coinGeckoPlatformId: \"morph-l2\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5300000000000000000000000000000000000011\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* OPTIMISM */\n /* -------------------------------------------------------------------------- */\n optimism: {\n base: _optimism,\n meta: {\n coinGeckoPlatformId: \"optimistic-ethereum\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"opt-mainnet\",\n infura: \"optimism-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* OPTIMISM SEPOLIA */\n /* -------------------------------------------------------------------------- */\n optimismSepolia: {\n base: _optimismSepolia,\n meta: {\n slug: \"optimism-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"opt-sepolia\",\n infura: \"optimism-sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* POLYGON */\n /* -------------------------------------------------------------------------- */\n polygon: {\n base: _polygon,\n meta: {\n coinGeckoPlatformId: \"polygon-pos\",\n },\n nativeCurrency: {\n coinGeckoId: \"polygon-ecosystem-token\",\n wrapperContract: \"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270\",\n },\n rpc: {\n alchemy: \"polygon-mainnet\",\n infura: \"polygon-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* RONIN */\n /* -------------------------------------------------------------------------- */\n ronin: {\n base: _ronin,\n meta: {\n coinGeckoPlatformId: \"ronin\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"ronin\",\n },\n rpc: {\n alchemy: \"ronin-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SCROLL */\n /* -------------------------------------------------------------------------- */\n scroll: {\n base: _scroll,\n meta: {\n coinGeckoPlatformId: \"scroll\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5300000000000000000000000000000000000004\",\n },\n rpc: {\n alchemy: \"scroll-mainnet\",\n infura: \"scroll-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SEI */\n /* -------------------------------------------------------------------------- */\n sei: {\n base: _sei,\n meta: {\n coinGeckoPlatformId: \"sei-v2\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"sei-network\",\n wrapperContract: \"0xE30feDd158A2e3b13e9badaeABaFc5516e95e8C7\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://seiscan.io\" },\n },\n rpcUrls: {\n default: {\n http: [\"https://evm-rpc.sei-apis.com\", \"https://sei.drpc.org\"],\n },\n },\n },\n rpc: {\n alchemy: \"sei-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SEPOLIA */\n /* -------------------------------------------------------------------------- */\n sepolia: {\n base: _sepolia,\n meta: {\n ui: \"SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x7b79995e5f793A07Bc00c21412e50Ecae098E7f9\",\n },\n rpc: {\n alchemy: \"eth-sepolia\",\n infura: \"sepolia\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SONIC */\n /* -------------------------------------------------------------------------- */\n sonic: {\n base: _sonic,\n meta: {\n coinGeckoPlatformId: \"sonic\",\n },\n nativeCurrency: {\n coinGeckoId: \"sonic-3\",\n wrapperContract: \"0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38\",\n },\n rpc: {\n alchemy: \"sonic-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SOPHON */\n /* -------------------------------------------------------------------------- */\n sophon: {\n base: _sophon,\n meta: {\n coinGeckoPlatformId: \"sophon\",\n isZk: true,\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: \"sophon\",\n },\n overrides: {\n blockExplorers: {\n default: { name: \"Explorer\", url: \"https://sophscan.xyz\" },\n },\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SUPERSEED */\n /* -------------------------------------------------------------------------- */\n superseed: {\n base: _superseed,\n meta: {\n coinGeckoPlatformId: \"superseed\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n rpc: {\n alchemy: \"superseed-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* SUPERSEED SEPOLIA */\n /* -------------------------------------------------------------------------- */\n superseedSepolia: {\n base: _superseedSepolia,\n meta: {\n slug: \"superseed-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n },\n /* -------------------------------------------------------------------------- */\n /* TAIKO */\n /* -------------------------------------------------------------------------- */\n taiko: {\n base: _taiko,\n meta: {\n coinGeckoPlatformId: \"taiko\",\n name: \"Taiko\",\n ui: \"NOT_SUPPORTED\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* TANGLE */\n /* -------------------------------------------------------------------------- */\n tangle: {\n base: tangle,\n meta: {},\n nativeCurrency: {\n coinGeckoId: \"tangle-network\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* UNICHAIN */\n /* -------------------------------------------------------------------------- */\n unichain: {\n base: _unichain,\n meta: {\n coinGeckoPlatformId: \"unichain\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x4200000000000000000000000000000000000006\",\n },\n rpc: {\n alchemy: \"unichain-mainnet\",\n infura: \"unichain-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* XDC */\n /* -------------------------------------------------------------------------- */\n xdc: {\n base: _xdc,\n meta: {\n coinGeckoPlatformId: \"xdc-network\",\n name: \"XDC\",\n },\n nativeCurrency: {\n coinGeckoId: \"xdce-crowd-sale\",\n wrapperContract: \"0x951857744785E80e2De051c32EE7b25f9c458C42\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ZKSYNC */\n /* -------------------------------------------------------------------------- */\n zksync: {\n base: _zksync,\n meta: {\n coinGeckoPlatformId: \"zksync\",\n isZk: true,\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n wrapperContract: \"0x5AEa5775959fBC2557Cc8789bC1bf90A239D9a91\",\n },\n overrides: {\n blockExplorers: {\n default: {\n apiUrl: \"https://block-explorer-api.mainnet.zksync.io/api\",\n name: \"ZKsync Explorer\",\n url: \"https://explorer.zksync.io\",\n },\n native: {\n apiUrl: \"https://block-explorer-api.mainnet.zksync.io/api\",\n name: \"ZKsync Explorer\",\n url: \"https://explorer.zksync.io\",\n },\n },\n },\n rpc: {\n alchemy: \"zksync-mainnet\",\n infura: \"zksync-mainnet\",\n },\n },\n /* -------------------------------------------------------------------------- */\n /* ZKSYNC SEPOLIA */\n /* -------------------------------------------------------------------------- */\n zksyncSepolia: {\n base: _zksyncSepoliaTestnet,\n meta: {\n isZk: true,\n slug: \"zksync-sepolia\",\n },\n nativeCurrency: {\n coinGeckoId: COIN_GECKO.eth,\n },\n overrides: {\n blockExplorers: {\n default: {\n apiUrl: \"https://block-explorer-api.sepolia.zksync.dev/api\",\n name: \"ZKsync Explorer\",\n url: \"https://sepolia.explorer.zksync.io\",\n },\n },\n },\n },\n} satisfies Record<string, ChainSpec>;\n"]}
|
package/dist/esm/evm/helpers.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getContractExplorerURL as getContractExplorerURLInternal } from "../internal/utils/explorer-url.js";
|
|
2
2
|
import { getAliasCatalog } from "./contracts/alias-catalog.js";
|
|
3
3
|
import { Protocol } from "./enums.js";
|
|
4
|
-
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupShape, usesComptroller, usesLockupSplit, } from "./releases/features.js";
|
|
4
|
+
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupPublicWithdraw, supportsLockupShape, usesComptroller, usesLockupSplit, } from "./releases/features.js";
|
|
5
5
|
export function getContractExplorerURL(explorerURL, contractAddress) {
|
|
6
6
|
return getContractExplorerURLInternal(explorerURL, contractAddress);
|
|
7
7
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["// NOTE: evm/index.ts uses explicit named re-exports instead of `export *` for\n// this module. When adding or removing a public export here, mirror the change\n// in evm/index.ts. The \"barrel re-exports every helpers symbol\" test in\n// tests/package-exports.test.ts will catch any drift.\nimport { getContractExplorerURL as getContractExplorerURLInternal } from \"@/src/internal/utils/explorer-url.js\";\nimport type { Sablier, TruncateAddressOptions } from \"@/src/types.js\";\nimport { getAliasCatalog } from \"./contracts/alias-catalog.js\";\nimport { Protocol } from \"./enums.js\";\n\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./releases/features.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupShape,\n usesComptroller,\n usesLockupSplit,\n} from \"./releases/features.js\";\n\n/**\n * Get the explorer URL for a contract. Compatible with Etherscan, Blockscout, etc.\n * @param explorerURL - The base explorer URL, e.g. https://etherscan.io\n * @param contractAddress - The contract object\n * @returns The explorer URL for the contract, e.g. https://etherscan.io/address/0x123...\n */\nexport function getContractExplorerURL(explorerURL: string, contractAddress: Sablier.EVM.Address) {\n return getContractExplorerURLInternal(explorerURL, contractAddress);\n}\n\n/**\n * Constructs a stream/airdrop entity ID for EVM chains in the format used by Sablier indexers.\n * Format: `{contractAddress}-{chainId}-{tokenId}`\n *\n * The contract address is lowercased for normalization, as EVM addresses are case-insensitive.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.tokenId - Stream/airdrop token ID\n * @param opts.protocol - Optional protocol to disambiguate aliases\n * @returns Stream ID in format \"0xabc...-1-123\"\n * @example\n * resolveEvmStreamId({ alias: \"LL2\", chainId: 1, tokenId: 123n })\n * // => \"0xabc...-1-123\"\n */\nexport function resolveEvmStreamId(opts: {\n alias: string;\n chainId: number;\n tokenId: bigint | string | number;\n protocol?: Sablier.EVM.Protocol;\n}): string {\n const { alias, chainId, tokenId, protocol } = opts;\n\n const contract = resolveEvmContractByAlias({ alias, chainId, protocol });\n return `${contract.address.toLowerCase()}-${chainId}-${tokenId}`;\n}\n\n/**\n * Resolves an EVM contract by its alias from the alias catalog.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.protocol - Optional protocol to disambiguate aliases that exist in multiple protocols\n * @returns The resolved contract\n * @throws Error if alias is not found or is ambiguous without protocol specified\n * @example\n * resolveEvmContractByAlias({ alias: \"LL2\", chainId: 1 })\n * // => { address: \"0x...\", name: \"SablierLockupLinear\", ... }\n */\nexport function resolveEvmContractByAlias(opts: {\n alias: string;\n chainId: number;\n protocol?: Sablier.EVM.Protocol;\n}): Sablier.EVM.Contract {\n const { alias, chainId, protocol } = opts;\n const aliasCatalog = getAliasCatalog();\n\n if (protocol) {\n const contract = aliasCatalog[protocol]?.[chainId]?.[alias];\n if (!contract) {\n throw new Error(\n `Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId} for protocol \"${protocol}\"`\n );\n }\n return contract;\n }\n\n const protocols: Sablier.EVM.Protocol[] = [\n Protocol.Airdrops,\n Protocol.Bob,\n Protocol.Flow,\n Protocol.Legacy,\n Protocol.Lockup,\n ];\n\n const matches = protocols\n .map((p) => aliasCatalog[p]?.[chainId]?.[alias])\n .filter(Boolean) as Sablier.EVM.Contract[];\n\n if (matches.length === 0) {\n throw new Error(`Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId}`);\n }\n\n if (matches.length > 1) {\n throw new Error(\n `Sablier SDK: Ambiguous EVM contract alias \"${alias}\" on chain ${chainId}; specify protocol`\n );\n }\n\n return matches[0];\n}\n\n/**\n * Truncate an Ethereum address for display purposes.\n * @param address - The Ethereum address to truncate (0x-prefixed)\n * @param options - Truncation options with start/end character counts (default: 4 each, must be >= 1)\n * @returns Truncated address in format \"0xcafe...beef\" or original if too short\n * @example\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\") // \"0x1234...5678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 6, end: 6 }) // \"0x123456...345678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 2, end: 6 }) // \"0x12...345678\"\n * truncateEvmAddress(\"0x123\") // \"0x123\" (too short, returns original)\n */\nexport function truncateEvmAddress(\n address: Sablier.EVM.Address,\n options?: TruncateAddressOptions\n): string {\n if (!address) {\n return address;\n }\n\n const start = options?.start ?? 4;\n const end = options?.end ?? 4;\n const minLength = 2 + start + end;\n\n if (address.length <= minLength) {\n return address;\n }\n\n const prefix = address.slice(0, 2 + start);\n const suffix = end === 0 ? \"\" : address.slice(-end);\n\n return `${prefix}...${suffix}`;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":"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","sourcesContent":["// NOTE: evm/index.ts uses explicit named re-exports instead of `export *` for\n// this module. When adding or removing a public export here, mirror the change\n// in evm/index.ts. The \"barrel re-exports every helpers symbol\" test in\n// tests/package-exports.test.ts will catch any drift.\nimport { getContractExplorerURL as getContractExplorerURLInternal } from \"@/src/internal/utils/explorer-url.js\";\nimport type { Sablier, TruncateAddressOptions } from \"@/src/types.js\";\nimport { getAliasCatalog } from \"./contracts/alias-catalog.js\";\nimport { Protocol } from \"./enums.js\";\n\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./releases/features.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupPublicWithdraw,\n supportsLockupShape,\n usesComptroller,\n usesLockupSplit,\n} from \"./releases/features.js\";\n\n/**\n * Get the explorer URL for a contract. Compatible with Etherscan, Blockscout, etc.\n * @param explorerURL - The base explorer URL, e.g. https://etherscan.io\n * @param contractAddress - The contract object\n * @returns The explorer URL for the contract, e.g. https://etherscan.io/address/0x123...\n */\nexport function getContractExplorerURL(explorerURL: string, contractAddress: Sablier.EVM.Address) {\n return getContractExplorerURLInternal(explorerURL, contractAddress);\n}\n\n/**\n * Constructs a stream/airdrop entity ID for EVM chains in the format used by Sablier indexers.\n * Format: `{contractAddress}-{chainId}-{tokenId}`\n *\n * The contract address is lowercased for normalization, as EVM addresses are case-insensitive.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.tokenId - Stream/airdrop token ID\n * @param opts.protocol - Optional protocol to disambiguate aliases\n * @returns Stream ID in format \"0xabc...-1-123\"\n * @example\n * resolveEvmStreamId({ alias: \"LL2\", chainId: 1, tokenId: 123n })\n * // => \"0xabc...-1-123\"\n */\nexport function resolveEvmStreamId(opts: {\n alias: string;\n chainId: number;\n tokenId: bigint | string | number;\n protocol?: Sablier.EVM.Protocol;\n}): string {\n const { alias, chainId, tokenId, protocol } = opts;\n\n const contract = resolveEvmContractByAlias({ alias, chainId, protocol });\n return `${contract.address.toLowerCase()}-${chainId}-${tokenId}`;\n}\n\n/**\n * Resolves an EVM contract by its alias from the alias catalog.\n *\n * @param opts - Configuration object\n * @param opts.alias - Contract alias (e.g., \"LL2\", \"LK2\", \"FL2\")\n * @param opts.chainId - Chain ID where the contract is deployed\n * @param opts.protocol - Optional protocol to disambiguate aliases that exist in multiple protocols\n * @returns The resolved contract\n * @throws Error if alias is not found or is ambiguous without protocol specified\n * @example\n * resolveEvmContractByAlias({ alias: \"LL2\", chainId: 1 })\n * // => { address: \"0x...\", name: \"SablierLockupLinear\", ... }\n */\nexport function resolveEvmContractByAlias(opts: {\n alias: string;\n chainId: number;\n protocol?: Sablier.EVM.Protocol;\n}): Sablier.EVM.Contract {\n const { alias, chainId, protocol } = opts;\n const aliasCatalog = getAliasCatalog();\n\n if (protocol) {\n const contract = aliasCatalog[protocol]?.[chainId]?.[alias];\n if (!contract) {\n throw new Error(\n `Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId} for protocol \"${protocol}\"`\n );\n }\n return contract;\n }\n\n const protocols: Sablier.EVM.Protocol[] = [\n Protocol.Airdrops,\n Protocol.Bob,\n Protocol.Flow,\n Protocol.Legacy,\n Protocol.Lockup,\n ];\n\n const matches = protocols\n .map((p) => aliasCatalog[p]?.[chainId]?.[alias])\n .filter(Boolean) as Sablier.EVM.Contract[];\n\n if (matches.length === 0) {\n throw new Error(`Sablier SDK: Unknown EVM contract alias \"${alias}\" on chain ${chainId}`);\n }\n\n if (matches.length > 1) {\n throw new Error(\n `Sablier SDK: Ambiguous EVM contract alias \"${alias}\" on chain ${chainId}; specify protocol`\n );\n }\n\n return matches[0];\n}\n\n/**\n * Truncate an Ethereum address for display purposes.\n * @param address - The Ethereum address to truncate (0x-prefixed)\n * @param options - Truncation options with start/end character counts (default: 4 each, must be >= 1)\n * @returns Truncated address in format \"0xcafe...beef\" or original if too short\n * @example\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\") // \"0x1234...5678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 6, end: 6 }) // \"0x123456...345678\"\n * truncateEvmAddress(\"0x1234567890abcdef1234567890abcdef12345678\", { start: 2, end: 6 }) // \"0x12...345678\"\n * truncateEvmAddress(\"0x123\") // \"0x123\" (too short, returns original)\n */\nexport function truncateEvmAddress(\n address: Sablier.EVM.Address,\n options?: TruncateAddressOptions\n): string {\n if (!address) {\n return address;\n }\n\n const start = options?.start ?? 4;\n const end = options?.end ?? 4;\n const minLength = 2 + start + end;\n\n if (address.length <= minLength) {\n return address;\n }\n\n const prefix = address.slice(0, 2 + start);\n const suffix = end === 0 ? \"\" : address.slice(-end);\n\n return `${prefix}...${suffix}`;\n}\n"]}
|
package/dist/esm/evm/index.js
CHANGED
|
@@ -4,6 +4,6 @@ export { comptroller } from "./comptroller/index.js";
|
|
|
4
4
|
export * from "./contracts/index.js";
|
|
5
5
|
export * as csv from "./csv/index.js";
|
|
6
6
|
export * from "./enums.js";
|
|
7
|
-
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getContractExplorerURL, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, resolveEvmContractByAlias, resolveEvmStreamId, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupShape, truncateEvmAddress, usesComptroller, usesLockupSplit, } from "./helpers.js";
|
|
7
|
+
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getContractExplorerURL, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, resolveEvmContractByAlias, resolveEvmStreamId, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupPublicWithdraw, supportsLockupShape, truncateEvmAddress, usesComptroller, usesLockupSplit, } from "./helpers.js";
|
|
8
8
|
export * from "./releases/index.js";
|
|
9
9
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/evm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,cAAc,YAAY,CAAC;AAe3B,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,cAAc,qBAAqB,CAAC","sourcesContent":["export { chains } from \"./chains/index.js\";\nexport * from \"./compatibility.js\";\nexport { comptroller } from \"./comptroller/index.js\";\nexport * from \"./contracts/index.js\";\nexport * as csv from \"./csv/index.js\";\nexport * from \"./enums.js\";\n// Re-export the release-feature helpers explicitly from the `sablier/evm`\n// entrypoint instead of relying only on `export * from \"./helpers.js\"`.\n//\n// Some downstream type-checkers were able to see simple barrel exports such as\n// `enums`, but failed to resolve these helper names through the extra\n// `evm -> helpers -> releases/features` re-export hop. Listing them here keeps\n// the generated `dist/types/evm/index.d.ts` surface direct and easier for\n// consumers to resolve.\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./helpers.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getContractExplorerURL,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n resolveEvmContractByAlias,\n resolveEvmStreamId,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupShape,\n truncateEvmAddress,\n usesComptroller,\n usesLockupSplit,\n} from \"./helpers.js\";\nexport * from \"./releases/index.js\";\n"]}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/evm/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,OAAO,KAAK,GAAG,MAAM,gBAAgB,CAAC;AACtC,cAAc,YAAY,CAAC;AAe3B,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,eAAe,GAChB,MAAM,cAAc,CAAC;AACtB,cAAc,qBAAqB,CAAC","sourcesContent":["export { chains } from \"./chains/index.js\";\nexport * from \"./compatibility.js\";\nexport { comptroller } from \"./comptroller/index.js\";\nexport * from \"./contracts/index.js\";\nexport * as csv from \"./csv/index.js\";\nexport * from \"./enums.js\";\n// Re-export the release-feature helpers explicitly from the `sablier/evm`\n// entrypoint instead of relying only on `export * from \"./helpers.js\"`.\n//\n// Some downstream type-checkers were able to see simple barrel exports such as\n// `enums`, but failed to resolve these helper names through the extra\n// `evm -> helpers -> releases/features` re-export hop. Listing them here keeps\n// the generated `dist/types/evm/index.d.ts` surface direct and easier for\n// consumers to resolve.\nexport type {\n EvmReleaseFeatureSetByProtocol,\n EvmReleaseVersionByProtocol,\n PayableEvmProtocol,\n ReleaseFeaturesForProtocol,\n} from \"./helpers.js\";\nexport {\n evmReleaseFeatures,\n getAirdropsReleaseFeatures,\n getContractExplorerURL,\n getEvmReleaseFeatures,\n getFlowReleaseFeatures,\n getLockupReleaseFeatures,\n hasClaimTo,\n hasOnchainMinFee,\n hasSimpleTransfer,\n hasSplitLockupArchitecture,\n hasSponsor,\n isEvmReleasePayable,\n resolveEvmContractByAlias,\n resolveEvmStreamId,\n supportsLockupBatch,\n supportsLockupPrbProxy,\n supportsLockupPublicWithdraw,\n supportsLockupShape,\n truncateEvmAddress,\n usesComptroller,\n usesLockupSplit,\n} from \"./helpers.js\";\nexport * from \"./releases/index.js\";\n"]}
|
|
@@ -48,6 +48,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
48
48
|
minFee: false,
|
|
49
49
|
payable: false,
|
|
50
50
|
prbProxy: true,
|
|
51
|
+
publicWithdraw: false,
|
|
51
52
|
shape: false,
|
|
52
53
|
},
|
|
53
54
|
[Version.Lockup.V1_1]: {
|
|
@@ -57,6 +58,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
57
58
|
minFee: false,
|
|
58
59
|
payable: false,
|
|
59
60
|
prbProxy: false,
|
|
61
|
+
publicWithdraw: false,
|
|
60
62
|
shape: false,
|
|
61
63
|
},
|
|
62
64
|
[Version.Lockup.V1_2]: {
|
|
@@ -66,6 +68,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
66
68
|
minFee: false,
|
|
67
69
|
payable: false,
|
|
68
70
|
prbProxy: false,
|
|
71
|
+
publicWithdraw: true,
|
|
69
72
|
shape: false,
|
|
70
73
|
},
|
|
71
74
|
[Version.Lockup.V2_0]: {
|
|
@@ -75,6 +78,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
75
78
|
minFee: false,
|
|
76
79
|
payable: true,
|
|
77
80
|
prbProxy: false,
|
|
81
|
+
publicWithdraw: true,
|
|
78
82
|
shape: true,
|
|
79
83
|
},
|
|
80
84
|
[Version.Lockup.V3_0]: {
|
|
@@ -84,6 +88,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
84
88
|
minFee: true,
|
|
85
89
|
payable: true,
|
|
86
90
|
prbProxy: false,
|
|
91
|
+
publicWithdraw: true,
|
|
87
92
|
shape: true,
|
|
88
93
|
},
|
|
89
94
|
[Version.Lockup.V4_0]: {
|
|
@@ -93,6 +98,7 @@ export const evmReleaseFeatures = deepFreeze({
|
|
|
93
98
|
minFee: true,
|
|
94
99
|
payable: true,
|
|
95
100
|
prbProxy: false,
|
|
101
|
+
publicWithdraw: true,
|
|
96
102
|
shape: true,
|
|
97
103
|
},
|
|
98
104
|
},
|
|
@@ -192,6 +198,9 @@ export function supportsLockupBatch(version) {
|
|
|
192
198
|
export function supportsLockupPrbProxy(version) {
|
|
193
199
|
return getLockupReleaseFeatures(version)?.prbProxy ?? false;
|
|
194
200
|
}
|
|
201
|
+
export function supportsLockupPublicWithdraw(version) {
|
|
202
|
+
return getLockupReleaseFeatures(version)?.publicWithdraw ?? false;
|
|
203
|
+
}
|
|
195
204
|
export function supportsLockupShape(version) {
|
|
196
205
|
return getLockupReleaseFeatures(version)?.shape ?? false;
|
|
197
206
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../../../src/evm/releases/features.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Canonical capability registry for every shipped EVM release.\n *\n * Release builders attach these feature bags to exported release objects, and\n * helper functions read from the same registry so version-dependent behavior\n * stays defined in one place.\n */\nimport { Protocol, Version } from \"@/src/evm/enums.js\";\nimport type { Sablier } from \"@/src/types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* TYPES */\n/* -------------------------------------------------------------------------- */\n\nexport type EvmReleaseVersionByProtocol = {\n airdrops: Sablier.EVM.Version.Airdrops;\n bob: Sablier.EVM.Version.Bob;\n flow: Sablier.EVM.Version.Flow;\n legacy: Sablier.EVM.Version.Legacy;\n lockup: Sablier.EVM.Version.Lockup;\n};\n\nexport type EvmReleaseFeatureSetByProtocol = {\n airdrops: Sablier.EVM.AirdropsReleaseFeatures;\n bob: Sablier.EVM.EmptyReleaseFeatures;\n flow: Sablier.EVM.FlowReleaseFeatures;\n legacy: Sablier.EVM.EmptyReleaseFeatures;\n lockup: Sablier.EVM.LockupReleaseFeatures;\n};\n\ntype EvmReleaseFeatureRegistry = {\n [TProtocol in keyof EvmReleaseVersionByProtocol]: Record<\n EvmReleaseVersionByProtocol[TProtocol],\n EvmReleaseFeatureSetByProtocol[TProtocol]\n >;\n};\n\nexport type ReleaseFeaturesForProtocol<TProtocol extends keyof EvmReleaseFeatureSetByProtocol> =\n EvmReleaseFeatureSetByProtocol[TProtocol];\n\ntype ProtocolFeatureSet<TProtocol extends keyof EvmReleaseFeatureSetByProtocol> =\n EvmReleaseFeatureSetByProtocol[TProtocol];\n\ntype ProtocolWithBooleanFeature<TFeature extends PropertyKey> = {\n [TProtocol in keyof EvmReleaseFeatureSetByProtocol]: ProtocolFeatureSet<TProtocol> extends Record<\n TFeature,\n boolean\n >\n ? TProtocol\n : never;\n}[keyof EvmReleaseFeatureSetByProtocol];\n\ntype EvmReleaseReference = Pick<Sablier.EVM.Release, \"protocol\" | \"version\">;\ntype PayableEvmReleaseReference = {\n [TProtocol in PayableEvmProtocol]: {\n protocol: TProtocol;\n version: EvmReleaseVersionByProtocol[TProtocol];\n };\n}[PayableEvmProtocol];\n\nfunction deepFreeze<T>(value: T): T {\n if (typeof value !== \"object\" || value === null || Object.isFrozen(value)) {\n return value;\n }\n\n for (const nestedValue of Object.values(value as Record<string, unknown>)) {\n deepFreeze(nestedValue);\n }\n\n return Object.freeze(value);\n}\n\nconst emptyReleaseFeatures = deepFreeze({} as const satisfies Sablier.EVM.EmptyReleaseFeatures);\n\n/**\n * Protocol/version feature matrix used by both release resolvers and public helpers.\n *\n * Feature glossary:\n * - `claimTo`: Airdrops campaigns can redirect claims to a third-party recipient; introduced in `airdrops@v2.0`\n *\n * - `comptroller`: Release contracts take a Comptroller reference (`ISablierComptroller` or the legacy\n * `ISablierV2Comptroller`) that governs fee administration. True for `airdrops@v2.0+`, `flow@v2.0+`,\n * `lockup@v1.0`, `lockup@v1.1`, and `lockup@v3.0+`. Lockup v1.2 and v2.0 intentionally dropped the Comptroller wiring\n *\n * - `sponsor`: Airdrops campaigns expose the `sponsor` function; introduced in `airdrops@v3.0`\n *\n * - `payable`: Release entrypoints accept native-token value for protocol fees. This first appears in\n * `airdrops@v1.3`, `flow@v1.1`, and `lockup@v2.0`\n *\n * - `contractMinFee`: Contracts expose an onchain minimum-fee calculation; introduced in `flow@v2.0` and adopted by\n * Lockup in `lockup@v3.0`\n *\n * - `batch`: Lockup releases support batched execution helpers; introduced in `lockup@v2.0`\n *\n * - `shape`: Lockup create flows emit and consume canonical shape identifiers; introduced in `lockup@v2.0`\n *\n * - `simpleTransfer`: Flow releases expose a `transferTokens` wrapper that lets the contract forward an ERC-20 transfer\n * on behalf of the caller; introduced in `flow@v2.0`\n *\n * - `legacyAbi`: Lockup still uses the pre-`lockup@v1.2` split ABI layout and old hook interface; cleared when\n * `lockup@v1.2` shipped the new hook system\n *\n * - `prbProxy`: Lockup still uses the original `prbProxy` deployment wiring from `lockup@v1.0`; this is only true for\n * that initial release and is cleared from `lockup@v1.1` onward\n *\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/airdrops@v3.0/airdrops/CHANGELOG.md}\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/flow@v3.0/flow/CHANGELOG.md}\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/lockup@v4.0/lockup/CHANGELOG.md}\n */\nexport const evmReleaseFeatures = deepFreeze({\n [Protocol.Airdrops]: {\n [Version.Airdrops.V1_1]: { claimTo: false, comptroller: false, payable: false, sponsor: false },\n [Version.Airdrops.V1_2]: { claimTo: false, comptroller: false, payable: false, sponsor: false },\n [Version.Airdrops.V1_3]: { claimTo: false, comptroller: false, payable: true, sponsor: false },\n [Version.Airdrops.V2_0]: { claimTo: true, comptroller: true, payable: true, sponsor: false },\n [Version.Airdrops.V3_0]: { claimTo: true, comptroller: true, payable: true, sponsor: true },\n },\n [Protocol.Bob]: {\n [Version.Bob.V1_0]: emptyReleaseFeatures,\n },\n [Protocol.Flow]: {\n [Version.Flow.V1_0]: {\n comptroller: false,\n minFee: false,\n payable: false,\n simpleTransfer: false,\n },\n [Version.Flow.V1_1]: {\n comptroller: false,\n minFee: false,\n payable: true,\n simpleTransfer: false,\n },\n [Version.Flow.V2_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },\n [Version.Flow.V3_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },\n },\n [Protocol.Legacy]: {\n [Version.Legacy.V1_0]: emptyReleaseFeatures,\n [Version.Legacy.V1_1]: emptyReleaseFeatures,\n },\n [Protocol.Lockup]: {\n [Version.Lockup.V1_0]: {\n batch: false,\n comptroller: true,\n legacyAbi: true,\n minFee: false,\n payable: false,\n prbProxy: true,\n shape: false,\n },\n [Version.Lockup.V1_1]: {\n batch: false,\n comptroller: true,\n legacyAbi: true,\n minFee: false,\n payable: false,\n prbProxy: false,\n shape: false,\n },\n [Version.Lockup.V1_2]: {\n batch: false,\n comptroller: false,\n legacyAbi: false,\n minFee: false,\n payable: false,\n prbProxy: false,\n shape: false,\n },\n [Version.Lockup.V2_0]: {\n batch: true,\n comptroller: false,\n legacyAbi: false,\n minFee: false,\n payable: true,\n prbProxy: false,\n shape: true,\n },\n [Version.Lockup.V3_0]: {\n batch: true,\n comptroller: true,\n legacyAbi: false,\n minFee: true,\n payable: true,\n prbProxy: false,\n shape: true,\n },\n [Version.Lockup.V4_0]: {\n batch: true,\n comptroller: true,\n legacyAbi: false,\n minFee: true,\n payable: true,\n prbProxy: false,\n shape: true,\n },\n },\n} as const satisfies EvmReleaseFeatureRegistry);\n\nexport type PayableEvmProtocol = ProtocolWithBooleanFeature<\"payable\">;\n\n/* -------------------------------------------------------------------------- */\n/* PRIVATE HELPERS */\n/* -------------------------------------------------------------------------- */\n\nconst evmReleaseFeatureRegistry: EvmReleaseFeatureRegistry = evmReleaseFeatures;\n\ntype PayableReleaseFeatureRegistry = {\n [TProtocol in PayableEvmProtocol]: Record<\n EvmReleaseVersionByProtocol[TProtocol],\n Pick<ProtocolFeatureSet<TProtocol>, \"payable\">\n >;\n};\n\nconst payableReleaseFeatureRegistry = deepFreeze({\n [Protocol.Airdrops]: evmReleaseFeatures[Protocol.Airdrops],\n [Protocol.Flow]: evmReleaseFeatures[Protocol.Flow],\n [Protocol.Lockup]: evmReleaseFeatures[Protocol.Lockup],\n} satisfies PayableReleaseFeatureRegistry);\n\n/**\n * Narrows protocol checks for helpers that only apply to fee-charging releases.\n */\nfunction isPayableEvmProtocol(protocol: Sablier.EVM.Protocol): protocol is PayableEvmProtocol {\n return protocol in payableReleaseFeatureRegistry;\n}\n\n/**\n * Narrows a release descriptor to protocols whose feature bag includes a payable flag.\n */\nfunction isPayableEvmRelease(release: EvmReleaseReference): release is PayableEvmReleaseReference {\n return isPayableEvmProtocol(release.protocol);\n}\n\n/**\n * Normalizes the supported payable helper overloads to the canonical release shape.\n */\nfunction normalizePayableReleaseInput(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): EvmReleaseReference {\n if (typeof releaseOrProtocol !== \"string\") {\n return releaseOrProtocol;\n }\n\n if (!version) {\n throw new Error('Sablier SDK: Missing \"version\" for isEvmReleasePayable(protocol, version)');\n }\n\n return { protocol: releaseOrProtocol, version };\n}\n\n/* -------------------------------------------------------------------------- */\n/* FEATURES */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Reads the airdrops capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Airdrops protocol.\n */\nexport function getAirdropsReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.AirdropsReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Airdrops];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Airdrops];\n}\n\n/**\n * Returns the protocol-specific feature bag for a single EVM release.\n */\nexport function getEvmReleaseFeatures<TProtocol extends keyof EvmReleaseFeatureSetByProtocol>(\n protocol: TProtocol,\n version: EvmReleaseVersionByProtocol[TProtocol]\n): ReleaseFeaturesForProtocol<TProtocol> {\n return evmReleaseFeatureRegistry[protocol][version] as ReleaseFeaturesForProtocol<TProtocol>;\n}\n\n/**\n * Reads the flow capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Flow protocol.\n */\nexport function getFlowReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.FlowReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Flow];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Flow];\n}\n\n/**\n * Reads the lockup capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Lockup protocol.\n */\nexport function getLockupReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.LockupReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Lockup];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Lockup];\n}\n\n/**\n * Returns whether the airdrops release supports the `claimTo` function for claiming to a third-party address.\n * Returns `false` for non-Airdrops versions.\n */\nexport function hasClaimTo(version: Sablier.EVM.Version): boolean {\n return getAirdropsReleaseFeatures(version)?.claimTo ?? false;\n}\n\n/**\n * Returns whether the airdrops release supports sponsor-driven claims.\n * Returns `false` for non-Airdrops versions.\n */\nexport function hasSponsor(version: Sablier.EVM.Version): boolean {\n return getAirdropsReleaseFeatures(version)?.sponsor ?? false;\n}\n\n/**\n * Returns whether a Flow or Lockup release exposes an on-chain minimum fee in wei.\n */\nexport function hasOnchainMinFee(release: EvmReleaseReference): boolean;\n/**\n * @deprecated Pass a release object instead. This overload will be removed in the next major version (v4).\n */\nexport function hasOnchainMinFee(\n protocol: Sablier.EVM.Protocol,\n version: Sablier.EVM.Version\n): boolean;\nexport function hasOnchainMinFee(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): boolean {\n let release: EvmReleaseReference;\n\n if (typeof releaseOrProtocol === \"string\") {\n if (!version) {\n throw new Error('Sablier SDK: Missing \"version\" for hasOnchainMinFee(protocol, version)');\n }\n\n release = { protocol: releaseOrProtocol, version };\n } else {\n release = releaseOrProtocol;\n }\n\n switch (release.protocol) {\n case Protocol.Flow:\n return getFlowReleaseFeatures(release.version)?.minFee ?? false;\n case Protocol.Lockup:\n return getLockupReleaseFeatures(release.version)?.minFee ?? false;\n default:\n return false;\n }\n}\n\n/**\n * Returns whether the flow release exposes the `transferTokens` wrapper for forwarding an ERC-20 transfer on behalf of\n * the caller. Returns `false` for non-Flow versions.\n */\nexport function hasSimpleTransfer(version: Sablier.EVM.Version): boolean {\n return getFlowReleaseFeatures(version)?.simpleTransfer ?? false;\n}\n\n/**\n * Returns whether the lockup release uses the split ABI layout.\n * Returns `false` for non-Lockup versions.\n */\nexport function hasSplitLockupArchitecture(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.legacyAbi ?? false;\n}\n\n/** @deprecated Use {@link hasSplitLockupArchitecture} instead. */\nexport const usesLockupSplit = hasSplitLockupArchitecture;\n\n/**\n * Returns whether a release charges native-token fees on claim or withdraw operations.\n */\nexport function isEvmReleasePayable(release: EvmReleaseReference): boolean;\n/**\n * @deprecated Pass a release object instead. This overload will be removed in the next major version (v4).\n */\nexport function isEvmReleasePayable(\n protocol: Sablier.EVM.Protocol,\n version: Sablier.EVM.Version\n): boolean;\nexport function isEvmReleasePayable(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): boolean {\n const release = normalizePayableReleaseInput(releaseOrProtocol, version);\n\n if (!isPayableEvmRelease(release)) {\n return false;\n }\n\n const registry = evmReleaseFeatures[release.protocol] as Record<string, { payable: boolean }>;\n if (!(release.version in registry)) {\n return false;\n }\n\n return registry[release.version].payable;\n}\n\n/**\n * Returns whether the lockup release exposes batch create or withdraw flows.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupBatch(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.batch ?? false;\n}\n\n/**\n * Returns whether the lockup release integrates with PRBProxy.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupPrbProxy(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.prbProxy ?? false;\n}\n\n/**\n * Returns whether the lockup release stores shape as an on-chain parameter.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupShape(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.shape ?? false;\n}\n\n/**\n * Returns whether the release wires a Comptroller reference (`ISablierComptroller` or the legacy\n * `ISablierV2Comptroller`) into its contracts. Returns `false` for protocols that do not expose a Comptroller flag\n * (Bob, Legacy).\n */\nexport function usesComptroller(release: EvmReleaseReference): boolean {\n switch (release.protocol) {\n case Protocol.Airdrops:\n return getAirdropsReleaseFeatures(release.version)?.comptroller ?? false;\n case Protocol.Flow:\n return getFlowReleaseFeatures(release.version)?.comptroller ?? false;\n case Protocol.Lockup:\n return getLockupReleaseFeatures(release.version)?.comptroller ?? false;\n default:\n return false;\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../../../src/evm/releases/features.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @file Canonical capability registry for every shipped EVM release.\n *\n * Release builders attach these feature bags to exported release objects, and\n * helper functions read from the same registry so version-dependent behavior\n * stays defined in one place.\n */\nimport { Protocol, Version } from \"@/src/evm/enums.js\";\nimport type { Sablier } from \"@/src/types.js\";\n\n/* -------------------------------------------------------------------------- */\n/* TYPES */\n/* -------------------------------------------------------------------------- */\n\nexport type EvmReleaseVersionByProtocol = {\n airdrops: Sablier.EVM.Version.Airdrops;\n bob: Sablier.EVM.Version.Bob;\n flow: Sablier.EVM.Version.Flow;\n legacy: Sablier.EVM.Version.Legacy;\n lockup: Sablier.EVM.Version.Lockup;\n};\n\nexport type EvmReleaseFeatureSetByProtocol = {\n airdrops: Sablier.EVM.AirdropsReleaseFeatures;\n bob: Sablier.EVM.EmptyReleaseFeatures;\n flow: Sablier.EVM.FlowReleaseFeatures;\n legacy: Sablier.EVM.EmptyReleaseFeatures;\n lockup: Sablier.EVM.LockupReleaseFeatures;\n};\n\ntype EvmReleaseFeatureRegistry = {\n [TProtocol in keyof EvmReleaseVersionByProtocol]: Record<\n EvmReleaseVersionByProtocol[TProtocol],\n EvmReleaseFeatureSetByProtocol[TProtocol]\n >;\n};\n\nexport type ReleaseFeaturesForProtocol<TProtocol extends keyof EvmReleaseFeatureSetByProtocol> =\n EvmReleaseFeatureSetByProtocol[TProtocol];\n\ntype ProtocolFeatureSet<TProtocol extends keyof EvmReleaseFeatureSetByProtocol> =\n EvmReleaseFeatureSetByProtocol[TProtocol];\n\ntype ProtocolWithBooleanFeature<TFeature extends PropertyKey> = {\n [TProtocol in keyof EvmReleaseFeatureSetByProtocol]: ProtocolFeatureSet<TProtocol> extends Record<\n TFeature,\n boolean\n >\n ? TProtocol\n : never;\n}[keyof EvmReleaseFeatureSetByProtocol];\n\ntype EvmReleaseReference = Pick<Sablier.EVM.Release, \"protocol\" | \"version\">;\ntype PayableEvmReleaseReference = {\n [TProtocol in PayableEvmProtocol]: {\n protocol: TProtocol;\n version: EvmReleaseVersionByProtocol[TProtocol];\n };\n}[PayableEvmProtocol];\n\nfunction deepFreeze<T>(value: T): T {\n if (typeof value !== \"object\" || value === null || Object.isFrozen(value)) {\n return value;\n }\n\n for (const nestedValue of Object.values(value as Record<string, unknown>)) {\n deepFreeze(nestedValue);\n }\n\n return Object.freeze(value);\n}\n\nconst emptyReleaseFeatures = deepFreeze({} as const satisfies Sablier.EVM.EmptyReleaseFeatures);\n\n/**\n * Protocol/version feature matrix used by both release resolvers and public helpers.\n *\n * Feature glossary:\n * - `claimTo`: Airdrops campaigns can redirect claims to a third-party recipient; introduced in `airdrops@v2.0`\n *\n * - `comptroller`: Release contracts take a Comptroller reference (`ISablierComptroller` or the legacy\n * `ISablierV2Comptroller`) that governs fee administration. True for `airdrops@v2.0+`, `flow@v2.0+`,\n * `lockup@v1.0`, `lockup@v1.1`, and `lockup@v3.0+`. Lockup v1.2 and v2.0 intentionally dropped the Comptroller wiring\n *\n * - `sponsor`: Airdrops campaigns expose the `sponsor` function; introduced in `airdrops@v3.0`\n *\n * - `payable`: Release entrypoints accept native-token value for protocol fees. This first appears in\n * `airdrops@v1.3`, `flow@v1.1`, and `lockup@v2.0`\n *\n * - `contractMinFee`: Contracts expose an onchain minimum-fee calculation; introduced in `flow@v2.0` and adopted by\n * Lockup in `lockup@v3.0`\n *\n * - `batch`: Lockup releases support batched execution helpers; introduced in `lockup@v2.0`\n *\n * - `shape`: Lockup create flows emit and consume canonical shape identifiers; introduced in `lockup@v2.0`\n *\n * - `simpleTransfer`: Flow releases expose a `transferTokens` wrapper that lets the contract forward an ERC-20 transfer\n * on behalf of the caller; introduced in `flow@v2.0`\n *\n * - `legacyAbi`: Lockup still uses the pre-`lockup@v1.2` split ABI layout and old hook interface; cleared when\n * `lockup@v1.2` shipped the new hook system\n *\n * - `prbProxy`: Lockup still uses the original `prbProxy` deployment wiring from `lockup@v1.0`; this is only true for\n * that initial release and is cleared from `lockup@v1.1` onward\n *\n * - `publicWithdraw`: Any caller may invoke `withdraw` on a Lockup stream as long as `to == recipient`; introduced in\n * `lockup@v1.2`. In `lockup@v1.0` and `lockup@v1.1` only the stream sender, recipient, or an approved address can\n * trigger a withdrawal\n *\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/airdrops@v3.0/airdrops/CHANGELOG.md}\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/flow@v3.0/flow/CHANGELOG.md}\n * @see {@link https://github.com/sablier-labs/evm-monorepo/blob/lockup@v4.0/lockup/CHANGELOG.md}\n */\nexport const evmReleaseFeatures = deepFreeze({\n [Protocol.Airdrops]: {\n [Version.Airdrops.V1_1]: { claimTo: false, comptroller: false, payable: false, sponsor: false },\n [Version.Airdrops.V1_2]: { claimTo: false, comptroller: false, payable: false, sponsor: false },\n [Version.Airdrops.V1_3]: { claimTo: false, comptroller: false, payable: true, sponsor: false },\n [Version.Airdrops.V2_0]: { claimTo: true, comptroller: true, payable: true, sponsor: false },\n [Version.Airdrops.V3_0]: { claimTo: true, comptroller: true, payable: true, sponsor: true },\n },\n [Protocol.Bob]: {\n [Version.Bob.V1_0]: emptyReleaseFeatures,\n },\n [Protocol.Flow]: {\n [Version.Flow.V1_0]: {\n comptroller: false,\n minFee: false,\n payable: false,\n simpleTransfer: false,\n },\n [Version.Flow.V1_1]: {\n comptroller: false,\n minFee: false,\n payable: true,\n simpleTransfer: false,\n },\n [Version.Flow.V2_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },\n [Version.Flow.V3_0]: { comptroller: true, minFee: true, payable: true, simpleTransfer: true },\n },\n [Protocol.Legacy]: {\n [Version.Legacy.V1_0]: emptyReleaseFeatures,\n [Version.Legacy.V1_1]: emptyReleaseFeatures,\n },\n [Protocol.Lockup]: {\n [Version.Lockup.V1_0]: {\n batch: false,\n comptroller: true,\n legacyAbi: true,\n minFee: false,\n payable: false,\n prbProxy: true,\n publicWithdraw: false,\n shape: false,\n },\n [Version.Lockup.V1_1]: {\n batch: false,\n comptroller: true,\n legacyAbi: true,\n minFee: false,\n payable: false,\n prbProxy: false,\n publicWithdraw: false,\n shape: false,\n },\n [Version.Lockup.V1_2]: {\n batch: false,\n comptroller: false,\n legacyAbi: false,\n minFee: false,\n payable: false,\n prbProxy: false,\n publicWithdraw: true,\n shape: false,\n },\n [Version.Lockup.V2_0]: {\n batch: true,\n comptroller: false,\n legacyAbi: false,\n minFee: false,\n payable: true,\n prbProxy: false,\n publicWithdraw: true,\n shape: true,\n },\n [Version.Lockup.V3_0]: {\n batch: true,\n comptroller: true,\n legacyAbi: false,\n minFee: true,\n payable: true,\n prbProxy: false,\n publicWithdraw: true,\n shape: true,\n },\n [Version.Lockup.V4_0]: {\n batch: true,\n comptroller: true,\n legacyAbi: false,\n minFee: true,\n payable: true,\n prbProxy: false,\n publicWithdraw: true,\n shape: true,\n },\n },\n} as const satisfies EvmReleaseFeatureRegistry);\n\nexport type PayableEvmProtocol = ProtocolWithBooleanFeature<\"payable\">;\n\n/* -------------------------------------------------------------------------- */\n/* PRIVATE HELPERS */\n/* -------------------------------------------------------------------------- */\n\nconst evmReleaseFeatureRegistry: EvmReleaseFeatureRegistry = evmReleaseFeatures;\n\ntype PayableReleaseFeatureRegistry = {\n [TProtocol in PayableEvmProtocol]: Record<\n EvmReleaseVersionByProtocol[TProtocol],\n Pick<ProtocolFeatureSet<TProtocol>, \"payable\">\n >;\n};\n\nconst payableReleaseFeatureRegistry = deepFreeze({\n [Protocol.Airdrops]: evmReleaseFeatures[Protocol.Airdrops],\n [Protocol.Flow]: evmReleaseFeatures[Protocol.Flow],\n [Protocol.Lockup]: evmReleaseFeatures[Protocol.Lockup],\n} satisfies PayableReleaseFeatureRegistry);\n\n/**\n * Narrows protocol checks for helpers that only apply to fee-charging releases.\n */\nfunction isPayableEvmProtocol(protocol: Sablier.EVM.Protocol): protocol is PayableEvmProtocol {\n return protocol in payableReleaseFeatureRegistry;\n}\n\n/**\n * Narrows a release descriptor to protocols whose feature bag includes a payable flag.\n */\nfunction isPayableEvmRelease(release: EvmReleaseReference): release is PayableEvmReleaseReference {\n return isPayableEvmProtocol(release.protocol);\n}\n\n/**\n * Normalizes the supported payable helper overloads to the canonical release shape.\n */\nfunction normalizePayableReleaseInput(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): EvmReleaseReference {\n if (typeof releaseOrProtocol !== \"string\") {\n return releaseOrProtocol;\n }\n\n if (!version) {\n throw new Error('Sablier SDK: Missing \"version\" for isEvmReleasePayable(protocol, version)');\n }\n\n return { protocol: releaseOrProtocol, version };\n}\n\n/* -------------------------------------------------------------------------- */\n/* FEATURES */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Reads the airdrops capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Airdrops protocol.\n */\nexport function getAirdropsReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.AirdropsReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Airdrops];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Airdrops];\n}\n\n/**\n * Returns the protocol-specific feature bag for a single EVM release.\n */\nexport function getEvmReleaseFeatures<TProtocol extends keyof EvmReleaseFeatureSetByProtocol>(\n protocol: TProtocol,\n version: EvmReleaseVersionByProtocol[TProtocol]\n): ReleaseFeaturesForProtocol<TProtocol> {\n return evmReleaseFeatureRegistry[protocol][version] as ReleaseFeaturesForProtocol<TProtocol>;\n}\n\n/**\n * Reads the flow capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Flow protocol.\n */\nexport function getFlowReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.FlowReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Flow];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Flow];\n}\n\n/**\n * Reads the lockup capability matrix for one released version.\n * Returns `undefined` when the version does not belong to the Lockup protocol.\n */\nexport function getLockupReleaseFeatures(\n version: Sablier.EVM.Version\n): Sablier.EVM.LockupReleaseFeatures | undefined {\n const registry = evmReleaseFeatures[Protocol.Lockup];\n if (!(version in registry)) {\n return undefined;\n }\n return registry[version as Sablier.EVM.Version.Lockup];\n}\n\n/**\n * Returns whether the airdrops release supports the `claimTo` function for claiming to a third-party address.\n * Returns `false` for non-Airdrops versions.\n */\nexport function hasClaimTo(version: Sablier.EVM.Version): boolean {\n return getAirdropsReleaseFeatures(version)?.claimTo ?? false;\n}\n\n/**\n * Returns whether the airdrops release supports sponsor-driven claims.\n * Returns `false` for non-Airdrops versions.\n */\nexport function hasSponsor(version: Sablier.EVM.Version): boolean {\n return getAirdropsReleaseFeatures(version)?.sponsor ?? false;\n}\n\n/**\n * Returns whether a Flow or Lockup release exposes an on-chain minimum fee in wei.\n */\nexport function hasOnchainMinFee(release: EvmReleaseReference): boolean;\n/**\n * @deprecated Pass a release object instead. This overload will be removed in the next major version (v4).\n */\nexport function hasOnchainMinFee(\n protocol: Sablier.EVM.Protocol,\n version: Sablier.EVM.Version\n): boolean;\nexport function hasOnchainMinFee(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): boolean {\n let release: EvmReleaseReference;\n\n if (typeof releaseOrProtocol === \"string\") {\n if (!version) {\n throw new Error('Sablier SDK: Missing \"version\" for hasOnchainMinFee(protocol, version)');\n }\n\n release = { protocol: releaseOrProtocol, version };\n } else {\n release = releaseOrProtocol;\n }\n\n switch (release.protocol) {\n case Protocol.Flow:\n return getFlowReleaseFeatures(release.version)?.minFee ?? false;\n case Protocol.Lockup:\n return getLockupReleaseFeatures(release.version)?.minFee ?? false;\n default:\n return false;\n }\n}\n\n/**\n * Returns whether the flow release exposes the `transferTokens` wrapper for forwarding an ERC-20 transfer on behalf of\n * the caller. Returns `false` for non-Flow versions.\n */\nexport function hasSimpleTransfer(version: Sablier.EVM.Version): boolean {\n return getFlowReleaseFeatures(version)?.simpleTransfer ?? false;\n}\n\n/**\n * Returns whether the lockup release uses the split ABI layout.\n * Returns `false` for non-Lockup versions.\n */\nexport function hasSplitLockupArchitecture(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.legacyAbi ?? false;\n}\n\n/** @deprecated Use {@link hasSplitLockupArchitecture} instead. */\nexport const usesLockupSplit = hasSplitLockupArchitecture;\n\n/**\n * Returns whether a release charges native-token fees on claim or withdraw operations.\n */\nexport function isEvmReleasePayable(release: EvmReleaseReference): boolean;\n/**\n * @deprecated Pass a release object instead. This overload will be removed in the next major version (v4).\n */\nexport function isEvmReleasePayable(\n protocol: Sablier.EVM.Protocol,\n version: Sablier.EVM.Version\n): boolean;\nexport function isEvmReleasePayable(\n releaseOrProtocol: EvmReleaseReference | Sablier.EVM.Protocol,\n version?: Sablier.EVM.Version\n): boolean {\n const release = normalizePayableReleaseInput(releaseOrProtocol, version);\n\n if (!isPayableEvmRelease(release)) {\n return false;\n }\n\n const registry = evmReleaseFeatures[release.protocol] as Record<string, { payable: boolean }>;\n if (!(release.version in registry)) {\n return false;\n }\n\n return registry[release.version].payable;\n}\n\n/**\n * Returns whether the lockup release exposes batch create or withdraw flows.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupBatch(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.batch ?? false;\n}\n\n/**\n * Returns whether the lockup release integrates with PRBProxy.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupPrbProxy(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.prbProxy ?? false;\n}\n\n/**\n * Returns whether the lockup release allows any caller to invoke `withdraw` as long as `to == recipient`.\n * Releases that return `false` restrict withdrawals to the stream sender, recipient, or an approved address.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupPublicWithdraw(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.publicWithdraw ?? false;\n}\n\n/**\n * Returns whether the lockup release stores shape as an on-chain parameter.\n * Returns `false` for non-Lockup versions.\n */\nexport function supportsLockupShape(version: Sablier.EVM.Version): boolean {\n return getLockupReleaseFeatures(version)?.shape ?? false;\n}\n\n/**\n * Returns whether the release wires a Comptroller reference (`ISablierComptroller` or the legacy\n * `ISablierV2Comptroller`) into its contracts. Returns `false` for protocols that do not expose a Comptroller flag\n * (Bob, Legacy).\n */\nexport function usesComptroller(release: EvmReleaseReference): boolean {\n switch (release.protocol) {\n case Protocol.Airdrops:\n return getAirdropsReleaseFeatures(release.version)?.comptroller ?? false;\n case Protocol.Flow:\n return getFlowReleaseFeatures(release.version)?.comptroller ?? false;\n case Protocol.Lockup:\n return getLockupReleaseFeatures(release.version)?.comptroller ?? false;\n default:\n return false;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/evm/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { AliasMap, Repository, Shared } from \"@/src/shared/types.js\";\nimport type * as enums from \"./enums.js\";\n\nexport namespace EVM {\n /** Ethereum address in the format 0x followed by 40 hex characters. */\n export type Address = `0x${string}`;\n\n export type AbiMap = { [contractName: string]: readonly object[] };\n export type Chain = Shared.Chain & {\n /** Whether this is a zkEVM like zkSync. */\n isZK: boolean;\n rpc: Shared.Chain[\"rpc\"] & {\n /** Alchemy RPC URL generator. */\n alchemy?: (apiKey: string) => string;\n /** Infura RPC URL generator. */\n infura?: (apiKey: string) => string;\n /** RouteMesh RPC URL generator. */\n routemesh?: (apiKey: string) => string;\n };\n };\n\n /**\n * The base contract type for EVM chains.\n */\n export type Contract = Shared.Contract<Address, Protocol, Version>;\n\n /**\n * Reverse mapping of contracts so that we can look up contracts by address.\n */\n export type ContractCatalog = {\n [protocol in Protocol]: {\n [chainId: number]: {\n [address: Address]: Contract;\n };\n };\n };\n\n /**\n * Reverse mapping of contracts by alias for O(1) lookup.\n */\n export type AliasCatalog = {\n [protocol in Protocol]: {\n [chainId: number]: {\n [alias: string]: Contract;\n };\n };\n };\n\n /** @internal */\n export type ContractMap = Shared.ContractMap<Address>;\n\n export type Protocol = `${enums.Protocol}` | enums.Protocol;\n\n export type CompilerSettings = {\n /** The EVM version such as shanghai, paris, etc. */\n evmVersion: string;\n /** Whether the optimizer is enabled. */\n optimizer: boolean;\n /** The number of optimizer runs. */\n optimizerRuns: number;\n /** Optional salt used for CREATE2 deployment. None implies deployment using CREATE. */\n salt?: string;\n /** The solc version used. */\n solcVersion: `v${number}.${number}.${number}`;\n /** Whether the IR is used. */\n viaIR: boolean;\n /** Optional zk version used, only valid for zkEVM chains. */\n zkVersion?: `v${number}.${number}.${number}`;\n };\n\n /* -------------------------------------------------------------------------- */\n /* DEPLOYMENT */\n /* -------------------------------------------------------------------------- */\n\n export namespace Deployment {\n export type Standard = {\n chainId: number;\n contracts: Contract[];\n /** TODO: Compiler settings for the contract. Not implemented yet. */\n compilerSettings?: CompilerSettings;\n };\n\n export type LockupV1 = Standard & {\n core: Contract[];\n periphery: Contract[];\n };\n }\n\n export type Deployment = Deployment.Standard | Deployment.LockupV1;\n\n /* -------------------------------------------------------------------------- */\n /* MANIFEST */\n /* -------------------------------------------------------------------------- */\n\n /**\n * Contract names for a given protocol and version.\n * Note that this may contain both deployed contracts and abstract contracts that are not deployed.\n */\n export namespace Manifest {\n export type LockupV1 = {\n core: Standard;\n periphery: Standard;\n };\n\n export type Standard = Shared.Manifest;\n }\n\n export type Manifest = Manifest.LockupV1 | Manifest.Standard;\n\n /* -------------------------------------------------------------------------- */\n /* RELEASE */\n /* -------------------------------------------------------------------------- */\n\n export type AirdropsReleaseFeatures = {\n payable: boolean;\n claimTo: boolean;\n comptroller: boolean;\n sponsor: boolean;\n };\n\n export type FlowReleaseFeatures = {\n payable: boolean;\n comptroller: boolean;\n minFee: boolean;\n simpleTransfer: boolean;\n };\n\n export type LockupReleaseFeatures = {\n payable: boolean;\n comptroller: boolean;\n minFee: boolean;\n prbProxy: boolean;\n batch: boolean;\n legacyAbi: boolean;\n shape: boolean;\n };\n\n export type EmptyReleaseFeatures = Record<never, never>;\n\n export type EvmReleaseFeatures =\n | AirdropsReleaseFeatures\n | FlowReleaseFeatures\n | LockupReleaseFeatures\n | EmptyReleaseFeatures;\n\n /**\n * A collection of deployments for a given protocol and version.\n */\n export namespace Release {\n type Common<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = {\n abi: TAbiMap;\n /** A map of contract names to their aliases, used in the Sablier Interface and the Graph. */\n aliases?: AliasMap;\n /** An array of contract names. */\n contractNames: string[];\n /** Release capabilities keyed to the owning protocol. */\n features: TFeatures;\n /** Whether this is the latest release for this protocol. */\n isLatest: boolean;\n /** The kind of release. */\n kind: \"standard\" | \"lockupV1\";\n /** The Sablier protocol released, e.g. `airdrops`. */\n protocol: Protocol;\n /** Repository information for the release. */\n repository?: Repository;\n /** The version of the release, e.g., `v1.3`. */\n version: Version;\n };\n\n /**\n * Lockup v1.x release used to separate Lockup contracts into core and periphery sub-categories.\n * @see https://github.com/sablier-labs/v2-periphery\n */\n export type LockupV1<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = Common<TAbiMap, TFeatures> & {\n deployments: Deployment.LockupV1[];\n kind: \"lockupV1\";\n manifest: Manifest.LockupV1;\n };\n\n export type Standard<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = Common<TAbiMap, TFeatures> & {\n deployments: Deployment.Standard[];\n kind: \"standard\";\n manifest: Manifest.Standard;\n };\n }\n\n export type Release = Release.Standard | Release.LockupV1;\n\n /* -------------------------------------------------------------------------- */\n /* VERSION */\n /* -------------------------------------------------------------------------- */\n\n export namespace Version {\n export type Airdrops = `${enums.Version.Airdrops}` | enums.Version.Airdrops;\n\n export type Bob = `${enums.Version.Bob}` | enums.Version.Bob;\n\n export type Flow = `${enums.Version.Flow}` | enums.Version.Flow;\n\n export type Legacy = `${enums.Version.Legacy}` | enums.Version.Legacy;\n\n export type Lockup = `${enums.Version.Lockup}` | enums.Version.Lockup;\n }\n export type Version =\n | Version.Airdrops\n | Version.Bob\n | Version.Flow\n | Version.Legacy\n | Version.Lockup;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/evm/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { AliasMap, Repository, Shared } from \"@/src/shared/types.js\";\nimport type * as enums from \"./enums.js\";\n\nexport namespace EVM {\n /** Ethereum address in the format 0x followed by 40 hex characters. */\n export type Address = `0x${string}`;\n\n export type AbiMap = { [contractName: string]: readonly object[] };\n export type Chain = Shared.Chain & {\n /** Whether this is a zkEVM like zkSync. */\n isZK: boolean;\n rpc: Shared.Chain[\"rpc\"] & {\n /** Alchemy RPC URL generator. */\n alchemy?: (apiKey: string) => string;\n /** Infura RPC URL generator. */\n infura?: (apiKey: string) => string;\n /** RouteMesh RPC URL generator. */\n routemesh?: (apiKey: string) => string;\n };\n };\n\n /**\n * The base contract type for EVM chains.\n */\n export type Contract = Shared.Contract<Address, Protocol, Version>;\n\n /**\n * Reverse mapping of contracts so that we can look up contracts by address.\n */\n export type ContractCatalog = {\n [protocol in Protocol]: {\n [chainId: number]: {\n [address: Address]: Contract;\n };\n };\n };\n\n /**\n * Reverse mapping of contracts by alias for O(1) lookup.\n */\n export type AliasCatalog = {\n [protocol in Protocol]: {\n [chainId: number]: {\n [alias: string]: Contract;\n };\n };\n };\n\n /** @internal */\n export type ContractMap = Shared.ContractMap<Address>;\n\n export type Protocol = `${enums.Protocol}` | enums.Protocol;\n\n export type CompilerSettings = {\n /** The EVM version such as shanghai, paris, etc. */\n evmVersion: string;\n /** Whether the optimizer is enabled. */\n optimizer: boolean;\n /** The number of optimizer runs. */\n optimizerRuns: number;\n /** Optional salt used for CREATE2 deployment. None implies deployment using CREATE. */\n salt?: string;\n /** The solc version used. */\n solcVersion: `v${number}.${number}.${number}`;\n /** Whether the IR is used. */\n viaIR: boolean;\n /** Optional zk version used, only valid for zkEVM chains. */\n zkVersion?: `v${number}.${number}.${number}`;\n };\n\n /* -------------------------------------------------------------------------- */\n /* DEPLOYMENT */\n /* -------------------------------------------------------------------------- */\n\n export namespace Deployment {\n export type Standard = {\n chainId: number;\n contracts: Contract[];\n /** TODO: Compiler settings for the contract. Not implemented yet. */\n compilerSettings?: CompilerSettings;\n };\n\n export type LockupV1 = Standard & {\n core: Contract[];\n periphery: Contract[];\n };\n }\n\n export type Deployment = Deployment.Standard | Deployment.LockupV1;\n\n /* -------------------------------------------------------------------------- */\n /* MANIFEST */\n /* -------------------------------------------------------------------------- */\n\n /**\n * Contract names for a given protocol and version.\n * Note that this may contain both deployed contracts and abstract contracts that are not deployed.\n */\n export namespace Manifest {\n export type LockupV1 = {\n core: Standard;\n periphery: Standard;\n };\n\n export type Standard = Shared.Manifest;\n }\n\n export type Manifest = Manifest.LockupV1 | Manifest.Standard;\n\n /* -------------------------------------------------------------------------- */\n /* RELEASE */\n /* -------------------------------------------------------------------------- */\n\n export type AirdropsReleaseFeatures = {\n payable: boolean;\n claimTo: boolean;\n comptroller: boolean;\n sponsor: boolean;\n };\n\n export type FlowReleaseFeatures = {\n payable: boolean;\n comptroller: boolean;\n minFee: boolean;\n simpleTransfer: boolean;\n };\n\n export type LockupReleaseFeatures = {\n payable: boolean;\n comptroller: boolean;\n minFee: boolean;\n prbProxy: boolean;\n publicWithdraw: boolean;\n batch: boolean;\n legacyAbi: boolean;\n shape: boolean;\n };\n\n export type EmptyReleaseFeatures = Record<never, never>;\n\n export type EvmReleaseFeatures =\n | AirdropsReleaseFeatures\n | FlowReleaseFeatures\n | LockupReleaseFeatures\n | EmptyReleaseFeatures;\n\n /**\n * A collection of deployments for a given protocol and version.\n */\n export namespace Release {\n type Common<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = {\n abi: TAbiMap;\n /** A map of contract names to their aliases, used in the Sablier Interface and the Graph. */\n aliases?: AliasMap;\n /** An array of contract names. */\n contractNames: string[];\n /** Release capabilities keyed to the owning protocol. */\n features: TFeatures;\n /** Whether this is the latest release for this protocol. */\n isLatest: boolean;\n /** The kind of release. */\n kind: \"standard\" | \"lockupV1\";\n /** The Sablier protocol released, e.g. `airdrops`. */\n protocol: Protocol;\n /** Repository information for the release. */\n repository?: Repository;\n /** The version of the release, e.g., `v1.3`. */\n version: Version;\n };\n\n /**\n * Lockup v1.x release used to separate Lockup contracts into core and periphery sub-categories.\n * @see https://github.com/sablier-labs/v2-periphery\n */\n export type LockupV1<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = Common<TAbiMap, TFeatures> & {\n deployments: Deployment.LockupV1[];\n kind: \"lockupV1\";\n manifest: Manifest.LockupV1;\n };\n\n export type Standard<\n TAbiMap extends AbiMap = AbiMap,\n TFeatures extends EvmReleaseFeatures = EvmReleaseFeatures,\n > = Common<TAbiMap, TFeatures> & {\n deployments: Deployment.Standard[];\n kind: \"standard\";\n manifest: Manifest.Standard;\n };\n }\n\n export type Release = Release.Standard | Release.LockupV1;\n\n /* -------------------------------------------------------------------------- */\n /* VERSION */\n /* -------------------------------------------------------------------------- */\n\n export namespace Version {\n export type Airdrops = `${enums.Version.Airdrops}` | enums.Version.Airdrops;\n\n export type Bob = `${enums.Version.Bob}` | enums.Version.Bob;\n\n export type Flow = `${enums.Version.Flow}` | enums.Version.Flow;\n\n export type Legacy = `${enums.Version.Legacy}` | enums.Version.Legacy;\n\n export type Lockup = `${enums.Version.Lockup}` | enums.Version.Lockup;\n }\n export type Version =\n | Version.Airdrops\n | Version.Bob\n | Version.Flow\n | Version.Legacy\n | Version.Lockup;\n}\n"]}
|
|
@@ -623,6 +623,15 @@ export declare const chainSpecs: {
|
|
|
623
623
|
coinGeckoId: string;
|
|
624
624
|
wrapperContract: string;
|
|
625
625
|
};
|
|
626
|
+
overrides: {
|
|
627
|
+
blockExplorers: {
|
|
628
|
+
default: {
|
|
629
|
+
apiUrl: string;
|
|
630
|
+
name: string;
|
|
631
|
+
url: string;
|
|
632
|
+
};
|
|
633
|
+
};
|
|
634
|
+
};
|
|
626
635
|
rpc: {
|
|
627
636
|
alchemy: string;
|
|
628
637
|
infura: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"specs.d.ts","sourceRoot":"","sources":["../../../../src/evm/chains/specs.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"specs.d.ts","sourceRoot":"","sources":["../../../../src/evm/chains/specs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Sablier, TruncateAddressOptions } from "../types.js";
|
|
2
2
|
export type { EvmReleaseFeatureSetByProtocol, EvmReleaseVersionByProtocol, PayableEvmProtocol, ReleaseFeaturesForProtocol, } from "./releases/features.js";
|
|
3
|
-
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupShape, usesComptroller, usesLockupSplit, } from "./releases/features.js";
|
|
3
|
+
export { evmReleaseFeatures, getAirdropsReleaseFeatures, getEvmReleaseFeatures, getFlowReleaseFeatures, getLockupReleaseFeatures, hasClaimTo, hasOnchainMinFee, hasSimpleTransfer, hasSplitLockupArchitecture, hasSponsor, isEvmReleasePayable, supportsLockupBatch, supportsLockupPrbProxy, supportsLockupPublicWithdraw, supportsLockupShape, usesComptroller, usesLockupSplit, } from "./releases/features.js";
|
|
4
4
|
export declare function getContractExplorerURL(explorerURL: string, contractAddress: Sablier.EVM.Address): string;
|
|
5
5
|
export declare function resolveEvmStreamId(opts: {
|
|
6
6
|
alias: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAItE,YAAY,EACV,8BAA8B,EAC9B,2BAA2B,EAC3B,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAQhC,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,UAE/F;AAkBD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;CACjC,GAAG,MAAM,CAKT;AAeD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;CACjC,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAqCvB;AAaD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAC5B,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,CAiBR"}
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/evm/helpers.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAItE,YAAY,EACV,8BAA8B,EAC9B,2BAA2B,EAC3B,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,wBAAwB,EACxB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,UAAU,EACV,mBAAmB,EACnB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,mBAAmB,EACnB,eAAe,EACf,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAQhC,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,UAE/F;AAkBD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;CACjC,GAAG,MAAM,CAKT;AAeD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;CACjC,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAqCvB;AAaD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,OAAO,EAC5B,OAAO,CAAC,EAAE,sBAAsB,GAC/B,MAAM,CAiBR"}
|