@abtnode/blocklet-services 1.16.30-beta-5d9c2c41 → 1.16.30-beta-e7a90fb2

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 (253) hide show
  1. package/api/index.js +0 -3
  2. package/api/libs/jwt.js +5 -1
  3. package/api/routes/federated.js +9 -163
  4. package/api/routes/openembed.js +4 -2
  5. package/api/routes/user-session.js +29 -13
  6. package/api/routes/user.js +26 -7
  7. package/dist/assets/{Add-CVYAN2n2.js → Add-DV9cHTiI.js} +1 -1
  8. package/dist/assets/{AddBox-DnwcDko1.js → AddBox-DjGRetT1.js} +1 -1
  9. package/dist/assets/{Alert-bzh-1cuw.js → Alert-BriK3hjA.js} +1 -1
  10. package/dist/assets/{ArrowDropDown-B3gw7vQE.js → ArrowDropDown-DX29Pf8V.js} +1 -1
  11. package/dist/assets/{Avatar-CDgX4gdS.js → Avatar-CpQhQmV4.js} +1 -1
  12. package/dist/assets/{ButtonGroup-XCe_4Dd6.js → ButtonGroup-BPdi_2z2.js} +1 -1
  13. package/dist/assets/{CheckCircle-ZNzwITLi.js → CheckCircle-DwkE-k6U.js} +1 -1
  14. package/dist/assets/{ChevronRight-BQxGComx.js → ChevronRight-BHXal2s_.js} +1 -1
  15. package/dist/assets/{Close-qW-xij4G.js → Close-BtG4tyUL.js} +1 -1
  16. package/dist/assets/{CloseOutlined-WD0GWqZM.js → CloseOutlined-CYZb8eDz.js} +1 -1
  17. package/dist/assets/{Delete-CRriNkym.js → Delete-rvy-F0hT.js} +1 -1
  18. package/dist/assets/{DeleteOutline-BBqJ5_Hu.js → DeleteOutline-C36lJe42.js} +1 -1
  19. package/dist/assets/{Done-DCkMGid3.js → Done-n1c-sUsw.js} +1 -1
  20. package/dist/assets/{Download-DmONKHB6.js → Download-DuCZFVPl.js} +1 -1
  21. package/dist/assets/{Edit-Dl7Da72r.js → Edit-BrAk9NBL.js} +1 -1
  22. package/dist/assets/{EditIcon-CqMuLEHT.js → EditIcon-CPgYqcwg.js} +1 -1
  23. package/dist/assets/{Error-BXJV4yzT.js → Error-g7gK9Wfp.js} +1 -1
  24. package/dist/assets/{ExpandMore-Br1x9msZ.js → ExpandMore-DpLFPsWa.js} +1 -1
  25. package/dist/assets/{FilterList-CH2nj31H.js → FilterList-BpmYd7MC.js} +5 -5
  26. package/dist/assets/FormControl-Dq6XW9kS.js +1 -0
  27. package/dist/assets/FormControlLabel-CQnpTkDU.js +1 -0
  28. package/dist/assets/FormGroup-C8sAhYQk.js +1 -0
  29. package/dist/assets/{Google-BL_kfN9f.js → Google-C3cw6Unp.js} +4 -4
  30. package/dist/assets/Hidden-c0nvbE8_.js +1 -0
  31. package/dist/assets/{InfoOutlined-CDKG5pPz.js → InfoOutlined-DEt-KJ8v.js} +1 -1
  32. package/dist/assets/{InputAdornment-tlUB0OtI.js → InputAdornment-Dr1oU3Hs.js} +1 -1
  33. package/dist/assets/{InputLabel-D2kHO3Su.js → InputLabel-DYr7To9X.js} +1 -1
  34. package/dist/assets/{LastPage-bpkDUtUD.js → LastPage-DV14H4DC.js} +1 -1
  35. package/dist/assets/{Launch-Ddq1J5R1.js → Launch-DSSRxyd1.js} +1 -1
  36. package/dist/assets/{LaunchOutlined-ItmbAFN0.js → LaunchOutlined-DOGa7uCZ.js} +1 -1
  37. package/dist/assets/{Link-NMapyzp6.js → Link-BzeSWqDp.js} +1 -1
  38. package/dist/assets/{ListItemText-OVWUZ8Yw.js → ListItemText-BWMpM4cA.js} +1 -1
  39. package/dist/assets/{LoadingButton-TfmYHzFH.js → LoadingButton-IrsPdnhT.js} +1 -1
  40. package/dist/assets/{LockIcon-XG87P4do.js → LockIcon-Cx_TySkG.js} +1 -1
  41. package/dist/assets/{Loop-B5igBWDP.js → Loop-CSmyyk97.js} +1 -1
  42. package/dist/assets/{MoreHoriz-c2PDP89o.js → MoreHoriz-B_IgZ_Tw.js} +1 -1
  43. package/dist/assets/{MoreVert-VUWyXDsQ.js → MoreVert-BQD92YJp.js} +1 -1
  44. package/dist/assets/{OpenInNew-ChhskXmz.js → OpenInNew-Ba4HupG6.js} +1 -1
  45. package/dist/assets/{Pagination-aUFIvi5y.js → Pagination-g_z2fX8D.js} +2 -2
  46. package/dist/assets/{PlayArrow-By-kmerY.js → PlayArrow-CvyM0yMY.js} +1 -1
  47. package/dist/assets/{QuestionMarkCircle-B9pyXZy7.js → QuestionMarkCircle-B_wELYAO.js} +1 -1
  48. package/dist/assets/{RadioGroup-DiH-c46e.js → RadioGroup-BSqtRWJR.js} +1 -1
  49. package/dist/assets/{Search-YlhHuO6O.js → Search-D_9DtKpx.js} +1 -1
  50. package/dist/assets/{Select-DxpmtgW4.js → Select-CMM8MR9i.js} +1 -1
  51. package/dist/assets/{ServerLogo-CKkyRIMN.js → ServerLogo-Ds39xok2.js} +1 -1
  52. package/dist/assets/{Skeleton-D1F5dy2x.js → Skeleton-d-rA8WB_.js} +4 -4
  53. package/dist/assets/{Slider-ao2S-hIb.js → Slider-Cv9IlmAx.js} +1 -1
  54. package/dist/assets/{Stepper-DGOl59kQ.js → Stepper-X4KYPIVJ.js} +1 -1
  55. package/dist/assets/{TextField-BYfKGYpN.js → TextField-BYelVRF_.js} +1 -1
  56. package/dist/assets/Toolbar-DI2YKZS2.js +1 -0
  57. package/dist/assets/{ViewList-CjH94hua.js → ViewList-DWZsPuDR.js} +1 -1
  58. package/dist/assets/access-control-Deg0Ez_v.js +13 -0
  59. package/dist/assets/actions-Dv2KmWA_.js +1 -0
  60. package/dist/assets/{add-component-core-HIykDunt.js → add-component-core-CGy2QLvt.js} +1 -1
  61. package/dist/assets/add-resource-B2YCggbD.js +1 -0
  62. package/dist/assets/addon-B-L0-6EM.js +31 -0
  63. package/dist/assets/{analytics-BKsUeXDw.js → analytics-B3U8I3AQ.js} +7 -7
  64. package/dist/assets/api-DJ1sjN9o.js +1 -0
  65. package/dist/assets/ar-lTVP4T3d.js +1 -0
  66. package/dist/assets/audit-logs-Dt1zBSaX.js +58 -0
  67. package/dist/assets/{button-Bfs5dmJW.js → button-BotQVFjI.js} +1 -1
  68. package/dist/assets/click-to-copy-C932KUDy.js +1 -0
  69. package/dist/assets/{complete-Dqz9_rJD.js → complete-BfHgp0O7.js} +3 -3
  70. package/dist/assets/{component-UDUqL4fG.js → component-BziFLYA3.js} +1 -1
  71. package/dist/assets/config-BcfULTik.js +32 -0
  72. package/dist/assets/{config-rlS2Ozpo.js → config-BqLTd80Y.js} +1 -1
  73. package/dist/assets/{config-navigation-CJ-de3j1.js → config-navigation-1U4iVdBl.js} +1 -1
  74. package/dist/assets/confirm-BWW215hi.js +7 -0
  75. package/dist/assets/{connect-BlBcX7xs.js → connect-CfBbqaTr.js} +1 -1
  76. package/dist/assets/connect-DC7BGJJv.js +1 -0
  77. package/dist/assets/connect-to-CHo6hM6n.js +54 -0
  78. package/dist/assets/{content-layout-CvCSD7Cn.js → content-layout-BP4bsvx7.js} +1 -1
  79. package/dist/assets/dashboard-BWG8DtF1.js +165 -0
  80. package/dist/assets/de-B3TxaybY.js +1 -0
  81. package/dist/assets/{did-address-B8vaNsMa.js → did-address-TSZ5XRBj.js} +1 -1
  82. package/dist/assets/domain-B0bCdxTC.js +9 -0
  83. package/dist/assets/domain-list-A5SqLbLS.js +15 -0
  84. package/dist/assets/es-BY0KMFme.js +1 -0
  85. package/dist/assets/exchange-passport-CBjbwwA6.js +1 -0
  86. package/dist/assets/{fallback-l6x8Ufow.js → fallback-Dz8ZuYD5.js} +1 -1
  87. package/dist/assets/{format-error-Blif5aTO.js → format-error-DQS9AwZv.js} +2 -2
  88. package/dist/assets/fr-BiVZLeXU.js +1 -0
  89. package/dist/assets/fuel-BP12PtJ1.js +32 -0
  90. package/dist/assets/{fullpage-uuQNoBvu.js → fullpage-DXFbt1Ve.js} +1 -1
  91. package/dist/assets/hi-B_LrkIOS.js +1 -0
  92. package/dist/assets/{home-DRLEBJrk.js → home-Cx9PAId-.js} +1 -1
  93. package/dist/assets/id-jBXPD1he.js +1 -0
  94. package/dist/assets/{iframe-CVrqJU8l.js → iframe-CO-VEhes.js} +1 -1
  95. package/dist/assets/{index-CSBw7k-G.js → index--YUaVsoq.js} +22 -22
  96. package/dist/assets/index-46Rvg-Bo.js +1 -0
  97. package/dist/assets/{index-CvAjMcvY.js → index-B0wa_Sca.js} +1 -1
  98. package/dist/assets/{index-ZShT0NT3.js → index-B22_1WOD.js} +1 -1
  99. package/dist/assets/{index-Ci6IWDWf.js → index-B5Pm_bPi.js} +1 -1
  100. package/dist/assets/{index-CxrCgTse.js → index-BJDKEH0b.js} +7 -7
  101. package/dist/assets/{index-CWfGuhnW.js → index-BSHfXuRt.js} +7 -7
  102. package/dist/assets/index-BcFOSrVl.js +68 -0
  103. package/dist/assets/{index-DA21JYSh.js → index-BmHPL-9s.js} +5 -5
  104. package/dist/assets/{index-cHjJj_dG.js → index-BqmsKa7O.js} +1 -1
  105. package/dist/assets/{index-cVr26mKy.js → index-BsjCwHmK.js} +1 -1
  106. package/dist/assets/{index-tfBxNgKx.js → index-Bwzls06Y.js} +1 -1
  107. package/dist/assets/{index-DNlUUcTz.js → index-ByYl1QnH.js} +1 -1
  108. package/dist/assets/{index-Bn5NB2JF.js → index-CFQwbx1S.js} +1 -1
  109. package/dist/assets/{index-DT8M-stk.js → index-COZKzHiS.js} +1 -1
  110. package/dist/assets/{index-Bo9QnPG1.js → index-CQU16qpp.js} +1 -1
  111. package/dist/assets/{index-BJ9Owdb4.js → index-CTFO1wAr.js} +12 -12
  112. package/dist/assets/{index-Bdg2hH7J.js → index-CaLGv6xG.js} +6 -6
  113. package/dist/assets/{index-D3CByOWX.js → index-ChpB_Xok.js} +1 -1
  114. package/dist/assets/{index-wK8MJeLI.js → index-CndSwPzI.js} +2 -2
  115. package/dist/assets/{index-ByD4ydGX.js → index-D-GkMvG_.js} +1 -1
  116. package/dist/assets/{index-Cpb38s9N.js → index-D5PXuh6o.js} +4 -4
  117. package/dist/assets/{index-B8k2vim3.js → index-DCMTEGgZ.js} +1 -1
  118. package/dist/assets/{index-255o-u6L.js → index-DU7LqWjQ.js} +3 -2
  119. package/dist/assets/{index-BS9TWd2p.js → index-D_u35EkG.js} +9 -9
  120. package/dist/assets/{index-BA1LIiSA.js → index-DtAm5Ed6.js} +1 -1
  121. package/dist/assets/index-Du6azec5.js +4 -0
  122. package/dist/assets/{index-_F8kdc8Q.js → index-MoRwjSwP.js} +1 -1
  123. package/dist/assets/{index-DiWAz-Pl.js → index-TTSckhl8.js} +1 -1
  124. package/dist/assets/{index--iA86Fqj.js → index-VIHj0M7P.js} +1 -1
  125. package/dist/assets/{index-BnWtXVAz.js → index-ozDSMBYi.js} +2 -2
  126. package/dist/assets/{index-Dt07hFjg.js → index-zQvc8SIq.js} +1 -1
  127. package/dist/assets/{index.es-B5pLCk4-.js → index.es-CYl4P_xg.js} +2 -2
  128. package/dist/assets/{index.esm-MqNtIWnn.js → index.esm-DDyWFyUp.js} +1 -1
  129. package/dist/assets/{invitation-BfR9BdX3.js → invitation-YCFRX3K4.js} +6 -6
  130. package/dist/assets/invite-BVqEvYi7.js +10 -0
  131. package/dist/assets/issue-passport-Bt2ICeaH.js +1 -0
  132. package/dist/assets/{item-DxzYKgGj.js → item-DmDrPoAj.js} +1 -1
  133. package/dist/assets/ja-DKiHQ6DE.js +1 -0
  134. package/dist/assets/{jss-plugin-props-sort.esm-D8X7o2pr.js → jss-plugin-props-sort.esm-B9z92TrV.js} +1 -1
  135. package/dist/assets/ko-BBYyf1yM.js +1 -0
  136. package/dist/assets/{launch-result-message-DlfUpqsM.js → launch-result-message-DpNOYW9u.js} +1 -1
  137. package/dist/assets/{layout-B0gSHs6T.js → layout-D41GSjev.js} +2 -2
  138. package/dist/assets/list-header-cw9lRKSX.js +57 -0
  139. package/dist/assets/localization-9mzelGR9.js +1 -0
  140. package/dist/assets/{log-CypPgBlx.js → log-DVDRYSeA.js} +1 -1
  141. package/dist/assets/login-BLIQel5D.js +1 -0
  142. package/dist/assets/{login-oauth-callback-2ujdQmZH.js → login-oauth-callback--4mls_Fw.js} +1 -1
  143. package/dist/assets/{logo-uploader-ClUYYxL1.js → logo-uploader-CHBeSau3.js} +5 -5
  144. package/dist/assets/{lost-passport-CPnepwqM.js → lost-passport-6PNRRlCd.js} +4 -4
  145. package/dist/assets/{lottie-7e9js8BB.js → lottie-C16LOHrZ.js} +1 -1
  146. package/dist/assets/notifications-DHYTuxQt.js +62 -0
  147. package/dist/assets/{open-window-BPoK7T-M.js → open-window-CEqHc-YI.js} +1 -1
  148. package/dist/assets/overview-jW78KQ6d.js +12 -0
  149. package/dist/assets/page-header-Bjl7D46v.js +31 -0
  150. package/dist/assets/{permission-ClswWE64.js → permission-BK9x4qjQ.js} +1 -1
  151. package/dist/assets/{preferences-COQfVvgo.js → preferences-4fQh6PBV.js} +1 -1
  152. package/dist/assets/pt-DI2MIkSi.js +1 -0
  153. package/dist/assets/publish-resource-RsLy3V3l.js +1 -0
  154. package/dist/assets/{react-C8LgBs_k.js → react-DCoycSH4.js} +16 -16
  155. package/dist/assets/{redux-_YFRGxHq.js → redux-Xix6UYN5.js} +1 -1
  156. package/dist/assets/resource-dialog-CMS1eEc0.js +57 -0
  157. package/dist/assets/ru-B2L3CRQ4.js +1 -0
  158. package/dist/assets/sdk-B75CkXUw.js +1 -0
  159. package/dist/assets/{selector-YK8Xf2Rq.js → selector-BcHp8r2b.js} +3 -3
  160. package/dist/assets/session-AqfK0jLG.js +1 -0
  161. package/dist/assets/setup-DXuWRjLR.js +19 -0
  162. package/dist/assets/{shorten-label-CeQzn9-u.js → shorten-label-DZ5n7VkB.js} +1 -1
  163. package/dist/assets/{slicedToArray-Ci6zdtll.js → slicedToArray-DiN6EoYj.js} +2 -2
  164. package/dist/assets/{spaces-Cz9_Xdg_.js → spaces-DBKeHx91.js} +1 -1
  165. package/dist/assets/start-C4mLiamV.js +187 -0
  166. package/dist/assets/step-actions-NyA7AGpj.js +31 -0
  167. package/dist/assets/studio-CC7YQ-9Q.js +6 -0
  168. package/dist/assets/switch-control-VH3u6pwk.js +13 -0
  169. package/dist/assets/th-CfNBHHtU.js +1 -0
  170. package/dist/assets/{toUpper-DiCihDmj.js → toUpper-D8eon-dl.js} +1 -1
  171. package/dist/assets/{transfer-BTtIrW0g.js → transfer-Dp36g86n.js} +2 -2
  172. package/dist/assets/{uniqBy-Blkjf7ps.js → uniqBy-Cev3lMnU.js} +1 -1
  173. package/dist/assets/unsubscribe-Be0k3pAZ.js +1 -0
  174. package/dist/assets/{url-join-Cc5MbaZB.js → url-join-B-UX0vQK.js} +1 -1
  175. package/dist/assets/{use-blocklet-info-for-connect-did-spaces-BNPOv7wG.js → use-blocklet-info-for-connect-did-spaces-DF1lby8c.js} +1 -1
  176. package/dist/assets/use-mobile-BLqjm-5m.js +1 -0
  177. package/dist/assets/{useAsync-CbQ86h-f.js → useAsync-PE3W-DLW.js} +1 -1
  178. package/dist/assets/{useFormControl-CDmRrmKw.js → useFormControl-DMGx-jdt.js} +1 -1
  179. package/dist/assets/{useLocalStorage-DvZZwTDC.js → useLocalStorage-eP0cInBT.js} +1 -1
  180. package/dist/assets/{useSetState-BpZL0m-H.js → useSetState-DEVLe2Fz.js} +1 -1
  181. package/dist/assets/useSlot-BrU8y60n.js +1 -0
  182. package/dist/assets/{useSlotProps-C9cl4-TZ.js → useSlotProps-fP10cTIP.js} +1 -1
  183. package/dist/assets/useThemeProps-C59Glnbx.js +1 -0
  184. package/dist/assets/user-center-CkHZ_2ui.js +1 -0
  185. package/dist/assets/{user-sessions-QPFNNTrZ.js → user-sessions-C8nlOE7U.js} +1 -1
  186. package/dist/assets/{util-C2KlfrNA.js → util-yXMDVjHb.js} +1 -1
  187. package/dist/assets/vi-DbzhnofW.js +1 -0
  188. package/dist/assets/{wrap-locale-aa3oShvm.js → wrap-locale-DL11xPuS.js} +1 -1
  189. package/dist/assets/zh-FO0C29Rb.js +1 -0
  190. package/dist/assets/zh-tw-cyWwf75a.js +1 -0
  191. package/dist/index.html +1 -1
  192. package/dist/service-worker.js +1 -1
  193. package/package.json +36 -36
  194. package/dist/assets/FormControl-DE9N6Db0.js +0 -1
  195. package/dist/assets/FormControlLabel-DGbEY6m8.js +0 -1
  196. package/dist/assets/FormGroup-n5wwFjBA.js +0 -1
  197. package/dist/assets/Hidden-BYIvIL0k.js +0 -1
  198. package/dist/assets/Toolbar-B_xj2T9O.js +0 -1
  199. package/dist/assets/access-control-tbrDClnL.js +0 -13
  200. package/dist/assets/actions-HNNA8mAr.js +0 -1
  201. package/dist/assets/add-resource-C-yDv8nK.js +0 -1
  202. package/dist/assets/addon-DIKMgGhZ.js +0 -31
  203. package/dist/assets/api-D5rmifNl.js +0 -1
  204. package/dist/assets/ar-BOQhQYjx.js +0 -1
  205. package/dist/assets/audit-logs-HTNz9Ui5.js +0 -58
  206. package/dist/assets/click-to-copy-D14O9X1o.js +0 -1
  207. package/dist/assets/config-CPhfDBZV.js +0 -32
  208. package/dist/assets/confirm-CnJhc68Q.js +0 -7
  209. package/dist/assets/connect-31ih5dtl.js +0 -1
  210. package/dist/assets/connect-to-NQzylv_u.js +0 -54
  211. package/dist/assets/dashboard-WQeB59iZ.js +0 -165
  212. package/dist/assets/de-t1rC40NN.js +0 -1
  213. package/dist/assets/domain-DLjLI_5f.js +0 -9
  214. package/dist/assets/domain-list-RbmvUGd2.js +0 -15
  215. package/dist/assets/es-DfbI4mbP.js +0 -1
  216. package/dist/assets/exchange-passport-BVVa20rU.js +0 -1
  217. package/dist/assets/fr-_U79lUBj.js +0 -1
  218. package/dist/assets/fuel-BlKNXMVP.js +0 -32
  219. package/dist/assets/hi-Di6UaHUZ.js +0 -1
  220. package/dist/assets/id-CuP-z2YS.js +0 -1
  221. package/dist/assets/index-CJj_4VZH.js +0 -4
  222. package/dist/assets/index-DHvniSKa.js +0 -68
  223. package/dist/assets/index-DTg4Ig3M.js +0 -1
  224. package/dist/assets/invite-COB2td-Z.js +0 -10
  225. package/dist/assets/issue-passport-C8WI5I2r.js +0 -1
  226. package/dist/assets/ja-CsYEjFuw.js +0 -1
  227. package/dist/assets/ko-DwcGU2RJ.js +0 -1
  228. package/dist/assets/list-header-Bma_K6X2.js +0 -57
  229. package/dist/assets/localization-DQx8Ct-X.js +0 -1
  230. package/dist/assets/login-CN16WkWc.js +0 -1
  231. package/dist/assets/notifications-DNM-dija.js +0 -62
  232. package/dist/assets/overview-D47edAva.js +0 -12
  233. package/dist/assets/page-header-Dlu4P1xk.js +0 -31
  234. package/dist/assets/pt-DF-luAxv.js +0 -1
  235. package/dist/assets/publish-resource-D7CEW6PO.js +0 -1
  236. package/dist/assets/resource-dialog-CROCpfsh.js +0 -57
  237. package/dist/assets/ru-DKnB6G3S.js +0 -1
  238. package/dist/assets/sdk-DR0yLm5u.js +0 -1
  239. package/dist/assets/session-CBJgIJsY.js +0 -1
  240. package/dist/assets/setup-Cq2NZKc3.js +0 -19
  241. package/dist/assets/start-DfU9ilW5.js +0 -187
  242. package/dist/assets/step-actions-BvzypTeZ.js +0 -31
  243. package/dist/assets/studio-Dogn9FY7.js +0 -6
  244. package/dist/assets/switch-control-D9hjlMId.js +0 -13
  245. package/dist/assets/th-Dna3ZHAu.js +0 -1
  246. package/dist/assets/unsubscribe-Bl9PzG7o.js +0 -1
  247. package/dist/assets/use-mobile-CPAuyQwU.js +0 -1
  248. package/dist/assets/useSlot-DxWJyNOJ.js +0 -1
  249. package/dist/assets/useThemeProps-_7k5Wu1c.js +0 -1
  250. package/dist/assets/user-center-CKSVKtEg.js +0 -1
  251. package/dist/assets/vi-tHyNmIs-.js +0 -1
  252. package/dist/assets/zh-CZ75v_KR.js +0 -1
  253. package/dist/assets/zh-tw-BDv-O3sb.js +0 -1
@@ -0,0 +1 @@
1
+ import{Z as Ae,$ as Be,j as o,bB as K,c as Re,bC as Te,u as z,r as O,bD as ee,l as y,k as C,ak as ve,B as x,A as je,bE as V,T as B,bg as Ue,O as v,bF as I,bG as Le,bH as ze,a as te,bI as T,n as oe,D as De,aD as H,t as _,bJ as Ee,bK as we,bL as fe,bM as _e,Q,aU as ne,bN as Fe,bO as Me,U as ae,bP as he,aT as Oe,a3 as ie,bQ as ye,bR as We,bS as P,bT as $e,bU as He,bV as Ne,bW as Ge,s as qe,q as Ve,bX as Qe,bY as Xe,bZ as Je,b_ as Ke,b$ as Ze,c0 as Ye,c1 as eo,c2 as oo,c3 as ro,m as to,R as no,w as ge,by as ao,H as io}from"./index-CaLGv6xG.js";import{H as so,F as lo}from"./index-BSHfXuRt.js";import{f as co,g as po}from"./index-ozDSMBYi.js";import{S as uo,t as U,a as xo,b as fo,M as ho,C as go,P as mo,c as bo,E as vo,D as jo,A as wo,d as M,I as yo,L as ko,e as Co,f as Po}from"./resource-dialog-CMS1eEc0.js";import{T as ke}from"./index-ByYl1QnH.js";import{E as Z}from"./index-B5Pm_bPi.js";import{E as So}from"./fallback-Dz8ZuYD5.js";import{u as Io}from"./uniqBy-Cev3lMnU.js";import{S as Ce}from"./index-ChpB_Xok.js";import{i as Ao}from"./index-VIHj0M7P.js";import{S as Pe}from"./Select-CMM8MR9i.js";import{T as Bo}from"./TextField-BYelVRF_.js";import{I as Ro}from"./InputAdornment-Dr1oU3Hs.js";import{A as To}from"./Alert-BriK3hjA.js";import{S as Uo}from"./FormControlLabel-CQnpTkDU.js";import{U as Lo}from"./user-sessions-C8nlOE7U.js";import"./index-COZKzHiS.js";import"./index-D_u35EkG.js";import"./Toolbar-DI2YKZS2.js";import"./Hidden-c0nvbE8_.js";import"./ExpandMore-DpLFPsWa.js";import"./Avatar-CpQhQmV4.js";import"./useSlot-BrU8y60n.js";import"./MoreVert-BQD92YJp.js";import"./selector-BcHp8r2b.js";import"./OpenInNew-Ba4HupG6.js";import"./CloseOutlined-CYZb8eDz.js";import"./use-mobile-BLqjm-5m.js";import"./Link-BzeSWqDp.js";import"./FormControl-Dq6XW9kS.js";import"./useFormControl-DMGx-jdt.js";import"./InputLabel-DYr7To9X.js";import"./FilterList-BpmYd7MC.js";import"./useThemeProps-C59Glnbx.js";import"./toPropertyKey-PLuKRk1e.js";import"./FormGroup-C8sAhYQk.js";import"./ListItemText-BWMpM4cA.js";import"./LastPage-DV14H4DC.js";import"./index-BqmsKa7O.js";import"./redux-Xix6UYN5.js";import"./Search-D_9DtKpx.js";import"./Delete-rvy-F0hT.js";var se={},zo=Be;Object.defineProperty(se,"__esModule",{value:!0});var Se=se.default=void 0,Do=zo(Ae()),Eo=o;Se=se.default=(0,Do.default)((0,Eo.jsx)("path",{d:"M17.65 6.35C16.2 4.9 14.21 4 12 4c-4.42 0-7.99 3.58-7.99 8s3.57 8 7.99 8c3.73 0 6.84-2.55 7.73-6h-2.08c-.82 2.33-3.04 4-5.65 4-3.31 0-6-2.69-6-6s2.69-6 6-6c1.66 0 3.14.69 4.22 1.78L13 11h7V4z"}),"RefreshOutlined");const _o=(e,c)=>{let s;return e==="default"?s=K.DEFAULT_COLORS["app-passport"]:e==="auto"?s=K.getNftBGColorFromDid(c):s=K.getNftBGColor(e),s},Fo=({issuer:e="",title:c="",issuerDid:s="",issuerAvatarUrl:g="",ownerDid:a="",ownerName:p="",ownerAvatarUrl:f="",preferredColor:n="default",revoked:l=!1,isDataUrl:r=!1,width:u="100%",height:h="100%"})=>{const j=_o(n,s),d=K.getSvg({width:u,height:h,tag:l?"revoked":"",tagVariant:l?"error":"info",color:j,did:a,variant:"app-passport",verifiable:!0,issuer:{name:e,icon:g},header:{name:c,icon:f},extra:{key:"Exp",value:"2123-01-01"}});return r?`data:image/svg+xml;utf8,${encodeURIComponent(d)}`:d},Y=e=>{const{response:c}=e;return c?`Request failed: ${c.status} ${c.statusText}: ${JSON.stringify(c.data)}`:e.message},Mo=e=>Fo({...e,issuerAvatarUrl:Re(window.location.origin,Te,"/blocklet/logo")});function me({user:e,isMyself:c=!0,showFullDid:s=!0,switchPassport:g,switchProfile:a,openSettings:p,...f}){var b;const{locale:n}=z(),{session:l}=O.useContext(ee),[r,u]=O.useState(!1),h=y((m,k={})=>T(U,m,n,"en",k)),j=C(()=>{var m;return(m=(e==null?void 0:e.passports)||[])==null?void 0:m.find(k=>k.name===e.role)},[e==null?void 0:e.passports,e==null?void 0:e.role]),d=ve(),i=d.breakpoints.down("md");if(!e)return null;const t=async()=>{try{u(!0),await l.refreshProfile(),l.refresh(),_.success(T(U,"refreshProfile.successfully",n))}catch(m){console.error(m),_.error(Y(m))}finally{u(!1)}};return o.jsxs(x,{...f,sx:{position:"relative",...f.sx},children:[o.jsx(je,{src:e==null?void 0:e.avatar,did:e==null?void 0:e.did,size:i?64:80,variant:"circle",shape:"circle",sx:{borderRadius:"100%",backgroundColor:"#fff",position:"relative",overflow:"hidden",mb:1.5,...c?{cursor:"pointer","&:hover":{"&::after":{content:`"${h("switchProfile")}"`}},"&::after":{color:"white",position:"absolute",fontSize:"12px",bottom:0,left:0,right:0,height:"50%",backgroundColor:"rgba(0, 0, 0, 0.3)",display:"flex",justifyContent:"center",alignItems:"center"}}:{}},onClick:c?a:V}),o.jsxs(B,{variant:"h6",sx:{fontWeight:"bold",display:"flex",alignItems:"center",gap:1,fontSize:"24px !important"},children:[e==null?void 0:e.fullName,c?o.jsxs(o.Fragment,{children:[o.jsx(Ue,{label:(j==null?void 0:j.title)||(e==null?void 0:e.role)||"Guest",size:"small",variant:"outlined",sx:{flexShrink:0,fontWeight:"bold",fontSize:"12px",color:v.textBase,borderColor:v.strokeBorderStrong,backgroundColor:"transparent",textTransform:"capitalize",pr:1,pl:.5,"&:hover":{backgroundColor:"rgba(0, 0, 0, 0.04)"},"&:active":{boxShadow:"none"}},clickable:!0,deleteIcon:o.jsx(I,{icon:Le,color:v.textBase}),onDelete:g,onClick:g}),!ze(e.url)&&o.jsx(te,{title:!r&&T(U,"refreshProfile.title",n),sx:{display:"flex",alignItems:"center"},children:r?o.jsx(oe,{size:"16px",sx:{color:(b=d==null?void 0:d.colors)==null?void 0:b.primary,ml:.5}}):o.jsx(Se,{onClick:t})})]}):null]}),o.jsx(De,{did:e.did,showQrcode:!0,copyable:!0,compact:!s,responsive:!s,locale:n}),c?o.jsx(H,{sx:{borderRadius:2,color:v.textBase,backgroundColor:"white",border:`1px solid ${v.strokeBorderBase}`,position:"absolute",top:0,right:0},disableFocusRipple:!0,onClick:p,children:o.jsx(I,{icon:uo})}):null]})}function Oo({data:e,...c}){return o.jsxs(x,{...c,sx:{display:"flex",alignItems:"center",justifyContent:"space-between",...c.sx},children:[o.jsxs(B,{sx:{display:"flex",alignItems:"center",color:v.textBase,fontSize:"14px",gap:1,fontWeight:500},children:[e.icon,e.title]}),o.jsx(B,{sx:{color:v.textSubtitle,whiteSpace:"pre-wrap",fontSize:"14px"},children:e.content})]})}function Wo({user:e,isMySelf:c=!1,...s}){const{locale:g}=z(),a=y((n,l={})=>T(U,n,g,"en",l)),p=C(()=>(e==null?void 0:e.sourceProvider)&&Ee[e.sourceProvider]||a("unknown"),[e==null?void 0:e.sourceProvider]),f=[];return c&&(f.push({icon:o.jsx(I,{fontSize:16,icon:we}),title:a("email"),content:(e==null?void 0:e.email)||a("emptyField")}),f.push({icon:o.jsx(I,{fontSize:16,icon:xo}),title:a("lastLoginAt"),content:e!=null&&e.lastLoginAt?o.jsx(fe,{locale:g,value:e==null?void 0:e.lastLoginAt,relativeRange:3*86400*1e3}):a("unknown")}),f.push({icon:o.jsx(I,{fontSize:16,icon:fo}),title:a("lastLoginIp"),content:(e==null?void 0:e.lastLoginIp)||a("unknown")})),f.push({icon:o.jsx(I,{fontSize:16,icon:ho}),title:a("createdAt"),content:e!=null&&e.createdAt?o.jsx(fe,{locale:g,value:e==null?void 0:e.createdAt}):a("unknown")}),c&&f.push({icon:o.jsx(I,{fontSize:16,icon:go}),title:a("registerFrom"),content:p}),o.jsx(x,{...s,sx:{display:"flex",flexDirection:"column",gap:1.5,...s==null?void 0:s.sx},children:f.map(n=>o.jsx(Oo,{data:n,sx:{flex:1}},n.title))})}function $o({user:e,...c}){var l,r;const{locale:s}=z(),g=y((u,h={})=>T(U,u,s,"en",h)),a=ve(),p=C(()=>{const u=((e==null?void 0:e.passports)||[]).map(h=>({...h,revoked:h.status===_e.REVOKED}));return u.sort((h,j)=>h.revoked===j.revoked?0:h.revoked?1:-1),Io(u,"role")},[e==null?void 0:e.passports]),f=C(()=>p==null?void 0:p.find(u=>u.name===e.role),[p,e==null?void 0:e.role]),n=C(()=>{var u,h;return((h=(u=a==null?void 0:a.palette)==null?void 0:u.primary)==null?void 0:h.main)||v.textBase},[(r=(l=a==null?void 0:a.palette)==null?void 0:l.primary)==null?void 0:r.main]);return p.length===0?o.jsx(x,{children:o.jsx(Z,{children:g("noPassport")})}):o.jsx(x,{...c,sx:{display:"grid",gridTemplateColumns:{xs:"repeat(2, 1fr)",sm:"repeat(3, 1fr)",md:"repeat(2, 1fr)"},gap:2.5,...c.sx},children:p.map(u=>o.jsx(mo,{passport:u,user:e,color:window.blocklet.passportColor,createPassportSvg:Mo,title:f&&f.role===u.role?g("currentPassport"):"",sx:{flexDirection:"column",alignItems:"center",gap:1,".passport-item__display":{width:166,height:166,borderRadius:2,px:2,display:"flex",justifyContent:"center",backgroundColor:v.backgroundsBgComponent,boxShadow:f&&f.role===u.role?`0px 2px 4px 0px ${n}, 0px 1px 2px -1px ${n}, 0px 0px 0px 1px ${n} !important`:"unset"},".passport-item__body":{marginLeft:"0 !important"}}},u.id))})}function be({onTest:e=V,onDelete:c=V,onSave:s=V,onCancel:g=V,type:a="slack",url:p="",edit:f=!1}){const{locale:n}=z(),l=y((t,b={})=>T(U,t,n,"en",b)),r=Q({type:a||"slack",url:p||"",edit:f??!1,error:"",loading:!1}),u=y(()=>r.url?Ao(r.url)?(r.error="",!0):(r.error=l("common.invalid"),!1):(r.error=l("common.required"),!1)),h=y(()=>{r.edit=!1,r.url=p||"",r.type=a||"slack",r.error="",r.loading=!1,g()}),j=y(async t=>{r.loading=!0,await e(t),r.loading=!1}),d=y(t=>()=>{u()&&t({type:r.type,url:r.url})}),i=C(()=>r.error?o.jsx(B,{component:"span",color:"error",children:r.error}):r.edit?r.loading?o.jsx(oe,{size:16}):o.jsx(H,{size:"small",onClick:d(j),sx:{mr:-1},children:o.jsx(I,{icon:bo})}):null,[r.error,r.edit,r.loading]);return o.jsxs(x,{sx:{display:"flex",gap:1.5,width:"100%",alignItems:{xs:"flex-start",md:"center"},flexDirection:{xs:"column",md:"row"}},children:[o.jsxs(Pe,{sx:{borderRadius:2,"&.Mui-disabled":{backgroundColor:v.backgroundsBgField}},disabled:!r.edit||r.loading,size:"small",value:r.type,onChange:t=>{r.type=t.target.value},children:[o.jsx(ne,{value:"api",children:l("webhook.url")}),o.jsx(ne,{value:"slack",children:l("webhook.slack")})]}),o.jsxs(x,{sx:{display:"flex",alignItems:"center",gap:.5,width:"100%"},children:[o.jsx(Bo,{sx:{flex:1,".MuiInputBase-root":{borderRadius:2,"&.Mui-disabled":{backgroundColor:v.backgroundsBgField}}},disabled:!r.edit||r.loading,fullWidth:!0,size:"small",required:!0,value:r.url,onChange:t=>{r.url=t.target.value,u()},error:!!r.error,InputProps:{endAdornment:o.jsx(Ro,{position:"end",children:i})}}),o.jsx(x,{sx:{display:"flex",gap:.5},children:r.edit?o.jsxs(o.Fragment,{children:[o.jsx(H,{color:"success",onClick:d((...t)=>{s(...t),r.edit=!1}),sx:{borderRadius:2,border:`1px solid ${v.strokeBorderBase}`},children:o.jsx(I,{icon:Fe})}),o.jsx(H,{color:"error",onClick:h,sx:{borderRadius:2,border:`1px solid ${v.strokeBorderBase}`},children:o.jsx(I,{icon:Me})})]}):o.jsxs(o.Fragment,{children:[o.jsx(H,{onClick:()=>{r.edit=!0},sx:{borderRadius:2,border:`1px solid ${v.strokeBorderBase}`},children:o.jsx(I,{icon:vo})}),o.jsx(H,{color:"error",onClick:()=>{c({type:r.type,url:r.url})},sx:{borderRadius:2,border:`1px solid ${v.strokeBorderBase}`},children:o.jsx(I,{icon:jo})})]})})]})]})}function re({title:e,description:c,value:s,onChange:g}){return o.jsx(Ce,{checked:s,labelProps:{label:o.jsxs(B,{color:"text.primary",sx:{fontSize:14,display:"flex",flexFlow:"wrap",columnGap:1,flex:1},children:[e,c]})},size:"small",onChange:g})}function Ho({user:e}){var d,i;const{locale:c}=z(),s=y((t,b={})=>T(U,t,c,"en",b)),g=Q({showAdd:!1}),a=ae(async()=>await M.user.getUserNotificationConfig(),{refreshDeps:[e],loadingDelay:300}),p=C(()=>{var t;return{wallet:!0,email:!0,phone:!1,push:!0,...((t=a==null?void 0:a.data)==null?void 0:t.notifications)||{}}},[(d=a==null?void 0:a.data)==null?void 0:d.notifications]),f=C(()=>{var t;return((t=a==null?void 0:a.data)==null?void 0:t.webhooks)||[]},[(i=a==null?void 0:a.data)==null?void 0:i.webhooks]),n=y(async t=>{try{await M.user.saveUserNotificationConfig(t),_.success(s("saveSuccess")),a.run()}catch(b){_.error(Y(b))}}),l=y(async(t,b)=>{await n({notifications:{[t]:b}})}),r=async t=>{try{await M.user.testNotificationWebhook(t),_.success(s("webhookTested"))}catch(b){_.error(Y(b))}},u=y(async t=>{await n({webhooks:f.filter((b,m)=>m!==t)})}),h=y(async(t,b)=>{await n({webhooks:f.map((m,k)=>k===t?b:m)})}),j=y(async t=>{await n({webhooks:[...f,t]}),g.showAdd=!1});return a.error?o.jsx(To,{severity:"error",children:a.error.message}):a.loading||!a.data?o.jsx(x,{sx:{display:"flex",justifyContent:"center",alignItems:"center",height:"100px"},children:o.jsx(oe,{})}):o.jsxs(x,{sx:{display:"flex",flexDirection:"column",gap:2},children:[o.jsxs(x,{sx:{display:"flex",flexDirection:"column",gap:1,alignItems:"start",".MuiFormControlLabel-root":{gap:1,m:0,flexDirection:{xs:"row-reverse",md:"row"},width:{xs:"100%",md:"unset"}},".MuiSwitch-track":{borderRadius:"100vw"},".MuiSwitch-thumb":{borderRadius:"100%"},".MuiSwitch-root.MuiSwitch-sizeSmall":{height:"20px",width:"36px",".MuiSwitch-thumb":{width:"16px",height:"16px"}}},children:[o.jsx(re,{value:p.wallet,title:s("walletNotification"),onChange:t=>l("wallet",t.target.checked),description:he(e)&&o.jsx(B,{component:"span",color:"text.secondary",fontSize:13,children:he(e)})}),o.jsx(re,{value:p.email,onChange:t=>l("email",t.target.checked),title:s("emailNotification"),description:(e==null?void 0:e.email)&&o.jsx(B,{component:"span",color:"text.secondary",fontSize:13,children:e==null?void 0:e.email})}),o.jsx(re,{value:p.push,title:s("pushNotification"),onChange:t=>l("push",t.target.checked)})]}),o.jsx(Oe,{}),o.jsxs(Uo,{spacing:1.5,useFlexGap:!0,direction:"column",alignItems:"start",children:[f.map((t,b)=>o.jsx(be,{onTest:r,onDelete:()=>u(b),onSave:(...m)=>h(b,...m),type:t.type,url:t.url,edit:!1},`${b}_${t.url}`)),g.showAdd&&o.jsx(be,{onTest:r,onCancel:()=>{g.showAdd=!1},onSave:(...t)=>j(...t),edit:!0},"add"),o.jsx(ie,{variant:"outlined",size:"small",sx:{color:v.foregroundsFgBase,borderColor:v.strokeBorderBase,backgroundColor:v.buttonsButtonNeutral,"&:hover":{borderColor:v.strokeBorderBase,backgroundColor:v.buttonsButtonNeutralHover},py:.5,borderRadius:2},startIcon:o.jsx(I,{icon:wo}),onClick:()=>{g.showAdd=!0},children:s("addWebhook")})]})]})}function No({configList:e,onSave:c}){const[s,g]=O.useState(e),{locale:a}=z(),p=y((n,l={})=>T(U,n,a,"en",l)),f=y(async(n,l)=>{try{const r=await M.user.saveUserPrivacyConfig({[n]:!l});g(s.map(u=>({...u,value:(r==null?void 0:r[u.key])??u.value}))),_.success(p("saveSuccess")),c("privacy")}catch(r){_.error(Y(r))}});return o.jsx(x,{sx:{display:"flex",flexDirection:"column",gap:1,alignItems:"start",".MuiFormControlLabel-root":{gap:1,m:0,flexDirection:{xs:"row-reverse",md:"row"},width:{xs:"100%",md:"unset"}},".MuiSwitch-track":{borderRadius:"100vw"},".MuiSwitch-thumb":{borderRadius:"100%"},".MuiSwitch-root.MuiSwitch-sizeSmall":{height:"20px",width:"36px",".MuiSwitch-thumb":{width:"16px",height:"16px"}}},children:s.map(n=>o.jsx(Ce,{checked:!n.value,labelProps:{label:o.jsx(B,{color:"text.primary",sx:{fontSize:14,display:"flex",flexFlow:"wrap",columnGap:1,flex:1},children:p("toPublic",{name:n.name})})},size:"small",onChange:l=>f(n.key,l.target.checked)},n.key))})}function Go({item:e}){var t,b,m,k,X;const{confirmApi:c,confirmHolder:s}=ye(),g=Q({loading:!1}),{locale:a}=z(),p=y((L,A={})=>T(U,L,a,"en",A)),{session:f}=O.useContext(ee),{bindOAuth:n,unbindOAuth:l,setBaseUrl:r,baseUrl:u}=f.useOAuth(),h={[P.AUTH0]:we,[P.APPLE]:$e,[P.GITHUB]:He,[P.GOOGLE]:Ne},j=C(()=>h[e==null?void 0:e.provider],[e==null?void 0:e.provider]),d=C(()=>We[e==null?void 0:e.provider]||"unknown",[e==null?void 0:e.provider]),i=y(async()=>{try{g.loading=!0,await new Promise((L,A)=>{var R;if(e!=null&&e._bind)c.open({title:p("thirdPartyLogin.confirmUnbind",{name:d}),content:p("thirdPartyLogin.confirmUnbindDescription",{name:d}),confirmButtonText:p("common.confirm"),cancelButtonText:p("common.cancel"),onConfirm(E){l({session:f,connectedAccount:{...Ge(e,["did","pk"]),showProvider:e.provider,provider:e._rawProvider}}).then(L).catch(A),E()},onCancel:L});else{const E=u,J=window==null?void 0:window.blocklet;let W="/";const N=qe(J),$=Ve(J);N&&($!=null&&$.appPid)&&((R=f==null?void 0:f.user)!=null&&R.sourceAppPid)&&(W=$.appUrl),r(W),n({session:f,oauthItem:{...e,provider:e._rawProvider}}).then(L).catch(A).finally(()=>{r(E)})}})}catch(L){console.error(`Failed to ${e!=null&&e._bind?"unbind":"bind"} oauth account`,L)}finally{g.loading=!1}});return o.jsxs(o.Fragment,{children:[o.jsxs(x,{sx:{borderRadius:2,border:`1px solid ${v.strokeBorderBase}`,background:v.backgroundsBgField,display:"flex",alignItems:"center",py:1,px:1.5,gap:.75,fontSize:"14px",lineHeight:1,overflow:"hidden"},children:[o.jsx(x,{component:I,icon:j,width:"1em",height:"1em",sx:{flexShrink:0,fontSize:16}}),o.jsx(x,{sx:{flex:1},children:d}),o.jsxs(x,{sx:{display:"flex",alignItems:"center",gap:.5},children:[o.jsx(x,{sx:{flex:1,textOverflow:"ellipsis",overflow:"hidden",lineHeight:"normal"},children:((t=e.userInfo)==null?void 0:t.email)||e.did}),(b=e.userInfo)!=null&&b.email?o.jsx(te,{title:o.jsx(o.Fragment,{children:o.jsxs(x,{sx:{display:"flex",alignItems:"center",gap:1},children:[o.jsx(je,{size:36,variant:"circle",shape:"circle",src:(m=e.userInfo)==null?void 0:m.picture,did:e.did}),o.jsxs(x,{children:[o.jsx(B,{sx:{whiteSpace:"normal",wordBreak:"break-all",fontSize:"0.9rem"},children:(k=e.userInfo)==null?void 0:k.name}),o.jsx(B,{sx:{whiteSpace:"normal",wordBreak:"break-all",fontSize:"0.9rem"},children:(X=e.userInfo)==null?void 0:X.email})]})]})}),children:o.jsx(x,{component:I,icon:yo,color:v.textSubtitle,fontSize:16,sx:{cursor:"pointer",flexShrink:0}})}):null]})]}),o.jsx(te,{title:e._mainProvider?p("thirdPartyLogin.mainProviderCantRemove"):"",children:o.jsx(x,{children:o.jsx(ie,{variant:"outlined",size:"small",sx:{color:e!=null&&e._bind?v.red:v.foregroundsFgBase,borderColor:e!=null&&e._bind?v.red:v.strokeBorderBase,backgroundColor:v.buttonsButtonNeutral,"&:hover":{borderColor:e!=null&&e._bind?v.red:v.strokeBorderBase,backgroundColor:v.buttonsButtonNeutralHover},py:.5,borderRadius:2,fontWeight:500,whiteSpace:"nowrap"},fullWidth:!0,startIcon:g.loading?null:o.jsx(I,{icon:ko}),onClick:i,disabled:e._mainProvider,loading:g.loading,children:e!=null&&e._bind?p("thirdPartyLogin.disconnect"):p("thirdPartyLogin.connect")})})}),s]})}function qo({user:e}){const{session:c}=O.useContext(ee),[s,g]=O.useState({}),{getOAuthConfigs:a}=c.useOAuth();Qe(async()=>{const n=await a({sourceAppPid:e==null?void 0:e.sourceAppPid});g(n)},[e==null?void 0:e.sourceAppPid]);const p=C(()=>Object.keys(s).map(l=>({...s[l],provider:l})).filter(l=>l.enabled),[s]),f=C(()=>{const n=Xe(e);let l=!1,r="",u=Je(e);const h=n.find(d=>d.provider===P.AUTH0);return h&&(h.id.startsWith("google-oauth2|")&&(n.some(d=>d.provider==="google")||(l=!0,r=P.GOOGLE,u===P.AUTH0&&(u=P.GOOGLE))),h.id.startsWith("appleid|")&&(n.some(d=>d.provider===P.APPLE)||(l=!0,r=P.APPLE,u===P.AUTH0&&(u=P.APPLE))),h.id.startsWith("github|")&&(n.some(d=>d.provider===P.GITHUB)||(l=!0,r=P.GITHUB,u===P.AUTH0&&(u=P.GITHUB)))),p.map(d=>{if(d.provider===P.AUTH0&&l)return null;const i=l&&d.provider===r?n.find(t=>t.provider===P.AUTH0):n.find(t=>t.provider===d.provider);return i?{...d,provider:d.provider,did:i.did,pk:i.pk,userInfo:i.userInfo,_bind:!0,_rawProvider:i.provider,_mainProvider:d.provider===u}:{...d,provider:d.provider,_rawProvider:d.provider,_mainProvider:d.provider===u}}).filter(Boolean).sort((d,i)=>(d==null?void 0:d.order)!==void 0&&(i==null?void 0:i.order)!==void 0?d.order-i.order:(d==null?void 0:d.order)!==void 0?-1:1)},[e==null?void 0:e.connectedAccounts,p]);return o.jsx(x,{sx:{gap:1,display:"grid",gridTemplateColumns:"1fr min-content"},children:f.map(n=>o.jsx(Go,{item:n},n==null?void 0:n.provider))})}const Vo=[{label:"English",value:"en"},{label:"中文",value:"zh"}];function Qo({user:e,onSave:c}){const{locale:s,changeLocale:g}=z(),a=y((n,l={})=>T(U,n,s,"en",l)),p=Q({locale:e.locale,loading:!1}),f=y(async n=>{try{const{value:l}=n.target;p.loading=!0,await Promise.all([M.user.saveProfile({locale:l}),Ze(350)]),await c("profile"),g(l),p.locale=l}finally{p.loading=!1}});return o.jsxs(x,{sx:{gap:1,display:"grid",alignItems:"center",gridTemplateColumns:{xs:"1fr",sm:"max-content 1fr"}},children:[o.jsx(x,{children:a("commonSetting.locale")}),o.jsxs(x,{children:[o.jsx(Ke,{color:"primary",sx:{visibility:p.loading?"visible":"hidden",height:2}}),o.jsx(Pe,{fullWidth:!0,value:p.locale,onChange:f,size:"small",children:Vo.map(n=>o.jsx(ne,{value:n.value,children:n.label}))})]})]})}function Xo({user:e,settings:c,onSave:s,...g}){const{locale:a}=z(),p=y((h,j={})=>T(U,h,a,"en",j)),f=C(()=>((c==null?void 0:c.userCenterTabs)||[]).map(j=>({key:j.value,name:j.label,value:j.protected})),[c==null?void 0:c.userCenterTabs]),n=C(()=>{var h;return[{label:p("commonSetting.title"),value:"common",content:o.jsx(Qo,{user:e,onSave:s})},{label:p("notificationManagement"),value:"notification",content:o.jsx(Ho,{user:e})},{label:p("thirdPartyLogin.title"),value:"thirdPartyLogin",content:o.jsx(qo,{user:e})},{label:p("privacyManagement"),value:"privacy",content:o.jsx(No,{configList:f,onSave:s})},((h=e==null?void 0:e.didSpace)==null?void 0:h.endpoint)&&{label:p("storageManagement"),value:"storage",content:o.jsx(Co,{children:o.jsx(Po,{})})},{label:p("sessionManagement"),value:"session",content:o.jsx(Lo,{user:e})}].filter(Boolean)},[e,f]),l=Q({tab:n[0].value}),r=C(()=>n.find(h=>h.value===l.tab),[l.tab,n]),u=y(h=>{l.tab=h});return r&&o.jsxs(x,{...g,sx:{...g==null?void 0:g.sx,minWidth:{md:500},maxWidth:"100%"},children:[o.jsx(ke,{variant:"card",tabs:n,current:r.value,onChange:u}),o.jsx(x,{mt:2.5,children:r.content})]})}function Jo({children:e,notLoginContent:c=null,currentTab:s,contentProps:g={},disableAutoRedirect:a=!1,autoPopupSetting:p=!1,hideFooter:f=!1,headerProps:n={},footerProps:l={},userDid:r=void 0,stickySidebar:u=!1}){var le,ce,de,pe,ue,xe;const{locale:h}=z(),j=y((w,S={})=>T(U,w,h,"en",S)),d=O.useContext(ee),i=d==null?void 0:d.session,t=C(()=>{var D;if(r)return r;const w=window.location.href,S=Ye(w);return S!=null&&S.did?Array.isArray(S.did)?S.did[0]:S.did:(D=i==null?void 0:i.user)==null?void 0:D.did},[(le=i==null?void 0:i.user)==null?void 0:le.did,r]),b=C(()=>{var w;return i!=null&&i.user?t===((w=i==null?void 0:i.user)==null?void 0:w.did):!1},[t,(ce=i==null?void 0:i.user)==null?void 0:ce.did]),m=ae(async()=>{if(await eo(()=>i==null?void 0:i.initialized),b)return i.user;if(t)return M.user.getUserPublicInfo({did:t})},{refreshDeps:[t,b,i==null?void 0:i.initialized,i==null?void 0:i.user]}),k=ae(async()=>m.data&&s?await M.user.getUserPrivacyConfig({did:t}):null,{refreshDeps:[t,m.data,s],loadingDelay:300}),{confirmHolder:X,confirmApi:L}=ye({sx:{".MuiDialog-paper":{borderRadius:2,maxWidth:1200},".ux-dialog_title":{fontWeight:600},".ux-dialog_closeButton":{p:1},".MuiDialogActions-root":{display:{xs:"none",md:"flex"}}}}),A=C(()=>{const w=oo(window.blocklet);try{return co(w)}catch(S){return console.error("Failed to format blocklet info",S,w),w}},[]),R=C(()=>{var D;const w=((D=A==null?void 0:A.navigation)==null?void 0:D.userCenter)||[];return(po(w,h)||[]).map(F=>{var q;const G=F._rawLink??F.link;return{value:G,label:F.title,url:F.link,protected:((q=k==null?void 0:k.data)==null?void 0:q[G])??!1}})},[A,m.data,k==null?void 0:k.data,h]),E=C(()=>R.find(w=>w.value===s),[R]),J=y(w=>{const S=R.find(D=>D.value===w);S&&(window.location.href=ge(S.url,{did:b?void 0:t}))}),W=C(()=>o.jsx(Xo,{user:m.data,settings:{userCenterTabs:R},onSave:async w=>w==="privacy"?(await k.runAsync(),k.data):(w==="profile"&&await i.refresh(),null)}),[m.data,R,k.data,k.runAsync]),N=y(()=>{L.open({title:j("settings"),content:W,showCancelButton:!1,confirmButtonText:j("done"),onConfirm:L.close})});ro(()=>{L.update({content:W})},[W]),to(()=>{p&&N()});const $=C(()=>{var w,S,D,F,G;if(m.loading||i.loading)return null;if(m.error){if(((S=(w=m.error)==null?void 0:w.response)==null?void 0:S.status)===404)return o.jsx(x,{sx:{width:"100%"},children:o.jsx(no,{status:404,description:j("noUserFound")})});const Ie={message:((F=(D=m.error.response)==null?void 0:D.data)==null?void 0:F.error)||m.error.message||"error occurred"};return o.jsx(x,{sx:{width:"100%"},children:o.jsx(So,{error:Ie})})}return!t&&!m.data?c||o.jsx(x,{sx:{width:"100%"},children:o.jsxs(x,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",gap:1},children:[o.jsx(Z,{children:j("viewAfterLogin")}),o.jsx(ie,{size:"small",variant:"contained",onClick:()=>i.login(),children:j("loginNow")})]})}):o.jsxs(o.Fragment,{children:[o.jsxs(x,{sx:[{flex:{xs:"revert",md:1},overflow:"hidden"}],children:[(G=m==null?void 0:m.data)!=null&&G.fullName?o.jsx(B,{variant:"h4",sx:{py:1.5,fontWeight:700,display:{xs:"none",md:"block"}},children:m.data.fullName}):null,o.jsx(me,{isMyself:b,switchPassport:i.switchPassport,switchProfile:i.switchProfile,openSettings:N,user:m.data,showFullDid:!1,sx:{display:{md:"none",xs:"block"},mb:1.5}}),R.length>0&&s?o.jsxs(x,{sx:{overflow:"auto",padding:"1px"},children:[o.jsx(ke,{variant:"line",tabs:R,current:s,onChange:J,sx:{mb:1.5}}),!k.data||k.loading?o.jsx(x,{sx:{height:"100%",minWidth:"160px",minHeight:"160px",display:"flex",justifyContent:"center",alignItems:"center"},children:o.jsx(oe,{sx:{color:v.primary100}})}):o.jsx(o.Fragment,{children:E!=null&&E.protected&&!b?o.jsx(x,{children:o.jsx(Z,{children:j("underProtected")})}):o.jsx(o.Fragment,{children:e&&o.jsx(x,{...g,children:e})})})]}):null,R.length===0?o.jsx(x,{sx:{display:{xs:b?"none":"block",md:"block"},py:3},children:o.jsx(Z,{children:j("emptyContent")})}):null]}),o.jsx(x,{sx:{display:{xs:"none",md:"block"},width:"1px",my:-3,backgroundColor:v.strokeSep}}),o.jsx(x,{sx:{width:{sx:"100%",md:420},maxWidth:"100%",position:"relative"},children:o.jsxs(x,{sx:{display:"flex",flexDirection:"column",gap:2.5,position:{xs:"static",md:u?"sticky":"static"},top:q=>u?q.spacing(3):"unset"},children:[o.jsx(me,{isMyself:b,switchPassport:i.switchPassport,switchProfile:i.switchProfile,openSettings:N,user:m.data,sx:{display:{xs:"none",md:"block"}}}),o.jsxs(x,{children:[o.jsx(B,{sx:{fontWeight:600,mb:1.5},children:j(b?"myInfo":"hisInfo")}),o.jsx(Wo,{user:m.data,isMySelf:b})]}),b?o.jsxs(x,{children:[o.jsx(B,{sx:{fontWeight:600,mb:1.5},children:j("passport")}),o.jsx($o,{user:m.data})]}):null]})})]})},[m,R,b,E,k,s,u]);if(!a&&!s&&((pe=(de=A==null?void 0:A.navigation)==null?void 0:de.userCenter)==null?void 0:pe.length)>0){const w=(xe=(ue=A==null?void 0:A.navigation)==null?void 0:ue.userCenter[0])==null?void 0:xe.link;return w&&window.location.replace(ge(w,{did:b?void 0:t})),null}return o.jsxs(x,{sx:{backgroundColor:v.backgroundsBgSubtitle,minHeight:"100vh",display:"flex",flexDirection:"column"},children:[o.jsx(so,{bordered:!0,...n}),o.jsxs(x,{flex:1,sx:{width:"100%",maxWidth:1200,margin:"0 auto",p:3,display:"flex",alignItems:"stretch",flexDirection:{xs:"column",md:"row"},gap:2.5},children:[$,X]}),f?null:o.jsx(lo,{bordered:!0,...l})]})}function Or(){const c=ao().tab,{t:s}=z();return o.jsxs(o.Fragment,{children:[o.jsx(io,{children:o.jsx("title",{children:s("pageTitle.userCenter")})}),o.jsx(Jo,{disableAutoRedirect:c==="settings",autoPopupSetting:c==="settings"})]})}export{Or as default};
@@ -1 +1 @@
1
- import{h as S,j as a,B as m,A as H,a as R,T as B,bf as q,N as L,g as G,u as J,bP as Y,k as E,Q as K,b as k,bK as O,bH as Q,dP as U}from"./index-Bdg2hH7J.js";import{D as X}from"./index-DT8M-stk.js";import{U as T,d as F}from"./resource-dialog-CROCpfsh.js";class Z extends Error{constructor(n){super(),this.name="AbortError",this.message=n}}const N=e=>globalThis.DOMException===void 0?new Z(e):new DOMException(e),P=e=>{const n=e.reason===void 0?N("This operation was aborted."):e.reason;return n instanceof Error?n:N(n)};async function ee(e,n,{concurrency:s=Number.POSITIVE_INFINITY,stopOnError:i=!0,signal:u}={}){return new Promise((w,C)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof n!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(s)||s===Number.POSITIVE_INFINITY)&&s>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${s}\` (${typeof s})`);const r=[],A=[],g=new Map;let c=!1,x=!1,v=!1,y=0,b=0;const D=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),h=t=>{c=!0,x=!0,C(t)};u&&(u.aborted&&h(P(u)),u.addEventListener("abort",()=>{h(P(u))}));const I=async()=>{if(x)return;const t=await D.next(),o=b;if(b++,t.done){if(v=!0,y===0&&!x){if(!i&&A.length>0){h(new AggregateError(A));return}if(x=!0,g.size===0){w(r);return}const l=[];for(const[d,p]of r.entries())g.get(d)!==M&&l.push(p);w(l)}return}y++,(async()=>{try{const l=await t.value;if(x)return;const d=await n(l,o);d===M&&g.set(o,d),r[o]=d,y--,await I()}catch(l){if(i)h(l);else{A.push(l),y--;try{await I()}catch(d){h(d)}}}})()};(async()=>{for(let t=0;t<s;t++){try{await I()}catch(o){h(o);break}if(v||c)break}})()})}const M=Symbol("skip");async function te(e,n){return ee(e,s=>s(),n)}function oe({user:e,sessionUser:n}){const s=S(()=>{var i;return(i=(e==null?void 0:e.passports)||[])==null?void 0:i.find(u=>u.name===n.role)},[e==null?void 0:e.passports,n==null?void 0:n.role]);return a.jsxs(m,{sx:{display:"flex",alignItems:"center",gap:1},children:[a.jsx(H,{size:40,variant:"circle",shape:"circle",src:n.avatar,did:n.did,sx:{flexShrink:0}}),a.jsxs(m,{sx:{flex:1,overflow:"hidden"},children:[a.jsxs(m,{sx:{display:"flex",alignItems:"center",gap:1},children:[a.jsx(R,{title:n.fullName,children:a.jsx(B,{sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",flex:1},children:n.fullName})}),a.jsx(q,{label:(s==null?void 0:s.title)||(s==null?void 0:s.name)||"Guest",size:"small",variant:"outlined",sx:{flexShrink:0,fontWeight:"bold",fontSize:"12px",color:L.textBase,borderColor:L.strokeBorderStrong,backgroundColor:"transparent",textTransform:"capitalize",pr:.5,pl:0,height:"auto"}})]}),a.jsx(R,{title:n.email,children:a.jsx(B,{variant:"body2",color:"grey",sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:n.email})})]})]})}const ne={zh:{confirm:"确认",cancel:"取消",visitorId:"设备标识",deviceType:"设备类型",platform:"操作系统",walletOS:"钱包类型",role:"角色",fullname:"姓名",email:"邮箱",avatar:"头像",user:"用户",createdAt:"首次活动时间",updatedAt:"最近活动时间",lastLoginIp:"最近活动地址",actions:"操作",logoutAll:"注销所有会话",logoutAllTips:"不会注销当前会话",logout:"注销",currentSession:"当前会话",unknown:"未知",expired:"已过期",remove:"删除",logoutThisSession:"注销指定会话",logoutThisSessionConfirm:"确定要注销此会话吗?",logoutAllSession:"注销所有会话",logoutAllSessionConfirm:"确定要注销所有会话吗?"},en:{confirm:"Confirm",cancel:"Cancel",visitorId:"Device ID",deviceType:"Device Type",platform:"Platform",walletOS:"Wallet OS",role:"Role",fullname:"Fullname",email:"Email",avatar:"Avatar",user:"User",createdAt:"First Active Time",updatedAt:"Last Active Time",actions:"Actions",lastLoginIp:"Last Login IP",logoutAll:"Logout all",logoutAllTips:"Will not logout current session",logout:"Logout",currentSession:"Current Session",unknown:"Unknown",expired:"Expired",remove:"Remove",logoutThisSession:"Logout this session",logoutThisSessionConfirm:"Are you sure to logout this session?",logoutAllSession:"Logout all sessions",logoutAllSessionConfirm:"Are you sure to logout all sessions?"}},V="Reserved IP",z="ip-region-cache";async function re(e){const n=`https://ipapi.co/${e}/json/`,i=await(await fetch(n)).json();let u="";return i.error?i.reserved&&(u=V):u=[i.country_name,i.region,i.city].filter(Boolean).join("/"),u}async function se(e){const n=`https://api.ip.sb/geoip/${e}`,i=await(await fetch(n)).json();let u="";return i.error?i.reserved&&(u=V):u=[i.country,i.region,i.city].filter(Boolean).join("/"),u}async function ie(e){let n="",s={};try{const i=localStorage.getItem(z);i&&(s=JSON.parse(i))}catch{s={}}if(s[e])n=s[e];else{try{n=await se(e)}catch{console.warn("Fail to get ip region from ip.sb")}if(!n)try{n=await re(e)}catch{console.warn("Fail to get ip region from ip-api.co")}}if(n){const i=Object.keys(s);i.length>100&&delete s[i[0]],s[e]&&delete s[e],s[e]=n,localStorage.setItem(z,JSON.stringify(s))}return n}async function ae(e){return Promise.all(e.map(n=>ie(n)))}const W=e=>new T(e,{browser:[[/(ArcWallet)\/([\w\.]+)/i],[T.BROWSER.NAME,T.BROWSER.VERSION]]}).getResult();function de({user:e,showAction:n=!0,showUser:s=!0}){const i=G(),{locale:u}=J(),{confirmApi:w,confirmHolder:C}=Y(),r=E((t,o={})=>Q(ne,t,u,"en",o)),A=E(async()=>{let t=e==null?void 0:e.userSessions;t||(t=await F.userSession.getUserSessions({did:e.did}));try{const l=t==null?void 0:t.map((f,j)=>[j,f.lastLoginIp]).filter(f=>!!f[1]),d=l==null?void 0:l.map(f=>f[1]),p=await ae(d);for(let f=0;f<p.length;f++){const j=p[f],_=l[f],$=t[_[0]];$.ipRegion=j}}catch(l){console.warn("Failed to convert ip to region"),console.error(l)}const o=new Date().getTime();return U(t,l=>l.visitorId===i?-1:o-new Date(l.updatedAt).getTime())}),g=K(A),c=S(()=>g.data||[],[g.data]),x=S(()=>c.reduce((t,o)=>(t[o.lastLoginIp]=o.ipRegion,t),{}),[c]),v=E(({visitorId:t})=>{w.open({title:r("logoutThisSession"),content:r("logoutThisSessionConfirm"),confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),onConfirm:async()=>{await F.user.logout({visitorId:t}),g.refresh(),w.close()}})}),y=S(()=>c.filter(o=>o.visitorId!==i),[c]),b=E(()=>{w.open({title:r("logoutAllSession"),content:r("logoutAllSessionConfirm"),confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),onConfirm:async()=>{const t=y.map(o=>()=>F.user.logout({visitorId:o.visitorId}));await te(t,{concurrency:3,stopOnError:!1}),g.refresh(),w.close()}})}),D=[];n&&D.push(a.jsx(R,{title:r("logoutAllTips"),children:a.jsx(k,{sx:{ml:.5},size:"small",variant:"contained",color:"error",onClick:b,disabled:y.length===0,children:r("logoutAll")})},"logoutAll"));const h=S(()=>({search:!1,sort:!1,download:!1,filter:!1,print:!1,expandableRowsOnClick:!1,searchDebounceTime:600}),[]),I=[{label:r("platform"),name:"platform",options:{customBodyRenderLite:t=>{var d,p;const o=c[t],l=W(o.ua);return a.jsx(m,{children:[(d=l.os)==null?void 0:d.name,(p=l.os)==null?void 0:p.version].filter(Boolean).join("/")||r("unknown")})}}},{label:r("deviceType"),name:"deviceType",options:{customBodyRenderLite:t=>{var d,p;const o=c[t],l=W(o.ua);return a.jsx(m,{children:[(d=l.browser)==null?void 0:d.name,(p=l.browser)==null?void 0:p.version].filter(Boolean).join("/")||r("unknown")})}}},{label:r("walletOS"),name:"walletOS",options:{customBodyRenderLite:t=>{var l;const o=c[t];return a.jsx(m,{children:((l=o.extra)==null?void 0:l.walletOS)||r("unknown")})}}},s&&{label:r("user"),name:"user",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{sx:{minWidth:150,maxWidth:250},children:a.jsx(oe,{sessionUser:o.user,user:e})})}}},{label:r("createdAt"),name:"createdAt",options:{customBodyRenderLite:t=>{const o=c[t];return o.createdAt?a.jsx(O,{value:o.createdAt,relativeRange:3*86400*1e3,locale:u}):r("unknown")}}},{label:r("updatedAt"),name:"updatedAt",options:{customBodyRenderLite:t=>{const o=c[t];return o.status==="expired"?r("expired"):a.jsx(O,{value:o.updatedAt,relativeRange:3*86400*1e3,locale:u})}}},{label:r("lastLoginIp"),name:"lastLoginIp",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{children:x[o.lastLoginIp]?a.jsxs(a.Fragment,{children:[a.jsx(B,{variant:"body2",children:x[o.lastLoginIp]}),a.jsx(B,{variant:"body2",color:"grey",children:o.lastLoginIp||r("unknown")})]}):a.jsx(B,{children:o.lastLoginIp||r("unknown")})})}}},n&&{label:r("actions"),name:"actions",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{children:a.jsx(k,{sx:{whiteSpace:"nowrap",fontSize:"12px",px:1},disabled:i===o.visitorId,variant:"outlined",size:"small",color:"error",onClick:()=>v({visitorId:o.visitorId}),children:o.status==="expired"?r("remove"):i===o.visitorId?r("currentSession"):r("logout")})})}}}].filter(Boolean);return a.jsxs(m,{sx:{".MuiTableCell-head":{whiteSpace:"nowrap",fontWeight:"bold"}},children:[C,a.jsx(X,{locale:u,data:c,columns:I,customButtons:D,options:h,loading:g.loading})]})}export{de as U};
1
+ import{k as S,j as a,B as m,A as q,a as R,T as B,bg as G,O as L,g as H,u as J,bQ as Q,l as E,U as Y,b as k,bL as O,bI as U,dQ as K}from"./index-CaLGv6xG.js";import{D as X}from"./index-COZKzHiS.js";import{U as T,d as F}from"./resource-dialog-CMS1eEc0.js";class Z extends Error{constructor(n){super(),this.name="AbortError",this.message=n}}const N=e=>globalThis.DOMException===void 0?new Z(e):new DOMException(e),M=e=>{const n=e.reason===void 0?N("This operation was aborted."):e.reason;return n instanceof Error?n:N(n)};async function ee(e,n,{concurrency:s=Number.POSITIVE_INFINITY,stopOnError:i=!0,signal:u}={}){return new Promise((w,C)=>{if(e[Symbol.iterator]===void 0&&e[Symbol.asyncIterator]===void 0)throw new TypeError(`Expected \`input\` to be either an \`Iterable\` or \`AsyncIterable\`, got (${typeof e})`);if(typeof n!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(s)||s===Number.POSITIVE_INFINITY)&&s>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${s}\` (${typeof s})`);const r=[],A=[],g=new Map;let c=!1,x=!1,v=!1,y=0,b=0;const D=e[Symbol.iterator]===void 0?e[Symbol.asyncIterator]():e[Symbol.iterator](),h=t=>{c=!0,x=!0,C(t)};u&&(u.aborted&&h(M(u)),u.addEventListener("abort",()=>{h(M(u))}));const I=async()=>{if(x)return;const t=await D.next(),o=b;if(b++,t.done){if(v=!0,y===0&&!x){if(!i&&A.length>0){h(new AggregateError(A));return}if(x=!0,g.size===0){w(r);return}const l=[];for(const[d,p]of r.entries())g.get(d)!==z&&l.push(p);w(l)}return}y++,(async()=>{try{const l=await t.value;if(x)return;const d=await n(l,o);d===z&&g.set(o,d),r[o]=d,y--,await I()}catch(l){if(i)h(l);else{A.push(l),y--;try{await I()}catch(d){h(d)}}}})()};(async()=>{for(let t=0;t<s;t++){try{await I()}catch(o){h(o);break}if(v||c)break}})()})}const z=Symbol("skip");async function te(e,n){return ee(e,s=>s(),n)}function oe({user:e,sessionUser:n}){const s=S(()=>{var i;return(i=(e==null?void 0:e.passports)||[])==null?void 0:i.find(u=>u.name===n.role)},[e==null?void 0:e.passports,n==null?void 0:n.role]);return a.jsxs(m,{sx:{display:"flex",alignItems:"center",gap:1},children:[a.jsx(q,{size:40,variant:"circle",shape:"circle",src:n.avatar,did:n.did,sx:{flexShrink:0}}),a.jsxs(m,{sx:{flex:1,overflow:"hidden"},children:[a.jsxs(m,{sx:{display:"flex",alignItems:"center",gap:1},children:[a.jsx(R,{title:n.fullName,children:a.jsx(B,{sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",flex:1},children:n.fullName})}),a.jsx(G,{label:(s==null?void 0:s.title)||(s==null?void 0:s.name)||"Guest",size:"small",variant:"outlined",sx:{flexShrink:0,fontWeight:"bold",fontSize:"12px",color:L.textBase,borderColor:L.strokeBorderStrong,backgroundColor:"transparent",textTransform:"capitalize",pr:.5,pl:0,height:"auto"}})]}),a.jsx(R,{title:n.email,children:a.jsx(B,{variant:"body2",color:"grey",sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:n.email})})]})]})}const ne={zh:{confirm:"确认",cancel:"取消",visitorId:"设备标识",deviceType:"设备类型",platform:"操作系统",walletOS:"钱包类型",role:"角色",fullname:"姓名",email:"邮箱",avatar:"头像",user:"用户",createdAt:"首次活动时间",updatedAt:"最近活动时间",lastLoginIp:"最近活动地址",actions:"操作",logoutAll:"注销所有会话",logoutAllTips:"不会注销当前会话",logout:"注销",currentSession:"当前会话",unknown:"未知",expired:"已过期",remove:"删除",logoutThisSession:"注销指定会话",logoutThisSessionConfirm:"确定要注销此会话吗?",logoutAllSession:"注销所有会话",logoutAllSessionConfirm:"确定要注销所有会话吗?"},en:{confirm:"Confirm",cancel:"Cancel",visitorId:"Device ID",deviceType:"Device Type",platform:"Platform",walletOS:"Wallet OS",role:"Role",fullname:"Fullname",email:"Email",avatar:"Avatar",user:"User",createdAt:"First Active Time",updatedAt:"Last Active Time",actions:"Actions",lastLoginIp:"Last Login IP",logoutAll:"Logout all",logoutAllTips:"Will not logout current session",logout:"Logout",currentSession:"Current Session",unknown:"Unknown",expired:"Expired",remove:"Remove",logoutThisSession:"Logout this session",logoutThisSessionConfirm:"Are you sure to logout this session?",logoutAllSession:"Logout all sessions",logoutAllSessionConfirm:"Are you sure to logout all sessions?"}},V="Reserved IP",P="ip-region-cache";async function re(e){const n=`https://ipapi.co/${e}/json/`,i=await(await fetch(n)).json();let u="";return i.error?i.reserved&&(u=V):u=[i.country_name,i.region,i.city].filter(Boolean).join("/"),u}async function se(e){const n=`https://api.ip.sb/geoip/${e}`,i=await(await fetch(n)).json();let u="";return i.error?i.reserved&&(u=V):u=[i.country,i.region,i.city].filter(Boolean).join("/"),u}async function ie(e){let n="",s={};try{const i=localStorage.getItem(P);i&&(s=JSON.parse(i))}catch{s={}}if(s[e])n=s[e];else{try{n=await se(e)}catch{console.warn("Fail to get ip region from ip.sb")}if(!n)try{n=await re(e)}catch{console.warn("Fail to get ip region from ip-api.co")}}if(n){const i=Object.keys(s);i.length>100&&delete s[i[0]],s[e]&&delete s[e],s[e]=n,localStorage.setItem(P,JSON.stringify(s))}return n}async function ae(e){return Promise.all(e.map(n=>ie(n)))}const W=e=>new T(e,{browser:[[/(ArcWallet)\/([\w\.]+)/i],[T.BROWSER.NAME,T.BROWSER.VERSION]]}).getResult();function de({user:e,showAction:n=!0,showUser:s=!0}){const i=H(),{locale:u}=J(),{confirmApi:w,confirmHolder:C}=Q(),r=E((t,o={})=>U(ne,t,u,"en",o)),A=E(async()=>{let t=e==null?void 0:e.userSessions;t||(t=await F.userSession.getUserSessions({did:e.did}));try{const l=t==null?void 0:t.map((f,j)=>[j,f.lastLoginIp]).filter(f=>!!f[1]),d=l==null?void 0:l.map(f=>f[1]),p=await ae(d);for(let f=0;f<p.length;f++){const j=p[f],_=l[f],$=t[_[0]];$.ipRegion=j}}catch(l){console.warn("Failed to convert ip to region"),console.error(l)}const o=new Date().getTime();return K(t,l=>l.visitorId===i?-1:o-new Date(l.updatedAt).getTime())}),g=Y(A),c=S(()=>g.data||[],[g.data]),x=S(()=>c.reduce((t,o)=>(t[o.lastLoginIp]=o.ipRegion,t),{}),[c]),v=E(({visitorId:t})=>{w.open({title:r("logoutThisSession"),content:r("logoutThisSessionConfirm"),confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),onConfirm:async()=>{await F.user.logout({visitorId:t}),g.refresh(),w.close()}})}),y=S(()=>c.filter(o=>o.visitorId!==i),[c]),b=E(()=>{w.open({title:r("logoutAllSession"),content:r("logoutAllSessionConfirm"),confirmButtonText:r("confirm"),cancelButtonText:r("cancel"),onConfirm:async()=>{const t=y.map(o=>()=>F.user.logout({visitorId:o.visitorId}));await te(t,{concurrency:3,stopOnError:!1}),g.refresh(),w.close()}})}),D=[];n&&D.push(a.jsx(R,{title:r("logoutAllTips"),children:a.jsx(k,{sx:{ml:.5},size:"small",variant:"contained",color:"error",onClick:b,disabled:y.length===0,children:r("logoutAll")})},"logoutAll"));const h=S(()=>({search:!1,sort:!1,download:!1,filter:!1,print:!1,expandableRowsOnClick:!1,searchDebounceTime:600}),[]),I=[{label:r("platform"),name:"platform",options:{customBodyRenderLite:t=>{var d,p;const o=c[t],l=W(o.ua);return a.jsx(m,{children:[(d=l.os)==null?void 0:d.name,(p=l.os)==null?void 0:p.version].filter(Boolean).join("/")||r("unknown")})}}},{label:r("deviceType"),name:"deviceType",options:{customBodyRenderLite:t=>{var d,p;const o=c[t],l=W(o.ua);return a.jsx(m,{children:[(d=l.browser)==null?void 0:d.name,(p=l.browser)==null?void 0:p.version].filter(Boolean).join("/")||r("unknown")})}}},{label:r("walletOS"),name:"walletOS",options:{customBodyRenderLite:t=>{var l;const o=c[t];return a.jsx(m,{children:((l=o.extra)==null?void 0:l.walletOS)||r("unknown")})}}},s&&{label:r("user"),name:"user",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{sx:{minWidth:150,maxWidth:250},children:a.jsx(oe,{sessionUser:o.user,user:e})})}}},{label:r("createdAt"),name:"createdAt",options:{customBodyRenderLite:t=>{const o=c[t];return o.createdAt?a.jsx(O,{value:o.createdAt,relativeRange:3*86400*1e3,locale:u}):r("unknown")}}},{label:r("updatedAt"),name:"updatedAt",options:{customBodyRenderLite:t=>{const o=c[t];return o.status==="expired"?r("expired"):a.jsx(O,{value:o.updatedAt,relativeRange:3*86400*1e3,locale:u})}}},{label:r("lastLoginIp"),name:"lastLoginIp",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{children:x[o.lastLoginIp]?a.jsxs(a.Fragment,{children:[a.jsx(B,{variant:"body2",children:x[o.lastLoginIp]}),a.jsx(B,{variant:"body2",color:"grey",children:o.lastLoginIp||r("unknown")})]}):a.jsx(B,{children:o.lastLoginIp||r("unknown")})})}}},n&&{label:r("actions"),name:"actions",options:{customBodyRenderLite:t=>{const o=c[t];return a.jsx(m,{children:a.jsx(k,{sx:{whiteSpace:"nowrap",fontSize:"12px",px:1},disabled:i===o.visitorId,variant:"outlined",size:"small",color:"error",onClick:()=>v({visitorId:o.visitorId}),children:o.status==="expired"?r("remove"):i===o.visitorId?r("currentSession"):r("logout")})})}}}].filter(Boolean);return a.jsxs(m,{sx:{".MuiTableCell-head":{whiteSpace:"nowrap",fontWeight:"bold"}},children:[C,a.jsx(X,{locale:u,data:c,columns:I,customButtons:D,options:h,loading:g.loading})]})}export{de as U};
@@ -1 +1 @@
1
- import{b7 as s,fc as h,fd as l,a9 as P,F as u}from"./index-Bdg2hH7J.js";const d=h;var c=(e,r)=>d(e)===d(r);const E=s(c),x=(e,r)=>{if(e.type===u.ROUTING_RULE_TYPES.REDIRECT){if(!e.url)return new Error(`${r("router.validation.redirectUrlRequired")}`);if(!e.redirectCode)return new Error(`redirect ${r("router.validation.redirectCodeRequired")}`)}else if(e.type===u.ROUTING_RULE_TYPES.BLOCKLET&&!e.did)return new Error(r("router.validation.didRequired"));return null},R=(e,r)=>{const t=x(e,r);return t||(e.pathPrefix.length?e.pathPrefix.length>150?new Error(r("router.validation.pathPrefixTooLong",{length:150})):null:new Error(r("router.validation.pathPrefixCannotBeEmpty")))},v=({params:e,blocklets:r,blocklet:t,locale:o="en"})=>{if(t){let i=(t.children||[]).find(f=>l.hasStartEngine(f.meta)&&E(f.mountPoint,e.pathPrefix));if(t.meta.group!=="gateway"&&e.pathPrefix==="/"&&(i="/"),i)return{zh:`挂载点 ${e.pathPrefix} 已存在,请使用其他挂载点`,en:`The mount point ${e.pathPrefix} already exist, please use another mount point`}[o]}const a=r.find(i=>i.meta.did===e.did);if(!a)return"";const n=a.meta.interfaces.find(i=>i.type==="web");return n&&n.prefix!==P.BLOCKLET_DYNAMIC_PATH_PREFIX&&e.pathPrefix!==n.prefix?{zh:`该 blocklet 只能挂载在 ${n.prefix}`,en:`This blocklet can only be mounted on ${n.prefix}`}[o]:""},T=e=>{if(!e||typeof e!="string")return e;let r=e.trim();try{return r=r.toLowerCase(),r.startsWith("http://")||r.startsWith("https://")?new URL(r).hostname:r}catch(t){return console.error("format domain failed",t),r}};export{R as a,T as p,v};
1
+ import{b8 as s,fd as h,fe as l,ab as P,G as u}from"./index-CaLGv6xG.js";const d=h;var E=(e,r)=>d(e)===d(r);const c=s(E),x=(e,r)=>{if(e.type===u.ROUTING_RULE_TYPES.REDIRECT){if(!e.url)return new Error(`${r("router.validation.redirectUrlRequired")}`);if(!e.redirectCode)return new Error(`redirect ${r("router.validation.redirectCodeRequired")}`)}else if(e.type===u.ROUTING_RULE_TYPES.BLOCKLET&&!e.did)return new Error(r("router.validation.didRequired"));return null},R=(e,r)=>{const t=x(e,r);return t||(e.pathPrefix.length?e.pathPrefix.length>150?new Error(r("router.validation.pathPrefixTooLong",{length:150})):null:new Error(r("router.validation.pathPrefixCannotBeEmpty")))},v=({params:e,blocklets:r,blocklet:t,locale:o="en"})=>{if(t){let i=(t.children||[]).find(f=>l.hasStartEngine(f.meta)&&c(f.mountPoint,e.pathPrefix));if(t.meta.group!=="gateway"&&e.pathPrefix==="/"&&(i="/"),i)return{zh:`挂载点 ${e.pathPrefix} 已存在,请使用其他挂载点`,en:`The mount point ${e.pathPrefix} already exist, please use another mount point`}[o]}const a=r.find(i=>i.meta.did===e.did);if(!a)return"";const n=a.meta.interfaces.find(i=>i.type==="web");return n&&n.prefix!==P.BLOCKLET_DYNAMIC_PATH_PREFIX&&e.pathPrefix!==n.prefix?{zh:`该 blocklet 只能挂载在 ${n.prefix}`,en:`This blocklet can only be mounted on ${n.prefix}`}[o]:""},T=e=>{if(!e||typeof e!="string")return e;let r=e.trim();try{return r=r.toLowerCase(),r.startsWith("http://")||r.startsWith("https://")?new URL(r).hostname:r}catch(t){return console.error("format domain failed",t),r}};export{R as a,T as p,v};
@@ -0,0 +1 @@
1
+ const n={auth:{noPermission:{title:"Không có Quyền",description:"Bạn không phải là quản trị viên của blocklet"}},login:{reLogin:"Kết nối lại",description:"Bạn phải kết nối ví DID để truy cập {name}",already:"Bạn đã kết nối với",connectWallet:"Kết nối Ví DID",closeWindow:"Đóng cửa sổ",accessLimit:{title:"Truy cập trang bị hạn chế",description:"Trang này yêu cầu thông qua hộ chiếu sau để truy cập, vui lòng kết nối với ví để thay đổi hoặc đăng ký thông qua tương ứng.",alreadyHavePassport:"Đã có hộ chiếu",connectWithPassport:"Kết nối với hộ chiếu này",buyPassport:"MuaHộChiếu"},switchDid:{title:"Chuyển đổi Ví DID",scan:"Quét mã QR dưới đây để chuyển đổi tài khoản",confirm:"Xác nhận chuyển đổi trong Ví DID của bạn",success:"Đã chuyển đổi thành công"},switchSpecifiedDid:{title:"Chuyển đổi ví DID",scan:"Bạn cần chuyển đổi DID thành {did} để hoàn thành các thao tác sau",confirm:"Xác nhận chuyển đổi trong ví DID của bạn",success:"Chuyển đổi thành công"},connect:{title:"Kết nối Ví DID",scan:"Kết nối Ví DID của bạn để truy cập ứng dụng này",confirm:"Xác nhận trên ví DID của bạn",success:"Bạn đã kết nối thành công"},needManualClose:"Đăng nhập thành công, nếu cửa sổ này không tự động đóng, hãy đóng nó lại.",connectWithPassport:"Kết nối với hộ chiếu này",invalidRedirectUrl:"URL chuyển hướng không hợp lệ"},studio:{home:"Studio",preferences:"Trình tạo Sở thích",localization:"Địa phương hóa"},blocklet:{startApplication:"Bắt đầu ứng dụng",startDescription:"Sẵn sàng bắt đầu, {name}",start:"Bắt đầu",starting:"Bắt đầu...",open:"Mở",suspended:"Ứng dụng đã bị tạm ngưng",manageSubscription:"Quản lý Đăng ký",suspendedCausedByExpired:"Ứng dụng này đã bị tạm dừng vì hết hạn thanh toán. Vui lòng gia hạn trước {deadline} để tiếp tục. Việc không gia hạn trong khung thời gian quy định sẽ dẫn đến việc không thể gia hạn hoặc tiếp tục.",suspendedCausedByTerminated:"Ứng dụng đã bị chấm dứt do đăng ký đã bị hủy, đăng ký đã bị hủy trên {canceledAt}, và dữ liệu sẽ được giữ lại cho tới {deadline}; trước khi dữ liệu bị xóa, bạn có thể sao lưu dữ liệu vào DID Spaces.",terminated:"Ứng dụng đã đóng"},setup:{steps:{connect:"Kết nối",didSpace:"DID Spaces",config:"Cấu hình",domain:"Miền",access:"Kiểm soát truy cập",fuel:"Nhiên liệu",complete:"Hoàn thành",introduction:"Giới thiệu",selectNodeDesc:"Chọn máy chủ Blocklet",launchAppDesc:"Cài đặt Blocklet vào máy chủ",setupAppDesc:"Cài đặt Blocklet",launched:"Hoàn thành"},connect:{title:"Kết nối với Ứng dụng",scan:"Kết nối ví DID của bạn để cung cấp hồ sơ người dùng và các đặc quyền của chủ sở hữu blocklet, sau đó bạn có thể cấu hình và khởi chạy ứng dụng.",confirm:"Xác nhận trên Ví DID của bạn",success:"Bạn đã kết nối thành công"},domain:{addTitle:"Thêm một tên miền mới (Tùy chọn)",title:"Cài đặt miền",subTitle:"Đặt một tên miền tùy chỉnh cho ứng dụng",label:"Vui lòng cung cấp tên miền hợp lệ",tipStart:"Vui lòng đảm bảo",tipEnd:"có điểm tới Máy chủ hiện tại",cannotResolve:"{domain} không thể được giải quyết, vui lòng kiểm tra cấu hình DNS của bạn",checkingResolvable:"Đang kiểm tra trạng thái tên miền...",addingCert:"Đang tạo chứng chỉ...",addingDomain:"Đang thêm tên miền...",recordType:"Loại hồ sơ",recordValue:"Giá trị ghi",skipStart:"Bạn có thể",skip:"Bỏ qua cài đặt tên miền tùy chỉnh",skipEnd:"và sử dụng miền mặc định để truy cập ứng dụng",genCertSuccess:"Chứng chỉ {domain} đã được phát hành thành công",genCertFailed:"Không thể phát hành chứng chỉ cho {domain}: {message}",genCertFailedForNFTDomain:"Thêm miền NFT thành công, nhưng không thể tạo chứng chỉ HTTPS, vui lòng thử lại sau",resolvedAddressError:"{domain} không trỏ đến cùng địa chỉ IP như {curDomain}",invalidDNSReminder:"Tuy nhiên, bạn có thể tiếp tục thêm tên miền, nhưng không có chức năng tạo chứng chỉ tự động.",continueAdd:"Tiếp tục Thêm"},didSpace:{title:"Cấu hình DID Spaces",subTitle:"Hoàn thành quy trình kết nối sau để lưu trữ dữ liệu ứng dụng trong DID Spaces",tips:"Mẹo",description:"Cấu hình địa chỉ instance DID Spaces và lưu dữ liệu ứng dụng trong DID Spaces sau khi kết nối thành công",label:"Vui lòng chọn dịch vụ DID Spaces",connected:"Bạn đã kết nối thành công với DID Spaces",connect:"Kết nối Ngay",reconnect:"Kết nối lại",addressCannotEmpty:"Địa chỉ không thể để trống",addressNotValid:"{url} không phải là một địa chỉ hợp lệ",authorize:{title:"Kết nối {appName} với DID Spaces",scan:"Sử dụng Ví DID của bạn để quét mã QR bên dưới để cho phép ứng dụng {appName} kết nối với Không gian DID",success:"Kết nối thành công"}},config:{title:"Cấu hình",subTitle:"Các mục cấu hình khác (bạn cũng cần thiết lập các mục sau)"},complete:{title:"Mọi thứ đã sẵn sàng",failedTitle:"Không thể khởi động Blocklet",backToServer:"Quay lại máy chủ Blocklet",notRunning:"Blocklet không khởi động được lần đầu tiên, vui lòng thử lại"},fuel:{title:"Nhiên liệu cần thiết để khởi động",tipStart:"khe cắm",tipEnd:"là bắt buộc để ứng dụng này hoạt động một cách chính xác, các quỹ được lưu trong ví ứng dụng và có thể sử dụng cho mục đích thanh toán phí giao dịch. Bạn có thể rút số dư của mình bất kỳ khi nào bạn không còn chạy ứng dụng nữa.",addressTitle:"Tài khoản Ứng dụng",addressTip:"Nạp ứng dụng bằng Ví DID",need:"Cần",current:"Hiện tại",fuelApp:"Cấp nhiên liệu cho ứng dụng"},title:"Thiết lập",next:"Tiếp theo",previous:"Trước đó",continue:"Tiếp tục",skip:"Bỏ qua",startNow:"Bắt đầu Ngay bây giờ",confirm:"Xác nhận",cancel:"Hủy"},user:{walletNotification:"Thông báo ví DID",emailNotification:"Thông báo qua email",smsNotification:"Thông báo qua SMS",addWebhook:"Thêm Webhook Mới"},pageTitle:{login:"Đăng nhập",dashboard:"Bảng điều khiển Blocklet",userCenter:"Trung tâm người dùng",invite:"Mời",issuePassport:"Cấp hộ chiếu",lostPassort:"Hộ Chiếu Bị Mất"}};export{n as default};
@@ -1 +1 @@
1
- import{ay as _,az as i,a2 as e,j as r,aA as a}from"./index-Bdg2hH7J.js";const u={en:_(i),ar:()=>e(()=>import("./ar-CqvGG4eC.js"),[]).then(t=>_(t.default)),de:()=>e(()=>import("./de-l0XzFKav.js"),[]).then(t=>_(t.default)),es:()=>e(()=>import("./es-DYmEeFzA.js"),[]).then(t=>_(t.default)),fr:()=>e(()=>import("./fr-DwS-xj4v.js"),[]).then(t=>_(t.default)),hi:()=>e(()=>import("./hi-Dj91QHv6.js"),[]).then(t=>_(t.default)),id:()=>e(()=>import("./id-CzhlCzfQ.js"),[]).then(t=>_(t.default)),ja:()=>e(()=>import("./ja-Ut-jFS9r.js"),[]).then(t=>_(t.default)),ko:()=>e(()=>import("./ko-Clp4qzRT.js"),[]).then(t=>_(t.default)),pt:()=>e(()=>import("./pt-BXaJbqdY.js"),[]).then(t=>_(t.default)),ru:()=>e(()=>import("./ru-p_K_7IoQ.js"),[]).then(t=>_(t.default)),th:()=>e(()=>import("./th-BJT9w_Lk.js"),[]).then(t=>_(t.default)),vi:()=>e(()=>import("./vi-CycHlNkN.js"),[]).then(t=>_(t.default)),"zh-TW":()=>e(()=>import("./zh-tw-44W5osxR.js"),[]).then(t=>_(t.default)),zh:()=>e(()=>import("./zh-Dv1l1HNj.js"),[]).then(t=>_(t.default))};function E(t){return function(o){return r.jsx(a,{translations:u,children:r.jsx(t,{...o})})}}export{E as w};
1
+ import{az as _,aA as i,a4 as e,j as r,aB as a}from"./index-CaLGv6xG.js";const u={en:_(i),ar:()=>e(()=>import("./ar-CqvGG4eC.js"),[]).then(t=>_(t.default)),de:()=>e(()=>import("./de-l0XzFKav.js"),[]).then(t=>_(t.default)),es:()=>e(()=>import("./es-DYmEeFzA.js"),[]).then(t=>_(t.default)),fr:()=>e(()=>import("./fr-DwS-xj4v.js"),[]).then(t=>_(t.default)),hi:()=>e(()=>import("./hi-Dj91QHv6.js"),[]).then(t=>_(t.default)),id:()=>e(()=>import("./id-CzhlCzfQ.js"),[]).then(t=>_(t.default)),ja:()=>e(()=>import("./ja-Ut-jFS9r.js"),[]).then(t=>_(t.default)),ko:()=>e(()=>import("./ko-Clp4qzRT.js"),[]).then(t=>_(t.default)),pt:()=>e(()=>import("./pt-BXaJbqdY.js"),[]).then(t=>_(t.default)),ru:()=>e(()=>import("./ru-p_K_7IoQ.js"),[]).then(t=>_(t.default)),th:()=>e(()=>import("./th-BJT9w_Lk.js"),[]).then(t=>_(t.default)),vi:()=>e(()=>import("./vi-CycHlNkN.js"),[]).then(t=>_(t.default)),"zh-TW":()=>e(()=>import("./zh-tw-44W5osxR.js"),[]).then(t=>_(t.default)),zh:()=>e(()=>import("./zh-Dv1l1HNj.js"),[]).then(t=>_(t.default))};function E(t){return function(o){return r.jsx(a,{translations:u,children:r.jsx(t,{...o})})}}export{E as w};
@@ -0,0 +1 @@
1
+ const e={auth:{noPermission:{title:"没有权限",description:"你不是 Blocklet 的管理员"}},studio:{home:"Studio",preferences:"偏好设计",localization:"国际化"},login:{reLogin:"重新连接",description:"需要连接 DID 钱包才可以访问 {name}",already:"你已经连接",connectWallet:"连接钱包",closeWindow:"关闭窗口",switchDid:{title:"切换账号",scan:"请使用 DID 钱包扫码下面的二维码完成切换",confirm:"在 DID 钱包中确认切换",success:"切换成功"},switchSpecifiedDid:{title:"切换账号",scan:"你需要切换账号至 {did} 才能完成后续的操作",confirm:"在 DID 钱包中确认切换",success:"切换成功"},connect:{title:"连接 DID 钱包",scan:"连接您的 DID 钱包以访问此应用程序",confirm:"在您的 DID 钱包上确认",success:"连接成功"},accessLimit:{title:"页面访问受限",description:"本页面需要持有以下通行证才可访问,请连接钱包更换或者申请对应的通行证。",alreadyHavePassport:"已有通行证",buyPassport:"购买通行证",connectWithPassport:"通过此护照连线"},connectWithPassport:"使用该通行证连接",needManualClose:"登录成功,如果此窗口未自动关闭,请将其关闭。",invalidRedirectUrl:"无效的重定向URL"},blocklet:{startApplication:"启动应用",startDescription:"准备启动 {name}",start:"启动",starting:"启动中...",open:"打开",suspended:"应用已被停止",suspendedCausedByExpired:"此应用因订阅欠费被停止,在 {deadline} 之前完成续费即可恢复,超期将无法续费和恢复。",suspendedCausedByTerminated:"应用因订阅取消被终止,取消于 {canceledAt},数据将被保留至 {deadline}; 在数据被删除之前,您可以将数据被备份到 DID Spaces.",manageSubscription:"管理订阅",terminated:"应用程序已终止"},setup:{steps:{connect:"连接",didSpace:"DID Spaces",config:"配置",domain:"域名",access:"访问控制",fuel:"燃料",complete:"完成",introduction:"简介",selectNodeDesc:"选择节点",launchAppDesc:"安装应用到节点",setupAppDesc:"设置应用",launched:"启动"},domain:{addTitle:"添加一个新域名(可选)",title:"域名设置",subTitle:"为应用设置自定义域名",tipStart:"请确保",tipEnd:"已经解析到了当前节点",cannotResolve:"{domain} 无法解析,请检查你的 DNS 配置",checkingResolvable:"检测域名状态...",addingCert:"生成证书...",addingDomain:"添加域名...",recordType:"记录类型",recordValue:"记录值",skipStart:"你可以",skip:"跳过自定义域名设置",skipEnd:",使用默认域名访问应用",genCertSuccess:"已成功为 {domain} 签发证书",genCertFailed:"为 {domain} 生成证书失败: {message}",genCertFailedForNFTDomain:"添加 NFT 域名成功,但是生成证书失败, 请稍后重试",resolvedAddressError:"{domain} 没有指向与 {curDomain} 相同的 IP 地址",invalidDNSReminder:"{error}。不过您可以继续添加域名,但无法自动生成证书。",continueAdd:"继续添加",label:"请提供一个有效的域名"},didSpace:{title:"配置 DID Spaces",subTitle:"完成以下连接流程,即可将应用数据存储到 DID Spaces 中",tips:"提示",description:"配置 DID Spaces 实例地址,连接成功后即可将应用数据存储到 DID Spaces",label:"请选择 DID Spaces 服务",connected:"你已成功连接至 DID Spaces",connect:"立即连接",reconnect:"重新连接",addressCannotEmpty:"地址不能为空",addressNotValid:"{url} 不是一个合法的地址",authorize:{title:"连接 {appName} 至 DID Spaces",scan:"使用你的 DID Wallet 扫描下面的二维码以允许应用 {appName} 连接至 DID Spaces",success:"连接成功"}},config:{title:"设置",subTitle:"其他配置项(您还需要设置以下项目)"},complete:{title:"一切已就绪",failedTitle:"启动失败",backToServer:"返回 Blocklet Server",notRunning:"应用未能成功启动,请重试"},connect:{title:"连接至应用",scan:"用您的 DID 钱包扫描下面的二维码,提供该应用的所有者权限,然后可以配置和启动应用。",confirm:"在您的 DID 钱包上确认",success:"连接成功"},fuel:{title:"启动所需燃料",tipStart:"此应用程序需要 ",tipEnd:" 才能正常运行,资金会保存在应用程序钱包中,将用于交易所需 Gas 费。您以后不再运行此应用的时候可以随时提取余额。",addressTitle:"应用账户",addressTip:"使用 DID 钱包为应用提供资金",need:"需要",current:"当前",fuelApp:"为应用提供燃料"},title:"设置",next:"下一步",previous:"上一步",continue:"继续配置",skip:"跳过",startNow:"立即启动",confirm:"确定",cancel:"取消"},user:{walletNotification:"钱包通知",emailNotification:"邮件通知",smsNotification:"短信通知",addWebhook:"新增 Webhook"},pageTitle:{login:"登录",dashboard:"Blocklet 仪表板",userCenter:"用户中心",invite:"邀请",issuePassport:"领发护照",lostPassort:"丢失护照"}};export{e as default};
@@ -0,0 +1 @@
1
+ const e={auth:{noPermission:{title:"無許可權",description:"您不是該區塊鏈應用的管理員"}},login:{reLogin:"重新連接",description:"您必須連接您的DID錢包才能訪問{name}",already:"您已連線為{name}",connectWallet:"連接DID錢包",closeWindow:"關閉視窗",accessLimit:{title:"頁面訪問受限",description:"訪問此頁面需要以下護照,請連接到錢包以更改或申請相應的通行證。",alreadyHavePassport:"已經有護照了",connectWithPassport:"使用此護照連線",buyPassport:"購買護照"},switchDid:{title:"切換DID錢包",scan:"掃描以下 QR 碼以切換帳號",confirm:"確認在您的DID錢包中切換",success:"成功切換"},switchSpecifiedDid:{title:"切換DID錢包",scan:"您需要將DID切換到{did}以完成以下操作",confirm:"確認在您的DID錢包中切換",success:"成功切換"},connect:{title:"連接DID錢包",scan:"連接您的DID錢包以提供護照",confirm:"在您的 DID 錢包上確認",success:"你已成功連線"},needManualClose:"登入成功,如果此視窗未自動關閉,請將其關閉。",connectWithPassport:"使用此護照連線",invalidRedirectUrl:"無效的重新導向網址"},studio:{home:"Studio",preferences:"偏好設定建構器",localization:"本地化"},blocklet:{startApplication:"啟動應用程式",startDescription:"準備好開始, {name}",start:"開始",starting:"開始...",open:"打開",suspended:"應用程式已暫停",manageSubscription:"管理訂閱",suspendedCausedByExpired:"由於付款過期,此申請已暫停。請在 {deadline} 之前續訂以恢復。如果在指定的時間範圍內未續訂,將導致無法續訂或恢復。",suspendedCausedByTerminated:"由於訂閱已取消,應用程式已終止,該訂閱於 {canceledAt} 取消,資料將保留至 {deadline};在資料刪除之前,您可以將資料備份到 DID 空間。",terminated:"應用程式已終止"},setup:{steps:{connect:"連線",didSpace:"DID 空間",config:"配置",domain:"領域",access:"存取控制",fuel:"燃料",complete:"完成",introduction:"介紹",selectNodeDesc:"選擇Blocklet伺服器",launchAppDesc:"將 Blocklet 安裝到伺服器",setupAppDesc:"設置 Blocklet",launched:"完成"},connect:{title:"連線到應用程式",scan:"連接您的DID錢包以提供使用者設定檔和blocklet的擁有者權限,然後您可以配置和啟動應用程式。",confirm:"在您的DID錢包上進行確認",success:"你已成功連線"},domain:{addTitle:"新增一個新的域名(選填)",title:"域名設定",subTitle:"為應用設定自定義域名",label:"請提供一個有效的域名",tipStart:"請務必確保",tipEnd:"指向當前伺服器",cannotResolve:"{domain} 無法解析,請檢查您的DNS配置",checkingResolvable:"檢查網域狀態中...",addingCert:"正在產生證書...",addingDomain:"正在新增網域...",recordType:"記錄類型",recordValue:"記錄值",skipStart:"你可以",skip:"跳過自訂域名設定",skipEnd:"並使用預設域訪問應用程序",genCertSuccess:"{domain}證書發行成功",genCertFailed:"無法為{domain}簽發憑證:{message}",genCertFailedForNFTDomain:"成功添加NFT域名,但無法生成HTTPS憑證,請稍後再試。",resolvedAddressError:"{domain} 不指向與 {curDomain} 相同的 IP 地址",invalidDNSReminder:"然而,您可以繼續新增網域,但自動產生憑證不可用。",continueAdd:"繼續添加"},didSpace:{title:"配置DID空間",subTitle:"完成以下連接過程,將應用程式資料儲存於DID Spaces中",tips:"小秘訣",description:"在成功連接後,配置DID Spaces實例地址並將應用程式資料存儲在DID Spaces中",label:"請選擇DID Spaces服務",connected:"您已成功連接到DID空間",connect:"立即連接",reconnect:"重新連接",addressCannotEmpty:"地址不能為空",addressNotValid:"{url} 不是一個有效的地址",authorize:{title:"將 {appName} 連接到 DID Spaces",scan:"使用您的DID錢包掃描下方的QR碼,允許應用程式{appName}連接到DID空間",success:"成功連接"}},config:{title:"配置",subTitle:"其他配置項(您還需要設置以下項)"},complete:{title:"一切就緒",failedTitle:"啟動區塊失敗",backToServer:"返回到區塊鏈伺服器",notRunning:"Blocklet在第一次嘗試中無法啟動,請重試"},fuel:{title:"啟動所需燃料",tipStart:"插槽",tipEnd:"本應用程式正確運作所需,資金存放在應用程式的錢包中,可以用於交易費用。當您不再執行應用程式時,可以隨時提取您的餘額。",addressTitle:"應用帳戶",addressTip:"用DID錢包給應用程式加油",need:"需要",current:"目前",fuelApp:"加油應用程式"},title:"設置",next:"下一個",previous:"以前",continue:"繼續",skip:"跳過",startNow:"現在開始",confirm:"確認",cancel:"取消"},user:{walletNotification:"DID錢包通知",emailNotification:"電子郵件通知",smsNotification:"簡訊通知",addWebhook:"新增 Webhook"},pageTitle:{login:"登入",dashboard:"Blocklet 儀表板",userCenter:"使用者中心",invite:"邀請",issuePassport:"領發護照",lostPassort:"遺失護照"}};export{e as default};
package/dist/index.html CHANGED
@@ -13,7 +13,7 @@
13
13
  padding: 0;
14
14
  }
15
15
  </style>
16
- <script type="module" crossorigin src="/.well-known/service/static/assets/index-Bdg2hH7J.js"></script>
16
+ <script type="module" crossorigin src="/.well-known/service/static/assets/index-CaLGv6xG.js"></script>
17
17
  <link rel="stylesheet" crossorigin href="/.well-known/service/static/assets/index-D8NuaJ66.css">
18
18
  <link rel="manifest" href="/.well-known/service/static/manifest.webmanifest"><script id="vite-plugin-pwa:register-sw" src="/.well-known/service/static/registerSW.js"></script></head>
19
19
 
@@ -1,2 +1,2 @@
1
1
  try{self["workbox:core:7.0.0"]&&_()}catch{}const ae=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},ne=ae;let y=class extends Error{constructor(e,t){const r=ne(e,t);super(r),this.name=e,this.details=t}};const ie=new Set,d={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},N=s=>[d.prefix,s,d.suffix].filter(e=>e&&e.length>0).join("-"),ce=s=>{for(const e of Object.keys(d))s(e)},oe={updateDetails:s=>{ce(e=>{typeof s[e]=="string"&&(d[e]=s[e])})},getGoogleAnalyticsName:s=>s||N(d.googleAnalytics),getPrecacheName:s=>s||N(d.precache),getPrefix:()=>d.prefix,getRuntimeName:s=>s||N(d.runtime),getSuffix:()=>d.suffix};function $(s,e){const t=new URL(s);for(const r of e)t.searchParams.delete(r);return t.href}async function le(s,e,t,r){const a=$(e.url,t);if(e.url===a)return s.match(e,r);const i=Object.assign(Object.assign({},r),{ignoreSearch:!0}),n=await s.keys(e,i);for(const c of n){const o=$(c.url,t);if(a===o)return s.match(c,r)}}let he=class{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}};async function ue(){for(const s of ie)await s()}const fe=s=>new URL(String(s),location.href).href.replace(new RegExp(`^${location.origin}`),"");function de(s){return new Promise(e=>setTimeout(e,s))}function pe(){self.addEventListener("activate",()=>self.clients.claim())}try{self["workbox:core:7.0.0"]&&_()}catch{}const ge=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},me=ge;let u=class extends Error{constructor(e,t){const r=me(e,t);super(r),this.name=e,this.details=t}};const p={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},M=s=>[p.prefix,s,p.suffix].filter(e=>e&&e.length>0).join("-"),we=s=>{for(const e of Object.keys(p))s(e)},j={updateDetails:s=>{we(e=>{typeof s[e]=="string"&&(p[e]=s[e])})},getGoogleAnalyticsName:s=>s||M(p.googleAnalytics),getPrecacheName:s=>s||M(p.precache),getPrefix:()=>p.prefix,getRuntimeName:s=>s||M(p.runtime),getSuffix:()=>p.suffix};function H(s,e){const t=e();return s.waitUntil(t),t}try{self["workbox:precaching:7.0.0"]&&_()}catch{}const ye="__WB_REVISION__";function _e(s){if(!s)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(typeof s=="string"){const i=new URL(s,location.href);return{cacheKey:i.href,url:i.href}}const{revision:e,url:t}=s;if(!t)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(!e){const i=new URL(t,location.href);return{cacheKey:i.href,url:i.href}}const r=new URL(t,location.href),a=new URL(t,location.href);return r.searchParams.set(ye,e),{cacheKey:r.href,url:a.href}}class Re{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:r})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const a=t.originalRequest.url;r?this.notUpdatedURLs.push(a):this.updatedURLs.push(a)}return r}}}class be{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:r})=>{const a=(r==null?void 0:r.cacheKey)||this._precacheController.getCacheKeyForURL(t.url);return a?new Request(a,{headers:t.headers}):t},this._precacheController=e}}let b;function Ce(){if(b===void 0){const s=new Response("");if("body"in s)try{new Response(s.body),b=!0}catch{b=!1}b=!1}return b}async function xe(s,e){let t=null;if(s.url&&(t=new URL(s.url).origin),t!==self.location.origin)throw new u("cross-origin-copy-response",{origin:t});const r=s.clone(),i={headers:new Headers(r.headers),status:r.status,statusText:r.statusText},n=Ce()?r.body:await r.blob();return new Response(n,i)}const ke=s=>new URL(String(s),location.href).href.replace(new RegExp(`^${location.origin}`),"");function B(s,e){const t=new URL(s);for(const r of e)t.searchParams.delete(r);return t.href}async function Ee(s,e,t,r){const a=B(e.url,t);if(e.url===a)return s.match(e,r);const i=Object.assign(Object.assign({},r),{ignoreSearch:!0}),n=await s.keys(e,i);for(const c of n){const o=B(c.url,t);if(a===o)return s.match(c,r)}}class De{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const Ue=new Set;async function Le(){for(const s of Ue)await s()}function Pe(s){return new Promise(e=>setTimeout(e,s))}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function D(s){return typeof s=="string"?new Request(s):s}let ve=class{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new De,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const r of this._plugins)this._pluginStateMap.set(r,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let r=D(e);if(r.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const n=await t.preloadResponse;if(n)return n}const a=this.hasCallback("fetchDidFail")?r.clone():null;try{for(const n of this.iterateCallbacks("requestWillFetch"))r=await n({request:r.clone(),event:t})}catch(n){if(n instanceof Error)throw new u("plugin-error-request-will-fetch",{thrownErrorMessage:n.message})}const i=r.clone();try{let n;n=await fetch(r,r.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))n=await c({event:t,request:i,response:n});return n}catch(n){throw a&&await this.runCallbacks("fetchDidFail",{error:n,event:t,originalRequest:a.clone(),request:i.clone()}),n}}async fetchAndCachePut(e){const t=await this.fetch(e),r=t.clone();return this.waitUntil(this.cachePut(e,r)),t}async cacheMatch(e){const t=D(e);let r;const{cacheName:a,matchOptions:i}=this._strategy,n=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},i),{cacheName:a});r=await caches.match(n,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))r=await o({cacheName:a,matchOptions:i,cachedResponse:r,request:n,event:this.event})||void 0;return r}async cachePut(e,t){const r=D(e);await Pe(0);const a=await this.getCacheKey(r,"write");if(!t)throw new u("cache-put-with-no-response",{url:ke(a.url)});const i=await this._ensureResponseSafeToCache(t);if(!i)return!1;const{cacheName:n,matchOptions:c}=this._strategy,o=await self.caches.open(n),l=this.hasCallback("cacheDidUpdate"),f=l?await Ee(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?i.clone():i)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await Le(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:n,oldResponse:f,newResponse:i.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const r=`${e.url} | ${t}`;if(!this._cacheKeys[r]){let a=e;for(const i of this.iterateCallbacks("cacheKeyWillBeUsed"))a=D(await i({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[r]=a}return this._cacheKeys[r]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const r of this.iterateCallbacks(e))await r(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const r=this._pluginStateMap.get(t);yield i=>{const n=Object.assign(Object.assign({},i),{state:r});return t[e](n)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,r=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,r=!0,!t)break;return r||t&&t.status!==200&&(t=void 0),t}},Ne=class{constructor(e={}){this.cacheName=j.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,r=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,i=new ve(this,{event:t,request:r,params:a}),n=this._getResponse(i,r,t),c=this._awaitComplete(n,i,r,t);return[n,c]}async _getResponse(e,t,r){await e.runCallbacks("handlerWillStart",{event:r,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new u("no-response",{url:t.url})}catch(i){if(i instanceof Error){for(const n of e.iterateCallbacks("handlerDidError"))if(a=await n({error:i,event:r,request:t}),a)break}if(!a)throw i}for(const i of e.iterateCallbacks("handlerWillRespond"))a=await i({event:r,request:t,response:a});return a}async _awaitComplete(e,t,r,a){let i,n;try{i=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:r,response:i}),await t.doneWaiting()}catch(c){c instanceof Error&&(n=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:r,response:i,error:n}),t.destroy(),n)throw n}};class w extends Ne{constructor(e={}){e.cacheName=j.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(w.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const r=await t.cacheMatch(e);return r||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let r;const a=t.params||{};if(this._fallbackToNetwork){const i=a.integrity,n=e.integrity,c=!n||n===i;r=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?n||i:void 0})),i&&c&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,r.clone()))}else throw new u("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return r}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const r=await t.fetch(e);if(!await t.cachePut(e,r.clone()))throw new u("bad-precaching-response",{url:e.url,status:r.status});return r}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[r,a]of this.plugins.entries())a!==w.copyRedirectedCacheableResponsesPlugin&&(a===w.defaultPrecacheCacheabilityPlugin&&(e=r),a.cacheWillUpdate&&t++);t===0?this.plugins.push(w.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}w.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:s}){return!s||s.status>=400?null:s}};w.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:s}){return s.redirected?await xe(s):s}};class Me{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:r=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new w({cacheName:j.getPrecacheName(e),plugins:[...t,new be({precacheController:this})],fallbackToNetwork:r}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const r of e){typeof r=="string"?t.push(r):r&&r.revision===void 0&&t.push(r.url);const{cacheKey:a,url:i}=_e(r),n=typeof r!="string"&&r.revision?"reload":"default";if(this._urlsToCacheKeys.has(i)&&this._urlsToCacheKeys.get(i)!==a)throw new u("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(i),secondEntry:a});if(typeof r!="string"&&r.integrity){if(this._cacheKeysToIntegrities.has(a)&&this._cacheKeysToIntegrities.get(a)!==r.integrity)throw new u("add-to-cache-list-conflicting-integrities",{url:i});this._cacheKeysToIntegrities.set(a,r.integrity)}if(this._urlsToCacheKeys.set(i,a),this._urlsToCacheModes.set(i,n),t.length>0){const c=`Workbox is precaching URLs without revision info: ${t.join(", ")}
2
- This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(c)}}}install(e){return H(e,async()=>{const t=new Re;this.strategy.plugins.push(t);for(const[i,n]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(n),o=this._urlsToCacheModes.get(i),l=new Request(i,{integrity:c,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:n},request:l,event:e}))}const{updatedURLs:r,notUpdatedURLs:a}=t;return{updatedURLs:r,notUpdatedURLs:a}})}activate(e){return H(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),r=await t.keys(),a=new Set(this._urlsToCacheKeys.values()),i=[];for(const n of r)a.has(n.url)||(await t.delete(n),i.push(n.url));return{deletedURLs:i}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,r=this.getCacheKeyForURL(t);if(r)return(await self.caches.open(this.strategy.cacheName)).match(r)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return r=>(r.request=new Request(e),r.params=Object.assign({cacheKey:t},r.params),this.strategy.handle(r))}}let T;const J=()=>(T||(T=new Me),T);try{self["workbox:routing:7.0.0"]&&_()}catch{}const z="GET",P=s=>s&&typeof s=="object"?s:{handle:s};let E=class{constructor(e,t,r=z){this.handler=P(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=P(e)}},Te=class extends E{constructor(e,t,r){const a=({url:i})=>{const n=e.exec(i.href);if(n&&!(i.origin!==location.origin&&n.index!==0))return n.slice(1)};super(a,t,r)}},Oe=class{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e});r&&e.respondWith(r)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,r=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const i=new Request(...a);return this.handleRequest({request:i,event:e})}));e.waitUntil(r),e.ports&&e.ports[0]&&r.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href);if(!r.protocol.startsWith("http"))return;const a=r.origin===location.origin,{params:i,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:r});let c=n&&n.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:r,request:e,event:t,params:i})}catch(h){l=Promise.reject(h)}const f=n&&n.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:r,request:e,event:t,params:i})}catch(R){R instanceof Error&&(h=R)}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:r,event:a}){const i=this._routes.get(r.method)||[];for(const n of i){let c;const o=n.match({url:e,sameOrigin:t,request:r,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:n,params:c}}return{}}setDefaultHandler(e,t=z){this._defaultHandlerMap.set(t,P(e))}setCatchHandler(e){this._catchHandler=P(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}},C;const Se=()=>(C||(C=new Oe,C.addFetchListener(),C.addCacheListener()),C);function Ae(s,e,t){let r;if(typeof s=="string"){const i=new URL(s,location.href),n=({url:c})=>c.href===i.href;r=new E(n,e,t)}else if(s instanceof RegExp)r=new Te(s,e,t);else if(typeof s=="function")r=new E(s,e,t);else if(s instanceof E)r=s;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return Se().registerRoute(r),r}function Ke(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(r=>r.test(t))&&s.searchParams.delete(t);return s}function*Ie(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:r=!0,urlManipulation:a}={}){const i=new URL(s,location.href);i.hash="",yield i.href;const n=Ke(i,e);if(yield n.href,t&&n.pathname.endsWith("/")){const c=new URL(n.href);c.pathname+=t,yield c.href}if(r){const c=new URL(n.href);c.pathname+=".html",yield c.href}if(a){const c=a({url:i});for(const o of c)yield o.href}}class We extends E{constructor(e,t){const r=({request:a})=>{const i=e.getURLsToCacheKeys();for(const n of Ie(a.url,t)){const c=i.get(n);if(c){const o=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:o}}}};super(r,e.strategy)}}function je(s){const e=J(),t=new We(e,s);Ae(t)}function qe(s){J().precache(s)}function $e(s,e){qe(s),je(e)}try{self["workbox:core:7.0.0"]&&_()}catch{}const He=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},Be=He;class Fe extends Error{constructor(e,t){const r=Be(e,t);super(r),this.name=e,this.details=t}}function X(s){s.then(()=>{})}const Ve=(s,e)=>e.some(t=>s instanceof t);let F,V;function Ge(){return F||(F=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Qe(){return V||(V=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const Y=new WeakMap,I=new WeakMap,Z=new WeakMap,O=new WeakMap,q=new WeakMap;function Je(s){const e=new Promise((t,r)=>{const a=()=>{s.removeEventListener("success",i),s.removeEventListener("error",n)},i=()=>{t(m(s.result)),a()},n=()=>{r(s.error),a()};s.addEventListener("success",i),s.addEventListener("error",n)});return e.then(t=>{t instanceof IDBCursor&&Y.set(t,s)}).catch(()=>{}),q.set(e,s),e}function ze(s){if(I.has(s))return;const e=new Promise((t,r)=>{const a=()=>{s.removeEventListener("complete",i),s.removeEventListener("error",n),s.removeEventListener("abort",n)},i=()=>{t(),a()},n=()=>{r(s.error||new DOMException("AbortError","AbortError")),a()};s.addEventListener("complete",i),s.addEventListener("error",n),s.addEventListener("abort",n)});I.set(s,e)}let W={get(s,e,t){if(s instanceof IDBTransaction){if(e==="done")return I.get(s);if(e==="objectStoreNames")return s.objectStoreNames||Z.get(s);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return m(s[e])},set(s,e,t){return s[e]=t,!0},has(s,e){return s instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in s}};function Xe(s){W=s(W)}function Ye(s){return s===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){const r=s.call(S(this),e,...t);return Z.set(r,e.sort?e.sort():[e]),m(r)}:Qe().includes(s)?function(...e){return s.apply(S(this),e),m(Y.get(this))}:function(...e){return m(s.apply(S(this),e))}}function Ze(s){return typeof s=="function"?Ye(s):(s instanceof IDBTransaction&&ze(s),Ve(s,Ge())?new Proxy(s,W):s)}function m(s){if(s instanceof IDBRequest)return Je(s);if(O.has(s))return O.get(s);const e=Ze(s);return e!==s&&(O.set(s,e),q.set(e,s)),e}const S=s=>q.get(s);function et(s,e,{blocked:t,upgrade:r,blocking:a,terminated:i}={}){const n=indexedDB.open(s,e),c=m(n);return r&&n.addEventListener("upgradeneeded",o=>{r(m(n.result),o.oldVersion,o.newVersion,m(n.transaction),o)}),t&&n.addEventListener("blocked",o=>t(o.oldVersion,o.newVersion,o)),c.then(o=>{i&&o.addEventListener("close",()=>i()),a&&o.addEventListener("versionchange",l=>a(l.oldVersion,l.newVersion,l))}).catch(()=>{}),c}function tt(s,{blocked:e}={}){const t=indexedDB.deleteDatabase(s);return e&&t.addEventListener("blocked",r=>e(r.oldVersion,r)),m(t).then(()=>{})}const st=["get","getKey","getAll","getAllKeys","count"],rt=["put","add","delete","clear"],A=new Map;function G(s,e){if(!(s instanceof IDBDatabase&&!(e in s)&&typeof e=="string"))return;if(A.get(e))return A.get(e);const t=e.replace(/FromIndex$/,""),r=e!==t,a=rt.includes(t);if(!(t in(r?IDBIndex:IDBObjectStore).prototype)||!(a||st.includes(t)))return;const i=async function(n,...c){const o=this.transaction(n,a?"readwrite":"readonly");let l=o.store;return r&&(l=l.index(c.shift())),(await Promise.all([l[t](...c),a&&o.done]))[0]};return A.set(e,i),i}Xe(s=>({...s,get:(e,t,r)=>G(e,t)||s.get(e,t,r),has:(e,t)=>!!G(e,t)||s.has(e,t)}));try{self["workbox:expiration:7.0.0"]&&_()}catch{}const at="workbox-expiration",x="cache-entries",Q=s=>{const e=new URL(s,location.href);return e.hash="",e.href};class nt{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(x,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&tt(this._cacheName)}async setTimestamp(e,t){e=Q(e);const r={url:e,timestamp:t,cacheName:this._cacheName,id:this._getId(e)},i=(await this.getDb()).transaction(x,"readwrite",{durability:"relaxed"});await i.store.put(r),await i.done}async getTimestamp(e){const r=await(await this.getDb()).get(x,this._getId(e));return r==null?void 0:r.timestamp}async expireEntries(e,t){const r=await this.getDb();let a=await r.transaction(x).store.index("timestamp").openCursor(null,"prev");const i=[];let n=0;for(;a;){const o=a.value;o.cacheName===this._cacheName&&(e&&o.timestamp<e||t&&n>=t?i.push(a.value):n++),a=await a.continue()}const c=[];for(const o of i)await r.delete(x,o.id),c.push(o.url);return c}_getId(e){return this._cacheName+"|"+Q(e)}async getDb(){return this._db||(this._db=await et(at,1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class it{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new nt(e)}async expireEntries(){if(this._isRunning){this._rerunRequested=!0;return}this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-this._maxAgeSeconds*1e3:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),r=await self.caches.open(this._cacheName);for(const a of t)await r.delete(a,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,X(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),r=Date.now()-this._maxAgeSeconds*1e3;return t!==void 0?t<r:!0}else return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}const g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},K=s=>[g.prefix,s,g.suffix].filter(e=>e&&e.length>0).join("-"),ct=s=>{for(const e of Object.keys(g))s(e)},ot={updateDetails:s=>{ct(e=>{typeof s[e]=="string"&&(g[e]=s[e])})},getGoogleAnalyticsName:s=>s||K(g.googleAnalytics),getPrecacheName:s=>s||K(g.precache),getPrefix:()=>g.prefix,getRuntimeName:s=>s||K(g.runtime),getSuffix:()=>g.suffix},lt=new Set;function ht(s){lt.add(s)}class ut{constructor(e={}){this.cachedResponseWillBeUsed=async({event:t,request:r,cacheName:a,cachedResponse:i})=>{if(!i)return null;const n=this._isResponseDateFresh(i),c=this._getCacheExpiration(a);X(c.expireEntries());const o=c.updateTimestamp(r.url);if(t)try{t.waitUntil(o)}catch{}return n?i:null},this.cacheDidUpdate=async({cacheName:t,request:r})=>{const a=this._getCacheExpiration(t);await a.updateTimestamp(r.url),await a.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&ht(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(e){if(e===ot.getRuntimeName())throw new Fe("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new it(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(t===null)return!0;const r=Date.now();return t>=r-this._maxAgeSeconds*1e3}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),a=new Date(t).getTime();return isNaN(a)?null:a}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}try{self["workbox:routing:7.0.0"]&&_()}catch{}const ee="GET",v=s=>s&&typeof s=="object"?s:{handle:s};class L{constructor(e,t,r=ee){this.handler=v(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=v(e)}}class ft extends L{constructor(e,t,r){const a=({url:i})=>{const n=e.exec(i.href);if(n&&!(i.origin!==location.origin&&n.index!==0))return n.slice(1)};super(a,t,r)}}class dt{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e});r&&e.respondWith(r)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,r=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const i=new Request(...a);return this.handleRequest({request:i,event:e})}));e.waitUntil(r),e.ports&&e.ports[0]&&r.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href);if(!r.protocol.startsWith("http"))return;const a=r.origin===location.origin,{params:i,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:r});let c=n&&n.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:r,request:e,event:t,params:i})}catch(h){l=Promise.reject(h)}const f=n&&n.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:r,request:e,event:t,params:i})}catch(R){R instanceof Error&&(h=R)}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:r,event:a}){const i=this._routes.get(r.method)||[];for(const n of i){let c;const o=n.match({url:e,sameOrigin:t,request:r,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:n,params:c}}return{}}setDefaultHandler(e,t=ee){this._defaultHandlerMap.set(t,v(e))}setCatchHandler(e){this._catchHandler=v(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new y("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new y("unregister-route-route-not-registered")}}let k;const pt=()=>(k||(k=new dt,k.addFetchListener(),k.addCacheListener()),k);function te(s,e,t){let r;if(typeof s=="string"){const i=new URL(s,location.href),n=({url:c})=>c.href===i.href;r=new L(n,e,t)}else if(s instanceof RegExp)r=new ft(s,e,t);else if(typeof s=="function")r=new L(s,e,t);else if(s instanceof L)r=s;else throw new y("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return pt().registerRoute(r),r}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function U(s){return typeof s=="string"?new Request(s):s}class gt{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new he,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const r of this._plugins)this._pluginStateMap.set(r,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let r=U(e);if(r.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const n=await t.preloadResponse;if(n)return n}const a=this.hasCallback("fetchDidFail")?r.clone():null;try{for(const n of this.iterateCallbacks("requestWillFetch"))r=await n({request:r.clone(),event:t})}catch(n){if(n instanceof Error)throw new y("plugin-error-request-will-fetch",{thrownErrorMessage:n.message})}const i=r.clone();try{let n;n=await fetch(r,r.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))n=await c({event:t,request:i,response:n});return n}catch(n){throw a&&await this.runCallbacks("fetchDidFail",{error:n,event:t,originalRequest:a.clone(),request:i.clone()}),n}}async fetchAndCachePut(e){const t=await this.fetch(e),r=t.clone();return this.waitUntil(this.cachePut(e,r)),t}async cacheMatch(e){const t=U(e);let r;const{cacheName:a,matchOptions:i}=this._strategy,n=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},i),{cacheName:a});r=await caches.match(n,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))r=await o({cacheName:a,matchOptions:i,cachedResponse:r,request:n,event:this.event})||void 0;return r}async cachePut(e,t){const r=U(e);await de(0);const a=await this.getCacheKey(r,"write");if(!t)throw new y("cache-put-with-no-response",{url:fe(a.url)});const i=await this._ensureResponseSafeToCache(t);if(!i)return!1;const{cacheName:n,matchOptions:c}=this._strategy,o=await self.caches.open(n),l=this.hasCallback("cacheDidUpdate"),f=l?await le(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?i.clone():i)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await ue(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:n,oldResponse:f,newResponse:i.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const r=`${e.url} | ${t}`;if(!this._cacheKeys[r]){let a=e;for(const i of this.iterateCallbacks("cacheKeyWillBeUsed"))a=U(await i({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[r]=a}return this._cacheKeys[r]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const r of this.iterateCallbacks(e))await r(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const r=this._pluginStateMap.get(t);yield i=>{const n=Object.assign(Object.assign({},i),{state:r});return t[e](n)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,r=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,r=!0,!t)break;return r||t&&t.status!==200&&(t=void 0),t}}class se{constructor(e={}){this.cacheName=oe.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,r=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,i=new gt(this,{event:t,request:r,params:a}),n=this._getResponse(i,r,t),c=this._awaitComplete(n,i,r,t);return[n,c]}async _getResponse(e,t,r){await e.runCallbacks("handlerWillStart",{event:r,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new y("no-response",{url:t.url})}catch(i){if(i instanceof Error){for(const n of e.iterateCallbacks("handlerDidError"))if(a=await n({error:i,event:r,request:t}),a)break}if(!a)throw i}for(const i of e.iterateCallbacks("handlerWillRespond"))a=await i({event:r,request:t,response:a});return a}async _awaitComplete(e,t,r,a){let i,n;try{i=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:r,response:i}),await t.doneWaiting()}catch(c){c instanceof Error&&(n=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:r,response:i,error:n}),t.destroy(),n)throw n}}class mt extends se{async _handle(e,t){let r=await t.cacheMatch(e),a;if(!r)try{r=await t.fetchAndCachePut(e)}catch(i){i instanceof Error&&(a=i)}if(!r)throw new y("no-response",{url:e.url,error:a});return r}}const wt={cacheWillUpdate:async({response:s})=>s.status===200||s.status===0?s:null};class yt extends se{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(wt)}async _handle(e,t){const r=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(r);let a=await t.cacheMatch(e),i;if(!a)try{a=await r}catch(n){n instanceof Error&&(i=n)}if(!a)throw new y("no-response",{url:e.url,error:i});return a}}$e(([{"revision":null,"url":"assets/access-control-tbrDClnL.js"},{"revision":null,"url":"assets/actions-HNNA8mAr.js"},{"revision":null,"url":"assets/add-component-core-D_j8BgsJ.css"},{"revision":null,"url":"assets/add-component-core-HIykDunt.js"},{"revision":null,"url":"assets/Add-CVYAN2n2.js"},{"revision":null,"url":"assets/add-resource-C-yDv8nK.js"},{"revision":null,"url":"assets/AddBox-DnwcDko1.js"},{"revision":null,"url":"assets/addon-DIKMgGhZ.js"},{"revision":null,"url":"assets/Alert-bzh-1cuw.js"},{"revision":null,"url":"assets/analytics-BKsUeXDw.js"},{"revision":null,"url":"assets/api-D5rmifNl.js"},{"revision":null,"url":"assets/ar-BOQhQYjx.js"},{"revision":null,"url":"assets/ar-CqvGG4eC.js"},{"revision":null,"url":"assets/ArrowDropDown-B3gw7vQE.js"},{"revision":null,"url":"assets/audit-logs-HTNz9Ui5.js"},{"revision":null,"url":"assets/Avatar-CDgX4gdS.js"},{"revision":null,"url":"assets/button-Bfs5dmJW.js"},{"revision":null,"url":"assets/ButtonGroup-XCe_4Dd6.js"},{"revision":null,"url":"assets/CheckCircle-ZNzwITLi.js"},{"revision":null,"url":"assets/ChevronRight-BQxGComx.js"},{"revision":null,"url":"assets/click-to-copy-D14O9X1o.js"},{"revision":null,"url":"assets/Close-qW-xij4G.js"},{"revision":null,"url":"assets/CloseOutlined-WD0GWqZM.js"},{"revision":null,"url":"assets/complete-Dqz9_rJD.js"},{"revision":null,"url":"assets/component-UDUqL4fG.js"},{"revision":null,"url":"assets/config-CPhfDBZV.js"},{"revision":null,"url":"assets/config-navigation-CJ-de3j1.js"},{"revision":null,"url":"assets/config-rlS2Ozpo.js"},{"revision":null,"url":"assets/confirm-CnJhc68Q.js"},{"revision":null,"url":"assets/connect-31ih5dtl.js"},{"revision":null,"url":"assets/connect-BlBcX7xs.js"},{"revision":null,"url":"assets/connect-to-NQzylv_u.js"},{"revision":null,"url":"assets/content-layout-CvCSD7Cn.js"},{"revision":null,"url":"assets/dashboard-WQeB59iZ.js"},{"revision":null,"url":"assets/de-l0XzFKav.js"},{"revision":null,"url":"assets/de-t1rC40NN.js"},{"revision":null,"url":"assets/Delete-CRriNkym.js"},{"revision":null,"url":"assets/DeleteOutline-BBqJ5_Hu.js"},{"revision":null,"url":"assets/did-address-B8vaNsMa.js"},{"revision":null,"url":"assets/domain-DLjLI_5f.js"},{"revision":null,"url":"assets/domain-list-RbmvUGd2.js"},{"revision":null,"url":"assets/Done-DCkMGid3.js"},{"revision":null,"url":"assets/Download-DmONKHB6.js"},{"revision":null,"url":"assets/Edit-Dl7Da72r.js"},{"revision":null,"url":"assets/EditIcon-CqMuLEHT.js"},{"revision":null,"url":"assets/Error-BXJV4yzT.js"},{"revision":null,"url":"assets/es-DfbI4mbP.js"},{"revision":null,"url":"assets/es-DYmEeFzA.js"},{"revision":null,"url":"assets/exchange-passport-BVVa20rU.js"},{"revision":null,"url":"assets/ExpandMore-Br1x9msZ.js"},{"revision":null,"url":"assets/fallback-l6x8Ufow.js"},{"revision":null,"url":"assets/FilterList-CH2nj31H.js"},{"revision":null,"url":"assets/format-error-Blif5aTO.js"},{"revision":null,"url":"assets/FormControl-DE9N6Db0.js"},{"revision":null,"url":"assets/FormControlLabel-DGbEY6m8.js"},{"revision":null,"url":"assets/FormGroup-n5wwFjBA.js"},{"revision":null,"url":"assets/fr-_U79lUBj.js"},{"revision":null,"url":"assets/fr-DwS-xj4v.js"},{"revision":null,"url":"assets/fuel-BlKNXMVP.js"},{"revision":null,"url":"assets/fullpage-uuQNoBvu.js"},{"revision":null,"url":"assets/Google-BL_kfN9f.js"},{"revision":null,"url":"assets/hi-Di6UaHUZ.js"},{"revision":null,"url":"assets/hi-Dj91QHv6.js"},{"revision":null,"url":"assets/Hidden-BYIvIL0k.js"},{"revision":null,"url":"assets/home-DRLEBJrk.js"},{"revision":null,"url":"assets/id-CuP-z2YS.js"},{"revision":null,"url":"assets/id-CzhlCzfQ.js"},{"revision":null,"url":"assets/iframe-CVrqJU8l.js"},{"revision":null,"url":"assets/index-_F8kdc8Q.js"},{"revision":null,"url":"assets/index--iA86Fqj.js"},{"revision":null,"url":"assets/index-255o-u6L.js"},{"revision":null,"url":"assets/index-B8k2vim3.js"},{"revision":null,"url":"assets/index-BA1LIiSA.js"},{"revision":null,"url":"assets/index-Bdg2hH7J.js"},{"revision":null,"url":"assets/index-BJ9Owdb4.js"},{"revision":null,"url":"assets/index-Bn5NB2JF.js"},{"revision":null,"url":"assets/index-BnWtXVAz.js"},{"revision":null,"url":"assets/index-Bo9QnPG1.js"},{"revision":null,"url":"assets/index-BS9TWd2p.js"},{"revision":null,"url":"assets/index-ByD4ydGX.js"},{"revision":null,"url":"assets/index-cHjJj_dG.js"},{"revision":null,"url":"assets/index-Ci6IWDWf.js"},{"revision":null,"url":"assets/index-CJj_4VZH.js"},{"revision":null,"url":"assets/index-Cpb38s9N.js"},{"revision":null,"url":"assets/index-CSBw7k-G.js"},{"revision":null,"url":"assets/index-CvAjMcvY.js"},{"revision":null,"url":"assets/index-cVr26mKy.js"},{"revision":null,"url":"assets/index-CWfGuhnW.js"},{"revision":null,"url":"assets/index-CxrCgTse.js"},{"revision":null,"url":"assets/index-D3CByOWX.js"},{"revision":null,"url":"assets/index-D4PP6P2d.css"},{"revision":null,"url":"assets/index-D8NuaJ66.css"},{"revision":null,"url":"assets/index-DA21JYSh.js"},{"revision":null,"url":"assets/index-DHvniSKa.js"},{"revision":null,"url":"assets/index-DiWAz-Pl.js"},{"revision":null,"url":"assets/index-DNlUUcTz.js"},{"revision":null,"url":"assets/index-Dt07hFjg.js"},{"revision":null,"url":"assets/index-DT8M-stk.js"},{"revision":null,"url":"assets/index-DTEEl-sV.js"},{"revision":null,"url":"assets/index-DTg4Ig3M.js"},{"revision":null,"url":"assets/index-foZCwT8M.css"},{"revision":null,"url":"assets/index-HqFqdQ4r.js"},{"revision":null,"url":"assets/index-tfBxNgKx.js"},{"revision":null,"url":"assets/index-wK8MJeLI.js"},{"revision":null,"url":"assets/index-ZShT0NT3.js"},{"revision":null,"url":"assets/index.es-B5pLCk4-.js"},{"revision":null,"url":"assets/index.esm-MqNtIWnn.js"},{"revision":null,"url":"assets/InfoOutlined-CDKG5pPz.js"},{"revision":null,"url":"assets/InputAdornment-tlUB0OtI.js"},{"revision":null,"url":"assets/InputLabel-D2kHO3Su.js"},{"revision":null,"url":"assets/invitation-BfR9BdX3.js"},{"revision":null,"url":"assets/invite-COB2td-Z.js"},{"revision":null,"url":"assets/issue-passport-C8WI5I2r.js"},{"revision":null,"url":"assets/item-DxzYKgGj.js"},{"revision":null,"url":"assets/ja-CsYEjFuw.js"},{"revision":null,"url":"assets/ja-Ut-jFS9r.js"},{"revision":null,"url":"assets/jss-plugin-props-sort.esm-D8X7o2pr.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-Clp4qzRT.js"},{"revision":null,"url":"assets/ko-DwcGU2RJ.js"},{"revision":null,"url":"assets/LastPage-bpkDUtUD.js"},{"revision":null,"url":"assets/Launch-Ddq1J5R1.js"},{"revision":null,"url":"assets/launch-result-message-DlfUpqsM.js"},{"revision":null,"url":"assets/LaunchOutlined-ItmbAFN0.js"},{"revision":null,"url":"assets/layout-B0gSHs6T.js"},{"revision":null,"url":"assets/Link-NMapyzp6.js"},{"revision":null,"url":"assets/list-header-Bma_K6X2.js"},{"revision":null,"url":"assets/ListItemText-OVWUZ8Yw.js"},{"revision":null,"url":"assets/LoadingButton-TfmYHzFH.js"},{"revision":null,"url":"assets/localization-DQx8Ct-X.js"},{"revision":null,"url":"assets/LockIcon-XG87P4do.js"},{"revision":null,"url":"assets/log-CypPgBlx.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/login-CN16WkWc.js"},{"revision":null,"url":"assets/login-oauth-callback-2ujdQmZH.js"},{"revision":null,"url":"assets/logo-uploader-ClUYYxL1.js"},{"revision":null,"url":"assets/Loop-B5igBWDP.js"},{"revision":null,"url":"assets/lost-passport-CPnepwqM.js"},{"revision":null,"url":"assets/lottie-7e9js8BB.js"},{"revision":null,"url":"assets/mode-B2dWMeTO.js"},{"revision":null,"url":"assets/MoreHoriz-c2PDP89o.js"},{"revision":null,"url":"assets/MoreVert-VUWyXDsQ.js"},{"revision":null,"url":"assets/notifications-DNM-dija.js"},{"revision":null,"url":"assets/open-window-BPoK7T-M.js"},{"revision":null,"url":"assets/OpenInNew-ChhskXmz.js"},{"revision":null,"url":"assets/overview-D47edAva.js"},{"revision":null,"url":"assets/page-header-Dlu4P1xk.js"},{"revision":null,"url":"assets/Pagination-aUFIvi5y.js"},{"revision":null,"url":"assets/permission-ClswWE64.js"},{"revision":null,"url":"assets/PlayArrow-By-kmerY.js"},{"revision":null,"url":"assets/preact.module-DJUF--8d.js"},{"revision":null,"url":"assets/preferences-COQfVvgo.js"},{"revision":null,"url":"assets/pt-BXaJbqdY.js"},{"revision":null,"url":"assets/pt-DF-luAxv.js"},{"revision":null,"url":"assets/publish-resource-D7CEW6PO.js"},{"revision":null,"url":"assets/QuestionMarkCircle-B9pyXZy7.js"},{"revision":null,"url":"assets/RadioGroup-DiH-c46e.js"},{"revision":null,"url":"assets/react-BW7E7-P9.css"},{"revision":null,"url":"assets/react-C8LgBs_k.js"},{"revision":null,"url":"assets/redux-_YFRGxHq.js"},{"revision":null,"url":"assets/resource-dialog-CROCpfsh.js"},{"revision":null,"url":"assets/ru-DKnB6G3S.js"},{"revision":null,"url":"assets/ru-p_K_7IoQ.js"},{"revision":null,"url":"assets/sdk-DR0yLm5u.js"},{"revision":null,"url":"assets/Search-YlhHuO6O.js"},{"revision":null,"url":"assets/Select-DxpmtgW4.js"},{"revision":null,"url":"assets/selector-YK8Xf2Rq.js"},{"revision":null,"url":"assets/ServerLogo-CKkyRIMN.js"},{"revision":null,"url":"assets/session-CBJgIJsY.js"},{"revision":null,"url":"assets/setup-Cq2NZKc3.js"},{"revision":null,"url":"assets/shorten-label-CeQzn9-u.js"},{"revision":null,"url":"assets/Skeleton-D1F5dy2x.js"},{"revision":null,"url":"assets/slicedToArray-Ci6zdtll.js"},{"revision":null,"url":"assets/Slider-ao2S-hIb.js"},{"revision":null,"url":"assets/spaces-Cz9_Xdg_.js"},{"revision":null,"url":"assets/start-DfU9ilW5.js"},{"revision":null,"url":"assets/step-actions-BvzypTeZ.js"},{"revision":null,"url":"assets/Stepper-DGOl59kQ.js"},{"revision":null,"url":"assets/studio-Dogn9FY7.js"},{"revision":null,"url":"assets/switch-control-D9hjlMId.js"},{"revision":null,"url":"assets/TextField-BYfKGYpN.js"},{"revision":null,"url":"assets/th-BJT9w_Lk.js"},{"revision":null,"url":"assets/th-Dna3ZHAu.js"},{"revision":null,"url":"assets/Toolbar-B_xj2T9O.js"},{"revision":null,"url":"assets/toPropertyKey-PLuKRk1e.js"},{"revision":null,"url":"assets/toUpper-DiCihDmj.js"},{"revision":null,"url":"assets/transfer-BTtIrW0g.js"},{"revision":null,"url":"assets/uniqBy-Blkjf7ps.js"},{"revision":null,"url":"assets/unsubscribe-Bl9PzG7o.js"},{"revision":null,"url":"assets/url-join-Cc5MbaZB.js"},{"revision":null,"url":"assets/use-blocklet-info-for-connect-did-spaces-BNPOv7wG.js"},{"revision":null,"url":"assets/use-mobile-CPAuyQwU.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/useAsync-CbQ86h-f.js"},{"revision":null,"url":"assets/useFormControl-CDmRrmKw.js"},{"revision":null,"url":"assets/useLocalStorage-DvZZwTDC.js"},{"revision":null,"url":"assets/user-center-CKSVKtEg.js"},{"revision":null,"url":"assets/user-sessions-QPFNNTrZ.js"},{"revision":null,"url":"assets/useSetState-BpZL0m-H.js"},{"revision":null,"url":"assets/useSlot-DxWJyNOJ.js"},{"revision":null,"url":"assets/useSlotProps-C9cl4-TZ.js"},{"revision":null,"url":"assets/useThemeProps-_7k5Wu1c.js"},{"revision":null,"url":"assets/util-C2KlfrNA.js"},{"revision":null,"url":"assets/vi-CycHlNkN.js"},{"revision":null,"url":"assets/vi-tHyNmIs-.js"},{"revision":null,"url":"assets/ViewList-CjH94hua.js"},{"revision":null,"url":"assets/wrap-locale-aa3oShvm.js"},{"revision":null,"url":"assets/zh-CZ75v_KR.js"},{"revision":null,"url":"assets/zh-Dv1l1HNj.js"},{"revision":null,"url":"assets/zh-tw-44W5osxR.js"},{"revision":null,"url":"assets/zh-tw-BDv-O3sb.js"},{"revision":"57d35ba883914904123271618bc33309","url":"index.html"},{"revision":"186b2f1889d7c89ecd30e422ab415c8a","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"ecdddc9b1297e7511cad18529d5cfd89","url":"manifest.webmanifest"}]||[]).filter(s=>s.url!=="/"&&!s.url.includes("index.html")));pe();self.addEventListener("activate",()=>{console.log("Service Worker activated")});self.addEventListener("install",s=>{console.log("Service Worker installed"),s.waitUntil(self.skipWaiting())});const re=s=>!!(s.method!=="GET"||s.url.includes("/api")||s.url.includes("__meta__.js")||s.url.includes("__blocklet__.js"));te(s=>{const{request:e}=s;return re(e)?!1:e.url.includes("/static/")},new mt({cacheName:"static",plugins:[new ut({maxEntries:200})]}));te(s=>{const{request:e}=s;return re(e)?!1:e.url.includes("/images/")||e.url.includes("/router/-template-styles/")},new yt);
2
+ This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(c)}}}install(e){return H(e,async()=>{const t=new Re;this.strategy.plugins.push(t);for(const[i,n]of this._urlsToCacheKeys){const c=this._cacheKeysToIntegrities.get(n),o=this._urlsToCacheModes.get(i),l=new Request(i,{integrity:c,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:n},request:l,event:e}))}const{updatedURLs:r,notUpdatedURLs:a}=t;return{updatedURLs:r,notUpdatedURLs:a}})}activate(e){return H(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),r=await t.keys(),a=new Set(this._urlsToCacheKeys.values()),i=[];for(const n of r)a.has(n.url)||(await t.delete(n),i.push(n.url));return{deletedURLs:i}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,r=this.getCacheKeyForURL(t);if(r)return(await self.caches.open(this.strategy.cacheName)).match(r)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return r=>(r.request=new Request(e),r.params=Object.assign({cacheKey:t},r.params),this.strategy.handle(r))}}let T;const J=()=>(T||(T=new Me),T);try{self["workbox:routing:7.0.0"]&&_()}catch{}const z="GET",P=s=>s&&typeof s=="object"?s:{handle:s};let E=class{constructor(e,t,r=z){this.handler=P(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=P(e)}},Te=class extends E{constructor(e,t,r){const a=({url:i})=>{const n=e.exec(i.href);if(n&&!(i.origin!==location.origin&&n.index!==0))return n.slice(1)};super(a,t,r)}},Oe=class{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e});r&&e.respondWith(r)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,r=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const i=new Request(...a);return this.handleRequest({request:i,event:e})}));e.waitUntil(r),e.ports&&e.ports[0]&&r.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href);if(!r.protocol.startsWith("http"))return;const a=r.origin===location.origin,{params:i,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:r});let c=n&&n.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:r,request:e,event:t,params:i})}catch(h){l=Promise.reject(h)}const f=n&&n.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:r,request:e,event:t,params:i})}catch(R){R instanceof Error&&(h=R)}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:r,event:a}){const i=this._routes.get(r.method)||[];for(const n of i){let c;const o=n.match({url:e,sameOrigin:t,request:r,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:n,params:c}}return{}}setDefaultHandler(e,t=z){this._defaultHandlerMap.set(t,P(e))}setCatchHandler(e){this._catchHandler=P(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}},C;const Se=()=>(C||(C=new Oe,C.addFetchListener(),C.addCacheListener()),C);function Ae(s,e,t){let r;if(typeof s=="string"){const i=new URL(s,location.href),n=({url:c})=>c.href===i.href;r=new E(n,e,t)}else if(s instanceof RegExp)r=new Te(s,e,t);else if(typeof s=="function")r=new E(s,e,t);else if(s instanceof E)r=s;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return Se().registerRoute(r),r}function Ke(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(r=>r.test(t))&&s.searchParams.delete(t);return s}function*Ie(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:r=!0,urlManipulation:a}={}){const i=new URL(s,location.href);i.hash="",yield i.href;const n=Ke(i,e);if(yield n.href,t&&n.pathname.endsWith("/")){const c=new URL(n.href);c.pathname+=t,yield c.href}if(r){const c=new URL(n.href);c.pathname+=".html",yield c.href}if(a){const c=a({url:i});for(const o of c)yield o.href}}class We extends E{constructor(e,t){const r=({request:a})=>{const i=e.getURLsToCacheKeys();for(const n of Ie(a.url,t)){const c=i.get(n);if(c){const o=e.getIntegrityForCacheKey(c);return{cacheKey:c,integrity:o}}}};super(r,e.strategy)}}function je(s){const e=J(),t=new We(e,s);Ae(t)}function qe(s){J().precache(s)}function $e(s,e){qe(s),je(e)}try{self["workbox:core:7.0.0"]&&_()}catch{}const He=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},Be=He;class Fe extends Error{constructor(e,t){const r=Be(e,t);super(r),this.name=e,this.details=t}}function X(s){s.then(()=>{})}const Ve=(s,e)=>e.some(t=>s instanceof t);let F,V;function Ge(){return F||(F=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Qe(){return V||(V=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const Y=new WeakMap,I=new WeakMap,Z=new WeakMap,O=new WeakMap,q=new WeakMap;function Je(s){const e=new Promise((t,r)=>{const a=()=>{s.removeEventListener("success",i),s.removeEventListener("error",n)},i=()=>{t(m(s.result)),a()},n=()=>{r(s.error),a()};s.addEventListener("success",i),s.addEventListener("error",n)});return e.then(t=>{t instanceof IDBCursor&&Y.set(t,s)}).catch(()=>{}),q.set(e,s),e}function ze(s){if(I.has(s))return;const e=new Promise((t,r)=>{const a=()=>{s.removeEventListener("complete",i),s.removeEventListener("error",n),s.removeEventListener("abort",n)},i=()=>{t(),a()},n=()=>{r(s.error||new DOMException("AbortError","AbortError")),a()};s.addEventListener("complete",i),s.addEventListener("error",n),s.addEventListener("abort",n)});I.set(s,e)}let W={get(s,e,t){if(s instanceof IDBTransaction){if(e==="done")return I.get(s);if(e==="objectStoreNames")return s.objectStoreNames||Z.get(s);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return m(s[e])},set(s,e,t){return s[e]=t,!0},has(s,e){return s instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in s}};function Xe(s){W=s(W)}function Ye(s){return s===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){const r=s.call(S(this),e,...t);return Z.set(r,e.sort?e.sort():[e]),m(r)}:Qe().includes(s)?function(...e){return s.apply(S(this),e),m(Y.get(this))}:function(...e){return m(s.apply(S(this),e))}}function Ze(s){return typeof s=="function"?Ye(s):(s instanceof IDBTransaction&&ze(s),Ve(s,Ge())?new Proxy(s,W):s)}function m(s){if(s instanceof IDBRequest)return Je(s);if(O.has(s))return O.get(s);const e=Ze(s);return e!==s&&(O.set(s,e),q.set(e,s)),e}const S=s=>q.get(s);function et(s,e,{blocked:t,upgrade:r,blocking:a,terminated:i}={}){const n=indexedDB.open(s,e),c=m(n);return r&&n.addEventListener("upgradeneeded",o=>{r(m(n.result),o.oldVersion,o.newVersion,m(n.transaction),o)}),t&&n.addEventListener("blocked",o=>t(o.oldVersion,o.newVersion,o)),c.then(o=>{i&&o.addEventListener("close",()=>i()),a&&o.addEventListener("versionchange",l=>a(l.oldVersion,l.newVersion,l))}).catch(()=>{}),c}function tt(s,{blocked:e}={}){const t=indexedDB.deleteDatabase(s);return e&&t.addEventListener("blocked",r=>e(r.oldVersion,r)),m(t).then(()=>{})}const st=["get","getKey","getAll","getAllKeys","count"],rt=["put","add","delete","clear"],A=new Map;function G(s,e){if(!(s instanceof IDBDatabase&&!(e in s)&&typeof e=="string"))return;if(A.get(e))return A.get(e);const t=e.replace(/FromIndex$/,""),r=e!==t,a=rt.includes(t);if(!(t in(r?IDBIndex:IDBObjectStore).prototype)||!(a||st.includes(t)))return;const i=async function(n,...c){const o=this.transaction(n,a?"readwrite":"readonly");let l=o.store;return r&&(l=l.index(c.shift())),(await Promise.all([l[t](...c),a&&o.done]))[0]};return A.set(e,i),i}Xe(s=>({...s,get:(e,t,r)=>G(e,t)||s.get(e,t,r),has:(e,t)=>!!G(e,t)||s.has(e,t)}));try{self["workbox:expiration:7.0.0"]&&_()}catch{}const at="workbox-expiration",x="cache-entries",Q=s=>{const e=new URL(s,location.href);return e.hash="",e.href};class nt{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(x,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&tt(this._cacheName)}async setTimestamp(e,t){e=Q(e);const r={url:e,timestamp:t,cacheName:this._cacheName,id:this._getId(e)},i=(await this.getDb()).transaction(x,"readwrite",{durability:"relaxed"});await i.store.put(r),await i.done}async getTimestamp(e){const r=await(await this.getDb()).get(x,this._getId(e));return r==null?void 0:r.timestamp}async expireEntries(e,t){const r=await this.getDb();let a=await r.transaction(x).store.index("timestamp").openCursor(null,"prev");const i=[];let n=0;for(;a;){const o=a.value;o.cacheName===this._cacheName&&(e&&o.timestamp<e||t&&n>=t?i.push(a.value):n++),a=await a.continue()}const c=[];for(const o of i)await r.delete(x,o.id),c.push(o.url);return c}_getId(e){return this._cacheName+"|"+Q(e)}async getDb(){return this._db||(this._db=await et(at,1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class it{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new nt(e)}async expireEntries(){if(this._isRunning){this._rerunRequested=!0;return}this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-this._maxAgeSeconds*1e3:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),r=await self.caches.open(this._cacheName);for(const a of t)await r.delete(a,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,X(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),r=Date.now()-this._maxAgeSeconds*1e3;return t!==void 0?t<r:!0}else return!1}async delete(){this._rerunRequested=!1,await this._timestampModel.expireEntries(1/0)}}const g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},K=s=>[g.prefix,s,g.suffix].filter(e=>e&&e.length>0).join("-"),ct=s=>{for(const e of Object.keys(g))s(e)},ot={updateDetails:s=>{ct(e=>{typeof s[e]=="string"&&(g[e]=s[e])})},getGoogleAnalyticsName:s=>s||K(g.googleAnalytics),getPrecacheName:s=>s||K(g.precache),getPrefix:()=>g.prefix,getRuntimeName:s=>s||K(g.runtime),getSuffix:()=>g.suffix},lt=new Set;function ht(s){lt.add(s)}class ut{constructor(e={}){this.cachedResponseWillBeUsed=async({event:t,request:r,cacheName:a,cachedResponse:i})=>{if(!i)return null;const n=this._isResponseDateFresh(i),c=this._getCacheExpiration(a);X(c.expireEntries());const o=c.updateTimestamp(r.url);if(t)try{t.waitUntil(o)}catch{}return n?i:null},this.cacheDidUpdate=async({cacheName:t,request:r})=>{const a=this._getCacheExpiration(t);await a.updateTimestamp(r.url),await a.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&ht(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(e){if(e===ot.getRuntimeName())throw new Fe("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new it(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(t===null)return!0;const r=Date.now();return t>=r-this._maxAgeSeconds*1e3}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),a=new Date(t).getTime();return isNaN(a)?null:a}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}try{self["workbox:routing:7.0.0"]&&_()}catch{}const ee="GET",v=s=>s&&typeof s=="object"?s:{handle:s};class L{constructor(e,t,r=ee){this.handler=v(t),this.match=e,this.method=r}setCatchHandler(e){this.catchHandler=v(e)}}class ft extends L{constructor(e,t,r){const a=({url:i})=>{const n=e.exec(i.href);if(n&&!(i.origin!==location.origin&&n.index!==0))return n.slice(1)};super(a,t,r)}}class dt{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,r=this.handleRequest({request:t,event:e});r&&e.respondWith(r)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,r=Promise.all(t.urlsToCache.map(a=>{typeof a=="string"&&(a=[a]);const i=new Request(...a);return this.handleRequest({request:i,event:e})}));e.waitUntil(r),e.ports&&e.ports[0]&&r.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const r=new URL(e.url,location.href);if(!r.protocol.startsWith("http"))return;const a=r.origin===location.origin,{params:i,route:n}=this.findMatchingRoute({event:t,request:e,sameOrigin:a,url:r});let c=n&&n.handler;const o=e.method;if(!c&&this._defaultHandlerMap.has(o)&&(c=this._defaultHandlerMap.get(o)),!c)return;let l;try{l=c.handle({url:r,request:e,event:t,params:i})}catch(h){l=Promise.reject(h)}const f=n&&n.catchHandler;return l instanceof Promise&&(this._catchHandler||f)&&(l=l.catch(async h=>{if(f)try{return await f.handle({url:r,request:e,event:t,params:i})}catch(R){R instanceof Error&&(h=R)}if(this._catchHandler)return this._catchHandler.handle({url:r,request:e,event:t});throw h})),l}findMatchingRoute({url:e,sameOrigin:t,request:r,event:a}){const i=this._routes.get(r.method)||[];for(const n of i){let c;const o=n.match({url:e,sameOrigin:t,request:r,event:a});if(o)return c=o,(Array.isArray(c)&&c.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(c=void 0),{route:n,params:c}}return{}}setDefaultHandler(e,t=ee){this._defaultHandlerMap.set(t,v(e))}setCatchHandler(e){this._catchHandler=v(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new y("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new y("unregister-route-route-not-registered")}}let k;const pt=()=>(k||(k=new dt,k.addFetchListener(),k.addCacheListener()),k);function te(s,e,t){let r;if(typeof s=="string"){const i=new URL(s,location.href),n=({url:c})=>c.href===i.href;r=new L(n,e,t)}else if(s instanceof RegExp)r=new ft(s,e,t);else if(typeof s=="function")r=new L(s,e,t);else if(s instanceof L)r=s;else throw new y("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return pt().registerRoute(r),r}try{self["workbox:strategies:7.0.0"]&&_()}catch{}function U(s){return typeof s=="string"?new Request(s):s}class gt{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new he,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const r of this._plugins)this._pluginStateMap.set(r,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let r=U(e);if(r.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const n=await t.preloadResponse;if(n)return n}const a=this.hasCallback("fetchDidFail")?r.clone():null;try{for(const n of this.iterateCallbacks("requestWillFetch"))r=await n({request:r.clone(),event:t})}catch(n){if(n instanceof Error)throw new y("plugin-error-request-will-fetch",{thrownErrorMessage:n.message})}const i=r.clone();try{let n;n=await fetch(r,r.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const c of this.iterateCallbacks("fetchDidSucceed"))n=await c({event:t,request:i,response:n});return n}catch(n){throw a&&await this.runCallbacks("fetchDidFail",{error:n,event:t,originalRequest:a.clone(),request:i.clone()}),n}}async fetchAndCachePut(e){const t=await this.fetch(e),r=t.clone();return this.waitUntil(this.cachePut(e,r)),t}async cacheMatch(e){const t=U(e);let r;const{cacheName:a,matchOptions:i}=this._strategy,n=await this.getCacheKey(t,"read"),c=Object.assign(Object.assign({},i),{cacheName:a});r=await caches.match(n,c);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))r=await o({cacheName:a,matchOptions:i,cachedResponse:r,request:n,event:this.event})||void 0;return r}async cachePut(e,t){const r=U(e);await de(0);const a=await this.getCacheKey(r,"write");if(!t)throw new y("cache-put-with-no-response",{url:fe(a.url)});const i=await this._ensureResponseSafeToCache(t);if(!i)return!1;const{cacheName:n,matchOptions:c}=this._strategy,o=await self.caches.open(n),l=this.hasCallback("cacheDidUpdate"),f=l?await le(o,a.clone(),["__WB_REVISION__"],c):null;try{await o.put(a,l?i.clone():i)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await ue(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:n,oldResponse:f,newResponse:i.clone(),request:a,event:this.event});return!0}async getCacheKey(e,t){const r=`${e.url} | ${t}`;if(!this._cacheKeys[r]){let a=e;for(const i of this.iterateCallbacks("cacheKeyWillBeUsed"))a=U(await i({mode:t,request:a,event:this.event,params:this.params}));this._cacheKeys[r]=a}return this._cacheKeys[r]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const r of this.iterateCallbacks(e))await r(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const r=this._pluginStateMap.get(t);yield i=>{const n=Object.assign(Object.assign({},i),{state:r});return t[e](n)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,r=!1;for(const a of this.iterateCallbacks("cacheWillUpdate"))if(t=await a({request:this.request,response:t,event:this.event})||void 0,r=!0,!t)break;return r||t&&t.status!==200&&(t=void 0),t}}class se{constructor(e={}){this.cacheName=oe.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,r=typeof e.request=="string"?new Request(e.request):e.request,a="params"in e?e.params:void 0,i=new gt(this,{event:t,request:r,params:a}),n=this._getResponse(i,r,t),c=this._awaitComplete(n,i,r,t);return[n,c]}async _getResponse(e,t,r){await e.runCallbacks("handlerWillStart",{event:r,request:t});let a;try{if(a=await this._handle(t,e),!a||a.type==="error")throw new y("no-response",{url:t.url})}catch(i){if(i instanceof Error){for(const n of e.iterateCallbacks("handlerDidError"))if(a=await n({error:i,event:r,request:t}),a)break}if(!a)throw i}for(const i of e.iterateCallbacks("handlerWillRespond"))a=await i({event:r,request:t,response:a});return a}async _awaitComplete(e,t,r,a){let i,n;try{i=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:a,request:r,response:i}),await t.doneWaiting()}catch(c){c instanceof Error&&(n=c)}if(await t.runCallbacks("handlerDidComplete",{event:a,request:r,response:i,error:n}),t.destroy(),n)throw n}}class mt extends se{async _handle(e,t){let r=await t.cacheMatch(e),a;if(!r)try{r=await t.fetchAndCachePut(e)}catch(i){i instanceof Error&&(a=i)}if(!r)throw new y("no-response",{url:e.url,error:a});return r}}const wt={cacheWillUpdate:async({response:s})=>s.status===200||s.status===0?s:null};class yt extends se{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(wt)}async _handle(e,t){const r=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(r);let a=await t.cacheMatch(e),i;if(!a)try{a=await r}catch(n){n instanceof Error&&(i=n)}if(!a)throw new y("no-response",{url:e.url,error:i});return a}}$e(([{"revision":null,"url":"assets/access-control-Deg0Ez_v.js"},{"revision":null,"url":"assets/actions-Dv2KmWA_.js"},{"revision":null,"url":"assets/add-component-core-CGy2QLvt.js"},{"revision":null,"url":"assets/add-component-core-D_j8BgsJ.css"},{"revision":null,"url":"assets/Add-DV9cHTiI.js"},{"revision":null,"url":"assets/add-resource-B2YCggbD.js"},{"revision":null,"url":"assets/AddBox-DjGRetT1.js"},{"revision":null,"url":"assets/addon-B-L0-6EM.js"},{"revision":null,"url":"assets/Alert-BriK3hjA.js"},{"revision":null,"url":"assets/analytics-B3U8I3AQ.js"},{"revision":null,"url":"assets/api-DJ1sjN9o.js"},{"revision":null,"url":"assets/ar-CqvGG4eC.js"},{"revision":null,"url":"assets/ar-lTVP4T3d.js"},{"revision":null,"url":"assets/ArrowDropDown-DX29Pf8V.js"},{"revision":null,"url":"assets/audit-logs-Dt1zBSaX.js"},{"revision":null,"url":"assets/Avatar-CpQhQmV4.js"},{"revision":null,"url":"assets/button-BotQVFjI.js"},{"revision":null,"url":"assets/ButtonGroup-BPdi_2z2.js"},{"revision":null,"url":"assets/CheckCircle-DwkE-k6U.js"},{"revision":null,"url":"assets/ChevronRight-BHXal2s_.js"},{"revision":null,"url":"assets/click-to-copy-C932KUDy.js"},{"revision":null,"url":"assets/Close-BtG4tyUL.js"},{"revision":null,"url":"assets/CloseOutlined-CYZb8eDz.js"},{"revision":null,"url":"assets/complete-BfHgp0O7.js"},{"revision":null,"url":"assets/component-BziFLYA3.js"},{"revision":null,"url":"assets/config-BcfULTik.js"},{"revision":null,"url":"assets/config-BqLTd80Y.js"},{"revision":null,"url":"assets/config-navigation-1U4iVdBl.js"},{"revision":null,"url":"assets/confirm-BWW215hi.js"},{"revision":null,"url":"assets/connect-CfBbqaTr.js"},{"revision":null,"url":"assets/connect-DC7BGJJv.js"},{"revision":null,"url":"assets/connect-to-CHo6hM6n.js"},{"revision":null,"url":"assets/content-layout-BP4bsvx7.js"},{"revision":null,"url":"assets/dashboard-BWG8DtF1.js"},{"revision":null,"url":"assets/de-B3TxaybY.js"},{"revision":null,"url":"assets/de-l0XzFKav.js"},{"revision":null,"url":"assets/Delete-rvy-F0hT.js"},{"revision":null,"url":"assets/DeleteOutline-C36lJe42.js"},{"revision":null,"url":"assets/did-address-TSZ5XRBj.js"},{"revision":null,"url":"assets/domain-B0bCdxTC.js"},{"revision":null,"url":"assets/domain-list-A5SqLbLS.js"},{"revision":null,"url":"assets/Done-n1c-sUsw.js"},{"revision":null,"url":"assets/Download-DuCZFVPl.js"},{"revision":null,"url":"assets/Edit-BrAk9NBL.js"},{"revision":null,"url":"assets/EditIcon-CPgYqcwg.js"},{"revision":null,"url":"assets/Error-g7gK9Wfp.js"},{"revision":null,"url":"assets/es-BY0KMFme.js"},{"revision":null,"url":"assets/es-DYmEeFzA.js"},{"revision":null,"url":"assets/exchange-passport-CBjbwwA6.js"},{"revision":null,"url":"assets/ExpandMore-DpLFPsWa.js"},{"revision":null,"url":"assets/fallback-Dz8ZuYD5.js"},{"revision":null,"url":"assets/FilterList-BpmYd7MC.js"},{"revision":null,"url":"assets/format-error-DQS9AwZv.js"},{"revision":null,"url":"assets/FormControl-Dq6XW9kS.js"},{"revision":null,"url":"assets/FormControlLabel-CQnpTkDU.js"},{"revision":null,"url":"assets/FormGroup-C8sAhYQk.js"},{"revision":null,"url":"assets/fr-BiVZLeXU.js"},{"revision":null,"url":"assets/fr-DwS-xj4v.js"},{"revision":null,"url":"assets/fuel-BP12PtJ1.js"},{"revision":null,"url":"assets/fullpage-DXFbt1Ve.js"},{"revision":null,"url":"assets/Google-C3cw6Unp.js"},{"revision":null,"url":"assets/hi-B_LrkIOS.js"},{"revision":null,"url":"assets/hi-Dj91QHv6.js"},{"revision":null,"url":"assets/Hidden-c0nvbE8_.js"},{"revision":null,"url":"assets/home-Cx9PAId-.js"},{"revision":null,"url":"assets/id-CzhlCzfQ.js"},{"revision":null,"url":"assets/id-jBXPD1he.js"},{"revision":null,"url":"assets/iframe-CO-VEhes.js"},{"revision":null,"url":"assets/index--YUaVsoq.js"},{"revision":null,"url":"assets/index-46Rvg-Bo.js"},{"revision":null,"url":"assets/index-B0wa_Sca.js"},{"revision":null,"url":"assets/index-B22_1WOD.js"},{"revision":null,"url":"assets/index-B5Pm_bPi.js"},{"revision":null,"url":"assets/index-BcFOSrVl.js"},{"revision":null,"url":"assets/index-BJDKEH0b.js"},{"revision":null,"url":"assets/index-BmHPL-9s.js"},{"revision":null,"url":"assets/index-BqmsKa7O.js"},{"revision":null,"url":"assets/index-BSHfXuRt.js"},{"revision":null,"url":"assets/index-BsjCwHmK.js"},{"revision":null,"url":"assets/index-Bwzls06Y.js"},{"revision":null,"url":"assets/index-ByYl1QnH.js"},{"revision":null,"url":"assets/index-CaLGv6xG.js"},{"revision":null,"url":"assets/index-CFQwbx1S.js"},{"revision":null,"url":"assets/index-ChpB_Xok.js"},{"revision":null,"url":"assets/index-CndSwPzI.js"},{"revision":null,"url":"assets/index-COZKzHiS.js"},{"revision":null,"url":"assets/index-CQU16qpp.js"},{"revision":null,"url":"assets/index-CTFO1wAr.js"},{"revision":null,"url":"assets/index-D_u35EkG.js"},{"revision":null,"url":"assets/index-D-GkMvG_.js"},{"revision":null,"url":"assets/index-D4PP6P2d.css"},{"revision":null,"url":"assets/index-D5PXuh6o.js"},{"revision":null,"url":"assets/index-D8NuaJ66.css"},{"revision":null,"url":"assets/index-DCMTEGgZ.js"},{"revision":null,"url":"assets/index-DtAm5Ed6.js"},{"revision":null,"url":"assets/index-DTEEl-sV.js"},{"revision":null,"url":"assets/index-Du6azec5.js"},{"revision":null,"url":"assets/index-DU7LqWjQ.js"},{"revision":null,"url":"assets/index-foZCwT8M.css"},{"revision":null,"url":"assets/index-HqFqdQ4r.js"},{"revision":null,"url":"assets/index-MoRwjSwP.js"},{"revision":null,"url":"assets/index-ozDSMBYi.js"},{"revision":null,"url":"assets/index-TTSckhl8.js"},{"revision":null,"url":"assets/index-VIHj0M7P.js"},{"revision":null,"url":"assets/index-zQvc8SIq.js"},{"revision":null,"url":"assets/index.es-CYl4P_xg.js"},{"revision":null,"url":"assets/index.esm-DDyWFyUp.js"},{"revision":null,"url":"assets/InfoOutlined-DEt-KJ8v.js"},{"revision":null,"url":"assets/InputAdornment-Dr1oU3Hs.js"},{"revision":null,"url":"assets/InputLabel-DYr7To9X.js"},{"revision":null,"url":"assets/invitation-YCFRX3K4.js"},{"revision":null,"url":"assets/invite-BVqEvYi7.js"},{"revision":null,"url":"assets/issue-passport-Bt2ICeaH.js"},{"revision":null,"url":"assets/item-DmDrPoAj.js"},{"revision":null,"url":"assets/ja-DKiHQ6DE.js"},{"revision":null,"url":"assets/ja-Ut-jFS9r.js"},{"revision":null,"url":"assets/jss-plugin-props-sort.esm-B9z92TrV.js"},{"revision":null,"url":"assets/keyboard-arrow-down-rounded-DadBVmpO.js"},{"revision":null,"url":"assets/ko-BBYyf1yM.js"},{"revision":null,"url":"assets/ko-Clp4qzRT.js"},{"revision":null,"url":"assets/LastPage-DV14H4DC.js"},{"revision":null,"url":"assets/Launch-DSSRxyd1.js"},{"revision":null,"url":"assets/launch-result-message-DpNOYW9u.js"},{"revision":null,"url":"assets/LaunchOutlined-DOGa7uCZ.js"},{"revision":null,"url":"assets/layout-D41GSjev.js"},{"revision":null,"url":"assets/Link-BzeSWqDp.js"},{"revision":null,"url":"assets/list-header-cw9lRKSX.js"},{"revision":null,"url":"assets/ListItemText-BWMpM4cA.js"},{"revision":null,"url":"assets/LoadingButton-IrsPdnhT.js"},{"revision":null,"url":"assets/localization-9mzelGR9.js"},{"revision":null,"url":"assets/LockIcon-Cx_TySkG.js"},{"revision":null,"url":"assets/log-D33dFtt_.css"},{"revision":null,"url":"assets/log-DVDRYSeA.js"},{"revision":null,"url":"assets/login-BLIQel5D.js"},{"revision":null,"url":"assets/login-oauth-callback--4mls_Fw.js"},{"revision":null,"url":"assets/logo-uploader-CHBeSau3.js"},{"revision":null,"url":"assets/Loop-CSmyyk97.js"},{"revision":null,"url":"assets/lost-passport-6PNRRlCd.js"},{"revision":null,"url":"assets/lottie-C16LOHrZ.js"},{"revision":null,"url":"assets/mode-B2dWMeTO.js"},{"revision":null,"url":"assets/MoreHoriz-B_IgZ_Tw.js"},{"revision":null,"url":"assets/MoreVert-BQD92YJp.js"},{"revision":null,"url":"assets/notifications-DHYTuxQt.js"},{"revision":null,"url":"assets/open-window-CEqHc-YI.js"},{"revision":null,"url":"assets/OpenInNew-Ba4HupG6.js"},{"revision":null,"url":"assets/overview-jW78KQ6d.js"},{"revision":null,"url":"assets/page-header-Bjl7D46v.js"},{"revision":null,"url":"assets/Pagination-g_z2fX8D.js"},{"revision":null,"url":"assets/permission-BK9x4qjQ.js"},{"revision":null,"url":"assets/PlayArrow-CvyM0yMY.js"},{"revision":null,"url":"assets/preact.module-DJUF--8d.js"},{"revision":null,"url":"assets/preferences-4fQh6PBV.js"},{"revision":null,"url":"assets/pt-BXaJbqdY.js"},{"revision":null,"url":"assets/pt-DI2MIkSi.js"},{"revision":null,"url":"assets/publish-resource-RsLy3V3l.js"},{"revision":null,"url":"assets/QuestionMarkCircle-B_wELYAO.js"},{"revision":null,"url":"assets/RadioGroup-BSqtRWJR.js"},{"revision":null,"url":"assets/react-BW7E7-P9.css"},{"revision":null,"url":"assets/react-DCoycSH4.js"},{"revision":null,"url":"assets/redux-Xix6UYN5.js"},{"revision":null,"url":"assets/resource-dialog-CMS1eEc0.js"},{"revision":null,"url":"assets/ru-B2L3CRQ4.js"},{"revision":null,"url":"assets/ru-p_K_7IoQ.js"},{"revision":null,"url":"assets/sdk-B75CkXUw.js"},{"revision":null,"url":"assets/Search-D_9DtKpx.js"},{"revision":null,"url":"assets/Select-CMM8MR9i.js"},{"revision":null,"url":"assets/selector-BcHp8r2b.js"},{"revision":null,"url":"assets/ServerLogo-Ds39xok2.js"},{"revision":null,"url":"assets/session-AqfK0jLG.js"},{"revision":null,"url":"assets/setup-DXuWRjLR.js"},{"revision":null,"url":"assets/shorten-label-DZ5n7VkB.js"},{"revision":null,"url":"assets/Skeleton-d-rA8WB_.js"},{"revision":null,"url":"assets/slicedToArray-DiN6EoYj.js"},{"revision":null,"url":"assets/Slider-Cv9IlmAx.js"},{"revision":null,"url":"assets/spaces-DBKeHx91.js"},{"revision":null,"url":"assets/start-C4mLiamV.js"},{"revision":null,"url":"assets/step-actions-NyA7AGpj.js"},{"revision":null,"url":"assets/Stepper-X4KYPIVJ.js"},{"revision":null,"url":"assets/studio-CC7YQ-9Q.js"},{"revision":null,"url":"assets/switch-control-VH3u6pwk.js"},{"revision":null,"url":"assets/TextField-BYelVRF_.js"},{"revision":null,"url":"assets/th-BJT9w_Lk.js"},{"revision":null,"url":"assets/th-CfNBHHtU.js"},{"revision":null,"url":"assets/Toolbar-DI2YKZS2.js"},{"revision":null,"url":"assets/toPropertyKey-PLuKRk1e.js"},{"revision":null,"url":"assets/toUpper-D8eon-dl.js"},{"revision":null,"url":"assets/transfer-Dp36g86n.js"},{"revision":null,"url":"assets/uniqBy-Cev3lMnU.js"},{"revision":null,"url":"assets/unsubscribe-Be0k3pAZ.js"},{"revision":null,"url":"assets/url-join-B-UX0vQK.js"},{"revision":null,"url":"assets/use-blocklet-info-for-connect-did-spaces-DF1lby8c.js"},{"revision":null,"url":"assets/use-mobile-BLqjm-5m.js"},{"revision":null,"url":"assets/use-passport-id-B-b-_oYF.js"},{"revision":null,"url":"assets/useAsync-PE3W-DLW.js"},{"revision":null,"url":"assets/useFormControl-DMGx-jdt.js"},{"revision":null,"url":"assets/useLocalStorage-eP0cInBT.js"},{"revision":null,"url":"assets/user-center-CkHZ_2ui.js"},{"revision":null,"url":"assets/user-sessions-C8nlOE7U.js"},{"revision":null,"url":"assets/useSetState-DEVLe2Fz.js"},{"revision":null,"url":"assets/useSlot-BrU8y60n.js"},{"revision":null,"url":"assets/useSlotProps-fP10cTIP.js"},{"revision":null,"url":"assets/useThemeProps-C59Glnbx.js"},{"revision":null,"url":"assets/util-yXMDVjHb.js"},{"revision":null,"url":"assets/vi-CycHlNkN.js"},{"revision":null,"url":"assets/vi-DbzhnofW.js"},{"revision":null,"url":"assets/ViewList-DWZsPuDR.js"},{"revision":null,"url":"assets/wrap-locale-DL11xPuS.js"},{"revision":null,"url":"assets/zh-Dv1l1HNj.js"},{"revision":null,"url":"assets/zh-FO0C29Rb.js"},{"revision":null,"url":"assets/zh-tw-44W5osxR.js"},{"revision":null,"url":"assets/zh-tw-cyWwf75a.js"},{"revision":"ad17f32f10efdcbe71cc490acfb6b4fa","url":"index.html"},{"revision":"186b2f1889d7c89ecd30e422ab415c8a","url":"registerSW.js"},{"revision":"07a287e43ae8e959a20d6b367a581667","url":"router-template-styles/styles.css"},{"revision":"ecdddc9b1297e7511cad18529d5cfd89","url":"manifest.webmanifest"}]||[]).filter(s=>s.url!=="/"&&!s.url.includes("index.html")));pe();self.addEventListener("activate",()=>{console.log("Service Worker activated")});self.addEventListener("install",s=>{console.log("Service Worker installed"),s.waitUntil(self.skipWaiting())});const re=s=>!!(s.method!=="GET"||s.url.includes("/api")||s.url.includes("__meta__.js")||s.url.includes("__blocklet__.js"));te(s=>{const{request:e}=s;return re(e)?!1:e.url.includes("/static/")},new mt({cacheName:"static",plugins:[new ut({maxEntries:200})]}));te(s=>{const{request:e}=s;return re(e)?!1:e.url.includes("/images/")||e.url.includes("/router/-template-styles/")},new yt);
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "publishConfig": {
4
4
  "access": "public"
5
5
  },
6
- "version": "1.16.30-beta-5d9c2c41",
6
+ "version": "1.16.30-beta-e7a90fb2",
7
7
  "description": "Provide unified services for every blocklet",
8
8
  "main": "api/index.js",
9
9
  "files": [
@@ -33,34 +33,34 @@
33
33
  "author": "wangshijun <wangshijun2010@gmail.com> (http://github.com/wangshijun)",
34
34
  "license": "Apache-2.0",
35
35
  "dependencies": {
36
- "@abtnode/analytics": "1.16.30-beta-5d9c2c41",
37
- "@abtnode/auth": "1.16.30-beta-5d9c2c41",
38
- "@abtnode/client": "1.16.30-beta-5d9c2c41",
39
- "@abtnode/connect-storage": "1.16.30-beta-5d9c2c41",
40
- "@abtnode/constant": "1.16.30-beta-5d9c2c41",
41
- "@abtnode/core": "1.16.30-beta-5d9c2c41",
42
- "@abtnode/cron": "1.16.30-beta-5d9c2c41",
43
- "@abtnode/logger": "1.16.30-beta-5d9c2c41",
44
- "@abtnode/models": "1.16.30-beta-5d9c2c41",
45
- "@abtnode/router-templates": "1.16.30-beta-5d9c2c41",
46
- "@abtnode/util": "1.16.30-beta-5d9c2c41",
47
- "@arcblock/did": "^1.18.130",
48
- "@arcblock/did-auth": "1.18.130",
49
- "@arcblock/did-ext": "^1.18.130",
50
- "@arcblock/event-hub": "1.18.130",
36
+ "@abtnode/analytics": "1.16.30-beta-e7a90fb2",
37
+ "@abtnode/auth": "1.16.30-beta-e7a90fb2",
38
+ "@abtnode/client": "1.16.30-beta-e7a90fb2",
39
+ "@abtnode/connect-storage": "1.16.30-beta-e7a90fb2",
40
+ "@abtnode/constant": "1.16.30-beta-e7a90fb2",
41
+ "@abtnode/core": "1.16.30-beta-e7a90fb2",
42
+ "@abtnode/cron": "1.16.30-beta-e7a90fb2",
43
+ "@abtnode/logger": "1.16.30-beta-e7a90fb2",
44
+ "@abtnode/models": "1.16.30-beta-e7a90fb2",
45
+ "@abtnode/router-templates": "1.16.30-beta-e7a90fb2",
46
+ "@abtnode/util": "1.16.30-beta-e7a90fb2",
47
+ "@arcblock/did": "^1.18.132",
48
+ "@arcblock/did-auth": "1.18.132",
49
+ "@arcblock/did-ext": "^1.18.132",
50
+ "@arcblock/event-hub": "1.18.132",
51
51
  "@arcblock/http-proxy": "^1.19.1",
52
- "@arcblock/jwt": "1.18.130",
53
- "@arcblock/validator": "^1.18.130",
54
- "@arcblock/ws": "1.18.130",
55
- "@blocklet/constant": "1.16.30-beta-5d9c2c41",
52
+ "@arcblock/jwt": "1.18.132",
53
+ "@arcblock/validator": "^1.18.132",
54
+ "@arcblock/ws": "1.18.132",
55
+ "@blocklet/constant": "1.16.30-beta-e7a90fb2",
56
56
  "@blocklet/form-builder": "^0.1.11",
57
57
  "@blocklet/form-collector": "^0.1.8",
58
- "@blocklet/meta": "1.16.30-beta-5d9c2c41",
59
- "@blocklet/sdk": "1.16.30-beta-5d9c2c41",
58
+ "@blocklet/meta": "1.16.30-beta-e7a90fb2",
59
+ "@blocklet/sdk": "1.16.30-beta-e7a90fb2",
60
60
  "@did-connect/authenticator": "^2.2.4",
61
61
  "@did-connect/relay-adapter-express": "^2.2.4",
62
- "@ocap/client": "1.18.130",
63
- "@ocap/util": "1.18.130",
62
+ "@ocap/client": "1.18.132",
63
+ "@ocap/util": "1.18.132",
64
64
  "@react-email/components": "^0.0.6",
65
65
  "auth0": "^3.3.0",
66
66
  "body-parser": "^1.20.1",
@@ -101,23 +101,23 @@
101
101
  "minimatch": "9.0.4"
102
102
  },
103
103
  "devDependencies": {
104
- "@abtnode/ux": "1.16.30-beta-5d9c2c41",
105
- "@arcblock/bridge": "^2.10.21",
106
- "@arcblock/did-connect": "^2.10.21",
107
- "@arcblock/icons": "^2.10.21",
108
- "@arcblock/react-hooks": "^2.10.21",
109
- "@arcblock/ux": "^2.10.21",
110
- "@blocklet/launcher-layout": "2.10.21",
111
- "@blocklet/tracker": "1.16.30-beta-5d9c2c41",
112
- "@blocklet/ui-react": "^2.10.21",
104
+ "@abtnode/ux": "1.16.30-beta-e7a90fb2",
105
+ "@arcblock/bridge": "^2.10.22",
106
+ "@arcblock/did-connect": "^2.10.22",
107
+ "@arcblock/icons": "^2.10.22",
108
+ "@arcblock/react-hooks": "^2.10.22",
109
+ "@arcblock/ux": "^2.10.22",
110
+ "@blocklet/launcher-layout": "2.10.22",
111
+ "@blocklet/tracker": "1.16.30-beta-e7a90fb2",
112
+ "@blocklet/ui-react": "^2.10.22",
113
113
  "@emotion/react": "^11.11.4",
114
114
  "@emotion/styled": "^11.11.5",
115
115
  "@iconify/iconify": "^3.1.1",
116
116
  "@mui/icons-material": "^5.15.19",
117
117
  "@mui/material": "^5.15.19",
118
118
  "@mui/styles": "^5.15.19",
119
- "@ocap/mcrypto": "1.18.130",
120
- "@ocap/wallet": "1.18.130",
119
+ "@ocap/mcrypto": "1.18.132",
120
+ "@ocap/wallet": "1.18.132",
121
121
  "@vitejs/plugin-react": "^4.3.0",
122
122
  "ahooks": "^3.8.0",
123
123
  "axios": "^1.7.2",
@@ -181,5 +181,5 @@
181
181
  "url": "https://github.com/ArcBlock/blocklet-server/issues",
182
182
  "email": "shijun@arcblock.io"
183
183
  },
184
- "gitHead": "d9227f08e11c1d82969880b30b2a2e3639e88def"
184
+ "gitHead": "c97ba97d694f553afc9f5336c9f3ddfae73cf955"
185
185
  }
@@ -1 +0,0 @@
1
- import{aF as $,aE as q,aG as T,aK as u,aH as z,r as s,aI as j,aJ as G,cO as F,j as P,aM as H,aN as J}from"./index-Bdg2hH7J.js";import{F as K}from"./useFormControl-CDmRrmKw.js";function U(e){return e!=null&&!(Array.isArray(e)&&e.length===0)}function b(e,t=!1){return e&&(U(e.value)&&e.value!==""||t&&U(e.defaultValue)&&e.defaultValue!=="")}function O(e){return e.startAdornment}function k(e){return $("MuiFormControl",e)}const w=q("MuiFormControl",["root","marginNone","marginNormal","marginDense","fullWidth","disabled"]),te=w,Q=["children","className","color","component","disabled","error","focused","fullWidth","hiddenLabel","margin","required","size","variant"],X=e=>{const{classes:t,margin:l,fullWidth:n}=e,o={root:["root",l!=="none"&&`margin${z(l)}`,n&&"fullWidth"]};return J(o,k,t)},Y=T("div",{name:"MuiFormControl",slot:"Root",overridesResolver:({ownerState:e},t)=>u({},t.root,t[`margin${z(e.margin)}`],e.fullWidth&&t.fullWidth)})(({ownerState:e})=>u({display:"inline-flex",flexDirection:"column",position:"relative",minWidth:0,padding:0,margin:0,border:0,verticalAlign:"top"},e.margin==="normal"&&{marginTop:16,marginBottom:8},e.margin==="dense"&&{marginTop:8,marginBottom:4},e.fullWidth&&{width:"100%"})),re=s.forwardRef(function(t,l){const n=j({props:t,name:"MuiFormControl"}),{children:o,className:B,color:d="primary",component:x="div",disabled:a=!1,error:c=!1,focused:v,fullWidth:f=!1,hiddenLabel:m=!1,margin:D="none",required:p=!1,size:g="medium",variant:C="outlined"}=n,I=G(n,Q),W=u({},n,{color:d,component:x,disabled:a,error:c,fullWidth:f,hiddenLabel:m,margin:D,required:p,size:g,variant:C}),L=X(W),[y,V]=s.useState(()=>{let i=!1;return o&&s.Children.forEach(o,r=>{if(!F(r,["Input","Select"]))return;const R=F(r,["Select"])?r.props.input:r;R&&O(R.props)&&(i=!0)}),i}),[S,E]=s.useState(()=>{let i=!1;return o&&s.Children.forEach(o,r=>{F(r,["Input","Select"])&&(b(r.props,!0)||b(r.props.inputProps,!0))&&(i=!0)}),i}),[A,h]=s.useState(!1);a&&A&&h(!1);const M=v!==void 0&&!a?v:A;let N;const _=s.useMemo(()=>({adornedStart:y,setAdornedStart:V,color:d,disabled:a,error:c,filled:S,focused:M,fullWidth:f,hiddenLabel:m,size:g,onBlur:()=>{h(!1)},onEmpty:()=>{E(!1)},onFilled:()=>{E(!0)},onFocus:()=>{h(!0)},registerEffect:N,required:p,variant:C}),[y,d,a,c,S,M,f,m,N,p,g,C]);return P.jsx(K.Provider,{value:_,children:P.jsx(Y,u({as:x,ownerState:W,className:H(L.root,B),ref:l},I,{children:o}))})});export{re as F,te as f,k as g,b as i};