@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,2030 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
+
|
|
5
|
+
// src/api/core/error.ts
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
var apiErrorSchema = z.object({
|
|
8
|
+
code: z.string().nullish(),
|
|
9
|
+
message: z.string().nullish(),
|
|
10
|
+
errorCode: z.string().nullish(),
|
|
11
|
+
errorMessage: z.string().nullish(),
|
|
12
|
+
status: z.number().nullish(),
|
|
13
|
+
context: z.object({
|
|
14
|
+
field_errors: z.record(z.string(), z.string()).nullish()
|
|
15
|
+
}).nullish()
|
|
16
|
+
});
|
|
17
|
+
var errorResponseSchema = z.object({
|
|
18
|
+
message: z.string().nullish(),
|
|
19
|
+
errorMessage: z.string().nullish(),
|
|
20
|
+
errorCode: z.string().nullish(),
|
|
21
|
+
errors: z.array(apiErrorSchema).nullish()
|
|
22
|
+
});
|
|
23
|
+
var defaultErrorCode = "unknown";
|
|
24
|
+
var defaultErrorMessage = "Unexpected error";
|
|
25
|
+
function extractErrorData(maybeError) {
|
|
26
|
+
let errorData = maybeError?.body;
|
|
27
|
+
if (!errorData && maybeError?.response?.data) {
|
|
28
|
+
errorData = maybeError.response.data;
|
|
29
|
+
}
|
|
30
|
+
if (!errorData && (maybeError?.errorMessage || maybeError?.message || maybeError?.errorCode)) {
|
|
31
|
+
errorData = maybeError;
|
|
32
|
+
}
|
|
33
|
+
return errorData;
|
|
34
|
+
}
|
|
35
|
+
function getErrorMessage(maybeError, fallbackMessage) {
|
|
36
|
+
const errorMessage = fallbackMessage ?? defaultErrorMessage;
|
|
37
|
+
const errorData = extractErrorData(maybeError);
|
|
38
|
+
const result = errorResponseSchema.safeParse(errorData);
|
|
39
|
+
if (!result.success) {
|
|
40
|
+
return errorMessage;
|
|
41
|
+
}
|
|
42
|
+
const { message, errorMessage: apiErrorMessage, errors } = result.data;
|
|
43
|
+
return apiErrorMessage ?? message ?? errors?.[0]?.errorMessage ?? errors?.[0]?.message ?? errorMessage;
|
|
44
|
+
}
|
|
45
|
+
function getErrorMessageWithCode(maybeError, fallbackMessage) {
|
|
46
|
+
const errorMessage = fallbackMessage ?? defaultErrorMessage;
|
|
47
|
+
const errorData = extractErrorData(maybeError);
|
|
48
|
+
const result = errorResponseSchema.safeParse(errorData);
|
|
49
|
+
if (!result.success || !result.data.errors?.[0] && !result.data.errorMessage && !result.data.message) {
|
|
50
|
+
return {
|
|
51
|
+
message: errorMessage,
|
|
52
|
+
code: defaultErrorCode
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
const {
|
|
56
|
+
message,
|
|
57
|
+
errorMessage: apiErrorMessage,
|
|
58
|
+
errorCode,
|
|
59
|
+
errors
|
|
60
|
+
} = result.data;
|
|
61
|
+
return {
|
|
62
|
+
message: apiErrorMessage ?? message ?? errors?.[0]?.errorMessage ?? errors?.[0]?.message ?? errorMessage,
|
|
63
|
+
code: errorCode ?? errors?.[0]?.errorCode ?? errors?.[0]?.code ?? defaultErrorCode
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
function isUserRejectionError(error) {
|
|
67
|
+
if (!error) return false;
|
|
68
|
+
let errorMessage = "";
|
|
69
|
+
if (typeof error === "string") {
|
|
70
|
+
errorMessage = error;
|
|
71
|
+
} else if (typeof error === "object") {
|
|
72
|
+
errorMessage = error.message || error.errorMessage || error.details || "";
|
|
73
|
+
}
|
|
74
|
+
if (!errorMessage) {
|
|
75
|
+
errorMessage = String(error);
|
|
76
|
+
}
|
|
77
|
+
errorMessage = errorMessage.toLowerCase();
|
|
78
|
+
const rejectionPatterns = [
|
|
79
|
+
"user rejected",
|
|
80
|
+
"user denied",
|
|
81
|
+
"user cancelled",
|
|
82
|
+
"cancelled by user",
|
|
83
|
+
"rejected by user",
|
|
84
|
+
"user abort",
|
|
85
|
+
"transaction rejected",
|
|
86
|
+
"signature rejected",
|
|
87
|
+
"request rejected"
|
|
88
|
+
];
|
|
89
|
+
return rejectionPatterns.some((pattern) => errorMessage.includes(pattern));
|
|
90
|
+
}
|
|
91
|
+
var isUserAddressableError = (errorCode, errorMessage) => {
|
|
92
|
+
const isInUserErrorRange = errorCode >= 1e3 && errorCode < 2e3;
|
|
93
|
+
const hasErrorMessage = Boolean(errorMessage);
|
|
94
|
+
return isInUserErrorRange && hasErrorMessage;
|
|
95
|
+
};
|
|
96
|
+
function isTechnicalError(error) {
|
|
97
|
+
if (!error) return false;
|
|
98
|
+
let errorMessage = "";
|
|
99
|
+
if (typeof error === "string") {
|
|
100
|
+
errorMessage = error;
|
|
101
|
+
} else if (typeof error === "object") {
|
|
102
|
+
errorMessage = error.message || error.errorMessage || error.details || "";
|
|
103
|
+
}
|
|
104
|
+
if (!errorMessage) {
|
|
105
|
+
errorMessage = String(error);
|
|
106
|
+
}
|
|
107
|
+
errorMessage = errorMessage.toLowerCase();
|
|
108
|
+
const technicalErrorPatterns = [
|
|
109
|
+
"is not a function",
|
|
110
|
+
"cannot read prop",
|
|
111
|
+
"cannot read property",
|
|
112
|
+
"reading undefined",
|
|
113
|
+
"read undefined of",
|
|
114
|
+
"cannot access before initialization",
|
|
115
|
+
"is not defined",
|
|
116
|
+
"is undefined",
|
|
117
|
+
"is null",
|
|
118
|
+
"unexpected token",
|
|
119
|
+
"syntax error",
|
|
120
|
+
"reference error",
|
|
121
|
+
"type error",
|
|
122
|
+
"network error",
|
|
123
|
+
"failed to fetch",
|
|
124
|
+
"server components"
|
|
125
|
+
];
|
|
126
|
+
return technicalErrorPatterns.some(
|
|
127
|
+
(pattern) => errorMessage.includes(pattern)
|
|
128
|
+
);
|
|
129
|
+
}
|
|
130
|
+
function getUserFriendlyErrorMessage(error, fallbackMessage) {
|
|
131
|
+
if (isTechnicalError(error)) {
|
|
132
|
+
return "Internal server error";
|
|
133
|
+
}
|
|
134
|
+
return getErrorMessage(error, fallbackMessage);
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// src/api/core/instance.ts
|
|
138
|
+
import axios from "axios";
|
|
139
|
+
var API_INSTANCE_DEFAULT_TIMEOUT = 3e4;
|
|
140
|
+
var createInstance = (config) => {
|
|
141
|
+
const instance = axios.create({
|
|
142
|
+
timeout: API_INSTANCE_DEFAULT_TIMEOUT,
|
|
143
|
+
...config
|
|
144
|
+
});
|
|
145
|
+
return instance;
|
|
146
|
+
};
|
|
147
|
+
var createAbortController = () => {
|
|
148
|
+
return new AbortController();
|
|
149
|
+
};
|
|
150
|
+
var isInstanceInit = (init) => {
|
|
151
|
+
return !!init && typeof init === "object" && "instance" in init;
|
|
152
|
+
};
|
|
153
|
+
|
|
154
|
+
// src/api/core/service.ts
|
|
155
|
+
var ServiceError = class extends Error {
|
|
156
|
+
constructor(message, code) {
|
|
157
|
+
super(message);
|
|
158
|
+
this.code = code;
|
|
159
|
+
this.name = "ServiceError";
|
|
160
|
+
}
|
|
161
|
+
};
|
|
162
|
+
var HttpMethod = {
|
|
163
|
+
Get: "GET",
|
|
164
|
+
Post: "POST",
|
|
165
|
+
Put: "PUT",
|
|
166
|
+
Delete: "DELETE"
|
|
167
|
+
};
|
|
168
|
+
|
|
169
|
+
// src/api/schemas/account.ts
|
|
170
|
+
import { z as z2 } from "zod";
|
|
171
|
+
var DelegationStatus = {
|
|
172
|
+
Undelegated: "Undelegated",
|
|
173
|
+
Pending: "Pending",
|
|
174
|
+
Delegated: "Delegated",
|
|
175
|
+
Expired: "Expired",
|
|
176
|
+
Errored: "Errored"
|
|
177
|
+
};
|
|
178
|
+
var delegationStatusValues = Object.values(DelegationStatus);
|
|
179
|
+
var delegationStatusSchema = z2.enum(delegationStatusValues);
|
|
180
|
+
var delegationStatusRequestSchema = z2.object({
|
|
181
|
+
address: z2.string(),
|
|
182
|
+
chainId: z2.number()
|
|
183
|
+
});
|
|
184
|
+
var delegationStatusResponseSchema = z2.object({
|
|
185
|
+
delegationStatus: delegationStatusSchema
|
|
186
|
+
});
|
|
187
|
+
var delegationCreateRequestSchema = z2.object({
|
|
188
|
+
signedAuthorization: z2.string(),
|
|
189
|
+
signerAddress: z2.string()
|
|
190
|
+
});
|
|
191
|
+
var delegationCreateResponseSchema = z2.object({
|
|
192
|
+
success: z2.boolean(),
|
|
193
|
+
transactionHash: z2.string().optional(),
|
|
194
|
+
message: z2.string().optional()
|
|
195
|
+
});
|
|
196
|
+
|
|
197
|
+
// src/api/schemas/activity.ts
|
|
198
|
+
import { z as z8 } from "zod";
|
|
199
|
+
|
|
200
|
+
// src/schemas/instruction.ts
|
|
201
|
+
import { z as z4 } from "zod";
|
|
202
|
+
|
|
203
|
+
// src/schemas/misc.ts
|
|
204
|
+
import { z as z3 } from "zod";
|
|
205
|
+
var DATE_REGEX = /^(19|20)\d{2}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/;
|
|
206
|
+
var DATE_ISO_8601_REGEX = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?$/;
|
|
207
|
+
var DATE_STANDARD_REGEX = /^(0[1-9]|1[0-2])\/(0[1-9]|[12][0-9]|3[01])\/(19|20)\d{2}$/;
|
|
208
|
+
var TIME_REGEX = /^(0[1-9]|1[0-2]):[0-5][0-9]:[0-5][0-9] (AM|PM)$/;
|
|
209
|
+
var regexSchema = (regex, message) => z3.string().regex(regex, message);
|
|
210
|
+
var nonEmptyStringSchema = z3.string().min(1);
|
|
211
|
+
var numberSchema = z3.union([
|
|
212
|
+
z3.number().finite(),
|
|
213
|
+
z3.string().regex(/^-?\d*\.?\d+(?:[eE][-+]?\d+)?$/).transform(Number)
|
|
214
|
+
]);
|
|
215
|
+
var decimalStringSchema = z3.string().regex(/^-?\d*\.?\d+$/).refine((val) => !isNaN(parseFloat(val)), {
|
|
216
|
+
message: "Must be a valid decimal number"
|
|
217
|
+
});
|
|
218
|
+
var bigintSchema = z3.union([
|
|
219
|
+
z3.bigint(),
|
|
220
|
+
z3.string().regex(/^-?\d+$/).transform(BigInt)
|
|
221
|
+
]);
|
|
222
|
+
var hexStringSchema = z3.string().startsWith("0x").transform((val) => val);
|
|
223
|
+
var dateSchema = regexSchema(DATE_REGEX);
|
|
224
|
+
var dateISO8601Schema = regexSchema(DATE_ISO_8601_REGEX);
|
|
225
|
+
var dateStandardSchema = regexSchema(DATE_STANDARD_REGEX);
|
|
226
|
+
var timeSchema = regexSchema(TIME_REGEX);
|
|
227
|
+
var Sort = {
|
|
228
|
+
Asc: "asc",
|
|
229
|
+
Desc: "desc"
|
|
230
|
+
};
|
|
231
|
+
var sortValues = Object.values(Sort);
|
|
232
|
+
var vrsSchema = z3.object({
|
|
233
|
+
v: z3.number(),
|
|
234
|
+
r: z3.string(),
|
|
235
|
+
s: z3.string()
|
|
236
|
+
});
|
|
237
|
+
var eip2098SignatureSchema = z3.object({
|
|
238
|
+
yParity: z3.number(),
|
|
239
|
+
r: z3.string(),
|
|
240
|
+
s: z3.string()
|
|
241
|
+
});
|
|
242
|
+
|
|
243
|
+
// src/schemas/instruction.ts
|
|
244
|
+
var instructionIdSchema = hexStringSchema;
|
|
245
|
+
var InstructionState = {
|
|
246
|
+
PendingActivation: "PendingActivation",
|
|
247
|
+
Active: "Active",
|
|
248
|
+
PendingDeactivation: "PendingDeactivation",
|
|
249
|
+
Deactivated: "Deactivated",
|
|
250
|
+
Errored: "Errored",
|
|
251
|
+
Completed: "Completed",
|
|
252
|
+
UserNotDelegated: "UserNotDelegated",
|
|
253
|
+
InFlight: "InFlight",
|
|
254
|
+
NotifyUser: "NotifyUser"
|
|
255
|
+
};
|
|
256
|
+
var instructionStateValues = Object.values(InstructionState);
|
|
257
|
+
var instructionStateSchema = z4.enum(instructionStateValues);
|
|
258
|
+
var InstructionAction = {
|
|
259
|
+
RefuelERC20: "refuelERC20",
|
|
260
|
+
Refuel: "refuel",
|
|
261
|
+
Transfer: "transfer",
|
|
262
|
+
TransferERC20: "transferERC20",
|
|
263
|
+
UniswapV3ExactInput: "uniswapV3ExactInput",
|
|
264
|
+
Sweep: "sweep",
|
|
265
|
+
SweepERC20: "sweepERC20",
|
|
266
|
+
SweepCCTP: "sweepCCTP",
|
|
267
|
+
SweepUniswapV3: "sweepUniswapV3",
|
|
268
|
+
SweepDepositAccount: "sweepDepositAccount",
|
|
269
|
+
SweepDepositAccountERC20: "sweepDepositAccountERC20",
|
|
270
|
+
DeactivateInstruction: "deactivateInstruction",
|
|
271
|
+
SweepSkipCCTPDepositAccount: "sweepSkipCCTPDepositAccount"
|
|
272
|
+
};
|
|
273
|
+
var instructionActionValues = Object.values(InstructionAction);
|
|
274
|
+
var instructionActionSchema = z4.enum(instructionActionValues);
|
|
275
|
+
var InstructionScheduleStartType = {
|
|
276
|
+
Now: "now",
|
|
277
|
+
DateTime: "datetime"
|
|
278
|
+
};
|
|
279
|
+
var instructionScheduleStartValues = Object.values(
|
|
280
|
+
InstructionScheduleStartType
|
|
281
|
+
);
|
|
282
|
+
var baseStartSchema = z4.object({
|
|
283
|
+
type: z4.enum(instructionScheduleStartValues)
|
|
284
|
+
});
|
|
285
|
+
var nowStartSchema = baseStartSchema.extend({
|
|
286
|
+
type: z4.literal(InstructionScheduleStartType.Now)
|
|
287
|
+
});
|
|
288
|
+
var dateTimeStartSchema = baseStartSchema.extend({
|
|
289
|
+
type: z4.literal(InstructionScheduleStartType.DateTime),
|
|
290
|
+
startDate: dateStandardSchema,
|
|
291
|
+
startTime: z4.string()
|
|
292
|
+
});
|
|
293
|
+
var instructionScheduleStartSchema = z4.discriminatedUnion("type", [
|
|
294
|
+
nowStartSchema,
|
|
295
|
+
dateTimeStartSchema
|
|
296
|
+
]);
|
|
297
|
+
var InstructionScheduleRepeatType = {
|
|
298
|
+
UntilDeactivated: "until-deactivated",
|
|
299
|
+
MaxExecutions: "max-executions"
|
|
300
|
+
};
|
|
301
|
+
var instructionScheduleRepeatValues = Object.values(
|
|
302
|
+
InstructionScheduleRepeatType
|
|
303
|
+
);
|
|
304
|
+
var baseRepeatSchema = z4.object({});
|
|
305
|
+
var untilDeactivatedRepeatSchema = baseRepeatSchema.extend({
|
|
306
|
+
type: z4.literal(InstructionScheduleRepeatType.UntilDeactivated)
|
|
307
|
+
});
|
|
308
|
+
var maxExecutionsRepeatSchema = baseRepeatSchema.extend({
|
|
309
|
+
type: z4.literal(InstructionScheduleRepeatType.MaxExecutions),
|
|
310
|
+
maxExecutions: numberSchema
|
|
311
|
+
});
|
|
312
|
+
var instructionScheduleRepeatSchema = z4.discriminatedUnion("type", [
|
|
313
|
+
untilDeactivatedRepeatSchema,
|
|
314
|
+
maxExecutionsRepeatSchema
|
|
315
|
+
]);
|
|
316
|
+
var InstructionScheduleRetryType = {
|
|
317
|
+
UntilDeactivated: "until-deactivated",
|
|
318
|
+
TimeLimited: "time-limited"
|
|
319
|
+
};
|
|
320
|
+
var instructionScheduleRetryValues = Object.values(
|
|
321
|
+
InstructionScheduleRetryType
|
|
322
|
+
);
|
|
323
|
+
var baseRetrySchema = z4.object({});
|
|
324
|
+
var untilDeactivatedRetrySchema = baseRetrySchema.extend({
|
|
325
|
+
type: z4.literal(InstructionScheduleRetryType.UntilDeactivated)
|
|
326
|
+
});
|
|
327
|
+
var timeLimitedRetrySchema = baseRetrySchema.extend({
|
|
328
|
+
type: z4.literal(InstructionScheduleRetryType.TimeLimited),
|
|
329
|
+
retryCount: numberSchema
|
|
330
|
+
});
|
|
331
|
+
var instructionScheduleRetrySchema = z4.discriminatedUnion("type", [
|
|
332
|
+
untilDeactivatedRetrySchema,
|
|
333
|
+
timeLimitedRetrySchema
|
|
334
|
+
]);
|
|
335
|
+
var TimeUnit = {
|
|
336
|
+
None: "none",
|
|
337
|
+
Second: "second",
|
|
338
|
+
Minute: "minute",
|
|
339
|
+
Hour: "hour",
|
|
340
|
+
Day: "day",
|
|
341
|
+
Week: "week",
|
|
342
|
+
Month: "month"
|
|
343
|
+
};
|
|
344
|
+
var timeUnitValues = Object.values(TimeUnit);
|
|
345
|
+
var timeUnitSchema = z4.enum(timeUnitValues);
|
|
346
|
+
var instructionExecutionStateSchema = z4.object({
|
|
347
|
+
executionStatus: instructionStateSchema.optional(),
|
|
348
|
+
executionCounter: z4.number().int().optional(),
|
|
349
|
+
lastExecuted: z4.number().int().optional()
|
|
350
|
+
});
|
|
351
|
+
var instructionSchema = z4.object({
|
|
352
|
+
instructionId: hexStringSchema,
|
|
353
|
+
createdAt: z4.number().optional(),
|
|
354
|
+
startAt: z4.string().nullish(),
|
|
355
|
+
interval: z4.number().nullish(),
|
|
356
|
+
timeout: z4.number().nullish(),
|
|
357
|
+
maxExecutions: z4.number().nullish(),
|
|
358
|
+
executionState: instructionExecutionStateSchema.optional(),
|
|
359
|
+
actionName: z4.string().optional(),
|
|
360
|
+
arguments: z4.any(),
|
|
361
|
+
nickname: z4.string().nullish(),
|
|
362
|
+
lastInstructedValue: z4.string().optional(),
|
|
363
|
+
lastErrorCode: z4.number().nullish(),
|
|
364
|
+
lastErrorMessage: z4.string().nullish(),
|
|
365
|
+
totalInstructedValue: z4.string().optional(),
|
|
366
|
+
instructedTokenAddress: hexStringSchema.nullish(),
|
|
367
|
+
chainId: z4.number().nullish(),
|
|
368
|
+
chain: z4.string().optional()
|
|
369
|
+
});
|
|
370
|
+
var instructionsSchema = z4.array(instructionSchema);
|
|
371
|
+
var instructionSummarySchema = z4.object({
|
|
372
|
+
instructionId: hexStringSchema,
|
|
373
|
+
chainId: z4.number().int(),
|
|
374
|
+
executionCount: z4.number().int(),
|
|
375
|
+
onTimeCount: z4.number().int(),
|
|
376
|
+
lateCount: z4.number().int(),
|
|
377
|
+
wasActivatedDuring: z4.boolean(),
|
|
378
|
+
amount: z4.number().default(0),
|
|
379
|
+
instructedValue: z4.string().nullish().default("0"),
|
|
380
|
+
instructedTokenAddress: z4.string().nullish().default(null)
|
|
381
|
+
});
|
|
382
|
+
var instructionSummariesSchema = z4.array(instructionSummarySchema);
|
|
383
|
+
var instructionSummariesByDateSchema = z4.record(
|
|
384
|
+
z4.string(),
|
|
385
|
+
instructionSummariesSchema
|
|
386
|
+
);
|
|
387
|
+
var InstructionViewTimescale = {
|
|
388
|
+
Days: "days",
|
|
389
|
+
Hours: "hours",
|
|
390
|
+
Minutes: "minutes",
|
|
391
|
+
Seconds: "seconds"
|
|
392
|
+
};
|
|
393
|
+
var instructionViewTimescaleValues = Object.values(
|
|
394
|
+
InstructionViewTimescale
|
|
395
|
+
);
|
|
396
|
+
|
|
397
|
+
// src/schemas/payment.ts
|
|
398
|
+
import { z as z5 } from "zod";
|
|
399
|
+
var PaymentStatus = {
|
|
400
|
+
Due: "due",
|
|
401
|
+
NotDue: "not-due",
|
|
402
|
+
Paid: "paid"
|
|
403
|
+
};
|
|
404
|
+
var PaymentSource = {
|
|
405
|
+
Bill: "Bill",
|
|
406
|
+
Stripe: "Stripe",
|
|
407
|
+
Clio: "Clio",
|
|
408
|
+
QuickBooks: "QuickBooks"
|
|
409
|
+
};
|
|
410
|
+
var paymentRequestSourceValues = [
|
|
411
|
+
PaymentSource.Bill,
|
|
412
|
+
PaymentSource.Stripe,
|
|
413
|
+
PaymentSource.Clio,
|
|
414
|
+
PaymentSource.QuickBooks
|
|
415
|
+
];
|
|
416
|
+
var paymentSchema = z5.object({
|
|
417
|
+
id: z5.string(),
|
|
418
|
+
fromUserId: z5.string().nullable().optional(),
|
|
419
|
+
toUserId: z5.string().nullable().optional(),
|
|
420
|
+
payerAddress: z5.string().nullable().optional(),
|
|
421
|
+
ephemeralWalletAddress: z5.string(),
|
|
422
|
+
ephemeralWalletId: z5.string().optional(),
|
|
423
|
+
instructions: z5.object({
|
|
424
|
+
ids: z5.array(z5.string()),
|
|
425
|
+
completionIds: z5.array(z5.string())
|
|
426
|
+
}).optional(),
|
|
427
|
+
metadata: z5.record(z5.string(), z5.unknown()).optional(),
|
|
428
|
+
// UI-derived fields
|
|
429
|
+
status: z5.union([
|
|
430
|
+
z5.literal(PaymentStatus.Due),
|
|
431
|
+
z5.literal(PaymentStatus.NotDue),
|
|
432
|
+
z5.literal(PaymentStatus.Paid)
|
|
433
|
+
]),
|
|
434
|
+
dueDate: z5.string(),
|
|
435
|
+
amountDue: z5.number(),
|
|
436
|
+
note: z5.string().nullable().optional(),
|
|
437
|
+
address: z5.string().nullable().optional(),
|
|
438
|
+
addedOn: z5.string(),
|
|
439
|
+
source: z5.union([
|
|
440
|
+
z5.literal(PaymentSource.Bill),
|
|
441
|
+
z5.literal(PaymentSource.Stripe),
|
|
442
|
+
z5.literal(PaymentSource.Clio),
|
|
443
|
+
z5.literal(PaymentSource.QuickBooks)
|
|
444
|
+
]).nullish(),
|
|
445
|
+
attachmentUrl: z5.string().url().nullable().optional(),
|
|
446
|
+
attachmentName: z5.string().nullable().optional(),
|
|
447
|
+
fromAccountAddress: z5.string().nullable().optional()
|
|
448
|
+
});
|
|
449
|
+
var PaymentsSchema = z5.array(paymentSchema);
|
|
450
|
+
|
|
451
|
+
// src/schemas/transaction.ts
|
|
452
|
+
import { z as z6 } from "zod";
|
|
453
|
+
var transactionSchema = z6.object({
|
|
454
|
+
instructionId: instructionIdSchema,
|
|
455
|
+
transactionHash: hexStringSchema.optional(),
|
|
456
|
+
blockHash: z6.string().nullable(),
|
|
457
|
+
transactionStatus: z6.string(),
|
|
458
|
+
error: z6.string().nullish(),
|
|
459
|
+
startedAt: z6.string(),
|
|
460
|
+
startedAtBlock: z6.number(),
|
|
461
|
+
finishedAt: z6.string().nullable(),
|
|
462
|
+
finishedAtBlock: z6.number().nullable(),
|
|
463
|
+
amount: z6.object({ value: z6.number(), token: z6.string() }).nullish(),
|
|
464
|
+
instructedValue: z6.string(),
|
|
465
|
+
instructedTokenAddress: z6.string().nullable(),
|
|
466
|
+
executionNum: z6.number(),
|
|
467
|
+
chainId: z6.number().nullish(),
|
|
468
|
+
chain: z6.string().optional()
|
|
469
|
+
});
|
|
470
|
+
var transactionWithValidAmountSchema = transactionSchema.extend({
|
|
471
|
+
amount: z6.object({
|
|
472
|
+
value: z6.number(),
|
|
473
|
+
token: z6.string()
|
|
474
|
+
})
|
|
475
|
+
});
|
|
476
|
+
var transactionsSchema = z6.array(transactionSchema);
|
|
477
|
+
|
|
478
|
+
// src/schemas/user.ts
|
|
479
|
+
import { z as z7 } from "zod";
|
|
480
|
+
var entityIdSchema = z7.string().uuid();
|
|
481
|
+
var addressSchema = z7.string().regex(/^0x[a-fA-F0-9]{40}$/).transform((v) => v.toLowerCase());
|
|
482
|
+
var userPreferencesSchema = z7.object({
|
|
483
|
+
chainId: z7.number().optional(),
|
|
484
|
+
tokenSymbol: z7.string().optional(),
|
|
485
|
+
localCurrency: z7.string().optional()
|
|
486
|
+
});
|
|
487
|
+
var userSchema = z7.object({
|
|
488
|
+
id: entityIdSchema,
|
|
489
|
+
address: addressSchema,
|
|
490
|
+
createdAt: z7.string(),
|
|
491
|
+
updatedAt: z7.string(),
|
|
492
|
+
preferences: userPreferencesSchema.optional(),
|
|
493
|
+
isDeveloper: z7.boolean(),
|
|
494
|
+
developerPublicKey: z7.string().nullable().optional()
|
|
495
|
+
});
|
|
496
|
+
|
|
497
|
+
// src/api/schemas/activity.ts
|
|
498
|
+
var actionNameSchema = z8.enum([
|
|
499
|
+
"refuel",
|
|
500
|
+
"transfer",
|
|
501
|
+
"refuelERC20",
|
|
502
|
+
"transferERC20",
|
|
503
|
+
"uniswapV3ExactInput",
|
|
504
|
+
"deactivateInstruction",
|
|
505
|
+
"sweepCCTP",
|
|
506
|
+
"transferCCTP",
|
|
507
|
+
"sweep",
|
|
508
|
+
"sweepERC20",
|
|
509
|
+
"sweepUniswapV3",
|
|
510
|
+
"depositERC4626",
|
|
511
|
+
"sweepDepositERC4626",
|
|
512
|
+
"withdrawERC4626",
|
|
513
|
+
"sweepWithdrawERC4626",
|
|
514
|
+
"callOnce"
|
|
515
|
+
]);
|
|
516
|
+
var transferFieldsSchema = z8.object({
|
|
517
|
+
token: hexStringSchema,
|
|
518
|
+
from: hexStringSchema,
|
|
519
|
+
to: hexStringSchema,
|
|
520
|
+
value: hexStringSchema
|
|
521
|
+
});
|
|
522
|
+
var swapFieldsSchema = z8.object({
|
|
523
|
+
poolAddress: hexStringSchema,
|
|
524
|
+
fromToken: hexStringSchema,
|
|
525
|
+
toToken: hexStringSchema,
|
|
526
|
+
from: hexStringSchema,
|
|
527
|
+
to: hexStringSchema,
|
|
528
|
+
fromAmount: hexStringSchema,
|
|
529
|
+
toAmount: hexStringSchema
|
|
530
|
+
});
|
|
531
|
+
var cctpBurnFieldsSchema = z8.object({
|
|
532
|
+
token: hexStringSchema,
|
|
533
|
+
from: hexStringSchema,
|
|
534
|
+
mintRecipient: hexStringSchema,
|
|
535
|
+
destinationDomain: hexStringSchema,
|
|
536
|
+
value: hexStringSchema
|
|
537
|
+
});
|
|
538
|
+
var erc4626DepositFieldsSchema = z8.object({
|
|
539
|
+
vault: hexStringSchema,
|
|
540
|
+
token: hexStringSchema,
|
|
541
|
+
from: hexStringSchema,
|
|
542
|
+
owner: hexStringSchema,
|
|
543
|
+
value: hexStringSchema,
|
|
544
|
+
shares: hexStringSchema
|
|
545
|
+
});
|
|
546
|
+
var erc4626WithdrawFieldsSchema = z8.object({
|
|
547
|
+
vault: hexStringSchema,
|
|
548
|
+
token: hexStringSchema,
|
|
549
|
+
from: hexStringSchema,
|
|
550
|
+
to: hexStringSchema,
|
|
551
|
+
value: hexStringSchema,
|
|
552
|
+
shares: hexStringSchema
|
|
553
|
+
});
|
|
554
|
+
var activityDataSchema = z8.union([
|
|
555
|
+
z8.object({ transfer: transferFieldsSchema }),
|
|
556
|
+
z8.object({ swap: swapFieldsSchema }),
|
|
557
|
+
z8.object({ cctpBurn: cctpBurnFieldsSchema }),
|
|
558
|
+
z8.object({ erc4626Deposit: erc4626DepositFieldsSchema }),
|
|
559
|
+
z8.object({ erc4626Withdraw: erc4626WithdrawFieldsSchema })
|
|
560
|
+
]);
|
|
561
|
+
var activityRecordSchema = z8.object({
|
|
562
|
+
actionName: actionNameSchema,
|
|
563
|
+
blockTimestamp: numberSchema,
|
|
564
|
+
transactionHash: hexStringSchema,
|
|
565
|
+
activity: activityDataSchema,
|
|
566
|
+
instructionId: hexStringSchema.nullable(),
|
|
567
|
+
executionCount: z8.number().nullable()
|
|
568
|
+
});
|
|
569
|
+
var getInstructionActivityRequestSchema = z8.object({
|
|
570
|
+
chainId: z8.number(),
|
|
571
|
+
actionNames: z8.array(actionNameSchema),
|
|
572
|
+
page: numberSchema.optional(),
|
|
573
|
+
perPage: numberSchema.optional()
|
|
574
|
+
});
|
|
575
|
+
var getInstructionActivityResponseSchema = z8.array(activityRecordSchema);
|
|
576
|
+
|
|
577
|
+
// src/api/schemas/auth.ts
|
|
578
|
+
import { z as z9 } from "zod";
|
|
579
|
+
var authLoginRequestSchema = z9.object({
|
|
580
|
+
siwe: z9.string(),
|
|
581
|
+
signature: vrsSchema
|
|
582
|
+
});
|
|
583
|
+
var authLoginResponseSchema = z9.object({
|
|
584
|
+
authorization: z9.string(),
|
|
585
|
+
user: userSchema
|
|
586
|
+
});
|
|
587
|
+
var turnkeyVerificationRequestSchema = z9.object({
|
|
588
|
+
email: z9.string().email()
|
|
589
|
+
});
|
|
590
|
+
var turnkeyVerificationResponseSchema = z9.object({
|
|
591
|
+
isLogin: z9.boolean()
|
|
592
|
+
});
|
|
593
|
+
var attestationSchema = z9.object({
|
|
594
|
+
credentialId: z9.string(),
|
|
595
|
+
clientDataJson: z9.string(),
|
|
596
|
+
attestationObject: z9.string(),
|
|
597
|
+
transports: z9.array(z9.string()).optional()
|
|
598
|
+
});
|
|
599
|
+
var turnkeyLoginRequestSchema = z9.object({
|
|
600
|
+
email: z9.email(),
|
|
601
|
+
verificationCode: z9.coerce.number().int().min(1e5).max(999999),
|
|
602
|
+
passkeyChallenge: z9.string().optional(),
|
|
603
|
+
attestation: attestationSchema.optional()
|
|
604
|
+
});
|
|
605
|
+
var turnkeyLoginResponseSchema = z9.object({
|
|
606
|
+
email: z9.string(),
|
|
607
|
+
subOrgId: z9.string(),
|
|
608
|
+
walletAddress: z9.string(),
|
|
609
|
+
isLogin: z9.boolean().optional()
|
|
610
|
+
});
|
|
611
|
+
var meResponseSchema = userSchema;
|
|
612
|
+
var sessionTokenRequestSchema = z9.object({
|
|
613
|
+
sessionToken: z9.string()
|
|
614
|
+
});
|
|
615
|
+
var sessionTokenResponseSchema = z9.object({
|
|
616
|
+
success: z9.boolean()
|
|
617
|
+
});
|
|
618
|
+
var sessionVerifyResponseSchema = z9.object({
|
|
619
|
+
authenticated: z9.boolean(),
|
|
620
|
+
hasSessionToken: z9.boolean()
|
|
621
|
+
});
|
|
622
|
+
var whitelistCheckRequestSchema = z9.object({
|
|
623
|
+
email: z9.string().email()
|
|
624
|
+
});
|
|
625
|
+
var whitelistCheckResponseSchema = z9.object({
|
|
626
|
+
isAllowed: z9.boolean(),
|
|
627
|
+
message: z9.string().optional()
|
|
628
|
+
});
|
|
629
|
+
var addressWhitelistCheckRequestSchema = z9.object({
|
|
630
|
+
address: z9.string()
|
|
631
|
+
});
|
|
632
|
+
var addressWhitelistCheckResponseSchema = z9.object({
|
|
633
|
+
isAllowed: z9.boolean(),
|
|
634
|
+
message: z9.string().optional()
|
|
635
|
+
});
|
|
636
|
+
var getCurrentUserResponseSchema = z9.object({
|
|
637
|
+
data: userSchema
|
|
638
|
+
});
|
|
639
|
+
|
|
640
|
+
// src/api/schemas/chain.ts
|
|
641
|
+
import { z as z10 } from "zod";
|
|
642
|
+
var chainIdSchema = z10.object({
|
|
643
|
+
chainId: z10.number().nullable()
|
|
644
|
+
});
|
|
645
|
+
var setChainIdSchema = z10.object({
|
|
646
|
+
chainId: z10.number().positive()
|
|
647
|
+
});
|
|
648
|
+
var chainSuccessResponseSchema = z10.object({
|
|
649
|
+
success: z10.boolean(),
|
|
650
|
+
chainId: z10.number().optional()
|
|
651
|
+
});
|
|
652
|
+
|
|
653
|
+
// src/api/schemas/config.ts
|
|
654
|
+
import { z as z11 } from "zod";
|
|
655
|
+
var getDelegateAddressSchema = z11.object({
|
|
656
|
+
chainId: z11.number()
|
|
657
|
+
});
|
|
658
|
+
var getDelegateAddressResponseSchema = z11.object({
|
|
659
|
+
otimDelegateAddress: z11.string()
|
|
660
|
+
});
|
|
661
|
+
var getConfigTokensRequestParametersSchema = z11.object({
|
|
662
|
+
chainId: z11.number()
|
|
663
|
+
});
|
|
664
|
+
var getConfigTokensResponseSchema = z11.object({
|
|
665
|
+
tokens: z11.array(
|
|
666
|
+
z11.object({
|
|
667
|
+
symbol: z11.any(),
|
|
668
|
+
address: hexStringSchema
|
|
669
|
+
})
|
|
670
|
+
)
|
|
671
|
+
});
|
|
672
|
+
var getConfigChainsResponseSchema = z11.unknown();
|
|
673
|
+
var getMaxPriorityFeePerGasEstimateSchema = z11.object({
|
|
674
|
+
chainId: z11.number()
|
|
675
|
+
});
|
|
676
|
+
var getMaxPriorityFeePerGasEstimateResponseSchema = z11.object({
|
|
677
|
+
slowMaxPriorityFeeEstimate: z11.number(),
|
|
678
|
+
normalMaxPriorityFeeEstimate: z11.number(),
|
|
679
|
+
fastMaxPriorityFeeEstimate: z11.number()
|
|
680
|
+
});
|
|
681
|
+
|
|
682
|
+
// src/api/schemas/contacts.ts
|
|
683
|
+
import { z as z12 } from "zod";
|
|
684
|
+
var newContactRequestSchema = z12.object({
|
|
685
|
+
address: hexStringSchema,
|
|
686
|
+
name: z12.string()
|
|
687
|
+
});
|
|
688
|
+
var getContactsRequestSchema = z12.object({
|
|
689
|
+
perPage: numberSchema.optional(),
|
|
690
|
+
page: numberSchema.optional()
|
|
691
|
+
});
|
|
692
|
+
var contactSchema = z12.object({
|
|
693
|
+
userId: z12.string(),
|
|
694
|
+
address: hexStringSchema,
|
|
695
|
+
name: z12.string(),
|
|
696
|
+
createdAt: z12.string(),
|
|
697
|
+
updatedAt: z12.string()
|
|
698
|
+
});
|
|
699
|
+
var getContactsResponseSchema = z12.array(contactSchema);
|
|
700
|
+
|
|
701
|
+
// src/api/schemas/instruction.ts
|
|
702
|
+
import { z as z13 } from "zod";
|
|
703
|
+
var feeSchema = z13.object({
|
|
704
|
+
executionFee: hexStringSchema,
|
|
705
|
+
maxBaseFeePerGas: hexStringSchema,
|
|
706
|
+
maxPriorityFeePerGas: hexStringSchema,
|
|
707
|
+
token: hexStringSchema
|
|
708
|
+
});
|
|
709
|
+
var scheduleSchema = z13.object({
|
|
710
|
+
startAt: numberSchema,
|
|
711
|
+
startBy: numberSchema,
|
|
712
|
+
interval: numberSchema,
|
|
713
|
+
timeout: numberSchema
|
|
714
|
+
});
|
|
715
|
+
var baseActionArgumentsSchema = z13.object({
|
|
716
|
+
target: hexStringSchema,
|
|
717
|
+
fee: feeSchema,
|
|
718
|
+
token: hexStringSchema
|
|
719
|
+
});
|
|
720
|
+
var refuelActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
721
|
+
threshold: numberSchema,
|
|
722
|
+
endBalance: numberSchema,
|
|
723
|
+
gasLimit: numberSchema
|
|
724
|
+
});
|
|
725
|
+
var refuelERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
726
|
+
threshold: numberSchema,
|
|
727
|
+
endBalance: numberSchema,
|
|
728
|
+
gasLimit: numberSchema
|
|
729
|
+
});
|
|
730
|
+
var transferActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
731
|
+
value: numberSchema,
|
|
732
|
+
gasLimit: numberSchema,
|
|
733
|
+
schedule: scheduleSchema
|
|
734
|
+
});
|
|
735
|
+
var transferERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
736
|
+
value: numberSchema,
|
|
737
|
+
gasLimit: numberSchema,
|
|
738
|
+
schedule: scheduleSchema
|
|
739
|
+
});
|
|
740
|
+
var sweepDepositAccountActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
741
|
+
threshold: numberSchema,
|
|
742
|
+
recipient: hexStringSchema,
|
|
743
|
+
depositorAddress: hexStringSchema
|
|
744
|
+
});
|
|
745
|
+
var sweepDepositAccountERC20ActionArgumentsSchema = baseActionArgumentsSchema.extend({
|
|
746
|
+
threshold: numberSchema,
|
|
747
|
+
recipient: hexStringSchema,
|
|
748
|
+
depositorAddress: hexStringSchema
|
|
749
|
+
});
|
|
750
|
+
var uniswapV3ExactInputActionArgumentsSchema = z13.object({
|
|
751
|
+
tokenIn: hexStringSchema,
|
|
752
|
+
tokenOut: hexStringSchema,
|
|
753
|
+
amountIn: numberSchema,
|
|
754
|
+
floorAmountOut: numberSchema,
|
|
755
|
+
feeTier: z13.string(),
|
|
756
|
+
recipient: hexStringSchema,
|
|
757
|
+
meanPriceLookBack: numberSchema,
|
|
758
|
+
maxPriceDeviationBps: numberSchema,
|
|
759
|
+
fee: feeSchema,
|
|
760
|
+
schedule: scheduleSchema
|
|
761
|
+
});
|
|
762
|
+
var deactivateInstructionActionArgumentsSchema = z13.object({
|
|
763
|
+
instructionId: hexStringSchema,
|
|
764
|
+
fee: feeSchema
|
|
765
|
+
});
|
|
766
|
+
var actionArgumentsSchema = z13.union([
|
|
767
|
+
refuelActionArgumentsSchema,
|
|
768
|
+
refuelERC20ActionArgumentsSchema,
|
|
769
|
+
transferActionArgumentsSchema,
|
|
770
|
+
transferERC20ActionArgumentsSchema,
|
|
771
|
+
sweepDepositAccountActionArgumentsSchema,
|
|
772
|
+
sweepDepositAccountERC20ActionArgumentsSchema,
|
|
773
|
+
uniswapV3ExactInputActionArgumentsSchema,
|
|
774
|
+
deactivateInstructionActionArgumentsSchema
|
|
775
|
+
]);
|
|
776
|
+
var feeResponseSchema = z13.object({
|
|
777
|
+
token: hexStringSchema,
|
|
778
|
+
executionFee: hexStringSchema,
|
|
779
|
+
maxBaseFeePerGas: hexStringSchema,
|
|
780
|
+
maxPriorityFeePerGas: hexStringSchema
|
|
781
|
+
});
|
|
782
|
+
var scheduleResponseSchema = z13.object({
|
|
783
|
+
startAt: hexStringSchema,
|
|
784
|
+
startBy: hexStringSchema,
|
|
785
|
+
interval: hexStringSchema,
|
|
786
|
+
timeout: hexStringSchema
|
|
787
|
+
});
|
|
788
|
+
var refuelActionResponseSchema = z13.object({
|
|
789
|
+
target: hexStringSchema,
|
|
790
|
+
threshold: hexStringSchema,
|
|
791
|
+
endBalance: hexStringSchema,
|
|
792
|
+
gasLimit: hexStringSchema,
|
|
793
|
+
fee: feeResponseSchema
|
|
794
|
+
});
|
|
795
|
+
var transferActionResponseSchema = z13.object({
|
|
796
|
+
target: hexStringSchema,
|
|
797
|
+
value: hexStringSchema,
|
|
798
|
+
gasLimit: hexStringSchema,
|
|
799
|
+
schedule: scheduleResponseSchema,
|
|
800
|
+
fee: feeResponseSchema
|
|
801
|
+
});
|
|
802
|
+
var refuelERC20ActionResponseSchema = z13.object({
|
|
803
|
+
token: hexStringSchema,
|
|
804
|
+
target: hexStringSchema,
|
|
805
|
+
threshold: hexStringSchema,
|
|
806
|
+
endBalance: hexStringSchema,
|
|
807
|
+
fee: feeResponseSchema
|
|
808
|
+
});
|
|
809
|
+
var transferERC20ActionResponseSchema = z13.object({
|
|
810
|
+
token: hexStringSchema,
|
|
811
|
+
target: hexStringSchema,
|
|
812
|
+
value: hexStringSchema,
|
|
813
|
+
schedule: scheduleResponseSchema,
|
|
814
|
+
fee: feeResponseSchema
|
|
815
|
+
});
|
|
816
|
+
var actionArgumentsResponseSchema = z13.union([
|
|
817
|
+
refuelActionResponseSchema,
|
|
818
|
+
transferActionResponseSchema,
|
|
819
|
+
refuelERC20ActionResponseSchema,
|
|
820
|
+
transferERC20ActionResponseSchema
|
|
821
|
+
]);
|
|
822
|
+
var instructionBuildSchema = z13.object({
|
|
823
|
+
action: hexStringSchema,
|
|
824
|
+
arguments: hexStringSchema,
|
|
825
|
+
maxExecutions: hexStringSchema,
|
|
826
|
+
salt: hexStringSchema,
|
|
827
|
+
nickname: z13.string().nullish()
|
|
828
|
+
});
|
|
829
|
+
var instructionGetAllRequestSchema = z13.object({
|
|
830
|
+
address: hexStringSchema,
|
|
831
|
+
chainId: z13.number(),
|
|
832
|
+
page: z13.number().optional(),
|
|
833
|
+
perPage: z13.number().optional()
|
|
834
|
+
});
|
|
835
|
+
var instructionGetAllResponseSchema = z13.array(instructionSchema);
|
|
836
|
+
var instructionBuildRequestSchema = z13.object({
|
|
837
|
+
address: hexStringSchema,
|
|
838
|
+
chainId: z13.number(),
|
|
839
|
+
salt: z13.number(),
|
|
840
|
+
maxExecutions: z13.number(),
|
|
841
|
+
actionArguments: z13.record(z13.string(), actionArgumentsSchema).refine(
|
|
842
|
+
(args) => {
|
|
843
|
+
const keys = Object.keys(args);
|
|
844
|
+
return keys.length === 1 && instructionActionValues.includes(
|
|
845
|
+
keys[0]
|
|
846
|
+
);
|
|
847
|
+
},
|
|
848
|
+
{
|
|
849
|
+
message: "actionArguments must contain exactly one valid instruction action"
|
|
850
|
+
}
|
|
851
|
+
)
|
|
852
|
+
});
|
|
853
|
+
var instructionActivateRequestSchema = z13.object({
|
|
854
|
+
nickname: z13.string().optional(),
|
|
855
|
+
address: hexStringSchema,
|
|
856
|
+
chainId: z13.number(),
|
|
857
|
+
salt: hexStringSchema,
|
|
858
|
+
maxExecutions: hexStringSchema,
|
|
859
|
+
action: hexStringSchema,
|
|
860
|
+
arguments: hexStringSchema,
|
|
861
|
+
activationSignature: eip2098SignatureSchema
|
|
862
|
+
});
|
|
863
|
+
var instructionActivateResponseSchema = z13.object({
|
|
864
|
+
instructionId: hexStringSchema
|
|
865
|
+
});
|
|
866
|
+
var instructionDeactivateRequestSchema = z13.object({
|
|
867
|
+
address: hexStringSchema,
|
|
868
|
+
chainId: z13.number(),
|
|
869
|
+
deactivation: z13.object({
|
|
870
|
+
instructionId: hexStringSchema
|
|
871
|
+
}),
|
|
872
|
+
deactivationSignature: eip2098SignatureSchema
|
|
873
|
+
});
|
|
874
|
+
var instructionDeactivateResponseSchema = z13.unknown();
|
|
875
|
+
var instructionDetailsRequestSchema = z13.object({
|
|
876
|
+
address: hexStringSchema,
|
|
877
|
+
instructionId: hexStringSchema,
|
|
878
|
+
chainId: z13.number()
|
|
879
|
+
});
|
|
880
|
+
var instructionDetailsResponseSchema = z13.object({
|
|
881
|
+
action: hexStringSchema,
|
|
882
|
+
actionArguments: z13.any(),
|
|
883
|
+
actionName: z13.string().nullish(),
|
|
884
|
+
salt: hexStringSchema,
|
|
885
|
+
maxExecutions: hexStringSchema,
|
|
886
|
+
nickname: z13.string().nullish(),
|
|
887
|
+
lastErrorCode: z13.number().int(),
|
|
888
|
+
lastErrorMessage: z13.string().nullish()
|
|
889
|
+
});
|
|
890
|
+
var instructionGetRulesRequestSchema = z13.object({
|
|
891
|
+
chainId: z13.number(),
|
|
892
|
+
page: z13.number().optional(),
|
|
893
|
+
perPage: z13.number().optional()
|
|
894
|
+
});
|
|
895
|
+
var instructionGetRulesResponseSchema = z13.array(
|
|
896
|
+
instructionSchema
|
|
897
|
+
);
|
|
898
|
+
|
|
899
|
+
// src/api/schemas/integration.ts
|
|
900
|
+
import { z as z14 } from "zod";
|
|
901
|
+
var IntegrationType = {
|
|
902
|
+
Bank: "Bank",
|
|
903
|
+
Clio: "Clio",
|
|
904
|
+
Stripe: "Stripe",
|
|
905
|
+
QuickBooks: "QuickBooks",
|
|
906
|
+
Bill: "Bill",
|
|
907
|
+
Zoho: "Zoho"
|
|
908
|
+
};
|
|
909
|
+
var integrationTypeValues = [
|
|
910
|
+
IntegrationType.Bank,
|
|
911
|
+
IntegrationType.Clio,
|
|
912
|
+
IntegrationType.Stripe,
|
|
913
|
+
IntegrationType.QuickBooks,
|
|
914
|
+
IntegrationType.Bill,
|
|
915
|
+
IntegrationType.Zoho
|
|
916
|
+
];
|
|
917
|
+
var quickBooksDetailsSchema = z14.object({
|
|
918
|
+
accessToken: z14.string().optional(),
|
|
919
|
+
refreshToken: z14.string().optional(),
|
|
920
|
+
realmId: z14.string().optional(),
|
|
921
|
+
tokenType: z14.string().optional(),
|
|
922
|
+
expiresIn: z14.number().optional(),
|
|
923
|
+
xRefreshTokenExpiresIn: z14.number().optional()
|
|
924
|
+
});
|
|
925
|
+
var stripeTokensSchema = z14.object({
|
|
926
|
+
accessToken: z14.string(),
|
|
927
|
+
refreshToken: z14.string().optional()
|
|
928
|
+
});
|
|
929
|
+
var stripeDetailsSchema = z14.object({
|
|
930
|
+
clientId: z14.string().optional(),
|
|
931
|
+
clientSecret: z14.string().optional(),
|
|
932
|
+
tokens: stripeTokensSchema.optional()
|
|
933
|
+
});
|
|
934
|
+
var billcomDetailsSchema = z14.object({
|
|
935
|
+
devKey: z14.string().optional(),
|
|
936
|
+
sessionId: z14.string().optional(),
|
|
937
|
+
orgId: z14.string().optional(),
|
|
938
|
+
rememberMeId: z14.string().optional()
|
|
939
|
+
});
|
|
940
|
+
var liquidationAddressSchema = z14.object({
|
|
941
|
+
liquidationAddressId: z14.string(),
|
|
942
|
+
address: z14.string(),
|
|
943
|
+
chain: z14.string(),
|
|
944
|
+
currency: z14.string(),
|
|
945
|
+
blockchainMemo: z14.string().optional()
|
|
946
|
+
});
|
|
947
|
+
var plaidAccountSchema = z14.object({
|
|
948
|
+
accountId: z14.string(),
|
|
949
|
+
name: z14.string().optional(),
|
|
950
|
+
mask: z14.string().optional(),
|
|
951
|
+
subtype: z14.string().optional(),
|
|
952
|
+
externalAccountId: z14.string().optional(),
|
|
953
|
+
liquidationAddress: liquidationAddressSchema.optional()
|
|
954
|
+
});
|
|
955
|
+
var plaidConnectionSchema = z14.object({
|
|
956
|
+
accessToken: z14.string(),
|
|
957
|
+
itemId: z14.string(),
|
|
958
|
+
institutionId: z14.string().optional(),
|
|
959
|
+
institutionName: z14.string().optional(),
|
|
960
|
+
accounts: z14.array(plaidAccountSchema)
|
|
961
|
+
});
|
|
962
|
+
var bridgeConnectionSchema = z14.object({
|
|
963
|
+
customerId: z14.string(),
|
|
964
|
+
kycLinkId: z14.string().optional(),
|
|
965
|
+
kycLink: z14.string().optional(),
|
|
966
|
+
tosLink: z14.string().optional(),
|
|
967
|
+
completedSteps: z14.array(z14.string()).optional()
|
|
968
|
+
});
|
|
969
|
+
var bankDetailsSchema = z14.object({
|
|
970
|
+
plaid: z14.array(plaidConnectionSchema).optional(),
|
|
971
|
+
bridge: z14.array(bridgeConnectionSchema).optional()
|
|
972
|
+
});
|
|
973
|
+
var integrationTypeSchema = z14.enum(integrationTypeValues);
|
|
974
|
+
var updateIntegrationRequestSchema = z14.discriminatedUnion(
|
|
975
|
+
"integrationType",
|
|
976
|
+
[
|
|
977
|
+
z14.object({
|
|
978
|
+
integrationType: z14.literal(IntegrationType.QuickBooks),
|
|
979
|
+
details: quickBooksDetailsSchema
|
|
980
|
+
}),
|
|
981
|
+
z14.object({
|
|
982
|
+
integrationType: z14.literal(IntegrationType.Bank),
|
|
983
|
+
details: bankDetailsSchema
|
|
984
|
+
}),
|
|
985
|
+
z14.object({
|
|
986
|
+
integrationType: z14.literal(IntegrationType.Clio),
|
|
987
|
+
details: z14.unknown()
|
|
988
|
+
}),
|
|
989
|
+
z14.object({
|
|
990
|
+
integrationType: z14.literal(IntegrationType.Stripe),
|
|
991
|
+
details: stripeDetailsSchema
|
|
992
|
+
}),
|
|
993
|
+
z14.object({
|
|
994
|
+
integrationType: z14.literal(IntegrationType.Bill),
|
|
995
|
+
details: billcomDetailsSchema
|
|
996
|
+
}),
|
|
997
|
+
z14.object({
|
|
998
|
+
integrationType: z14.literal(IntegrationType.Zoho),
|
|
999
|
+
details: z14.unknown()
|
|
1000
|
+
})
|
|
1001
|
+
]
|
|
1002
|
+
);
|
|
1003
|
+
var getIntegrationRequestSchema = z14.object({
|
|
1004
|
+
integrationType: integrationTypeSchema
|
|
1005
|
+
});
|
|
1006
|
+
var integrationResponseSchema = z14.discriminatedUnion(
|
|
1007
|
+
"integrationType",
|
|
1008
|
+
[
|
|
1009
|
+
z14.object({
|
|
1010
|
+
integrationType: z14.literal(IntegrationType.QuickBooks),
|
|
1011
|
+
details: quickBooksDetailsSchema
|
|
1012
|
+
}),
|
|
1013
|
+
z14.object({
|
|
1014
|
+
integrationType: z14.literal(IntegrationType.Bank),
|
|
1015
|
+
details: bankDetailsSchema
|
|
1016
|
+
}),
|
|
1017
|
+
z14.object({
|
|
1018
|
+
integrationType: z14.literal(IntegrationType.Clio),
|
|
1019
|
+
details: z14.unknown()
|
|
1020
|
+
}),
|
|
1021
|
+
z14.object({
|
|
1022
|
+
integrationType: z14.literal(IntegrationType.Stripe),
|
|
1023
|
+
details: stripeDetailsSchema
|
|
1024
|
+
}),
|
|
1025
|
+
z14.object({
|
|
1026
|
+
integrationType: z14.literal(IntegrationType.Bill),
|
|
1027
|
+
details: billcomDetailsSchema
|
|
1028
|
+
}),
|
|
1029
|
+
z14.object({
|
|
1030
|
+
integrationType: z14.literal(IntegrationType.Zoho),
|
|
1031
|
+
details: z14.unknown()
|
|
1032
|
+
})
|
|
1033
|
+
]
|
|
1034
|
+
);
|
|
1035
|
+
|
|
1036
|
+
// src/api/schemas/operating-account.ts
|
|
1037
|
+
import { z as z15 } from "zod";
|
|
1038
|
+
var newOperatingAccountSubOrgResponseSchema = z15.object({
|
|
1039
|
+
subOrganizationId: z15.string(),
|
|
1040
|
+
endUserId: z15.string()
|
|
1041
|
+
});
|
|
1042
|
+
var getOperatingAccountSubOrgResponseSchema = z15.object({
|
|
1043
|
+
subOrganizationId: z15.string()
|
|
1044
|
+
});
|
|
1045
|
+
|
|
1046
|
+
// src/api/schemas/payments.ts
|
|
1047
|
+
import { z as z16 } from "zod";
|
|
1048
|
+
var paymentRequestsDirectionSchema = z16.enum(["from", "to"]);
|
|
1049
|
+
var getPaymentRequestsRequestSchema = z16.object({
|
|
1050
|
+
direction: paymentRequestsDirectionSchema,
|
|
1051
|
+
statuses: z16.array(z16.enum(["pending", "inProgress", "paid", "cancelled", "draft"])).optional(),
|
|
1052
|
+
perPage: numberSchema.optional(),
|
|
1053
|
+
page: numberSchema.optional()
|
|
1054
|
+
});
|
|
1055
|
+
var paymentRequestStatusSchema = z16.enum([
|
|
1056
|
+
"pending",
|
|
1057
|
+
"inProgress",
|
|
1058
|
+
"paid",
|
|
1059
|
+
"cancelled",
|
|
1060
|
+
"draft"
|
|
1061
|
+
]);
|
|
1062
|
+
var paymentRequestSchema = z16.object({
|
|
1063
|
+
id: z16.string(),
|
|
1064
|
+
fromUserId: z16.string(),
|
|
1065
|
+
toUserId: z16.string().nullable(),
|
|
1066
|
+
payerAddress: hexStringSchema.nullable(),
|
|
1067
|
+
ephemeralWalletAddress: hexStringSchema,
|
|
1068
|
+
instructions: z16.object({
|
|
1069
|
+
ids: z16.array(z16.string()),
|
|
1070
|
+
completionIds: z16.array(z16.string())
|
|
1071
|
+
}),
|
|
1072
|
+
metadata: z16.record(z16.string(), z16.unknown()),
|
|
1073
|
+
status: paymentRequestStatusSchema,
|
|
1074
|
+
createdAt: z16.string(),
|
|
1075
|
+
updatedAt: z16.string()
|
|
1076
|
+
});
|
|
1077
|
+
var getPaymentRequestsResponseSchema = z16.array(paymentRequestSchema);
|
|
1078
|
+
var buildEphemeralInstructionSchema = z16.object({
|
|
1079
|
+
chainId: z16.number(),
|
|
1080
|
+
salt: numberSchema,
|
|
1081
|
+
maxExecutions: numberSchema,
|
|
1082
|
+
actionArguments: z16.record(z16.string(), z16.unknown()),
|
|
1083
|
+
setEphemeralTarget: z16.boolean().optional()
|
|
1084
|
+
});
|
|
1085
|
+
var paymentRequestBuildRequestSchema = z16.object({
|
|
1086
|
+
payerAddress: hexStringSchema.nullish(),
|
|
1087
|
+
completionInstructions: z16.array(buildEphemeralInstructionSchema),
|
|
1088
|
+
instructions: z16.array(buildEphemeralInstructionSchema),
|
|
1089
|
+
metadata: z16.record(z16.string(), z16.unknown()).optional().default({})
|
|
1090
|
+
});
|
|
1091
|
+
var feeResponseSchema2 = z16.object({
|
|
1092
|
+
token: hexStringSchema,
|
|
1093
|
+
executionFee: hexStringSchema,
|
|
1094
|
+
maxBaseFeePerGas: hexStringSchema,
|
|
1095
|
+
maxPriorityFeePerGas: hexStringSchema
|
|
1096
|
+
});
|
|
1097
|
+
var buildInstructionResponseSchema = z16.object({
|
|
1098
|
+
address: hexStringSchema,
|
|
1099
|
+
chainId: z16.number(),
|
|
1100
|
+
salt: hexStringSchema,
|
|
1101
|
+
maxExecutions: hexStringSchema,
|
|
1102
|
+
action: hexStringSchema,
|
|
1103
|
+
arguments: hexStringSchema
|
|
1104
|
+
});
|
|
1105
|
+
var paymentRequestBuildResponseSchema = z16.object({
|
|
1106
|
+
requestId: z16.string(),
|
|
1107
|
+
subOrgId: z16.string(),
|
|
1108
|
+
walletId: z16.string(),
|
|
1109
|
+
ephemeralWalletAddress: hexStringSchema,
|
|
1110
|
+
completionInstructions: z16.array(buildInstructionResponseSchema),
|
|
1111
|
+
instructions: z16.array(buildInstructionResponseSchema)
|
|
1112
|
+
});
|
|
1113
|
+
var newInstructionRequestSchema = z16.object({
|
|
1114
|
+
nickname: z16.string().optional(),
|
|
1115
|
+
address: hexStringSchema,
|
|
1116
|
+
chainId: z16.number(),
|
|
1117
|
+
salt: hexStringSchema,
|
|
1118
|
+
maxExecutions: hexStringSchema,
|
|
1119
|
+
action: hexStringSchema,
|
|
1120
|
+
arguments: hexStringSchema,
|
|
1121
|
+
activationSignature: eip2098SignatureSchema
|
|
1122
|
+
});
|
|
1123
|
+
var paymentRequestNewRequestSchema = z16.object({
|
|
1124
|
+
requestId: z16.string(),
|
|
1125
|
+
signedAuthorization: z16.string(),
|
|
1126
|
+
completionInstructions: z16.array(newInstructionRequestSchema),
|
|
1127
|
+
instructions: z16.array(newInstructionRequestSchema)
|
|
1128
|
+
});
|
|
1129
|
+
var paymentRequestDetailsRequestSchema = z16.object({
|
|
1130
|
+
requestId: z16.string()
|
|
1131
|
+
});
|
|
1132
|
+
var paymentRequestDetailsResponseSchema = z16.object({
|
|
1133
|
+
requestId: z16.string(),
|
|
1134
|
+
ephemeralWalletAddress: hexStringSchema,
|
|
1135
|
+
ephemeralWalletId: z16.string().optional(),
|
|
1136
|
+
status: z16.enum(["pending", "inProgress", "paid", "cancelled", "draft"]),
|
|
1137
|
+
metadata: z16.record(z16.string(), z16.unknown())
|
|
1138
|
+
});
|
|
1139
|
+
|
|
1140
|
+
// src/api/schemas/transaction.ts
|
|
1141
|
+
import { z as z17 } from "zod";
|
|
1142
|
+
var transactionGetListRequestSchema = z17.object({
|
|
1143
|
+
address: hexStringSchema,
|
|
1144
|
+
chainId: z17.number(),
|
|
1145
|
+
instructionIds: z17.array(z17.string()).optional(),
|
|
1146
|
+
from: z17.string().optional(),
|
|
1147
|
+
to: z17.string().optional(),
|
|
1148
|
+
page: z17.number().optional(),
|
|
1149
|
+
perPage: z17.number().optional(),
|
|
1150
|
+
sort: z17.enum(sortValues).optional()
|
|
1151
|
+
});
|
|
1152
|
+
var transactionGetListResponseSchema = z17.array(transactionSchema);
|
|
1153
|
+
|
|
1154
|
+
// src/env.ts
|
|
1155
|
+
var BUILD_MODE = "development";
|
|
1156
|
+
|
|
1157
|
+
// src/helpers/logger.ts
|
|
1158
|
+
var Logger = class {
|
|
1159
|
+
constructor() {
|
|
1160
|
+
__publicField(this, "isDevelopment", BUILD_MODE === "development");
|
|
1161
|
+
}
|
|
1162
|
+
debug(message, options) {
|
|
1163
|
+
if (this.isDevelopment) {
|
|
1164
|
+
this.log("debug", message, options);
|
|
1165
|
+
}
|
|
1166
|
+
}
|
|
1167
|
+
info(message, options) {
|
|
1168
|
+
this.log("info", message, options);
|
|
1169
|
+
}
|
|
1170
|
+
warn(message, options) {
|
|
1171
|
+
this.log("warn", message, options);
|
|
1172
|
+
}
|
|
1173
|
+
error(message, options) {
|
|
1174
|
+
this.log("error", message, options);
|
|
1175
|
+
}
|
|
1176
|
+
/**
|
|
1177
|
+
* Log errors with context - useful for non-API errors
|
|
1178
|
+
* For API errors, use the existing getErrorMessage from @otim/utils/api
|
|
1179
|
+
*/
|
|
1180
|
+
logError(error, options = {}) {
|
|
1181
|
+
const { context, operation, metadata } = options;
|
|
1182
|
+
const prefix = this.buildPrefix(context, operation);
|
|
1183
|
+
let message = "Unknown error";
|
|
1184
|
+
if (error instanceof Error) {
|
|
1185
|
+
message = error.message;
|
|
1186
|
+
} else if (typeof error === "string") {
|
|
1187
|
+
message = error;
|
|
1188
|
+
} else if (error && typeof error === "object" && "message" in error) {
|
|
1189
|
+
message = String(error.message);
|
|
1190
|
+
}
|
|
1191
|
+
console.error(prefix ? `${prefix} ${message}` : message);
|
|
1192
|
+
if (metadata && Object.keys(metadata).length > 0) {
|
|
1193
|
+
console.error("Context:", metadata);
|
|
1194
|
+
}
|
|
1195
|
+
if (error instanceof Error && error.stack) {
|
|
1196
|
+
console.error("Stack:", error.stack);
|
|
1197
|
+
} else {
|
|
1198
|
+
console.error("Error details:", error);
|
|
1199
|
+
}
|
|
1200
|
+
}
|
|
1201
|
+
buildPrefix(context, operation) {
|
|
1202
|
+
const parts = [];
|
|
1203
|
+
if (context) parts.push(`[${context}]`);
|
|
1204
|
+
if (operation) parts.push(`[${operation}]`);
|
|
1205
|
+
return parts.join(" ");
|
|
1206
|
+
}
|
|
1207
|
+
log(level, message, options) {
|
|
1208
|
+
const prefix = options?.context ? `[${options.context}]` : "";
|
|
1209
|
+
const fullMessage = `${prefix} ${message}`.trim();
|
|
1210
|
+
switch (level) {
|
|
1211
|
+
case "debug":
|
|
1212
|
+
case "info":
|
|
1213
|
+
console.log(fullMessage);
|
|
1214
|
+
break;
|
|
1215
|
+
case "warn":
|
|
1216
|
+
console.warn(fullMessage);
|
|
1217
|
+
break;
|
|
1218
|
+
case "error":
|
|
1219
|
+
console.error(fullMessage);
|
|
1220
|
+
break;
|
|
1221
|
+
}
|
|
1222
|
+
if (options?.data) {
|
|
1223
|
+
console.dir(options.data, { depth: null });
|
|
1224
|
+
}
|
|
1225
|
+
}
|
|
1226
|
+
};
|
|
1227
|
+
var logger = new Logger();
|
|
1228
|
+
|
|
1229
|
+
// src/helpers/zod.ts
|
|
1230
|
+
import { z as z18 } from "zod";
|
|
1231
|
+
var parseSchema = (values, schema) => {
|
|
1232
|
+
const inputValues = schema.safeParse(values);
|
|
1233
|
+
if (!inputValues.success) {
|
|
1234
|
+
throw new Error(
|
|
1235
|
+
`parseSchema: invalid input values ${JSON.stringify(inputValues.error)}`
|
|
1236
|
+
);
|
|
1237
|
+
}
|
|
1238
|
+
return inputValues.data;
|
|
1239
|
+
};
|
|
1240
|
+
|
|
1241
|
+
// src/api/utils/pagination.ts
|
|
1242
|
+
function calculateHasMore(items, requestedPageSize) {
|
|
1243
|
+
return items.length >= requestedPageSize;
|
|
1244
|
+
}
|
|
1245
|
+
function extractPaginationParams(request) {
|
|
1246
|
+
const { page, perPage, ...restParams } = request;
|
|
1247
|
+
return {
|
|
1248
|
+
paginationParams: { page, perPage },
|
|
1249
|
+
restParams
|
|
1250
|
+
};
|
|
1251
|
+
}
|
|
1252
|
+
function getDefaultPagination() {
|
|
1253
|
+
return {
|
|
1254
|
+
page: 0,
|
|
1255
|
+
perPage: 100
|
|
1256
|
+
};
|
|
1257
|
+
}
|
|
1258
|
+
|
|
1259
|
+
// src/api/services/base.ts
|
|
1260
|
+
var BaseService = class {
|
|
1261
|
+
constructor(instance) {
|
|
1262
|
+
this.instance = instance;
|
|
1263
|
+
}
|
|
1264
|
+
async makeRequest({
|
|
1265
|
+
url,
|
|
1266
|
+
method = HttpMethod.Get,
|
|
1267
|
+
data,
|
|
1268
|
+
schema,
|
|
1269
|
+
validateResponse,
|
|
1270
|
+
...config
|
|
1271
|
+
}) {
|
|
1272
|
+
try {
|
|
1273
|
+
const res = await this.instance.request({ url, method, data, ...config });
|
|
1274
|
+
if (validateResponse && !validateResponse(res.data)) {
|
|
1275
|
+
throw new ServiceError("Invalid response format", "INVALID_RESPONSE");
|
|
1276
|
+
}
|
|
1277
|
+
const parsedData = schema ? parseSchema(res.data, schema) : res.data;
|
|
1278
|
+
return { data: parsedData };
|
|
1279
|
+
} catch (error) {
|
|
1280
|
+
if (error instanceof ServiceError) {
|
|
1281
|
+
throw error;
|
|
1282
|
+
}
|
|
1283
|
+
let errorMessage = "Unknown error";
|
|
1284
|
+
let errorCode;
|
|
1285
|
+
if (error && typeof error === "object" && "response" in error) {
|
|
1286
|
+
const axiosError = error;
|
|
1287
|
+
const responseData = axiosError.response?.data;
|
|
1288
|
+
errorMessage = responseData?.errorMessage || responseData?.message || errorMessage;
|
|
1289
|
+
errorCode = responseData?.errorCode;
|
|
1290
|
+
} else if (error instanceof Error) {
|
|
1291
|
+
errorMessage = error.message;
|
|
1292
|
+
}
|
|
1293
|
+
throw new ServiceError(errorMessage, errorCode || "REQUEST_FAILED");
|
|
1294
|
+
}
|
|
1295
|
+
}
|
|
1296
|
+
async makePaginatedRequest({
|
|
1297
|
+
url,
|
|
1298
|
+
method = HttpMethod.Get,
|
|
1299
|
+
data,
|
|
1300
|
+
schema,
|
|
1301
|
+
validateResponse,
|
|
1302
|
+
...config
|
|
1303
|
+
}) {
|
|
1304
|
+
const { paginationParams, restParams } = extractPaginationParams(
|
|
1305
|
+
data || {}
|
|
1306
|
+
);
|
|
1307
|
+
const { page, perPage } = {
|
|
1308
|
+
...getDefaultPagination(),
|
|
1309
|
+
...paginationParams
|
|
1310
|
+
};
|
|
1311
|
+
const requestData = { ...restParams, page, perPage };
|
|
1312
|
+
const response = await this.makeRequest({
|
|
1313
|
+
url,
|
|
1314
|
+
method,
|
|
1315
|
+
data: requestData,
|
|
1316
|
+
schema,
|
|
1317
|
+
validateResponse,
|
|
1318
|
+
...config
|
|
1319
|
+
});
|
|
1320
|
+
const hasMore = Array.isArray(response.data) ? calculateHasMore(response.data, perPage) : false;
|
|
1321
|
+
return {
|
|
1322
|
+
data: response.data,
|
|
1323
|
+
hasMore
|
|
1324
|
+
};
|
|
1325
|
+
}
|
|
1326
|
+
};
|
|
1327
|
+
|
|
1328
|
+
// src/api/services/account.ts
|
|
1329
|
+
var AccountService = class extends BaseService {
|
|
1330
|
+
async getDelegationStatus(requestBody) {
|
|
1331
|
+
const res = await this.makeRequest({
|
|
1332
|
+
url: "/delegation/status",
|
|
1333
|
+
method: HttpMethod.Get,
|
|
1334
|
+
data: requestBody,
|
|
1335
|
+
schema: delegationStatusResponseSchema
|
|
1336
|
+
});
|
|
1337
|
+
return res;
|
|
1338
|
+
}
|
|
1339
|
+
async createDelegation(requestBody) {
|
|
1340
|
+
await this.makeRequest({
|
|
1341
|
+
url: "/delegation/new",
|
|
1342
|
+
method: HttpMethod.Post,
|
|
1343
|
+
data: requestBody
|
|
1344
|
+
});
|
|
1345
|
+
return {
|
|
1346
|
+
data: { success: true, message: "Delegation created" }
|
|
1347
|
+
};
|
|
1348
|
+
}
|
|
1349
|
+
};
|
|
1350
|
+
|
|
1351
|
+
// src/api/services/activity.ts
|
|
1352
|
+
import { z as z19 } from "zod";
|
|
1353
|
+
var safeParseActivityArray = (data) => {
|
|
1354
|
+
if (!Array.isArray(data)) {
|
|
1355
|
+
return [];
|
|
1356
|
+
}
|
|
1357
|
+
const validRecords = [];
|
|
1358
|
+
data.forEach((record) => {
|
|
1359
|
+
const result = activityRecordSchema.safeParse(record);
|
|
1360
|
+
if (result.success) {
|
|
1361
|
+
validRecords.push(result.data);
|
|
1362
|
+
}
|
|
1363
|
+
});
|
|
1364
|
+
return validRecords;
|
|
1365
|
+
};
|
|
1366
|
+
var safeActivityArraySchema = z19.unknown().transform(safeParseActivityArray);
|
|
1367
|
+
var ActivityService = class extends BaseService {
|
|
1368
|
+
async getInstructionActivity(requestBody) {
|
|
1369
|
+
return this.makePaginatedRequest({
|
|
1370
|
+
url: "/instructions/activity",
|
|
1371
|
+
method: HttpMethod.Get,
|
|
1372
|
+
data: requestBody,
|
|
1373
|
+
schema: safeActivityArraySchema
|
|
1374
|
+
});
|
|
1375
|
+
}
|
|
1376
|
+
};
|
|
1377
|
+
|
|
1378
|
+
// src/api/services/auth.ts
|
|
1379
|
+
var AuthService = class extends BaseService {
|
|
1380
|
+
async login(requestBody) {
|
|
1381
|
+
const res = await this.makeRequest({
|
|
1382
|
+
url: "/auth/login",
|
|
1383
|
+
method: HttpMethod.Post,
|
|
1384
|
+
data: requestBody,
|
|
1385
|
+
schema: authLoginResponseSchema
|
|
1386
|
+
});
|
|
1387
|
+
return res;
|
|
1388
|
+
}
|
|
1389
|
+
async turnkeyVerification(requestBody) {
|
|
1390
|
+
const res = await this.makeRequest({
|
|
1391
|
+
url: "/turnkey/verification",
|
|
1392
|
+
method: HttpMethod.Post,
|
|
1393
|
+
data: requestBody,
|
|
1394
|
+
schema: turnkeyVerificationResponseSchema
|
|
1395
|
+
});
|
|
1396
|
+
return res;
|
|
1397
|
+
}
|
|
1398
|
+
async turnkeyLogin(requestBody) {
|
|
1399
|
+
const res = await this.makeRequest({
|
|
1400
|
+
url: "/turnkey/login",
|
|
1401
|
+
method: HttpMethod.Post,
|
|
1402
|
+
data: requestBody,
|
|
1403
|
+
schema: turnkeyLoginResponseSchema
|
|
1404
|
+
});
|
|
1405
|
+
return res;
|
|
1406
|
+
}
|
|
1407
|
+
async me() {
|
|
1408
|
+
const res = await this.makeRequest({
|
|
1409
|
+
url: "/auth/me",
|
|
1410
|
+
method: HttpMethod.Get,
|
|
1411
|
+
schema: userSchema
|
|
1412
|
+
});
|
|
1413
|
+
return res;
|
|
1414
|
+
}
|
|
1415
|
+
async updatePreferences(preferences) {
|
|
1416
|
+
const res = await this.makeRequest({
|
|
1417
|
+
url: "/user/preferences",
|
|
1418
|
+
method: HttpMethod.Put,
|
|
1419
|
+
data: { preferences }
|
|
1420
|
+
});
|
|
1421
|
+
return res;
|
|
1422
|
+
}
|
|
1423
|
+
};
|
|
1424
|
+
|
|
1425
|
+
// src/api/services/config.ts
|
|
1426
|
+
var ConfigService = class extends BaseService {
|
|
1427
|
+
async getDelegateAddress(requestBody) {
|
|
1428
|
+
const res = await this.makeRequest({
|
|
1429
|
+
url: `/config/delegate/address/${requestBody.chainId}`,
|
|
1430
|
+
method: HttpMethod.Get,
|
|
1431
|
+
schema: getDelegateAddressResponseSchema
|
|
1432
|
+
});
|
|
1433
|
+
return res;
|
|
1434
|
+
}
|
|
1435
|
+
async getConfigTokens({
|
|
1436
|
+
chainId
|
|
1437
|
+
}) {
|
|
1438
|
+
const res = await this.makeRequest({
|
|
1439
|
+
url: `/config/tokens/${chainId}`,
|
|
1440
|
+
method: HttpMethod.Get,
|
|
1441
|
+
schema: getConfigTokensResponseSchema
|
|
1442
|
+
});
|
|
1443
|
+
return res;
|
|
1444
|
+
}
|
|
1445
|
+
async getConfigChains() {
|
|
1446
|
+
const res = await this.makeRequest({
|
|
1447
|
+
url: `/config/chains`,
|
|
1448
|
+
method: HttpMethod.Get,
|
|
1449
|
+
schema: getConfigChainsResponseSchema
|
|
1450
|
+
});
|
|
1451
|
+
return res;
|
|
1452
|
+
}
|
|
1453
|
+
async getMaxPriorityFeePerGasEstimate(requestBody) {
|
|
1454
|
+
const res = await this.makeRequest({
|
|
1455
|
+
url: `/instruction/estimate/max_priority_fee_per_gas/${requestBody.chainId}`,
|
|
1456
|
+
method: HttpMethod.Get,
|
|
1457
|
+
schema: getMaxPriorityFeePerGasEstimateResponseSchema
|
|
1458
|
+
});
|
|
1459
|
+
return res;
|
|
1460
|
+
}
|
|
1461
|
+
};
|
|
1462
|
+
|
|
1463
|
+
// src/api/services/contacts.ts
|
|
1464
|
+
var ContactsService = class extends BaseService {
|
|
1465
|
+
async create(request) {
|
|
1466
|
+
const validated = newContactRequestSchema.parse(request);
|
|
1467
|
+
return this.makeRequest({
|
|
1468
|
+
url: "/contacts",
|
|
1469
|
+
method: HttpMethod.Put,
|
|
1470
|
+
data: validated
|
|
1471
|
+
});
|
|
1472
|
+
}
|
|
1473
|
+
async list(request) {
|
|
1474
|
+
const validated = getContactsRequestSchema.parse(request);
|
|
1475
|
+
return this.makePaginatedRequest({
|
|
1476
|
+
url: "/contacts",
|
|
1477
|
+
method: HttpMethod.Get,
|
|
1478
|
+
data: validated,
|
|
1479
|
+
schema: getContactsResponseSchema
|
|
1480
|
+
});
|
|
1481
|
+
}
|
|
1482
|
+
};
|
|
1483
|
+
|
|
1484
|
+
// src/api/services/developer.ts
|
|
1485
|
+
var DeveloperService = class extends BaseService {
|
|
1486
|
+
async updatePublicKey(developerPublicKey) {
|
|
1487
|
+
return this.makeRequest({
|
|
1488
|
+
url: "/developer/public_key",
|
|
1489
|
+
method: HttpMethod.Put,
|
|
1490
|
+
data: { developerPublicKey }
|
|
1491
|
+
});
|
|
1492
|
+
}
|
|
1493
|
+
async generateApiKey() {
|
|
1494
|
+
return this.makeRequest({
|
|
1495
|
+
url: "/developer/api_key",
|
|
1496
|
+
method: HttpMethod.Post
|
|
1497
|
+
});
|
|
1498
|
+
}
|
|
1499
|
+
};
|
|
1500
|
+
|
|
1501
|
+
// src/api/services/instruction.ts
|
|
1502
|
+
var InstructionService = class extends BaseService {
|
|
1503
|
+
async all(requestBody) {
|
|
1504
|
+
return this.makePaginatedRequest({
|
|
1505
|
+
url: "/instructions/all",
|
|
1506
|
+
method: HttpMethod.Get,
|
|
1507
|
+
data: requestBody,
|
|
1508
|
+
schema: instructionsSchema
|
|
1509
|
+
});
|
|
1510
|
+
}
|
|
1511
|
+
async build(requestBody) {
|
|
1512
|
+
const res = await this.makeRequest({
|
|
1513
|
+
url: "/instruction/build",
|
|
1514
|
+
method: HttpMethod.Post,
|
|
1515
|
+
data: requestBody,
|
|
1516
|
+
schema: instructionBuildSchema
|
|
1517
|
+
});
|
|
1518
|
+
return res;
|
|
1519
|
+
}
|
|
1520
|
+
async activate(requestBody) {
|
|
1521
|
+
const res = await this.makeRequest({
|
|
1522
|
+
url: "/instruction/new",
|
|
1523
|
+
method: HttpMethod.Post,
|
|
1524
|
+
data: requestBody,
|
|
1525
|
+
schema: instructionActivateResponseSchema
|
|
1526
|
+
});
|
|
1527
|
+
return res;
|
|
1528
|
+
}
|
|
1529
|
+
async deactivate(requestBody) {
|
|
1530
|
+
const res = await this.makeRequest({
|
|
1531
|
+
url: "/instruction/deactivate",
|
|
1532
|
+
method: HttpMethod.Post,
|
|
1533
|
+
data: requestBody,
|
|
1534
|
+
schema: instructionDeactivateResponseSchema
|
|
1535
|
+
});
|
|
1536
|
+
return res;
|
|
1537
|
+
}
|
|
1538
|
+
async details(requestBody) {
|
|
1539
|
+
const res = await this.makeRequest({
|
|
1540
|
+
url: "/instruction/details",
|
|
1541
|
+
method: HttpMethod.Get,
|
|
1542
|
+
data: requestBody,
|
|
1543
|
+
schema: instructionDetailsResponseSchema
|
|
1544
|
+
});
|
|
1545
|
+
return res;
|
|
1546
|
+
}
|
|
1547
|
+
async rules(requestBody) {
|
|
1548
|
+
return this.makePaginatedRequest({
|
|
1549
|
+
url: "/instructions/rules",
|
|
1550
|
+
method: HttpMethod.Get,
|
|
1551
|
+
data: requestBody,
|
|
1552
|
+
schema: instructionGetRulesResponseSchema
|
|
1553
|
+
});
|
|
1554
|
+
}
|
|
1555
|
+
};
|
|
1556
|
+
|
|
1557
|
+
// src/api/services/transaction.ts
|
|
1558
|
+
var TransactionService = class extends BaseService {
|
|
1559
|
+
async list(requestBody) {
|
|
1560
|
+
return this.makePaginatedRequest({
|
|
1561
|
+
url: "/transactions",
|
|
1562
|
+
method: HttpMethod.Get,
|
|
1563
|
+
data: requestBody,
|
|
1564
|
+
schema: transactionGetListResponseSchema
|
|
1565
|
+
});
|
|
1566
|
+
}
|
|
1567
|
+
};
|
|
1568
|
+
|
|
1569
|
+
// src/api/services/payments.ts
|
|
1570
|
+
var PaymentsService = class extends BaseService {
|
|
1571
|
+
async getOutgoingPaymentsList(request) {
|
|
1572
|
+
return this.makePaginatedRequest({
|
|
1573
|
+
url: "/api/payments/outgoing",
|
|
1574
|
+
method: HttpMethod.Get,
|
|
1575
|
+
data: request,
|
|
1576
|
+
schema: PaymentsSchema
|
|
1577
|
+
});
|
|
1578
|
+
}
|
|
1579
|
+
async getIncomingPaymentsList(request) {
|
|
1580
|
+
return this.makePaginatedRequest({
|
|
1581
|
+
url: "/api/payments/incoming",
|
|
1582
|
+
method: HttpMethod.Get,
|
|
1583
|
+
data: request,
|
|
1584
|
+
schema: PaymentsSchema
|
|
1585
|
+
});
|
|
1586
|
+
}
|
|
1587
|
+
async buildPaymentRequest(requestBody) {
|
|
1588
|
+
return this.makeRequest({
|
|
1589
|
+
url: "/payment/request/build",
|
|
1590
|
+
method: HttpMethod.Post,
|
|
1591
|
+
data: requestBody,
|
|
1592
|
+
schema: paymentRequestBuildResponseSchema
|
|
1593
|
+
});
|
|
1594
|
+
}
|
|
1595
|
+
async newPaymentRequest(requestBody) {
|
|
1596
|
+
return this.makeRequest({
|
|
1597
|
+
url: "/payment/request/new",
|
|
1598
|
+
method: HttpMethod.Post,
|
|
1599
|
+
data: requestBody,
|
|
1600
|
+
validateResponse: () => true
|
|
1601
|
+
});
|
|
1602
|
+
}
|
|
1603
|
+
async getPaymentRequestDetails(requestBody) {
|
|
1604
|
+
return this.makeRequest({
|
|
1605
|
+
url: "/payment/request/details",
|
|
1606
|
+
method: HttpMethod.Get,
|
|
1607
|
+
data: requestBody,
|
|
1608
|
+
schema: paymentRequestDetailsResponseSchema
|
|
1609
|
+
});
|
|
1610
|
+
}
|
|
1611
|
+
async getPaymentRequests(request) {
|
|
1612
|
+
return this.makePaginatedRequest({
|
|
1613
|
+
url: "/payment/requests",
|
|
1614
|
+
method: HttpMethod.Get,
|
|
1615
|
+
data: request,
|
|
1616
|
+
schema: getPaymentRequestsResponseSchema
|
|
1617
|
+
});
|
|
1618
|
+
}
|
|
1619
|
+
};
|
|
1620
|
+
|
|
1621
|
+
// src/api/services/integration.ts
|
|
1622
|
+
import axios2 from "axios";
|
|
1623
|
+
function createEmptyIntegrationResponse(integrationType) {
|
|
1624
|
+
switch (integrationType) {
|
|
1625
|
+
case IntegrationType.QuickBooks:
|
|
1626
|
+
return { integrationType: IntegrationType.QuickBooks, details: {} };
|
|
1627
|
+
case IntegrationType.Bank:
|
|
1628
|
+
return { integrationType: IntegrationType.Bank, details: {} };
|
|
1629
|
+
case IntegrationType.Clio:
|
|
1630
|
+
return { integrationType: IntegrationType.Clio, details: {} };
|
|
1631
|
+
case IntegrationType.Stripe:
|
|
1632
|
+
return { integrationType: IntegrationType.Stripe, details: {} };
|
|
1633
|
+
case IntegrationType.Bill:
|
|
1634
|
+
return { integrationType: IntegrationType.Bill, details: {} };
|
|
1635
|
+
case IntegrationType.Zoho:
|
|
1636
|
+
return { integrationType: IntegrationType.Zoho, details: {} };
|
|
1637
|
+
default:
|
|
1638
|
+
return { integrationType: IntegrationType.Bank, details: {} };
|
|
1639
|
+
}
|
|
1640
|
+
}
|
|
1641
|
+
var IntegrationService = class extends BaseService {
|
|
1642
|
+
async upsert(request) {
|
|
1643
|
+
return this.makeRequest({
|
|
1644
|
+
url: "/integration",
|
|
1645
|
+
method: HttpMethod.Put,
|
|
1646
|
+
data: request,
|
|
1647
|
+
schema: integrationResponseSchema
|
|
1648
|
+
});
|
|
1649
|
+
}
|
|
1650
|
+
async get(request) {
|
|
1651
|
+
try {
|
|
1652
|
+
return await this.makeRequest(
|
|
1653
|
+
{
|
|
1654
|
+
url: "/integration/get",
|
|
1655
|
+
method: HttpMethod.Post,
|
|
1656
|
+
data: request,
|
|
1657
|
+
schema: integrationResponseSchema
|
|
1658
|
+
}
|
|
1659
|
+
);
|
|
1660
|
+
} catch (error) {
|
|
1661
|
+
if (axios2.isAxiosError(error) && error.response?.status === 404) {
|
|
1662
|
+
const defaultResponse = createEmptyIntegrationResponse(
|
|
1663
|
+
request.integrationType
|
|
1664
|
+
);
|
|
1665
|
+
return { data: defaultResponse };
|
|
1666
|
+
}
|
|
1667
|
+
throw error;
|
|
1668
|
+
}
|
|
1669
|
+
}
|
|
1670
|
+
};
|
|
1671
|
+
|
|
1672
|
+
// src/api/services/operating-account.ts
|
|
1673
|
+
var OperatingAccountService = class extends BaseService {
|
|
1674
|
+
async createSubOrganization() {
|
|
1675
|
+
const res = await this.makeRequest({
|
|
1676
|
+
url: "/operating_accounts/sub_organization/new",
|
|
1677
|
+
method: HttpMethod.Post,
|
|
1678
|
+
schema: newOperatingAccountSubOrgResponseSchema
|
|
1679
|
+
});
|
|
1680
|
+
return res;
|
|
1681
|
+
}
|
|
1682
|
+
async getSubOrganization() {
|
|
1683
|
+
const res = await this.makeRequest({
|
|
1684
|
+
url: "/operating_accounts/sub_organization",
|
|
1685
|
+
method: HttpMethod.Get,
|
|
1686
|
+
schema: getOperatingAccountSubOrgResponseSchema
|
|
1687
|
+
});
|
|
1688
|
+
return res;
|
|
1689
|
+
}
|
|
1690
|
+
};
|
|
1691
|
+
|
|
1692
|
+
// src/api/services/uniswap-token-list-service.ts
|
|
1693
|
+
var UniswapTokenListService = class extends BaseService {
|
|
1694
|
+
constructor() {
|
|
1695
|
+
super(...arguments);
|
|
1696
|
+
__publicField(this, "UNISWAP_TOKEN_LIST_URL", "https://ipfs.io/ipns/tokens.uniswap.org");
|
|
1697
|
+
__publicField(this, "FALLBACK_URL", "https://tokens.uniswap.org/");
|
|
1698
|
+
__publicField(this, "CACHE_DURATION", 30 * 60 * 1e3);
|
|
1699
|
+
// 30 minutes
|
|
1700
|
+
__publicField(this, "SUPPORTED_CHAIN_IDS", [1, 10, 42161, 8453]);
|
|
1701
|
+
// mainnet, optimism, arbitrum, base
|
|
1702
|
+
__publicField(this, "tokenListCache", null);
|
|
1703
|
+
__publicField(this, "lastFetch", 0);
|
|
1704
|
+
}
|
|
1705
|
+
/**
|
|
1706
|
+
* Get tokens for a specific chain
|
|
1707
|
+
*/
|
|
1708
|
+
async getTokensForChain({
|
|
1709
|
+
chainId,
|
|
1710
|
+
limit = 50
|
|
1711
|
+
}) {
|
|
1712
|
+
try {
|
|
1713
|
+
const tokenList = await this.fetchTokenList();
|
|
1714
|
+
if (!this.SUPPORTED_CHAIN_IDS.includes(chainId)) {
|
|
1715
|
+
return {
|
|
1716
|
+
data: {
|
|
1717
|
+
tokens: [],
|
|
1718
|
+
source: "uniswap",
|
|
1719
|
+
timestamp: tokenList.timestamp
|
|
1720
|
+
}
|
|
1721
|
+
};
|
|
1722
|
+
}
|
|
1723
|
+
const chainTokens = tokenList.tokens.filter(
|
|
1724
|
+
(token) => token.chainId === chainId
|
|
1725
|
+
);
|
|
1726
|
+
const filteredTokens = chainTokens.filter((token) => {
|
|
1727
|
+
const suspiciousPatterns = [
|
|
1728
|
+
/test/i,
|
|
1729
|
+
/fake/i,
|
|
1730
|
+
/scam/i,
|
|
1731
|
+
/shit/i,
|
|
1732
|
+
/moon/i,
|
|
1733
|
+
/doge/i,
|
|
1734
|
+
/inu/i,
|
|
1735
|
+
/baby/i,
|
|
1736
|
+
/mini/i,
|
|
1737
|
+
/micro/i,
|
|
1738
|
+
/nano/i,
|
|
1739
|
+
/pico/i,
|
|
1740
|
+
/mega/i,
|
|
1741
|
+
/ultra/i,
|
|
1742
|
+
/super/i,
|
|
1743
|
+
/hyper/i,
|
|
1744
|
+
/meta/i,
|
|
1745
|
+
/safe/i,
|
|
1746
|
+
/new/i,
|
|
1747
|
+
/old/i,
|
|
1748
|
+
/v2/i,
|
|
1749
|
+
/v3/i,
|
|
1750
|
+
/v4/i,
|
|
1751
|
+
/v5/i,
|
|
1752
|
+
/2\.0/i,
|
|
1753
|
+
/3\.0/i,
|
|
1754
|
+
/4\.0/i,
|
|
1755
|
+
/5\.0/i
|
|
1756
|
+
];
|
|
1757
|
+
const name = token.name?.toLowerCase() || "";
|
|
1758
|
+
const symbol = token.symbol?.toLowerCase() || "";
|
|
1759
|
+
if (suspiciousPatterns.some(
|
|
1760
|
+
(pattern) => pattern.test(name) || pattern.test(symbol)
|
|
1761
|
+
)) {
|
|
1762
|
+
return false;
|
|
1763
|
+
}
|
|
1764
|
+
if (name.length < 2 || name.length > 50) return false;
|
|
1765
|
+
if (symbol.length < 2 || symbol.length > 20) return false;
|
|
1766
|
+
if (!token.name || !token.symbol || !token.address) return false;
|
|
1767
|
+
return true;
|
|
1768
|
+
});
|
|
1769
|
+
const limitedTokens = filteredTokens.slice(0, limit);
|
|
1770
|
+
return {
|
|
1771
|
+
data: {
|
|
1772
|
+
tokens: limitedTokens,
|
|
1773
|
+
source: "uniswap",
|
|
1774
|
+
timestamp: tokenList.timestamp
|
|
1775
|
+
}
|
|
1776
|
+
};
|
|
1777
|
+
} catch (error) {
|
|
1778
|
+
throw new Error(error instanceof Error ? error.message : "Unknown error");
|
|
1779
|
+
}
|
|
1780
|
+
}
|
|
1781
|
+
/**
|
|
1782
|
+
* Get all supported chains from the token list
|
|
1783
|
+
*/
|
|
1784
|
+
async getSupportedChains() {
|
|
1785
|
+
try {
|
|
1786
|
+
const tokenList = await this.fetchTokenList();
|
|
1787
|
+
const chainIds = Array.from(
|
|
1788
|
+
new Set(tokenList.tokens.map((token) => token.chainId))
|
|
1789
|
+
).sort((a, b) => a - b);
|
|
1790
|
+
return {
|
|
1791
|
+
data: chainIds
|
|
1792
|
+
};
|
|
1793
|
+
} catch (error) {
|
|
1794
|
+
throw new Error(error instanceof Error ? error.message : "Unknown error");
|
|
1795
|
+
}
|
|
1796
|
+
}
|
|
1797
|
+
/**
|
|
1798
|
+
* Search for a specific token by address or symbol
|
|
1799
|
+
*/
|
|
1800
|
+
async findToken(chainId, query) {
|
|
1801
|
+
try {
|
|
1802
|
+
const tokenList = await this.fetchTokenList();
|
|
1803
|
+
const token = tokenList.tokens.find(
|
|
1804
|
+
(t) => t.chainId === chainId && (t.address.toLowerCase() === query.toLowerCase() || t.symbol.toLowerCase() === query.toLowerCase() || t.name.toLowerCase().includes(query.toLowerCase()))
|
|
1805
|
+
);
|
|
1806
|
+
return {
|
|
1807
|
+
data: token || null
|
|
1808
|
+
};
|
|
1809
|
+
} catch (error) {
|
|
1810
|
+
throw new Error(error instanceof Error ? error.message : "Unknown error");
|
|
1811
|
+
}
|
|
1812
|
+
}
|
|
1813
|
+
/**
|
|
1814
|
+
* Get bridge information for a token
|
|
1815
|
+
*/
|
|
1816
|
+
async getBridgeInfo(chainId, tokenAddress) {
|
|
1817
|
+
try {
|
|
1818
|
+
const tokenList = await this.fetchTokenList();
|
|
1819
|
+
const token = tokenList.tokens.find(
|
|
1820
|
+
(t) => t.chainId === chainId && t.address.toLowerCase() === tokenAddress.toLowerCase()
|
|
1821
|
+
);
|
|
1822
|
+
if (!token || !token.extensions?.bridgeInfo) {
|
|
1823
|
+
return {
|
|
1824
|
+
data: {}
|
|
1825
|
+
};
|
|
1826
|
+
}
|
|
1827
|
+
const bridgeInfo = {};
|
|
1828
|
+
for (const [targetChainId, info] of Object.entries(
|
|
1829
|
+
token.extensions.bridgeInfo
|
|
1830
|
+
)) {
|
|
1831
|
+
bridgeInfo[targetChainId] = info.tokenAddress;
|
|
1832
|
+
}
|
|
1833
|
+
return {
|
|
1834
|
+
data: bridgeInfo
|
|
1835
|
+
};
|
|
1836
|
+
} catch (error) {
|
|
1837
|
+
throw new Error(error instanceof Error ? error.message : "Unknown error");
|
|
1838
|
+
}
|
|
1839
|
+
}
|
|
1840
|
+
/**
|
|
1841
|
+
* Fetch the Uniswap token list
|
|
1842
|
+
*/
|
|
1843
|
+
async fetchTokenList() {
|
|
1844
|
+
const now = Date.now();
|
|
1845
|
+
if (this.tokenListCache && now - this.lastFetch < this.CACHE_DURATION) {
|
|
1846
|
+
return this.tokenListCache;
|
|
1847
|
+
}
|
|
1848
|
+
try {
|
|
1849
|
+
const response = await fetch(this.UNISWAP_TOKEN_LIST_URL, {
|
|
1850
|
+
headers: {
|
|
1851
|
+
Accept: "application/json"
|
|
1852
|
+
}
|
|
1853
|
+
});
|
|
1854
|
+
if (!response.ok) {
|
|
1855
|
+
throw new Error(`IPFS fetch failed: ${response.status}`);
|
|
1856
|
+
}
|
|
1857
|
+
const data = await response.json();
|
|
1858
|
+
this.tokenListCache = data;
|
|
1859
|
+
this.lastFetch = now;
|
|
1860
|
+
return data;
|
|
1861
|
+
} catch (error) {
|
|
1862
|
+
logger.logError(error, {
|
|
1863
|
+
context: this.fetchTokenList.name
|
|
1864
|
+
});
|
|
1865
|
+
try {
|
|
1866
|
+
const response = await fetch(this.FALLBACK_URL, {
|
|
1867
|
+
headers: {
|
|
1868
|
+
Accept: "application/json"
|
|
1869
|
+
}
|
|
1870
|
+
});
|
|
1871
|
+
if (!response.ok) {
|
|
1872
|
+
throw new Error(`Fallback fetch failed: ${response.status}`);
|
|
1873
|
+
}
|
|
1874
|
+
const data = await response.json();
|
|
1875
|
+
this.tokenListCache = data;
|
|
1876
|
+
this.lastFetch = now;
|
|
1877
|
+
return data;
|
|
1878
|
+
} catch (fallbackError) {
|
|
1879
|
+
logger.logError(fallbackError, {
|
|
1880
|
+
context: this.fetchTokenList.name
|
|
1881
|
+
});
|
|
1882
|
+
throw new Error("Unable to fetch Uniswap token list");
|
|
1883
|
+
}
|
|
1884
|
+
}
|
|
1885
|
+
}
|
|
1886
|
+
};
|
|
1887
|
+
|
|
1888
|
+
// src/api/api.ts
|
|
1889
|
+
var APIClient = class {
|
|
1890
|
+
constructor(init) {
|
|
1891
|
+
__publicField(this, "account");
|
|
1892
|
+
__publicField(this, "activity");
|
|
1893
|
+
__publicField(this, "auth");
|
|
1894
|
+
__publicField(this, "operatingAccount");
|
|
1895
|
+
__publicField(this, "config");
|
|
1896
|
+
__publicField(this, "contacts");
|
|
1897
|
+
__publicField(this, "developer");
|
|
1898
|
+
__publicField(this, "instruction");
|
|
1899
|
+
__publicField(this, "transaction");
|
|
1900
|
+
__publicField(this, "payments");
|
|
1901
|
+
__publicField(this, "integration");
|
|
1902
|
+
const instance = isInstanceInit(init) ? init.instance : createInstance(init);
|
|
1903
|
+
this.account = new AccountService(instance);
|
|
1904
|
+
this.activity = new ActivityService(instance);
|
|
1905
|
+
this.auth = new AuthService(instance);
|
|
1906
|
+
this.config = new ConfigService(instance);
|
|
1907
|
+
this.contacts = new ContactsService(instance);
|
|
1908
|
+
this.developer = new DeveloperService(instance);
|
|
1909
|
+
this.instruction = new InstructionService(instance);
|
|
1910
|
+
this.integration = new IntegrationService(instance);
|
|
1911
|
+
this.transaction = new TransactionService(instance);
|
|
1912
|
+
this.operatingAccount = new OperatingAccountService(instance);
|
|
1913
|
+
this.payments = new PaymentsService(instance);
|
|
1914
|
+
}
|
|
1915
|
+
};
|
|
1916
|
+
var createAPIClient = (...params) => {
|
|
1917
|
+
return new APIClient(...params);
|
|
1918
|
+
};
|
|
1919
|
+
export {
|
|
1920
|
+
APIClient,
|
|
1921
|
+
AccountService,
|
|
1922
|
+
ActivityService,
|
|
1923
|
+
AuthService,
|
|
1924
|
+
ConfigService,
|
|
1925
|
+
ContactsService,
|
|
1926
|
+
DelegationStatus,
|
|
1927
|
+
DeveloperService,
|
|
1928
|
+
HttpMethod,
|
|
1929
|
+
InstructionService,
|
|
1930
|
+
IntegrationService,
|
|
1931
|
+
IntegrationType,
|
|
1932
|
+
OperatingAccountService,
|
|
1933
|
+
PaymentsService,
|
|
1934
|
+
ServiceError,
|
|
1935
|
+
TransactionService,
|
|
1936
|
+
UniswapTokenListService,
|
|
1937
|
+
actionArgumentsResponseSchema,
|
|
1938
|
+
actionArgumentsSchema,
|
|
1939
|
+
actionNameSchema,
|
|
1940
|
+
activityDataSchema,
|
|
1941
|
+
activityRecordSchema,
|
|
1942
|
+
addressWhitelistCheckRequestSchema,
|
|
1943
|
+
addressWhitelistCheckResponseSchema,
|
|
1944
|
+
apiErrorSchema,
|
|
1945
|
+
attestationSchema,
|
|
1946
|
+
authLoginRequestSchema,
|
|
1947
|
+
authLoginResponseSchema,
|
|
1948
|
+
buildEphemeralInstructionSchema,
|
|
1949
|
+
calculateHasMore,
|
|
1950
|
+
chainIdSchema,
|
|
1951
|
+
chainSuccessResponseSchema,
|
|
1952
|
+
contactSchema,
|
|
1953
|
+
createAPIClient,
|
|
1954
|
+
createAbortController,
|
|
1955
|
+
createInstance,
|
|
1956
|
+
delegationCreateRequestSchema,
|
|
1957
|
+
delegationCreateResponseSchema,
|
|
1958
|
+
delegationStatusRequestSchema,
|
|
1959
|
+
delegationStatusResponseSchema,
|
|
1960
|
+
delegationStatusSchema,
|
|
1961
|
+
delegationStatusValues,
|
|
1962
|
+
errorResponseSchema,
|
|
1963
|
+
extractPaginationParams,
|
|
1964
|
+
feeResponseSchema2 as feeResponseSchema,
|
|
1965
|
+
getConfigChainsResponseSchema,
|
|
1966
|
+
getConfigTokensRequestParametersSchema,
|
|
1967
|
+
getConfigTokensResponseSchema,
|
|
1968
|
+
getContactsRequestSchema,
|
|
1969
|
+
getContactsResponseSchema,
|
|
1970
|
+
getCurrentUserResponseSchema,
|
|
1971
|
+
getDefaultPagination,
|
|
1972
|
+
getDelegateAddressResponseSchema,
|
|
1973
|
+
getDelegateAddressSchema,
|
|
1974
|
+
getErrorMessage,
|
|
1975
|
+
getErrorMessageWithCode,
|
|
1976
|
+
getInstructionActivityRequestSchema,
|
|
1977
|
+
getInstructionActivityResponseSchema,
|
|
1978
|
+
getIntegrationRequestSchema,
|
|
1979
|
+
getMaxPriorityFeePerGasEstimateResponseSchema,
|
|
1980
|
+
getMaxPriorityFeePerGasEstimateSchema,
|
|
1981
|
+
getOperatingAccountSubOrgResponseSchema,
|
|
1982
|
+
getPaymentRequestsRequestSchema,
|
|
1983
|
+
getPaymentRequestsResponseSchema,
|
|
1984
|
+
getUserFriendlyErrorMessage,
|
|
1985
|
+
instructionActivateRequestSchema,
|
|
1986
|
+
instructionActivateResponseSchema,
|
|
1987
|
+
instructionBuildRequestSchema,
|
|
1988
|
+
instructionBuildSchema,
|
|
1989
|
+
instructionDeactivateRequestSchema,
|
|
1990
|
+
instructionDeactivateResponseSchema,
|
|
1991
|
+
instructionDetailsRequestSchema,
|
|
1992
|
+
instructionDetailsResponseSchema,
|
|
1993
|
+
instructionGetAllRequestSchema,
|
|
1994
|
+
instructionGetAllResponseSchema,
|
|
1995
|
+
instructionGetRulesRequestSchema,
|
|
1996
|
+
instructionGetRulesResponseSchema,
|
|
1997
|
+
integrationResponseSchema,
|
|
1998
|
+
integrationTypeSchema,
|
|
1999
|
+
integrationTypeValues,
|
|
2000
|
+
isInstanceInit,
|
|
2001
|
+
isTechnicalError,
|
|
2002
|
+
isUserAddressableError,
|
|
2003
|
+
isUserRejectionError,
|
|
2004
|
+
meResponseSchema,
|
|
2005
|
+
newContactRequestSchema,
|
|
2006
|
+
newInstructionRequestSchema,
|
|
2007
|
+
newOperatingAccountSubOrgResponseSchema,
|
|
2008
|
+
paymentRequestBuildRequestSchema,
|
|
2009
|
+
paymentRequestBuildResponseSchema,
|
|
2010
|
+
paymentRequestDetailsRequestSchema,
|
|
2011
|
+
paymentRequestDetailsResponseSchema,
|
|
2012
|
+
paymentRequestNewRequestSchema,
|
|
2013
|
+
paymentRequestSchema,
|
|
2014
|
+
paymentRequestStatusSchema,
|
|
2015
|
+
paymentRequestsDirectionSchema,
|
|
2016
|
+
sessionTokenRequestSchema,
|
|
2017
|
+
sessionTokenResponseSchema,
|
|
2018
|
+
sessionVerifyResponseSchema,
|
|
2019
|
+
setChainIdSchema,
|
|
2020
|
+
transactionGetListRequestSchema,
|
|
2021
|
+
transactionGetListResponseSchema,
|
|
2022
|
+
turnkeyLoginRequestSchema,
|
|
2023
|
+
turnkeyLoginResponseSchema,
|
|
2024
|
+
turnkeyVerificationRequestSchema,
|
|
2025
|
+
turnkeyVerificationResponseSchema,
|
|
2026
|
+
updateIntegrationRequestSchema,
|
|
2027
|
+
whitelistCheckRequestSchema,
|
|
2028
|
+
whitelistCheckResponseSchema
|
|
2029
|
+
};
|
|
2030
|
+
//# sourceMappingURL=index.mjs.map
|