@abtnode/webapp 1.16.43-beta-20250422-042711-c40bec75 → 1.16.43-beta-20250425-130658-8da18f4d
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/{AdapterDayjs-Dd50umeM.js → AdapterDayjs-CiB9toI9.js} +7 -7
- package/dist/assets/{Add-CaztVzCy.js → Add-jEZFTiQU.js} +1 -1
- package/dist/assets/{ArrowDropDown-DVC5NCF_.js → ArrowDropDown-CT-4P1KC.js} +1 -1
- package/dist/assets/{Autocomplete-BvgGgwn-.js → Autocomplete-Bs7d-YbL.js} +1 -1
- package/dist/assets/{Breadcrumbs--d8mi7-f.js → Breadcrumbs-BaQf5vA9.js} +1 -1
- package/dist/assets/{ButtonGroup-BwBRy_Vd.js → ButtonGroup-CXxrSIV0.js} +1 -1
- package/dist/assets/{CSSTransition-B2MHWQVG.js → CSSTransition-BP8Rhpxg.js} +1 -1
- package/dist/assets/{CallMerge-BKOZFJsL.js → CallMerge-Cglc7qj4.js} +1 -1
- package/dist/assets/CardContent-7kMksoLZ.js +1 -0
- package/dist/assets/{ChevronLeft-BLMagiOR.js → ChevronLeft-D0cz-2NS.js} +1 -1
- package/dist/assets/{ChevronRight-CmLzNb37.js → ChevronRight-ByKIlh_D.js} +1 -1
- package/dist/assets/{Clear-DnKBhMMz.js → Clear-CzcbL8Ae.js} +1 -1
- package/dist/assets/{Close-z9azgP87.js → Close-C7TOtk9p.js} +1 -1
- package/dist/assets/{Community-CfAYk0rg.js → Community-1Q3DqT_w.js} +1 -1
- package/dist/assets/{Delete-lfXEd_sD.js → Delete-CoHU08w5.js} +1 -1
- package/dist/assets/Delete-DosVyBLR.js +1 -0
- package/dist/assets/{DeleteOutline-CpHx956r.js → DeleteOutline-BOT28g3_.js} +1 -1
- package/dist/assets/{Done-B07f5HKr.js → Done-D-DP22Cm.js} +1 -1
- package/dist/assets/{Edit-DeW-Raa6.js → Edit-CC4z5k1g.js} +1 -1
- package/dist/assets/{ErrorOutline-BamXOGix.js → ErrorOutline-DjYrwQ38.js} +1 -1
- package/dist/assets/{HelpOutline-PjbpgGnS.js → HelpOutline-bgVW4YK3.js} +1 -1
- package/dist/assets/{Holiday-os2if6d3.js → Holiday-DIaowIan.js} +1 -1
- package/dist/assets/{Launch-VrwX5mL6.js → Launch-JGrFRNfl.js} +1 -1
- package/dist/assets/{Link-9GZNaOgm.js → Link-C2QoHwsl.js} +1 -1
- package/dist/assets/{ListItemButton-UrtScDNv.js → ListItemButton-CbFcdXgo.js} +1 -1
- package/dist/assets/{ListSubheader-CXoRyaHI.js → ListSubheader-BiYgsVLH.js} +1 -1
- package/dist/assets/{LoadingButton-D_BY4Jqp.js → LoadingButton-Cq4u8ov0.js} +1 -1
- package/dist/assets/{LockIcon-BNPULy1Y.js → LockIcon-Cze-ShJ1.js} +1 -1
- package/dist/assets/{Meeting-DYJ-razI.js → Meeting-BGFEJhQX.js} +1 -1
- package/dist/assets/{MoreHoriz-BGho5EZt.js → MoreHoriz-DzKDzUVs.js} +1 -1
- package/dist/assets/{MoreVert-Dsx1svGJ.js → MoreVert-3cneIjbG.js} +1 -1
- package/dist/assets/{OffSick-DkD5M8d5.js → OffSick-BUmXwL3A.js} +1 -1
- package/dist/assets/OpenInNew-BjHMRNtt.js +1 -0
- package/dist/assets/{Public-DsP_rIVN.js → Public-CUgb9aF1.js} +1 -1
- package/dist/assets/{Refresh-CY_XOdj5.js → Refresh-Dv_hYlcX.js} +1 -1
- package/dist/assets/{SchemaReference.es-CHFc7aCW.js → SchemaReference.es-zp5UNeP-.js} +1 -1
- package/dist/assets/{Search-Cy1sS0Ys.js → Search-SdD3jiMC.js} +1 -1
- package/dist/assets/{Slider-DliZyLUu.js → Slider-Crvk4gHf.js} +1 -1
- package/dist/assets/{Stepper-D00G8whg.js → Stepper-BWlWum42.js} +1 -1
- package/dist/assets/TableRow-CPvAPoKO.js +1 -0
- package/dist/assets/{TableSearch-B7Ia4hYX.js → TableSearch-BSpNs5yI.js} +1 -1
- package/dist/assets/{ToggleButtonGroup-Dx7Cqen3.js → ToggleButtonGroup-DKfUnWAC.js} +1 -1
- package/dist/assets/{Verified-DEPnoVi2.js → Verified-ll8KM-RV.js} +1 -1
- package/dist/assets/{VerifiedUser-CtMfrkOq.js → VerifiedUser-89OpS-O0.js} +1 -1
- package/dist/assets/{ViewColumn-1pLOayu5.js → ViewColumn-DYzQrfKK.js} +1 -1
- package/dist/assets/{ViewList-BAJgFctd.js → ViewList-B0GgaL9_.js} +1 -1
- package/dist/assets/{WorkingRemotely-CFsc5wBG.js → WorkingRemotely-DvjI3J2w.js} +1 -1
- package/dist/assets/{_createAggregator-BZiDTQ-1.js → _createAggregator-B68eDEEs.js} +1 -1
- package/dist/assets/{actions-rKZA5Yl3.js → actions-4GlzmDRv.js} +1 -1
- package/dist/assets/{actions-COYCVGfV.js → actions-BzctLrRJ.js} +2 -2
- package/dist/assets/{agreement-CvnU-wvl.js → agreement-CL0yNId5.js} +4 -4
- package/dist/assets/api-CgfGaMAh.js +1 -0
- package/dist/assets/{appearance-BKSHEoHy.js → appearance-DWpHxRQY.js} +1 -1
- package/dist/assets/{ar-DRtGxecv.js → ar-mN5tHF4O.js} +1 -1
- package/dist/assets/{audit-logs-C5PuRwaG.js → audit-logs-Bqt3mjwc.js} +2 -2
- package/dist/assets/blocklet-C1daQzB9.js +1 -0
- package/dist/assets/{brace-fold.es-zOkKbJNK.js → brace-fold.es-BHIReLqK.js} +1 -1
- package/dist/assets/{chain-nejdRVrr.js → chain-D_7KXr7d.js} +1 -1
- package/dist/assets/click-to-copy-CD44pMYS.js +1 -0
- package/dist/assets/cloneDeep-BRXk7foF.js +1 -0
- package/dist/assets/{closebrackets.es-D1eT-FTM.js → closebrackets.es--lhPx3rt.js} +1 -1
- package/dist/assets/{codemirror.es-0rTHjVK9.js → codemirror.es-Bj74ewYY.js} +1 -1
- package/dist/assets/{comment.es-BzTQxNrB.js → comment.es-BYggArDY.js} +1 -1
- package/dist/assets/{config-navigation-DP1VP0AV.js → config-navigation-D-Xbnbfs.js} +17 -17
- package/dist/assets/{connect-to-CLKjNArl.js → connect-to-C5zcVOc7.js} +1 -1
- package/dist/assets/de-BP5gdcKp.js +7 -0
- package/dist/assets/delete-confirm-DAmIANxQ.js +1 -0
- package/dist/assets/{detail-SkSHXUY6.js → detail-PsKOtV5O.js} +3 -3
- package/dist/assets/{dialog.es-DTCttvK1.js → dialog.es-BS5SePjL.js} +1 -1
- package/dist/assets/domains-BTKIPvpd.js +24 -0
- package/dist/assets/{download-hxkTe46m.js → download-C6Z56Tt6.js} +1 -1
- package/dist/assets/emotion-react.browser.esm-OA9QfV18.js +1 -0
- package/dist/assets/es-CBFvWN06.js +7 -0
- package/dist/assets/{foldgutter.es-D09BRatH.js → foldgutter.es-CHhOPKEu.js} +1 -1
- package/dist/assets/fr-CmHa1dCv.js +7 -0
- package/dist/assets/{get-safe-url-6iqduUH5.js → get-safe-url-BBqla3I1.js} +1 -1
- package/dist/assets/{get-safe-url-CVvG2J9I.js → get-safe-url-DK1HRb36.js} +1 -1
- package/dist/assets/getValidReactChildren-C4Batt3I.js +1 -0
- package/dist/assets/hi-CWyDCXYI.js +5 -0
- package/dist/assets/{hint.es-CElKEoBL.js → hint.es-DQgFgx7u.js} +1 -1
- package/dist/assets/{hint.es2-cm-ZWwEJ.js → hint.es2-CfBCBz7B.js} +1 -1
- package/dist/assets/id-3xH3q-wr.js +7 -0
- package/dist/assets/{iframe-BtkIGcLr.js → iframe-BHKiJ7ZC.js} +1 -1
- package/dist/assets/{index-DFqgZ5xa.js → index-2OLC7QPg.js} +1 -1
- package/dist/assets/index-B9NwQ4fV.js +327 -0
- package/dist/assets/index-BBLfRaSi.js +109 -0
- package/dist/assets/{index-BEKPz42W.js → index-BNPQGzJY.js} +2 -2
- package/dist/assets/{index-CrLu05HL.js → index-BNQdv6p6.js} +24 -24
- package/dist/assets/{index-BG2kH0vO.js → index-BTA7w00_.js} +3 -3
- package/dist/assets/{index-B-gpi2ba.js → index-BYFWgS3C.js} +1 -1
- package/dist/assets/{index-D1AcZBxv.js → index-BbPyYcY_.js} +1 -1
- package/dist/assets/{index-D5iXLg7U.js → index-BfmQayrS.js} +1 -1
- package/dist/assets/{index-Chf7gMD-.js → index-BlumH6IJ.js} +6 -6
- package/dist/assets/{index-DacB9LlP.js → index-Bp1Uuyts.js} +1 -1
- package/dist/assets/index-BpN-knDJ.js +1 -0
- package/dist/assets/{index-CmON_Ucm.js → index-C1Dkbnu6.js} +3 -3
- package/dist/assets/{index-BkTRcS0m.js → index-CDZ-Hu0o.js} +5 -5
- package/dist/assets/{index-C9UfyIb3.js → index-CERbZ-Ks.js} +1 -1
- package/dist/assets/index-CFhvSgL3.js +20 -0
- package/dist/assets/index-CIibWbQo.js +138 -0
- package/dist/assets/{index-DU1prNlR.js → index-CMRLl9mx.js} +1 -1
- package/dist/assets/{index-BjeDI2iY.js → index-CMmF_Q73.js} +1 -1
- package/dist/assets/index-Ca_AI8Ja.js +11 -0
- package/dist/assets/{index-Ca2ykS6T.js → index-CawbsPlQ.js} +1 -1
- package/dist/assets/{index-CrdafeIA.js → index-Cb5vovQV.js} +4 -4
- package/dist/assets/{index-CH0ZtB03.js → index-CbyzO-bB.js} +1 -1
- package/dist/assets/{index-CoenHBJL.js → index-Ci13pE37.js} +1 -1
- package/dist/assets/index-CilDVWw4.js +1 -0
- package/dist/assets/{index-BdcAx4jd.js → index-CsApEyBI.js} +1 -1
- package/dist/assets/{index-BaNhzXWK.js → index-Ct3Cv88N.js} +25 -25
- package/dist/assets/{index-dpcQFGC9.js → index-Cv4rDcLo.js} +1 -1
- package/dist/assets/{index-C7M3KjDN.js → index-D1FTf6L1.js} +1 -1
- package/dist/assets/index-D3lDDkys.js +1 -0
- package/dist/assets/{index-BI57n5-1.js → index-D4kEYYxp.js} +1 -1
- package/dist/assets/{index-CkuW1m1M.js → index-DAa8fCLv.js} +3 -3
- package/dist/assets/{index-B8tVxEg2.js → index-DZOoKZ79.js} +1 -1
- package/dist/assets/{index-BCoMTShJ.js → index-Da29Cj1G.js} +3 -3
- package/dist/assets/{index-DwcH9Py2.js → index-DdA20T3i.js} +1 -1
- package/dist/assets/{index-Db1NmfnY.js → index-F-rIOXkO.js} +11 -11
- package/dist/assets/{index-CwQRP9vW.js → index-I20LchFz.js} +1 -1
- package/dist/assets/{index-B_8fIevk.js → index-OQgc2aM9.js} +1 -1
- package/dist/assets/{index-DacxPQzS.js → index-V69Rm1MZ.js} +9 -9
- package/dist/assets/{index-iKNyCq23.js → index-VKNa-9d8.js} +1 -1
- package/dist/assets/{index-CdIzwolo.js → index-VfvLvsbm.js} +1 -1
- package/dist/assets/index-YM5g10d2.js +11 -0
- package/dist/assets/{index-H4oRzuHX.js → index-_5yUL6f2.js} +1 -1
- package/dist/assets/index-bPPx_Hv9.js +289 -0
- package/dist/assets/{index-DMyuQ6gX.js → index-d_P1tmBi.js} +1 -1
- package/dist/assets/{index-bYp_tt8z.js → index-lKfM6BZT.js} +1 -1
- package/dist/assets/index-oaL4Rv1j.js +29 -0
- package/dist/assets/index-uP4E64Y9.js +113 -0
- package/dist/assets/{index.esm-BiF80IE7.js → index.esm-zouKPS5y.js} +1 -1
- package/dist/assets/{info-addon.es-LTLqCI-0.js → info-addon.es-CXIyNQaL.js} +1 -1
- package/dist/assets/{info.es-DGuZ8x_j.js → info.es-B4cU8Aqj.js} +1 -1
- package/dist/assets/{install-from-url-CctlVaYm.js → install-from-url-DQ7AcK35.js} +1 -1
- package/dist/assets/{invitation-B5T1tiZS.js → invitation-BN8GOT5e.js} +5 -5
- package/dist/assets/is-path-prefix-equal-BjsJ5xBH.js +1 -0
- package/dist/assets/{item-C_feFNJE.js → item-DhcUqUC3.js} +5 -5
- package/dist/assets/ja-Dlm9gbED.js +7 -0
- package/dist/assets/{javascript.es-DXQm_49v.js → javascript.es-DmC-LVTH.js} +1 -1
- package/dist/assets/{jump-to-line.es-COQrSkxS.js → jump-to-line.es-CiRJzQAS.js} +1 -1
- package/dist/assets/{jump.es-Bt36pao4.js → jump.es-Cr1rsr6r.js} +1 -1
- package/dist/assets/ko-JYKwx9PY.js +7 -0
- package/dist/assets/{lint.es-D7cZDq3q.js → lint.es-Cao4W6is.js} +1 -1
- package/dist/assets/{lint.es2-DjlpYEUm.js → lint.es2-BmO3ym_D.js} +1 -1
- package/dist/assets/{lint.es3-DZfzAxs3.js → lint.es3-Bw8E5ZSP.js} +1 -1
- package/dist/assets/{list-header-D6gN8uAe.js → list-header-CLvwP9eV.js} +1 -1
- package/dist/assets/{log-D0D7SXBT.js → log-DIqg0luc.js} +1 -1
- package/dist/assets/{lottie-react.esm-Cq33pfIC.js → lottie-react.esm-CXxqofKx.js} +1 -1
- package/dist/assets/{matchbrackets.es-3bFu-rM7.js → matchbrackets.es-YBQDutU-.js} +1 -1
- package/dist/assets/{memory-C4f-u36N.js → memory-y0A5NqJK.js} +1 -1
- package/dist/assets/{mode.es-fSwJIwcv.js → mode.es-CL9LdSgs.js} +1 -1
- package/dist/assets/{mode.es2-DE0KN96r.js → mode.es2-Bn-R4bKM.js} +1 -1
- package/dist/assets/{mode.es3-7lr44IEM.js → mode.es3-qCeL57xO.js} +1 -1
- package/dist/assets/omit-DsCs9CP1.js +1 -0
- package/dist/assets/{onlineParser.es-CgJfI2uz.js → onlineParser.es-CyI9Q_d0.js} +1 -1
- package/dist/assets/{overview-BFj7mF3I.js → overview-mjgztvpK.js} +2 -2
- package/dist/assets/{permission-CWRNDCfb.js → permission-Bvs2yqp1.js} +1 -1
- package/dist/assets/{preference-Bu7eUUWY.js → preference-DfKjVX7Q.js} +4 -4
- package/dist/assets/pt-BgyGyT44.js +5 -0
- package/dist/assets/{raf-schd.esm-CHbi2ex4.js → raf-schd.esm-BhbXYYe6.js} +1 -1
- package/dist/assets/refType-CmlNeQNS.js +1 -0
- package/dist/assets/{resource-dialog-Bkqsb65A.js → resource-dialog-DQHi5__f.js} +4 -4
- package/dist/assets/ru-CEVWIKf9.js +5 -0
- package/dist/assets/runtime-DEyoNLVz.js +1 -0
- package/dist/assets/{schema-v7IiGTwK.js → schema-BxmPumwx.js} +1 -1
- package/dist/assets/{search.es-Dq3fEJn9.js → search.es-Bq_Otaio.js} +1 -1
- package/dist/assets/{searchcursor.es-4j5vi65s.js → searchcursor.es-S4pYTGPm.js} +1 -1
- package/dist/assets/{service-lHsrm0NQ.js → service-R5kw_ant.js} +1 -1
- package/dist/assets/session-DUPXykbA.js +1 -0
- package/dist/assets/shorten-label-9dS8Ib5c.js +1 -0
- package/dist/assets/{show-hint.es-Ojy6T5sj.js → show-hint.es-PvtNb65c.js} +1 -1
- package/dist/assets/{simple-select-F8H5fDWg.js → simple-select-DscPnnca.js} +1 -1
- package/dist/assets/{spaces-BTXS6Yjp.js → spaces-DEZPSf7q.js} +1 -1
- package/dist/assets/{status-l9WKVdEe.js → status-BEg3LYaU.js} +1 -1
- package/dist/assets/{status-IJGTdR69.js → status-D-4k6JPe.js} +1 -1
- package/dist/assets/{sublime.es-B-15UZDa.js → sublime.es-CaqfX_z-.js} +1 -1
- package/dist/assets/{switch-control-DonG73Yn.js → switch-control-D3y8OKM4.js} +1 -1
- package/dist/assets/{table-icons-BHel_001.js → table-icons-Br74wkXv.js} +1 -1
- package/dist/assets/team-BOaKaF7d.js +1 -0
- package/dist/assets/th-y94pKVk7.js +5 -0
- package/dist/assets/{toLower-Na2C3nc2.js → toLower-BZi61gAb.js} +1 -1
- package/dist/assets/toUpper-DCgW1QYY.js +1 -0
- package/dist/assets/{traffic-C0ojZNhU.js → traffic-BDBSkRtU.js} +1 -1
- package/dist/assets/{url-evaluation-gByE9zMg.js → url-evaluation-CiLjXBIq.js} +1 -1
- package/dist/assets/{url-join-D1f7RCcb.js → url-join-BQni1DFo.js} +1 -1
- package/dist/assets/{use-mobile-ccyNEJKq.js → use-mobile-Bj4lPhGz.js} +1 -1
- package/dist/assets/{use-mobile-ate4xZwv.js → use-mobile-d8ioRwmr.js} +1 -1
- package/dist/assets/{useAsync-VXf0m9o5.js → useAsync-BHK_lRzo.js} +1 -1
- package/dist/assets/{useLocalStorage-CM3CvKLy.js → useLocalStorage-i7GWvl8p.js} +1 -1
- package/dist/assets/{useThemeProps-BC8tRkwB.js → useThemeProps-DAMDTLAO.js} +1 -1
- package/dist/assets/util-DJYSIyMs.js +1 -0
- package/dist/assets/vi-Dw7W2UPp.js +5 -0
- package/dist/assets/{wait-container-YMrkmjdy.js → wait-container-Dzs1AE0W.js} +3 -3
- package/dist/assets/withStyles-cMFGSpYF.js +1 -0
- package/dist/assets/wrap-locale-DF7IwF4o.js +1 -0
- package/dist/assets/{zh-CY9wasmC.js → zh-Dag6w2Z7.js} +1 -1
- package/dist/assets/zh-tw-CMYkmBeh.js +7 -0
- package/dist/index.html +1 -1
- package/dist/service-worker.js +1 -1
- package/package.json +1 -1
- package/dist/assets/CardContent-BtOX0LtZ.js +0 -1
- package/dist/assets/Delete-WcGTUKKB.js +0 -1
- package/dist/assets/api-DLD170qt.js +0 -1
- package/dist/assets/blocklet-DJBGGeZX.js +0 -1
- package/dist/assets/click-to-copy-DMnzmGmb.js +0 -1
- package/dist/assets/cloneDeep-B9FR8YvV.js +0 -1
- package/dist/assets/de-BZDWXY3K.js +0 -7
- package/dist/assets/delete-confirm-BtLdya8P.js +0 -1
- package/dist/assets/domains-Ocd33WxK.js +0 -25
- package/dist/assets/emotion-react.browser.esm-BhrBe_SA.js +0 -1
- package/dist/assets/es-kQ6jQG-H.js +0 -7
- package/dist/assets/fr-Bf3jz4q5.js +0 -7
- package/dist/assets/getValidReactChildren-Cpt3JIPG.js +0 -1
- package/dist/assets/hi-DPdbGXyy.js +0 -5
- package/dist/assets/id-BqmT-cL5.js +0 -7
- package/dist/assets/index-BYMuyFwb.js +0 -138
- package/dist/assets/index-BbQ_Eva9.js +0 -1
- package/dist/assets/index-C1Ig2ZHh.js +0 -289
- package/dist/assets/index-CsRDH5PZ.js +0 -11
- package/dist/assets/index-D5tFxfO4.js +0 -29
- package/dist/assets/index-DErkdWGS.js +0 -1
- package/dist/assets/index-Dk_ddRep.js +0 -20
- package/dist/assets/index-JQOci2IN.js +0 -1
- package/dist/assets/index-PKxcb70p.js +0 -113
- package/dist/assets/index-Smdhabbz.js +0 -102
- package/dist/assets/index-U3LqL5BU.js +0 -327
- package/dist/assets/index-dPMBaXU5.js +0 -11
- package/dist/assets/is-path-prefix-equal-evPnCa54.js +0 -1
- package/dist/assets/ja-CyUU4_H1.js +0 -7
- package/dist/assets/ko-DWTxutv1.js +0 -7
- package/dist/assets/omit-CRVyfsPe.js +0 -1
- package/dist/assets/pt-BcsDG9H6.js +0 -5
- package/dist/assets/refType-DslaJ1jV.js +0 -1
- package/dist/assets/ru-BwH1q1F1.js +0 -5
- package/dist/assets/runtime-BTj0lhIQ.js +0 -1
- package/dist/assets/session-ZhuGZWu8.js +0 -1
- package/dist/assets/shorten-label-DOksnAtq.js +0 -1
- package/dist/assets/team-B791iWfh.js +0 -1
- package/dist/assets/th-CNztcQMJ.js +0 -5
- package/dist/assets/toUpper-CxCsEo5T.js +0 -1
- package/dist/assets/util-7WcGgtM2.js +0 -1
- package/dist/assets/vi-Bpl5HEj4.js +0 -5
- package/dist/assets/withStyles-oCXyS3DL.js +0 -1
- package/dist/assets/wrap-locale-C4NCfxhS.js +0 -1
- package/dist/assets/zh-tw-D6qZTlL3.js +0 -7
|
@@ -1,327 +0,0 @@
|
|
|
1
|
-
import{r as h,u as Z,_ as Me,aJ as si,j as e,A as T,aK as On,aL as xr,aM as li,aN as Fn,aO as ot,aP as Ce,aQ as Se,P as m,n as ee,m as z,af as le,aR as Nn,aS as ci,aT as $n,aU as di,y as ae,N as Un,k as I,t as H,aB as pe,aV as Oe,C as G,X as je,B as X,aW as yr,Y as ye,M as q,f as Yt,R as vr,aX as ui,e as Xt,aY as at,aZ as mi,a_ as fi,a$ as br,b0 as pi,b1 as $e,b2 as it,b3 as gi,b4 as hi,b5 as xi,b6 as yi,b7 as vi,b8 as fe,ac as bi,b9 as ji,ba as wi,a3 as Ci,x as jr,W as zn,T as Bn,h as ne,bb as Qt,a as Ut,U as J,b as ht,bc as wr,bd as Cr,V as Si,a5 as zt,be as Di,bf as Pi,bg as ki,bh as Ri,bi as st,aa as _i,H as Ei,bj as Ti,aI as Ze,bk as Ii,ab as At,a8 as Lt,bl as Ai,a9 as Bt,L as Zt,J as Li,bm as Oi,bn as Sr,bo as Te,bp as Ie,bq as Fi,br as Ni,D as Dr,q as Mt,am as $i,g as Ui,ax as Mn,bs as zi,bt as Wn,an as Bi,bu as Mi,bv as Pr,bw as se,S as qn,p as Hn,l as Kn,bx as Wi,by as qi}from"./index-Db1NmfnY.js";import{T as Hi}from"./index-C7M3KjDN.js";import{d as Ki}from"./ArrowDropDown-DVC5NCF_.js";import{u as Jt,C as M,a as Gn}from"./index.esm-BiF80IE7.js";import{S as oe}from"./switch-control-DonG73Yn.js";import{P as re}from"./permission-CWRNDCfb.js";import{D as kr,g as Gi}from"./index-C1Ig2ZHh.js";import{d as Rr}from"./Link-9GZNaOgm.js";import{d as we}from"./Delete-lfXEd_sD.js";import{D as xt}from"./delete-confirm-BtLdya8P.js";import{I as lt}from"./index-CwQRP9vW.js";import{s as Vi}from"./logo-BKA11TRi.js";import{R as _r,a as Wt,b as Yi,W as Je}from"./url-evaluation-gByE9zMg.js";import{_ as Xi}from"./useLocalStorage-CM3CvKLy.js";import{d as Qi}from"./Refresh-CY_XOdj5.js";import{u as Zi}from"./useThemeProps-BC8tRkwB.js";import{C as Ji,R as eo,d as Er}from"./Public-DsP_rIVN.js";import{d as Ue}from"./Add-CaztVzCy.js";import{B as Tr,D as Vn}from"./status-IJGTdR69.js";import{i as to}from"./is-path-prefix-equal-evPnCa54.js";import{d as no}from"./ChevronRight-CmLzNb37.js";import{d as ro}from"./MoreVert-Dsx1svGJ.js";import{d as Ir}from"./Edit-DeW-Raa6.js";import{d as io}from"./CallMerge-BKOZFJsL.js";import{C as oo}from"./CardContent-BtOX0LtZ.js";import{w as ao}from"./withStyles-oCXyS3DL.js";import{S as so}from"./Slider-DliZyLUu.js";import"./index-H4oRzuHX.js";import"./session-ZhuGZWu8.js";import"./emotion-react.browser.esm-BhrBe_SA.js";import"./ViewColumn-1pLOayu5.js";import"./Search-Cy1sS0Ys.js";import"./Clear-DnKBhMMz.js";import"./index-bYp_tt8z.js";import"./TableSearch-B7Ia4hYX.js";import"./click-to-copy-DMnzmGmb.js";import"./shorten-label-DOksnAtq.js";const be="Dashboard",Ar=h.createContext({}),{Provider:lo,Consumer:ll}=Ar,Yn=[be,T.DOMAIN_FOR_IP_SITE,T.DOMAIN_FOR_IP_SITE_REGEXP],co=(t,n)=>{if(t.name===T.DOMAIN_FOR_DEFAULT_SITE)return-1;if(n.name===T.DOMAIN_FOR_DEFAULT_SITE)return 1;const r=Yn.includes(t.name),i=Yn.includes(n.name);return r&&i?Fn(t.name,n.name):r?-1:i?1:Fn(t.name,n.name)},uo=({sites:t,nodePort:n})=>{const r=window.location.host,o=(t||[]).map(a=>{const{id:s,rules:d=[],corsAllowedOrigins:p=[]}=a;let{domain:c,domainAliases:u}=a;u=u||[],[T.DOMAIN_FOR_IP_SITE,T.DOMAIN_FOR_IP_SITE_REGEXP].includes(c)&&(c=be,u.find(w=>w.value===r)||u.unshift({protected:!1,value:r}));const f={id:s,name:c,type:"domain",items:[],domainAliases:u,isProtected:a.isProtected,corsAllowedOrigins:p};return(d||[]).forEach(w=>{const{id:b,isProtected:R,from:{pathPrefix:y},to:D}=w;if(D.type===T.ROUTING_RULE_TYPES.BLOCKLET){let k="";Number.parseInt(D.port,10)===Number.parseInt(n,10)?(k="Blocklet Server Dashboard",D.type=T.ROUTING_RULE_TYPES.DAEMON):k=D.did,f.items.push({id:b,name:On(y||"/"),title:k,type:"rule",isProtected:R,pathPrefix:y,to:D})}else f.items.push({id:b,pathPrefix:y,name:On(y||"/"),title:"Blocklet Server Dashboard",type:"rule",isProtected:R,to:D})}),f.items=xr(f.items,w=>w.name),f}).sort(co),l=o.reduce((a,s)=>{let{name:d}=s;return d.endsWith(T.BLOCKLET_SITE_GROUP_SUFFIX)&&([d]=d.split(".")),a[d]={...s,rules:s.items},a},{});return{sites:o,siteMap:l}},mo=({did:t,domain:n,mountPoint:r,siteMap:i,params:o}={})=>{if(!i)return null;const l=i[t];if(!l)return null;const a=n||(l.domainAliases||[])[0];if(!a)return null;let s=r;if(!s){const d=l.rules.filter(p=>!p.name.startsWith(T.WELLKNOWN_PATH_PREFIX))[0];s=d?d.name:"/"}return ot(a.value,s,o)},fo=({did:t,mountPoint:n,siteMap:r,params:i}={})=>{if(!r)return[];const o=r[t];if(!o)return[];const l=o.domainAliases||[];if(!l.length)return[];let a=n;if(!a){const s=o.rules.filter(d=>!d.name.startsWith(T.WELLKNOWN_PATH_PREFIX))[0];a=s?s.name:"/"}return l.map(s=>ot(s.value,a,i))},po=t=>{const n=t.map(i=>i.domain).filter(i=>![T.DOMAIN_FOR_IP_SITE_REGEXP,T.DOMAIN_FOR_DEFAULT_SITE].includes(i));let r=[];return t.forEach(i=>r.push(...i.domainAliases||[])),r=r.map(i=>typeof i=="string"?{value:i,isProtected:!1}:i),{domains:n,domainsAliases:r}};function Xn({children:t}){const{api:n,info:r}=Z(),[i,o]=h.useState([]),[l,a]=h.useState([]),[s,d]=h.useState([]),p=Me(async()=>{const{sites:j}=await n.getRoutingSites({input:{snapshotHash:""}}),v=j||[];await Promise.all(v.map(async E=>(E.domainAliases=await si(E.domainAliases,{getIP:li}),E)));const S=po(v);o(v),a(S.domains),d([window.location.hostname,...S.domains,...S.domainsAliases.map(E=>E.value)])},[r]),c=(j,v)=>{o(S=>S.map(E=>E.id===j?v.domain?v:{...v,domain:E.domain}:E))},u=j=>n.takeRoutingSnapshot({input:{dryRun:!1,message:encodeURIComponent(j)}}),f=async j=>{const v=await n.addRoutingSite({input:j});o(i.concat(v.site))},w=async(j,v)=>{const S=await n.updateRoutingSite({input:{id:j,...v}});if(S.site&&S.site.id){const E=i.findIndex($=>$.id===S.site.id);E!==-1&&(i.splice(E,1,S.site),o([].concat(i)))}},b=async j=>{await n.deleteRoutingSite({input:{id:j}}),o(i.filter(v=>v.id!==j))},R=async(j,v,S)=>{const E=await n.addDomainAlias({input:{id:j,domainAlias:v,force:S}});c(j,E.site)},y=async(j,v)=>{const S=await n.deleteDomainAlias({input:{id:j,domainAlias:v}});c(j,S.site)},D=async(j,v)=>{const{site:S}=await n.addRoutingRule({input:{id:j,rule:v}});c(j,S)},k=async(j,v)=>{const{site:S}=await n.updateRoutingRule({input:{id:j,rule:v}});c(j,S)},P=async(j,v)=>{const{site:S}=await n.deleteRoutingRule({input:{id:j,ruleId:v}});c(j,S)},g={loading:p.loading,error:p.error,refresh:p.retry,api:n,actions:{addSite:f,updateSite:w,deleteSite:b,addDomainAlias:R,deleteDomainAlias:y,takeSnapshot:u,addRule:D,updateRule:k,deleteRule:P}},{sites:C,siteMap:x}=uo({sites:i,nodePort:r.port});return g.sites=C,g.siteMap=x,g.domains=l,g.allDomains=s,g.getBlockletUrl=({did:j,domain:v,mountPoint:S,params:E})=>mo({did:j,domain:v,mountPoint:S,siteMap:g.siteMap,params:E}),g.getBlockletUrls=({did:j,mountPoint:v,params:S})=>fo({did:j,mountPoint:v,siteMap:g.siteMap,params:S}),e.jsx(lo,{value:{routing:g},children:t})}function ue(){const{routing:t}=h.useContext(Ar);return t}function en(t){const n=[T.DOMAIN_FOR_IP_SITE_REGEXP,T.DOMAIN_FOR_DEFAULT_SITE,T.DOMAIN_FOR_IP_SITE];return typeof window<"u"&&typeof window.location<"u"&&n.push(window.location.hostname),n.includes(t)}var tn={},go=Se;Object.defineProperty(tn,"__esModule",{value:!0});var Lr=tn.default=void 0,ho=go(Ce()),xo=e;Lr=tn.default=(0,ho.default)((0,xo.jsx)("path",{d:"m7 14 5-5 5 5z"}),"ArrowDropUp");function yo(){return null}function nn({confirm:t}){const[n,r]=h.useState(null),{t:i}=z(),o=()=>{r(null)},l=async s=>{if(s){let d=window.env&&window.env.apiPrefix?window.env.apiPrefix:"/";d==="/"?Nn.push(`${s.pathname}`):(d.endsWith("/")&&(d=d.substring(0,d.length-1)),Nn.push(`${d}${s.pathname}`)),window.location.reload()}},a=(s,...d)=>{let p=typeof t=="function"?t(s,...d):t;return p?(typeof p=="string"&&(p={description:p}),r({title:i("common.noticeTitle"),description:i("common.leavePageTip"),confirm:i("common.confirm"),cancel:i("common.cancel"),onConfirm:()=>l(s),onCancel:()=>o(),...p}),!1):!0};return e.jsxs(vo,{children:[e.jsx(yo,{message:a}),n&&e.jsx(le,{title:n.title,description:n.description,confirm:n.confirm,cancel:n.cancel,params:n.params,onConfirm:n.onConfirm,onCancel:n.onCancel})]})}nn.propTypes={confirm:m.oneOfType([m.object,m.string,m.func])};nn.defaultProps={confirm:null};const vo=ee.div`
|
|
2
|
-
margin-bottom: 24px;
|
|
3
|
-
.top-btns-alert {
|
|
4
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
5
|
-
flex-direction: column;
|
|
6
|
-
padding-bottom: 15px;
|
|
7
|
-
padding-right: 20px;
|
|
8
|
-
}
|
|
9
|
-
}
|
|
10
|
-
.top-btns-action {
|
|
11
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
12
|
-
margin-right: 0px;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
`;function rn({children:t,...n}){return e.jsx(bo,{children:e.jsx("form",{...n,children:t})})}rn.propTypes={children:m.any.isRequired};const bo=ee.div`
|
|
16
|
-
width: 100%;
|
|
17
|
-
|
|
18
|
-
form {
|
|
19
|
-
width: 100%;
|
|
20
|
-
flex: 1;
|
|
21
|
-
display: flex;
|
|
22
|
-
flex-direction: column;
|
|
23
|
-
|
|
24
|
-
.form-submit {
|
|
25
|
-
margin-top: 32px;
|
|
26
|
-
margin-right: 32px;
|
|
27
|
-
width: 180px;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
.form-actions {
|
|
31
|
-
display: flex;
|
|
32
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
33
|
-
flex-direction: column;
|
|
34
|
-
width: 100%;
|
|
35
|
-
button {
|
|
36
|
-
width: 100%;
|
|
37
|
-
margin-right: 0;
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.form-item {
|
|
43
|
-
margin-top: 16px;
|
|
44
|
-
margin-right: 0;
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
`,jo="v21.6.0",wo=t=>ci.gte(t,jo),Qn=t=>({name:t.name,description:t.description,registerUrl:t.registerUrl,webWalletUrl:t.webWalletUrl,nftDomainUrl:t.nftDomainUrl,diskAlertThreshold:t.diskAlertThreshold,enableWelcomePage:!1,enableBetaRelease:!1,enableFileSystemIsolation:!0,enableDocker:!1,enableDockerNetwork:!1,isDockerInstalled:!1,enableSessionHardening:t.enableSessionHardening||!1});function on({onSaved:t,title:n,submit:r,disabled:i,...o}){const{api:l,info:a}=Z(),{t:s}=z(),{control:d,handleSubmit:p,formState:c,reset:u}=Jt({defaultValues:Qn(a)}),[f,w]=h.useState(""),[b,R]=h.useState(""),[y,D]=h.useState(!1),[k,P]=h.useState(a.autoUpgrade),[g,C]=h.useState(!!a.enableWelcomePage),[x,j]=h.useState(null),v=$n({enableFileSystemIsolation:!!a.enableFileSystemIsolation,tooltip:s("setting.form.security.switchTips"),loading:!1}),S=$n({enableDocker:!!a.enableDocker,enableDockerNetwork:!!a.enableDockerNetwork,tooltip:s("setting.form.docker.switchTips"),isDockerInstalled:!!a.isDockerInstalled}),[E,$]=h.useState(!!a.enableBetaRelease);h.useEffect(()=>{let O="";(c.isDirty||k!==a.autoUpgrade||g!==!!a.enableWelcomePage||v.enableFileSystemIsolation!==!!a.enableFileSystemIsolation)&&(O=s("setting.unSavedTip")),R(O)},[s,a,k,g,v.enableFileSystemIsolation,c]),di(async()=>{try{const O=Object.assign({},await l.getNodeEnv()||{}),{version:L}=O.info.blockletEngines.find(V=>V.name==="node");j(L)}catch(O){console.error(O),ae.error(O.message)}},[l]),h.useEffect(()=>{try{v.enableFileSystemIsolation=!!a.enableFileSystemIsolation,v.tooltip=s("setting.form.security.switchTips"),v.loading=Un(x),!Un(x)&&!wo(x)&&(v.tooltip=s("setting.form.security.warningTips",{version:x}))}catch(O){console.error(O),ae.error(O.message)}},[a.enableFileSystemIsolation,x]);const U=async O=>{w(""),D(!0);try{const L=await l.updateNodeInfo({input:{...O,name:O.name.trim(),description:O.description.trim(),registerUrl:O.registerUrl.trim(),webWalletUrl:O.webWalletUrl.trim(),diskAlertThreshold:O.diskAlertThreshold,autoUpgrade:k,enableWelcomePage:g,enableFileSystemIsolation:v.enableFileSystemIsolation,enableBetaRelease:E,enableDocker:S.enableDocker,enableDockerNetwork:S.enableDockerNetwork}});await yr(1e3),u(Qn(L.info)),typeof t=="function"&&t(L)}catch(L){w(ye(L))}finally{D(!1)}},{errors:A}=c;return e.jsxs(Co,{...o,children:[e.jsxs(rn,{noValidate:!0,autoComplete:"off",onSubmit:p(U),children:[!!n&&e.jsx(I,{component:"h2",variant:"h5",className:"stepper-tip",children:n}),e.jsx(re,{permission:"mutate_node",children:O=>e.jsxs(e.Fragment,{children:[e.jsx(M,{name:"name",control:d,rules:{validate:L=>!!L.trim()||s("setting.form.nameRequired")},render:({field:L})=>e.jsx(H,{variant:"outlined",label:s("setting.form.name"),placeholder:s("setting.form.namePlaceholder"),disabled:y||!O,"data-cy":"node-name-input",error:A.name&&!!A.name.message,helperText:A.name?A.name.message:"",margin:"normal",...L})}),e.jsx(M,{name:"description",control:d,rules:{validate:L=>!!L.trim()||s("setting.form.descriptionRequired")},render:({field:L})=>e.jsx(H,{variant:"outlined",label:s("setting.form.description"),placeholder:s("setting.form.descriptionHolder"),disabled:y||!O,"data-cy":"node-description-input",error:A.description&&!!A.description.message,helperText:A.description?A.description.message:"",margin:"normal",...L})}),e.jsx(M,{name:"registerUrl",control:d,rules:{},render:({field:L})=>e.jsx(H,{variant:"outlined",label:s("setting.form.registerUrl"),placeholder:s("setting.form.registerUrlPlaceholder"),disabled:y||!O,error:A.registerUrl&&!!A.registerUrl.message,helperText:A.registerUrl?A.registerUrl.message:"",margin:"normal",...L})}),e.jsx(M,{name:"nftDomainUrl",control:d,rules:{},render:({field:L})=>e.jsx(H,{variant:"outlined",label:s("setting.form.nftDomainUrl"),placeholder:s("setting.form.nftDomainUrlPlaceholder"),disabled:y||!O,error:A.nftDomainUrl&&!!A.nftDomainUrl.message,helperText:A.nftDomainUrl?A.nftDomainUrl.message:"",margin:"normal",...L})}),e.jsx(M,{name:"webWalletUrl",control:d,rules:{},render:({field:L})=>e.jsx(H,{variant:"outlined",label:s("setting.form.webWalletUrl"),placeholder:s("setting.form.webWalletUrlPlaceholder"),disabled:y||!O,error:A.webWalletUrl&&!!A.webWalletUrl.message,helperText:A.webWalletUrl?A.webWalletUrl.message:"",margin:"normal",...L})}),e.jsx(M,{name:"diskAlertThreshold",control:d,rules:{},render:({field:L})=>e.jsx(H,{type:"number",variant:"outlined",label:s("setting.form.monitor.diskThreshold"),placeholder:s("setting.form.monitor.diskThresholdPlaceholder"),disabled:y||!O,error:A.diskAlertThreshold&&!!A.diskAlertThreshold.message,inputProps:{min:1,max:99},helperText:A.diskAlertThreshold?A.diskAlertThreshold.message:"",margin:"normal",...L})}),e.jsx(oe,{checked:k,onChange:()=>P(!k),name:"autoUpgrade",disabled:!O,labelProps:{label:e.jsx(I,{children:e.jsx("span",{children:s("setting.form.upgrade.switchLabel")})})},style:{marginTop:20}}),k&&e.jsx(oe,{checked:E,onChange:()=>$(!E),name:"enableBetaRelease",disabled:!O,labelProps:{label:e.jsx(I,{children:e.jsx("span",{children:s("setting.form.upgrade.enableBetaRelease")})})},style:{marginTop:20}}),(a==null?void 0:a.mode)!==T.NODE_MODES.SERVERLESS&&e.jsx(oe,{checked:g,onChange:()=>C(!g),name:"enableWelcomePage",disabled:!O,labelProps:{label:e.jsx(I,{children:e.jsx("span",{children:s("setting.form.welcome.switchLabel")})})},style:{marginTop:16}}),e.jsx(M,{name:"enableSessionHardening",control:d,render:({field:L})=>e.jsx(oe,{checked:L.value,disabled:y||!O,labelProps:{label:e.jsx(I,{children:e.jsxs("span",{style:{display:"inline-flex",alignItems:"center"},children:[s("setting.form.enableSessionHardening.switchLabel"),e.jsx(pe,{title:s("setting.form.enableSessionHardening.switchTips"),children:e.jsx(Oe,{sx:{ml:.5,fontSize:"20px"},color:"primary"})})]})})},style:{marginTop:16},...L})}),e.jsx(oe,{checked:v.enableFileSystemIsolation,onChange:()=>{v.enableFileSystemIsolation=!v.enableFileSystemIsolation,S.enableDocker&&v.enableFileSystemIsolation&&(S.enableDocker=!1,ae.info(s("setting.form.docker.needCloseFileSystemIsolation")))},name:"enableFileSystemIsolation",disabled:!O,"data-cy":"file-system-isolation-switch",labelProps:{label:e.jsx(I,{children:e.jsxs("span",{style:{display:"inline-flex",alignItems:"center"},children:[s("setting.form.security.switchLabel"),e.jsx(pe,{title:!v.loading&&v.tooltip,children:v.loading?e.jsx(G,{size:14,sx:{ml:.5}}):e.jsx(Oe,{sx:{ml:.5,fontSize:"20px"},color:"primary"})})]})})},style:{marginTop:16}}),e.jsx(oe,{checked:S.enableDocker,onChange:()=>{if(!S.enableDocker&&!S.isDockerInstalled){ae.error(s("setting.form.docker.notInstalled"));return}S.enableDocker=!S.enableDocker,S.enableDocker&&v.enableFileSystemIsolation&&(v.enableFileSystemIsolation=!1,ae.info(s("setting.form.docker.needCloseFileSystemIsolation"))),!S.enableDocker&&S.enableDockerNetwork&&(S.enableDockerNetwork=!1)},name:"enableDocker",disabled:!O,"data-cy":"file-system-isolation-switch",labelProps:{label:e.jsx(I,{children:e.jsxs("span",{style:{display:"inline-flex",alignItems:"center"},children:[s("setting.form.docker.switchLabel"),e.jsx(pe,{title:!S.loading&&S.tooltip,children:S.loading?e.jsx(G,{size:14,sx:{ml:.5}}):e.jsx(Oe,{sx:{ml:.5,fontSize:"20px"},color:"primary"})})]})})},style:{marginTop:16}}),e.jsx(oe,{checked:S.enableDockerNetwork,onChange:()=>{if(!S.enableDockerNetwork&&!S.isDockerInstalled){ae.error(s("setting.form.docker.notInstalled"));return}S.enableDockerNetwork=!S.enableDockerNetwork,S.enableDockerNetwork&&!S.enableDocker&&(S.enableDocker=!0)},name:"enableDockerNetwork",disabled:!O,"data-cy":"file-system-isolation-switch",labelProps:{label:e.jsx(I,{children:e.jsxs("span",{style:{display:"inline-flex",alignItems:"center"},children:[s("setting.form.dockerNetwork.switchLabel"),e.jsx(pe,{title:!S.loading&&s("setting.form.dockerNetwork.switchTips"),children:S.loading?e.jsx(G,{size:14,sx:{ml:.5}}):e.jsx(Oe,{sx:{ml:.5,fontSize:"20px"},color:"primary"})})]})})},style:{marginTop:16}})]})}),!!b&&e.jsx(je,{severity:"warning",variant:"icon",children:b}),e.jsx("div",{className:"form-actions",children:e.jsx(re,{permission:"mutate_node",children:e.jsxs(X,{onClick:p(U),disabled:i||y,color:"primary",variant:"contained","data-cy":"submit-btn",className:"form-submit",children:[r," ",y?e.jsx(G,{size:16}):null]})})}),!!f&&e.jsx(je,{severity:"error",variant:"icon",error:f,children:f})]}),b&&e.jsx(nn,{confirm:s("setting.unSavedLeaveTip")})]})}on.propTypes={onSaved:m.func.isRequired,disabled:m.bool,title:m.string.isRequired,submit:m.string.isRequired};on.defaultProps={disabled:!1};const Co=ee.div`
|
|
48
|
-
display: flex;
|
|
49
|
-
align-items: flex-start;
|
|
50
|
-
width: 100%;
|
|
51
|
-
max-width: 720px;
|
|
52
|
-
`;function So(){const{refresh:t,info:n}=Z(),{t:r}=z(),[i,o]=h.useState(!1);h.useEffect(()=>{t({silent:!0})},[]);const l=()=>{t({silent:!0}),ae.success(r("setting.saveSuccess"))};return e.jsx(Do,{children:e.jsxs(q,{mb:4,children:[e.jsx(on,{onSaved:l,submit:r("common.saveChanges"),title:""}),e.jsx(q,{mt:6,style:{marginLeft:-8},children:e.jsxs(X,{onClick:()=>{o(a=>!a)},children:[r("common.readMore"),i?e.jsx(Lr,{}):e.jsx(Ki,{})]})}),i&&e.jsxs(q,{fontSize:12,color:"text.secondary",children:[e.jsxs(q,{children:[r("dashboard.runtimeConfig.blockletMaxMemoryLimit"),": ",n.runtimeConfig.blockletMaxMemoryLimit," MB"]}),e.jsxs(q,{children:[r("dashboard.runtimeConfig.daemonMaxMemoryLimit"),": ",n.runtimeConfig.daemonMaxMemoryLimit," MB"]}),e.jsxs(q,{children:[r("dashboard.runtimeConfig.proxyMaxMemoryLimit"),": ",n.runtimeConfig.proxyMaxMemoryLimit," MB"]})]})]})})}const Do=ee.div`
|
|
53
|
-
.eula-btn {
|
|
54
|
-
text-decoration-line: underline;
|
|
55
|
-
margin-top: 32px;
|
|
56
|
-
margin-bottom: 32px;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
.danger-zone {
|
|
60
|
-
margin-top: 1vw;
|
|
61
|
-
width: 100%;
|
|
62
|
-
max-width: 720px;
|
|
63
|
-
}
|
|
64
|
-
`;var an={},Po=Se;Object.defineProperty(an,"__esModule",{value:!0});var Or=an.default=void 0,ko=Po(Ce()),Ro=e;Or=an.default=(0,ko.default)((0,Ro.jsx)("path",{d:"M2.01 21 23 12 2.01 3 2 10l15 2-15 2z"}),"Send");function sn(t){const{t:n}=z(),[r,i]=h.useState(!1),[o,l]=h.useState(null),{item:a,onDelete:s=()=>{}}=t,{id:d,title:p}=a,{api:c}=Z(),u=()=>{i(!1),l(null)},f=async()=>{i(!0);try{await c.deleteWebHook({input:{id:d}}),s()}catch(b){console.error(b)}finally{i(!1),l(null)}},w={keyName:d,title:n("setting.webhook.delTitle"),description:`${n("setting.webhook.description",{name:`<b>${p}</b>`,id:`<b>${d}</b>`})}`,confirmPlaceholder:n("setting.webhook.confirm_desc",{name:d}),confirm:n("common.delConfirm"),cancel:n("common.cancel"),onConfirm:f,onCancel:u};return e.jsxs(e.Fragment,{children:[e.jsxs(X,{edge:"end",onClick:()=>l(w),size:"small",className:"rule-action",color:"error",children:[r?e.jsx(G,{size:16}):e.jsx(we,{style:{fontSize:16}}),n("common.delete")]}),o&&e.jsx(xt,{keyName:o.keyName,title:o.title,description:o.description,confirmPlaceholder:o.confirmPlaceholder,confirm:o.confirm,cancel:o.cancel,params:o.params,onConfirm:o.onConfirm,onCancel:o.onCancel})]})}sn.propTypes={item:m.object.isRequired,onDelete:m.func};sn.defaultProps={onDelete:()=>{}};function _o(){const{api:t,imgPrefix:n}=Z(),{t:r,locale:i}=h.useContext(Yt),[o,l]=h.useState([]),[a,s]=h.useState(null),d=Me(async()=>{const[{webhooks:P},{senders:g}]=await Promise.all([t.getWebHooks(),t.getWebhookSenders()]);return l(g),P}),p=d.value||[],{loading:c,error:u}=d,f=async P=>{try{await t.createWebHook({input:P}),d.retry()}catch(g){ae.error(ye(g),{autoHideDuration:4e3}),console.error("create webhook error",g)}s(null)},w=()=>{s(null)},b=P=>{const g={title:P.title,description:(C,x,j)=>{const v=E=>{x({list:E,__disableConfirm:E.some($=>$.disable)})},S=C.list||[];return e.jsx(Zn,{children:S.map((E,$)=>e.jsx(Eo,{children:e.jsx(H,{label:E.description,autoComplete:"off",variant:"outlined",inputProps:{"data-cy":"webhook-input"},fullWidth:!0,autoFocus:!0,style:{marginBottom:16},margin:"dense",value:E.value||E.defaultValue,onChange:U=>{E.required&&(E.disable=!0);const A=U.target.value.trim();E.value=A,S[$]=E,A?ui(E.type,A)?(E.disable=!1,j("")):(E.disable=!0,j(r("setting.webhook.requiredError",{type:E.type}))):(E.required&&(E.disable=!0),j("")),v([...S])}})},E.name))})},params:{list:P.params,__disableConfirm:!0},confirm:r("setting.webhook.add"),cancel:r("common.cancel"),onConfirm:C=>{P.params=C.list,f(P)},onCancel:w};s(g)},R=P=>P.type==="slack"?e.jsx("img",{src:`${n}/${P.type}.png`,alt:"icon",style:{width:20,height:20}}):e.jsx(Rr,{}),y=async P=>{const g={webhookId:P.id,message:"This is a test notification in order to test the integration"};await t.sendTestMessage({input:g})},D=[{label:r("setting.webhook.columns.description"),name:"id",verticalKeyAlign:"center",options:{sort:!1,customBodyRenderLite:P=>{const g=p[P],C=o.find(x=>x.name===g.name);return e.jsxs("div",{style:{display:"flex",alignItems:"center",whiteSpace:"nowrap"},children:[R(g),e.jsxs("div",{style:{marginLeft:10},children:[e.jsxs("b",{children:["ID: ",g.id]}),e.jsx("div",{children:C?C.description:null})]})]})}}},{label:r("setting.webhook.columns.params"),name:"params",options:{sort:!1,customBodyRenderLite:P=>{const C=p[P].params.map(x=>e.jsx("div",{children:x.value}));return e.jsx("div",{style:{display:"flex",alignItems:"center",whiteSpace:"nowrap"},children:C})}}},{label:r("setting.webhook.columns.createdAt"),name:"createdAt",options:{customBodyRenderLite:P=>{const g=p[P];return e.jsx(vr,{value:Number(g.createdAt),locale:i})}}},{label:r("common.actions"),align:"center",verticalKeyAlign:"center",options:{sort:!1,customBodyRenderLite:P=>{const g=p[P],C=o.find(x=>x.name===g.name)||{};return e.jsxs(e.Fragment,{children:[e.jsx(sn,{item:{...g,title:C.title},onDelete:()=>{d.retry()}}),e.jsxs(X,{size:"small",color:"secondary",onClick:()=>{y(g)},children:[e.jsx(To,{}),r("setting.webhook.test")]})]})}}}];if(!p.length&&c)return e.jsx("div",{style:{textAlign:"center",marginTop:"50px"},children:e.jsx(G,{})});if(!p.length&&u)return e.jsx(je,{severity:"error",children:ye(u)});const k=o.map(P=>({icon:R(P),title:`${r("common.add")} ${P.title}`,onClick:()=>{b(P)}}));return e.jsxs(Zn,{children:[a&&e.jsx(le,{color:"primary",title:a.title,description:a.description,confirm:a.confirm,params:a.params,onConfirm:a.onConfirm,onCancel:a.onCancel}),e.jsx(kr,{columns:D,data:p,locale:i,customButtons:k,verticalKeyWidth:100,options:{download:!1,filter:!1,print:!1}})]})}const Zn=ee.div`
|
|
65
|
-
.button-addon {
|
|
66
|
-
text-align: right;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
.add-list {
|
|
70
|
-
width: 420px;
|
|
71
|
-
max-width: calc(100vw - 10px);
|
|
72
|
-
text-align: left;
|
|
73
|
-
background: #fff;
|
|
74
|
-
border-radius: 5px;
|
|
75
|
-
}
|
|
76
|
-
`,Eo=ee.div`
|
|
77
|
-
display: flex;
|
|
78
|
-
`,To=ee(Or)`
|
|
79
|
-
font-size: 16px !important;
|
|
80
|
-
margin-right: 3px;
|
|
81
|
-
`;function We({title:t,description:n,children:r}){return e.jsxs(Io,{children:[e.jsxs(I,{component:"div",className:"danger-item-info",children:[e.jsx(I,{className:"title",component:"h3",variant:"h6",color:"textPrimary",gutterBottom:!0,children:t}),e.jsx(I,{className:"desc",component:"p",variant:"body1",color:"textSecondary",children:n})]}),e.jsx(I,{component:"div",className:"danger-item-action",children:r})]})}We.propTypes={children:m.node.isRequired,title:m.string.isRequired,description:m.string.isRequired};const Io=ee.div`
|
|
82
|
-
display: flex;
|
|
83
|
-
justify-content: space-between;
|
|
84
|
-
align-items: center;
|
|
85
|
-
|
|
86
|
-
.danger-item-info {
|
|
87
|
-
display: flex;
|
|
88
|
-
flex-direction: column;
|
|
89
|
-
align-items: flex-start;
|
|
90
|
-
justify-content: center;
|
|
91
|
-
.title {
|
|
92
|
-
word-break: break-word;
|
|
93
|
-
}
|
|
94
|
-
.desc {
|
|
95
|
-
word-break: break-word;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
.danger-item-action {
|
|
100
|
-
width: 160px;
|
|
101
|
-
flex-shrink: 0;
|
|
102
|
-
text-align: right;
|
|
103
|
-
cursor: pointer;
|
|
104
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
105
|
-
width: auto;
|
|
106
|
-
margin-left: 10px;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
`;function qe({children:t,...n}){return e.jsx(Ao,{...n,children:t})}const Ao=ee.div`
|
|
110
|
-
border: 1px solid #dedede;
|
|
111
|
-
padding: 16px;
|
|
112
|
-
`;qe.propTypes={children:m.node.isRequired};function Ot({action:t}){const{t:n}=z(),{info:r,api:i}=Z(),[o,l]=h.useState(!1),[a,s]=h.useState(null),{data:d,externalData:p}=Xt(),[c,u]=h.useState("restartAllBlocklets"),f=h.useRef(c);if(f.current=c,t==="upgrade"&&!r.nextVersion)return null;const w=()=>{l(!1),s(null)},b=r.enableDocker&&t==="restartAllBlocklet",R=async()=>{try{if(l(!0),t==="upgrade"&&await i.upgradeNodeVersion(),t==="restart"&&await i.restartServer(),t==="restartAllBlocklet")if(b&&f.current==="restartAllContainers")await i.restartAllContainers(),ae.success(n("setting.form.restartAllContainers.restarting"));else{const D=new Set(["running","error"]),P=[...d,...p].filter(g=>D.has(g.status)).map(g=>{if(!g||!g.children||!g.meta)return Promise.resolve();const C=g.children.filter(x=>D.has(x.status)).map(x=>x.meta.did);return i.restartBlocklet({input:{did:g.meta.did,componentDids:C}})});await Promise.all(P),ae.success(n("setting.form.restartAllBlocklet.restarting"))}}catch(D){ae.error(ye(D))}finally{l(!1),s(null)}},y={title:n(`setting.form.${t}.title`,{version:r.nextVersion}),description:n(`setting.form.${t}.dialog`),confirm:n("common.confirm"),cancel:n("common.cancel"),onConfirm:R,onCancel:w};return e.jsxs(e.Fragment,{children:[e.jsx(qe,{className:"danger-zone",children:e.jsx(We,{title:n(`setting.form.${t}.title`,{version:r.nextVersion}),description:n(`setting.form.${t}.description`),children:e.jsxs(X,{onClick:()=>s(y),color:"error",variant:"outlined",size:"large",children:[o?e.jsx(G,{size:16,style:{marginRight:3}}):null,n(`setting.form.${t}.confirm`)]})})}),a&&e.jsx(le,{title:a.title,description:b?e.jsxs(I,{component:"div",children:[e.jsx(I,{gutterBottom:!0,children:n("blocklet.action.removeComponentDescription")}),e.jsxs(_r,{name:"removeType",value:c,onChange:D=>{u(D.target.value)},children:[e.jsx(at,{value:"restartAllBlocklets",control:e.jsx(Wt,{}),label:n("setting.form.restartAllBlocklet.description")}),e.jsx(at,{value:"restartAllContainers",control:e.jsx(Wt,{}),label:n("setting.form.restartAllContainers.description")})]})]}):a.description,confirm:a.confirm,cancel:a.cancel,onConfirm:a.onConfirm,onCancel:a.onCancel})]})}function Lo(t){return fi("MuiLoadingButton",t)}const ge=mi("MuiLoadingButton",["root","loading","loadingIndicator","loadingIndicatorCenter","loadingIndicatorStart","loadingIndicatorEnd","endIconLoadingEnd","startIconLoadingStart"]),Oo=["children","disabled","id","loading","loadingIndicator","loadingPosition","variant"],Fo=t=>{const{loading:n,loadingPosition:r,classes:i}=t,o={root:["root",n&&"loading"],startIcon:[n&&`startIconLoading${it(r)}`],endIcon:[n&&`endIconLoading${it(r)}`],loadingIndicator:["loadingIndicator",n&&`loadingIndicator${it(r)}`]},l=vi(o,Lo,i);return $e({},i,l)},No=t=>t!=="ownerState"&&t!=="theme"&&t!=="sx"&&t!=="as"&&t!=="classes",$o=br(pi,{shouldForwardProp:t=>No(t)||t==="classes",name:"MuiLoadingButton",slot:"Root",overridesResolver:(t,n)=>[n.root,n.startIconLoadingStart&&{[`& .${ge.startIconLoadingStart}`]:n.startIconLoadingStart},n.endIconLoadingEnd&&{[`& .${ge.endIconLoadingEnd}`]:n.endIconLoadingEnd}]})(({ownerState:t,theme:n})=>$e({[`& .${ge.startIconLoadingStart}, & .${ge.endIconLoadingEnd}`]:{transition:n.transitions.create(["opacity"],{duration:n.transitions.duration.short}),opacity:0}},t.loadingPosition==="center"&&{transition:n.transitions.create(["background-color","box-shadow","border-color"],{duration:n.transitions.duration.short}),[`&.${ge.loading}`]:{color:"transparent"}},t.loadingPosition==="start"&&t.fullWidth&&{[`& .${ge.startIconLoadingStart}, & .${ge.endIconLoadingEnd}`]:{transition:n.transitions.create(["opacity"],{duration:n.transitions.duration.short}),opacity:0,marginRight:-8}},t.loadingPosition==="end"&&t.fullWidth&&{[`& .${ge.startIconLoadingStart}, & .${ge.endIconLoadingEnd}`]:{transition:n.transitions.create(["opacity"],{duration:n.transitions.duration.short}),opacity:0,marginLeft:-8}})),Uo=br("span",{name:"MuiLoadingButton",slot:"LoadingIndicator",overridesResolver:(t,n)=>{const{ownerState:r}=t;return[n.loadingIndicator,n[`loadingIndicator${it(r.loadingPosition)}`]]}})(({theme:t,ownerState:n})=>$e({position:"absolute",visibility:"visible",display:"flex"},n.loadingPosition==="start"&&(n.variant==="outlined"||n.variant==="contained")&&{left:n.size==="small"?10:14},n.loadingPosition==="start"&&n.variant==="text"&&{left:6},n.loadingPosition==="center"&&{left:"50%",transform:"translate(-50%)",color:(t.vars||t).palette.action.disabled},n.loadingPosition==="end"&&(n.variant==="outlined"||n.variant==="contained")&&{right:n.size==="small"?10:14},n.loadingPosition==="end"&&n.variant==="text"&&{right:6},n.loadingPosition==="start"&&n.fullWidth&&{position:"relative",left:-10},n.loadingPosition==="end"&&n.fullWidth&&{position:"relative",right:-10})),zo=h.forwardRef(function(n,r){const i=h.useContext(gi),o=hi(i,n),l=Zi({props:o,name:"MuiLoadingButton"}),{children:a,disabled:s=!1,id:d,loading:p=!1,loadingIndicator:c,loadingPosition:u="center",variant:f="text"}=l,w=xi(l,Oo),b=yi(d),R=c??e.jsx(G,{"aria-labelledby":b,color:"inherit",size:16}),y=$e({},l,{disabled:s,loading:p,loadingIndicator:R,loadingPosition:u,variant:f}),D=Fo(y),k=p?e.jsx(Uo,{className:D.loadingIndicator,ownerState:y,children:R}):null;return e.jsxs($o,$e({disabled:s||p,id:b,ref:r},w,{variant:f,classes:D,ownerState:y,children:[y.loadingPosition==="end"?a:k,y.loadingPosition==="end"?k:a]}))});function Bo(){const{t}=z(),{api:n}=Z(),[r,i]=h.useState(!1),[o,l]=h.useState(null),[a,s]=Xi("last-check-server-version-time"),d=()=>{i(!1),l(null)},p={title:t("setting.form.upgrade.check"),description:t("setting.form.upgrade.latest"),confirm:t("common.confirm"),showCancel:!1,color:"primary",onConfirm:d,onCancel:d},c=async u=>{try{i(!0);const{version:f}=await n.checkNodeVersion();!f&&u&&l(p),s(Date.now())}catch(f){console.error(`Failed to check new version: ${f.message}`)}finally{i(!1)}};return h.useEffect(()=>{(!a||Date.now()-Number(a)>60*1e3)&&c(!1)},[]),e.jsxs(e.Fragment,{children:[e.jsx(zo,{sx:{ml:2},color:"primary",variant:"outlined",onClick:c,size:"small",loadingPosition:"end",loading:r,children:e.jsxs(fe,{direction:"row",alignItems:"center",spacing:.5,children:[e.jsx(Qi,{fontSize:"small"}),e.jsx(I,{component:"span",children:t("server.checkUpgrade")})]})}),o&&e.jsx(le,{title:o.title,description:o.description,confirm:o.confirm,showCancel:o.showCancel,color:o.color,onConfirm:o.onConfirm,onCancel:o.onCancel})]})}function Mo(){const{t}=z(),{info:n}=Z();return e.jsx(qe,{className:"danger-zone",children:e.jsx(We,{title:t("blocklet.config.clearCache.name"),description:t("blocklet.config.clearCache.purpose"),children:e.jsx(Ji,{teamDid:n.did,size:"large"})})})}function Wo(){const{t}=z(),{info:n}=Z();return e.jsx(qe,{className:"danger-zone",children:e.jsx(We,{title:t("blocklet.config.rotateSessionKey.name"),description:t("blocklet.config.rotateSessionKey.purpose"),children:e.jsx(eo,{teamDid:n.did,size:"large"})})})}const qo="z8iZkFBbrVQxZHvcWWB3Sa2TrfGmSeFz9MSU7";function Ho(){const{t}=z(),{info:n}=Z(),r=bi(n),{createdAt:i,did:o,description:l,name:a}=n,s=ji(async()=>{var R;const c=localStorage.getItem("__registerUrl")||n.registerUrl,u=new URL(c);u.pathname="__blocklet__.js",u.searchParams.set("type","json");const{data:f}=await wi.get(u.toString()),w=(R=f==null?void 0:f.componentMountPoints)==null?void 0:R.find(y=>y.did===qo),b=new URL(c);return b.pathname=Ci((w==null?void 0:w.mountPoint)||"","register"),b}),d={did:o,name:a,createdAt:i,description:l,url:r};if(s.loading)return"";if(s.error)return console.error("registerUrlState.error",s.error),"";const p=s.value;return e.jsx(Ko,{children:e.jsx(qe,{className:"danger-zone",children:e.jsx(We,{title:t("setting.form.register.title"),description:t("setting.form.register.description",{url:p.origin}),children:e.jsx(X,{color:"primary",component:"a",href:`${p.toString()}?register-server=${encodeURIComponent(JSON.stringify(d))}`,target:"_blank",variant:"contained",size:"large",children:t("setting.form.register.button")})})})})}const Ko=ee.div`
|
|
113
|
-
.danger-zone {
|
|
114
|
-
margin-top: 1vw;
|
|
115
|
-
width: 100%;
|
|
116
|
-
}
|
|
117
|
-
`;function Go(){const t=jr(),{api:n,info:r}=Z(),{t:i}=z(),o=Me(async()=>{const a=await n.getNodeEnv();return Object.assign({},a.info||{})}),l=[];return l.push({name:i("dashboard.nodeDid"),value:e.jsx(zn,{did:r.did,showQrcode:!0})},r.nodeOwner?{name:i("dashboard.ownerDid"),value:e.jsx(zn,{did:r.nodeOwner.did,showQrcode:!0})}:null,{name:i("dashboard.routingEngine"),value:r.routing.provider}),o.value&&l.push({name:`${i("common.os")}`,value:o.value.os},o.value.docker?{name:`${i("common.docker")}`,value:e.jsx(Bn,{type:"success",children:"Yes"})}:null,o.value.gitpod?{name:`${i("common.gitpod")}`,value:e.jsx(Bn,{type:"success",children:"Yes"})}:null),Array.isArray(ne(o,"value.blockletEngines",null))&&o.value.blockletEngines.filter(a=>a.visible&&a.available).forEach(a=>{l.push({name:a.displayName,value:a.version})}),e.jsxs(Vo,{children:[e.jsx(re,{permission:"mutate_node",children:a=>e.jsxs(e.Fragment,{children:[e.jsxs(q,{display:"flex",alignItems:"center",style:{marginBottom:24},children:[e.jsx(q,{width:50,height:50,children:e.jsx("img",{src:Vi,height:50,alt:""})}),e.jsxs(q,{ml:2,children:[e.jsx("h2",{style:{margin:0},children:r.name}),e.jsx("p",{style:{margin:0,color:"#888"},children:r.description})]})]}),e.jsxs(lt,{style:{marginBottom:4},valueComponent:"div",nameWidth:150,name:i("common.version"),children:[r.version,a&&e.jsx(Bo,{})]},"version"),l.filter(Boolean).map(s=>e.jsx(lt,{valueComponent:"div",nameWidth:150,name:s.name,children:s.value},s.name)),a&&e.jsx("div",{style:{maxWidth:720,marginBottom:"1vw"},children:e.jsx(Ot,{action:"upgrade"})})]})}),e.jsx(re,{permission:"mutate_node",children:a=>a&&e.jsx("div",{style:{maxWidth:720,marginBottom:"1vw"},children:e.jsx(Ot,{action:"restart"})})}),e.jsx(re,{permission:"mutate_node",children:a=>a&&e.jsx("div",{style:{maxWidth:720,marginBottom:"1vw"},children:e.jsx(Ot,{action:"restartAllBlocklet"})})}),e.jsx(re,{permission:"mutate_router",children:a=>a&&e.jsx("div",{style:{maxWidth:720,marginBottom:"1vw"},children:e.jsx(Mo,{})})}),e.jsx(re,{permission:"mutate_node",children:a=>a&&e.jsx("div",{style:{maxWidth:720,marginBottom:"1vw"},children:e.jsx(Wo,{})})}),e.jsx(re,{permission:"mutate_blocklets",children:!!r.registerUrl&&e.jsx("div",{style:{maxWidth:720,marginTop:"-1vw"},children:e.jsx(Ho,{})})}),e.jsx(q,{mt:10,style:{marginLeft:-8},children:e.jsx(X,{className:"eula-btn",onClick:()=>{t("/eula")},children:i("common.goEULA")})})]})}const Vo=ee.div`
|
|
118
|
-
display: flex;
|
|
119
|
-
flex-direction: column;
|
|
120
|
-
margin-top: 32px;
|
|
121
|
-
`,Fr=h.createContext({}),{Provider:Yo,Consumer:cl}=Fr;function Nr({children:t,domains:n}){const{api:r}=Z(),i=JSON.stringify(n),[o,l]=h.useState({}),a=h.useMemo(()=>n.filter(w=>Qt(w)),[i]);Ut(T.EVENTS.DOMAIN_STATUS,w=>{w&&l(b=>({...b,[w.domain]:{...b[w.domain],...w}}))});const{domainsAccessibility:s,recommendedDomain:d}=Yi(a),p=h.useMemo(()=>{const w={...o};return Object.keys(s).forEach(b=>{const R=w[b]||{};w[b]={...R,...s[b]}}),w},[o,s]),c=()=>{a.length>0&&r.checkDomains({input:{domains:a}})},u=w=>{w&&r.checkDomains({input:{domains:[w]}})};h.useEffect(()=>{c()},[a]);const f={refresh:c,updateStatus:u,api:r,status:p,recommendedDomain:d,recommendedDomainStatus:p[d]};return e.jsx(Yo,{value:f,children:t})}Nr.propTypes={children:m.any.isRequired,domains:m.array.isRequired};function yt(){const{status:t,recommendedDomainStatus:n,recommendedDomain:r,updateStatus:i}=h.useContext(Fr);return{status:t,recommendedDomainStatus:n,recommendedDomain:r,updateStatus:i}}const Xo=t=>(ne(t,"meta.interfaces")||[]).find(r=>r.type===ht.BLOCKLET_INTERFACE_TYPE_WEB);function He({params:t,blocklets:n,setParams:r,setError:i,serviceTypes:o}){const{t:l}=z(),a={301:l("common.redirectPermanently"),302:l("common.redirectTemporary"),307:l("common.redirectTemporary"),308:l("common.redirectPermanently")},s=xr(n,c=>c.meta.name),d=(c,u)=>{if(!u)return{};let{port:f}=c;u&&c.ports&&u.port&&(c.ports[u.port]&&(f=c.ports[u.port]),c.ports[u.port.internal]&&(f=c.ports[u.port.internal]));let{pathPrefix:w}=t;return u&&u.prefix!==ht.BLOCKLET_DYNAMIC_PATH_PREFIX&&(w=u.prefix),{port:f,pathPrefix:w}},p=c=>{const u=s.find(w=>w.meta.did===c),f=Xo(u);return{...d(u,f),interfaceName:f?f.name:""}};return h.useEffect(()=>{!t.interfaceName&&t.type===T.ROUTING_RULE_TYPES.BLOCKLET&&r({...t,...p(t.did),__disableConfirm:!1})},[]),e.jsxs(e.Fragment,{children:[e.jsx(H,{select:!0,label:l("router.domain.add.type"),autoComplete:"off",variant:"outlined",name:"type","data-cy":"domain-add-type",fullWidth:!0,value:t.type,onChange:c=>{i(""),r({...t,type:c.target.value,__disableConfirm:!1})},style:{marginBottom:32},SelectProps:{},children:o.map(({name:c,value:u})=>e.jsx(J,{value:u,children:c},u))}),t.type===T.ROUTING_RULE_TYPES.BLOCKLET&&e.jsxs(H,{select:!0,label:l("router.domain.add.blocklet"),autoComplete:"off",variant:"outlined",name:"did","data-cy":"domain-blocklet-select",fullWidth:!0,value:t.did,onChange:c=>{r({...t,...p(c.target.value),did:c.target.value,__disableConfirm:!1})},style:{marginBottom:32},children:[s.map(c=>e.jsxs(J,{value:c.meta.did,children:[`${c.meta.name} v${c.meta.version}`,e.jsx("span",{style:{marginLeft:8},children:e.jsx(Tr,{status:c.status,progress:c.progress})})]},c.meta.did)),n.length===0&&e.jsx(J,{value:"",children:l("common.empty")},"empty")]}),t.type===T.ROUTING_RULE_TYPES.REDIRECT&&[e.jsx(H,{select:!0,label:l("router.domain.add.redirect"),autoComplete:"off",variant:"outlined",name:"type",fullWidth:!0,value:t.redirectCode,onChange:c=>r({...t,redirectCode:c.target.value}),style:{marginBottom:32},SelectProps:{},children:Object.keys(a).map(c=>e.jsx(J,{value:c,children:`${a[c]} - ${c}`},c))}),e.jsx(H,{label:l("common.redirectUrl"),autoComplete:"off",variant:"outlined",name:"url",inputProps:{"data-cy":"redirect-url-input"},fullWidth:!0,autoFocus:!0,value:t.url,helperText:l("router.urlHelperText"),style:{marginBottom:32},onChange:c=>{r({...t,url:c.target.value,__disableConfirm:!c.target.value.trim()}),c.target.value.trim()?i(""):i(l("router.validation.redirectUrlRequired"))}})]]})}He.propTypes={params:m.object,blocklets:m.array,serviceTypes:m.array,setParams:m.func,setError:m.func};He.defaultProps={params:{},blocklets:[],serviceTypes:[{name:"Blocklet",value:T.ROUTING_RULE_TYPES.BLOCKLET},{name:"Redirect",value:T.ROUTING_RULE_TYPES.REDIRECT},{name:"Default - User will see the 404 page",value:T.ROUTING_RULE_TYPES.NONE}],setParams:()=>{},setError:()=>{}};const $r=(t,n)=>{if(t.type===T.ROUTING_RULE_TYPES.REDIRECT){if(!t.url)return new Error(`${n("router.validation.redirectUrlRequired")}`);if(!t.redirectCode)return new Error(`redirect ${n("router.validation.redirectCodeRequired")}`)}else if(t.type===T.ROUTING_RULE_TYPES.BLOCKLET&&!t.did)return new Error(n("router.validation.didRequired"));return null},ze=(t,n)=>t?t.endsWith(T.DEFAULT_IP_DOMAIN_SUFFIX)?n("router.domain.validate.suffixTip",{suffix:T.DEFAULT_IP_DOMAIN_SUFFIX}):null:n("router.domain.validate.emptyTip"),Qo=(t,n)=>{const r=$r(t,n);if(r)return r;const i=ze(t.domain,n);return i?new Error(i):null},ct=(t,n)=>{const r=$r(t,n);return r||(t.pathPrefix.length?t.pathPrefix.length>150?new Error(n("router.validation.pathPrefixTooLong",{length:150})):null:new Error(n("router.validation.pathPrefixCannotBeEmpty")))},Ur=({params:t,blocklets:n,blocklet:r,locale:i="en"})=>{if(r){let a=(r.children||[]).find(s=>to(s.mountPoint,t.pathPrefix));if(r.meta.group!=="gateway"&&t.pathPrefix==="/"&&(a="/"),a)return{zh:`挂载点 ${t.pathPrefix} 已存在,请使用其他挂载点`,en:`The mount point ${t.pathPrefix} already exist, please use another mount point`}[i]}const o=n.find(a=>a.meta.did===t.did);if(!o)return"";const l=o.meta.interfaces.find(a=>a.type==="web");return l&&l.prefix!==ht.BLOCKLET_DYNAMIC_PATH_PREFIX&&t.pathPrefix!==l.prefix?{zh:`该 blocklet 只能挂载在 ${l.prefix}`,en:`This blocklet can only be mounted on ${l.prefix}`}[i]:""},ln=t=>{if(t.length===0)return"";const{searchParams:n}=new URL(window.location.href),r=n.get("fromDid");if(r){const i=t.find(o=>o.meta.did===r);if(i)return i.meta.did}return t[0].meta.did};function vt({blocklets:t,onActivate:n=()=>{},children:r}){const{t:i}=z(),{actions:o}=ue(),{info:l}=Z(),[a,s]=h.useState(!1),[d,p]=h.useState(null),c=()=>{s(!1),p(null)},u=async b=>{s(!0);const R={from:{pathPrefix:"/"},to:{type:b.type}},y={domain:b.domain.trim()===l.ip?"":b.domain.trim()};if(b.type===T.ROUTING_RULE_TYPES.BLOCKLET){const D=t.find(P=>P.meta.did===b.did),k=ne(D,"meta.interfaces",[]).find(P=>P.name===b.interfaceName);k&&k.prefix!==ht.BLOCKLET_DYNAMIC_PATH_PREFIX&&(R.from.pathPrefix=k.prefix),R.to.port=b.port,R.to.did=b.did,R.to.interfaceName=b.interfaceName,y.rules=[R]}else b.type===T.ROUTING_RULE_TYPES.REDIRECT&&(R.to.url=b.url,R.to.redirectCode=b.redirectCode,y.rules=[R]);await o.addSite(y),s(!1),p(null)},f={title:i("router.domain.addSite"),description:(b,R,y)=>{const D=k=>{const P=k.__disableConfirm||!!Qo(k,i);R({...k,__disableConfirm:P})};return e.jsxs(I,{component:"div",children:[e.jsx(H,{label:i("router.domain.add.description"),autoComplete:"off",variant:"outlined",name:"domain",fullWidth:!0,autoFocus:!0,value:b.domain,style:{marginTop:16,marginBottom:32},inputProps:{"data-cy":"domain-name-input"},onChange:k=>{const P=k.target.value.trim(),g=ze(P,i);D({...b,domain:k.target.value,__disableConfirm:!!g}),y(g||"")}}),e.jsx(He,{blocklets:t,params:b,setParams:D,setError:y})]})},confirm:i("router.domain.add.confirm"),cancel:i("router.domain.add.cancel"),params:{domain:"",did:ln(t),port:"",interfaceName:"",type:T.ROUTING_RULE_TYPES.BLOCKLET,redirectCode:302,__disableConfirm:!0},onConfirm:u,onCancel:c},w=b=>{b.stopPropagation(),p(f)||n()};return h.useEffect(()=>{const{searchParams:b}=new URL(window.location.href);b.get("fromDid")&&p(f)},[]),e.jsxs(e.Fragment,{children:[typeof r=="function"?r({loading:a,open:w}):e.jsxs(J,{onClick:w,className:"rule-action","data-cy":"action-add-domain",children:[a?e.jsx(G,{size:16}):e.jsx(Er,{style:{fontSize:18,marginRight:5}}),i("router.domain.add.title")]}),d&&e.jsx(le,{title:d.title,description:d.description,confirm:d.confirm,cancel:d.cancel,params:d.params,onConfirm:d.onConfirm,onCancel:d.onCancel,color:"primary"})]})}vt.propTypes={blocklets:m.array,children:m.any,onActivate:m.func};vt.defaultProps={onActivate:()=>{},children:null,blocklets:[]};var cn={},Zo=Se;Object.defineProperty(cn,"__esModule",{value:!0});var zr=cn.default=void 0,Jo=Zo(Ce()),ea=e;zr=cn.default=(0,Jo.default)((0,ea.jsx)("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}),"Error");var dn={},ta=Se;Object.defineProperty(dn,"__esModule",{value:!0});var Br=dn.default=void 0,na=ta(Ce()),ra=e;Br=dn.default=(0,na.default)((0,ra.jsx)("path",{d:"M2 20h20v-4H2zm2-3h2v2H4zM2 4v4h20V4zm4 3H4V5h2zm-4 7h20v-4H2zm2-3h2v2H4z"}),"Storage");var un={},ia=Se;Object.defineProperty(un,"__esModule",{value:!0});var Mr=un.default=void 0,oa=ia(Ce()),aa=e;Mr=un.default=(0,oa.default)((0,aa.jsx)("path",{d:"m19 15-6 6-1.42-1.42L15.17 16H4V4h2v10h9.17l-3.59-3.58L13 9z"}),"SubdirectoryArrowRight");function Jn(t){const{t:n}=z(),{actions:r}=ue(),[i,o]=h.useState(!1),[l,a]=h.useState(null),{id:s,name:d}=t;if(en(d))return null;const p=()=>{o(!1),a(null)},c=async()=>{o(!0),await r.deleteSite(s),o(!1),a(null)},u={title:n("router.domain.delete.title"),description:n("router.domain.delete.description",{name:`<b>${d}</b>`}),confirmPlaceholder:n("router.domain.delete.confirm_desc",{name:d}),confirm:n("common.delConfirm"),cancel:n("common.cancel"),onConfirm:c,onCancel:p,keyName:d},f=w=>{w.stopPropagation(),a(u)||t.onActivate()};return e.jsxs(e.Fragment,{children:[e.jsxs(J,{onClick:f,className:"rule-action","data-cy":"action-delete-domain",children:[i?e.jsx(G,{size:16}):e.jsx(we,{style:{fontSize:18,marginRight:5}}),n("router.domain.delete.title")]}),l&&e.jsx(xt,{keyName:l.keyName,title:l.title,description:l.description,confirmPlaceholder:l.confirmPlaceholder,confirm:l.confirm,cancel:l.cancel,params:l.params,onConfirm:l.onConfirm,onCancel:l.onCancel})]})}function dt({id:t,blocklets:n,onActivate:r=()=>{},onRuleAdded:i=()=>{},children:o,teamDid:l}){const{t:a}=z(),{actions:s}=ue(),[d,p]=h.useState(!1),[c,u]=h.useState(null),f=()=>{p(!1),u(null)},w=async y=>{const D=await ct(y,a);if(D)throw D;p(!0);const k={from:{pathPrefix:Cr(y.pathPrefix)},to:{type:y.type}};y.type===T.ROUTING_RULE_TYPES.BLOCKLET?(k.to.port=y.port,k.to.did=y.did,k.to.interfaceName=y.interfaceName):y.type===T.ROUTING_RULE_TYPES.REDIRECT&&(k.to.url=y.url.trim(),k.to.redirectCode=y.redirectCode),await s.addRule(t,k,l),u(null),p(!1),i()},b={title:a("router.rule.add.title"),description:(y,D,k)=>{const P=g=>{if(k(null),ct(g,a)){D({...g,__disableConfirm:!0});return}D({...g})};return e.jsxs(I,{component:"div",children:[e.jsx(H,{label:a("router.rule.add.pathPrefix"),autoComplete:"off",variant:"outlined",name:"pathPrefix",inputProps:{"data-cy":"path-prefix-input"},fullWidth:!0,autoFocus:!0,helperText:y.helperText||a("router.rule.add.pathPrefixTip"),style:{marginBottom:32},margin:"dense",value:y.pathPrefix,onChange:g=>{let C=!1;const x=Ur({params:{...y,pathPrefix:g.target.value},blocklets:n});k(x),y.type===T.ROUTING_RULE_TYPES.BLOCKLET&&x&&(C=!0),y.type===T.ROUTING_RULE_TYPES.REDIRECT&&!y.url&&(C=!0),g.target.value.trim()||(C=!0,k(a("router.validation.pathPrefixRequired"))),C||k("");const j=a("common.slugifyHint",{value:wr(g.target.value)});D({...y,pathPrefix:g.target.value,helperText:j,__disableConfirm:C})}}),e.jsx(He,{blocklets:n,params:y,setParams:P,setError:k})]})},confirm:a("router.rule.add.confirm"),cancel:a("common.cancel"),params:{pathPrefix:"",type:T.ROUTING_RULE_TYPES.BLOCKLET,did:ln(n),port:"",interfaceName:"",redirectCode:302,__disableConfirm:!0},onConfirm:w,onCancel:f},R=y=>{y.stopPropagation(),u(b)||r()};return e.jsxs(e.Fragment,{children:[typeof o=="function"?o({loading:d,open:R}):e.jsxs(J,{onClick:R,className:"rule-action","data-cy":"action-add-rule",children:[d?e.jsx(G,{size:16}):e.jsx(Rr,{style:{fontSize:18,marginRight:5}}),a("router.rule.add.title")]}),c&&e.jsx(le,{title:c.title,description:c.description,confirm:c.confirm,cancel:c.cancel,params:c.params,onConfirm:c.onConfirm,onCancel:c.onCancel,color:"primary"})]})}dt.propTypes={id:m.string.isRequired,blocklets:m.array,children:m.any,onActivate:m.func,onRuleAdded:m.func,teamDid:m.string};dt.defaultProps={onActivate:()=>{},onRuleAdded:()=>{},children:null,blocklets:[],teamDid:""};function mn(t){const{t:n}=z(),{actions:r}=ue(),[i,o]=h.useState(!1),[l,a]=h.useState(null),{id:s,parent:{id:d},name:p,children:c,onActivate:u,teamDid:f}=t,w=()=>{o(!1),a(null)},b=async()=>{o(!0),await r.deleteRule(d,s,f),o(!1),a(null)},R={keyName:p,title:n("router.rule.delete.title"),description:n("router.rule.delete.description",{name:`<b>${p}</b>`}),confirmPlaceholder:n("router.rule.delete.confirm_desc",{name:p}),confirm:n("common.delConfirm"),cancel:n("router.rule.delete.cancel"),onConfirm:b,onCancel:w},y=D=>{D.stopPropagation(),a(R)||u()};return e.jsxs(e.Fragment,{children:[typeof c=="function"?c({loading:i,open:y}):e.jsxs(J,{onClick:y,className:"rule-action","data-cy":"action-delete-rule",children:[i?e.jsx(G,{size:16}):e.jsx(we,{style:{fontSize:18,marginRight:5}}),n("router.rule.delete.title")]}),l&&e.jsx(xt,{keyName:l.keyName,title:l.title,description:l.description,confirmPlaceholder:l.confirmPlaceholder,confirm:l.confirm,cancel:l.cancel,params:l.params,onConfirm:l.onConfirm,onCancel:l.onCancel})]})}mn.propTypes={id:m.string.isRequired,name:m.string.isRequired,parent:m.object.isRequired,children:m.any,onActivate:m.func,teamDid:m.string};mn.defaultProps={onActivate:()=>{},children:null,teamDid:""};function fn(t){const{id:n,name:r,did:i,parent:o,blocklets:l,to:a,children:s,onActivate:d,teamDid:p}=t,{t:c}=z(),{actions:u}=ue(),[f,w]=h.useState(!1),[b,R]=h.useState(null),y=()=>{w(!1),R(null)},D=async g=>{const C=await ct(g,c);if(C)throw C;w(!0);const x={id:n,from:{pathPrefix:Cr(g.pathPrefix)},to:{type:g.type}};g.type===T.ROUTING_RULE_TYPES.BLOCKLET?(x.to.port=g.port,x.to.did=g.did,x.to.interfaceName=g.interfaceName):g.type===T.ROUTING_RULE_TYPES.REDIRECT&&(x.to.url=g.url,x.to.redirectCode=g.redirectCode),await u.updateRule(o.id,x,p),R(null),w(!1)},k={title:c("router.rule.update.title"),description:(g,C,x)=>{const j=v=>{if(ct(v,c)){C({...v,__disableConfirm:!0});return}C({...v})};return e.jsxs(I,{component:"div",children:[e.jsx(H,{label:c("router.rule.add.pathPrefix"),autoComplete:"off",variant:"outlined",name:"pathPrefix",inputProps:{"data-cy":"path-prefix-input"},fullWidth:!0,autoFocus:!0,helperText:g.helperText||c("router.rule.add.pathPrefixTip"),style:{marginBottom:32},margin:"dense",value:g.pathPrefix,onChange:v=>{let S=!1;const E=Ur({params:{...g,pathPrefix:v.target.value},blocklets:l});g.type===T.ROUTING_RULE_TYPES.BLOCKLET&&E&&(S=!0,x(E)),g.type===T.ROUTING_RULE_TYPES.REDIRECT&&!g.url&&(S=!0),v.target.value.trim()||(S=!0,x(c("router.validation.pathPrefixRequired"))),S||x("");const $=c("common.slugifyHint",{value:wr(v.target.value)});C({...g,pathPrefix:v.target.value,helperText:$,__disableConfirm:S})}}),e.jsx(He,{blocklets:l,params:g,setParams:j,setError:x})]})},confirm:c("router.rule.update.confirm"),cancel:c("router.rule.update.cancel"),color:"primary",params:{pathPrefix:r==="/"?r:r.replace(/^\/+/,"").replace(/\/+$/,""),type:a.type||T.ROUTING_RULE_TYPES.BLOCKLET,did:i||ln(l),port:a.port||"",interfaceName:a.interfaceName||"",redirectCode:a.redirectCode||302,url:a.url||"",__disableConfirm:!1},onConfirm:D,onCancel:y},P=g=>{g.stopPropagation(),R(k)||d()};return e.jsxs(e.Fragment,{children:[typeof s=="function"?s({loading:f,open:P}):e.jsxs(J,{onClick:P,className:"rule-action","data-cy":"action-update-rule",children:[f?e.jsx(G,{size:16}):e.jsx(Ir,{style:{fontSize:18,marginRight:5}}),c("router.rule.update.title")]}),b&&e.jsx(le,{title:b.title,description:b.description,confirm:b.confirm,color:b.color,cancel:b.cancel,params:b.params,onConfirm:b.onConfirm,onCancel:b.onCancel})]})}fn.propTypes={id:m.string.isRequired,name:m.string.isRequired,did:m.string,parent:m.object.isRequired,blocklets:m.array,to:m.object.isRequired,children:m.any,onActivate:m.func,teamDid:m.string};fn.defaultProps={onActivate:()=>{},children:null,did:"",blocklets:[],teamDid:""};function Fe({id:t,name:n,onActivate:r,children:i,title:o,teamDid:l}){const{t:a}=z(),{actions:s}=ue(),[d,p]=h.useState(!1),[c,u]=h.useState(null);if(T.DOMAIN_FOR_DEFAULT_SITE===n)return null;const f=()=>{p(!1),u(null)},w=async D=>{p(!0),await s.addDomainAlias(t,D.domain.trim(),!!D.force,l),p(!1),u(null)},b=async(D,k,P)=>{try{await k(D)}catch(g){P(ye(g))}finally{p(!1)}},R={title:o||a("router.domainAlias.add.title"),description:(D,k,P)=>e.jsxs(I,{component:"div",children:[e.jsx(H,{label:a("router.domainAlias.add.domainDescription"),autoComplete:"off",variant:"outlined",name:"domain","data-cy":"add-domain",fullWidth:!0,autoFocus:!0,inputProps:{"data-cy":"domain-name-input"},value:D.domain,style:{marginBottom:8},margin:"dense",onChange:g=>{const C=g.target.value.trim(),x=ze(C,a);k({...D,domain:C,__disableConfirm:!!x}),P(x||"")},onKeyPress:g=>{if(g.key==="Enter"){g.preventDefault();const C=g.target.value.trim(),x=ze(C,a);x?P(x):b(D,w,P)}}}),e.jsx(at,{control:e.jsx(Si,{checked:D.force,onChange:g=>{k({...D,force:g.target.checked})},name:"checkedB",color:"primary"}),label:a("router.domainAlias.add.forceTip")})]}),confirm:a("common.confirm"),cancel:a("common.cancel"),params:{domain:"",__disableConfirm:!0},onConfirm:w,onCancel:f},y=D=>{D.stopPropagation(),u(R)||r()};return e.jsxs(e.Fragment,{children:[typeof i=="function"?i({loading:d,open:y}):e.jsxs(J,{onClick:y,className:"rule-action","data-cy":"action-add-domain-alias",children:[d?e.jsx(G,{size:16}):e.jsx(io,{style:{fontSize:18,marginRight:5}}),a("router.domainAlias.add.title")]}),c&&e.jsx(le,{title:c.title,description:c.description,confirm:c.confirm,cancel:c.cancel,params:c.params,onConfirm:c.onConfirm,onCancel:c.onCancel,color:"primary"})]})}Fe.propTypes={id:m.string.isRequired,name:m.string.isRequired,children:m.any,onActivate:m.func,title:m.string,teamDid:m.string};Fe.defaultProps={onActivate:()=>{},children:null,title:"",teamDid:""};function Ne({id:t,name:n,corsAllowedOrigins:r,onActivate:i,children:o,teamDid:l}){const{t:a}=z(),{actions:s}=ue(),[d,p]=h.useState(!1),[c,u]=h.useState(null);if(en(n))return null;let f=n;n.endsWith(T.BLOCKLET_SITE_GROUP_SUFFIX)&&(f=`${a("common.the")} Blocklet`);const w=()=>{p(!1),u(null)},b=async D=>{p(!0),await s.updateSite(t,{corsAllowedOrigins:D.corsAllowedOrigins.split(",").map(k=>k.trim())},l),p(!1),u(null)},R={title:a("router.domainSecurity.title"),description:(D,k,P)=>e.jsx(I,{component:"div",children:e.jsx(H,{label:a("router.domainSecurity.cors.title",{name:f}),autoComplete:"off",variant:"outlined",name:"corsAllowedOrigins",fullWidth:!0,autoFocus:!0,value:D.corsAllowedOrigins,style:{marginBottom:32},margin:"dense",helperText:a("router.domainSecurity.cors.description",{name:f}),onChange:g=>{k({...D,corsAllowedOrigins:g.target.value,__disableConfirm:!g.target.value.trim()}),g.target.value.trim()?P(""):P(a("router.domainSecurity.cors.domainInvalid"))}})}),confirm:a("common.confirm"),cancel:a("common.cancel"),params:{corsAllowedOrigins:Array.isArray(r)?r.join(", "):n,__disableConfirm:!0},onConfirm:b,onCancel:w},y=D=>{D.stopPropagation(),u(R)||i()};return e.jsxs(e.Fragment,{children:[typeof o=="function"?o({loading:d,open:y}):e.jsxs(J,{onClick:y,className:"rule-action","data-cy":"action-update-domain",children:[d?e.jsx(G,{size:16}):e.jsx(Ue,{style:{fontSize:18,marginRight:5}}),a("router.domainSecurity.title")]}),c&&e.jsx(le,{title:c.title,description:c.description,confirm:c.confirm,cancel:c.cancel,params:c.params,onConfirm:c.onConfirm,onCancel:c.onCancel,color:"primary"})]})}Ne.propTypes={id:m.string.isRequired,name:m.string.isRequired,children:m.any,onActivate:m.func,corsAllowedOrigins:m.oneOfType([m.string,m.array]),teamDid:m.string};Ne.defaultProps={onActivate:()=>{},children:null,corsAllowedOrigins:"",teamDid:""};function sa({id:t,name:n,onActivate:r}){const{t:i}=z(),{actions:o}=ue(),[l,a]=h.useState(!1),[s,d]=h.useState(null);if(en(n))return null;const p=()=>{a(!1),d(null)},c=async w=>{a(!0),await o.updateSite(t,{domain:w.domain.trim()}),a(!1),d(null)},u={title:i("router.domain.update.title"),description:(w,b,R)=>e.jsx(I,{component:"div",children:e.jsx(H,{label:i("router.domain.update.label"),autoComplete:"off",variant:"outlined",name:"domain",fullWidth:!0,autoFocus:!0,value:w.domain,style:{marginBottom:32},margin:"dense",helperText:i("router.domain.update.description"),onChange:y=>{const D=y.target.value.trim(),k=ze(D,i);b({...w,domain:y.target.value,__disableConfirm:!!k}),R(k||"")}})}),confirm:i("common.confirm"),cancel:i("common.cancel"),params:{domain:n,__disableConfirm:!0},onConfirm:c,onCancel:p},f=w=>{w.stopPropagation(),d(u)||r()};return e.jsxs(e.Fragment,{children:[e.jsxs(J,{onClick:f,className:"rule-action",children:[l?e.jsx(G,{size:16}):e.jsx(Ir,{style:{fontSize:18,marginRight:5}}),i("router.domain.update.title")]}),s&&e.jsx(le,{title:s.title,description:s.description,confirm:s.confirm,cancel:s.cancel,params:s.params,onConfirm:s.onConfirm,onCancel:s.onCancel,color:"primary"})]})}function _e(t){const[n,r]=h.useState(null),i=s=>{s.stopPropagation(),r(s.currentTarget)},o=s=>{s&&s.stopPropagation(),r(null)},l=[];if(t.type==="root"&&l.push(e.jsx(vt,{...t,onActivate:o},"add-domain")),t.type==="domain"&&l.push(e.jsx(sa,{...t,onActivate:o},"update-domain"),e.jsx(dt,{...t,onActivate:o,onRuleAdded:t.onRuleAdded},"add-rule"),e.jsx(Fe,{...t,onActivate:o},"add-domain-alias"),e.jsx(Ne,{...t,onActivate:o},"update-domain-security"),e.jsx(Jn,{...t,onActivate:o},"delete-domain")),t.type==="rule"&&l.push(e.jsx(fn,{...t,onActivate:o},"update-rule"),e.jsx(mn,{...t,onActivate:o},"delete-rule")),t.type===T.ROUTING_RULE_TYPES.REDIRECT&&l.push(e.jsx(Jn,{...t,onActivate:o},"delete-domain")),t.type==="dashboard_domain"&&l.push(e.jsx(dt,{...t,onActivate:o},"add-rule"),e.jsx(Ne,{...t,onActivate:o},"update-domain-security"),e.jsx(Fe,{...t,onActivate:o},"add-domain-alias")),t.type==="blocklet_domain"&&l.push(e.jsx(Ne,{...t,onActivate:o},"update-domain-security"),e.jsx(Fe,{...t,onActivate:o},"add-domain-alias")),l.length===0)return null;const a=s=>{s.stopPropagation()};return e.jsxs("div",{children:[e.jsx(zt,{onMouseDown:a,onClick:i,"data-cy":"action-trigger",size:"large",children:e.jsx(ro,{})}),e.jsx(Di,{keepMounted:!0,onMouseDown:a,open:!!n,onClose:o,anchorEl:n,anchorOrigin:{vertical:"bottom",horizontal:"left"},children:l})]})}_e.propTypes={blocklet:m.object,onRuleAdded:m.func};_e.defaultProps={onRuleAdded:()=>{},blocklet:{}};var pn={},la=Se;Object.defineProperty(pn,"__esModule",{value:!0});var gn=pn.default=void 0,ca=la(Ce()),da=e;gn=pn.default=(0,ca.default)((0,da.jsx)("path",{d:"M18 8h-1V6c0-2.76-2.24-5-5-5S7 3.24 7 6v2H6c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V10c0-1.1-.9-2-2-2m-6 9c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m3.1-9H8.9V6c0-1.71 1.39-3.1 3.1-3.1 1.71 0 3.1 1.39 3.1 3.1z"}),"Https");function hn({certificate:t}){const[n,r]=h.useState(null),i=Z(),{t:o,locale:l}=z(),a=p=>{r(p.currentTarget)},s=()=>{r(null)},d=!!n;return e.jsxs(e.Fragment,{children:[e.jsx(gn,{"aria-owns":d?"mouse-over-popover":void 0,onMouseEnter:a,onMouseLeave:s,style:{color:"#44cdc6",fontSize:20,marginLeft:8,cursor:"pointer"}}),e.jsx(ki,{id:"mouse-over-popover",style:{pointerEvents:"none"},open:d,anchorEl:n,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:s,disableRestoreFocus:!0,children:e.jsx(Ri,{children:e.jsxs(oo,{style:{display:"flex"},children:[e.jsx("div",{children:e.jsx("img",{src:`${i.imgPrefix}/https-certificate-icon.png`,alt:"certificate icon",style:{maxHeight:"100%",maxWidth:"100%"}})}),e.jsxs(I,{component:"div",style:{marginLeft:"16px"},children:[e.jsx(I,{component:"div",style:{fontWeight:"bold"},children:t.domain}),e.jsx(I,{component:"div",children:`${o("common.issuer")}: ${ne(t,"issuer.commonName","")}`}),e.jsx(I,{component:"div",children:`${o("router.cert.issuedOn")}: ${st(t.validFrom,l)}`}),e.jsx(I,{component:"div",children:`${o("router.cert.expiryOn")}: ${st(t.validTo,l)}`})]})]})})})]})}hn.propTypes={certificate:m.object};hn.defaultProps={certificate:{}};function ut(t){const{name:n,type:r,filters:i}=t,{t:o}=z(),{status:l}=yt();if(r!=="domain"||!Qt(n))return null;let a=null,s=null;const{isHttps:d,matchedCert:p}=l[n]||{};if(!Pi(n)){const{dns:{resolved:u,ip:f}={}}=l[n]||{};u||f==="127.0.0.1"?a=e.jsx(pe,{title:o("router.domain.verify.ok"),children:e.jsx(Vn,{color:"success"})}):a=e.jsx(pe,{title:o("router.domain.verify.notResolved"),children:e.jsx(Vn,{color:"error"})})}d?s=e.jsx(hn,{certificate:p}):s=e.jsx(pe,{title:o("router.domain.https.bad"),children:e.jsx(gn,{style:{color:"#D0021B",fontSize:20,marginLeft:8,cursor:"pointer"}})});const c=i.map(u=>u==="domain"?a:u==="http"?s:null);return h.createElement(h.Fragment,null,...c)}ut.propTypes={type:m.string.isRequired,name:m.string.isRequired,filters:m.array};ut.defaultProps={filters:["domain","http"]};const ua=t=>["waiting","creating","renewaling"].includes(t);function xn(t){var g;const{t:n}=z(),[r,i]=h.useState(!1),[o,l]=h.useState(null),{domain:a,onAdd:s,children:d,siteId:p}=t,{api:c}=Z(),[u,f]=h.useState(!1),{updateStatus:w}=yt(),b=Me(async()=>{const{cert:C}=await c.findCertificateByDomain({input:{domain:a}});return C}),R=C=>{C.domain===a&&f(!1)};if(h.useEffect(()=>{var C;!b.loading&&ua((C=b.value)==null?void 0:C.status)&&f(!0)},[b]),Ut(T.EVENTS.CERT_ERROR,R),Ut(T.EVENTS.CERT_ISSUED,C=>{b.retry(),w(C.domain),R(C)}),b.loading||((g=b.value)==null?void 0:g.status)==="normal")return"";const y=()=>{i(!1),l(null)},D=async()=>{i(!0);try{await c.issueLetsEncryptCert({input:{domain:a,siteId:p}}),s(),f(!0)}catch(C){console.error(C),f(!1)}finally{i(!1),l(null)}},k={title:n("router.cert.genLetsEncryptCert.title"),description:e.jsxs("div",{children:[e.jsx(je,{severity:"success",children:n("router.cert.genLetsEncryptCert.dnsTip")}),n("router.cert.genLetsEncryptCert.description")]}),confirm:n("common.confirm"),onConfirm:D,onCancel:y},P=C=>{C.stopPropagation(),l(k)};return e.jsxs(e.Fragment,{children:[u?e.jsx(pe,{title:n("router.cert.issuing"),children:e.jsx(G,{size:12})}):d({loading:r,open:P}),o&&e.jsx(le,{color:"primary",title:o.title,description:o.description,confirm:o.confirm,params:o.params,onConfirm:o.onConfirm,onCancel:o.onCancel})]})}xn.propTypes={domain:m.string.isRequired,onAdd:m.func,children:m.any,siteId:m.string.isRequired};xn.defaultProps={onAdd:()=>{},children:null};function mt(t){var i;const{status:n}=yt(),{domain:r}=t;return!Qt(r)||(i=n[r])!=null&&i.isHttps?"":e.jsx(xn,{...t})}mt.propTypes={siteId:m.string.isRequired,domain:m.string.isRequired,onAdd:m.func,children:m.any};mt.defaultProps={onAdd:()=>{},children:null};function yn(t){const{t:n}=z(),[r,i]=h.useState(!1),[o,l]=h.useState(null),{id:a,domain:s,onDelete:d,children:p,teamDid:c}=t,{actions:u}=ue();if(s===window.location.hostname)return"";const f=()=>{i(!1),l(null)},w=async()=>{i(!0);try{await u.deleteDomainAlias(a,s,c),d()}catch(y){console.error(y)}finally{i(!1),l(null)}},b={keyName:s,title:n("router.domainAlias.delete.title"),description:n("router.domainAlias.delete.description",{domain:s}),confirmPlaceholder:n("router.domainAlias.delete.confirmPlaceholder",{domain:s}),confirm:n("common.delete"),onConfirm:w,onCancel:f},R=y=>{y.stopPropagation(),l(b)};return e.jsxs(e.Fragment,{children:[typeof p=="function"?p({loading:r,open:R}):e.jsxs(X,{edge:"end",onClick:R,size:"small",className:"rule-action",color:"error","data-cy":"action-delete-domain-alias",children:[r?e.jsx(G,{size:16}):e.jsx(we,{style:{fontSize:16}}),n("common.delete")]}),o&&e.jsx(xt,{keyName:o.keyName,title:o.title,description:o.description,confirmPlaceholder:o.confirmPlaceholder,confirm:o.confirm,params:o.params,onConfirm:o.onConfirm,onCancel:o.onCancel})]})}yn.propTypes={id:m.string.isRequired,domain:m.string.isRequired,onDelete:m.func,children:m.any,teamDid:m.string};yn.defaultProps={onDelete:()=>{},children:null,teamDid:""};function vn({domain:t,isHttps:n,toUrl:r}){const i=n?"https":"http",{t:o}=z();let l=r;return Sr(l)||(l=`${i}://${t}${r}`),e.jsxs(e.Fragment,{children:[e.jsx(I,{className:"arrow-name-middle",children:o("common.redirect")}),e.jsx("span",{className:"arrow-name-arrow",children:"⟶"}),e.jsx(Zt,{href:l,target:"_blank",underline:"hover",children:r},l)]})}vn.propTypes={domain:m.string.isRequired,toUrl:m.string.isRequired,isHttps:m.bool};vn.defaultProps={isHttps:!1};function bn(){const{t}=z();return e.jsx(I,{className:"arrow-name-middle",children:t("common.page404")})}bn.propTypes={};bn.defaultProps={};function Be(t){const{t:n}=z(),{data:r}=Xt(),{info:i}=Z(),{status:o}=yt(),l=r.map(V=>({meta:{did:V.meta.did,name:Ei.getDisplayName(V,!0),version:V.meta.version,interfaces:V.meta.interfaces},port:V.port,ports:V.ports,status:V.status})),{id:a,type:s,name:d,title:p,items:c=[],depth:u,to:f,expand:w,isProtected:b,pathPrefix:R,parent:y,domainAliases:D}=t;let k=d;const P=d.endsWith(T.BLOCKLET_SITE_GROUP_SUFFIX);let g=s;d===be&&(g="dashboard_domain"),P&&(g="blocklet_domain");const[C,x]=h.useState(w),v={root:Br,domain:Er,rule:Mr}[s],S={paddingBottom:8,paddingLeft:8};if(s==="domain"){let V=function({domain:W,primaryDomain:B,rules:N}){let Y=ot(W);return B===be?Y=`${Y}/${i.routing.adminPath.replace(/^\/+/,"")}`:N&&N.length&&N[0].pathPrefix&&(Y=`${Y}/${N[0].pathPrefix.replace(/^\/+/,"")}`),W!==be?e.jsx(ma,{href:Y,target:"_blank",rel:"noreferrer",onClick:De=>De.stopPropagation(),children:W}):W};if(b&&!P)return null;if(P){const W=d.replace(T.BLOCKLET_SITE_GROUP_SUFFIX,""),B=l.find(N=>N.meta.did===W);if(!B||B.controller)return null;k=B.meta.title||B.meta.name}V.propTypes={domain:m.string.isRequired,primaryDomain:m.string.isRequired,rules:m.array.isRequired};const ve=()=>{x(!0)};let he=(D||[]).filter(W=>W.value!==d);return he=Ti(he),[e.jsxs(Ft,{alignItems:"flex-start",button:!0,disableGutters:!0,"data-cy":"rule-domain",children:[!P&&e.jsxs(Ze,{onClick:()=>x(W=>!W),children:[c.length>0&&(C?e.jsx(Ii,{}):e.jsx(no,{})),e.jsx(v,{style:{fontSize:22}})]}),P&&e.jsx(Ze,{children:e.jsx(v,{style:{fontSize:22}})}),e.jsx(At,{onClick:()=>x(W=>!W),className:`rule-name rule-name--depth${u}`,style:{flex:1},secondary:c.length<=0?e.jsx("span",{className:"site-secondary",children:n("router.empty")}):"",primary:e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"site-header",children:[d===T.DOMAIN_FOR_DEFAULT_SITE&&n("router.defaultSite"),d!==T.DOMAIN_FOR_DEFAULT_SITE&&!P&&e.jsx(V,{domain:d,primaryDomain:d,rules:c}),P&&k,c.length&&!C?e.jsx("span",{style:{marginLeft:5},children:`(${c.length} URL)`}):null,e.jsx("span",{style:{marginLeft:12}}),s==="domain"&&d!==T.DOMAIN_FOR_DEFAULT_SITE&&d!==be&&!P&&e.jsxs(e.Fragment,{children:[e.jsx(ut,{type:s,name:d},d),e.jsx("span",{style:{marginLeft:12}}),e.jsx(mt,{siteId:a,domain:d,children:({open:W})=>e.jsx(X,{size:"small",onClick:B=>W(B),children:n("router.cert.genLetsEncryptCert.title")})})]})]}),he.map(W=>{const B=typeof W!="string"?W.value:W;return e.jsxs("div",{className:"site-alias",children:[e.jsx(V,{domain:B,primaryDomain:d,rules:c}),e.jsx("span",{style:{marginLeft:12}}),e.jsx(ut,{type:s,name:B},`domain-status-${d}`),e.jsx(mt,{siteId:a,domain:B,children:({open:N})=>e.jsx(X,{size:"small",onClick:Y=>N(Y),children:n("router.cert.genLetsEncryptCert.title")})}),!W.isProtected&&e.jsx(yn,{id:t.id,domain:B},"delete-domain-alias"),B!==be&&B!==window.location.hostname&&e.jsx(_e,{...t,domain:B,type:"domainAlias",onRuleAdded:ve},`action-${d}`)]},B)})]})}),e.jsx(re,{permission:"mutate_router",children:e.jsx(Lt,{children:e.jsx(_e,{blocklets:l,...t,onRuleAdded:ve,type:g},d)})})]},"parent"),!P&&c.length>0&&e.jsx(Ai,{in:C,children:e.jsx(Bt,{component:"div",className:`rule-list rule-list--depth${u}`,disablePadding:!0,children:c.map(W=>e.jsx(Be,{...W,parent:t,depth:u+1},W.id))},"children")},"rules")]}if(s==="root")return[e.jsxs(Ft,{disableGutters:!0,"data-cy":"rule-root",children:[e.jsx(Ze,{children:e.jsx(v,{style:{fontSize:22}})}),e.jsx(At,{primary:d}),e.jsx(re,{permission:"mutate_router",children:e.jsx(Lt,{children:e.jsx(_e,{blocklets:l,...t})})})]},"root"),c.length>0&&e.jsx(Bt,{component:"div",className:`rule-list rule-list--depth${u}`,disablePadding:!0,children:c.map(V=>e.jsx(Be,{expand:!b,...V,parent:t,depth:u+1},V.id))},"children")];let E=`/blocklets/${f.did}/overview`;f.type===T.ROUTING_RULE_TYPES.DAEMON&&(E="/");const $={meta:{did:i.did,name:"Blocklet Server Dashboard",version:i.version},status:"running",port:i.port},U=f.did===i.did?$:l.find(V=>V.meta.did===f.did),A=U&&U.status==="running"||f.type===T.ROUTING_RULE_TYPES.DAEMON,O=n(A?"router.healthy.ok":"router.healthy.error"),L=o[y.name]||{};return e.jsxs(Ft,{className:"hover-item",divider:!0,disableGutters:!0,style:S,"data-cy":"rule-item",children:[e.jsx(Ze,{className:"arrow-icon",children:e.jsx(v,{style:{fontSize:22}})}),e.jsx(At,{primary:e.jsxs(I,{component:"div",className:"arrow-name",children:[e.jsx(I,{style:{wordBreak:"break-all"},className:"arrow-name-left",children:d}),e.jsx("span",{className:"arrow-name-arrow",children:"⟶"}),(f.type===T.ROUTING_RULE_TYPES.DAEMON||f.type===T.ROUTING_RULE_TYPES.BLOCKLET)&&e.jsxs(e.Fragment,{children:[y.name!==T.DOMAIN_FOR_DEFAULT_SITE&&A&&e.jsx(q,{className:"arrow-name-middle",children:e.jsx(Zt,{href:ot(y.name,R),target:"_blank",underline:"hover",children:n("common.open")})}),y.name===T.DOMAIN_FOR_DEFAULT_SITE&&e.jsx(I,{component:"span",className:"arrow-name-middle",children:"Blocklet"}),!A&&e.jsx("span",{className:"arrow-name-middle",children:n("common.unavailable")}),e.jsx("span",{className:"arrow-name-arrow",children:"⟶"}),e.jsxs(Li,{to:E,className:"arrow-name-right",children:[e.jsx(pe,{title:O,children:A?e.jsx(Oi,{style:{color:"#44cdc6",fontSize:20}}):e.jsx(zr,{style:{color:"red",fontSize:20}})}),e.jsx("span",{children:U?U.meta.name:p}),U&&e.jsx("span",{style:{marginLeft:8},children:e.jsx(Tr,{status:U.status,progress:U.progress})})]})]}),f.type===T.ROUTING_RULE_TYPES.REDIRECT&&e.jsx(vn,{prefix:R,domain:y.name,toUrl:f.url,isHttps:L.isHttps}),f.type===T.ROUTING_RULE_TYPES.NONE&&e.jsx(bn,{})]})}),e.jsx(re,{permission:"mutate_router",children:e.jsx(Lt,{children:e.jsx(_e,{blocklets:l,...t,did:f.did})})})]},d)}Be.propTypes={type:m.string.isRequired,to:m.object,name:m.string.isRequired,title:m.string,id:m.string,items:m.array,parent:m.object,depth:m.number,expand:m.bool,isProtected:m.bool,pathPrefix:m.string,domainAliases:m.array};Be.defaultProps={id:"",to:{},title:"",items:[],depth:0,parent:{},expand:!0,isProtected:!1,pathPrefix:"",domainAliases:[]};const Ft=ee(_i)`
|
|
122
|
-
.MuiListItemText-root {
|
|
123
|
-
padding-right: 48px;
|
|
124
|
-
}
|
|
125
|
-
.MuiListItemSecondaryAction-root {
|
|
126
|
-
right: 0;
|
|
127
|
-
}
|
|
128
|
-
.site-header {
|
|
129
|
-
display: unset !important;
|
|
130
|
-
vertical-align: middle;
|
|
131
|
-
.MuiSvgIcon-root {
|
|
132
|
-
vertical-align: middle;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
`,ma=ee("a")`
|
|
136
|
-
color: #000;
|
|
137
|
-
white-space: normal;
|
|
138
|
-
word-break: break-all;
|
|
139
|
-
:hover {
|
|
140
|
-
color: rgba(0, 0, 0, 0.6);
|
|
141
|
-
}
|
|
142
|
-
`;function fa(){const{sites:t,allDomains:n}=ue(),{data:r}=Xt(),{t:i}=z(),o=t.map(l=>{const a=l.items.filter(s=>!s.isProtected);return{...l,items:a}});return e.jsx(Nr,{domains:n,children:e.jsxs(pa,{children:[e.jsx(re,{permission:"mutate_router",children:e.jsx(q,{textAlign:"right",mb:1,children:e.jsx(vt,{blocklets:r,children:({open:l})=>e.jsxs(X,{style:{marginLeft:16},variant:"contained",color:"primary","data-cy":"add-domain-alias",onClick:l,children:[e.jsx(Ue,{style:{fontSize:"1.3em",marginRight:4}}),i("router.domain.addSite")]})})})}),e.jsx(Bt,{component:"div",disablePadding:!0,children:o.map(l=>h.createElement(Be,{...l,depth:1,key:l.id}))})]})})}const pa=ee.main`
|
|
143
|
-
margin-top: ${t=>t.theme.spacing(2)};
|
|
144
|
-
min-height: 60vh;
|
|
145
|
-
|
|
146
|
-
.MuiListItemIcon-root {
|
|
147
|
-
min-width: ${t=>t.theme.spacing(4)};
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.site-header {
|
|
151
|
-
display: flex;
|
|
152
|
-
align-items: center;
|
|
153
|
-
margin-left: ${t=>t.theme.spacing(1)};
|
|
154
|
-
font-size: 1.2rem;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
.site-alias {
|
|
158
|
-
display: flex;
|
|
159
|
-
align-items: center;
|
|
160
|
-
margin-left: ${t=>t.theme.spacing(1)};
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
.site-secondary {
|
|
164
|
-
margin-left: ${t=>t.theme.spacing(1)};
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
.rule-list--depth1 {
|
|
168
|
-
padding-left: ${t=>t.theme.spacing(4)};
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
.rule-list--depth2 {
|
|
172
|
-
padding-left: ${t=>t.theme.spacing(5)};
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
.rule-action {
|
|
176
|
-
margin-left: ${t=>t.theme.spacing(2)};
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
.rule-name--depth2 span {
|
|
180
|
-
font-weight: bold;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
|
-
.arrow-name {
|
|
184
|
-
display: flex;
|
|
185
|
-
align-items: center;
|
|
186
|
-
.arrow-name-left {
|
|
187
|
-
width: 400px;
|
|
188
|
-
flex-shrink: 0;
|
|
189
|
-
text-align: left;
|
|
190
|
-
}
|
|
191
|
-
.arrow-name-middle {
|
|
192
|
-
width: 150px;
|
|
193
|
-
flex-shrink: 0;
|
|
194
|
-
text-align: left;
|
|
195
|
-
}
|
|
196
|
-
.arrow-name-arrow {
|
|
197
|
-
width: 40px;
|
|
198
|
-
flex-shrink: 0;
|
|
199
|
-
margin: auto 16px;
|
|
200
|
-
font-size: 24px;
|
|
201
|
-
color: #0000008a;
|
|
202
|
-
}
|
|
203
|
-
.arrow-name-right {
|
|
204
|
-
flex-shrink: 0;
|
|
205
|
-
display: flex;
|
|
206
|
-
align-items: center;
|
|
207
|
-
|
|
208
|
-
span {
|
|
209
|
-
margin: 0 8px;
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.md}px) {
|
|
215
|
-
.rule-list--depth1,
|
|
216
|
-
.rule-list--depth2 {
|
|
217
|
-
padding-left: 0;
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
.MuiListItem-secondaryAction {
|
|
221
|
-
padding-right: 0;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.lg}px) {
|
|
226
|
-
.arrow-icon {
|
|
227
|
-
margin-top: 4px;
|
|
228
|
-
align-self: flex-start;
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
.arrow-name {
|
|
232
|
-
flex-direction: column;
|
|
233
|
-
align-items: flex-start;
|
|
234
|
-
.arrow-name-left {
|
|
235
|
-
width: auto;
|
|
236
|
-
}
|
|
237
|
-
.arrow-name-middle {
|
|
238
|
-
margin: 5px 0;
|
|
239
|
-
}
|
|
240
|
-
.arrow-name-arrow {
|
|
241
|
-
display: none;
|
|
242
|
-
}
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
`;var ga=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function Ke(t,n){var r=ha(t);if(typeof r.path!="string"){var i=t.webkitRelativePath;Object.defineProperty(r,"path",{value:typeof n=="string"?n:typeof i=="string"&&i.length>0?i:t.name,writable:!1,configurable:!1,enumerable:!0})}return r}function ha(t){var n=t.name,r=n&&n.lastIndexOf(".")!==-1;if(r&&!t.type){var i=n.split(".").pop().toLowerCase(),o=ga.get(i);o&&Object.defineProperty(t,"type",{value:o,writable:!1,configurable:!1,enumerable:!0})}return t}var xa=[".DS_Store","Thumbs.db"];function ya(t){return Te(this,void 0,void 0,function(){return Ie(this,function(n){return ft(t)&&va(t)?[2,Ca(t.dataTransfer,t.type)]:ba(t)?[2,ja(t)]:Array.isArray(t)&&t.every(function(r){return"getFile"in r&&typeof r.getFile=="function"})?[2,wa(t)]:[2,[]]})})}function va(t){return ft(t.dataTransfer)}function ba(t){return ft(t)&&ft(t.target)}function ft(t){return typeof t=="object"&&t!==null}function ja(t){return qt(t.target.files).map(function(n){return Ke(n)})}function wa(t){return Te(this,void 0,void 0,function(){var n;return Ie(this,function(r){switch(r.label){case 0:return[4,Promise.all(t.map(function(i){return i.getFile()}))];case 1:return n=r.sent(),[2,n.map(function(i){return Ke(i)})]}})})}function Ca(t,n){return Te(this,void 0,void 0,function(){var r,i;return Ie(this,function(o){switch(o.label){case 0:return t===null?[2,[]]:t.items?(r=qt(t.items).filter(function(l){return l.kind==="file"}),n!=="drop"?[2,r]:[4,Promise.all(r.map(Sa))]):[3,2];case 1:return i=o.sent(),[2,er(Wr(i))];case 2:return[2,er(qt(t.files).map(function(l){return Ke(l)}))]}})})}function er(t){return t.filter(function(n){return xa.indexOf(n.name)===-1})}function qt(t){if(t===null)return[];for(var n=[],r=0;r<t.length;r++){var i=t[r];n.push(i)}return n}function Sa(t){if(typeof t.webkitGetAsEntry!="function")return tr(t);var n=t.webkitGetAsEntry();return n&&n.isDirectory?qr(n):tr(t)}function Wr(t){return t.reduce(function(n,r){return Fi(n,Array.isArray(r)?Wr(r):[r])},[])}function tr(t){var n=t.getAsFile();if(!n)return Promise.reject(t+" is not a File");var r=Ke(n);return Promise.resolve(r)}function Da(t){return Te(this,void 0,void 0,function(){return Ie(this,function(n){return[2,t.isDirectory?qr(t):Pa(t)]})})}function qr(t){var n=t.createReader();return new Promise(function(r,i){var o=[];function l(){var a=this;n.readEntries(function(s){return Te(a,void 0,void 0,function(){var d,p,c;return Ie(this,function(u){switch(u.label){case 0:if(s.length)return[3,5];u.label=1;case 1:return u.trys.push([1,3,,4]),[4,Promise.all(o)];case 2:return d=u.sent(),r(d),[3,4];case 3:return p=u.sent(),i(p),[3,4];case 4:return[3,6];case 5:c=Promise.all(s.map(Da)),o.push(c),l(),u.label=6;case 6:return[2]}})})},function(s){i(s)})}l()})}function Pa(t){return Te(this,void 0,void 0,function(){return Ie(this,function(n){return[2,new Promise(function(r,i){t.file(function(o){var l=Ke(o,t.fullPath);r(l)},function(o){i(o)})})]})})}var ka=function(t,n){if(t&&n){var r=Array.isArray(n)?n:n.split(","),i=t.name||"",o=(t.type||"").toLowerCase(),l=o.replace(/\/.*$/,"");return r.some(function(a){var s=a.trim().toLowerCase();return s.charAt(0)==="."?i.toLowerCase().endsWith(s):s.endsWith("/*")?l===s.replace(/\/.*$/,""):o===s})}return!0};function nr(t,n){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,i)}return r}function rr(t){for(var n=1;n<arguments.length;n++){var r=arguments[n]!=null?arguments[n]:{};n%2?nr(Object(r),!0).forEach(function(i){Hr(t,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):nr(Object(r)).forEach(function(i){Object.defineProperty(t,i,Object.getOwnPropertyDescriptor(r,i))})}return t}function Hr(t,n,r){return n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}function ir(t,n){return Ta(t)||Ea(t,n)||_a(t,n)||Ra()}function Ra(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
246
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function _a(t,n){if(t){if(typeof t=="string")return or(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return or(t,n)}}function or(t,n){(n==null||n>t.length)&&(n=t.length);for(var r=0,i=new Array(n);r<n;r++)i[r]=t[r];return i}function Ea(t,n){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var i=[],o=!0,l=!1,a,s;try{for(r=r.call(t);!(o=(a=r.next()).done)&&(i.push(a.value),!(n&&i.length===n));o=!0);}catch(d){l=!0,s=d}finally{try{!o&&r.return!=null&&r.return()}finally{if(l)throw s}}return i}}function Ta(t){if(Array.isArray(t))return t}var Ia="file-invalid-type",Aa="file-too-large",La="file-too-small",Oa="too-many-files",Fa=function(n){n=Array.isArray(n)&&n.length===1?n[0]:n;var r=Array.isArray(n)?"one of ".concat(n.join(", ")):n;return{code:Ia,message:"File type must be ".concat(r)}},ar=function(n){return{code:Aa,message:"File is larger than ".concat(n," ").concat(n===1?"byte":"bytes")}},sr=function(n){return{code:La,message:"File is smaller than ".concat(n," ").concat(n===1?"byte":"bytes")}},Na={code:Oa,message:"Too many files"};function Kr(t,n){var r=t.type==="application/x-moz-file"||ka(t,n);return[r,r?null:Fa(n)]}function Gr(t,n,r){if(Le(t.size))if(Le(n)&&Le(r)){if(t.size>r)return[!1,ar(r)];if(t.size<n)return[!1,sr(n)]}else{if(Le(n)&&t.size<n)return[!1,sr(n)];if(Le(r)&&t.size>r)return[!1,ar(r)]}return[!0,null]}function Le(t){return t!=null}function $a(t){var n=t.files,r=t.accept,i=t.minSize,o=t.maxSize,l=t.multiple,a=t.maxFiles;return!l&&n.length>1||l&&a>=1&&n.length>a?!1:n.every(function(s){var d=Kr(s,r),p=ir(d,1),c=p[0],u=Gr(s,i,o),f=ir(u,1),w=f[0];return c&&w})}function pt(t){return typeof t.isPropagationStopped=="function"?t.isPropagationStopped():typeof t.cancelBubble<"u"?t.cancelBubble:!1}function et(t){return t.dataTransfer?Array.prototype.some.call(t.dataTransfer.types,function(n){return n==="Files"||n==="application/x-moz-file"}):!!t.target&&!!t.target.files}function lr(t){t.preventDefault()}function Ua(t){return t.indexOf("MSIE")!==-1||t.indexOf("Trident/")!==-1}function za(t){return t.indexOf("Edge/")!==-1}function Ba(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.navigator.userAgent;return Ua(t)||za(t)}function me(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return function(i){for(var o=arguments.length,l=new Array(o>1?o-1:0),a=1;a<o;a++)l[a-1]=arguments[a];return n.some(function(s){return!pt(i)&&s&&s.apply(void 0,[i].concat(l)),pt(i)})}}function cr(){return"showOpenFilePicker"in window}function Ma(t){return t=typeof t=="string"?t.split(","):t,[{description:"everything",accept:Array.isArray(t)?t.filter(function(n){return n==="audio/*"||n==="video/*"||n==="image/*"||n==="text/*"||/\w+\/[-+.\w]+/g.test(n)}).reduce(function(n,r){return rr(rr({},n),{},Hr({},r,[]))},{}):{}}]}var Wa=["children"],qa=["open"],Ha=["refKey","role","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"],Ka=["refKey","onChange","onClick"];function Ga(t){return Xa(t)||Ya(t)||Vr(t)||Va()}function Va(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
247
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ya(t){if(typeof Symbol<"u"&&t[Symbol.iterator]!=null||t["@@iterator"]!=null)return Array.from(t)}function Xa(t){if(Array.isArray(t))return Ht(t)}function Nt(t,n){return Ja(t)||Za(t,n)||Vr(t,n)||Qa()}function Qa(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
248
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Vr(t,n){if(t){if(typeof t=="string")return Ht(t,n);var r=Object.prototype.toString.call(t).slice(8,-1);if(r==="Object"&&t.constructor&&(r=t.constructor.name),r==="Map"||r==="Set")return Array.from(t);if(r==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return Ht(t,n)}}function Ht(t,n){(n==null||n>t.length)&&(n=t.length);for(var r=0,i=new Array(n);r<n;r++)i[r]=t[r];return i}function Za(t,n){var r=t==null?null:typeof Symbol<"u"&&t[Symbol.iterator]||t["@@iterator"];if(r!=null){var i=[],o=!0,l=!1,a,s;try{for(r=r.call(t);!(o=(a=r.next()).done)&&(i.push(a.value),!(n&&i.length===n));o=!0);}catch(d){l=!0,s=d}finally{try{!o&&r.return!=null&&r.return()}finally{if(l)throw s}}return i}}function Ja(t){if(Array.isArray(t))return t}function dr(t,n){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter(function(o){return Object.getOwnPropertyDescriptor(t,o).enumerable})),r.push.apply(r,i)}return r}function K(t){for(var n=1;n<arguments.length;n++){var r=arguments[n]!=null?arguments[n]:{};n%2?dr(Object(r),!0).forEach(function(i){Kt(t,i,r[i])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):dr(Object(r)).forEach(function(i){Object.defineProperty(t,i,Object.getOwnPropertyDescriptor(r,i))})}return t}function Kt(t,n,r){return n in t?Object.defineProperty(t,n,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[n]=r,t}function gt(t,n){if(t==null)return{};var r=es(t,n),i,o;if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(t);for(o=0;o<l.length;o++)i=l[o],!(n.indexOf(i)>=0)&&Object.prototype.propertyIsEnumerable.call(t,i)&&(r[i]=t[i])}return r}function es(t,n){if(t==null)return{};var r={},i=Object.keys(t),o,l;for(l=0;l<i.length;l++)o=i[l],!(n.indexOf(o)>=0)&&(r[o]=t[o]);return r}var jn=h.forwardRef(function(t,n){var r=t.children,i=gt(t,Wa),o=Vt(i),l=o.open,a=gt(o,qa);return h.useImperativeHandle(n,function(){return{open:l}},[l]),Ni.createElement(h.Fragment,null,r(K(K({},a),{},{open:l})))});jn.displayName="Dropzone";var Yr={disabled:!1,getFilesFromEvent:ya,maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!1};jn.defaultProps=Yr;jn.propTypes={children:m.func,accept:m.oneOfType([m.string,m.arrayOf(m.string)]),multiple:m.bool,preventDropOnDocument:m.bool,noClick:m.bool,noKeyboard:m.bool,noDrag:m.bool,noDragEventsBubbling:m.bool,minSize:m.number,maxSize:m.number,maxFiles:m.number,disabled:m.bool,getFilesFromEvent:m.func,onFileDialogCancel:m.func,onFileDialogOpen:m.func,useFsAccessApi:m.bool,onDragEnter:m.func,onDragLeave:m.func,onDragOver:m.func,onDrop:m.func,onDropAccepted:m.func,onDropRejected:m.func,validator:m.func};var Gt={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,draggedFiles:[],acceptedFiles:[],fileRejections:[]};function Vt(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=K(K({},Yr),t),r=n.accept,i=n.disabled,o=n.getFilesFromEvent,l=n.maxSize,a=n.minSize,s=n.multiple,d=n.maxFiles,p=n.onDragEnter,c=n.onDragLeave,u=n.onDragOver,f=n.onDrop,w=n.onDropAccepted,b=n.onDropRejected,R=n.onFileDialogCancel,y=n.onFileDialogOpen,D=n.useFsAccessApi,k=n.preventDropOnDocument,P=n.noClick,g=n.noKeyboard,C=n.noDrag,x=n.noDragEventsBubbling,j=n.validator,v=h.useMemo(function(){return typeof y=="function"?y:ur},[y]),S=h.useMemo(function(){return typeof R=="function"?R:ur},[R]),E=h.useRef(null),$=h.useRef(null),U=h.useReducer(ts,Gt),A=Nt(U,2),O=A[0],L=A[1],V=O.isFocused,ve=O.isFileDialogActive,he=O.draggedFiles,W=function(){ve&&setTimeout(function(){if($.current){var F=$.current.files;F.length||(L({type:"closeDialog"}),S())}},300)};h.useEffect(function(){return D&&cr()?function(){}:(window.addEventListener("focus",W,!1),function(){window.removeEventListener("focus",W,!1)})},[$,ve,S,D]);var B=h.useRef([]),N=function(F){E.current&&E.current.contains(F.target)||(F.preventDefault(),B.current=[])};h.useEffect(function(){return k&&(document.addEventListener("dragover",lr,!1),document.addEventListener("drop",N,!1)),function(){k&&(document.removeEventListener("dragover",lr),document.removeEventListener("drop",N))}},[E,k]);var Y=h.useCallback(function(_){_.preventDefault(),_.persist(),Xe(_),B.current=[].concat(Ga(B.current),[_.target]),et(_)&&Promise.resolve(o(_)).then(function(F){pt(_)&&!x||(L({draggedFiles:F,isDragActive:!0,type:"setDraggedFiles"}),p&&p(_))})},[o,p,x]),De=h.useCallback(function(_){_.preventDefault(),_.persist(),Xe(_);var F=et(_);if(F&&_.dataTransfer)try{_.dataTransfer.dropEffect="copy"}catch{}return F&&u&&u(_),!1},[u,x]),Rn=h.useCallback(function(_){_.preventDefault(),_.persist(),Xe(_);var F=B.current.filter(function(ie){return E.current&&E.current.contains(ie)}),te=F.indexOf(_.target);te!==-1&&F.splice(te,1),B.current=F,!(F.length>0)&&(L({isDragActive:!1,type:"setDraggedFiles",draggedFiles:[]}),et(_)&&c&&c(_))},[E,c,x]),Ge=h.useCallback(function(_,F){var te=[],ie=[];_.forEach(function(ce){var Ae=Kr(ce,r),Re=Nt(Ae,2),Pt=Re[0],kt=Re[1],Rt=Gr(ce,a,l),Qe=Nt(Rt,2),_t=Qe[0],Et=Qe[1],Tt=j?j(ce):null;if(Pt&&_t&&!Tt)te.push(ce);else{var It=[kt,Et];Tt&&(It=It.concat(Tt)),ie.push({file:ce,errors:It.filter(function(ai){return ai})})}}),(!s&&te.length>1||s&&d>=1&&te.length>d)&&(te.forEach(function(ce){ie.push({file:ce,errors:[Na]})}),te.splice(0)),L({acceptedFiles:te,fileRejections:ie,type:"setFiles"}),f&&f(te,ie,F),ie.length>0&&b&&b(ie,F),te.length>0&&w&&w(te,F)},[L,s,r,a,l,d,f,w,b,j]),Ve=h.useCallback(function(_){_.preventDefault(),_.persist(),Xe(_),B.current=[],et(_)&&Promise.resolve(o(_)).then(function(F){pt(_)&&!x||Ge(F,_)}),L({type:"reset"})},[o,Ge,x]),Pe=h.useCallback(function(){if(D&&cr()){L({type:"openDialog"}),v();var _={multiple:s,types:Ma(r)};window.showOpenFilePicker(_).then(function(F){return o(F)}).then(function(F){return Ge(F,null)}).catch(function(F){return S(F)}).finally(function(){return L({type:"closeDialog"})});return}$.current&&(L({type:"openDialog"}),v(),$.current.value=null,$.current.click())},[L,v,S,D,Ge,r,s]),_n=h.useCallback(function(_){!E.current||!E.current.isEqualNode(_.target)||(_.keyCode===32||_.keyCode===13)&&(_.preventDefault(),Pe())},[E,$,Pe]),En=h.useCallback(function(){L({type:"focus"})},[]),Tn=h.useCallback(function(){L({type:"blur"})},[]),In=h.useCallback(function(){P||(Ba()?setTimeout(Pe,0):Pe())},[$,P,Pe]),ke=function(F){return i?null:F},Dt=function(F){return g?null:ke(F)},Ye=function(F){return C?null:ke(F)},Xe=function(F){x&&F.stopPropagation()},ni=h.useMemo(function(){return function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},F=_.refKey,te=F===void 0?"ref":F,ie=_.role,ce=_.onKeyDown,Ae=_.onFocus,Re=_.onBlur,Pt=_.onClick,kt=_.onDragEnter,Rt=_.onDragOver,Qe=_.onDragLeave,_t=_.onDrop,Et=gt(_,Ha);return K(K(Kt({onKeyDown:Dt(me(ce,_n)),onFocus:Dt(me(Ae,En)),onBlur:Dt(me(Re,Tn)),onClick:ke(me(Pt,In)),onDragEnter:Ye(me(kt,Y)),onDragOver:Ye(me(Rt,De)),onDragLeave:Ye(me(Qe,Rn)),onDrop:Ye(me(_t,Ve)),role:typeof ie=="string"&&ie!==""?ie:"button"},te,E),!i&&!g?{tabIndex:0}:{}),Et)}},[E,_n,En,Tn,In,Y,De,Rn,Ve,g,C,i]),ri=h.useCallback(function(_){_.stopPropagation()},[]),ii=h.useMemo(function(){return function(){var _=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},F=_.refKey,te=F===void 0?"ref":F,ie=_.onChange,ce=_.onClick,Ae=gt(_,Ka),Re=Kt({accept:r,multiple:s,type:"file",style:{display:"none"},onChange:ke(me(ie,Ve)),onClick:ke(me(ce,ri)),autoComplete:"off",tabIndex:-1},te,$);return K(K({},Re),Ae)}},[$,r,s,Ve,i]),An=he.length,Ln=An>0&&$a({files:he,accept:r,minSize:a,maxSize:l,multiple:s,maxFiles:d}),oi=An>0&&!Ln;return K(K({},O),{},{isDragAccept:Ln,isDragReject:oi,isFocused:V&&!i,getRootProps:ni,getInputProps:ii,rootRef:E,inputRef:$,open:ke(Pe)})}function ts(t,n){switch(n.type){case"focus":return K(K({},t),{},{isFocused:!0});case"blur":return K(K({},t),{},{isFocused:!1});case"openDialog":return K(K({},Gt),{},{isFileDialogActive:!0});case"closeDialog":return K(K({},t),{},{isFileDialogActive:!1});case"setDraggedFiles":var r=n.isDragActive,i=n.draggedFiles;return K(K({},t),{},{draggedFiles:i,isDragActive:r});case"setFiles":return K(K({},t),{},{acceptedFiles:n.acceptedFiles,fileRejections:n.fileRejections});case"reset":return K({},Gt);default:return t}}function ur(){}const mr=50*1024,fr=t=>new Promise((n,r)=>{const i=new FileReader;i.readAsText(t),i.onload=()=>{n(i.result)},i.onerror=o=>r(o)});function pr({certificate:t={},onRefresh:n,mode:r,...i}){const{t:o}=z(),{api:l}=Z(),[a,s]=h.useState(!1),[d,p]=h.useState(),[c,u]=h.useState(),[f,w]=h.useState(!1),[b,R]=h.useState(""),[y,D]=h.useState("upload"),{handleSubmit:k,formState:P,control:g}=Jt({defaultValues:{name:t.name||t.domain}}),C=Gn({control:g,name:"name"}),x=Gn({control:g,name:"domain"}),j=()=>a?!0:y==="upload"&&r==="update"?!C:y==="upload"&&r==="add"?!C||!d||!c:y==="lets_encrypt"&&!x,v=()=>{s(!1),w(!1)},S=async N=>{if(r==="add"){const Y=(await fr(c)).replace(/\r\n/g,`
|
|
249
|
-
`),De=(await fr(d)).replace(/\r\n/g,`
|
|
250
|
-
`);await l.addCertificate({input:{name:N.name.trim(),certificate:Y.split(`
|
|
251
|
-
`).join("|"),privateKey:De.split(`
|
|
252
|
-
`).join("|")}})}else await l.updateCertificate({input:{id:t.id,name:N.name.trim()}})},E=N=>l.issueLetsEncryptCert({input:{domain:N.domain}}),$={upload:{name:o("router.cert.nginx.sourceTypes.upload"),value:"upload",onSubmit:S},lets_encrypt:{name:o("router.cert.nginx.sourceTypes.lets_encrypt"),value:"lets_encrypt",onSubmit:E}},U=async N=>{s(!0);try{const Y=$[y];if(!Y)throw new Error("Invaid certificate source");await Y.onSubmit(N),n(),w(!1)}catch(Y){R(ye(Y)||"unknown error, may be you can check file permission")}finally{s(!1)}},A=()=>{p(null),u(null),w(!0),R("")},O=N=>{D(N.target.value)},L=N=>{N.length>0&&R(ne(N[0],"errors[0].message",o("router.cert.add.invalidFile")))},{getRootProps:V,getInputProps:ve}=Vt({accept:[".pem",".crt"],multiple:!1,maxSize:mr,onDropRejected:L,onDrop:N=>{u(N[0])}}),{getRootProps:he,getInputProps:W}=Vt({accept:[".pem",".key"],multiple:!1,maxSize:mr,onDropRejected:L,onDrop:N=>{p(N[0])}}),{errors:B}=P;return e.jsxs(e.Fragment,{children:[e.jsxs(X,{edge:"end",onClick:A,className:"rule-action",color:"primary","data-cy":"add-cert",...i,children:[a?e.jsx(G,{size:16}):e.jsx(Ue,{style:{fontSize:16}}),o(r==="add"?"common.add":"common.update")]}),f&&e.jsx(Dr,{title:o(r==="add"?"router.cert.nginx.titleAdd":"router.cert.nginx.title"),open:!0,onClose:v,actions:e.jsxs(e.Fragment,{children:[e.jsx(X,{onClick:v,color:"inherit","data-cy":"cert-cancel",children:o("router.cert.nginx.cancel")}),e.jsxs(X,{onClick:k(U),color:"secondary",disabled:j(),variant:"contained",autoFocus:!0,"data-cy":"save-cert",children:[o("router.cert.nginx.confirm"),a&&e.jsx(G,{size:16})]})]}),children:e.jsx("form",{className:"form","data-cy":"cert-form",noValidate:!0,autoComplete:"off",onSubmit:k(U),children:e.jsxs(q,{minWidth:{sm:480},children:[e.jsxs(Mt,{component:"div",children:[r==="add"&&e.jsxs("section",{className:"form-item",children:[e.jsx("div",{className:"form-item-label",children:o("router.cert.source")}),e.jsx(_r,{"aria-label":"cert-source",name:"certSource",value:y,onChange:O,children:Object.values($).map(N=>e.jsx(at,{value:N.value,control:e.jsx(Wt,{}),label:N.name},N.value))})]}),y==="upload"&&e.jsxs(e.Fragment,{children:[e.jsxs("section",{className:"form-item",children:[e.jsx("div",{className:"form-item-label",children:o("router.cert.name")}),e.jsx(M,{name:"name",control:g,rules:{validate:N=>!!N.trim()||o("common.requiredErrorText",{name:o("router.cert.name")})},render:({field:{value:N,onChange:Y}})=>e.jsx(H,{fullWidth:!0,autoFocus:!0,defaultValue:N,onChange:Y,error:!!B.name,autoComplete:"off",variant:"outlined",name:"name",className:"form-item-value","data-cy":"certificate-name-textfield",helperText:B.name&&B.name.message})})]}),r==="add"&&e.jsxs(e.Fragment,{children:[e.jsxs("section",{className:"form-item",children:[e.jsx("div",{className:"form-item-label",children:o("router.cert.nginx.pem")}),e.jsx("div",{className:"form-item-value",children:e.jsxs("div",{...V({className:"dropzone"}),children:[e.jsx("input",{...ve(),"data-cy":"pem-input"}),c&&e.jsx(I,{color:"secondary",children:c.name}),!c&&e.jsx(I,{color:"secondary",children:o("router.cert.nginx.empty")}),e.jsx(I,{component:"small",variant:"body2",color:"textSecondary",children:o("router.cert.nginx.pemTip")})]})})]}),e.jsxs("section",{className:"form-item",children:[e.jsx("div",{className:"form-item-label",children:o("router.cert.nginx.key")}),e.jsx("div",{className:"form-item-value",children:e.jsxs("div",{...he({className:"dropzone"}),children:[e.jsx("input",{...W(),"data-cy":"key-input"}),d&&e.jsx(I,{color:"secondary",children:d.name}),!d&&e.jsx(I,{color:"secondary",children:o("router.cert.nginx.empty")}),e.jsx(I,{component:"small",variant:"body2",color:"textSecondary",children:o("router.cert.nginx.keyTip")})]})})]})]})]}),y==="lets_encrypt"&&e.jsxs(e.Fragment,{children:[e.jsx("section",{className:"form-item",children:e.jsx(je,{severity:"success",children:o("router.cert.genLetsEncryptCert.dnsTip")})}),e.jsxs("section",{className:"form-item",children:[e.jsx("div",{className:"form-item-label",children:o("common.domain")}),e.jsx(M,{name:"domain",control:g,rules:{validate:N=>!!N.trim()||o("common.requiredErrorText",{name:o("common.domain")})},render:({field:{value:N,onChange:Y}})=>e.jsx(H,{fullWidth:!0,autoFocus:!0,defaultValue:N,error:!!B.domain,autoComplete:"off",variant:"outlined",className:"form-item-value",helperText:B.domain&&B.domain.message,onChange:Y})})]})]})]}),!!b&&e.jsx(je,{severity:"error",style:{marginTop:8},children:b})]})})})]})}function ns(t){const n=$i(),{t:r}=z(),{api:i}=Z(),[o,l]=h.useState(!1),[a,s]=h.useState(null),{id:d,domain:p,onDelete:c=()=>{},...u}=t,{refresh:f}=ue(),w=()=>{l(!1),s(null)},b=async()=>{l(!0);try{await i.deleteCertificate({input:{id:d}}),f(),c()}catch(y){console.error(y)}finally{l(!1),s(null)}},R={title:r("router.cert.delete.title"),description:r("router.cert.delete.description",{domain:p}),confirm:r("common.delConfirm"),cancel:r("common.cancel"),onConfirm:b,onCancel:w};return e.jsxs(e.Fragment,{children:[e.jsxs(X,{edge:"end",onClick:()=>s(R),size:"small",className:"rule-action",variant:"text","data-cy":"action-delete-cert",style:{color:n.palette.error.main},...u,children:[o?e.jsx(G,{size:16}):e.jsx(we,{style:{fontSize:16}}),r("common.delete")]}),a&&e.jsx(le,{title:a.title,description:a.description,confirm:a.confirm,cancel:a.cancel,params:a.params,onConfirm:a.onConfirm,onCancel:a.onCancel})]})}var wn={},rs=Se;Object.defineProperty(wn,"__esModule",{value:!0});var Xr=wn.default=void 0,is=rs(Ce()),os=e;Xr=wn.default=(0,is.default)((0,os.jsx)("path",{d:"M12 3 2 21h20zm1 5.92L18.6 19H13zm-2 0V19H5.4z"}),"Details");function Qr(t){const{certificate:n={},...r}=t,{t:i,locale:o}=z(),[l,a]=h.useState(!1),s=Ui(),d=()=>{a(!1)},p=[{id:"matchedSites",name:i("router.cert.matchedSites"),value:(n.matchedSites||[]).map(u=>e.jsx(I,{component:"div",style:{fontWeight:"inherit",fontSize:"1.1rem"},children:u.domain},u.id))},{id:"updatedAt",name:i("common.updatedAt"),value:Mn(n.updatedAt,o)},{id:"createdAt",name:i("common.createdAt"),value:Mn(n.createdAt,o)}],c=[{id:"boundDomains",name:i("router.cert.boundDomains"),value:e.jsx(I,{component:"span",style:{fontSize:"1.1rem"},children:(ne(n,"sans")||[]).join(", ")})},{id:"issuer",name:i("common.issuer"),value:ne(n,"meta.issuer.commonName","")},{id:"fingerprint",name:i("common.fingerprint"),value:ne(n,"meta.fingerprint")},{id:"fingerprintAlg",name:i("router.cert.fingerprintAlg"),value:ne(n,"meta.fingerprintAlg")},{id:"validityPeriod",name:i("router.cert.validityPeriod"),value:zi.duration(ne(n,"meta.validityPeriod"),"ms").humanize()},{id:"issuedOn",name:i("router.cert.issuedOn"),value:st(ne(n,"meta.validFrom"),o)},{id:"expiryOn",name:i("router.cert.expiryOn"),value:st(ne(n,"meta.validTo"),o)}];return e.jsxs(e.Fragment,{children:[e.jsxs(X,{edge:"end",onClick:()=>a(!0),size:"small",className:"rule-action",variant:"text",color:"secondary","data-cy":"action-view-cert",...r,children:[e.jsx(Xr,{style:{fontSize:16}}),i("common.detail")]}),e.jsxs(Dr,{title:i("router.cert.detail.title"),"aria-labelledby":"certificate details",fullWidth:!0,open:l,showCloseButton:!1,actions:e.jsx(X,{autoFocus:!0,variant:"contained",onClick:d,color:"secondary",children:i("common.close")}),children:[e.jsx(Mt,{component:"div",style:{margin:s.spacing(2)},children:p.map(u=>e.jsx(lt,{nameWidth:200,valueComponent:"div",name:u.name,children:u.value},u.id))},"cert-basic"),e.jsx(Wn,{}),e.jsx(Mt,{component:"div",style:{margin:s.spacing(2)},children:c.map(u=>e.jsx(lt,{nameWidth:200,valueComponent:"div",name:u.name,children:u.value},u.id))},"cer-info"),e.jsx(Wn,{})]})]})}Qr.propTypes={certificate:m.object.isRequired};function Cn(t){const{certificate:n,style:r,...i}=t,{t:o}=z(),[l,a]=h.useState(!1),s=n.matchedSites||[];return e.jsxs(I,{component:"ul",...i,style:{...r,listStyle:"none"},children:[(l?s:s.slice(0,4)).map(d=>e.jsx(I,{component:"li",style:{fontSize:"1.1rem",margin:"4px 0"},children:d.domain},d.id)),s.length>4&&e.jsx(X,{style:{border:"none",padding:"5px 0"},variant:"outlined",color:"primary",className:"button",onClick:()=>{a(!l)},children:o(l?"common.collapseAll":"common.expandAll")})]})}Cn.propTypes={certificate:m.object.isRequired,style:m.object};Cn.defaultProps={style:{}};const as=t=>{if(!t)return!1;const n=+new Date;return t-n<=0},gr="ssl-certificates-table";m.number;function $t({name:t,value:n,style:r={},icon:i,...o}){return e.jsxs(ss,{style:{display:"flex",alignItems:"center",...r},...o,children:[e.jsxs("span",{children:[t,":"]}),e.jsx("span",{children:n}),i&&i]})}const ss=ee.div`
|
|
253
|
-
& > span {
|
|
254
|
-
margin: 5px;
|
|
255
|
-
}
|
|
256
|
-
`;function Sn({status:t,source:n,expiresTime:r}){const{t:i}=z();return as(r)?e.jsx(Je,{type:"error",children:i("router.cert.expired")}):n==="upload"?e.jsx(Je,{type:"success",children:i("common.normal")}):t==="error"?e.jsx(Je,{type:"error",children:i("common.error")}):t==="generated"?e.jsx(Je,{type:"success",children:i("common.normal")}):""}Sn.propTypes={status:m.string,source:m.string,expiresTime:m.number.isRequired};Sn.defaultProps={status:"",source:""};const ls=(t,n)=>{if(!n)return t;const r=(n.site.domainAliases||[]).map(i=>i.value);return t.filter(i=>Mi(r,i.matchedSites))};function cs(){var c;const{t,locale:n}=h.useContext(Yt),{api:r}=Z(),o=Bi().get("did"),l=Me(async()=>{const{certificates:u}=await r.getCertificates();let f=null;if(o){const{blocklet:b}=await r.getBlocklet({input:{did:o,attachRuntimeInfo:!0}});f=b}return{certificates:ls(u,f)}}),a=()=>{l.retry()},s=(c=l.value)==null?void 0:c.certificates,d=[{label:t("common.certificate"),name:"",verticalKeyAlign:"center",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsxs(e.Fragment,{children:[f.name&&e.jsx($t,{nowrap:!0,style:{fontSize:"16px",whiteSpace:"nowrap"},name:t("common.name"),value:f.name}),e.jsx($t,{style:{fontSize:"16px",whiteSpace:"nowrap"},name:t("common.issuer"),value:ne(f,"meta.issuer.commonName","")}),e.jsx($t,{style:{fontSize:"16px",whiteSpace:"nowrap"},icon:e.jsx(pe,{title:f.isProtected?t("router.cert.protectedCertHelperText"):t("router.cert.unprotectedCertHelperText"),children:e.jsx(Oe,{style:{fontSize:"18px"},color:"secondary"})}),name:t("common.protected"),value:f.isProtected?t("common.yes"):t("common.no")})]})}}},{label:t("router.cert.boundDomains"),name:"",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsx(I,{noWrap:!0,component:"ul",style:{listStyle:"none"},children:[...new Set([...ne(f,"meta.sans")||[],f.domain])].map(w=>e.jsx(I,{component:"li",title:w,style:{fontSize:"1.1rem",minWidth:200,whiteSpace:"initial",wordBreak:"break-all"},children:w},w))})}}},{label:t("router.cert.source"),name:"",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return t(`router.cert.sourceTypes.${f.source}`)}}},{label:t("common.status"),name:"",width:100,options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsx(Sn,{status:f.status,source:f.source,expiresTime:ne(f,"meta.validTo")})}}},{label:t("common.expires"),name:"",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsx(vr,{value:ne(f,"meta.validTo"),locale:n})}}},{label:t("router.cert.matchedSites"),name:"",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsx(Cn,{id:f.id,certificate:f,style:{minWidth:200,whiteSpace:"initial",wordBreak:"break-all"}})}}},{label:t("router.cert.action"),name:"",align:"center",options:{sort:!1,filter:!1,customBodyRenderLite:u=>{const f=s[u];return e.jsx(re,{permission:"mutate_router",children:e.jsxs(e.Fragment,{children:[!f.isProtected&&e.jsxs(e.Fragment,{children:[f.source==="upload"&&e.jsx("div",{children:e.jsx(pr,{mode:"update",certificate:f,onRefresh:a})}),e.jsx("div",{children:e.jsx(ns,{id:f.id,domain:f.domain,onDelete:a})})]}),e.jsx("div",{children:e.jsx(Qr,{id:f.id,certificate:f})})]})})}}}];if(l.error)return e.jsx(je,{severity:"error",children:ye(l.error)});if(l.loading)return e.jsx(G,{});const p=Gi(gr);return e.jsx(ds,{children:e.jsx(kr,{title:e.jsx(re,{permission:"mutate_router",children:e.jsx(pr,{mode:"add",onRefresh:a,variant:"contained"})}),locale:n,data:l.value.certificates,columns:d,verticalKeyWidth:100,durable:gr,options:{search:!1,download:!1,filter:!1,print:!1,...p}})})}const ds=ee.div`
|
|
257
|
-
.header {
|
|
258
|
-
display: flex;
|
|
259
|
-
justify-content: flex-end;
|
|
260
|
-
align-items: center;
|
|
261
|
-
margin-top: 20px;
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
margin-bottom: 24px;
|
|
265
|
-
.table-cell {
|
|
266
|
-
span {
|
|
267
|
-
font-size: 18px;
|
|
268
|
-
}
|
|
269
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
270
|
-
span {
|
|
271
|
-
font-size: 15px;
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
.match-sites-cell,
|
|
276
|
-
.expires-cell {
|
|
277
|
-
min-width: 100px;
|
|
278
|
-
}
|
|
279
|
-
.actions {
|
|
280
|
-
text-align: center;
|
|
281
|
-
@media (max-width: ${t=>t.theme.breakpoints.values.sm}px) {
|
|
282
|
-
.MuiButton-root {
|
|
283
|
-
padding: 6px;
|
|
284
|
-
}
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
`,hr="[a-fA-F\\d:]",xe=t=>t&&t.includeBoundaries?`(?:(?<=\\s|^)(?=${hr})|(?<=${hr})(?=\\s|$))`:"",de="(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}",Q="[a-fA-F\\d]{1,4}",bt=`
|
|
288
|
-
(?:
|
|
289
|
-
(?:${Q}:){7}(?:${Q}|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8
|
|
290
|
-
(?:${Q}:){6}(?:${de}|:${Q}|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4
|
|
291
|
-
(?:${Q}:){5}(?::${de}|(?::${Q}){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4
|
|
292
|
-
(?:${Q}:){4}(?:(?::${Q}){0,1}:${de}|(?::${Q}){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4
|
|
293
|
-
(?:${Q}:){3}(?:(?::${Q}){0,2}:${de}|(?::${Q}){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4
|
|
294
|
-
(?:${Q}:){2}(?:(?::${Q}){0,3}:${de}|(?::${Q}){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4
|
|
295
|
-
(?:${Q}:){1}(?:(?::${Q}){0,4}:${de}|(?::${Q}){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4
|
|
296
|
-
(?::(?:(?::${Q}){0,5}:${de}|(?::${Q}){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4
|
|
297
|
-
)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1
|
|
298
|
-
`.replace(/\s*\/\/.*$/gm,"").replace(/\n/g,"").trim(),us=new RegExp(`(?:^${de}$)|(?:^${bt}$)`),ms=new RegExp(`^${de}$`),fs=new RegExp(`^${bt}$`),Dn=t=>t&&t.exact?us:new RegExp(`(?:${xe(t)}${de}${xe(t)})|(?:${xe(t)}${bt}${xe(t)})`,"g");Dn.v4=t=>t&&t.exact?ms:new RegExp(`${xe(t)}${de}${xe(t)}`,"g");Dn.v6=t=>t&&t.exact?fs:new RegExp(`${xe(t)}${bt}${xe(t)}`,"g");var Zr=Dn;const Pn=Zr,Ee=t=>Pn({exact:!0}).test(t);Ee.v4=t=>Pn.v4({exact:!0}).test(t);Ee.v6=t=>Pn.v6({exact:!0}).test(t);Ee.version=t=>Ee(t)?Ee.v4(t)?4:6:void 0;var ps=Ee;const tt=Pr(ps);var jt={exports:{}},wt={exports:{}};const Jr=Zr,kn={exact:!1},Ct=`${Jr.v4().source}\\/(3[0-2]|[12]?[0-9])`,St=`${Jr.v6().source}\\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])`,gs=new RegExp(`^${Ct}$`),hs=new RegExp(`^${St}$`),xs=new RegExp(`(?:^${Ct}$)|(?:^${St}$)`);wt.exports=({exact:t}=kn)=>t?xs:new RegExp(`(?:${Ct})|(?:${St})`,"g");wt.exports.v4=({exact:t}=kn)=>t?gs:new RegExp(Ct,"g");wt.exports.v6=({exact:t}=kn)=>t?hs:new RegExp(St,"g");var ys=wt.exports;const{v4:vs,v6:bs}=ys,ei=vs({exact:!0}),ti=bs({exact:!0});jt.exports=t=>ei.test(t)?4:ti.test(t)?6:0;jt.exports.v4=t=>ei.test(t);jt.exports.v6=t=>ti.test(t);var js=jt.exports;const nt=Pr(js),rt=ao(t=>({root:{color:t.palette.primary.main,height:8,marginLeft:8},thumb:{height:24,width:24,backgroundColor:"#fff",border:"2px solid currentColor","&:focus, &:hover, &$active":{boxShadow:"inherit"}},valueLabel:{left:"calc(-50% + 4px)"},track:{height:8,borderRadius:4},rail:{height:8,borderRadius:4}}))(so);function ws(){const{info:{routing:t},api:n}=Z(),{t:r,locale:i}=z(),[o,l]=h.useState(!1),a=t.requestLimit||{};typeof a.enabled!="boolean"&&(a.enabled=!1),typeof a.rate!="number"&&(a.rate=T.GATEWAY_REQ_LIMIT.min),a.ipHeader||(a.ipHeader="");const s=t.blockPolicy||{};typeof s.enabled!="boolean"&&(s.enabled=!1),s.blacklist||(s.blacklist=[]),s.autoBlocking?Array.isArray(s.autoBlocking.statusCodes)||(s.autoBlocking.statusCodes=s.autoBlocking.statusCodes?[s.autoBlocking.statusCodes]:[403]):s.autoBlocking={enabled:!1,windowSize:1,windowQuota:5,statusCodes:[403],blockDuration:3600};const d=t.proxyPolicy||{};typeof d.enabled!="boolean"&&(d.enabled=!1),typeof d.trustRecursive!="boolean"&&(d.trustRecursive=!1),d.trustedProxies||(d.trustedProxies=["0.0.0.0/0"]),d.realIpHeader||(d.realIpHeader="X-Forwarded-For");const p=t.wafPolicy||{};typeof p.enabled!="boolean"&&(p.enabled=!1),p.mode||(p.mode="DetectionOnly"),p.inboundAnomalyScoreThreshold||(p.inboundAnomalyScoreThreshold=20),p.outboundAnomalyScoreThreshold||(p.outboundAnomalyScoreThreshold=10),p.logLevel||(p.logLevel=0);const{handleSubmit:c,control:u,watch:f}=Jt({defaultValues:{requestLimit:a,blockPolicy:s,proxyPolicy:d,cacheEnabled:typeof t.cacheEnabled=="boolean"?t.cacheEnabled:!0,wafPolicy:p}}),w=f("requestLimit.enabled"),b=f("requestLimit.rate"),R=f("blockPolicy.enabled"),y=f("blockPolicy.autoBlocking.enabled"),D=f("proxyPolicy.enabled"),k=f("proxyPolicy.trustRecursive"),P=f("wafPolicy.enabled"),g=async C=>{try{l(!0);const{blacklist:x}=C.blockPolicy;x.forEach(v=>{if(!tt.v4(v)&&!nt.v4(v)&&!Sr(v)&&!tt.v6(v)&&!nt.v6(v))throw new Error(r("router.gateway.blockPolicy.invalidItem"))});const{trustedProxies:j}=C.proxyPolicy;j.forEach(v=>{if(!tt.v4(v)&&!nt.v4(v)&&!tt.v6(v)&&!nt.v6(v))throw new Error(r("router.gateway.proxyPolicy.invalidItem"))}),await n.updateGateway({input:C}),await yr(1e3),ae.success(r("common.saveSuccess"))}catch(x){ae.error(ye(x))}finally{l(!1)}};return e.jsx(Cs,{children:e.jsx(re,{permission:"mutate_node",children:C=>e.jsxs(rn,{className:"form",noValidate:!0,autoComplete:"off",onSubmit:c(g),children:[e.jsxs(fe,{className:"gateway-section",direction:{sm:"column",md:"row"},spacing:2,children:[e.jsx(I,{className:"gateway-section-title",children:r("router.gateway.cacheEnabled.title")}),e.jsx(M,{name:"cacheEnabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.cacheEnabled.switchLabel")}),labelPlacement:"end"}})})]}),e.jsxs(fe,{className:"gateway-section",direction:{sm:"column",md:"row"},spacing:2,children:[e.jsx(I,{className:"gateway-section-title",children:r("router.gateway.reqLimit.title")}),e.jsxs(fe,{className:"gateway-section-content",direction:"column",spacing:2,sx:{width:"100%"},children:[e.jsx(M,{name:"requestLimit.enabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.reqLimit.switchLabel")}),labelPlacement:"end"}})}),w&&e.jsxs(q,{className:"form-item",sx:{width:"100%"},children:[e.jsx(I,{id:"request-limit-rate-label",gutterBottom:!0,children:r("router.gateway.reqLimit.rate",{rate:b})}),e.jsx(M,{name:"requestLimit.rate",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(rt,{disabled:!C,onChange:(v,S)=>j(S),defaultValue:x,valueLabelDisplay:"auto",step:1,min:T.GATEWAY_REQ_LIMIT.min,max:T.GATEWAY_REQ_LIMIT.max})})]})]})]}),e.jsxs(fe,{className:"gateway-section",direction:{sm:"column",md:"row"},spacing:2,children:[e.jsx(I,{className:"gateway-section-title",children:r("router.gateway.blockPolicy.title")}),e.jsxs(fe,{className:"gateway-section-content",direction:"column",spacing:2,sx:{width:"100%"},children:[e.jsx(M,{name:"blockPolicy.enabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.blockPolicy.switchLabel")}),labelPlacement:"end"}})}),R&&e.jsxs(e.Fragment,{children:[e.jsx(M,{name:"blockPolicy.blacklist",control:u,render:({field:{value:x,onChange:j}})=>{const v=()=>{j([...x||[],""])},S=$=>{const U=[...x];U.splice($,1),j(U)},E=($,U)=>{const A=[...x];A[$]=U,j(A)};return e.jsxs("div",{style:{width:"100%"},children:[e.jsx(se,{children:r("router.gateway.blockPolicy.blacklistDesc")}),(x||[]).map(($,U)=>e.jsx("div",{style:{display:"flex",gap:"8px",marginBottom:"8px"},children:e.jsx(H,{variant:"outlined",size:"small",disabled:o||!C,style:{flex:1},value:$,onChange:A=>E(U,A.target.value),placeholder:r("router.gateway.blockPolicy.inputPlaceholder"),InputProps:{endAdornment:e.jsx(zt,{disabled:o||!C,onClick:()=>S(U),size:"small",color:"error",children:e.jsx(we,{})})}})},`blacklist-item-${U}`)),e.jsx(X,{disabled:o||!C,onClick:v,color:"primary",size:"small",variant:"outlined",startIcon:e.jsx(Ue,{}),children:r("router.gateway.blockPolicy.addItem")})]})}}),e.jsx(M,{name:"blockPolicy.autoBlocking.enabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.blockPolicy.autoBlocking.switchLabel")}),labelPlacement:"end"}})}),y&&e.jsxs(e.Fragment,{children:[e.jsx(M,{name:"blockPolicy.autoBlocking.statusCodes",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsx(se,{id:"block-policy-auto-blocking-status-codes-desc",children:r("router.gateway.blockPolicy.autoBlocking.statusCodes")}),e.jsxs(qn,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,multiple:!0,value:x,onChange:j,children:[e.jsx(J,{value:400,children:"400 Bad Request"}),e.jsx(J,{value:401,children:"401 Unauthorized"}),e.jsx(J,{value:403,children:"403 Forbidden (WAF)"}),e.jsx(J,{value:404,children:"404 Not Found"}),e.jsx(J,{value:405,children:"405 Method Not Allowed"})]})]})}),e.jsx(M,{name:"blockPolicy.autoBlocking.windowSize",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsx(se,{id:"block-policy-auto-blocking-window-size-desc",children:r("router.gateway.blockPolicy.autoBlocking.windowSize")}),e.jsx(H,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,value:x,onChange:j,InputProps:{endAdornment:e.jsxs(I,{variant:"body2",children:[Hn(Number(x*1e3),{locale:Kn(i),long:!0})," "]})}})]})}),e.jsx(M,{name:"blockPolicy.autoBlocking.windowQuota",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsx(se,{id:"block-policy-auto-blocking-window-quota-desc",children:r("router.gateway.blockPolicy.autoBlocking.windowQuota")}),e.jsx(H,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,value:x,onChange:j})]})}),e.jsx(M,{name:"blockPolicy.autoBlocking.blockDuration",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsx(se,{id:"block-policy-auto-blocking-block-duration-desc",children:r("router.gateway.blockPolicy.autoBlocking.blockDuration")}),e.jsx(H,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,value:x,onChange:j,InputProps:{endAdornment:e.jsx(I,{variant:"body2",children:Hn(Number(x*1e3),{locale:Kn(i),long:!0})})}})]})})]})]})]})]}),e.jsxs(fe,{className:"gateway-section",direction:{sm:"column",md:"row"},spacing:2,children:[e.jsx(I,{className:"gateway-section-title",children:r("router.gateway.proxyPolicy.title")}),e.jsxs(fe,{className:"gateway-section-content",direction:"column",spacing:2,sx:{width:"100%"},children:[e.jsx(M,{name:"proxyPolicy.enabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.proxyPolicy.switchLabel")}),labelPlacement:"end"}})}),D&&e.jsxs(e.Fragment,{children:[e.jsx(M,{name:"proxyPolicy.realIpHeader",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsx(se,{id:"proxy-policy-real-ip-header-desc",children:r("router.gateway.proxyPolicy.realIpHeaderDesc")}),e.jsx(H,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,value:x,onChange:j})]})}),e.jsx(M,{name:"proxyPolicy.trustRecursive",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{sx:{mt:2},children:[e.jsx(se,{id:"proxy-policy-real-ip-header-desc",children:r("router.gateway.proxyPolicy.trustRecursiveDesc")}),e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.proxyPolicy.trustRecursive")}),labelPlacement:"end"}})]})}),k&&e.jsx(M,{name:"proxyPolicy.trustedProxies",control:u,render:({field:{value:x,onChange:j}})=>{const v=()=>{j([...x||[],""])},S=$=>{const U=[...x];U.splice($,1),j(U)},E=($,U)=>{const A=[...x];A[$]=U,j(A)};return e.jsxs(q,{sx:{width:"100%",mt:2},children:[e.jsx(se,{children:r("router.gateway.proxyPolicy.trustedProxiesDesc")}),(x||[]).map(($,U)=>e.jsx("div",{style:{display:"flex",gap:"8px",marginBottom:"8px"},children:e.jsx(H,{variant:"outlined",size:"small",disabled:o||!C,style:{flex:1},value:$,onChange:A=>E(U,A.target.value),placeholder:r("router.gateway.proxyPolicy.inputPlaceholder"),InputProps:{endAdornment:e.jsx(zt,{disabled:o||!C,onClick:()=>S(U),size:"small",color:"error",children:e.jsx(we,{})})}})},`trusted-proxy-item-${U}`)),e.jsx(X,{disabled:o||!C,onClick:v,color:"primary",size:"small",variant:"outlined",startIcon:e.jsx(Ue,{}),children:r("router.gateway.proxyPolicy.addItem")})]})}})]})]})]}),e.jsxs(fe,{className:"gateway-section",direction:{sm:"column",md:"row"},spacing:2,children:[e.jsx(I,{className:"gateway-section-title",children:r("router.gateway.wafPolicy.title")}),e.jsxs(fe,{className:"gateway-section-content",direction:"column",spacing:2,sx:{width:"100%"},children:[e.jsx(M,{name:"wafPolicy.enabled",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(oe,{checked:x,disabled:!C,onChange:v=>j(v.target.checked),labelProps:{label:e.jsx(I,{children:r("router.gateway.wafPolicy.switchLabel")}),labelPlacement:"end"}})}),P&&e.jsxs(e.Fragment,{children:[e.jsx(M,{name:"wafPolicy.mode",control:u,render:({field:{value:x,onChange:j}})=>e.jsxs(q,{children:[e.jsxs(se,{id:"waf-policy-mode-desc",children:[r("router.gateway.wafPolicy.modeDesc")," ",e.jsx(Zt,{href:`https://www.arcblock.io/docs/blocklet-developer/${i}/enable-web-application-firewall`,target:"_blank",children:r("router.gateway.wafPolicy.docDesc")})]}),e.jsxs(qn,{variant:"outlined",fullWidth:!0,size:"small",disabled:o||!C,value:x,onChange:j,children:[e.jsx(J,{value:"DetectionOnly",children:r("router.gateway.wafPolicy.mode.detectOnly")}),e.jsx(J,{value:"On",children:r("router.gateway.wafPolicy.mode.on")})]})]})}),e.jsxs(q,{children:[e.jsx(se,{id:"waf-policy-inbound-anomaly-score-threshold-desc",children:r("router.gateway.wafPolicy.inboundAnomalyScoreThresholdDesc")}),e.jsx(M,{name:"wafPolicy.inboundAnomalyScoreThreshold",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(rt,{disabled:!C,onChange:(v,S)=>j(S),defaultValue:x,valueLabelDisplay:"auto",step:1,min:1,max:100})})]}),e.jsxs(q,{children:[e.jsx(se,{id:"waf-policy-outbound-anomaly-score-threshold-desc",children:r("router.gateway.wafPolicy.outboundAnomalyScoreThresholdDesc")}),e.jsx(M,{name:"wafPolicy.outboundAnomalyScoreThreshold",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(rt,{disabled:!C,onChange:(v,S)=>j(S),defaultValue:x,valueLabelDisplay:"auto",step:1,min:1,max:100})})]}),e.jsxs(q,{children:[e.jsx(se,{id:"waf-policy-log-level-desc",children:r("router.gateway.wafPolicy.logLevelDesc")}),e.jsx(M,{name:"wafPolicy.logLevel",control:u,render:({field:{value:x,onChange:j}})=>e.jsx(rt,{disabled:!C,onChange:(v,S)=>j(S),defaultValue:x,valueLabelDisplay:"auto",step:1,min:0,max:9})})]})]})]})]}),e.jsx("div",{className:"form-actions",children:C&&e.jsxs(X,{disabled:o,onClick:c(g),color:"primary",variant:"contained","data-cy":"submit-btn",className:"form-submit",children:[r("common.save")," ",o&&e.jsx(G,{size:16})]})})]})})})}const Cs=ee.div`
|
|
299
|
-
display: flex;
|
|
300
|
-
align-items: flex-start;
|
|
301
|
-
width: 100%;
|
|
302
|
-
max-width: 960px;
|
|
303
|
-
|
|
304
|
-
.gateway-section {
|
|
305
|
-
border-top: 1px solid #e0e0e0;
|
|
306
|
-
padding: 24px 0;
|
|
307
|
-
.gateway-section-title {
|
|
308
|
-
width: 240px;
|
|
309
|
-
flex-shrink: 0;
|
|
310
|
-
flex-grow: 0;
|
|
311
|
-
font-weight: 500;
|
|
312
|
-
}
|
|
313
|
-
.gateway-section-content {
|
|
314
|
-
flex-grow: 1;
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
`;function dl(){const t=jr(),{node:n}=h.useContext(Wi),{t:r}=h.useContext(Yt),{tab:i="basic"}=qi(),o=d=>{t(`/settings/${d}`)},l=[{label:r("common.basic"),value:"basic"},{label:r("router.routerSetting"),value:"router"},{label:r("router.certSetting"),value:"cert"},{label:r("common.gateway"),value:"gateway"},{label:r("common.webhook"),value:"integration"},{label:r("common.about"),value:"about"}],a={basic:So,integration:_o,about:Go,router:e.jsx(Xn,{children:e.jsx(fa,{})}),gateway:ws,cert:e.jsx(Xn,{children:e.jsx(cs,{})})},s=a[i]||a.basic;return e.jsxs(Ss,{children:[e.jsx(I,{component:"h2",variant:"h4",className:"page-header",color:"textPrimary",children:r("common.setting")}),e.jsxs(e.Fragment,{children:[e.jsx(Hi,{tabs:l,current:i,onChange:o,scrollButtons:"auto"}),e.jsx("div",{className:"page-content",children:h.isValidElement(s)?s:e.jsx(s,{node:n})})]})]})}const Ss=ee.main`
|
|
318
|
-
.page-header {
|
|
319
|
-
display: flex;
|
|
320
|
-
justify-content: space-between;
|
|
321
|
-
align-items: center;
|
|
322
|
-
}
|
|
323
|
-
|
|
324
|
-
.page-content {
|
|
325
|
-
margin-top: 16px;
|
|
326
|
-
}
|
|
327
|
-
`;export{dl as default};
|