@otim/utils 0.0.2-development.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/dist/api/api.d.mts +18 -0
- package/dist/api/api.d.ts +18 -0
- package/dist/api/api.d.ts.map +1 -0
- package/dist/api/core/error.d.mts +74 -0
- package/dist/api/core/error.d.ts +74 -0
- package/dist/api/core/error.d.ts.map +1 -0
- package/dist/api/core/index.d.mts +4 -0
- package/dist/api/core/index.d.ts +4 -0
- package/dist/api/core/index.d.ts.map +1 -0
- package/dist/api/core/instance.d.mts +13 -0
- package/dist/api/core/instance.d.ts +13 -0
- package/dist/api/core/instance.d.ts.map +1 -0
- package/dist/api/core/service.d.mts +51 -0
- package/dist/api/core/service.d.ts +51 -0
- package/dist/api/core/service.d.ts.map +1 -0
- package/dist/api/index.d.mts +7 -0
- package/dist/api/index.d.ts +7 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +2061 -0
- package/dist/api/index.js.map +7 -0
- package/dist/api/index.mjs +2030 -0
- package/dist/api/index.mjs.map +7 -0
- package/dist/api/schemas/account.d.mts +44 -0
- package/dist/api/schemas/account.d.ts +44 -0
- package/dist/api/schemas/account.d.ts.map +1 -0
- package/dist/api/schemas/activity.d.mts +277 -0
- package/dist/api/schemas/activity.d.ts +277 -0
- package/dist/api/schemas/activity.d.ts.map +1 -0
- package/dist/api/schemas/auth.d.mts +127 -0
- package/dist/api/schemas/auth.d.ts +127 -0
- package/dist/api/schemas/auth.d.ts.map +1 -0
- package/dist/api/schemas/chain.d.mts +15 -0
- package/dist/api/schemas/chain.d.ts +15 -0
- package/dist/api/schemas/chain.d.ts.map +1 -0
- package/dist/api/schemas/config.d.mts +33 -0
- package/dist/api/schemas/config.d.ts +33 -0
- package/dist/api/schemas/config.d.ts.map +1 -0
- package/dist/api/schemas/contacts.d.mts +27 -0
- package/dist/api/schemas/contacts.d.ts +27 -0
- package/dist/api/schemas/contacts.d.ts.map +1 -0
- package/dist/api/schemas/index.d.mts +12 -0
- package/dist/api/schemas/index.d.ts +12 -0
- package/dist/api/schemas/index.d.ts.map +1 -0
- package/dist/api/schemas/instruction.d.mts +446 -0
- package/dist/api/schemas/instruction.d.ts +446 -0
- package/dist/api/schemas/instruction.d.ts.map +1 -0
- package/dist/api/schemas/integration.d.mts +166 -0
- package/dist/api/schemas/integration.d.ts +166 -0
- package/dist/api/schemas/integration.d.ts.map +1 -0
- package/dist/api/schemas/operating-account.d.mts +11 -0
- package/dist/api/schemas/operating-account.d.ts +11 -0
- package/dist/api/schemas/operating-account.d.ts.map +1 -0
- package/dist/api/schemas/payments.d.mts +196 -0
- package/dist/api/schemas/payments.d.ts +196 -0
- package/dist/api/schemas/payments.d.ts.map +1 -0
- package/dist/api/schemas/transaction.d.mts +37 -0
- package/dist/api/schemas/transaction.d.ts +37 -0
- package/dist/api/schemas/transaction.d.ts.map +1 -0
- package/dist/api/services/account.d.mts +8 -0
- package/dist/api/services/account.d.ts +8 -0
- package/dist/api/services/account.d.ts.map +1 -0
- package/dist/api/services/activity.d.mts +7 -0
- package/dist/api/services/activity.d.ts +7 -0
- package/dist/api/services/activity.d.ts.map +1 -0
- package/dist/api/services/auth.d.mts +12 -0
- package/dist/api/services/auth.d.ts +12 -0
- package/dist/api/services/auth.d.ts.map +1 -0
- package/dist/api/services/base.d.mts +10 -0
- package/dist/api/services/base.d.ts +10 -0
- package/dist/api/services/base.d.ts.map +1 -0
- package/dist/api/services/config.d.mts +10 -0
- package/dist/api/services/config.d.ts +10 -0
- package/dist/api/services/config.d.ts.map +1 -0
- package/dist/api/services/contacts.d.mts +8 -0
- package/dist/api/services/contacts.d.ts +8 -0
- package/dist/api/services/contacts.d.ts.map +1 -0
- package/dist/api/services/developer.d.mts +6 -0
- package/dist/api/services/developer.d.ts +6 -0
- package/dist/api/services/developer.d.ts.map +1 -0
- package/dist/api/services/index.d.mts +13 -0
- package/dist/api/services/index.d.ts +13 -0
- package/dist/api/services/index.d.ts.map +1 -0
- package/dist/api/services/instruction.d.mts +12 -0
- package/dist/api/services/instruction.d.ts +12 -0
- package/dist/api/services/instruction.d.ts.map +1 -0
- package/dist/api/services/integration.d.mts +8 -0
- package/dist/api/services/integration.d.ts +8 -0
- package/dist/api/services/integration.d.ts.map +1 -0
- package/dist/api/services/operating-account.d.mts +8 -0
- package/dist/api/services/operating-account.d.ts +8 -0
- package/dist/api/services/operating-account.d.ts.map +1 -0
- package/dist/api/services/payments.d.mts +13 -0
- package/dist/api/services/payments.d.ts +13 -0
- package/dist/api/services/payments.d.ts.map +1 -0
- package/dist/api/services/transaction.d.mts +8 -0
- package/dist/api/services/transaction.d.ts +8 -0
- package/dist/api/services/transaction.d.ts.map +1 -0
- package/dist/api/services/uniswap-token-list-service.d.mts +66 -0
- package/dist/api/services/uniswap-token-list-service.d.ts +66 -0
- package/dist/api/services/uniswap-token-list-service.d.ts.map +1 -0
- package/dist/api/utils/index.d.mts +2 -0
- package/dist/api/utils/index.d.ts +2 -0
- package/dist/api/utils/index.d.ts.map +1 -0
- package/dist/api/utils/pagination.d.mts +32 -0
- package/dist/api/utils/pagination.d.ts +32 -0
- package/dist/api/utils/pagination.d.ts.map +1 -0
- package/dist/chains/config/all-chains.d.mts +4243 -0
- package/dist/chains/config/all-chains.d.ts +4243 -0
- package/dist/chains/config/all-chains.d.ts.map +1 -0
- package/dist/chains/config/custom-chains.d.mts +49 -0
- package/dist/chains/config/custom-chains.d.ts +49 -0
- package/dist/chains/config/custom-chains.d.ts.map +1 -0
- package/dist/chains/config/mainnet-chains.d.mts +1063 -0
- package/dist/chains/config/mainnet-chains.d.ts +1063 -0
- package/dist/chains/config/mainnet-chains.d.ts.map +1 -0
- package/dist/chains/config/supported-chains.d.mts +2172 -0
- package/dist/chains/config/supported-chains.d.ts +2172 -0
- package/dist/chains/config/supported-chains.d.ts.map +1 -0
- package/dist/chains/config/testnet-chains.d.mts +1110 -0
- package/dist/chains/config/testnet-chains.d.ts +1110 -0
- package/dist/chains/config/testnet-chains.d.ts.map +1 -0
- package/dist/chains/index.d.mts +16 -0
- package/dist/chains/index.d.ts +16 -0
- package/dist/chains/index.d.ts.map +1 -0
- package/dist/chains/index.js +490 -0
- package/dist/chains/index.js.map +7 -0
- package/dist/chains/index.mjs +505 -0
- package/dist/chains/index.mjs.map +7 -0
- package/dist/chains/lambda/chain-mapping.d.mts +55 -0
- package/dist/chains/lambda/chain-mapping.d.ts +55 -0
- package/dist/chains/lambda/chain-mapping.d.ts.map +1 -0
- package/dist/chains/lambda/index.d.mts +2 -0
- package/dist/chains/lambda/index.d.ts +2 -0
- package/dist/chains/lambda/index.d.ts.map +1 -0
- package/dist/chains/tokens/chain-tokens.d.mts +6 -0
- package/dist/chains/tokens/chain-tokens.d.ts +6 -0
- package/dist/chains/tokens/chain-tokens.d.ts.map +1 -0
- package/dist/chains/tokens/token-addresses.d.mts +8 -0
- package/dist/chains/tokens/token-addresses.d.ts +8 -0
- package/dist/chains/tokens/token-addresses.d.ts.map +1 -0
- package/dist/chains/tokens/token-metadata.d.mts +5 -0
- package/dist/chains/tokens/token-metadata.d.ts +5 -0
- package/dist/chains/tokens/token-metadata.d.ts.map +1 -0
- package/dist/chains/types.d.mts +23 -0
- package/dist/chains/types.d.ts +23 -0
- package/dist/chains/types.d.ts.map +1 -0
- package/dist/chains/utils/filter-tokens.d.mts +3 -0
- package/dist/chains/utils/filter-tokens.d.ts +3 -0
- package/dist/chains/utils/filter-tokens.d.ts.map +1 -0
- package/dist/chains/utils/stablecoin.d.mts +7 -0
- package/dist/chains/utils/stablecoin.d.ts +7 -0
- package/dist/chains/utils/stablecoin.d.ts.map +1 -0
- package/dist/chains/utils/token-maps.d.mts +10 -0
- package/dist/chains/utils/token-maps.d.ts +10 -0
- package/dist/chains/utils/token-maps.d.ts.map +1 -0
- package/dist/constants.d.mts +31 -0
- package/dist/constants.d.ts +31 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +47 -0
- package/dist/constants.js.map +7 -0
- package/dist/constants.mjs +26 -0
- package/dist/constants.mjs.map +7 -0
- package/dist/env.d.mts +17 -0
- package/dist/env.d.ts +17 -0
- package/dist/env.d.ts.map +1 -0
- package/dist/formatters/index.d.mts +2 -0
- package/dist/formatters/index.d.ts +2 -0
- package/dist/formatters/index.d.ts.map +1 -0
- package/dist/formatters/index.js +19 -0
- package/dist/formatters/index.js.map +7 -0
- package/dist/formatters/index.mjs +1 -0
- package/dist/formatters/index.mjs.map +7 -0
- package/dist/helpers/address.d.mts +7 -0
- package/dist/helpers/address.d.ts +7 -0
- package/dist/helpers/address.d.ts.map +1 -0
- package/dist/helpers/blockchain.d.mts +41 -0
- package/dist/helpers/blockchain.d.ts +41 -0
- package/dist/helpers/blockchain.d.ts.map +1 -0
- package/dist/helpers/date.d.mts +70 -0
- package/dist/helpers/date.d.ts +70 -0
- package/dist/helpers/date.d.ts.map +1 -0
- package/dist/helpers/datetime.d.mts +57 -0
- package/dist/helpers/datetime.d.ts +57 -0
- package/dist/helpers/datetime.d.ts.map +1 -0
- package/dist/helpers/domain.d.mts +2 -0
- package/dist/helpers/domain.d.ts +2 -0
- package/dist/helpers/domain.d.ts.map +1 -0
- package/dist/helpers/index.d.mts +19 -0
- package/dist/helpers/index.d.ts +19 -0
- package/dist/helpers/index.d.ts.map +1 -0
- package/dist/helpers/index.js +1322 -0
- package/dist/helpers/index.js.map +7 -0
- package/dist/helpers/index.mjs +1294 -0
- package/dist/helpers/index.mjs.map +7 -0
- package/dist/helpers/intl.d.mts +20 -0
- package/dist/helpers/intl.d.ts +20 -0
- package/dist/helpers/intl.d.ts.map +1 -0
- package/dist/helpers/logger.d.mts +26 -0
- package/dist/helpers/logger.d.ts +26 -0
- package/dist/helpers/logger.d.ts.map +1 -0
- package/dist/helpers/mask-options.d.mts +10 -0
- package/dist/helpers/mask-options.d.ts +10 -0
- package/dist/helpers/mask-options.d.ts.map +1 -0
- package/dist/helpers/num-formatter.d.mts +3 -0
- package/dist/helpers/num-formatter.d.ts +3 -0
- package/dist/helpers/num-formatter.d.ts.map +1 -0
- package/dist/helpers/polling.d.mts +39 -0
- package/dist/helpers/polling.d.ts +39 -0
- package/dist/helpers/polling.d.ts.map +1 -0
- package/dist/helpers/random.d.mts +10 -0
- package/dist/helpers/random.d.ts +10 -0
- package/dist/helpers/random.d.ts.map +1 -0
- package/dist/helpers/sdk-loader.d.mts +25 -0
- package/dist/helpers/sdk-loader.d.ts +25 -0
- package/dist/helpers/sdk-loader.d.ts.map +1 -0
- package/dist/helpers/signatures.d.mts +17 -0
- package/dist/helpers/signatures.d.ts +17 -0
- package/dist/helpers/signatures.d.ts.map +1 -0
- package/dist/helpers/string.d.mts +17 -0
- package/dist/helpers/string.d.ts +17 -0
- package/dist/helpers/string.d.ts.map +1 -0
- package/dist/helpers/types.d.mts +39 -0
- package/dist/helpers/types.d.ts +39 -0
- package/dist/helpers/types.d.ts.map +1 -0
- package/dist/helpers/url.d.mts +11 -0
- package/dist/helpers/url.d.ts +11 -0
- package/dist/helpers/url.d.ts.map +1 -0
- package/dist/helpers/window.d.mts +37 -0
- package/dist/helpers/window.d.ts +37 -0
- package/dist/helpers/window.d.ts.map +1 -0
- package/dist/helpers/zod.d.mts +30 -0
- package/dist/helpers/zod.d.ts +30 -0
- package/dist/helpers/zod.d.ts.map +1 -0
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +7 -0
- package/dist/index.mjs +1 -0
- package/dist/index.mjs.map +7 -0
- package/dist/instructions/actions/index.d.mts +5 -0
- package/dist/instructions/actions/index.d.ts +5 -0
- package/dist/instructions/actions/index.d.ts.map +1 -0
- package/dist/instructions/actions/refuel/index.d.mts +15 -0
- package/dist/instructions/actions/refuel/index.d.ts +15 -0
- package/dist/instructions/actions/refuel/index.d.ts.map +1 -0
- package/dist/instructions/actions/swap/index.d.mts +19 -0
- package/dist/instructions/actions/swap/index.d.ts +19 -0
- package/dist/instructions/actions/swap/index.d.ts.map +1 -0
- package/dist/instructions/actions/sweep/index.d.mts +16 -0
- package/dist/instructions/actions/sweep/index.d.ts +16 -0
- package/dist/instructions/actions/sweep/index.d.ts.map +1 -0
- package/dist/instructions/actions/transfer/index.d.mts +13 -0
- package/dist/instructions/actions/transfer/index.d.ts +13 -0
- package/dist/instructions/actions/transfer/index.d.ts.map +1 -0
- package/dist/instructions/activate.d.mts +84 -0
- package/dist/instructions/activate.d.ts +84 -0
- package/dist/instructions/activate.d.ts.map +1 -0
- package/dist/instructions/build.d.mts +146 -0
- package/dist/instructions/build.d.ts +146 -0
- package/dist/instructions/build.d.ts.map +1 -0
- package/dist/instructions/constants.d.mts +9 -0
- package/dist/instructions/constants.d.ts +9 -0
- package/dist/instructions/constants.d.ts.map +1 -0
- package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.mts +609 -0
- package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.ts +609 -0
- package/dist/instructions/contracts/artifacts/abi/build-instruction-action-arguments-abi.d.ts.map +1 -0
- package/dist/instructions/index.d.mts +6 -0
- package/dist/instructions/index.d.ts +6 -0
- package/dist/instructions/index.d.ts.map +1 -0
- package/dist/instructions/index.js +1152 -0
- package/dist/instructions/index.js.map +7 -0
- package/dist/instructions/index.mjs +1119 -0
- package/dist/instructions/index.mjs.map +7 -0
- package/dist/instructions/types.d.mts +289 -0
- package/dist/instructions/types.d.ts +289 -0
- package/dist/instructions/types.d.ts.map +1 -0
- package/dist/payments/action-names.d.mts +16 -0
- package/dist/payments/action-names.d.ts +16 -0
- package/dist/payments/action-names.d.ts.map +1 -0
- package/dist/payments/actions/index.d.mts +5 -0
- package/dist/payments/actions/index.d.ts +5 -0
- package/dist/payments/actions/index.d.ts.map +1 -0
- package/dist/payments/actions/sweep-cctp.d.mts +15 -0
- package/dist/payments/actions/sweep-cctp.d.ts +15 -0
- package/dist/payments/actions/sweep-cctp.d.ts.map +1 -0
- package/dist/payments/actions/sweep-erc20.d.mts +12 -0
- package/dist/payments/actions/sweep-erc20.d.ts +12 -0
- package/dist/payments/actions/sweep-erc20.d.ts.map +1 -0
- package/dist/payments/actions/sweep-uniswap-v3.d.mts +17 -0
- package/dist/payments/actions/sweep-uniswap-v3.d.ts +17 -0
- package/dist/payments/actions/sweep-uniswap-v3.d.ts.map +1 -0
- package/dist/payments/actions/sweep.d.mts +12 -0
- package/dist/payments/actions/sweep.d.ts +12 -0
- package/dist/payments/actions/sweep.d.ts.map +1 -0
- package/dist/payments/build.d.mts +27 -0
- package/dist/payments/build.d.ts +27 -0
- package/dist/payments/build.d.ts.map +1 -0
- package/dist/payments/chain-token-config-builder.d.mts +10 -0
- package/dist/payments/chain-token-config-builder.d.ts +10 -0
- package/dist/payments/chain-token-config-builder.d.ts.map +1 -0
- package/dist/payments/comprehensive-payment-request.d.mts +25 -0
- package/dist/payments/comprehensive-payment-request.d.ts +25 -0
- package/dist/payments/comprehensive-payment-request.d.ts.map +1 -0
- package/dist/payments/config/cctp.d.mts +14 -0
- package/dist/payments/config/cctp.d.ts +14 -0
- package/dist/payments/config/cctp.d.ts.map +1 -0
- package/dist/payments/config/index.d.mts +3 -0
- package/dist/payments/config/index.d.ts +3 -0
- package/dist/payments/config/index.d.ts.map +1 -0
- package/dist/payments/config/tokens.d.mts +14 -0
- package/dist/payments/config/tokens.d.ts +14 -0
- package/dist/payments/config/tokens.d.ts.map +1 -0
- package/dist/payments/index.d.mts +16 -0
- package/dist/payments/index.d.ts +16 -0
- package/dist/payments/index.d.ts.map +1 -0
- package/dist/payments/index.js +1303 -0
- package/dist/payments/index.js.map +7 -0
- package/dist/payments/index.mjs +1281 -0
- package/dist/payments/index.mjs.map +7 -0
- package/dist/payments/instruction-registry.d.mts +19 -0
- package/dist/payments/instruction-registry.d.ts +19 -0
- package/dist/payments/instruction-registry.d.ts.map +1 -0
- package/dist/payments/payment-metadata-builder.d.mts +56 -0
- package/dist/payments/payment-metadata-builder.d.ts +56 -0
- package/dist/payments/payment-metadata-builder.d.ts.map +1 -0
- package/dist/payments/payment-metadata.d.mts +15 -0
- package/dist/payments/payment-metadata.d.ts +15 -0
- package/dist/payments/payment-metadata.d.ts.map +1 -0
- package/dist/payments/payment-request-token-resolver.d.mts +25 -0
- package/dist/payments/payment-request-token-resolver.d.ts +25 -0
- package/dist/payments/payment-request-token-resolver.d.ts.map +1 -0
- package/dist/payments/types.d.mts +40 -0
- package/dist/payments/types.d.ts +40 -0
- package/dist/payments/types.d.ts.map +1 -0
- package/dist/payments/validation.d.mts +19 -0
- package/dist/payments/validation.d.ts +19 -0
- package/dist/payments/validation.d.ts.map +1 -0
- package/dist/schemas/account.d.mts +9 -0
- package/dist/schemas/account.d.ts +9 -0
- package/dist/schemas/account.d.ts.map +1 -0
- package/dist/schemas/brand.d.mts +7 -0
- package/dist/schemas/brand.d.ts +7 -0
- package/dist/schemas/brand.d.ts.map +1 -0
- package/dist/schemas/contact.d.mts +18 -0
- package/dist/schemas/contact.d.ts +18 -0
- package/dist/schemas/contact.d.ts.map +1 -0
- package/dist/schemas/index.d.mts +10 -0
- package/dist/schemas/index.d.ts +10 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +433 -0
- package/dist/schemas/index.js.map +7 -0
- package/dist/schemas/index.mjs +410 -0
- package/dist/schemas/index.mjs.map +7 -0
- package/dist/schemas/instruction.d.mts +248 -0
- package/dist/schemas/instruction.d.ts +248 -0
- package/dist/schemas/instruction.d.ts.map +1 -0
- package/dist/schemas/misc.d.mts +36 -0
- package/dist/schemas/misc.d.ts +36 -0
- package/dist/schemas/misc.d.ts.map +1 -0
- package/dist/schemas/payment.d.mts +64 -0
- package/dist/schemas/payment.d.ts +64 -0
- package/dist/schemas/payment.d.ts.map +1 -0
- package/dist/schemas/token.d.mts +17 -0
- package/dist/schemas/token.d.ts +17 -0
- package/dist/schemas/token.d.ts.map +1 -0
- package/dist/schemas/transaction.d.mts +65 -0
- package/dist/schemas/transaction.d.ts +65 -0
- package/dist/schemas/transaction.d.ts.map +1 -0
- package/dist/schemas/user.d.mts +24 -0
- package/dist/schemas/user.d.ts +24 -0
- package/dist/schemas/user.d.ts.map +1 -0
- package/dist/server/client.d.mts +3 -0
- package/dist/server/client.d.ts +3 -0
- package/dist/server/client.d.ts.map +1 -0
- package/dist/server/index.d.mts +3 -0
- package/dist/server/index.d.ts +3 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +420 -0
- package/dist/server/index.js.map +7 -0
- package/dist/server/index.mjs +389 -0
- package/dist/server/index.mjs.map +7 -0
- package/dist/server/routes/account.d.mts +4 -0
- package/dist/server/routes/account.d.ts +4 -0
- package/dist/server/routes/account.d.ts.map +1 -0
- package/dist/server/routes/auth.d.mts +28 -0
- package/dist/server/routes/auth.d.ts +28 -0
- package/dist/server/routes/auth.d.ts.map +1 -0
- package/dist/server/routes/bridge.d.mts +192 -0
- package/dist/server/routes/bridge.d.ts +192 -0
- package/dist/server/routes/bridge.d.ts.map +1 -0
- package/dist/server/routes/config.d.mts +3 -0
- package/dist/server/routes/config.d.ts +3 -0
- package/dist/server/routes/config.d.ts.map +1 -0
- package/dist/server/routes/index.d.mts +8 -0
- package/dist/server/routes/index.d.ts +8 -0
- package/dist/server/routes/index.d.ts.map +1 -0
- package/dist/server/routes/instruction.d.mts +4 -0
- package/dist/server/routes/instruction.d.ts +4 -0
- package/dist/server/routes/instruction.d.ts.map +1 -0
- package/dist/server/routes/integration.d.mts +4 -0
- package/dist/server/routes/integration.d.ts +4 -0
- package/dist/server/routes/integration.d.ts.map +1 -0
- package/dist/server/routes/payments.d.mts +4 -0
- package/dist/server/routes/payments.d.ts +4 -0
- package/dist/server/routes/payments.d.ts.map +1 -0
- package/dist/server/routes/verify.d.mts +3 -0
- package/dist/server/routes/verify.d.ts +3 -0
- package/dist/server/routes/verify.d.ts.map +1 -0
- package/dist/wallet/wagmi/config.d.mts +18 -0
- package/dist/wallet/wagmi/config.d.ts +18 -0
- package/dist/wallet/wagmi/config.d.ts.map +1 -0
- package/dist/wallet/wagmi/index.d.mts +2 -0
- package/dist/wallet/wagmi/index.d.ts +2 -0
- package/dist/wallet/wagmi/index.d.ts.map +1 -0
- package/dist/wallet/wagmi/index.js +429 -0
- package/dist/wallet/wagmi/index.js.map +7 -0
- package/dist/wallet/wagmi/index.mjs +431 -0
- package/dist/wallet/wagmi/index.mjs.map +7 -0
- package/package.json +222 -0
|
@@ -0,0 +1,505 @@
|
|
|
1
|
+
// src/chains/config/custom-chains.ts
|
|
2
|
+
var pecorinoSignet = {
|
|
3
|
+
id: 14174,
|
|
4
|
+
name: "Pecorino Signet",
|
|
5
|
+
nativeCurrency: {
|
|
6
|
+
decimals: 18,
|
|
7
|
+
name: "USD",
|
|
8
|
+
symbol: "USD"
|
|
9
|
+
},
|
|
10
|
+
rpcUrls: {
|
|
11
|
+
default: { http: ["https://rpc.pecorino.signet.sh/"] },
|
|
12
|
+
public: { http: ["https://rpc.pecorino.signet.sh/"] }
|
|
13
|
+
},
|
|
14
|
+
blockExplorers: {
|
|
15
|
+
default: {
|
|
16
|
+
name: "Pecorino Signet Explorer",
|
|
17
|
+
url: "https://explorer.pecorino.signet.sh/"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
testnet: true
|
|
21
|
+
};
|
|
22
|
+
var pecorinoHost = {
|
|
23
|
+
id: 3151908,
|
|
24
|
+
name: "Pecorino Host",
|
|
25
|
+
nativeCurrency: {
|
|
26
|
+
decimals: 18,
|
|
27
|
+
name: "ETH",
|
|
28
|
+
symbol: "ETH"
|
|
29
|
+
},
|
|
30
|
+
rpcUrls: {
|
|
31
|
+
default: { http: ["https://host-rpc.pecorino.signet.sh/"] },
|
|
32
|
+
public: { http: ["https://host-rpc.pecorino.signet.sh/"] }
|
|
33
|
+
},
|
|
34
|
+
blockExplorers: {
|
|
35
|
+
default: {
|
|
36
|
+
name: "Pecorino Host Explorer",
|
|
37
|
+
url: "https://explorer-host.pecorino.signet.sh/"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
testnet: true
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
// src/chains/config/all-chains.ts
|
|
44
|
+
import {
|
|
45
|
+
arbitrum,
|
|
46
|
+
arbitrumSepolia,
|
|
47
|
+
base,
|
|
48
|
+
baseSepolia,
|
|
49
|
+
bsc,
|
|
50
|
+
bscTestnet,
|
|
51
|
+
mainnet,
|
|
52
|
+
optimism,
|
|
53
|
+
optimismSepolia,
|
|
54
|
+
polygon,
|
|
55
|
+
polygonAmoy,
|
|
56
|
+
sepolia,
|
|
57
|
+
unichain,
|
|
58
|
+
unichainSepolia
|
|
59
|
+
} from "viem/chains";
|
|
60
|
+
|
|
61
|
+
// src/env.ts
|
|
62
|
+
var BUILD_MODE = "development";
|
|
63
|
+
|
|
64
|
+
// src/chains/config/all-chains.ts
|
|
65
|
+
var supportedChains = {
|
|
66
|
+
mainnet: {
|
|
67
|
+
mainnet,
|
|
68
|
+
base,
|
|
69
|
+
arbitrum,
|
|
70
|
+
optimism
|
|
71
|
+
},
|
|
72
|
+
testnet: {
|
|
73
|
+
sepolia,
|
|
74
|
+
baseSepolia,
|
|
75
|
+
arbitrumSepolia,
|
|
76
|
+
optimismSepolia,
|
|
77
|
+
pecorinoHost,
|
|
78
|
+
pecorinoSignet
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
var allSupportedChains = {
|
|
82
|
+
mainnet,
|
|
83
|
+
base,
|
|
84
|
+
arbitrum,
|
|
85
|
+
optimism,
|
|
86
|
+
bsc,
|
|
87
|
+
unichain,
|
|
88
|
+
polygon,
|
|
89
|
+
sepolia,
|
|
90
|
+
baseSepolia,
|
|
91
|
+
arbitrumSepolia,
|
|
92
|
+
optimismSepolia,
|
|
93
|
+
bscTestnet,
|
|
94
|
+
unichainSepolia,
|
|
95
|
+
polygonAmoy,
|
|
96
|
+
pecorinoHost,
|
|
97
|
+
pecorinoSignet
|
|
98
|
+
};
|
|
99
|
+
var getDefaultChainId = () => {
|
|
100
|
+
return BUILD_MODE === "production" ? base.id : baseSepolia.id;
|
|
101
|
+
};
|
|
102
|
+
var getDefaultChain = () => {
|
|
103
|
+
return BUILD_MODE === "production" ? base : baseSepolia;
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
// src/chains/config/mainnet-chains.ts
|
|
107
|
+
import { arbitrum as arbitrum2, base as base2, bsc as bsc2, mainnet as mainnet2, optimism as optimism2, polygon as polygon2, unichain as unichain2 } from "viem/chains";
|
|
108
|
+
var mainnetChains = [mainnet2, base2, arbitrum2, optimism2, bsc2, unichain2, polygon2];
|
|
109
|
+
var mainnetChainsById = new Map(
|
|
110
|
+
mainnetChains.map((chain) => [chain.id, chain])
|
|
111
|
+
);
|
|
112
|
+
function getMainnetChain(chainId) {
|
|
113
|
+
return mainnetChainsById.get(chainId);
|
|
114
|
+
}
|
|
115
|
+
function isMainnetChain(chainId) {
|
|
116
|
+
return mainnetChainsById.has(chainId);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
// src/chains/config/testnet-chains.ts
|
|
120
|
+
import {
|
|
121
|
+
arbitrumSepolia as arbitrumSepolia2,
|
|
122
|
+
baseSepolia as baseSepolia2,
|
|
123
|
+
bscTestnet as bscTestnet2,
|
|
124
|
+
optimismSepolia as optimismSepolia2,
|
|
125
|
+
polygonAmoy as polygonAmoy2,
|
|
126
|
+
sepolia as sepolia2,
|
|
127
|
+
unichainSepolia as unichainSepolia2
|
|
128
|
+
} from "viem/chains";
|
|
129
|
+
var testnetChains = [
|
|
130
|
+
sepolia2,
|
|
131
|
+
baseSepolia2,
|
|
132
|
+
arbitrumSepolia2,
|
|
133
|
+
optimismSepolia2,
|
|
134
|
+
bscTestnet2,
|
|
135
|
+
unichainSepolia2,
|
|
136
|
+
polygonAmoy2,
|
|
137
|
+
pecorinoHost,
|
|
138
|
+
pecorinoSignet
|
|
139
|
+
];
|
|
140
|
+
var testnetChainsById = new Map(
|
|
141
|
+
testnetChains.map((chain) => [chain.id, chain])
|
|
142
|
+
);
|
|
143
|
+
function getTestnetChain(chainId) {
|
|
144
|
+
return testnetChainsById.get(chainId);
|
|
145
|
+
}
|
|
146
|
+
function isTestnetChain(chainId) {
|
|
147
|
+
return testnetChainsById.has(chainId);
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
// src/chains/tokens/token-addresses.ts
|
|
151
|
+
import {
|
|
152
|
+
arbitrum as arbitrum3,
|
|
153
|
+
arbitrumSepolia as arbitrumSepolia3,
|
|
154
|
+
base as base3,
|
|
155
|
+
baseSepolia as baseSepolia3,
|
|
156
|
+
bsc as bsc3,
|
|
157
|
+
bscTestnet as bscTestnet3,
|
|
158
|
+
mainnet as mainnet3,
|
|
159
|
+
optimism as optimism3,
|
|
160
|
+
optimismSepolia as optimismSepolia3,
|
|
161
|
+
polygon as polygon3,
|
|
162
|
+
polygonAmoy as polygonAmoy3,
|
|
163
|
+
sepolia as sepolia3,
|
|
164
|
+
unichain as unichain3,
|
|
165
|
+
unichainSepolia as unichainSepolia3
|
|
166
|
+
} from "viem/chains";
|
|
167
|
+
|
|
168
|
+
// src/helpers/blockchain.ts
|
|
169
|
+
import { isAddressEqual } from "viem";
|
|
170
|
+
var DEFAULT_ADDRESS = "0x0000000000000000000000000000000000000000";
|
|
171
|
+
|
|
172
|
+
// src/chains/tokens/token-addresses.ts
|
|
173
|
+
var tokenAddresses = {
|
|
174
|
+
[mainnet3.id]: {
|
|
175
|
+
ETH: DEFAULT_ADDRESS,
|
|
176
|
+
WETH: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
|
|
177
|
+
USDC: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
178
|
+
USDT: "0xdAC17F958D2ee523a2206206994597C13D831ec7"
|
|
179
|
+
},
|
|
180
|
+
[base3.id]: {
|
|
181
|
+
ETH: DEFAULT_ADDRESS,
|
|
182
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
183
|
+
USDC: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
184
|
+
USDT: "0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2"
|
|
185
|
+
},
|
|
186
|
+
[arbitrum3.id]: {
|
|
187
|
+
ETH: DEFAULT_ADDRESS,
|
|
188
|
+
WETH: "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
|
|
189
|
+
USDC: "0xaf88d065e77c8cc2239327c5edb3a432268e5831",
|
|
190
|
+
USDT: "0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"
|
|
191
|
+
},
|
|
192
|
+
[optimism3.id]: {
|
|
193
|
+
ETH: DEFAULT_ADDRESS,
|
|
194
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
195
|
+
USDC: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
|
|
196
|
+
USDT: "0x94b008aA00579c1307B0EF2c499aD98a8ce58e58"
|
|
197
|
+
},
|
|
198
|
+
[sepolia3.id]: {
|
|
199
|
+
ETH: DEFAULT_ADDRESS,
|
|
200
|
+
WETH: "0xfFf9976782d46CC05630D1f6eBAb18b2324d6B14",
|
|
201
|
+
USDC: "0x1c7d4b196cb0c7b01d743fbc6116a902379c7238",
|
|
202
|
+
USDT: "0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0"
|
|
203
|
+
},
|
|
204
|
+
[baseSepolia3.id]: {
|
|
205
|
+
ETH: DEFAULT_ADDRESS,
|
|
206
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
207
|
+
USDC: "0x036CbD53842c5426634e7929541eC2318f3dCF7e",
|
|
208
|
+
USDT: "0x323e78f944A9a1FcF3a10efcC5319DBb0bB6e673"
|
|
209
|
+
},
|
|
210
|
+
[arbitrumSepolia3.id]: {
|
|
211
|
+
ETH: DEFAULT_ADDRESS,
|
|
212
|
+
WETH: "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
|
|
213
|
+
USDC: "0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d",
|
|
214
|
+
USDT: "0xE5b6C29411b3ad31C3613BbA0145293fC9957256"
|
|
215
|
+
},
|
|
216
|
+
[optimismSepolia3.id]: {
|
|
217
|
+
ETH: DEFAULT_ADDRESS,
|
|
218
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
219
|
+
USDC: "0x5fd84259d66Cd46123540766Be93DFE6D43130D7",
|
|
220
|
+
USDT: "0xebca682b6c15d539284432edc5b960771f0009e8"
|
|
221
|
+
},
|
|
222
|
+
[bsc3.id]: {
|
|
223
|
+
BNB: DEFAULT_ADDRESS,
|
|
224
|
+
WBNB: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
|
|
225
|
+
USDC: "0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d",
|
|
226
|
+
USDT: "0x55d398326f99059fF775485246999027B3197955"
|
|
227
|
+
},
|
|
228
|
+
[bscTestnet3.id]: {
|
|
229
|
+
BNB: DEFAULT_ADDRESS,
|
|
230
|
+
WBNB: "0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd",
|
|
231
|
+
USDC: "0x64544969ed7EBf5f083679233325356EbE738930"
|
|
232
|
+
},
|
|
233
|
+
[unichain3.id]: {
|
|
234
|
+
ETH: DEFAULT_ADDRESS,
|
|
235
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
236
|
+
USDC: "0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA"
|
|
237
|
+
},
|
|
238
|
+
[unichainSepolia3.id]: {
|
|
239
|
+
ETH: DEFAULT_ADDRESS,
|
|
240
|
+
WETH: "0x4200000000000000000000000000000000000006",
|
|
241
|
+
USDC: "0x4B4dB6adEdED34DC879EbBaed49D3054f26D8D87"
|
|
242
|
+
},
|
|
243
|
+
[polygon3.id]: {
|
|
244
|
+
POL: DEFAULT_ADDRESS,
|
|
245
|
+
MATIC: DEFAULT_ADDRESS,
|
|
246
|
+
WMATIC: "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",
|
|
247
|
+
USDC: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
|
|
248
|
+
USDT: "0xc2132D05D31c914a87C6611C10748AEb04B58e8F"
|
|
249
|
+
},
|
|
250
|
+
[polygonAmoy3.id]: {
|
|
251
|
+
POL: DEFAULT_ADDRESS,
|
|
252
|
+
MATIC: DEFAULT_ADDRESS,
|
|
253
|
+
WMATIC: "0x360ad4f9a9A8EFe9A8DCB5f461c4Cc1047E1Dcf9",
|
|
254
|
+
USDC: "0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582"
|
|
255
|
+
},
|
|
256
|
+
[pecorinoSignet.id]: {
|
|
257
|
+
USD: DEFAULT_ADDRESS
|
|
258
|
+
},
|
|
259
|
+
[pecorinoHost.id]: {
|
|
260
|
+
ETH: DEFAULT_ADDRESS
|
|
261
|
+
}
|
|
262
|
+
};
|
|
263
|
+
function getTokenAddresses(chainId) {
|
|
264
|
+
return tokenAddresses[chainId] || {};
|
|
265
|
+
}
|
|
266
|
+
function getTokenAddress(chainId, symbol) {
|
|
267
|
+
const addresses = getTokenAddresses(chainId);
|
|
268
|
+
return addresses[symbol.toUpperCase()];
|
|
269
|
+
}
|
|
270
|
+
function isTokenSupported(chainId, symbol) {
|
|
271
|
+
return getTokenAddress(chainId, symbol) !== void 0;
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
// src/chains/tokens/token-metadata.ts
|
|
275
|
+
var tokenMetadata = {
|
|
276
|
+
ETH: {
|
|
277
|
+
name: "Ether",
|
|
278
|
+
symbol: "ETH",
|
|
279
|
+
decimals: 18,
|
|
280
|
+
logoURI: "/tokens/eth.svg"
|
|
281
|
+
},
|
|
282
|
+
WETH: {
|
|
283
|
+
name: "Wrapped Ether",
|
|
284
|
+
symbol: "WETH",
|
|
285
|
+
decimals: 18,
|
|
286
|
+
logoURI: "/tokens/eth.svg",
|
|
287
|
+
type: "ERC20"
|
|
288
|
+
},
|
|
289
|
+
USD: {
|
|
290
|
+
name: "US Dollar",
|
|
291
|
+
symbol: "USD",
|
|
292
|
+
decimals: 18,
|
|
293
|
+
logoURI: "/tokens/usd.svg"
|
|
294
|
+
},
|
|
295
|
+
USDC: {
|
|
296
|
+
name: "USD Coin",
|
|
297
|
+
symbol: "USDC",
|
|
298
|
+
decimals: 6,
|
|
299
|
+
logoURI: "https://assets-cdn.trustwallet.com/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png",
|
|
300
|
+
type: "ERC20"
|
|
301
|
+
},
|
|
302
|
+
USDT: {
|
|
303
|
+
name: "Tether",
|
|
304
|
+
symbol: "USDT",
|
|
305
|
+
decimals: 6,
|
|
306
|
+
logoURI: "https://assets-cdn.trustwallet.com/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png",
|
|
307
|
+
type: "ERC20"
|
|
308
|
+
}
|
|
309
|
+
};
|
|
310
|
+
function getTokenMetadata(symbol) {
|
|
311
|
+
return tokenMetadata[symbol.toUpperCase()];
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
// src/chains/tokens/chain-tokens.ts
|
|
315
|
+
function getChainTokens(chainId) {
|
|
316
|
+
const addresses = getTokenAddresses(chainId);
|
|
317
|
+
const tokens = [];
|
|
318
|
+
for (const [symbol, address] of Object.entries(addresses)) {
|
|
319
|
+
const metadata = getTokenMetadata(symbol);
|
|
320
|
+
if (metadata && address) {
|
|
321
|
+
tokens.push({ ...metadata, address, chainId });
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
return tokens;
|
|
325
|
+
}
|
|
326
|
+
function getChainToken(chainId, symbol) {
|
|
327
|
+
const tokens = getChainTokens(chainId);
|
|
328
|
+
return tokens.find(
|
|
329
|
+
(token) => token.symbol.toUpperCase() === symbol.toUpperCase()
|
|
330
|
+
);
|
|
331
|
+
}
|
|
332
|
+
function getChainTokenByAddress(chainId, address) {
|
|
333
|
+
const tokens = getChainTokens(chainId);
|
|
334
|
+
return tokens.find(
|
|
335
|
+
(token) => token.address.toLowerCase() === address.toLowerCase()
|
|
336
|
+
);
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
// src/chains/config/supported-chains.ts
|
|
340
|
+
var allChains = [...mainnetChains, ...testnetChains];
|
|
341
|
+
var chainById = new Map(
|
|
342
|
+
allChains.map((chain) => [chain.id, chain])
|
|
343
|
+
);
|
|
344
|
+
function getChainById(chainId) {
|
|
345
|
+
return chainById.get(chainId);
|
|
346
|
+
}
|
|
347
|
+
function getChainConfig(chainId) {
|
|
348
|
+
const chain = getChainById(chainId);
|
|
349
|
+
if (!chain) return void 0;
|
|
350
|
+
return {
|
|
351
|
+
chain,
|
|
352
|
+
isTestnet: chain.testnet ?? false,
|
|
353
|
+
tokens: getChainTokens(chain.id)
|
|
354
|
+
};
|
|
355
|
+
}
|
|
356
|
+
function getMainnetChains() {
|
|
357
|
+
return mainnetChains.map((chain) => ({
|
|
358
|
+
chain,
|
|
359
|
+
isTestnet: false,
|
|
360
|
+
tokens: getChainTokens(chain.id)
|
|
361
|
+
}));
|
|
362
|
+
}
|
|
363
|
+
function getTestnetChains() {
|
|
364
|
+
return testnetChains.map((chain) => ({
|
|
365
|
+
chain,
|
|
366
|
+
isTestnet: true,
|
|
367
|
+
tokens: getChainTokens(chain.id)
|
|
368
|
+
}));
|
|
369
|
+
}
|
|
370
|
+
function getAllChains() {
|
|
371
|
+
return [...getMainnetChains(), ...getTestnetChains()];
|
|
372
|
+
}
|
|
373
|
+
function isSupportedChain(chainId) {
|
|
374
|
+
return chainById.has(chainId);
|
|
375
|
+
}
|
|
376
|
+
|
|
377
|
+
// src/chains/utils/filter-tokens.ts
|
|
378
|
+
function filterTokens(tokens, allowedSymbols, disabledSymbols) {
|
|
379
|
+
let result = tokens;
|
|
380
|
+
if (disabledSymbols.length > 0) {
|
|
381
|
+
result = result.filter(
|
|
382
|
+
(token) => !disabledSymbols.includes(token.symbol.toUpperCase())
|
|
383
|
+
);
|
|
384
|
+
}
|
|
385
|
+
if (allowedSymbols && allowedSymbols.length > 0) {
|
|
386
|
+
result = result.filter(
|
|
387
|
+
(token) => allowedSymbols.includes(token.symbol.toUpperCase())
|
|
388
|
+
);
|
|
389
|
+
}
|
|
390
|
+
return result;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
// src/chains/utils/token-maps.ts
|
|
394
|
+
function createTokenMaps(tokens) {
|
|
395
|
+
const byAddress = /* @__PURE__ */ new Map();
|
|
396
|
+
const bySymbol = /* @__PURE__ */ new Map();
|
|
397
|
+
tokens.forEach((token) => {
|
|
398
|
+
byAddress.set(token.address.toLowerCase(), token);
|
|
399
|
+
bySymbol.set(token.symbol.toLowerCase(), token);
|
|
400
|
+
});
|
|
401
|
+
return { byAddress, bySymbol };
|
|
402
|
+
}
|
|
403
|
+
function getTokenByAddress(maps, address) {
|
|
404
|
+
if (!address) return void 0;
|
|
405
|
+
return maps.byAddress.get(address.toLowerCase());
|
|
406
|
+
}
|
|
407
|
+
function getTokenBySymbol(maps, symbol) {
|
|
408
|
+
if (!symbol) return void 0;
|
|
409
|
+
return maps.bySymbol.get(symbol.toLowerCase());
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
// src/chains/utils/stablecoin.ts
|
|
413
|
+
var stablecoinSymbols = ["USDC", "USDT"];
|
|
414
|
+
function isStablecoin(symbol) {
|
|
415
|
+
if (typeof symbol === "string") {
|
|
416
|
+
return stablecoinSymbols.includes(
|
|
417
|
+
symbol
|
|
418
|
+
);
|
|
419
|
+
}
|
|
420
|
+
return symbol.every(
|
|
421
|
+
(s) => stablecoinSymbols.includes(s)
|
|
422
|
+
);
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
// src/chains/lambda/chain-mapping.ts
|
|
426
|
+
var CHAIN_ID_TO_LAMBDA_ID = {
|
|
427
|
+
/** Mainnet chains */
|
|
428
|
+
1: "ethereum",
|
|
429
|
+
8453: "base",
|
|
430
|
+
42161: "arbitrum",
|
|
431
|
+
10: "optimism",
|
|
432
|
+
56: "binance-smart-chain",
|
|
433
|
+
130: "unichain",
|
|
434
|
+
137: "polygon"
|
|
435
|
+
};
|
|
436
|
+
var LAMBDA_ID_TO_CHAIN_ID = {
|
|
437
|
+
ethereum: 1,
|
|
438
|
+
base: 8453,
|
|
439
|
+
arbitrum: 42161,
|
|
440
|
+
optimism: 10,
|
|
441
|
+
"binance-smart-chain": 56,
|
|
442
|
+
unichain: 130,
|
|
443
|
+
polygon: 137
|
|
444
|
+
};
|
|
445
|
+
function chainIdToLambdaId(chainId) {
|
|
446
|
+
return CHAIN_ID_TO_LAMBDA_ID[chainId];
|
|
447
|
+
}
|
|
448
|
+
function lambdaIdToChainId(lambdaId) {
|
|
449
|
+
return LAMBDA_ID_TO_CHAIN_ID[lambdaId];
|
|
450
|
+
}
|
|
451
|
+
function isLambdaSupportedChain(chainId) {
|
|
452
|
+
return chainId in CHAIN_ID_TO_LAMBDA_ID;
|
|
453
|
+
}
|
|
454
|
+
function getLambdaSupportedChainIds() {
|
|
455
|
+
return Object.keys(CHAIN_ID_TO_LAMBDA_ID).map(Number);
|
|
456
|
+
}
|
|
457
|
+
function getLambdaChainIds() {
|
|
458
|
+
return Object.values(CHAIN_ID_TO_LAMBDA_ID);
|
|
459
|
+
}
|
|
460
|
+
export {
|
|
461
|
+
CHAIN_ID_TO_LAMBDA_ID,
|
|
462
|
+
LAMBDA_ID_TO_CHAIN_ID,
|
|
463
|
+
allChains,
|
|
464
|
+
allSupportedChains,
|
|
465
|
+
chainById,
|
|
466
|
+
chainIdToLambdaId,
|
|
467
|
+
createTokenMaps,
|
|
468
|
+
filterTokens,
|
|
469
|
+
getAllChains,
|
|
470
|
+
getChainById,
|
|
471
|
+
getChainConfig,
|
|
472
|
+
getChainToken,
|
|
473
|
+
getChainTokenByAddress,
|
|
474
|
+
getChainTokens,
|
|
475
|
+
getDefaultChain,
|
|
476
|
+
getDefaultChainId,
|
|
477
|
+
getLambdaChainIds,
|
|
478
|
+
getLambdaSupportedChainIds,
|
|
479
|
+
getMainnetChain,
|
|
480
|
+
getMainnetChains,
|
|
481
|
+
getTestnetChain,
|
|
482
|
+
getTestnetChains,
|
|
483
|
+
getTokenAddress,
|
|
484
|
+
getTokenAddresses,
|
|
485
|
+
getTokenByAddress,
|
|
486
|
+
getTokenBySymbol,
|
|
487
|
+
getTokenMetadata,
|
|
488
|
+
isLambdaSupportedChain,
|
|
489
|
+
isMainnetChain,
|
|
490
|
+
isStablecoin,
|
|
491
|
+
isSupportedChain,
|
|
492
|
+
isTestnetChain,
|
|
493
|
+
isTokenSupported,
|
|
494
|
+
lambdaIdToChainId,
|
|
495
|
+
mainnetChains,
|
|
496
|
+
mainnetChainsById,
|
|
497
|
+
pecorinoHost,
|
|
498
|
+
pecorinoSignet,
|
|
499
|
+
supportedChains,
|
|
500
|
+
testnetChains,
|
|
501
|
+
testnetChainsById,
|
|
502
|
+
tokenAddresses,
|
|
503
|
+
tokenMetadata
|
|
504
|
+
};
|
|
505
|
+
//# sourceMappingURL=index.mjs.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/chains/config/custom-chains.ts", "../../src/chains/config/all-chains.ts", "../../src/env.ts", "../../src/chains/config/mainnet-chains.ts", "../../src/chains/config/testnet-chains.ts", "../../src/chains/tokens/token-addresses.ts", "../../src/helpers/blockchain.ts", "../../src/chains/tokens/token-metadata.ts", "../../src/chains/tokens/chain-tokens.ts", "../../src/chains/config/supported-chains.ts", "../../src/chains/utils/filter-tokens.ts", "../../src/chains/utils/token-maps.ts", "../../src/chains/utils/stablecoin.ts", "../../src/chains/lambda/chain-mapping.ts"],
|
|
4
|
+
"sourcesContent": ["import type { Chain } from \"viem/chains\";\n\nexport const pecorinoSignet = {\n id: 14174,\n name: \"Pecorino Signet\",\n nativeCurrency: {\n decimals: 18,\n name: \"USD\",\n symbol: \"USD\",\n },\n rpcUrls: {\n default: { http: [\"https://rpc.pecorino.signet.sh/\"] },\n public: { http: [\"https://rpc.pecorino.signet.sh/\"] },\n },\n blockExplorers: {\n default: {\n name: \"Pecorino Signet Explorer\",\n url: \"https://explorer.pecorino.signet.sh/\",\n },\n },\n testnet: true,\n} as const satisfies Chain;\n\nexport const pecorinoHost = {\n id: 3151908,\n name: \"Pecorino Host\",\n nativeCurrency: {\n decimals: 18,\n name: \"ETH\",\n symbol: \"ETH\",\n },\n rpcUrls: {\n default: { http: [\"https://host-rpc.pecorino.signet.sh/\"] },\n public: { http: [\"https://host-rpc.pecorino.signet.sh/\"] },\n },\n blockExplorers: {\n default: {\n name: \"Pecorino Host Explorer\",\n url: \"https://explorer-host.pecorino.signet.sh/\",\n },\n },\n testnet: true,\n} as const satisfies Chain;\n", "import {\n arbitrum,\n arbitrumSepolia,\n base,\n baseSepolia,\n bsc,\n bscTestnet,\n mainnet,\n optimism,\n optimismSepolia,\n polygon,\n polygonAmoy,\n sepolia,\n unichain,\n unichainSepolia,\n} from \"viem/chains\";\n\nimport { pecorinoHost, pecorinoSignet } from \"./custom-chains\";\nimport { BUILD_MODE } from \"../../env\";\n\nexport const supportedChains = {\n mainnet: {\n mainnet,\n base,\n arbitrum,\n optimism,\n },\n testnet: {\n sepolia,\n baseSepolia,\n arbitrumSepolia,\n optimismSepolia,\n pecorinoHost,\n pecorinoSignet,\n },\n} as const;\n\nexport const allSupportedChains = {\n mainnet,\n base,\n arbitrum,\n optimism,\n bsc,\n unichain,\n polygon,\n sepolia,\n baseSepolia,\n arbitrumSepolia,\n optimismSepolia,\n bscTestnet,\n unichainSepolia,\n polygonAmoy,\n pecorinoHost,\n pecorinoSignet,\n} as const;\n\n/**\n * Get the default chain ID based on the current environment.\n * Production/Preview: Base mainnet\n * Development: Base Sepolia\n */\nexport const getDefaultChainId = (): number => {\n return BUILD_MODE === \"production\" ? base.id : baseSepolia.id;\n};\n\n/**\n * Get the default chain based on the current environment.\n * Production/Preview: Base mainnet\n * Development: Base Sepolia\n */\nexport const getDefaultChain = () => {\n return BUILD_MODE === \"production\" ? base : baseSepolia;\n};\n\nexport type SupportedChainName = keyof typeof allSupportedChains;\nexport type MainnetChainName = keyof typeof supportedChains.mainnet;\nexport type TestnetChainName = keyof typeof supportedChains.testnet;\n", "/**\n * Environment configuration for @otim/utils\n *\n * These values are injected at build time via esbuild's define option.\n * See scripts/build.js for the injection logic.\n */\n\n/**\n * Build mode - determines production vs development behavior\n * Values: \"production\" | \"development\"\n */\nexport const BUILD_MODE = process.env.BUILD_MODE || \"development\";\n\n/**\n * App API URL - base URL for API requests\n * Defaults to production URL if not specified\n */\nexport const APP_API_URL =\n process.env.NEXT_PUBLIC_APP_API_URL || \"https://app.otim.com/api\";\n", "import type { Optional } from \"@otim/utils/helpers\";\nimport type { Chain } from \"viem/chains\";\n\nimport { arbitrum, base, bsc, mainnet, optimism, polygon, unichain } from \"viem/chains\";\n\nexport const mainnetChains = [mainnet, base, arbitrum, optimism, bsc, unichain, polygon] as const;\n\nexport const mainnetChainsById = new Map<number, Chain>(\n mainnetChains.map((chain) => [chain.id, chain]),\n);\n\nexport function getMainnetChain(chainId: number): Optional<Chain> {\n return mainnetChainsById.get(chainId);\n}\n\nexport function isMainnetChain(chainId: number): boolean {\n return mainnetChainsById.has(chainId);\n}\n", "import type { Optional } from \"@otim/utils/helpers\";\nimport type { Chain } from \"viem/chains\";\n\nimport {\n arbitrumSepolia,\n baseSepolia,\n bscTestnet,\n optimismSepolia,\n polygonAmoy,\n sepolia,\n unichainSepolia,\n} from \"viem/chains\";\n\nimport { pecorinoHost, pecorinoSignet } from \"./custom-chains\";\n\nexport const testnetChains = [\n sepolia,\n baseSepolia,\n arbitrumSepolia,\n optimismSepolia,\n bscTestnet,\n unichainSepolia,\n polygonAmoy,\n pecorinoHost,\n pecorinoSignet,\n] as const;\n\nexport const testnetChainsById = new Map<number, Chain>(\n testnetChains.map((chain) => [chain.id, chain]),\n);\n\nexport function getTestnetChain(chainId: number): Optional<Chain> {\n return testnetChainsById.get(chainId);\n}\n\nexport function isTestnetChain(chainId: number): boolean {\n return testnetChainsById.has(chainId);\n}\n", "import type { ChainTokenAddresses } from \"../types\";\nimport type { Optional } from \"@otim/utils/helpers\";\nimport type { Address } from \"@otim/utils/schemas\";\n\nimport {\n arbitrum,\n arbitrumSepolia,\n base,\n baseSepolia,\n bsc,\n bscTestnet,\n mainnet,\n optimism,\n optimismSepolia,\n polygon,\n polygonAmoy,\n sepolia,\n unichain,\n unichainSepolia,\n} from \"viem/chains\";\n\nimport { DEFAULT_ADDRESS } from \"../../helpers\";\nimport { pecorinoHost, pecorinoSignet } from \"../config/custom-chains\";\n\nexport const tokenAddresses: Record<number, ChainTokenAddresses> = {\n [mainnet.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2\",\n USDC: \"0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48\",\n USDT: \"0xdAC17F958D2ee523a2206206994597C13D831ec7\",\n },\n [base.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n USDT: \"0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2\",\n },\n [arbitrum.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\",\n USDC: \"0xaf88d065e77c8cc2239327c5edb3a432268e5831\",\n USDT: \"0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9\",\n },\n [optimism.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85\",\n USDT: \"0x94b008aA00579c1307B0EF2c499aD98a8ce58e58\",\n },\n [sepolia.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0xfFf9976782d46CC05630D1f6eBAb18b2324d6B14\",\n USDC: \"0x1c7d4b196cb0c7b01d743fbc6116a902379c7238\",\n USDT: \"0xaa8e23fb1079ea71e0a56f48a2aa51851d8433d0\",\n },\n [baseSepolia.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0x036CbD53842c5426634e7929541eC2318f3dCF7e\",\n USDT: \"0x323e78f944A9a1FcF3a10efcC5319DBb0bB6e673\",\n },\n [arbitrumSepolia.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x82aF49447D8a07e3bd95BD0d56f35241523fBab1\",\n USDC: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n USDT: \"0xE5b6C29411b3ad31C3613BbA0145293fC9957256\",\n },\n [optimismSepolia.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0x5fd84259d66Cd46123540766Be93DFE6D43130D7\",\n USDT: \"0xebca682b6c15d539284432edc5b960771f0009e8\",\n },\n [bsc.id]: {\n BNB: DEFAULT_ADDRESS,\n WBNB: \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\",\n USDC: \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\",\n USDT: \"0x55d398326f99059fF775485246999027B3197955\",\n },\n [bscTestnet.id]: {\n BNB: DEFAULT_ADDRESS,\n WBNB: \"0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd\",\n USDC: \"0x64544969ed7EBf5f083679233325356EbE738930\",\n },\n [unichain.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA\",\n },\n [unichainSepolia.id]: {\n ETH: DEFAULT_ADDRESS,\n WETH: \"0x4200000000000000000000000000000000000006\",\n USDC: \"0x4B4dB6adEdED34DC879EbBaed49D3054f26D8D87\",\n },\n [polygon.id]: {\n POL: DEFAULT_ADDRESS,\n MATIC: DEFAULT_ADDRESS,\n WMATIC: \"0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270\",\n USDC: \"0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359\",\n USDT: \"0xc2132D05D31c914a87C6611C10748AEb04B58e8F\",\n },\n [polygonAmoy.id]: {\n POL: DEFAULT_ADDRESS,\n MATIC: DEFAULT_ADDRESS,\n WMATIC: \"0x360ad4f9a9A8EFe9A8DCB5f461c4Cc1047E1Dcf9\",\n USDC: \"0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582\",\n },\n [pecorinoSignet.id]: {\n USD: DEFAULT_ADDRESS,\n },\n [pecorinoHost.id]: {\n ETH: DEFAULT_ADDRESS,\n },\n};\n\nexport function getTokenAddresses(chainId: number): ChainTokenAddresses {\n return tokenAddresses[chainId] || {};\n}\n\nexport function getTokenAddress(\n chainId: number,\n symbol: string,\n): Optional<Address> {\n const addresses = getTokenAddresses(chainId);\n return addresses[symbol.toUpperCase()];\n}\n\nexport function isTokenSupported(chainId: number, symbol: string): boolean {\n return getTokenAddress(chainId, symbol) !== undefined;\n}\n", "import type { EIP2098Signature, HexString, VRS } from \"@otim/utils/schemas\";\nimport type { Chain } from \"viem\";\n\nimport { isAddressEqual } from \"viem\";\n\nexport const truncateAddress = (address: string): string => {\n if (!address) return \"\";\n return `${address.slice(0, 6)}...${address.slice(-4)}`;\n};\n\n/**\n * Ethereum address regex pattern\n * Matches addresses like 0x1234...abcd (40 hex characters after 0x prefix)\n */\nexport const ETHEREUM_ADDRESS_REGEX = /^0x[a-fA-F0-9]{40}$/;\n\n/**\n * Validates if a string is a valid Ethereum address format\n * @param address - The address string to validate\n * @returns true if the address matches the Ethereum address format\n */\nexport const isValidEthereumAddress = (address: string): boolean => {\n return ETHEREUM_ADDRESS_REGEX.test(address);\n};\n\n/**\n * Parses a signature string into its v, r, s components.\n * @param signature - The signature string to parse (must be 0x-prefixed, 132 chars total)\n * @returns VRS object containing v, r, and s values\n */\nexport const parseSignatureToVRS = (signature: string): VRS => {\n if (typeof signature !== \"string\") {\n throw new Error(\"Signature must be a string\");\n }\n\n if (!signature.startsWith(\"0x\")) {\n throw new Error('Signature must start with \"0x\"');\n }\n\n if (signature.length !== 132) {\n throw new Error(\n 'Signature must be 65 bytes (130 hex chars) plus \"0x\" = 132 total length',\n );\n }\n\n const r = signature.slice(2, 66);\n const s = signature.slice(66, 130);\n const vHex = signature.slice(130, 132);\n const v = parseInt(vHex, 16);\n return { v, r: `0x${r}`, s: `0x${s}` };\n};\n\n/**\n * Checks if a v value is valid according to EIP-155.\n */\nexport const isValidV = (v: number): boolean => {\n return v === 0 || v === 1 || v === 27 || v === 28 || v >= 35;\n};\n\n/**\n * Normalizes v value for EIP-155 compliance.\n */\nexport const normalizeV = (v: number) => {\n if (!isValidV(v)) return 0;\n\n const cmp = v <= 1 ? 1 : 0;\n const result = v % 2 === cmp;\n\n return Number(result) % 2;\n};\n\n/**\n * Creates an EIP-2098 compact signature from VRS components.\n * @param vrs - The VRS signature components\n * @returns EIP2098Signature object with yParity, r, and s\n */\nexport const createEIP2098Signature = (vrs: VRS): EIP2098Signature => {\n const v = vrs.v;\n const r = vrs.r;\n const s = vrs.s;\n\n return { yParity: normalizeV(v), r, s };\n};\n\nexport const getChainRpcUrl = (\n chainId: number,\n chains: readonly [Chain, ...Chain[]],\n) => {\n const chain = chains.find((chain) => chain.id === chainId);\n return chain?.rpcUrls.default;\n};\n\nexport const DEFAULT_ADDRESS = \"0x0000000000000000000000000000000000000000\";\n\nexport const isNullAddress = (address: HexString) => {\n return isAddressEqual(address, DEFAULT_ADDRESS);\n};\n", "import type { TokenMetadata } from \"../types\";\nimport type { Optional } from \"@otim/utils/helpers\";\n\nexport const tokenMetadata: Record<string, TokenMetadata> = {\n ETH: {\n name: \"Ether\",\n symbol: \"ETH\",\n decimals: 18,\n logoURI: \"/tokens/eth.svg\",\n },\n WETH: {\n name: \"Wrapped Ether\",\n symbol: \"WETH\",\n decimals: 18,\n logoURI: \"/tokens/eth.svg\",\n type: \"ERC20\",\n },\n USD: {\n name: \"US Dollar\",\n symbol: \"USD\",\n decimals: 18,\n logoURI: \"/tokens/usd.svg\",\n },\n USDC: {\n name: \"USD Coin\",\n symbol: \"USDC\",\n decimals: 6,\n logoURI:\n \"https://assets-cdn.trustwallet.com/blockchains/ethereum/assets/0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48/logo.png\",\n type: \"ERC20\",\n },\n USDT: {\n name: \"Tether\",\n symbol: \"USDT\",\n decimals: 6,\n logoURI:\n \"https://assets-cdn.trustwallet.com/blockchains/ethereum/assets/0xdAC17F958D2ee523a2206206994597C13D831ec7/logo.png\",\n type: \"ERC20\",\n },\n};\n\nexport function getTokenMetadata(symbol: string): Optional<TokenMetadata> {\n return tokenMetadata[symbol.toUpperCase()];\n}\n", "import type { ChainToken } from \"../types\";\nimport type { Optional } from \"@otim/utils/helpers\";\n\nimport { getTokenAddresses } from \"./token-addresses\";\nimport { getTokenMetadata } from \"./token-metadata\";\n\nexport function getChainTokens(chainId: number): ChainToken[] {\n const addresses = getTokenAddresses(chainId);\n const tokens: ChainToken[] = [];\n\n for (const [symbol, address] of Object.entries(addresses)) {\n const metadata = getTokenMetadata(symbol);\n\n if (metadata && address) {\n tokens.push({ ...metadata, address, chainId });\n }\n }\n\n return tokens;\n}\n\nexport function getChainToken(\n chainId: number,\n symbol: string,\n): Optional<ChainToken> {\n const tokens = getChainTokens(chainId);\n return tokens.find(\n (token) => token.symbol.toUpperCase() === symbol.toUpperCase(),\n );\n}\n\nexport function getChainTokenByAddress(\n chainId: number,\n address: string,\n): Optional<ChainToken> {\n const tokens = getChainTokens(chainId);\n return tokens.find(\n (token) => token.address.toLowerCase() === address.toLowerCase(),\n );\n}\n", "import type { ChainConfig } from \"../types\";\nimport type { Optional } from \"@otim/utils/helpers\";\nimport type { Chain } from \"viem/chains\";\n\nimport { mainnetChains } from \"./mainnet-chains\";\nimport { testnetChains } from \"./testnet-chains\";\nimport { getChainTokens } from \"../tokens/chain-tokens\";\n\nexport const allChains = [...mainnetChains, ...testnetChains] as const;\n\nexport type SupportedChainId = (typeof allChains)[number][\"id\"];\n\nexport const chainById = new Map<number, Chain>(\n allChains.map((chain) => [chain.id, chain]),\n);\n\nexport function getChainById(chainId: number): Optional<Chain> {\n return chainById.get(chainId);\n}\n\nexport function getChainConfig(chainId: number): Optional<ChainConfig> {\n const chain = getChainById(chainId);\n if (!chain) return undefined;\n\n return {\n chain,\n isTestnet: chain.testnet ?? false,\n tokens: getChainTokens(chain.id),\n };\n}\n\nexport function getMainnetChains(): ChainConfig[] {\n return mainnetChains.map((chain) => ({\n chain,\n isTestnet: false,\n tokens: getChainTokens(chain.id),\n }));\n}\n\nexport function getTestnetChains(): ChainConfig[] {\n return testnetChains.map((chain) => ({\n chain,\n isTestnet: true,\n tokens: getChainTokens(chain.id),\n }));\n}\n\nexport function getAllChains(): ChainConfig[] {\n return [...getMainnetChains(), ...getTestnetChains()];\n}\n\nexport function isSupportedChain(chainId: number): boolean {\n return chainById.has(chainId);\n}\n", "import type { ChainToken } from \"../types\";\n\nexport function filterTokens(\n tokens: ChainToken[],\n allowedSymbols: string[],\n disabledSymbols: string[],\n): ChainToken[] {\n let result = tokens;\n\n if (disabledSymbols.length > 0) {\n result = result.filter(\n (token) => !disabledSymbols.includes(token.symbol.toUpperCase()),\n );\n }\n\n if (allowedSymbols && allowedSymbols.length > 0) {\n result = result.filter((token) =>\n allowedSymbols.includes(token.symbol.toUpperCase()),\n );\n }\n\n return result;\n}\n", "import type { ChainToken } from \"../types\";\nimport type { Optional } from \"@otim/utils/helpers\";\n\nexport interface TokenMaps {\n byAddress: Map<string, ChainToken>;\n bySymbol: Map<string, ChainToken>;\n}\n\nexport function createTokenMaps(tokens: ChainToken[]): TokenMaps {\n const byAddress = new Map<string, ChainToken>();\n const bySymbol = new Map<string, ChainToken>();\n\n tokens.forEach((token) => {\n byAddress.set(token.address.toLowerCase(), token);\n bySymbol.set(token.symbol.toLowerCase(), token);\n });\n\n return { byAddress, bySymbol };\n}\n\nexport function getTokenByAddress(\n maps: TokenMaps,\n address: string,\n): Optional<ChainToken> {\n if (!address) return undefined;\n return maps.byAddress.get(address.toLowerCase());\n}\n\nexport function getTokenBySymbol(\n maps: TokenMaps,\n symbol: string,\n): Optional<ChainToken> {\n if (!symbol) return undefined;\n return maps.bySymbol.get(symbol.toLowerCase());\n}\n", "/**\n * List of supported stablecoin symbols\n */\nconst stablecoinSymbols = [\"USDC\", \"USDT\"] as const;\n\n/**\n * Checks if a token symbol is a stablecoin\n * @param symbol - Token symbol to check (e.g., \"USDC\", \"ETH\")\n * @returns true if the symbol is a recognized stablecoin\n */\nexport function isStablecoin(symbol: string | string[]): boolean {\n if (typeof symbol === \"string\") {\n return stablecoinSymbols.includes(\n symbol as (typeof stablecoinSymbols)[number],\n );\n }\n\n return symbol.every((s) =>\n stablecoinSymbols.includes(s as (typeof stablecoinSymbols)[number]),\n );\n}\n", "import type { Optional } from \"@otim/utils/helpers\";\n\n/**\n * Mapping between chain ID numbers (used internally by otim) and\n * Lambda API chain ID strings (used by Lambda's API endpoints).\n *\n * Lambda uses string identifiers for chains while we use numeric chain IDs\n * from viem/wagmi. This map provides bidirectional conversion.\n */\n\n/**\n * Map from numeric chain ID to Lambda chain ID string\n */\nexport const CHAIN_ID_TO_LAMBDA_ID: Record<number, string> = {\n /** Mainnet chains */\n 1: \"ethereum\",\n 8453: \"base\",\n 42161: \"arbitrum\",\n 10: \"optimism\",\n 56: \"binance-smart-chain\",\n 130: \"unichain\",\n 137: \"polygon\",\n} as const;\n\n/**\n * Map from Lambda chain ID string to numeric chain ID\n */\nexport const LAMBDA_ID_TO_CHAIN_ID: Record<string, number> = {\n ethereum: 1,\n base: 8453,\n arbitrum: 42161,\n optimism: 10,\n \"binance-smart-chain\": 56,\n unichain: 130,\n polygon: 137,\n} as const;\n\n/**\n * Convert a numeric chain ID to Lambda's chain ID string\n * @param chainId - The numeric chain ID\n * @returns The Lambda chain ID string, or undefined if not supported by Lambda\n * @example\n * ```ts\n * chainIdToLambdaId(8453) // \"base\"\n * chainIdToLambdaId(1) // \"ethereum\"\n * ```\n */\n\nexport function chainIdToLambdaId(chainId: number): Optional<string> {\n return CHAIN_ID_TO_LAMBDA_ID[chainId];\n}\n\n/**\n * Convert a Lambda chain ID string to numeric chain ID\n * @param lambdaId - The Lambda chain ID string\n * @returns The numeric chain ID, or undefined if not recognized\n * @example\n * ```ts\n * lambdaIdToChainId(\"base\") // 8453\n * lambdaIdToChainId(\"ethereum\") // 1\n * ```\n */\nexport function lambdaIdToChainId(lambdaId: string): Optional<number> {\n return LAMBDA_ID_TO_CHAIN_ID[lambdaId];\n}\n\n/**\n * Check if a chain ID is supported by Lambda\n * @param chainId - The numeric chain ID to check\n * @returns true if the chain is supported by Lambda\n */\nexport function isLambdaSupportedChain(chainId: number): boolean {\n return chainId in CHAIN_ID_TO_LAMBDA_ID;\n}\n\n/**\n * Get all chain IDs supported by Lambda\n * @returns Array of numeric chain IDs that are supported by Lambda\n */\nexport function getLambdaSupportedChainIds(): number[] {\n return Object.keys(CHAIN_ID_TO_LAMBDA_ID).map(Number);\n}\n\n/**\n * Get all Lambda chain ID strings\n * @returns Array of Lambda chain ID strings\n */\nexport function getLambdaChainIds(): string[] {\n return Object.values(CHAIN_ID_TO_LAMBDA_ID);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["arbitrum", "base", "bsc", "mainnet", "optimism", "polygon", "unichain", "arbitrumSepolia", "baseSepolia", "bscTestnet", "optimismSepolia", "polygonAmoy", "sepolia", "unichainSepolia", "sepolia", "baseSepolia", "arbitrumSepolia", "optimismSepolia", "bscTestnet", "unichainSepolia", "polygonAmoy", "arbitrum", "arbitrumSepolia", "base", "baseSepolia", "bsc", "bscTestnet", "mainnet", "optimism", "optimismSepolia", "polygon", "polygonAmoy", "sepolia", "unichain", "unichainSepolia", "mainnet", "base", "arbitrum", "optimism", "sepolia", "baseSepolia", "arbitrumSepolia", "optimismSepolia", "bsc", "bscTestnet", "unichain", "unichainSepolia", "polygon", "polygonAmoy"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Optional } from "@otim/utils/helpers";
|
|
2
|
+
/**
|
|
3
|
+
* Mapping between chain ID numbers (used internally by otim) and
|
|
4
|
+
* Lambda API chain ID strings (used by Lambda's API endpoints).
|
|
5
|
+
*
|
|
6
|
+
* Lambda uses string identifiers for chains while we use numeric chain IDs
|
|
7
|
+
* from viem/wagmi. This map provides bidirectional conversion.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Map from numeric chain ID to Lambda chain ID string
|
|
11
|
+
*/
|
|
12
|
+
export declare const CHAIN_ID_TO_LAMBDA_ID: Record<number, string>;
|
|
13
|
+
/**
|
|
14
|
+
* Map from Lambda chain ID string to numeric chain ID
|
|
15
|
+
*/
|
|
16
|
+
export declare const LAMBDA_ID_TO_CHAIN_ID: Record<string, number>;
|
|
17
|
+
/**
|
|
18
|
+
* Convert a numeric chain ID to Lambda's chain ID string
|
|
19
|
+
* @param chainId - The numeric chain ID
|
|
20
|
+
* @returns The Lambda chain ID string, or undefined if not supported by Lambda
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* chainIdToLambdaId(8453) // "base"
|
|
24
|
+
* chainIdToLambdaId(1) // "ethereum"
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function chainIdToLambdaId(chainId: number): Optional<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Convert a Lambda chain ID string to numeric chain ID
|
|
30
|
+
* @param lambdaId - The Lambda chain ID string
|
|
31
|
+
* @returns The numeric chain ID, or undefined if not recognized
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* lambdaIdToChainId("base") // 8453
|
|
35
|
+
* lambdaIdToChainId("ethereum") // 1
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export declare function lambdaIdToChainId(lambdaId: string): Optional<number>;
|
|
39
|
+
/**
|
|
40
|
+
* Check if a chain ID is supported by Lambda
|
|
41
|
+
* @param chainId - The numeric chain ID to check
|
|
42
|
+
* @returns true if the chain is supported by Lambda
|
|
43
|
+
*/
|
|
44
|
+
export declare function isLambdaSupportedChain(chainId: number): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Get all chain IDs supported by Lambda
|
|
47
|
+
* @returns Array of numeric chain IDs that are supported by Lambda
|
|
48
|
+
*/
|
|
49
|
+
export declare function getLambdaSupportedChainIds(): number[];
|
|
50
|
+
/**
|
|
51
|
+
* Get all Lambda chain ID strings
|
|
52
|
+
* @returns Array of Lambda chain ID strings
|
|
53
|
+
*/
|
|
54
|
+
export declare function getLambdaChainIds(): string[];
|
|
55
|
+
//# sourceMappingURL=chain-mapping.d.ts.map
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { Optional } from "@otim/utils/helpers";
|
|
2
|
+
/**
|
|
3
|
+
* Mapping between chain ID numbers (used internally by otim) and
|
|
4
|
+
* Lambda API chain ID strings (used by Lambda's API endpoints).
|
|
5
|
+
*
|
|
6
|
+
* Lambda uses string identifiers for chains while we use numeric chain IDs
|
|
7
|
+
* from viem/wagmi. This map provides bidirectional conversion.
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Map from numeric chain ID to Lambda chain ID string
|
|
11
|
+
*/
|
|
12
|
+
export declare const CHAIN_ID_TO_LAMBDA_ID: Record<number, string>;
|
|
13
|
+
/**
|
|
14
|
+
* Map from Lambda chain ID string to numeric chain ID
|
|
15
|
+
*/
|
|
16
|
+
export declare const LAMBDA_ID_TO_CHAIN_ID: Record<string, number>;
|
|
17
|
+
/**
|
|
18
|
+
* Convert a numeric chain ID to Lambda's chain ID string
|
|
19
|
+
* @param chainId - The numeric chain ID
|
|
20
|
+
* @returns The Lambda chain ID string, or undefined if not supported by Lambda
|
|
21
|
+
* @example
|
|
22
|
+
* ```ts
|
|
23
|
+
* chainIdToLambdaId(8453) // "base"
|
|
24
|
+
* chainIdToLambdaId(1) // "ethereum"
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export declare function chainIdToLambdaId(chainId: number): Optional<string>;
|
|
28
|
+
/**
|
|
29
|
+
* Convert a Lambda chain ID string to numeric chain ID
|
|
30
|
+
* @param lambdaId - The Lambda chain ID string
|
|
31
|
+
* @returns The numeric chain ID, or undefined if not recognized
|
|
32
|
+
* @example
|
|
33
|
+
* ```ts
|
|
34
|
+
* lambdaIdToChainId("base") // 8453
|
|
35
|
+
* lambdaIdToChainId("ethereum") // 1
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export declare function lambdaIdToChainId(lambdaId: string): Optional<number>;
|
|
39
|
+
/**
|
|
40
|
+
* Check if a chain ID is supported by Lambda
|
|
41
|
+
* @param chainId - The numeric chain ID to check
|
|
42
|
+
* @returns true if the chain is supported by Lambda
|
|
43
|
+
*/
|
|
44
|
+
export declare function isLambdaSupportedChain(chainId: number): boolean;
|
|
45
|
+
/**
|
|
46
|
+
* Get all chain IDs supported by Lambda
|
|
47
|
+
* @returns Array of numeric chain IDs that are supported by Lambda
|
|
48
|
+
*/
|
|
49
|
+
export declare function getLambdaSupportedChainIds(): number[];
|
|
50
|
+
/**
|
|
51
|
+
* Get all Lambda chain ID strings
|
|
52
|
+
* @returns Array of Lambda chain ID strings
|
|
53
|
+
*/
|
|
54
|
+
export declare function getLambdaChainIds(): string[];
|
|
55
|
+
//# sourceMappingURL=chain-mapping.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chain-mapping.d.ts","sourceRoot":"","sources":["../../../src/chains/lambda/chain-mapping.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;;;;GAMG;AAEH;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAS/C,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAQ/C,CAAC;AAEX;;;;;;;;;GASG;AAEH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAEnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAEpE;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,EAAE,CAErD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C"}
|