@ixo/editor 6.33.0 → 6.35.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-U2SX5M7F.js +365 -0
- package/dist/BidFlowDetail-U2SX5M7F.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-I4OQSHAB.js +641 -0
- package/dist/ClaimFlowDetail-I4OQSHAB.js.map +1 -0
- package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js +149 -0
- package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js.map +1 -0
- package/dist/CollectionLifecycleFlowDetail-LQHKB227.js +647 -0
- package/dist/CollectionLifecycleFlowDetail-LQHKB227.js.map +1 -0
- package/dist/CollectionUsersConfig-RI2X3YY2.js +271 -0
- package/dist/CollectionUsersConfig-RI2X3YY2.js.map +1 -0
- package/dist/CollectionUsersFlowDetail-LHXVCCPQ.js +1276 -0
- package/dist/CollectionUsersFlowDetail-LHXVCCPQ.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-2EXGNBYC.js +564 -0
- package/dist/EvaluateBidFlowDetail-2EXGNBYC.js.map +1 -0
- package/dist/EvaluateClaimConfig-3D4F5LHU.js +297 -0
- package/dist/EvaluateClaimConfig-3D4F5LHU.js.map +1 -0
- package/dist/EvaluateClaimFlowDetail-QKHJVEDE.js +2237 -0
- package/dist/EvaluateClaimFlowDetail-QKHJVEDE.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-4TE6UCEB.js +83 -0
- package/dist/IdentityCreateFlowDetail-4TE6UCEB.js.map +1 -0
- package/dist/IidCreateConfig-RRV2DYXI.js +75 -0
- package/dist/IidCreateConfig-RRV2DYXI.js.map +1 -0
- package/dist/IidCreateFlowDetail-HPVZAHVY.js +57 -0
- package/dist/IidCreateFlowDetail-HPVZAHVY.js.map +1 -0
- package/dist/KycVerifyConfig-VCG65K5K.js +65 -0
- package/dist/KycVerifyConfig-VCG65K5K.js.map +1 -0
- package/dist/KycVerifyFlowDetail-FEU43HML.js +421 -0
- package/dist/KycVerifyFlowDetail-FEU43HML.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-MIBXUEKC.js +255 -0
- package/dist/OracleConfigureOracleFlowDetail-MIBXUEKC.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-HQU3UKEB.js +220 -0
- package/dist/OracleStoreSecretsAndConfigFlowDetail-HQU3UKEB.js.map +1 -0
- package/dist/OracleStoreSecretsConfig-PQMF7LFT.js +191 -0
- package/dist/OracleStoreSecretsConfig-PQMF7LFT.js.map +1 -0
- package/dist/OracleStoreSecretsFlowDetail-5RXWQ3KA.js +197 -0
- package/dist/OracleStoreSecretsFlowDetail-5RXWQ3KA.js.map +1 -0
- package/dist/ProposalCreateConfig-U5IHZNT7.js +161 -0
- package/dist/ProposalCreateConfig-U5IHZNT7.js.map +1 -0
- package/dist/ProposalCreateFlowDetail-2FCRCNYV.js +235 -0
- package/dist/ProposalCreateFlowDetail-2FCRCNYV.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-3TUYY4HK.js +20 -0
- package/dist/chunk-3TUYY4HK.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-5E6Z6JJN.js +4456 -0
- package/dist/chunk-5E6Z6JJN.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-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-F5GTFCYV.js +3333 -0
- package/dist/chunk-F5GTFCYV.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-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-JB6ASLUJ.js +315 -0
- package/dist/chunk-JB6ASLUJ.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-MZIBZ5FY.js +554 -0
- package/dist/chunk-MZIBZ5FY.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-XYXDY72K.js +27508 -0
- package/dist/chunk-XYXDY72K.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-A4CWC4AG.js +0 -374
- package/dist/chunk-A4CWC4AG.js.map +0 -1
- package/dist/chunk-NEOPTPDF.js.map +0 -1
- package/dist/chunk-VRCRDKN5.js +0 -59694
- package/dist/chunk-VRCRDKN5.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionSendGroupToken/GovernanceTransactionSendGroupTokenFlowDetail.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useRef, useState } from 'react';\nimport { Loader, Stack, Text } from '@mantine/core';\nimport { IconCoins } from '@tabler/icons-react';\nimport BaseSelect from '@/mantine/components/Base/BaseSelect';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport { useBlocknoteHandlers } from '@/mantine/context/BlocknoteContext';\nimport type { Balance } from '@/mantine/context/BlocknoteContext';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { GovernanceProposalShell } from '../_shared/GovernanceProposalShell';\nimport { RecipientInput } from '../_shared/RecipientInput';\nimport type { GovernanceTransactionSendGroupTokenRuntimeInputs } from './types';\n\nconst MANUAL_VALUE = '__manual__';\n\n/**\n * Selects which cw20 token the treasury sends: loads the POD treasury's\n * cw20 holdings (`handlers.getBalances(coreAddress)`, entries with\n * `isCoin === false`) into a searchable select, with an \"enter address\n * manually\" escape hatch for tokens the treasury doesn't hold yet. `value` is\n * the cw20 token contract address either way.\n */\nconst Cw20TokenField: React.FC<{\n coreAddress: string;\n value: string;\n onChange: (tokenContract: string) => void;\n isDisabled?: boolean;\n}> = ({ coreAddress, value, onChange, isDisabled }) => {\n const handlers = useBlocknoteHandlers();\n const handlersRef = useRef(handlers);\n handlersRef.current = handlers;\n\n const [tokens, setTokens] = useState<Balance[]>([]);\n const [loading, setLoading] = useState(true);\n const [manual, setManual] = useState(false);\n\n useEffect(() => {\n let cancelled = false;\n const load = async () => {\n const h = handlersRef.current;\n if (!h?.getBalances || !coreAddress) {\n setLoading(false);\n return;\n }\n setLoading(true);\n try {\n const res = await h.getBalances(coreAddress);\n if (!cancelled) setTokens((res?.data || []).filter((b) => !b.isCoin));\n } catch {\n // Manual entry remains available.\n } finally {\n if (!cancelled) setLoading(false);\n }\n };\n void load();\n return () => {\n cancelled = true;\n };\n }, [coreAddress]);\n\n // A value that isn't one of the treasury's tokens means manual entry; when\n // the treasury holds no cw20 tokens at all there is nothing to pick from.\n const matchesToken = useMemo(() => tokens.some((t) => t.denom === value), [tokens, value]);\n const showManual = manual || (!loading && tokens.length === 0) || (!!value && !matchesToken);\n\n const selectData = [\n ...tokens.map((t) => ({ value: t.denom, label: `${t.tokenName || t.denom} · ${t.amount.toLocaleString()}` })),\n { value: MANUAL_VALUE, label: 'Enter token contract address manually…' },\n ];\n\n return (\n <Stack gap={4}>\n {!showManual ? (\n <BaseSelect\n label=\"Token\"\n description=\"A token held by the POD treasury. Each token is a cw20 smart contract on the chain.\"\n placeholder={loading ? 'Loading the treasury’s tokens…' : 'Select a token from the treasury'}\n value={matchesToken ? value : null}\n onChange={(v) => {\n if (v === MANUAL_VALUE) {\n setManual(true);\n onChange('');\n return;\n }\n onChange(v || '');\n }}\n data={selectData}\n disabled={isDisabled || loading}\n rightSection={loading ? <Loader size=\"xs\" /> : undefined}\n searchable\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={value}\n onChange={(e) => onChange(e.currentTarget.value)}\n disabled={isDisabled}\n size=\"sm\"\n />\n {tokens.length > 0 && (\n <Text\n size=\"xs\"\n c=\"dimmed\"\n style={{ cursor: 'pointer', textDecoration: 'underline' }}\n onClick={() => {\n if (!isDisabled) {\n setManual(false);\n onChange('');\n }\n }}\n >\n …or pick a token the treasury holds\n </Text>\n )}\n </>\n )}\n </Stack>\n );\n};\n\nexport const GovernanceTransactionSendGroupTokenFlowDetail: React.FC<ActionTypeFlowProps<GovernanceTransactionSendGroupTokenRuntimeInputs>> = (props) => {\n const { isDisabled } = props;\n\n const [tokenContract, setTokenContract] = useState('');\n const [recipient, setRecipient] = useState('');\n const [amount, setAmount] = useState('');\n\n const trimmedAmount = amount.trim();\n // Parity with the core action's `/^\\d+$/ && BigInt > 0` check (so \"000\"\n // doesn't pass here and fail there).\n const amountValid = /^\\d+$/.test(trimmedAmount) && BigInt(trimmedAmount) > 0n;\n const valid = tokenContract.trim().length > 0 && recipient.trim().length > 0 && amountValid;\n\n return (\n <GovernanceProposalShell\n flow={props}\n icon={IconCoins}\n headline=\"Treasury transaction\"\n defaultBlurb=\"Send cw20 POD tokens from the treasury to an address.\"\n successTitle=\"Send-POD-token proposal created\"\n valid={valid}\n buildRuntimeInputs={() => ({ tokenContract: tokenContract.trim(), recipient: recipient.trim(), amount: trimmedAmount })}\n >\n {({ coreAddress }) => (\n <>\n <Cw20TokenField coreAddress={coreAddress} value={tokenContract} onChange={setTokenContract} isDisabled={isDisabled} />\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={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 </>\n )}\n </GovernanceProposalShell>\n );\n};\n"],"mappings":"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","names":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
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/transactionWithdrawTokenSwap/GovernanceTransactionWithdrawTokenSwapFlowDetail.tsx
|
|
22
|
+
import React, { useState } from "react";
|
|
23
|
+
import { IconArrowBackUp } from "@tabler/icons-react";
|
|
24
|
+
var GovernanceTransactionWithdrawTokenSwapFlowDetail = (props) => {
|
|
25
|
+
const { isDisabled } = props;
|
|
26
|
+
const [contractAddress, setContractAddress] = useState("");
|
|
27
|
+
const valid = contractAddress.trim().length > 0;
|
|
28
|
+
return /* @__PURE__ */ React.createElement(
|
|
29
|
+
GovernanceProposalShell,
|
|
30
|
+
{
|
|
31
|
+
flow: props,
|
|
32
|
+
icon: IconArrowBackUp,
|
|
33
|
+
headline: "Treasury transaction",
|
|
34
|
+
defaultBlurb: "Withdraw the POD\u2019s funds from a token swap contract.",
|
|
35
|
+
successTitle: "Withdraw-token-swap proposal created",
|
|
36
|
+
valid,
|
|
37
|
+
buildRuntimeInputs: () => ({ tokenSwapContractAddress: contractAddress.trim() })
|
|
38
|
+
},
|
|
39
|
+
/* @__PURE__ */ React.createElement(
|
|
40
|
+
BaseTextInput,
|
|
41
|
+
{
|
|
42
|
+
label: "Swap contract",
|
|
43
|
+
description: "The token swap smart contract the POD previously funded (an ixo1\u2026 address). Withdrawing only works while the counterparty has not paid in yet.",
|
|
44
|
+
placeholder: "ixo1\u2026 token swap contract address",
|
|
45
|
+
value: contractAddress,
|
|
46
|
+
onChange: (e) => setContractAddress(e.currentTarget.value),
|
|
47
|
+
disabled: isDisabled,
|
|
48
|
+
size: "sm"
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
);
|
|
52
|
+
};
|
|
53
|
+
export {
|
|
54
|
+
GovernanceTransactionWithdrawTokenSwapFlowDetail
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=GovernanceTransactionWithdrawTokenSwapFlowDetail-6XWVO5O6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/transactionWithdrawTokenSwap/GovernanceTransactionWithdrawTokenSwapFlowDetail.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { IconArrowBackUp } from '@tabler/icons-react';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { GovernanceProposalShell } from '../_shared/GovernanceProposalShell';\nimport type { GovernanceTransactionWithdrawTokenSwapRuntimeInputs } from './types';\n\nexport const GovernanceTransactionWithdrawTokenSwapFlowDetail: React.FC<ActionTypeFlowProps<GovernanceTransactionWithdrawTokenSwapRuntimeInputs>> = (props) => {\n const { isDisabled } = props;\n\n const [contractAddress, setContractAddress] = useState('');\n\n const valid = contractAddress.trim().length > 0;\n\n return (\n <GovernanceProposalShell\n flow={props}\n icon={IconArrowBackUp}\n headline=\"Treasury transaction\"\n defaultBlurb=\"Withdraw the POD’s funds from a token swap contract.\"\n successTitle=\"Withdraw-token-swap proposal created\"\n valid={valid}\n buildRuntimeInputs={() => ({ tokenSwapContractAddress: contractAddress.trim() })}\n >\n <BaseTextInput\n label=\"Swap contract\"\n description=\"The token swap smart contract the POD previously funded (an ixo1… address). Withdrawing only works while the counterparty has not paid in yet.\"\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 </GovernanceProposalShell>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS,gBAAgB;AAChC,SAAS,uBAAuB;AAMzB,IAAM,mDAAuI,CAAC,UAAU;AAC7J,QAAM,EAAE,WAAW,IAAI;AAEvB,QAAM,CAAC,iBAAiB,kBAAkB,IAAI,SAAS,EAAE;AAEzD,QAAM,QAAQ,gBAAgB,KAAK,EAAE,SAAS;AAE9C,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,0BAA0B,gBAAgB,KAAK,EAAE;AAAA;AAAA,IAE9E;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,aAAY;AAAA,QACZ,aAAY;AAAA,QACZ,OAAO;AAAA,QACP,UAAU,CAAC,MAAM,mBAAmB,EAAE,cAAc,KAAK;AAAA,QACzD,UAAU;AAAA,QACV,MAAK;AAAA;AAAA,IACP;AAAA,EACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import {
|
|
2
|
+
GovernanceProposalShell
|
|
3
|
+
} from "./chunk-5IH3VC5I.js";
|
|
4
|
+
import "./chunk-676HDB7K.js";
|
|
5
|
+
import "./chunk-TR4KO3AG.js";
|
|
6
|
+
import {
|
|
7
|
+
BaseSelect
|
|
8
|
+
} from "./chunk-4NAFQF6V.js";
|
|
9
|
+
import "./chunk-FFYZXA75.js";
|
|
10
|
+
import "./chunk-NZ7AXA7B.js";
|
|
11
|
+
import "./chunk-JVROGQ7Q.js";
|
|
12
|
+
import "./chunk-IIIZZ4E4.js";
|
|
13
|
+
import "./chunk-HT6L7A5M.js";
|
|
14
|
+
import "./chunk-NCSGIRRQ.js";
|
|
15
|
+
import {
|
|
16
|
+
BaseTextArea
|
|
17
|
+
} from "./chunk-ZDNW6VQG.js";
|
|
18
|
+
import "./chunk-6GKJR52N.js";
|
|
19
|
+
import "./chunk-WO7V6ZNC.js";
|
|
20
|
+
import "./chunk-4DGCCXD6.js";
|
|
21
|
+
import "./chunk-7W7UUUIE.js";
|
|
22
|
+
import "./chunk-TS2LNBF2.js";
|
|
23
|
+
|
|
24
|
+
// src/mantine/blocks/action/actionTypes/governance/validatorActions/GovernanceValidatorActionsFlowDetail.tsx
|
|
25
|
+
import React, { useState } from "react";
|
|
26
|
+
import { Text } from "@mantine/core";
|
|
27
|
+
import { IconServerBolt } from "@tabler/icons-react";
|
|
28
|
+
var ACTION_TYPE_DATA = [
|
|
29
|
+
{ value: "/cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission", label: "Withdraw commission" },
|
|
30
|
+
{ value: "/cosmos.staking.v1beta1.MsgCreateValidator", label: "Create validator" },
|
|
31
|
+
{ value: "/cosmos.staking.v1beta1.MsgEditValidator", label: "Edit validator" },
|
|
32
|
+
{ value: "/cosmos.slashing.v1beta1.MsgUnjail", label: "Unjail validator" }
|
|
33
|
+
];
|
|
34
|
+
var jsonError = (value) => {
|
|
35
|
+
if (!value.trim()) return void 0;
|
|
36
|
+
try {
|
|
37
|
+
JSON.parse(value);
|
|
38
|
+
return void 0;
|
|
39
|
+
} catch (err) {
|
|
40
|
+
return err instanceof Error ? err.message : "Invalid JSON";
|
|
41
|
+
}
|
|
42
|
+
};
|
|
43
|
+
var GovernanceValidatorActionsFlowDetail = (props) => {
|
|
44
|
+
const { isDisabled } = props;
|
|
45
|
+
const [actionType, setActionType] = useState("/cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission");
|
|
46
|
+
const [createMsg, setCreateMsg] = useState("");
|
|
47
|
+
const [editMsg, setEditMsg] = useState("");
|
|
48
|
+
const isCreate = actionType === "/cosmos.staking.v1beta1.MsgCreateValidator";
|
|
49
|
+
const isEdit = actionType === "/cosmos.staking.v1beta1.MsgEditValidator";
|
|
50
|
+
const msgDraft = isCreate ? createMsg : isEdit ? editMsg : "";
|
|
51
|
+
const msgError = jsonError(msgDraft);
|
|
52
|
+
const valid = !isCreate && !isEdit ? true : msgDraft.trim().length > 0 && !msgError;
|
|
53
|
+
return /* @__PURE__ */ React.createElement(
|
|
54
|
+
GovernanceProposalShell,
|
|
55
|
+
{
|
|
56
|
+
flow: props,
|
|
57
|
+
icon: IconServerBolt,
|
|
58
|
+
headline: "Validator",
|
|
59
|
+
defaultBlurb: "Perform a validator operation with the POD's validator account.",
|
|
60
|
+
successTitle: "Validator-action proposal created",
|
|
61
|
+
valid,
|
|
62
|
+
buildRuntimeInputs: () => ({
|
|
63
|
+
validatorActionType: actionType,
|
|
64
|
+
createMsg: isCreate ? createMsg.trim() : "",
|
|
65
|
+
editMsg: isEdit ? editMsg.trim() : ""
|
|
66
|
+
})
|
|
67
|
+
},
|
|
68
|
+
/* @__PURE__ */ React.createElement(
|
|
69
|
+
BaseSelect,
|
|
70
|
+
{
|
|
71
|
+
label: "Validator action",
|
|
72
|
+
description: "Only relevant when this POD operates a chain validator.",
|
|
73
|
+
value: actionType,
|
|
74
|
+
onChange: (v) => setActionType(v || actionType),
|
|
75
|
+
allowDeselect: false,
|
|
76
|
+
data: ACTION_TYPE_DATA,
|
|
77
|
+
disabled: isDisabled,
|
|
78
|
+
size: "sm"
|
|
79
|
+
}
|
|
80
|
+
),
|
|
81
|
+
isCreate && /* @__PURE__ */ React.createElement(
|
|
82
|
+
BaseTextArea,
|
|
83
|
+
{
|
|
84
|
+
label: "Create validator message (JSON)",
|
|
85
|
+
description: "For operators: the full MsgCreateValidator body, exactly as the chain expects it \u2014 see the placeholder for the required fields.",
|
|
86
|
+
placeholder: '{"description": {"moniker": "My Validator"}, "commission": {"rate": "0.10", "max_rate": "0.20", "max_change_rate": "0.01"}, "min_self_delegation": "1", "delegator_address": "ixo1\u2026", "validator_address": "ixovaloper1\u2026", "pubkey": {"@type": "/cosmos.crypto.ed25519.PubKey", "key": "\u2026"}, "value": {"denom": "uixo", "amount": "1000000"}}',
|
|
87
|
+
value: createMsg,
|
|
88
|
+
onChange: (e) => setCreateMsg(e.currentTarget.value),
|
|
89
|
+
error: msgError,
|
|
90
|
+
minRows: 6,
|
|
91
|
+
styles: { input: { fontFamily: "var(--mantine-font-family-monospace)", fontSize: 12 } },
|
|
92
|
+
disabled: isDisabled,
|
|
93
|
+
size: "sm"
|
|
94
|
+
}
|
|
95
|
+
),
|
|
96
|
+
isEdit && /* @__PURE__ */ React.createElement(
|
|
97
|
+
BaseTextArea,
|
|
98
|
+
{
|
|
99
|
+
label: "Edit validator message (JSON)",
|
|
100
|
+
description: "For operators: only the fields you include are changed on the validator.",
|
|
101
|
+
placeholder: '{"description": {"moniker": "Updated Validator"}, "validator_address": "ixovaloper1\u2026", "commission_rate": "0.15", "min_self_delegation": "1"}',
|
|
102
|
+
value: editMsg,
|
|
103
|
+
onChange: (e) => setEditMsg(e.currentTarget.value),
|
|
104
|
+
error: msgError,
|
|
105
|
+
minRows: 6,
|
|
106
|
+
styles: { input: { fontFamily: "var(--mantine-font-family-monospace)", fontSize: 12 } },
|
|
107
|
+
disabled: isDisabled,
|
|
108
|
+
size: "sm"
|
|
109
|
+
}
|
|
110
|
+
),
|
|
111
|
+
!isCreate && !isEdit && /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, "This operation takes no message body \u2014 it runs against the POD's validator address automatically.")
|
|
112
|
+
);
|
|
113
|
+
};
|
|
114
|
+
export {
|
|
115
|
+
GovernanceValidatorActionsFlowDetail
|
|
116
|
+
};
|
|
117
|
+
//# sourceMappingURL=GovernanceValidatorActionsFlowDetail-ZMLPAFUB.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/governance/validatorActions/GovernanceValidatorActionsFlowDetail.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Text } from '@mantine/core';\nimport { IconServerBolt } from '@tabler/icons-react';\nimport BaseSelect from '@/mantine/components/Base/BaseSelect';\nimport BaseTextArea from '@/mantine/components/Base/BaseTextArea';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport { GovernanceProposalShell } from '../_shared/GovernanceProposalShell';\nimport type { GovernanceValidatorActionType, GovernanceValidatorActionsRuntimeInputs } from './types';\n\nconst ACTION_TYPE_DATA = [\n { value: '/cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission', label: 'Withdraw commission' },\n { value: '/cosmos.staking.v1beta1.MsgCreateValidator', label: 'Create validator' },\n { value: '/cosmos.staking.v1beta1.MsgEditValidator', label: 'Edit validator' },\n { value: '/cosmos.slashing.v1beta1.MsgUnjail', label: 'Unjail validator' },\n];\n\n/** Parse error for a non-empty JSON draft, undefined when empty or valid. */\nconst jsonError = (value: string): string | undefined => {\n if (!value.trim()) return undefined;\n try {\n JSON.parse(value);\n return undefined;\n } catch (err) {\n return err instanceof Error ? err.message : 'Invalid JSON';\n }\n};\n\nexport const GovernanceValidatorActionsFlowDetail: React.FC<ActionTypeFlowProps<GovernanceValidatorActionsRuntimeInputs>> = (props) => {\n const { isDisabled } = props;\n\n const [actionType, setActionType] = useState<GovernanceValidatorActionType>('/cosmos.distribution.v1beta1.MsgWithdrawValidatorCommission');\n const [createMsg, setCreateMsg] = useState('');\n const [editMsg, setEditMsg] = useState('');\n\n const isCreate = actionType === '/cosmos.staking.v1beta1.MsgCreateValidator';\n const isEdit = actionType === '/cosmos.staking.v1beta1.MsgEditValidator';\n const msgDraft = isCreate ? createMsg : isEdit ? editMsg : '';\n const msgError = jsonError(msgDraft);\n const valid = !isCreate && !isEdit ? true : msgDraft.trim().length > 0 && !msgError;\n\n return (\n <GovernanceProposalShell\n flow={props}\n icon={IconServerBolt}\n headline=\"Validator\"\n defaultBlurb=\"Perform a validator operation with the POD's validator account.\"\n successTitle=\"Validator-action proposal created\"\n valid={valid}\n buildRuntimeInputs={() => ({\n validatorActionType: actionType,\n createMsg: isCreate ? createMsg.trim() : '',\n editMsg: isEdit ? editMsg.trim() : '',\n })}\n >\n <BaseSelect\n label=\"Validator action\"\n description=\"Only relevant when this POD operates a chain validator.\"\n value={actionType}\n onChange={(v) => setActionType((v as GovernanceValidatorActionType) || actionType)}\n allowDeselect={false}\n data={ACTION_TYPE_DATA}\n disabled={isDisabled}\n size=\"sm\"\n />\n {isCreate && (\n <BaseTextArea\n label=\"Create validator message (JSON)\"\n description=\"For operators: the full MsgCreateValidator body, exactly as the chain expects it — see the placeholder for the required fields.\"\n placeholder='{\"description\": {\"moniker\": \"My Validator\"}, \"commission\": {\"rate\": \"0.10\", \"max_rate\": \"0.20\", \"max_change_rate\": \"0.01\"}, \"min_self_delegation\": \"1\", \"delegator_address\": \"ixo1…\", \"validator_address\": \"ixovaloper1…\", \"pubkey\": {\"@type\": \"/cosmos.crypto.ed25519.PubKey\", \"key\": \"…\"}, \"value\": {\"denom\": \"uixo\", \"amount\": \"1000000\"}}'\n value={createMsg}\n onChange={(e) => setCreateMsg(e.currentTarget.value)}\n error={msgError}\n minRows={6}\n styles={{ input: { fontFamily: 'var(--mantine-font-family-monospace)', fontSize: 12 } }}\n disabled={isDisabled}\n size=\"sm\"\n />\n )}\n {isEdit && (\n <BaseTextArea\n label=\"Edit validator message (JSON)\"\n description=\"For operators: only the fields you include are changed on the validator.\"\n placeholder='{\"description\": {\"moniker\": \"Updated Validator\"}, \"validator_address\": \"ixovaloper1…\", \"commission_rate\": \"0.15\", \"min_self_delegation\": \"1\"}'\n value={editMsg}\n onChange={(e) => setEditMsg(e.currentTarget.value)}\n error={msgError}\n minRows={6}\n styles={{ input: { fontFamily: 'var(--mantine-font-family-monospace)', fontSize: 12 } }}\n disabled={isDisabled}\n size=\"sm\"\n />\n )}\n {!isCreate && !isEdit && (\n <Text size=\"sm\" c=\"dimmed\">\n This operation takes no message body — it runs against the POD's validator address automatically.\n </Text>\n )}\n </GovernanceProposalShell>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS,gBAAgB;AAChC,SAAS,YAAY;AACrB,SAAS,sBAAsB;AAO/B,IAAM,mBAAmB;AAAA,EACvB,EAAE,OAAO,+DAA+D,OAAO,sBAAsB;AAAA,EACrG,EAAE,OAAO,8CAA8C,OAAO,mBAAmB;AAAA,EACjF,EAAE,OAAO,4CAA4C,OAAO,iBAAiB;AAAA,EAC7E,EAAE,OAAO,sCAAsC,OAAO,mBAAmB;AAC3E;AAGA,IAAM,YAAY,CAAC,UAAsC;AACvD,MAAI,CAAC,MAAM,KAAK,EAAG,QAAO;AAC1B,MAAI;AACF,SAAK,MAAM,KAAK;AAChB,WAAO;AAAA,EACT,SAAS,KAAK;AACZ,WAAO,eAAe,QAAQ,IAAI,UAAU;AAAA,EAC9C;AACF;AAEO,IAAM,uCAA+G,CAAC,UAAU;AACrI,QAAM,EAAE,WAAW,IAAI;AAEvB,QAAM,CAAC,YAAY,aAAa,IAAI,SAAwC,6DAA6D;AACzI,QAAM,CAAC,WAAW,YAAY,IAAI,SAAS,EAAE;AAC7C,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,EAAE;AAEzC,QAAM,WAAW,eAAe;AAChC,QAAM,SAAS,eAAe;AAC9B,QAAM,WAAW,WAAW,YAAY,SAAS,UAAU;AAC3D,QAAM,WAAW,UAAU,QAAQ;AACnC,QAAM,QAAQ,CAAC,YAAY,CAAC,SAAS,OAAO,SAAS,KAAK,EAAE,SAAS,KAAK,CAAC;AAE3E,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;AAAA,QACzB,qBAAqB;AAAA,QACrB,WAAW,WAAW,UAAU,KAAK,IAAI;AAAA,QACzC,SAAS,SAAS,QAAQ,KAAK,IAAI;AAAA,MACrC;AAAA;AAAA,IAEA;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,aAAY;AAAA,QACZ,OAAO;AAAA,QACP,UAAU,CAAC,MAAM,cAAe,KAAuC,UAAU;AAAA,QACjF,eAAe;AAAA,QACf,MAAM;AAAA,QACN,UAAU;AAAA,QACV,MAAK;AAAA;AAAA,IACP;AAAA,IACC,YACC;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,aAAY;AAAA,QACZ,aAAY;AAAA,QACZ,OAAO;AAAA,QACP,UAAU,CAAC,MAAM,aAAa,EAAE,cAAc,KAAK;AAAA,QACnD,OAAO;AAAA,QACP,SAAS;AAAA,QACT,QAAQ,EAAE,OAAO,EAAE,YAAY,wCAAwC,UAAU,GAAG,EAAE;AAAA,QACtF,UAAU;AAAA,QACV,MAAK;AAAA;AAAA,IACP;AAAA,IAED,UACC;AAAA,MAAC;AAAA;AAAA,QACC,OAAM;AAAA,QACN,aAAY;AAAA,QACZ,aAAY;AAAA,QACZ,OAAO;AAAA,QACP,UAAU,CAAC,MAAM,WAAW,EAAE,cAAc,KAAK;AAAA,QACjD,OAAO;AAAA,QACP,SAAS;AAAA,QACT,QAAQ,EAAE,OAAO,EAAE,YAAY,wCAAwC,UAAU,GAAG,EAAE;AAAA,QACtF,UAAU;AAAA,QACV,MAAK;AAAA;AAAA,IACP;AAAA,IAED,CAAC,YAAY,CAAC,UACb,oCAAC,QAAK,MAAK,MAAK,GAAE,YAAS,wGAE3B;AAAA,EAEJ;AAEJ;","names":[]}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseHarvestConfigInputs,
|
|
3
|
+
serializeHarvestConfigInputs
|
|
4
|
+
} from "./chunk-5O2SFRGU.js";
|
|
5
|
+
import {
|
|
6
|
+
BatchesSourceSelect
|
|
7
|
+
} from "./chunk-QZYCJ2GZ.js";
|
|
8
|
+
import "./chunk-4PONO4US.js";
|
|
9
|
+
import "./chunk-XPBKU3JX.js";
|
|
10
|
+
import "./chunk-NZ7AXA7B.js";
|
|
11
|
+
import "./chunk-F4PTFXZH.js";
|
|
12
|
+
import "./chunk-IH4T7V4C.js";
|
|
13
|
+
import "./chunk-PYNDJDWZ.js";
|
|
14
|
+
import "./chunk-NIXT2SBH.js";
|
|
15
|
+
import "./chunk-JIDTNKKL.js";
|
|
16
|
+
import "./chunk-JVROGQ7Q.js";
|
|
17
|
+
import "./chunk-IIIZZ4E4.js";
|
|
18
|
+
import "./chunk-HT6L7A5M.js";
|
|
19
|
+
import "./chunk-N3ORMGAI.js";
|
|
20
|
+
import "./chunk-NCSGIRRQ.js";
|
|
21
|
+
import "./chunk-EBFFDDAS.js";
|
|
22
|
+
import "./chunk-TS2LNBF2.js";
|
|
23
|
+
|
|
24
|
+
// src/mantine/blocks/action/actionTypes/carbon/harvest/HarvestConfig.tsx
|
|
25
|
+
import React, { useCallback, useEffect, useState } from "react";
|
|
26
|
+
import { Stack, Text } from "@mantine/core";
|
|
27
|
+
var HarvestConfig = ({ inputs, onInputsChange, editor, blockId }) => {
|
|
28
|
+
const [local, setLocal] = useState(() => parseHarvestConfigInputs(inputs));
|
|
29
|
+
useEffect(() => {
|
|
30
|
+
setLocal(parseHarvestConfigInputs(inputs));
|
|
31
|
+
}, [inputs]);
|
|
32
|
+
const update = useCallback(
|
|
33
|
+
(patch) => {
|
|
34
|
+
const updated = { ...local, ...patch };
|
|
35
|
+
setLocal(updated);
|
|
36
|
+
onInputsChange(serializeHarvestConfigInputs(updated));
|
|
37
|
+
},
|
|
38
|
+
[local, onInputsChange]
|
|
39
|
+
);
|
|
40
|
+
return /* @__PURE__ */ React.createElement(Stack, { gap: "lg" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 600 }, "Harvest Carbon"), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, "Claims credits held on your entity admin accounts into your wallet. Pick the upstream Load Carbon Batches block that supplies the harvestable batches.")), /* @__PURE__ */ React.createElement(
|
|
41
|
+
BatchesSourceSelect,
|
|
42
|
+
{
|
|
43
|
+
outputField: "harvestableBatches",
|
|
44
|
+
label: "Harvestable batches source",
|
|
45
|
+
description: "The Load Carbon Batches block whose harvestable credits this block claims.",
|
|
46
|
+
value: local.batchesRef || "",
|
|
47
|
+
onChange: (value) => update({ batchesRef: value }),
|
|
48
|
+
editorDocument: editor?.document || [],
|
|
49
|
+
currentBlockId: blockId
|
|
50
|
+
}
|
|
51
|
+
));
|
|
52
|
+
};
|
|
53
|
+
export {
|
|
54
|
+
HarvestConfig
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=HarvestConfig-AIGOGBFR.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/carbon/harvest/HarvestConfig.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { Stack, Text } from '@mantine/core';\nimport type { ActionTypeConfigProps } from '../../../actionTypeUI';\nimport { BatchesSourceSelect } from '../BatchesSourceSelect';\nimport { parseHarvestConfigInputs, serializeHarvestConfigInputs, type HarvestConfigInputs } from './types';\n\nexport const HarvestConfig: React.FC<ActionTypeConfigProps> = ({ inputs, onInputsChange, editor, blockId }) => {\n const [local, setLocal] = useState<HarvestConfigInputs>(() => parseHarvestConfigInputs(inputs));\n\n useEffect(() => {\n setLocal(parseHarvestConfigInputs(inputs));\n }, [inputs]);\n\n const update = useCallback(\n (patch: Partial<HarvestConfigInputs>) => {\n const updated = { ...local, ...patch };\n setLocal(updated);\n onInputsChange(serializeHarvestConfigInputs(updated));\n },\n [local, onInputsChange]\n );\n\n return (\n <Stack gap=\"lg\">\n <Stack gap=\"xs\">\n <Text size=\"sm\" fw={600}>\n Harvest Carbon\n </Text>\n <Text size=\"xs\" c=\"dimmed\">\n Claims credits held on your entity admin accounts into your wallet. Pick the upstream Load Carbon Batches block that supplies the harvestable batches.\n </Text>\n </Stack>\n\n <BatchesSourceSelect\n outputField=\"harvestableBatches\"\n label=\"Harvestable batches source\"\n description=\"The Load Carbon Batches block whose harvestable credits this block claims.\"\n value={local.batchesRef || ''}\n onChange={(value) => update({ batchesRef: value })}\n editorDocument={editor?.document || []}\n currentBlockId={blockId}\n />\n </Stack>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,SAAS,aAAa,WAAW,gBAAgB;AACxD,SAAS,OAAO,YAAY;AAKrB,IAAM,gBAAiD,CAAC,EAAE,QAAQ,gBAAgB,QAAQ,QAAQ,MAAM;AAC7G,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA8B,MAAM,yBAAyB,MAAM,CAAC;AAE9F,YAAU,MAAM;AACd,aAAS,yBAAyB,MAAM,CAAC;AAAA,EAC3C,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,SAAS;AAAA,IACb,CAAC,UAAwC;AACvC,YAAM,UAAU,EAAE,GAAG,OAAO,GAAG,MAAM;AACrC,eAAS,OAAO;AAChB,qBAAe,6BAA6B,OAAO,CAAC;AAAA,IACtD;AAAA,IACA,CAAC,OAAO,cAAc;AAAA,EACxB;AAEA,SACE,oCAAC,SAAM,KAAI,QACT,oCAAC,SAAM,KAAI,QACT,oCAAC,QAAK,MAAK,MAAK,IAAI,OAAK,gBAEzB,GACA,oCAAC,QAAK,MAAK,MAAK,GAAE,YAAS,wJAE3B,CACF,GAEA;AAAA,IAAC;AAAA;AAAA,MACC,aAAY;AAAA,MACZ,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,OAAO,MAAM,cAAc;AAAA,MAC3B,UAAU,CAAC,UAAU,OAAO,EAAE,YAAY,MAAM,CAAC;AAAA,MACjD,gBAAgB,QAAQ,YAAY,CAAC;AAAA,MACrC,gBAAgB;AAAA;AAAA,EAClB,CACF;AAEJ;","names":[]}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import {
|
|
2
|
+
parseHarvestConfigInputs
|
|
3
|
+
} from "./chunk-5O2SFRGU.js";
|
|
4
|
+
import {
|
|
5
|
+
useRunRuntimeReader
|
|
6
|
+
} from "./chunk-FFYZXA75.js";
|
|
7
|
+
import "./chunk-NZ7AXA7B.js";
|
|
8
|
+
import {
|
|
9
|
+
resolveReferences
|
|
10
|
+
} from "./chunk-JVROGQ7Q.js";
|
|
11
|
+
import "./chunk-IIIZZ4E4.js";
|
|
12
|
+
import "./chunk-HT6L7A5M.js";
|
|
13
|
+
import "./chunk-NCSGIRRQ.js";
|
|
14
|
+
import {
|
|
15
|
+
DismissibleAlert
|
|
16
|
+
} from "./chunk-IFWKRCFF.js";
|
|
17
|
+
import {
|
|
18
|
+
actionAlertStyles
|
|
19
|
+
} from "./chunk-6GKJR52N.js";
|
|
20
|
+
import {
|
|
21
|
+
useBlocknoteHandlers
|
|
22
|
+
} from "./chunk-4DGCCXD6.js";
|
|
23
|
+
import "./chunk-7W7UUUIE.js";
|
|
24
|
+
import "./chunk-TS2LNBF2.js";
|
|
25
|
+
|
|
26
|
+
// src/mantine/blocks/action/actionTypes/carbon/harvest/HarvestFlowDetail.tsx
|
|
27
|
+
import React, { useCallback, useEffect, useMemo, useState } from "react";
|
|
28
|
+
import { Checkbox, Stack, Switch, Text } from "@mantine/core";
|
|
29
|
+
import { IconAlertCircle, IconCheck } from "@tabler/icons-react";
|
|
30
|
+
function parseBatches(resolved) {
|
|
31
|
+
const trimmed = (resolved || "").trim();
|
|
32
|
+
if (!trimmed) return [];
|
|
33
|
+
try {
|
|
34
|
+
const parsed = JSON.parse(trimmed);
|
|
35
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
36
|
+
} catch {
|
|
37
|
+
return [];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
var HarvestFlowDetail = ({
|
|
41
|
+
inputs,
|
|
42
|
+
editor,
|
|
43
|
+
block,
|
|
44
|
+
runtime,
|
|
45
|
+
isDisabled,
|
|
46
|
+
provideSigningHandler,
|
|
47
|
+
unlockSigning,
|
|
48
|
+
registerRuntimeInputs,
|
|
49
|
+
executeAction
|
|
50
|
+
}) => {
|
|
51
|
+
const handlers = useBlocknoteHandlers();
|
|
52
|
+
const ownerAddress = useMemo(() => {
|
|
53
|
+
try {
|
|
54
|
+
return handlers?.getCurrentUser?.()?.address || "";
|
|
55
|
+
} catch {
|
|
56
|
+
return "";
|
|
57
|
+
}
|
|
58
|
+
}, [handlers]);
|
|
59
|
+
const parsed = useMemo(() => parseHarvestConfigInputs(inputs), [inputs]);
|
|
60
|
+
const editorDocument = editor?.document || [];
|
|
61
|
+
const runtimeReader = useRunRuntimeReader(editor);
|
|
62
|
+
const resolveOpts = useMemo(() => ({ yRuntime: runtimeReader }), [runtimeReader]);
|
|
63
|
+
const batches = useMemo(() => parseBatches(resolveReferences(parsed.batchesRef || "", editorDocument, resolveOpts)), [parsed.batchesRef, editorDocument, resolveOpts]);
|
|
64
|
+
const [harvestAll, setHarvestAll] = useState(true);
|
|
65
|
+
const [selectedIds, setSelectedIds] = useState(/* @__PURE__ */ new Set());
|
|
66
|
+
const [error, setError] = useState(null);
|
|
67
|
+
const effectiveBatches = useMemo(() => harvestAll ? batches : batches.filter((b) => selectedIds.has(b.id)), [harvestAll, batches, selectedIds]);
|
|
68
|
+
const effectiveCount = effectiveBatches.length;
|
|
69
|
+
const txHash = runtime.output?.transactionHash || "";
|
|
70
|
+
const harvestedAmount = runtime.output?.harvestedAmount ?? 0;
|
|
71
|
+
const isCompleted = runtime.state === "completed" && !!txHash;
|
|
72
|
+
const runtimeError = runtime.error?.message || null;
|
|
73
|
+
const toggle = useCallback((id) => {
|
|
74
|
+
setSelectedIds((prev) => {
|
|
75
|
+
const next = new Set(prev);
|
|
76
|
+
if (next.has(id)) next.delete(id);
|
|
77
|
+
else next.add(id);
|
|
78
|
+
return next;
|
|
79
|
+
});
|
|
80
|
+
}, []);
|
|
81
|
+
useEffect(() => {
|
|
82
|
+
unlockSigning?.(!isDisabled && !isCompleted && effectiveCount > 0 && !!ownerAddress);
|
|
83
|
+
}, [unlockSigning, isDisabled, isCompleted, effectiveCount, ownerAddress]);
|
|
84
|
+
useEffect(() => {
|
|
85
|
+
registerRuntimeInputs?.({
|
|
86
|
+
selectedBatchIds: harvestAll ? batches.map((b) => b.id) : Array.from(selectedIds),
|
|
87
|
+
harvestAll,
|
|
88
|
+
selectedBatches: effectiveBatches.map((b) => ({ id: b.id, claimable: Number(b.claimable) || 0, alsoKnownAs: b.alsoKnownAs }))
|
|
89
|
+
});
|
|
90
|
+
}, [registerRuntimeInputs, harvestAll, selectedIds, batches, effectiveBatches]);
|
|
91
|
+
useEffect(() => {
|
|
92
|
+
if (!provideSigningHandler) return;
|
|
93
|
+
provideSigningHandler(async () => {
|
|
94
|
+
setError(null);
|
|
95
|
+
if (!executeAction) {
|
|
96
|
+
setError("Harvest action executor is unavailable");
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
if (!ownerAddress) {
|
|
100
|
+
setError("No connected wallet address");
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
103
|
+
const tokens = effectiveBatches.map((b) => ({ id: b.id, entityDid: b.entityDid, adminAddress: b.adminAddress, claimable: b.claimable }));
|
|
104
|
+
if (tokens.length === 0) {
|
|
105
|
+
setError("No batches selected to harvest");
|
|
106
|
+
return;
|
|
107
|
+
}
|
|
108
|
+
console.log("[carbon.harvest] signing", { ownerAddress, count: tokens.length });
|
|
109
|
+
const outcome = await executeAction({
|
|
110
|
+
runtimeInputs: { ownerAddress, tokens }
|
|
111
|
+
});
|
|
112
|
+
if (!outcome.success) {
|
|
113
|
+
setError(outcome.error || "Harvest failed");
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}, [provideSigningHandler, executeAction, ownerAddress, effectiveBatches]);
|
|
117
|
+
return /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(Stack, { gap: 2 }, /* @__PURE__ */ React.createElement(Text, { fw: 600 }, block?.props?.title || "Harvest Carbon"), /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, block?.props?.description || "Claim credits from your entity accounts into your wallet.")), isCompleted ? /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconCheck, { size: 16 }), color: "green", title: "Harvested" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "Harvested ", harvestedAmount, " CARBON into your wallet."), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", style: { wordBreak: "break-all" } }, "Tx: ", txHash))) : batches.length === 0 ? /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "yellow", styles: actionAlertStyles }, "No harvestable batches. Configure the harvestable batches reference and ensure the upstream Load Carbon Batches block has run.") : /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Switch, { label: "Harvest all", checked: harvestAll, onChange: (event) => setHarvestAll(event.currentTarget.checked), disabled: isDisabled }), !harvestAll && /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, batches.map((b) => /* @__PURE__ */ React.createElement(
|
|
118
|
+
Checkbox,
|
|
119
|
+
{
|
|
120
|
+
key: b.id,
|
|
121
|
+
checked: selectedIds.has(b.id),
|
|
122
|
+
onChange: () => toggle(b.id),
|
|
123
|
+
disabled: isDisabled,
|
|
124
|
+
label: /* @__PURE__ */ React.createElement(Text, { size: "sm" }, b.alsoKnownAs || b.id, " \u2014", " ", /* @__PURE__ */ React.createElement(Text, { span: true, fw: 600 }, b.claimable), " ", "CARBON")
|
|
125
|
+
}
|
|
126
|
+
))), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, effectiveCount, " batch", effectiveCount === 1 ? "" : "es", " selected \xB7 ", effectiveBatches.reduce((s, b) => s + (Number(b.claimable) || 0), 0), " CARBON"), !ownerAddress && /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "red" }, "No connected wallet \u2014 connect a wallet to harvest.")), (error || runtimeError) && !isCompleted && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconAlertCircle, { size: 16 }), color: "red", styles: actionAlertStyles }, error || runtimeError));
|
|
127
|
+
};
|
|
128
|
+
export {
|
|
129
|
+
HarvestFlowDetail
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=HarvestFlowDetail-X3RUH3X3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/mantine/blocks/action/actionTypes/carbon/harvest/HarvestFlowDetail.tsx"],"sourcesContent":["import { useRunRuntimeReader } from '@/mantine/hooks/useRunRuntimeReader';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Checkbox, Stack, Switch, Text } from '@mantine/core';\nimport { DismissibleAlert as Alert } from '@/mantine/components/Base/DismissibleAlert';\nimport { IconAlertCircle, IconCheck } from '@tabler/icons-react';\nimport { resolveReferences } from '@/mantine/utils/referenceResolver';\nimport { useBlocknoteHandlers } from '@/mantine/context/BlocknoteContext';\nimport type { ActionTypeFlowProps } from '../../../actionTypeUI';\nimport type { CarbonHarvestableBatch, CarbonHarvestRuntimeInputs } from '@/core/lib/actionRegistry/actions/carbon/types';\nimport { actionAlertStyles } from '../../../alertStyles';\nimport { parseHarvestConfigInputs } from './types';\n\nfunction parseBatches(resolved: string): CarbonHarvestableBatch[] {\n const trimmed = (resolved || '').trim();\n if (!trimmed) return [];\n try {\n const parsed = JSON.parse(trimmed);\n return Array.isArray(parsed) ? (parsed as CarbonHarvestableBatch[]) : [];\n } catch {\n return [];\n }\n}\n\nexport const HarvestFlowDetail: React.FC<ActionTypeFlowProps<CarbonHarvestRuntimeInputs>> = ({\n inputs,\n editor,\n block,\n runtime,\n isDisabled,\n provideSigningHandler,\n unlockSigning,\n registerRuntimeInputs,\n executeAction,\n}) => {\n const handlers = useBlocknoteHandlers();\n const ownerAddress = useMemo(() => {\n try {\n return handlers?.getCurrentUser?.()?.address || '';\n } catch {\n return '';\n }\n }, [handlers]);\n\n const parsed = useMemo(() => parseHarvestConfigInputs(inputs), [inputs]);\n const editorDocument = editor?.document || [];\n const runtimeReader = useRunRuntimeReader(editor);\n const resolveOpts = useMemo(() => ({ yRuntime: runtimeReader }), [runtimeReader]);\n const batches = useMemo(() => parseBatches(resolveReferences(parsed.batchesRef || '', editorDocument, resolveOpts)), [parsed.batchesRef, editorDocument, resolveOpts]);\n\n const [harvestAll, setHarvestAll] = useState(true);\n const [selectedIds, setSelectedIds] = useState<Set<string>>(new Set());\n const [error, setError] = useState<string | null>(null);\n\n const effectiveBatches = useMemo(() => (harvestAll ? batches : batches.filter((b) => selectedIds.has(b.id))), [harvestAll, batches, selectedIds]);\n const effectiveCount = effectiveBatches.length;\n\n // Runtime-derived state — source of truth. No local mirror of completion.\n const txHash: string = runtime.output?.transactionHash || '';\n const harvestedAmount: number = runtime.output?.harvestedAmount ?? 0;\n const isCompleted = runtime.state === 'completed' && !!txHash;\n const runtimeError = runtime.error?.message || null;\n\n const toggle = useCallback((id: string) => {\n setSelectedIds((prev) => {\n const next = new Set(prev);\n if (next.has(id)) next.delete(id);\n else next.add(id);\n return next;\n });\n }, []);\n\n // Gate the slider on a valid, non-empty selection and an owner address.\n useEffect(() => {\n unlockSigning?.(!isDisabled && !isCompleted && effectiveCount > 0 && !!ownerAddress);\n }, [unlockSigning, isDisabled, isCompleted, effectiveCount, ownerAddress]);\n\n // Push the selection to the parent so the diff resolver sees it. Include the\n // resolved per-batch detail so the diff doesn't have to re-resolve the ref.\n useEffect(() => {\n registerRuntimeInputs?.({\n selectedBatchIds: harvestAll ? batches.map((b) => b.id) : Array.from(selectedIds),\n harvestAll,\n selectedBatches: effectiveBatches.map((b) => ({ id: b.id, claimable: Number(b.claimable) || 0, alsoKnownAs: b.alsoKnownAs })),\n });\n }, [registerRuntimeInputs, harvestAll, selectedIds, batches, effectiveBatches]);\n\n // The slider calls this when the user slides to sign.\n useEffect(() => {\n if (!provideSigningHandler) return;\n provideSigningHandler(async () => {\n setError(null);\n if (!executeAction) {\n setError('Harvest action executor is unavailable');\n return;\n }\n if (!ownerAddress) {\n setError('No connected wallet address');\n return;\n }\n const tokens = effectiveBatches.map((b) => ({ id: b.id, entityDid: b.entityDid, adminAddress: b.adminAddress, claimable: b.claimable }));\n if (tokens.length === 0) {\n setError('No batches selected to harvest');\n return;\n }\n console.log('[carbon.harvest] signing', { ownerAddress, count: tokens.length });\n const outcome = await executeAction({\n runtimeInputs: { ownerAddress, tokens } as unknown as CarbonHarvestRuntimeInputs,\n });\n if (!outcome.success) {\n setError(outcome.error || 'Harvest failed');\n }\n });\n }, [provideSigningHandler, executeAction, ownerAddress, effectiveBatches]);\n\n return (\n <Stack gap=\"md\">\n <Stack gap={2}>\n <Text fw={600}>{block?.props?.title || 'Harvest Carbon'}</Text>\n <Text size=\"sm\" c=\"dimmed\">\n {block?.props?.description || 'Claim credits from your entity accounts into your wallet.'}\n </Text>\n </Stack>\n\n {isCompleted ? (\n <Alert icon={<IconCheck size={16} />} color=\"green\" title=\"Harvested\">\n <Stack gap=\"xs\">\n <Text size=\"sm\">Harvested {harvestedAmount} CARBON into your wallet.</Text>\n <Text size=\"xs\" c=\"dimmed\" style={{ wordBreak: 'break-all' }}>\n Tx: {txHash}\n </Text>\n </Stack>\n </Alert>\n ) : batches.length === 0 ? (\n <Alert color=\"yellow\" styles={actionAlertStyles}>\n No harvestable batches. Configure the harvestable batches reference and ensure the upstream Load Carbon Batches block has run.\n </Alert>\n ) : (\n <>\n <Switch label=\"Harvest all\" checked={harvestAll} onChange={(event) => setHarvestAll(event.currentTarget.checked)} disabled={isDisabled} />\n {!harvestAll && (\n <Stack gap=\"xs\">\n {batches.map((b) => (\n <Checkbox\n key={b.id}\n checked={selectedIds.has(b.id)}\n onChange={() => toggle(b.id)}\n disabled={isDisabled}\n label={\n <Text size=\"sm\">\n {b.alsoKnownAs || b.id} —{' '}\n <Text span fw={600}>\n {b.claimable}\n </Text>{' '}\n CARBON\n </Text>\n }\n />\n ))}\n </Stack>\n )}\n <Text size=\"xs\" c=\"dimmed\">\n {effectiveCount} batch{effectiveCount === 1 ? '' : 'es'} selected · {effectiveBatches.reduce((s, b) => s + (Number(b.claimable) || 0), 0)} CARBON\n </Text>\n {!ownerAddress && (\n <Text size=\"xs\" c=\"red\">\n No connected wallet — connect a wallet to harvest.\n </Text>\n )}\n </>\n )}\n\n {(error || runtimeError) && !isCompleted && (\n <Alert icon={<IconAlertCircle size={16} />} color=\"red\" styles={actionAlertStyles}>\n {error || runtimeError}\n </Alert>\n )}\n </Stack>\n );\n};\n"],"mappings":"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","names":[]}
|