@abtnode/webapp 1.16.31 → 1.16.32-beta-0b7f1250
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blocklet.js +1 -1
- package/blocklet.yml +1 -1
- package/dist/assets/{Add-YuGHCX93.js → Add-DWpKcN-u.js} +1 -1
- package/dist/assets/{ArrowDropDown-Dq_r4Xqb.js → ArrowDropDown-DpRC8bmp.js} +1 -1
- package/dist/assets/{Autocomplete-BVeL1Yo7.js → Autocomplete-BRXMVx1_.js} +1 -1
- package/dist/assets/{Breadcrumbs-CMvJXPnU.js → Breadcrumbs-Jf_U-bpr.js} +1 -1
- package/dist/assets/{ButtonGroup-Dk1mLt3h.js → ButtonGroup-CjdeZXiQ.js} +1 -1
- package/dist/assets/{CheckCircle-Cn-sNTZK.js → CheckCircle-DAJDvaDs.js} +1 -1
- package/dist/assets/{ChevronLeft-CGibP5P0.js → ChevronLeft-BAD_V2NB.js} +1 -1
- package/dist/assets/{ChevronRight-DakQosJn.js → ChevronRight-C3N0vcYC.js} +1 -1
- package/dist/assets/{Close-DpmK9wKZ.js → Close-ONBFJtxs.js} +1 -1
- package/dist/assets/{Delete-ukzbwUp3.js → Delete-DyfYh5Dp.js} +1 -1
- package/dist/assets/{DeleteOutline-DWR_h5F3.js → DeleteOutline-BeNbF0Jm.js} +1 -1
- package/dist/assets/{Done-CvSFHISO.js → Done-BwUiAzln.js} +1 -1
- package/dist/assets/{Edit-qncNJ4F1.js → Edit-DNbPZJcj.js} +1 -1
- package/dist/assets/{EditIcon-BU_hSrvO.js → EditIcon-CQMDFxRX.js} +1 -1
- package/dist/assets/{ExpandMore-BzXUe6hQ.js → ExpandMore-OENv0Zf3.js} +1 -1
- package/dist/assets/{FilterList-B3q8z3Ai.js → FilterList-DOSX0qYn.js} +1 -1
- package/dist/assets/{Google-BFCcXFWg.js → Google-Clt2u7fs.js} +1 -1
- package/dist/assets/{Https-c9HUx4_F.js → Https-C1_btbm6.js} +1 -1
- package/dist/assets/{InputAdornment-CmItI7-a.js → InputAdornment--p8LCNNy.js} +1 -1
- package/dist/assets/{InputLabel-DiJjRX8c.js → InputLabel-CZjkqwQE.js} +1 -1
- package/dist/assets/{LastPage-BVKCAcZd.js → LastPage-BgqTQGsQ.js} +1 -1
- package/dist/assets/{Launch-ixFhPrIJ.js → Launch-4M4xlVcJ.js} +1 -1
- package/dist/assets/{Link-D21zoGLh.js → Link-B9IP_-Eb.js} +1 -1
- package/dist/assets/{LoadingButton-C-VdleqP.js → LoadingButton-D4Eem9Ye.js} +1 -1
- package/dist/assets/{LockIcon-DWwaclI2.js → LockIcon-DNmOq-UN.js} +1 -1
- package/dist/assets/{Loop-cNToB-Hw.js → Loop-BA9fveaw.js} +1 -1
- package/dist/assets/{MoreHoriz-BlJZBfL5.js → MoreHoriz-C2jn3juG.js} +1 -1
- package/dist/assets/{MoreVert-72FLA6F7.js → MoreVert-s_b5pzH1.js} +1 -1
- package/dist/assets/{Pagination-BE1Nzv5c.js → Pagination-C4LxOrMX.js} +1 -1
- package/dist/assets/{Public-DwfXfE3x.js → Public-E1EGIO8u.js} +1 -1
- package/dist/assets/{SchemaReference.es-DSZJxlJs.js → SchemaReference.es-BLA9DpAj.js} +1 -1
- package/dist/assets/{Search-DPoHYjEM.js → Search-DvHspZGZ.js} +1 -1
- package/dist/assets/{Select-CZslLkS9.js → Select-DPQiNjEZ.js} +1 -1
- package/dist/assets/{Skeleton-BRE8g3Nr.js → Skeleton-DhAVWnjB.js} +1 -1
- package/dist/assets/{Slider-BXYbXQK6.js → Slider-IM6xBGec.js} +1 -1
- package/dist/assets/{Stepper-C2cskkxs.js → Stepper-pjsUNGe-.js} +1 -1
- package/dist/assets/{TextField-FjVpB8_i.js → TextField-CK1WkVgK.js} +1 -1
- package/dist/assets/{ToggleButtonGroup-BLKzb8eH.js → ToggleButtonGroup-CxfQ5hQa.js} +1 -1
- package/dist/assets/{ViewList-BWR6vvRA.js → ViewList-CXsz8fEa.js} +1 -1
- package/dist/assets/{actions-DMatOIO9.js → actions-DZdlSYXZ.js} +1 -1
- package/dist/assets/{actions-DI7j7zyh.js → actions-nCvhQAHx.js} +1 -1
- package/dist/assets/{agreement-CLCrNvvc.js → agreement-DOGPCXwZ.js} +1 -1
- package/dist/assets/api-BiytJ2OL.js +1 -0
- package/dist/assets/{app-avatar-Dp7pMuua.js → app-avatar-BuBN13SD.js} +1 -1
- package/dist/assets/{audit-logs-BmIfy96g.js → audit-logs-CpNkISiG.js} +1 -1
- package/dist/assets/blocklet-CP5f1QgL.js +1 -0
- package/dist/assets/{brace-fold.es-CjpHnqaJ.js → brace-fold.es-CnVLaaYa.js} +1 -1
- package/dist/assets/{bundle-avatar-BOdLBYt_.js → bundle-avatar-I8HkXJpE.js} +1 -1
- package/dist/assets/{chart-ChpsdZ5w.js → chart-DYC16wN7.js} +1 -1
- package/dist/assets/{click-to-copy-qnXvH47O.js → click-to-copy-D1k0ZJxd.js} +1 -1
- package/dist/assets/{closebrackets.es-BAkyQEkz.js → closebrackets.es-CXrbbB3A.js} +1 -1
- package/dist/assets/{codemirror.es-DyYoQOkc.js → codemirror.es-BoWLOKcl.js} +1 -1
- package/dist/assets/{comment.es-B0snLVGE.js → comment.es-Di0JRU_Q.js} +1 -1
- package/dist/assets/{config-navigation-qB3p7zP-.js → config-navigation-BXaw3SS0.js} +1 -1
- package/dist/assets/{delete-confirm-BG1I5J0u.js → delete-confirm-H8kgJ4fp.js} +1 -1
- package/dist/assets/{detail-DHBrhfaQ.js → detail-BGzCRUYj.js} +3 -3
- package/dist/assets/{dialog.es-C9szbcAW.js → dialog.es-BCtBfsF1.js} +1 -1
- package/dist/assets/{download-CIK2Rd3G.js → download-DMPUUrms.js} +1 -1
- package/dist/assets/{foldgutter.es-B7n9tC8r.js → foldgutter.es-E4CQ752m.js} +1 -1
- package/dist/assets/getValidReactChildren-Ckfy1X1A.js +1 -0
- package/dist/assets/{hint.es-CBGKcJ0H.js → hint.es-C04g9UeS.js} +1 -1
- package/dist/assets/{hint.es2-9eR9yDN0.js → hint.es2-Yrv2ylTe.js} +1 -1
- package/dist/assets/{iframe-DeTHfFVQ.js → iframe-BqheM3L9.js} +1 -1
- package/dist/assets/{index-qm1NSTqx.js → index-59UIPqJD.js} +1 -1
- package/dist/assets/{index-ClNOtPm5.js → index-B-Ld-2Ly.js} +3 -3
- package/dist/assets/{index-15yTTSQp.js → index-B1Hn6vLR.js} +1 -1
- package/dist/assets/{index-CLbWUy8O.js → index-BIbeG_A4.js} +1 -1
- package/dist/assets/{index-oVy0lmae.js → index-BWXhDqh4.js} +1 -1
- package/dist/assets/{index-CANtQh-8.js → index-BXLcUio2.js} +1 -1
- package/dist/assets/{index-D8rh69R2.js → index-Bgn8IBLJ.js} +1 -1
- package/dist/assets/{index-KENXSHGT.js → index-BiC43zns.js} +1 -1
- package/dist/assets/{index-B4nATnEq.js → index-Bo3kA0GY.js} +1 -1
- package/dist/assets/{index-D3y-Mq0t.js → index-BqgCbQUh.js} +1 -1
- package/dist/assets/{index-BZQ6Sdlq.js → index-BwSVsn4U.js} +1 -1
- package/dist/assets/{index-y0r_CDsH.js → index-C2t5LWRf.js} +1 -1
- package/dist/assets/{index-vxqr_A7H.js → index-C7FHl3UZ.js} +1 -1
- package/dist/assets/{index-BuNJbfxi.js → index-CHZY388_.js} +1 -1
- package/dist/assets/{index-CG4MmDuK.js → index-CRPL3-Eg.js} +1 -1
- package/dist/assets/{index-DmdQsIN9.js → index-CSJhz71g.js} +1 -1
- package/dist/assets/{index-Dpawm4Ki.js → index-CX-CBC_8.js} +3 -3
- package/dist/assets/{index-7aCT4zwx.js → index-CbA7sl2z.js} +1 -1
- package/dist/assets/{index-DP0iPBNh.js → index-CfpEgOA0.js} +1 -1
- package/dist/assets/{index-CoOBWTGS.js → index-ChMuqQhO.js} +1 -1
- package/dist/assets/{index-DnBiGZ_C.js → index-ChS_Pc5m.js} +1 -1
- package/dist/assets/{index-04gl6pO4.js → index-ChmGkB6N.js} +1 -1
- package/dist/assets/{index-TFGhlmJg.js → index-CqJYYaWO.js} +1 -1
- package/dist/assets/{index-DJs7uyCT.js → index-CtwmcOKA.js} +1 -1
- package/dist/assets/{index-BjH9WeIg.js → index-CvxaH3or.js} +5 -5
- package/dist/assets/{index-DNivFScD.js → index-CzOBa7wa.js} +1 -1
- package/dist/assets/{index-WbFA75dB.js → index-D5BI_0Y3.js} +1 -1
- package/dist/assets/{index-3regrC4H.js → index-D8cKX9nz.js} +1 -1
- package/dist/assets/{index-l9RwTjEt.js → index-DBCkW9MN.js} +1 -1
- package/dist/assets/{index-Ct2fXBsa.js → index-DPaVhekN.js} +1 -1
- package/dist/assets/{index-CD-UcGPr.js → index-DQDFultN.js} +1 -1
- package/dist/assets/{index-C7m9dmdb.js → index-DSMtyaan.js} +1 -1
- package/dist/assets/{index-BwAMNnCK.js → index-DSe7TL0J.js} +3 -3
- package/dist/assets/{index-BtcEDL3C.js → index-DWMoLGgj.js} +1 -1
- package/dist/assets/{index-BIUglsRs.js → index-DfHODGgp.js} +1 -1
- package/dist/assets/{index-TMoSb8Hc.js → index-DrA6t9XN.js} +1 -1
- package/dist/assets/{index-6UQZCJ9z.js → index-Dytzeids.js} +1 -1
- package/dist/assets/{index-CupkOe8N.js → index-GxcCCStf.js} +1 -1
- package/dist/assets/{index-MRb9RAJK.js → index-Ir1Ynx3j.js} +1 -1
- package/dist/assets/{index-DDRhCg0G.js → index-bVh0eo8P.js} +1 -1
- package/dist/assets/{index-CJeF5ewa.js → index-cR-wh0v1.js} +1 -1
- package/dist/assets/{index-9o5SBOBg.js → index-pn9KZg_s.js} +1 -1
- package/dist/assets/{index-CUnYmZv8.js → index-wGYPkAW3.js} +1 -1
- package/dist/assets/{index.es-iY0s9qTe.js → index.es-DpBhdLHz.js} +1 -1
- package/dist/assets/{index.esm-Lol3I37E.js → index.esm-Cm5bDJvK.js} +1 -1
- package/dist/assets/{info-addon.es-U5Ih2Oar.js → info-addon.es-Bm6N_jGk.js} +1 -1
- package/dist/assets/{info.es-B24BQRjf.js → info.es-C1vDTqje.js} +1 -1
- package/dist/assets/{install-from-url-DrOGJntu.js → install-from-url-C5ZZLYX3.js} +1 -1
- package/dist/assets/{invitation-B4r3Uuqv.js → invitation-BuDjbT3x.js} +1 -1
- package/dist/assets/{is-path-prefix-equal-BsUunwOH.js → is-path-prefix-equal-MT4O3ono.js} +1 -1
- package/dist/assets/{isEqual-DvDsjofF.js → isEqual-C8jFbxEO.js} +1 -1
- package/dist/assets/{item-BQ-lq0dH.js → item-DmRpat8A.js} +1 -1
- package/dist/assets/{javascript.es-DmenNz71.js → javascript.es-CWA0V3mM.js} +1 -1
- package/dist/assets/{jump-to-line.es-BT9o4hFe.js → jump-to-line.es-BITLwcgJ.js} +1 -1
- package/dist/assets/{jump.es-BJH_IFbo.js → jump.es-fVm9xBWY.js} +1 -1
- package/dist/assets/{line-C7Ytimyk.js → line-vQYPOsJl.js} +3 -3
- package/dist/assets/{lint.es-BsdVLYYK.js → lint.es-BN9f3Hg9.js} +1 -1
- package/dist/assets/{lint.es2-CT9E8RI5.js → lint.es2-Dt2lwIVK.js} +1 -1
- package/dist/assets/{lint.es3-CjbW7OcU.js → lint.es3-sBho7ETd.js} +1 -1
- package/dist/assets/{list-header-C1ycqwNT.js → list-header-DkOo80YP.js} +1 -1
- package/dist/assets/{log-CrPoPCZq.js → log-CgFbIbvp.js} +1 -1
- package/dist/assets/{lottie-E7kaZ5f2.js → lottie-xnBjXQ5H.js} +1 -1
- package/dist/assets/{matchbrackets.es-Bdv2zR-T.js → matchbrackets.es-Ci37WRje.js} +1 -1
- package/dist/assets/{memory-Br7PUWs3.js → memory-rY7rc2Pr.js} +1 -1
- package/dist/assets/{mode.es-C0DC5igF.js → mode.es-CIMZsD3l.js} +1 -1
- package/dist/assets/{mode.es2-BvMpbvGY.js → mode.es2-Buy6Zs7Q.js} +1 -1
- package/dist/assets/{mode.es3-BzN1VyV9.js → mode.es3-CbjER9bZ.js} +1 -1
- package/dist/assets/{onlineParser.es-DhWzlYWG.js → onlineParser.es-DClTB48M.js} +1 -1
- package/dist/assets/{overview-RRUNlHLn.js → overview-GTzk3Rt6.js} +1 -1
- package/dist/assets/{react-Cw_CkYN1.js → react-BX4vljA0.js} +3 -3
- package/dist/assets/{redux-B9BtMJgi.js → redux-CiOMdG2L.js} +1 -1
- package/dist/assets/{resource-dialog-0uswwg4x.js → resource-dialog-aFD_HBXU.js} +1 -1
- package/dist/assets/{runtime-C6dWdPqY.js → runtime-B3RZCh1x.js} +1 -1
- package/dist/assets/{schema-rBztjvAB.js → schema-BzCltIyc.js} +1 -1
- package/dist/assets/sdk-DmktCVPV.js +1 -0
- package/dist/assets/{search.es-lkmhiqmF.js → search.es-kY0vSJsp.js} +1 -1
- package/dist/assets/{searchcursor.es-CyKx0v-U.js → searchcursor.es-DdxQrbfv.js} +1 -1
- package/dist/assets/service-YfGgRaf0.js +1 -0
- package/dist/assets/{shorten-label-MAGXebJW.js → shorten-label-C-ljprxl.js} +1 -1
- package/dist/assets/{show-hint.es-DiObn3_W.js → show-hint.es-DiJd2cnC.js} +1 -1
- package/dist/assets/{slicedToArray-Cd-fJo2i.js → slicedToArray-BRqOgi_5.js} +1 -1
- package/dist/assets/{spaces-q5OlP__P.js → spaces-DcSM3WjO.js} +1 -1
- package/dist/assets/{status-93gUV3__.js → status-DPLxEBYu.js} +1 -1
- package/dist/assets/{sublime.es-CaUPtnXc.js → sublime.es-2rWUK1DK.js} +1 -1
- package/dist/assets/{switch-control-Dd1suGf_.js → switch-control-C2T6recO.js} +1 -1
- package/dist/assets/{table-icons-BuE8hjls.js → table-icons-Cw9lvDU6.js} +1 -1
- package/dist/assets/{team-B75Qqpfx.js → team-CoOZjBzx.js} +1 -1
- package/dist/assets/{toUpper-BPjfk0vW.js → toUpper-MM-LMl4h.js} +1 -1
- package/dist/assets/{traffic-Dm5MXy9S.js → traffic-CSlS8nHX.js} +1 -1
- package/dist/assets/{url-evaluation-BfNZVzn8.js → url-evaluation-C5psqheg.js} +1 -1
- package/dist/assets/{url-join-uVmSvxHB.js → url-join-CN9FagN9.js} +1 -1
- package/dist/assets/{use-blocklet-info-for-connect-did-spaces--c0ZcRNe.js → use-blocklet-info-for-connect-did-spaces-DtrHJjly.js} +1 -1
- package/dist/assets/{useLocalStorage-C-9FT6wS.js → useLocalStorage-DoHM0_RD.js} +1 -1
- package/dist/assets/{useThemeProps-D2picXH9.js → useThemeProps-DCfy4AlW.js} +1 -1
- package/dist/assets/{util-B3g0jIJB.js → util-KSqE9V0r.js} +1 -1
- package/dist/assets/{wait-container-CS2sL203.js → wait-container-e8XKZH24.js} +1 -1
- package/dist/assets/{withStyles-D9ls3p7Y.js → withStyles-2CEBfzYU.js} +1 -1
- package/dist/assets/{wrap-locale-CJcLTW-n.js → wrap-locale-VUVZgNw_.js} +1 -1
- package/dist/index.html +1 -1
- package/dist/service-worker.js +1 -1
- package/package.json +1 -1
- package/dist/assets/api-BxXFuqVr.js +0 -1
- package/dist/assets/blocklet-xgPL6JoP.js +0 -1
- package/dist/assets/getValidReactChildren-anMSyFv4.js +0 -1
- package/dist/assets/sdk-B77IQB17.js +0 -1
- package/dist/assets/service-DumyHxMs.js +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./index-Ir1Ynx3j.js","./index-BojVbZw0.js","./index-wGYPkAW3.js","./click-to-copy-D1k0ZJxd.js","./withStyles-2CEBfzYU.js","./index-CRPL3-Eg.js","./useLocalStorage-DoHM0_RD.js","./index-C7FHl3UZ.js","./FilterList-DOSX0qYn.js","./useThemeProps-DCfy4AlW.js","./Select-DPQiNjEZ.js","./Delete-DyfYh5Dp.js","./InputLabel-CZjkqwQE.js","./TextField-CK1WkVgK.js","./LastPage-BgqTQGsQ.js","./index-CtwmcOKA.js","./redux-CiOMdG2L.js","./Search-DvHspZGZ.js","./index-bVh0eo8P.js","./MoreVert-s_b5pzH1.js","./status-DPLxEBYu.js","./url-evaluation-C5psqheg.js","./actions-nCvhQAHx.js","./ButtonGroup-CjdeZXiQ.js","./getValidReactChildren-Ckfy1X1A.js","./index-DWMoLGgj.js","./isEqual-C8jFbxEO.js","./install-from-url-C5ZZLYX3.js","./schema-BzCltIyc.js","./index-DBCkW9MN.js","./Stepper-pjsUNGe-.js","./app-avatar-BuBN13SD.js","./Add-DWpKcN-u.js","./index-GxcCCStf.js","./ExpandMore-OENv0Zf3.js","./index-DSMtyaan.js","./index-CHZY388_.js","./url-join-CN9FagN9.js","./Skeleton-DhAVWnjB.js","./Close-ONBFJtxs.js","./lottie-xnBjXQ5H.js","./wait-container-e8XKZH24.js","./Launch-4M4xlVcJ.js","./DeleteOutline-BeNbF0Jm.js","./spaces-DcSM3WjO.js","./api-BiytJ2OL.js","./index-Bgn8IBLJ.js","./item-DmRpat8A.js","./index-D8cKX9nz.js","./index-ZG7jWpak.js","./index-CqJYYaWO.js","./InputAdornment--p8LCNNy.js","./preact.module-DJUF--8d.js","./Done-BwUiAzln.js","./delete-confirm-H8kgJ4fp.js","./shorten-label-C-ljprxl.js","./blocklet-CP5f1QgL.js","./item-D_j8BgsJ.css","./ArrowDropDown-DpRC8bmp.js","./Breadcrumbs-Jf_U-bpr.js","./index-BIbeG_A4.js","./index-ChmGkB6N.js","./index.esm-Cm5bDJvK.js","./switch-control-C2T6recO.js","./is-path-prefix-equal-MT4O3ono.js","./Link-B9IP_-Eb.js","./logo-BKA11TRi.js","./LoadingButton-D4Eem9Ye.js","./Public-E1EGIO8u.js","./CheckCircle-DAJDvaDs.js","./ChevronRight-C3N0vcYC.js","./Edit-DNbPZJcj.js","./Https-C1_btbm6.js","./Slider-IM6xBGec.js","./index-pn9KZg_s.js","./download-DMPUUrms.js","./download-D33dFtt_.css","./index-BiC43zns.js","./audit-logs-CpNkISiG.js","./index-CbA7sl2z.js","./index-D4PP6P2d.css","./Pagination-C4LxOrMX.js","./index-D5BI_0Y3.js","./index-ChS_Pc5m.js","./Loop-BA9fveaw.js","./ViewList-CXsz8fEa.js","./list-header-DkOo80YP.js","./index-CfpEgOA0.js","./resource-dialog-aFD_HBXU.js","./index-ChMuqQhO.js","./team-CoOZjBzx.js","./sdk-DmktCVPV.js","./actions-DZdlSYXZ.js","./MoreHoriz-C2jn3juG.js","./index-59UIPqJD.js","./EditIcon-CQMDFxRX.js","./LockIcon-DNmOq-UN.js","./Google-Clt2u7fs.js","./ToggleButtonGroup-CxfQ5hQa.js","./detail-BGzCRUYj.js","./index-CSJhz71g.js","./index-BWXhDqh4.js","./invitation-BuDjbT3x.js","./index-BqgCbQUh.js","./wrap-locale-VUVZgNw_.js","./index-B-Ld-2Ly.js","./index-DfHODGgp.js","./index-Dytzeids.js","./agreement-DOGPCXwZ.js","./index-B1Hn6vLR.js","./index-cR-wh0v1.js","./index-CvxaH3or.js","./index-C7igR7se.css","./index-CzOBa7wa.js","./traffic-CSlS8nHX.js","./iframe-BqheM3L9.js","./ChevronLeft-BAD_V2NB.js","./chart-DYC16wN7.js","./bundle-avatar-I8HkXJpE.js","./memory-rY7rc2Pr.js"])))=>i.map(i=>d[i]);
|
|
2
2
|
var Km=a=>{throw TypeError(a)};var Pp=(a,j,_e)=>j.has(a)||Km("Cannot "+_e);var Wr=(a,j,_e)=>(Pp(a,j,"read from private field"),_e?_e.call(a):j.get(a)),Ms=(a,j,_e)=>j.has(a)?Km("Cannot add the same private member more than once"):j instanceof WeakSet?j.add(a):j.set(a,_e),Uo=(a,j,_e,et)=>(Pp(a,j,"write to private field"),et?et.call(a,_e):j.set(a,_e),_e),So=(a,j,_e)=>(Pp(a,j,"access private method"),_e);var Mp=(a,j,_e,et)=>({set _(nt){Uo(a,j,nt,_e)},get _(){return Wr(a,j,et)}});function _mergeNamespaces(a,j){for(var _e=0;_e<j.length;_e++){const et=j[_e];if(typeof et!="string"&&!Array.isArray(et)){for(const nt in et)if(nt!=="default"&&!(nt in a)){const tt=Object.getOwnPropertyDescriptor(et,nt);tt&&Object.defineProperty(a,nt,tt.get?tt:{enumerable:!0,get:()=>et[nt]})}}}return Object.freeze(Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}))}(function(){const j=document.createElement("link").relList;if(j&&j.supports&&j.supports("modulepreload"))return;for(const nt of document.querySelectorAll('link[rel="modulepreload"]'))et(nt);new MutationObserver(nt=>{for(const tt of nt)if(tt.type==="childList")for(const it of tt.addedNodes)it.tagName==="LINK"&&it.rel==="modulepreload"&&et(it)}).observe(document,{childList:!0,subtree:!0});function _e(nt){const tt={};return nt.integrity&&(tt.integrity=nt.integrity),nt.referrerPolicy&&(tt.referrerPolicy=nt.referrerPolicy),nt.crossOrigin==="use-credentials"?tt.credentials="include":nt.crossOrigin==="anonymous"?tt.credentials="omit":tt.credentials="same-origin",tt}function et(nt){if(nt.ep)return;nt.ep=!0;const tt=_e(nt);fetch(nt.href,tt)}})();var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs$1(a){return a&&a.__esModule&&Object.prototype.hasOwnProperty.call(a,"default")?a.default:a}function getAugmentedNamespace(a){if(a.__esModule)return a;var j=a.default;if(typeof j=="function"){var _e=function et(){return this instanceof et?Reflect.construct(j,arguments,this.constructor):j.apply(this,arguments)};_e.prototype=j.prototype}else _e={};return Object.defineProperty(_e,"__esModule",{value:!0}),Object.keys(a).forEach(function(et){var nt=Object.getOwnPropertyDescriptor(a,et);Object.defineProperty(_e,et,nt.get?nt:{enumerable:!0,get:function(){return a[et]}})}),_e}var jsxRuntime={exports:{}},reactJsxRuntime_production_min={},react={exports:{}},react_production_min={};/**
|
|
3
3
|
* @license React
|
|
4
4
|
* react.production.min.js
|
|
@@ -276,7 +276,7 @@ use chrome, FireFox or Internet Explorer 11`)}var j=safeBufferExports,_e=browser
|
|
|
276
276
|
`)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(j){return j instanceof this?j:new this(j)}static concat(j,..._e){const et=new this(j);return _e.forEach(nt=>et.set(nt)),et}static accessor(j){const et=(this[$internals]=this[$internals]={accessors:{}}).accessors,nt=this.prototype;function tt(it){const ut=normalizeHeader(it);et[ut]||(buildAccessors(nt,it),et[ut]=!0)}return utils$1.isArray(j)?j.forEach(tt):tt(j),this}};AxiosHeaders$1.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);utils$1.reduceDescriptors(AxiosHeaders$1.prototype,({value:a},j)=>{let _e=j[0].toUpperCase()+j.slice(1);return{get:()=>a,set(et){this[_e]=et}}});utils$1.freezeMethods(AxiosHeaders$1);function transformData(a,j){const _e=this||defaults$1,et=j||_e,nt=AxiosHeaders$1.from(et.headers);let tt=et.data;return utils$1.forEach(a,function(ut){tt=ut.call(_e,tt,nt.normalize(),j?j.status:void 0)}),nt.normalize(),tt}function isCancel$1(a){return!!(a&&a.__CANCEL__)}function CanceledError$1(a,j,_e){AxiosError$1.call(this,a??"canceled",AxiosError$1.ERR_CANCELED,j,_e),this.name="CanceledError"}utils$1.inherits(CanceledError$1,AxiosError$1,{__CANCEL__:!0});function settle(a,j,_e){const et=_e.config.validateStatus;!_e.status||!et||et(_e.status)?a(_e):j(new AxiosError$1("Request failed with status code "+_e.status,[AxiosError$1.ERR_BAD_REQUEST,AxiosError$1.ERR_BAD_RESPONSE][Math.floor(_e.status/100)-4],_e.config,_e.request,_e))}function parseProtocol(a){const j=/^([-+\w]{1,25})(:?\/\/|:)/.exec(a);return j&&j[1]||""}function speedometer(a,j){a=a||10;const _e=new Array(a),et=new Array(a);let nt=0,tt=0,it;return j=j!==void 0?j:1e3,function(ft){const pt=Date.now(),dt=et[tt];it||(it=pt),_e[nt]=ft,et[nt]=pt;let mt=tt,Et=0;for(;mt!==nt;)Et+=_e[mt++],mt=mt%a;if(nt=(nt+1)%a,nt===tt&&(tt=(tt+1)%a),pt-it<j)return;const wt=dt&&pt-dt;return wt?Math.round(Et*1e3/wt):void 0}}function throttle(a,j){let _e=0,et=1e3/j,nt,tt;const it=(pt,dt=Date.now())=>{_e=dt,nt=null,tt&&(clearTimeout(tt),tt=null),a.apply(null,pt)};return[(...pt)=>{const dt=Date.now(),mt=dt-_e;mt>=et?it(pt,dt):(nt=pt,tt||(tt=setTimeout(()=>{tt=null,it(nt)},et-mt)))},()=>nt&&it(nt)]}const progressEventReducer=(a,j,_e=3)=>{let et=0;const nt=speedometer(50,250);return throttle(tt=>{const it=tt.loaded,ut=tt.lengthComputable?tt.total:void 0,ft=it-et,pt=nt(ft),dt=it<=ut;et=it;const mt={loaded:it,total:ut,progress:ut?it/ut:void 0,bytes:ft,rate:pt||void 0,estimated:pt&&ut&&dt?(ut-it)/pt:void 0,event:tt,lengthComputable:ut!=null,[j?"download":"upload"]:!0};a(mt)},_e)},progressEventDecorator=(a,j)=>{const _e=a!=null;return[et=>j[0]({lengthComputable:_e,total:a,loaded:et}),j[1]]},asyncDecorator=a=>(...j)=>utils$1.asap(()=>a(...j)),isURLSameOrigin=platform.hasStandardBrowserEnv?function a(){const j=platform.navigator&&/(msie|trident)/i.test(platform.navigator.userAgent),_e=document.createElement("a");let et;function nt(tt){let it=tt;return j&&(_e.setAttribute("href",it),it=_e.href),_e.setAttribute("href",it),{href:_e.href,protocol:_e.protocol?_e.protocol.replace(/:$/,""):"",host:_e.host,search:_e.search?_e.search.replace(/^\?/,""):"",hash:_e.hash?_e.hash.replace(/^#/,""):"",hostname:_e.hostname,port:_e.port,pathname:_e.pathname.charAt(0)==="/"?_e.pathname:"/"+_e.pathname}}return et=nt(window.location.href),function(it){const ut=utils$1.isString(it)?nt(it):it;return ut.protocol===et.protocol&&ut.host===et.host}}():function a(){return function(){return!0}}(),cookies=platform.hasStandardBrowserEnv?{write(a,j,_e,et,nt,tt){const it=[a+"="+encodeURIComponent(j)];utils$1.isNumber(_e)&&it.push("expires="+new Date(_e).toGMTString()),utils$1.isString(et)&&it.push("path="+et),utils$1.isString(nt)&&it.push("domain="+nt),tt===!0&&it.push("secure"),document.cookie=it.join("; ")},read(a){const j=document.cookie.match(new RegExp("(^|;\\s*)("+a+")=([^;]*)"));return j?decodeURIComponent(j[3]):null},remove(a){this.write(a,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function isAbsoluteURL(a){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(a)}function combineURLs(a,j){return j?a.replace(/\/?\/$/,"")+"/"+j.replace(/^\/+/,""):a}function buildFullPath(a,j){return a&&!isAbsoluteURL(j)?combineURLs(a,j):j}const headersToObject=a=>a instanceof AxiosHeaders$1?{...a}:a;function mergeConfig$1(a,j){j=j||{};const _e={};function et(pt,dt,mt){return utils$1.isPlainObject(pt)&&utils$1.isPlainObject(dt)?utils$1.merge.call({caseless:mt},pt,dt):utils$1.isPlainObject(dt)?utils$1.merge({},dt):utils$1.isArray(dt)?dt.slice():dt}function nt(pt,dt,mt){if(utils$1.isUndefined(dt)){if(!utils$1.isUndefined(pt))return et(void 0,pt,mt)}else return et(pt,dt,mt)}function tt(pt,dt){if(!utils$1.isUndefined(dt))return et(void 0,dt)}function it(pt,dt){if(utils$1.isUndefined(dt)){if(!utils$1.isUndefined(pt))return et(void 0,pt)}else return et(void 0,dt)}function ut(pt,dt,mt){if(mt in j)return et(pt,dt);if(mt in a)return et(void 0,pt)}const ft={url:tt,method:tt,data:tt,baseURL:it,transformRequest:it,transformResponse:it,paramsSerializer:it,timeout:it,timeoutMessage:it,withCredentials:it,withXSRFToken:it,adapter:it,responseType:it,xsrfCookieName:it,xsrfHeaderName:it,onUploadProgress:it,onDownloadProgress:it,decompress:it,maxContentLength:it,maxBodyLength:it,beforeRedirect:it,transport:it,httpAgent:it,httpsAgent:it,cancelToken:it,socketPath:it,responseEncoding:it,validateStatus:ut,headers:(pt,dt)=>nt(headersToObject(pt),headersToObject(dt),!0)};return utils$1.forEach(Object.keys(Object.assign({},a,j)),function(dt){const mt=ft[dt]||nt,Et=mt(a[dt],j[dt],dt);utils$1.isUndefined(Et)&&mt!==ut||(_e[dt]=Et)}),_e}const resolveConfig=a=>{const j=mergeConfig$1({},a);let{data:_e,withXSRFToken:et,xsrfHeaderName:nt,xsrfCookieName:tt,headers:it,auth:ut}=j;j.headers=it=AxiosHeaders$1.from(it),j.url=buildURL(buildFullPath(j.baseURL,j.url),a.params,a.paramsSerializer),ut&&it.set("Authorization","Basic "+btoa((ut.username||"")+":"+(ut.password?unescape(encodeURIComponent(ut.password)):"")));let ft;if(utils$1.isFormData(_e)){if(platform.hasStandardBrowserEnv||platform.hasStandardBrowserWebWorkerEnv)it.setContentType(void 0);else if((ft=it.getContentType())!==!1){const[pt,...dt]=ft?ft.split(";").map(mt=>mt.trim()).filter(Boolean):[];it.setContentType([pt||"multipart/form-data",...dt].join("; "))}}if(platform.hasStandardBrowserEnv&&(et&&utils$1.isFunction(et)&&(et=et(j)),et||et!==!1&&isURLSameOrigin(j.url))){const pt=nt&&tt&&cookies.read(tt);pt&&it.set(nt,pt)}return j},isXHRAdapterSupported=typeof XMLHttpRequest<"u",xhrAdapter=isXHRAdapterSupported&&function(a){return new Promise(function(_e,et){const nt=resolveConfig(a);let tt=nt.data;const it=AxiosHeaders$1.from(nt.headers).normalize();let{responseType:ut,onUploadProgress:ft,onDownloadProgress:pt}=nt,dt,mt,Et,wt,St;function Ct(){wt&&wt(),St&&St(),nt.cancelToken&&nt.cancelToken.unsubscribe(dt),nt.signal&&nt.signal.removeEventListener("abort",dt)}let Dt=new XMLHttpRequest;Dt.open(nt.method.toUpperCase(),nt.url,!0),Dt.timeout=nt.timeout;function At(){if(!Dt)return;const It=AxiosHeaders$1.from("getAllResponseHeaders"in Dt&&Dt.getAllResponseHeaders()),zt={data:!ut||ut==="text"||ut==="json"?Dt.responseText:Dt.response,status:Dt.status,statusText:Dt.statusText,headers:It,config:a,request:Dt};settle(function(Ht){_e(Ht),Ct()},function(Ht){et(Ht),Ct()},zt),Dt=null}"onloadend"in Dt?Dt.onloadend=At:Dt.onreadystatechange=function(){!Dt||Dt.readyState!==4||Dt.status===0&&!(Dt.responseURL&&Dt.responseURL.indexOf("file:")===0)||setTimeout(At)},Dt.onabort=function(){Dt&&(et(new AxiosError$1("Request aborted",AxiosError$1.ECONNABORTED,a,Dt)),Dt=null)},Dt.onerror=function(){et(new AxiosError$1("Network Error",AxiosError$1.ERR_NETWORK,a,Dt)),Dt=null},Dt.ontimeout=function(){let Lt=nt.timeout?"timeout of "+nt.timeout+"ms exceeded":"timeout exceeded";const zt=nt.transitional||transitionalDefaults;nt.timeoutErrorMessage&&(Lt=nt.timeoutErrorMessage),et(new AxiosError$1(Lt,zt.clarifyTimeoutError?AxiosError$1.ETIMEDOUT:AxiosError$1.ECONNABORTED,a,Dt)),Dt=null},tt===void 0&&it.setContentType(null),"setRequestHeader"in Dt&&utils$1.forEach(it.toJSON(),function(Lt,zt){Dt.setRequestHeader(zt,Lt)}),utils$1.isUndefined(nt.withCredentials)||(Dt.withCredentials=!!nt.withCredentials),ut&&ut!=="json"&&(Dt.responseType=nt.responseType),pt&&([Et,St]=progressEventReducer(pt,!0),Dt.addEventListener("progress",Et)),ft&&Dt.upload&&([mt,wt]=progressEventReducer(ft),Dt.upload.addEventListener("progress",mt),Dt.upload.addEventListener("loadend",wt)),(nt.cancelToken||nt.signal)&&(dt=It=>{Dt&&(et(!It||It.type?new CanceledError$1(null,a,Dt):It),Dt.abort(),Dt=null)},nt.cancelToken&&nt.cancelToken.subscribe(dt),nt.signal&&(nt.signal.aborted?dt():nt.signal.addEventListener("abort",dt)));const Pt=parseProtocol(nt.url);if(Pt&&platform.protocols.indexOf(Pt)===-1){et(new AxiosError$1("Unsupported protocol "+Pt+":",AxiosError$1.ERR_BAD_REQUEST,a));return}Dt.send(tt||null)})},composeSignals=(a,j)=>{let _e=new AbortController,et;const nt=function(ft){if(!et){et=!0,it();const pt=ft instanceof Error?ft:this.reason;_e.abort(pt instanceof AxiosError$1?pt:new CanceledError$1(pt instanceof Error?pt.message:pt))}};let tt=j&&setTimeout(()=>{nt(new AxiosError$1(`timeout ${j} of ms exceeded`,AxiosError$1.ETIMEDOUT))},j);const it=()=>{a&&(tt&&clearTimeout(tt),tt=null,a.forEach(ft=>{ft&&(ft.removeEventListener?ft.removeEventListener("abort",nt):ft.unsubscribe(nt))}),a=null)};a.forEach(ft=>ft&&ft.addEventListener&&ft.addEventListener("abort",nt));const{signal:ut}=_e;return ut.unsubscribe=it,[ut,()=>{tt&&clearTimeout(tt),tt=null}]},streamChunk=function*(a,j){let _e=a.byteLength;if(!j||_e<j){yield a;return}let et=0,nt;for(;et<_e;)nt=et+j,yield a.slice(et,nt),et=nt},readBytes=async function*(a,j,_e){for await(const et of a)yield*streamChunk(ArrayBuffer.isView(et)?et:await _e(String(et)),j)},trackStream=(a,j,_e,et,nt)=>{const tt=readBytes(a,j,nt);let it=0,ut,ft=pt=>{ut||(ut=!0,et&&et(pt))};return new ReadableStream({async pull(pt){try{const{done:dt,value:mt}=await tt.next();if(dt){ft(),pt.close();return}let Et=mt.byteLength;if(_e){let wt=it+=Et;_e(wt)}pt.enqueue(new Uint8Array(mt))}catch(dt){throw ft(dt),dt}},cancel(pt){return ft(pt),tt.return()}},{highWaterMark:2})},isFetchSupported=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",isReadableStreamSupported=isFetchSupported&&typeof ReadableStream=="function",encodeText=isFetchSupported&&(typeof TextEncoder=="function"?(a=>j=>a.encode(j))(new TextEncoder):async a=>new Uint8Array(await new Response(a).arrayBuffer())),test$1=(a,...j)=>{try{return!!a(...j)}catch{return!1}},supportsRequestStream=isReadableStreamSupported&&test$1(()=>{let a=!1;const j=new Request(platform.origin,{body:new ReadableStream,method:"POST",get duplex(){return a=!0,"half"}}).headers.has("Content-Type");return a&&!j}),DEFAULT_CHUNK_SIZE=64*1024,supportsResponseStream=isReadableStreamSupported&&test$1(()=>utils$1.isReadableStream(new Response("").body)),resolvers={stream:supportsResponseStream&&(a=>a.body)};isFetchSupported&&(a=>{["text","arrayBuffer","blob","formData","stream"].forEach(j=>{!resolvers[j]&&(resolvers[j]=utils$1.isFunction(a[j])?_e=>_e[j]():(_e,et)=>{throw new AxiosError$1(`Response type '${j}' is not supported`,AxiosError$1.ERR_NOT_SUPPORT,et)})})})(new Response);const getBodyLength=async a=>{if(a==null)return 0;if(utils$1.isBlob(a))return a.size;if(utils$1.isSpecCompliantForm(a))return(await new Request(a).arrayBuffer()).byteLength;if(utils$1.isArrayBufferView(a)||utils$1.isArrayBuffer(a))return a.byteLength;if(utils$1.isURLSearchParams(a)&&(a=a+""),utils$1.isString(a))return(await encodeText(a)).byteLength},resolveBodyLength=async(a,j)=>{const _e=utils$1.toFiniteNumber(a.getContentLength());return _e??getBodyLength(j)},fetchAdapter=isFetchSupported&&(async a=>{let{url:j,method:_e,data:et,signal:nt,cancelToken:tt,timeout:it,onDownloadProgress:ut,onUploadProgress:ft,responseType:pt,headers:dt,withCredentials:mt="same-origin",fetchOptions:Et}=resolveConfig(a);pt=pt?(pt+"").toLowerCase():"text";let[wt,St]=nt||tt||it?composeSignals([nt,tt],it):[],Ct,Dt;const At=()=>{!Ct&&setTimeout(()=>{wt&&wt.unsubscribe()}),Ct=!0};let Pt;try{if(ft&&supportsRequestStream&&_e!=="get"&&_e!=="head"&&(Pt=await resolveBodyLength(dt,et))!==0){let Ht=new Request(j,{method:"POST",body:et,duplex:"half"}),Qt;if(utils$1.isFormData(et)&&(Qt=Ht.headers.get("content-type"))&&dt.setContentType(Qt),Ht.body){const[tn,mn]=progressEventDecorator(Pt,progressEventReducer(asyncDecorator(ft)));et=trackStream(Ht.body,DEFAULT_CHUNK_SIZE,tn,mn,encodeText)}}utils$1.isString(mt)||(mt=mt?"include":"omit");const It="credentials"in Request.prototype;Dt=new Request(j,{...Et,signal:wt,method:_e.toUpperCase(),headers:dt.normalize().toJSON(),body:et,duplex:"half",credentials:It?mt:void 0});let Lt=await fetch(Dt);const zt=supportsResponseStream&&(pt==="stream"||pt==="response");if(supportsResponseStream&&(ut||zt)){const Ht={};["status","statusText","headers"].forEach($t=>{Ht[$t]=Lt[$t]});const Qt=utils$1.toFiniteNumber(Lt.headers.get("content-length")),[tn,mn]=ut&&progressEventDecorator(Qt,progressEventReducer(asyncDecorator(ut),!0))||[];Lt=new Response(trackStream(Lt.body,DEFAULT_CHUNK_SIZE,tn,()=>{mn&&mn(),zt&&At()},encodeText),Ht)}pt=pt||"text";let Ft=await resolvers[utils$1.findKey(resolvers,pt)||"text"](Lt,a);return!zt&&At(),St&&St(),await new Promise((Ht,Qt)=>{settle(Ht,Qt,{data:Ft,headers:AxiosHeaders$1.from(Lt.headers),status:Lt.status,statusText:Lt.statusText,config:a,request:Dt})})}catch(It){throw At(),It&&It.name==="TypeError"&&/fetch/i.test(It.message)?Object.assign(new AxiosError$1("Network Error",AxiosError$1.ERR_NETWORK,a,Dt),{cause:It.cause||It}):AxiosError$1.from(It,It&&It.code,a,Dt)}}),knownAdapters={http:httpAdapter,xhr:xhrAdapter,fetch:fetchAdapter};utils$1.forEach(knownAdapters,(a,j)=>{if(a){try{Object.defineProperty(a,"name",{value:j})}catch{}Object.defineProperty(a,"adapterName",{value:j})}});const renderReason=a=>`- ${a}`,isResolvedHandle=a=>utils$1.isFunction(a)||a===null||a===!1,adapters={getAdapter:a=>{a=utils$1.isArray(a)?a:[a];const{length:j}=a;let _e,et;const nt={};for(let tt=0;tt<j;tt++){_e=a[tt];let it;if(et=_e,!isResolvedHandle(_e)&&(et=knownAdapters[(it=String(_e)).toLowerCase()],et===void 0))throw new AxiosError$1(`Unknown adapter '${it}'`);if(et)break;nt[it||"#"+tt]=et}if(!et){const tt=Object.entries(nt).map(([ut,ft])=>`adapter ${ut} `+(ft===!1?"is not supported by the environment":"is not available in the build"));let it=j?tt.length>1?`since :
|
|
277
277
|
`+tt.map(renderReason).join(`
|
|
278
278
|
`):" "+renderReason(tt[0]):"as no adapter specified";throw new AxiosError$1("There is no suitable adapter to dispatch the request "+it,"ERR_NOT_SUPPORT")}return et},adapters:knownAdapters};function throwIfCancellationRequested(a){if(a.cancelToken&&a.cancelToken.throwIfRequested(),a.signal&&a.signal.aborted)throw new CanceledError$1(null,a)}function dispatchRequest(a){return throwIfCancellationRequested(a),a.headers=AxiosHeaders$1.from(a.headers),a.data=transformData.call(a,a.transformRequest),["post","put","patch"].indexOf(a.method)!==-1&&a.headers.setContentType("application/x-www-form-urlencoded",!1),adapters.getAdapter(a.adapter||defaults$1.adapter)(a).then(function(et){return throwIfCancellationRequested(a),et.data=transformData.call(a,a.transformResponse,et),et.headers=AxiosHeaders$1.from(et.headers),et},function(et){return isCancel$1(et)||(throwIfCancellationRequested(a),et&&et.response&&(et.response.data=transformData.call(a,a.transformResponse,et.response),et.response.headers=AxiosHeaders$1.from(et.response.headers))),Promise.reject(et)})}const VERSION$1="1.7.5",validators$1={};["object","boolean","number","function","string","symbol"].forEach((a,j)=>{validators$1[a]=function(et){return typeof et===a||"a"+(j<1?"n ":" ")+a}});const deprecatedWarnings={};validators$1.transitional=function a(j,_e,et){function nt(tt,it){return"[Axios v"+VERSION$1+"] Transitional option '"+tt+"'"+it+(et?". "+et:"")}return(tt,it,ut)=>{if(j===!1)throw new AxiosError$1(nt(it," has been removed"+(_e?" in "+_e:"")),AxiosError$1.ERR_DEPRECATED);return _e&&!deprecatedWarnings[it]&&(deprecatedWarnings[it]=!0,console.warn(nt(it," has been deprecated since v"+_e+" and will be removed in the near future"))),j?j(tt,it,ut):!0}};function assertOptions(a,j,_e){if(typeof a!="object")throw new AxiosError$1("options must be an object",AxiosError$1.ERR_BAD_OPTION_VALUE);const et=Object.keys(a);let nt=et.length;for(;nt-- >0;){const tt=et[nt],it=j[tt];if(it){const ut=a[tt],ft=ut===void 0||it(ut,tt,a);if(ft!==!0)throw new AxiosError$1("option "+tt+" must be "+ft,AxiosError$1.ERR_BAD_OPTION_VALUE);continue}if(_e!==!0)throw new AxiosError$1("Unknown option "+tt,AxiosError$1.ERR_BAD_OPTION)}}const validator={assertOptions,validators:validators$1},validators=validator.validators;let Axios$1=class{constructor(j){this.defaults=j,this.interceptors={request:new InterceptorManager,response:new InterceptorManager}}async request(j,_e){try{return await this._request(j,_e)}catch(et){if(et instanceof Error){let nt;Error.captureStackTrace?Error.captureStackTrace(nt={}):nt=new Error;const tt=nt.stack?nt.stack.replace(/^.+\n/,""):"";try{et.stack?tt&&!String(et.stack).endsWith(tt.replace(/^.+\n.+\n/,""))&&(et.stack+=`
|
|
279
|
-
`+tt):et.stack=tt}catch{}}throw et}}_request(j,_e){typeof j=="string"?(_e=_e||{},_e.url=j):_e=j||{},_e=mergeConfig$1(this.defaults,_e);const{transitional:et,paramsSerializer:nt,headers:tt}=_e;et!==void 0&&validator.assertOptions(et,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),nt!=null&&(utils$1.isFunction(nt)?_e.paramsSerializer={serialize:nt}:validator.assertOptions(nt,{encode:validators.function,serialize:validators.function},!0)),_e.method=(_e.method||this.defaults.method||"get").toLowerCase();let it=tt&&utils$1.merge(tt.common,tt[_e.method]);tt&&utils$1.forEach(["delete","get","head","post","put","patch","common"],St=>{delete tt[St]}),_e.headers=AxiosHeaders$1.concat(it,tt);const ut=[];let ft=!0;this.interceptors.request.forEach(function(Ct){typeof Ct.runWhen=="function"&&Ct.runWhen(_e)===!1||(ft=ft&&Ct.synchronous,ut.unshift(Ct.fulfilled,Ct.rejected))});const pt=[];this.interceptors.response.forEach(function(Ct){pt.push(Ct.fulfilled,Ct.rejected)});let dt,mt=0,Et;if(!ft){const St=[dispatchRequest.bind(this),void 0];for(St.unshift.apply(St,ut),St.push.apply(St,pt),Et=St.length,dt=Promise.resolve(_e);mt<Et;)dt=dt.then(St[mt++],St[mt++]);return dt}Et=ut.length;let wt=_e;for(mt=0;mt<Et;){const St=ut[mt++],Ct=ut[mt++];try{wt=St(wt)}catch(Dt){Ct.call(this,Dt);break}}try{dt=dispatchRequest.call(this,wt)}catch(St){return Promise.reject(St)}for(mt=0,Et=pt.length;mt<Et;)dt=dt.then(pt[mt++],pt[mt++]);return dt}getUri(j){j=mergeConfig$1(this.defaults,j);const _e=buildFullPath(j.baseURL,j.url);return buildURL(_e,j.params,j.paramsSerializer)}};utils$1.forEach(["delete","get","head","options"],function a(j){Axios$1.prototype[j]=function(_e,et){return this.request(mergeConfig$1(et||{},{method:j,url:_e,data:(et||{}).data}))}});utils$1.forEach(["post","put","patch"],function a(j){function _e(et){return function(tt,it,ut){return this.request(mergeConfig$1(ut||{},{method:j,headers:et?{"Content-Type":"multipart/form-data"}:{},url:tt,data:it}))}}Axios$1.prototype[j]=_e(),Axios$1.prototype[j+"Form"]=_e(!0)});let CancelToken$1=class Zm{constructor(j){if(typeof j!="function")throw new TypeError("executor must be a function.");let _e;this.promise=new Promise(function(tt){_e=tt});const et=this;this.promise.then(nt=>{if(!et._listeners)return;let tt=et._listeners.length;for(;tt-- >0;)et._listeners[tt](nt);et._listeners=null}),this.promise.then=nt=>{let tt;const it=new Promise(ut=>{et.subscribe(ut),tt=ut}).then(nt);return it.cancel=function(){et.unsubscribe(tt)},it},j(function(tt,it,ut){et.reason||(et.reason=new CanceledError$1(tt,it,ut),_e(et.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(j){if(this.reason){j(this.reason);return}this._listeners?this._listeners.push(j):this._listeners=[j]}unsubscribe(j){if(!this._listeners)return;const _e=this._listeners.indexOf(j);_e!==-1&&this._listeners.splice(_e,1)}static source(){let j;return{token:new Zm(function(nt){j=nt}),cancel:j}}};function spread$1(a){return function(_e){return a.apply(null,_e)}}function isAxiosError$1(a){return utils$1.isObject(a)&&a.isAxiosError===!0}const HttpStatusCode$1={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode$1).forEach(([a,j])=>{HttpStatusCode$1[j]=a});function createInstance(a){const j=new Axios$1(a),_e=bind(Axios$1.prototype.request,j);return utils$1.extend(_e,Axios$1.prototype,j,{allOwnKeys:!0}),utils$1.extend(_e,j,null,{allOwnKeys:!0}),_e.create=function(nt){return createInstance(mergeConfig$1(a,nt))},_e}const axios$4=createInstance(defaults$1);axios$4.Axios=Axios$1;axios$4.CanceledError=CanceledError$1;axios$4.CancelToken=CancelToken$1;axios$4.isCancel=isCancel$1;axios$4.VERSION=VERSION$1;axios$4.toFormData=toFormData$1;axios$4.AxiosError=AxiosError$1;axios$4.Cancel=axios$4.CanceledError;axios$4.all=function a(j){return Promise.all(j)};axios$4.spread=spread$1;axios$4.isAxiosError=isAxiosError$1;axios$4.mergeConfig=mergeConfig$1;axios$4.AxiosHeaders=AxiosHeaders$1;axios$4.formToJSON=a=>formDataToJSON(utils$1.isHTMLForm(a)?new FormData(a):a);axios$4.getAdapter=adapters.getAdapter;axios$4.HttpStatusCode=HttpStatusCode$1;axios$4.default=axios$4;const{Axios,AxiosError,CanceledError,isCancel,CancelToken,VERSION,all,Cancel,isAxiosError,spread,toFormData,AxiosHeaders,HttpStatusCode,formToJSON,getAdapter,mergeConfig}=axios$4,axios$3=Object.freeze(Object.defineProperty({__proto__:null,Axios,AxiosError,AxiosHeaders,Cancel,CancelToken,CanceledError,HttpStatusCode,VERSION,all,default:axios$4,formToJSON,getAdapter,isAxiosError,isCancel,mergeConfig,spread,toFormData},Symbol.toStringTag,{value:"Module"}));var __defProp$2$1=Object.defineProperty,__defNormalProp$2=(a,j,_e)=>j in a?__defProp$2$1(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField$2=(a,j,_e)=>(__defNormalProp$2(a,j+"",_e),_e);class AuthService{constructor({api:j}){__publicField$2(this,"api"),this.api=j}async getUserPublicInfo({did:j}){const{data:_e}=await this.api.get("/api/user",{params:{did:j}});return _e}async getUserPrivacyConfig({did:j}){const{data:_e}=await this.api.get("/api/user/privacy/config",{params:{did:j}});return _e}async saveUserPrivacyConfig(j){const{data:_e}=await this.api.post("/api/user/privacy/config",j);return _e}async getUserNotificationConfig(){const{data:j}=await this.api.get("/api/user/notification/config");return j}async saveUserNotificationConfig(j){const{data:_e}=await this.api.post("/api/user/notification/config",j);return _e}async testNotificationWebhook(j){const{data:_e}=await this.api.put("/api/user/notification/webhook",j);return _e}async getProfileUrl({did:j,locale:_e}){const et=`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/user`;return withQuery(et,{did:j,locale:_e})}async getProfile(){const{data:j}=await this.api.get("/api/user/profile");return j}async refreshProfile(){await this.api.put("/api/user/refreshProfile")}async saveProfile({locale:j,inviter:_e}){const{data:et}=await this.api.put("/api/user/profile",{locale:j,inviter:_e});return et}async logout({visitorId:j}){const{data:_e}=await this.api.post("/api/user/logout",{visitorId:j});return _e}}class TokenService{getSessionToken(){return api$2.get(constant$3.SESSION_TOKEN_STORAGE_KEY)}setSessionToken(j){api$2.set(constant$3.SESSION_TOKEN_STORAGE_KEY,j)}removeSessionToken(){api$2.remove(constant$3.SESSION_TOKEN_STORAGE_KEY)}getRefreshToken(){return localStorage.getItem(constant$3.REFRESH_TOKEN_STORAGE_KEY)}setRefreshToken(j){localStorage.setItem(constant$3.REFRESH_TOKEN_STORAGE_KEY,j)}removeRefreshToken(){localStorage.removeItem(constant$3.REFRESH_TOKEN_STORAGE_KEY)}}var __defProp$1$1=Object.defineProperty,__defNormalProp$1=(a,j,_e)=>j in a?__defProp$1$1(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField$1=(a,j,_e)=>(__defNormalProp$1(a,j+"",_e),_e);class UserSessionService{constructor({api:j}){__publicField$1(this,"api"),this.api=j}async getUserSessions({did:j}){const{data:_e}=await this.api.get("/api/user-session",{params:{userDid:j}});return _e}}const blockletCache=new QuickLRU({maxSize:30,maxAge:60*1e3});class BlockletService{async getBlocklet(j,_e=!1){if(!j){if(typeof window>"u"||typeof document>"u")throw new Error("Cannot get blocklet in server side without baseUrl");return window.blocklet}if(!_e&&blockletCache.has(j))return blockletCache.get(j);const et=withQuery(joinURL(j,"__blocklet__.js"),{type:"json",t:Date.now()}),tt=await(await fetch(et)).json();return blockletCache.set(j,tt),tt}async loadBlocklet(){return new Promise((j,_e)=>{if(typeof window>"u"||typeof document>"u"){_e();return}const et=document.createElement("script");let nt="/";window.blocklet&&window.blocklet.prefix&&(nt=window.blocklet.prefix),et.src=withQuery(joinURL(nt,"__blocklet__.js"),{t:Date.now()}),et.onload=()=>{j()},et.onerror=()=>{_e()},document.head.append(et)})}getPrefix(j){var _e;return j?(j==null?void 0:j.prefix)||"/":typeof window>"u"||typeof document>"u"?null:((_e=window.blocklet)==null?void 0:_e.prefix)||"/"}}const version$3="1.16.30",sleep$2=(a=0)=>new Promise(j=>{setTimeout(()=>{j()},a)}),getBearerToken=a=>`Bearer ${encodeURIComponent(a)}`,visitorIdKey="__visitor_id",getVisitorId$1=()=>localStorage.getItem(visitorIdKey);async function sleepForLoading(a,j=300){a.metaData.endTime=+new Date;const{startTime:_e,endTime:et}=a.metaData,nt=et-_e;nt<j&&await sleep$2(j-nt),delete a.metaData}const createAxios$1=(a,j)=>{const _e={...a==null?void 0:a.headers,"x-blocklet-js-sdk-version":version$3},et=getVisitorId$1();[void 0,null].includes(et)||(_e["x-blocklet-visitor-id"]=et);const nt=axios$4.create({...a,headers:_e});return j!=null&&j.lazy&&(nt.interceptors.request.use(tt=>(tt.metaData={startTime:+new Date},tt),tt=>Promise.reject(tt)),nt.interceptors.response.use(async tt=>(await sleepForLoading(tt.config,j==null?void 0:j.lazyTime),tt),async tt=>(await sleepForLoading(tt.response.config,j==null?void 0:j.lazyTime),Promise.reject(tt)))),nt};async function renewRefreshToken$1(a){if(!a)throw new Error("Refresh token not found");const j=createAxios$1({baseURL:constant$3.WELLKNOWN_SERVICE_PATH_PREFIX,timeout:10*1e3,headers:{authorization:getBearerToken(a)}}),{data:_e}=await j.post("/api/did/refreshSession");return _e}function createRequest$1({getSessionToken:a,setSessionToken:j,removeSessionToken:_e,getRefreshToken:et,setRefreshToken:nt,removeRefreshToken:tt,onRefreshTokenError:it,onRefreshTokenSuccess:ut},ft,pt){let dt=null;const mt=createAxios$1({timeout:30*1e3,...ft},pt);return mt.interceptors.request.use(async Et=>{if(!api$2.get(constant$3.SESSION_TOKEN_STORAGE_KEY)){const wt=a();wt&&(Et.headers.authorization=getBearerToken(wt))}return dt&&await dt,Et},Et=>Promise.reject(Et)),mt.interceptors.response.use(Et=>Et,async Et=>{var St;const wt=Et.config;if(wt.headers={...wt==null?void 0:wt.headers},((St=Et==null?void 0:Et.response)==null?void 0:St.status)===401&&!wt._retry){wt._retry=!0;try{dt||(dt=renewRefreshToken$1(et()));const Ct=await dt;return j(Ct.nextToken),nt(Ct.nextRefreshToken),typeof ut=="function"&&ut(Ct),mt(wt)}catch(Ct){return _e(),tt(),typeof it=="function"&&it(Ct),Promise.reject(Et)}finally{dt=null}}return Promise.reject(Et)}),mt}var __defProp$3=Object.defineProperty,__defNormalProp$3=(a,j,_e)=>j in a?__defProp$3(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField=(a,j,_e)=>(__defNormalProp$3(a,typeof j!="symbol"?j+"":j,_e),_e);class BlockletSDK{constructor(){__publicField(this,"api"),__publicField(this,"user"),__publicField(this,"userSession"),__publicField(this,"token"),__publicField(this,"blocklet");const j=new TokenService,_e=createRequest$1({getSessionToken:j.getSessionToken,setSessionToken:j.setSessionToken,removeSessionToken:j.removeSessionToken,getRefreshToken:j.getRefreshToken,setRefreshToken:j.setRefreshToken,removeRefreshToken:j.removeRefreshToken,onRefreshTokenError:()=>{console.error("Failed to refresh token")},onRefreshTokenSuccess:()=>{}},{baseURL:constant$3.WELLKNOWN_SERVICE_PATH_PREFIX});this.user=new AuthService({api:_e}),this.userSession=new UserSessionService({api:_e}),this.token=j,this.api=_e,this.blocklet=new BlockletService}}function createAxios$2(a={},j={}){const _e=new TokenService,et=new BlockletService;return a.baseURL===void 0&&(a.baseURL=et.getPrefix()),createRequest$1({getSessionToken:_e.getSessionToken,setSessionToken:_e.setSessionToken,removeSessionToken:_e.removeSessionToken,getRefreshToken:_e.getRefreshToken,setRefreshToken:_e.setRefreshToken,removeRefreshToken:_e.removeRefreshToken,onRefreshTokenError:()=>{console.error("Failed to refresh token")},onRefreshTokenSuccess:()=>{}},a,j)}const name="@arcblock/did-connect",version$2="2.10.28",description="Client side library to work with DID Connect by ArcBlock.",keywords=["react","arcblock","component"],author="wangshijun<wangshijun2010@gmail.com>",homepage="https://github.com/ArcBlock/ux#readme",license="Apache-2.0",main="lib/index.js",module$1="lib/index.js",repository={type:"git",url:"git+https://github.com/ArcBlock/ux.git"},scripts={lint:"eslint src tests --ext js --ext jsx","lint:fix":"npm run lint -- --fix",build:"babel --config-file ./babel.config.es.js src --out-dir lib --copy-files --no-copy-ignored",autoexports:"node tools/auto-exports.js",watch:"babel --config-file ./babel.config.es.js src --out-dir lib -w --copy-files --no-copy-ignored",precommit:"CI=1 npm run lint",prepush:"CI=1 npm run lint",prepublish:"npm run build",test:"node tools/jest.js",coverage:"npm run test -- --coverage"},bugs={url:"https://github.com/ArcBlock/ux/issues"},dependencies={"@arcblock/bridge":"^2.10.28","@arcblock/icons":"^2.10.28","@arcblock/react-hooks":"^2.10.28","@arcblock/ws":"^1.18.135","@fontsource/inter":"^5.0.16","@iconify-icons/logos":"^1.2.36","@iconify-icons/material-symbols":"^1.2.58","@iconify/react":"^4.1.1",ahooks:"^3.7.10",axios:"^1.7.5",buffer:"^6.0.3","core-js":"^3.25.5",eventemitter3:"^5.0.1","js-cookie":"^2.2.1","jwt-decode":"^3.1.2",lodash:"^4.17.21","mdi-material-ui":"^7.5.0","p-queue":"^6.6.2","p-wait-for":"^5.0.2","path-to-regexp":"^1.8.0",semver:"^7.6.3",tweetnacl:"^1.0.3","tweetnacl-sealedbox-js":"^1.2.0",ufo:"^1.5.3"},peerDependencies={"@arcblock/ux":"^2.9.79","@blocklet/js-sdk":"^1.16.30","@emotion/react":"^11.10.4","@emotion/styled":"^11.10.4","@mui/material":"^5.15.0",react:"^18.2.0","react-dom":"^18.2.0"},publishConfig={access:"public"},devDependencies={"@babel/cli":"^7.19.3","@babel/core":"^7.19.3","@babel/preset-env":"^7.19.3","@babel/preset-react":"^7.18.6","eslint-plugin-react-hooks":"^4.6.0",glob:"^10.3.3",jest:"^28.1.3"},gitHead="71cb15e455bd2f3bdf906c14ae4ef87f9da9c271",pkg={name,version:version$2,description,keywords,author,homepage,license,main,module:module$1,repository,scripts,bugs,dependencies,peerDependencies,publishConfig,devDependencies,gitHead},DEFAULT_TIMEOUT$1=5*60,DEFAULT_WINDOW_TIMEOUT=30*60,AUTH_SERVICE_PREFIX="/.well-known/service",SESSION_TOKEN_STORAGE_KEY="login_token",REFRESH_TOKEN_STORAGE_KEY="refresh_token",RELAY_SOCKET_PREFIX="/.well-known/service",API_DID_PREFIX="/api/did",DEFAULT_NAME="DID Connect",DID_CONNECT_URL_PARAMS_NAME="__did-connect__";class NotOpenError extends Error{constructor(){super("Failed to open popup")}}const{version:version$1}=pkg;function unescape$2(a){return(a+"===".slice((a.length+3)%4)).replace(/-/g,"+").replace(/_/g,"/")}function escape$3(a){return a.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}const decodeConnectUrl=a=>window.atob(unescape$2(a)),parseTokenFromConnectUrl=a=>{const j=new URL(a),_e=decodeURIComponent(j.searchParams.get("url"));return new URL(_e).searchParams.get("_t_")},getAppId$1=(a,j)=>{var et,nt,tt;let _e=j==null?void 0:j.publisher;if(!_e){if(a!=null&&a.agentDid)return a.agentDid;_e=a==null?void 0:a.publisher}return _e?_e.replace("did:abt:",""):((et=globalThis.blocklet)==null?void 0:et.appPid)||((nt=globalThis.blocklet)==null?void 0:nt.appId)||((tt=globalThis.env)==null?void 0:tt.appId)||""},getConnectedInfo=a=>{var _e;const j={connected_did:a.did||"",connected_pk:a.pk||"",connected_app:getAppId$1(a.appInfo,a.memberAppInfo)};return(_e=a==null?void 0:a.connectedWallet)!=null&&_e.os&&(j.connected_wallet_os=a.connectedWallet.os),j},updateConnectedInfo=(a,j=!1)=>{if(!a)return;j||(a=getConnectedInfo(a));const _e=getCookieOptions({expireInDays:7,returnDomain:!1});isNil$1(a.connected_did)||Cookies.set("connected_did",a.connected_did,_e),isNil$1(a.connected_pk)||Cookies.set("connected_pk",a.connected_pk,_e),isNil$1(a.connected_app)||Cookies.set("connected_app",a.connected_app,_e),a.connected_wallet_os&&Cookies.set("connected_wallet_os",a.connected_wallet_os,_e)},encodeKey=a=>escape$3(Buffer$1$1.from(a).toString("base64")),decodeKey=a=>Uint8Array.from(Buffer$1$1.from(unescape$2(a),"base64")),decrypt$1=(a,j,_e)=>{const et=SealedBox.open(Uint8Array.from(Buffer$1$1.from(a,"base64")),decodeKey(j),decodeKey(_e));return JSON.parse(Buffer$1$1.from(et).toString("utf8"))},encrypt=(a,j)=>Buffer$1$1.from(SealedBox.seal(Uint8Array.from(Buffer$1$1.from(a)),decodeKey(j))).toString("base64"),parseNextWorkflow=(a,j="_t_")=>{const _e=new URL(a),et={baseUrl:_e.origin,prefix:_e.pathname.replace(/\/auth$/,""),token:_e.searchParams.get(j)||""};if(!et.baseUrl)throw new Error("Invalid next workflow: origin empty");if(!et.token)throw new Error("Invalid next workflow: token not found");return et},getApiErrorMessage=(a,j)=>{var et;let _e=a.message;return a.response&&(_e=((et=a.response)==null?void 0:et.data)||j),_e},createAxios=(a={},{lazy:j=!1,lazyTime:_e=300}={})=>createAxios$2({...a,headers:{...a.headers,"x-did-connect-version":version$1}},{lazy:j,lazyTime:_e}),sleep$1=(a=0)=>new Promise(j=>{setTimeout(()=>{j()},a)});function getBrowserLang(){if(typeof window>"u")return null;const a=window.navigator.languages&&window.navigator.languages[0]||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage||window.navigator.systemLanguage||null;return{"zh-CN":"zh","zh-TW":"zh",zh:"zh",en:"en"}[a]||"en"}async function decodeUrlParams(){const a=window.location.href;try{const j=new URL(a),_e=j.searchParams.get(DID_CONNECT_URL_PARAMS_NAME);if(_e){j.searchParams.delete(DID_CONNECT_URL_PARAMS_NAME);const et=JSON.parse(Buffer$1$1.from(_e,"base64").toString("utf-8"));if(isString$2(et.forceConnected)&&isUndefined$2(et.sourceAppPid)){const tt=await new BlockletSDK().user.getUserPublicInfo({did:et.forceConnected});isUndefined$2(tt==null?void 0:tt.sourceAppPid)||(et.sourceAppPid=tt.sourceAppPid)}return{params:et,url:j.href}}}catch{console.warn("Failed to decode did-connect url params")}return{params:null,url:a}}const openPopup=(a,{width:j=600,height:_e=700,name:et="did-connect:popup"}={})=>{const nt=window.screenX+(window.innerWidth-j)/2,tt=window.screenY+(window.innerHeight-_e)/2,it=[`left=${nt}`,`top=${tt}`,`width=${j}`,`height=${_e}`,"resizable=no","scrollbars=yes","status=yes","popup=yes"],ut=window.open("",et,it.join(","));if(ut===null)throw new NotOpenError;return ut.location.href=a,ut},runPopup=a=>new Promise((j,_e)=>{let et,nt;const tt=({data:it})=>{if(it&&it.type==="authorization_response"){if(it!=null&&it.error){console.error(it.error);return}setTimeout(()=>{var ut;(ut=a.popup)==null||ut.close(),clearTimeout(nt),clearInterval(et),window.removeEventListener("message",tt,!1),j(it)},a.closeTimeout||0)}};nt=setTimeout(()=>{clearInterval(et),_e(new Error("Timeout")),window.removeEventListener("message",tt,!1)},(a.timeoutInSeconds||DEFAULT_WINDOW_TIMEOUT)*1e3),et=setInterval(()=>{var it;(it=a.popup)!=null&&it.closed&&(clearInterval(et),clearTimeout(nt),window.removeEventListener("message",tt,!1),_e(new Error("Popup closed")))},1e3),window.addEventListener("message",tt)}),keyPair=tweetnacl.box.keyPair();function useSecurity(){const[a,j]=useLocalStorageState("__encKey",{defaultValue:encodeKey(keyPair.publicKey),deserializer:it=>it,serializer:it=>it}),[_e,et]=useLocalStorageState("__decKey",{defaultValue:encodeKey(keyPair.secretKey),deserializer:it=>it,serializer:it=>it});return reactExports.useEffect(()=>{localStorage.getItem("__encKey")||j(encodeKey(keyPair.publicKey)),localStorage.getItem("__decKey")||et(encodeKey(keyPair.secretKey))},[]),{encryptKey:a,decryptKey:_e,decrypt:(it,ut=a,ft=_e)=>decrypt$1(it,ut,ft),encrypt:(it,ut=a)=>encrypt(it,ut)}}var lodash={exports:{}};/**
|
|
279
|
+
`+tt):et.stack=tt}catch{}}throw et}}_request(j,_e){typeof j=="string"?(_e=_e||{},_e.url=j):_e=j||{},_e=mergeConfig$1(this.defaults,_e);const{transitional:et,paramsSerializer:nt,headers:tt}=_e;et!==void 0&&validator.assertOptions(et,{silentJSONParsing:validators.transitional(validators.boolean),forcedJSONParsing:validators.transitional(validators.boolean),clarifyTimeoutError:validators.transitional(validators.boolean)},!1),nt!=null&&(utils$1.isFunction(nt)?_e.paramsSerializer={serialize:nt}:validator.assertOptions(nt,{encode:validators.function,serialize:validators.function},!0)),_e.method=(_e.method||this.defaults.method||"get").toLowerCase();let it=tt&&utils$1.merge(tt.common,tt[_e.method]);tt&&utils$1.forEach(["delete","get","head","post","put","patch","common"],St=>{delete tt[St]}),_e.headers=AxiosHeaders$1.concat(it,tt);const ut=[];let ft=!0;this.interceptors.request.forEach(function(Ct){typeof Ct.runWhen=="function"&&Ct.runWhen(_e)===!1||(ft=ft&&Ct.synchronous,ut.unshift(Ct.fulfilled,Ct.rejected))});const pt=[];this.interceptors.response.forEach(function(Ct){pt.push(Ct.fulfilled,Ct.rejected)});let dt,mt=0,Et;if(!ft){const St=[dispatchRequest.bind(this),void 0];for(St.unshift.apply(St,ut),St.push.apply(St,pt),Et=St.length,dt=Promise.resolve(_e);mt<Et;)dt=dt.then(St[mt++],St[mt++]);return dt}Et=ut.length;let wt=_e;for(mt=0;mt<Et;){const St=ut[mt++],Ct=ut[mt++];try{wt=St(wt)}catch(Dt){Ct.call(this,Dt);break}}try{dt=dispatchRequest.call(this,wt)}catch(St){return Promise.reject(St)}for(mt=0,Et=pt.length;mt<Et;)dt=dt.then(pt[mt++],pt[mt++]);return dt}getUri(j){j=mergeConfig$1(this.defaults,j);const _e=buildFullPath(j.baseURL,j.url);return buildURL(_e,j.params,j.paramsSerializer)}};utils$1.forEach(["delete","get","head","options"],function a(j){Axios$1.prototype[j]=function(_e,et){return this.request(mergeConfig$1(et||{},{method:j,url:_e,data:(et||{}).data}))}});utils$1.forEach(["post","put","patch"],function a(j){function _e(et){return function(tt,it,ut){return this.request(mergeConfig$1(ut||{},{method:j,headers:et?{"Content-Type":"multipart/form-data"}:{},url:tt,data:it}))}}Axios$1.prototype[j]=_e(),Axios$1.prototype[j+"Form"]=_e(!0)});let CancelToken$1=class Zm{constructor(j){if(typeof j!="function")throw new TypeError("executor must be a function.");let _e;this.promise=new Promise(function(tt){_e=tt});const et=this;this.promise.then(nt=>{if(!et._listeners)return;let tt=et._listeners.length;for(;tt-- >0;)et._listeners[tt](nt);et._listeners=null}),this.promise.then=nt=>{let tt;const it=new Promise(ut=>{et.subscribe(ut),tt=ut}).then(nt);return it.cancel=function(){et.unsubscribe(tt)},it},j(function(tt,it,ut){et.reason||(et.reason=new CanceledError$1(tt,it,ut),_e(et.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(j){if(this.reason){j(this.reason);return}this._listeners?this._listeners.push(j):this._listeners=[j]}unsubscribe(j){if(!this._listeners)return;const _e=this._listeners.indexOf(j);_e!==-1&&this._listeners.splice(_e,1)}static source(){let j;return{token:new Zm(function(nt){j=nt}),cancel:j}}};function spread$1(a){return function(_e){return a.apply(null,_e)}}function isAxiosError$1(a){return utils$1.isObject(a)&&a.isAxiosError===!0}const HttpStatusCode$1={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(HttpStatusCode$1).forEach(([a,j])=>{HttpStatusCode$1[j]=a});function createInstance(a){const j=new Axios$1(a),_e=bind(Axios$1.prototype.request,j);return utils$1.extend(_e,Axios$1.prototype,j,{allOwnKeys:!0}),utils$1.extend(_e,j,null,{allOwnKeys:!0}),_e.create=function(nt){return createInstance(mergeConfig$1(a,nt))},_e}const axios$4=createInstance(defaults$1);axios$4.Axios=Axios$1;axios$4.CanceledError=CanceledError$1;axios$4.CancelToken=CancelToken$1;axios$4.isCancel=isCancel$1;axios$4.VERSION=VERSION$1;axios$4.toFormData=toFormData$1;axios$4.AxiosError=AxiosError$1;axios$4.Cancel=axios$4.CanceledError;axios$4.all=function a(j){return Promise.all(j)};axios$4.spread=spread$1;axios$4.isAxiosError=isAxiosError$1;axios$4.mergeConfig=mergeConfig$1;axios$4.AxiosHeaders=AxiosHeaders$1;axios$4.formToJSON=a=>formDataToJSON(utils$1.isHTMLForm(a)?new FormData(a):a);axios$4.getAdapter=adapters.getAdapter;axios$4.HttpStatusCode=HttpStatusCode$1;axios$4.default=axios$4;const{Axios,AxiosError,CanceledError,isCancel,CancelToken,VERSION,all,Cancel,isAxiosError,spread,toFormData,AxiosHeaders,HttpStatusCode,formToJSON,getAdapter,mergeConfig}=axios$4,axios$3=Object.freeze(Object.defineProperty({__proto__:null,Axios,AxiosError,AxiosHeaders,Cancel,CancelToken,CanceledError,HttpStatusCode,VERSION,all,default:axios$4,formToJSON,getAdapter,isAxiosError,isCancel,mergeConfig,spread,toFormData},Symbol.toStringTag,{value:"Module"}));var __defProp$2$1=Object.defineProperty,__defNormalProp$2=(a,j,_e)=>j in a?__defProp$2$1(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField$2=(a,j,_e)=>(__defNormalProp$2(a,j+"",_e),_e);class AuthService{constructor({api:j}){__publicField$2(this,"api"),this.api=j}async getUserPublicInfo({did:j}){const{data:_e}=await this.api.get("/api/user",{params:{did:j}});return _e}async getUserPrivacyConfig({did:j}){const{data:_e}=await this.api.get("/api/user/privacy/config",{params:{did:j}});return _e}async saveUserPrivacyConfig(j){const{data:_e}=await this.api.post("/api/user/privacy/config",j);return _e}async getUserNotificationConfig(){const{data:j}=await this.api.get("/api/user/notification/config");return j}async saveUserNotificationConfig(j){const{data:_e}=await this.api.post("/api/user/notification/config",j);return _e}async testNotificationWebhook(j){const{data:_e}=await this.api.put("/api/user/notification/webhook",j);return _e}async getProfileUrl({did:j,locale:_e}){const et=`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/user`;return withQuery(et,{did:j,locale:_e})}async getProfile(){const{data:j}=await this.api.get("/api/user/profile");return j}async refreshProfile(){await this.api.put("/api/user/refreshProfile")}async saveProfile({locale:j,inviter:_e}){const{data:et}=await this.api.put("/api/user/profile",{locale:j,inviter:_e});return et}async logout({visitorId:j}){const{data:_e}=await this.api.post("/api/user/logout",{visitorId:j});return _e}}class TokenService{getSessionToken(){return api$2.get(constant$3.SESSION_TOKEN_STORAGE_KEY)}setSessionToken(j){api$2.set(constant$3.SESSION_TOKEN_STORAGE_KEY,j)}removeSessionToken(){api$2.remove(constant$3.SESSION_TOKEN_STORAGE_KEY)}getRefreshToken(){return localStorage.getItem(constant$3.REFRESH_TOKEN_STORAGE_KEY)}setRefreshToken(j){localStorage.setItem(constant$3.REFRESH_TOKEN_STORAGE_KEY,j)}removeRefreshToken(){localStorage.removeItem(constant$3.REFRESH_TOKEN_STORAGE_KEY)}}var __defProp$1$1=Object.defineProperty,__defNormalProp$1=(a,j,_e)=>j in a?__defProp$1$1(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField$1=(a,j,_e)=>(__defNormalProp$1(a,j+"",_e),_e);class UserSessionService{constructor({api:j}){__publicField$1(this,"api"),this.api=j}async getUserSessions({did:j}){const{data:_e}=await this.api.get("/api/user-session",{params:{userDid:j}});return _e}}const blockletCache=new QuickLRU({maxSize:30,maxAge:60*1e3});class BlockletService{async getBlocklet(j,_e=!1){if(!j){if(typeof window>"u"||typeof document>"u")throw new Error("Cannot get blocklet in server side without baseUrl");return window.blocklet}if(!_e&&blockletCache.has(j))return blockletCache.get(j);const et=withQuery(joinURL(j,"__blocklet__.js"),{type:"json",t:Date.now()}),tt=await(await fetch(et)).json();return blockletCache.set(j,tt),tt}async loadBlocklet(){return new Promise((j,_e)=>{if(typeof window>"u"||typeof document>"u"){_e();return}const et=document.createElement("script");let nt="/";window.blocklet&&window.blocklet.prefix&&(nt=window.blocklet.prefix),et.src=withQuery(joinURL(nt,"__blocklet__.js"),{t:Date.now()}),et.onload=()=>{j()},et.onerror=()=>{_e()},document.head.append(et)})}getPrefix(j){var _e;return j?(j==null?void 0:j.prefix)||"/":typeof window>"u"||typeof document>"u"?null:((_e=window.blocklet)==null?void 0:_e.prefix)||"/"}}const version$3="1.16.31",sleep$2=(a=0)=>new Promise(j=>{setTimeout(()=>{j()},a)}),getBearerToken=a=>`Bearer ${encodeURIComponent(a)}`,visitorIdKey="__visitor_id",getVisitorId$1=()=>localStorage.getItem(visitorIdKey);async function sleepForLoading(a,j=300){a.metaData.endTime=+new Date;const{startTime:_e,endTime:et}=a.metaData,nt=et-_e;nt<j&&await sleep$2(j-nt),delete a.metaData}const createAxios$1=(a,j)=>{const _e={...a==null?void 0:a.headers,"x-blocklet-js-sdk-version":version$3},et=getVisitorId$1();[void 0,null].includes(et)||(_e["x-blocklet-visitor-id"]=et);const nt=axios$4.create({...a,headers:_e});return j!=null&&j.lazy&&(nt.interceptors.request.use(tt=>(tt.metaData={startTime:+new Date},tt),tt=>Promise.reject(tt)),nt.interceptors.response.use(async tt=>(await sleepForLoading(tt.config,j==null?void 0:j.lazyTime),tt),async tt=>(await sleepForLoading(tt.response.config,j==null?void 0:j.lazyTime),Promise.reject(tt)))),nt};async function renewRefreshToken$1(a){if(!a)throw new Error("Refresh token not found");const j=createAxios$1({baseURL:constant$3.WELLKNOWN_SERVICE_PATH_PREFIX,timeout:10*1e3,headers:{authorization:getBearerToken(a)}}),{data:_e}=await j.post("/api/did/refreshSession");return _e}function createRequest$1({getSessionToken:a,setSessionToken:j,removeSessionToken:_e,getRefreshToken:et,setRefreshToken:nt,removeRefreshToken:tt,onRefreshTokenError:it,onRefreshTokenSuccess:ut},ft,pt){let dt=null;const mt=createAxios$1({timeout:30*1e3,...ft},pt);return mt.interceptors.request.use(async Et=>{if(!api$2.get(constant$3.SESSION_TOKEN_STORAGE_KEY)){const wt=a();wt&&(Et.headers.authorization=getBearerToken(wt))}return dt&&await dt,Et},Et=>Promise.reject(Et)),mt.interceptors.response.use(Et=>Et,async Et=>{var St;const wt=Et.config;if(wt.headers={...wt==null?void 0:wt.headers},((St=Et==null?void 0:Et.response)==null?void 0:St.status)===401&&!wt._retry){wt._retry=!0;try{dt||(dt=renewRefreshToken$1(et()));const Ct=await dt;return j(Ct.nextToken),nt(Ct.nextRefreshToken),typeof ut=="function"&&ut(Ct),mt(wt)}catch(Ct){return _e(),tt(),typeof it=="function"&&it(Ct),Promise.reject(Et)}finally{dt=null}}return Promise.reject(Et)}),mt}var __defProp$3=Object.defineProperty,__defNormalProp$3=(a,j,_e)=>j in a?__defProp$3(a,j,{enumerable:!0,configurable:!0,writable:!0,value:_e}):a[j]=_e,__publicField=(a,j,_e)=>(__defNormalProp$3(a,typeof j!="symbol"?j+"":j,_e),_e);class BlockletSDK{constructor(){__publicField(this,"api"),__publicField(this,"user"),__publicField(this,"userSession"),__publicField(this,"token"),__publicField(this,"blocklet");const j=new TokenService,_e=createRequest$1({getSessionToken:j.getSessionToken,setSessionToken:j.setSessionToken,removeSessionToken:j.removeSessionToken,getRefreshToken:j.getRefreshToken,setRefreshToken:j.setRefreshToken,removeRefreshToken:j.removeRefreshToken,onRefreshTokenError:()=>{console.error("Failed to refresh token")},onRefreshTokenSuccess:()=>{}},{baseURL:constant$3.WELLKNOWN_SERVICE_PATH_PREFIX});this.user=new AuthService({api:_e}),this.userSession=new UserSessionService({api:_e}),this.token=j,this.api=_e,this.blocklet=new BlockletService}}function createAxios$2(a={},j={}){const _e=new TokenService,et=new BlockletService;return a.baseURL===void 0&&(a.baseURL=et.getPrefix()),createRequest$1({getSessionToken:_e.getSessionToken,setSessionToken:_e.setSessionToken,removeSessionToken:_e.removeSessionToken,getRefreshToken:_e.getRefreshToken,setRefreshToken:_e.setRefreshToken,removeRefreshToken:_e.removeRefreshToken,onRefreshTokenError:()=>{console.error("Failed to refresh token")},onRefreshTokenSuccess:()=>{}},a,j)}const name="@arcblock/did-connect",version$2="2.10.28",description="Client side library to work with DID Connect by ArcBlock.",keywords=["react","arcblock","component"],author="wangshijun<wangshijun2010@gmail.com>",homepage="https://github.com/ArcBlock/ux#readme",license="Apache-2.0",main="lib/index.js",module$1="lib/index.js",repository={type:"git",url:"git+https://github.com/ArcBlock/ux.git"},scripts={lint:"eslint src tests --ext js --ext jsx","lint:fix":"npm run lint -- --fix",build:"babel --config-file ./babel.config.es.js src --out-dir lib --copy-files --no-copy-ignored",autoexports:"node tools/auto-exports.js",watch:"babel --config-file ./babel.config.es.js src --out-dir lib -w --copy-files --no-copy-ignored",precommit:"CI=1 npm run lint",prepush:"CI=1 npm run lint",prepublish:"npm run build",test:"node tools/jest.js",coverage:"npm run test -- --coverage"},bugs={url:"https://github.com/ArcBlock/ux/issues"},dependencies={"@arcblock/bridge":"^2.10.28","@arcblock/icons":"^2.10.28","@arcblock/react-hooks":"^2.10.28","@arcblock/ws":"^1.18.135","@fontsource/inter":"^5.0.16","@iconify-icons/logos":"^1.2.36","@iconify-icons/material-symbols":"^1.2.58","@iconify/react":"^4.1.1",ahooks:"^3.7.10",axios:"^1.7.5",buffer:"^6.0.3","core-js":"^3.25.5",eventemitter3:"^5.0.1","js-cookie":"^2.2.1","jwt-decode":"^3.1.2",lodash:"^4.17.21","mdi-material-ui":"^7.5.0","p-queue":"^6.6.2","p-wait-for":"^5.0.2","path-to-regexp":"^1.8.0",semver:"^7.6.3",tweetnacl:"^1.0.3","tweetnacl-sealedbox-js":"^1.2.0",ufo:"^1.5.3"},peerDependencies={"@arcblock/ux":"^2.9.79","@blocklet/js-sdk":"^1.16.30","@emotion/react":"^11.10.4","@emotion/styled":"^11.10.4","@mui/material":"^5.15.0",react:"^18.2.0","react-dom":"^18.2.0"},publishConfig={access:"public"},devDependencies={"@babel/cli":"^7.19.3","@babel/core":"^7.19.3","@babel/preset-env":"^7.19.3","@babel/preset-react":"^7.18.6","eslint-plugin-react-hooks":"^4.6.0",glob:"^10.3.3",jest:"^28.1.3"},gitHead="71cb15e455bd2f3bdf906c14ae4ef87f9da9c271",pkg={name,version:version$2,description,keywords,author,homepage,license,main,module:module$1,repository,scripts,bugs,dependencies,peerDependencies,publishConfig,devDependencies,gitHead},DEFAULT_TIMEOUT$1=5*60,DEFAULT_WINDOW_TIMEOUT=30*60,AUTH_SERVICE_PREFIX="/.well-known/service",SESSION_TOKEN_STORAGE_KEY="login_token",REFRESH_TOKEN_STORAGE_KEY="refresh_token",RELAY_SOCKET_PREFIX="/.well-known/service",API_DID_PREFIX="/api/did",DEFAULT_NAME="DID Connect",DID_CONNECT_URL_PARAMS_NAME="__did-connect__";class NotOpenError extends Error{constructor(){super("Failed to open popup")}}const{version:version$1}=pkg;function unescape$2(a){return(a+"===".slice((a.length+3)%4)).replace(/-/g,"+").replace(/_/g,"/")}function escape$3(a){return a.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}const decodeConnectUrl=a=>window.atob(unescape$2(a)),parseTokenFromConnectUrl=a=>{const j=new URL(a),_e=decodeURIComponent(j.searchParams.get("url"));return new URL(_e).searchParams.get("_t_")},getAppId$1=(a,j)=>{var et,nt,tt;let _e=j==null?void 0:j.publisher;if(!_e){if(a!=null&&a.agentDid)return a.agentDid;_e=a==null?void 0:a.publisher}return _e?_e.replace("did:abt:",""):((et=globalThis.blocklet)==null?void 0:et.appPid)||((nt=globalThis.blocklet)==null?void 0:nt.appId)||((tt=globalThis.env)==null?void 0:tt.appId)||""},getConnectedInfo=a=>{var _e;const j={connected_did:a.did||"",connected_pk:a.pk||"",connected_app:getAppId$1(a.appInfo,a.memberAppInfo)};return(_e=a==null?void 0:a.connectedWallet)!=null&&_e.os&&(j.connected_wallet_os=a.connectedWallet.os),j},updateConnectedInfo=(a,j=!1)=>{if(!a)return;j||(a=getConnectedInfo(a));const _e=getCookieOptions({expireInDays:7,returnDomain:!1});isNil$1(a.connected_did)||Cookies.set("connected_did",a.connected_did,_e),isNil$1(a.connected_pk)||Cookies.set("connected_pk",a.connected_pk,_e),isNil$1(a.connected_app)||Cookies.set("connected_app",a.connected_app,_e),a.connected_wallet_os&&Cookies.set("connected_wallet_os",a.connected_wallet_os,_e)},encodeKey=a=>escape$3(Buffer$1$1.from(a).toString("base64")),decodeKey=a=>Uint8Array.from(Buffer$1$1.from(unescape$2(a),"base64")),decrypt$1=(a,j,_e)=>{const et=SealedBox.open(Uint8Array.from(Buffer$1$1.from(a,"base64")),decodeKey(j),decodeKey(_e));return JSON.parse(Buffer$1$1.from(et).toString("utf8"))},encrypt=(a,j)=>Buffer$1$1.from(SealedBox.seal(Uint8Array.from(Buffer$1$1.from(a)),decodeKey(j))).toString("base64"),parseNextWorkflow=(a,j="_t_")=>{const _e=new URL(a),et={baseUrl:_e.origin,prefix:_e.pathname.replace(/\/auth$/,""),token:_e.searchParams.get(j)||""};if(!et.baseUrl)throw new Error("Invalid next workflow: origin empty");if(!et.token)throw new Error("Invalid next workflow: token not found");return et},getApiErrorMessage=(a,j)=>{var et;let _e=a.message;return a.response&&(_e=((et=a.response)==null?void 0:et.data)||j),_e},createAxios=(a={},{lazy:j=!1,lazyTime:_e=300}={})=>createAxios$2({...a,headers:{...a.headers,"x-did-connect-version":version$1}},{lazy:j,lazyTime:_e}),sleep$1=(a=0)=>new Promise(j=>{setTimeout(()=>{j()},a)});function getBrowserLang(){if(typeof window>"u")return null;const a=window.navigator.languages&&window.navigator.languages[0]||window.navigator.language||window.navigator.browserLanguage||window.navigator.userLanguage||window.navigator.systemLanguage||null;return{"zh-CN":"zh","zh-TW":"zh",zh:"zh",en:"en"}[a]||"en"}async function decodeUrlParams(){const a=window.location.href;try{const j=new URL(a),_e=j.searchParams.get(DID_CONNECT_URL_PARAMS_NAME);if(_e){j.searchParams.delete(DID_CONNECT_URL_PARAMS_NAME);const et=JSON.parse(Buffer$1$1.from(_e,"base64").toString("utf-8"));if(isString$2(et.forceConnected)&&isUndefined$2(et.sourceAppPid)){const tt=await new BlockletSDK().user.getUserPublicInfo({did:et.forceConnected});isUndefined$2(tt==null?void 0:tt.sourceAppPid)||(et.sourceAppPid=tt.sourceAppPid)}return{params:et,url:j.href}}}catch{console.warn("Failed to decode did-connect url params")}return{params:null,url:a}}const openPopup=(a,{width:j=600,height:_e=700,name:et="did-connect:popup"}={})=>{const nt=window.screenX+(window.innerWidth-j)/2,tt=window.screenY+(window.innerHeight-_e)/2,it=[`left=${nt}`,`top=${tt}`,`width=${j}`,`height=${_e}`,"resizable=no","scrollbars=yes","status=yes","popup=yes"],ut=window.open("",et,it.join(","));if(ut===null)throw new NotOpenError;return ut.location.href=a,ut},runPopup=a=>new Promise((j,_e)=>{let et,nt;const tt=({data:it})=>{if(it&&it.type==="authorization_response"){if(it!=null&&it.error){console.error(it.error);return}setTimeout(()=>{var ut;(ut=a.popup)==null||ut.close(),clearTimeout(nt),clearInterval(et),window.removeEventListener("message",tt,!1),j(it)},a.closeTimeout||0)}};nt=setTimeout(()=>{clearInterval(et),_e(new Error("Timeout")),window.removeEventListener("message",tt,!1)},(a.timeoutInSeconds||DEFAULT_WINDOW_TIMEOUT)*1e3),et=setInterval(()=>{var it;(it=a.popup)!=null&&it.closed&&(clearInterval(et),clearTimeout(nt),window.removeEventListener("message",tt,!1),_e(new Error("Popup closed")))},1e3),window.addEventListener("message",tt)}),keyPair=tweetnacl.box.keyPair();function useSecurity(){const[a,j]=useLocalStorageState("__encKey",{defaultValue:encodeKey(keyPair.publicKey),deserializer:it=>it,serializer:it=>it}),[_e,et]=useLocalStorageState("__decKey",{defaultValue:encodeKey(keyPair.secretKey),deserializer:it=>it,serializer:it=>it});return reactExports.useEffect(()=>{localStorage.getItem("__encKey")||j(encodeKey(keyPair.publicKey)),localStorage.getItem("__decKey")||et(encodeKey(keyPair.secretKey))},[]),{encryptKey:a,decryptKey:_e,decrypt:(it,ut=a,ft=_e)=>decrypt$1(it,ut,ft),encrypt:(it,ut=a)=>encrypt(it,ut)}}var lodash={exports:{}};/**
|
|
280
280
|
* @license
|
|
281
281
|
* Lodash <https://lodash.com/>
|
|
282
282
|
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
|
@@ -2487,4 +2487,4 @@ ${et}
|
|
|
2487
2487
|
${a=>a.scrollable?"":"overflow: hidden"};
|
|
2488
2488
|
}
|
|
2489
2489
|
`;function GlobalSubscriber(){const{t:a}=useLocaleContext(),{session:j}=useSessionContext$1(),{info:_e,refresh:et}=useNodeContext();return useSubscription(constant.TeamEvents.userUpdated,({teamDid:nt,user:tt})=>{nt===_e.did&&tt&&!tt.approved&&j&&j.user&&j.user.did===tt.did&&(toast.warning(a("session.forbidLogin"),{autoHideDuration:10*1e3}),j.logout())}),useSubscription(constant$3.EVENTS.NOTIFICATION_CREATE,nt=>{nt.entityType==="node"&&et({silent:!0})}),useSubscription(constant$3.EVENTS.NODE_UPDATED,()=>{et({silent:!0})}),null}var util={},baseUniq=_baseUniq;function uniq(a){return a&&a.length?baseUniq(a):[]}var uniq_1=uniq;const uniq$1=getDefaultExportFromCjs$1(uniq_1),require$$6=getAugmentedNamespace(dist$2);class Node{constructor(j){this.value=j,this.next=void 0}}let Queue$1=class{constructor(){this.clear()}enqueue(j){const _e=new Node(j);this._head?(this._tail.next=_e,this._tail=_e):(this._head=_e,this._tail=_e),this._size++}dequeue(){const j=this._head;if(j)return this._head=this._head.next,this._size--,j.value}clear(){this._head=void 0,this._tail=void 0,this._size=0}get size(){return this._size}*[Symbol.iterator](){let j=this._head;for(;j;)yield j.value,j=j.next}};var yoctoQueue=Queue$1;const Queue=yoctoQueue,pLimit=a=>{if(!((Number.isInteger(a)||a===1/0)&&a>0))throw new TypeError("Expected `concurrency` to be a number from 1 and up");const j=new Queue;let _e=0;const et=()=>{_e--,j.size>0&&j.dequeue()()},nt=async(ut,ft,...pt)=>{_e++;const dt=(async()=>ut(...pt))();ft(dt);try{await dt}catch{}et()},tt=(ut,ft,...pt)=>{j.enqueue(nt.bind(null,ut,ft,...pt)),(async()=>(await Promise.resolve(),_e<a&&j.size>0&&j.dequeue()()))()},it=(ut,...ft)=>new Promise(pt=>{tt(ut,pt,...ft)});return Object.defineProperties(it,{activeCount:{get:()=>_e},pendingCount:{get:()=>j.size},clearQueue:{value:()=>{j.clear()}}}),it};var pLimit_1=pLimit,engine={},browser={};browser.endianness=function(){return"LE"};browser.hostname=function(){return typeof location<"u"?location.hostname:""};browser.loadavg=function(){return[]};browser.uptime=function(){return 0};browser.freemem=function(){return Number.MAX_VALUE};browser.totalmem=function(){return Number.MAX_VALUE};browser.cpus=function(){return[]};browser.type=function(){return"Browser"};browser.release=function(){return typeof navigator<"u"?navigator.appVersion:""};browser.networkInterfaces=browser.getNetworkInterfaces=function(){return{}};browser.arch=function(){return"javascript"};browser.platform=function(){return"browser"};browser.tmpdir=browser.tmpDir=function(){return"/tmp"};browser.EOL=`
|
|
2490
|
-
`;browser.homedir=function(){return"/"};(function(a){var j=commonjsGlobal&&commonjsGlobal.__importDefault||function(pt){return pt&&pt.__esModule?pt:{default:pt}};Object.defineProperty(a,"__esModule",{value:!0}),a.hasMountPoint=a.hasStartEngine=a.isPackBlocklet=a.isGatewayBlocklet=a.getBlockletEngine=void 0;const _e=j(browser),et=constant,nt=pt=>{if(pt===void 0)throw new Error("blocklet meta param is required");const{engine:dt}=pt;if(!dt)return{interpreter:"node",source:""};if(!Array.isArray(dt))return dt;const mt=_e.default.platform(),Et=dt.find(wt=>wt.platform===mt);if(!Et)throw new Error(`can not find a proper engine interpreter on ${mt}`);return Et};a.getBlockletEngine=nt;const tt=pt=>(pt==null?void 0:pt.group)===et.BlockletGroup.gateway;a.isGatewayBlocklet=tt;const it=pt=>(pt==null?void 0:pt.group)===et.BlockletGroup.pack;a.isPackBlocklet=it;const ut=pt=>!!(pt!=null&&pt.main)||(0,a.getBlockletEngine)(pt||{}).interpreter==="blocklet";a.hasStartEngine=ut;const ft=pt=>((0,a.hasStartEngine)(pt)||((pt==null?void 0:pt.interfaces)||[]).find(dt=>dt.type===et.BLOCKLET_INTERFACE_TYPE_WEB))&&(0,a.isGatewayBlocklet)(pt)===!1;a.hasMountPoint=ft})(engine);(function(a){var j=commonjsGlobal&&commonjsGlobal.__importDefault||function(pn){return pn&&pn.__esModule?pn:{default:pn}};Object.defineProperty(a,"__esModule",{value:!0}),a.hasStartEngine=a.isPackBlocklet=a.isGatewayBlocklet=a.isAccessible=a.isRunning=a.isBeforeInstalled=a.isInProgress=a.getBlockletServices=a.getBlockletAppIdList=a.getRolesFromAuthConfig=a.isPreferenceKey=a.isExternalBlocklet=a.getBlockletChainInfo=a.getChainInfo=a.getConnectAppUrl=a.getParentComponentName=a.filterComponentsV2=a.findComponentByIdV2=a.findComponentV2=a.findComponentById=a.findComponent=a.getComponentBundleId=a.getComponentName=a.getComponentId=a.replaceSlotToIp=a.getComponentWhoCanAccess=a.getWhoCanAccess=a.findServiceFromMeta=a.findWebInterfacePort=a.findWebInterface=a.fixBlockletStatus=a.getAppDescription=a.getDisplayName=a.getAppName=a.hasRunnableComponent=a.wipeSensitiveData=a.isEnvShareable=a.isEnvShareableToClient=a.getComponentMissingConfigs=a.getAppMissingConfigs=a.getSharedConfigObj=a.isDeletableBlocklet=a.forEachComponentV2Sync=a.forEachComponentV2=a.forEachChildSync=a.forEachChild=a.forEachBlockletSync=a.forEachBlocklet=a.isFreeComponent=a.isFreeBlocklet=void 0,a.hasResourceType=void 0,a.getAppUrl=Gt;const _e=j(get_1),et=j(uniq_1),nt=require$$6,tt=j(pLimit_1),it=j(constant$3),ut=constant,ft=engine;Object.defineProperty(a,"hasStartEngine",{enumerable:!0,get:function(){return ft.hasStartEngine}}),Object.defineProperty(a,"isGatewayBlocklet",{enumerable:!0,get:function(){return ft.isGatewayBlocklet}}),Object.defineProperty(a,"isPackBlocklet",{enumerable:!0,get:function(){return ft.isPackBlocklet}});const{NODE_SERVICES:pt,SLOT_FOR_IP_DNS_SITE:dt,WHO_CAN_ACCESS:mt,WHO_CAN_ACCESS_PREFIX_ROLES:Et}=it.default,wt=(pn,En=[])=>`${En.map(An=>An&&An.meta?An.meta.did:"").join("/")}${En.length?"/":""}${pn&&pn.meta?pn.meta.did:""}`;a.getComponentId=wt;const St=(pn,En=[])=>`${En.map(An=>An&&An.meta?An.meta.name:"").join("/")}${En.length?"/":""}${pn&&pn.meta?pn.meta.name:""}`;a.getComponentName=St;const Ct=pn=>`${pn.meta.bundleName}@${pn.meta.version}`;a.getComponentBundleId=Ct;const Dt=pn=>{if(!pn)return"";const En=pn.split("/");return En.pop(),!En.length||(En[En.length-1].startsWith("@")&&En.pop(),!En.length)?"":En.join("/")};a.getParentComponentName=Dt;const At=(pn,En,{parallel:An=!1,concurrencyLimit:zn=5,sync:rn,params:Ut,_parent:Zt,_root:hn,_level:wn=0,_tasks:qn,_ancestors:kn=[],_limit:Mn}={})=>{const Kn=hn||Zt||pn,On=wt(pn,kn),jn=kn.concat(pn);if(rn){const Gn=En(pn,{parent:Zt,root:Kn,level:wn,params:Ut,ancestors:kn,id:On});if(pn.children)for(const Ir of pn.children)At(Ir,En,{sync:rn,params:Gn,_parent:pn,_root:Kn,_level:wn+1,_ancestors:jn});return null}if(!An)return new Promise(async(Gn,Ir)=>{try{const Wn=await En(pn,{parent:Zt,root:Kn,level:wn,ancestors:kn,params:Ut,id:On});if(pn.children)for(const Qn of pn.children)await At(Qn,En,{params:Wn,_parent:pn,_root:Kn,_level:wn+1,_ancestors:jn});Gn(null)}catch(Wn){Ir(Wn)}});const cr=Mn||(0,tt.default)(zn),Un=qn||[];if(Un.push(cr(()=>En(pn,{parent:Zt,root:Kn,level:wn,ancestors:kn,id:On}))),pn.children)for(const Gn of pn.children)At(Gn,En,{parallel:An,_parent:pn,_root:Kn,_level:wn+1,_tasks:Un,_ancestors:jn,_limit:cr});return qn?null:Promise.all(Un)};a.forEachBlocklet=At;const Pt=(pn,En)=>At(pn,En,{sync:!0});a.forEachBlockletSync=Pt;const It=(pn,En,{parallel:An=!1,concurrencyLimit:zn=5,sync:rn}={})=>{if(rn){if(pn.children)for(const hn of pn.children)En(hn);return null}if(!An)return new Promise(async(hn,wn)=>{try{if(pn.children)for(const qn of pn.children)await En(qn);hn(null)}catch(qn){wn(qn)}});const Ut=(0,tt.default)(zn),Zt=[];if(pn.children)for(const hn of pn.children)Zt.push(Ut(()=>En(hn)));return Promise.all(Zt)};a.forEachComponentV2=It;const Lt=(pn,En)=>It(pn,En,{sync:!0});a.forEachComponentV2Sync=Lt;const zt=(pn,En,An)=>At(pn,(zn,rn)=>rn.level===0?{}:En(zn,rn),An);a.forEachChild=zt;const Ft=(pn,En)=>zt(pn,En,{sync:!0});a.forEachChildSync=Ft;const Ht=(pn,En,{_ancestors:An=[],returnAncestors:zn=!1}={})=>{if(!En)return null;if(En(pn,{ancestors:An}))return zn?{component:pn,ancestors:An}:pn;for(const rn of pn.children||[]){const Ut=An.concat(pn),Zt=Ht(rn,En,{_ancestors:Ut,returnAncestors:zn});if(Zt)return Zt}return null};a.findComponent=Ht;const Qt=(pn,En,{returnAncestors:An=!1}={})=>(Array.isArray(En)&&(En=En.join("/")),Ht(pn,(zn,{ancestors:rn})=>{const Ut=wt(zn,rn);return En===Ut},{returnAncestors:An}));a.findComponentById=Qt;const tn=(pn,En)=>{if(!En)return null;for(const An of pn.children||[])if(En(An,pn))return An;return null};a.findComponentV2=tn;const mn=(pn,En)=>En?(Array.isArray(En)&&(En=En.join("/")),tn(pn,(An,zn)=>{if(En.includes("/")){const rn=wt(An,[zn]);return En===rn}return En===An.meta.did})):null;a.findComponentByIdV2=mn;const $t=(pn,En)=>{if(!En)return[];const An=[];for(const zn of pn.children||[])En(zn,pn)&&An.push(zn);return An};a.filterComponentsV2=$t;const rt=pn=>!!pn&&!!(pn.key||pn.name)&&!pn.secure&&pn.shared!==!1&&!ut.BLOCKLET_CONFIGURABLE_KEY[pn.key||pn.name];a.isEnvShareableToClient=rt;const st=pn=>!!pn&&!!(pn.key||pn.name)&&!pn.secure&&!!pn.shared&&!ut.BLOCKLET_CONFIGURABLE_KEY[pn.key||pn.name];a.isEnvShareable=st;const ct=(pn,En)=>{const An={};return!pn||!En||(Array.isArray(pn.configs)&&pn.configs.forEach(({key:zn,value:rn,secure:Ut})=>{if(!st({key:zn,secure:Ut,shared:!0}))return;const Zt=(pn.configObj||{})[zn]||rn,hn=(En.configs||[]).find(wn=>wn.key===zn);(!hn||st(hn)||!hn.value&&!(En.configObj||{})[hn.key])&&(An[zn]=Zt)}),(pn.configs||[]).forEach(({key:zn,value:rn})=>{[ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_HOST,ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_ID,ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_TYPE].includes(zn)&&(An[ut.CHAIN_PROP_MAP[zn]]=rn)})),An};a.getSharedConfigObj=ct;const ht=pn=>pn.key.startsWith(ut.BLOCKLET_PREFERENCE_PREFIX)===!0;a.isPreferenceKey=ht;const vt=(pn,En)=>!!(pn.required&&(!pn.value&&!En[pn.key]||Object.values(ut.CHAIN_PROP_MAP).includes(pn.key)&&Object.keys(En).includes(pn.key)&&!En[pn.key])),xt=(pn={})=>{const En=[];return Lt(pn,An=>{var Ut;if(((Ut=An.meta)==null?void 0:Ut.group)===ut.BlockletGroup.gateway)return;const zn=An.configs||[],rn=ct(pn,An);zn.forEach(Zt=>{vt(Zt,rn)&&En.push({did:An.meta.did,key:Zt.key,description:Zt.description})})}),En.filter(An=>!ht(An))};a.getAppMissingConfigs=xt;const Tt=(pn={},En={})=>{const An=[],zn=pn.configs||[],rn=ct(En,pn);return zn.forEach(Ut=>{vt(Ut,rn)&&An.push({did:pn.meta.did,key:Ut.key,description:Ut.description})}),An};a.getComponentMissingConfigs=Tt;const yt=pn=>pn.payment?(pn.payment.price||[]).map(An=>An.value||0).every(An=>An===0):!0;a.isFreeBlocklet=yt;const ot=pn=>!pn.payment||!pn.payment.componentPrice?!0:!pn.payment.componentPrice.length;a.isFreeComponent=ot;const bt=pn=>pn&&(At(pn,En=>{En.configs&&(En.configs=En.configs.filter(An=>!ht(An)),En.configs.forEach(An=>{An.secure&&(An.value=An.value?"__encrypted__":"")})),(En.environments||[]).forEach(An=>{["BLOCKLET_APP_SK","BLOCKLET_APP_PSK"].includes(An.key)&&(An.value="__encrypted__")}),(En.migratedFrom||[]).forEach(An=>{An.appSk="__encrypted__"}),delete pn.configObj,delete pn.environmentObj},{sync:!0}),pn);a.wipeSensitiveData=bt;const Mt=pn=>{if(!pn)return!1;const En=pn.environments.find(An=>An.key==="BLOCKLET_DELETABLE");return En?En.value==="yes":!0};a.isDeletableBlocklet=Mt;const Ot=pn=>{let En=!1;return Pt(pn,An=>{An.meta.group!==ut.BlockletGroup.gateway&&(En=!0)}),En};a.hasRunnableComponent=Ot;const Vt=(pn,En=!1)=>{if(!pn)return"";const{meta:An}=pn;let zn;if(!En&&pn.environments){const rn=pn.environments.find(Ut=>Ut.key==="BLOCKLET_APP_NAME");rn&&rn.value&&(zn=rn.value)}return zn||An.title||An.name};a.getAppName=Vt,a.getDisplayName=Vt;const Nt=(pn,En=!1)=>{if(!pn)return"";const{meta:An}=pn;let zn;if(!En&&pn.environments){const rn=pn.environments.find(Ut=>Ut.key==="BLOCKLET_APP_DESCRIPTION");rn&&rn.value&&(zn=rn.value)}return zn||An.description||An.name};a.getAppDescription=Nt;function Gt(pn){var zn,rn,Ut;const En=(Ut=(rn=(zn=pn==null?void 0:pn.site)==null?void 0:zn.domainAliases)==null?void 0:rn.sort((Zt,hn)=>{var wn,qn,kn,Mn;return(wn=Zt.accessibility)!=null&&wn.accessible&&((qn=hn.accessibility)!=null&&qn.accessible)?+Zt.isProtected-+hn.isProtected:+((kn=hn.accessibility)==null?void 0:kn.accessible)-+((Mn=Zt.accessibility)==null?void 0:Mn.accessible)}))==null?void 0:Ut.map(Zt=>{var qn;const hn=(qn=Zt==null?void 0:Zt.domainStatus)!=null&&qn.isHttps?"https://":"http://",wn=Zt==null?void 0:Zt.value;return`${hn}${wn}`}).filter(Boolean);return En==null?void 0:En[0]}const qt=pn=>{pn&&(Pt(pn,En=>{En.status=(0,ut.fromBlockletStatus)(En.status),En.source!==void 0&&(En.source=(0,ut.fromBlockletSource)(En.source))}),pn.settings&&(pn.settings.children||[]).forEach(En=>{Pt(En,An=>{An.status=(0,ut.fromBlockletStatus)(An.status),An.source!==void 0&&(An.source=(0,ut.fromBlockletSource)(An.source))})}))};a.fixBlockletStatus=qt;const nn=pn=>{if(!pn)return null;const En=pn.meta||pn||{},{interfaces:An=[]}=En;return Array.isArray(An)?An.find(zn=>zn.type===ut.BLOCKLET_INTERFACE_TYPE_WEB):null};a.findWebInterface=nn;const fn=pn=>{if(!pn)return null;const En=nn(pn),{ports:An}=pn;return!En||!An?null:An[En.port]};a.findWebInterfacePort=fn;const yn=(pn,En)=>{const An=[En];En===pt.AUTH&&An.push(pt.AUTH_SERVICE);const zn=nn(pn);return zn?(zn.services||[]).find(rn=>An.includes(rn.name)):null};a.findServiceFromMeta=yn;const Jt=pn=>{if(!pn)return mt.ALL;if((0,_e.default)(pn,"settings.whoCanAccess"))return pn.settings.whoCanAccess;const En=yn(pn.meta,pt.AUTH);return(0,_e.default)(En,"config.whoCanAccess")?En.config.whoCanAccess:mt.ALL};a.getWhoCanAccess=Jt;const Bt=(pn,En)=>{const An=(pn.configs||[]).find(rn=>rn.key===ut.BLOCKLET_CONFIGURABLE_KEY.COMPONENT_ACCESS_WHO);if(An)return An.value;if(En&&(0,_e.default)(En,"settings.whoCanAccess")&&(0,_e.default)(En,"settings.whoCanAccess")!==mt.ALL)return(0,_e.default)(En,"settings.whoCanAccess");const zn=yn(pn.meta,pt.AUTH);return(0,_e.default)(zn,"config.whoCanAccess")?zn.config.whoCanAccess:mt.ALL};a.getComponentWhoCanAccess=Bt;const Kt=({request:pn,baseUrl:En})=>{const An=pn.headers["x-blocklet-did"]||"",zn=pn.headers["x-blocklet-real-did"]||"",rn=pn.headers["x-path-prefix"]||"/",Ut=pn.headers["x-group-path-prefix"]||"/";let Zt=En;return An!==zn&&rn!==Ut&&(Zt=(0,nt.joinURL)(Zt,"/").replace(rn,Ut)),Zt};a.getConnectAppUrl=Kt;const un=(pn,En)=>{const An=(En||"").includes(":")?":":/\./;return(pn||"").replace(dt,(En||"").replace(new RegExp(An,"g"),"-"))};a.replaceSlotToIp=un;const sn=pn=>{const En=Object.entries(ut.CHAIN_INFO_CONFIG).reduce((An,zn)=>{const[rn,[Ut,Zt]]=zn;return An[Ut]=(0,_e.default)(pn,rn)||Zt,An},{});return En.type==="ethereum"&&En.id==="none"&&(En.id="1"),En};a.getChainInfo=sn;const vn=pn=>{const En=sn({});if(!pn)return En;const An=sn(pn.configObj);if(An.host!=="none")return An;let zn;return Ft(pn,rn=>{if(zn&&zn.host!=="none")return;const Ut=sn(rn.configObj);Ut.host!=="none"&&(zn=Ut)}),zn||En};a.getBlockletChainInfo=vn;const $n=pn=>!!(pn!=null&&pn.controller);a.isExternalBlocklet=$n;const cn=pn=>pn.whoCanAccess.startsWith(Et)?pn.whoCanAccess.substring(Et.length).split(","):[];a.getRolesFromAuthConfig=cn;const gn=pn=>{const En=Array.isArray(pn.migratedFrom)?pn.migratedFrom.map(An=>An.appDid):[];return(0,et.default)([pn.appDid,pn.appPid,...En].filter(Boolean))};a.getBlockletAppIdList=gn;const Fn=pn=>{const En=[];return pn&&Pt(pn,An=>{var rn;(((rn=An.meta)==null?void 0:rn.interfaces)||[]).filter(Ut=>Ut.type===ut.BLOCKLET_INTERFACE_TYPE_SERVICE).forEach(Ut=>{const Zt=Ut.port||{};En.push({name:Ut.name,protocol:Ut.protocol,port:Number(Zt.external),upstreamPort:Number((An.ports||{})[Zt.internal])})})}),En};a.getBlockletServices=Fn;const _n=pn=>[ut.BlockletStatus.downloading,ut.BlockletStatus.waiting,ut.BlockletStatus.starting,ut.BlockletStatus.installing,ut.BlockletStatus.stopping,ut.BlockletStatus.upgrading,"downloading","waiting","starting","installing","extracting","stopping","upgrading","restarting","deleting"].includes(pn);a.isInProgress=_n;const In=pn=>[ut.BlockletStatus.added,ut.BlockletStatus.waiting,ut.BlockletStatus.downloading,ut.BlockletStatus.installing,"added","waiting","downloading","installing"].includes(pn);a.isBeforeInstalled=In;const lr=pn=>[ut.BlockletStatus.running,"running"].includes(pn);a.isRunning=lr;const xn=pn=>[ut.BlockletStatus.running,ut.BlockletStatus.waiting,ut.BlockletStatus.downloading,"running","waiting","downloading"].includes(pn);a.isAccessible=xn;const Sn=(pn,{type:En,did:An}={type:"",did:""})=>{var zn,rn,Ut;return pn?!(0,ft.hasStartEngine)(pn.meta)&&((Ut=(rn=(zn=pn.meta)==null?void 0:zn.resource)==null?void 0:rn.bundles)==null?void 0:Ut.length)>0&&(pn.meta.resource.bundles||[]).some(Zt=>Zt.type===En&&Zt.did===An):!1};a.hasResourceType=Sn,a.default={isFreeBlocklet:yt,isFreeComponent:ot,forEachBlocklet:At,forEachBlockletSync:Pt,forEachChild:zt,forEachChildSync:Ft,forEachComponentV2:It,forEachComponentV2Sync:Lt,isDeletableBlocklet:Mt,getSharedConfigObj:ct,getAppMissingConfigs:xt,getComponentMissingConfigs:Tt,isEnvShareableToClient:rt,isEnvShareable:st,wipeSensitiveData:bt,hasRunnableComponent:Ot,getAppName:Vt,getAppDescription:Nt,getAppUrl:Gt,getDisplayName:Vt,fixBlockletStatus:qt,findWebInterface:nn,findWebInterfacePort:fn,findServiceFromMeta:yn,getWhoCanAccess:Jt,getComponentWhoCanAccess:Bt,replaceSlotToIp:un,getComponentId:wt,getComponentName:St,getComponentBundleId:Ct,findComponent:Ht,findComponentById:Qt,findComponentV2:tn,findComponentByIdV2:mn,filterComponentsV2:$t,getParentComponentName:Dt,getConnectAppUrl:Kt,getChainInfo:sn,getBlockletChainInfo:vn,isExternalBlocklet:$n,isPreferenceKey:ht,getRolesFromAuthConfig:cn,getBlockletServices:Fn,isInProgress:_n,isBeforeInstalled:In,isRunning:lr,isAccessible:xn,isGatewayBlocklet:ft.isGatewayBlocklet,isPackBlocklet:ft.isPackBlocklet,hasStartEngine:ft.hasStartEngine,hasResourceType:Sn}})(util);const getServerUrl=(a,j=!1)=>{const _e=a.routing.adminPath;return j?encodeURIComponent(joinURL(window.location.origin,_e)):joinURL(window.location.origin,_e)},getLaunchAgreementUrl=(a,j,_e)=>{const et=getServerUrl(j),nt=joinURL(_e,`/api/blocklets/${a.did}/blocklet.json`),tt=new URL(joinURL(et,"/launch-blocklet/agreement"));return tt.searchParams.set("blocklet_meta_url",nt),tt.searchParams.set("from",window.location.href),tt.href},ensureDomainAliases=async(a,{getIP:j}={})=>{if(!a||!a.length)return[];if(!j||!a.some(et=>et.value.includes(constant$3.SLOT_FOR_IP_DNS_SITE)))return a;const _e=await j();return _e?a.map(et=>{try{return et.value=util.replaceSlotToIp(et.value,_e),et}catch{return et}}).filter(Boolean):a},getAppCapabilities=a=>{const j={didSpace:null};return util.forEachBlockletSync(a,_e=>{var et,nt;j.didSpace===constant.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED||j.didSpace===constant.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED_ON_SETUP||(nt=(et=_e==null?void 0:_e.meta)==null?void 0:et.capabilities)!=null&&nt.didSpace&&(j.didSpace=_e.meta.capabilities.didSpace)}),j},fixBlocklet=async(a,{fixRuntime:j=!0,oldBlocklet:_e,getIP:et}={})=>{if(a.site||(a.site={domainAliases:[],rules:[]}),a.site.rules.forEach(nt=>{nt.from.pathPrefix=normalizePathPrefix$1(nt.from.pathPrefix||"/")}),a.site.rules=sortBy$1(a.site.rules,nt=>nt.from.pathPrefix),j===!0)a.site.domainAliases=await ensureDomainAliases(a.site.domainAliases,{getIP:et}),a.appRuntimeInfo&&(a.appRuntimeInfo.startAt=new Date-a.appRuntimeInfo.uptime),util.forEachBlockletSync(a,nt=>{nt.runtimeInfo&&(nt.runtimeInfo.startAt=new Date-nt.runtimeInfo.uptime)});else if(j==="merge-old"&&_e){a.site.domainAliases=_e.site.domainAliases,a.appRuntimeInfo=_e.appRuntimeInfo;const nt={};util.forEachBlockletSync(_e,(tt,{id:it})=>{nt[it]=tt}),util.forEachBlockletSync(a,(tt,{id:it})=>{const ut=nt[it];ut&&(tt.runtimeInfo=ut.runtimeInfo,tt.diskInfo=ut.diskInfo,tt.engine=ut.engine)})}else a.site.domainAliases=[];a.capabilities=getAppCapabilities(a)},DEFAULT_WALLET_TYPE="arcblock",getWalletType=(a,j=!1)=>{let _e;return j?(_e=(a.configs||[]).find(et=>et.key==="BLOCKLET_APP_CHAIN_TYPE"),_e&&_e.value||(_e=(a.environments||[]).find(et=>["CHAIN_TYPE","BLOCKLET_APP_CHAIN_TYPE"].includes(et.key)),_e&&_e.value)?_e.value:DEFAULT_WALLET_TYPE):(_e=(a.environments||[]).find(et=>["CHAIN_TYPE","BLOCKLET_APP_CHAIN_TYPE"].includes(et.name)),_e&&_e.default?_e.default:DEFAULT_WALLET_TYPE)},isServerless=a=>!isEmpty$2(a==null?void 0:a.controller);let cache=null;const fetch$1=async()=>{const a=window.env.apiPrefix||"/",j=joinURL(a,"/api/dns-resolve?accessible=1");try{return(await axios$4.get(j)).data.address}catch{return null}},getIp=()=>(cache||(cache=fetch$1()),cache),BlockletsContext=reactExports.createContext({}),{Provider:Provider$2,Consumer:Consumer$2}=BlockletsContext,mergeBlocklets=(a,j,_e)=>_e?a.map(et=>{const nt={...et},tt=j.find(it=>it.meta.did===et.meta.did);return tt&&_e.forEach(it=>{nt[it]=tt[it]}),nt}):j;function BlockletsProvider({children:a}){const j=useNodeContext(),_e=createClient(),[et,nt]=reactExports.useState(null),[tt,it]=reactExports.useState(!1),[ut,ft]=reactExports.useState([]),[pt,dt]=reactExports.useState([]),[mt,Et]=reactExports.useState(!1),wt=(Lt,zt)=>{util.isExternalBlocklet(Lt)?dt(zt):ft(zt)},St=4,Ct=async({silent:Lt=!0,retries:zt=St,updates:Ft,useCache:Ht=!0}={})=>{Lt||it(!0);try{nt(null);const{blocklets:Qt}=await _e.getBlocklets({input:{useCache:Ht}});for(const $t of Qt)await fixBlocklet($t,{getIP:getIp});const tn=Qt.filter($t=>!util.isExternalBlocklet($t)),mn=Qt.filter(util.isExternalBlocklet);ft($t=>mergeBlocklets($t,tn,Ft)),dt($t=>mergeBlocklets($t,mn,Ft)),it(!1),Et(!0)}catch(Qt){zt>0?setTimeout(()=>Ct({silent:Lt,retries:zt-1,useCache:Ht}),1e3):(it(!1),nt(Qt))}},Dt=async Lt=>{try{const{blocklet:zt}=await j.api.getBlocklet({input:{did:Lt.meta.did,attachRuntimeInfo:!0}});await fixBlocklet(zt,{getIP:getIp}),wt(zt,Ft=>Ft.some(Ht=>Ht.meta.did===zt.meta.did)?Ft.map(Ht=>Ht.meta.did===zt.meta.did?zt:Ht):[...Ft,zt])}catch(zt){nt(zt)}},At=Lt=>{j.refresh(),Dt(Lt)};reactExports.useEffect(()=>{Ct({silent:!1})},[]);const Pt=Lt=>{const zt={};util.forEachBlockletSync(Lt,(Ft,{id:Ht})=>{zt[Ht]=constant.fromBlockletStatus(Ft.status)}),wt(Lt,Ft=>Ft.map(Ht=>(Ht.meta.did===Lt.meta.did&&util.forEachBlockletSync(Ht,(Qt,{id:tn})=>{zt[tn]&&(Qt.status=zt[tn])}),Ht)))};useSubscription(constant.BlockletEvents.added,Lt=>{Lt.status=constant.fromBlockletStatus(Lt.status),wt(Lt,zt=>[...zt,Lt])}),useSubscription(constant.BlockletEvents.removed,Lt=>{j.refresh(),wt(Lt,zt=>zt.filter(Ft=>Ft.meta.did!==Lt.meta.did))}),useSubscription(constant.BlockletEvents.statusChange,Pt),useSubscription(constant.BlockletEvents.installed,At),useSubscription(constant.BlockletEvents.upgraded,At),useSubscription(constant.BlockletEvents.updated,Dt),useSubscription(constant.BlockletEvents.startFailed,Dt);const It={loading:tt,error:et,data:ut,externalData:pt,refresh:Ct,initialized:mt,api:_e};return jsxRuntimeExports.jsx(Provider$2,{value:{blocklets:It},children:a})}function useBlockletsContext(){const{blocklets:a}=reactExports.useContext(BlockletsContext);return a}const authorize=({user:a,launchType:j,nftId:_e})=>{var et;if(!a)return!1;if(j==="serverless"){if(!_e)throw new Error("nftId is required");return((et=a==null?void 0:a.controller)==null?void 0:et.nftId)===_e}return(a.permissions||[]).includes("mutate_blocklets")},isServerlessBlockletInstalled=a=>{var j,_e;return a.isGetBlocklet&&((_e=(j=a.runtimeBlocklet)==null?void 0:j.controller)==null?void 0:_e.consumedAt)},getRestoredAccessUrl=async a=>{const j=getBlockletUrls({blocklet:a});let _e="";return _e=j.find(et=>{try{const{hostname:nt}=new URL(et);return urlEvaluation.isSlpDomain(nt)}catch(nt){return console.error(nt),!1}}),_e||(_e=await getAccessibleUrl(j)),_e},LaunchBlockletContext=reactExports.createContext({}),{Provider:Provider$1,Consumer:Consumer$1}=LaunchBlockletContext;function LaunchBlockletProvider({children:a}){const{session:j}=useSessionContext$1(),{t:_e}=useLocaleContext(),{api:et,info:nt}=useNodeContext(),[tt]=useSearchParams(),it=createClient(),ut=tt.get("launchType"),ft=tt.get("fromLauncher"),pt=tt.get("blocklet_meta_url")||"",dt=tt.get("nftId")||"",mt=tt.get("launcherSessionId")||"",Et=tt.get("launcherUrl")||"",wt=new URL(pt).origin,[St,Ct]=reactExports.useState({meta:null,appDid:tt.get("appDid")||null,sessionId:tt.get("sessionId")||null,isFree:!0,isExternal:!1,isInstalling:!1,isInstalled:!1,isRunning:!1,launcherSession:null,registryUrl:""}),Dt=(mn,$t)=>Ct(rt=>({...rt,appDid:mn,sessionId:$t})),At=authorize({user:j.user,launchType:ut,nftId:dt}),[Pt,It]=reactExports.useState(null),[Lt,zt]=reactExports.useState(!0),Ft=reactExports.useMemo(()=>nt?getServerUrl(nt):"",[nt]),Ht=async mn=>{if(!mn)throw new Error("appDid should not be empty");const{blocklet:$t}=await et.getBlocklet({input:{did:mn,attachConfig:!1}});if(!$t)return null;const rt=constant.BlockletStatus[$t.status],st=!!dt,ct=rt<constant.BlockletStatus.installed,ht=rt===constant.BlockletStatus.installed,vt=rt===constant.BlockletStatus.running;return Ct(xt=>({...xt,isInstalled:ht,isRunning:vt,isExternal:st,isInstalling:ct})),{isInstalled:ht,isRunning:vt,isExternal:st,isInstalling:ct}},Qt=async()=>{zt(!0);try{if(!pt)throw new Error(_e("common.invalidParam"));const[{meta:mn,isFree:$t,registryUrl:rt},{launcherSession:st,error:ct}]=await Promise.all([et.getBlockletMetaFromUrl({input:{url:pt,checkPrice:!0}}),mt?et.getLauncherSession({input:{launcherSessionId:mt,launcherUrl:Et}}):Promise.resolve({})]);if(mt&&!st)throw new Error(`Launch session invalid: ${ct}`);if(!mn)throw new Error(_e("LaunchBlockletBlocklet.error.loadMetaFailed"));let ht={};At&&St.appDid&&(ht=await Ht(St.appDid)),Ct(vt=>({...vt,...ht,meta:mn,isFree:$t,registryUrl:rt,launcherSession:st}))}catch(mn){console.error(mn),It(mn.message)}finally{zt(!1)}};reactExports.useEffect(()=>{var mn,$t,rt;((mn=j==null?void 0:j.user)==null?void 0:mn.role)===constant$3.SERVER_ROLES.EXTERNAL_BLOCKLET_CONTROLLER&&((rt=($t=j==null?void 0:j.user)==null?void 0:$t.controller)==null?void 0:rt.nftId)!==dt&&j.logout(),Qt()},[]),reactExports.useEffect(()=>{Lt||!St.meta||(At?St.appDid&&Ht(St.appDid).catch(mn=>{toast.error(mn.message)}):(Ct(mn=>({...mn,isInstalled:!1,isRunning:!1,isExternal:!1})),It(null)))},[At]);const tn={meta:St.meta,isFree:St.isFree,appDid:St.appDid,sessionId:St.sessionId,isInstalling:St.isInstalling,isInstalled:St.isInstalled,isExternal:St.isExternal,isRunning:St.isRunning,serverUrl:Ft,storeUrl:St.registryUrl||wt,blockletMetaUrl:pt,fromLauncher:ft,loading:Lt,error:Pt,api:it,getBlocklet:Ht,setAppDid:Dt,launcherUrl:Et,launcherSession:St.launcherSession,launcherSessionId:mt};return jsxRuntimeExports.jsx(Provider$1,{value:tn,children:a})}function useLaunchBlockletContext(){return reactExports.useContext(LaunchBlockletContext)}function useQuery(){return new URLSearchParams(useLocation().search)}const BlockletAppContext=reactExports.createContext(),{Provider,Consumer}=BlockletAppContext;function BlockletAppProvider({children:a}){const _e=useQuery().get("blocklet_meta_url"),et=_default$2(async()=>{const{data:tt}=await axios$1.get(_e);return tt});if(et.loading)return jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});const nt={meta:et.value,error:et.error};return jsxRuntimeExports.jsx(Provider,{value:nt,children:a})}BlockletAppProvider.propTypes={children:PropTypes.any.isRequired};function useBlockletAppContext(){return reactExports.useContext(BlockletAppContext)}const Dashboard=reactExports.lazy(()=>__vitePreload(()=>import("./index-MRb9RAJK.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url)),BlockletList=reactExports.lazy(()=>__vitePreload(()=>import("./index-CG4MmDuK.js"),__vite__mapDeps([5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,2,30,31,32,33,34]),import.meta.url)),BlockletRestore=reactExports.lazy(()=>__vitePreload(()=>import("./index-C7m9dmdb.js"),__vite__mapDeps([35,36,37,38,39,40,41,6,42,43,44,45,13,10,12,26,19,18]),import.meta.url)),BlockletStore=reactExports.lazy(()=>__vitePreload(()=>import("./index-D8rh69R2.js"),__vite__mapDeps([46,6,47,48,49,18,17,50,10,51,52,32,13,12,42,53,43,54,3,55,56,19,23,24,57,58,59]),import.meta.url)),Settings=reactExports.lazy(()=>__vitePreload(()=>import("./index-CLbWUy8O.js"),__vite__mapDeps([60,61,11,58,62,63,50,64,13,10,12,7,8,9,14,15,16,17,18,19,65,54,3,55,2,66,6,67,68,32,21,20,69,34,70,71,72,4,73]),import.meta.url)),LogPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-9o5SBOBg.js"),__vite__mapDeps([74,75,23,24,10,76]),import.meta.url)),TeamPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-KENXSHGT.js"),__vite__mapDeps([77,61,11,78,79,80,18,6,10,12,81,14,82,83,32,84,85,86,17,13,7,8,9,15,16,19,87,34,88,89,50,25,26,49,21,90,56,3,2,91,92,93,55,94,33,23,24,95,96,97,48,51,98,1,54,71]),import.meta.url)),BlockletDetail=reactExports.lazy(()=>__vitePreload(()=>import("./detail-DHBrhfaQ.js"),__vite__mapDeps([99,61,11,20,21,22,6,19,23,24,31,56,90,59]),import.meta.url)),EULAPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-BZQ6Sdlq.js"),[],import.meta.url)),Notifications=reactExports.lazy(()=>__vitePreload(()=>import("./index-DmdQsIN9.js"),__vite__mapDeps([100,1,81,14]),import.meta.url)),IssuePassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-oVy0lmae.js"),__vite__mapDeps([101,102,89,103,91,69,104]),import.meta.url)),LostPassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-ClNOtPm5.js"),__vite__mapDeps([105,69,85,53,104,30]),import.meta.url)),ExchangePassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-BIUglsRs.js"),__vite__mapDeps([106,104]),import.meta.url)),BlockletLauncher=reactExports.lazy(()=>__vitePreload(()=>import("./index-6UQZCJ9z.js"),__vite__mapDeps([107,36,37,38,39,40,41,108,79,80,45,26,6,28,25,29,66]),import.meta.url)),NotFoundPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-15yTTSQp.js"),__vite__mapDeps([109,89]),import.meta.url)),Invite=reactExports.lazy(()=>__vitePreload(()=>import("./index-CJeF5ewa.js"),__vite__mapDeps([110,102,89,103,91,69,104]),import.meta.url)),Console=reactExports.lazy(()=>__vitePreload(()=>import("./index-BjH9WeIg.js").then(a=>a.a2),__vite__mapDeps([111,112]),import.meta.url)),AnalyticsPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-DNivFScD.js"),__vite__mapDeps([113,61,11,114,115,116,70,10,117,9,13,12,51,7,8,14,15,16,17,18,19,31,118,119,4,6,98,24]),import.meta.url));function useSharedContext(){const a=useNodeContext(),{session:j}=useSessionContext$1(),{wallet:_e}=useBrowser(),et=j.user&&j.user.did;return reactExports.useEffect(()=>{const nt=getWsClient();return et?nt.connect():nt.isConnected()&&nt.disconnect(),()=>{nt.isConnected()&&nt.disconnect()}},[et]),reactExports.useEffect(()=>{if(_e)return()=>{};const nt=()=>{document.visibilityState==="visible"&&j.refresh()};return document.addEventListener("visibilitychange",nt),()=>{document.removeEventListener("visibilitychange",nt)}},[]),{node:a,session:j}}function ProtectedApp(){var it;const{t:a}=useLocaleContext(),{node:j,session:_e}=useSharedContext(),et=useLocation();reactExports.useEffect(()=>{window.tracker&&typeof window.tracker.pageView=="function"&&window.tracker.pageView(`${et.pathname}${et.search}`)},[et]),reactExports.useEffect(()=>{var ut;((ut=_e==null?void 0:_e.user)==null?void 0:ut.role)===constant$3.SERVER_ROLES.EXTERNAL_BLOCKLET_CONTROLLER&&_e.logout()},[(it=_e==null?void 0:_e.user)==null?void 0:it.role]);const nt=jsxRuntimeExports.jsx(CircularProgress,{});if(j.loading||_e.loading)return jsxRuntimeExports.jsx(Center,{children:nt});if(!j.info.initialized)return getAuthMethod.getServerAuthMethod(j.info)==="nft"?jsxRuntimeExports.jsx(NodeVerifyOwner,{action:"verify-owner"}):jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(NodeConnectOwner,{})});if(j.info.upgradeSessionId)return jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(MaintainProgress,{})});if(!_e.user)return jsxRuntimeExports.jsx(NodeLogin,{loadingEle:nt});const tt=jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});return jsxRuntimeExports.jsx(NotificationProvider,{children:jsxRuntimeExports.jsxs(BlockletsProvider,{children:[jsxRuntimeExports.jsx(Health,{}),jsxRuntimeExports.jsx(CheckNodeStatus,{}),jsxRuntimeExports.jsx(GlobalSubscriber,{}),jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:tt,children:jsxRuntimeExports.jsxs(Routes,{children:[jsxRuntimeExports.jsx(Route,{path:"/dashboard",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:"Dashboard",children:jsxRuntimeExports.jsx(Dashboard,{})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.blocklets"),children:jsxRuntimeExports.jsx(BlockletList,{})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets/:did/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:"Blocklets",children:jsxRuntimeExports.jsx(BlockletDetail,{})})}),jsxRuntimeExports.jsx(Route,{path:"/settings/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.setting"),children:jsxRuntimeExports.jsx(Settings,{})})}),jsxRuntimeExports.jsx(Route,{path:"/eula",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("setup.steps.eula"),children:jsxRuntimeExports.jsx(EULAPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/store",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.store"),children:jsxRuntimeExports.jsx(BlockletStore,{})})}),jsxRuntimeExports.jsx(Route,{path:"/console",element:jsxRuntimeExports.jsx(DashboardRoute,{title:`GraphQL ${a("common.console")}`,scrollable:!1,fullWidth:!0,children:jsxRuntimeExports.jsx(Console,{})})}),jsxRuntimeExports.jsx(Route,{path:"/notifications",element:jsxRuntimeExports.jsx(DashboardRoute,{children:jsxRuntimeExports.jsx(Notifications,{})})}),jsxRuntimeExports.jsx(Route,{path:"/team/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.team"),children:jsxRuntimeExports.jsx(TeamPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/logs/:name",element:jsxRuntimeExports.jsx(DashboardRoute,{scrollable:!1,fullWidth:!0,title:a("common.logs"),children:jsxRuntimeExports.jsx(LogPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/analytics/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.analytics"),children:jsxRuntimeExports.jsx(AnalyticsPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/",element:jsxRuntimeExports.jsx(Navigate,{to:"/dashboard",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/team",element:jsxRuntimeExports.jsx(Navigate,{to:"/team/members",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/analytics",element:jsxRuntimeExports.jsx(Navigate,{to:"/analytics/traffic",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/logs",element:jsxRuntimeExports.jsx(Navigate,{to:"/logs/abtnode",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/router",element:jsxRuntimeExports.jsx(Navigate,{to:"/router/rules",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/settings",element:jsxRuntimeExports.jsx(Navigate,{to:"/settings/basic",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/marketplace",element:jsxRuntimeExports.jsx(Navigate,{to:"/store",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/marketplace/:did",element:jsxRuntimeExports.jsx(Navigate,{to:"/store/:did",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"*",element:jsxRuntimeExports.jsx(NotFoundPage,{})})]})})]})})}function UnprotectedWrapper({children:a}){const{node:j,session:_e}=useSharedContext();return j.loading||!_e.initialized&&_e.loading?jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})}):j.info.upgradeSessionId?jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(MaintainProgress,{})}):a}function App(){const{changeLocale:a}=useLocaleContext(),j=useQuery();reactExports.useEffect(()=>{const et=j.get("locale");et&&["zh","en"].includes(et)&&a(et)},[]);const _e=jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});return jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:_e,children:jsxRuntimeExports.jsxs(Routes,{children:[jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/issue-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(IssuePassport,{})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/lost-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(LostPassport,{})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/exchange-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(ExchangePassport,{})})}),jsxRuntimeExports.jsx(Route,{path:"/accept-server",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(NodeVerifyOwner,{action:"accept-server"})})}),jsxRuntimeExports.jsx(Route,{path:"/launch-blocklet/*",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(LaunchBlockletProvider,{children:jsxRuntimeExports.jsx(BlockletLauncher,{})})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets/restore/*",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(BlockletAppProvider,{children:jsxRuntimeExports.jsx(BlockletRestore,{})})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/invite`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(Invite,{})})}),jsxRuntimeExports.jsx(Route,{path:"/*",element:jsxRuntimeExports.jsx(ProtectedApp,{})})]})})}function AppWrapper(){const a=window.env&&window.env.apiPrefix?window.env.apiPrefix:"/";return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(CssBaseline,{}),jsxRuntimeExports.jsx(BrowserRouter,{history,basename:a,children:jsxRuntimeExports.jsx(Root$5,{children:jsxRuntimeExports.jsx(App,{})})})]})}const root=createRoot(document.getElementById("root"));root.render(jsxRuntimeExports.jsx(AppWrapper,{}));const prefix=window.env&&window.env.apiPrefix?window.env.apiPrefix:"/";register(`${prefix}/service-worker.js`.replace(/\/+/g,"/"),{registrationOptions:{scope:prefix},registered(){console.info("Service worker has been registered.")},ready(){console.info("Service worker is active.")},cached(){console.info("Content has been cached for offline use.")},updatefound(){console.info("New content is downloading.")},updated(){console.info("New content is available; please refresh.")},offline(){console.info("No internet connection found. App is running in offline mode.")},error(a){console.error("Error during service worker registration:",a)}});export{default_1$n as $,useNavigate as A,ButtonComponent as B,CircularProgress as C,Dialog as D,toast as E,useSearchParams as F,Grid as G,constant$3 as H,ImageIcon as I,useMediaQuery as J,Alert as K,LinearProgress as L,formatError$1 as M,util as N,Link$2 as O,PropTypes as P,Box as Q,isEmpty$2 as R,RelativeTime$1 as S,TagComponent as T,MenuItem$1 as U,Permission as V,WrappedDidAddress as W,Center as X,toString_1 as Y,propTypesExports as Z,_createCompounder as _,useSubscription as a,Menu$1 as a$,lodashExports as a0,api$1 as a1,IconButton as a2,Confirm as a3,makeStyles as a4,ListItemSecondaryAction as a5,List as a6,ListItem as a7,ListItemText as a8,getServerUrl as a9,ErrorFallback as aA,formatRegistryLogoPath as aB,engine as aC,ListItemIcon as aD,ensureDomainAliases as aE,normalizePathPrefix$1 as aF,sortBy$1 as aG,getIp as aH,stringSortHandlerAsc as aI,getAccessUrl as aJ,requireCreateSvgIcon as aK,interopRequireDefaultExports as aL,history as aM,semver$1 as aN,useReactive as aO,useAsyncEffect as aP,sleep as aQ,checkInputByType as aR,Stack$5 as aS,isChrome as aT,_default$2 as aU,axios$1 as aV,shouldCheckDomainStatus as aW,formatMountPoint as aX,_default$5 as aY,FormControlLabel as aZ,Checkbox as a_,useBlockletAppContext as aa,getAuthMethod as ab,ConfirmDialog as ac,setSessionToken as ad,getRestoredAccessUrl as ae,Debug as af,isServerlessBlockletInstalled as ag,getWsClient as ah,useTheme$2 as ai,useQuery as aj,getPathPrefix as ak,HeaderAddon as al,SessionContext as am,Global as an,Routes as ao,Route as ap,Navigate as aq,css$1 as ar,AvatarWithErrorBoundary as as,formatToDatetime as at,getLaunchAgreementUrl as au,axios$4 as av,useSessionContext$1 as aw,Tooltip as ax,getBlockletMetaUrl as ay,ErrorBoundary as az,constant as b,useForkRef as b$,checkIsWildcardDomain as b0,Popover as b1,Card as b2,CardContent as b3,formatToDate as b4,sortDomains as b5,Collapse as b6,isUrl$1 as b7,__awaiter as b8,__generator as b9,_baseRest as bA,_arrayFilter as bB,last_1 as bC,isArrayLikeObject_1 as bD,default_1$c as bE,isDownloading as bF,withPermission as bG,getBlockletUrl as bH,getBlockletUrlParams as bI,createSvgIcon$1 as bJ,styled$1 as bK,ButtonBase as bL,_extends$2 as bM,emphasize_1 as bN,_objectWithoutPropertiesLoose$1 as bO,generateUtilityClasses as bP,generateUtilityClass as bQ,useDefaultProps as bR,useSlotProps as bS,clsx$1 as bT,composeClasses as bU,rootShouldForwardProp as bV,SwitchBase as bW,capitalize$3 as bX,alpha_1 as bY,createChainedFunction$1 as bZ,useControlled as b_,__spread as ba,React$2 as bb,dayjs$1 as bc,Divider as bd,isCertificateMatch as be,NodeContext as bf,useParams as bg,__assign as bh,__spreadArrays as bi,DidAddressWrapper as bj,createPassportSvg as bk,useNodeContext$1 as bl,getWalletType as bm,__vitePreload as bn,isInstalling as bo,Badge as bp,NavLink$1 as bq,createAppPassportSvg as br,_SetCache as bs,_arrayMap as bt,_baseUnary as bu,_arrayIncludes as bv,_arrayIncludesWith as bw,_cacheHas as bx,_baseFlatten as by,_baseUniq as bz,createClient as c,ownerDocument as c$,useId as c0,merge$1 as c1,toSlotDomain as c2,omit$1 as c3,fixBlocklet as c4,memoize$5 as c5,defaultCheckAccessible as c6,getBlockletUrls as c7,urlEvaluation as c8,ButtonGroupContext as c9,API_DID_PREFIX as cA,AUTH_SERVICE_PREFIX as cB,formatDateTime as cC,getExplorerLink as cD,patchJsxToLocale as cE,flat$1 as cF,en$2 as cG,LocaleProvider as cH,getAugmentedNamespace as cI,Theme as cJ,ReactDOM as cK,global$2 as cL,punycodeExports as cM,commonjsGlobal as cN,copy$1 as cO,dist$4 as cP,Util as cQ,require$$3 as cR,getSessionToken as cS,SvgLogo as cT,hoistStatics as cU,getLogoHash as cV,useEnhancedEffect$1 as cW,debounce$5 as cX,ownerWindow as cY,useRtl as cZ,useEventCallback$1 as c_,ButtonGroupButtonContext as ca,BlockletAdminRoles as cb,ListItemAvatar as cc,Avatar$1 as cd,NotificationTag as ce,useNotificationContext as cf,useRequest as cg,useMemoizedFn as ch,isNumber$2 as ci,__read as cj,useLatest as ck,defaultDayjs as cl,useBrowser as cm,Container$3 as cn,isFunction$8 as co,usePassportId as cp,FullPage as cq,useLaunchBlockletContext as cr,useSecurity as cs,authorize as ct,isNewStoreUrl as cu,getAccessibleUrl as cv,getBlockletLogoUrl as cw,Img as cx,useLocation as cy,useMount as cz,useBlockletsContext as d,private_safeAlpha_1 as d$,colors$1 as d0,useFormControl as d1,formControlState as d2,util$6 as d3,upperFirst$2 as d4,camelCase$2 as d5,ClickToCopy as d6,getGridUtilityClass as d7,gridClasses as d8,Grow as d9,lib$1 as dA,urlExports as dB,cloneDeep_1 as dC,get_1 as dD,DID as dE,isHostComponent as dF,FormControlContext as dG,GlobalStyles as dH,formatMuiErrorMessage$1 as dI,deepmerge$1 as dJ,isMuiElement as dK,slotShouldForwardProp as dL,Button$1 as dM,Paper as dN,ClickAwayListener as dO,MenuList as dP,Popper as dQ,useTheme$3 as dR,GlobalStyles$2 as dS,ThemeProvider$2 as dT,toPropertyKey$3 as dU,createSpacing as dV,createBreakpoints as dW,createTheme$1 as dX,private_safeDarken_1 as dY,private_safeLighten_1 as dZ,private_safeEmphasize_1 as d_,PopoverPaper as da,PopoverRoot as db,getOffsetLeft as dc,getOffsetTop as dd,getPopoverUtilityClass as de,popoverClasses as df,emotionSerialize_esm as dg,emotionUtils_browser_esm as dh,emotionCache_browser_esm as di,emotionReact_browser_esm as dj,reactDomExports as dk,Close as dl,_baseIteratee as dm,isArrayLike_1 as dn,keys_1 as dp,_baseFindIndex as dq,toInteger_1 as dr,noop$7 as ds,isObject$p as dt,cloneDeep$1 as du,padStart_1 as dv,Buffer$3 as dw,lib$2 as dx,upperFirst_1 as dy,pick_1 as dz,_default$1 as e,Hidden as e$,private_safeColorChannel_1 as e0,defaultSxConfig as e1,styleFunctionSx$1 as e2,getOverlayAlpha as e3,hslToRgb_1 as e4,THEME_ID as e5,createTypography as e6,StyledEngineProvider as e7,ThemeProvider$1 as e8,alpha$1 as e9,getChipUtilityClass as eA,buttonClasses as eB,getButtonUtilityClass as eC,checkboxClasses as eD,getCheckboxUtilityClass as eE,formControlLabelClasses as eF,getFormControlLabelUtilityClasses as eG,getListItemTextUtilityClass as eH,listItemTextClasses as eI,getMenuItemUtilityClass as eJ,menuItemClasses as eK,getTooltipUtilityClass as eL,tooltipClasses as eM,lighten_1 as eN,darken_1 as eO,Toolbar as eP,getToolbarUtilityClass as eQ,toolbarClasses$1 as eR,_baseIsEqual as eS,SvgIcon as eT,process$1$1 as eU,urlPathFriendly$1 as eV,useThemeProps as eW,defaultTheme$2 as eX,commonjsRequire as eY,create$4 as eZ,ThemeProvider$4 as e_,createMuiTheme as ea,darken$1 as eb,decomposeColor$1 as ec,duration as ed,easing as ee,emphasize$1 as ef,getContrastRatio$1 as eg,getLuminance$1 as eh,hexToRgb$1 as ei,hslToRgb$1 as ej,keyframes as ek,lighten$1 as el,createMixins as em,recomposeColor$1 as en,responsiveFontSizes as eo,rgbToHex$1 as ep,getUnit as eq,toUnitless as er,getPaperUtilityClass as es,paperClasses$1 as et,getIconButtonUtilityClass as eu,iconButtonClasses as ev,getTypographyUtilityClass as ew,typographyClasses$1 as ex,chipClasses as ey,Chip as ez,LocaleContext as f,Fade as f$,Check$1 as f0,withQuery as f1,createTheme$3 as f2,styled$2 as f3,useTheme$4 as f4,extendSxProp as f5,getTargetElement as f6,useEventListener as f7,useUpdateEffect as f8,__spreadArray as f9,util$5 as fA,shams$1 as fB,hasPropertyDescriptors_1 as fC,defineDataProperty as fD,safeBufferExports as fE,requireBrowser$9 as fF,requireElliptic as fG,requireCryptoBrowserify as fH,ripemd160 as fI,getInviteLink$1 as fJ,SessionContext$1 as fK,getIssuePassportLink as fL,Icon as fM,getTextColor_1 as fN,isProtectedRole as fO,lib$3 as fP,createPassportSvg$2 as fQ,semver as fR,browserExports as fS,require$$0$1 as fT,isAbsoluteUrl as fU,dist$1 as fV,browser$4 as fW,requireObjectWithoutPropertiesLoose as fX,loadIcon as fY,createTheme as fZ,ThemeProvider as f_,_baseOrderBy as fa,isArray_1 as fb,default_1$p as fc,useCreation as fd,parseQuery as fe,useDebounceFn as ff,createRoot as fg,useSize as fh,colors$2 as fi,callBound$2 as fj,callBindExports as fk,normalizePathPrefix_1 as fl,clamp$1 as fm,useIsFocusVisible as fn,extractEventHandlers as fo,resolveProps as fp,debounce_1 as fq,noop_1 as fr,_default$3 as fs,formatTime as ft,RelativeTime as fu,useUpdate as fv,tmp as fw,getVisitorId$2 as fx,useConfirm as fy,translate as fz,getDefaultExportFromCjs$1 as g,jssGlobal as g$,ListItemButton as g0,AUTH_SERVICE_PREFIX$1 as g1,getTranslation as g2,SessionPermission as g3,NAVIGATION_URL as g4,LocaleSelector as g5,SessionUser as g6,default_1$l as g7,ResponsiveHeader as g8,withErrorBoundary as g9,_inheritsLoose$3 as gA,forceReflow as gB,Transition$1 as gC,_baseIndexOf as gD,_baseToString as gE,_baseTrim as gF,_castSlice as gG,_charsEndIndex as gH,_stringToArray as gI,validateDomain as gJ,axios_1 as gK,CopyButton as gL,isServerless as gM,getSystemDomains as gN,data$m as gO,isRunning as gP,getTransferAppLink as gQ,pick$1 as gR,data$g as gS,data$f as gT,data$h as gU,_copyArray as gV,usePreviousProps as gW,setRef as gX,ClearIcon as gY,hoistNonReactStatics_cjs as gZ,functionPlugin as g_,NavMenu as ga,DashboardWrapper as gb,BlockletSDK as gc,useUnmount as gd,identity_1 as ge,_baseForOwn as gf,_baseMap as gg,isString_1 as gh,isPlainObject_1 as gi,default_1$h as gj,browser as gk,uniq_1 as gl,pLimit_1 as gm,require$$6 as gn,_isIndex as go,_typeof$2 as gp,Dialog$1 as gq,dialogClasses as gr,DialogContent as gs,FocusTrap as gt,DialogActions as gu,TransitionGroup as gv,localizedFormatPlugin as gw,isExtracting as gx,APP_PREFIX as gy,objectAssign$1 as gz,useTheme as h,jssNested as h0,camelCase as h1,defaultUnit as h2,jssVendorPrefixer as h3,jssPropsSort as h4,createJss as h5,getDynamicStyles as h6,isNil_1 as h7,omit_1 as h8,withoutTrailingSlash as h9,require$$1$4 as hA,Check as hB,reactIsExports as hC,isValidClusterSize as hD,extractStatusUrlFromNextWorkflow as hE,pWaitFor$1 as hF,hasRequiredSteps as hG,getStoreList as hH,flatten$4 as hI,trimEnd$1 as hJ,useCheckUpdateByUrl as hK,DialogTitle as hL,_baseEach as hM,_baseAssignValue as hN,throttle$4 as hO,pTimeout$2 as hP,TimeoutError_1 as hQ,debounce$3 as hR,uniq$1 as hS,Backdrop as hT,isString$2 as ha,isAbsoluteUrl$1 as hb,nanoid as hc,omitBy$1 as hd,isNil$1 as he,isEqual$1 as hf,useEffectWithTarget$1 as hg,__values as hh,isString$3 as hi,isFunction$5 as hj,circularProgressClasses$1 as hk,getCircularProgressUtilityClass as hl,collapseClasses$1 as hm,getCollapseUtilityClass as hn,boxClasses as ho,Icon$2 as hp,getIconUtilityClass as hq,iconClasses$1 as hr,getLinearProgressUtilityClass as hs,linearProgressClasses$1 as ht,getMenuUtilityClass as hu,menuClasses$1 as hv,_unsupportedIterableToArray as hw,_setPrototypeOf as hx,_assertThisInitialized$1 as hy,_createClass as hz,Link$1 as i,jsxRuntimeExports as j,get$6 as k,filesize as l,Typography as m,newStyled as n,formatLocale as o,prettyMs as p,joinURL as q,reactExports as r,styled as s,useLocaleContext as t,useNodeContext as u,useSessionContext as v,_default as w,DialogContentText as x,DidConnect as y,getWebWalletUrl as z};
|
|
2490
|
+
`;browser.homedir=function(){return"/"};(function(a){var j=commonjsGlobal&&commonjsGlobal.__importDefault||function(pt){return pt&&pt.__esModule?pt:{default:pt}};Object.defineProperty(a,"__esModule",{value:!0}),a.hasMountPoint=a.hasStartEngine=a.isPackBlocklet=a.isGatewayBlocklet=a.getBlockletEngine=void 0;const _e=j(browser),et=constant,nt=pt=>{if(pt===void 0)throw new Error("blocklet meta param is required");const{engine:dt}=pt;if(!dt)return{interpreter:"node",source:""};if(!Array.isArray(dt))return dt;const mt=_e.default.platform(),Et=dt.find(wt=>wt.platform===mt);if(!Et)throw new Error(`can not find a proper engine interpreter on ${mt}`);return Et};a.getBlockletEngine=nt;const tt=pt=>(pt==null?void 0:pt.group)===et.BlockletGroup.gateway;a.isGatewayBlocklet=tt;const it=pt=>(pt==null?void 0:pt.group)===et.BlockletGroup.pack;a.isPackBlocklet=it;const ut=pt=>!!(pt!=null&&pt.main)||(0,a.getBlockletEngine)(pt||{}).interpreter==="blocklet";a.hasStartEngine=ut;const ft=pt=>((0,a.hasStartEngine)(pt)||((pt==null?void 0:pt.interfaces)||[]).find(dt=>dt.type===et.BLOCKLET_INTERFACE_TYPE_WEB))&&(0,a.isGatewayBlocklet)(pt)===!1;a.hasMountPoint=ft})(engine);(function(a){var j=commonjsGlobal&&commonjsGlobal.__importDefault||function(pn){return pn&&pn.__esModule?pn:{default:pn}};Object.defineProperty(a,"__esModule",{value:!0}),a.hasStartEngine=a.isPackBlocklet=a.isGatewayBlocklet=a.isAccessible=a.isRunning=a.isBeforeInstalled=a.isInProgress=a.getBlockletServices=a.getBlockletAppIdList=a.getRolesFromAuthConfig=a.isPreferenceKey=a.isExternalBlocklet=a.getBlockletChainInfo=a.getChainInfo=a.getConnectAppUrl=a.getParentComponentName=a.filterComponentsV2=a.findComponentByIdV2=a.findComponentV2=a.findComponentById=a.findComponent=a.getComponentBundleId=a.getComponentName=a.getComponentId=a.replaceSlotToIp=a.getComponentWhoCanAccess=a.getWhoCanAccess=a.findServiceFromMeta=a.findWebInterfacePort=a.findWebInterface=a.fixBlockletStatus=a.getAppDescription=a.getDisplayName=a.getAppName=a.hasRunnableComponent=a.wipeSensitiveData=a.isEnvShareable=a.isEnvShareableToClient=a.getComponentMissingConfigs=a.getAppMissingConfigs=a.getSharedConfigObj=a.isDeletableBlocklet=a.forEachComponentV2Sync=a.forEachComponentV2=a.forEachChildSync=a.forEachChild=a.forEachBlockletSync=a.forEachBlocklet=a.isFreeComponent=a.isFreeBlocklet=void 0,a.hasResourceType=void 0,a.getAppUrl=Gt;const _e=j(get_1),et=j(uniq_1),nt=require$$6,tt=j(pLimit_1),it=j(constant$3),ut=constant,ft=engine;Object.defineProperty(a,"hasStartEngine",{enumerable:!0,get:function(){return ft.hasStartEngine}}),Object.defineProperty(a,"isGatewayBlocklet",{enumerable:!0,get:function(){return ft.isGatewayBlocklet}}),Object.defineProperty(a,"isPackBlocklet",{enumerable:!0,get:function(){return ft.isPackBlocklet}});const{NODE_SERVICES:pt,SLOT_FOR_IP_DNS_SITE:dt,WHO_CAN_ACCESS:mt,WHO_CAN_ACCESS_PREFIX_ROLES:Et}=it.default,wt=(pn,En=[])=>`${En.map(An=>An&&An.meta?An.meta.did:"").join("/")}${En.length?"/":""}${pn&&pn.meta?pn.meta.did:""}`;a.getComponentId=wt;const St=(pn,En=[])=>`${En.map(An=>An&&An.meta?An.meta.name:"").join("/")}${En.length?"/":""}${pn&&pn.meta?pn.meta.name:""}`;a.getComponentName=St;const Ct=pn=>`${pn.meta.bundleName}@${pn.meta.version}`;a.getComponentBundleId=Ct;const Dt=pn=>{if(!pn)return"";const En=pn.split("/");return En.pop(),!En.length||(En[En.length-1].startsWith("@")&&En.pop(),!En.length)?"":En.join("/")};a.getParentComponentName=Dt;const At=(pn,En,{parallel:An=!1,concurrencyLimit:zn=5,sync:rn,params:Ut,_parent:Zt,_root:hn,_level:wn=0,_tasks:qn,_ancestors:kn=[],_limit:Mn}={})=>{const Kn=hn||Zt||pn,On=wt(pn,kn),jn=kn.concat(pn);if(rn){const Gn=En(pn,{parent:Zt,root:Kn,level:wn,params:Ut,ancestors:kn,id:On});if(pn.children)for(const Ir of pn.children)At(Ir,En,{sync:rn,params:Gn,_parent:pn,_root:Kn,_level:wn+1,_ancestors:jn});return null}if(!An)return new Promise(async(Gn,Ir)=>{try{const Wn=await En(pn,{parent:Zt,root:Kn,level:wn,ancestors:kn,params:Ut,id:On});if(pn.children)for(const Qn of pn.children)await At(Qn,En,{params:Wn,_parent:pn,_root:Kn,_level:wn+1,_ancestors:jn});Gn(null)}catch(Wn){Ir(Wn)}});const cr=Mn||(0,tt.default)(zn),Un=qn||[];if(Un.push(cr(()=>En(pn,{parent:Zt,root:Kn,level:wn,ancestors:kn,id:On}))),pn.children)for(const Gn of pn.children)At(Gn,En,{parallel:An,_parent:pn,_root:Kn,_level:wn+1,_tasks:Un,_ancestors:jn,_limit:cr});return qn?null:Promise.all(Un)};a.forEachBlocklet=At;const Pt=(pn,En)=>At(pn,En,{sync:!0});a.forEachBlockletSync=Pt;const It=(pn,En,{parallel:An=!1,concurrencyLimit:zn=5,sync:rn}={})=>{if(rn){if(pn.children)for(const hn of pn.children)En(hn);return null}if(!An)return new Promise(async(hn,wn)=>{try{if(pn.children)for(const qn of pn.children)await En(qn);hn(null)}catch(qn){wn(qn)}});const Ut=(0,tt.default)(zn),Zt=[];if(pn.children)for(const hn of pn.children)Zt.push(Ut(()=>En(hn)));return Promise.all(Zt)};a.forEachComponentV2=It;const Lt=(pn,En)=>It(pn,En,{sync:!0});a.forEachComponentV2Sync=Lt;const zt=(pn,En,An)=>At(pn,(zn,rn)=>rn.level===0?{}:En(zn,rn),An);a.forEachChild=zt;const Ft=(pn,En)=>zt(pn,En,{sync:!0});a.forEachChildSync=Ft;const Ht=(pn,En,{_ancestors:An=[],returnAncestors:zn=!1}={})=>{if(!En)return null;if(En(pn,{ancestors:An}))return zn?{component:pn,ancestors:An}:pn;for(const rn of pn.children||[]){const Ut=An.concat(pn),Zt=Ht(rn,En,{_ancestors:Ut,returnAncestors:zn});if(Zt)return Zt}return null};a.findComponent=Ht;const Qt=(pn,En,{returnAncestors:An=!1}={})=>(Array.isArray(En)&&(En=En.join("/")),Ht(pn,(zn,{ancestors:rn})=>{const Ut=wt(zn,rn);return En===Ut},{returnAncestors:An}));a.findComponentById=Qt;const tn=(pn,En)=>{if(!En)return null;for(const An of pn.children||[])if(En(An,pn))return An;return null};a.findComponentV2=tn;const mn=(pn,En)=>En?(Array.isArray(En)&&(En=En.join("/")),tn(pn,(An,zn)=>{if(En.includes("/")){const rn=wt(An,[zn]);return En===rn}return En===An.meta.did})):null;a.findComponentByIdV2=mn;const $t=(pn,En)=>{if(!En)return[];const An=[];for(const zn of pn.children||[])En(zn,pn)&&An.push(zn);return An};a.filterComponentsV2=$t;const rt=pn=>!!pn&&!!(pn.key||pn.name)&&!pn.secure&&pn.shared!==!1&&!ut.BLOCKLET_CONFIGURABLE_KEY[pn.key||pn.name];a.isEnvShareableToClient=rt;const st=pn=>!!pn&&!!(pn.key||pn.name)&&!pn.secure&&!!pn.shared&&!ut.BLOCKLET_CONFIGURABLE_KEY[pn.key||pn.name];a.isEnvShareable=st;const ct=(pn,En)=>{const An={};return!pn||!En||(Array.isArray(pn.configs)&&pn.configs.forEach(({key:zn,value:rn,secure:Ut})=>{if(!st({key:zn,secure:Ut,shared:!0}))return;const Zt=(pn.configObj||{})[zn]||rn,hn=(En.configs||[]).find(wn=>wn.key===zn);(!hn||st(hn)||!hn.value&&!(En.configObj||{})[hn.key])&&(An[zn]=Zt)}),(pn.configs||[]).forEach(({key:zn,value:rn})=>{[ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_HOST,ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_ID,ut.BLOCKLET_CONFIGURABLE_KEY.BLOCKLET_APP_CHAIN_TYPE].includes(zn)&&(An[ut.CHAIN_PROP_MAP[zn]]=rn)})),An};a.getSharedConfigObj=ct;const ht=pn=>pn.key.startsWith(ut.BLOCKLET_PREFERENCE_PREFIX)===!0;a.isPreferenceKey=ht;const vt=(pn,En)=>!!(pn.required&&(!pn.value&&!En[pn.key]||Object.values(ut.CHAIN_PROP_MAP).includes(pn.key)&&Object.keys(En).includes(pn.key)&&!En[pn.key])),xt=(pn={})=>{const En=[];return Lt(pn,An=>{var Ut;if(((Ut=An.meta)==null?void 0:Ut.group)===ut.BlockletGroup.gateway)return;const zn=An.configs||[],rn=ct(pn,An);zn.forEach(Zt=>{vt(Zt,rn)&&En.push({did:An.meta.did,key:Zt.key,description:Zt.description})})}),En.filter(An=>!ht(An))};a.getAppMissingConfigs=xt;const Tt=(pn={},En={})=>{const An=[],zn=pn.configs||[],rn=ct(En,pn);return zn.forEach(Ut=>{vt(Ut,rn)&&An.push({did:pn.meta.did,key:Ut.key,description:Ut.description})}),An};a.getComponentMissingConfigs=Tt;const yt=pn=>pn.payment?(pn.payment.price||[]).map(An=>An.value||0).every(An=>An===0):!0;a.isFreeBlocklet=yt;const ot=pn=>!pn.payment||!pn.payment.componentPrice?!0:!pn.payment.componentPrice.length;a.isFreeComponent=ot;const bt=pn=>pn&&(At(pn,En=>{En.configs&&(En.configs=En.configs.filter(An=>!ht(An)),En.configs.forEach(An=>{An.secure&&(An.value=An.value?"__encrypted__":"")})),(En.environments||[]).forEach(An=>{["BLOCKLET_APP_SK","BLOCKLET_APP_PSK"].includes(An.key)&&(An.value="__encrypted__")}),(En.migratedFrom||[]).forEach(An=>{An.appSk="__encrypted__"}),delete pn.configObj,delete pn.environmentObj},{sync:!0}),pn);a.wipeSensitiveData=bt;const Mt=pn=>{if(!pn)return!1;const En=pn.environments.find(An=>An.key==="BLOCKLET_DELETABLE");return En?En.value==="yes":!0};a.isDeletableBlocklet=Mt;const Ot=pn=>{let En=!1;return Pt(pn,An=>{An.meta.group!==ut.BlockletGroup.gateway&&(En=!0)}),En};a.hasRunnableComponent=Ot;const Vt=(pn,En=!1)=>{if(!pn)return"";const{meta:An}=pn;let zn;if(!En&&pn.environments){const rn=pn.environments.find(Ut=>Ut.key==="BLOCKLET_APP_NAME");rn&&rn.value&&(zn=rn.value)}return zn||An.title||An.name};a.getAppName=Vt,a.getDisplayName=Vt;const Nt=(pn,En=!1)=>{if(!pn)return"";const{meta:An}=pn;let zn;if(!En&&pn.environments){const rn=pn.environments.find(Ut=>Ut.key==="BLOCKLET_APP_DESCRIPTION");rn&&rn.value&&(zn=rn.value)}return zn||An.description||An.name};a.getAppDescription=Nt;function Gt(pn){var zn,rn,Ut;const En=(Ut=(rn=(zn=pn==null?void 0:pn.site)==null?void 0:zn.domainAliases)==null?void 0:rn.sort((Zt,hn)=>{var wn,qn,kn,Mn;return(wn=Zt.accessibility)!=null&&wn.accessible&&((qn=hn.accessibility)!=null&&qn.accessible)?+Zt.isProtected-+hn.isProtected:+((kn=hn.accessibility)==null?void 0:kn.accessible)-+((Mn=Zt.accessibility)==null?void 0:Mn.accessible)}))==null?void 0:Ut.map(Zt=>{var qn;const hn=(qn=Zt==null?void 0:Zt.domainStatus)!=null&&qn.isHttps?"https://":"http://",wn=Zt==null?void 0:Zt.value;return`${hn}${wn}`}).filter(Boolean);return En==null?void 0:En[0]}const qt=pn=>{pn&&(Pt(pn,En=>{En.status=(0,ut.fromBlockletStatus)(En.status),En.source!==void 0&&(En.source=(0,ut.fromBlockletSource)(En.source))}),pn.settings&&(pn.settings.children||[]).forEach(En=>{Pt(En,An=>{An.status=(0,ut.fromBlockletStatus)(An.status),An.source!==void 0&&(An.source=(0,ut.fromBlockletSource)(An.source))})}))};a.fixBlockletStatus=qt;const nn=pn=>{if(!pn)return null;const En=pn.meta||pn||{},{interfaces:An=[]}=En;return Array.isArray(An)?An.find(zn=>zn.type===ut.BLOCKLET_INTERFACE_TYPE_WEB):null};a.findWebInterface=nn;const fn=pn=>{if(!pn)return null;const En=nn(pn),{ports:An}=pn;return!En||!An?null:An[En.port]};a.findWebInterfacePort=fn;const yn=(pn,En)=>{const An=[En];En===pt.AUTH&&An.push(pt.AUTH_SERVICE);const zn=nn(pn);return zn?(zn.services||[]).find(rn=>An.includes(rn.name)):null};a.findServiceFromMeta=yn;const Jt=pn=>{if(!pn)return mt.ALL;if((0,_e.default)(pn,"settings.whoCanAccess"))return pn.settings.whoCanAccess;const En=yn(pn.meta,pt.AUTH);return(0,_e.default)(En,"config.whoCanAccess")?En.config.whoCanAccess:mt.ALL};a.getWhoCanAccess=Jt;const Bt=(pn,En)=>{const An=(pn.configs||[]).find(rn=>rn.key===ut.BLOCKLET_CONFIGURABLE_KEY.COMPONENT_ACCESS_WHO);if(An)return An.value;if(En&&(0,_e.default)(En,"settings.whoCanAccess")&&(0,_e.default)(En,"settings.whoCanAccess")!==mt.ALL)return(0,_e.default)(En,"settings.whoCanAccess");const zn=yn(pn.meta,pt.AUTH);return(0,_e.default)(zn,"config.whoCanAccess")?zn.config.whoCanAccess:mt.ALL};a.getComponentWhoCanAccess=Bt;const Kt=({request:pn,baseUrl:En})=>{const An=pn.headers["x-blocklet-did"]||"",zn=pn.headers["x-blocklet-real-did"]||"",rn=pn.headers["x-path-prefix"]||"/",Ut=pn.headers["x-group-path-prefix"]||"/";let Zt=En;return An!==zn&&rn!==Ut&&(Zt=(0,nt.joinURL)(Zt,"/").replace(rn,Ut)),Zt};a.getConnectAppUrl=Kt;const un=(pn,En)=>{const An=(En||"").includes(":")?":":/\./;return(pn||"").replace(dt,(En||"").replace(new RegExp(An,"g"),"-"))};a.replaceSlotToIp=un;const sn=pn=>{const En=Object.entries(ut.CHAIN_INFO_CONFIG).reduce((An,zn)=>{const[rn,[Ut,Zt]]=zn;return An[Ut]=(0,_e.default)(pn,rn)||Zt,An},{});return En.type==="ethereum"&&En.id==="none"&&(En.id="1"),En};a.getChainInfo=sn;const vn=pn=>{const En=sn({});if(!pn)return En;const An=sn(pn.configObj);if(An.host!=="none")return An;let zn;return Ft(pn,rn=>{if(zn&&zn.host!=="none")return;const Ut=sn(rn.configObj);Ut.host!=="none"&&(zn=Ut)}),zn||En};a.getBlockletChainInfo=vn;const $n=pn=>!!(pn!=null&&pn.controller);a.isExternalBlocklet=$n;const cn=pn=>pn.whoCanAccess.startsWith(Et)?pn.whoCanAccess.substring(Et.length).split(","):[];a.getRolesFromAuthConfig=cn;const gn=pn=>{const En=Array.isArray(pn.migratedFrom)?pn.migratedFrom.map(An=>An.appDid):[];return(0,et.default)([pn.appDid,pn.appPid,...En].filter(Boolean))};a.getBlockletAppIdList=gn;const Fn=pn=>{const En=[];return pn&&Pt(pn,An=>{var rn;(((rn=An.meta)==null?void 0:rn.interfaces)||[]).filter(Ut=>Ut.type===ut.BLOCKLET_INTERFACE_TYPE_SERVICE).forEach(Ut=>{const Zt=Ut.port||{};En.push({name:Ut.name,protocol:Ut.protocol,port:Number(Zt.external),upstreamPort:Number((An.ports||{})[Zt.internal])})})}),En};a.getBlockletServices=Fn;const _n=pn=>[ut.BlockletStatus.downloading,ut.BlockletStatus.waiting,ut.BlockletStatus.starting,ut.BlockletStatus.installing,ut.BlockletStatus.stopping,ut.BlockletStatus.upgrading,"downloading","waiting","starting","installing","extracting","stopping","upgrading","restarting","deleting"].includes(pn);a.isInProgress=_n;const In=pn=>[ut.BlockletStatus.added,ut.BlockletStatus.waiting,ut.BlockletStatus.downloading,ut.BlockletStatus.installing,"added","waiting","downloading","installing"].includes(pn);a.isBeforeInstalled=In;const lr=pn=>[ut.BlockletStatus.running,"running"].includes(pn);a.isRunning=lr;const xn=pn=>[ut.BlockletStatus.running,ut.BlockletStatus.waiting,ut.BlockletStatus.downloading,"running","waiting","downloading"].includes(pn);a.isAccessible=xn;const Sn=(pn,{type:En,did:An}={type:"",did:""})=>{var zn,rn,Ut;return pn?!(0,ft.hasStartEngine)(pn.meta)&&((Ut=(rn=(zn=pn.meta)==null?void 0:zn.resource)==null?void 0:rn.bundles)==null?void 0:Ut.length)>0&&(pn.meta.resource.bundles||[]).some(Zt=>Zt.type===En&&Zt.did===An):!1};a.hasResourceType=Sn,a.default={isFreeBlocklet:yt,isFreeComponent:ot,forEachBlocklet:At,forEachBlockletSync:Pt,forEachChild:zt,forEachChildSync:Ft,forEachComponentV2:It,forEachComponentV2Sync:Lt,isDeletableBlocklet:Mt,getSharedConfigObj:ct,getAppMissingConfigs:xt,getComponentMissingConfigs:Tt,isEnvShareableToClient:rt,isEnvShareable:st,wipeSensitiveData:bt,hasRunnableComponent:Ot,getAppName:Vt,getAppDescription:Nt,getAppUrl:Gt,getDisplayName:Vt,fixBlockletStatus:qt,findWebInterface:nn,findWebInterfacePort:fn,findServiceFromMeta:yn,getWhoCanAccess:Jt,getComponentWhoCanAccess:Bt,replaceSlotToIp:un,getComponentId:wt,getComponentName:St,getComponentBundleId:Ct,findComponent:Ht,findComponentById:Qt,findComponentV2:tn,findComponentByIdV2:mn,filterComponentsV2:$t,getParentComponentName:Dt,getConnectAppUrl:Kt,getChainInfo:sn,getBlockletChainInfo:vn,isExternalBlocklet:$n,isPreferenceKey:ht,getRolesFromAuthConfig:cn,getBlockletServices:Fn,isInProgress:_n,isBeforeInstalled:In,isRunning:lr,isAccessible:xn,isGatewayBlocklet:ft.isGatewayBlocklet,isPackBlocklet:ft.isPackBlocklet,hasStartEngine:ft.hasStartEngine,hasResourceType:Sn}})(util);const getServerUrl=(a,j=!1)=>{const _e=a.routing.adminPath;return j?encodeURIComponent(joinURL(window.location.origin,_e)):joinURL(window.location.origin,_e)},getLaunchAgreementUrl=(a,j,_e)=>{const et=getServerUrl(j),nt=joinURL(_e,`/api/blocklets/${a.did}/blocklet.json`),tt=new URL(joinURL(et,"/launch-blocklet/agreement"));return tt.searchParams.set("blocklet_meta_url",nt),tt.searchParams.set("from",window.location.href),tt.href},ensureDomainAliases=async(a,{getIP:j}={})=>{if(!a||!a.length)return[];if(!j||!a.some(et=>et.value.includes(constant$3.SLOT_FOR_IP_DNS_SITE)))return a;const _e=await j();return _e?a.map(et=>{try{return et.value=util.replaceSlotToIp(et.value,_e),et}catch{return et}}).filter(Boolean):a},getAppCapabilities=a=>{const j={didSpace:null};return util.forEachBlockletSync(a,_e=>{var et,nt;j.didSpace===constant.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED||j.didSpace===constant.BLOCKLET_APP_SPACE_REQUIREMENT.REQUIRED_ON_SETUP||(nt=(et=_e==null?void 0:_e.meta)==null?void 0:et.capabilities)!=null&&nt.didSpace&&(j.didSpace=_e.meta.capabilities.didSpace)}),j},fixBlocklet=async(a,{fixRuntime:j=!0,oldBlocklet:_e,getIP:et}={})=>{if(a.site||(a.site={domainAliases:[],rules:[]}),a.site.rules.forEach(nt=>{nt.from.pathPrefix=normalizePathPrefix$1(nt.from.pathPrefix||"/")}),a.site.rules=sortBy$1(a.site.rules,nt=>nt.from.pathPrefix),j===!0)a.site.domainAliases=await ensureDomainAliases(a.site.domainAliases,{getIP:et}),a.appRuntimeInfo&&(a.appRuntimeInfo.startAt=new Date-a.appRuntimeInfo.uptime),util.forEachBlockletSync(a,nt=>{nt.runtimeInfo&&(nt.runtimeInfo.startAt=new Date-nt.runtimeInfo.uptime)});else if(j==="merge-old"&&_e){a.site.domainAliases=_e.site.domainAliases,a.appRuntimeInfo=_e.appRuntimeInfo;const nt={};util.forEachBlockletSync(_e,(tt,{id:it})=>{nt[it]=tt}),util.forEachBlockletSync(a,(tt,{id:it})=>{const ut=nt[it];ut&&(tt.runtimeInfo=ut.runtimeInfo,tt.diskInfo=ut.diskInfo,tt.engine=ut.engine)})}else a.site.domainAliases=[];a.capabilities=getAppCapabilities(a)},DEFAULT_WALLET_TYPE="arcblock",getWalletType=(a,j=!1)=>{let _e;return j?(_e=(a.configs||[]).find(et=>et.key==="BLOCKLET_APP_CHAIN_TYPE"),_e&&_e.value||(_e=(a.environments||[]).find(et=>["CHAIN_TYPE","BLOCKLET_APP_CHAIN_TYPE"].includes(et.key)),_e&&_e.value)?_e.value:DEFAULT_WALLET_TYPE):(_e=(a.environments||[]).find(et=>["CHAIN_TYPE","BLOCKLET_APP_CHAIN_TYPE"].includes(et.name)),_e&&_e.default?_e.default:DEFAULT_WALLET_TYPE)},isServerless=a=>!isEmpty$2(a==null?void 0:a.controller);let cache=null;const fetch$1=async()=>{const a=window.env.apiPrefix||"/",j=joinURL(a,"/api/dns-resolve?accessible=1");try{return(await axios$4.get(j)).data.address}catch{return null}},getIp=()=>(cache||(cache=fetch$1()),cache),BlockletsContext=reactExports.createContext({}),{Provider:Provider$2,Consumer:Consumer$2}=BlockletsContext,mergeBlocklets=(a,j,_e)=>_e?a.map(et=>{const nt={...et},tt=j.find(it=>it.meta.did===et.meta.did);return tt&&_e.forEach(it=>{nt[it]=tt[it]}),nt}):j;function BlockletsProvider({children:a}){const j=useNodeContext(),_e=createClient(),[et,nt]=reactExports.useState(null),[tt,it]=reactExports.useState(!1),[ut,ft]=reactExports.useState([]),[pt,dt]=reactExports.useState([]),[mt,Et]=reactExports.useState(!1),wt=(Lt,zt)=>{util.isExternalBlocklet(Lt)?dt(zt):ft(zt)},St=4,Ct=async({silent:Lt=!0,retries:zt=St,updates:Ft,useCache:Ht=!0}={})=>{Lt||it(!0);try{nt(null);const{blocklets:Qt}=await _e.getBlocklets({input:{useCache:Ht}});for(const $t of Qt)await fixBlocklet($t,{getIP:getIp});const tn=Qt.filter($t=>!util.isExternalBlocklet($t)),mn=Qt.filter(util.isExternalBlocklet);ft($t=>mergeBlocklets($t,tn,Ft)),dt($t=>mergeBlocklets($t,mn,Ft)),it(!1),Et(!0)}catch(Qt){zt>0?setTimeout(()=>Ct({silent:Lt,retries:zt-1,useCache:Ht}),1e3):(it(!1),nt(Qt))}},Dt=async Lt=>{try{const{blocklet:zt}=await j.api.getBlocklet({input:{did:Lt.meta.did,attachRuntimeInfo:!0}});await fixBlocklet(zt,{getIP:getIp}),wt(zt,Ft=>Ft.some(Ht=>Ht.meta.did===zt.meta.did)?Ft.map(Ht=>Ht.meta.did===zt.meta.did?zt:Ht):[...Ft,zt])}catch(zt){nt(zt)}},At=Lt=>{j.refresh(),Dt(Lt)};reactExports.useEffect(()=>{Ct({silent:!1})},[]);const Pt=Lt=>{const zt={};util.forEachBlockletSync(Lt,(Ft,{id:Ht})=>{zt[Ht]=constant.fromBlockletStatus(Ft.status)}),wt(Lt,Ft=>Ft.map(Ht=>(Ht.meta.did===Lt.meta.did&&util.forEachBlockletSync(Ht,(Qt,{id:tn})=>{zt[tn]&&(Qt.status=zt[tn])}),Ht)))};useSubscription(constant.BlockletEvents.added,Lt=>{Lt.status=constant.fromBlockletStatus(Lt.status),wt(Lt,zt=>[...zt,Lt])}),useSubscription(constant.BlockletEvents.removed,Lt=>{j.refresh(),wt(Lt,zt=>zt.filter(Ft=>Ft.meta.did!==Lt.meta.did))}),useSubscription(constant.BlockletEvents.statusChange,Pt),useSubscription(constant.BlockletEvents.installed,At),useSubscription(constant.BlockletEvents.upgraded,At),useSubscription(constant.BlockletEvents.updated,Dt),useSubscription(constant.BlockletEvents.startFailed,Dt);const It={loading:tt,error:et,data:ut,externalData:pt,refresh:Ct,initialized:mt,api:_e};return jsxRuntimeExports.jsx(Provider$2,{value:{blocklets:It},children:a})}function useBlockletsContext(){const{blocklets:a}=reactExports.useContext(BlockletsContext);return a}const authorize=({user:a,launchType:j,nftId:_e})=>{var et;if(!a)return!1;if(j==="serverless"){if(!_e)throw new Error("nftId is required");return((et=a==null?void 0:a.controller)==null?void 0:et.nftId)===_e}return(a.permissions||[]).includes("mutate_blocklets")},isServerlessBlockletInstalled=a=>{var j,_e;return a.isGetBlocklet&&((_e=(j=a.runtimeBlocklet)==null?void 0:j.controller)==null?void 0:_e.consumedAt)},getRestoredAccessUrl=async a=>{const j=getBlockletUrls({blocklet:a});let _e="";return _e=j.find(et=>{try{const{hostname:nt}=new URL(et);return urlEvaluation.isSlpDomain(nt)}catch(nt){return console.error(nt),!1}}),_e||(_e=await getAccessibleUrl(j)),_e},LaunchBlockletContext=reactExports.createContext({}),{Provider:Provider$1,Consumer:Consumer$1}=LaunchBlockletContext;function LaunchBlockletProvider({children:a}){const{session:j}=useSessionContext$1(),{t:_e}=useLocaleContext(),{api:et,info:nt}=useNodeContext(),[tt]=useSearchParams(),it=createClient(),ut=tt.get("launchType"),ft=tt.get("fromLauncher"),pt=tt.get("blocklet_meta_url")||"",dt=tt.get("nftId")||"",mt=tt.get("launcherSessionId")||"",Et=tt.get("launcherUrl")||"",wt=new URL(pt).origin,[St,Ct]=reactExports.useState({meta:null,appDid:tt.get("appDid")||null,sessionId:tt.get("sessionId")||null,isFree:!0,isExternal:!1,isInstalling:!1,isInstalled:!1,isRunning:!1,launcherSession:null,registryUrl:""}),Dt=(mn,$t)=>Ct(rt=>({...rt,appDid:mn,sessionId:$t})),At=authorize({user:j.user,launchType:ut,nftId:dt}),[Pt,It]=reactExports.useState(null),[Lt,zt]=reactExports.useState(!0),Ft=reactExports.useMemo(()=>nt?getServerUrl(nt):"",[nt]),Ht=async mn=>{if(!mn)throw new Error("appDid should not be empty");const{blocklet:$t}=await et.getBlocklet({input:{did:mn,attachConfig:!1}});if(!$t)return null;const rt=constant.BlockletStatus[$t.status],st=!!dt,ct=rt<constant.BlockletStatus.installed,ht=rt===constant.BlockletStatus.installed,vt=rt===constant.BlockletStatus.running;return Ct(xt=>({...xt,isInstalled:ht,isRunning:vt,isExternal:st,isInstalling:ct})),{isInstalled:ht,isRunning:vt,isExternal:st,isInstalling:ct}},Qt=async()=>{zt(!0);try{if(!pt)throw new Error(_e("common.invalidParam"));const[{meta:mn,isFree:$t,registryUrl:rt},{launcherSession:st,error:ct}]=await Promise.all([et.getBlockletMetaFromUrl({input:{url:pt,checkPrice:!0}}),mt?et.getLauncherSession({input:{launcherSessionId:mt,launcherUrl:Et}}):Promise.resolve({})]);if(mt&&!st)throw new Error(`Launch session invalid: ${ct}`);if(!mn)throw new Error(_e("LaunchBlockletBlocklet.error.loadMetaFailed"));let ht={};At&&St.appDid&&(ht=await Ht(St.appDid)),Ct(vt=>({...vt,...ht,meta:mn,isFree:$t,registryUrl:rt,launcherSession:st}))}catch(mn){console.error(mn),It(mn.message)}finally{zt(!1)}};reactExports.useEffect(()=>{var mn,$t,rt;((mn=j==null?void 0:j.user)==null?void 0:mn.role)===constant$3.SERVER_ROLES.EXTERNAL_BLOCKLET_CONTROLLER&&((rt=($t=j==null?void 0:j.user)==null?void 0:$t.controller)==null?void 0:rt.nftId)!==dt&&j.logout(),Qt()},[]),reactExports.useEffect(()=>{Lt||!St.meta||(At?St.appDid&&Ht(St.appDid).catch(mn=>{toast.error(mn.message)}):(Ct(mn=>({...mn,isInstalled:!1,isRunning:!1,isExternal:!1})),It(null)))},[At]);const tn={meta:St.meta,isFree:St.isFree,appDid:St.appDid,sessionId:St.sessionId,isInstalling:St.isInstalling,isInstalled:St.isInstalled,isExternal:St.isExternal,isRunning:St.isRunning,serverUrl:Ft,storeUrl:St.registryUrl||wt,blockletMetaUrl:pt,fromLauncher:ft,loading:Lt,error:Pt,api:it,getBlocklet:Ht,setAppDid:Dt,launcherUrl:Et,launcherSession:St.launcherSession,launcherSessionId:mt};return jsxRuntimeExports.jsx(Provider$1,{value:tn,children:a})}function useLaunchBlockletContext(){return reactExports.useContext(LaunchBlockletContext)}function useQuery(){return new URLSearchParams(useLocation().search)}const BlockletAppContext=reactExports.createContext(),{Provider,Consumer}=BlockletAppContext;function BlockletAppProvider({children:a}){const _e=useQuery().get("blocklet_meta_url"),et=_default$2(async()=>{const{data:tt}=await axios$1.get(_e);return tt});if(et.loading)return jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});const nt={meta:et.value,error:et.error};return jsxRuntimeExports.jsx(Provider,{value:nt,children:a})}BlockletAppProvider.propTypes={children:PropTypes.any.isRequired};function useBlockletAppContext(){return reactExports.useContext(BlockletAppContext)}const Dashboard=reactExports.lazy(()=>__vitePreload(()=>import("./index-Ir1Ynx3j.js"),__vite__mapDeps([0,1,2,3,4]),import.meta.url)),BlockletList=reactExports.lazy(()=>__vitePreload(()=>import("./index-CRPL3-Eg.js"),__vite__mapDeps([5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,2,30,31,32,33,34]),import.meta.url)),BlockletRestore=reactExports.lazy(()=>__vitePreload(()=>import("./index-DSMtyaan.js"),__vite__mapDeps([35,36,37,38,39,40,41,6,42,43,44,45,13,10,12,26,19,18]),import.meta.url)),BlockletStore=reactExports.lazy(()=>__vitePreload(()=>import("./index-Bgn8IBLJ.js"),__vite__mapDeps([46,6,47,48,49,18,17,50,10,51,52,32,13,12,42,53,43,54,3,55,56,19,23,24,57,58,59]),import.meta.url)),Settings=reactExports.lazy(()=>__vitePreload(()=>import("./index-BIbeG_A4.js"),__vite__mapDeps([60,61,11,58,62,63,50,64,13,10,12,7,8,9,14,15,16,17,18,19,65,54,3,55,2,66,6,67,68,32,21,20,69,34,70,71,72,4,73]),import.meta.url)),LogPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-pn9KZg_s.js"),__vite__mapDeps([74,75,23,24,10,76]),import.meta.url)),TeamPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-BiC43zns.js"),__vite__mapDeps([77,61,11,78,79,80,18,6,10,12,81,14,82,83,32,84,85,86,17,13,7,8,9,15,16,19,87,34,88,89,50,25,26,49,21,90,56,3,2,91,92,93,55,94,33,23,24,95,96,97,48,51,98,1,54,71]),import.meta.url)),BlockletDetail=reactExports.lazy(()=>__vitePreload(()=>import("./detail-BGzCRUYj.js"),__vite__mapDeps([99,61,11,20,21,22,6,19,23,24,31,56,90,59]),import.meta.url)),EULAPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-BwSVsn4U.js"),[],import.meta.url)),Notifications=reactExports.lazy(()=>__vitePreload(()=>import("./index-CSJhz71g.js"),__vite__mapDeps([100,1,81,14]),import.meta.url)),IssuePassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-BWXhDqh4.js"),__vite__mapDeps([101,102,89,103,91,69,104]),import.meta.url)),LostPassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-B-Ld-2Ly.js"),__vite__mapDeps([105,69,85,53,104,30]),import.meta.url)),ExchangePassport=reactExports.lazy(()=>__vitePreload(()=>import("./index-DfHODGgp.js"),__vite__mapDeps([106,104]),import.meta.url)),BlockletLauncher=reactExports.lazy(()=>__vitePreload(()=>import("./index-Dytzeids.js"),__vite__mapDeps([107,36,37,38,39,40,41,108,79,80,45,26,6,28,25,29,66]),import.meta.url)),NotFoundPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-B1Hn6vLR.js"),__vite__mapDeps([109,89]),import.meta.url)),Invite=reactExports.lazy(()=>__vitePreload(()=>import("./index-cR-wh0v1.js"),__vite__mapDeps([110,102,89,103,91,69,104]),import.meta.url)),Console=reactExports.lazy(()=>__vitePreload(()=>import("./index-CvxaH3or.js").then(a=>a.a2),__vite__mapDeps([111,112]),import.meta.url)),AnalyticsPage=reactExports.lazy(()=>__vitePreload(()=>import("./index-CzOBa7wa.js"),__vite__mapDeps([113,61,11,114,115,116,70,10,117,9,13,12,51,7,8,14,15,16,17,18,19,31,118,119,4,6,98,24]),import.meta.url));function useSharedContext(){const a=useNodeContext(),{session:j}=useSessionContext$1(),{wallet:_e}=useBrowser(),et=j.user&&j.user.did;return reactExports.useEffect(()=>{const nt=getWsClient();return et?nt.connect():nt.isConnected()&&nt.disconnect(),()=>{nt.isConnected()&&nt.disconnect()}},[et]),reactExports.useEffect(()=>{if(_e)return()=>{};const nt=()=>{document.visibilityState==="visible"&&j.refresh()};return document.addEventListener("visibilitychange",nt),()=>{document.removeEventListener("visibilitychange",nt)}},[]),{node:a,session:j}}function ProtectedApp(){var it;const{t:a}=useLocaleContext(),{node:j,session:_e}=useSharedContext(),et=useLocation();reactExports.useEffect(()=>{window.tracker&&typeof window.tracker.pageView=="function"&&window.tracker.pageView(`${et.pathname}${et.search}`)},[et]),reactExports.useEffect(()=>{var ut;((ut=_e==null?void 0:_e.user)==null?void 0:ut.role)===constant$3.SERVER_ROLES.EXTERNAL_BLOCKLET_CONTROLLER&&_e.logout()},[(it=_e==null?void 0:_e.user)==null?void 0:it.role]);const nt=jsxRuntimeExports.jsx(CircularProgress,{});if(j.loading||_e.loading)return jsxRuntimeExports.jsx(Center,{children:nt});if(!j.info.initialized)return getAuthMethod.getServerAuthMethod(j.info)==="nft"?jsxRuntimeExports.jsx(NodeVerifyOwner,{action:"verify-owner"}):jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(NodeConnectOwner,{})});if(j.info.upgradeSessionId)return jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(MaintainProgress,{})});if(!_e.user)return jsxRuntimeExports.jsx(NodeLogin,{loadingEle:nt});const tt=jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});return jsxRuntimeExports.jsx(NotificationProvider,{children:jsxRuntimeExports.jsxs(BlockletsProvider,{children:[jsxRuntimeExports.jsx(Health,{}),jsxRuntimeExports.jsx(CheckNodeStatus,{}),jsxRuntimeExports.jsx(GlobalSubscriber,{}),jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:tt,children:jsxRuntimeExports.jsxs(Routes,{children:[jsxRuntimeExports.jsx(Route,{path:"/dashboard",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:"Dashboard",children:jsxRuntimeExports.jsx(Dashboard,{})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.blocklets"),children:jsxRuntimeExports.jsx(BlockletList,{})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets/:did/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:"Blocklets",children:jsxRuntimeExports.jsx(BlockletDetail,{})})}),jsxRuntimeExports.jsx(Route,{path:"/settings/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.setting"),children:jsxRuntimeExports.jsx(Settings,{})})}),jsxRuntimeExports.jsx(Route,{path:"/eula",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("setup.steps.eula"),children:jsxRuntimeExports.jsx(EULAPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/store",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.store"),children:jsxRuntimeExports.jsx(BlockletStore,{})})}),jsxRuntimeExports.jsx(Route,{path:"/console",element:jsxRuntimeExports.jsx(DashboardRoute,{title:`GraphQL ${a("common.console")}`,scrollable:!1,fullWidth:!0,children:jsxRuntimeExports.jsx(Console,{})})}),jsxRuntimeExports.jsx(Route,{path:"/notifications",element:jsxRuntimeExports.jsx(DashboardRoute,{children:jsxRuntimeExports.jsx(Notifications,{})})}),jsxRuntimeExports.jsx(Route,{path:"/team/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.team"),children:jsxRuntimeExports.jsx(TeamPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/logs/:name",element:jsxRuntimeExports.jsx(DashboardRoute,{scrollable:!1,fullWidth:!0,title:a("common.logs"),children:jsxRuntimeExports.jsx(LogPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/analytics/:tab",element:jsxRuntimeExports.jsx(DashboardRoute,{fullWidth:!0,title:a("common.analytics"),children:jsxRuntimeExports.jsx(AnalyticsPage,{})})}),jsxRuntimeExports.jsx(Route,{path:"/",element:jsxRuntimeExports.jsx(Navigate,{to:"/dashboard",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/team",element:jsxRuntimeExports.jsx(Navigate,{to:"/team/members",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/analytics",element:jsxRuntimeExports.jsx(Navigate,{to:"/analytics/traffic",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/logs",element:jsxRuntimeExports.jsx(Navigate,{to:"/logs/abtnode",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/router",element:jsxRuntimeExports.jsx(Navigate,{to:"/router/rules",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/settings",element:jsxRuntimeExports.jsx(Navigate,{to:"/settings/basic",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/marketplace",element:jsxRuntimeExports.jsx(Navigate,{to:"/store",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"/marketplace/:did",element:jsxRuntimeExports.jsx(Navigate,{to:"/store/:did",replace:!0})}),jsxRuntimeExports.jsx(Route,{path:"*",element:jsxRuntimeExports.jsx(NotFoundPage,{})})]})})]})})}function UnprotectedWrapper({children:a}){const{node:j,session:_e}=useSharedContext();return j.loading||!_e.initialized&&_e.loading?jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})}):j.info.upgradeSessionId?jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(MaintainProgress,{})}):a}function App(){const{changeLocale:a}=useLocaleContext(),j=useQuery();reactExports.useEffect(()=>{const et=j.get("locale");et&&["zh","en"].includes(et)&&a(et)},[]);const _e=jsxRuntimeExports.jsx(Center,{children:jsxRuntimeExports.jsx(CircularProgress,{})});return jsxRuntimeExports.jsx(reactExports.Suspense,{fallback:_e,children:jsxRuntimeExports.jsxs(Routes,{children:[jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/issue-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(IssuePassport,{})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/lost-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(LostPassport,{})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/exchange-passport`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(ExchangePassport,{})})}),jsxRuntimeExports.jsx(Route,{path:"/accept-server",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(NodeVerifyOwner,{action:"accept-server"})})}),jsxRuntimeExports.jsx(Route,{path:"/launch-blocklet/*",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(LaunchBlockletProvider,{children:jsxRuntimeExports.jsx(BlockletLauncher,{})})})}),jsxRuntimeExports.jsx(Route,{path:"/blocklets/restore/*",element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(BlockletAppProvider,{children:jsxRuntimeExports.jsx(BlockletRestore,{})})})}),jsxRuntimeExports.jsx(Route,{path:`${constant$3.WELLKNOWN_SERVICE_PATH_PREFIX}/invite`,element:jsxRuntimeExports.jsx(UnprotectedWrapper,{children:jsxRuntimeExports.jsx(Invite,{})})}),jsxRuntimeExports.jsx(Route,{path:"/*",element:jsxRuntimeExports.jsx(ProtectedApp,{})})]})})}function AppWrapper(){const a=window.env&&window.env.apiPrefix?window.env.apiPrefix:"/";return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(CssBaseline,{}),jsxRuntimeExports.jsx(BrowserRouter,{history,basename:a,children:jsxRuntimeExports.jsx(Root$5,{children:jsxRuntimeExports.jsx(App,{})})})]})}const root=createRoot(document.getElementById("root"));root.render(jsxRuntimeExports.jsx(AppWrapper,{}));const prefix=window.env&&window.env.apiPrefix?window.env.apiPrefix:"/";register(`${prefix}/service-worker.js`.replace(/\/+/g,"/"),{registrationOptions:{scope:prefix},registered(){console.info("Service worker has been registered.")},ready(){console.info("Service worker is active.")},cached(){console.info("Content has been cached for offline use.")},updatefound(){console.info("New content is downloading.")},updated(){console.info("New content is available; please refresh.")},offline(){console.info("No internet connection found. App is running in offline mode.")},error(a){console.error("Error during service worker registration:",a)}});export{default_1$n as $,useNavigate as A,ButtonComponent as B,CircularProgress as C,Dialog as D,toast as E,useSearchParams as F,Grid as G,constant$3 as H,ImageIcon as I,useMediaQuery as J,Alert as K,LinearProgress as L,formatError$1 as M,util as N,Link$2 as O,PropTypes as P,Box as Q,isEmpty$2 as R,RelativeTime$1 as S,TagComponent as T,MenuItem$1 as U,Permission as V,WrappedDidAddress as W,Center as X,toString_1 as Y,propTypesExports as Z,_createCompounder as _,useSubscription as a,Menu$1 as a$,lodashExports as a0,api$1 as a1,IconButton as a2,Confirm as a3,makeStyles as a4,ListItemSecondaryAction as a5,List as a6,ListItem as a7,ListItemText as a8,getServerUrl as a9,ErrorFallback as aA,formatRegistryLogoPath as aB,engine as aC,ListItemIcon as aD,ensureDomainAliases as aE,normalizePathPrefix$1 as aF,sortBy$1 as aG,getIp as aH,stringSortHandlerAsc as aI,getAccessUrl as aJ,requireCreateSvgIcon as aK,interopRequireDefaultExports as aL,history as aM,semver$1 as aN,useReactive as aO,useAsyncEffect as aP,sleep as aQ,checkInputByType as aR,Stack$5 as aS,isChrome as aT,_default$2 as aU,axios$1 as aV,shouldCheckDomainStatus as aW,formatMountPoint as aX,_default$5 as aY,FormControlLabel as aZ,Checkbox as a_,useBlockletAppContext as aa,getAuthMethod as ab,ConfirmDialog as ac,setSessionToken as ad,getRestoredAccessUrl as ae,Debug as af,isServerlessBlockletInstalled as ag,getWsClient as ah,useTheme$2 as ai,useQuery as aj,getPathPrefix as ak,HeaderAddon as al,SessionContext as am,Global as an,Routes as ao,Route as ap,Navigate as aq,css$1 as ar,AvatarWithErrorBoundary as as,formatToDatetime as at,getLaunchAgreementUrl as au,axios$4 as av,useSessionContext$1 as aw,Tooltip as ax,getBlockletMetaUrl as ay,ErrorBoundary as az,constant as b,useForkRef as b$,checkIsWildcardDomain as b0,Popover as b1,Card as b2,CardContent as b3,formatToDate as b4,sortDomains as b5,Collapse as b6,isUrl$1 as b7,__awaiter as b8,__generator as b9,_baseRest as bA,_arrayFilter as bB,last_1 as bC,isArrayLikeObject_1 as bD,default_1$c as bE,isDownloading as bF,withPermission as bG,getBlockletUrl as bH,getBlockletUrlParams as bI,createSvgIcon$1 as bJ,styled$1 as bK,ButtonBase as bL,_extends$2 as bM,emphasize_1 as bN,_objectWithoutPropertiesLoose$1 as bO,generateUtilityClasses as bP,generateUtilityClass as bQ,useDefaultProps as bR,useSlotProps as bS,clsx$1 as bT,composeClasses as bU,rootShouldForwardProp as bV,SwitchBase as bW,capitalize$3 as bX,alpha_1 as bY,createChainedFunction$1 as bZ,useControlled as b_,__spread as ba,React$2 as bb,dayjs$1 as bc,Divider as bd,isCertificateMatch as be,NodeContext as bf,useParams as bg,__assign as bh,__spreadArrays as bi,DidAddressWrapper as bj,createPassportSvg as bk,useNodeContext$1 as bl,getWalletType as bm,__vitePreload as bn,isInstalling as bo,Badge as bp,NavLink$1 as bq,createAppPassportSvg as br,_SetCache as bs,_arrayMap as bt,_baseUnary as bu,_arrayIncludes as bv,_arrayIncludesWith as bw,_cacheHas as bx,_baseFlatten as by,_baseUniq as bz,createClient as c,ownerDocument as c$,useId as c0,merge$1 as c1,toSlotDomain as c2,omit$1 as c3,fixBlocklet as c4,memoize$5 as c5,defaultCheckAccessible as c6,getBlockletUrls as c7,urlEvaluation as c8,ButtonGroupContext as c9,API_DID_PREFIX as cA,AUTH_SERVICE_PREFIX as cB,formatDateTime as cC,getExplorerLink as cD,patchJsxToLocale as cE,flat$1 as cF,en$2 as cG,LocaleProvider as cH,getAugmentedNamespace as cI,Theme as cJ,ReactDOM as cK,global$2 as cL,punycodeExports as cM,commonjsGlobal as cN,copy$1 as cO,dist$4 as cP,Util as cQ,require$$3 as cR,getSessionToken as cS,SvgLogo as cT,hoistStatics as cU,getLogoHash as cV,useEnhancedEffect$1 as cW,debounce$5 as cX,ownerWindow as cY,useRtl as cZ,useEventCallback$1 as c_,ButtonGroupButtonContext as ca,BlockletAdminRoles as cb,ListItemAvatar as cc,Avatar$1 as cd,NotificationTag as ce,useNotificationContext as cf,useRequest as cg,useMemoizedFn as ch,isNumber$2 as ci,__read as cj,useLatest as ck,defaultDayjs as cl,useBrowser as cm,Container$3 as cn,isFunction$8 as co,usePassportId as cp,FullPage as cq,useLaunchBlockletContext as cr,useSecurity as cs,authorize as ct,isNewStoreUrl as cu,getAccessibleUrl as cv,getBlockletLogoUrl as cw,Img as cx,useLocation as cy,useMount as cz,useBlockletsContext as d,private_safeAlpha_1 as d$,colors$1 as d0,useFormControl as d1,formControlState as d2,util$6 as d3,upperFirst$2 as d4,camelCase$2 as d5,ClickToCopy as d6,getGridUtilityClass as d7,gridClasses as d8,Grow as d9,lib$1 as dA,urlExports as dB,cloneDeep_1 as dC,get_1 as dD,DID as dE,isHostComponent as dF,FormControlContext as dG,GlobalStyles as dH,formatMuiErrorMessage$1 as dI,deepmerge$1 as dJ,isMuiElement as dK,slotShouldForwardProp as dL,Button$1 as dM,Paper as dN,ClickAwayListener as dO,MenuList as dP,Popper as dQ,useTheme$3 as dR,GlobalStyles$2 as dS,ThemeProvider$2 as dT,toPropertyKey$3 as dU,createSpacing as dV,createBreakpoints as dW,createTheme$1 as dX,private_safeDarken_1 as dY,private_safeLighten_1 as dZ,private_safeEmphasize_1 as d_,PopoverPaper as da,PopoverRoot as db,getOffsetLeft as dc,getOffsetTop as dd,getPopoverUtilityClass as de,popoverClasses as df,emotionSerialize_esm as dg,emotionUtils_browser_esm as dh,emotionCache_browser_esm as di,emotionReact_browser_esm as dj,reactDomExports as dk,Close as dl,_baseIteratee as dm,isArrayLike_1 as dn,keys_1 as dp,_baseFindIndex as dq,toInteger_1 as dr,noop$7 as ds,isObject$p as dt,cloneDeep$1 as du,padStart_1 as dv,Buffer$3 as dw,lib$2 as dx,upperFirst_1 as dy,pick_1 as dz,_default$1 as e,Hidden as e$,private_safeColorChannel_1 as e0,defaultSxConfig as e1,styleFunctionSx$1 as e2,getOverlayAlpha as e3,hslToRgb_1 as e4,THEME_ID as e5,createTypography as e6,StyledEngineProvider as e7,ThemeProvider$1 as e8,alpha$1 as e9,getChipUtilityClass as eA,buttonClasses as eB,getButtonUtilityClass as eC,checkboxClasses as eD,getCheckboxUtilityClass as eE,formControlLabelClasses as eF,getFormControlLabelUtilityClasses as eG,getListItemTextUtilityClass as eH,listItemTextClasses as eI,getMenuItemUtilityClass as eJ,menuItemClasses as eK,getTooltipUtilityClass as eL,tooltipClasses as eM,lighten_1 as eN,darken_1 as eO,Toolbar as eP,getToolbarUtilityClass as eQ,toolbarClasses$1 as eR,_baseIsEqual as eS,SvgIcon as eT,process$1$1 as eU,urlPathFriendly$1 as eV,useThemeProps as eW,defaultTheme$2 as eX,commonjsRequire as eY,create$4 as eZ,ThemeProvider$4 as e_,createMuiTheme as ea,darken$1 as eb,decomposeColor$1 as ec,duration as ed,easing as ee,emphasize$1 as ef,getContrastRatio$1 as eg,getLuminance$1 as eh,hexToRgb$1 as ei,hslToRgb$1 as ej,keyframes as ek,lighten$1 as el,createMixins as em,recomposeColor$1 as en,responsiveFontSizes as eo,rgbToHex$1 as ep,getUnit as eq,toUnitless as er,getPaperUtilityClass as es,paperClasses$1 as et,getIconButtonUtilityClass as eu,iconButtonClasses as ev,getTypographyUtilityClass as ew,typographyClasses$1 as ex,chipClasses as ey,Chip as ez,LocaleContext as f,Fade as f$,Check$1 as f0,withQuery as f1,createTheme$3 as f2,styled$2 as f3,useTheme$4 as f4,extendSxProp as f5,getTargetElement as f6,useEventListener as f7,useUpdateEffect as f8,__spreadArray as f9,util$5 as fA,shams$1 as fB,hasPropertyDescriptors_1 as fC,defineDataProperty as fD,safeBufferExports as fE,requireBrowser$9 as fF,requireElliptic as fG,requireCryptoBrowserify as fH,ripemd160 as fI,getInviteLink$1 as fJ,SessionContext$1 as fK,getIssuePassportLink as fL,Icon as fM,getTextColor_1 as fN,isProtectedRole as fO,lib$3 as fP,createPassportSvg$2 as fQ,semver as fR,browserExports as fS,require$$0$1 as fT,isAbsoluteUrl as fU,dist$1 as fV,browser$4 as fW,requireObjectWithoutPropertiesLoose as fX,loadIcon as fY,createTheme as fZ,ThemeProvider as f_,_baseOrderBy as fa,isArray_1 as fb,default_1$p as fc,useCreation as fd,parseQuery as fe,useDebounceFn as ff,createRoot as fg,useSize as fh,colors$2 as fi,callBound$2 as fj,callBindExports as fk,normalizePathPrefix_1 as fl,clamp$1 as fm,useIsFocusVisible as fn,extractEventHandlers as fo,resolveProps as fp,debounce_1 as fq,noop_1 as fr,_default$3 as fs,formatTime as ft,RelativeTime as fu,useUpdate as fv,tmp as fw,getVisitorId$2 as fx,useConfirm as fy,translate as fz,getDefaultExportFromCjs$1 as g,jssGlobal as g$,ListItemButton as g0,AUTH_SERVICE_PREFIX$1 as g1,getTranslation as g2,SessionPermission as g3,NAVIGATION_URL as g4,LocaleSelector as g5,SessionUser as g6,default_1$l as g7,ResponsiveHeader as g8,withErrorBoundary as g9,_inheritsLoose$3 as gA,forceReflow as gB,Transition$1 as gC,_baseIndexOf as gD,_baseToString as gE,_baseTrim as gF,_castSlice as gG,_charsEndIndex as gH,_stringToArray as gI,validateDomain as gJ,axios_1 as gK,CopyButton as gL,isServerless as gM,getSystemDomains as gN,data$m as gO,isRunning as gP,getTransferAppLink as gQ,pick$1 as gR,data$g as gS,data$f as gT,data$h as gU,_copyArray as gV,usePreviousProps as gW,setRef as gX,ClearIcon as gY,hoistNonReactStatics_cjs as gZ,functionPlugin as g_,NavMenu as ga,DashboardWrapper as gb,BlockletSDK as gc,useUnmount as gd,identity_1 as ge,_baseForOwn as gf,_baseMap as gg,isString_1 as gh,isPlainObject_1 as gi,default_1$h as gj,browser as gk,uniq_1 as gl,pLimit_1 as gm,require$$6 as gn,_isIndex as go,_typeof$2 as gp,Dialog$1 as gq,dialogClasses as gr,DialogContent as gs,FocusTrap as gt,DialogActions as gu,TransitionGroup as gv,localizedFormatPlugin as gw,isExtracting as gx,APP_PREFIX as gy,objectAssign$1 as gz,useTheme as h,jssNested as h0,camelCase as h1,defaultUnit as h2,jssVendorPrefixer as h3,jssPropsSort as h4,createJss as h5,getDynamicStyles as h6,isNil_1 as h7,omit_1 as h8,withoutTrailingSlash as h9,require$$1$4 as hA,Check as hB,reactIsExports as hC,isValidClusterSize as hD,extractStatusUrlFromNextWorkflow as hE,pWaitFor$1 as hF,hasRequiredSteps as hG,getStoreList as hH,flatten$4 as hI,trimEnd$1 as hJ,useCheckUpdateByUrl as hK,DialogTitle as hL,_baseEach as hM,_baseAssignValue as hN,throttle$4 as hO,pTimeout$2 as hP,TimeoutError_1 as hQ,debounce$3 as hR,uniq$1 as hS,Backdrop as hT,isString$2 as ha,isAbsoluteUrl$1 as hb,nanoid as hc,omitBy$1 as hd,isNil$1 as he,isEqual$1 as hf,useEffectWithTarget$1 as hg,__values as hh,isString$3 as hi,isFunction$5 as hj,circularProgressClasses$1 as hk,getCircularProgressUtilityClass as hl,collapseClasses$1 as hm,getCollapseUtilityClass as hn,boxClasses as ho,Icon$2 as hp,getIconUtilityClass as hq,iconClasses$1 as hr,getLinearProgressUtilityClass as hs,linearProgressClasses$1 as ht,getMenuUtilityClass as hu,menuClasses$1 as hv,_unsupportedIterableToArray as hw,_setPrototypeOf as hx,_assertThisInitialized$1 as hy,_createClass as hz,Link$1 as i,jsxRuntimeExports as j,get$6 as k,filesize as l,Typography as m,newStyled as n,formatLocale as o,prettyMs as p,joinURL as q,reactExports as r,styled as s,useLocaleContext as t,useNodeContext as u,useSessionContext as v,_default as w,DialogContentText as x,DidConnect as y,getWebWalletUrl as z};
|