@ixo/editor 6.33.0 → 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.
Files changed (526) hide show
  1. package/dist/BidConfig-YLGSEIOS.js +154 -0
  2. package/dist/BidConfig-YLGSEIOS.js.map +1 -0
  3. package/dist/BidFlowDetail-TJCJBJZZ.js +365 -0
  4. package/dist/BidFlowDetail-TJCJBJZZ.js.map +1 -0
  5. package/dist/CalendarEventCreateConfig-J2LU6LJO.js +155 -0
  6. package/dist/CalendarEventCreateConfig-J2LU6LJO.js.map +1 -0
  7. package/dist/CalendarEventCreateFlowDetail-ZWHZWDOK.js +174 -0
  8. package/dist/CalendarEventCreateFlowDetail-ZWHZWDOK.js.map +1 -0
  9. package/dist/CalendarEventListConfig-GQNNF4ZB.js +116 -0
  10. package/dist/CalendarEventListConfig-GQNNF4ZB.js.map +1 -0
  11. package/dist/CalendarEventListFlowDetail-SSRTOXIX.js +58 -0
  12. package/dist/CalendarEventListFlowDetail-SSRTOXIX.js.map +1 -0
  13. package/dist/CalendarEventUpdateConfig-KACZA6GH.js +133 -0
  14. package/dist/CalendarEventUpdateConfig-KACZA6GH.js.map +1 -0
  15. package/dist/CalendarEventUpdateFlowDetail-CD6NHHOU.js +155 -0
  16. package/dist/CalendarEventUpdateFlowDetail-CD6NHHOU.js.map +1 -0
  17. package/dist/ClaimConfig-3HKPGK55.js +200 -0
  18. package/dist/ClaimConfig-3HKPGK55.js.map +1 -0
  19. package/dist/ClaimFlowDetail-UVEQMEI5.js +641 -0
  20. package/dist/ClaimFlowDetail-UVEQMEI5.js.map +1 -0
  21. package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js +149 -0
  22. package/dist/CollectionLifecycleConfig-LCCGZ3CJ.js.map +1 -0
  23. package/dist/CollectionLifecycleFlowDetail-WFCSVIIG.js +647 -0
  24. package/dist/CollectionLifecycleFlowDetail-WFCSVIIG.js.map +1 -0
  25. package/dist/CollectionUsersConfig-RI2X3YY2.js +271 -0
  26. package/dist/CollectionUsersConfig-RI2X3YY2.js.map +1 -0
  27. package/dist/CollectionUsersFlowDetail-ZLCJBWHG.js +1276 -0
  28. package/dist/CollectionUsersFlowDetail-ZLCJBWHG.js.map +1 -0
  29. package/dist/CredentialStoreConfig-G66AQDGZ.js +75 -0
  30. package/dist/CredentialStoreConfig-G66AQDGZ.js.map +1 -0
  31. package/dist/CredentialStoreFlowDetail-FL7QAM3S.js +99 -0
  32. package/dist/CredentialStoreFlowDetail-FL7QAM3S.js.map +1 -0
  33. package/dist/DesignPodConfig-LJ7H2CZ6.js +8 -0
  34. package/dist/DesignPodConfig-LJ7H2CZ6.js.map +1 -0
  35. package/dist/DesignPodFlowDetail-JHJWGNVY.js +309 -0
  36. package/dist/DesignPodFlowDetail-JHJWGNVY.js.map +1 -0
  37. package/dist/DomainCardPreviewConfig-Q3X5M4WF.js +37 -0
  38. package/dist/DomainCardPreviewConfig-Q3X5M4WF.js.map +1 -0
  39. package/dist/DomainCardPreviewFlowDetail-Y2FE7O5Z.js +131 -0
  40. package/dist/DomainCardPreviewFlowDetail-Y2FE7O5Z.js.map +1 -0
  41. package/dist/DomainIndexerLookupConfig-N4VONQUY.js +41 -0
  42. package/dist/DomainIndexerLookupConfig-N4VONQUY.js.map +1 -0
  43. package/dist/DomainIndexerLookupFlowDetail-GJ7WWK7I.js +70 -0
  44. package/dist/DomainIndexerLookupFlowDetail-GJ7WWK7I.js.map +1 -0
  45. package/dist/DomainSignConfig-XFIXROVK.js +47 -0
  46. package/dist/DomainSignConfig-XFIXROVK.js.map +1 -0
  47. package/dist/DomainSignFlowDetail-BXZ6JBPR.js +206 -0
  48. package/dist/DomainSignFlowDetail-BXZ6JBPR.js.map +1 -0
  49. package/dist/DomainSingleSelectionConfig-ZNKIXB4P.js +101 -0
  50. package/dist/DomainSingleSelectionConfig-ZNKIXB4P.js.map +1 -0
  51. package/dist/DomainSingleSelectionFlowDetail-HWTQXSLA.js +147 -0
  52. package/dist/DomainSingleSelectionFlowDetail-HWTQXSLA.js.map +1 -0
  53. package/dist/EmailSendConfig-YEGZ5Q77.js +215 -0
  54. package/dist/EmailSendConfig-YEGZ5Q77.js.map +1 -0
  55. package/dist/EntityCreateOracleConfig-UZ6ZIMP5.js +150 -0
  56. package/dist/EntityCreateOracleConfig-UZ6ZIMP5.js.map +1 -0
  57. package/dist/EntityCreateOracleFlowDetail-H2X7CPYU.js +120 -0
  58. package/dist/EntityCreateOracleFlowDetail-H2X7CPYU.js.map +1 -0
  59. package/dist/EntitySingleSelectionConfig-DL57KNKM.js +30 -0
  60. package/dist/EntitySingleSelectionConfig-DL57KNKM.js.map +1 -0
  61. package/dist/EntitySingleSelectionFlowDetail-GFQGX3GA.js +118 -0
  62. package/dist/EntitySingleSelectionFlowDetail-GFQGX3GA.js.map +1 -0
  63. package/dist/EntityTransferConfig-JVZ3H35B.js +62 -0
  64. package/dist/EntityTransferConfig-JVZ3H35B.js.map +1 -0
  65. package/dist/EntityTransferFlowDetail-XEXM34XB.js +132 -0
  66. package/dist/EntityTransferFlowDetail-XEXM34XB.js.map +1 -0
  67. package/dist/EvalEngineConfig-CHC4IRN3.js +464 -0
  68. package/dist/EvalEngineConfig-CHC4IRN3.js.map +1 -0
  69. package/dist/EvalEngineFlowDetail-PUFRNO4U.js +4291 -0
  70. package/dist/EvalEngineFlowDetail-PUFRNO4U.js.map +1 -0
  71. package/dist/EvaluateBidConfig-OE4CM43G.js +151 -0
  72. package/dist/EvaluateBidConfig-OE4CM43G.js.map +1 -0
  73. package/dist/EvaluateBidFlowDetail-2S2N4YTW.js +564 -0
  74. package/dist/EvaluateBidFlowDetail-2S2N4YTW.js.map +1 -0
  75. package/dist/EvaluateClaimConfig-3D4F5LHU.js +297 -0
  76. package/dist/EvaluateClaimConfig-3D4F5LHU.js.map +1 -0
  77. package/dist/EvaluateClaimFlowDetail-QYR7PJRD.js +2237 -0
  78. package/dist/EvaluateClaimFlowDetail-QYR7PJRD.js.map +1 -0
  79. package/dist/FormSubmitConfig-UFZYMLUN.js +59 -0
  80. package/dist/FormSubmitConfig-UFZYMLUN.js.map +1 -0
  81. package/dist/FormSubmitFlowDetail-IAHDJS6P.js +169 -0
  82. package/dist/FormSubmitFlowDetail-IAHDJS6P.js.map +1 -0
  83. package/dist/GovernanceAuthzExecFlowDetail-SQBGU5BX.js +166 -0
  84. package/dist/GovernanceAuthzExecFlowDetail-SQBGU5BX.js.map +1 -0
  85. package/dist/GovernanceAuthzGrantFlowDetail-DZPNLANT.js +88 -0
  86. package/dist/GovernanceAuthzGrantFlowDetail-DZPNLANT.js.map +1 -0
  87. package/dist/GovernanceAuthzRevokeFlowDetail-3JZ4IUJG.js +88 -0
  88. package/dist/GovernanceAuthzRevokeFlowDetail-3JZ4IUJG.js.map +1 -0
  89. package/dist/GovernanceChainVoteFlowDetail-475UDNG6.js +83 -0
  90. package/dist/GovernanceChainVoteFlowDetail-475UDNG6.js.map +1 -0
  91. package/dist/GovernanceConfigConfig-V3WM4WBP.js +30 -0
  92. package/dist/GovernanceConfigConfig-V3WM4WBP.js.map +1 -0
  93. package/dist/GovernanceConfigFlowDetail-SQ5PPDRX.js +267 -0
  94. package/dist/GovernanceConfigFlowDetail-SQ5PPDRX.js.map +1 -0
  95. package/dist/GovernanceContractExecuteFlowDetail-H2ZV6W2E.js +113 -0
  96. package/dist/GovernanceContractExecuteFlowDetail-H2ZV6W2E.js.map +1 -0
  97. package/dist/GovernanceContractInstantiateFlowDetail-YJJMGM54.js +144 -0
  98. package/dist/GovernanceContractInstantiateFlowDetail-YJJMGM54.js.map +1 -0
  99. package/dist/GovernanceContractManageCw20FlowDetail-OCBMW3YJ.js +72 -0
  100. package/dist/GovernanceContractManageCw20FlowDetail-OCBMW3YJ.js.map +1 -0
  101. package/dist/GovernanceContractMigrateFlowDetail-JDNIKTT3.js +104 -0
  102. package/dist/GovernanceContractMigrateFlowDetail-JDNIKTT3.js.map +1 -0
  103. package/dist/GovernanceContractUpdateAdminFlowDetail-SZBOAOCC.js +68 -0
  104. package/dist/GovernanceContractUpdateAdminFlowDetail-SZBOAOCC.js.map +1 -0
  105. package/dist/GovernanceCustomMessageFlowDetail-CXD4ZATO.js +78 -0
  106. package/dist/GovernanceCustomMessageFlowDetail-CXD4ZATO.js.map +1 -0
  107. package/dist/GovernanceDaoAcceptToMarketplaceFlowDetail-Q6ZBNY7Z.js +98 -0
  108. package/dist/GovernanceDaoAcceptToMarketplaceFlowDetail-Q6ZBNY7Z.js.map +1 -0
  109. package/dist/GovernanceDaoAdminExecFlowDetail-JAEAY2US.js +94 -0
  110. package/dist/GovernanceDaoAdminExecFlowDetail-JAEAY2US.js.map +1 -0
  111. package/dist/GovernanceDaoCreateEntityFlowDetail-7RVNTVAB.js +96 -0
  112. package/dist/GovernanceDaoCreateEntityFlowDetail-7RVNTVAB.js.map +1 -0
  113. package/dist/GovernanceDaoJoinFlowDetail-XYCTCNHO.js +68 -0
  114. package/dist/GovernanceDaoJoinFlowDetail-XYCTCNHO.js.map +1 -0
  115. package/dist/GovernanceDaoManageStorageFlowDetail-LMLYLYYC.js +93 -0
  116. package/dist/GovernanceDaoManageStorageFlowDetail-LMLYLYYC.js.map +1 -0
  117. package/dist/GovernanceDaoManageSubDaosFlowDetail-YUFQ67JN.js +84 -0
  118. package/dist/GovernanceDaoManageSubDaosFlowDetail-YUFQ67JN.js.map +1 -0
  119. package/dist/GovernanceDaoUpdateInfoFlowDetail-G5FIBY4L.js +104 -0
  120. package/dist/GovernanceDaoUpdateInfoFlowDetail-G5FIBY4L.js.map +1 -0
  121. package/dist/GovernanceMemberProposalConfig-IGPXEFDB.js +42 -0
  122. package/dist/GovernanceMemberProposalConfig-IGPXEFDB.js.map +1 -0
  123. package/dist/GovernanceMemberProposalFlowDetail-T3VURONF.js +240 -0
  124. package/dist/GovernanceMemberProposalFlowDetail-T3VURONF.js.map +1 -0
  125. package/dist/GovernanceNftBurnFlowDetail-AG4I2O7H.js +69 -0
  126. package/dist/GovernanceNftBurnFlowDetail-AG4I2O7H.js.map +1 -0
  127. package/dist/GovernanceNftManageCollectionsFlowDetail-UAAGO3Q6.js +71 -0
  128. package/dist/GovernanceNftManageCollectionsFlowDetail-UAAGO3Q6.js.map +1 -0
  129. package/dist/GovernanceNftTransferFlowDetail-KXM7DTOV.js +130 -0
  130. package/dist/GovernanceNftTransferFlowDetail-KXM7DTOV.js.map +1 -0
  131. package/dist/GovernanceSettingsProposalConfig-4SLJTBLW.js +42 -0
  132. package/dist/GovernanceSettingsProposalConfig-4SLJTBLW.js.map +1 -0
  133. package/dist/GovernanceSettingsProposalFlowDetail-VFZPSCLR.js +165 -0
  134. package/dist/GovernanceSettingsProposalFlowDetail-VFZPSCLR.js.map +1 -0
  135. package/dist/GovernanceStakingStakeFlowDetail-ULLJ7FLM.js +123 -0
  136. package/dist/GovernanceStakingStakeFlowDetail-ULLJ7FLM.js.map +1 -0
  137. package/dist/GovernanceStakingStakeToGroupFlowDetail-CSPKJA3H.js +84 -0
  138. package/dist/GovernanceStakingStakeToGroupFlowDetail-CSPKJA3H.js.map +1 -0
  139. package/dist/GovernanceSubmissionConfigProposalFlowDetail-MZCPSZF2.js +111 -0
  140. package/dist/GovernanceSubmissionConfigProposalFlowDetail-MZCPSZF2.js.map +1 -0
  141. package/dist/GovernanceTransactionMintFlowDetail-Y2WRAODH.js +66 -0
  142. package/dist/GovernanceTransactionMintFlowDetail-Y2WRAODH.js.map +1 -0
  143. package/dist/GovernanceTransactionPerformTokenSwapFlowDetail-GEK6PMMI.js +133 -0
  144. package/dist/GovernanceTransactionPerformTokenSwapFlowDetail-GEK6PMMI.js.map +1 -0
  145. package/dist/GovernanceTransactionSendFundsConfig-VBKMLSF3.js +42 -0
  146. package/dist/GovernanceTransactionSendFundsConfig-VBKMLSF3.js.map +1 -0
  147. package/dist/GovernanceTransactionSendFundsFlowDetail-5TZB64VL.js +182 -0
  148. package/dist/GovernanceTransactionSendFundsFlowDetail-5TZB64VL.js.map +1 -0
  149. package/dist/GovernanceTransactionSendGroupTokenFlowDetail-EGOWVZM2.js +155 -0
  150. package/dist/GovernanceTransactionSendGroupTokenFlowDetail-EGOWVZM2.js.map +1 -0
  151. package/dist/GovernanceTransactionWithdrawTokenSwapFlowDetail-6XWVO5O6.js +56 -0
  152. package/dist/GovernanceTransactionWithdrawTokenSwapFlowDetail-6XWVO5O6.js.map +1 -0
  153. package/dist/GovernanceValidatorActionsFlowDetail-ZMLPAFUB.js +117 -0
  154. package/dist/GovernanceValidatorActionsFlowDetail-ZMLPAFUB.js.map +1 -0
  155. package/dist/HarvestConfig-AIGOGBFR.js +56 -0
  156. package/dist/HarvestConfig-AIGOGBFR.js.map +1 -0
  157. package/dist/HarvestFlowDetail-X3RUH3X3.js +131 -0
  158. package/dist/HarvestFlowDetail-X3RUH3X3.js.map +1 -0
  159. package/dist/HttpRequestConfig-OQEJIIJY.js +194 -0
  160. package/dist/HttpRequestConfig-OQEJIIJY.js.map +1 -0
  161. package/dist/HttpRequestFlowDetail-JVLV533Z.js +116 -0
  162. package/dist/HttpRequestFlowDetail-JVLV533Z.js.map +1 -0
  163. package/dist/IdentityCreateConfig-ZBUOJ6AL.js +94 -0
  164. package/dist/IdentityCreateConfig-ZBUOJ6AL.js.map +1 -0
  165. package/dist/IdentityCreateFlowDetail-WGKO43IH.js +83 -0
  166. package/dist/IdentityCreateFlowDetail-WGKO43IH.js.map +1 -0
  167. package/dist/IidCreateConfig-RRV2DYXI.js +75 -0
  168. package/dist/IidCreateConfig-RRV2DYXI.js.map +1 -0
  169. package/dist/IidCreateFlowDetail-6M32S6XS.js +57 -0
  170. package/dist/IidCreateFlowDetail-6M32S6XS.js.map +1 -0
  171. package/dist/KycVerifyConfig-VCG65K5K.js +65 -0
  172. package/dist/KycVerifyConfig-VCG65K5K.js.map +1 -0
  173. package/dist/KycVerifyFlowDetail-EWOMXSD3.js +421 -0
  174. package/dist/KycVerifyFlowDetail-EWOMXSD3.js.map +1 -0
  175. package/dist/ListDomainFlowsConfig-3JZEPTOJ.js +37 -0
  176. package/dist/ListDomainFlowsConfig-3JZEPTOJ.js.map +1 -0
  177. package/dist/ListDomainFlowsFlowDetail-XX5AXDZZ.js +257 -0
  178. package/dist/ListDomainFlowsFlowDetail-XX5AXDZZ.js.map +1 -0
  179. package/dist/LoadBatchesConfig-IMODIWRT.js +38 -0
  180. package/dist/LoadBatchesConfig-IMODIWRT.js.map +1 -0
  181. package/dist/LoadBatchesFlowDetail-GB24T76O.js +101 -0
  182. package/dist/LoadBatchesFlowDetail-GB24T76O.js.map +1 -0
  183. package/dist/MatrixDmConfig-NBII27CS.js +120 -0
  184. package/dist/MatrixDmConfig-NBII27CS.js.map +1 -0
  185. package/dist/MatrixRegisterConfig-N2U4FBYF.js +62 -0
  186. package/dist/MatrixRegisterConfig-N2U4FBYF.js.map +1 -0
  187. package/dist/MatrixRegisterFlowDetail-D5YNL5QX.js +86 -0
  188. package/dist/MatrixRegisterFlowDetail-D5YNL5QX.js.map +1 -0
  189. package/dist/MemberMultiSelectConfig-E7WUB2WD.js +30 -0
  190. package/dist/MemberMultiSelectConfig-E7WUB2WD.js.map +1 -0
  191. package/dist/MemberMultiSelectFlowDetail-6C4ZMSDR.js +392 -0
  192. package/dist/MemberMultiSelectFlowDetail-6C4ZMSDR.js.map +1 -0
  193. package/dist/OracleConfig-R7TDTTKN.js +56 -0
  194. package/dist/OracleConfig-R7TDTTKN.js.map +1 -0
  195. package/dist/OracleConfigureOracleConfig-QFF74X3N.js +198 -0
  196. package/dist/OracleConfigureOracleConfig-QFF74X3N.js.map +1 -0
  197. package/dist/OracleConfigureOracleFlowDetail-73BHAN76.js +255 -0
  198. package/dist/OracleConfigureOracleFlowDetail-73BHAN76.js.map +1 -0
  199. package/dist/OracleContractConfig-PHY5L7W2.js +38 -0
  200. package/dist/OracleContractConfig-PHY5L7W2.js.map +1 -0
  201. package/dist/OracleContractFlowDetail-M3PM4AU4.js +78 -0
  202. package/dist/OracleContractFlowDetail-M3PM4AU4.js.map +1 -0
  203. package/dist/OracleDeployConfig-QBG76ATZ.js +10 -0
  204. package/dist/OracleDeployConfig-QBG76ATZ.js.map +1 -0
  205. package/dist/OracleDeployFlowDetail-WKTMD2AD.js +231 -0
  206. package/dist/OracleDeployFlowDetail-WKTMD2AD.js.map +1 -0
  207. package/dist/OracleDeploySetupConfig-75XPGFJQ.js +10 -0
  208. package/dist/OracleDeploySetupConfig-75XPGFJQ.js.map +1 -0
  209. package/dist/OracleDeploySetupFlowDetail-R3BQ7EAU.js +165 -0
  210. package/dist/OracleDeploySetupFlowDetail-R3BQ7EAU.js.map +1 -0
  211. package/dist/OracleDeployStartConfig-NA6GZ4VQ.js +10 -0
  212. package/dist/OracleDeployStartConfig-NA6GZ4VQ.js.map +1 -0
  213. package/dist/OracleDeployStartFlowDetail-EL3CMDMG.js +89 -0
  214. package/dist/OracleDeployStartFlowDetail-EL3CMDMG.js.map +1 -0
  215. package/dist/OracleFlowDetail-5JCJK3GH.js +76 -0
  216. package/dist/OracleFlowDetail-5JCJK3GH.js.map +1 -0
  217. package/dist/OraclePromptConfig-YBRESISH.js +39 -0
  218. package/dist/OraclePromptConfig-YBRESISH.js.map +1 -0
  219. package/dist/OraclePromptFlowDetail-O3XNK7HY.js +112 -0
  220. package/dist/OraclePromptFlowDetail-O3XNK7HY.js.map +1 -0
  221. package/dist/OracleStoreConfigConfig-TUZWTJMA.js +134 -0
  222. package/dist/OracleStoreConfigConfig-TUZWTJMA.js.map +1 -0
  223. package/dist/OracleStoreConfigFlowDetail-Q6AUUSUL.js +99 -0
  224. package/dist/OracleStoreConfigFlowDetail-Q6AUUSUL.js.map +1 -0
  225. package/dist/OracleStoreSecretsAndConfigConfig-SZPYEK7U.js +198 -0
  226. package/dist/OracleStoreSecretsAndConfigConfig-SZPYEK7U.js.map +1 -0
  227. package/dist/OracleStoreSecretsAndConfigFlowDetail-BFV2EHLT.js +220 -0
  228. package/dist/OracleStoreSecretsAndConfigFlowDetail-BFV2EHLT.js.map +1 -0
  229. package/dist/OracleStoreSecretsConfig-PQMF7LFT.js +191 -0
  230. package/dist/OracleStoreSecretsConfig-PQMF7LFT.js.map +1 -0
  231. package/dist/OracleStoreSecretsFlowDetail-DNNOPHVA.js +197 -0
  232. package/dist/OracleStoreSecretsFlowDetail-DNNOPHVA.js.map +1 -0
  233. package/dist/ProposalCreateConfig-U5IHZNT7.js +161 -0
  234. package/dist/ProposalCreateConfig-U5IHZNT7.js.map +1 -0
  235. package/dist/ProposalCreateFlowDetail-4VZZPAWH.js +235 -0
  236. package/dist/ProposalCreateFlowDetail-4VZZPAWH.js.map +1 -0
  237. package/dist/ProposalVoteConfig-MH4MU7SL.js +150 -0
  238. package/dist/ProposalVoteConfig-MH4MU7SL.js.map +1 -0
  239. package/dist/ProposalVoteFlowDetail-IJJ3OHAB.js +280 -0
  240. package/dist/ProposalVoteFlowDetail-IJJ3OHAB.js.map +1 -0
  241. package/dist/ProtocolSelectConfig-S5U3P6K7.js +48 -0
  242. package/dist/ProtocolSelectConfig-S5U3P6K7.js.map +1 -0
  243. package/dist/ProtocolSelectFlowDetail-XBSJIEIH.js +116 -0
  244. package/dist/ProtocolSelectFlowDetail-XBSJIEIH.js.map +1 -0
  245. package/dist/RetireConfig-MV37WWZ6.js +59 -0
  246. package/dist/RetireConfig-MV37WWZ6.js.map +1 -0
  247. package/dist/RetireFlowDetail-VZ5O4SXI.js +147 -0
  248. package/dist/RetireFlowDetail-VZ5O4SXI.js.map +1 -0
  249. package/dist/SandboxProvisionConfig-ZGG4IRHM.js +46 -0
  250. package/dist/SandboxProvisionConfig-ZGG4IRHM.js.map +1 -0
  251. package/dist/SandboxProvisionFlowDetail-RUY64INV.js +79 -0
  252. package/dist/SandboxProvisionFlowDetail-RUY64INV.js.map +1 -0
  253. package/dist/WalletFundConfig-CMM3EP3B.js +117 -0
  254. package/dist/WalletFundConfig-CMM3EP3B.js.map +1 -0
  255. package/dist/WalletFundFlowDetail-TXWCZA4K.js +279 -0
  256. package/dist/WalletFundFlowDetail-TXWCZA4K.js.map +1 -0
  257. package/dist/WalletGenerateAndFundConfig-364RSEND.js +10 -0
  258. package/dist/WalletGenerateAndFundConfig-364RSEND.js.map +1 -0
  259. package/dist/WalletGenerateAndFundFlowDetail-C2LZW3NO.js +54 -0
  260. package/dist/WalletGenerateAndFundFlowDetail-C2LZW3NO.js.map +1 -0
  261. package/dist/WalletGenerateConfig-YYLCS65G.js +10 -0
  262. package/dist/WalletGenerateConfig-YYLCS65G.js.map +1 -0
  263. package/dist/WalletGenerateFlowDetail-CQCNDGJA.js +53 -0
  264. package/dist/WalletGenerateFlowDetail-CQCNDGJA.js.map +1 -0
  265. package/dist/XeroContactCreateConfig-OWG5PA3B.js +102 -0
  266. package/dist/XeroContactCreateConfig-OWG5PA3B.js.map +1 -0
  267. package/dist/XeroContactCreateFlowDetail-6MAINCF6.js +127 -0
  268. package/dist/XeroContactCreateFlowDetail-6MAINCF6.js.map +1 -0
  269. package/dist/XeroInvoiceCreateConfig-O74RUSZM.js +403 -0
  270. package/dist/XeroInvoiceCreateConfig-O74RUSZM.js.map +1 -0
  271. package/dist/XeroInvoiceCreateFlowDetail-UL7KS6CZ.js +631 -0
  272. package/dist/XeroInvoiceCreateFlowDetail-UL7KS6CZ.js.map +1 -0
  273. package/dist/XeroInvoiceListConfig-UR3GONBJ.js +113 -0
  274. package/dist/XeroInvoiceListConfig-UR3GONBJ.js.map +1 -0
  275. package/dist/XeroInvoiceListFlowDetail-LYHODWH6.js +58 -0
  276. package/dist/XeroInvoiceListFlowDetail-LYHODWH6.js.map +1 -0
  277. package/dist/XeroPaymentCreateConfig-RPMAIK6E.js +116 -0
  278. package/dist/XeroPaymentCreateConfig-RPMAIK6E.js.map +1 -0
  279. package/dist/XeroPaymentCreateFlowDetail-CF35MVIM.js +573 -0
  280. package/dist/XeroPaymentCreateFlowDetail-CF35MVIM.js.map +1 -0
  281. package/dist/action-manifest.json +2091 -393
  282. package/dist/chunk-2GAYKKTL.js +9 -0
  283. package/dist/chunk-2GAYKKTL.js.map +1 -0
  284. package/dist/chunk-2WPEATI7.js +315 -0
  285. package/dist/chunk-2WPEATI7.js.map +1 -0
  286. package/dist/chunk-3O42FYT3.js +3333 -0
  287. package/dist/chunk-3O42FYT3.js.map +1 -0
  288. package/dist/chunk-3TUYY4HK.js +20 -0
  289. package/dist/chunk-3TUYY4HK.js.map +1 -0
  290. package/dist/chunk-3XSLBJYI.js +554 -0
  291. package/dist/chunk-3XSLBJYI.js.map +1 -0
  292. package/dist/chunk-4DGCCXD6.js +710 -0
  293. package/dist/chunk-4DGCCXD6.js.map +1 -0
  294. package/dist/chunk-4NAFQF6V.js +11 -0
  295. package/dist/chunk-4NAFQF6V.js.map +1 -0
  296. package/dist/chunk-4PONO4US.js +799 -0
  297. package/dist/chunk-4PONO4US.js.map +1 -0
  298. package/dist/chunk-4TMOIK5M.js +21 -0
  299. package/dist/chunk-4TMOIK5M.js.map +1 -0
  300. package/dist/chunk-5IH3VC5I.js +102 -0
  301. package/dist/chunk-5IH3VC5I.js.map +1 -0
  302. package/dist/chunk-5NTKDOP6.js +89 -0
  303. package/dist/chunk-5NTKDOP6.js.map +1 -0
  304. package/dist/chunk-5O2SFRGU.js +18 -0
  305. package/dist/chunk-5O2SFRGU.js.map +1 -0
  306. package/dist/chunk-632JLECF.js +55 -0
  307. package/dist/chunk-632JLECF.js.map +1 -0
  308. package/dist/chunk-676HDB7K.js +95 -0
  309. package/dist/chunk-676HDB7K.js.map +1 -0
  310. package/dist/chunk-6ESTNTSH.js +223 -0
  311. package/dist/chunk-6ESTNTSH.js.map +1 -0
  312. package/dist/chunk-6GKJR52N.js +15 -0
  313. package/dist/chunk-6GKJR52N.js.map +1 -0
  314. package/dist/chunk-6L4ZIKYU.js +23 -0
  315. package/dist/chunk-6L4ZIKYU.js.map +1 -0
  316. package/dist/chunk-76YX5R4L.js +11 -0
  317. package/dist/chunk-76YX5R4L.js.map +1 -0
  318. package/dist/chunk-7J3GFMN3.js +32 -0
  319. package/dist/chunk-7J3GFMN3.js.map +1 -0
  320. package/dist/chunk-7LSARC2G.js +102 -0
  321. package/dist/chunk-7LSARC2G.js.map +1 -0
  322. package/dist/chunk-7W7UUUIE.js +609 -0
  323. package/dist/chunk-7W7UUUIE.js.map +1 -0
  324. package/dist/chunk-7ZLW7H37.js +21 -0
  325. package/dist/chunk-7ZLW7H37.js.map +1 -0
  326. package/dist/chunk-AAZHI22G.js +18 -0
  327. package/dist/chunk-AAZHI22G.js.map +1 -0
  328. package/dist/chunk-ACNE455I.js +76 -0
  329. package/dist/chunk-ACNE455I.js.map +1 -0
  330. package/dist/chunk-BKLSSLPZ.js +27 -0
  331. package/dist/chunk-BKLSSLPZ.js.map +1 -0
  332. package/dist/chunk-BZ7UPUTY.js +417 -0
  333. package/dist/chunk-BZ7UPUTY.js.map +1 -0
  334. package/dist/chunk-CGFAICUE.js +28 -0
  335. package/dist/chunk-CGFAICUE.js.map +1 -0
  336. package/dist/chunk-CMCEWQ3C.js +19 -0
  337. package/dist/chunk-CMCEWQ3C.js.map +1 -0
  338. package/dist/chunk-CP4UV436.js +41 -0
  339. package/dist/chunk-CP4UV436.js.map +1 -0
  340. package/dist/chunk-D2CQPNQG.js +27508 -0
  341. package/dist/chunk-D2CQPNQG.js.map +1 -0
  342. package/dist/chunk-DIQRZP7Z.js +51 -0
  343. package/dist/chunk-DIQRZP7Z.js.map +1 -0
  344. package/dist/chunk-EBFFDDAS.js +13 -0
  345. package/dist/chunk-EBFFDDAS.js.map +1 -0
  346. package/dist/chunk-EGVS23DR.js +85 -0
  347. package/dist/chunk-EGVS23DR.js.map +1 -0
  348. package/dist/chunk-EKBQ7K4N.js +15 -0
  349. package/dist/chunk-EKBQ7K4N.js.map +1 -0
  350. package/dist/chunk-EKQCZRAN.js +24 -0
  351. package/dist/chunk-EKQCZRAN.js.map +1 -0
  352. package/dist/chunk-EYKZIZ5J.js +48 -0
  353. package/dist/chunk-EYKZIZ5J.js.map +1 -0
  354. package/dist/{chunk-NEOPTPDF.js → chunk-F4PTFXZH.js} +11554 -22046
  355. package/dist/chunk-F4PTFXZH.js.map +1 -0
  356. package/dist/chunk-FFYZXA75.js +58 -0
  357. package/dist/chunk-FFYZXA75.js.map +1 -0
  358. package/dist/chunk-GFGDHPZ2.js +22 -0
  359. package/dist/chunk-GFGDHPZ2.js.map +1 -0
  360. package/dist/chunk-GR3CDFID.js +18 -0
  361. package/dist/chunk-GR3CDFID.js.map +1 -0
  362. package/dist/chunk-GR4SIU32.js +104 -0
  363. package/dist/chunk-GR4SIU32.js.map +1 -0
  364. package/dist/chunk-H5E46IIS.js +18 -0
  365. package/dist/chunk-H5E46IIS.js.map +1 -0
  366. package/dist/chunk-HFHVAMZL.js +22 -0
  367. package/dist/chunk-HFHVAMZL.js.map +1 -0
  368. package/dist/chunk-HRRI4BLF.js +4456 -0
  369. package/dist/chunk-HRRI4BLF.js.map +1 -0
  370. package/dist/chunk-HT6L7A5M.js +12 -0
  371. package/dist/chunk-HT6L7A5M.js.map +1 -0
  372. package/dist/chunk-I2FPFISM.js +301 -0
  373. package/dist/chunk-I2FPFISM.js.map +1 -0
  374. package/dist/chunk-IADAQJDH.js +28 -0
  375. package/dist/chunk-IADAQJDH.js.map +1 -0
  376. package/dist/chunk-IBOBCMQQ.js +99 -0
  377. package/dist/chunk-IBOBCMQQ.js.map +1 -0
  378. package/dist/chunk-IFWKRCFF.js +56 -0
  379. package/dist/chunk-IFWKRCFF.js.map +1 -0
  380. package/dist/chunk-IH4T7V4C.js +40 -0
  381. package/dist/chunk-IH4T7V4C.js.map +1 -0
  382. package/dist/chunk-IIIZZ4E4.js +1679 -0
  383. package/dist/chunk-IIIZZ4E4.js.map +1 -0
  384. package/dist/chunk-ILSFU3WD.js +83 -0
  385. package/dist/chunk-ILSFU3WD.js.map +1 -0
  386. package/dist/chunk-IX3VBV3L.js +43 -0
  387. package/dist/chunk-IX3VBV3L.js.map +1 -0
  388. package/dist/chunk-JBBFSORW.js +846 -0
  389. package/dist/chunk-JBBFSORW.js.map +1 -0
  390. package/dist/chunk-JIDTNKKL.js +1183 -0
  391. package/dist/chunk-JIDTNKKL.js.map +1 -0
  392. package/dist/chunk-JSPE6NGZ.js +22 -0
  393. package/dist/chunk-JSPE6NGZ.js.map +1 -0
  394. package/dist/chunk-JVROGQ7Q.js +150 -0
  395. package/dist/chunk-JVROGQ7Q.js.map +1 -0
  396. package/dist/chunk-K4WUMWNJ.js +32 -0
  397. package/dist/chunk-K4WUMWNJ.js.map +1 -0
  398. package/dist/chunk-K74XQ4Q5.js +11 -0
  399. package/dist/chunk-K74XQ4Q5.js.map +1 -0
  400. package/dist/chunk-KLLMJ4U3.js +22 -0
  401. package/dist/chunk-KLLMJ4U3.js.map +1 -0
  402. package/dist/chunk-LTKVCJ2E.js +27 -0
  403. package/dist/chunk-LTKVCJ2E.js.map +1 -0
  404. package/dist/chunk-M36DJTFZ.js +34 -0
  405. package/dist/chunk-M36DJTFZ.js.map +1 -0
  406. package/dist/chunk-MHM52LCJ.js +154 -0
  407. package/dist/chunk-MHM52LCJ.js.map +1 -0
  408. package/dist/chunk-MQCDMHRZ.js +59 -0
  409. package/dist/chunk-MQCDMHRZ.js.map +1 -0
  410. package/dist/chunk-N3ORMGAI.js +348 -0
  411. package/dist/chunk-N3ORMGAI.js.map +1 -0
  412. package/dist/chunk-NCSGIRRQ.js +28 -0
  413. package/dist/chunk-NCSGIRRQ.js.map +1 -0
  414. package/dist/chunk-NIXT2SBH.js +1423 -0
  415. package/dist/chunk-NIXT2SBH.js.map +1 -0
  416. package/dist/chunk-NJAII6CO.js +148 -0
  417. package/dist/chunk-NJAII6CO.js.map +1 -0
  418. package/dist/chunk-NKE4TL43.js +92 -0
  419. package/dist/chunk-NKE4TL43.js.map +1 -0
  420. package/dist/chunk-NZ7AXA7B.js +1 -0
  421. package/dist/chunk-NZ7AXA7B.js.map +1 -0
  422. package/dist/chunk-OCAYEGI2.js +26 -0
  423. package/dist/chunk-OCAYEGI2.js.map +1 -0
  424. package/dist/chunk-OMLI45ER.js +90 -0
  425. package/dist/chunk-OMLI45ER.js.map +1 -0
  426. package/dist/chunk-P7OBLJAG.js +88 -0
  427. package/dist/chunk-P7OBLJAG.js.map +1 -0
  428. package/dist/chunk-PAY3CBWL.js +2321 -0
  429. package/dist/chunk-PAY3CBWL.js.map +1 -0
  430. package/dist/chunk-PFF6VY35.js +257 -0
  431. package/dist/chunk-PFF6VY35.js.map +1 -0
  432. package/dist/chunk-PYNDJDWZ.js +1758 -0
  433. package/dist/chunk-PYNDJDWZ.js.map +1 -0
  434. package/dist/chunk-QDQ6UMMN.js +53 -0
  435. package/dist/chunk-QDQ6UMMN.js.map +1 -0
  436. package/dist/chunk-QGT3G2XG.js +24 -0
  437. package/dist/chunk-QGT3G2XG.js.map +1 -0
  438. package/dist/chunk-QZYCJ2GZ.js +55 -0
  439. package/dist/chunk-QZYCJ2GZ.js.map +1 -0
  440. package/dist/chunk-REZ7RFSA.js +124 -0
  441. package/dist/chunk-REZ7RFSA.js.map +1 -0
  442. package/dist/chunk-RRYBAE6E.js +2449 -0
  443. package/dist/chunk-RRYBAE6E.js.map +1 -0
  444. package/dist/chunk-RWUZOB62.js +34 -0
  445. package/dist/chunk-RWUZOB62.js.map +1 -0
  446. package/dist/chunk-SB5UCPZH.js +116 -0
  447. package/dist/chunk-SB5UCPZH.js.map +1 -0
  448. package/dist/chunk-SEJJ7CRI.js +99 -0
  449. package/dist/chunk-SEJJ7CRI.js.map +1 -0
  450. package/dist/chunk-SHBFGRPV.js +45 -0
  451. package/dist/chunk-SHBFGRPV.js.map +1 -0
  452. package/dist/chunk-SOFJ4GC5.js +45 -0
  453. package/dist/chunk-SOFJ4GC5.js.map +1 -0
  454. package/dist/chunk-STH2HPZK.js +44 -0
  455. package/dist/chunk-STH2HPZK.js.map +1 -0
  456. package/dist/chunk-TK3JNKME.js +28 -0
  457. package/dist/chunk-TK3JNKME.js.map +1 -0
  458. package/dist/chunk-TMONHFE3.js +46 -0
  459. package/dist/chunk-TMONHFE3.js.map +1 -0
  460. package/dist/chunk-TR4KO3AG.js +44 -0
  461. package/dist/chunk-TR4KO3AG.js.map +1 -0
  462. package/dist/chunk-TS2LNBF2.js +68 -0
  463. package/dist/chunk-TS2LNBF2.js.map +1 -0
  464. package/dist/chunk-UZUMBFPP.js +26 -0
  465. package/dist/chunk-UZUMBFPP.js.map +1 -0
  466. package/dist/chunk-VRZ5LMOW.js +176 -0
  467. package/dist/chunk-VRZ5LMOW.js.map +1 -0
  468. package/dist/chunk-WLGGY6Z6.js +75 -0
  469. package/dist/chunk-WLGGY6Z6.js.map +1 -0
  470. package/dist/chunk-WO7V6ZNC.js +11 -0
  471. package/dist/chunk-WO7V6ZNC.js.map +1 -0
  472. package/dist/chunk-WXSENSRP.js +64 -0
  473. package/dist/chunk-WXSENSRP.js.map +1 -0
  474. package/dist/chunk-XEKBZ2SA.js +19 -0
  475. package/dist/chunk-XEKBZ2SA.js.map +1 -0
  476. package/dist/chunk-XPBKU3JX.js +61 -0
  477. package/dist/chunk-XPBKU3JX.js.map +1 -0
  478. package/dist/chunk-XRYXBXWH.js +24 -0
  479. package/dist/chunk-XRYXBXWH.js.map +1 -0
  480. package/dist/chunk-XVA7QRVH.js +22 -0
  481. package/dist/chunk-XVA7QRVH.js.map +1 -0
  482. package/dist/chunk-YCTHHBSS.js +37 -0
  483. package/dist/chunk-YCTHHBSS.js.map +1 -0
  484. package/dist/chunk-YHPWD5NE.js +70 -0
  485. package/dist/chunk-YHPWD5NE.js.map +1 -0
  486. package/dist/chunk-YLNEKJQ5.js +126 -0
  487. package/dist/chunk-YLNEKJQ5.js.map +1 -0
  488. package/dist/chunk-YN4CEKCF.js +73 -0
  489. package/dist/chunk-YN4CEKCF.js.map +1 -0
  490. package/dist/chunk-YYNMESIF.js +17 -0
  491. package/dist/chunk-YYNMESIF.js.map +1 -0
  492. package/dist/chunk-Z6PRMCV6.js +1 -0
  493. package/dist/chunk-Z6PRMCV6.js.map +1 -0
  494. package/dist/chunk-ZDNW6VQG.js +11 -0
  495. package/dist/chunk-ZDNW6VQG.js.map +1 -0
  496. package/dist/chunk-ZP4D73DO.js +36 -0
  497. package/dist/chunk-ZP4D73DO.js.map +1 -0
  498. package/dist/chunk-ZUATADUV.js +26 -0
  499. package/dist/chunk-ZUATADUV.js.map +1 -0
  500. package/dist/{connections-1NtNQrsY.d.ts → connections-CEcurtWI.d.ts} +74 -9
  501. package/dist/core/index.cjs +14041 -6973
  502. package/dist/core/index.cjs.map +1 -1
  503. package/dist/core/index.d.ts +422 -138
  504. package/dist/core/index.js +425 -183
  505. package/dist/core/index.js.map +1 -1
  506. package/dist/flow-vnext/index.cjs +2842 -0
  507. package/dist/flow-vnext/index.cjs.map +1 -0
  508. package/dist/flow-vnext/index.d.ts +3 -0
  509. package/dist/flow-vnext/index.js +119 -0
  510. package/dist/flow-vnext/index.js.map +1 -0
  511. package/dist/{graphql-client-Bn0tN049.d.ts → graphql-client-B2tREsx6.d.ts} +3 -1
  512. package/dist/index-b9xxXGFs.d.ts +1230 -0
  513. package/dist/index.d.ts +5 -3
  514. package/dist/index.js +202 -37
  515. package/dist/index.js.map +1 -1
  516. package/dist/legacy-BpgIqaQ5.d.ts +14 -0
  517. package/dist/mantine/index.d.ts +7 -4
  518. package/dist/mantine/index.js +84 -30
  519. package/dist/mantine/index.js.map +1 -1
  520. package/dist/{runtime-BFwvCQDF.d.ts → types-Dqk5MTfW.d.ts} +6096 -5386
  521. package/package.json +12 -2
  522. package/dist/chunk-A4CWC4AG.js +0 -374
  523. package/dist/chunk-A4CWC4AG.js.map +0 -1
  524. package/dist/chunk-NEOPTPDF.js.map +0 -1
  525. package/dist/chunk-VRCRDKN5.js +0 -59694
  526. package/dist/chunk-VRCRDKN5.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/mantine/blocks/action/actionTypes/matrixDm/MatrixDmConfig.tsx","../src/mantine/blocks/action/actionTypes/matrixDm/types.ts"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport { Flex, Stack, Text } from '@mantine/core';\nimport BaseSelect from '@/mantine/components/Base/BaseSelect';\nimport BaseTextArea from '@/mantine/components/Base/BaseTextArea';\nimport BaseAvatar from '@/mantine/components/Base/BaseAvatar';\nimport type { ActionTypeConfigProps } from '../../actionTypeUI';\nimport { parseMatrixDmInputs, serializeMatrixDmInputs, type MatrixDmInputs } from './types';\nimport { AwarenessDocActor, useBlocknoteHandlers } from '@/mantine/context/BlocknoteContext';\n\nexport const MatrixDmConfig: React.FC<ActionTypeConfigProps> = ({ inputs, onInputsChange, editor }) => {\n const handlers = useBlocknoteHandlers();\n const [local, setLocal] = useState<MatrixDmInputs>(() => parseMatrixDmInputs(inputs));\n const [roomMembers, setRoomMembers] = useState<AwarenessDocActor[]>([]);\n const [searchValue, setSearchValue] = useState('');\n\n const roomId = editor?.getRoomId?.() || null;\n const mx = editor?.getMatrixClient?.() || null;\n\n useEffect(() => {\n setLocal(parseMatrixDmInputs(inputs));\n }, [inputs]);\n\n useEffect(() => {\n (async () => {\n if (!roomId || !mx) return;\n try {\n const members = await handlers.getRoomMembers(roomId, mx);\n setRoomMembers(members);\n } catch (error) {\n console.error('MatrixDmConfig: Failed to fetch room members:', error);\n }\n })();\n }, [roomId, mx]);\n\n const update = useCallback(\n (patch: Partial<MatrixDmInputs>) => {\n const updated = { ...local, ...patch };\n setLocal(updated);\n onInputsChange(serializeMatrixDmInputs(updated));\n },\n [local, onInputsChange]\n );\n\n const selectData = useMemo(() => {\n return roomMembers.map((member) => ({\n value: member.did,\n label: member.name || member.did,\n }));\n }, [roomMembers]);\n\n const memberLookup = useMemo(() => {\n const lookup: Record<string, AwarenessDocActor> = {};\n roomMembers.forEach((member) => {\n lookup[member.did] = member;\n });\n return lookup;\n }, [roomMembers]);\n\n const selectedMember = local.targetDid ? memberLookup[local.targetDid] : undefined;\n\n return (\n <Stack gap=\"md\">\n <BaseSelect\n label=\"Recipient\"\n description=\"Select a person from this flow or search by name\"\n placeholder=\"Search for a recipient...\"\n searchable\n value={local.targetDid || null}\n onChange={(value) => update({ targetDid: value || '' })}\n searchValue={searchValue}\n onSearchChange={setSearchValue}\n data={selectData}\n clearable\n required\n renderOption={({ option, checked }) => {\n const member = memberLookup[option.value];\n if (!member) return <Text size=\"sm\">{option.label}</Text>;\n\n return (\n <Flex align=\"center\" gap=\"sm\">\n <BaseAvatar src={member.src} did={member.did} size={24} />\n <Text size=\"sm\" c={checked ? 'accent' : undefined}>\n {option.label}\n </Text>\n </Flex>\n );\n }}\n leftSection={selectedMember ? <BaseAvatar src={selectedMember.src} did={selectedMember.did} size={20} withCenter /> : null}\n />\n\n <BaseTextArea\n label=\"Message\"\n description=\"The message to send as a direct message\"\n placeholder=\"Enter the message to send...\"\n value={local.message}\n onChange={(event) => update({ message: event.currentTarget.value })}\n minRows={3}\n required\n />\n </Stack>\n );\n};\n","export interface MatrixDmInputs {\n targetDid: string;\n message: string;\n}\n\nexport function parseMatrixDmInputs(json: string): MatrixDmInputs {\n try {\n const parsed = typeof json === 'string' ? JSON.parse(json) : json;\n return {\n targetDid: parsed?.targetDid || '',\n message: parsed?.message || '',\n };\n } catch {\n return {\n targetDid: '',\n message: '',\n };\n }\n}\n\nexport function serializeMatrixDmInputs(inputs: MatrixDmInputs): string {\n return JSON.stringify(inputs);\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,62 @@
1
+ import {
2
+ parseMatrixRegisterInputs,
3
+ serializeMatrixRegisterInputs
4
+ } from "./chunk-7J3GFMN3.js";
5
+ import {
6
+ BaseTextInput
7
+ } from "./chunk-WO7V6ZNC.js";
8
+
9
+ // src/mantine/blocks/action/actionTypes/matrixRegister/MatrixRegisterConfig.tsx
10
+ import React, { useCallback, useEffect, useState } from "react";
11
+ import { Stack, Text } from "@mantine/core";
12
+ var MatrixRegisterConfig = ({ inputs, onInputsChange }) => {
13
+ const [local, setLocal] = useState(() => parseMatrixRegisterInputs(inputs));
14
+ useEffect(() => {
15
+ setLocal(parseMatrixRegisterInputs(inputs));
16
+ }, [inputs]);
17
+ const update = useCallback(
18
+ (patch) => {
19
+ const updated = { ...local, ...patch };
20
+ setLocal(updated);
21
+ onInputsChange(serializeMatrixRegisterInputs(updated));
22
+ },
23
+ [local, onInputsChange]
24
+ );
25
+ return /* @__PURE__ */ React.createElement(Stack, { gap: "lg" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 600 }, "Register Matrix Account"), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, "Registers a new Matrix account, sets up encryption, and creates a default room. Reference upstream block outputs using the ", "{{blockId.output.key}}", " pattern.")), /* @__PURE__ */ React.createElement(
26
+ BaseTextInput,
27
+ {
28
+ label: "Mnemonic reference",
29
+ placeholder: "{{blockId.output.mnemonic}}",
30
+ value: local.mnemonic || "",
31
+ onChange: (event) => update({ mnemonic: event.currentTarget.value })
32
+ }
33
+ ), /* @__PURE__ */ React.createElement(
34
+ BaseTextInput,
35
+ {
36
+ label: "Address reference",
37
+ placeholder: "{{blockId.output.address}}",
38
+ value: local.address || "",
39
+ onChange: (event) => update({ address: event.currentTarget.value })
40
+ }
41
+ ), /* @__PURE__ */ React.createElement(BaseTextInput, { label: "DID reference", placeholder: "{{blockId.output.did}}", value: local.did || "", onChange: (event) => update({ did: event.currentTarget.value }) }), /* @__PURE__ */ React.createElement(BaseTextInput, { label: "PIN reference", placeholder: "{{formBlockId.output.pin}}", value: local.pin || "", onChange: (event) => update({ pin: event.currentTarget.value }) }), /* @__PURE__ */ React.createElement(
42
+ BaseTextInput,
43
+ {
44
+ label: "Oracle Name",
45
+ placeholder: "Oracle name or {{blockId.output.oracleName}}",
46
+ value: local.oracleName || "",
47
+ onChange: (event) => update({ oracleName: event.currentTarget.value })
48
+ }
49
+ ), /* @__PURE__ */ React.createElement(
50
+ BaseTextInput,
51
+ {
52
+ label: "Avatar URL (optional)",
53
+ placeholder: "https://... or {{blockId.output.avatarUrl}}",
54
+ value: local.avatarUrl || "",
55
+ onChange: (event) => update({ avatarUrl: event.currentTarget.value })
56
+ }
57
+ ));
58
+ };
59
+ export {
60
+ MatrixRegisterConfig
61
+ };
62
+ //# sourceMappingURL=MatrixRegisterConfig-N2U4FBYF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/mantine/blocks/action/actionTypes/matrixRegister/MatrixRegisterConfig.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { Stack, Text } from '@mantine/core';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport type { ActionTypeConfigProps } from '../../actionTypeUI';\nimport { parseMatrixRegisterInputs, serializeMatrixRegisterInputs, type MatrixRegisterInputs } from './types';\n\nexport const MatrixRegisterConfig: React.FC<ActionTypeConfigProps> = ({ inputs, onInputsChange }) => {\n const [local, setLocal] = useState<MatrixRegisterInputs>(() => parseMatrixRegisterInputs(inputs));\n\n useEffect(() => {\n setLocal(parseMatrixRegisterInputs(inputs));\n }, [inputs]);\n\n const update = useCallback(\n (patch: Partial<MatrixRegisterInputs>) => {\n const updated = { ...local, ...patch };\n setLocal(updated);\n onInputsChange(serializeMatrixRegisterInputs(updated));\n },\n [local, onInputsChange]\n );\n\n return (\n <Stack gap=\"lg\">\n <Stack gap=\"xs\">\n <Text size=\"sm\" fw={600}>\n Register Matrix Account\n </Text>\n <Text size=\"xs\" c=\"dimmed\">\n Registers a new Matrix account, sets up encryption, and creates a default room. Reference upstream block outputs using the {'{{blockId.output.key}}'} pattern.\n </Text>\n </Stack>\n\n <BaseTextInput\n label=\"Mnemonic reference\"\n placeholder=\"{{blockId.output.mnemonic}}\"\n value={local.mnemonic || ''}\n onChange={(event) => update({ mnemonic: event.currentTarget.value })}\n />\n <BaseTextInput\n label=\"Address reference\"\n placeholder=\"{{blockId.output.address}}\"\n value={local.address || ''}\n onChange={(event) => update({ address: event.currentTarget.value })}\n />\n <BaseTextInput label=\"DID reference\" placeholder=\"{{blockId.output.did}}\" value={local.did || ''} onChange={(event) => update({ did: event.currentTarget.value })} />\n <BaseTextInput label=\"PIN reference\" placeholder=\"{{formBlockId.output.pin}}\" value={local.pin || ''} onChange={(event) => update({ pin: event.currentTarget.value })} />\n <BaseTextInput\n label=\"Oracle Name\"\n placeholder=\"Oracle name or {{blockId.output.oracleName}}\"\n value={local.oracleName || ''}\n onChange={(event) => update({ oracleName: event.currentTarget.value })}\n />\n\n <BaseTextInput\n label=\"Avatar URL (optional)\"\n placeholder=\"https://... or {{blockId.output.avatarUrl}}\"\n value={local.avatarUrl || ''}\n onChange={(event) => update({ avatarUrl: event.currentTarget.value })}\n />\n </Stack>\n );\n};\n"],"mappings":";;;;;;;;;AAAA,OAAO,SAAS,aAAa,WAAW,gBAAgB;AACxD,SAAS,OAAO,YAAY;AAKrB,IAAM,uBAAwD,CAAC,EAAE,QAAQ,eAAe,MAAM;AACnG,QAAM,CAAC,OAAO,QAAQ,IAAI,SAA+B,MAAM,0BAA0B,MAAM,CAAC;AAEhG,YAAU,MAAM;AACd,aAAS,0BAA0B,MAAM,CAAC;AAAA,EAC5C,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,SAAS;AAAA,IACb,CAAC,UAAyC;AACxC,YAAM,UAAU,EAAE,GAAG,OAAO,GAAG,MAAM;AACrC,eAAS,OAAO;AAChB,qBAAe,8BAA8B,OAAO,CAAC;AAAA,IACvD;AAAA,IACA,CAAC,OAAO,cAAc;AAAA,EACxB;AAEA,SACE,oCAAC,SAAM,KAAI,QACT,oCAAC,SAAM,KAAI,QACT,oCAAC,QAAK,MAAK,MAAK,IAAI,OAAK,yBAEzB,GACA,oCAAC,QAAK,MAAK,MAAK,GAAE,YAAS,+HACmG,0BAAyB,WACvJ,CACF,GAEA;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,OAAO,MAAM,YAAY;AAAA,MACzB,UAAU,CAAC,UAAU,OAAO,EAAE,UAAU,MAAM,cAAc,MAAM,CAAC;AAAA;AAAA,EACrE,GACA;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,OAAO,MAAM,WAAW;AAAA,MACxB,UAAU,CAAC,UAAU,OAAO,EAAE,SAAS,MAAM,cAAc,MAAM,CAAC;AAAA;AAAA,EACpE,GACA,oCAAC,iBAAc,OAAM,iBAAgB,aAAY,0BAAyB,OAAO,MAAM,OAAO,IAAI,UAAU,CAAC,UAAU,OAAO,EAAE,KAAK,MAAM,cAAc,MAAM,CAAC,GAAG,GACnK,oCAAC,iBAAc,OAAM,iBAAgB,aAAY,8BAA6B,OAAO,MAAM,OAAO,IAAI,UAAU,CAAC,UAAU,OAAO,EAAE,KAAK,MAAM,cAAc,MAAM,CAAC,GAAG,GACvK;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,OAAO,MAAM,cAAc;AAAA,MAC3B,UAAU,CAAC,UAAU,OAAO,EAAE,YAAY,MAAM,cAAc,MAAM,CAAC;AAAA;AAAA,EACvE,GAEA;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,aAAY;AAAA,MACZ,OAAO,MAAM,aAAa;AAAA,MAC1B,UAAU,CAAC,UAAU,OAAO,EAAE,WAAW,MAAM,cAAc,MAAM,CAAC;AAAA;AAAA,EACtE,CACF;AAEJ;","names":[]}
@@ -0,0 +1,86 @@
1
+ import {
2
+ parseMatrixRegisterInputs
3
+ } from "./chunk-7J3GFMN3.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 "./chunk-4DGCCXD6.js";
21
+ import "./chunk-7W7UUUIE.js";
22
+ import "./chunk-TS2LNBF2.js";
23
+
24
+ // src/mantine/blocks/action/actionTypes/matrixRegister/MatrixRegisterFlowDetail.tsx
25
+ import React, { useCallback, useMemo } from "react";
26
+ import { Button, Group, Loader, Stack, Text } from "@mantine/core";
27
+ import { IconCheck, IconAlertCircle } from "@tabler/icons-react";
28
+ var MatrixRegisterFlowDetail = ({ inputs, editor, block, runtime, updateRuntime, isDisabled, executeAction }) => {
29
+ const parsed = useMemo(() => parseMatrixRegisterInputs(inputs), [inputs]);
30
+ const editorDocument = editor?.document || [];
31
+ const runtimeReader = useRunRuntimeReader(editor);
32
+ const resolveOpts = useMemo(() => ({ yRuntime: runtimeReader }), [runtimeReader]);
33
+ const resolvedInputs = useMemo(() => {
34
+ const r = (val) => resolveReferences(val || "", editorDocument, resolveOpts).trim();
35
+ return {
36
+ mnemonic: r(parsed.mnemonic),
37
+ address: r(parsed.address),
38
+ did: r(parsed.did),
39
+ pin: r(parsed.pin),
40
+ oracleName: r(parsed.oracleName),
41
+ avatarUrl: r(parsed.avatarUrl)
42
+ };
43
+ }, [parsed, editorDocument, resolveOpts]);
44
+ const inputsReady = !!(resolvedInputs.mnemonic && resolvedInputs.address && resolvedInputs.did && resolvedInputs.pin && resolvedInputs.oracleName);
45
+ const matrixUserId = runtime.output?.matrixUserId || runtime.output?.userId || "";
46
+ const matrixRoomId = runtime.output?.matrixRoomId || runtime.output?.roomId || "";
47
+ const hasProof = !!matrixUserId;
48
+ const isRunning = runtime.state === "running";
49
+ const isCompleted = runtime.state === "completed" && hasProof;
50
+ const isStale = runtime.state === "completed" && !hasProof;
51
+ const isFailed = runtime.state === "failed";
52
+ const errorMessage = runtime.error?.message || null;
53
+ const handleExecute = useCallback(async () => {
54
+ console.log("[matrix.register] handleExecute", { "runtime.state": runtime.state, hasProof, inputsReady });
55
+ if (isDisabled || isRunning) return;
56
+ if (!executeAction) {
57
+ updateRuntime({ state: "failed", error: { message: "Shared action executor is unavailable", at: Date.now() } });
58
+ return;
59
+ }
60
+ if (!inputsReady) {
61
+ console.warn("[matrix.register] inputs not ready");
62
+ return;
63
+ }
64
+ try {
65
+ const outcome = await executeAction({ runtimeInputs: resolvedInputs });
66
+ console.log("[matrix.register] outcome", outcome);
67
+ if (!outcome.success) throw new Error(outcome.error || "Matrix registration failed");
68
+ const payload = outcome.output;
69
+ if (!payload?.matrixUserId) {
70
+ throw new Error("Action returned success without a matrixUserId. Check the [oracle:registerMatrixAccount] handler logs.");
71
+ }
72
+ } catch (err) {
73
+ const message = err instanceof Error ? err.message : "Failed to register Matrix account";
74
+ console.error("[matrix.register] failed", { message, err });
75
+ updateRuntime({ state: "failed", error: { message, at: Date.now() } });
76
+ }
77
+ }, [executeAction, isDisabled, isRunning, hasProof, inputsReady, resolvedInputs, runtime.state, updateRuntime]);
78
+ const handleRetry = useCallback(() => {
79
+ updateRuntime({ state: "idle", error: void 0, output: {} });
80
+ }, [updateRuntime]);
81
+ return /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(Stack, { gap: 2 }, /* @__PURE__ */ React.createElement(Text, { fw: 600 }, block?.props?.title || "Register Matrix Account"), /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, block?.props?.description || "Register a Matrix account, set up encryption, and create a default room.")), !isRunning && !isCompleted && !isStale && !isFailed && !inputsReady && /* @__PURE__ */ React.createElement(Group, { gap: "xs" }, /* @__PURE__ */ React.createElement(Loader, { size: 14 }), /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, "Waiting for upstream wallet + form inputs...")), isRunning && /* @__PURE__ */ React.createElement(Group, { gap: "xs" }, /* @__PURE__ */ React.createElement(Loader, { size: 14 }), /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "Registering Matrix account...")), isCompleted && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconCheck, { size: 16 }), title: "Matrix Account Registered", color: "green" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "Matrix account registered and configured successfully."), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", style: { wordBreak: "break-all" } }, "User ID: ", matrixUserId), matrixRoomId && /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", style: { wordBreak: "break-all" } }, "Room ID: ", matrixRoomId))), isStale && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconAlertCircle, { size: 16 }), color: "yellow", title: "Inconsistent State" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "Marked completed but no matrixUserId recorded. Stale state \u2014 reset and re-run."), /* @__PURE__ */ React.createElement(Group, null, /* @__PURE__ */ React.createElement(Button, { variant: "outline", size: "xs", onClick: handleRetry }, "Reset"), /* @__PURE__ */ React.createElement(Button, { variant: "filled", size: "xs", onClick: handleExecute, disabled: !inputsReady }, "Force Run Now")))), isFailed && errorMessage && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconAlertCircle, { size: 16 }), color: "red", styles: actionAlertStyles }, errorMessage), isFailed && /* @__PURE__ */ React.createElement(Group, null, /* @__PURE__ */ React.createElement(Button, { variant: "outline", onClick: handleRetry }, "Try Again")), !isRunning && !isStale && /* @__PURE__ */ React.createElement(Group, null, /* @__PURE__ */ React.createElement(Button, { variant: "filled", size: "sm", onClick: handleExecute, disabled: !inputsReady || isDisabled }, isCompleted ? "Re-run" : inputsReady ? "Run Now" : "Waiting for inputs...")));
82
+ };
83
+ export {
84
+ MatrixRegisterFlowDetail
85
+ };
86
+ //# sourceMappingURL=MatrixRegisterFlowDetail-D5YNL5QX.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/mantine/blocks/action/actionTypes/matrixRegister/MatrixRegisterFlowDetail.tsx"],"sourcesContent":["import { useRunRuntimeReader } from '@/mantine/hooks/useRunRuntimeReader';\nimport React, { useCallback, useMemo } from 'react';\nimport { Button, Group, Loader, Stack, Text } from '@mantine/core';\nimport { DismissibleAlert as Alert } from '@/mantine/components/Base/DismissibleAlert';\nimport { IconCheck, IconAlertCircle } from '@tabler/icons-react';\nimport { resolveReferences } from '@/mantine/utils/referenceResolver';\nimport type { ActionTypeFlowProps } from '../../actionTypeUI';\nimport { parseMatrixRegisterInputs } from './types';\nimport { actionAlertStyles } from '../../alertStyles';\n\nexport const MatrixRegisterFlowDetail: React.FC<ActionTypeFlowProps> = ({ inputs, editor, block, runtime, updateRuntime, isDisabled, executeAction }) => {\n const parsed = useMemo(() => parseMatrixRegisterInputs(inputs), [inputs]);\n const editorDocument = editor?.document || [];\n const runtimeReader = useRunRuntimeReader(editor);\n const resolveOpts = useMemo(() => ({ yRuntime: runtimeReader }), [runtimeReader]);\n const resolvedInputs = useMemo(() => {\n const r = (val: string | undefined) => resolveReferences(val || '', editorDocument, resolveOpts).trim();\n return {\n mnemonic: r(parsed.mnemonic),\n address: r(parsed.address),\n did: r(parsed.did),\n pin: r(parsed.pin),\n oracleName: r(parsed.oracleName),\n avatarUrl: r(parsed.avatarUrl),\n };\n }, [parsed, editorDocument, resolveOpts]);\n const inputsReady = !!(resolvedInputs.mnemonic && resolvedInputs.address && resolvedInputs.did && resolvedInputs.pin && resolvedInputs.oracleName);\n\n // Derived from runtime — single source of truth.\n const matrixUserId: string = runtime.output?.matrixUserId || runtime.output?.userId || '';\n const matrixRoomId: string = runtime.output?.matrixRoomId || runtime.output?.roomId || '';\n const hasProof = !!matrixUserId;\n const isRunning = runtime.state === 'running';\n const isCompleted = runtime.state === 'completed' && hasProof;\n const isStale = runtime.state === 'completed' && !hasProof;\n const isFailed = runtime.state === 'failed';\n const errorMessage = runtime.error?.message || null;\n\n const handleExecute = useCallback(async () => {\n console.log('[matrix.register] handleExecute', { 'runtime.state': runtime.state, hasProof, inputsReady });\n if (isDisabled || isRunning) return;\n\n if (!executeAction) {\n updateRuntime({ state: 'failed', error: { message: 'Shared action executor is unavailable', at: Date.now() } });\n return;\n }\n\n if (!inputsReady) {\n console.warn('[matrix.register] inputs not ready');\n return;\n }\n\n try {\n const outcome = await executeAction({ runtimeInputs: resolvedInputs });\n\n console.log('[matrix.register] outcome', outcome);\n if (!outcome.success) throw new Error(outcome.error || 'Matrix registration failed');\n\n const payload = outcome.output as { matrixUserId?: string } | undefined;\n if (!payload?.matrixUserId) {\n throw new Error('Action returned success without a matrixUserId. Check the [oracle:registerMatrixAccount] handler logs.');\n }\n } catch (err) {\n const message = err instanceof Error ? err.message : 'Failed to register Matrix account';\n console.error('[matrix.register] failed', { message, err });\n updateRuntime({ state: 'failed', error: { message, at: Date.now() } });\n }\n }, [executeAction, isDisabled, isRunning, hasProof, inputsReady, resolvedInputs, runtime.state, updateRuntime]);\n\n const handleRetry = useCallback(() => {\n updateRuntime({ state: 'idle', error: undefined, output: {} });\n }, [updateRuntime]);\n\n return (\n <Stack gap=\"md\">\n <Stack gap={2}>\n <Text fw={600}>{block?.props?.title || 'Register Matrix Account'}</Text>\n <Text size=\"sm\" c=\"dimmed\">\n {block?.props?.description || 'Register a Matrix account, set up encryption, and create a default room.'}\n </Text>\n </Stack>\n\n {!isRunning && !isCompleted && !isStale && !isFailed && !inputsReady && (\n <Group gap=\"xs\">\n <Loader size={14} />\n <Text size=\"sm\" c=\"dimmed\">\n Waiting for upstream wallet + form inputs...\n </Text>\n </Group>\n )}\n\n {isRunning && (\n <Group gap=\"xs\">\n <Loader size={14} />\n <Text size=\"sm\">Registering Matrix account...</Text>\n </Group>\n )}\n\n {isCompleted && (\n <Alert icon={<IconCheck size={16} />} title=\"Matrix Account Registered\" color=\"green\">\n <Stack gap=\"xs\">\n <Text size=\"sm\">Matrix account registered and configured successfully.</Text>\n <Text size=\"xs\" c=\"dimmed\" style={{ wordBreak: 'break-all' }}>\n User ID: {matrixUserId}\n </Text>\n {matrixRoomId && (\n <Text size=\"xs\" c=\"dimmed\" style={{ wordBreak: 'break-all' }}>\n Room ID: {matrixRoomId}\n </Text>\n )}\n </Stack>\n </Alert>\n )}\n\n {isStale && (\n <Alert icon={<IconAlertCircle size={16} />} color=\"yellow\" title=\"Inconsistent State\">\n <Stack gap=\"xs\">\n <Text size=\"sm\">Marked completed but no matrixUserId recorded. Stale state — reset and re-run.</Text>\n <Group>\n <Button variant=\"outline\" size=\"xs\" onClick={handleRetry}>\n Reset\n </Button>\n <Button variant=\"filled\" size=\"xs\" onClick={handleExecute} disabled={!inputsReady}>\n Force Run Now\n </Button>\n </Group>\n </Stack>\n </Alert>\n )}\n\n {isFailed && errorMessage && (\n <Alert icon={<IconAlertCircle size={16} />} color=\"red\" styles={actionAlertStyles}>\n {errorMessage}\n </Alert>\n )}\n {isFailed && (\n <Group>\n <Button variant=\"outline\" onClick={handleRetry}>\n Try Again\n </Button>\n </Group>\n )}\n\n {!isRunning && !isStale && (\n <Group>\n <Button variant=\"filled\" size=\"sm\" onClick={handleExecute} disabled={!inputsReady || isDisabled}>\n {isCompleted ? 'Re-run' : inputsReady ? 'Run Now' : 'Waiting for inputs...'}\n </Button>\n </Group>\n )}\n </Stack>\n );\n};\n"],"mappings":"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","names":[]}
@@ -0,0 +1,30 @@
1
+ import {
2
+ BaseTextInput
3
+ } from "./chunk-WO7V6ZNC.js";
4
+ import {
5
+ parseJsonSafe
6
+ } from "./chunk-KLLMJ4U3.js";
7
+
8
+ // src/mantine/blocks/action/actionTypes/pod/memberMultiSelect/MemberMultiSelectConfig.tsx
9
+ import React, { useCallback, useEffect, useState } from "react";
10
+ import { Stack, Text } from "@mantine/core";
11
+ var DEFAULT = { entity: "", group: "" };
12
+ var MemberMultiSelectConfig = ({ inputs, onInputsChange }) => {
13
+ const [local, setLocal] = useState(() => parseJsonSafe(inputs, DEFAULT));
14
+ useEffect(() => {
15
+ setLocal(parseJsonSafe(inputs, DEFAULT));
16
+ }, [inputs]);
17
+ const update = useCallback(
18
+ (patch) => {
19
+ const updated = { ...local, ...patch };
20
+ setLocal(updated);
21
+ onInputsChange(JSON.stringify(updated));
22
+ },
23
+ [local, onInputsChange]
24
+ );
25
+ return /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 600 }, "Entity DID"), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, "DID of the Subscription Deed or POD used to resolve available members."), /* @__PURE__ */ React.createElement(BaseTextInput, { placeholder: "did:ixo:...", value: local.entity, onChange: (e) => update({ entity: e.currentTarget.value }) })), /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 600 }, "Group ID (optional)"), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, "Restrict members to a specific group account. Leave blank for all groups."), /* @__PURE__ */ React.createElement(BaseTextInput, { placeholder: "Leave blank for all groups", value: local.group, onChange: (e) => update({ group: e.currentTarget.value }) })));
26
+ };
27
+ export {
28
+ MemberMultiSelectConfig
29
+ };
30
+ //# sourceMappingURL=MemberMultiSelectConfig-E7WUB2WD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/mantine/blocks/action/actionTypes/pod/memberMultiSelect/MemberMultiSelectConfig.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\nimport { Stack, Text } from '@mantine/core';\nimport BaseTextInput from '@/mantine/components/Base/BaseTextInput';\nimport type { ActionTypeConfigProps } from '../../../actionTypeUI';\nimport { parseJsonSafe } from '../types';\n\ninterface MemberMultiSelectInputs {\n entity: string;\n group: string;\n}\n\nconst DEFAULT: MemberMultiSelectInputs = { entity: '', group: '' };\n\n/**\n * @description Template-mode config for MemberMultiSelect.\n * Sets the entity DID and optional group ID for member discovery.\n */\nexport const MemberMultiSelectConfig: React.FC<ActionTypeConfigProps> = ({ inputs, onInputsChange }) => {\n const [local, setLocal] = useState<MemberMultiSelectInputs>(() => parseJsonSafe(inputs, DEFAULT));\n\n useEffect(() => {\n setLocal(parseJsonSafe(inputs, DEFAULT));\n }, [inputs]);\n\n const update = useCallback(\n (patch: Partial<MemberMultiSelectInputs>) => {\n const updated = { ...local, ...patch };\n setLocal(updated);\n onInputsChange(JSON.stringify(updated));\n },\n [local, onInputsChange]\n );\n\n return (\n <Stack gap=\"md\">\n <Stack gap=\"xs\">\n <Text size=\"sm\" fw={600}>\n Entity DID\n </Text>\n <Text size=\"xs\" c=\"dimmed\">\n DID of the Subscription Deed or POD used to resolve available members.\n </Text>\n <BaseTextInput placeholder=\"did:ixo:...\" value={local.entity} onChange={(e) => update({ entity: e.currentTarget.value })} />\n </Stack>\n <Stack gap=\"xs\">\n <Text size=\"sm\" fw={600}>\n Group ID (optional)\n </Text>\n <Text size=\"xs\" c=\"dimmed\">\n Restrict members to a specific group account. Leave blank for all groups.\n </Text>\n <BaseTextInput placeholder=\"Leave blank for all groups\" value={local.group} onChange={(e) => update({ group: e.currentTarget.value })} />\n </Stack>\n </Stack>\n );\n};\n"],"mappings":";;;;;;;;AAAA,OAAO,SAAS,aAAa,WAAW,gBAAgB;AACxD,SAAS,OAAO,YAAY;AAU5B,IAAM,UAAmC,EAAE,QAAQ,IAAI,OAAO,GAAG;AAM1D,IAAM,0BAA2D,CAAC,EAAE,QAAQ,eAAe,MAAM;AACtG,QAAM,CAAC,OAAO,QAAQ,IAAI,SAAkC,MAAM,cAAc,QAAQ,OAAO,CAAC;AAEhG,YAAU,MAAM;AACd,aAAS,cAAc,QAAQ,OAAO,CAAC;AAAA,EACzC,GAAG,CAAC,MAAM,CAAC;AAEX,QAAM,SAAS;AAAA,IACb,CAAC,UAA4C;AAC3C,YAAM,UAAU,EAAE,GAAG,OAAO,GAAG,MAAM;AACrC,eAAS,OAAO;AAChB,qBAAe,KAAK,UAAU,OAAO,CAAC;AAAA,IACxC;AAAA,IACA,CAAC,OAAO,cAAc;AAAA,EACxB;AAEA,SACE,oCAAC,SAAM,KAAI,QACT,oCAAC,SAAM,KAAI,QACT,oCAAC,QAAK,MAAK,MAAK,IAAI,OAAK,YAEzB,GACA,oCAAC,QAAK,MAAK,MAAK,GAAE,YAAS,wEAE3B,GACA,oCAAC,iBAAc,aAAY,eAAc,OAAO,MAAM,QAAQ,UAAU,CAAC,MAAM,OAAO,EAAE,QAAQ,EAAE,cAAc,MAAM,CAAC,GAAG,CAC5H,GACA,oCAAC,SAAM,KAAI,QACT,oCAAC,QAAK,MAAK,MAAK,IAAI,OAAK,qBAEzB,GACA,oCAAC,QAAK,MAAK,MAAK,GAAE,YAAS,2EAE3B,GACA,oCAAC,iBAAc,aAAY,8BAA6B,OAAO,MAAM,OAAO,UAAU,CAAC,MAAM,OAAO,EAAE,OAAO,EAAE,cAAc,MAAM,CAAC,GAAG,CACzI,CACF;AAEJ;","names":[]}
@@ -0,0 +1,392 @@
1
+ import {
2
+ BaseAvatar
3
+ } from "./chunk-XVA7QRVH.js";
4
+ import {
5
+ DismissibleAlert
6
+ } from "./chunk-IFWKRCFF.js";
7
+ import {
8
+ actionAlertStyles
9
+ } from "./chunk-6GKJR52N.js";
10
+ import {
11
+ useBlocknoteHandlers
12
+ } from "./chunk-4DGCCXD6.js";
13
+ import "./chunk-7W7UUUIE.js";
14
+ import "./chunk-TS2LNBF2.js";
15
+ import {
16
+ parseJsonSafe
17
+ } from "./chunk-KLLMJ4U3.js";
18
+
19
+ // src/mantine/blocks/action/actionTypes/pod/memberMultiSelect/MemberMultiSelectFlowDetail.tsx
20
+ import React, { useCallback, useMemo, useRef, useState } from "react";
21
+ import { ActionIcon, Badge, Button, Flex, Group, Loader, NumberInput, Paper, Select, Stack, Switch, Text, TextInput } from "@mantine/core";
22
+ import { IconSearch, IconAlertCircle, IconCheck, IconX } from "@tabler/icons-react";
23
+ function normalizeMember(m) {
24
+ return {
25
+ did: m.did || "",
26
+ role: m.role || "Member",
27
+ votingPower: typeof m.votingPower === "number" ? m.votingPower : 1,
28
+ displayName: m.displayName || m.did || "Unknown",
29
+ avatarUrl: m.avatarUrl ?? null
30
+ };
31
+ }
32
+ var ROLE_OPTIONS = [
33
+ { value: "Admin", label: "Admin" },
34
+ { value: "Member", label: "Member" },
35
+ { value: "Observer", label: "Observer" }
36
+ ];
37
+ function validateCategorical(list) {
38
+ if (list.length === 0) return "At least one member is required";
39
+ if (!list.some((m) => m.role === "Admin")) return "At least one member must have the Admin role";
40
+ const dids = list.map((m) => m.did);
41
+ if (new Set(dids).size !== dids.length) return "Duplicate member DIDs are not allowed";
42
+ for (const m of list) {
43
+ if (!Number.isInteger(m.votingPower) || m.votingPower <= 0) return `Voting power must be a positive integer (member: ${m.did})`;
44
+ }
45
+ return null;
46
+ }
47
+ function validateMultisig(list, threshold) {
48
+ if (list.length === 0) return "At least one member is required";
49
+ const dids = list.map((m) => m.did);
50
+ if (new Set(dids).size !== dids.length) return "Duplicate member DIDs are not allowed";
51
+ if (!Number.isInteger(threshold) || threshold < 1) return "Threshold must be a positive integer";
52
+ if (threshold > list.length) return `Threshold (${threshold}) cannot exceed member count (${list.length})`;
53
+ return null;
54
+ }
55
+ var MemberSearch = ({ members, onAdd, isDisabled }) => {
56
+ const handlers = useBlocknoteHandlers();
57
+ const handlersRef = useRef(handlers);
58
+ handlersRef.current = handlers;
59
+ const [query, setQuery] = useState("");
60
+ const [searching, setSearching] = useState(false);
61
+ const [results, setResults] = useState([]);
62
+ const [searchError, setSearchError] = useState(null);
63
+ const debounceRef = useRef(null);
64
+ const runSearch = useCallback(async (q) => {
65
+ const trimmed = q.trim();
66
+ if (trimmed.length < 2) {
67
+ setResults([]);
68
+ return;
69
+ }
70
+ setSearching(true);
71
+ setSearchError(null);
72
+ try {
73
+ const h = handlersRef.current;
74
+ if (h.searchUsers) {
75
+ const res = await h.searchUsers(trimmed);
76
+ if (!Array.isArray(res)) {
77
+ setResults([]);
78
+ return;
79
+ }
80
+ setResults(res.map((r) => ({ did: r.did, displayName: r.displayName || r.did, avatarUrl: r.avatarUrl, matrixAddress: r.address })));
81
+ } else if (trimmed.startsWith("@") && trimmed.includes(":")) {
82
+ const profile = await h.getMatrixInfoPerDid(trimmed);
83
+ if (!profile?.did) {
84
+ setSearchError("User not found");
85
+ return;
86
+ }
87
+ setResults([{ did: profile.did, displayName: profile.displayname || trimmed, avatarUrl: profile.avatarUrl, matrixAddress: profile.walletAddress }]);
88
+ } else {
89
+ setSearchError("Enter a Matrix ID directly (e.g. @user:matrix.ixo.world)");
90
+ }
91
+ } catch (err) {
92
+ setSearchError(err instanceof Error ? err.message : "Search failed");
93
+ setResults([]);
94
+ } finally {
95
+ setSearching(false);
96
+ }
97
+ }, []);
98
+ const handleQueryChange = useCallback(
99
+ (value) => {
100
+ setQuery(value);
101
+ if (debounceRef.current) clearTimeout(debounceRef.current);
102
+ debounceRef.current = setTimeout(() => runSearch(value), 350);
103
+ },
104
+ [runSearch]
105
+ );
106
+ return /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(
107
+ TextInput,
108
+ {
109
+ placeholder: handlers.searchUsers ? "Search by name, or paste a domain DID or ixo1\u2026 address" : "Search by name or @user:matrix.ixo.world",
110
+ leftSection: /* @__PURE__ */ React.createElement(IconSearch, { size: 16 }),
111
+ rightSection: searching ? /* @__PURE__ */ React.createElement(Loader, { size: 14 }) : null,
112
+ value: query,
113
+ onChange: (e) => handleQueryChange(e.currentTarget.value),
114
+ onKeyDown: (e) => {
115
+ if (e.key === "Enter") {
116
+ e.preventDefault();
117
+ runSearch(query);
118
+ }
119
+ },
120
+ disabled: isDisabled,
121
+ size: "sm"
122
+ }
123
+ ), results.length > 0 && /* @__PURE__ */ React.createElement(Paper, { withBorder: true, style: { maxHeight: 200, overflowY: "auto", borderRadius: 8 } }, /* @__PURE__ */ React.createElement(Stack, { gap: 0 }, results.map((user) => {
124
+ const already = members.some((m) => m.did === user.did);
125
+ return /* @__PURE__ */ React.createElement(
126
+ Button,
127
+ {
128
+ key: user.did,
129
+ variant: "subtle",
130
+ justify: "flex-start",
131
+ disabled: already || isDisabled,
132
+ onClick: () => {
133
+ onAdd(user);
134
+ setQuery("");
135
+ setResults([]);
136
+ },
137
+ styles: { root: { borderRadius: 0, height: "auto", padding: "8px 12px" } }
138
+ },
139
+ /* @__PURE__ */ React.createElement(Flex, { align: "center", gap: "sm" }, /* @__PURE__ */ React.createElement(BaseAvatar, { src: user.avatarUrl, did: user.did, size: 26 }), /* @__PURE__ */ React.createElement(Stack, { gap: 0 }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500, c: already ? "dimmed" : void 0 }, user.displayName), user.matrixAddress && /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, user.matrixAddress), already && /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed" }, "Already added")))
140
+ );
141
+ }))), searchError && /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "orange", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "xs" }, searchError)), query.trim().length >= 2 && !searching && results.length === 0 && !searchError && /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", pl: 4 }, 'No users found matching "', query, '"'));
142
+ };
143
+ var MemberMultiSelectFlowDetail = ({ inputs, block, runtime, isDisabled, executeAction }) => {
144
+ const handlers = useBlocknoteHandlers();
145
+ const handlersRef = useRef(handlers);
146
+ handlersRef.current = handlers;
147
+ const parsed = parseJsonSafe(inputs, { groupType: "categorical" });
148
+ const groupType = parsed.groupType || "categorical";
149
+ const creatorDid = useMemo(() => {
150
+ try {
151
+ return handlers?.getCurrentUser?.()?.address || "";
152
+ } catch {
153
+ return "";
154
+ }
155
+ }, []);
156
+ const [members, setMembers] = useState(() => {
157
+ if (Array.isArray(runtime.output?.members) && runtime.output.members.length > 0) return runtime.output.members.map(normalizeMember);
158
+ if (groupType === "categorical" || groupType === "multisig") {
159
+ return creatorDid ? [{ did: creatorDid, role: "Admin", votingPower: 1, displayName: "You", avatarUrl: null }] : [];
160
+ }
161
+ return [];
162
+ });
163
+ const [multisigThreshold, setMultisigThreshold] = useState(runtime.output?.multisigThreshold ?? 2);
164
+ const [nftContractAddress, setNftContractAddress] = useState(runtime.output?.nftContractAddress ?? "");
165
+ const [isExistingToken, setIsExistingToken] = useState(runtime.output?.tokenConfig ? runtime.output.tokenConfig.isExistingToken : true);
166
+ const [tokenAddress, setTokenAddress] = useState(runtime.output?.tokenConfig?.tokenAddress ?? "");
167
+ const [tokenName, setTokenName] = useState(runtime.output?.tokenConfig?.tokenName ?? "");
168
+ const [tokenSymbol, setTokenSymbol] = useState(runtime.output?.tokenConfig?.tokenSymbol ?? "");
169
+ const [tokenSupply, setTokenSupply] = useState(runtime.output?.tokenConfig?.tokenSupply ?? 1e7);
170
+ const creatorResolvedRef = useRef(false);
171
+ React.useEffect(() => {
172
+ if (creatorResolvedRef.current || !creatorDid) return;
173
+ const h = handlersRef.current;
174
+ if (!h.getMatrixInfoPerDid) return;
175
+ creatorResolvedRef.current = true;
176
+ h.getMatrixInfoPerDid(creatorDid).then((profile) => {
177
+ if (!profile?.displayname) return;
178
+ setMembers(
179
+ (prev) => prev.map((m) => m.did === creatorDid && m.displayName === "You" ? { ...m, displayName: profile.displayname || "You", avatarUrl: profile.avatarUrl ?? null } : m)
180
+ );
181
+ }).catch(() => {
182
+ });
183
+ }, [creatorDid]);
184
+ const [validationError, setValidationError] = useState(null);
185
+ const handleAddMember = useCallback((user) => {
186
+ setMembers((prev) => {
187
+ if (prev.some((m) => m.did === user.did)) return prev;
188
+ return [...prev, { did: user.did, role: "Member", votingPower: 1, displayName: user.displayName, avatarUrl: user.avatarUrl }];
189
+ });
190
+ setValidationError(null);
191
+ }, []);
192
+ const handleRemoveMember = useCallback((index) => {
193
+ setMembers((prev) => prev.filter((_, i) => i !== index));
194
+ setValidationError(null);
195
+ }, []);
196
+ const handleUpdateMember = useCallback((index, patch) => {
197
+ setMembers((prev) => prev.map((m, i) => i === index ? { ...m, ...patch } : m));
198
+ setValidationError(null);
199
+ }, []);
200
+ const handleConfirm = useCallback(async () => {
201
+ let err = null;
202
+ let output = {};
203
+ switch (groupType) {
204
+ case "categorical":
205
+ err = validateCategorical(members);
206
+ if (err) break;
207
+ output = { members: members.map(({ did, role, votingPower }) => ({ did, role, votingPower })) };
208
+ break;
209
+ case "multisig":
210
+ err = validateMultisig(members, multisigThreshold);
211
+ if (err) break;
212
+ output = {
213
+ members: members.map(({ did }) => ({ did, role: "Member", votingPower: 1 })),
214
+ multisigThreshold
215
+ };
216
+ break;
217
+ case "nftStaking":
218
+ if (!nftContractAddress.trim()) {
219
+ err = "NFT contract address is required";
220
+ break;
221
+ }
222
+ output = { nftContractAddress: nftContractAddress.trim() };
223
+ break;
224
+ case "tokenStaking":
225
+ if (isExistingToken) {
226
+ if (!tokenAddress.trim()) {
227
+ err = "Token contract address is required";
228
+ break;
229
+ }
230
+ output = { tokenConfig: { isExistingToken: true, tokenAddress: tokenAddress.trim(), tokenName: "", tokenSymbol: "", tokenSupply: 0 } };
231
+ } else {
232
+ if (!tokenName.trim()) {
233
+ err = "Token name is required";
234
+ break;
235
+ }
236
+ if (!tokenSymbol.trim()) {
237
+ err = "Token symbol is required";
238
+ break;
239
+ }
240
+ if (!tokenSupply || tokenSupply < 1) {
241
+ err = "Token supply must be at least 1";
242
+ break;
243
+ }
244
+ output = { tokenConfig: { isExistingToken: false, tokenAddress: "", tokenName: tokenName.trim(), tokenSymbol: tokenSymbol.trim(), tokenSupply } };
245
+ }
246
+ break;
247
+ }
248
+ if (err) {
249
+ setValidationError(err);
250
+ return;
251
+ }
252
+ setValidationError(null);
253
+ await executeAction?.({ runtimeInputs: { groupType, ...output } });
254
+ }, [executeAction, groupType, members, multisigThreshold, nftContractAddress, isExistingToken, tokenAddress, tokenName, tokenSymbol, tokenSupply]);
255
+ const renderCategorical = () => /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(MemberSearch, { members, onAdd: handleAddMember, isDisabled }), members.length > 0 && /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "xs", fw: 600, c: "dimmed" }, "MEMBERS (", members.length, ")"), members.map((m, i) => {
256
+ const isCreator = m.did === creatorDid && i === 0;
257
+ return /* @__PURE__ */ React.createElement(Paper, { key: `${m.did}-${i}`, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React.createElement(Group, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React.createElement(BaseAvatar, { src: m.avatarUrl, did: m.did, size: 32 }), /* @__PURE__ */ React.createElement(Stack, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500, lineClamp: 1 }, m.displayName, isCreator && /* @__PURE__ */ React.createElement(Text, { span: true, size: "xs", c: "dimmed", ml: 6 }, "(you)")), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", lineClamp: 1 }, (m.did || "").length > 40 ? `${m.did.slice(0, 20)}\u2026${m.did.slice(-14)}` : m.did)), /* @__PURE__ */ React.createElement(
258
+ Select,
259
+ {
260
+ value: m.role,
261
+ onChange: (v) => handleUpdateMember(i, { role: v || "Member" }),
262
+ data: ROLE_OPTIONS,
263
+ style: { width: 110 },
264
+ disabled: isDisabled,
265
+ size: "xs",
266
+ withCheckIcon: false,
267
+ comboboxProps: { width: 130 }
268
+ }
269
+ ), /* @__PURE__ */ React.createElement(Group, { gap: 4, wrap: "nowrap" }, /* @__PURE__ */ React.createElement(
270
+ Button,
271
+ {
272
+ variant: "subtle",
273
+ size: "compact-xs",
274
+ px: 6,
275
+ disabled: isDisabled || m.votingPower <= 1,
276
+ onClick: () => handleUpdateMember(i, { votingPower: m.votingPower - 1 })
277
+ },
278
+ "\u2212"
279
+ ), /* @__PURE__ */ React.createElement(Text, { size: "sm", w: 20, ta: "center" }, m.votingPower), /* @__PURE__ */ React.createElement(Button, { variant: "subtle", size: "compact-xs", px: 6, disabled: isDisabled, onClick: () => handleUpdateMember(i, { votingPower: m.votingPower + 1 }) }, "+")), /* @__PURE__ */ React.createElement(ActionIcon, { color: "red", variant: "subtle", size: "sm", onClick: () => handleRemoveMember(i), disabled: isDisabled || members.length === 1 }, /* @__PURE__ */ React.createElement(IconX, { size: 14 }))));
280
+ })));
281
+ const renderMultisig = () => /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(
282
+ NumberInput,
283
+ {
284
+ label: "Signature threshold",
285
+ description: "Minimum number of members that must sign to pass a proposal",
286
+ value: multisigThreshold,
287
+ onChange: (v) => setMultisigThreshold(typeof v === "number" ? v : 2),
288
+ min: 1,
289
+ max: members.length || 99,
290
+ disabled: isDisabled,
291
+ size: "sm"
292
+ }
293
+ ), /* @__PURE__ */ React.createElement(MemberSearch, { members, onAdd: handleAddMember, isDisabled }), members.length > 0 && /* @__PURE__ */ React.createElement(Stack, { gap: "xs" }, /* @__PURE__ */ React.createElement(Group, { gap: "xs" }, /* @__PURE__ */ React.createElement(Text, { size: "xs", fw: 600, c: "dimmed" }, "SIGNATORIES (", members.length, ")"), /* @__PURE__ */ React.createElement(Badge, { size: "xs", color: "orange", variant: "light" }, "threshold: ", multisigThreshold, " of ", members.length)), members.map((m, i) => /* @__PURE__ */ React.createElement(Paper, { key: `${m.did}-${i}`, withBorder: true, p: "sm", style: { borderRadius: 10 } }, /* @__PURE__ */ React.createElement(Group, { wrap: "nowrap", gap: "sm", align: "center" }, /* @__PURE__ */ React.createElement(BaseAvatar, { src: m.avatarUrl, did: m.did, size: 32 }), /* @__PURE__ */ React.createElement(Stack, { gap: 0, style: { flex: 1, minWidth: 0 } }, /* @__PURE__ */ React.createElement(Text, { size: "sm", fw: 500, lineClamp: 1 }, m.displayName), /* @__PURE__ */ React.createElement(Text, { size: "xs", c: "dimmed", lineClamp: 1 }, (m.did || "").length > 44 ? `${m.did.slice(0, 22)}\u2026${m.did.slice(-16)}` : m.did)), /* @__PURE__ */ React.createElement(ActionIcon, { color: "red", variant: "subtle", size: "sm", onClick: () => handleRemoveMember(i), disabled: isDisabled || members.length === 1 }, /* @__PURE__ */ React.createElement(IconX, { size: 14 })))))));
294
+ const renderNftStaking = () => /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "blue", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "For NFT staking groups, voting power is derived from on-chain NFT holdings. Provide the NFT contract address \u2014 no explicit member list is needed.")), /* @__PURE__ */ React.createElement(
295
+ TextInput,
296
+ {
297
+ label: "NFT contract address",
298
+ description: "The address of the NFT contract used for voting power",
299
+ placeholder: "contract1abc...",
300
+ value: nftContractAddress,
301
+ onChange: (e) => {
302
+ setNftContractAddress(e.currentTarget.value);
303
+ setValidationError(null);
304
+ },
305
+ disabled: isDisabled,
306
+ size: "sm"
307
+ }
308
+ ));
309
+ const renderTokenStaking = () => /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(DismissibleAlert, { color: "blue", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, "For token staking groups, voting power is derived from staked governance tokens. Use an existing token or create a new one.")), /* @__PURE__ */ React.createElement(
310
+ Switch,
311
+ {
312
+ label: isExistingToken ? "Use an existing token" : "Create a new token",
313
+ checked: isExistingToken,
314
+ onChange: (e) => {
315
+ setIsExistingToken(e.currentTarget.checked);
316
+ setValidationError(null);
317
+ },
318
+ disabled: isDisabled
319
+ }
320
+ ), isExistingToken ? /* @__PURE__ */ React.createElement(
321
+ TextInput,
322
+ {
323
+ label: "Token contract address",
324
+ description: "CW20 token contract address or native denom",
325
+ placeholder: "contract1abc...",
326
+ value: tokenAddress,
327
+ onChange: (e) => {
328
+ setTokenAddress(e.currentTarget.value);
329
+ setValidationError(null);
330
+ },
331
+ disabled: isDisabled,
332
+ size: "sm"
333
+ }
334
+ ) : /* @__PURE__ */ React.createElement(Stack, { gap: "sm" }, /* @__PURE__ */ React.createElement(
335
+ TextInput,
336
+ {
337
+ label: "Token name",
338
+ placeholder: "My Governance Token",
339
+ value: tokenName,
340
+ onChange: (e) => {
341
+ setTokenName(e.currentTarget.value);
342
+ setValidationError(null);
343
+ },
344
+ disabled: isDisabled,
345
+ size: "sm"
346
+ }
347
+ ), /* @__PURE__ */ React.createElement(
348
+ TextInput,
349
+ {
350
+ label: "Token symbol",
351
+ placeholder: "MGT",
352
+ value: tokenSymbol,
353
+ onChange: (e) => {
354
+ setTokenSymbol(e.currentTarget.value);
355
+ setValidationError(null);
356
+ },
357
+ disabled: isDisabled,
358
+ size: "sm"
359
+ }
360
+ ), /* @__PURE__ */ React.createElement(
361
+ NumberInput,
362
+ {
363
+ label: "Total supply",
364
+ description: "Total number of tokens to mint",
365
+ value: tokenSupply,
366
+ onChange: (v) => {
367
+ setTokenSupply(typeof v === "number" ? v : 1e7);
368
+ setValidationError(null);
369
+ },
370
+ min: 1,
371
+ disabled: isDisabled,
372
+ size: "sm",
373
+ thousandSeparator: ","
374
+ }
375
+ )));
376
+ return /* @__PURE__ */ React.createElement(Stack, { gap: "md" }, /* @__PURE__ */ React.createElement(Stack, { gap: 2 }, /* @__PURE__ */ React.createElement(Text, { fw: 600 }, block?.props?.title || "Members"), /* @__PURE__ */ React.createElement(Text, { size: "sm", c: "dimmed" }, block?.props?.description || (() => {
377
+ switch (groupType) {
378
+ case "multisig":
379
+ return "Add the signatories for this multisig group and set the approval threshold.";
380
+ case "nftStaking":
381
+ return "Provide the NFT contract address. Voting power comes from staked NFT holdings.";
382
+ case "tokenStaking":
383
+ return "Configure the governance token. Voting power comes from staked token holdings.";
384
+ default:
385
+ return "Search for members by name or Matrix ID. Set roles and voting power.";
386
+ }
387
+ })())), groupType === "categorical" ? renderCategorical() : null, groupType === "multisig" ? renderMultisig() : null, groupType === "nftStaking" ? renderNftStaking() : null, groupType === "tokenStaking" ? renderTokenStaking() : null, validationError && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconAlertCircle, { size: 16 }), color: "red", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, validationError)), runtime.state === "completed" && !validationError && /* @__PURE__ */ React.createElement(DismissibleAlert, { icon: /* @__PURE__ */ React.createElement(IconCheck, { size: 16 }), color: "green", styles: actionAlertStyles }, /* @__PURE__ */ React.createElement(Text, { size: "sm" }, groupType === "nftStaking" && "NFT contract address confirmed.", groupType === "tokenStaking" && "Token configuration confirmed.", groupType === "categorical" && `${members.length} member${members.length !== 1 ? "s" : ""} confirmed.`, groupType === "multisig" && `${members.length} signatories confirmed (threshold: ${multisigThreshold}).`)), /* @__PURE__ */ React.createElement(Button, { onClick: handleConfirm, disabled: isDisabled }, "Confirm Members"));
388
+ };
389
+ export {
390
+ MemberMultiSelectFlowDetail
391
+ };
392
+ //# sourceMappingURL=MemberMultiSelectFlowDetail-6C4ZMSDR.js.map