UNPKG

@solsdk/xswap_sdk

Version:

Universal cross-chain swaps SDK

30 lines 1.37 kB
import { EVMIntentProvider } from './intent-provider.js'; import { CROSS_CHAIN_PERMIT2_TYPES, PERMIT2_DOMAIN, SINGLE_CHAIN_LIMIT_PERMIT2_TYPES } from './permit2.js'; export async function getEVMSingleChainOrderTypedData(order) { const randomNonce = EVMIntentProvider.getRandomNonce(); const permissionMessage = EVMIntentProvider.getSingleChainLimitPermissionMessage(order, randomNonce); const orderTypedData = { domain: PERMIT2_DOMAIN(order.chainId), types: SINGLE_CHAIN_LIMIT_PERMIT2_TYPES, primaryType: 'PermitWitnessTransferFrom', message: permissionMessage, }; return { orderTypedData, nonce: randomNonce }; } /** * Generates typed data for EVM order signatures * @param order The order to generate typed data for * @returns Object containing the typed data and nonce */ export async function getEVMCrossChainOrderTypedData(order) { const randomNonce = EVMIntentProvider.getRandomNonce(); const permissionMessage = EVMIntentProvider.getCrossChainPermissionMessage(order, randomNonce); const orderTypedData = { domain: PERMIT2_DOMAIN(order.sourceChainId), types: CROSS_CHAIN_PERMIT2_TYPES, primaryType: 'PermitWitnessTransferFrom', message: permissionMessage, }; return { orderTypedData, nonce: randomNonce }; } //# sourceMappingURL=order-signature.js.map