@ixo/editor 6.32.1 → 6.34.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/dist/BidConfig-YLGSEIOS.js +154 -0
- package/dist/BidConfig-YLGSEIOS.js.map +1 -0
- package/dist/BidFlowDetail-TJCJBJZZ.js +365 -0
- package/dist/BidFlowDetail-TJCJBJZZ.js.map +1 -0
- package/dist/CalendarEventCreateConfig-J2LU6LJO.js +155 -0
- package/dist/CalendarEventCreateConfig-J2LU6LJO.js.map +1 -0
- package/dist/CalendarEventCreateFlowDetail-ZWHZWDOK.js +174 -0
- package/dist/CalendarEventCreateFlowDetail-ZWHZWDOK.js.map +1 -0
- package/dist/CalendarEventListConfig-GQNNF4ZB.js +116 -0
- package/dist/CalendarEventListConfig-GQNNF4ZB.js.map +1 -0
- package/dist/CalendarEventListFlowDetail-SSRTOXIX.js +58 -0
- package/dist/CalendarEventListFlowDetail-SSRTOXIX.js.map +1 -0
- package/dist/CalendarEventUpdateConfig-KACZA6GH.js +133 -0
- package/dist/CalendarEventUpdateConfig-KACZA6GH.js.map +1 -0
- package/dist/CalendarEventUpdateFlowDetail-CD6NHHOU.js +155 -0
- package/dist/CalendarEventUpdateFlowDetail-CD6NHHOU.js.map +1 -0
- package/dist/ClaimConfig-3HKPGK55.js +200 -0
- package/dist/ClaimConfig-3HKPGK55.js.map +1 -0
- package/dist/ClaimFlowDetail-UVEQMEI5.js +641 -0
- package/dist/ClaimFlowDetail-UVEQMEI5.js.map +1 -0
- package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js +149 -0
- package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js.map +1 -0
- package/dist/CollectionLifecycleFlowDetail-WFCSVIIG.js +647 -0
- package/dist/CollectionLifecycleFlowDetail-WFCSVIIG.js.map +1 -0
- package/dist/CollectionUsersConfig-RI2X3YY2.js +271 -0
- package/dist/CollectionUsersConfig-RI2X3YY2.js.map +1 -0
- package/dist/CollectionUsersFlowDetail-ZLCJBWHG.js +1276 -0
- package/dist/CollectionUsersFlowDetail-ZLCJBWHG.js.map +1 -0
- package/dist/CredentialStoreConfig-G66AQDGZ.js +75 -0
- package/dist/CredentialStoreConfig-G66AQDGZ.js.map +1 -0
- package/dist/CredentialStoreFlowDetail-FL7QAM3S.js +99 -0
- package/dist/CredentialStoreFlowDetail-FL7QAM3S.js.map +1 -0
- package/dist/DesignPodConfig-LJ7H2CZ6.js +8 -0
- package/dist/DesignPodConfig-LJ7H2CZ6.js.map +1 -0
- package/dist/DesignPodFlowDetail-JHJWGNVY.js +309 -0
- package/dist/DesignPodFlowDetail-JHJWGNVY.js.map +1 -0
- package/dist/DomainCardPreviewConfig-Q3X5M4WF.js +37 -0
- package/dist/DomainCardPreviewConfig-Q3X5M4WF.js.map +1 -0
- package/dist/DomainCardPreviewFlowDetail-Y2FE7O5Z.js +131 -0
- package/dist/DomainCardPreviewFlowDetail-Y2FE7O5Z.js.map +1 -0
- package/dist/DomainIndexerLookupConfig-N4VONQUY.js +41 -0
- package/dist/DomainIndexerLookupConfig-N4VONQUY.js.map +1 -0
- package/dist/DomainIndexerLookupFlowDetail-GJ7WWK7I.js +70 -0
- package/dist/DomainIndexerLookupFlowDetail-GJ7WWK7I.js.map +1 -0
- package/dist/DomainSignConfig-XFIXROVK.js +47 -0
- package/dist/DomainSignConfig-XFIXROVK.js.map +1 -0
- package/dist/DomainSignFlowDetail-BXZ6JBPR.js +206 -0
- package/dist/DomainSignFlowDetail-BXZ6JBPR.js.map +1 -0
- package/dist/DomainSingleSelectionConfig-ZNKIXB4P.js +101 -0
- package/dist/DomainSingleSelectionConfig-ZNKIXB4P.js.map +1 -0
- package/dist/DomainSingleSelectionFlowDetail-HWTQXSLA.js +147 -0
- package/dist/DomainSingleSelectionFlowDetail-HWTQXSLA.js.map +1 -0
- package/dist/EmailSendConfig-YEGZ5Q77.js +215 -0
- package/dist/EmailSendConfig-YEGZ5Q77.js.map +1 -0
- package/dist/EntityCreateOracleConfig-UZ6ZIMP5.js +150 -0
- package/dist/EntityCreateOracleConfig-UZ6ZIMP5.js.map +1 -0
- package/dist/EntityCreateOracleFlowDetail-H2X7CPYU.js +120 -0
- package/dist/EntityCreateOracleFlowDetail-H2X7CPYU.js.map +1 -0
- package/dist/EntitySingleSelectionConfig-DL57KNKM.js +30 -0
- package/dist/EntitySingleSelectionConfig-DL57KNKM.js.map +1 -0
- package/dist/EntitySingleSelectionFlowDetail-GFQGX3GA.js +118 -0
- package/dist/EntitySingleSelectionFlowDetail-GFQGX3GA.js.map +1 -0
- package/dist/EntityTransferConfig-JVZ3H35B.js +62 -0
- package/dist/EntityTransferConfig-JVZ3H35B.js.map +1 -0
- package/dist/EntityTransferFlowDetail-XEXM34XB.js +132 -0
- package/dist/EntityTransferFlowDetail-XEXM34XB.js.map +1 -0
- package/dist/EvalEngineConfig-CHC4IRN3.js +464 -0
- package/dist/EvalEngineConfig-CHC4IRN3.js.map +1 -0
- package/dist/EvalEngineFlowDetail-PUFRNO4U.js +4291 -0
- package/dist/EvalEngineFlowDetail-PUFRNO4U.js.map +1 -0
- package/dist/EvaluateBidConfig-OE4CM43G.js +151 -0
- package/dist/EvaluateBidConfig-OE4CM43G.js.map +1 -0
- package/dist/EvaluateBidFlowDetail-2S2N4YTW.js +564 -0
- package/dist/EvaluateBidFlowDetail-2S2N4YTW.js.map +1 -0
- package/dist/EvaluateClaimConfig-3D4F5LHU.js +297 -0
- package/dist/EvaluateClaimConfig-3D4F5LHU.js.map +1 -0
- package/dist/EvaluateClaimFlowDetail-QYR7PJRD.js +2237 -0
- package/dist/EvaluateClaimFlowDetail-QYR7PJRD.js.map +1 -0
- package/dist/FormSubmitConfig-UFZYMLUN.js +59 -0
- package/dist/FormSubmitConfig-UFZYMLUN.js.map +1 -0
- package/dist/FormSubmitFlowDetail-IAHDJS6P.js +169 -0
- package/dist/FormSubmitFlowDetail-IAHDJS6P.js.map +1 -0
- package/dist/GovernanceAuthzExecFlowDetail-SQBGU5BX.js +166 -0
- package/dist/GovernanceAuthzExecFlowDetail-SQBGU5BX.js.map +1 -0
- package/dist/GovernanceAuthzGrantFlowDetail-DZPNLANT.js +88 -0
- package/dist/GovernanceAuthzGrantFlowDetail-DZPNLANT.js.map +1 -0
- package/dist/GovernanceAuthzRevokeFlowDetail-3JZ4IUJG.js +88 -0
- package/dist/GovernanceAuthzRevokeFlowDetail-3JZ4IUJG.js.map +1 -0
- package/dist/GovernanceChainVoteFlowDetail-475UDNG6.js +83 -0
- package/dist/GovernanceChainVoteFlowDetail-475UDNG6.js.map +1 -0
- package/dist/GovernanceConfigConfig-V3WM4WBP.js +30 -0
- package/dist/GovernanceConfigConfig-V3WM4WBP.js.map +1 -0
- package/dist/GovernanceConfigFlowDetail-SQ5PPDRX.js +267 -0
- package/dist/GovernanceConfigFlowDetail-SQ5PPDRX.js.map +1 -0
- package/dist/GovernanceContractExecuteFlowDetail-H2ZV6W2E.js +113 -0
- package/dist/GovernanceContractExecuteFlowDetail-H2ZV6W2E.js.map +1 -0
- package/dist/GovernanceContractInstantiateFlowDetail-YJJMGM54.js +144 -0
- package/dist/GovernanceContractInstantiateFlowDetail-YJJMGM54.js.map +1 -0
- package/dist/GovernanceContractManageCw20FlowDetail-OCBMW3YJ.js +72 -0
- package/dist/GovernanceContractManageCw20FlowDetail-OCBMW3YJ.js.map +1 -0
- package/dist/GovernanceContractMigrateFlowDetail-JDNIKTT3.js +104 -0
- package/dist/GovernanceContractMigrateFlowDetail-JDNIKTT3.js.map +1 -0
- package/dist/GovernanceContractUpdateAdminFlowDetail-SZBOAOCC.js +68 -0
- package/dist/GovernanceContractUpdateAdminFlowDetail-SZBOAOCC.js.map +1 -0
- package/dist/GovernanceCustomMessageFlowDetail-CXD4ZATO.js +78 -0
- package/dist/GovernanceCustomMessageFlowDetail-CXD4ZATO.js.map +1 -0
- package/dist/GovernanceDaoAcceptToMarketplaceFlowDetail-Q6ZBNY7Z.js +98 -0
- package/dist/GovernanceDaoAcceptToMarketplaceFlowDetail-Q6ZBNY7Z.js.map +1 -0
- package/dist/GovernanceDaoAdminExecFlowDetail-JAEAY2US.js +94 -0
- package/dist/GovernanceDaoAdminExecFlowDetail-JAEAY2US.js.map +1 -0
- package/dist/GovernanceDaoCreateEntityFlowDetail-7RVNTVAB.js +96 -0
- package/dist/GovernanceDaoCreateEntityFlowDetail-7RVNTVAB.js.map +1 -0
- package/dist/GovernanceDaoJoinFlowDetail-XYCTCNHO.js +68 -0
- package/dist/GovernanceDaoJoinFlowDetail-XYCTCNHO.js.map +1 -0
- package/dist/GovernanceDaoManageStorageFlowDetail-LMLYLYYC.js +93 -0
- package/dist/GovernanceDaoManageStorageFlowDetail-LMLYLYYC.js.map +1 -0
- package/dist/GovernanceDaoManageSubDaosFlowDetail-YUFQ67JN.js +84 -0
- package/dist/GovernanceDaoManageSubDaosFlowDetail-YUFQ67JN.js.map +1 -0
- package/dist/GovernanceDaoUpdateInfoFlowDetail-G5FIBY4L.js +104 -0
- package/dist/GovernanceDaoUpdateInfoFlowDetail-G5FIBY4L.js.map +1 -0
- package/dist/GovernanceMemberProposalConfig-IGPXEFDB.js +42 -0
- package/dist/GovernanceMemberProposalConfig-IGPXEFDB.js.map +1 -0
- package/dist/GovernanceMemberProposalFlowDetail-T3VURONF.js +240 -0
- package/dist/GovernanceMemberProposalFlowDetail-T3VURONF.js.map +1 -0
- package/dist/GovernanceNftBurnFlowDetail-AG4I2O7H.js +69 -0
- package/dist/GovernanceNftBurnFlowDetail-AG4I2O7H.js.map +1 -0
- package/dist/GovernanceNftManageCollectionsFlowDetail-UAAGO3Q6.js +71 -0
- package/dist/GovernanceNftManageCollectionsFlowDetail-UAAGO3Q6.js.map +1 -0
- package/dist/GovernanceNftTransferFlowDetail-KXM7DTOV.js +130 -0
- package/dist/GovernanceNftTransferFlowDetail-KXM7DTOV.js.map +1 -0
- package/dist/GovernanceSettingsProposalConfig-4SLJTBLW.js +42 -0
- package/dist/GovernanceSettingsProposalConfig-4SLJTBLW.js.map +1 -0
- package/dist/GovernanceSettingsProposalFlowDetail-VFZPSCLR.js +165 -0
- package/dist/GovernanceSettingsProposalFlowDetail-VFZPSCLR.js.map +1 -0
- package/dist/GovernanceStakingStakeFlowDetail-ULLJ7FLM.js +123 -0
- package/dist/GovernanceStakingStakeFlowDetail-ULLJ7FLM.js.map +1 -0
- package/dist/GovernanceStakingStakeToGroupFlowDetail-CSPKJA3H.js +84 -0
- package/dist/GovernanceStakingStakeToGroupFlowDetail-CSPKJA3H.js.map +1 -0
- package/dist/GovernanceSubmissionConfigProposalFlowDetail-MZCPSZF2.js +111 -0
- package/dist/GovernanceSubmissionConfigProposalFlowDetail-MZCPSZF2.js.map +1 -0
- package/dist/GovernanceTransactionMintFlowDetail-Y2WRAODH.js +66 -0
- package/dist/GovernanceTransactionMintFlowDetail-Y2WRAODH.js.map +1 -0
- package/dist/GovernanceTransactionPerformTokenSwapFlowDetail-GEK6PMMI.js +133 -0
- package/dist/GovernanceTransactionPerformTokenSwapFlowDetail-GEK6PMMI.js.map +1 -0
- package/dist/GovernanceTransactionSendFundsConfig-VBKMLSF3.js +42 -0
- package/dist/GovernanceTransactionSendFundsConfig-VBKMLSF3.js.map +1 -0
- package/dist/GovernanceTransactionSendFundsFlowDetail-5TZB64VL.js +182 -0
- package/dist/GovernanceTransactionSendFundsFlowDetail-5TZB64VL.js.map +1 -0
- package/dist/GovernanceTransactionSendGroupTokenFlowDetail-EGOWVZM2.js +155 -0
- package/dist/GovernanceTransactionSendGroupTokenFlowDetail-EGOWVZM2.js.map +1 -0
- package/dist/GovernanceTransactionWithdrawTokenSwapFlowDetail-6XWVO5O6.js +56 -0
- package/dist/GovernanceTransactionWithdrawTokenSwapFlowDetail-6XWVO5O6.js.map +1 -0
- package/dist/GovernanceValidatorActionsFlowDetail-ZMLPAFUB.js +117 -0
- package/dist/GovernanceValidatorActionsFlowDetail-ZMLPAFUB.js.map +1 -0
- package/dist/HarvestConfig-AIGOGBFR.js +56 -0
- package/dist/HarvestConfig-AIGOGBFR.js.map +1 -0
- package/dist/HarvestFlowDetail-X3RUH3X3.js +131 -0
- package/dist/HarvestFlowDetail-X3RUH3X3.js.map +1 -0
- package/dist/HttpRequestConfig-OQEJIIJY.js +194 -0
- package/dist/HttpRequestConfig-OQEJIIJY.js.map +1 -0
- package/dist/HttpRequestFlowDetail-JVLV533Z.js +116 -0
- package/dist/HttpRequestFlowDetail-JVLV533Z.js.map +1 -0
- package/dist/IdentityCreateConfig-ZBUOJ6AL.js +94 -0
- package/dist/IdentityCreateConfig-ZBUOJ6AL.js.map +1 -0
- package/dist/IdentityCreateFlowDetail-WGKO43IH.js +83 -0
- package/dist/IdentityCreateFlowDetail-WGKO43IH.js.map +1 -0
- package/dist/IidCreateConfig-RRV2DYXI.js +75 -0
- package/dist/IidCreateConfig-RRV2DYXI.js.map +1 -0
- package/dist/IidCreateFlowDetail-6M32S6XS.js +57 -0
- package/dist/IidCreateFlowDetail-6M32S6XS.js.map +1 -0
- package/dist/KycVerifyConfig-VCG65K5K.js +65 -0
- package/dist/KycVerifyConfig-VCG65K5K.js.map +1 -0
- package/dist/KycVerifyFlowDetail-EWOMXSD3.js +421 -0
- package/dist/KycVerifyFlowDetail-EWOMXSD3.js.map +1 -0
- package/dist/ListDomainFlowsConfig-3JZEPTOJ.js +37 -0
- package/dist/ListDomainFlowsConfig-3JZEPTOJ.js.map +1 -0
- package/dist/ListDomainFlowsFlowDetail-XX5AXDZZ.js +257 -0
- package/dist/ListDomainFlowsFlowDetail-XX5AXDZZ.js.map +1 -0
- package/dist/LoadBatchesConfig-IMODIWRT.js +38 -0
- package/dist/LoadBatchesConfig-IMODIWRT.js.map +1 -0
- package/dist/LoadBatchesFlowDetail-GB24T76O.js +101 -0
- package/dist/LoadBatchesFlowDetail-GB24T76O.js.map +1 -0
- package/dist/MatrixDmConfig-NBII27CS.js +120 -0
- package/dist/MatrixDmConfig-NBII27CS.js.map +1 -0
- package/dist/MatrixRegisterConfig-N2U4FBYF.js +62 -0
- package/dist/MatrixRegisterConfig-N2U4FBYF.js.map +1 -0
- package/dist/MatrixRegisterFlowDetail-D5YNL5QX.js +86 -0
- package/dist/MatrixRegisterFlowDetail-D5YNL5QX.js.map +1 -0
- package/dist/MemberMultiSelectConfig-E7WUB2WD.js +30 -0
- package/dist/MemberMultiSelectConfig-E7WUB2WD.js.map +1 -0
- package/dist/MemberMultiSelectFlowDetail-6C4ZMSDR.js +392 -0
- package/dist/MemberMultiSelectFlowDetail-6C4ZMSDR.js.map +1 -0
- package/dist/OracleConfig-R7TDTTKN.js +56 -0
- package/dist/OracleConfig-R7TDTTKN.js.map +1 -0
- package/dist/OracleConfigureOracleConfig-QFF74X3N.js +198 -0
- package/dist/OracleConfigureOracleConfig-QFF74X3N.js.map +1 -0
- package/dist/OracleConfigureOracleFlowDetail-73BHAN76.js +255 -0
- package/dist/OracleConfigureOracleFlowDetail-73BHAN76.js.map +1 -0
- package/dist/OracleContractConfig-PHY5L7W2.js +38 -0
- package/dist/OracleContractConfig-PHY5L7W2.js.map +1 -0
- package/dist/OracleContractFlowDetail-M3PM4AU4.js +78 -0
- package/dist/OracleContractFlowDetail-M3PM4AU4.js.map +1 -0
- package/dist/OracleDeployConfig-QBG76ATZ.js +10 -0
- package/dist/OracleDeployConfig-QBG76ATZ.js.map +1 -0
- package/dist/OracleDeployFlowDetail-WKTMD2AD.js +231 -0
- package/dist/OracleDeployFlowDetail-WKTMD2AD.js.map +1 -0
- package/dist/OracleDeploySetupConfig-75XPGFJQ.js +10 -0
- package/dist/OracleDeploySetupConfig-75XPGFJQ.js.map +1 -0
- package/dist/OracleDeploySetupFlowDetail-R3BQ7EAU.js +165 -0
- package/dist/OracleDeploySetupFlowDetail-R3BQ7EAU.js.map +1 -0
- package/dist/OracleDeployStartConfig-NA6GZ4VQ.js +10 -0
- package/dist/OracleDeployStartConfig-NA6GZ4VQ.js.map +1 -0
- package/dist/OracleDeployStartFlowDetail-EL3CMDMG.js +89 -0
- package/dist/OracleDeployStartFlowDetail-EL3CMDMG.js.map +1 -0
- package/dist/OracleFlowDetail-5JCJK3GH.js +76 -0
- package/dist/OracleFlowDetail-5JCJK3GH.js.map +1 -0
- package/dist/OraclePromptConfig-YBRESISH.js +39 -0
- package/dist/OraclePromptConfig-YBRESISH.js.map +1 -0
- package/dist/OraclePromptFlowDetail-O3XNK7HY.js +112 -0
- package/dist/OraclePromptFlowDetail-O3XNK7HY.js.map +1 -0
- package/dist/OracleStoreConfigConfig-TUZWTJMA.js +134 -0
- package/dist/OracleStoreConfigConfig-TUZWTJMA.js.map +1 -0
- package/dist/OracleStoreConfigFlowDetail-Q6AUUSUL.js +99 -0
- package/dist/OracleStoreConfigFlowDetail-Q6AUUSUL.js.map +1 -0
- package/dist/OracleStoreSecretsAndConfigConfig-SZPYEK7U.js +198 -0
- package/dist/OracleStoreSecretsAndConfigConfig-SZPYEK7U.js.map +1 -0
- package/dist/OracleStoreSecretsAndConfigFlowDetail-BFV2EHLT.js +220 -0
- package/dist/OracleStoreSecretsAndConfigFlowDetail-BFV2EHLT.js.map +1 -0
- package/dist/OracleStoreSecretsConfig-PQMF7LFT.js +191 -0
- package/dist/OracleStoreSecretsConfig-PQMF7LFT.js.map +1 -0
- package/dist/OracleStoreSecretsFlowDetail-DNNOPHVA.js +197 -0
- package/dist/OracleStoreSecretsFlowDetail-DNNOPHVA.js.map +1 -0
- package/dist/ProposalCreateConfig-U5IHZNT7.js +161 -0
- package/dist/ProposalCreateConfig-U5IHZNT7.js.map +1 -0
- package/dist/ProposalCreateFlowDetail-4VZZPAWH.js +235 -0
- package/dist/ProposalCreateFlowDetail-4VZZPAWH.js.map +1 -0
- package/dist/ProposalVoteConfig-MH4MU7SL.js +150 -0
- package/dist/ProposalVoteConfig-MH4MU7SL.js.map +1 -0
- package/dist/ProposalVoteFlowDetail-IJJ3OHAB.js +280 -0
- package/dist/ProposalVoteFlowDetail-IJJ3OHAB.js.map +1 -0
- package/dist/ProtocolSelectConfig-S5U3P6K7.js +48 -0
- package/dist/ProtocolSelectConfig-S5U3P6K7.js.map +1 -0
- package/dist/ProtocolSelectFlowDetail-XBSJIEIH.js +116 -0
- package/dist/ProtocolSelectFlowDetail-XBSJIEIH.js.map +1 -0
- package/dist/RetireConfig-MV37WWZ6.js +59 -0
- package/dist/RetireConfig-MV37WWZ6.js.map +1 -0
- package/dist/RetireFlowDetail-VZ5O4SXI.js +147 -0
- package/dist/RetireFlowDetail-VZ5O4SXI.js.map +1 -0
- package/dist/SandboxProvisionConfig-ZGG4IRHM.js +46 -0
- package/dist/SandboxProvisionConfig-ZGG4IRHM.js.map +1 -0
- package/dist/SandboxProvisionFlowDetail-RUY64INV.js +79 -0
- package/dist/SandboxProvisionFlowDetail-RUY64INV.js.map +1 -0
- package/dist/WalletFundConfig-CMM3EP3B.js +117 -0
- package/dist/WalletFundConfig-CMM3EP3B.js.map +1 -0
- package/dist/WalletFundFlowDetail-TXWCZA4K.js +279 -0
- package/dist/WalletFundFlowDetail-TXWCZA4K.js.map +1 -0
- package/dist/WalletGenerateAndFundConfig-364RSEND.js +10 -0
- package/dist/WalletGenerateAndFundConfig-364RSEND.js.map +1 -0
- package/dist/WalletGenerateAndFundFlowDetail-C2LZW3NO.js +54 -0
- package/dist/WalletGenerateAndFundFlowDetail-C2LZW3NO.js.map +1 -0
- package/dist/WalletGenerateConfig-YYLCS65G.js +10 -0
- package/dist/WalletGenerateConfig-YYLCS65G.js.map +1 -0
- package/dist/WalletGenerateFlowDetail-CQCNDGJA.js +53 -0
- package/dist/WalletGenerateFlowDetail-CQCNDGJA.js.map +1 -0
- package/dist/XeroContactCreateConfig-OWG5PA3B.js +102 -0
- package/dist/XeroContactCreateConfig-OWG5PA3B.js.map +1 -0
- package/dist/XeroContactCreateFlowDetail-6MAINCF6.js +127 -0
- package/dist/XeroContactCreateFlowDetail-6MAINCF6.js.map +1 -0
- package/dist/XeroInvoiceCreateConfig-O74RUSZM.js +403 -0
- package/dist/XeroInvoiceCreateConfig-O74RUSZM.js.map +1 -0
- package/dist/XeroInvoiceCreateFlowDetail-UL7KS6CZ.js +631 -0
- package/dist/XeroInvoiceCreateFlowDetail-UL7KS6CZ.js.map +1 -0
- package/dist/XeroInvoiceListConfig-UR3GONBJ.js +113 -0
- package/dist/XeroInvoiceListConfig-UR3GONBJ.js.map +1 -0
- package/dist/XeroInvoiceListFlowDetail-LYHODWH6.js +58 -0
- package/dist/XeroInvoiceListFlowDetail-LYHODWH6.js.map +1 -0
- package/dist/XeroPaymentCreateConfig-RPMAIK6E.js +116 -0
- package/dist/XeroPaymentCreateConfig-RPMAIK6E.js.map +1 -0
- package/dist/XeroPaymentCreateFlowDetail-CF35MVIM.js +573 -0
- package/dist/XeroPaymentCreateFlowDetail-CF35MVIM.js.map +1 -0
- package/dist/action-manifest.json +2091 -393
- package/dist/chunk-2GAYKKTL.js +9 -0
- package/dist/chunk-2GAYKKTL.js.map +1 -0
- package/dist/chunk-2WPEATI7.js +315 -0
- package/dist/chunk-2WPEATI7.js.map +1 -0
- package/dist/chunk-3O42FYT3.js +3333 -0
- package/dist/chunk-3O42FYT3.js.map +1 -0
- package/dist/chunk-3TUYY4HK.js +20 -0
- package/dist/chunk-3TUYY4HK.js.map +1 -0
- package/dist/chunk-3XSLBJYI.js +554 -0
- package/dist/chunk-3XSLBJYI.js.map +1 -0
- package/dist/chunk-4DGCCXD6.js +710 -0
- package/dist/chunk-4DGCCXD6.js.map +1 -0
- package/dist/chunk-4NAFQF6V.js +11 -0
- package/dist/chunk-4NAFQF6V.js.map +1 -0
- package/dist/chunk-4PONO4US.js +799 -0
- package/dist/chunk-4PONO4US.js.map +1 -0
- package/dist/chunk-4TMOIK5M.js +21 -0
- package/dist/chunk-4TMOIK5M.js.map +1 -0
- package/dist/chunk-5IH3VC5I.js +102 -0
- package/dist/chunk-5IH3VC5I.js.map +1 -0
- package/dist/chunk-5NTKDOP6.js +89 -0
- package/dist/chunk-5NTKDOP6.js.map +1 -0
- package/dist/chunk-5O2SFRGU.js +18 -0
- package/dist/chunk-5O2SFRGU.js.map +1 -0
- package/dist/chunk-632JLECF.js +55 -0
- package/dist/chunk-632JLECF.js.map +1 -0
- package/dist/chunk-676HDB7K.js +95 -0
- package/dist/chunk-676HDB7K.js.map +1 -0
- package/dist/chunk-6ESTNTSH.js +223 -0
- package/dist/chunk-6ESTNTSH.js.map +1 -0
- package/dist/chunk-6GKJR52N.js +15 -0
- package/dist/chunk-6GKJR52N.js.map +1 -0
- package/dist/chunk-6L4ZIKYU.js +23 -0
- package/dist/chunk-6L4ZIKYU.js.map +1 -0
- package/dist/chunk-76YX5R4L.js +11 -0
- package/dist/chunk-76YX5R4L.js.map +1 -0
- package/dist/chunk-7J3GFMN3.js +32 -0
- package/dist/chunk-7J3GFMN3.js.map +1 -0
- package/dist/chunk-7LSARC2G.js +102 -0
- package/dist/chunk-7LSARC2G.js.map +1 -0
- package/dist/chunk-7W7UUUIE.js +609 -0
- package/dist/chunk-7W7UUUIE.js.map +1 -0
- package/dist/chunk-7ZLW7H37.js +21 -0
- package/dist/chunk-7ZLW7H37.js.map +1 -0
- package/dist/chunk-AAZHI22G.js +18 -0
- package/dist/chunk-AAZHI22G.js.map +1 -0
- package/dist/chunk-ACNE455I.js +76 -0
- package/dist/chunk-ACNE455I.js.map +1 -0
- package/dist/chunk-BKLSSLPZ.js +27 -0
- package/dist/chunk-BKLSSLPZ.js.map +1 -0
- package/dist/chunk-BZ7UPUTY.js +417 -0
- package/dist/chunk-BZ7UPUTY.js.map +1 -0
- package/dist/chunk-CGFAICUE.js +28 -0
- package/dist/chunk-CGFAICUE.js.map +1 -0
- package/dist/chunk-CMCEWQ3C.js +19 -0
- package/dist/chunk-CMCEWQ3C.js.map +1 -0
- package/dist/chunk-CP4UV436.js +41 -0
- package/dist/chunk-CP4UV436.js.map +1 -0
- package/dist/chunk-D2CQPNQG.js +27508 -0
- package/dist/chunk-D2CQPNQG.js.map +1 -0
- package/dist/chunk-DIQRZP7Z.js +51 -0
- package/dist/chunk-DIQRZP7Z.js.map +1 -0
- package/dist/chunk-EBFFDDAS.js +13 -0
- package/dist/chunk-EBFFDDAS.js.map +1 -0
- package/dist/chunk-EGVS23DR.js +85 -0
- package/dist/chunk-EGVS23DR.js.map +1 -0
- package/dist/chunk-EKBQ7K4N.js +15 -0
- package/dist/chunk-EKBQ7K4N.js.map +1 -0
- package/dist/chunk-EKQCZRAN.js +24 -0
- package/dist/chunk-EKQCZRAN.js.map +1 -0
- package/dist/chunk-EYKZIZ5J.js +48 -0
- package/dist/chunk-EYKZIZ5J.js.map +1 -0
- package/dist/{chunk-NEOPTPDF.js → chunk-F4PTFXZH.js} +11554 -22046
- package/dist/chunk-F4PTFXZH.js.map +1 -0
- package/dist/chunk-FFYZXA75.js +58 -0
- package/dist/chunk-FFYZXA75.js.map +1 -0
- package/dist/chunk-GFGDHPZ2.js +22 -0
- package/dist/chunk-GFGDHPZ2.js.map +1 -0
- package/dist/chunk-GR3CDFID.js +18 -0
- package/dist/chunk-GR3CDFID.js.map +1 -0
- package/dist/chunk-GR4SIU32.js +104 -0
- package/dist/chunk-GR4SIU32.js.map +1 -0
- package/dist/chunk-H5E46IIS.js +18 -0
- package/dist/chunk-H5E46IIS.js.map +1 -0
- package/dist/chunk-HFHVAMZL.js +22 -0
- package/dist/chunk-HFHVAMZL.js.map +1 -0
- package/dist/chunk-HRRI4BLF.js +4456 -0
- package/dist/chunk-HRRI4BLF.js.map +1 -0
- package/dist/chunk-HT6L7A5M.js +12 -0
- package/dist/chunk-HT6L7A5M.js.map +1 -0
- package/dist/chunk-I2FPFISM.js +301 -0
- package/dist/chunk-I2FPFISM.js.map +1 -0
- package/dist/chunk-IADAQJDH.js +28 -0
- package/dist/chunk-IADAQJDH.js.map +1 -0
- package/dist/chunk-IBOBCMQQ.js +99 -0
- package/dist/chunk-IBOBCMQQ.js.map +1 -0
- package/dist/chunk-IFWKRCFF.js +56 -0
- package/dist/chunk-IFWKRCFF.js.map +1 -0
- package/dist/chunk-IH4T7V4C.js +40 -0
- package/dist/chunk-IH4T7V4C.js.map +1 -0
- package/dist/chunk-IIIZZ4E4.js +1679 -0
- package/dist/chunk-IIIZZ4E4.js.map +1 -0
- package/dist/chunk-ILSFU3WD.js +83 -0
- package/dist/chunk-ILSFU3WD.js.map +1 -0
- package/dist/chunk-IX3VBV3L.js +43 -0
- package/dist/chunk-IX3VBV3L.js.map +1 -0
- package/dist/chunk-JBBFSORW.js +846 -0
- package/dist/chunk-JBBFSORW.js.map +1 -0
- package/dist/chunk-JIDTNKKL.js +1183 -0
- package/dist/chunk-JIDTNKKL.js.map +1 -0
- package/dist/chunk-JSPE6NGZ.js +22 -0
- package/dist/chunk-JSPE6NGZ.js.map +1 -0
- package/dist/chunk-JVROGQ7Q.js +150 -0
- package/dist/chunk-JVROGQ7Q.js.map +1 -0
- package/dist/chunk-K4WUMWNJ.js +32 -0
- package/dist/chunk-K4WUMWNJ.js.map +1 -0
- package/dist/chunk-K74XQ4Q5.js +11 -0
- package/dist/chunk-K74XQ4Q5.js.map +1 -0
- package/dist/chunk-KLLMJ4U3.js +22 -0
- package/dist/chunk-KLLMJ4U3.js.map +1 -0
- package/dist/chunk-LTKVCJ2E.js +27 -0
- package/dist/chunk-LTKVCJ2E.js.map +1 -0
- package/dist/chunk-M36DJTFZ.js +34 -0
- package/dist/chunk-M36DJTFZ.js.map +1 -0
- package/dist/chunk-MHM52LCJ.js +154 -0
- package/dist/chunk-MHM52LCJ.js.map +1 -0
- package/dist/chunk-MQCDMHRZ.js +59 -0
- package/dist/chunk-MQCDMHRZ.js.map +1 -0
- package/dist/chunk-N3ORMGAI.js +348 -0
- package/dist/chunk-N3ORMGAI.js.map +1 -0
- package/dist/chunk-NCSGIRRQ.js +28 -0
- package/dist/chunk-NCSGIRRQ.js.map +1 -0
- package/dist/chunk-NIXT2SBH.js +1423 -0
- package/dist/chunk-NIXT2SBH.js.map +1 -0
- package/dist/chunk-NJAII6CO.js +148 -0
- package/dist/chunk-NJAII6CO.js.map +1 -0
- package/dist/chunk-NKE4TL43.js +92 -0
- package/dist/chunk-NKE4TL43.js.map +1 -0
- package/dist/chunk-NZ7AXA7B.js +1 -0
- package/dist/chunk-NZ7AXA7B.js.map +1 -0
- package/dist/chunk-OCAYEGI2.js +26 -0
- package/dist/chunk-OCAYEGI2.js.map +1 -0
- package/dist/chunk-OMLI45ER.js +90 -0
- package/dist/chunk-OMLI45ER.js.map +1 -0
- package/dist/chunk-P7OBLJAG.js +88 -0
- package/dist/chunk-P7OBLJAG.js.map +1 -0
- package/dist/chunk-PAY3CBWL.js +2321 -0
- package/dist/chunk-PAY3CBWL.js.map +1 -0
- package/dist/chunk-PFF6VY35.js +257 -0
- package/dist/chunk-PFF6VY35.js.map +1 -0
- package/dist/chunk-PYNDJDWZ.js +1758 -0
- package/dist/chunk-PYNDJDWZ.js.map +1 -0
- package/dist/chunk-QDQ6UMMN.js +53 -0
- package/dist/chunk-QDQ6UMMN.js.map +1 -0
- package/dist/chunk-QGT3G2XG.js +24 -0
- package/dist/chunk-QGT3G2XG.js.map +1 -0
- package/dist/chunk-QZYCJ2GZ.js +55 -0
- package/dist/chunk-QZYCJ2GZ.js.map +1 -0
- package/dist/chunk-REZ7RFSA.js +124 -0
- package/dist/chunk-REZ7RFSA.js.map +1 -0
- package/dist/chunk-RRYBAE6E.js +2449 -0
- package/dist/chunk-RRYBAE6E.js.map +1 -0
- package/dist/chunk-RWUZOB62.js +34 -0
- package/dist/chunk-RWUZOB62.js.map +1 -0
- package/dist/chunk-SB5UCPZH.js +116 -0
- package/dist/chunk-SB5UCPZH.js.map +1 -0
- package/dist/chunk-SEJJ7CRI.js +99 -0
- package/dist/chunk-SEJJ7CRI.js.map +1 -0
- package/dist/chunk-SHBFGRPV.js +45 -0
- package/dist/chunk-SHBFGRPV.js.map +1 -0
- package/dist/chunk-SOFJ4GC5.js +45 -0
- package/dist/chunk-SOFJ4GC5.js.map +1 -0
- package/dist/chunk-STH2HPZK.js +44 -0
- package/dist/chunk-STH2HPZK.js.map +1 -0
- package/dist/chunk-TK3JNKME.js +28 -0
- package/dist/chunk-TK3JNKME.js.map +1 -0
- package/dist/chunk-TMONHFE3.js +46 -0
- package/dist/chunk-TMONHFE3.js.map +1 -0
- package/dist/chunk-TR4KO3AG.js +44 -0
- package/dist/chunk-TR4KO3AG.js.map +1 -0
- package/dist/chunk-TS2LNBF2.js +68 -0
- package/dist/chunk-TS2LNBF2.js.map +1 -0
- package/dist/chunk-UZUMBFPP.js +26 -0
- package/dist/chunk-UZUMBFPP.js.map +1 -0
- package/dist/chunk-VRZ5LMOW.js +176 -0
- package/dist/chunk-VRZ5LMOW.js.map +1 -0
- package/dist/chunk-WLGGY6Z6.js +75 -0
- package/dist/chunk-WLGGY6Z6.js.map +1 -0
- package/dist/chunk-WO7V6ZNC.js +11 -0
- package/dist/chunk-WO7V6ZNC.js.map +1 -0
- package/dist/chunk-WXSENSRP.js +64 -0
- package/dist/chunk-WXSENSRP.js.map +1 -0
- package/dist/chunk-XEKBZ2SA.js +19 -0
- package/dist/chunk-XEKBZ2SA.js.map +1 -0
- package/dist/chunk-XPBKU3JX.js +61 -0
- package/dist/chunk-XPBKU3JX.js.map +1 -0
- package/dist/chunk-XRYXBXWH.js +24 -0
- package/dist/chunk-XRYXBXWH.js.map +1 -0
- package/dist/chunk-XVA7QRVH.js +22 -0
- package/dist/chunk-XVA7QRVH.js.map +1 -0
- package/dist/chunk-YCTHHBSS.js +37 -0
- package/dist/chunk-YCTHHBSS.js.map +1 -0
- package/dist/chunk-YHPWD5NE.js +70 -0
- package/dist/chunk-YHPWD5NE.js.map +1 -0
- package/dist/chunk-YLNEKJQ5.js +126 -0
- package/dist/chunk-YLNEKJQ5.js.map +1 -0
- package/dist/chunk-YN4CEKCF.js +73 -0
- package/dist/chunk-YN4CEKCF.js.map +1 -0
- package/dist/chunk-YYNMESIF.js +17 -0
- package/dist/chunk-YYNMESIF.js.map +1 -0
- package/dist/chunk-Z6PRMCV6.js +1 -0
- package/dist/chunk-Z6PRMCV6.js.map +1 -0
- package/dist/chunk-ZDNW6VQG.js +11 -0
- package/dist/chunk-ZDNW6VQG.js.map +1 -0
- package/dist/chunk-ZP4D73DO.js +36 -0
- package/dist/chunk-ZP4D73DO.js.map +1 -0
- package/dist/chunk-ZUATADUV.js +26 -0
- package/dist/chunk-ZUATADUV.js.map +1 -0
- package/dist/{connections-1NtNQrsY.d.ts → connections-CEcurtWI.d.ts} +74 -9
- package/dist/core/index.cjs +14041 -6973
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.ts +422 -138
- package/dist/core/index.js +425 -183
- package/dist/core/index.js.map +1 -1
- package/dist/flow-vnext/index.cjs +2842 -0
- package/dist/flow-vnext/index.cjs.map +1 -0
- package/dist/flow-vnext/index.d.ts +3 -0
- package/dist/flow-vnext/index.js +119 -0
- package/dist/flow-vnext/index.js.map +1 -0
- package/dist/{graphql-client-Bn0tN049.d.ts → graphql-client-B2tREsx6.d.ts} +3 -1
- package/dist/index-b9xxXGFs.d.ts +1230 -0
- package/dist/index.d.ts +5 -3
- package/dist/index.js +202 -37
- package/dist/index.js.map +1 -1
- package/dist/legacy-BpgIqaQ5.d.ts +14 -0
- package/dist/mantine/index.d.ts +7 -4
- package/dist/mantine/index.js +84 -30
- package/dist/mantine/index.js.map +1 -1
- package/dist/{runtime-BFwvCQDF.d.ts → types-Dqk5MTfW.d.ts} +6096 -5386
- package/package.json +12 -2
- package/dist/chunk-5JF23UP3.js +0 -59687
- package/dist/chunk-5JF23UP3.js.map +0 -1
- package/dist/chunk-A4CWC4AG.js +0 -374
- package/dist/chunk-A4CWC4AG.js.map +0 -1
- package/dist/chunk-NEOPTPDF.js.map +0 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import {
|
|
2
|
+
RecipientInput
|
|
3
|
+
} from "./chunk-YLNEKJQ5.js";
|
|
4
|
+
import {
|
|
5
|
+
GovernanceProposalShell
|
|
6
|
+
} from "./chunk-5IH3VC5I.js";
|
|
7
|
+
import "./chunk-676HDB7K.js";
|
|
8
|
+
import "./chunk-TR4KO3AG.js";
|
|
9
|
+
import "./chunk-FFYZXA75.js";
|
|
10
|
+
import "./chunk-NZ7AXA7B.js";
|
|
11
|
+
import "./chunk-XVA7QRVH.js";
|
|
12
|
+
import "./chunk-JVROGQ7Q.js";
|
|
13
|
+
import "./chunk-IIIZZ4E4.js";
|
|
14
|
+
import "./chunk-HT6L7A5M.js";
|
|
15
|
+
import "./chunk-NCSGIRRQ.js";
|
|
16
|
+
import "./chunk-ZDNW6VQG.js";
|
|
17
|
+
import "./chunk-6GKJR52N.js";
|
|
18
|
+
import {
|
|
19
|
+
BaseTextInput
|
|
20
|
+
} from "./chunk-WO7V6ZNC.js";
|
|
21
|
+
import "./chunk-4DGCCXD6.js";
|
|
22
|
+
import "./chunk-7W7UUUIE.js";
|
|
23
|
+
import "./chunk-TS2LNBF2.js";
|
|
24
|
+
|
|
25
|
+
// src/mantine/blocks/action/actionTypes/governance/transactionMint/GovernanceTransactionMintFlowDetail.tsx
|
|
26
|
+
import React, { useState } from "react";
|
|
27
|
+
import { Stack, Text } from "@mantine/core";
|
|
28
|
+
import { IconCirclePlus } from "@tabler/icons-react";
|
|
29
|
+
var GovernanceTransactionMintFlowDetail = (props) => {
|
|
30
|
+
const { isDisabled } = props;
|
|
31
|
+
const [recipient, setRecipient] = useState("");
|
|
32
|
+
const [amount, setAmount] = useState("");
|
|
33
|
+
const trimmedAmount = amount.trim();
|
|
34
|
+
const amountValid = /^\d+$/.test(trimmedAmount) && BigInt(trimmedAmount) > 0n;
|
|
35
|
+
const valid = recipient.trim().length > 0 && amountValid;
|
|
36
|
+
return /* @__PURE__ */ React.createElement(
|
|
37
|
+
GovernanceProposalShell,
|
|
38
|
+
{
|
|
39
|
+
flow: props,
|
|
40
|
+
icon: IconCirclePlus,
|
|
41
|
+
headline: "Treasury transaction",
|
|
42
|
+
defaultBlurb: "Mint new governance tokens to an address. Only works for PODs with a governance token (token-staking PODs).",
|
|
43
|
+
successTitle: "Mint proposal created",
|
|
44
|
+
valid,
|
|
45
|
+
buildRuntimeInputs: () => ({ recipient: recipient.trim(), amount: trimmedAmount })
|
|
46
|
+
},
|
|
47
|
+
/* @__PURE__ */ React.createElement(
|
|
48
|
+
BaseTextInput,
|
|
49
|
+
{
|
|
50
|
+
label: "Amount",
|
|
51
|
+
description: "Entered in the governance token's smallest on-chain unit (a whole number, no decimals). For a token with 6 decimal places, 1000000 = 1 token.",
|
|
52
|
+
placeholder: "Raw token amount, e.g. 1000000",
|
|
53
|
+
value: amount,
|
|
54
|
+
onChange: (e) => setAmount(e.currentTarget.value),
|
|
55
|
+
error: trimmedAmount && !amountValid ? "Enter a positive whole number" : void 0,
|
|
56
|
+
disabled: isDisabled,
|
|
57
|
+
size: "sm"
|
|
58
|
+
}
|
|
59
|
+
),
|
|
60
|
+
/* @__PURE__ */ React.createElement(Stack, { gap: 4 }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500 }, "Recipient"), /* @__PURE__ */ React.createElement(RecipientInput, { value: recipient, onChange: setRecipient, isDisabled }))
|
|
61
|
+
);
|
|
62
|
+
};
|
|
63
|
+
export {
|
|
64
|
+
GovernanceTransactionMintFlowDetail
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=GovernanceTransactionMintFlowDetail-Y2WRAODH.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionMint/GovernanceTransactionMintFlowDetail.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Stack, Text } from '@mantine/core';\nimport { IconCirclePlus } from '@tabler/icons-react';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { GovernanceProposalShell } from '../_shared/GovernanceProposalShell';\nimport { RecipientInput } from '../_shared/RecipientInput';\nimport type { GovernanceTransactionMintRuntimeInputs } from './types';\n\nexport const GovernanceTransactionMintFlowDetail: React.FC<ActionTypeFlowProps<GovernanceTransactionMintRuntimeInputs>> = (props) => {\n const { isDisabled } = props;\n\n const [recipient, setRecipient] = useState('');\n const [amount, setAmount] = useState('');\n\n const trimmedAmount = amount.trim();\n // Parity with the core action: the consumer feeds this straight into a\n // cw20 `mint` execute, which needs a positive raw integer string.\n const amountValid = /^\\d+$/.test(trimmedAmount) && BigInt(trimmedAmount) > 0n;\n const valid = recipient.trim().length > 0 && amountValid;\n\n return (\n <GovernanceProposalShell\n flow={props}\n icon={IconCirclePlus}\n headline=\"Treasury transaction\"\n defaultBlurb=\"Mint new governance tokens to an address. Only works for PODs with a governance token (token-staking PODs).\"\n successTitle=\"Mint proposal created\"\n valid={valid}\n buildRuntimeInputs={() => ({ recipient: recipient.trim(), amount: trimmedAmount })}\n >\n <BaseTextInput\n label=\"Amount\"\n description=\"Entered in the governance token's smallest on-chain unit (a whole number, no decimals). For a token with 6 decimal places, 1000000 = 1 token.\"\n placeholder=\"Raw token amount, e.g. 1000000\"\n value={amount}\n onChange={(e) => setAmount(e.currentTarget.value)}\n error={trimmedAmount && !amountValid ? 'Enter a positive whole number' : undefined}\n disabled={isDisabled}\n size=\"sm\"\n />\n <Stack gap={4}>\n <Text size=\"sm\" fw={500}>\n Recipient\n </Text>\n <RecipientInput value={recipient} onChange={setRecipient} isDisabled={isDisabled} />\n </Stack>\n </GovernanceProposalShell>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS,gBAAgB;AAChC,SAAS,OAAO,YAAY;AAC5B,SAAS,sBAAsB;AAOxB,IAAM,sCAA6G,CAAC,UAAU;AACnI,QAAM,EAAE,WAAW,IAAI;AAEvB,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,EAAE;AAC7C,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,EAAE;AAEvC,QAAM,gBAAgB,OAAO,KAAK;AAGlC,QAAM,cAAc,QAAQ,KAAK,aAAa,KAAK,OAAO,aAAa,IAAI;AAC3E,QAAM,QAAQ,UAAU,KAAK,EAAE,SAAS,KAAK;AAE7C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,MAAM;AAAA,MACN,MAAM;AAAA,MACN,UAAS;AAAA,MACT,cAAa;AAAA,MACb,cAAa;AAAA,MACb;AAAA,MACA,oBAAoB,OAAO,EAAE,WAAW,UAAU,KAAK,GAAG,QAAQ,cAAc;AAAA;AAAA,IAEhF;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,aAAY;AAAA,QACZ,aAAY;AAAA,QACZ,OAAO;AAAA,QACP,UAAU,CAAC,MAAM,UAAU,EAAE,cAAc,KAAK;AAAA,QAChD,OAAO,iBAAiB,CAAC,cAAc,kCAAkC;AAAA,QACzE,UAAU;AAAA,QACV,MAAK;AAAA;AAAA,IACP;AAAA,IACA,oCAAC,SAAM,KAAK,KACV,oCAAC,QAAK,MAAK,MAAK,IAAI,OAAK,WAEzB,GACA,oCAAC,kBAAe,OAAO,WAAW,UAAU,cAAc,YAAwB,CACpF;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import {
|
|
2
|
+
GovernanceProposalShell
|
|
3
|
+
} from "./chunk-5IH3VC5I.js";
|
|
4
|
+
import "./chunk-676HDB7K.js";
|
|
5
|
+
import "./chunk-TR4KO3AG.js";
|
|
6
|
+
import "./chunk-FFYZXA75.js";
|
|
7
|
+
import "./chunk-NZ7AXA7B.js";
|
|
8
|
+
import "./chunk-JVROGQ7Q.js";
|
|
9
|
+
import "./chunk-IIIZZ4E4.js";
|
|
10
|
+
import "./chunk-HT6L7A5M.js";
|
|
11
|
+
import "./chunk-NCSGIRRQ.js";
|
|
12
|
+
import "./chunk-ZDNW6VQG.js";
|
|
13
|
+
import "./chunk-6GKJR52N.js";
|
|
14
|
+
import {
|
|
15
|
+
BaseTextInput
|
|
16
|
+
} from "./chunk-WO7V6ZNC.js";
|
|
17
|
+
import "./chunk-4DGCCXD6.js";
|
|
18
|
+
import "./chunk-7W7UUUIE.js";
|
|
19
|
+
import "./chunk-TS2LNBF2.js";
|
|
20
|
+
|
|
21
|
+
// src/mantine/blocks/action/actionTypes/governance/transactionPerformTokenSwap/GovernanceTransactionPerformTokenSwapFlowDetail.tsx
|
|
22
|
+
import React, { useState } from "react";
|
|
23
|
+
import { NumberInput, SegmentedControl } from "@mantine/core";
|
|
24
|
+
import { IconArrowsExchange } from "@tabler/icons-react";
|
|
25
|
+
var PARTY_TYPE_DATA = [
|
|
26
|
+
{ value: "native", label: "IXO" },
|
|
27
|
+
{ value: "cw20", label: "cw20 token" }
|
|
28
|
+
];
|
|
29
|
+
var NATIVE_DENOM = "uixo";
|
|
30
|
+
var NATIVE_EXPONENT = 6;
|
|
31
|
+
var GovernanceTransactionPerformTokenSwapFlowDetail = (props) => {
|
|
32
|
+
const { isDisabled } = props;
|
|
33
|
+
const [contractAddress, setContractAddress] = useState("");
|
|
34
|
+
const [partyType, setPartyType] = useState("native");
|
|
35
|
+
const [cw20Address, setCw20Address] = useState("");
|
|
36
|
+
const [cw20Amount, setCw20Amount] = useState("");
|
|
37
|
+
const [nativeAmount, setNativeAmount] = useState("");
|
|
38
|
+
const nativeAmt = typeof nativeAmount === "number" ? nativeAmount : 0;
|
|
39
|
+
const trimmedCw20Amount = cw20Amount.trim();
|
|
40
|
+
const cw20AmountValid = /^\d+$/.test(trimmedCw20Amount) && BigInt(trimmedCw20Amount) > 0n;
|
|
41
|
+
const partyValid = partyType === "native" ? nativeAmt > 0 : cw20Address.trim().length > 0 && cw20AmountValid;
|
|
42
|
+
const valid = contractAddress.trim().length > 0 && partyValid;
|
|
43
|
+
return /* @__PURE__ */ React.createElement(
|
|
44
|
+
GovernanceProposalShell,
|
|
45
|
+
{
|
|
46
|
+
flow: props,
|
|
47
|
+
icon: IconArrowsExchange,
|
|
48
|
+
headline: "Treasury transaction",
|
|
49
|
+
defaultBlurb: "Fund the POD\u2019s side of a token swap contract from the treasury.",
|
|
50
|
+
successTitle: "Fund-token-swap proposal created",
|
|
51
|
+
valid,
|
|
52
|
+
buildRuntimeInputs: () => ({
|
|
53
|
+
tokenSwapContractAddress: contractAddress.trim(),
|
|
54
|
+
selfPartyType: partyType,
|
|
55
|
+
// Native side is fixed to IXO: the user enters whole IXO and it is
|
|
56
|
+
// converted to base units (uixo) here. cw20 amounts are already raw.
|
|
57
|
+
selfPartyDenomOrAddress: partyType === "native" ? NATIVE_DENOM : cw20Address.trim(),
|
|
58
|
+
selfPartyAmount: partyType === "native" ? BigInt(Math.round(nativeAmt * 10 ** NATIVE_EXPONENT)).toString() : trimmedCw20Amount
|
|
59
|
+
})
|
|
60
|
+
},
|
|
61
|
+
/* @__PURE__ */ React.createElement(
|
|
62
|
+
BaseTextInput,
|
|
63
|
+
{
|
|
64
|
+
label: "Swap contract",
|
|
65
|
+
description: "The token swap smart contract both parties agreed to use (an ixo1\u2026 address, usually shared by the counterparty).",
|
|
66
|
+
placeholder: "ixo1\u2026 token swap contract address",
|
|
67
|
+
value: contractAddress,
|
|
68
|
+
onChange: (e) => setContractAddress(e.currentTarget.value),
|
|
69
|
+
disabled: isDisabled,
|
|
70
|
+
size: "sm"
|
|
71
|
+
}
|
|
72
|
+
),
|
|
73
|
+
/* @__PURE__ */ React.createElement(
|
|
74
|
+
SegmentedControl,
|
|
75
|
+
{
|
|
76
|
+
color: "gray",
|
|
77
|
+
value: partyType,
|
|
78
|
+
onChange: (v) => setPartyType(v),
|
|
79
|
+
data: PARTY_TYPE_DATA,
|
|
80
|
+
disabled: isDisabled,
|
|
81
|
+
styles: {
|
|
82
|
+
root: { backgroundColor: "var(--mantine-color-default) !important" },
|
|
83
|
+
indicator: { backgroundColor: "var(--mantine-color-default-hover) !important" },
|
|
84
|
+
label: {
|
|
85
|
+
color: "var(--mantine-color-dimmed) !important",
|
|
86
|
+
"&[data-active]": { color: "var(--mantine-color-text) !important" }
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
),
|
|
91
|
+
partyType === "native" ? /* @__PURE__ */ React.createElement(
|
|
92
|
+
NumberInput,
|
|
93
|
+
{
|
|
94
|
+
label: "Amount (IXO)",
|
|
95
|
+
description: "Enter whole IXO \u2014 it is converted to on-chain units automatically.",
|
|
96
|
+
placeholder: "Amount of IXO the POD provides",
|
|
97
|
+
value: nativeAmount,
|
|
98
|
+
onChange: (v) => setNativeAmount(typeof v === "number" ? v : ""),
|
|
99
|
+
min: 0,
|
|
100
|
+
hideControls: true,
|
|
101
|
+
disabled: isDisabled,
|
|
102
|
+
size: "sm"
|
|
103
|
+
}
|
|
104
|
+
) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
105
|
+
BaseTextInput,
|
|
106
|
+
{
|
|
107
|
+
label: "Token contract",
|
|
108
|
+
description: "The address of the token's cw20 smart contract (starts with ixo1\u2026).",
|
|
109
|
+
placeholder: "ixo1\u2026 cw20 token contract address",
|
|
110
|
+
value: cw20Address,
|
|
111
|
+
onChange: (e) => setCw20Address(e.currentTarget.value),
|
|
112
|
+
disabled: isDisabled,
|
|
113
|
+
size: "sm"
|
|
114
|
+
}
|
|
115
|
+
), /* @__PURE__ */ React.createElement(
|
|
116
|
+
BaseTextInput,
|
|
117
|
+
{
|
|
118
|
+
label: "Amount",
|
|
119
|
+
description: "Entered in the token's smallest on-chain unit (a whole number, no decimals). For a token with 6 decimal places, 1000000 = 1 token.",
|
|
120
|
+
placeholder: "Raw token amount, e.g. 1000000",
|
|
121
|
+
value: cw20Amount,
|
|
122
|
+
onChange: (e) => setCw20Amount(e.currentTarget.value),
|
|
123
|
+
error: trimmedCw20Amount && !cw20AmountValid ? "Enter a positive whole number" : void 0,
|
|
124
|
+
disabled: isDisabled,
|
|
125
|
+
size: "sm"
|
|
126
|
+
}
|
|
127
|
+
))
|
|
128
|
+
);
|
|
129
|
+
};
|
|
130
|
+
export {
|
|
131
|
+
GovernanceTransactionPerformTokenSwapFlowDetail
|
|
132
|
+
};
|
|
133
|
+
//# sourceMappingURL=GovernanceTransactionPerformTokenSwapFlowDetail-GEK6PMMI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionPerformTokenSwap/GovernanceTransactionPerformTokenSwapFlowDetail.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { NumberInput, SegmentedControl } from '@mantine/core';\nimport { IconArrowsExchange } from '@tabler/icons-react';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { GovernanceProposalShell } from '../_shared/GovernanceProposalShell';\nimport type { GovernanceSwapPartyType, GovernanceTransactionPerformTokenSwapRuntimeInputs } from './types';\n\nconst PARTY_TYPE_DATA = [\n { value: 'native', label: 'IXO' },\n { value: 'cw20', label: 'cw20 token' },\n];\n\n/** The only native denom the flow panel offers; 1 IXO = 1,000,000 uixo. */\nconst NATIVE_DENOM = 'uixo';\nconst NATIVE_EXPONENT = 6;\n\nexport const GovernanceTransactionPerformTokenSwapFlowDetail: React.FC<ActionTypeFlowProps<GovernanceTransactionPerformTokenSwapRuntimeInputs>> = (props) => {\n const { isDisabled } = props;\n\n const [contractAddress, setContractAddress] = useState('');\n const [partyType, setPartyType] = useState<GovernanceSwapPartyType>('native');\n const [cw20Address, setCw20Address] = useState('');\n const [cw20Amount, setCw20Amount] = useState('');\n const [nativeAmount, setNativeAmount] = useState<number | ''>('');\n\n const nativeAmt = typeof nativeAmount === 'number' ? nativeAmount : 0;\n const trimmedCw20Amount = cw20Amount.trim();\n // Parity with the core action's `/^\\d+$/ && BigInt > 0` check.\n const cw20AmountValid = /^\\d+$/.test(trimmedCw20Amount) && BigInt(trimmedCw20Amount) > 0n;\n\n const partyValid = partyType === 'native' ? nativeAmt > 0 : cw20Address.trim().length > 0 && cw20AmountValid;\n const valid = contractAddress.trim().length > 0 && partyValid;\n\n return (\n <GovernanceProposalShell\n flow={props}\n icon={IconArrowsExchange}\n headline=\"Treasury transaction\"\n defaultBlurb=\"Fund the POD’s side of a token swap contract from the treasury.\"\n successTitle=\"Fund-token-swap proposal created\"\n valid={valid}\n buildRuntimeInputs={() => ({\n tokenSwapContractAddress: contractAddress.trim(),\n selfPartyType: partyType,\n // Native side is fixed to IXO: the user enters whole IXO and it is\n // converted to base units (uixo) here. cw20 amounts are already raw.\n selfPartyDenomOrAddress: partyType === 'native' ? NATIVE_DENOM : cw20Address.trim(),\n selfPartyAmount: partyType === 'native' ? BigInt(Math.round(nativeAmt * 10 ** NATIVE_EXPONENT)).toString() : trimmedCw20Amount,\n })}\n >\n <BaseTextInput\n label=\"Swap contract\"\n description=\"The token swap smart contract both parties agreed to use (an ixo1… address, usually shared by the counterparty).\"\n placeholder=\"ixo1… token swap contract address\"\n value={contractAddress}\n onChange={(e) => setContractAddress(e.currentTarget.value)}\n disabled={isDisabled}\n size=\"sm\"\n />\n <SegmentedControl\n color=\"gray\"\n value={partyType}\n onChange={(v) => setPartyType(v as GovernanceSwapPartyType)}\n data={PARTY_TYPE_DATA}\n disabled={isDisabled}\n styles={{\n root: { backgroundColor: 'var(--mantine-color-default) !important' },\n indicator: { backgroundColor: 'var(--mantine-color-default-hover) !important' },\n label: {\n color: 'var(--mantine-color-dimmed) !important',\n '&[data-active]': { color: 'var(--mantine-color-text) !important' },\n },\n }}\n />\n {partyType === 'native' ? (\n <NumberInput\n label=\"Amount (IXO)\"\n description=\"Enter whole IXO — it is converted to on-chain units automatically.\"\n placeholder=\"Amount of IXO the POD provides\"\n value={nativeAmount}\n onChange={(v) => setNativeAmount(typeof v === 'number' ? v : '')}\n min={0}\n hideControls\n disabled={isDisabled}\n size=\"sm\"\n />\n ) : (\n <>\n <BaseTextInput\n label=\"Token contract\"\n description=\"The address of the token's cw20 smart contract (starts with ixo1…).\"\n placeholder=\"ixo1… cw20 token contract address\"\n value={cw20Address}\n onChange={(e) => setCw20Address(e.currentTarget.value)}\n disabled={isDisabled}\n size=\"sm\"\n />\n <BaseTextInput\n label=\"Amount\"\n description=\"Entered in the token's smallest on-chain unit (a whole number, no decimals). For a token with 6 decimal places, 1000000 = 1 token.\"\n placeholder=\"Raw token amount, e.g. 1000000\"\n value={cw20Amount}\n onChange={(e) => setCw20Amount(e.currentTarget.value)}\n error={trimmedCw20Amount && !cw20AmountValid ? 'Enter a positive whole number' : undefined}\n disabled={isDisabled}\n size=\"sm\"\n />\n </>\n )}\n </GovernanceProposalShell>\n );\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseGovernanceTransactionSendFundsInputs,
|
|
3
|
+
serializeGovernanceTransactionSendFundsInputs
|
|
4
|
+
} from "./chunk-XEKBZ2SA.js";
|
|
5
|
+
import {
|
|
6
|
+
DaoGroupField
|
|
7
|
+
} from "./chunk-EGVS23DR.js";
|
|
8
|
+
import "./chunk-4NAFQF6V.js";
|
|
9
|
+
import "./chunk-WO7V6ZNC.js";
|
|
10
|
+
import "./chunk-4DGCCXD6.js";
|
|
11
|
+
import "./chunk-7W7UUUIE.js";
|
|
12
|
+
import "./chunk-TS2LNBF2.js";
|
|
13
|
+
|
|
14
|
+
// src/mantine/blocks/action/actionTypes/governance/transactionSendFunds/GovernanceTransactionSendFundsConfig.tsx
|
|
15
|
+
import React, { useCallback, useEffect, useState } from "react";
|
|
16
|
+
import { Alert, Stack, Text } from "@mantine/core";
|
|
17
|
+
var GovernanceTransactionSendFundsConfig = ({ inputs, onInputsChange }) => {
|
|
18
|
+
const [local, setLocal] = useState(() => parseGovernanceTransactionSendFundsInputs(inputs));
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
setLocal(parseGovernanceTransactionSendFundsInputs(inputs));
|
|
21
|
+
}, [inputs]);
|
|
22
|
+
const update = useCallback(
|
|
23
|
+
(patch) => {
|
|
24
|
+
const updated = { ...local, ...patch };
|
|
25
|
+
setLocal(updated);
|
|
26
|
+
onInputsChange(serializeGovernanceTransactionSendFundsInputs(updated));
|
|
27
|
+
},
|
|
28
|
+
[local, onInputsChange]
|
|
29
|
+
);
|
|
30
|
+
return /* @__PURE__ */ React.createElement(Stack, { gap: "lg" }, /* @__PURE__ */ React.createElement(
|
|
31
|
+
DaoGroupField,
|
|
32
|
+
{
|
|
33
|
+
coreAddress: local.coreAddress,
|
|
34
|
+
onChange: (coreAddress) => update({ coreAddress }),
|
|
35
|
+
description: "The POD whose treasury the funds are sent from. Leave blank to resolve it from the current entity when the flow runs."
|
|
36
|
+
}
|
|
37
|
+
), /* @__PURE__ */ React.createElement(Alert, { color: "blue", variant: "light" }, /* @__PURE__ */ React.createElement(Text, { size: "xs" }, "More template options (default recipient, allowed denoms, amount caps) are coming. For now the transfer is composed in the flow panel when this step runs.")));
|
|
38
|
+
};
|
|
39
|
+
export {
|
|
40
|
+
GovernanceTransactionSendFundsConfig
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=GovernanceTransactionSendFundsConfig-VBKMLSF3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionSendFunds/GovernanceTransactionSendFundsConfig.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { Alert, Stack, Text } from '@mantine/core';\nimport type { ActionTypeConfigProps } from '../../../actionTypeUI';\nimport { parseGovernanceTransactionSendFundsInputs, serializeGovernanceTransactionSendFundsInputs, type GovernanceTransactionSendFundsInputs } from './types';\nimport { DaoGroupField } from '../_shared/DaoGroupField';\n\n/**\n * Template-mode config for the governance transaction.send-funds action.\n *\n * Captures only the DAO core address for now (empty → resolve from the current\n * entity at run time).\n *\n * TODO(governance): default recipient, allowed denoms, amount caps, and\n * title/description templating.\n */\nexport const GovernanceTransactionSendFundsConfig: React.FC<ActionTypeConfigProps> = ({ inputs, onInputsChange }) => {\n const [local, setLocal] = useState<GovernanceTransactionSendFundsInputs>(() => parseGovernanceTransactionSendFundsInputs(inputs));\n\n useEffect(() => {\n setLocal(parseGovernanceTransactionSendFundsInputs(inputs));\n }, [inputs]);\n\n const update = useCallback(\n (patch: Partial<GovernanceTransactionSendFundsInputs>) => {\n const updated = { ...local, ...patch };\n setLocal(updated);\n onInputsChange(serializeGovernanceTransactionSendFundsInputs(updated));\n },\n [local, onInputsChange]\n );\n\n return (\n <Stack gap=\"lg\">\n <DaoGroupField\n coreAddress={local.coreAddress}\n onChange={(coreAddress) => update({ coreAddress })}\n description=\"The POD whose treasury the funds are sent from. Leave blank to resolve it from the current entity when the flow runs.\"\n />\n\n <Alert color=\"blue\" variant=\"light\">\n <Text size=\"xs\">\n More template options (default recipient, allowed denoms, amount caps) are coming. For now the transfer is composed in the flow panel when this step runs.\n </Text>\n </Alert>\n </Stack>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;AAAA,OAAO,SAAS,aAAa,WAAW,gBAAgB;AACxD,SAAS,OAAO,OAAO,YAAY;AAc5B,IAAM,uCAAwE,CAAC,EAAE,QAAQ,eAAe,MAAM;AACnH,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA+C,MAAM,0CAA0C,MAAM,CAAC;AAEhI,YAAU,MAAM;AACd,aAAS,0CAA0C,MAAM,CAAC;AAAA,EAC5D,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,SAAS;AAAA,IACb,CAAC,UAAyD;AACxD,YAAM,UAAU,EAAE,GAAG,OAAO,GAAG,MAAM;AACrC,eAAS,OAAO;AAChB,qBAAe,8CAA8C,OAAO,CAAC;AAAA,IACvE;AAAA,IACA,CAAC,OAAO,cAAc;AAAA,EACxB;AAEA,SACE,oCAAC,SAAM,KAAI,QACT;AAAA,IAAC;AAAA;AAAA,MACC,aAAa,MAAM;AAAA,MACnB,UAAU,CAAC,gBAAgB,OAAO,EAAE,YAAY,CAAC;AAAA,MACjD,aAAY;AAAA;AAAA,EACd,GAEA,oCAAC,SAAM,OAAM,QAAO,SAAQ,WAC1B,oCAAC,QAAK,MAAK,QAAK,4JAEhB,CACF,CACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseGovernanceTransactionSendFundsInputs
|
|
3
|
+
} from "./chunk-XEKBZ2SA.js";
|
|
4
|
+
import {
|
|
5
|
+
RecipientInput
|
|
6
|
+
} from "./chunk-YLNEKJQ5.js";
|
|
7
|
+
import {
|
|
8
|
+
useGovernanceCoreAddress
|
|
9
|
+
} from "./chunk-676HDB7K.js";
|
|
10
|
+
import {
|
|
11
|
+
ProposalMetadataFields,
|
|
12
|
+
proposalMetadataValid
|
|
13
|
+
} from "./chunk-TR4KO3AG.js";
|
|
14
|
+
import {
|
|
15
|
+
BaseSelect
|
|
16
|
+
} from "./chunk-4NAFQF6V.js";
|
|
17
|
+
import "./chunk-FFYZXA75.js";
|
|
18
|
+
import "./chunk-NZ7AXA7B.js";
|
|
19
|
+
import "./chunk-XVA7QRVH.js";
|
|
20
|
+
import "./chunk-JVROGQ7Q.js";
|
|
21
|
+
import "./chunk-IIIZZ4E4.js";
|
|
22
|
+
import "./chunk-HT6L7A5M.js";
|
|
23
|
+
import "./chunk-NCSGIRRQ.js";
|
|
24
|
+
import "./chunk-ZDNW6VQG.js";
|
|
25
|
+
import {
|
|
26
|
+
DismissibleAlert
|
|
27
|
+
} from "./chunk-IFWKRCFF.js";
|
|
28
|
+
import {
|
|
29
|
+
actionAlertStyles
|
|
30
|
+
} from "./chunk-6GKJR52N.js";
|
|
31
|
+
import "./chunk-WO7V6ZNC.js";
|
|
32
|
+
import {
|
|
33
|
+
useBlocknoteHandlers
|
|
34
|
+
} from "./chunk-4DGCCXD6.js";
|
|
35
|
+
import "./chunk-7W7UUUIE.js";
|
|
36
|
+
import "./chunk-TS2LNBF2.js";
|
|
37
|
+
|
|
38
|
+
// src/mantine/blocks/action/actionTypes/governance/transactionSendFunds/GovernanceTransactionSendFundsFlowDetail.tsx
|
|
39
|
+
import React, { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
40
|
+
import { Button, Card, Group, Loader, NumberInput, Stack, Text } from "@mantine/core";
|
|
41
|
+
import { IconAlertCircle, IconCoin, IconShieldCheck } from "@tabler/icons-react";
|
|
42
|
+
var SUPPORTED_DENOMS = {
|
|
43
|
+
uixo: "IXO"
|
|
44
|
+
};
|
|
45
|
+
var GovernanceTransactionSendFundsFlowDetail = ({
|
|
46
|
+
inputs,
|
|
47
|
+
editor,
|
|
48
|
+
block,
|
|
49
|
+
runtime,
|
|
50
|
+
isDisabled,
|
|
51
|
+
executeAction
|
|
52
|
+
}) => {
|
|
53
|
+
const handlers = useBlocknoteHandlers();
|
|
54
|
+
const handlersRef = useRef(handlers);
|
|
55
|
+
handlersRef.current = handlers;
|
|
56
|
+
const parsed = useMemo(() => parseGovernanceTransactionSendFundsInputs(inputs), [inputs]);
|
|
57
|
+
const {
|
|
58
|
+
coreAddress,
|
|
59
|
+
resolving: resolvingCore,
|
|
60
|
+
resolutionError
|
|
61
|
+
} = useGovernanceCoreAddress({
|
|
62
|
+
inputCoreAddress: parsed.coreAddress,
|
|
63
|
+
inputs,
|
|
64
|
+
editor,
|
|
65
|
+
block
|
|
66
|
+
});
|
|
67
|
+
const proposalId = String(runtime.output?.proposalId || "");
|
|
68
|
+
const isCreated = !!proposalId;
|
|
69
|
+
const [treasury, setTreasury] = useState([]);
|
|
70
|
+
const [loadingTreasury, setLoadingTreasury] = useState(false);
|
|
71
|
+
const [denom, setDenom] = useState(null);
|
|
72
|
+
const [amount, setAmount] = useState("");
|
|
73
|
+
const [recipient, setRecipient] = useState("");
|
|
74
|
+
const [title, setTitle] = useState("");
|
|
75
|
+
const [description, setDescription] = useState("");
|
|
76
|
+
const [error, setError] = useState(null);
|
|
77
|
+
const [submitting, setSubmitting] = useState(false);
|
|
78
|
+
useEffect(() => {
|
|
79
|
+
if (!coreAddress || isCreated) return;
|
|
80
|
+
let cancelled = false;
|
|
81
|
+
const load = async () => {
|
|
82
|
+
const h = handlersRef.current;
|
|
83
|
+
if (!h?.getBalances) return;
|
|
84
|
+
setLoadingTreasury(true);
|
|
85
|
+
try {
|
|
86
|
+
const res = await h.getBalances(coreAddress);
|
|
87
|
+
if (cancelled) return;
|
|
88
|
+
const coins = (res?.data || []).filter((b) => b.isCoin && b.amount > 0);
|
|
89
|
+
setTreasury(coins);
|
|
90
|
+
setDenom((prev) => prev ?? coins.find((c) => SUPPORTED_DENOMS[c.denom])?.denom ?? null);
|
|
91
|
+
} catch (err) {
|
|
92
|
+
if (!cancelled) setError(err instanceof Error ? err.message : "Failed to load treasury");
|
|
93
|
+
} finally {
|
|
94
|
+
if (!cancelled) setLoadingTreasury(false);
|
|
95
|
+
}
|
|
96
|
+
};
|
|
97
|
+
void load();
|
|
98
|
+
return () => {
|
|
99
|
+
cancelled = true;
|
|
100
|
+
};
|
|
101
|
+
}, [coreAddress, isCreated]);
|
|
102
|
+
const selected = useMemo(() => treasury.find((b) => b.denom === denom), [treasury, denom]);
|
|
103
|
+
const balance = selected?.amount || 0;
|
|
104
|
+
const amt = typeof amount === "number" ? amount : 0;
|
|
105
|
+
const overdraft = amt > balance;
|
|
106
|
+
const denomSupported = !!denom && !!SUPPORTED_DENOMS[denom];
|
|
107
|
+
const valid = denomSupported && amt > 0 && !overdraft && recipient.trim().length > 0 && proposalMetadataValid(title, description);
|
|
108
|
+
const handleSign = useCallback(async () => {
|
|
109
|
+
if (!executeAction || !valid || submitting) return;
|
|
110
|
+
if (!coreAddress) {
|
|
111
|
+
setError("DAO core address is required");
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
114
|
+
setSubmitting(true);
|
|
115
|
+
setError(null);
|
|
116
|
+
try {
|
|
117
|
+
const outcome = await executeAction({
|
|
118
|
+
runtimeInputs: { coreAddress, recipient: recipient.trim(), denom, amount: amt, title: title.trim(), description: description.trim() }
|
|
119
|
+
});
|
|
120
|
+
if (!outcome.success) throw new Error(outcome.error || "Proposal creation failed");
|
|
121
|
+
} catch (err) {
|
|
122
|
+
setError(err instanceof Error ? err.message : "Failed to create proposal");
|
|
123
|
+
} finally {
|
|
124
|
+
setSubmitting(false);
|
|
125
|
+
}
|
|
126
|
+
}, [executeAction, valid, submitting, coreAddress, recipient, denom, amt, title, description]);
|
|
127
|
+
if (!coreAddress) {
|
|
128
|
+
if (resolvingCore) {
|
|
129
|
+
return /* @__PURE__ */ React.createElement(Group, { gap: "xs", c: "dimmed" }, /* @__PURE__ */ React.createElement(Loader, { size: "xs" }), /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "Detecting this domain's POD\u2026"));
|
|
130
|
+
}
|
|
131
|
+
return /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "yellow", styles: actionAlertStyles }, resolutionError ? `${resolutionError} Select a POD in template mode before running this action.` : "Configure the DAO core address in template mode before running this action.");
|
|
132
|
+
}
|
|
133
|
+
if (isCreated) {
|
|
134
|
+
return /* @__PURE__ */ React.createElement(Card, { padding: "md", radius: "md", withBorder: true, style: { borderColor: "var(--mantine-color-green-6)" } }, /* @__PURE__ */ React.createElement(Text, { fw: 500, size: "sm", c: "green" }, "Send-funds proposal created"), /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, "Proposal #", proposalId, " is now open for the POD to vote on."));
|
|
135
|
+
}
|
|
136
|
+
return /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(Stack, { gap: "sm" }, /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, block?.props?.description || "Send tokens from the POD treasury to an address."), /* @__PURE__ */ React.createElement(Group, { gap: 6, c: "dimmed" }, /* @__PURE__ */ React.createElement(IconCoin, { size: 16, color: "var(--mantine-color-dimmed)" }), /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 600, c: "dimmed" }, "Treasury transaction"))), treasury.length === 0 && !loadingTreasury ? /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, "This POD treasury has no spendable funds.") : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
137
|
+
BaseSelect,
|
|
138
|
+
{
|
|
139
|
+
label: "Token",
|
|
140
|
+
placeholder: loadingTreasury ? "Loading treasury\u2026" : "Select a token",
|
|
141
|
+
value: denom,
|
|
142
|
+
onChange: setDenom,
|
|
143
|
+
allowDeselect: false,
|
|
144
|
+
disabled: isDisabled || loadingTreasury,
|
|
145
|
+
rightSection: loadingTreasury ? /* @__PURE__ */ React.createElement(Loader, { size: "xs" }) : void 0,
|
|
146
|
+
data: treasury.map((b) => ({
|
|
147
|
+
value: b.denom,
|
|
148
|
+
label: `${b.tokenName || b.denom} \xB7 ${b.amount.toLocaleString()}${SUPPORTED_DENOMS[b.denom] ? "" : " \u2014 not supported yet"}`,
|
|
149
|
+
disabled: !SUPPORTED_DENOMS[b.denom]
|
|
150
|
+
})),
|
|
151
|
+
searchable: true
|
|
152
|
+
}
|
|
153
|
+
), /* @__PURE__ */ React.createElement(
|
|
154
|
+
NumberInput,
|
|
155
|
+
{
|
|
156
|
+
label: `Amount${selected?.tokenName ? ` (${selected.tokenName})` : ""}`,
|
|
157
|
+
description: denomSupported ? `Enter whole ${SUPPORTED_DENOMS[denom]} \u2014 it is converted to on-chain units automatically.` : void 0,
|
|
158
|
+
value: amount,
|
|
159
|
+
onChange: (v) => setAmount(typeof v === "number" ? v : ""),
|
|
160
|
+
min: 0,
|
|
161
|
+
max: balance,
|
|
162
|
+
hideControls: true,
|
|
163
|
+
placeholder: `Up to ${balance.toLocaleString()}`,
|
|
164
|
+
error: overdraft ? "Exceeds treasury balance" : void 0,
|
|
165
|
+
disabled: isDisabled,
|
|
166
|
+
size: "sm"
|
|
167
|
+
}
|
|
168
|
+
), /* @__PURE__ */ React.createElement(Stack, { gap: 4 }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500 }, "Recipient"), /* @__PURE__ */ React.createElement(RecipientInput, { value: recipient, onChange: setRecipient, isDisabled })), /* @__PURE__ */ React.createElement(ProposalMetadataFields, { title, description, onTitleChange: setTitle, onDescriptionChange: setDescription, isDisabled })), error && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconAlertCircle, { size: 16 }), color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, error)), runtime.error?.message && !error && /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, runtime.error.message)), /* @__PURE__ */ React.createElement(
|
|
169
|
+
Button,
|
|
170
|
+
{
|
|
171
|
+
leftSection: submitting ? /* @__PURE__ */ React.createElement(Loader, { size: 14 }) : /* @__PURE__ */ React.createElement(IconShieldCheck, { size: 14 }),
|
|
172
|
+
onClick: handleSign,
|
|
173
|
+
disabled: isDisabled || !valid || submitting,
|
|
174
|
+
loading: submitting
|
|
175
|
+
},
|
|
176
|
+
"Sign & submit"
|
|
177
|
+
));
|
|
178
|
+
};
|
|
179
|
+
export {
|
|
180
|
+
GovernanceTransactionSendFundsFlowDetail
|
|
181
|
+
};
|
|
182
|
+
//# sourceMappingURL=GovernanceTransactionSendFundsFlowDetail-5TZB64VL.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionSendFunds/GovernanceTransactionSendFundsFlowDetail.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\nimport { Button, Card, Group, Loader, NumberInput, Stack, Text } from '@mantine/core';\nimport { DismissibleAlert as Alert } from '@/mantine/components/Base/DismissibleAlert';\nimport { IconAlertCircle, IconCoin, IconShieldCheck } from '@tabler/icons-react';\nimport { useBlocknoteHandlers } from '@/mantine/context/BlocknoteContext';\nimport type { Balance } from '@/mantine/context/BlocknoteContext';\nimport BaseSelect from '@/mantine/components/Base/BaseSelect';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { actionAlertStyles } from '../../../alertStyles';\nimport { RecipientInput } from '../_shared/RecipientInput';\nimport { useGovernanceCoreAddress } from '../_shared/useGovernanceCoreAddress';\nimport { ProposalMetadataFields, proposalMetadataValid } from '../_shared/ProposalMetadataFields';\nimport { parseGovernanceTransactionSendFundsInputs, type GovernanceTransactionSendFundsRuntimeInputs } from './types';\n\n/**\n * Denoms the core action can convert from display units to base units.\n * Keep in sync with `KNOWN_DENOMS` in\n * `src/core/lib/actionRegistry/actions/governance/transactionSendFunds.ts` —\n * the core rejects anything else, so the UI must not let it be signed.\n */\nconst SUPPORTED_DENOMS: Record<string, string> = {\n uixo: 'IXO',\n};\n\nexport const GovernanceTransactionSendFundsFlowDetail: React.FC<ActionTypeFlowProps<GovernanceTransactionSendFundsRuntimeInputs>> = ({\n inputs,\n editor,\n block,\n runtime,\n isDisabled,\n executeAction,\n}) => {\n const handlers = useBlocknoteHandlers();\n const handlersRef = useRef(handlers);\n handlersRef.current = handlers;\n\n const parsed = useMemo(() => parseGovernanceTransactionSendFundsInputs(inputs), [inputs]);\n // Config value wins; when blank, auto-detect the current entity's governing\n // group (flow mode only) and persist it into this flow's saved inputs.\n const {\n coreAddress,\n resolving: resolvingCore,\n resolutionError,\n } = useGovernanceCoreAddress({\n inputCoreAddress: parsed.coreAddress,\n inputs,\n editor,\n block,\n });\n\n // Runtime is the source of truth for \"did this proposal get created?\".\n const proposalId = String(runtime.output?.proposalId || '');\n const isCreated = !!proposalId;\n\n const [treasury, setTreasury] = useState<Balance[]>([]);\n const [loadingTreasury, setLoadingTreasury] = useState(false);\n const [denom, setDenom] = useState<string | null>(null);\n const [amount, setAmount] = useState<number | ''>('');\n const [recipient, setRecipient] = useState('');\n const [title, setTitle] = useState('');\n const [description, setDescription] = useState('');\n const [error, setError] = useState<string | null>(null);\n const [submitting, setSubmitting] = useState(false);\n\n // Load the POD treasury balances once we have a core address.\n useEffect(() => {\n if (!coreAddress || isCreated) return;\n let cancelled = false;\n const load = async () => {\n const h = handlersRef.current;\n if (!h?.getBalances) return;\n setLoadingTreasury(true);\n try {\n const res = await h.getBalances(coreAddress);\n if (cancelled) return;\n const coins = (res?.data || []).filter((b) => b.isCoin && b.amount > 0);\n setTreasury(coins);\n // Auto-pick the first denom the core action can actually send.\n setDenom((prev) => prev ?? coins.find((c) => SUPPORTED_DENOMS[c.denom])?.denom ?? null);\n } catch (err) {\n if (!cancelled) setError(err instanceof Error ? err.message : 'Failed to load treasury');\n } finally {\n if (!cancelled) setLoadingTreasury(false);\n }\n };\n void load();\n return () => {\n cancelled = true;\n };\n }, [coreAddress, isCreated]);\n\n const selected = useMemo(() => treasury.find((b) => b.denom === denom), [treasury, denom]);\n const balance = selected?.amount || 0;\n const amt = typeof amount === 'number' ? amount : 0;\n const overdraft = amt > balance;\n // Parity with the core action: it refuses denoms it can't convert to base\n // units, so the sign button must too.\n const denomSupported = !!denom && !!SUPPORTED_DENOMS[denom];\n const valid = denomSupported && amt > 0 && !overdraft && recipient.trim().length > 0 && proposalMetadataValid(title, description);\n\n const handleSign = useCallback(async () => {\n if (!executeAction || !valid || submitting) return;\n if (!coreAddress) {\n setError('DAO core address is required');\n return;\n }\n setSubmitting(true);\n setError(null);\n try {\n const outcome = await executeAction({\n runtimeInputs: { coreAddress, recipient: recipient.trim(), denom: denom as string, amount: amt, title: title.trim(), description: description.trim() },\n });\n if (!outcome.success) throw new Error(outcome.error || 'Proposal creation failed');\n } catch (err) {\n setError(err instanceof Error ? err.message : 'Failed to create proposal');\n } finally {\n setSubmitting(false);\n }\n }, [executeAction, valid, submitting, coreAddress, recipient, denom, amt, title, description]);\n\n if (!coreAddress) {\n if (resolvingCore) {\n return (\n <Group gap=\"xs\" c=\"dimmed\">\n <Loader size=\"xs\" />\n <Text size=\"sm\">Detecting this domain's POD…</Text>\n </Group>\n );\n }\n return (\n <Alert color=\"yellow\" styles={actionAlertStyles}>\n {resolutionError\n ? `${resolutionError} Select a POD in template mode before running this action.`\n : 'Configure the DAO core address in template mode before running this action.'}\n </Alert>\n );\n }\n\n if (isCreated) {\n return (\n <Card padding=\"md\" radius=\"md\" withBorder style={{ borderColor: 'var(--mantine-color-green-6)' }}>\n <Text fw={500} size=\"sm\" c=\"green\">\n Send-funds proposal created\n </Text>\n <Text size=\"sm\" c=\"dimmed\">\n Proposal #{proposalId} is now open for the POD to vote on.\n </Text>\n </Card>\n );\n }\n\n return (\n <Stack gap=\"md\">\n <Stack gap=\"sm\">\n <Text size=\"sm\" c=\"dimmed\">\n {block?.props?.description || 'Send tokens from the POD treasury to an address.'}\n </Text>\n <Group gap={6} c=\"dimmed\">\n <IconCoin size={16} color=\"var(--mantine-color-dimmed)\" />\n <Text size=\"sm\" fw={600} c=\"dimmed\">\n Treasury transaction\n </Text>\n </Group>\n </Stack>\n\n {treasury.length === 0 && !loadingTreasury ? (\n <Text size=\"sm\" c=\"dimmed\">\n This POD treasury has no spendable funds.\n </Text>\n ) : (\n <>\n <BaseSelect\n label=\"Token\"\n placeholder={loadingTreasury ? 'Loading treasury…' : 'Select a token'}\n value={denom}\n onChange={setDenom}\n allowDeselect={false}\n disabled={isDisabled || loadingTreasury}\n rightSection={loadingTreasury ? <Loader size=\"xs\" /> : undefined}\n data={treasury.map((b) => ({\n value: b.denom,\n label: `${b.tokenName || b.denom} · ${b.amount.toLocaleString()}${SUPPORTED_DENOMS[b.denom] ? '' : ' — not supported yet'}`,\n disabled: !SUPPORTED_DENOMS[b.denom],\n }))}\n searchable\n />\n <NumberInput\n label={`Amount${selected?.tokenName ? ` (${selected.tokenName})` : ''}`}\n description={denomSupported ? `Enter whole ${SUPPORTED_DENOMS[denom as string]} — it is converted to on-chain units automatically.` : undefined}\n value={amount}\n onChange={(v) => setAmount(typeof v === 'number' ? v : '')}\n min={0}\n max={balance}\n hideControls\n placeholder={`Up to ${balance.toLocaleString()}`}\n error={overdraft ? 'Exceeds treasury balance' : undefined}\n disabled={isDisabled}\n size=\"sm\"\n />\n <Stack gap={4}>\n <Text size=\"sm\" fw={500}>\n Recipient\n </Text>\n <RecipientInput value={recipient} onChange={setRecipient} isDisabled={isDisabled} />\n </Stack>\n <ProposalMetadataFields title={title} description={description} onTitleChange={setTitle} onDescriptionChange={setDescription} isDisabled={isDisabled} />\n </>\n )}\n\n {error && (\n <Alert icon={<IconAlertCircle size={16} />} color=\"red\" styles={actionAlertStyles}>\n <Text size=\"sm\">{error}</Text>\n </Alert>\n )}\n {runtime.error?.message && !error && (\n <Alert color=\"red\" styles={actionAlertStyles}>\n <Text size=\"sm\">{runtime.error.message}</Text>\n </Alert>\n )}\n\n <Button\n leftSection={submitting ? <Loader size={14} /> : <IconShieldCheck size={14} />}\n onClick={handleSign}\n disabled={isDisabled || !valid || submitting}\n loading={submitting}\n >\n Sign & submit\n </Button>\n </Stack>\n );\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import {
|
|
2
|
+
RecipientInput
|
|
3
|
+
} from "./chunk-YLNEKJQ5.js";
|
|
4
|
+
import {
|
|
5
|
+
GovernanceProposalShell
|
|
6
|
+
} from "./chunk-5IH3VC5I.js";
|
|
7
|
+
import "./chunk-676HDB7K.js";
|
|
8
|
+
import "./chunk-TR4KO3AG.js";
|
|
9
|
+
import {
|
|
10
|
+
BaseSelect
|
|
11
|
+
} from "./chunk-4NAFQF6V.js";
|
|
12
|
+
import "./chunk-FFYZXA75.js";
|
|
13
|
+
import "./chunk-NZ7AXA7B.js";
|
|
14
|
+
import "./chunk-XVA7QRVH.js";
|
|
15
|
+
import "./chunk-JVROGQ7Q.js";
|
|
16
|
+
import "./chunk-IIIZZ4E4.js";
|
|
17
|
+
import "./chunk-HT6L7A5M.js";
|
|
18
|
+
import "./chunk-NCSGIRRQ.js";
|
|
19
|
+
import "./chunk-ZDNW6VQG.js";
|
|
20
|
+
import "./chunk-6GKJR52N.js";
|
|
21
|
+
import {
|
|
22
|
+
BaseTextInput
|
|
23
|
+
} from "./chunk-WO7V6ZNC.js";
|
|
24
|
+
import {
|
|
25
|
+
useBlocknoteHandlers
|
|
26
|
+
} from "./chunk-4DGCCXD6.js";
|
|
27
|
+
import "./chunk-7W7UUUIE.js";
|
|
28
|
+
import "./chunk-TS2LNBF2.js";
|
|
29
|
+
|
|
30
|
+
// src/mantine/blocks/action/actionTypes/governance/transactionSendGroupToken/GovernanceTransactionSendGroupTokenFlowDetail.tsx
|
|
31
|
+
import React, { useEffect, useMemo, useRef, useState } from "react";
|
|
32
|
+
import { Loader, Stack, Text } from "@mantine/core";
|
|
33
|
+
import { IconCoins } from "@tabler/icons-react";
|
|
34
|
+
var MANUAL_VALUE = "__manual__";
|
|
35
|
+
var Cw20TokenField = ({ coreAddress, value, onChange, isDisabled }) => {
|
|
36
|
+
const handlers = useBlocknoteHandlers();
|
|
37
|
+
const handlersRef = useRef(handlers);
|
|
38
|
+
handlersRef.current = handlers;
|
|
39
|
+
const [tokens, setTokens] = useState([]);
|
|
40
|
+
const [loading, setLoading] = useState(true);
|
|
41
|
+
const [manual, setManual] = useState(false);
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
let cancelled = false;
|
|
44
|
+
const load = async () => {
|
|
45
|
+
const h = handlersRef.current;
|
|
46
|
+
if (!h?.getBalances || !coreAddress) {
|
|
47
|
+
setLoading(false);
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
setLoading(true);
|
|
51
|
+
try {
|
|
52
|
+
const res = await h.getBalances(coreAddress);
|
|
53
|
+
if (!cancelled) setTokens((res?.data || []).filter((b) => !b.isCoin));
|
|
54
|
+
} catch {
|
|
55
|
+
} finally {
|
|
56
|
+
if (!cancelled) setLoading(false);
|
|
57
|
+
}
|
|
58
|
+
};
|
|
59
|
+
void load();
|
|
60
|
+
return () => {
|
|
61
|
+
cancelled = true;
|
|
62
|
+
};
|
|
63
|
+
}, [coreAddress]);
|
|
64
|
+
const matchesToken = useMemo(() => tokens.some((t) => t.denom === value), [tokens, value]);
|
|
65
|
+
const showManual = manual || !loading && tokens.length === 0 || !!value && !matchesToken;
|
|
66
|
+
const selectData = [
|
|
67
|
+
...tokens.map((t) => ({ value: t.denom, label: `${t.tokenName || t.denom} \xB7 ${t.amount.toLocaleString()}` })),
|
|
68
|
+
{ value: MANUAL_VALUE, label: "Enter token contract address manually\u2026" }
|
|
69
|
+
];
|
|
70
|
+
return /* @__PURE__ */ React.createElement(Stack, { gap: 4 }, !showManual ? /* @__PURE__ */ React.createElement(
|
|
71
|
+
BaseSelect,
|
|
72
|
+
{
|
|
73
|
+
label: "Token",
|
|
74
|
+
description: "A token held by the POD treasury. Each token is a cw20 smart contract on the chain.",
|
|
75
|
+
placeholder: loading ? "Loading the treasury\u2019s tokens\u2026" : "Select a token from the treasury",
|
|
76
|
+
value: matchesToken ? value : null,
|
|
77
|
+
onChange: (v) => {
|
|
78
|
+
if (v === MANUAL_VALUE) {
|
|
79
|
+
setManual(true);
|
|
80
|
+
onChange("");
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
onChange(v || "");
|
|
84
|
+
},
|
|
85
|
+
data: selectData,
|
|
86
|
+
disabled: isDisabled || loading,
|
|
87
|
+
rightSection: loading ? /* @__PURE__ */ React.createElement(Loader, { size: "xs" }) : void 0,
|
|
88
|
+
searchable: true,
|
|
89
|
+
size: "sm"
|
|
90
|
+
}
|
|
91
|
+
) : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(
|
|
92
|
+
BaseTextInput,
|
|
93
|
+
{
|
|
94
|
+
label: "Token contract",
|
|
95
|
+
description: "The address of the token's cw20 smart contract (starts with ixo1\u2026).",
|
|
96
|
+
placeholder: "ixo1\u2026 cw20 token contract address",
|
|
97
|
+
value,
|
|
98
|
+
onChange: (e) => onChange(e.currentTarget.value),
|
|
99
|
+
disabled: isDisabled,
|
|
100
|
+
size: "sm"
|
|
101
|
+
}
|
|
102
|
+
), tokens.length > 0 && /* @__PURE__ */ React.createElement(
|
|
103
|
+
Text,
|
|
104
|
+
{
|
|
105
|
+
size: "xs",
|
|
106
|
+
c: "dimmed",
|
|
107
|
+
style: { cursor: "pointer", textDecoration: "underline" },
|
|
108
|
+
onClick: () => {
|
|
109
|
+
if (!isDisabled) {
|
|
110
|
+
setManual(false);
|
|
111
|
+
onChange("");
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"\u2026or pick a token the treasury holds"
|
|
116
|
+
)));
|
|
117
|
+
};
|
|
118
|
+
var GovernanceTransactionSendGroupTokenFlowDetail = (props) => {
|
|
119
|
+
const { isDisabled } = props;
|
|
120
|
+
const [tokenContract, setTokenContract] = useState("");
|
|
121
|
+
const [recipient, setRecipient] = useState("");
|
|
122
|
+
const [amount, setAmount] = useState("");
|
|
123
|
+
const trimmedAmount = amount.trim();
|
|
124
|
+
const amountValid = /^\d+$/.test(trimmedAmount) && BigInt(trimmedAmount) > 0n;
|
|
125
|
+
const valid = tokenContract.trim().length > 0 && recipient.trim().length > 0 && amountValid;
|
|
126
|
+
return /* @__PURE__ */ React.createElement(
|
|
127
|
+
GovernanceProposalShell,
|
|
128
|
+
{
|
|
129
|
+
flow: props,
|
|
130
|
+
icon: IconCoins,
|
|
131
|
+
headline: "Treasury transaction",
|
|
132
|
+
defaultBlurb: "Send cw20 POD tokens from the treasury to an address.",
|
|
133
|
+
successTitle: "Send-POD-token proposal created",
|
|
134
|
+
valid,
|
|
135
|
+
buildRuntimeInputs: () => ({ tokenContract: tokenContract.trim(), recipient: recipient.trim(), amount: trimmedAmount })
|
|
136
|
+
},
|
|
137
|
+
({ coreAddress }) => /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Cw20TokenField, { coreAddress, value: tokenContract, onChange: setTokenContract, isDisabled }), /* @__PURE__ */ React.createElement(
|
|
138
|
+
BaseTextInput,
|
|
139
|
+
{
|
|
140
|
+
label: "Amount",
|
|
141
|
+
description: "Entered in the token's smallest on-chain unit (a whole number, no decimals). For a token with 6 decimal places, 1000000 = 1 token.",
|
|
142
|
+
placeholder: "Raw token amount, e.g. 1000000",
|
|
143
|
+
value: amount,
|
|
144
|
+
onChange: (e) => setAmount(e.currentTarget.value),
|
|
145
|
+
error: trimmedAmount && !amountValid ? "Enter a positive whole number" : void 0,
|
|
146
|
+
disabled: isDisabled,
|
|
147
|
+
size: "sm"
|
|
148
|
+
}
|
|
149
|
+
), /* @__PURE__ */ React.createElement(Stack, { gap: 4 }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500 }, "Recipient"), /* @__PURE__ */ React.createElement(RecipientInput, { value: recipient, onChange: setRecipient, isDisabled })))
|
|
150
|
+
);
|
|
151
|
+
};
|
|
152
|
+
export {
|
|
153
|
+
GovernanceTransactionSendGroupTokenFlowDetail
|
|
154
|
+
};
|
|
155
|
+
//# sourceMappingURL=GovernanceTransactionSendGroupTokenFlowDetail-EGOWVZM2.js.map
|