{"version":3,"sources":["../../src/internal/fungibleAsset.ts"],"sourcesContent":["// Copyright © Endless\n// Copyright © Aptos Foundation\n// SPDX-License-Identifier: Apache-2.0\n\n/**\n * This file contains the underlying implementations for exposed API surface in\n * the {@link api/fungible_asset}. By moving the methods out into a separate file,\n * other namespaces and processes can access these methods without depending on the entire\n * fungible_asset namespace and without having a dependency cycle error.\n */\n\nimport { EndlessConfig } from \"../api/endlessConfig\";\nimport { AnyNumber, MoveAbility } from \"../types\";\nimport { AccountAddressInput } from \"../core\";\nimport { Account } from \"../account\";\nimport {\n  EntryFunctionABI,\n  InputGenerateTransactionOptions,\n  parseTypeTag,\n  TypeTagAddress,\n  TypeTagU128,\n} from \"../transactions\";\nimport { generateTransaction } from \"./transactionSubmission\";\nimport { SimpleTransaction } from \"../transactions/instances/simpleTransaction\";\n\nconst transferFungibleAssetAbi: EntryFunctionABI = {\n  typeParameters: [{ constraints: [MoveAbility.KEY] }],\n  parameters: [parseTypeTag(\"0x1::object::Object\"), new TypeTagAddress(), new TypeTagU128()],\n};\n\nexport async function transferFungibleAsset(args: {\n  endlessConfig: EndlessConfig;\n  sender: Account;\n  fungibleAssetMetadataAddress: AccountAddressInput;\n  recipient: AccountAddressInput;\n  amount: AnyNumber;\n  options?: InputGenerateTransactionOptions;\n}): Promise<SimpleTransaction> {\n  const { endlessConfig, sender, fungibleAssetMetadataAddress, recipient, amount, options } = args;\n  return generateTransaction({\n    endlessConfig,\n    sender: sender.accountAddress,\n    data: {\n      function: \"0x1::primary_fungible_store::transfer\",\n      typeArguments: [\"0x1::fungible_asset::Metadata\"],\n      functionArguments: [fungibleAssetMetadataAddress, recipient, amount],\n      abi: transferFungibleAssetAbi,\n    },\n    options,\n  });\n}"],"mappings":"kIAyBA,IAAMA,EAA6C,CACjD,eAAgB,CAAC,CAAE,YAAa,MAAgB,CAAE,CAAC,EACnD,WAAY,CAACC,EAAa,qBAAqB,EAAG,IAAIC,EAAkB,IAAIC,CAAa,CAC3F,EAEA,eAAsBC,EAAsBC,EAOb,CAC7B,GAAM,CAAE,cAAAC,EAAe,OAAAC,EAAQ,6BAAAC,EAA8B,UAAAC,EAAW,OAAAC,EAAQ,QAAAC,CAAQ,EAAIN,EAC5F,OAAOO,EAAoB,CACzB,cAAAN,EACA,OAAQC,EAAO,eACf,KAAM,CACJ,SAAU,wCACV,cAAe,CAAC,+BAA+B,EAC/C,kBAAmB,CAACC,EAA8BC,EAAWC,CAAM,EACnE,IAAKV,CACP,EACA,QAAAW,CACF,CAAC,CACH","names":["transferFungibleAssetAbi","parseTypeTag","TypeTagAddress","TypeTagU128","transferFungibleAsset","args","endlessConfig","sender","fungibleAssetMetadataAddress","recipient","amount","options","generateTransaction"]}