UNPKG

@layerzerolabs/lz-aptos-sdk-v2

Version:

1 lines 47.2 kB
{"version":3,"sources":["../src/generated/addresses.ts","../src/utils.ts","../src/index.ts"],"names":["AptosProvider","AptosConfig","Net","Aptos","Chain","Stage","chainAndStageToNetwork","AccountAddress","LayerZeroModulesSdk","AccountAuthenticatorEd25519","AptosApiError","MoveAbortError","MoveResourceNotFoundError","MoveTableItemNotFoundError","UnclassifiedError","Ed25519Account","isMnemonicAndPath","isPrivateKey","Ed25519PrivateKey","invariant"],"mappings":"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","file":"index.cjs","sourcesContent":["// WARNING: Do not change this code. It is auto generated.\n// If you want some new feature, please update generate-addresses.ts.\nimport { Network } from '@layerzerolabs/lz-definitions'\nexport const ENDPOINT_V2_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x824f76b2794de0a0bf25384f2fde4db5936712e6c5c45cf2c3f9ef92e75709c',\n 'aptos-testnet': '0x7f03103b83c51c8b09be1751a797a65ac6e755f72947ecdecffc203d32d816c6',\n 'aptos-mainnet': '0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c',\n 'movement-sandbox-local': '0x824f76b2794de0a0bf25384f2fde4db5936712e6c5c45cf2c3f9ef92e75709c',\n 'movement-testnet': '0x7f03103b83c51c8b09be1751a797a65ac6e755f72947ecdecffc203d32d816c6',\n 'movement-mainnet': '0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c',\n}\nexport const SIMPLE_MESSAGE_LIB_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xbb29964fac328dc2cd1dbf03982e51fad9de67e2a525c35d6e52cde4b66e7997',\n 'aptos-testnet': '0x98ab4d5f6f5ae0d3bc9d9785cfd63244fffc4652bf54f8971cb7035589a256eb',\n 'aptos-mainnet': '0x52d5c6f8dcb20ed8ace8dbaa7cc09a98eb1dbec0f184720795310c031ace5111',\n 'movement-sandbox-local': '0xbb29964fac328dc2cd1dbf03982e51fad9de67e2a525c35d6e52cde4b66e7997',\n 'movement-testnet': '0x98ab4d5f6f5ae0d3bc9d9785cfd63244fffc4652bf54f8971cb7035589a256eb',\n 'movement-mainnet': '0x52d5c6f8dcb20ed8ace8dbaa7cc09a98eb1dbec0f184720795310c031ace5111',\n}\nexport const ULN_MESSAGE_LIB_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x3f2714ef2d63f1128f45e4a3d31b354c1c940ccdb38aca697c9797ef95e7a09f',\n 'aptos-testnet': '0xcc1c03aed42e2841211865758b5efe93c0dde2cb7a2a5dc6cf25a4e33ad23690',\n 'aptos-mainnet': '0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9',\n 'movement-sandbox-local': '0x3f2714ef2d63f1128f45e4a3d31b354c1c940ccdb38aca697c9797ef95e7a09f',\n 'movement-testnet': '0xcc1c03aed42e2841211865758b5efe93c0dde2cb7a2a5dc6cf25a4e33ad23690',\n 'movement-mainnet': '0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9',\n}\nexport const COUNTER_V2_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xbf1258595a80969371696c798d481a47dd0a1e8fe087c1c8e2a94e17801bec6e',\n 'aptos-testnet': '0x0b8815df49c1f36000581fbe37b39f703f112ff83081004302c2effb5f6305f5',\n 'aptos-mainnet': '0x3dd555e720e29ffd45c7ba6f3dcacc3a467730a900e3de81b791f5b3863579f1',\n 'movement-sandbox-local': '0xbf1258595a80969371696c798d481a47dd0a1e8fe087c1c8e2a94e17801bec6e',\n 'movement-testnet': '0xb8815df49c1f36000581fbe37b39f703f112ff83081004302c2effb5f6305f5',\n 'movement-mainnet': '0x3dd555e720e29ffd45c7ba6f3dcacc3a467730a900e3de81b791f5b3863579f1',\n}\nexport const OFT_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x40cf3d168e49851d6423b919338aba1c42f018a9996395e777548a7e9ce956c9',\n 'aptos-testnet': '0x732ab32f721cc9dea67db94e1bbfc9641f7c6c45bcfc277757559bb6d501340f',\n 'aptos-mainnet': '0xd0ef5cf11188041d9e688d9fbf0f0205e3d156b4b4325e6268256a6e51c9fab9',\n 'movement-sandbox-local': '0x40cf3d168e49851d6423b919338aba1c42f018a9996395e777548a7e9ce956c9',\n 'movement-testnet': '0x732ab32f721cc9dea67db94e1bbfc9641f7c6c45bcfc277757559bb6d501340f',\n 'movement-mainnet': '0xd0ef5cf11188041d9e688d9fbf0f0205e3d156b4b4325e6268256a6e51c9fab9',\n}\nexport const LAYERZERO_VIEWS_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x9f03c64333c99c9d319ffc034c13618d309a8fa6f18636261d7e5d3e21e2d8d8',\n 'aptos-testnet': '0x8a2453373b206a7d3b470a3fd62a1c7185f8ea0f7072e4ab65dd709f0f0467ff',\n 'aptos-mainnet': '0x1cc729cf1cb5491d9dd3f0ad004884cbeb8d1bc9df87bb3aa9a4917e7ffa1aee',\n 'movement-sandbox-local': '0x9f03c64333c99c9d319ffc034c13618d309a8fa6f18636261d7e5d3e21e2d8d8',\n 'movement-testnet': '0x8a2453373b206a7d3b470a3fd62a1c7185f8ea0f7072e4ab65dd709f0f0467ff',\n 'movement-mainnet': '0x1cc729cf1cb5491d9dd3f0ad004884cbeb8d1bc9df87bb3aa9a4917e7ffa1aee',\n}\nexport const EXECUTOR_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x806020afea680a0c0f32431acdfcf1a7e31ace28ce81b73da4f27c5898155590',\n 'aptos-testnet': '0x93353700091200ef9fdc536ce6a86182cc7e62da25f94356be9421c6310b9585',\n 'aptos-mainnet': '0x15a5bbf1eb7998a22c9f23810d424abe40bd59ddd8e6ab7e59529853ebed41c4',\n 'movement-sandbox-local': '0x806020afea680a0c0f32431acdfcf1a7e31ace28ce81b73da4f27c5898155590',\n 'movement-testnet': '0x93353700091200ef9fdc536ce6a86182cc7e62da25f94356be9421c6310b9585',\n 'movement-mainnet': '0x15a5bbf1eb7998a22c9f23810d424abe40bd59ddd8e6ab7e59529853ebed41c4',\n}\nexport const EXECUTOR_ULN301_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xdb02463fcf441ade02733f535f276b04e8220b8f7fbe8da5197ba4141aa0c248',\n 'aptos-testnet': '0x6c405a040328f466a9edfbc0c272731e9cdeb2d26fa6643e618614fbb120748',\n 'aptos-mainnet': '0x956f942b024d04b09b0bc40e283b3c8a247bca2671cc227e1af72f7dcae24e05',\n 'movement-sandbox-local': '0xdb02463fcf441ade02733f535f276b04e8220b8f7fbe8da5197ba4141aa0c248',\n 'movement-testnet': '0x0',\n 'movement-mainnet': '0x0',\n}\nexport const DVN_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x1f79b324153abe0ca18a279822f3b561acbaabb4d68d47ed3639b5a53e4d3470',\n 'aptos-testnet': '0x756f8ab056688d22687740f4a9aeec3b361170b28d08b719e28c4d38eed1043e',\n 'aptos-mainnet': '0xdf8f0a53b20f1656f998504b81259698d126523a31bdbbae45ba1e8a3078d8da',\n 'movement-sandbox-local': '0x1f79b324153abe0ca18a279822f3b561acbaabb4d68d47ed3639b5a53e4d3470',\n 'movement-testnet': '0x756f8ab056688d22687740f4a9aeec3b361170b28d08b719e28c4d38eed1043e',\n 'movement-mainnet': '0xdf8f0a53b20f1656f998504b81259698d126523a31bdbbae45ba1e8a3078d8da',\n}\nexport const DVN_301_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x1f79b324153abe0ca18a279822f3b561acbaabb4d68d47ed3639b5a53e4d3470',\n 'aptos-testnet': '0x60072f90836f8142e4c87820ba9e27c4e84dffcff2a0117e70ee85240f609af4',\n 'aptos-mainnet': '0xf3f0a412626edba5ddd3613d91109b241893873ac5479ade231cf0b3130572b5',\n 'movement-sandbox-local': '0x1f79b324153abe0ca18a279822f3b561acbaabb4d68d47ed3639b5a53e4d3470',\n 'movement-testnet': '0x0',\n 'movement-mainnet': '0x0',\n}\nexport const DVN_UPGRADER_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xbb0fbbe978dcf5e658e1a447d3e28977a92b276fe0e14d60081b7a2af8b3c61f',\n 'aptos-testnet': '0xf4aca0f32edb994ada0dcfa8fc51afcca9e5a70b98cdd00bfb39befcf33ef68',\n 'aptos-mainnet': '0xfbe3700ccc2db708a5412f678c7ba0a65c500799e93b4e758303a513e0f88ec',\n 'movement-sandbox-local': '0xbb0fbbe978dcf5e658e1a447d3e28977a92b276fe0e14d60081b7a2af8b3c61f',\n 'movement-testnet': '0x0',\n 'movement-mainnet': '0x0',\n}\nexport const WORKER_COMMON: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x9d8a2cc4cd5563028107b792fd3c7f4068064405ef1bc4fce1cbc3af916032e8',\n 'aptos-testnet': '0xfe0b685e4cc9e77d91d008ef4161de68f7d7646c3bf67079fd4c2f0356631be8',\n 'aptos-mainnet': '0x1bffc83ec332cb9de738e8f0c27dd2230ee57bdbc71473047fcfe8bfaa21fab7',\n 'movement-sandbox-local': '0x9d8a2cc4cd5563028107b792fd3c7f4068064405ef1bc4fce1cbc3af916032e8',\n 'movement-testnet': '0xfe0b685e4cc9e77d91d008ef4161de68f7d7646c3bf67079fd4c2f0356631be8',\n 'movement-mainnet': '0x1bffc83ec332cb9de738e8f0c27dd2230ee57bdbc71473047fcfe8bfaa21fab7',\n}\nexport const PRICE_FEED: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x894473c4f48d05a65d5bfb106ab91bc0881c7a1c7e9c66fbea2859c2ba9bff83',\n 'aptos-testnet': '0xa762d65f42c852e0a7f6240ec6441694ea1b4786392cdfa5351dee8364c868fc',\n 'aptos-mainnet': '0xad0f7141f626c07db99a7fe5b864fde080bc4966c144d88f6f14ac4af391f30',\n 'movement-sandbox-local': '0x894473c4f48d05a65d5bfb106ab91bc0881c7a1c7e9c66fbea2859c2ba9bff83',\n 'movement-testnet': '0xa762d65f42c852e0a7f6240ec6441694ea1b4786392cdfa5351dee8364c868fc',\n 'movement-mainnet': '0xad0f7141f626c07db99a7fe5b864fde080bc4966c144d88f6f14ac4af391f30',\n}\nexport const TREASURY_ADDRESS: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xd83cb5c494daec692964a3599c3b36d4bd618dc54e7bcb2bbe444a7f9732f740',\n 'aptos-testnet': '0x3a9902a21eabd3552edfc104cb4a6ce1ac4fe5af6aa24a56037969e1a0db3d93',\n 'aptos-mainnet': '0x77c941e60b8e2c8d784de2ee456fd497283edfe1e15704c99a192ff795fc38b7',\n 'movement-sandbox-local': '0xd83cb5c494daec692964a3599c3b36d4bd618dc54e7bcb2bbe444a7f9732f740',\n 'movement-testnet': '0x3a9902a21eabd3552edfc104cb4a6ce1ac4fe5af6aa24a56037969e1a0db3d93',\n 'movement-mainnet': '0x77c941e60b8e2c8d784de2ee456fd497283edfe1e15704c99a192ff795fc38b7',\n}\nexport const ENDPOINT_V2_COMMON: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xf8ce9f0030cb1fa5fb48f481d9b2da3909cd922992e7085e76a196653a707bbf',\n 'aptos-testnet': '0x3bc8cbd74c2e1929c287a0063206fbb126314976146934bae12283f6120e99e9',\n 'aptos-mainnet': '0xe1dc2a62b445403bea0dbd73df8cee03b3ead0a06b003e72e401c030a810a133',\n 'movement-sandbox-local': '0xf8ce9f0030cb1fa5fb48f481d9b2da3909cd922992e7085e76a196653a707bbf',\n 'movement-testnet': '0x3bc8cbd74c2e1929c287a0063206fbb126314976146934bae12283f6120e99e9',\n 'movement-mainnet': '0xe1dc2a62b445403bea0dbd73df8cee03b3ead0a06b003e72e401c030a810a133',\n}\nexport const DVN_FEE_LIB: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xf63f6b01ea6688189e09e2be035bef512049288ff1d307c2470a913f3831330f',\n 'aptos-testnet': '0x9b77c6ad73d3e642f4c59ff191e1b460a7f4a16a67558edba1a744b4d6a88127',\n 'aptos-mainnet': '0x349c43bc506cbbe7b754b164867bd1751763410b6458a798c25bb6f3c3e9e487',\n 'movement-sandbox-local': '0xf63f6b01ea6688189e09e2be035bef512049288ff1d307c2470a913f3831330f',\n 'movement-testnet': '0x9b77c6ad73d3e642f4c59ff191e1b460a7f4a16a67558edba1a744b4d6a88127',\n 'movement-mainnet': '0x349c43bc506cbbe7b754b164867bd1751763410b6458a798c25bb6f3c3e9e487',\n}\nexport const EXECUTOR_FEE_LIB: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0xff72f529a579e922e0edba30f384b4c9c86d05020cbd2401a23fe708f29c6664',\n 'aptos-testnet': '0x4123c50265067995272e998193638aaf876d75454b2aba50d55d950b2236ff4e',\n 'aptos-mainnet': '0xbbb5d80871b10c4a7c10b9bbc636fdca4faa05feb3b03dc27e3018a7bfcbd8cb',\n 'movement-sandbox-local': '0xff72f529a579e922e0edba30f384b4c9c86d05020cbd2401a23fe708f29c6664',\n 'movement-testnet': '0x4123c50265067995272e998193638aaf876d75454b2aba50d55d950b2236ff4e',\n 'movement-mainnet': '0xbbb5d80871b10c4a7c10b9bbc636fdca4faa05feb3b03dc27e3018a7bfcbd8cb',\n}\nexport const DEPLOY_TO_OBJECT: { [network in Network]?: string } = {\n 'aptos-sandbox-local': '0x68b674103753edaa1c3a38ef06ba92e038ff5b0fd76e066a57ad7fecd19815a6',\n 'aptos-testnet': '0x4ea1efbda3414034610c9e460aca244a8559605f328866a9e36aa892184f45c',\n 'aptos-mainnet': '0x472157dc175fa089e50fc97bbdaa7647afbca155eb2ef2c0edd1395c34f109ff',\n 'movement-sandbox-local': '0x68b674103753edaa1c3a38ef06ba92e038ff5b0fd76e066a57ad7fecd19815a6',\n 'movement-testnet': '0x4ea1efbda3414034610c9e460aca244a8559605f328866a9e36aa892184f45c',\n 'movement-mainnet': '0x472157dc175fa089e50fc97bbdaa7647afbca155eb2ef2c0edd1395c34f109ff',\n}","/**\n * The basis points (BPS) used to apply a safety margin to the gas limit.\n *\n * 1 BPS = 0.01%, so 2000 BPS = 20%.\n */\nexport const GAS_LIMIT_SAFETY_BPS = 2000\n\n/**\n * Applies a safety margin to the gas limit.\n *\n * @param {string} gasUsed - The amount of gas used.\n * @returns {bigint} The gas limit with the safety margin applied.\n */\nexport function applyGasLimitSafety(gasUsed: string): bigint {\n return (BigInt(gasUsed) * BigInt(10000 + GAS_LIMIT_SAFETY_BPS)) / BigInt(10000)\n}\n","import {\n AccountAddress,\n AccountAddressInput,\n AccountAuthenticator,\n AccountAuthenticatorEd25519,\n Aptos,\n AptosApiError,\n AptosConfig,\n CommittedTransactionResponse,\n Ed25519Account,\n Ed25519PrivateKey,\n InputGenerateTransactionPayloadData,\n InputViewFunctionData,\n LedgerVersionArg,\n MoveStructId,\n Network as Net,\n ScriptFunctionArgumentTypes,\n SimpleTransaction,\n TableItemRequest,\n} from '@aptos-labs/ts-sdk'\nimport * as aptos from 'aptos'\nimport invariant from 'tiny-invariant'\n\nimport { Provider } from '@layerzerolabs/lz-core'\nimport { AptosProvider } from '@layerzerolabs/lz-corekit-aptos'\nimport { Chain, Stage, chainAndStageToNetwork } from '@layerzerolabs/lz-definitions'\nimport { AccountsOption, LayerZeroModulesSdk, MoveSdkImpl } from '@layerzerolabs/lz-movevm-sdk-v2'\nimport {\n ByteCode,\n EntryFunctionArgumentTypes,\n GasOptions,\n MnemonicAndPath,\n MoveAbortError,\n MoveFunction,\n MoveResourceNotFoundError,\n MoveTableItemNotFoundError,\n MoveValue,\n PrivateKey,\n TransactionResponse,\n UnclassifiedError,\n isMnemonicAndPath,\n isPrivateKey,\n} from '@layerzerolabs/move-definitions'\n\nimport {\n COUNTER_V2_ADDRESS,\n DEPLOY_TO_OBJECT,\n DVN_ADDRESS,\n DVN_UPGRADER_ADDRESS,\n ENDPOINT_V2_ADDRESS,\n ENDPOINT_V2_COMMON,\n EXECUTOR_ADDRESS,\n LAYERZERO_VIEWS_ADDRESS,\n OFT_ADDRESS,\n PRICE_FEED,\n SIMPLE_MESSAGE_LIB_ADDRESS,\n TREASURY_ADDRESS,\n ULN_MESSAGE_LIB_ADDRESS,\n WORKER_COMMON,\n} from './generated/addresses'\nimport { applyGasLimitSafety } from './utils'\n\nexport * from './utils'\nexport * from './generated/addresses'\n\n/**\n * Options for initializing the SDK.\n */\nexport interface SdkOptions {\n /**\n * The chain for the SDK (optional).\n * default value is Chain.APTOS\n */\n chain?: Chain\n /**\n * The provider for the SDK.\n */\n provider: Aptos\n\n /**\n * The stage of the SDK (optional).\n * default value is Stage.SANDBOX\n */\n stage?: Stage\n\n /**\n * The accounts option (optional).\n * default value is read from generated/addresses.ts\n */\n accounts?: AccountsOption\n}\n\n/**\n * Asserts that the given provider is an instance of AptosProvider.\n *\n * @param {Provider} provider - The provider to check.\n * @throws {Error} If the provider is not an instance of AptosProvider.\n */\nfunction assertAptosProvider(provider: Provider): asserts provider is AptosProvider {\n if (!(provider instanceof AptosProvider)) {\n throw new Error('Invalid provider')\n }\n}\n\n/**\n * Creates an instance of the SDK from the given provider.\n *\n * @param {Provider} provider - The provider of the current chain. {@link AptosProvider}\n * @param {Stage} [stage] - The stage of the SDK. {@link Stage}\n * @returns {SDK} The initialized SDK instance.\n */\nexport function getSDKFromProvider(provider: Provider, stage?: Stage): SDK {\n const client = provider.native as aptos.AptosClient\n const url = client.nodeUrl\n assertAptosProvider(provider)\n const indexerUrl = provider.indexer\n const faucetUrl = provider.faucet\n const aptosConfig = new AptosConfig({ network: Net.LOCAL, fullnode: url, indexer: indexerUrl, faucet: faucetUrl })\n const aptos = new Aptos(aptosConfig)\n return new SDK({ provider: aptos, stage })\n}\n\n/**\n * Interface representing an option value.\n */\ninterface OptionValue {\n /**\n * The vector of Move values.\n */\n vec: MoveValue[]\n}\n\n/**\n * Checks if the given value is an OptionValue.\n * In contract, the type will be Option<xxx>, In SDK, the type will be OptionValue.\n *\n * @param {unknown} value - The value to check.\n * @returns {value is OptionValue} True if the value is an OptionValue, false otherwise.\n */\nfunction isOptionValue(value: unknown): value is OptionValue {\n return typeof value === 'object' && value != null && 'vec' in value\n}\n\n/**\n * The SDK class provides methods to interact with the Aptos.\n * For usage, please check [README.md](../README.md).\n *\n * @implements {MoveSdkImpl<Ed25519Account>}\n */\nexport class SDK implements MoveSdkImpl<Ed25519Account> {\n chain: Chain\n stage: Stage\n client: Aptos\n LayerzeroModule: LayerZeroModulesSdk<Ed25519Account>\n accounts: AccountsOption\n\n /**\n * Creates an instance of the SDK.\n *\n * @param {SdkOptions} options - The SDK options.\n */\n constructor(options: SdkOptions) {\n this.chain = options.chain ?? Chain.APTOS\n this.stage = options.stage ?? Stage.SANDBOX\n const network = chainAndStageToNetwork(this.chain, this.stage, this.stage === Stage.SANDBOX)\n this.accounts = options.accounts ?? {\n endpoint_v2: AccountAddress.from(ENDPOINT_V2_ADDRESS[network] ?? '0x0').toString(),\n counter_v2: AccountAddress.from(COUNTER_V2_ADDRESS[network] ?? '0x0').toString(),\n oft: AccountAddress.from(OFT_ADDRESS[network] ?? '0x0').toString(),\n layerzero_views: AccountAddress.from(LAYERZERO_VIEWS_ADDRESS[network] ?? '0x0').toString(),\n simple_message_lib: AccountAddress.from(SIMPLE_MESSAGE_LIB_ADDRESS[network] ?? '0x0').toString(),\n uln_message_lib: AccountAddress.from(ULN_MESSAGE_LIB_ADDRESS[network] ?? '0x0').toString(),\n executor: AccountAddress.from(EXECUTOR_ADDRESS[network] ?? '0x0').toString(),\n dvn: AccountAddress.from(DVN_ADDRESS[network] ?? '0x0').toString(),\n dvn_upgrader: AccountAddress.from(DVN_UPGRADER_ADDRESS[network] ?? '0x0').toString(),\n worker_common: AccountAddress.from(WORKER_COMMON[network] ?? '0x0').toString(),\n price_feed: AccountAddress.from(PRICE_FEED[network] ?? '0x0').toString(),\n treasury: AccountAddress.from(TREASURY_ADDRESS[network] ?? '0x0').toString(),\n endpoint_v2_common: AccountAddress.from(ENDPOINT_V2_COMMON[network] ?? '0x0').toString(),\n deploy_to_object: AccountAddress.from(DEPLOY_TO_OBJECT[network] ?? '0x0').toString(),\n }\n this.client = options.provider\n this.LayerzeroModule = new LayerZeroModulesSdk(this)\n }\n\n /**\n * Gets the Aptos client.\n *\n * @returns {Aptos} The Aptos client.\n */\n getAptosClient(): Aptos {\n return this.client\n }\n\n /**\n * Sends and confirms an authenticated transaction.\n *\n * @param {Object} args - The arguments for the transaction.\n * @param {SimpleTransaction} args.txn - The transaction to send.\n * @param {AccountAuthenticator} args.auth - The authenticator for the transaction.\n * @returns {Promise<CommittedTransactionResponse>} The response of the committed transaction.\n */\n async sendAndConfirmAuthTransaction(args: {\n txn: SimpleTransaction\n auth: AccountAuthenticator\n }): Promise<CommittedTransactionResponse> {\n const res = await this.client.transaction.submit.simple({\n transaction: args.txn,\n senderAuthenticator: args.auth,\n })\n return this.waitAndGetTransaction(res.hash)\n }\n\n public isMoveFunctionId(name: string): boolean {\n return name.split('::').length === 3\n }\n\n /**\n * Sends and confirms a transaction with the given signer and payload.\n *\n * @param {Ed25519Account} signer - The signer of the transaction.\n * @param {InputEntryFunctionData} payload - The payload of the transaction.\n * @param {GasOptions} [gasOptions] - The gas options for the transaction.\n * @returns {Promise<CommittedTransactionResponse>} The response of the committed transaction.\n * @private\n */\n private async sendAndConfirmTransaction_(\n signer: Ed25519Account,\n payload: InputGenerateTransactionPayloadData,\n gasOptions?: GasOptions\n ): Promise<CommittedTransactionResponse> {\n this.assertValidGasOptions(gasOptions)\n const options = await this.estimateGas(signer, payload)\n\n const txnRequest = await this.client.transaction.build.simple({\n sender: signer.accountAddress,\n data: payload,\n options: {\n gasUnitPrice: Number(gasOptions?.gasPrice !== undefined ? gasOptions.gasPrice : options.gas_unit_price),\n maxGasAmount: Number(gasOptions?.gasLimit !== undefined ? gasOptions.gasLimit : options.max_gas_amount),\n },\n })\n const auth = new AccountAuthenticatorEd25519(signer.publicKey, signer.signTransaction(txnRequest))\n return this.sendAndConfirmAuthTransaction({ txn: txnRequest, auth: auth })\n }\n\n /**\n * Handles errors and returns appropriate error instances based on the error type.\n *\n * @param {unknown} e - The error to handle.\n * @returns {unknown} The handled error, which could be an instance of MoveAbortError, MoveResourceNotFoundError, MoveTableItemNotFoundError, UnclassifiedError, or the original error.\n */\n handleError(e: unknown): unknown {\n if (e instanceof AptosApiError) {\n const errorData = e.data as { message: string | undefined; error_code: string | undefined }\n const errorString = errorData.message ?? ''\n const errorCode = errorData.error_code ?? ''\n const majorStatusMatch = errorString.match(/major_status:\\s([A-Z_]+)/)\n if (majorStatusMatch !== null) {\n const major_status = majorStatusMatch[1]\n if (major_status === 'ABORTED') {\n const subStatusMatch = errorString.match(/sub_status:\\sSome\\((\\d+)\\)/)\n if (subStatusMatch === null) {\n return new MoveAbortError(Number.NEGATIVE_INFINITY, errorString)\n } else {\n return new MoveAbortError(Number(subStatusMatch[1]), errorString)\n }\n } else if (major_status === 'MISSING_DATA') {\n return new MoveResourceNotFoundError(errorString)\n }\n } else if (errorCode === 'resource_not_found') {\n return new MoveResourceNotFoundError(errorString)\n } else if (errorCode === 'table_item_not_found') {\n return new MoveTableItemNotFoundError(errorString)\n } else if (errorString.includes('Move abort')) {\n // for new version error message\n const regex = /\\((0x[0-9a-fA-F]+)\\)/\n const match = errorString.match(regex)\n if (match) {\n const abortCode = match[1]\n return new MoveAbortError(Number.parseInt(abortCode, 16), errorString)\n }\n }\n return new UnclassifiedError(`statusCode:${e.status},status:${e.statusText},errorString:${errorString}`)\n }\n return e\n }\n\n /**\n * Executes a view function and returns the result.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {Object} args - The arguments for the view function.\n * @param {MoveFunction} args.functionName - The name of the function.\n * @param {EntryFunctionArgumentTypes[]} args.functionArgs - The arguments for the function.\n * @param {string[]} [args.typeArgs] - The type arguments for the function.\n * @returns {Promise<MoveValue[]>} The result of the view function.\n */\n async viewFunction(args: {\n functionName: MoveFunction\n functionArgs: EntryFunctionArgumentTypes[]\n typeArgs?: string[]\n }): Promise<MoveValue[]> {\n const payload: InputViewFunctionData = {\n function: args.functionName,\n functionArguments: args.functionArgs,\n typeArguments: args.typeArgs ?? [],\n }\n try {\n let view = await this.client.view({ payload })\n view = view.map((item) => {\n if (isOptionValue(item)) {\n if (item.vec.length !== 0) {\n return item.vec[0]\n } else {\n return null\n }\n }\n return item\n })\n if (view.length > 1) {\n view = [view]\n }\n return view as MoveValue[]\n } catch (e) {\n throw this.handleError(e)\n }\n }\n\n /**\n * Normalizes the signer to an Ed25519Account.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {Ed25519Account | PrivateKey | MnemonicAndPath} signer - The signer to normalize.\n * @returns {Ed25519Account} The normalized signer.\n * @throws {Error} If the signer is invalid.\n */\n normalizeSigner(signer: Ed25519Account | PrivateKey | MnemonicAndPath): Ed25519Account {\n if (signer instanceof Ed25519Account) {\n return signer\n } else if (isMnemonicAndPath(signer)) {\n return Ed25519Account.fromDerivationPath(signer)\n } else if (isPrivateKey(signer)) {\n return new Ed25519Account({ privateKey: new Ed25519PrivateKey(signer) })\n }\n throw new Error(`Invalid signer`)\n }\n\n /**\n * Converts an account to an address string.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {Ed25519Account} account - The account to convert.\n * @returns {string} The address of the account.\n */\n accountToAddress(account: Ed25519Account): string {\n return account.accountAddress.toString()\n }\n\n /**\n * Sends a transaction and waits for confirmation.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {Ed25519Account | PrivateKey | MnemonicAndPath} signer - The signer of the transaction.\n * @param {MoveFunction} func - The function to call.\n * @param {EntryFunctionArgumentTypes[] | SimpleEntryFunctionArgumentTypes[]} args - The arguments for the function.\n * @param {string[]} [_] - Unused parameter.\n * @param {GasOptions} [gasOptions] - The gas options.\n * @param {string[]} [typeArguments] - The type arguments.\n * @returns {Promise<TransactionResponse>} The transaction response.\n */\n async sendAndConfirmTransaction(\n signer: Ed25519Account | PrivateKey | MnemonicAndPath,\n func: MoveFunction | ByteCode,\n args: EntryFunctionArgumentTypes[],\n _?: string[],\n gasOptions?: GasOptions,\n typeArguments?: string[]\n ): Promise<TransactionResponse> {\n try {\n signer = this.normalizeSigner(signer)\n let transactionData: InputGenerateTransactionPayloadData\n if (this.isMoveFunctionId(func)) {\n transactionData = {\n function: func as MoveFunction,\n functionArguments: args,\n typeArguments,\n }\n } else {\n transactionData = {\n bytecode: func,\n functionArguments: args as unknown as ScriptFunctionArgumentTypes[],\n typeArguments,\n }\n }\n const committedTransactionResponse = await this.sendAndConfirmTransaction_(\n signer,\n transactionData,\n gasOptions\n )\n return {\n hash: committedTransactionResponse.hash,\n sender: signer.accountAddress.toString(),\n raw: committedTransactionResponse,\n }\n } catch (e) {\n throw this.handleError(e)\n }\n }\n\n /**\n * Asserts that the given gas options are valid.\n *\n * @param {GasOptions} [gasOptions] - The gas options to validate.\n * @throws {Error} If the gas options are invalid.\n */\n assertValidGasOptions(gasOptions?: GasOptions): void {\n if (gasOptions === undefined) {\n return\n }\n if (gasOptions.gasPrice !== undefined) {\n invariant(\n Number.isInteger(Number(gasOptions.gasPrice)),\n `Invalid gas price: ${gasOptions.gasPrice}, must be an integer`\n )\n }\n if (gasOptions.gasLimit !== undefined) {\n invariant(\n Number.isInteger(Number(gasOptions.gasLimit)),\n `Invalid gas limit: ${gasOptions.gasLimit}, must be an integer`\n )\n }\n }\n\n /**\n * Estimates the gas required for a transaction.\n *\n * @param {Ed25519Account} signer - The signer of the transaction.\n * @param {InputGenerateTransactionPayloadData} payload - The payload of the transaction.\n * @returns {Promise<{ max_gas_amount: string; gas_unit_price: string }>} The estimated gas amount and gas unit price.\n */\n async estimateGas(\n signer: Ed25519Account,\n payload: InputGenerateTransactionPayloadData\n ): Promise<{\n max_gas_amount: string\n gas_unit_price: string\n }> {\n const txnRequest = await this.client.transaction.build.simple({\n sender: signer.accountAddress,\n data: payload,\n })\n const sim = await this.client.transaction.simulate.simple({\n signerPublicKey: signer.publicKey,\n transaction: txnRequest,\n options: {\n estimateGasUnitPrice: true,\n estimateMaxGasAmount: true,\n },\n })\n const tx = sim[0]\n invariant(tx.success, `Transaction failed: ${tx.vm_status}}`)\n const max_gas_amount = applyGasLimitSafety(tx.gas_used).toString()\n return {\n max_gas_amount,\n gas_unit_price: tx.gas_unit_price,\n }\n }\n\n /**\n * Gets an account resource.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {Object} args - The arguments for getting the account resource.\n * @param {AccountAddressInput} args.accountAddress - The account address.\n * @param {MoveStructId} args.resourceType - The type of the resource.\n * @param {LedgerVersionArg} [args.options] - The options for getting the resource.\n * @returns {Promise<T>} The account resource.\n * @template T - The type of the resource.\n * @throws {Error} If the request fails.\n */\n async getAccountResource<T extends NonNullable<unknown> = any>(args: {\n accountAddress: AccountAddressInput\n resourceType: MoveStructId\n options?: LedgerVersionArg\n }): Promise<T> {\n try {\n return await this.client.getAccountResource(args)\n } catch (e) {\n throw this.handleError(e)\n }\n }\n\n /**\n * Gets a table item.\n *\n * @param {Object} args - The arguments for getting the table item.\n * @param {string} args.handle - The table handle.\n * @param {TableItemRequest} args.data - The key of the item.\n * @param {LedgerVersionArg} [args.options] - The options for getting the item.\n * @returns {Promise<T>} The table item.\n * @template T - The type of the item.\n * @throws {Error} If the request fails.\n */\n async getTableItem<T>(args: { handle: string; data: TableItemRequest; options?: LedgerVersionArg }): Promise<T> {\n try {\n return await this.client.getTableItem(args)\n } catch (e) {\n throw this.handleError(e)\n }\n }\n\n /**\n * Waits for a transaction to be confirmed and returns the transaction response.\n *\n * @param {string} txnHash - The hash of the transaction.\n * @returns {Promise<CommittedTransactionResponse>} The response of the committed transaction.\n * @throws {Error} If the transaction fails.\n * @private\n */\n private async waitAndGetTransaction(txnHash: string): Promise<CommittedTransactionResponse> {\n const tx = await this.client.waitForTransaction({ transactionHash: txnHash })\n invariant(tx.success, `Transaction failed: ${tx.vm_status}`)\n return tx\n }\n\n /**\n * Normalizes an address to a string.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @param {string} address - The address to normalize.\n * @returns {string} The normalized address.\n */\n normalizeAddress(address: string): string {\n return AccountAddress.from(address).toString()\n }\n\n /**\n * Checks if the SDK supports coins.\n * @implements {MoveSdkImpl<Ed25519Account>}\n *\n * @returns {boolean} True if the SDK supports coins, false otherwise.\n */\n supportsCoin(): boolean {\n return true\n }\n\n /**\n * Checks if the given address is a valid object address.\n * @param address\n */\n async isObjectAddress(address: string): Promise<boolean> {\n try {\n await this.getAccountResource({\n accountAddress: address,\n resourceType: '0x1::object::ObjectCore',\n })\n return true\n } catch (e) {\n return false\n }\n }\n}\n"]}