@abtnode/blocklet-services 1.16.47-beta-20250721-130532-61549a96 → 1.16.47-beta-20250724-080141-d80ab374

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 (283) hide show
  1. package/api/index.js +3 -0
  2. package/api/libs/image.js +5 -1
  3. package/api/routes/access-key.js +59 -0
  4. package/api/routes/oauth/client.js +9 -0
  5. package/api/services/auth/session.js +14 -11
  6. package/api/util/attach-shared-utils.js +11 -8
  7. package/dist/assets/{AdapterDayjs-Dc_cn1Wv.js → AdapterDayjs-DJ-f1i8A.js} +1 -1
  8. package/dist/assets/{Google-BYGsR9Bd.js → Google-BvsSmJCS.js} +3 -3
  9. package/dist/assets/{access-control-oCszV5zC.js → access-control-DgyeLhBf.js} +1 -1
  10. package/dist/assets/actions-CRUvIBLz.js +1 -0
  11. package/dist/assets/{add-component-core-GYYnyhPI.js → add-component-core-CshRctcL.js} +29 -29
  12. package/dist/assets/add-resource-C6AR_ENP.js +1 -0
  13. package/dist/assets/{addon-m7dEcFSm.js → addon-Cioeq7ZM.js} +1 -1
  14. package/dist/assets/{advanced-BhS7b_np.js → advanced-DF-eCD_V.js} +3 -3
  15. package/dist/assets/aigne-DPVDIAAv.js +10 -0
  16. package/dist/assets/api-BfIB6faS.js +1 -0
  17. package/dist/assets/appearance-CL1LSpJB.js +1 -0
  18. package/dist/assets/ar-CcCysAXs.js +7 -0
  19. package/dist/assets/ar-VhkYkk5Z.js +1 -0
  20. package/dist/assets/{arrow-down.svg-6steA5un.js → arrow-down.svg-B9dO_KDq.js} +1 -1
  21. package/dist/assets/{audit-logs-gbfUafHi.js → audit-logs-EC_F2BOT.js} +2 -2
  22. package/dist/assets/{authorize-Bfey1QAy.js → authorize-DgLJOPDK.js} +1 -1
  23. package/dist/assets/{base-chart-u6OIGONc.js → base-chart-2nBOSo9s.js} +1 -1
  24. package/dist/assets/{base32-DBDFptL1.js → base32-TX5fATAF.js} +1 -1
  25. package/dist/assets/branding-7KMxNl9d.js +44 -0
  26. package/dist/assets/{branding-itFeNCQ6.js → branding-B6_aWuFR.js} +2 -2
  27. package/dist/assets/{bundle-avatar-DkLBEfff.js → bundle-avatar-BPnP6pIL.js} +1 -1
  28. package/dist/assets/button-CEiQto3g.js +1 -0
  29. package/dist/assets/{click-to-copy-m7BzOuWH.js → click-to-copy-BqGY_Kr7.js} +1 -1
  30. package/dist/assets/{cloneDeep-BpNWeRQ9.js → cloneDeep-CKVXBkcT.js} +1 -1
  31. package/dist/assets/{collapse-DfvukfIl.js → collapse-jk2ONGPl.js} +1 -1
  32. package/dist/assets/{complete-B4B7REuC.js → complete-zgzlWGY3.js} +4 -4
  33. package/dist/assets/{component-DMzCzNlm.js → component-BiE6SG5y.js} +63 -63
  34. package/dist/assets/{config-D-z5vAfP.js → config-Bra9VdE1.js} +2 -2
  35. package/dist/assets/config-CPpGYWww.js +28 -0
  36. package/dist/assets/{config-D3XTFUmZ.js → config-W_iStCFi.js} +1 -1
  37. package/dist/assets/{config-navigation-CfGhB5-E.js → config-navigation-D63aLfma.js} +9 -9
  38. package/dist/assets/config-space-DFnzGBOV.js +1 -0
  39. package/dist/assets/{confirm-B4BzkG04.js → confirm-5JMMSGdh.js} +1 -1
  40. package/dist/assets/{connect-JlblxSAY.js → connect-55nmllvA.js} +1 -1
  41. package/dist/assets/connect-Cph9RbRv.js +1 -0
  42. package/dist/assets/connect-to-CvyIrlXc.js +1 -0
  43. package/dist/assets/{content-layout-BaDbLmL5.js → content-layout-Mn94hzXe.js} +1 -1
  44. package/dist/assets/{createClass-g8bSPTyV.js → createClass-Ig9AWyIK.js} +1 -1
  45. package/dist/assets/{dashboard-CBpVHcLw.js → dashboard-BXgUTFa6.js} +8 -8
  46. package/dist/assets/de-BTXwRUYy.js +7 -0
  47. package/dist/assets/de-BYci0FoU.js +1 -0
  48. package/dist/assets/{delete-confirm-DhfRzwF1.js → delete-confirm-saPgrAIL.js} +1 -1
  49. package/dist/assets/{did-address-CdYAzzjR.js → did-address-D4l1uYd1.js} +1 -1
  50. package/dist/assets/domain-ClY1yq1j.js +9 -0
  51. package/dist/assets/domain-action-card-Ds6lQa7Z.js +28 -0
  52. package/dist/assets/domains-C_XAIIRT.js +1 -0
  53. package/dist/assets/{dot-OPeVWPUi.js → dot-BOuza8rS.js} +1 -1
  54. package/dist/assets/{email-BTKvn_fl.js → email-D07y9XJo.js} +1 -1
  55. package/dist/assets/empty-DhZfJeme.js +1 -0
  56. package/dist/assets/{empty-spinner-C6wgiyAQ.js → empty-spinner-D_3bEG2p.js} +1 -1
  57. package/dist/assets/engine-Bm7Qp-7f.js +1 -0
  58. package/dist/assets/es-1PoIOrwC.js +1 -0
  59. package/dist/assets/es-DCyLy_vM.js +9 -0
  60. package/dist/assets/{exchange-passport-B-9fNsX9.js → exchange-passport-B0LodWCE.js} +1 -1
  61. package/dist/assets/{form-BX4g8soo.js → form-D55muuDj.js} +1 -1
  62. package/dist/assets/form-text-input-BHd2ybwR.js +11 -0
  63. package/dist/assets/form-wrapper-DuJOKczF.js +99 -0
  64. package/dist/assets/fr-CNGOyo0v.js +7 -0
  65. package/dist/assets/fr-m47FzEWr.js +1 -0
  66. package/dist/assets/{fuel-DYTqXaPb.js → fuel-CYEtfdZk.js} +1 -1
  67. package/dist/assets/gen-access-key-BDWXKS6s.js +1 -0
  68. package/dist/assets/gen-simple-access-key-C-Aym19M.js +1 -0
  69. package/dist/assets/get-safe-url-CZlaSf1L.js +1 -0
  70. package/dist/assets/hi-Dcj1EDTy.js +1 -0
  71. package/dist/assets/hi-DsFnKfzk.js +5 -0
  72. package/dist/assets/{home-BL8xoBlc.js → home-CAJwSYRb.js} +1 -1
  73. package/dist/assets/id-CsK9Cnbo.js +7 -0
  74. package/dist/assets/id-UvUReF_3.js +1 -0
  75. package/dist/assets/{iframe-BTaRNGRY.js → iframe-DCdtoFjc.js} +1 -1
  76. package/dist/assets/{index-lf4wyjkd.js → index-1WiLWIAu.js} +6 -6
  77. package/dist/assets/index-B0pGy8t9.js +55 -0
  78. package/dist/assets/{index-D3qROm47.js → index-B36DERG2.js} +1 -1
  79. package/dist/assets/{index-BC395sak.js → index-B5_zLKFf.js} +1 -1
  80. package/dist/assets/index-BCWYWGPf.js +124 -0
  81. package/dist/assets/{index-CgCJ2qDh.js → index-BGoUXEmc.js} +88 -88
  82. package/dist/assets/{index-DseoFU10.js → index-BL2NEiva.js} +1 -1
  83. package/dist/assets/index-BSJbc4Ic.js +1 -0
  84. package/dist/assets/{index-DjKmasIZ.js → index-B_CAM-3t.js} +2 -2
  85. package/dist/assets/{index-Dy8syryD.js → index-BmCyA4MW.js} +3 -3
  86. package/dist/assets/index-Bzde7Bh8.js +113 -0
  87. package/dist/assets/{index-DyH1BrER.js → index-C7DDH7Uf.js} +10 -10
  88. package/dist/assets/{index-EIX4798q.js → index-C80MI1u_.js} +1 -1
  89. package/dist/assets/index-C8T12jiJ.js +1 -0
  90. package/dist/assets/{index-BaBIefeb.js → index-CGngFFes.js} +1 -1
  91. package/dist/assets/{index-CW67obch.js → index-CRFxmuV0.js} +1 -1
  92. package/dist/assets/index-CZXuMAQy.js +242 -0
  93. package/dist/assets/index-Ce_ilge5.js +271 -0
  94. package/dist/assets/index-CtENECgD.js +11 -0
  95. package/dist/assets/index-Cycplgtw.js +4 -0
  96. package/dist/assets/{index-DUnVGFh6.js → index-CzttGWll.js} +1 -1
  97. package/dist/assets/{index-BUJ5QfC4.js → index-D2MS4PNu.js} +6 -6
  98. package/dist/assets/{index-C-AuC2Mk.js → index-D3pV4Lj0.js} +1 -1
  99. package/dist/assets/{index-DcwzA8G_.js → index-DLHMwUmK.js} +1 -1
  100. package/dist/assets/{index-LvmCZD51.js → index-DpP3MEz0.js} +3 -3
  101. package/dist/assets/{index-D6kePAD5.js → index-DwEMr0X-.js} +6 -6
  102. package/dist/assets/{index-Cbxz8oHT.js → index-ElG08lIx.js} +1 -1
  103. package/dist/assets/{index-cCGBx0sL.js → index-Ft5IyfHH.js} +10 -10
  104. package/dist/assets/{index-D_5DFMMK.js → index-JVicMopH.js} +1 -1
  105. package/dist/assets/{index-SrN5SE_r.js → index-NVKZ_ZUS.js} +1 -1
  106. package/dist/assets/{index-Bo2cFOuR.js → index-UTcxT75j.js} +1 -1
  107. package/dist/assets/index-iY8rmPEZ.js +7 -0
  108. package/dist/assets/{invitation-CC5hPf7T.js → invitation-BEd7MxhL.js} +3 -3
  109. package/dist/assets/{invite-CreQ98MA.js → invite-C2gqMFFc.js} +1 -1
  110. package/dist/assets/isURL-sHTYO46x.js +2 -0
  111. package/dist/assets/{issue-passport-CIYcm6iB.js → issue-passport-ZvHPiNMo.js} +1 -1
  112. package/dist/assets/item-BlUr7rKO.js +1 -0
  113. package/dist/assets/ja-Cw02X6OV.js +1 -0
  114. package/dist/assets/ja-bb6qPt27.js +9 -0
  115. package/dist/assets/ko-DZSgmgs9.js +1 -0
  116. package/dist/assets/ko-DxiDEd1I.js +9 -0
  117. package/dist/assets/{landing-page-DOi_4Ca6.js → landing-page-CTjTjqyj.js} +1 -1
  118. package/dist/assets/{launch-result-message-Dwnqr8Lq.js → launch-result-message-3VxQH2Cy.js} +1 -1
  119. package/dist/assets/{layout-CIen07bA.js → layout-YAJmqZE8.js} +1 -1
  120. package/dist/assets/list-Bty_q29b.js +2 -0
  121. package/dist/assets/{list-B8ZhwNC1.js → list-Y-a4PO0u.js} +2 -2
  122. package/dist/assets/{list-header-CGX6Hi0X.js → list-header-DLhxtl5g.js} +1 -1
  123. package/dist/assets/localization-Bd37mWlD.js +1 -0
  124. package/dist/assets/{log-C9DU0cCG.js → log-B9tZ4qc6.js} +1 -1
  125. package/dist/assets/logger-MT1V7vOw.js +1 -0
  126. package/dist/assets/login-D-903-kb.js +1 -0
  127. package/dist/assets/{login-oauth-callback-C2SqP1bW.js → login-oauth-callback-B8e--CGo.js} +1 -1
  128. package/dist/assets/logo-uploader-BDvl-p1h.js +30 -0
  129. package/dist/assets/lost-passport-C-bcfQGt.js +168 -0
  130. package/dist/assets/observability-hUM5rYTW.js +1 -0
  131. package/dist/assets/{omit-CxEI1_wm.js → omit-CXy6Rymi.js} +1 -1
  132. package/dist/assets/{open-window-RuAUils2.js → open-window-BeKV58_Y.js} +1 -1
  133. package/dist/assets/{over-due-invoice-payment-DhK6jNNQ.js → over-due-invoice-payment-YS7NZYQD.js} +1 -1
  134. package/dist/assets/{overview-BVSh5o7h.js → overview-re3EXfMP.js} +3 -3
  135. package/dist/assets/{page-header-BycH8S9r.js → page-header-DMbjH45Q.js} +1 -1
  136. package/dist/assets/{passport-item-D7sQ_FxN.js → passport-item-8olNdxYA.js} +1 -1
  137. package/dist/assets/{permission-C79TpiNV.js → permission-D-kAjshH.js} +1 -1
  138. package/dist/assets/playground-wmO_IQQj.js +1 -0
  139. package/dist/assets/preferences-Blutv5lP.js +1 -0
  140. package/dist/assets/profile-embed-BOKrgfV5.js +1 -0
  141. package/dist/assets/pt-Yj5llJx7.js +5 -0
  142. package/dist/assets/pt-fKCXneeH.js +1 -0
  143. package/dist/assets/publish-resource-D_O5YA9z.js +1 -0
  144. package/dist/assets/{react-beautiful-dnd.esm-DwkY3sYg.js → react-beautiful-dnd.esm-D2jtRKWT.js} +1 -1
  145. package/dist/assets/{react-stripe.esm-BGPt6Wk8.js → react-stripe.esm-OZTdjjoB.js} +1 -1
  146. package/dist/assets/required-BE3i31mZ.js +6 -0
  147. package/dist/assets/ru-D59vFs72.js +1 -0
  148. package/dist/assets/ru-DaVu35Yr.js +5 -0
  149. package/dist/assets/runtime-BPzGyz-O.js +1 -0
  150. package/dist/assets/{sanitize-DSvGhymV.js → sanitize-DTRB99ZZ.js} +1 -1
  151. package/dist/assets/sdk-C6BkT6-0.js +1 -0
  152. package/dist/assets/section-dVgXR9AT.js +40 -0
  153. package/dist/assets/{security-BwF3YzTL.js → security-DnTqhJwZ.js} +4 -4
  154. package/dist/assets/session-ulvrJT-t.js +1 -0
  155. package/dist/assets/setup-DhVk3qh7.js +30 -0
  156. package/dist/assets/{shorten-label-BKNhALWt.js → shorten-label--tw3nR45.js} +1 -1
  157. package/dist/assets/{simple-select-DiucBfFO.js → simple-select-6w3ryEQx.js} +1 -1
  158. package/dist/assets/{spaces-D2uHzDSf.js → spaces-wJwcbibW.js} +1 -1
  159. package/dist/assets/{start-CCbI2h7_.js → start-DpiGz6e_.js} +1 -1
  160. package/dist/assets/{starting-progress-C2KBufhS.js → starting-progress-DQSw_Bxk.js} +1 -1
  161. package/dist/assets/status-T58XBbiV.js +1 -0
  162. package/dist/assets/{step-actions-C6aMtUZh.js → step-actions-DIkPOD9c.js} +1 -1
  163. package/dist/assets/{studio-B-QwZrdc.js → studio-BYS275wi.js} +1 -1
  164. package/dist/assets/{switch-control-88oLMAWm.js → switch-control-BuqCLgsC.js} +1 -1
  165. package/dist/assets/{table-tips-ZIxKRomr.js → table-tips-DQHiKZsk.js} +1 -1
  166. package/dist/assets/team-BESj-ofA.js +146 -0
  167. package/dist/assets/th-CmipfeuV.js +1 -0
  168. package/dist/assets/th-DEoqTEHf.js +5 -0
  169. package/dist/assets/traffic-Ck4_JTUO.js +1 -0
  170. package/dist/assets/{transfer-DWvn8JDa.js → transfer-D9h-sDAW.js} +2 -2
  171. package/dist/assets/{unsubscribe-DPIGic1H.js → unsubscribe-xEh30JTV.js} +1 -1
  172. package/dist/assets/{use-mobile-BhzP2Rp3.js → use-mobile-CiJJ-F32.js} +1 -1
  173. package/dist/assets/{use-mobile-BtGrkCtZ.js → use-mobile-DXb1p_2Q.js} +1 -1
  174. package/dist/assets/use-promise-window-open-I4QIABtm.js +1 -0
  175. package/dist/assets/{use-server-logo-BFuFRBQG.js → use-server-logo-BoNyOffw.js} +1 -1
  176. package/dist/assets/use-window-close-0exfy1za.js +2 -0
  177. package/dist/assets/{useAsync-DGzYJlYv.js → useAsync-NmGtaPYZ.js} +1 -1
  178. package/dist/assets/{useAsync-DcK0UTnz.js → useAsync-kpO9-9ye.js} +1 -1
  179. package/dist/assets/{useLocalStorage-BRPtTalQ.js → useLocalStorage-oSchpz1c.js} +1 -1
  180. package/dist/assets/user-center-yL13yU5N.js +126 -0
  181. package/dist/assets/{user-sessions-C2LvHnd6.js → user-sessions-7gxEZAmB.js} +1 -1
  182. package/dist/assets/{util-DtXj9fc3.js → util-D52ViY5P.js} +1 -1
  183. package/dist/assets/{util-BGfTex9R.js → util-H8b0otwY.js} +1 -1
  184. package/dist/assets/{vendor-arcblock-B78OG6SS.js → vendor-arcblock-C7W5M07l.js} +1 -1
  185. package/dist/assets/{vendor-hooks-HB6DqcLv.js → vendor-hooks-0NQwJuRY.js} +2 -2
  186. package/dist/assets/{vendor-mui-core-DWYIngcn.js → vendor-mui-core-CiGwt5P_.js} +2 -2
  187. package/dist/assets/{vendor-mui-x-nEbm5eNb.js → vendor-mui-x-CXaju64L.js} +1 -1
  188. package/dist/assets/{vendor-utils-J7aLFpEq.js → vendor-utils-DAj75QpF.js} +1 -1
  189. package/dist/assets/{vendor-ux-Dln42oC3.js → vendor-ux-CF8ziO7Y.js} +81 -80
  190. package/dist/assets/vi-D7Q19sbd.js +5 -0
  191. package/dist/assets/vi-DpNkWLxz.js +1 -0
  192. package/dist/assets/wait-connect-Cll9F6lE.js +1 -0
  193. package/dist/assets/wrap-locale-CsXU2piR.js +1 -0
  194. package/dist/assets/zh-BChkzbvC.js +1 -0
  195. package/dist/assets/{zh-C3O8IIjK.js → zh-BrUcq0vn.js} +1 -1
  196. package/dist/assets/zh-DkzyaEBh.js +10 -0
  197. package/dist/assets/zh-tw-BNjyxfNh.js +9 -0
  198. package/dist/assets/zh-tw-CjDPzOCU.js +1 -0
  199. package/dist/images/aigne-hub.jpg +0 -0
  200. package/dist/images/anthropic.png +0 -0
  201. package/dist/images/bedrock.png +0 -0
  202. package/dist/images/deepseek.png +0 -0
  203. package/dist/images/gemini.png +0 -0
  204. package/dist/images/ollama.png +0 -0
  205. package/dist/images/open-router.png +0 -0
  206. package/dist/images/openai.png +0 -0
  207. package/dist/images/xai.png +0 -0
  208. package/dist/index.html +6 -6
  209. package/dist/service-worker.js +1 -1
  210. package/package.json +47 -47
  211. package/dist/assets/actions-CeSIZN0M.js +0 -1
  212. package/dist/assets/add-resource-vcL8WXJK.js +0 -1
  213. package/dist/assets/api-BV16dSSm.js +0 -1
  214. package/dist/assets/appearance-BF-F41U0.js +0 -1
  215. package/dist/assets/ar-C5ipiHf8.js +0 -7
  216. package/dist/assets/ar-DCQblmBa.js +0 -1
  217. package/dist/assets/branding-Co1T-6R4.js +0 -54
  218. package/dist/assets/button-Cnj6R5bV.js +0 -1
  219. package/dist/assets/config-space-a6OXiuM7.js +0 -1
  220. package/dist/assets/connect-B-9mXcqo.js +0 -1
  221. package/dist/assets/connect-to-BL3HAXmC.js +0 -1
  222. package/dist/assets/de-D2XMSiJO.js +0 -7
  223. package/dist/assets/de-qK31O6-T.js +0 -1
  224. package/dist/assets/domain-action-card-B-0EUHm9.js +0 -28
  225. package/dist/assets/domain-q2p-uq0P.js +0 -9
  226. package/dist/assets/domains-BvFskQMv.js +0 -1
  227. package/dist/assets/engine-DHKpyPwC.js +0 -1
  228. package/dist/assets/es-BbK8BUZe.js +0 -9
  229. package/dist/assets/es-if48ykIx.js +0 -1
  230. package/dist/assets/fr-BGG_0fyt.js +0 -7
  231. package/dist/assets/fr-CgLauWUq.js +0 -1
  232. package/dist/assets/gen-access-key-DVBJadXn.js +0 -2
  233. package/dist/assets/get-safe-url-Ce6hawV-.js +0 -1
  234. package/dist/assets/hi-Xr6quGTW.js +0 -1
  235. package/dist/assets/hi-u6UuLwjV.js +0 -5
  236. package/dist/assets/id-C2MXmMK4.js +0 -1
  237. package/dist/assets/id-CIzxbBpP.js +0 -7
  238. package/dist/assets/index-5klv_mrK.js +0 -4
  239. package/dist/assets/index-B9-tuTku.js +0 -242
  240. package/dist/assets/index-B9GdL3BM.js +0 -124
  241. package/dist/assets/index-BVPDkm__.js +0 -1
  242. package/dist/assets/index-C_CqbmyE.js +0 -7
  243. package/dist/assets/index-CeczUnUx.js +0 -284
  244. package/dist/assets/index-CgRDnxac.js +0 -55
  245. package/dist/assets/index-D8X_0Jj0.js +0 -1
  246. package/dist/assets/index-gkhmzgqt.js +0 -113
  247. package/dist/assets/index-n78OcMXJ.js +0 -11
  248. package/dist/assets/item-C8OCvu8j.js +0 -1
  249. package/dist/assets/ja-Cfsi5Ugj.js +0 -9
  250. package/dist/assets/ja-YE6rPAFZ.js +0 -1
  251. package/dist/assets/ko-D-4Akfw8.js +0 -1
  252. package/dist/assets/ko-DXnv35ZL.js +0 -9
  253. package/dist/assets/list-DZy6xsmU.js +0 -2
  254. package/dist/assets/localization-CKs8paiI.js +0 -1
  255. package/dist/assets/logger-BAwrOeMG.js +0 -1
  256. package/dist/assets/login-Bnu0F5eS.js +0 -1
  257. package/dist/assets/logo-uploader-DgG1moIj.js +0 -133
  258. package/dist/assets/lost-passport-DtNgA2rm.js +0 -168
  259. package/dist/assets/preferences-DfEKF75U.js +0 -1
  260. package/dist/assets/profile-embed-LKUTgx9A.js +0 -1
  261. package/dist/assets/pt-BWEktz2b.js +0 -1
  262. package/dist/assets/pt-bwAs6AHq.js +0 -5
  263. package/dist/assets/publish-resource-BzjWpXe-.js +0 -1
  264. package/dist/assets/ru-BdE3cdVi.js +0 -5
  265. package/dist/assets/ru-CivYXtU3.js +0 -1
  266. package/dist/assets/runtime-Sobb0AXT.js +0 -1
  267. package/dist/assets/sdk-DzqJHXyQ.js +0 -1
  268. package/dist/assets/section-BqJWD2MT.js +0 -41
  269. package/dist/assets/session-BV5HR2vD.js +0 -1
  270. package/dist/assets/setup-Bll35TpG.js +0 -30
  271. package/dist/assets/status-fhCB_pM_.js +0 -1
  272. package/dist/assets/team-DplrCM_m.js +0 -147
  273. package/dist/assets/th-BtarXxEz.js +0 -5
  274. package/dist/assets/th-DmB7Kg4h.js +0 -1
  275. package/dist/assets/traffic-BU5sjdLg.js +0 -1
  276. package/dist/assets/user-center-D4QgyhnU.js +0 -126
  277. package/dist/assets/vi-BMiy6Nrg.js +0 -1
  278. package/dist/assets/vi-CkIA1NEb.js +0 -5
  279. package/dist/assets/wrap-locale-BylAyLRV.js +0 -1
  280. package/dist/assets/zh-Ch3TJh3i.js +0 -10
  281. package/dist/assets/zh-CubVjUHy.js +0 -1
  282. package/dist/assets/zh-tw-Bza_uiUD.js +0 -9
  283. package/dist/assets/zh-tw-oBCLhAEX.js +0 -1
@@ -1 +1 @@
1
- import{r as h}from"./vendor-react-Dvs43sk9.js";import{j as a,y as x,F as j,W as e,z as S,M,ak as b}from"./vendor-mui-core-DWYIngcn.js";import{ad as s}from"./index-CgCJ2qDh.js";import{T as v}from"./vendor-ux-Dln42oC3.js";import{l as w}from"./arrow-down.svg-6steA5un.js";import{a as H}from"./vendor-hooks-HB6DqcLv.js";import{L as _,D as y}from"./vendor-mui-x-nEbm5eNb.js";import{A}from"./AdapterDayjs-Dc_cn1Wv.js";function Y({value:r=null,onChange:i,error:l=!1,helperText:u="",label:t="",timezone:n=""}){const f=n?s().tz(n):s(),p=H(()=>{let m=s();return r&&(m=n?s(r).tz(n):s(r)),m.format("YYYY-MM-DD[T]HH:mm")},[r,n]),D=m=>{const T=n?s(m).tz(n).format("YYYY-MM-DD HH:mm:00"):s(m).format("YYYY-MM-DD HH:mm:00");i(new Date(T))};return a.jsx(_,{dateAdapter:A,children:a.jsxs(x,{fullWidth:!0,error:l,children:[a.jsx(y,{label:t,minDateTime:f,value:s(p),onChange:D,slotProps:{textField:{error:l,helperText:l?u:""}},format:"YYYY-MM-DD HH:mm"}),u&&a.jsx(j,{children:u})]})})}Y.propTypes={value:e.oneOfType([e.string,e.instanceOf(Date)]),onChange:e.func.isRequired,error:e.bool,helperText:e.string,label:e.string,timezone:e.string};function C(r){return a.jsx(w,{...r,width:20,height:20})}const c={MINUTES_30:30*60*1e3,HOUR_1:60*60*1e3,HOURS_3:3*60*60*1e3,DAY_1:24*60*60*1e3,DAYS_7:7*24*60*60*1e3,DAYS_30:30*24*60*60*1e3};function E({placeholder:r="",value:i="",onChange:l,timezone:u=""}){const{t}=v(),[n,f]=h.useState(i||""),[p,D]=h.useState(null),m=h.useMemo(()=>[{value:new Date(Date.now()+c.MINUTES_30),label:`30 ${t("common.minutes")}`},{value:new Date(Date.now()+c.HOUR_1),label:`1 ${t("common.hour")}`},{value:new Date(Date.now()+c.HOURS_3),label:`3 ${t("common.hours")}`},{value:new Date(Date.now()+c.DAY_1),label:`1 ${t("common.day")}`},{value:new Date(Date.now()+c.DAYS_7),label:`7 ${t("common.days")}`},{value:new Date(Date.now()+c.DAYS_30),label:`30 ${t("common.days")}`},{value:"custom",label:t("common.custom")}],[t]),T=o=>{if(f(o),o==="custom"){const d=s().toDate();D(d),l(d)}else l(o)},g=o=>{D(o),l(o)};return h.useEffect(()=>{i&&(m.find(d=>s(d.value).isSame(i))||(f("custom"),D(i)))},[]),a.jsxs(a.Fragment,{children:[a.jsx(x,{fullWidth:!0,children:a.jsx(S,{select:!0,value:n,label:r||t("team.passport.passportExpireTime"),onChange:o=>T(o.target.value),variant:"outlined",slotProps:{select:{IconComponent:C}},children:m.map(o=>a.jsx(M,{value:o.value,children:o.label},o.value))})}),n==="custom"&&a.jsx(b,{children:a.jsx(Y,{value:p,onChange:g,label:t("team.passport.customExpireTime"),timezone:u,error:!p,helperText:p?void 0:t("team.passport.customExpireTime")})})]})}E.propTypes={value:e.oneOfType([e.string,e.instanceOf(Date)]),onChange:e.func.isRequired,timezone:e.string,placeholder:e.string};export{E as T};
1
+ import{r as h}from"./vendor-react-Dvs43sk9.js";import{j as a,y as x,F as j,W as e,z as S,M,ak as b}from"./vendor-mui-core-CiGwt5P_.js";import{ad as s}from"./index-BGoUXEmc.js";import{T as v}from"./vendor-ux-CF8ziO7Y.js";import{l as w}from"./arrow-down.svg-B9dO_KDq.js";import{a as H}from"./vendor-hooks-0NQwJuRY.js";import{L as _,D as y}from"./vendor-mui-x-CXaju64L.js";import{A}from"./AdapterDayjs-DJ-f1i8A.js";function Y({value:r=null,onChange:i,error:l=!1,helperText:u="",label:t="",timezone:n=""}){const f=n?s().tz(n):s(),p=H(()=>{let m=s();return r&&(m=n?s(r).tz(n):s(r)),m.format("YYYY-MM-DD[T]HH:mm")},[r,n]),D=m=>{const T=n?s(m).tz(n).format("YYYY-MM-DD HH:mm:00"):s(m).format("YYYY-MM-DD HH:mm:00");i(new Date(T))};return a.jsx(_,{dateAdapter:A,children:a.jsxs(x,{fullWidth:!0,error:l,children:[a.jsx(y,{label:t,minDateTime:f,value:s(p),onChange:D,slotProps:{textField:{error:l,helperText:l?u:""}},format:"YYYY-MM-DD HH:mm"}),u&&a.jsx(j,{children:u})]})})}Y.propTypes={value:e.oneOfType([e.string,e.instanceOf(Date)]),onChange:e.func.isRequired,error:e.bool,helperText:e.string,label:e.string,timezone:e.string};function C(r){return a.jsx(w,{...r,width:20,height:20})}const c={MINUTES_30:30*60*1e3,HOUR_1:60*60*1e3,HOURS_3:3*60*60*1e3,DAY_1:24*60*60*1e3,DAYS_7:7*24*60*60*1e3,DAYS_30:30*24*60*60*1e3};function E({placeholder:r="",value:i="",onChange:l,timezone:u=""}){const{t}=v(),[n,f]=h.useState(i||""),[p,D]=h.useState(null),m=h.useMemo(()=>[{value:new Date(Date.now()+c.MINUTES_30),label:`30 ${t("common.minutes")}`},{value:new Date(Date.now()+c.HOUR_1),label:`1 ${t("common.hour")}`},{value:new Date(Date.now()+c.HOURS_3),label:`3 ${t("common.hours")}`},{value:new Date(Date.now()+c.DAY_1),label:`1 ${t("common.day")}`},{value:new Date(Date.now()+c.DAYS_7),label:`7 ${t("common.days")}`},{value:new Date(Date.now()+c.DAYS_30),label:`30 ${t("common.days")}`},{value:"custom",label:t("common.custom")}],[t]),T=o=>{if(f(o),o==="custom"){const d=s().toDate();D(d),l(d)}else l(o)},g=o=>{D(o),l(o)};return h.useEffect(()=>{i&&(m.find(d=>s(d.value).isSame(i))||(f("custom"),D(i)))},[]),a.jsxs(a.Fragment,{children:[a.jsx(x,{fullWidth:!0,children:a.jsx(S,{select:!0,value:n,label:r||t("team.passport.passportExpireTime"),onChange:o=>T(o.target.value),variant:"outlined",slotProps:{select:{IconComponent:C}},children:m.map(o=>a.jsx(M,{value:o.value,children:o.label},o.value))})}),n==="custom"&&a.jsx(b,{children:a.jsx(Y,{value:p,onChange:g,label:t("team.passport.customExpireTime"),timezone:u,error:!p,helperText:p?void 0:t("team.passport.customExpireTime")})})]})}E.propTypes={value:e.oneOfType([e.string,e.instanceOf(Date)]),onChange:e.func.isRequired,timezone:e.string,placeholder:e.string};export{E as T};
@@ -0,0 +1 @@
1
+ import{r as l}from"./vendor-react-Dvs43sk9.js";import{T as k,$ as I,h as E,j as M}from"./vendor-ux-CF8ziO7Y.js";import{k as w}from"./vendor-hooks-0NQwJuRY.js";import{j as e,ak as s,a6 as C,aX as f,b1 as P,y as L,x as W,bb as _,M as B,a$ as A,I as D,bc as K,Q as z,W as F}from"./vendor-mui-core-CiGwt5P_.js";import{c as $,U as v}from"./index-BGoUXEmc.js";import{a as N}from"./api-BfIB6faS.js";import{T as U}from"./table-tips-DQHiKZsk.js";import{u as q}from"./team-BESj-ofA.js";import"./vendor-utils-DAj75QpF.js";import"./lottie-web-4koyQiv_.js";import"./vendor-arcblock-C7W5M07l.js";import"./use-mobile-CiJJ-F32.js";import"./session-ulvrJT-t.js";import"./isURL-sHTYO46x.js";function y({endpoint:i}){const[t,a]=l.useState("mcp-link"),x=v(),{api:h}=v(),{teamDid:d}=q(),{t:c,locale:m}=k(),{data:r,run:b,loading:o}=w(()=>h.createAccessKey({input:{teamDid:d,passport:$.SERVER_ROLES.ADMIN,authType:"simple",remark:"Generated by MCP Servers"}}),{manual:!0}),{imgPrefix:n}=x,p=l.useMemo(()=>[{icon:e.jsx(s,{sx:{width:20,height:20},children:"🔗"}),value:"mcp-link",label:"MCP Link"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/claude.webp`,alt:"Claude",sx:{width:20,height:20}}),value:"claude",label:"Claude"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/cursor.png`,alt:"Cursor",sx:{width:20,height:20}}),value:"cursor",label:"Cursor"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/cline.png`,alt:"Cline",sx:{width:20,height:20}}),value:"cline",label:"Cline"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/roocline.png`,alt:"Roo Cline",sx:{width:20,height:20}}),value:"roo-cline",label:"Roo Cline"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/windsurf.png`,alt:"Windsurf",sx:{width:20,height:20}}),value:"windsurf",label:"Windsurf"},{icon:e.jsx(s,{component:"img",src:`${n}/mcp/witsy.png`,alt:"Witsy",sx:{width:20,height:20}}),value:"witsy",label:"Witsy"}],[n]),j=p.find(u=>u.value===t),g=l.useMemo(()=>r?.data?.accessKeySecret,[r]),S=l.useMemo(()=>!g&&t!=="mcp-link",[g,t]),T=u=>{const R=`npx @blocklet/install-mcp@latest i ${i} --client ${u} --streamableHTTP --oauth2Bearer ${g}`;switch(u){case"cursor":case"claude":case"cline":case"roo-cline":case"windsurf":case"witsy":return R;case"mcp-link":default:return i}};return e.jsxs(s,{children:[e.jsx(E,{tabs:p,current:t,onChange:a,scrollButtons:"auto",iconPosition:"start"}),e.jsxs(s,{children:[e.jsxs(s,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsx(s,{component:"h2",children:t==="mcp-link"?j?.label:`${j?.label} ${c("installCommand")}`}),t!=="mcp-link"&&e.jsx(A,{href:`https://www.arcblock.io/docs/blocklet-developer/${m}/mcp-${t}`,target:"_blank",rel:"noopener noreferrer",children:e.jsx(D,{size:"small",children:e.jsx(K,{})})})]}),e.jsxs(s,{className:"mcp-servers-codeblock",sx:{position:"relative","& pre":{borderRadius:1},"& .codeblock__inner":{overflow:"auto !important",borderRadius:1}},children:[e.jsx(M,{code:T(t),language:"shell",style:{margin:0}}),S&&e.jsx(s,{sx:{position:"absolute",top:0,right:0,left:0,bottom:0,display:"flex",alignItems:"center",justifyContent:"center",bgcolor:"action.active",backdropFilter:"blur(3px)",WebkitBackdropFilter:"blur(3px)",zIndex:1},children:o?e.jsx(C,{}):e.jsx(z,{variant:"contained",color:"primary",onClick:b,size:"small",children:`${c("common.generate")} ${c("command")}`})})]})]})]})}y.propTypes={endpoint:F.string.isRequired};function ne(){const[i,t]=l.useState(null),{t:a,locale:x}=k(),h=`${window?.blocklet?.appUrl}${$.WELLKNOWN_SERVICE_PATH_PREFIX}/mcp/servers`,{data:d,loading:c,error:m}=w(()=>Promise.all([N.get(h)])),r=l.useMemo(()=>d?.[0]?.data?.servers||[],[d]);l.useEffect(()=>{r?.length&&t(r.find(o=>o.did===window?.blocklet?.did)||r[0])},[r]);const b=o=>{const n=o.target.value;t(r.find(p=>p.did===n))};return c?e.jsx(s,{children:e.jsx(C,{})}):m?e.jsx(f,{color:"error",children:m?.message}):r?.length?e.jsxs(P,{sx:{gap:2,maxWidth:1200},children:[e.jsx(U,{title:a("mcp.listTitle"),tooltipTitle:a("mcp.tooltipTitle"),link:`https://www.arcblock.io/docs/blocklet-developer/${x}/mcp-server`}),e.jsxs(L,{fullWidth:!0,children:[e.jsx(W,{id:"server-select-label",children:a("mcp.available")}),e.jsx(_,{labelId:"server-select-label",value:i?.did||"",label:a("mcp.available"),onChange:b,children:r.map(o=>e.jsx(B,{value:o.did,children:e.jsxs(s,{sx:{display:"flex",alignItems:"center",gap:1},children:[e.jsx(I,{variant:"rounded",shape:"square",did:o.did,src:o.logo,size:20}),e.jsx(s,{sx:{fontSize:14},children:o.name})]})},o.did))})]}),i&&e.jsx(y,{endpoint:i.endpoint})]}):e.jsx(f,{color:"warning",children:a("mcp.noServer")})}export{ne as default};
@@ -1,5 +1,5 @@
1
- import{j as e,W as u,a6 as O,T as j,at as Ne,D as _e,cF as X,ao as V,cG as We,ak as S,b1 as K,a$ as Ke,s as xe,cH as be,cv as Ge,am as ge,cr as Fe,M as F,aO as Y,bR as Ye,aP as $,Q as $e,bh as qe,aR as He,cI as Qe,cJ as Je,cK as Xe,cL as Ve,bY as he}from"./vendor-mui-core-DWYIngcn.js";import{k as Ze,j as ke,a as ue}from"./vendor-hooks-HB6DqcLv.js";import{r as h,u as et}from"./vendor-react-Dvs43sk9.js";import{Z as z,O as N,ad as D,M,aC as tt,aD as st,au as nt,c as I,$ as ot}from"./index-CgCJ2qDh.js";import{H as B,T as E,b as at,a0 as q,D as rt,J as it,n as le,h as ct}from"./vendor-ux-Dln42oC3.js";import{u as lt}from"./use-mobile-BhzP2Rp3.js";import{a as H,d as je,a1 as dt,c as pt,D as Ce,C as me}from"./vendor-utils-J7aLFpEq.js";import{o as we}from"./vendor-arcblock-B78OG6SS.js";import{b as ut,u as mt,D as ft,c as de,a as xt}from"./index-Dy8syryD.js";import"./index-D3qROm47.js";import"./index-BojVbZw0.js";import"./api-BV16dSSm.js";import{u as Be,C as gt,D as ht,a as St}from"./connect-to-BL3HAXmC.js";import{b as yt,c as bt,d as kt,i as jt,e as fe,f as Ct,h as wt,j as Bt}from"./spaces-D2uHzDSf.js";import{f as Q}from"./index-DBs9Ljax.js";import{v as Dt}from"./index-EIX4798q.js";import{E as Et}from"./index-C-AuC2Mk.js";import{x as Tt}from"./index-DRYJ0xIl.js";import{g as Se}from"./get-safe-url-Ce6hawV-.js";import{S as It}from"./switch-control-88oLMAWm.js";import{C as Rt,u as Pt}from"./config-space-a6OXiuM7.js";import{L as ye}from"./list-header-CGX6Hi0X.js";import"./lottie-web-4koyQiv_.js";import"./index-SrN5SE_r.js";async function vt({blockletDid:t,nodeApi:o,spaceGateways:a}){let s=!1;const i=await Promise.all(a.map(async n=>{let{name:r}=n;const l=await yt(n.endpoint);return!H(l)&&l!==r&&(r=l,s=!0),{...n,name:r}}));return s&&await Promise.all(i.filter(n=>n.did).map(n=>o.updateBlockletSpaceGateway({input:{did:t,where:{did:n.did},spaceGateway:{...n}}}))),i}function At({refresh:t}={}){const{blocklet:o}=z(),a=o?.meta?.did,{api:s}=N();return Ze(async()=>{if(!a)return[];const{spaceGateways:i}=await s.getBlockletSpaceGateways({input:{did:a}});return await vt({blockletDid:a,nodeApi:s,spaceGateways:i})??[]},{refreshDeps:[a,t],onError(i){i?.message?.includes("not logged")?console.warn(i):(console.error(i),B.error(Q(i)))}})}function De({deps:t,setLoading:o,backupDate:a}={deps:[],setLoading:()=>{},backupDate:new Date}){const{blocklet:s}=z(),[i,n]=h.useState([]),{api:r}=N(),[l,d]=h.useMemo(()=>a?[D(a).startOf("day").toISOString(),D(a).endOf("day").toISOString()]:[D().startOf("year").toISOString(),D().endOf("day").toISOString()],[a]),c=je(async()=>{try{if(o(!0),!s){n([]);return}const{backups:m}=await r.getBlockletBackups({input:{did:s.meta.did,startTime:l,endTime:d}});n(m??[])}catch(m){console.error(m),B.error(Q(m))}finally{o(!1)}},1e3);return ke(async()=>{c()},[s?.meta?.did].concat(t)),{backups:i}}function Ot({appDid:t}){const{backups:o}=De(),[a,s]=h.useState({message:"",progress:0,completed:!1}),i=N(),{ws:{useSubscription:n}}=i;return n(M.BlockletEvents.backupProgress,r=>{t===r?.appDid&&s(()=>({...r}))},[t]),h.useEffect(()=>{if(o?.length&&dt(o[0]?.status)){const[r]=o;s(()=>({message:r.message,progress:r.progress,completed:r.progress>=100}))}},[o]),a}function zt({deps:t=[],setLoading:o=()=>{}}={}){const{blocklet:a}=z(),[s,i]=h.useState([]),{api:n}=N(),r=h.useCallback(je(async()=>{if(!n||!a?.meta?.did){i([]);return}try{o(!0);const l=D(),d=l.subtract(1,"year"),{summary:c}=await n.getBlockletBackupSummary({input:{did:a.meta.did,startTime:d.toISOString(),endTime:l.toISOString()}});i(Array.isArray(c)?c:[])}catch(l){console.error("Failed to fetch backup summary:",l),B.error(Q(l)),i([])}finally{o(!1)}},1e3),[]);return ke(async()=>(await r(),()=>{r.cancel()}),[a?.meta?.did].concat(t)),{backupSummary:s}}const Ee=h.createContext({}),{Provider:Lt,Consumer:ys}=Ee;function Te({children:t}){const{t:o}=E(),{api:a}=N(),{blocklet:s}=z(),[i,n]=h.useState(null),[r,l]=h.useState(!1),{data:d,loading:c,mutate:m}=At({refresh:r}),g=pt(d),f=Ot({appDid:s?.appDid}),p=h.useMemo(()=>bt(s?.environments),[s?.environments]),[k,w]=h.useState(!1),[y,b]=h.useState(!1),{backups:Z}=De({deps:[y,i],setLoading:w,backupDate:i}),[ee,te]=h.useState(!1),{backupSummary:se}=zt({deps:[ee]}),[_,U]=h.useState(d?.find(x=>x.endpoint===p)),T=s?.settings?.autoBackup,P=()=>{l(x=>!x)},ne=()=>{te(x=>!x)},oe=()=>{b(x=>!x)},G=async x=>{await a.updateAutoBackup({input:{did:s.meta.did,autoBackup:x}})},J=async()=>{await a.abortBlockletBackup({input:{appPid:s.meta.did}})},ae=async(x,A)=>{try{m(R=>{const v=[...R];return v.push({...x,loading:!0}),v}),await a.addBlockletSpaceGateway({input:{did:s.meta.did,spaceGateway:x}}),p!==A&&await a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:A}]}}),U(x),P(),B.success(o("storage.spaces.connectedWithName",{name:x?.name??"DID Spaces"}))}catch(R){throw console.error(R),m(v=>[...v].filter(W=>W.did!==x.did)),R}},re=async x=>{x&&(x.endpoint===p&&(await a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:""}]}}),T?.enabled&&await G({enabled:!1})),await a.deleteBlockletSpaceGateway({input:{did:s.meta.did,spaceGatewayDid:x?.did}}),m(A=>{const R=[...A];return R.splice(R.indexOf(x),1),R}),U(x),P())},ie=async x=>{await Promise.all([a.updateBlockletSpaceGateway({input:{did:s.meta.did,where:{did:x.did},spaceGateway:x}}),p!==x.endpoint&&a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:x.endpoint}]}})]),B.success(o("storage.spaces.connectedWithName",{name:x?.name??"DID Spaces"})),P()},C=x=>x?.endpoint===p;return e.jsx(Lt,{value:{spaceGateways:d||[],selectedSpaceGateway:_,addSpaceGateway:ae,deleteSpaceGateway:re,updateSpaceGateway:ie,refreshSpaceGateways:P,spaceGatewaysLoading:c,spaceGatewaysFirstLoading:g,spaceGatewayIsSelected:C,updateAutoBackup:G,abortBlockletBackup:J,backupEndpoint:p,backupProgress:f,backups:Z,backupSummary:se,refreshBackupSummary:ne,refreshBackups:oe,setBackupDate:n,backupsLoading:k,autoBackup:T},children:t})}Te.propTypes={children:u.any.isRequired};function L(){return h.useContext(Ee)}function Ie({...t}){const{blocklet:o}=z(),{info:a}=N(),{t:s}=E(),i=Be({blocklet:o}),n=tt(a),{spaceGateways:r,addSpaceGateway:l}=L(),d={checkFn:Ce.create({baseURL:me(window.location.origin,st())}).get,webWalletUrl:n,extraParams:{appPid:o.appPid,appDid:i.appDid,appName:i.appName,appDescription:i.appDescription,appUrl:i.appUrl,referrer:i.referrer,scopes:i.scopes,nodeDid:a.did}},c=async({endpoint:g,name:f,did:p})=>{const k=await kt(g);if(!await jt(k)){B.error(s("storage.spaces.gateway.add.invalidUrl"));return}if(r.some(b=>b.endpoint===g)){B.error(s("storage.spaces.gateway.add.duplicate",{name:f}));return}await l({name:f,did:p,url:k,endpoint:g},g)},m=async({spaceGateway:g})=>{try{await c(g)}catch(f){console.error(f),B.error(Q(f))}};return e.jsx(ut,{...t,connectScope:"app",options:d,onSuccess:m})}function Re({...t}){const{t:o}=h.useContext(at),{blocklet:a,loadingDiskInfo:s,actions:i}=z();if(h.useEffect(()=>{i?.refreshBlocklet({showError:!1,attachDiskInfo:!0})},[]),a.diskInfo){const n=(d,c,m)=>e.jsxs(j,{children:[d," ",e.jsx("strong",{children:c?nt(c):"empty"})]}),r=a.environments.reduce((d,c)=>(d[c.key]=c.value,d),{}),l=[{key:"appDir",name:o("blocklet.diskInfo.appDir"),value:n(r.BLOCKLET_APP_DIR,a.diskInfo.app)},{key:"dataDir",name:o("blocklet.diskInfo.dataDir"),value:n(r.BLOCKLET_DATA_DIR,a.diskInfo.data)},{key:"logDir",name:o("blocklet.diskInfo.logDir"),value:n(r.BLOCKLET_LOG_DIR,a.diskInfo.log)},{key:"cacheDir",name:o("blocklet.diskInfo.cacheDir"),value:n(r.BLOCKLET_CACHE_DIR,a.diskInfo.cache)}];return e.jsx(Ut,{component:"div",...t,children:l.map(d=>e.jsx(Dt,{valueComponent:"div",nameWidth:120,name:d.name,children:d.value},d.key))})}return s?e.jsx(O,{}):e.jsx(j,{children:o("blocklet.diskInfo.empty")})}const Ut=Ne(j)``;function Pe(){const{t}=E(),{setBackupDate:o,backupSummary:a}=L(),s=mt({key:"lg"}),i=h.useRef(null),n=_e(),r=h.useCallback(c=>{o(c)},[o]),l=h.useMemo(()=>{const c=D().add(1,"day"),m=D().subtract(11,"month").startOf("month"),g=new Map(a.map(p=>[p.date,{date:p.date,successCount:p.successCount,errorCount:p.errorCount}])),f=[];for(let p=m.clone();D(p).isBefore(c);p=p.add(1,"day")){const k=p.format("YYYY-MM-DD");f.push(g.get(k)||{date:k,successCount:0,errorCount:0})}return f},[a]),d=h.useMemo(()=>({grid:{containLabel:!0,right:10,top:30,bottom:12},tooltip:{formatter:k=>{const{date:w,successCount:y,errorCount:b}=l[k.dataIndex]||{date:k.data[0],successCount:0,errorCount:0};return[`<div>${t("common.time")}: ${w}</div>`,`<div>${t("common.succeeded")}: ${y}</div>`,`<div>${t("common.failed")}: ${b}</div>`].join(`
2
- `)},backgroundColor:n.palette.background.paper,borderColor:n.palette.divider,textStyle:{color:n.palette.text.primary,fontSize:14},extraCssText:`box-shadow: ${n.shadows[2]}; border-radius: 4px;`,padding:[8,10]},visualMap:{show:!1,min:-12,max:12,pieces:[{min:Number.MIN_SAFE_INTEGER,max:-9,color:X[600]},{min:-9,max:-6,color:X[500]},{min:-6,max:-3,color:X[400]},{min:-3,max:-1,color:X[300]},{min:0,max:0,color:n.palette.grey[200]},{min:1,max:3,color:V[300]},{min:3,max:6,color:V[400]},{min:6,max:9,color:V[500]},{min:9,max:Number.MAX_SAFE_INTEGER,color:V[600]}],orient:"horizontal",left:"center",bottom:12,itemWidth:12,itemHeight:12,textStyle:{color:n.palette.text.secondary,fontSize:12}},calendar:{top:30,left:50,right:10,bottom:4,cellSize:[8,8],splitLine:{show:!1},itemStyle:{borderWidth:2,borderColor:n.palette.background.default,color:n.palette.background.default},dayLabel:{show:!0,firstDay:0,nameMap:["","Mon","","Wed","","Fri",""],position:"start",margin:4,fontSize:10,color:n.palette.text.primary,fontWeight:"400",width:20},monthLabel:{show:!0,nameMap:"cn",align:"left",color:n.palette.text.primary,fontWeight:"400",fontSize:12,position:"start",margin:4,width:30,padding:[0,2]},yearLabel:{show:!1},range:[D().subtract(11,"month").startOf("month").format("YYYY-MM-DD"),D().endOf("month").format("YYYY-MM-DD")],orient:"horizontal"},series:{type:"heatmap",coordinateSystem:"calendar",data:l.map(k=>[k.date,k.errorCount?-k.errorCount:k.successCount]),label:{show:!1},itemStyle:{borderWidth:2,borderColor:n.palette.background.default,borderRadius:4},emphasis:{itemStyle:{borderWidth:2,borderColor:We[200],color:"inherit"}}}}),[l,t,n]);return e.jsxs(e.Fragment,{children:[e.jsx(S,{ref:i,sx:{maxWidth:"1280px",border:"1px solid",borderColor:"divider",padding:"8px",overflowX:"auto"},children:e.jsx(S,{sx:{width:"1200px",height:"180px",position:"relative"},children:e.jsx(Et,{option:d,style:{height:"100%",width:"100%"},notMerge:!0,lazyUpdate:!1,opts:{renderer:"canvas"},onEvents:{click:c=>{c.componentType==="series"&&c.data&&r(c.data[0])}}})})}),e.jsx(S,{sx:{display:"flex",justifyContent:"flex-end",mt:1,mr:s?2:5,mb:2},children:e.jsxs(K,{direction:s?"column":"row",spacing:s?2:1,sx:{width:"100%",justifyContent:"flex-start",alignItems:s?"flex-start":"center"},children:[e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,background:"linear-gradient(90deg, #8B5000 0%, #A36200 33%, #C17700 66%, #E29000 100%)"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.failed")})]}),e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,bgcolor:"grey.200",border:"1px solid",borderColor:"grey.200"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.without")})]}),e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,background:"linear-gradient(90deg, #9be9a8 0%, #40c463 33%, #30a14e 66%, #216e39 100%)"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.succeeded")})]})]})})]})}const Mt=xe(({className:t,...o})=>e.jsx(ge,{...o,classes:{popper:t}}))(()=>({".MuiTooltip-tooltip":{backgroundColor:"transparent",padding:0,margin:0,boxShadow:"none",maxWidth:"none"},".MuiTooltip-arrow":{color:"rgba(230, 235, 245, 1)"}}));function ve({status:t,message:o="",createdAt:a}){const{t:s}=E(),i=t===I.BACKUPS.STATUS.PROGRESS&&D().diff(a,"hours")>=I.BACKUPS.TIMEOUT_HOURS,n=i&&s("common.timeoutError"),r=t===I.BACKUPS.STATUS.PROGRESS&&!i,l=t===I.BACKUPS.STATUS.SUCCEEDED&&!i;return r?e.jsxs(j,{sx:{display:"inline-flex",alignItems:"center",fontSize:"14px"},children:[e.jsx(O,{sx:{marginRight:"4px"},size:"12px"}),s("common.progress")]}):l?e.jsx(q,{type:"success",children:s("common.succeeded")}):e.jsxs(S,{sx:{display:"inline-flex",alignItems:"center"},children:[e.jsx(q,{type:"error",children:s("common.failed")}),e.jsx(ge,{style:{display:"flex",alignItems:"center",flexShrink:0},title:o||n,children:e.jsx(be,{children:e.jsx(Fe,{style:{width:"24px",height:"24px"},color:"error"})})})]})}ve.propTypes={status:u.string.isRequired,message:u.string,createdAt:u.string.isRequired};function Ae({metadata:t={}}){const{t:o}=E();if(H(t))return e.jsx(q,{type:"success",children:o("common.succeeded")});const a=t.count||0,s=t.size||0,i=Tt(s,{iec:!0}),n=e.jsxs(S,{sx:{p:1,borderRadius:1,boxShadow:2,color:"black",backgroundColor:"white"},children:[e.jsxs(j,{variant:"body2",children:[o("common.fileCount"),": ",a]}),e.jsxs(j,{variant:"body2",children:[o("common.fileSize"),": ",i]})]});return e.jsxs(S,{sx:{display:"inline-flex",alignItems:"center"},children:[e.jsx(q,{type:"success",children:o("common.succeeded")}),e.jsx(Mt,{title:n,style:{display:"flex",alignItems:"center",flexShrink:0},placement:"left",children:e.jsx(be,{children:e.jsx(Ge,{style:{width:"24px",height:"24px"},color:"primary"})})})]})}Ae.propTypes={metadata:u.object};function Oe(){const{t,locale:o}=E(),{spaceGateways:a,backups:s,backupsLoading:i}=L(),n=h.useMemo(()=>[{label:"DID Space",name:"target",options:{customBodyRenderLite:l=>{const{targetUrl:d,targetName:c,status:m,createdAt:g}=s[l],f=m===I.BACKUPS.STATUS.PROGRESS&&D().diff(g,"hours")>=I.BACKUPS.TIMEOUT_HOURS,p=m===I.BACKUPS.STATUS.SUCCEEDED&&!f,k=c||a.find(w=>d?.includes(fe(w?.endpoint)))?.name||"Unknown DID Space";return p?e.jsx(Ke,{href:d,target:"_blank",sx:{fontSize:"16px"},children:k}):e.jsx(j,{variant:"body1",sx:{fontSize:"16px"},children:k})}}},{label:t("common.strategy"),name:"strategy",options:{customBodyRender:l=>{const d=t(l===0?"common.auto":"common.manual");return e.jsx(q,{children:d})}}},{label:t("common.startTime"),name:"createdAt",options:{customBodyRender:l=>D(l).format("YYYY-MM-DD HH:mm:ss")}},{label:t("common.endTime"),name:"updatedAt",options:{customBodyRender:l=>H(l)?"":D(l).format("YYYY-MM-DD HH:mm:ss")}},{label:t("common.status"),name:"status",options:{customBodyRenderLite:l=>{const d=s?.[l]??{},{status:c,message:m,createdAt:g,metadata:f}=d,p=c===I.BACKUPS.STATUS.PROGRESS&&D().diff(g,"hours")>=I.BACKUPS.TIMEOUT_HOURS,k=c===I.BACKUPS.STATUS.PROGRESS&&!p,w=c===I.BACKUPS.STATUS.SUCCEEDED&&!p;return k?e.jsxs(j,{sx:{display:"inline-flex",alignItems:"center",fontSize:"14px"},children:[e.jsx(O,{sx:{marginRight:"4px"},size:"12px"}),t("common.progress")]}):w?e.jsx(Ae,{metadata:f}):e.jsx(ve,{status:c,message:m,createdAt:g})}}}],[s,a,t]),r=h.useMemo(()=>!s?.length,[s]);return e.jsx(e.Fragment,{children:r?e.jsx(S,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100px",color:"#9397A1",marginTop:"16px",marginBottom:"24px"},children:t("storage.spaces.record.emptyData")}):e.jsx(rt,{title:"",loading:i,data:s,columns:n,emptyNode:t("storage.spaces.record.emptyData",o),options:{download:!1,filter:!1,print:!1,search:!1,viewColumns:!1}})})}function Nt(){const{t}=E();return e.jsxs(S,{children:[e.jsxs(S,{sx:{display:"flex",gap:3,flexDirection:{xs:"column",md:"row"}},children:[e.jsxs(S,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",alignContent:"center",minWidth:240},children:[e.jsx(ft,{style:{cursor:"pointer",width:"150px",height:"100%",maxHeight:160}}),e.jsx(j,{sx:{my:2,textAlign:"center",color:"text.secondary"},children:t("storage.spaces.connect.provider")}),e.jsx(Ie,{})]}),e.jsxs(S,{sx:{flexGrow:1,minWidth:0},children:[e.jsx(S,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:3},children:e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:t("storage.spaces.backup.records")})}),e.jsx(Pe,{})]})]}),e.jsx(Oe,{sx:{marginTop:"24px"}}),e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",mb:2,mt:2},children:t("common.dataStorage")}),e.jsx(Re,{})]})}function ze({spaceGateway:t,onConfirm:o=()=>{},onCancel:a=()=>{}}){const{t:s}=E(),[i,n]=h.useState(!1),[r,l]=h.useState(!1),d=(g,f)=>{g?.preventDefault(),g?.stopPropagation(),n(f)},c=async g=>{try{g?.stopPropagation(),l(!0),await o?.(t),n(!1)}catch(f){console.error(f),B.error(`${s("storage.space.gateway.delete.failed")}: ${Q(f)}`)}finally{n(!1),l(!1)}},m=g=>{d(g,!1),a?.(g)};return e.jsxs(e.Fragment,{children:[e.jsxs(F,{color:"red",onClick:g=>d(g,!0),children:[e.jsx(Y,{style:{minWidth:24,color:"red"},children:e.jsx(Ye,{fontSize:"small"})}),e.jsx($,{style:{color:"red"},children:s("common.disconnect")})]}),e.jsx(it,{title:s("storage.spaces.gateway.delete.title"),open:i,confirmButton:{text:s("common.confirm"),props:{size:"small",variant:"contained",color:"error",loading:r}},cancelButton:{text:s("common.cancel"),props:{size:"small",variant:"outlined",disabled:r}},onConfirm:c,onCancel:m,children:e.jsx(j,{sx:{wordWrap:"break-word"},children:s("storage.spaces.gateway.delete.descForBackup",{name:`${t?.name}`})})})]})}ze.propTypes={spaceGateway:u.shape({name:u.string.isRequired,url:u.string.isRequired,protected:u.bool}).isRequired,onConfirm:u.func,onCancel:u.func};function Le({spaceGateway:t,selected:o,onDelete:a=()=>{},onConnect:s=()=>{},enableSwitchToSpace:i=!0,backupInProgress:n=!1,...r}){const{abortBlockletBackup:l}=L(),[d,c]=h.useState(null),{t:m}=E(),[g,f]=h.useState(!1),p=(y,b)=>{y.stopPropagation(),y.preventDefault(),c(b&&y.currentTarget)},k=async y=>{try{f(!0),p(y,!1),await s(t)}catch(b){console.error(b),B.error(b.message)}finally{f(!1)}},w=async y=>{try{f(!0),p(y,!1),await l()}catch(b){console.error(b),B.error(b.message)}finally{f(!1)}};return e.jsxs(e.Fragment,{children:[g||t?.loading?e.jsx(O,{sx:{ml:1},size:"24px"}):e.jsx($e,{"aria-label":"more","aria-controls":"actions-menu","aria-haspopup":"true","data-cy":"trigger-blocklet-actions",variant:"outlined",size:"small",onClick:y=>p(y,!0),...r,children:e.jsx(qe,{})}),e.jsxs(He,{id:"simple-menu",anchorEl:d,keepMounted:!0,open:!!d,onClose:y=>p(y,!1),children:[e.jsxs(F,{onClick:y=>{p(y,!1),window.open(Se(t.endpoint?Ct(t.endpoint):t.url,{allowDomains:null}))},children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Qe,{fontSize:"small"})}),e.jsx($,{children:m("common.open")})]}),e.jsxs(F,{onClick:y=>{p(y,!1),window.open(Se(wt(t.endpoint),{allowDomains:null}))},children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Je,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.strategy.viewBackupFiles")})]}),!o&&i&&e.jsxs(F,{onClick:k,children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Xe,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.connect.switchToSpace")})]}),n&&e.jsxs(F,{onClick:w,children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Ve,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.connect.abortBlockletBackup")})]}),!n&&e.jsx(ze,{spaceGateway:t,onConfirm:async()=>{c(null),await a?.(t)},onCancel:()=>c(null)})]})]})}Le.propTypes={spaceGateway:u.shape({name:u.string.isRequired,url:u.string.isRequired,protected:u.bool,endpoint:u.string.isRequired,loading:u.bool}).isRequired,selected:u.bool.isRequired,enableSwitchToSpace:u.bool,onDelete:u.func,onConnect:u.func,backupInProgress:u.bool};const _t=xe(({className:t,...o})=>e.jsx(ge,{...o,classes:{popper:t}}))(()=>({".MuiTooltip-tooltip":{backgroundColor:"transparent",padding:0,margin:0,boxShadow:"none",maxWidth:"none"},".MuiTooltip-arrow":{color:"rgba(230, 235, 245, 1)"}}));function Ue({spaceGateway:t,spaceStatus:o,selected:a,onConnected:s=()=>{},onDeleted:i=()=>{},onBackedUp:n=()=>{}}){const{t:r,locale:l}=E(),{blocklet:d}=z(),{api:c,info:{did:m}}=N(),{appDid:g,appName:f,appDescription:p,scopes:k,appUrl:w,referrer:y}=Be({blocklet:d}),{backupProgress:b,updateSpaceGateway:Z,deleteSpaceGateway:ee,refreshBackupSummary:te,refreshBackups:se}=L(),[_,U]=h.useState(!1),[T,P]=h.useState({open:!1,action:"one-click-authorization",checkTimeout:1e3*300,messages:{title:r("storage.spaces.authorize.title",{appName:f},l),scan:r("storage.spaces.authorize.scan",{appName:f},l),confirm:"",success:e.jsx(j,{gutterBottom:!0,children:r("storage.spaces.authorize.success")})},onClose:()=>{P(C=>({...C,open:!1}))}}),ne=a&&!_&&o===de.DISCONNECTED,oe=a&&!_&&!t.loading&&o===de.CONNECTED,G=a&&_&&o===de.CONNECTED&&b?.progress>=0,J=async()=>{try{if(await Bt(t?.endpoint)){await c.configBlocklet({input:{did:[d.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:t.endpoint}]}}),B.success(r("storage.spaces.connect.switchToSpaceSucceeded",{name:t.name?`(${t.name})`:""})),s?.(null,t);return}}catch(C){console.error(C),s?.(C,t);return}P(C=>({...C,open:!0,prefix:me(t.url,"space/api/did"),baseUrl:new URL(t.url).origin,checkFn:Ce.create({baseURL:me(t.url,"space")}).get,extraParams:{appDid:g,appName:f,appDescription:p,scopes:k,appUrl:w,referrer:y,nodeDid:m,spaceDid:t.did}}))},ae=async(C,x)=>{const A=x(C.endpoint),R=fe(A),v=C.space?x(C.space):{};if(t.did&&R!==t.did){P(Me=>({...Me,open:!1}));const W=r("storage.spaces.gateway.switch.failedForMismatchSpace",{name:v?.name?v.name:""});B.error(W),s?.(new Error(W),t);return}const ce={...t,name:v.name??"DID Space",did:v.did??fe(A),endpoint:A};await Z(ce),P(W=>({...W,open:!1})),s?.(null,ce)},re=async()=>{try{if(_)return;U(!0),await c.backupBlocklet({input:{appDid:d.appDid,to:"spaces"}})}catch(C){console.error(C),B.error(C.message),n?.(C,t)}finally{U(!0)}},ie=async()=>{try{await ee(t),B.success(r("storage.spaces.gateway.delete.succeeded",{name:t.name?`(${t.name})`:""})),i?.(null,t)}catch(C){console.error(C),i?.(C,t)}};return h.useEffect(()=>{b?.completed?(a&&(b?.progress===100?(B.success(r("storage.spaces.backupSuccessfully")),n?.(null,t)):b.message&&n?.(new Error(b?.message),t),b.progress=0,b.message=""),U(!1),setTimeout(()=>{te(),se()},1e3)):b.progress&&U(!0)},[b]),e.jsxs(e.Fragment,{children:[e.jsxs(S,{sx:{display:"flex",alignItems:"center",".action-btn":{borderRadius:1,marginLeft:1}},children:[oe&&e.jsx(le,{className:"action-btn",variant:"outlined",size:"small",onClick:re,children:r("storage.spaces.strategy.backupNow")}),ne&&e.jsx(le,{className:"action-btn",variant:"outlined",size:"small",onClick:J,children:r("storage.spaces.disconnected.reconnectNow")}),G&&e.jsx(_t,{title:b?.message&&e.jsx(S,{sx:{p:1,borderRadius:1,boxShadow:2,color:"black",backgroundColor:"white"},children:e.jsx(j,{variant:"body2",children:b.message})}),children:e.jsxs(le,{className:"action-btn",variant:"outlined",size:"small",sx:{minWidth:70},children:[e.jsx(O,{variant:"determinate",value:b?.progress,size:14,sx:{mr:1}}),b?.progress,"%"]})}),e.jsx(ot,{forceConnected:!1,saveConnect:!1,prefix:T.prefix,open:T.open,popup:!0,action:T.action,baseUrl:T.baseUrl,checkFn:T.checkFn,onSuccess:ae,onClose:T.onClose,checkTimeout:T.checkTimeout,extraParams:T.extraParams,messages:T.messages,locale:l},"get-endpoint")]}),e.jsx(Le,{sx:{minWidth:32,padding:"2px 4px",ml:1},spaceGateway:t,selected:a,onDelete:ie,onConnect:J,enableSwitchToSpace:b?.completed||H(b?.message),backupInProgress:G})]})}Ue.propTypes={spaceGateway:u.shape({did:u.string.isRequired,name:u.string.isRequired,url:u.string.isRequired,endpoint:u.string.isRequired,protected:u.bool,loading:u.bool}).isRequired,spaceStatus:u.string.isRequired,selected:u.bool.isRequired,onConnected:u.func,onDeleted:u.func,onBackedUp:u.func};function Wt({...t}){const{t:o}=E();return e.jsxs(S,{...t,children:[e.jsx(S,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:3},children:e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:o("storage.spaces.backup.records")})}),e.jsx(Pe,{}),e.jsx(Oe,{})]})}function Kt({...t}){const{t:o}=E(),{autoBackup:a,updateAutoBackup:s}=L(),i=async()=>{try{const n=!a?.enabled;await s({enabled:n}),B.success(o(n?"storage.spaces.autoBackup.enabled":"storage.spaces.autoBackup.disabled"))}catch(n){B.error(n.message)}};return e.jsx(It,{checked:!!a?.enabled,onChange:i,name:"enableWelcomePage",labelProps:{label:e.jsx(j,{sx:{marginRight:"8px"},children:e.jsx("span",{children:o("storage.spaces.autoBackup.title")})})},style:{...t.style}})}function Gt(){const{t}=E(),{spaceGateways:o,spaceGatewaysLoading:a,spaceGatewayIsSelected:s}=L(),i=a&&!o?.length,n=({spaceGateway:r,spaceStatus:l,selected:d,refresh:c})=>e.jsx(Ue,{spaceGateway:r,spaceStatus:l,selected:d,onConnected:()=>c(),onBackedUp:m=>m&&c()});return e.jsxs(S,{sx:{display:"flex",flexDirection:"column"},children:[e.jsxs(S,{sx:{display:"flex",flexDirection:{xs:"column",md:"row"},gap:{xs:1,md:2},justifyContent:{xs:"center",md:"flex-start"},alignItems:{xs:"flex-start",md:"center"}},children:[e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",flexGrow:1},children:t("storage.spaces.connected.title")}),e.jsx(Kt,{}),e.jsx(Ie,{})]}),e.jsx(S,{sx:{mt:2},children:i?e.jsx(S,{sx:{display:"flex",justifyContent:"center"},children:e.jsx(O,{})}):e.jsx(he,{container:!0,spacing:2,children:e.jsx(e.Fragment,{children:o.map(r=>e.jsx(he,{size:{xs:12,md:6},children:e.jsx(xt,{endpoint:r.endpoint,selected:s(r),action:n},r.endpoint)},r.endpoint))})})}),e.jsx(Wt,{sx:{marginTop:"24px"}}),e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",mb:2},children:t("common.dataStorage")}),e.jsx(Re,{})]})}function Ft(){const{spaceGatewaysFirstLoading:t,spaceGateways:o}=L();return t?e.jsx(we,{relative:"parent",children:e.jsx(O,{})}):H(o)?e.jsx(Nt,{}):e.jsx(Gt,{})}function Yt(){return e.jsx(Te,{children:e.jsx(Ft,{})})}function $t(){const{spaceGateway:t,settingStorageEndpoint:o,updateSpaceGateway:a,hasStorageEndpoint:s,loading:i,storageEndpoint:n}=Pt(),r=ue(()=>({display:"flex",alignItems:"center",justifyContent:"center",paddingTop:"16px"}));return i?e.jsx(we,{relative:"parent",children:e.jsx(O,{})}):e.jsxs(S,{sx:{maxWidth:"md",position:"relative"},children:[s?e.jsx(gt,{spaceGateway:t,settingStorageEndpoint:o}):e.jsx(ht,{}),e.jsx(S,{sx:r,children:e.jsx(St,{onConnect:a,storageEndpoint:n})})]})}function qt(){const{t}=E();return e.jsxs(Rt,{children:[e.jsxs(K,{spacing:1,sx:{marginBottom:2},children:[e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:t("storage.appLevel.title")}),e.jsx(j,{sx:{color:"text.secondary"},children:t("storage.appLevel.description")})]}),e.jsx($t,{})]})}function Ht({navOrientation:t="vertical",...o}){const{t:a,locale:s}=E(),{blocklet:i}=z(),n=lt({key:"md"}),[r,l]=et(),d=r.get("tab")||"backup",c=n?"horizontal":t,m=ue(()=>{const w=[{label:a("common.backup"),value:"backup"}],y=i?.capabilities?.didSpace;return(y===M.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED||y===M.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED_ON_SETUP)&&w.push({label:a("common.storage"),value:"storage"}),w},[s,c]),f=ue(()=>({backup:e.jsx(Yt,{}),storage:e.jsx(qt,{})}))[d],p=w=>{l(y=>(w==="backup"?y.delete("tab"):y.set("tab",w),y))};if(m.length<=1)return e.jsx(pe,{children:f});const k=e.jsx(ct,{tabs:m,current:d,orientation:c,onChange:p,sx:[{borderRight:1,height:"100%",borderColor:"divider"},c==="horizontal"&&{borderRight:0}]});if(c==="vertical")return e.jsx(S,{...o,children:e.jsxs(K,{direction:{md:"column",lg:"row"},sx:{gap:2},children:[e.jsx(S,{sx:{flexShrink:0},children:e.jsx(ye,{left:k})}),e.jsx(S,{sx:{flexGrow:1,minWidth:0},children:e.jsx(pe,{sx:{mt:1},children:f})})]})});if(c==="horizontal")return e.jsxs(S,{...o,children:[e.jsx(ye,{left:k}),e.jsx(pe,{sx:{mt:2},children:f})]})}Ht.propTypes={navOrientation:u.oneOf(["vertical","horizontal"])};const pe=xe(S)`
1
+ import{j as e,W as u,a6 as z,T as j,at as Ne,D as _e,cG as X,ao as V,cH as We,ak as S,b1 as K,a$ as Ke,s as xe,cI as be,cw as Ge,am as ge,cs as Fe,M as F,aO as Y,bW as Ye,aP as $,Q as $e,bh as qe,aR as He,cJ as Qe,cK as Je,cL as Xe,cM as Ve,c1 as he}from"./vendor-mui-core-CiGwt5P_.js";import{k as Ze,j as ke,a as ue}from"./vendor-hooks-0NQwJuRY.js";import{r as h,u as et}from"./vendor-react-Dvs43sk9.js";import{a1 as O,U as N,ad as D,R as M,aI as tt,aJ as st,ax as nt,c as I,v as ot}from"./index-BGoUXEmc.js";import{H as B,T as E,b as at,a1 as q,K as rt,L as it,n as le,h as ct}from"./vendor-ux-CF8ziO7Y.js";import{u as lt}from"./use-mobile-CiJJ-F32.js";import{a as H,d as je,a1 as dt,c as pt,D as Ce,C as me}from"./vendor-utils-DAj75QpF.js";import{o as we}from"./vendor-arcblock-C7W5M07l.js";import{b as ut,u as mt,D as ft,c as de,a as xt}from"./index-BmCyA4MW.js";import"./index-B36DERG2.js";import"./index-BojVbZw0.js";import"./api-BfIB6faS.js";import{u as Be,C as gt,D as ht,a as St}from"./connect-to-CvyIrlXc.js";import{b as yt,c as bt,d as kt,i as jt,e as fe,f as Ct,h as wt,j as Bt}from"./spaces-wJwcbibW.js";import{f as Q}from"./index-DBs9Ljax.js";import{v as Dt}from"./index-C80MI1u_.js";import{E as Et}from"./index-D3pV4Lj0.js";import{x as Tt}from"./index-DRYJ0xIl.js";import{g as Se}from"./get-safe-url-CZlaSf1L.js";import{S as It}from"./switch-control-BuqCLgsC.js";import{C as Rt,u as Pt}from"./config-space-DFnzGBOV.js";import{L as ye}from"./list-header-DLhxtl5g.js";import"./lottie-web-4koyQiv_.js";import"./index-NVKZ_ZUS.js";async function vt({blockletDid:t,nodeApi:o,spaceGateways:a}){let s=!1;const i=await Promise.all(a.map(async n=>{let{name:r}=n;const l=await yt(n.endpoint);return!H(l)&&l!==r&&(r=l,s=!0),{...n,name:r}}));return s&&await Promise.all(i.filter(n=>n.did).map(n=>o.updateBlockletSpaceGateway({input:{did:t,where:{did:n.did},spaceGateway:{...n}}}))),i}function At({refresh:t}={}){const{blocklet:o}=O(),a=o?.meta?.did,{api:s}=N();return Ze(async()=>{if(!a)return[];const{spaceGateways:i}=await s.getBlockletSpaceGateways({input:{did:a}});return await vt({blockletDid:a,nodeApi:s,spaceGateways:i})??[]},{refreshDeps:[a,t],onError(i){i?.message?.includes("not logged")?console.warn(i):(console.error(i),B.error(Q(i)))}})}function De({deps:t,setLoading:o,backupDate:a}={deps:[],setLoading:()=>{},backupDate:new Date}){const{blocklet:s}=O(),[i,n]=h.useState([]),{api:r}=N(),[l,d]=h.useMemo(()=>a?[D(a).startOf("day").toISOString(),D(a).endOf("day").toISOString()]:[D().startOf("year").toISOString(),D().endOf("day").toISOString()],[a]),c=je(async()=>{try{if(o(!0),!s){n([]);return}const{backups:m}=await r.getBlockletBackups({input:{did:s.meta.did,startTime:l,endTime:d}});n(m??[])}catch(m){console.error(m),B.error(Q(m))}finally{o(!1)}},1e3);return ke(async()=>{c()},[s?.meta?.did].concat(t)),{backups:i}}function zt({appDid:t}){const{backups:o}=De(),[a,s]=h.useState({message:"",progress:0,completed:!1}),i=N(),{ws:{useSubscription:n}}=i;return n(M.BlockletEvents.backupProgress,r=>{t===r?.appDid&&s(()=>({...r}))},[t]),h.useEffect(()=>{if(o?.length&&dt(o[0]?.status)){const[r]=o;s(()=>({message:r.message,progress:r.progress,completed:r.progress>=100}))}},[o]),a}function Ot({deps:t=[],setLoading:o=()=>{}}={}){const{blocklet:a}=O(),[s,i]=h.useState([]),{api:n}=N(),r=h.useCallback(je(async()=>{if(!n||!a?.meta?.did){i([]);return}try{o(!0);const l=D(),d=l.subtract(1,"year"),{summary:c}=await n.getBlockletBackupSummary({input:{did:a.meta.did,startTime:d.toISOString(),endTime:l.toISOString()}});i(Array.isArray(c)?c:[])}catch(l){console.error("Failed to fetch backup summary:",l),B.error(Q(l)),i([])}finally{o(!1)}},1e3),[]);return ke(async()=>(await r(),()=>{r.cancel()}),[a?.meta?.did].concat(t)),{backupSummary:s}}const Ee=h.createContext({}),{Provider:Lt,Consumer:ys}=Ee;function Te({children:t}){const{t:o}=E(),{api:a}=N(),{blocklet:s}=O(),[i,n]=h.useState(null),[r,l]=h.useState(!1),{data:d,loading:c,mutate:m}=At({refresh:r}),g=pt(d),f=zt({appDid:s?.appDid}),p=h.useMemo(()=>bt(s?.environments),[s?.environments]),[k,w]=h.useState(!1),[y,b]=h.useState(!1),{backups:Z}=De({deps:[y,i],setLoading:w,backupDate:i}),[ee,te]=h.useState(!1),{backupSummary:se}=Ot({deps:[ee]}),[_,U]=h.useState(d?.find(x=>x.endpoint===p)),T=s?.settings?.autoBackup,P=()=>{l(x=>!x)},ne=()=>{te(x=>!x)},oe=()=>{b(x=>!x)},G=async x=>{await a.updateAutoBackup({input:{did:s.meta.did,autoBackup:x}})},J=async()=>{await a.abortBlockletBackup({input:{appPid:s.meta.did}})},ae=async(x,A)=>{try{m(R=>{const v=[...R];return v.push({...x,loading:!0}),v}),await a.addBlockletSpaceGateway({input:{did:s.meta.did,spaceGateway:x}}),p!==A&&await a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:A}]}}),U(x),P(),B.success(o("storage.spaces.connectedWithName",{name:x?.name??"DID Spaces"}))}catch(R){throw console.error(R),m(v=>[...v].filter(W=>W.did!==x.did)),R}},re=async x=>{x&&(x.endpoint===p&&(await a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:""}]}}),T?.enabled&&await G({enabled:!1})),await a.deleteBlockletSpaceGateway({input:{did:s.meta.did,spaceGatewayDid:x?.did}}),m(A=>{const R=[...A];return R.splice(R.indexOf(x),1),R}),U(x),P())},ie=async x=>{await Promise.all([a.updateBlockletSpaceGateway({input:{did:s.meta.did,where:{did:x.did},spaceGateway:x}}),p!==x.endpoint&&a.configBlocklet({input:{did:[s.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:x.endpoint}]}})]),B.success(o("storage.spaces.connectedWithName",{name:x?.name??"DID Spaces"})),P()},C=x=>x?.endpoint===p;return e.jsx(Lt,{value:{spaceGateways:d||[],selectedSpaceGateway:_,addSpaceGateway:ae,deleteSpaceGateway:re,updateSpaceGateway:ie,refreshSpaceGateways:P,spaceGatewaysLoading:c,spaceGatewaysFirstLoading:g,spaceGatewayIsSelected:C,updateAutoBackup:G,abortBlockletBackup:J,backupEndpoint:p,backupProgress:f,backups:Z,backupSummary:se,refreshBackupSummary:ne,refreshBackups:oe,setBackupDate:n,backupsLoading:k,autoBackup:T},children:t})}Te.propTypes={children:u.any.isRequired};function L(){return h.useContext(Ee)}function Ie({...t}){const{blocklet:o}=O(),{info:a}=N(),{t:s}=E(),i=Be({blocklet:o}),n=tt(a),{spaceGateways:r,addSpaceGateway:l}=L(),d={checkFn:Ce.create({baseURL:me(window.location.origin,st())}).get,webWalletUrl:n,extraParams:{appPid:o.appPid,appDid:i.appDid,appName:i.appName,appDescription:i.appDescription,appUrl:i.appUrl,referrer:i.referrer,scopes:i.scopes,nodeDid:a.did}},c=async({endpoint:g,name:f,did:p})=>{const k=await kt(g);if(!await jt(k)){B.error(s("storage.spaces.gateway.add.invalidUrl"));return}if(r.some(b=>b.endpoint===g)){B.error(s("storage.spaces.gateway.add.duplicate",{name:f}));return}await l({name:f,did:p,url:k,endpoint:g},g)},m=async({spaceGateway:g})=>{try{await c(g)}catch(f){console.error(f),B.error(Q(f))}};return e.jsx(ut,{...t,connectScope:"app",options:d,onSuccess:m})}function Re({...t}){const{t:o}=h.useContext(at),{blocklet:a,loadingDiskInfo:s,actions:i}=O();if(h.useEffect(()=>{i?.refreshBlocklet({showError:!1,attachDiskInfo:!0})},[]),a.diskInfo){const n=(d,c,m)=>e.jsxs(j,{children:[d," ",e.jsx("strong",{children:c?nt(c):"empty"})]}),r=a.environments.reduce((d,c)=>(d[c.key]=c.value,d),{}),l=[{key:"appDir",name:o("blocklet.diskInfo.appDir"),value:n(r.BLOCKLET_APP_DIR,a.diskInfo.app)},{key:"dataDir",name:o("blocklet.diskInfo.dataDir"),value:n(r.BLOCKLET_DATA_DIR,a.diskInfo.data)},{key:"logDir",name:o("blocklet.diskInfo.logDir"),value:n(r.BLOCKLET_LOG_DIR,a.diskInfo.log)},{key:"cacheDir",name:o("blocklet.diskInfo.cacheDir"),value:n(r.BLOCKLET_CACHE_DIR,a.diskInfo.cache)}];return e.jsx(Ut,{component:"div",...t,children:l.map(d=>e.jsx(Dt,{valueComponent:"div",nameWidth:120,name:d.name,children:d.value},d.key))})}return s?e.jsx(z,{}):e.jsx(j,{children:o("blocklet.diskInfo.empty")})}const Ut=Ne(j)``;function Pe(){const{t}=E(),{setBackupDate:o,backupSummary:a}=L(),s=mt({key:"lg"}),i=h.useRef(null),n=_e(),r=h.useCallback(c=>{o(c)},[o]),l=h.useMemo(()=>{const c=D().add(1,"day"),m=D().subtract(11,"month").startOf("month"),g=new Map(a.map(p=>[p.date,{date:p.date,successCount:p.successCount,errorCount:p.errorCount}])),f=[];for(let p=m.clone();D(p).isBefore(c);p=p.add(1,"day")){const k=p.format("YYYY-MM-DD");f.push(g.get(k)||{date:k,successCount:0,errorCount:0})}return f},[a]),d=h.useMemo(()=>({grid:{containLabel:!0,right:10,top:30,bottom:12},tooltip:{formatter:k=>{const{date:w,successCount:y,errorCount:b}=l[k.dataIndex]||{date:k.data[0],successCount:0,errorCount:0};return[`<div>${t("common.time")}: ${w}</div>`,`<div>${t("common.succeeded")}: ${y}</div>`,`<div>${t("common.failed")}: ${b}</div>`].join(`
2
+ `)},backgroundColor:n.palette.background.paper,borderColor:n.palette.divider,textStyle:{color:n.palette.text.primary,fontSize:14},extraCssText:`box-shadow: ${n.shadows[2]}; border-radius: 4px;`,padding:[8,10]},visualMap:{show:!1,min:-12,max:12,pieces:[{min:Number.MIN_SAFE_INTEGER,max:-9,color:X[600]},{min:-9,max:-6,color:X[500]},{min:-6,max:-3,color:X[400]},{min:-3,max:-1,color:X[300]},{min:0,max:0,color:n.palette.grey[200]},{min:1,max:3,color:V[300]},{min:3,max:6,color:V[400]},{min:6,max:9,color:V[500]},{min:9,max:Number.MAX_SAFE_INTEGER,color:V[600]}],orient:"horizontal",left:"center",bottom:12,itemWidth:12,itemHeight:12,textStyle:{color:n.palette.text.secondary,fontSize:12}},calendar:{top:30,left:50,right:10,bottom:4,cellSize:[8,8],splitLine:{show:!1},itemStyle:{borderWidth:2,borderColor:n.palette.background.default,color:n.palette.background.default},dayLabel:{show:!0,firstDay:0,nameMap:["","Mon","","Wed","","Fri",""],position:"start",margin:4,fontSize:10,color:n.palette.text.primary,fontWeight:"400",width:20},monthLabel:{show:!0,nameMap:"cn",align:"left",color:n.palette.text.primary,fontWeight:"400",fontSize:12,position:"start",margin:4,width:30,padding:[0,2]},yearLabel:{show:!1},range:[D().subtract(11,"month").startOf("month").format("YYYY-MM-DD"),D().endOf("month").format("YYYY-MM-DD")],orient:"horizontal"},series:{type:"heatmap",coordinateSystem:"calendar",data:l.map(k=>[k.date,k.errorCount?-k.errorCount:k.successCount]),label:{show:!1},itemStyle:{borderWidth:2,borderColor:n.palette.background.default,borderRadius:4},emphasis:{itemStyle:{borderWidth:2,borderColor:We[200],color:"inherit"}}}}),[l,t,n]);return e.jsxs(e.Fragment,{children:[e.jsx(S,{ref:i,sx:{maxWidth:"1280px",border:"1px solid",borderColor:"divider",padding:"8px",overflowX:"auto"},children:e.jsx(S,{sx:{width:"1200px",height:"180px",position:"relative"},children:e.jsx(Et,{option:d,style:{height:"100%",width:"100%"},notMerge:!0,lazyUpdate:!1,opts:{renderer:"canvas"},onEvents:{click:c=>{c.componentType==="series"&&c.data&&r(c.data[0])}}})})}),e.jsx(S,{sx:{display:"flex",justifyContent:"flex-end",mt:1,mr:s?2:5,mb:2},children:e.jsxs(K,{direction:s?"column":"row",spacing:s?2:1,sx:{width:"100%",justifyContent:"flex-start",alignItems:s?"flex-start":"center"},children:[e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,background:"linear-gradient(90deg, #8B5000 0%, #A36200 33%, #C17700 66%, #E29000 100%)"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.failed")})]}),e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,bgcolor:"grey.200",border:"1px solid",borderColor:"grey.200"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.without")})]}),e.jsxs(K,{direction:"row",spacing:1,sx:{alignItems:"center"},children:[e.jsx(S,{sx:{width:32,height:12,borderRadius:.5,background:"linear-gradient(90deg, #9be9a8 0%, #40c463 33%, #30a14e 66%, #216e39 100%)"}}),e.jsx(j,{variant:"body2",sx:{color:"text.secondary"},children:t("storage.spaces.backup.succeeded")})]})]})})]})}const Mt=xe(({className:t,...o})=>e.jsx(ge,{...o,classes:{popper:t}}))(()=>({".MuiTooltip-tooltip":{backgroundColor:"transparent",padding:0,margin:0,boxShadow:"none",maxWidth:"none"},".MuiTooltip-arrow":{color:"rgba(230, 235, 245, 1)"}}));function ve({status:t,message:o="",createdAt:a}){const{t:s}=E(),i=t===I.BACKUPS.STATUS.PROGRESS&&D().diff(a,"hours")>=I.BACKUPS.TIMEOUT_HOURS,n=i&&s("common.timeoutError"),r=t===I.BACKUPS.STATUS.PROGRESS&&!i,l=t===I.BACKUPS.STATUS.SUCCEEDED&&!i;return r?e.jsxs(j,{sx:{display:"inline-flex",alignItems:"center",fontSize:"14px"},children:[e.jsx(z,{sx:{marginRight:"4px"},size:"12px"}),s("common.progress")]}):l?e.jsx(q,{type:"success",children:s("common.succeeded")}):e.jsxs(S,{sx:{display:"inline-flex",alignItems:"center"},children:[e.jsx(q,{type:"error",children:s("common.failed")}),e.jsx(ge,{style:{display:"flex",alignItems:"center",flexShrink:0},title:o||n,children:e.jsx(be,{children:e.jsx(Fe,{style:{width:"24px",height:"24px"},color:"error"})})})]})}ve.propTypes={status:u.string.isRequired,message:u.string,createdAt:u.string.isRequired};function Ae({metadata:t={}}){const{t:o}=E();if(H(t))return e.jsx(q,{type:"success",children:o("common.succeeded")});const a=t.count||0,s=t.size||0,i=Tt(s,{iec:!0}),n=e.jsxs(S,{sx:{p:1,borderRadius:1,boxShadow:2,color:"black",backgroundColor:"white"},children:[e.jsxs(j,{variant:"body2",children:[o("common.fileCount"),": ",a]}),e.jsxs(j,{variant:"body2",children:[o("common.fileSize"),": ",i]})]});return e.jsxs(S,{sx:{display:"inline-flex",alignItems:"center"},children:[e.jsx(q,{type:"success",children:o("common.succeeded")}),e.jsx(Mt,{title:n,style:{display:"flex",alignItems:"center",flexShrink:0},placement:"left",children:e.jsx(be,{children:e.jsx(Ge,{style:{width:"24px",height:"24px"},color:"primary"})})})]})}Ae.propTypes={metadata:u.object};function ze(){const{t,locale:o}=E(),{spaceGateways:a,backups:s,backupsLoading:i}=L(),n=h.useMemo(()=>[{label:"DID Space",name:"target",options:{customBodyRenderLite:l=>{const{targetUrl:d,targetName:c,status:m,createdAt:g}=s[l],f=m===I.BACKUPS.STATUS.PROGRESS&&D().diff(g,"hours")>=I.BACKUPS.TIMEOUT_HOURS,p=m===I.BACKUPS.STATUS.SUCCEEDED&&!f,k=c||a.find(w=>d?.includes(fe(w?.endpoint)))?.name||"Unknown DID Space";return p?e.jsx(Ke,{href:d,target:"_blank",sx:{fontSize:"16px"},children:k}):e.jsx(j,{variant:"body1",sx:{fontSize:"16px"},children:k})}}},{label:t("common.strategy"),name:"strategy",options:{customBodyRender:l=>{const d=t(l===0?"common.auto":"common.manual");return e.jsx(q,{children:d})}}},{label:t("common.startTime"),name:"createdAt",options:{customBodyRender:l=>D(l).format("YYYY-MM-DD HH:mm:ss")}},{label:t("common.endTime"),name:"updatedAt",options:{customBodyRender:l=>H(l)?"":D(l).format("YYYY-MM-DD HH:mm:ss")}},{label:t("common.status"),name:"status",options:{customBodyRenderLite:l=>{const d=s?.[l]??{},{status:c,message:m,createdAt:g,metadata:f}=d,p=c===I.BACKUPS.STATUS.PROGRESS&&D().diff(g,"hours")>=I.BACKUPS.TIMEOUT_HOURS,k=c===I.BACKUPS.STATUS.PROGRESS&&!p,w=c===I.BACKUPS.STATUS.SUCCEEDED&&!p;return k?e.jsxs(j,{sx:{display:"inline-flex",alignItems:"center",fontSize:"14px"},children:[e.jsx(z,{sx:{marginRight:"4px"},size:"12px"}),t("common.progress")]}):w?e.jsx(Ae,{metadata:f}):e.jsx(ve,{status:c,message:m,createdAt:g})}}}],[s,a,t]),r=h.useMemo(()=>!s?.length,[s]);return e.jsx(e.Fragment,{children:r?e.jsx(S,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100px",color:"#9397A1",marginTop:"16px",marginBottom:"24px"},children:t("storage.spaces.record.emptyData")}):e.jsx(rt,{title:"",loading:i,data:s,columns:n,emptyNode:t("storage.spaces.record.emptyData",o),options:{download:!1,filter:!1,print:!1,search:!1,viewColumns:!1}})})}function Nt(){const{t}=E();return e.jsxs(S,{children:[e.jsxs(S,{sx:{display:"flex",gap:3,flexDirection:{xs:"column",md:"row"}},children:[e.jsxs(S,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",alignContent:"center",minWidth:240},children:[e.jsx(ft,{style:{cursor:"pointer",width:"150px",height:"100%",maxHeight:160}}),e.jsx(j,{sx:{my:2,textAlign:"center",color:"text.secondary"},children:t("storage.spaces.connect.provider")}),e.jsx(Ie,{})]}),e.jsxs(S,{sx:{flexGrow:1,minWidth:0},children:[e.jsx(S,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:3},children:e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:t("storage.spaces.backup.records")})}),e.jsx(Pe,{})]})]}),e.jsx(ze,{sx:{marginTop:"24px"}}),e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",mb:2,mt:2},children:t("common.dataStorage")}),e.jsx(Re,{})]})}function Oe({spaceGateway:t,onConfirm:o=()=>{},onCancel:a=()=>{}}){const{t:s}=E(),[i,n]=h.useState(!1),[r,l]=h.useState(!1),d=(g,f)=>{g?.preventDefault(),g?.stopPropagation(),n(f)},c=async g=>{try{g?.stopPropagation(),l(!0),await o?.(t),n(!1)}catch(f){console.error(f),B.error(`${s("storage.space.gateway.delete.failed")}: ${Q(f)}`)}finally{n(!1),l(!1)}},m=g=>{d(g,!1),a?.(g)};return e.jsxs(e.Fragment,{children:[e.jsxs(F,{color:"red",onClick:g=>d(g,!0),children:[e.jsx(Y,{style:{minWidth:24,color:"red"},children:e.jsx(Ye,{fontSize:"small"})}),e.jsx($,{style:{color:"red"},children:s("common.disconnect")})]}),e.jsx(it,{title:s("storage.spaces.gateway.delete.title"),open:i,confirmButton:{text:s("common.confirm"),props:{size:"small",variant:"contained",color:"error",loading:r}},cancelButton:{text:s("common.cancel"),props:{size:"small",variant:"outlined",disabled:r}},onConfirm:c,onCancel:m,children:e.jsx(j,{sx:{wordWrap:"break-word"},children:s("storage.spaces.gateway.delete.descForBackup",{name:`${t?.name}`})})})]})}Oe.propTypes={spaceGateway:u.shape({name:u.string.isRequired,url:u.string.isRequired,protected:u.bool}).isRequired,onConfirm:u.func,onCancel:u.func};function Le({spaceGateway:t,selected:o,onDelete:a=()=>{},onConnect:s=()=>{},enableSwitchToSpace:i=!0,backupInProgress:n=!1,...r}){const{abortBlockletBackup:l}=L(),[d,c]=h.useState(null),{t:m}=E(),[g,f]=h.useState(!1),p=(y,b)=>{y.stopPropagation(),y.preventDefault(),c(b&&y.currentTarget)},k=async y=>{try{f(!0),p(y,!1),await s(t)}catch(b){console.error(b),B.error(b.message)}finally{f(!1)}},w=async y=>{try{f(!0),p(y,!1),await l()}catch(b){console.error(b),B.error(b.message)}finally{f(!1)}};return e.jsxs(e.Fragment,{children:[g||t?.loading?e.jsx(z,{sx:{ml:1},size:"24px"}):e.jsx($e,{"aria-label":"more","aria-controls":"actions-menu","aria-haspopup":"true","data-cy":"trigger-blocklet-actions",variant:"outlined",size:"small",onClick:y=>p(y,!0),...r,children:e.jsx(qe,{})}),e.jsxs(He,{id:"simple-menu",anchorEl:d,keepMounted:!0,open:!!d,onClose:y=>p(y,!1),children:[e.jsxs(F,{onClick:y=>{p(y,!1),window.open(Se(t.endpoint?Ct(t.endpoint):t.url,{allowDomains:null}))},children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Qe,{fontSize:"small"})}),e.jsx($,{children:m("common.open")})]}),e.jsxs(F,{onClick:y=>{p(y,!1),window.open(Se(wt(t.endpoint),{allowDomains:null}))},children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Je,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.strategy.viewBackupFiles")})]}),!o&&i&&e.jsxs(F,{onClick:k,children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Xe,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.connect.switchToSpace")})]}),n&&e.jsxs(F,{onClick:w,children:[e.jsx(Y,{style:{minWidth:24},children:e.jsx(Ve,{fontSize:"small"})}),e.jsx($,{children:m("storage.spaces.connect.abortBlockletBackup")})]}),!n&&e.jsx(Oe,{spaceGateway:t,onConfirm:async()=>{c(null),await a?.(t)},onCancel:()=>c(null)})]})]})}Le.propTypes={spaceGateway:u.shape({name:u.string.isRequired,url:u.string.isRequired,protected:u.bool,endpoint:u.string.isRequired,loading:u.bool}).isRequired,selected:u.bool.isRequired,enableSwitchToSpace:u.bool,onDelete:u.func,onConnect:u.func,backupInProgress:u.bool};const _t=xe(({className:t,...o})=>e.jsx(ge,{...o,classes:{popper:t}}))(()=>({".MuiTooltip-tooltip":{backgroundColor:"transparent",padding:0,margin:0,boxShadow:"none",maxWidth:"none"},".MuiTooltip-arrow":{color:"rgba(230, 235, 245, 1)"}}));function Ue({spaceGateway:t,spaceStatus:o,selected:a,onConnected:s=()=>{},onDeleted:i=()=>{},onBackedUp:n=()=>{}}){const{t:r,locale:l}=E(),{blocklet:d}=O(),{api:c,info:{did:m}}=N(),{appDid:g,appName:f,appDescription:p,scopes:k,appUrl:w,referrer:y}=Be({blocklet:d}),{backupProgress:b,updateSpaceGateway:Z,deleteSpaceGateway:ee,refreshBackupSummary:te,refreshBackups:se}=L(),[_,U]=h.useState(!1),[T,P]=h.useState({open:!1,action:"one-click-authorization",checkTimeout:1e3*300,messages:{title:r("storage.spaces.authorize.title",{appName:f},l),scan:r("storage.spaces.authorize.scan",{appName:f},l),confirm:"",success:e.jsx(j,{gutterBottom:!0,children:r("storage.spaces.authorize.success")})},onClose:()=>{P(C=>({...C,open:!1}))}}),ne=a&&!_&&o===de.DISCONNECTED,oe=a&&!_&&!t.loading&&o===de.CONNECTED,G=a&&_&&o===de.CONNECTED&&b?.progress>=0,J=async()=>{try{if(await Bt(t?.endpoint)){await c.configBlocklet({input:{did:[d.meta.did],configs:[{key:M.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_BACKUP_ENDPOINT,value:t.endpoint}]}}),B.success(r("storage.spaces.connect.switchToSpaceSucceeded",{name:t.name?`(${t.name})`:""})),s?.(null,t);return}}catch(C){console.error(C),s?.(C,t);return}P(C=>({...C,open:!0,prefix:me(t.url,"space/api/did"),baseUrl:new URL(t.url).origin,checkFn:Ce.create({baseURL:me(t.url,"space")}).get,extraParams:{appDid:g,appName:f,appDescription:p,scopes:k,appUrl:w,referrer:y,nodeDid:m,spaceDid:t.did}}))},ae=async(C,x)=>{const A=x(C.endpoint),R=fe(A),v=C.space?x(C.space):{};if(t.did&&R!==t.did){P(Me=>({...Me,open:!1}));const W=r("storage.spaces.gateway.switch.failedForMismatchSpace",{name:v?.name?v.name:""});B.error(W),s?.(new Error(W),t);return}const ce={...t,name:v.name??"DID Space",did:v.did??fe(A),endpoint:A};await Z(ce),P(W=>({...W,open:!1})),s?.(null,ce)},re=async()=>{try{if(_)return;U(!0),await c.backupBlocklet({input:{appDid:d.appDid,to:"spaces"}})}catch(C){console.error(C),B.error(C.message),n?.(C,t)}finally{U(!0)}},ie=async()=>{try{await ee(t),B.success(r("storage.spaces.gateway.delete.succeeded",{name:t.name?`(${t.name})`:""})),i?.(null,t)}catch(C){console.error(C),i?.(C,t)}};return h.useEffect(()=>{b?.completed?(a&&(b?.progress===100?(B.success(r("storage.spaces.backupSuccessfully")),n?.(null,t)):b.message&&n?.(new Error(b?.message),t),b.progress=0,b.message=""),U(!1),setTimeout(()=>{te(),se()},1e3)):b.progress&&U(!0)},[b]),e.jsxs(e.Fragment,{children:[e.jsxs(S,{sx:{display:"flex",alignItems:"center",".action-btn":{borderRadius:1,marginLeft:1}},children:[oe&&e.jsx(le,{className:"action-btn",variant:"outlined",size:"small",onClick:re,children:r("storage.spaces.strategy.backupNow")}),ne&&e.jsx(le,{className:"action-btn",variant:"outlined",size:"small",onClick:J,children:r("storage.spaces.disconnected.reconnectNow")}),G&&e.jsx(_t,{title:b?.message&&e.jsx(S,{sx:{p:1,borderRadius:1,boxShadow:2,color:"black",backgroundColor:"white"},children:e.jsx(j,{variant:"body2",children:b.message})}),children:e.jsxs(le,{className:"action-btn",variant:"outlined",size:"small",sx:{minWidth:70},children:[e.jsx(z,{variant:"determinate",value:b?.progress,size:14,sx:{mr:1}}),b?.progress,"%"]})}),e.jsx(ot,{forceConnected:!1,saveConnect:!1,prefix:T.prefix,open:T.open,popup:!0,action:T.action,baseUrl:T.baseUrl,checkFn:T.checkFn,onSuccess:ae,onClose:T.onClose,checkTimeout:T.checkTimeout,extraParams:T.extraParams,messages:T.messages,locale:l},"get-endpoint")]}),e.jsx(Le,{sx:{minWidth:32,padding:"2px 4px",ml:1},spaceGateway:t,selected:a,onDelete:ie,onConnect:J,enableSwitchToSpace:b?.completed||H(b?.message),backupInProgress:G})]})}Ue.propTypes={spaceGateway:u.shape({did:u.string.isRequired,name:u.string.isRequired,url:u.string.isRequired,endpoint:u.string.isRequired,protected:u.bool,loading:u.bool}).isRequired,spaceStatus:u.string.isRequired,selected:u.bool.isRequired,onConnected:u.func,onDeleted:u.func,onBackedUp:u.func};function Wt({...t}){const{t:o}=E();return e.jsxs(S,{...t,children:[e.jsx(S,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",mb:3},children:e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:o("storage.spaces.backup.records")})}),e.jsx(Pe,{}),e.jsx(ze,{})]})}function Kt({...t}){const{t:o}=E(),{autoBackup:a,updateAutoBackup:s}=L(),i=async()=>{try{const n=!a?.enabled;await s({enabled:n}),B.success(o(n?"storage.spaces.autoBackup.enabled":"storage.spaces.autoBackup.disabled"))}catch(n){B.error(n.message)}};return e.jsx(It,{checked:!!a?.enabled,onChange:i,name:"enableWelcomePage",labelProps:{label:e.jsx(j,{sx:{marginRight:"8px"},children:e.jsx("span",{children:o("storage.spaces.autoBackup.title")})})},style:{...t.style}})}function Gt(){const{t}=E(),{spaceGateways:o,spaceGatewaysLoading:a,spaceGatewayIsSelected:s}=L(),i=a&&!o?.length,n=({spaceGateway:r,spaceStatus:l,selected:d,refresh:c})=>e.jsx(Ue,{spaceGateway:r,spaceStatus:l,selected:d,onConnected:()=>c(),onBackedUp:m=>m&&c()});return e.jsxs(S,{sx:{display:"flex",flexDirection:"column"},children:[e.jsxs(S,{sx:{display:"flex",flexDirection:{xs:"column",md:"row"},gap:{xs:1,md:2},justifyContent:{xs:"center",md:"flex-start"},alignItems:{xs:"flex-start",md:"center"}},children:[e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",flexGrow:1},children:t("storage.spaces.connected.title")}),e.jsx(Kt,{}),e.jsx(Ie,{})]}),e.jsx(S,{sx:{mt:2},children:i?e.jsx(S,{sx:{display:"flex",justifyContent:"center"},children:e.jsx(z,{})}):e.jsx(he,{container:!0,spacing:2,children:e.jsx(e.Fragment,{children:o.map(r=>e.jsx(he,{size:{xs:12,md:6},children:e.jsx(xt,{endpoint:r.endpoint,selected:s(r),action:n},r.endpoint)},r.endpoint))})})}),e.jsx(Wt,{sx:{marginTop:"24px"}}),e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold",mb:2},children:t("common.dataStorage")}),e.jsx(Re,{})]})}function Ft(){const{spaceGatewaysFirstLoading:t,spaceGateways:o}=L();return t?e.jsx(we,{relative:"parent",children:e.jsx(z,{})}):H(o)?e.jsx(Nt,{}):e.jsx(Gt,{})}function Yt(){return e.jsx(Te,{children:e.jsx(Ft,{})})}function $t(){const{spaceGateway:t,settingStorageEndpoint:o,updateSpaceGateway:a,hasStorageEndpoint:s,loading:i,storageEndpoint:n}=Pt(),r=ue(()=>({display:"flex",alignItems:"center",justifyContent:"center",paddingTop:"16px"}));return i?e.jsx(we,{relative:"parent",children:e.jsx(z,{})}):e.jsxs(S,{sx:{maxWidth:"md",position:"relative"},children:[s?e.jsx(gt,{spaceGateway:t,settingStorageEndpoint:o}):e.jsx(ht,{}),e.jsx(S,{sx:r,children:e.jsx(St,{onConnect:a,storageEndpoint:n})})]})}function qt(){const{t}=E();return e.jsxs(Rt,{children:[e.jsxs(K,{spacing:1,sx:{marginBottom:2},children:[e.jsx(j,{sx:{fontSize:"1.2rem",fontWeight:"bold"},children:t("storage.appLevel.title")}),e.jsx(j,{sx:{color:"text.secondary"},children:t("storage.appLevel.description")})]}),e.jsx($t,{})]})}function Ht({navOrientation:t="vertical",...o}){const{t:a,locale:s}=E(),{blocklet:i}=O(),n=lt({key:"md"}),[r,l]=et(),d=r.get("tab")||"backup",c=n?"horizontal":t,m=ue(()=>{const w=[{label:a("common.backup"),value:"backup"}],y=i?.capabilities?.didSpace;return(y===M.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED||y===M.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED_ON_SETUP)&&w.push({label:a("common.storage"),value:"storage"}),w},[s,c]),f=ue(()=>({backup:e.jsx(Yt,{}),storage:e.jsx(qt,{})}))[d],p=w=>{l(y=>(w==="backup"?y.delete("tab"):y.set("tab",w),y))};if(m.length<=1)return e.jsx(pe,{children:f});const k=e.jsx(ct,{tabs:m,current:d,orientation:c,onChange:p,sx:[{borderRight:1,height:"100%",borderColor:"divider"},c==="horizontal"&&{borderRight:0}]});if(c==="vertical")return e.jsx(S,{...o,children:e.jsxs(K,{direction:{md:"column",lg:"row"},sx:{gap:2},children:[e.jsx(S,{sx:{flexShrink:0},children:e.jsx(ye,{left:k})}),e.jsx(S,{sx:{flexGrow:1,minWidth:0},children:e.jsx(pe,{sx:{mt:1},children:f})})]})});if(c==="horizontal")return e.jsxs(S,{...o,children:[e.jsx(ye,{left:k}),e.jsx(pe,{sx:{mt:2},children:f})]})}Ht.propTypes={navOrientation:u.oneOf(["vertical","horizontal"])};const pe=xe(S)`
3
3
  position: relative;
4
4
  min-height: 66vh;
5
5
  overflow: hidden;