@abtnode/webapp 1.17.8-beta-20260106-113136-b3c09e14 → 1.17.8-beta-20260108-021819-e099f0ca
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-DWVMAxzn.js → AdapterDayjs-Chnfr9fe.js} +1 -1
- package/dist/assets/{Add-DSHUmuh2.js → Add-b-MNk7UB.js} +1 -1
- package/dist/assets/ArrowDropDown-lsZjWbH5.js +1 -0
- package/dist/assets/{Autocomplete-CafCM_25.js → Autocomplete-79tADtg2.js} +1 -1
- package/dist/assets/{Breadcrumbs-DwWBB4-B.js → Breadcrumbs-Cqjt-kp8.js} +1 -1
- package/dist/assets/{ButtonGroup-C1HewoiR.js → ButtonGroup-C_JbniJW.js} +1 -1
- package/dist/assets/{CSSTransition-1BwLUUYd.js → CSSTransition-DinXVMZy.js} +1 -1
- package/dist/assets/{CallMerge-BQb_v7zQ.js → CallMerge-CF5jo3Pw.js} +1 -1
- package/dist/assets/{CardContent-B53G0-HU.js → CardContent-CYNmFsYJ.js} +1 -1
- package/dist/assets/{ChevronLeft-CaPH--HT.js → ChevronLeft-Byy2_Dj8.js} +1 -1
- package/dist/assets/{ChevronRight-CtPp_MpO.js → ChevronRight-BKFXnJ7g.js} +1 -1
- package/dist/assets/{Clear-BBluvTPc.js → Clear-Chg9fOPG.js} +1 -1
- package/dist/assets/{Delete-9ESwe_tH.js → Delete-B306vkSB.js} +1 -1
- package/dist/assets/{DeleteOutline-CK2Vy8gP.js → DeleteOutline-BjSm7PCr.js} +1 -1
- package/dist/assets/{Done-Cc0u-Lkn.js → Done-Bh0vP7e6.js} +1 -1
- package/dist/assets/{Edit-D1Klg2r6.js → Edit-DFmlgA7E.js} +1 -1
- package/dist/assets/EditOutlined-Qskj3-tY.js +1 -0
- package/dist/assets/{ErrorOutline-BoB93pXx.js → ErrorOutline-CjKNiJFO.js} +1 -1
- package/dist/assets/{FilterList-DjsH6fTI.js → FilterList-Dphn1UXx.js} +1 -1
- package/dist/assets/{Google-wvuc_gx7.js → Google-C0G3l0jL.js} +1 -1
- package/dist/assets/{HelpOutline-CM_Ykzlc.js → HelpOutline--A0maMxb.js} +1 -1
- package/dist/assets/{KeyboardArrowDown-xhzKRGfY.js → KeyboardArrowDown-CD6n37Y9.js} +1 -1
- package/dist/assets/{Launch-DlhEZ9Bw.js → Launch-Cor8d4pT.js} +1 -1
- package/dist/assets/{Link-DfMegObq.js → Link-Mg5UlAaZ.js} +1 -1
- package/dist/assets/{ListItemButton-DmY4JAPa.js → ListItemButton-C8XIzvy_.js} +1 -1
- package/dist/assets/{ListSubheader-B41Y1ZMB.js → ListSubheader-CHT01bOG.js} +1 -1
- package/dist/assets/{LoadingButton-Cj4ijk42.js → LoadingButton-DtnAWL1w.js} +1 -1
- package/dist/assets/{MoreVert-BQdkfudm.js → MoreVert-KNjOpSoE.js} +1 -1
- package/dist/assets/{OpenInNew-GavEOug8.js → OpenInNew-DGDd5qxt.js} +1 -1
- package/dist/assets/{Refresh-C5IecY_i.js → Refresh-B0_3c6OW.js} +1 -1
- package/dist/assets/{Replay-BLAjtrmV.js → Replay-BzP784vV.js} +1 -1
- package/dist/assets/{Search-DsDROQ8Z.js → Search-CUoYhy1v.js} +1 -1
- package/dist/assets/{Stepper-DpZ7eOjv.js → Stepper-DfUO9buC.js} +1 -1
- package/dist/assets/{TableSearch-B9TJh3X_.js → TableSearch-DxZYknBa.js} +1 -1
- package/dist/assets/{ToggleButtonGroup-CJ8NJ0D1.js → ToggleButtonGroup-BwLu2zCu.js} +1 -1
- package/dist/assets/{UnfoldMore-wahbC_eH.js → UnfoldMore-DvSw9pGy.js} +1 -1
- package/dist/assets/{Verified-CR7dtVpN.js → Verified-CfonAx-G.js} +1 -1
- package/dist/assets/{VerifiedUser-CJqNBrd2.js → VerifiedUser-wCwGdsz1.js} +1 -1
- package/dist/assets/{ViewList-CmgkgU2_.js → ViewList-DhdvL6AT.js} +1 -1
- package/dist/assets/_createAggregator-BLxu5C4t.js +1 -0
- package/dist/assets/{actions-DFw06nT4.js → actions-D1YtdqKL.js} +1 -1
- package/dist/assets/{actions-BGmJ3r4b.js → actions-Wo9kGXdj.js} +1 -1
- package/dist/assets/{agreement-nsoxnYhM.js → agreement-07HiBYSX.js} +3 -3
- package/dist/assets/api-eF9wxSJp.js +1 -0
- package/dist/assets/{appearance-DPQCzdhZ.js → appearance-CKF7Bo6h.js} +1 -1
- package/dist/assets/{ar-BukCw0OI.js → ar-BHqjWgUQ.js} +2 -2
- package/dist/assets/{audit-logs-C1Fzb4ps.js → audit-logs-CLt2l7-q.js} +2 -2
- package/dist/assets/{base-chart-CEDitl1S.js → base-chart-_0APPWGp.js} +1 -1
- package/dist/assets/{blocklet-CQ-S_G-T.js → blocklet-ClPWX-SV.js} +1 -1
- package/dist/assets/{chain-T1WmG8fp.js → chain-Bg9mny_E.js} +1 -1
- package/dist/assets/{click-to-copy-BtM6Ocbq.js → click-to-copy-BbJJzGI1.js} +1 -1
- package/dist/assets/cloneDeep-DNOsGRuG.js +1 -0
- package/dist/assets/{config-navigation-nzNCj2pe.js → config-navigation-B-CtKO70.js} +3 -3
- package/dist/assets/connect-2JDWTFDP.js +5 -0
- package/dist/assets/{connect-to-YFMYu-C6.js → connect-to-CBEHT895.js} +1 -1
- package/dist/assets/{cssMode-CorZ9Trm.js → cssMode-U7KzpQEJ.js} +1 -1
- package/dist/assets/{de-Br0tDZam.js → de-QUGQFv2K.js} +1 -1
- package/dist/assets/{delete-confirm-DkYJPW8j.js → delete-confirm-Cx4JPY2I.js} +1 -1
- package/dist/assets/depsEqual-Cvglsxh5.js +1 -0
- package/dist/assets/{detail-B2tLxU0Q.js → detail-Cgws9Fjd.js} +3 -3
- package/dist/assets/{domains-D6W5MF-p.js → domains-BJzrDugH.js} +2 -2
- package/dist/assets/{download-CMbpTIK1.js → download-Df1TrhTI.js} +1 -1
- package/dist/assets/{edit.svg-DA3pWWpd.js → edit.svg-833vjqGH.js} +1 -1
- package/dist/assets/emotion-cache.browser.esm-Epiq9rij.js +1 -0
- package/dist/assets/engine-a9f8P0CB.js +1 -0
- package/dist/assets/{es-D_e0gGgp.js → es-C4w6cL07.js} +2 -2
- package/dist/assets/{fr-DXizOT4b.js → fr-Bq3UipEu.js} +2 -2
- package/dist/assets/{freemarker2-B35GIWEl.js → freemarker2-J5nZkQuM.js} +1 -1
- package/dist/assets/{get-safe-url-BtHUKeta.js → get-safe-url-QppwE77w.js} +1 -1
- package/dist/assets/getValidReactChildren-Cjo-LFyx.js +1 -0
- package/dist/assets/{graphqlMode-BhjTwCqd.js → graphqlMode-5yY_akok.js} +2 -2
- package/dist/assets/{handlebars-DGxR4b_w.js → handlebars-DfBT6Rl2.js} +1 -1
- package/dist/assets/{hi-D2FEb_Tx.js → hi-DGZy0DLh.js} +2 -2
- package/dist/assets/{html-Dl26d1wf.js → html-BBpT31Z8.js} +1 -1
- package/dist/assets/{html-title-DdUp_-5h.js → html-title-BpNgi7iw.js} +1 -1
- package/dist/assets/{htmlMode-zyg79iHD.js → htmlMode-CDF4YwlA.js} +1 -1
- package/dist/assets/{id-Dw9URVwP.js → id-DOzDilAf.js} +2 -2
- package/dist/assets/{iframe-naOtT0ea.js → iframe-CH8rbppJ.js} +1 -1
- package/dist/assets/{index-B5a5GywJ.js → index-0NOALS_P.js} +1 -1
- package/dist/assets/{index-9I_iGd-v.js → index-3MwDYHdN.js} +9 -9
- package/dist/assets/index-B31H3tAk.js +1 -0
- package/dist/assets/index-B3tcK3_z.js +179 -0
- package/dist/assets/{index-B5Gr8NCp.js → index-B4fcaU-r.js} +2 -2
- package/dist/assets/{index--8pMPQd4.js → index-B6x6Mq9n.js} +1 -1
- package/dist/assets/{index-MY2K6w0a.js → index-B8qqbKQt.js} +1 -1
- package/dist/assets/{index-B32KxiCS.js → index-BBe9oV9e.js} +1 -1
- package/dist/assets/{index-CH66h8Bz.js → index-BHQcEGDq.js} +1 -1
- package/dist/assets/{index-BjFIjVRr.js → index-BJVvRV0h.js} +1 -1
- package/dist/assets/{index-D_9cPML4.js → index-BRSm_uSW.js} +3 -3
- package/dist/assets/{index-CajyH0Pt.js → index-BSBkhGl0.js} +1 -1
- package/dist/assets/{index-BWhjxKXQ.js → index-BVJB29cJ.js} +1 -1
- package/dist/assets/{index-BRe92Q_R.js → index-BbND9whL.js} +1 -1
- package/dist/assets/{index-Brq4w3lW.js → index-BdVOugOI.js} +1 -1
- package/dist/assets/index-Bek3Nxot.js +2900 -0
- package/dist/assets/{index-CUMme3nC.js → index-BfTQCMKf.js} +1 -1
- package/dist/assets/{index-DJvzDb5Q.js → index-BfnrUUfH.js} +1 -1
- package/dist/assets/{index-BwNCJNhy.js → index-BikUP_wv.js} +1 -1
- package/dist/assets/{index-BWGe4dJb.js → index-BqrWLXQw.js} +3 -3
- package/dist/assets/{index-BUZBDqqG.js → index-CBHMH4Z7.js} +1 -1
- package/dist/assets/{index-DgL9xnFX.js → index-CDd3s2GI.js} +1 -1
- package/dist/assets/{index-BYUmgdKD.js → index-CHgpIuFF.js} +3 -3
- package/dist/assets/{index-Bn367fJd.js → index-CKWS_NIP.js} +33 -33
- package/dist/assets/{index-C2cbrgVU.js → index-CZX-K9Eg.js} +1 -1
- package/dist/assets/{index-CqYZvIgm.js → index-CaxsY_au.js} +3 -3
- package/dist/assets/{index-8NfiZJjD.js → index-CbK68mel.js} +1 -1
- package/dist/assets/{index-BZiL2FK1.js → index-CbnvHmOA.js} +1 -1
- package/dist/assets/{index-D6evhDRM.js → index-Crqqt-AN.js} +1 -1
- package/dist/assets/{index-0xQC_RX5.js → index-CsTd8Q4H.js} +1 -1
- package/dist/assets/{index-CYUImSxu.js → index-DCHzmqFc.js} +1 -1
- package/dist/assets/{index-CgaVkwyv.js → index-DJfXtT-f.js} +1 -1
- package/dist/assets/index-DSjaZAu3.js +1 -0
- package/dist/assets/{index-CRl4QsFf.js → index-DXfP6ckA.js} +2 -2
- package/dist/assets/{index-Beuvm8_y.js → index-D_L4A5jU.js} +1 -1
- package/dist/assets/{index-BGxDum8X.js → index-DqkfLKvE.js} +1 -1
- package/dist/assets/{index-B_lfyJAT.js → index-Dr7VuVvC.js} +1 -1
- package/dist/assets/{index-CNgBOpOW.js → index-DrsAyGr6.js} +1 -1
- package/dist/assets/{index-CaBQPbJb.js → index-FdUIQyuT.js} +1 -1
- package/dist/assets/{index-DDM20tun.js → index-HqyXcG7M.js} +3 -3
- package/dist/assets/{index-CNsTH-sC.js → index-WHQs_PkC.js} +1 -1
- package/dist/assets/{index-C_yKF6eG.js → index-cZdqepfp.js} +1 -1
- package/dist/assets/{index-C_xCzC4h.js → index-iqFfmV_z.js} +1 -1
- package/dist/assets/{index-BVBi2pvN.js → index-jHF3D4cy.js} +1 -1
- package/dist/assets/{index-CzlMX9ae.js → index-m8sITmne.js} +1 -1
- package/dist/assets/{index-BTQvwhJ3.js → index-tNmk7CjJ.js} +1 -1
- package/dist/assets/{index.esm-Bhe9PyJD.js → index.esm-WZ7Avw4n.js} +1 -1
- package/dist/assets/{install-from-url-BSRJz2Np.js → install-from-url-PuHPLadE.js} +1 -1
- package/dist/assets/{invitation-C2EDl-5j.js → invitation-Bi2QgUpB.js} +1 -1
- package/dist/assets/{is-path-prefix-equal-DRlBVNUG.js → is-path-prefix-equal-BAfeJQQq.js} +1 -1
- package/dist/assets/{item-BBL8EstT.js → item-hbtsGcq0.js} +1 -1
- package/dist/assets/{ja-DBxpsmGJ.js → ja-DMq-YXDX.js} +2 -2
- package/dist/assets/{javascript-Bw5GnACP.js → javascript-CH6uPFyX.js} +1 -1
- package/dist/assets/{jsonMode-CYcndJYD.js → jsonMode-B3mvgwT0.js} +1 -1
- package/dist/assets/{ko-CCAdSyce.js → ko-BrYbXurh.js} +2 -2
- package/dist/assets/{liquid-ClyO3pFK.js → liquid-BoDus-ho.js} +1 -1
- package/dist/assets/{list-header-CQdhtCZz.js → list-header-C3SJDsfy.js} +1 -1
- package/dist/assets/{lock.svg-B7I2PtUy.js → lock.svg-CGmlgpmU.js} +1 -1
- package/dist/assets/{log-BztLHiQf.js → log-D4BWVj7G.js} +1 -1
- package/dist/assets/{lottie-react.esm-Cq3-epqH.js → lottie-react.esm-ayFZjR4e.js} +1 -1
- package/dist/assets/{mdx-DkYVlLke.js → mdx-C33wkq6H.js} +1 -1
- package/dist/assets/{memory-DV8JsQtx.js → memory-lh5QZ4zg.js} +1 -1
- package/dist/assets/{metric-EPbdPW3c.js → metric-chc-qmc8.js} +1 -1
- package/dist/assets/omit-C11lcOpj.js +1 -0
- package/dist/assets/{overview-dKd5GT8L.js → overview-DL-GP40o.js} +1 -1
- package/dist/assets/{permission-CM6DkVuZ.js → permission-D09K4EY6.js} +1 -1
- package/dist/assets/{preference-BM-UTdmc.js → preference-iiwdIYk6.js} +5 -5
- package/dist/assets/{provider-icon-Cktbn65r.js → provider-icon-Dm9XYo2I.js} +1 -1
- package/dist/assets/{pt-CrMGrBZ6.js → pt-Dl6732JN.js} +2 -2
- package/dist/assets/{python-Du7VaLuo.js → python-D_lYYAX1.js} +1 -1
- package/dist/assets/{raf-schd.esm-BNw9NITo.js → raf-schd.esm-Bo9SYHL8.js} +1 -1
- package/dist/assets/{razor-BVnET0nC.js → razor-dpsmZHh4.js} +1 -1
- package/dist/assets/{rotate-session-key-CFNbgP5f.js → rotate-session-key-Bfdv46s3.js} +1 -1
- package/dist/assets/{ru-up3R57Pv.js → ru-CVUeN9AX.js} +2 -2
- package/dist/assets/{runtime-Dk9rcZxS.js → runtime-BUcScDcM.js} +1 -1
- package/dist/assets/schema-DidDB4o0.js +1 -0
- package/dist/assets/sdk-l1r4MOQ_.js +1 -0
- package/dist/assets/{service-CqUPpwp0.js → service-DCzLPjA3.js} +1 -1
- package/dist/assets/{shorten-label-3s6gLF6k.js → shorten-label-CN9pEyom.js} +1 -1
- package/dist/assets/{simple-select-Wx3iUaBi.js → simple-select-DxwJpURO.js} +1 -1
- package/dist/assets/{spaces-Am_oeFAi.js → spaces-BrB8zqzV.js} +1 -1
- package/dist/assets/{status-CNrrWhOD.js → status-B-GGRrEB.js} +1 -1
- package/dist/assets/{status-C7WonqAX.js → status-BZx_J-ps.js} +1 -1
- package/dist/assets/{switch-control-5rdk6r2s.js → switch-control-X9WA2UjB.js} +1 -1
- package/dist/assets/{table-icons-BYFzOJU6.js → table-icons-Xs4hP9Pw.js} +1 -1
- package/dist/assets/{team-DIUm8el2.js → team-B9jB42uy.js} +1 -1
- package/dist/assets/{th-DdNj2Ao6.js → th-32eBNQes.js} +2 -2
- package/dist/assets/{toLower-4lrgdc-N.js → toLower-DwWNsNMJ.js} +1 -1
- package/dist/assets/toUpper-DXK6zXOf.js +1 -0
- package/dist/assets/{traffic-Dk6Khjvb.js → traffic-C_4zWOQM.js} +1 -1
- package/dist/assets/{tsMode-Dsc9rLfX.js → tsMode-57DuREfP.js} +1 -1
- package/dist/assets/{typescript-DpjdjVZw.js → typescript-BJp2b_J1.js} +1 -1
- package/dist/assets/{url-evaluation-C14MBkPs.js → url-evaluation-DetQFE_e.js} +1 -1
- package/dist/assets/{url-join-CdWz3bWK.js → url-join-rRKl4Ear.js} +1 -1
- package/dist/assets/{use-mobile-DyfoHLG-.js → use-mobile-BDRFDg8j.js} +1 -1
- package/dist/assets/{use-mobile-CDGtPjEm.js → use-mobile-DOhPXmq7.js} +1 -1
- package/dist/assets/{useAsync-CxBbRyfH.js → useAsync-B59MJoKM.js} +1 -1
- package/dist/assets/{useAsyncRetry-Bocgt3FN.js → useAsyncRetry-CGp0YSlH.js} +1 -1
- package/dist/assets/{useLocalStorage-DCDZL7eY.js → useLocalStorage-Dpl2DibN.js} +1 -1
- package/dist/assets/{useThemeProps-BgZ7aDx7.js → useThemeProps-BS48y1B2.js} +1 -1
- package/dist/assets/{util-Be7ZYLl2.js → util-DgOs7OwT.js} +1 -1
- package/dist/assets/{vi-HNh41Xxk.js → vi-DF8IinAc.js} +2 -2
- package/dist/assets/{wait-container-DxcDiGL9.js → wait-container-CxHAyAQN.js} +1 -1
- package/dist/assets/{without-wallet-B0F51hFz.js → without-wallet-qfmn1VhQ.js} +1 -1
- package/dist/assets/wrap-locale-D8IL6u8L.js +1 -0
- package/dist/assets/{xml-B7OEZnDx.js → xml-BZRt8HAs.js} +1 -1
- package/dist/assets/{yaml-CKPSOCPR.js → yaml-0X7rH3i7.js} +1 -1
- package/dist/assets/{zh-MM5bvwO_.js → zh-ByJkLAV1.js} +2 -2
- package/dist/assets/{zh-tw-Dr5DyPwA.js → zh-tw-34G9tsUP.js} +2 -2
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/ArrowDropDown-X9T3XBZa.js +0 -1
- package/dist/assets/_createAggregator-DnJlZ903.js +0 -1
- package/dist/assets/api-D8UyBv4i.js +0 -1
- package/dist/assets/cloneDeep-CJSiQzIj.js +0 -1
- package/dist/assets/connect-DEbeKuNy.js +0 -5
- package/dist/assets/depsEqual-C5Zw7_49.js +0 -1
- package/dist/assets/emotion-cache.browser.esm-4wp097w6.js +0 -1
- package/dist/assets/engine-DDhO6kSm.js +0 -1
- package/dist/assets/getValidReactChildren-DsFc6cpz.js +0 -1
- package/dist/assets/index-7mVca6L9.js +0 -1
- package/dist/assets/index-BAMKzu46.js +0 -2900
- package/dist/assets/index-Bv7eZ7mu.js +0 -179
- package/dist/assets/index-CJNCkrWH.js +0 -1
- package/dist/assets/omit-DisUFHh2.js +0 -1
- package/dist/assets/schema-DV0hUaoz.js +0 -1
- package/dist/assets/sdk-4bF4Obyz.js +0 -1
- package/dist/assets/toUpper-DJkJXqdQ.js +0 -1
- package/dist/assets/wrap-locale-DCD2RpMr.js +0 -1
|
@@ -4,4 +4,4 @@ Verhältnis: 9:16
|
|
|
4
4
|
Landschaftsformat:
|
|
5
5
|
Verhältnis: 16:9`,copyrightDesc:"Verwendet in: Website-Fußzeile",appUrlDesc:"Verwendet in: Sitemap und Social Sharing",advanced:"Erweiterte Konfiguration",errorReason:"Blocklet-Start ist fehlgeschlagen, aber Sie können darauf zugreifen, indem Sie unten auf den Button klicken.",nameValidateError:"Ungültig: Beginnt mit Buchstabe/Zahl, 3–129 Zeichen, nur a–z, 0–9, - und _."},overview:{source:"Quelle",deployedFrom:"Bereitgestellt von",accessControl:"Zugangskontrolle",viewInStore:"Im Geschäft anzeigen"},diskInfo:{empty:"Daten über die Festplatte sind derzeit nicht verfügbar!",appDir:"App-Verzeichnis",dataDir:"Datenverzeichnis",logDir:"Log-Verzeichnis",cacheDir:"Cache-Verzeichnis"},runtimeInfo:{noRunning:"Laufzeitinformationen sind verfügbar, wenn das Blocklet ausgeführt wird!",memoryUsage:"Speichernutzung",cpuUsage:"CPU-Auslastung",uptime:"Betriebszeit",port:"Hafen",processId:"Prozess-ID",dataStorage:"Datenspeicher"},dist:{downloadLink:"Download-Link",verify:"Überprüfen"},status:{added:"Hinzugefügt",waiting:"Warten",downloading:"Herunterladen",extracting:"Extrahieren",installing:"Installieren",upgrading:"Aktualisieren",installed:"Installiert",created:"Erstellt",starting:"Beginnend",running:"Laufen",stopping:"Anhalten",stopped:"Gestoppt",error:"Fehler",deleting:"Löschen",corrupted:"Korrupt",purchasing:"Warten auf den Kauf",purchased:"Gekauft",verifying:"Kauf überprüfen",resource:"Ressource",failWithOldVersion:"Neue Version konnte nicht gestartet werden, Blocklet läuft auf der alten Version.",hasSomeErrors:"{blocklets} Läuft nicht vollständig, möglicherweise aufgrund von Problemen oder ausstehendem Start."},list:{download:"Herunterladen",star:"Stern",searchPlaceholder:"Suche nach Blocklet-Name oder DID"},component:{container:"Globale Konfiguration",showContainer:"Zeige globale Konfiguration",didSpaceConfig:"Konfiguriere DID Spaces",didSpaceConfigTip:"Schließen Sie den folgenden Autorisierungsprozess ab, um Anwendungsdaten in DID Spaces zu speichern",didSpaceConnected:"Speicherung berechtigt für: {endpoint}",checkUpdateTitle:"Nach Updates suchen",updateTitle:"Komponenten aktualisieren",noUpdate:"Keine Komponenten zum Aktualisieren",add:"Komponente hinzufügen",selectComponent:"Wähle einen Blocklet aus",selectRegistry:"Wähle Blocklet Store",selectRegistryTip:"Sie können den Blocklet Store umschalten, um mehr Komponenten zu sehen",selectInstance:"Wählen Sie die Instanz",selectInstanceTip:"Sie können eine vorhandene Instanz auswählen oder eine neue Instanz erstellen. Vorhandene Instanzen verwenden zuvor gespeicherte Konfigurationen und Daten.",newInstance:"Erstelle eine neue Instanz",noComponent:"Keine Komponenten",mountPoint:"Was ist der Einhängepunkt?",mountPointTip:"Wenn Sie den Einhängepunkt auf '/my-prefix' setzen, werden alle Anfragen, die mit diesem Einhängepunkt beginnen, an das ausgewählte Bauteil weitergeleitet.",delete:"Lösche Komponente",deleteDescription:"Dieses Bauteil wird nach dem Löschen nicht zugänglich sein. Löschen bestätigen?",purchase:"Zahlung erforderlich",tip:{stopBlocklet:"Bitte halten Sie zuerst das Blocklet an.",requiredBy:"Die Komponente wird von {name} benötigt"},choose:"Wählen",addWithName:"Füge Blocklet zu {name} hinzu",installingCanCloseWindowTip:"Installation der Komponente im Hintergrund, Sie können dieses Fenster sicher schließen",installSuccessTip:"Herzlichen Glückwunsch, die Komponente wurde erfolgreich installiert!",missDownloadTokenTip:"Bezahlte Komponente kann ohne gültiges Download-Token nicht hinzugefügt werden",purchaseComponentSecondCheckTip:"Bitte präsentieren Sie Ihren Blocklet-Kauf-NFT, um fortzufahren",installComponentError:"Es ist ein Fehler beim Installieren des Komponenten aufgetreten, bitte versuche es erneut",downloadComponentError:"Beim Herunterladen des Komponenten ist ein Fehler aufgetreten, bitte versuchen Sie es erneut",addComponentTip:{introduction:"Willkommen im Add Component Assistenten",isPurchase:"Du musst das NFT überprüfen, bevor du <b>{name}</b> als Komponente verwendest",belowInformation:"Unten befinden sich die Informationen für die Komponente:",verifyNFT:"Bitte wählen Sie die NFT-Überprüfungsmethode",config:"Bitte füllen Sie die Konfiguration des Komponenten aus",environment:"Bitte füllen Sie die Umgebung der Komponente aus",fromUrl:"Blocklet von URL hinzufügen",fromUpload:"Blocklet aus Upload hinzufügen",uploadFailed:"Upload fehlgeschlagen",allowedFileTypes:"Zulässige Dateitypen zum Hochladen: {types}"},addNext:"Füge {name} hinzu",upgradeNext:"Upgrade {name}",setting:"Einstellungen",noDependencies:"{name} hat keine Abhängigkeiten",relatedComponents:"Verwandte Blocklets",required:"Erforderlich",installed:"Installiert",installingTip:"Komponente wird installiert, bitte warten...",upgrade:"Upgrade",upgradeAvailable:"Upgrade verfügbar",needBuy:"Kauf erforderlich",isOfficial:"Offiziell zertifiziert"},router:{urlPath:"URL Pfad",noRunning:"Der Blocklet ist derzeit nicht gestartet. Nicht in der Lage, über die folgende Adresse zuzugreifen!",securitySetting:"Sicherheitseinstellung",checkUrlAccessible:"Überprüfen Sie die Zugänglichkeit der Adresse",urlInaccessible:"Es kann aufgrund von Netzwerkproblemen sein, dass die Adresse vorübergehend nicht erreichbar ist.",noAccessibleUrl:"Keine zugängliche URL",domainLockTooltip:"Die vom System generierte Domain kann nicht bearbeitet werden.",urlLockTooltip:"Der vom System generierte URL-Pfad kann nicht bearbeitet werden.",showAllDomains:"Alle Domains anzeigen",showAllDIDs:"Zeige alle DIDs",currentDomainTip:"Sie greifen über diese Domain auf die aktuelle Seite zu"},export:{title:"Exportiere Blocklet",name:"Bundle-Name",nameTip:'z.B. "mein-blocklet-name" oder "@mein-scope/blocklet-name"',result:"Was kommt als Nächstes",exportSource:"Exportquelle",success:"Blocklet erfolgreich exportiert",resultTipStart:"Mit",resultTipEnd:"Du kannst diese Blocklet in wenigen Minuten erstellen und veröffentlichen",uploadedComponentTip:"Direkt hochgeladene Komponenten können nicht exportiert werden:"},migrate:{title:"Anwendung migrieren",scan:"Verbinden Sie Ihre DID Wallet, um ein Schlüsselpaar für diese Anwendung zu generieren",confirm:"Bitte überprüfen Sie diese Operation in Ihrer DID Wallet",success:"Ihre Anwendung wurde erfolgreich migriert. Die Seite wird in {sec} Sekunden aktualisiert.",intro:{l1:"Klicken Sie hier",l2:"Bitte migrieren Sie Ihre Anwendung auf die neue Version (Änderungen sind während der Migration deaktiviert)",l3:"Die Anwendung DDI wird vollständig von Ihrer DDI-Brieftasche aus gesteuert.",l4:"Die Anwendungsdaten werden migriert und es sind keine weiteren Änderungen erforderlich.",l5:"Die neue Anwendungsstruktur gibt Ihnen mehr Flexibilität beim Ändern von Komponenten.",l6:"4. Bitte ändern Sie keine Komponenten-Bindungspunkte, bevor eine neue Version der Komponente veröffentlicht wird."},tip:{duplicate:"Finde doppelte Komponente {name}, bitte lösche unnötige Komponenten und migriere erneut",running:"Bitte hör auf, Blocklet vor der Migration zu blockieren"}},error:{isRunning:"Blocklet läuft, bitte stoppen Sie es zuerst",isInProgress:"Blocklet wird gerade bearbeitet, bitte warten Sie, bis es abgeschlossen ist"},publish:{createResource:"Erstellen Sie Ressource",addResource:"Veröffentlichung hinzufügen",productTitle:"Produkt",versionTitle:"Versionierung",imgTitle:"Bilder",resourceTitle:"Inhalt",blockletEmptyTip:"Keine Blocklets vorhanden",createBlockletTip:"Sie können über vorhandene Ressourcen, Komponenten und Konfigurationen in dieser Anwendung einen neuen Blocklet erstellen",createBlocklet:"Neuer Blocklet",componentNotRunning:"Blocklet {name} läuft nicht, bitte starte es zuerst",releaseEmptyTip:"Es gibt hier keine Veröffentlichungen",createReleaseTip:"Du kannst eine Veröffentlichung des Blocklets erstellen, zusammen mit Versionshinweisen und Ressourcen, die andere Personen nutzen können.",createRelease:"Erstellen Sie Freigabe",deleteReleaseTip:"Die Veröffentlichung kann nach Löschung nicht wiederhergestellt werden",createBlockletDid:"Erstelle aus dem DID Wallet",createReleaseSuccess:"Freigabe erfolgreich erstellt",saveDraftSuccess:"Entwurf erfolgreich gespeichert",connect:{title:"Erstelle Blocklet DID",scan:"Verwende die folgenden Methoden, um Blocklet DID zu generieren",confirm:"Bestätigen Sie die Verwendung von DID Wallet",success:"Blocklet DID wurde generiert, setzen Sie bitte Ihren Vorgang fort"},saveDraft:"Entwurf speichern",releaseNote:"Versionshinweis",errorTip:{noDid:"Blocklet DID wird benötigt",noTitle:"Blockleit-Titel ist erforderlich",noVersion:"Die Blocklet-Version ist erforderlich",noDescription:"Blocklet-Beschreibung ist erforderlich",noNote:"Versionshinweis wird benötigt",inValidVersion:"Ungültige Blocklet-Version",noResource:"Bitte wählen Sie die hochzuladenden Ressourcen aus, die im Blocklet enthalten sein sollen",noFirstDid:"Bitte erstellen Sie zuerst eine Blocklet-DID",invalidUrl:"Bitte geben Sie eine gültige URL ein",invalidUrlOrEmail:"Bitte geben Sie eine gültige URL oder E-Mail ein"},packTip:"Derzeit können Blocklets direkt als Anwendungen installiert werden. Komponenten und Anwendungskonfigurationen werden automatisch in das Blocklet aufgenommen.",resourceChangedWarning:"Sie haben die Ressource geändert, bitte rechtzeitig speichern",installResourceTip:"Installations-URL:",installResourceTip2:"Wenn du mehr Tipps sehen möchtest, besuche bitte",installResourceHelp:"Hilfe-Dokument",componentIncluded:"Eingeschlossen",componentForceRequired:"Erforderlich",download:"Download {name}",delete:"Lösche {name}",copyInstallUrl:"Kopiere Installations-URL",install:"Installiere {name}",publishToStoreSuccess:"Blocklet erfolgreich im Store veröffentlicht",connectStoreSuccess:"Blocklet Store erfolgreich verbunden",uploadToStoreSuccess:"Blocklet erfolgreich im Store hochgeladen, du musst es im Store veröffentlichen",viewLastRelease:"Letzte Version anzeigen",reconnectStoreTip:"Nach dem erneuten Verbinden wird ein neuer Entwickler zugewiesen. Bist du sicher, dass du dich erneut verbinden möchtest?",deleteProject:{title:"Lösche {name}",scan:"Verwende folgende Methoden, um {name} zu löschen",confirm:"Bitte bestätigen Sie die Verwendung der DID-Brieftasche",success:"Das Blocklet-Projekt wurde gelöscht, bitte fahren Sie mit Ihrer Operation fort.",tip1:"Das Blocklet-Projekt kann nach der Löschung nicht wiederhergestellt werden",tip2:"Sie können keine neuen Versionen mehr für den gelöschten Blocklet veröffentlichen, was bedeutet, dass das Blocklet nicht mehr im Store aktualisiert wird.",tip3:"Das Löschen des Blocklets hat keine Auswirkungen auf seine derzeit veröffentlichte Version im Store.",description:"Nach dem Löschen der Blocklet werden Sie auf die folgenden Probleme stoßen. Sind Sie sicher, dass Sie es löschen möchten?"},resourceTip:"Zurzeit kann es als Ressourcen-Blocklet nicht direkt aus dem Store installiert werden.",whyCantSeeInStore:"Du kannst das aktuelle Blocklet im Store veröffentlichen, und es kann weltweit genutzt werden.",whyCantSeeResourceBlockletInStore:"Sie können das aktuelle Blocklet im Store veröffentlichen, und es kann weltweit verwendet werden. Blocklets sind standardmäßig in der Store-Listenseite ausgeblendet.",tenantScope:"Mieter",blockletStudio:"Blocklet Studio",allComponentsNotRunning:"Blocklets läuft nicht, bitte starten Sie es zuerst",resourceEmptyTip:"Keine verfügbaren Ressourcen",steps:{resources:"Bitte wählen Sie die Ressourcen aus, die mit dem aktuellen Blocklet verbunden werden sollen, da diese Ressourcen zusammen mit dem Blocklet installiert werden sollen.",blocklets:"Wählen Sie die zu verknüpfenden Blocklets aus.",version:"Setzen Sie die Versionsnummer und das Änderungsprotokoll.",introduction:"Eine klare Einführung kann Ihren Blocklet effektiv hervorheben. Sie können Markdown-Syntax verwenden, um es zu schreiben und eine Vorschau anzuzeigen.",branding:"Beschreiben Sie die grundlegenden Informationen Ihres Blocklets. Diese Informationen werden den Benutzern im Store angezeigt."},branding:"Branding",brandingHelp:"Weitere Informationen über den Blocklet werden im Store angezeigt",resourceSelect:"Wählen Sie eine Ressource aus Blocklets",resourceUpload:"Ressource von Ihrer Festplatte hochladen (index.html ist im Archiv erforderlich)",deleteStoreTip:"Möchten Sie {name} wirklich aus der Verbindungsliste des Stores entfernen?",disconnectStoreTip:"Das Blocklet wird nach dem Trennen aus dem Store entfernt. Möchten Sie wirklich trennen?",connectOrUpload:"Verbinden oder Hochladen",developerInfo:"Entwicklerinformation",autoUploadTip:"Blocklet nach Erstellung automatisch im Store hochladen",possibleSameStoreTip:"Versuchen Sie, Abhängigkeits-Blocklets vor dem Hochladen, wenn möglich, im selben Blocklet-Store aufzulösen",needProjectId:"Bitte erstellen Sie zuerst ein Projekt",projectSettings:"Projekteinstellungen",noStoreSelected:"Bitte wählen Sie eine der vorhandenen Geschäfte aus oder fügen Sie ein neues Geschäft hinzu, um fortzufahren",installToThisServer:"Auf diesem Server installieren",forceResourceBlocklet:"Force als Blocklet auf Ressourcenbasis definiert",resourceDocker:"Blocklet aus Docker erstellen",resourceSelectTitle:"Ressource",resourceUploadTitle:"Hochladen",resourceDockerTitle:"Docker",resourceDockerInputTip:"Bitte geben Sie den docker run Befehl ein",docker:{pleaseInputDockerCommand:"Bitte geben Sie den docker run Befehl ein",volumeTip:"Volume muss mit $BLOCKLET_DATA_DIR oder $BLOCKLET_APP_DIR beginnen",volumeTip2:'Volumen kann nicht ".." enthalten',noAllowTheArg:"Das Argument darf im docker run Befehl nicht verwendet werden",needCustomInput:"Richten Sie den Wert bei der Installation von Blocklet ein",dockerParams:"Docker-Parameter",dockerCommand:"Docker-Befehl",dockerImageName:"Docker-Image-Name",addItem:"Docker-Run-Param hinzufügen",envKey:"Umgebungsvariable Schlüssel",publishTips:"Der endgültige externe Port wird automatisch vom Blocklet zugewiesen",volumeTips:"Das Volumen muss mit $BLOCKLET_DATA_DIR oder $BLOCKLET_APP_DIR beginnen",modifyParam:"Docker Run-Param ändern",modifyEnv:"Umgebungsvariable ändern",paramDetail:"Parametereinstellung",description:"Beschreibung",secure:"Sichern",shared:"Geteilt",required:"Erforderlich",prefix:"Präfix",path:"Pfad",name:"Name",portType:"Porttyp",dockerImageNameError:"Docker-Image-Name darf keine Leerzeichen enthalten",autoGenerated:"Automatisch generiert",dockerCMDError:"Docker CMD unterstützt nur einfache Zeichen",proxyBehavior:"Proxy-Verhalten",serviceProxy:"Dienst",directProxy:"Direkt",nextTab:"Befehl analysieren"},storeRule:{maxImageCount:"Der Store erlaubt maximal {max} Screenshots.",minImageCount:"Der Shop benötigt mindestens {min} {unit}.",minImageSize:"Das Screenshot-Bild von {name} muss mindestens {width}x{height} groß sein.",logoFormat:"Das Logo-Bildformat unterstützt nur [{format}].",warning:"Warnung",screenshot:"Screenshot",screenshots:"Screenshots",first:"1.",second:"2.",third:"3."},store:"Blocklet Store",endpoint:{tab:"Remote Blocklet",uploadToEndpoint:"Sie können das aktuelle Blocklet zum angegebenen Blocklet hochladen.",addEndpoint:"Blocklet-Endpunkt hinzufügen",urlEmpty:"Endpunkt-URL darf nicht leer sein",addFailed:"Blocklet-Endpunkt hinzufügen fehlgeschlagen:",deleteEndpoint:"Blocklet-Endpunkt löschen",deleteDesc:"Blocklet-Endpoint {name} löschen?",confirmDesc:"Bitte geben Sie {name} ein, um zu löschen",visitEndpoint:"Besuche Blocklet",disconnectEndpointTip:"Sicher, dass du die Verbindung zu {url} trennen möchtest? Nach dem Trennen wird das Blocklet nicht mehr an diesen Endpunkt hochgeladen.",deleteFailed:"Blocklet-Endpunkt löschen fehlgeschlagen",publishToEndpointSuccess:"Blocklet erfolgreich an Endpoint veröffentlicht",uploadToEndpointSuccess:"Blocklet erfolgreich zum Endpoint hochgeladen"},autoPublishErrorTip:"Automatischer Veröffentlichung an {storeName} fehlgeschlagen: {error}",singleton:"Nur eine Instanz",singletonTip:"Wenn der Singleton-Modus aktiviert ist, kann die Anwendung nicht mehrere Instanzen gleichzeitig ausführen. Da Ihre App den Singleton-Modus verwendet, kann kein Blue-Green-Deployment für Updates oder Neustarts verwendet werden."},titleValidationError:"Die Titellänge muss zwischen 3 und 20 Zeichen liegen",descriptionValidationError:"Beschreibungslänge muss zwischen 3 und 80 Zeichen liegen",whyNeedAppPid:"Wenn Ihre Anwendung migriert wurde, ist die permanente DID die DID, die bei der ursprünglichen Installation dieses Blocklets generiert wurde.",usingDocker:"Dieses Blocklet wird mit Docker ausgeführt.",gotoVisitError:"Blocklet-URL kann nicht erreicht werden, bitte versuchen Sie es später erneut",usingIsolation:"Dieses Blocklet wird unter Netzwerkisolation ausgeführt",dockerImage:"Unterstützt Docker",mountPoint:{description1:"Diese Änderung kann URLs mit dem alten Mountpoint beschädigen, was zu weiteren Problemen führen kann:",case1:"Defekte Ressourcenverweise zwischen Blocklets in dieser App",case2:"Kaputte URL, falls Sie sie öffentlich geteilt haben",description2:"Sie können eine Weiterleitung vom alten zum neuen Mountpoint einrichten, um mögliche Breaking Changes zu minimieren."},skSourceMigratedTip:"Diese App wurde mit einer serververwalteten Wallet gestartet und ist nun für mehr Sicherheit auf DID Wallet umgestellt.",skSourceManagedTip:"Diese App verwendet ein vom Server verwaltetes Wallet. Bitte migrieren Sie so bald wie möglich auf ein DID Wallet, um die Sicherheit zu verbessern.",zeroDowntime:"Keine Ausfallzeit"},dashboard:{nodeDid:"Knoten",ownerDid:"Eigentümer",routingEngine:"Routing-Engine",ownerNftURL:"Besitzer NFT",expirationLeft:"Verbleibende Ablaufzeit",startFromCrashTip:"Blocklet Server ist beim letzten Mal nicht ordnungsgemäß beendet worden. Bitte starten Sie manuell die Blocklets, die ausgeführt werden sollen.",runtimeConfig:{blockletMaxMemoryLimit:"Blocklet Max Speichergrenze",daemonMaxMemoryLimit:"Server Max Speicherbegrenzung"},document:"Mehr erfahren in unserer Dokumentation",database:"Datenbank"},store:{nameSort:"Name",popularSort:"Beliebtheit",headerDescription:"Finde und installiere deine Blocklets",detail:{purchase:"Kaufe {name}",open:"Öffne {name}",install:"Installiere {name}",upgrade:"Upgrade {name}",empty:"Keine Einleitung"},blockletRegistry:{changeFailed:"Blocklet Speicheränderung fehlgeschlagen:",addFailed:"Blocklet Store konnte nicht hinzugefügt werden",editFailed:"Bearbeitung des Blocklet Store fehlgeschlagen",switchRegistry:"Schalte Blocklet Store um",addRegistry:"Füge Blocklet Store hinzu",editRegistry:"Blocklet Store bearbeiten",deleteRegistry:"Blocklet-Store löschen",haveSameRegistry:"Der gleiche Blocklet Store existiert",registryName:"Blocklet Store Name",registryUrl:"Blocklet Store URL",registryNameEmpty:"Blocklet Store-Name darf nicht leer sein",registryUrlEmpty:"Die Blocklet-Store-URL darf nicht leer sein",deleteDesc:"Blocklet-Store {name} löschen bestätigen?",confirmDesc:"Bitte geben Sie {name} zum Löschen ein"},purchase:{title:"Kaufe {name}",confirmed:"Dein Blocklet-Kauf-NFT ist verifiziert",declined:"Sie haben keinen gültigen Blocklet-Kauf NFT angegeben",waiting:"Warten auf abgeschlossenen Kauf...",purchase:{title:"Kaufe NFT",description:"Bevor Sie diese Blocklet installieren, zahlen Sie bitte einen Token, wenn Sie dieses Blocklet nicht gekauft haben."},verify:{title:"Überprüfe NFT",description:"Ihr NFT wird vor der Installation dieses Blocklet überprüft, wenn Sie das Kauf-NFT gekauft und in Ihrer DID Wallet halten.",auth:{title:"Kaufnachweis erforderlich",scan:"Verbinden Sie die DID Wallet, um Blocklet-Käufe von NFTs anzubieten",confirm:"Überprüfe diese Operation in deiner DID-Brieftasche",success:"Ihr Kauf-NFT wurde verifiziert und die Installation wurde gestartet."}},auth:{title:"Kaufe {name}",scan:"Scannen Sie den folgenden QR-Code mit Ihrer DID Wallet",confirm:"Bestätigen Sie in Ihrem Konto",success:"Kauf des NFTs wurde an Ihre DID Wallet gesendet"},launch:"Starte {name}",autoLaunch:"{name} erfolgreich gekauft, Weiterleitung zur Startseite..."},tooltip:{upgradeServer:"Blocklet benötigt Blocklet Server Version {version}, aktuelle Blocklet Server Version ist {serverVersion}"}},setting:{saveSuccess:"Einstellungen erfolgreich gespeichert",unSavedTip:'Es gibt nicht gespeicherte Änderungen. Klicken Sie bitte auf "Änderungen speichern", um sie zu speichern.',unSavedLeaveTip:"Es gibt ungespeicherte Änderungen, sind Sie sicher, die Seite zu verlassen?",form:{name:"Name deines Servers",nameRequired:"Serverbeschreibung ist erforderlich",namePlaceholder:"Servername",description:"Beschreiben Sie Ihren Server",descriptionHolder:"Serverbeschreibung",descriptionRequired:"Serverbeschreibung erforderlich",domain:"Deine Server Domain Name",domainPlaceholder:"Server-Domänenname",domainRequired:"Der Server-Domain-Name ist erforderlich",ipPlaceholder:"IP",ipRequired:"IP ist erforderlich",registry:"Blocklet Store",registryPlaceholder:"Blocklet Store, um Blocklets abzurufen",registryRequired:"Der Blocklet Store ist erforderlich",registerUrl:"Blocklet Launcher-URL",registerUrlPlaceholder:"Geben Sie die URL Ihres bevorzugten Blocklet Launchers ein. Sie können den offiziellen sicher verwenden.",webWalletUrl:"DID Wallet URL",webWalletUrlPlaceholder:'Bitte geben Sie die URL Ihres gehosteten "DID Wallets" ein. Sie können das offizielle sicher nutzen',nftDomainUrl:"NFT-Domänen-URL",nftDomainUrlPlaceholder:"Bitte geben Sie die URL Ihrer gehosteten 'NFT-Domain' ein. Sie können die offizielle sicher verwenden",enableWelcomePage:"Aktiviere Willkommensseite",welcome:{switchLabel:"Willkommen Seite"},upgrade:{title:"Upgrade Blocklet Server auf {version}",description:"Während des Upgrades wird Ihr Blocklet Server für einige Minuten in den Wartungsmodus wechseln, während das Update abgeschlossen wird.",dialog:"Klicken Sie auf 'Bestätigen', um das Update zu installieren. Der Blocklet Server wird in den Wartungsmodus wechseln, bis das Update abgeschlossen ist, und kehrt automatisch in den Produktionsmodus zurück.",confirm:"Upgrade",switchLabel:"Automatischer Update-Check",enableBetaRelease:"Aktiviere Beta-Version",setup:"Vorbereitung des Upgrades",installing:"Installation von Blocklet Server v{version}",restarting:"Blocklet Server wird neu gestartet",cleanup:"Migration der Blocklet Server-Daten",verifying:"Überprüfe Blocklet Server v{version}",rollback:"Rollback Blocklet Server",complete:"Upgrade abgeschlossen!",progress:"Upgrading {name}",check:"Such nach Aktualisierungen",latest:"Sie nutzen die neueste Version."},restart:{title:"Blocklet-Server neu starten",description:"Während des Neustarts wird Ihr Blocklet Server in den Wartungsmodus versetzt, bis der Neustart abgeschlossen ist.",dialog:'Klicken Sie auf "Bestätigen", um neu zu starten. Der Blocklet-Server befindet sich im Wartungsmodus, bis der Neustart abgeschlossen ist, und kehrt automatisch in den Produktionsmodus zurück.',confirm:"Neustart",setup:"Vorbereitung des Neustarts",verifying:"Blocklet Server verifizieren",restarting:"Neustart des Blocklet-Servers",cleanup:"Stelle sicher, dass alles in Ordnung ist",rollback:"Reinige den schmutzigen Zustand",complete:"Instandhaltung komplett!",progress:"Neustart {name}"},register:{title:"Registrieren Sie sich bei Blocklet Launcher",description:"Sobald hinzugefügt, können Sie Blocklets zu diesem Blocklet-Server von {url} aus starten.",button:"Registrieren"},monitor:{diskThreshold:"Sende eine Warnung, wenn die Festplattenauslastung (%) überschritten wird",diskThresholdPlaceholder:"Bitte legen Sie die Schwelle für die Festplattenauslastungs-Warnung fest"},security:{switchLabel:"Dateisystemisolierung",switchTips:"Nach Deaktivierung dieser Option befindet sich das Dateisystem des Blocklets nicht mehr in Isolation, was ein Risiko darstellen kann, dass bösartige Software das Dateisystem beschädigt.",warningTips:"Die Funktion zur Isolation des Dateisystems kann nicht angewendet werden. Bitte aktualisieren Sie die Node.js-Version (aktuelle Version ist {version}) auf v21.6.0 oder höher."},docker:{switchLabel:"Blocklets in Containern ausführen",switchTips:"Nachdem Sie diese Option aktiviert haben, werden die Blocklets unter Verwendung von Containern ausgeführt, was die Gesamtsicherheit des Servers verbessern kann.",notInstalled:"Containerausführung kann nicht aktiviert werden, da Docker nicht installiert ist oder über die erforderlichen Berechtigungen zur Ausführung verfügt",needCloseFileSystemIsolation:"Dateisystemisolierung und Docker-Container-Modus-Laufzeit können nicht gleichzeitig aktiviert werden"},dockerNetwork:{switchLabel:"Container-Netzwerkisolation",switchTips:"Nach Aktivierung dieser Option laufen Blocklets auf sicherere Weise: Ein Blocklet kann nicht auf den Blockletserver oder andere Blocklets in anderen Apps zugreifen.",needEnableDocker:"Container-Modus muss aktiviert sein, um Netzwerkisolierung zu aktivieren"},restartAllContainers:{title:"Alle Container neu starten",description:"Alle Container neu starten und Blocklets weiterlaufen lassen.",dialog:'Klicken Sie auf "Bestätigen", um alle Container-Blocklets neu zu starten und den Status der Blocklets beizubehalten.',confirm:"Neu starten",setup:"Neustart vorbereiten",verifying:"Blocklet-Server wird verifiziert",restarting:"Starte alle Container im Hintergrund neu",cleanup:"Stellen Sie sicher, dass alles in Ordnung ist",rollback:"Bereinigen Sie den unsauberen Zustand",complete:"Vollständig erhalten!",progress:"Starte alle Container im Hintergrund neu"},restartAllBlocklet:{title:"Alle Blocklets neu starten",description:"Alle laufenden oder fehlerhaften Blocklets auf diesem Server neustarten",dialog:'Klicken Sie auf "bestätigen", um alle Blocklets im Hintergrund neu zu starten.',confirm:"Neustart",setup:"Bereite Neustart vor",verifying:"Blocklet-Server wird überprüft",restarting:"Neustart aller laufenden oder fehlerhaften Blocklets im Hintergrund",cleanup:"Stellen Sie sicher, dass alles in Ordnung ist",rollback:"Den unsauberen Zustand bereinigen",complete:"Wartung abgeschlossen!",progress:"Neustart aller laufenden oder fehlerhaften Blocklets im Hintergrund"},enableSessionHardening:{switchLabel:"Sitzungshärtung aktivieren",switchTips:"Nach dem Aktivieren dieser Option erfordern Mutationsvorgänge eine strikte Verifizierung, was die gesamte Serversicherheit verbessern kann."}},accessKey:{accessKeyId:"Zugriffsschlüssel-ID",lastUsed:"Zuletzt verwendet am",tip:"Bitte geben Sie einen Namen für diesen Zugriffsschlüssel ein",saveSecretTip:"Dies ist die einzige Zeit, in der Ihr Zugriffsgeheimnis angezeigt, aber nicht wiederhergestellt werden kann. Sie können jedoch jederzeit neue Zugriffsschlüssel erstellen.",iKnow:"Ich habe den Zugriffs-Geheimcode kopiert und gespeichert",showSecret:"Zeige geheimen Zugriffsschlüssel",hideSecret:"Verstecke Geheimnis",title:"Lösche Zugriffsschlüssel",descriptionNoTime:"Dieser Zugangsschlüssel {key} mit dem Namen {name} wird unwiderruflich gelöscht, da er (noch nie verwendet wurde)",description:"Dies löscht dauerhaft den Zugriffsschlüssel {key} mit dem Namen {name}, der zuletzt am {time}, {timeAge} verwendet wurde.",confirm_desc:"Bitte geben Sie {name} zum Löschen ein",remark:"Zugriffsschlüsselname",remarkInvalid:"Zugriffsschlüsselname ist erforderlich",passport:"Pass auswählen für den Zugriffsschlüssel, um Berechtigungen zu gewähren oder einzuschränken",expireTime:"Setzen Sie ein Ablaufdatum für den Zugriffsschlüssel, um die Sicherheit zu verbessern",authType:"Auth-Typ",resourceType:"Ressourcentyp",resourceId:"Ressourcen-ID",component:"Komponente",expired:"{time} abgelaufen",accessKeySecret:"Zugriffsschlüsselgeheimnis",simple:"Einfach",signature:"Signatur",signatureDesc:"Unternehmensstandard für Sicherheit mit Kryptografie. Erfordert Codeintegration mit SDK (@blocklet/server-js), ideal für Szenarien mit hohen Sicherheitsanforderungen und kritischer Datenübertragung",simpleDesc:"Leichtgewichtiger Bearer-Token-Mechanismus, ähnlich einem OpenAPI-Schlüssel, unterstützt RESTful API-Aufrufe und die Integration von Drittanbieterdiensten. Keine Programmierung erforderlich, schnelle Integration über HTTP-Header, perfekt für die schnelle Entwicklung",viewSecret:"Sie können später im Detailbereich des Zugriffsschlüssels auf den geheimen Schlüssel zugreifen.",usage:"Verwendung",listTitle:"Verwalten Sie sicheren API-Zugriff mit Zugriffsschlüsseln",tooltipTitle:"Generieren und verwalten Sie Anmeldedaten, die vertrauenswürdigen Systemen die programmgesteuerte Interaktion mit Ihrer App ermöglichen. Zugriffsschlüssel ermöglichen sichere Automatisierung und nahtlose Integration über Ihre Tools und Dienste hinweg."},webhook:{add:"Integration hinzufügen",delTitle:"Lösche Integration",requiredError:"Bitte geben Sie einen gültigen {type} an",confirm_desc:"Bitte geben Sie {name} zum Löschen ein",test:"Test",description:"Diese Integration mit der ID {id} wird dauerhaft gelöscht.",columns:{description:"ID",params:"Parameter",createdAt:"Erstellt am"},testSuccess:"Testnachricht erfolgreich gesendet",duplicateError:"Die URL existiert bereits",updateSuccess:"Status erfolgreich aktualisiert"},dns:{step1Title:"Melden Sie sich bei Ihrem Domain-Registrar an",step1Desc1:"Melden Sie sich bei Ihrem Domain-Registrar an, finden Sie die Domain-Verwaltungsseite und die Seite mit den Nameserver-Einstellungen. Sie können Ihren Domain-Registrar suchen unter",step2Title:"2. DNS-Einstellungen für {url} finden",step2Desc:'Dies kann "DNS-Verwaltung", "Erweiterte Einstellungen" oder Ähnliches heißen.',step3Title:"3. Fügen Sie die folgenden DNS-Einträge hinzu",step3Desc:'Name könnte "host", "hostname" oder "alias" heißen'},domain:{addingDomain:"Domain hinzufügen...",checkingResolvable:"Überprüfe Domainstatus...",cannotResolve:"{domain} kann nicht aufgelöst werden, überprüfen Sie Ihre DNS-Konfiguration",resolvedAddressError:"{domain} ist nicht korrekt mit einem CNAME-Eintrag konfiguriert, der auf {curDomain} verweist",invalidDNSReminder:"{error}. Sie können jedoch weiterhin die Domain hinzufügen, die automatische Zertifikatsgenerierung ist jedoch nicht verfügbar.",continueAdd:"Weiter hinzufügen",conflictTitle:"{domain} wurde bereits verwendet",conflictDescription:'{domain} wird bereits von "{title}" verwendet. Durch Bestätigen wird die Domain von "{from}" entfernt und zu "{to}" hinzugefügt.'},aigne:{modelAdapter:"Modellanbieter",modelName:"Modellname",desc:{modelAdapter:"Die Plattform, die einen AI Modellservice bietet",modelName:"Die spezifische Modellversion oder der Modellname",key:"Der {provider} API-Schlüssel wird für die Authentifizierung verwendet",baseUrl:"Geben Sie die URL Ihrer AIGNE Hub-Instanz ein (z. B. https://hub.aigne.io). Verwenden Sie Ihre eigene, wenn Sie selbst hosten.",accessKeyId:"Der eindeutige Schlüssel-ID zum Zugriff auf das Modell",secretAccessKey:"Der geheime Schlüssel zusammen mit der Access Key ID",docLink:"Offizielle Dokumentation für weitere Details und API-Referenz anzeigen"},failed:"AIGNE Konfiguration speichern fehlgeschlagen",authorizeAigneHub:"Mit {name} verbinden",baseUrl:"AIGNE Hub URL",disconnect:"Trennen",disconnectConfirm:"Sind Sie sicher, dass Sie die Verbindung mit AIGNE Hub trennen möchten? Dies entfernt die aktuelle KI-Konfiguration.",disconnectSuccess:"Erfolgreich von AIGNE Hub getrennt",disconnectFailed:"Verbindung zum AIGNE Hub konnte nicht getrennt werden",testConnection:"Testen Sie die {provider} Verbindung",invalidUrl:"{provider} URL ist ungültig",description:"Die aktuelle Konfiguration wird wirksam, wenn {name} ausgeführt wird. Blocklet muss gespeichert und neu gestartet werden, damit die Änderungen wirksam werden.",revokeUrlAuthTitle:"Ändern Sie die {url} bestätigen?",revokeUrlAuth:"Sind Sie sicher, dass Sie die {url} ändern möchten? Nach der Änderung ist Ihre Autorisierung ungültig und muss erneut autorisiert werden!",testSuccess:"Erfolgreich mit AIGNE Hub verbunden",check:"Prüfen",apiKeyNotAuthorized:"Der API-Schlüssel ist nicht autorisiert. Bitte klicken Sie auf die Schaltfläche Connect to AIGNE Hub, um ihn zu autorisieren",switchUser:"Benutzer wechseln",connectTimeOut:"Verbindung zu {provider} zeitüberschreitung, bitte später erneut versuchen",restart:{title:"Blocklet neu starten",connectedContent:"Ihr Blocklet ist derzeit mit {provider} verbunden. Die Konfiguration wird nach dem Neustart wirksam. Möchten Sie jetzt neu starten?",notConnectedContent:"Ihr Blocklet ist derzeit von {provider} getrennt. Die Konfiguration wird nach dem Neustart wirksam. Möchten Sie jetzt neu starten?",confirm:"Jetzt neu starten",cancel:"Später neu starten"},testFailed:"Konnte keine Verbindung zum AIGNE Hub herstellen. Bitte überprüfen Sie die URL oder Ihr Netzwerk.",addCredits:"Credits kaufen",transaction:"Transaktionen",connected:"Erfolgreich verbunden",account:"Kontoinformationen",pendingCredit:"Ausstehende Gebühren",infinite:"Unbegrenzt",config:"Config AIGNE Hub"}},notification:{title:"Benachrichtigungen",history:"Verlauf",channelSettings:"Kanaleinstellungen",empty:"Keine Aktivitäten bisher",viewAll:"Alle anzeigen",showRead:"Zeige Lesen",markAllAsRead:"Alle als gelesen markieren",markAsRead:"Als gelesen markieren",proceed:"Weitermachen",checkingForUpdates:"Suche nach Updates...",email:{enable:"Benachrichtigungen aktivieren",from:"E-Mail-Absender",host:"SMTP-Server-Host",port:"SMTP-Server-Port",user:"SMTP-Benutzername",secure:"Sichere Verbindung",password:"SMTP-Passwort",fromRequired:"Absender der E-Mail ist erforderlich",fromInvalid:"E-Mail-Absender ist ungültig",receiverRequired:"E-Mail-Empfänger ist erforderlich",receiverInvalid:"Empfänger der E-Mail ist ungültig",hostRequired:"SMTP Server-Host wird benötigt",hostInvalid:"Der SMTP-Server-Host ist ungültig",portRequired:"Der Port des SMTP-Servers ist erforderlich.",portInvalid:"Der SMTP-Server-Port ist ungültig. Der Port sollte zwischen 1 und 65535 liegen.",userRequired:"SMTP-Server-Benutzername ist erforderlich",passwordRequired:"SMTP-Server-Benutzerkennwort erforderlich",testSuccess:"Test-E-Mail erfolgreich gesendet",testFailed:"Test-E-Mail senden fehlgeschlagen",testReceiver:"E-Mail-Empfänger",testSendEmail:"Test E-Mail senden",inputTestReceiver:"Bitte geben Sie die E-Mail-Adresse des Testempfängers ein",disable:"E-Mail-Benachrichtigung abbestellen",disableDescription:"Nach dem Abmelden erhalten Sie keine E-Mail-Benachrichtigungen mehr. Um E-Mail-Benachrichtigungen zu erhalten, können Sie sich auf dieser Seite erneut anmelden.",unsubscribe:"Abmelden E-Mail-Benachrichtigung",unsubscribeDescription:"Nach der Abmeldung erhalten Sie keine weiteren E-Mail-Benachrichtigungen mehr.",subscribe:"Abonnieren",subscribeDescription:"Um E-Mail-Benachrichtigungen zu erhalten, können Sie es erneut auf der Einstellungsseite abonnieren.",companyName:"Firmenname",companyLink:"Firmenlink",companyAddress:"Firmenadresse",supportEmail:"Support-E-Mail",emailInvalid:"E-Mail ungültig",linkInvalid:"Ungültiger Link, muss mit http oder https beginnen",signature:"Signatur",signatureTooltip:"Die E-Mail-Signatur wird unten verwendet, um dem Empfänger wichtige Informationen über den Absender zu geben."},wallet:{description:"DID Wallet-Benachrichtigungen sind für alle Benutzer immer aktiviert."},webhooks:{description:"Benachrichtigungen über Webhooks sind für alle Benutzer immer aktiviert."},comingSoon:"Weitere Benachrichtigungskanäle befinden sich im Aufbau",unsubscribe:"Abmelden",unsubscribeSucceed:"Abmeldung erfolgreich",unsubscribeFailed:"Abmeldung fehlgeschlagen",unsubscribeTokenRequired:"Abmelde-Token ist erforderlich",unsubscribeTokenExpired:"Abmeldetoken ist abgelaufen",unsubscribeTokenInvalid:"Das Abonnement-Token ist ungültig",installComponentError:"Nicht gefunden deinstallierte Komponente {name}",installingComponent:"Installiere Komponente {name}",pushKit:{enable:"Benachrichtigungen aktivieren",endpoint:"PushKit-Endpunkt",endpointInvalid:"PushKit-Endpunkt ist eine ungültige URL",testSuccess:"Test PushKit-Versendung erfolgreich",testFailed:"Test PushKit senden fehlgeschlagen",testReceiver:"PushKit-Empfänger",testSend:"Test-Push-Kit senden",inputTestReceiver:"Bitte geben Sie den Test-Empfänger ein",receiverRequired:"PushKit-Empfänger ist erforderlich",pushPath:"Api-Pfad für Push-Kit (Standard /api/push)",did:"PushKit Blocklet DID",customOptions:"Benutzerdefinierte Optionen"},notificationDetails:"Benachrichtigungsdetails",receiver:"Empfänger",sendStatus:{success:"Gesendet",failed:"Fehlgeschlagen",sentTime:"Gesendet am: {date}",pending:"Ausstehend",reason:{enabled:"Benutzer hat {channel}-Benachrichtigung aktiviert",disabled:"Benutzer hat {channel} Benachrichtigung nicht aktiviert",unavailable:"Derzeitiger Blocklet hat {channel}-Benachrichtigung nicht konfiguriert",available:"Der aktuelle Blocklet hat {channel} Benachrichtigung konfiguriert",notSent:"Aktuelle Nachricht wurde nicht an {channel} gesendet",offline:"Benutzer ist offline"},count:"{count}",total:"Gesamt"},filter:"Filter",notificationPreview:"Benachrichtigungsvorschau",resend:"Erneut senden",resendLimit:"Sie können eine Benachrichtigung bis zu dreimal täglich erneut senden.",from:"Von",to:"Zu",body:"Körper",notificationTitle:"Titel",createdAt:"Erstellt am",status:"Status",system:"System",severity:"Schweregrad",config:"Konfigurationen",selectChannels:"Kanäle auswählen",selectChannelsTip:"Kanäle zum erneuten Senden auswählen",resendFailedOnly:"Nur an fehlgeschlagene Kanäle erneut senden",statistics:"Statistiken",allSender:"Alle Absender",allSeverity:"Alle Schweregrade",severityType:{info:"Info",success:"Erfolg",warning:"Warnung",error:"Fehler"},clear:"Löschen",allDone:"Fertig",filterType:{all:"Alle",unread:"Ungelesen"},viewMore:"Mehr anzeigen"},router:{routerSetting:"Domains & URLs",certSetting:"SSL-Zertifikate",defaultSite:"Standard",urlHelperText:"URLs, die nicht mit HTTP/HTTPS beginnen, gelten als relative Pfade",empty:"Klicke auf Aktionen, um die URL-Zuordnung einzurichten",healthy:{ok:"Blocklet oder Dienst läuft",error:"Blocklet oder Dienst läuft nicht oder ist nicht installiert"},service:{select:"Blocklet-Dienste auswählen (optional)",what:"Blocklet-Dienste sind Pipelines, die vor der Weiterleitung an die übergeordnete Blocklet-Anwendung ausgeführt werden."},nonProvider:{title:"Motorwechselwarnung",description:"Wenn Sie den Motor auf 'keiner' ändern, funktioniert Ihre aktuelle Seite möglicherweise nicht ordnungsgemäß, da der vorherige Motor gestoppt wird. Sind Sie sicher, dass Sie fortfahren möchten?",confirm:"Ich verstehe, fahre fort"},validation:{urlRequired:"URL wird benötigt",redirectCodeRequired:"Weiterleitungscode ist erforderlich",didRequired:"Blocklet ist erforderlich",pathPrefixTooLong:"Der URL-Präfix darf nicht länger als {length} Zeichen sein",pathPrefixCannotBeEmpty:"Der URL-Prefix darf nicht leer sein",domainRequired:"Server-Domäne ist erforderlich",invalidUrl:"Bitte geben Sie eine gültige URL ein",pathPrefixRequired:"URL-Präfix ist erforderlich",redirectUrlRequired:"Die Weiterleitungs-URL ist erforderlich",rewriteUrlRequired:"Die URL muss neu geschrieben werden"},domain:{addSite:"Website hinzufügen",validate:{emptyTip:"Die Website-Domäne darf nicht leer sein",suffixTip:"Die Website-Domain kann {suffix} nicht enthalten"},add:{title:"Domainnamen hinzufügen",description:"Bitte geben Sie einen gültigen Domainnamen an",confirm:"Hinzufügen",cancel:"Abbrechen",blocklet:"Blocklet auswählen",redirect:"Wohin soll der Verkehr umgeleitet werden?",port:"Auf welchem Port muss Ihr Anfrage-Handler hören?",portTip:"Dies ist der Standardwert für den Hauptport des Anforderungsverarbeitungsmoduls. Sie können dies anpassen",type:"Verkehrshandler",component:"Komponente auswählen",pageGroup:"Seite Gruppe",pageGroupTip:"Diese Komponente kann jede Gruppe von oben aufgeführten Seiten rendern. Leer lassen, um alle Seiten zu rendern."},update:{title:"Aktualisierung der Website-Domäne",label:"Website-Domain",description:"Bitte geben Sie eine gültige Website-Domain an"},setup:{tipStart:"Fügen Sie die DNS-Einträge für die Domain hinzu",tipEnd:"Gemäß den folgenden Richtlinien",recordType:"Rekordtyp",recordValue:"Aufnahme Wert"},verify:{ok:"Die Domainauflösung ist normal",notResolved:"Diese Domain ist weder aufgelöst noch erreichbar. Bitte überprüfen Sie Ihre DNS-Konfiguration."},https:{ok:"Diese Domain ist mit HTTPS aktiviert",bad:"Diese Domain hat https nicht aktiviert"},delete:{title:"Lösche Website",description:'Durch Bestätigung löschen Sie Ihre bestehende Website "{name}". Geben Sie "{name}" unten ein und wählen Sie Löschen, um die Änderung abzuschließen, oder wählen Sie Abbrechen, um Ihre Website beizubehalten.',confirm_desc:"Bitte geben Sie {name} zur Bestätigung ein"}},domainAlias:{nftDomain:"Automatische Konfiguration mit DID-Namen",showTipHint:"Wie konfiguriere ich die Auflösung des Domänennamens?",add:{title:"Zusätzliche Domain hinzufügen",domainDescription:"Bitte geben Sie einen gültigen Domainnamen an",forceTip:"Erzwinge Hinzufügen, wenn der Domainname bereits existiert",helperText:"Wenn eine HTTP- oder HTTPS-URL eingegeben wird, wird sie automatisch in einen Domainnamen umgewandelt.",isDidDomainError:"Diese Domain ist eine DID-Domäne. Bitte fügen Sie sie unter Verwendung der Methode zur automatischen Domänenkonfiguration hinzu.",tips:"Sie können einen bei DID Names oder einem anderen Anbieter erworbenen Domainnamen eingeben. Bei einer DID Domain benötigen Sie zur Fortsetzung den DID Domain NFT."},addCustomDomain:{name:"Benutzerdefinierte Domäne"},addDomainNFT:{showNFT:"Konfiguriere die Domain automatisch",tips:"Sie können eine bei DID Names gekaufte Domain eingeben. Wird eine DID-Domain erkannt, müssen Sie den DID-Domain-NFT vorlegen, um fortzufahren.",connect:{scan:"Verwenden Sie eine der folgenden Methoden, um {domain} mit {appName} zu verbinden",confirm:"Bestätigen Sie in Ihrem Konto",success:"Autorisierung erfolgreich",title:"DID-Namen mit {appName} verbinden"},buyTip:"DID-Namen übernehmen die Domain-Namen-Auflösung automatisch, keine manuelle Konfiguration erforderlich, und das Blocklet aktualisiert den Auflösungsdatensatz des Domain-Namens bei Bedarf automatisch. Wenn Sie noch kein DID Domain NFT besitzen,",buy:"DID-Domain kaufen",topLevelDidDomainHint:"Für DID-Domains wird eine eingegebene Top-Level-Domain (z. B. example.com) automatisch als www.example.com konfiguriert.",authorizeFailed:"Konnte die Domain-NFT-Info nicht abrufen, bitte versuchen Sie es erneut!"},delete:{title:"Löschen",description:'Nach dem Löschen von "{domain}" ist der Zugriff auf diesen Alias möglicherweise nicht mehr korrekt möglich.',confirmPlaceholder:'Bitte geben Sie "{domain}" ein, um zu löschen'},custom:"Benutzerdefinierte Domain",noCustom:"Keine benutzerdefinierte Domain",noCustomTip:"Keine benutzerdefinierte Domain ist mit Ihrer Website konfiguriert. Für erhöhte Sicherheit und ein besseres Benutzererlebnis empfehlen wir die Konfiguration Ihrer eigenen benutzerdefinierten Domain. Klicken Sie unten, um zu beginnen."},domainSecurity:{title:"Domain Sicherheit",cors:{title:"Erlaubte CORS-Domains",description:'Domänenliste, von denen aus Cross-Origin-Anfragen an {name} gesendet werden können, durch Kommas getrennt. Verwenden Sie "*", um jedem zu erlauben, was nicht empfohlen wird.',domainInvalid:"Bitte geben Sie eine gültige Liste von Domainnamen ein"}},rule:{add:{title:"URL-Zuordnung hinzufügen",confirm:"Hinzufügen",pathPrefix:"Was ist das URL-Präfix?",pathPrefixTip:"Wenn Sie das Präfix auf '/mein-präfix' setzen, werden alle Anfragen, die mit diesem Präfix beginnen, zum konfigurierten Blocklet weitergeleitet",blocklet:"Welcher Blocklet wird diese Anfragen bearbeiten?",port:"Welcher Port des Blocklet wird Anfragen bearbeiten?",portTip:"Dies ist standardmäßig der Hauptport von Blocklet. Wenn Blocklet auf mehreren Ports lauscht, können Sie dies anpassen.",responseType:"Antworttyp",responseBody:"Antwortinhalt",responseBodyTip:"Fügen Sie hier Ihren Antwortinhalt ein, der 4096 Zeichen nicht überschreiten sollte.",responseBodyRequired:"Der Antwortinhalt darf nicht leer sein"},delete:{title:"URL-Mapping löschen",description:'Durch Bestätigen werden Sie Ihre vorhandene URL-Mapping für "{name}" löschen. Geben Sie "{name}" in das Feld ein und wählen Sie Löschen, um die Änderung abzuschließen, oder wählen Sie Abbrechen, wenn Sie Ihr URL-Mapping beibehalten möchten.',confirm_desc:"Bitte geben Sie {name} ein, um zu löschen",cancel:"Abbrechen"},update:{title:"URL-Mapping aktualisieren",confirm:"Ja, Aktualisieren",cancel:"Abbrechen"}},cert:{name:"Zertifikatsname",domain:"Domain Name",action:"Handlung",commonName:"Gemeinsamer Name",boundDomains:"Domains",source:"Quelle",expired:"Abgelaufen",leftDays:"Tage übrig",issuedOn:"Ausgestellt am",expiryOn:"Ablaufdatum am",fingerprintAlg:"Fingerabdruckalgorithmus",validityPeriod:"Gültigkeitsdauer",matchedSites:"Übereinstimmende Websites",upload:"Manueller Upload",publicCertHelperText:"Öffentliche Zertifikate können heruntergeladen werden",nonPublicCertHelperText:"Nicht öffentliche Zertifikate können nicht heruntergeladen werden",protectedCertHelperText:"Geschützte Zertifikate können nicht bearbeitet werden",unprotectedCertHelperText:"Unsichere Zertifikate können bearbeitet werden",issuing:"Zertifikat wird erstellt",sourceTypes:{upload:"Manueller Upload",lets_encrypt:"Lass uns verschlüsseln"},table:{nodata:"Keine Daten"},delete:{title:"Zertifikat löschen",description:"Löschen des Zertifikats der Domain {domain} bestätigen? Das Löschen kann sich auf verwandte Dienste auswirken. Bitte bestätigen Sie, dass dies sicher ist, bevor Sie mit dem Löschen fortfahren.",confirm:"Bestätigen"},nginx:{title:"Zertifikat aktualisieren",titleAdd:"Zertifikat hinzufügen",pem:"SSL-Zertifikat-Datei",pemTip:'Bitte legen Sie Ihr Server-Zertifikat hier ab. Es sollte mit ".pem" oder ".crt" enden.',key:"Privater Schlüsseldatei",keyTip:'Bitte geben Sie hier Ihre Server-Private-Key-Datei ein. Sie sollte mit ".pem" oder ".key" enden.',confirm:"Speichern",cancel:"Abbrechen",invalidFile:"Sie haben eine ungültige Datei ausgewählt",empty:"Noch keine Datei ausgewählt",source:"Quelle",sourceTypes:{upload:"Manuelles Hochladen",lets_encrypt:"Lass uns verschlüsseln"}},detail:{title:"Zertifikatdetails"},genLetsEncryptCert:{title:"Generiere Let's Encrypt Zertifikat",dnsTip:"Bitte stellen Sie sicher, dass der Domänenname auf den aktuellen Blocklet-Server verweist.",description:"Das Hinzufügen eines Zertifikats erhöht die Sicherheit des Dienstes und der Blocklet Server erneuert das Zertifikat automatisch, bevor es abläuft."}},gateway:{reqLimit:{switchLabel:"Gleichzeitige Anfragen begrenzen für zuverlässige Leistung",rate:"Begrenze gleichzeitige Anfragen pro IP auf {rate} pro Sekunde (pro IP-Limit)",title:"Anfragelimitierung",global:"Begrenze gleichzeitige Anfragen an das Gateway auf {global} pro Sekunde (globale Grenze)",burstFactor:"Burstfaktor für die Ratenbegrenzung, angewendet auf globale und pro-IP-Limits (global: {global}, pro IP: {rate})",methods:"Gleichzeitige Anfragen pro IP für folgende Methoden beschränken",burstDelay:"Verzögerung bei Anfragen-Spitzen, die das Limit pro IP ({delay} Sekunden) überschreiten"},cacheEnabled:{switchLabel:"Gateway-Cache aktivieren, um die Leistung zu erhöhen",title:"Gateway-Cache"},blockPolicy:{switchLabel:"Anforderungsblockierung",addItem:"Artikel hinzufügen",blacklistDesc:"Anfragen von diesen IPs werden blockiert, um auf diesen Server und alle Blocklets zuzugreifen",inputPlaceholder:"Geben Sie die IP-Adresse, den CIDR-Bereich oder die URL ein",invalidItem:"Ungültige IP-Adresse, CIDR-Bereich oder URL",title:"Anfrage blockieren",autoBlocking:{switchLabel:"Blockiere schlechte Anfragen durch Echtzeiterkennung",windowSize:"Das Zeitfenster für die Zählung von Anfragen (Sekunden)",windowQuota:"Die maximale Anzahl von Anfragen (pro IP), die innerhalb des Zeitfensters erlaubt sind",blockDuration:"Die Dauer zur Sperrung des Benutzers nach IP, wenn das Kontingent innerhalb des Fensters überschritten wird (Sekunden)",statusCodes:"Die Statuscodes, die überprüft werden müssen"}},proxyPolicy:{switchLabel:"Hinter Proxies laufen",trustRecursive:"Vertrauen Sie Proxies rekursiv",trustRecursiveDesc:"Verwende die linkeste IP in der X-Forwarded-For Kette",trustedProxies:"Vertrauenswürdige Proxies",trustedProxiesDesc:"Anfragen von diesen IPs werden vertraut, um die tatsächliche Client-IP zu erhalten",realIpHeaderLabel:"Client-IP-Header",realIpHeaderDesc:"Wenn der Blocklet-Server hinter Proxies wie CloudFront läuft, können Sie hier die Header-IP des Clients festlegen.",addItem:"Artikel hinzufügen",inputPlaceholder:"Geben Sie die IP-Adresse, CIDR-Bereich ein",invalidItem:"Ungültige IP-Adresse, CIDR-Bereich",title:"Proxy-Richtlinie"},wafPolicy:{switchLabel:"Erkennen und blockieren Sie schlechte Anfragen mit ModSecurity",modeDesc:"Der Modus von modsecurity (modsecurity Modul ist erforderlich)",mode:{detectOnly:"Nur erkennen (wird Anfragen nicht blockieren)",on:"An (wird Anfragen blockieren)"},logLevelDesc:"Die Protokollebene für ModSecurity (0-9), 0 bedeutet Audit-Log deaktivieren",inboundAnomalyScoreThresholdDesc:"Der Eingangs-Anomalie-Score-Schwellenwert (1-100), niedrigerer Wert bedeutet strenger",outboundAnomalyScoreThresholdDesc:"Der ausgehende Anomaliewertschwellenwert (1-100), niedriger Wert bedeutet strikter",docDesc:"Sieh dir die Dokumentation an, um zu erfahren, wie man modsecurity einrichtet",title:"Web-Anwendungs-Firewall"}}},noMatch:{desc:"Wir können die von Ihnen gesuchte Seite nicht finden"},health:{connectionErrorTip:"Blocklet-Server kann keine Verbindung zum Netzwerk herstellen. Bitte überprüfen Sie, ob der Blocklet-Server gestoppt wurde oder es ein Netzwerkproblem gibt.",connectionRecoveryTip:"Die Blocklet Server-Konnektivität konnte wiederhergestellt werden",connectionStoppedTip:"Der Blocklet Server wurde gestoppt",wrongAccessUrlTip:"Die Blocklet Server-Zugriffsadresse ist falsch. Bitte verwenden Sie die richtige Zugriffsadresse."},debug:{title:"Ihr Blocklet Server ist aktiv und läuft!"},team:{invite:{action:"Neu einladen",setting:"Einladungseinstellungen",enabled:"Deaktivieren Sie diese Einstellung, um neue Benutzereinladungen nur auf Eigentümer/Administrator zu beschränken",disabled:"Aktivieren Sie diese Einstellung, um jedem Benutzer zu erlauben, neue Benutzer einzuladen",inviter:"Eingeladen von"},add:"Neu hinzufügen",member:{name:"Name",passport:"Reisepass",passports:"Pässe",lastLogin:"Letzter Login",lastLoginIp:"Letzte Login-IP",source:"Registerquelle",source_derived:"Abgeleitet von OAuth",source_wallet:"DID Brieftasche",filter:"Filtern nach",blockAccess:"Login verbieten",blockAccessDescription:"Der Benutzer wird sich nicht mit dieser Anwendung verbinden können",allowAccess:"Anmeldung erlauben",allowAccessDescription:"Der Benutzer kann sich mit dieser Anwendung verbinden",updateRole:"Rolle aktualisieren",removeUser:"Lösche Benutzer",removeUserDescription:"Benutzer '{name}' wirklich löschen?",revokePassport:"Reisepass zurücknehmen",revokePassportDescription:"Sobald der Reisepass widerrufen wurde, kann der Inhaber ihn nicht erneut zur Anmeldung verwenden. Sind Sie sicher, dass Sie fortfahren möchten?",enablePassport:"Aktiviere den Reisepass",enablePassportDescription:"Sobald der annullierte Reisepass wieder aktiviert ist, kann der Passinhaber ihn erneut verwenden, um sich einzuloggen. Sind Sie sicher, dass Sie fortfahren möchten?",passportPermissionTitle:"Der Reisepass hat folgende Berechtigungen:",search:"Suche Mitglied",onlyApprovedMember:"Nur genehmigte anzeigen",inviteDialog:{createInviteLink:"Generiere Einladungslink",createSuccessTip:"Der Einladungslink wurde erfolgreich erstellt. Klicken Sie zum Kopieren und Senden des Links an das eingeladene Mitglied. Beachten Sie bitte, dass dieser Einladungslink nicht wiederverwendet werden kann und am {expireDate} abläuft."},error:{passportEmpty:"Der Reisepass darf nicht leer sein"},connectedAccounts:"Verbundene Konten",connections:"Verbindungen",federated:"Federated",switch:{did:"Wechseln Sie DID",profile:"Profil wechseln",passport:"Reisepass wechseln"},settings:{notification:"Benachrichtigungen",email:"Sende mir eine E-Mail, wenn bestimmte Ereignisse eintreten",wallet:"Benachrichtigung an mein Wallet senden, wenn Ereignisse auftreten",phone:"Sende mir eine Textnachricht, wenn bestimmte Ereignisse auftreten",webhook:"Webhooks",add:"Neuen Webhook hinzufügen",url:"Benutzerdefinierte URL",slack:"Slack-Webhook",tested:"Testnachricht gesendet"},activeUserSessions:"Aktive Benutzersitzungen",forceLogout:"Erzwungenes Abmelden",forceLogoutDescription:"Bestätigen Sie die erzwungene Abmeldung dieses Benutzers?",openProfile:"Profil anzeigen",removeUserSuccess:"Benutzer erfolgreich entfernt",forceLogoutRemoveDescription:"Bestätigen Sie, um diesen Benutzer zwangsweise abzumelden (Alle Benutzersitzungen ebenfalls entfernen)?"},transferNode:{name:"Änderung des Eigentums",inviteDialog:{title:"Transfer Blocklet Server",tips:{progress:"Der Servertransfer muss vom Empfänger akzeptiert werden, um den Übertragungsvorgang abzuschließen. Sobald der Empfänger es akzeptiert hat, können Sie sich nicht erneut mit dem aktuellen Reisepass am Server anmelden.",newOwnerPermissions:"Der neue Eigentümer wird das Recht haben, alle Operationen wie Mitglieder, Pässe und Blocklets zu verwalten.",revoke:'Wenn Sie die Übertragungseinladung zurückziehen möchten, können Sie den Einladungslink auf der Seite "Team -> Mitglieder -> Einladen" löschen.'},createInviteLink:"Erzeugen Sie den Einladungslink",createSuccessTip:"Der Einladungslink wurde erfolgreich erstellt. Klicken Sie zum Kopieren und Senden des Links an das eingeladene Mitglied. Beachten Sie bitte, dass dieser Einladungslink nicht erneut verwendet werden kann und am {expireDate} abläuft."},delegateDialog:{title:"Autorisierung erforderlich",scan:"Verwenden Sie die folgenden Methoden, um den Server zur Übertragung des Server-Eigentums-NFTs zu autorisieren.",confirm:"Bestätigen Sie in Ihrem Account",success:"Autorisierung erfolgreich"}},transferApp:{name:"Übertragung des Eigentums",transferDialog:{title:"Übertragungsantrag",tips:{progress:"Die Anwendung muss vom Empfänger akzeptiert werden, um den Übertragungsvorgang abzuschließen. Sobald der Empfänger es akzeptiert hat, können Sie sich nicht erneut mit dem aktuellen Reisepass in der Anwendung anmelden.",newOwnerPermissions:"Der neue Eigentümer hat das Recht, alle Vorgänge wie Mitglieder, Pässe und Einstellungen zu verwalten."},createTransferLink:"Generieren Sie einen Überweisungslink",createSuccessTip1:'Der Transferlink wurde erfolgreich erstellt. Der Eingeladene muss <a style="color: rgb(29, 193, 199)" target="_blank" href="https://www.didwallet.io/">DID Wallet</a> verwenden, um das Eigentum an der App zu erhalten.',createSuccessTip2:"Bitte klicken Sie zum Kopieren und Senden des Links an das eingeladene Mitglied. Bitte beachten Sie, dass dieser Übertragungslink nicht wiederverwendet werden kann und am {expireDate} abläuft. Ihr Übertragungslink wird nur einmal angezeigt und kann nach dem Schließen dieses Dialogs nicht mehr angesehen werden.",createSuccessTip3:"Nach erfolgreichem Transfer wird die Anwendung automatisch neu gestartet, um die Änderungen wirksam werden zu lassen",link:"Transfer-Link",iKnow:"Ich habe den Link kopiert und gespeichert"},connectDialog:{title:"Autorisierung erforderlich",scan:"Verwenden Sie die folgenden Methoden, um die Anwendung zur Eigentumsübertragung zu autorisieren.",confirm:"Bestätigen Sie in Ihrem Konto",success:"Autorisierung erfolgreich"},receiveDialog:{title:"Empfange Anwendungseigentum",scan:"Verwenden Sie die folgenden Methoden, um die Anwendungsinhaberschaft zu erhalten.",confirm:"Bestätigen Sie in Ihrem Konto",success:"Eigentum erfolgreich empfangen"},successTitle:"Du bist der neue Besitzer dieser Anwendung",visitDashboard:"Besuche das Anwendungsdashboard",description:"Sie können die Eigentümerschaft Ihrer Anwendung auf eine andere Wallet oder eine andere Person übertragen."},permission:{create:{title:"Erstellen Sie eine Berechtigung",description:"Format: <Aktion>_<Ressource>"},delete:{title:"Löschen Sie die Berechtigung",description:"Löschen von {name} bestätigen?"},error:{actionEmpty:"Aktion kann nicht leer sein",resourceEmpty:"Die Ressource darf nicht leer sein",permissionTooLong:"Die Erlaubnis darf {length} Zeichen nicht überschreiten",descriptionTooLong:"Beschreibung darf nicht länger als {length} Zeichen sein"}},passport:{create:{title:"Erstellen Sie einen Reisepass",titleTip:"Der Titel kann nach der Erstellung nicht geändert werden, sollte innerhalb von 14 Zeichen empfohlen werden"},bind:{title:"Bindungsgenehmigung",roleTip:"Sie erhalten alle Berechtigungen des ausgewählten Reisepasses nach der Bindung.",permissionTip:"Sie erhalten die ausgewählten Berechtigungen nach der Bindung",transferLeftTitle:"Alle Berechtigungen",transferRightTitle:"Gewährte Berechtigungen"},delete:{title:"Lösche Reisepass",description:"Die Pässe, die vom Benutzer gehalten werden, verlieren alle Berechtigungen, nachdem sie gelöscht wurden. Sind Sie sicher, dass Sie fortfahren möchten?"},error:{titleEmpty:"Der Titel darf nicht leer sein",titleTooLong:"Der Titel darf maximal {length} Zeichen nicht überschreiten",descriptionEmpty:"Beschreibung darf nicht leer sein"},issuance:{pending:"Ausstehend",create:{title:"Generiere Link"},delete:{title:"Löschen Sie den Empfangslink",description:"Löschen von {link} bestätigen?"}},issue:"Reisepass ausstellen",disableIssuance:"Deaktiviere die Ausstellung von Pässen",enableIssuance:"Aktivieren Sie den Reisepassausstellung",disableIssuanceTip:'"Issue Passport", "Invite Member" und andere Operationen werden deaktiviert sein.',enableIssuanceTip:"Passe ausstellen",trustedPassportIssuers:"Vertrauenswürdige Reisepassaussteller",trustedIssuers:"Vertrauenswürdige Aussteller",trustedFactories:"Vertrauenswürdige NFT-Sammlungen",trustedFactoriesTip:"Verwalten Sie vertrauenswürdige NFT-Sammlungen, die zum Austausch gegen einen Reisepass verwendet werden können",searchFactoryAddress:"Suche Sammlung DID",configFactories:"Vertrauenswürdige NFT-Sammlungen konfigurieren",configFactoriesTip:"Ermöglichen Sie Benutzern, NFTs gegen Reisepässe auszutauschen",factoryAddress:"NFT-Sammlungsadresse",factory404:"NFT-Sammlung nicht gefunden",factoryAddressTip:"Die NFT-Sammlungsadresse muss auf der ArcBlock Main Chain existieren",role:"Passporttyp",ttl:"Passport-Ablaufpolitik",ttlNever:"Nie ablaufen",ttlMint:"Seit dem NFT-Kauf",ttlExchange:"Da Reisepass Austausch",ttlNeverTip:"Der Reisepass ist gültig bis auf Widerruf",ttlMintTip:"Der Reisepass bleibt gültig, solange der NFT gekauft wird, bis Sie ttl angegeben haben oder ihn widerrufen haben",ttlExchangeTip:"Der Reisepass ist gültig von dem Zeitpunkt an, an dem der Benutzer erfolgreich umgetauscht hat, bis Sie ttl oder widerrufen haben",ttlTip:'365d bedeutet 365 Tage, du kannst auch "30 Tage" oder "24h" verwenden',validUntil:"Gültig bis: {date}",externalPassport:"Externer Reisepass",notTrustedIssuerTip:"Der Reisepass kann nicht verwendet werden, da der Aussteller nicht in der Liste vertrauenswürdiger Aussteller steht",issuerDid:"Herausgeber-DID",addNodeToTrustedIssuers:"Fügen Sie den aktuellen Server als vertrauenswürdigen Reisepass-Aussteller hinzu",revoked:"Widerrufen",noPermission:"Keine Berechtigung, diese Aktion auszuführen",shouldNotDeleteCurrent:"Du kannst deinen derzeit verwendeten Pass nicht widerrufen",mappingRule:"Zuordnungsregel",defaultRule:"Standardregel",search:"Suche Reisepass",searchIssuerDid:"Suche Aussteller-DID",issueBy:"Problem von {name}",configColor:"Konfiguration Reisepassfarbe",configColorTip:"Passe die Farbe des Reisepasses an",color:"Passfarbe",description:"Verwenden Sie diesen Pass, um {teamName} als {title} zu verbinden",displayBuiltin:"Builtin",displayCustom:"Benutzerdefiniert",typesTip:"Passarten nach Komma getrennt anpassen",issuanceDate:"Ausstellungsdatum: {date}",sourceMaps:{recover:"Wiederhergestellt",issue:"Ausgegeben",invite:"Eingeladen",trusted:"Vertraut"},related:"Verwandte Pässe",operationLogs:"Betriebsprotokolle",owner:"Besitzer",status:"Status",statusMap:{valid:"Gültig",revoked:"Widerrufen",expired:"Abgelaufen"},view:"Pässe verwalten",trustedPassportIssuersTip:"Verwalten Sie vertrauenswürdige Passport-Aussteller, die zur Ausstellung von Pässen verwendet werden können",issuanceTime:"Ausstellungsdatum",relatedDescription:"Der aktuelle Reisepass leitet sich vom folgenden Reisepass ab",passportExpireTime:"Setze ein Ablaufdatum für den Passport",customExpireTime:"Benutzerdefinierte Ablaufzeit",customExpireTimeIsInvalid:"Benutzerdefinierte Ablaufzeit ist ungültig"},inviting:{link:"Einladungslink",inviter:"Einladen",delete:{title:"Lösche Einladungslink",description:"Löschen von {link} bestätigen?"},disabledTip:"Einladung ist nicht aktiviert"},whoCanAccess:{all:{title:"Für alle zugänglich"},owner:{title:"Nur Eigentümer"},invited:{title:"Nur eingeladene Benutzer"}},userFollowers:{follow:"Folgen",unfollow:"Nicht mehr folgen",followersOnly:"Nur für Follower sichtbar",followers:"Follower",following:"Folgend",emptyFollowing:"Du folgst noch keinen Nutzern.",emptyFollowers:"Noch keine Follower",title:"Folgen",invitees:"Eingeladene",emptyInvitees:"Du hast noch niemanden eingeladen."},orgs:{explain:"Ermöglicht es Benutzern, Organisationen zu erstellen und beizutreten, Rollen zuzuweisen und Ressourcen zu verwalten.",description:"Beschreibung",deleteConfirm:"Löschen von {name} bestätigen?",members:"Mitglieder",myCreated:"Meine Erstellten",myJoined:"Meine Beigetretenen",myCreatedEmpty:"Sie haben noch keine Organisationen erstellt.",myJoinedEmpty:"Du bist noch keiner Organisation beigetreten.",deleteConfirmDescription:"Das Löschen dieser Organisation entfernt alle damit verbundenen Rollen und Ressourcen. Benutzer bleiben im System, verlieren jedoch ihre Rollen in dieser Organisation. Diese Aktion kann nicht rückgängig gemacht werden.",active:"Aktiv",deleteOrg:"Aktuelle Organisation entfernen",invitedAt:"Eingeladen um: {time}",joinedAt:"Beigetreten am: {time}",createNew:"Neue Organisation erstellen",viewAll:"Alle Organisationen anzeigen",validate:{nameEmpty:"Name darf nicht leer sein",nameTooLong:"Der Name darf {length} Zeichen nicht überschreiten",descriptionTooLong:"Beschreibung darf {length} Zeichen nicht überschreiten"},mutate:{title:"{mode} Organisation",name:"Organisationsname",createSuccess:"Organisation erfolgreich erstellt",updateSuccess:"Organisation erfolgreich aktualisiert",orgNotEnabled:"Organisation ist nicht aktiviert",maxMemberPerOrg:"Die Organisation kann bis zu {maxMemberPerOrg} Mitglieder einladen.",maxOrgPerUser:"Sie können bis zu {maxOrgPerUser} Organisationen erstellen"},invite:{chooseUsersToInvite:"Benutzer zum Einladen auswählen",success:"Einladung an Benutzer gesendet",pleaseSelectUsers:"Bitte Benutzer auswählen",pleaseSelectRole:"Bitte Rolle auswählen",inviteExternalUsers:"Externe Benutzer einladen",failed:"{count} Benutzer Einladung fehlgeschlagen, bitte später erneut versuchen",remove:"Benutzer entfernen",removeSuccess:"Benutzer erfolgreich entfernt",limit:"Limit",limitTip:"Org-Mitglieder und Orgs pro Benutzer limitieren.",maxMembers:"Maximale Mitglieder pro Organisation",maxOrgs:"Max orgs pro Benutzer",maxMembersTip:"Die maximale Anzahl der Benutzer, die für diese Organisation eingeladen werden können",inviteLinkSendToEmail:"Einladungslink wurde an die E-Mail ({email}) gesendet, bitte überprüfen",enterEmailAddress:"Bitte E-Mail-Adresse eingeben",inviteTitle:"Benutzer einladen, {orgName} beizutreten"},member:{removeMemberConfirm:"Entfernen von {name} bestätigen?",removeMemberConfirmDescription:"Nach Entfernung verliert der Benutzer die Rollen und Berechtigungen in der Organisation. Diese Aktion kann nicht rückgängig gemacht werden.",removeInvitingMember:"Einladung für {name} bestätigen oder ablehnen?",removeInvitingMemberDescription:"Nach der Entfernung kann der Benutzer der Organisation nicht wieder beitreten und muss erneut eingeladen werden. Diese Aktion kann nicht rückgängig gemacht werden."}}},launcher:{provider:"Anbieter",adminUrl:"URL"},session:{blockAccess:"Du wurdest von diesem Server blockiert"},launchBlocklet:{appInfo:"Anwendungsinformationen",appInfoDesc:"Bestätigen Sie die Antragsinformationen",author:"Anwendungsautor: {author}",setup:"Setup-Blocklet",redirect:"Weiterleitung",alreadyRunning:"Anwendung {name} läuft bereits auf diesem Blocklet Server",alreadyInstalled:"Die Anwendung {name} ist bereits auf diesem Blocklet Server installiert.",alreadyExists:"Diese Anwendung existiert bereits, Umleitung...",purchased:"Bereits gekauft",purchase:"Kauf",nextStep:"Nächster Schritt",agreement:"Lizenzvereinbarung",agreeAll:"Zustimmen und Fortfahren",installing:"Installiere {appName} auf {serverName}. Es kann mehrere Minuten dauern. Bitte bleiben Sie dran...",redirecting:"{appName} wurde erfolgreich installiert, jetzt wird gestartet...",start:"Starten",launch:"Installiere Blocklet auf Server",launchSuccess:"{appName} wurde erfolgreich gestartet!",installSuccess:"Blocklet wurde erfolgreich auf {serverName} installiert und gestartet",openInRegistry:"Ansehen im Blocklet Store",subTitle:"Bereit, Blocklet {appName} auf {serverName} zu installieren",installingSubTitle:"{appName} wird installiert",access:"Öffne die Anwendung",viewApplication:"Bewerbung anzeigen",newVersion:"Neue Version",newVersionDesc:"Die Anwendung existiert bereits, aber die aktuelle Version kann aktualisiert werden",upgradeNow:"Jetzt upgraden",later:"Später",introduction:"Einführung",welcome:"Willkommen beim Blocklet Startassistenten",accept:"Ich stimme den Blocklet-Endbenutzer-Lizenzbedingungen zu",license:"Anwendungslizenz",next:"Stimme den EULA zu und fahre fort",purchaseApp:"Kaufen Sie Blocklet",setupAppDesc:"Initialisiere deinen Blocklet",launched:"Vollständig",confirmInstall:"Bestätige Installation",dialog:{title:"Werden Sie App-Besitzer",nftFreeDescription:"Bitte präsentieren Sie den App-Space-NFT und erstellen Sie ein App-Konto, um fortzufahren.",nftPaidDescription:"Bitte präsentieren Sie den App-Space-NFT und den App-Kauf-NFT, um fortzufahren",freeDescription:"Bitte erstellen Sie ein App-Konto, um fortzufahren",paidDescription:"Bitte präsentiere den App-Kauf-NFT und erstelle ein App-Konto, um fortzufahren.",confirm:"Bestätigen Sie in Ihrem Konto",success:"Autorisierung erfolgreich",authorizationTimeout:"Autorisierungstimeout"},waiting:{verifying:"Überprüfung der App-Metadaten ...",downloading:"App-Bundle wird heruntergeladen...",downloadingComponent:"Herunterladen von {name}",extractingComponent:"Extrahieren von {name}",extracting:"Extrahiere App Bundle...",installing:"Installiere App-Komponenten...",installed:"Installiert",starting:"Die App wird gestartet...",done:"Ihre App startet...",parsing:"App-Metadaten werden analysiert...",initializing:"App-Konfiguration wird initialisiert...",initializingOwner:"App-Besitzer wird initialisiert...",creatingSecurityRules:"Standard-Sicherheitsregeln werden erstellt...",assigningDomain:"Standarddomain zuweisen...",waitingForDomain:"Warte auf die Übernahme der Standarddomäne..."},error:{loadMetaFailed:"App-Informationen konnten nicht geladen werden",appMetaNotFound:"Keine Informationen für diese App gefunden",downloadFailed:"Der App-Download ist fehlgeschlagen. Bitte versuche es erneut.",installFailed:"Die App konnte nicht installiert werden, bitte versuche es erneut",startFailed:"Fehler beim Starten der App, bitte versuche es erneut",launchFailed:"Die App konnte nicht gestartet werden, bitte versuchen Sie es erneut",installedButStopped:"Die App wurde erfolgreich installiert, kann jedoch nicht gestartet werden. Sie können sie manuell starten, nachdem Sie die blockierenden Probleme behoben haben.",installedButError:"Die App wurde erfolgreich installiert, konnte jedoch nicht gestartet werden",restoreFailed:"Fehler beim Wiederherstellen der App, bitte versuchen Sie es erneut",resourceBlocklet:"Dieses Blocklet kann nicht direkt gestartet werden. Du kannst es aber einer bestehenden Anwendung hinzufügen."},steps:{introduction:"Einführung",installApp:"Installiere Anwendung",purchaseSpace:"Kaufe Platz",prepareSpace:"Bereite den Weltraum vor"},installRelatedComponents:"Installiere verwandte Blocklets",canNotInstall:"Kann nicht installieren",dockerBlockletCantInstall:"Kann Blocklet nicht installieren, da der Blocklet-Server Docker oder das Docker-Netzwerk nicht aktiviert hat",nav:{myApps:"Meine Apps",viewMyApps:"Meine Apps ansehen"},withoutWallet:"DID Wallet Verbindung überspringen",nwFailed:"Workflow konnte nicht abgerufen werden.",alreadyConsumed:"Die Startsitzung wurde verbraucht",redirectToLauncherBlocklet:"Weiterleitung zu Launcher Blocklet"},issuePassport:{title:"Reisepass empfangen",description:"Verwenden Sie die folgenden Methoden, um den von {name} ausgestellten Pass zu erhalten",dialog:{scan:"Verwenden Sie die folgenden Methoden, um den Reisepass zu beantragen",confirm:"Bestätigen Sie in Ihrem Konto",success:"Der Reisepass wurde erfolgreich zu Ihrer Brieftasche hinzugefügt",loginWithPassport:"Verbinden Sie sich mit diesem Reisepass",autoClose:"Die Seite schließt automatisch in {seconds}s",autoJump:"Die Seite wird in {seconds}s automatisch weitergeleitet."}},lostPassport:{title:"Verlorenen Pass",description:"Der Besitzer von {name} kann den Pass mit folgenden Methoden abrufen. Mitglieder kontaktieren bitte den Besitzer zur Neuausstellung des Passes.",return:"Abbruch des Abruf Vorgangs, Rückkehr zur Startseite",receivePassport:"Empfange den Reisepass",recoverDialog:{title:"Reisepass wiederherstellen",scan:"Verwenden Sie die folgenden Methoden, um Ihren Reisepass abzurufen",confirm:"Bestätigen Sie auf Ihrer DID Wallet",success:"Erfolgreich abgerufen"},receiveDialog:{title:"Reisepass erhalten",scan:"Verwenden Sie die folgenden Methoden, um den Reisepass zu erhalten",confirm:"Bestätigen Sie in Ihrer DID Wallet",success:"Erfolgreich empfangen"},recoverPassport:"Pass wiederherstellen"},invite:{message:"{name} lädt Sie ein, {role} von {dapp} zu sein",success:"Sie haben erfolgreich an {dapp} teilgenommen",receive:"Empfange mit",validUntil:"Gültig bis:",viewPermission:"Ansichtsberechtigung",emptyPermission:"Leere Berechtigung",open:"Öffnen",description:{step1:"Lade {wallet} herunter und richte es ein",step2:"Klicken Sie auf die obige Schaltfläche, um den Reisepass zu erhalten",step3:"Einloggen in {dapp} mit erhaltenem Reisepass"},transferNFTDialog:{title:"Akzeptieren Sie Blocklet Server {name}",scan:"Verbinden Sie den Launcher, um den Empfang des Blocklet-Servers abzuschließen.",confirm:"Überprüfen Sie diese Operation in Ihrer DID-Brieftasche",success:"Erfolgreich verbunden, warten auf Bestätigung des Serverempfangs"}},receive:{dialog:{title:"Pass erhalten",scan:"Nach Erhalt des Passes können Sie sich mit diesem beim Anmelden in der Anwendung verwenden.",confirm:"Bestätigen Sie in Ihrem Konto",success:"Sie sind erfolgreich verbunden",scanWithDid:"Bitte verwenden Sie das {did} Konto, um diesen Pass zu erhalten. Nach Erhalt des Passes können Sie sich mit dem Pass in der Anwendung anmelden."}},navigation:{navigation:"Navigation",actionFailed:"Aktion fehlgeschlagen",form:{themeConfig:"Theme Configuration",contentConfig:"Content Configuration",title:"Titel",titlePlaceholder:"Bitte geben Sie den Navigationstitel ein",titleTooLong:"Die Titellänge sollte kleiner sein als {len}",description:"Beschreibung",descriptionPlaceholder:"Bitte geben Sie die Navigationbeschreibung ein",descriptionTooLong:"Die Beschreibungslänge sollte kleiner sein als {len}",icon:"Standard-Symbol",iconPlaceholder:"Bitte ein Symbol auswählen",invalidIcon:"Symbol ist ungültig",findMoreIcon:"Finde mehr Symbole",link:"Link",linkPlaceholder:"Bitte geben Sie den Navigationslink ein",invalidLink:"Der Link ist ungültig",component:"Komponente",componentPlaceholder:"Bitte wähle das Navigationskomponente aus",role:"Rolle",rolePlaceholder:"Bitte wählen Sie die Navigationsrolle",locale:"Sprachumgebung",localePlaceholder:"Bitte geben Sie die gewünschte Lokalisierung hinzu",localeExists:"{value} existiert bereits",activeIcon:"Aktives Symbol",activeColor:"Aktive Farbe",color:"Standardfarbe",colorPlaceholder:"z. B. #FF0000",invalidColor:"Ungültige Farbe",searchIcons:"Suchen Sie nach einem Symbol",searchIconsPlaceholder:"Beispiel: mdi:home"},action:{add:"Füge Navigation hinzu",addSub:"Unternavigation hinzufügen",edit:"Navigation bearbeiten",hide:"Navigation ausblenden",show:"Navigationsleiste anzeigen",del:"Navigation löschen",new:"Neu",noAddSub:"Deinstallierte Komponente kann keine Unter-Navigation hinzufügen",noEdit:"Deinstallierte Komponente kann nicht bearbeitet werden",noDel:"Das Löschen der integrierten Navigation ist nicht zulässig",reset:"Zurücksetzen",restConfirmTitle:"Standardnavigation für {section} zurücksetzen?",restConfirmDesc:"Ihre benutzerdefinierte Navigation wird gelöscht und auf die Standardelemente zurückgesetzt.",resetSuccessful:"Reset erfolgreich",delTabBarTitle:"Möchten Sie diese Navigation löschen?",delTabBarDesc:"Nach dem Löschen wird die Navigation aus der Navigationleiste entfernt."},system:"System",services:"Dienste",access:"Zugriff",members:"Mitglieder",passport:"Pass",analytics:"Analytics",dashboard:"Dashboard",studio:"Blocklet Studio",aigne:"KI-Verbindungen",blockletService:"Blocklet Dienst",didConnect:"Identität & Zugriff",didSpaces:"Speicher & Backup",website:"Website Studio",notification:"Benachrichtigungszentrale",operations:"Beobachtbarkeit",integration:"Integrationen",developer:"Entwickler",overviewDesc:"Überwachen Sie die App-Gesundheit und Details, und installieren, starten oder entfernen Sie Blocklets einfach an einem Ort.",didConnectDesc:"Fügen Sie Teammitglieder hinzu, legen Sie Anmeldeoptionen fest und verwalten Sie den sicheren Zugriff für reibungslose Zusammenarbeit.",aigneDesc:'Konfigurieren Sie KI-bezogene Verbindungen für Ihr blocklet, einschließlich <a href="{aigneHubUrl}" target="_blank">AIGNE Hub</a> und <a href="{mcpUrl}" target="_blank">MCP-kompatible Server</a>.',websiteDesc:"Verwalten Sie die Domain, passen Sie das Theme an, verfeinern Sie das Branding und passen Sie die Navigation für ein einzigartiges Site-Design an.",operationsDesc:"Analysen anzeigen, Aktivitätsprotokolle prüfen, Warnungen erhalten und erweiterte Einstellungen nach Bedarf anpassen.",integrationsDesc:"Verknüpfen Sie externe Dienste über Webhooks, Zugriffsschlüssel und MCP-Server, um die App-Funktionen zu erweitern.",developersDesc:"Verwenden Sie Protokolle, Leistungsüberwachung und Dokumentation, um Ihre App zu erstellen, zu debuggen und zu optimieren.",didSpacesDesc:"Speichern und sichern Sie Ihre Blocklet-App-Daten sicher, um zuverlässigen Schutz und einfache Wiederherstellung zu gewährleisten.",publishDesc:"Veröffentlichen Sie Ihre App in Stores oder teilen Sie sie über Links, damit mehr Menschen sie nutzen können."},storage:{spaces:{title:"DID Spaces",tips:"Tipps",label:"Geben Sie den DID Spaces Gateway ein",connected:{title:"Verbundene DID Spaces",tag:"Verbunden"},connectedWithName:"Sie haben sich erfolgreich mit {name} verbunden",addedWithName:"Du hast erfolgreich {name} hinzugefügt",connects:"Verbinden",reconnect:"Verbinde erneut",addressCannotEmpty:"Die Adresse darf nicht leer sein",addressNotValid:"{url} ist keine gültige Adresse",authorize:{title:"Verbinde {appName} mit DID Spaces",scan:"Verwenden Sie die folgenden Methoden, um der App {appName} die Verbindung zu DID Spaces zu ermöglichen",success:"Verbindung erfolgreich hergestellt"},provideNFT:{title:"Bitte zeige die DID Spaces NFT für {appName}",scan:"Verwenden Sie die folgenden Methoden, um der App {appName} die Anzeige von DID Space NFT zu ermöglichen",success:"Erfolgreich verbunden"},backup:{title:"Sicherungskopie",records:"Sicherungsdatensätze",without:"Ohne Backup",succeeded:"Sicherung erfolgreich",failed:"Sicherung fehlgeschlagen",lastBackup:"Letzter Backup-Zeitpunkt",lastBackupTip:'Es ist {time} her, seit Ihrem letzten erfolgreichen Backup. Bitte überprüfen Sie Ihre Backup-Einstellungen im Reiter "DID Spaces".',noBackup:"Kein Backup",noBackupTip:"Noch keine Sicherung erstellt. Wir empfehlen regelmäßige Sicherungen zum Schutz Ihrer Daten und Einstellungen.",pending:"Sicherung läuft",timeout:"Backup-Timeout"},autoBackup:{title:"Auto-Backup",enabled:"Automatisches Backup ist aktiviert",disabled:"Die automatische Sicherung ist ausgeschaltet"},autoCheckUpdate:{title:"Automatische Benachrichtigung über neue Version überprüfen",enabled:"Automatisches Überprüfen auf neue Version ist aktiviert",disabled:"Automatische Überprüfung auf neue Version ist deaktiviert"},backupSuccessfully:"Backup erfolgreich durchgeführt",restore:"Wiederherstellen",restoreSuccessfully:"Erfolgreich wiederhergestellt",gateway:{title:"Gateway",select:"Wähle einen DID-Space aus",add:{title:"DID Spaces hinzufügen",label:"Geben Sie die URL der DID Spaces ein",failed:"Fehler beim Hinzufügen von DID Spaces",invalidUrl:"Ungültige DID-Spaces-Gateway-URL",duplicate:"{name} ist bereits mit diesem Blocklet verbunden"},delete:{title:"Trennen",succeeded:"Erfolgreich getrennt von DID Spaces {name}",failed:"Fehler beim Trennen von Gateway",failedForSelected:"Kann den ausgewählten DID-Space nicht trennen",descForBackup:`Nach dem Trennen von {name} können Sie Blocklet nicht mehr auf dieses DID Space sichern. Sind Sie sicher, dass Sie trennen möchten?
|
|
6
6
|
Sie können die Sicherungsoperationen wiederherstellen, indem Sie sich erneut mit {name} verbinden.`,descForStorage:`Nach dem Trennen von {name} können Sie Blocklet nicht mehr auf dieses DID Space sichern. Sind Sie sicher, dass Sie trennen möchten?
|
|
7
|
-
Sie können die Sicherungsoperationen wiederherstellen, indem Sie sich erneut mit {name} verbinden.`},connect:{title:"Verbinde DID Spaces",add:"Verbinde dich jetzt mit DID Spaces",addTips:"Sie sind noch nicht mit einem DID Space verbunden",switch:"Wechseln Sie DID Spaces",switchTips:"Sie sind mit {name} verbunden",connected:"Verbunden"},switch:{failedForMismatchSpace:"Bitte mit dem richtigen DID Space {name} verbinden"},connectTo:"Verbinde mit DID Spaces"},strategy:{title:"Backup-Strategie",autoBackup:"Auto-Backup",backupNow:"Sichern Sie jetzt",viewBackupFiles:"Backup-Dateien anzeigen"},progress:{title:"Backup-Fortschritt"},record:{title:"Sicherungsaufzeichnungen",emptyData:"Keine Einträge"},notYet:"Es gibt noch kein Backup in Arbeit...",connect:{now:"Jetzt verbinden",title:"Mit DID Spaces verbinden",provider:"Stellen Sie Ihren DID Space bereit, um mit der Sicherung zu beginnen",providerForStorage:"Stellen Sie Ihren DID Space zur Datenspeicherung bereit",useWallet:"Mit DID Wallet verbinden",useWalletReconnect:"Mit DID Wallet erneut verbinden",useSpaceGateway:"Über DID Space Gateway verbinden",useSpaceGatewayReconnect:"Erneut über DID Space Gateway verbinden",switchToSpace:"Zu DID Space wechseln",switchToSpaceSucceeded:"Zu DID Space {name} gewechselt",succeeded:"Erfolgreich mit DID Space verbunden",disconnect:"Verbindung trennen",abortBlockletBackup:"Backup abbrechen"},disconnected:{tag:"Getrennt",reconnectNow:"Verbinde jetzt erneut"}},appLevel:{title:"Anwendungsebene speichern",description:"Alle Daten, die von der Anwendung generiert werden, werden in diesem DID Space gespeichert"}},log:{lastDays:{1:"Letzter 1 Tag",7:"Letzte 1 Woche"}},oauth:{auth0:{},github:{},google:{},apple:{},authorize:"OAuth-Autorisierung",client:{tab:"OAuth-Apps",name:"App-Name",clientId:"Client ID",clientSecret:"Client Secret",scope:"Umfang",redirectUris:"Weiterleitungs-URIs",grantTypes:"Grant Types",responseTypes:"Antworttypen",tokenEndpointAuthMethod:"Token-Endpoint-Auth-Methode",actions:"Aktionen",grantResponse:"Genehmigung & Antwort",metaContact:"Meta & Kontakt",clientUri:"Client-URI",logoUri:"Logo-URI",contacts:"Kontakte",tosUri:"Nutzungsbedingungen URL",policyUri:"Richtlinien-URI",jwksSoftware:"JWKS & Software",jwksUri:"JWKS URI",jwks:"JWKS",softwareId:"Software-ID",softwareVersion:"Softwareversion",clientSecretExpiresAt:"Client Secret läuft ab um",clientIdIssuedAt:"Client-ID Ausgestellt am",oauthAppDetails:"OAuth-App-Details",oauthEndpoints:"OAuth-Endpunkte",authorizationEndpoint:"Autorisierungs-Endpunkt",tokenEndpoint:"Token-Endpunkt",userinfoEndpoint:"Benutzerinfo-Endpunkt",registrationEndpoint:"Registrierungs-Endpunkt",endSessionEndpoint:"Sitzungsende-Endpunkt",validate:{clientName:"App-Name ist erforderlich",clientNameMinLength:"App-Name muss mindestens 3 Zeichen lang sein",clientUri:"Homepage-URL erforderlich",clientUriInvalid:"Bitte geben Sie eine gültige URL ein, die mit http:// oder https:// beginnt",redirectUris:"Autorisierungs-Callback-URL erforderlich",redirectUrisInvalid:"Bitte geben Sie gültige URLs ein, die mit http:// oder https:// beginnen",contacts:"Bitte geben Sie gültige E-Mail-Adressen ein, getrennt durch Kommas",tosUri:"URL der Nutzungsbedingungen erforderlich",tosUriInvalid:"Bitte geben Sie eine gültige URL ein",policyUri:"Pflichtangabe: URL der Richtlinie",policyUriInvalid:"Bitte geben Sie eine gültige URL ein",jwksUri:"JWKS URI erforderlich",jwksUriInvalid:"Bitte geben Sie eine gültige URL ein",jwks:"JWKS erforderlich",jwksInvalid:"Bitte geben Sie einen gültigen JWKS ein"},input:{clientName:"App-Name",clientNamePlaceholder:"Etwas, das Benutzer erkennen und vertrauen",clientUri:"Homepage-URL",clientUriPlaceholder:"https://your-app.com",redirectUris:"Autorisierungs-Callback-URL",redirectUrisPlaceholder:"https://your-app.com/callback",contacts:"Kontakt-E-Mails",contactsPlaceholder:"admin@your-app.com, support@your-app.com",permissions:"Wähle die benötigten Berechtigungen",tosUri:"Nutzungsbedingungen URL",tosUriPlaceholder:"https://your-app.com/terms",policyUri:"Richtlinien-URL",policyUriPlaceholder:"https://your-app.com/policy",jwksUri:"JWKS URI",jwksUriPlaceholder:"https://your-app.com/jwks",jwks:"JWKS",jwksPlaceholder:"JSON Web Key Set",expireTime:"Setzen Sie ein Ablaufdatum für das Client-Secret für bessere Sicherheit"},helperText:{clientName:"Etwas, das Benutzer kennen und vertrauen.",clientUri:"Die vollständige URL zu Ihrer Anwendungs-Homepage",redirectUris:"Die Callback-URL Ihrer Anwendung.",contacts:"Die E-Mail-Adresse der verantwortlichen Person für die Anwendung.",tosUri:"Die URL zu den Nutzungsbedingungen Ihrer Anwendung.",policyUri:"Die URL zur Datenschutzrichtlinie Ihrer Anwendung.",read:"Lesen Sie unsere",document:"OAuth-Dokumentation",more:"Weitere Informationen."},delete:{title:"OAuth-Client löschen",description:"Sind Sie sicher, dass Sie diesen {clientName} OAuth Client löschen möchten?"},register:"Neue OAuth-App erstellen",requiredInformation:"Benötigte Informationen",optionalInformation:"Optionale Informationen",registerButton:"Erstellen",logo:"Logo",openRegistration:"Offene Registrierung",openidConfiguration:"OpenID-Konfiguration",createUser:"Erstellt von",update:"OAuth-App aktualisieren",listTitle:"Aktiviere sicheren Drittanbieterzugriff mit OAuth Apps",tooltipTitle:"Autorisieren Sie externe Anwendungen mit Industriestandardprotokollen über den integrierten OAuth-Server Ihrer App. Ermöglichen Sie Benutzern sichere, nahtlose Authentifizierung und delegierte Zugriffssteuerung.",empty:"Keine Daten hinzugefügt"},twitter:{}},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"Abgelaufen"},loadFailed:"Wiederholen!"},desktop:{tips:{success:"Das Abonnement wird nach {validity} ablaufen",warning:"Das Abonnement läuft nach {validity} ab",error:"Abonnement abgelaufen"},loading:"Abonnement laden...",loadFailed:"Fehler beim Laden der Abonnementinformationen, bitte erneut versuchen!",nextInvoice:"Nächste Rechnung: {date}"}},analytics:{trend:"Trends",detail:"Störung",traffic:{totalRequests:"Gesamtanfragen",validRequests:"Erfolgreiche Anfragen",failedRequests:"Fehlgeschlagene Anfragen",uniqueVisitors:"Einzigartige Besucher",uniqueFiles:"Einzigartige URLs",uniqueReferrers:"Einzigartige Überweisende",uniqueNotFound:"Einzigartiger 404",uniqueStaticFiles:"Einzigartige statische Dateien",logSize:"Log Größe",bandwidth:"Bandbreite"},runtime:"Laufzeit"},federated:{inviteJoinFederatedLogin:"Einladung zum Beitritt zur dezentralen Anmeldung",inviteJoinFederatedLoginDescription:"Kopieren Sie die folgende Adresse und füllen Sie sie in der Anwendung aus, wo Sie sich anmelden müssen, um sich für eine föderierte Anmeldung zu bewerben.",federatedLogin:"Föderiertes Login",joinFederatedLogin:"Federiertes Anmelden beitreten",joinFederatedLoginDescription:"Bitte geben Sie die federierte Login-Adresse ein, die Ihnen von Master Blocklet zur Verfügung gestellt wurde, um sich beim föderierten Login anzumelden",quitFederatedLogin:"Abgemeldeter Verbundlogin",quitFederatedLoginDescription:"Nach dem Beenden der föderierten Anmeldung ist die normale Anmeldung immer verfügbar.",federatedJoinAppUrl:"Mitglied werden bei federiertem Login appUrl",federatedJoinAppUrlRequired:"Bitte geben Sie die URL der Föderierten Anmeldung ein",failedToGetFederatedLoginAppUrl:"Fehler beim Abrufen der föderativen Anmeldung join appUrl",federatedJoinAppUrlInvalid:"Die URL der föderierten Anmeldung (Federated login) ist ungültig.",siteDetail:"Seitendetail",approveToJoinLogin:"Mitgliedschaft in der Verbandseinwahl genehmigen",approve:"Anmeldung aktivieren",revoke:"Deaktiviere die Anmeldung",enableFederatedLogin:"Aktivieren Sie die föderierte Anmeldung",disableFederatedLogin:"Deaktivierte föderierte Anmeldung",enableFederatedLoginDescription:"Nach Aktivierung der föderierten Anmeldung wird diese Seite automatisch angemeldet.",disableFederatedLoginDescription:"Nachdem die dezentrale Anmeldung deaktiviert wurde, wird diese Seite nicht automatisch angemeldet werden",enableFederatedAutoLogin:"Aktiviere die automatische Anmeldung",enableFederatedAutoLoginDescription:"Nachdem die automatische Anmeldung aktiviert wurde, wird sich die Seite automatisch mit den Anmeldedaten des Verbund-Logins anmelden, falls derzeit ein einheitlicher Anmeldestatus besteht.",disableFederatedAutoLogin:"Deaktiviere automatischen Login",disableFederatedAutoLoginDescription:"Nachdem die automatische Anmeldung deaktiviert ist, wird die Website die Benutzerinformationen der gemeinsamen Anmeldung nicht mehr automatisch einloggen und Sie können immer noch wählen, sich manuell mit der Identität der Föderationsanmeldung anzumelden.",info:{appId:"APP HAT",appPid:"Permanente ID",migratedFrom:"Auch bekannt als",appName:"Blocklet-Name",appDescription:"Blocklet-Beschreibung",appUrl:"Blocklet-URL",appLogo:"Blocklet Logo",did:"Blocklet DID",serverId:"Blocklet Server ID",serverVersion:"Blocklet Server Version",version:"Blocklet-Version",appliedAt:"Bewerben Sie sich bei",status:"Status"},status:{pending:"Ausstehend",approved:"Genehmigt",rejected:"Abgelehnt",revoked:"Widerrufen"},disbandFederatedLogin:"Deaktiviere föderierte Anmeldung",disbandFederatedLoginDescription:"Nach der Auflösung der föderierten Anmeldung werden sich alle Mitgliedsseiten automatisch von der föderierten Anmeldung abmelden.",syncConfig:"Synchronisiere Konfiguration der föderierten Sites",quitMember:"Entfernen",quitMemberDescription:"Angegebene Mitglieder aus der Site-Gruppe entfernen",removeFederatedLogin:"Mitglied entfernen",removeFederatedLoginDescription:"Nach dem Entfernen bestimmter Mitglieder aus der Site-Gruppe können Mitglieder sich nur noch normal anmelden",title:"Was ist Federated Login?",description:"Verbundene Anmeldung ist über Single Sign-On über mehrere Systeme möglich. Sie können andere Teams zur verbundenen Anmeldung einladen oder proaktiv der verbundenen Anmeldungsplattform anderer Organisationen beitreten.",link:"Dokument ansehen"},optionsOrder:{1:"Option Eins",2:"Option Zwei"},securityRule:{title:"Sicherheitsregel",sortByDescription:"Nach Übereinstimmungspriorität sortieren",add:"Sicherheitsregel hinzufügen",edit:"Sicherheitsrichtlinie bearbeiten",view:"Sicherheitsregel anzeigen",form:{precede:"Voranstellen",pathPattern:"Pfadmuster",pathPatternPlaceholder:"Bitte Pfadmuster eingeben",pathPatternErrorText:"Ungültiges Pfadmuster",accessPolicyOrResponseHeaderPolicyRequired:"Zugriffsrichtlinie oder Antwortrubrikenrichtlinie ist erforderlich",accessPolicy:"Zugriffsrichtlinie",accessPolicyPlaceholder:"Zugriffsrichtlinie auswählen",accessPolicyHelperText:"Bitte Zugriffsrichtlinie auswählen",responseHeaderPolicy:"Richtlinie für Antwortheader",responseHeaderPolicyPlaceholder:"Bitte wählen Sie die Antwort-Headerrichtlinie aus",responseHeaderPolicyHelperText:"Bitte wählen Sie eine Antwort-Header-Richtlinie aus",remark:"Bemerkung",remarkPlaceholder:"Bitte geben Sie eine Bemerkung ein",component:"Komponente",componentPlaceholder:"Bitte wählen Sie das Komponent"},delete:{title:"Sicherheitsregel löschen?",description:"Nachdem eine Sicherheitsregel entfernt wurde, wird die Regel nicht mehr wirksam"},useless:"Unnötige Sicherheitsregel"},responseHeaderPolicy:{title:"Reaktionskopfzeilen-Richtlinie",add:"Richtlinie für Antwortoptionen hinzufügen",edit:"Antwort-Header-Richtlinien bearbeiten",view:"Antwort-Headerrichtlinie anzeigen",form:{name:"Name",namePlaceholder:"Bitte Namen eingeben",description:"Beschreibung",descriptionPlaceholder:"Bitte Beschreibung eingeben",cors:{origin:"Herkunft",originPlaceholder:"Folgende Domainformate werden unterstützt: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (Platzhalter werden nicht empfohlen)",originHelperText:"Domänenname beginnt mit http:// oder https://, eine pro Zeile, eine Platzhalterzeichen * pro Zeile",methods:"Methoden",allowedHeaders:"Zugelassene Header",allowedHeadersPlaceholder:"Es wird empfohlen, auszufüllen *, unterstützt mehrzeilige Eingabe",allowedHeadersHelperText:"Teile dem Server mit, welche benutzerdefinierten HTTP-Anforderungsheader in der nächsten Anforderung beim Senden einer OPTIONS-Anforderung verwendet werden können, wie z. B: x-blocklet-version",exposedHeaders:"Offengelegte Header",exposedHeadersPlaceholder:"Unterstützt Eingabe in mehreren Zeilen",exposedHeadersHelperText:"Expose-Header konfigurieren, zum Beispiel: X-Content-Range",maxAge:"Maximalalter (Sekunden)",maxAgeHelperText:"Der Gültigkeitszeitraum des durch die OPTIONS-Anfrage erhaltenen Ergebnisses muss eine positive Ganzzahl sein",optionsSuccessStatus:"Optionserfolgsstatus",preflightContinue:"Fortfahren",credentials:"Anmeldedaten",smartModeHelperText:"Alle Domänennamen der aktuellen Anwendung sowie alle Domänennamen der Verbundanmeldegruppenseite automatisch hinzufügen",smartMode:"Intelligenter Modus"},originOverride:"Ursprungsüberschreibung",originOverrideHelperText:"Ob die Logik in der Anwendung diese Antwortkopfzeile überschreiben darf"},delete:{title:"Antwort-Header-Richtlinie löschen?",description:"Nachdem eine Antwortheaderrichtlinie entfernt wurde, tritt die Richtlinie nicht mehr in Kraft"}},accessPolicy:{title:"Zugriffsrichtlinie",add:"Zugriffsrichtlinie hinzufügen",edit:"Zugriffsrichtlinie bearbeiten",view:"Zugriffsrichtlinie anzeigen",form:{name:"Name",namePlaceholder:"Bitte Namen eingeben",description:"Beschreibung",descriptionPlaceholder:"Bitte Beschreibung eingeben",roles:"Zugriffsrollen",accessType:"Zugriffstyp"},delete:{title:"Zugriffsrichtlinie löschen?",description:"Nach dem Entfernen einer Zugriffsrichtlinie wird die Richtlinie nicht mehr wirksam"}},didConnect:{genKeyPair:{title:"Blocklet DID generieren",scan:"Verwende die folgenden Methoden, um eine Blocklet DID zu generieren",success:"Blocklet DID erfolgreich generiert",successDesc:"Die Blocklet DID wurde erfolgreich generiert (Nachfolgende Veröffentlichungen erfordern die Wallet, die die DID generiert hat, um zu funktionieren)"},common:{invalidSession:"Ungültige Sitzung",invalidSessionDesc:"Session existiert nicht oder ist abgelaufen",connectionError:"Verbindung fehlgeschlagen"}},pagination:{next:"Nächste Seite",previous:"Vorherige Seite",rowsPerPage:"Pro Seite:",displayRows:"von",jumpToPage:"Gehe zu Seite:"},webhookEndpoint:{createWebhook:"Webhook erstellen",createWebhookTitle:"Webhook erstellen",selectAllEvents:"Alle Ereignisse auswählen",selectAllEventsTooltip:"Alle verfügbaren Ereignisse auswählen",selectedEventsCount:"{count} ausgewählte Ereignisse",selectedCount:"{count} ausgewählt",eventsCount:"{count} Ereignisse",saveWebhook:"Webhook erstellen",noAvailableEvents:"Keine verfügbaren Ereignisse",loadingEvents:"Lade Ereignisse...",loadingError:"Fehler beim Laden der Ereignisse: {message}",title:"Webhooks",noWebhooksAdded:"Keine Webhooks hinzugefügt",validation:{urlRequired:"URL erforderlich",urlInvalid:"Bitte geben Sie eine gültige URL ein",descriptionRequired:"Beschreibung erforderlich",eventRequired:"Bitte wählen Sie mindestens ein Ereignis aus"},hosted:"Gehostete Endpunkte",add:"Webhook erstellen",addTip:"Webhook-Endpoint für Live-Events einrichten",listen:"Lauschen auf",version:"API-Version",attempts:"Webhook-Versuche",url:{label:"URL",description:"Webhook-Endpoint-URL"},description:{label:"Beschreibung",description:"Eine optionale Beschreibung des Verwendungszwecks dieses Endpunkts"},events:{label:"Ereignisse auswählen",description:"Hallo, {name}."},disabled:"Deaktiviert",enabled:"Aktiviert",disable:"Deaktivieren",enable:"Aktivieren",editWebhookTitle:"Webhook aktualisieren",updateWebhook:"Webhook aktualisieren",waitingForEvents:"Warte auf Ereignisse...",loadingMore:"Lade mehr...",loadMore:"Mehr laden",response:"Antwort",request:"Anfrage",eventData:"Ereignisdaten",deleteWebhook:{title:"Webhook löschen?",description:"Nach dem Löschen eines Webhooks empfängt dieser keine Ereignisse mehr."},success:"Erfolg",listTitle:"Sende Echtzeit-Ereignisdaten mit Webhooks",tooltipTitle:"Verbinden Sie Ihre App nahtlos mit externen Systemen durch das Senden von Echtzeit-Ereignisbenachrichtigungen. Webhooks ermöglichen leistungsstarke Integrationen und automatisierte Workflows über Ihre Tools und Dienste.",triggeredFrom:"Dieser Webhook wurde durch einen Versuch ausgelöst"},description:{environment:"Die aktuellen Variablen werden wirksam, wenn {name} läuft. Ein Neustart der Anwendung ist erforderlich, damit die Änderungen wirksam werden.",preferences:"Die aktuellen Variablen werden wirksam, wenn {name} läuft. Änderungen werden nach dem Speichern angewendet, ein Neustart der Anwendung ist nicht erforderlich."},preferencesFor:"Einstellungen für {name}",environmentFor:"Umgebungen für {name}",accessKey:"Zugriffsschlüssel",embed:{iconTip:"Klicken Sie hier, um Abonnementdetails anzuzeigen"},command:"Befehl",mcp:{listTitle:"Greife auf dein Blocklet von MCP Clients zu",tooltipTitle:"Sehen Sie sich die Liste der von diesem Blocklet unterstützten MCP-Server an und wählen Sie einen Server aus, um die Verbindungsbefehle anzuzeigen, die Sie benötigen, um sich von Ihrem Client aus anzumelden.",endpoint:"MCP-Endpunkt",available:"Verfügbare MCP-Server",noServer:"Kein MCP-Server verfügbar"},installCommand:"Installationsbefehl",label:{add:"Hinzufügen",apply:"Labels anwenden",manage:"Labels verwalten",title:"Bezeichnungen",description:"Beschreibung",systemLabel:"Systemetikett",create:"Label erstellen",edit:"Label bearbeiten",name:"Name",slug:"Slug",parentLabel:"Übergeordnete Bezeichnung",color:"Farbe",search:"Labels suchen",saveSuccess:"Label erfolgreich gespeichert",delete:"Löschen",deleteTip:"„{name}“ löschen?",deleteSuccess:"Label erfolgreich gelöscht",reassignTip:"Wenn dieses Label verwendet wird, weisen Sie seine Elemente einem anderen Label zu.",reassignTo:"Wähle eine neue Bezeichnung",recently:"Kürzlich",noMatching:"Keine Labels gefunden",noLabels:"Noch keine Labels erstellt",filter:"Filterbezeichnungen",createNewLabel:'Neues Label erstellen "{name}"',actionLabel:"Weisen Sie Labels in großen Mengen zu",selectLabels:"Labels auswählen",deleteDesc:'Nachdem ein Label gelöscht wurde, wird das Label nicht mehr verwendet. Möchten Sie "{name}" wirklich löschen?',nameRequired:"Titel ist erforderlich",nameMinLength:"Der Titel muss mindestens ein Zeichen lang sein.",nameMaxLength:"Der Titel muss weniger als 64 Zeichen lang sein",slugRequired:"Slug ist erforderlich",slugMinLength:"Slug muss mindestens ein Zeichen lang sein.",slugMaxLength:"Slug muss weniger als 128 Zeichen lang sein.",descriptionMaxLength:"Beschreibung muss weniger als 255 Zeichen lang sein.",colorRequired:"Farbe ist erforderlich",colorInvalid:"Farbe ist ungültig"},environmentTips:{delete:"Möchten Sie diese Zeile wirklich löschen?",deleteForbidden:"Nur der Schlüssel der benutzerdefinierten Umgebung kann geändert werden."},authentication:{emailLoginDescription:"Die E-Mail-Anmeldung verwendet die Benachrichtigungseinstellungen, um Anmeldelinks oder Anmeldecode an Benutzer zu senden.",emailNotificationRequired:"Stellen Sie sicher, dass Sie die E-Mail-Benachrichtigung aktiviert haben.",chooseProvider:"Anmeldemethode",chooseProviderPlaceholder:"Wählen Sie eine Anmeldemethode zur Konfiguration",addLoginProvider:"Login-Methode hinzufügen",updateLoginProvider:"Login-Methode aktualisieren: {provider}",alreadyBindOAuth:"Bereits Drittanbieter-Login binden",alreadyBindWallet:"Bereits DID Wallet verbunden",didConnectSettings:"Anzeige & Branding",commonSettings:"Allgemeine Einstellungen",sessionSettings:"Sitzungssicherheit",federated:"Federated Login",loginProviders:"Anmeldemethoden",oauth:"Drittanbieter-Login",save:"Speichern",thirdPartyLogin:"Drittanbieter-Login",viewDocument:"Dokumentation anzeigen",oauthCallbackUrl:"Callback-URL",gotoEmailNotification:"E-Mail-Benachrichtigungseinstellungen öffnen",deleteLoginProvider:" Löschen Sie den Anmeldeanbieter {provider}",deleteLoginProviderDescription:"Nachdem der Anmeldeanbieter gelöscht wurde, können sich Benutzer nicht mehr mit {provider} anmelden. Möchten Sie fortfahren?",auth0:{title:"Auth0",enable:"Auth0-Login aktivieren",domain:"Domain",domainDescription:"Die Domain von Auth0 ist erforderlich",clientId:"Client-ID",clientIdDescription:"Auth0 OAuth Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Auth0 OAuth-Anwendungs-Client-Secret ist erforderlich"},github:{title:"Github",enable:"Github-Login aktivieren",clientId:"Client-ID",clientIdDescription:"Github OAuth-Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Github OAuth-Anwendungs-Client-Geheimnis ist erforderlich"},twitter:{title:"X",enable:"Aktiviere X-Anmeldung",clientId:"Client-ID",clientIdDescription:"Die Client-ID der X OAuth-Anwendung ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"X OAuth-Anwendungs-Client-Geheimnis wird benötigt"},google:{title:"Google",enable:"Google-Login aktivieren",clientId:"Client-ID",clientIdDescription:"Die Google OAuth-Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Google OAuth-Anwendungs-Client-Secret ist erforderlich"},apple:{title:"Apfel",enable:"Apple-Login aktivieren",teamId:"Team-ID",teamIdDescription:"Die Team-ID der Apple OAuth-Anwendung wird benötigt",serviceId:"Dienst-ID",serviceIdDescription:"Die Apple OAuth-Anwendungsdienst-ID ist erforderlich",keyId:"Schlüssel-ID",keyIdDescription:"Apple OAuth-Anwendungs Schlüssel-ID wird benötigt",authKey:"Authentifizierungsschlüssel",authKeyDescription:"Apple OAuth-Anwendung Auth-Schlüssel wird benötigt",bundleId:"Bundle-ID",bundleIdDescription:"Die Bundle-ID der Apple OAuth-Anwendung ist erforderlich"},wallet:{showQrcode:"QR-Code anzeigen"},didConnect:{showDidColor:"Zeige DID Connect Farbe",showAppInfo:"Zeige Blocklet-Informationen"}}};export{e as default};
|
|
7
|
+
Sie können die Sicherungsoperationen wiederherstellen, indem Sie sich erneut mit {name} verbinden.`},connect:{title:"Verbinde DID Spaces",add:"Verbinde dich jetzt mit DID Spaces",addTips:"Sie sind noch nicht mit einem DID Space verbunden",switch:"Wechseln Sie DID Spaces",switchTips:"Sie sind mit {name} verbunden",connected:"Verbunden"},switch:{failedForMismatchSpace:"Bitte mit dem richtigen DID Space {name} verbinden"},connectTo:"Verbinde mit DID Spaces"},strategy:{title:"Backup-Strategie",autoBackup:"Auto-Backup",backupNow:"Sichern Sie jetzt",viewBackupFiles:"Backup-Dateien anzeigen"},progress:{title:"Backup-Fortschritt"},record:{title:"Sicherungsaufzeichnungen",emptyData:"Keine Einträge"},notYet:"Es gibt noch kein Backup in Arbeit...",connect:{now:"Jetzt verbinden",title:"Mit DID Spaces verbinden",provider:"Stellen Sie Ihren DID Space bereit, um mit der Sicherung zu beginnen",providerForStorage:"Stellen Sie Ihren DID Space zur Datenspeicherung bereit",useWallet:"Mit DID Wallet verbinden",useWalletReconnect:"Mit DID Wallet erneut verbinden",useSpaceGateway:"Über DID Space Gateway verbinden",useSpaceGatewayReconnect:"Erneut über DID Space Gateway verbinden",switchToSpace:"Zu DID Space wechseln",switchToSpaceSucceeded:"Zu DID Space {name} gewechselt",succeeded:"Erfolgreich mit DID Space verbunden",disconnect:"Verbindung trennen",abortBlockletBackup:"Backup abbrechen"},disconnected:{tag:"Getrennt",reconnectNow:"Verbinde jetzt erneut"}},appLevel:{title:"Anwendungsebene speichern",description:"Alle Daten, die von der Anwendung generiert werden, werden in diesem DID Space gespeichert"}},log:{lastDays:{1:"Letzter 1 Tag",7:"Letzte 1 Woche"}},oauth:{authorize:"OAuth-Autorisierung",client:{tab:"OAuth-Apps",name:"App-Name",clientId:"Client ID",clientSecret:"Client Secret",scope:"Umfang",redirectUris:"Weiterleitungs-URIs",grantTypes:"Grant Types",responseTypes:"Antworttypen",tokenEndpointAuthMethod:"Token-Endpoint-Auth-Methode",actions:"Aktionen",grantResponse:"Genehmigung & Antwort",metaContact:"Meta & Kontakt",clientUri:"Client-URI",logoUri:"Logo-URI",contacts:"Kontakte",tosUri:"Nutzungsbedingungen URL",policyUri:"Richtlinien-URI",jwksSoftware:"JWKS & Software",jwksUri:"JWKS URI",jwks:"JWKS",softwareId:"Software-ID",softwareVersion:"Softwareversion",clientSecretExpiresAt:"Client Secret läuft ab um",clientIdIssuedAt:"Client-ID Ausgestellt am",oauthAppDetails:"OAuth-App-Details",oauthEndpoints:"OAuth-Endpunkte",authorizationEndpoint:"Autorisierungs-Endpunkt",tokenEndpoint:"Token-Endpunkt",userinfoEndpoint:"Benutzerinfo-Endpunkt",registrationEndpoint:"Registrierungs-Endpunkt",endSessionEndpoint:"Sitzungsende-Endpunkt",validate:{clientName:"App-Name ist erforderlich",clientNameMinLength:"App-Name muss mindestens 3 Zeichen lang sein",clientUri:"Homepage-URL erforderlich",clientUriInvalid:"Bitte geben Sie eine gültige URL ein, die mit http:// oder https:// beginnt",redirectUris:"Autorisierungs-Callback-URL erforderlich",redirectUrisInvalid:"Bitte geben Sie gültige URLs ein, die mit http:// oder https:// beginnen",contacts:"Bitte geben Sie gültige E-Mail-Adressen ein, getrennt durch Kommas",tosUri:"URL der Nutzungsbedingungen erforderlich",tosUriInvalid:"Bitte geben Sie eine gültige URL ein",policyUri:"Pflichtangabe: URL der Richtlinie",policyUriInvalid:"Bitte geben Sie eine gültige URL ein",jwksUri:"JWKS URI erforderlich",jwksUriInvalid:"Bitte geben Sie eine gültige URL ein",jwks:"JWKS erforderlich",jwksInvalid:"Bitte geben Sie einen gültigen JWKS ein"},input:{clientName:"App-Name",clientNamePlaceholder:"Etwas, das Benutzer erkennen und vertrauen",clientUri:"Homepage-URL",clientUriPlaceholder:"https://your-app.com",redirectUris:"Autorisierungs-Callback-URL",redirectUrisPlaceholder:"https://your-app.com/callback",contacts:"Kontakt-E-Mails",contactsPlaceholder:"admin@your-app.com, support@your-app.com",permissions:"Wähle die benötigten Berechtigungen",tosUri:"Nutzungsbedingungen URL",tosUriPlaceholder:"https://your-app.com/terms",policyUri:"Richtlinien-URL",policyUriPlaceholder:"https://your-app.com/policy",jwksUri:"JWKS URI",jwksUriPlaceholder:"https://your-app.com/jwks",jwks:"JWKS",jwksPlaceholder:"JSON Web Key Set",expireTime:"Setzen Sie ein Ablaufdatum für das Client-Secret für bessere Sicherheit"},helperText:{clientName:"Etwas, das Benutzer kennen und vertrauen.",clientUri:"Die vollständige URL zu Ihrer Anwendungs-Homepage",redirectUris:"Die Callback-URL Ihrer Anwendung.",contacts:"Die E-Mail-Adresse der verantwortlichen Person für die Anwendung.",tosUri:"Die URL zu den Nutzungsbedingungen Ihrer Anwendung.",policyUri:"Die URL zur Datenschutzrichtlinie Ihrer Anwendung.",read:"Lesen Sie unsere",document:"OAuth-Dokumentation",more:"Weitere Informationen."},delete:{title:"OAuth-Client löschen",description:"Sind Sie sicher, dass Sie diesen {clientName} OAuth Client löschen möchten?"},register:"Neue OAuth-App erstellen",requiredInformation:"Benötigte Informationen",optionalInformation:"Optionale Informationen",registerButton:"Erstellen",logo:"Logo",openRegistration:"Offene Registrierung",openidConfiguration:"OpenID-Konfiguration",createUser:"Erstellt von",update:"OAuth-App aktualisieren",listTitle:"Aktiviere sicheren Drittanbieterzugriff mit OAuth Apps",tooltipTitle:"Autorisieren Sie externe Anwendungen mit Industriestandardprotokollen über den integrierten OAuth-Server Ihrer App. Ermöglichen Sie Benutzern sichere, nahtlose Authentifizierung und delegierte Zugriffssteuerung.",empty:"Keine Daten hinzugefügt"}},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"Abgelaufen"},loadFailed:"Wiederholen!"},desktop:{tips:{success:"Das Abonnement wird nach {validity} ablaufen",warning:"Das Abonnement läuft nach {validity} ab",error:"Abonnement abgelaufen"},loading:"Abonnement laden...",loadFailed:"Fehler beim Laden der Abonnementinformationen, bitte erneut versuchen!",nextInvoice:"Nächste Rechnung: {date}"}},analytics:{trend:"Trends",detail:"Störung",traffic:{totalRequests:"Gesamtanfragen",validRequests:"Erfolgreiche Anfragen",failedRequests:"Fehlgeschlagene Anfragen",uniqueVisitors:"Einzigartige Besucher",uniqueFiles:"Einzigartige URLs",uniqueReferrers:"Einzigartige Überweisende",uniqueNotFound:"Einzigartiger 404",uniqueStaticFiles:"Einzigartige statische Dateien",logSize:"Log Größe",bandwidth:"Bandbreite"},runtime:"Laufzeit"},federated:{inviteJoinFederatedLogin:"Einladung zum Beitritt zur dezentralen Anmeldung",inviteJoinFederatedLoginDescription:"Kopieren Sie die folgende Adresse und füllen Sie sie in der Anwendung aus, wo Sie sich anmelden müssen, um sich für eine föderierte Anmeldung zu bewerben.",federatedLogin:"Föderiertes Login",joinFederatedLogin:"Federiertes Anmelden beitreten",joinFederatedLoginDescription:"Bitte geben Sie die federierte Login-Adresse ein, die Ihnen von Master Blocklet zur Verfügung gestellt wurde, um sich beim föderierten Login anzumelden",quitFederatedLogin:"Abgemeldeter Verbundlogin",quitFederatedLoginDescription:"Nach dem Beenden der föderierten Anmeldung ist die normale Anmeldung immer verfügbar.",federatedJoinAppUrl:"Mitglied werden bei federiertem Login appUrl",federatedJoinAppUrlRequired:"Bitte geben Sie die URL der Föderierten Anmeldung ein",failedToGetFederatedLoginAppUrl:"Fehler beim Abrufen der föderativen Anmeldung join appUrl",federatedJoinAppUrlInvalid:"Die URL der föderierten Anmeldung (Federated login) ist ungültig.",siteDetail:"Seitendetail",approveToJoinLogin:"Mitgliedschaft in der Verbandseinwahl genehmigen",approve:"Anmeldung aktivieren",revoke:"Deaktiviere die Anmeldung",enableFederatedLogin:"Aktivieren Sie die föderierte Anmeldung",disableFederatedLogin:"Deaktivierte föderierte Anmeldung",enableFederatedLoginDescription:"Nach Aktivierung der föderierten Anmeldung wird diese Seite automatisch angemeldet.",disableFederatedLoginDescription:"Nachdem die dezentrale Anmeldung deaktiviert wurde, wird diese Seite nicht automatisch angemeldet werden",enableFederatedAutoLogin:"Aktiviere die automatische Anmeldung",enableFederatedAutoLoginDescription:"Nachdem die automatische Anmeldung aktiviert wurde, wird sich die Seite automatisch mit den Anmeldedaten des Verbund-Logins anmelden, falls derzeit ein einheitlicher Anmeldestatus besteht.",disableFederatedAutoLogin:"Deaktiviere automatischen Login",disableFederatedAutoLoginDescription:"Nachdem die automatische Anmeldung deaktiviert ist, wird die Website die Benutzerinformationen der gemeinsamen Anmeldung nicht mehr automatisch einloggen und Sie können immer noch wählen, sich manuell mit der Identität der Föderationsanmeldung anzumelden.",info:{appId:"APP HAT",appPid:"Permanente ID",migratedFrom:"Auch bekannt als",appName:"Blocklet-Name",appDescription:"Blocklet-Beschreibung",appUrl:"Blocklet-URL",appLogo:"Blocklet Logo",did:"Blocklet DID",serverId:"Blocklet Server ID",serverVersion:"Blocklet Server Version",version:"Blocklet-Version",appliedAt:"Bewerben Sie sich bei",status:"Status"},status:{pending:"Ausstehend",approved:"Genehmigt",rejected:"Abgelehnt",revoked:"Widerrufen"},disbandFederatedLogin:"Deaktiviere föderierte Anmeldung",disbandFederatedLoginDescription:"Nach der Auflösung der föderierten Anmeldung werden sich alle Mitgliedsseiten automatisch von der föderierten Anmeldung abmelden.",syncConfig:"Synchronisiere Konfiguration der föderierten Sites",quitMember:"Entfernen",quitMemberDescription:"Angegebene Mitglieder aus der Site-Gruppe entfernen",removeFederatedLogin:"Mitglied entfernen",removeFederatedLoginDescription:"Nach dem Entfernen bestimmter Mitglieder aus der Site-Gruppe können Mitglieder sich nur noch normal anmelden",title:"Was ist Federated Login?",description:"Verbundene Anmeldung ist über Single Sign-On über mehrere Systeme möglich. Sie können andere Teams zur verbundenen Anmeldung einladen oder proaktiv der verbundenen Anmeldungsplattform anderer Organisationen beitreten.",link:"Dokument ansehen"},optionsOrder:{1:"Option Eins",2:"Option Zwei"},securityRule:{title:"Sicherheitsregel",sortByDescription:"Nach Übereinstimmungspriorität sortieren",add:"Sicherheitsregel hinzufügen",edit:"Sicherheitsrichtlinie bearbeiten",view:"Sicherheitsregel anzeigen",form:{precede:"Voranstellen",pathPattern:"Pfadmuster",pathPatternPlaceholder:"Bitte Pfadmuster eingeben",pathPatternErrorText:"Ungültiges Pfadmuster",accessPolicyOrResponseHeaderPolicyRequired:"Zugriffsrichtlinie oder Antwortrubrikenrichtlinie ist erforderlich",accessPolicy:"Zugriffsrichtlinie",accessPolicyPlaceholder:"Zugriffsrichtlinie auswählen",accessPolicyHelperText:"Bitte Zugriffsrichtlinie auswählen",responseHeaderPolicy:"Richtlinie für Antwortheader",responseHeaderPolicyPlaceholder:"Bitte wählen Sie die Antwort-Headerrichtlinie aus",responseHeaderPolicyHelperText:"Bitte wählen Sie eine Antwort-Header-Richtlinie aus",remark:"Bemerkung",remarkPlaceholder:"Bitte geben Sie eine Bemerkung ein",component:"Komponente",componentPlaceholder:"Bitte wählen Sie das Komponent"},delete:{title:"Sicherheitsregel löschen?",description:"Nachdem eine Sicherheitsregel entfernt wurde, wird die Regel nicht mehr wirksam"},useless:"Unnötige Sicherheitsregel"},responseHeaderPolicy:{title:"Reaktionskopfzeilen-Richtlinie",add:"Richtlinie für Antwortoptionen hinzufügen",edit:"Antwort-Header-Richtlinien bearbeiten",view:"Antwort-Headerrichtlinie anzeigen",form:{name:"Name",namePlaceholder:"Bitte Namen eingeben",description:"Beschreibung",descriptionPlaceholder:"Bitte Beschreibung eingeben",cors:{origin:"Herkunft",originPlaceholder:"Folgende Domainformate werden unterstützt: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (Platzhalter werden nicht empfohlen)",originHelperText:"Domänenname beginnt mit http:// oder https://, eine pro Zeile, eine Platzhalterzeichen * pro Zeile",methods:"Methoden",allowedHeaders:"Zugelassene Header",allowedHeadersPlaceholder:"Es wird empfohlen, auszufüllen *, unterstützt mehrzeilige Eingabe",allowedHeadersHelperText:"Teile dem Server mit, welche benutzerdefinierten HTTP-Anforderungsheader in der nächsten Anforderung beim Senden einer OPTIONS-Anforderung verwendet werden können, wie z. B: x-blocklet-version",exposedHeaders:"Offengelegte Header",exposedHeadersPlaceholder:"Unterstützt Eingabe in mehreren Zeilen",exposedHeadersHelperText:"Expose-Header konfigurieren, zum Beispiel: X-Content-Range",maxAge:"Maximalalter (Sekunden)",maxAgeHelperText:"Der Gültigkeitszeitraum des durch die OPTIONS-Anfrage erhaltenen Ergebnisses muss eine positive Ganzzahl sein",optionsSuccessStatus:"Optionserfolgsstatus",preflightContinue:"Fortfahren",credentials:"Anmeldedaten",smartModeHelperText:"Alle Domänennamen der aktuellen Anwendung sowie alle Domänennamen der Verbundanmeldegruppenseite automatisch hinzufügen",smartMode:"Intelligenter Modus"},originOverride:"Ursprungsüberschreibung",originOverrideHelperText:"Ob die Logik in der Anwendung diese Antwortkopfzeile überschreiben darf"},delete:{title:"Antwort-Header-Richtlinie löschen?",description:"Nachdem eine Antwortheaderrichtlinie entfernt wurde, tritt die Richtlinie nicht mehr in Kraft"}},accessPolicy:{title:"Zugriffsrichtlinie",add:"Zugriffsrichtlinie hinzufügen",edit:"Zugriffsrichtlinie bearbeiten",view:"Zugriffsrichtlinie anzeigen",form:{name:"Name",namePlaceholder:"Bitte Namen eingeben",description:"Beschreibung",descriptionPlaceholder:"Bitte Beschreibung eingeben",roles:"Zugriffsrollen",accessType:"Zugriffstyp"},delete:{title:"Zugriffsrichtlinie löschen?",description:"Nach dem Entfernen einer Zugriffsrichtlinie wird die Richtlinie nicht mehr wirksam"}},didConnect:{genKeyPair:{title:"Blocklet DID generieren",scan:"Verwende die folgenden Methoden, um eine Blocklet DID zu generieren",success:"Blocklet DID erfolgreich generiert",successDesc:"Die Blocklet DID wurde erfolgreich generiert (Nachfolgende Veröffentlichungen erfordern die Wallet, die die DID generiert hat, um zu funktionieren)"},common:{invalidSession:"Ungültige Sitzung",invalidSessionDesc:"Session existiert nicht oder ist abgelaufen",connectionError:"Verbindung fehlgeschlagen"}},pagination:{next:"Nächste Seite",previous:"Vorherige Seite",rowsPerPage:"Pro Seite:",displayRows:"von",jumpToPage:"Gehe zu Seite:"},webhookEndpoint:{createWebhook:"Webhook erstellen",createWebhookTitle:"Webhook erstellen",selectAllEvents:"Alle Ereignisse auswählen",selectAllEventsTooltip:"Alle verfügbaren Ereignisse auswählen",selectedEventsCount:"{count} ausgewählte Ereignisse",selectedCount:"{count} ausgewählt",eventsCount:"{count} Ereignisse",saveWebhook:"Webhook erstellen",noAvailableEvents:"Keine verfügbaren Ereignisse",loadingEvents:"Lade Ereignisse...",loadingError:"Fehler beim Laden der Ereignisse: {message}",title:"Webhooks",noWebhooksAdded:"Keine Webhooks hinzugefügt",validation:{urlRequired:"URL erforderlich",urlInvalid:"Bitte geben Sie eine gültige URL ein",descriptionRequired:"Beschreibung erforderlich",eventRequired:"Bitte wählen Sie mindestens ein Ereignis aus"},hosted:"Gehostete Endpunkte",add:"Webhook erstellen",addTip:"Webhook-Endpoint für Live-Events einrichten",listen:"Lauschen auf",version:"API-Version",attempts:"Webhook-Versuche",url:{label:"URL",description:"Webhook-Endpoint-URL"},description:{label:"Beschreibung",description:"Eine optionale Beschreibung des Verwendungszwecks dieses Endpunkts"},events:{label:"Ereignisse auswählen",description:"Hallo, {name}."},disabled:"Deaktiviert",enabled:"Aktiviert",disable:"Deaktivieren",enable:"Aktivieren",editWebhookTitle:"Webhook aktualisieren",updateWebhook:"Webhook aktualisieren",waitingForEvents:"Warte auf Ereignisse...",loadingMore:"Lade mehr...",loadMore:"Mehr laden",response:"Antwort",request:"Anfrage",eventData:"Ereignisdaten",deleteWebhook:{title:"Webhook löschen?",description:"Nach dem Löschen eines Webhooks empfängt dieser keine Ereignisse mehr."},success:"Erfolg",listTitle:"Sende Echtzeit-Ereignisdaten mit Webhooks",tooltipTitle:"Verbinden Sie Ihre App nahtlos mit externen Systemen durch das Senden von Echtzeit-Ereignisbenachrichtigungen. Webhooks ermöglichen leistungsstarke Integrationen und automatisierte Workflows über Ihre Tools und Dienste.",triggeredFrom:"Dieser Webhook wurde durch einen Versuch ausgelöst"},description:{environment:"Die aktuellen Variablen werden wirksam, wenn {name} läuft. Ein Neustart der Anwendung ist erforderlich, damit die Änderungen wirksam werden.",preferences:"Die aktuellen Variablen werden wirksam, wenn {name} läuft. Änderungen werden nach dem Speichern angewendet, ein Neustart der Anwendung ist nicht erforderlich."},preferencesFor:"Einstellungen für {name}",environmentFor:"Umgebungen für {name}",accessKey:"Zugriffsschlüssel",embed:{iconTip:"Klicken Sie hier, um Abonnementdetails anzuzeigen"},command:"Befehl",mcp:{listTitle:"Greife auf dein Blocklet von MCP Clients zu",tooltipTitle:"Sehen Sie sich die Liste der von diesem Blocklet unterstützten MCP-Server an und wählen Sie einen Server aus, um die Verbindungsbefehle anzuzeigen, die Sie benötigen, um sich von Ihrem Client aus anzumelden.",endpoint:"MCP-Endpunkt",available:"Verfügbare MCP-Server",noServer:"Kein MCP-Server verfügbar"},installCommand:"Installationsbefehl",label:{add:"Hinzufügen",apply:"Labels anwenden",manage:"Labels verwalten",title:"Bezeichnungen",description:"Beschreibung",systemLabel:"Systemetikett",create:"Label erstellen",edit:"Label bearbeiten",name:"Name",slug:"Slug",parentLabel:"Übergeordnete Bezeichnung",color:"Farbe",search:"Labels suchen",saveSuccess:"Label erfolgreich gespeichert",delete:"Löschen",deleteTip:"„{name}“ löschen?",deleteSuccess:"Label erfolgreich gelöscht",reassignTip:"Wenn dieses Label verwendet wird, weisen Sie seine Elemente einem anderen Label zu.",reassignTo:"Wähle eine neue Bezeichnung",recently:"Kürzlich",noMatching:"Keine Labels gefunden",noLabels:"Noch keine Labels erstellt",filter:"Filterbezeichnungen",createNewLabel:'Neues Label erstellen "{name}"',actionLabel:"Weisen Sie Labels in großen Mengen zu",selectLabels:"Labels auswählen",deleteDesc:'Nachdem ein Label gelöscht wurde, wird das Label nicht mehr verwendet. Möchten Sie "{name}" wirklich löschen?',nameRequired:"Titel ist erforderlich",nameMinLength:"Der Titel muss mindestens ein Zeichen lang sein.",nameMaxLength:"Der Titel muss weniger als 64 Zeichen lang sein",slugRequired:"Slug ist erforderlich",slugMinLength:"Slug muss mindestens ein Zeichen lang sein.",slugMaxLength:"Slug muss weniger als 128 Zeichen lang sein.",descriptionMaxLength:"Beschreibung muss weniger als 255 Zeichen lang sein.",colorRequired:"Farbe ist erforderlich",colorInvalid:"Farbe ist ungültig"},environmentTips:{delete:"Möchten Sie diese Zeile wirklich löschen?",deleteForbidden:"Nur der Schlüssel der benutzerdefinierten Umgebung kann geändert werden."},authentication:{emailLoginDescription:"Die E-Mail-Anmeldung verwendet die Benachrichtigungseinstellungen, um Anmeldelinks oder Anmeldecode an Benutzer zu senden.",emailNotificationRequired:"Stellen Sie sicher, dass Sie die E-Mail-Benachrichtigung aktiviert haben.",chooseProvider:"Anmeldemethode",chooseProviderPlaceholder:"Wählen Sie eine Anmeldemethode zur Konfiguration",addLoginProvider:"Login-Methode hinzufügen",updateLoginProvider:"Login-Methode aktualisieren: {provider}",alreadyBindOAuth:"Bereits Drittanbieter-Login binden",alreadyBindWallet:"Bereits DID Wallet verbunden",didConnectSettings:"Anzeige & Branding",commonSettings:"Allgemeine Einstellungen",sessionSettings:"Sitzungssicherheit",federated:"Federated Login",loginProviders:"Anmeldemethoden",oauth:"Drittanbieter-Login",save:"Speichern",thirdPartyLogin:"Drittanbieter-Login",viewDocument:"Dokumentation anzeigen",oauthCallbackUrl:"Callback-URL",gotoEmailNotification:"E-Mail-Benachrichtigungseinstellungen öffnen",deleteLoginProvider:" Löschen Sie den Anmeldeanbieter {provider}",deleteLoginProviderDescription:"Nachdem der Anmeldeanbieter gelöscht wurde, können sich Benutzer nicht mehr mit {provider} anmelden. Möchten Sie fortfahren?",auth0:{title:"Auth0",enable:"Auth0-Login aktivieren",domain:"Domain",domainDescription:"Die Domain von Auth0 ist erforderlich",clientId:"Client-ID",clientIdDescription:"Auth0 OAuth Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Auth0 OAuth-Anwendungs-Client-Secret ist erforderlich"},github:{title:"Github",enable:"Github-Login aktivieren",clientId:"Client-ID",clientIdDescription:"Github OAuth-Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Github OAuth-Anwendungs-Client-Geheimnis ist erforderlich"},twitter:{title:"X",enable:"Aktiviere X-Anmeldung",clientId:"Client-ID",clientIdDescription:"Die Client-ID der X OAuth-Anwendung ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"X OAuth-Anwendungs-Client-Geheimnis wird benötigt"},google:{title:"Google",enable:"Google-Login aktivieren",clientId:"Client-ID",clientIdDescription:"Die Google OAuth-Anwendungs-Client-ID ist erforderlich",clientSecret:"Client Secret",clientSecretDescription:"Google OAuth-Anwendungs-Client-Secret ist erforderlich"},apple:{title:"Apfel",enable:"Apple-Login aktivieren",teamId:"Team-ID",teamIdDescription:"Die Team-ID der Apple OAuth-Anwendung wird benötigt",serviceId:"Dienst-ID",serviceIdDescription:"Die Apple OAuth-Anwendungsdienst-ID ist erforderlich",keyId:"Schlüssel-ID",keyIdDescription:"Apple OAuth-Anwendungs Schlüssel-ID wird benötigt",authKey:"Authentifizierungsschlüssel",authKeyDescription:"Apple OAuth-Anwendung Auth-Schlüssel wird benötigt",bundleId:"Bundle-ID",bundleIdDescription:"Die Bundle-ID der Apple OAuth-Anwendung ist erforderlich"},wallet:{showQrcode:"QR-Code anzeigen"},didConnect:{showDidColor:"Zeige DID Connect Farbe",showAppInfo:"Zeige Blocklet-Informationen",basicSettings:"Grundeinstellungen",customSettings:"Benutzerdefinierte Einstellungen",configDialogTitle:"Konfig Auth Popup-Text",addNewAction:"Aktion hinzufügen",addLanguage:"Sprache Hinzufügen",selectLanguage:"Wähle eine Sprache...",actionNameError:"Nur Kleinbuchstaben und Bindestriche sind erlaubt; es darf nicht mit einem Bindestrich beginnen.",actionNameDuplicate:"Aktionsname existiert bereits"}}};export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{V as h,j as e,ad as j,J as o,Y as g,T as _,t as b,o as n}from"./index-
|
|
1
|
+
import{V as h,j as e,ad as j,J as o,Y as g,T as _,t as b,o as n}from"./index-Bek3Nxot.js";import{C as R}from"./click-to-copy-BbJJzGI1.js";function T({title:c,description:l,confirmPlaceholder:m,cancel:d="",confirm:u="Confirm",params:p={},onCancel:f=()=>{},onConfirm:C,keyName:t}){const{t:a}=h(),i={title:()=>e.jsx(o,{children:c}),description:(s,y)=>{const x=r=>{y({...r,__disableConfirm:r.__disableConfirm})};return e.jsxs(o,{children:[e.jsx(g,{severity:"warning",style:{width:"100%"},children:a("common.notice")}),e.jsx(o,{sx:{my:3,b:{wordBreak:"break-word"}},dangerouslySetInnerHTML:{__html:l}}),e.jsxs(o,{style:{marginBottom:24},children:[a("common.click"),":",e.jsx(R,{"data-cy":"click-copy",children:t})]}),e.jsx(_,{component:"div",children:e.jsx(b,{label:m,autoComplete:"off","data-cy":"delete-confirm-input",variant:"outlined",fullWidth:!0,autoFocus:!0,value:s.inputVal,onChange:r=>{x({...s,inputVal:r.target.value,__disableConfirm:t!==r.target.value})}})})]})},confirm:u,cancel:d,onConfirm:C,onCancel:f,params:{inputVal:"",__disableConfirm:!0,...p}};return e.jsx(j,{title:i.title,description:i.description,confirm:i.confirm,cancel:i.cancel,params:i.params,onConfirm:i.onConfirm,onCancel:i.onCancel})}T.propTypes={title:n.any.isRequired,keyName:n.any.isRequired,description:n.any.isRequired,confirmPlaceholder:n.any.isRequired,cancel:n.string,confirm:n.string,params:n.object,onCancel:n.func,onConfirm:n.func.isRequired};export{T as D};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{fI as r}from"./index-Bek3Nxot.js";var d=function(i,o){return i===void 0&&(i=[]),o===void 0&&(o=[]),r(i,o)};export{d};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./overview-
|
|
2
|
-
import{V as He,n as qe,bn as Ct,r as b,aH as F,j as d,Y as Qe,J as Z,v as Ge,w as Tt,i as j,bC as jt,H as J,Z as Ke,bm as We,A as Pt,u as At,d as Dt,bD as Ot,bE as Lt,bF as Ae,bG as Bt,bH as Mt,I as De,C as Oe,M as Rt,bI as Nt,T as ue,K as Ft,bJ as I,s as Vt}from"./index-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./overview-DL-GP40o.js","./index-Bek3Nxot.js","./index-DUrTVFR9.css","./HelpOutline--A0maMxb.js","./index-BojVbZw0.js","./index-B8qqbKQt.js","./blocklet-ClPWX-SV.js","./team-B9jB42uy.js","./url-evaluation-DetQFE_e.js","./status-BZx_J-ps.js","./index-B31H3tAk.js","./ErrorOutline-CjKNiJFO.js","./omit-C11lcOpj.js","./index-D_L4A5jU.js","./metric-chc-qmc8.js","./CardContent-CYNmFsYJ.js","./spaces-BrB8zqzV.js","./api-eF9wxSJp.js","./domains-BJzrDugH.js","./index-CDd3s2GI.js","./useAsync-B59MJoKM.js","./permission-D09K4EY6.js","./Delete-B306vkSB.js","./actions-D1YtdqKL.js","./delete-confirm-Cx4JPY2I.js","./click-to-copy-BbJJzGI1.js","./status-B-GGRrEB.js","./VerifiedUser-wCwGdsz1.js","./Add-b-MNk7UB.js","./CallMerge-CF5jo3Pw.js","./toLower-DwWNsNMJ.js","./use-mobile-BDRFDg8j.js","./util-DgOs7OwT.js","./is-path-prefix-equal-BAfeJQQq.js","./engine-a9f8P0CB.js","./OpenInNew-DGDd5qxt.js","./LoadingButton-DtnAWL1w.js","./index-B3tcK3_z.js","./actions-Wo9kGXdj.js","./useLocalStorage-Dpl2DibN.js","./MoreVert-KNjOpSoE.js","./DeleteOutline-BjSm7PCr.js","./get-safe-url-QppwE77w.js","./ButtonGroup-C_JbniJW.js","./getValidReactChildren-Cjo-LFyx.js","./ChevronRight-BKFXnJ7g.js","./html-title-BpNgi7iw.js","./preference-iiwdIYk6.js","./index-BdVOugOI.js","./Done-Bh0vP7e6.js","./edit.svg-833vjqGH.js","./ArrowDropDown-lsZjWbH5.js","./index-cZdqepfp.js","./iframe-CH8rbppJ.js","./Autocomplete-79tADtg2.js","./ListSubheader-CHT01bOG.js","./rotate-session-key-Bfdv46s3.js","./visuallyHidden-Dan1xhjv.js","./chain-Bg9mny_E.js","./switch-control-X9WA2UjB.js","./index.esm-WZ7Avw4n.js","./index-CsTd8Q4H.js","./redux-DfszZyTl.js","./typeof-QjJsDpFa.js","./provider-icon-Dm9XYo2I.js","./simple-select-DxwJpURO.js","./index-BHQcEGDq.js","./FilterList-Dphn1UXx.js","./CSSTransition-DinXVMZy.js","./emotion-cache.browser.esm-Epiq9rij.js","./depsEqual-Cvglsxh5.js","./TableSearch-DxZYknBa.js","./Search-CUoYhy1v.js","./Clear-Chg9fOPG.js","./use-mobile-DOhPXmq7.js","./EditOutlined-Qskj3-tY.js","./appearance-CKF7Bo6h.js","./config-navigation-B-CtKO70.js","./cloneDeep-DNOsGRuG.js","./_createAggregator-BLxu5C4t.js","./raf-schd.esm-Bo9SYHL8.js","./ListItemButton-C8XIzvy_.js","./index-CbnvHmOA.js","./KeyboardArrowDown-CD6n37Y9.js","./index-DSjaZAu3.js","./index-Dr7VuVvC.js","./shorten-label-CN9pEyom.js","./Replay-BzP784vV.js","./Refresh-B0_3c6OW.js","./traffic-C_4zWOQM.js","./ChevronLeft-Byy2_Dj8.js","./index-DBii9-f-.js","./base-chart-_0APPWGp.js","./index-BfTQCMKf.js","./AdapterDayjs-Chnfr9fe.js","./useThemeProps-BS48y1B2.js","./audit-logs-CLt2l7-q.js","./index-WHQs_PkC.js","./decode-DPztD6kB.js","./index-gnjjKJuC.css","./UnfoldMore-DvSw9pGy.js","./index-CBHMH4Z7.js","./ua-parser-DP5omx3I.js","./index-B4fcaU-r.js","./Google-C0G3l0jL.js","./list-header-C3SJDsfy.js","./ToggleButtonGroup-BwLu2zCu.js","./lock.svg-CGmlgpmU.js","./index-CKWS_NIP.js","./ViewList-DhdvL6AT.js","./Verified-CfonAx-G.js","./index-BfnrUUfH.js","./sdk-l1r4MOQ_.js","./service-DCzLPjA3.js","./table-icons-Xs4hP9Pw.js","./Edit-DFmlgA7E.js","./index-HqyXcG7M.js","./Link-Mg5UlAaZ.js","./item-hbtsGcq0.js","./Launch-Cor8d4pT.js","./item-G0iZE90Q.css","./index-BSBkhGl0.js","./url-join-rRKl4Ear.js","./connect-to-CBEHT895.js","./index-DRYJ0xIl.js","./agreement-07HiBYSX.js","./install-from-url-PuHPLadE.js","./without-wallet-qfmn1VhQ.js","./Stepper-DfUO9buC.js","./toUpper-DXK6zXOf.js","./log-D4BWVj7G.js","./download-Df1TrhTI.js","./runtime-BUcScDcM.js","./memory-lh5QZ4zg.js","./index-DCHzmqFc.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{V as He,n as qe,bn as Ct,r as b,aH as F,j as d,Y as Qe,J as Z,v as Ge,w as Tt,i as j,bC as jt,H as J,Z as Ke,bm as We,A as Pt,u as At,d as Dt,bD as Ot,bE as Lt,bF as Ae,bG as Bt,bH as Mt,I as De,C as Oe,M as Rt,bI as Nt,T as ue,K as Ft,bJ as I,s as Vt}from"./index-Bek3Nxot.js";import{T as zt,u as $t}from"./html-title-BpNgi7iw.js";import{B as Ut}from"./status-B-GGRrEB.js";import{D as Ht,B as qt}from"./actions-Wo9kGXdj.js";import{u as Qt}from"./blocklet-ClPWX-SV.js";import{p as Gt}from"./index-BJVvRV0h.js";import{B as Kt,a as Wt,T as Jt}from"./team-B9jB42uy.js";import{P as Xt}from"./permission-D09K4EY6.js";import{B as Yt}from"./Breadcrumbs-Cqjt-kp8.js";import"./useLocalStorage-Dpl2DibN.js";import"./MoreVert-KNjOpSoE.js";import"./DeleteOutline-BjSm7PCr.js";import"./get-safe-url-QppwE77w.js";import"./ButtonGroup-C_JbniJW.js";import"./getValidReactChildren-Cjo-LFyx.js";import"./url-evaluation-DetQFE_e.js";/**
|
|
3
3
|
* (c) Iconify
|
|
4
4
|
*
|
|
5
5
|
* For the full copyright and license information, please view the license.txt or license.gpl.txt
|
|
@@ -9,7 +9,7 @@ import{V as He,n as qe,bn as Ct,r as b,aH as F,j as d,Y as Qe,J as Z,v as Ge,w a
|
|
|
9
9
|
*
|
|
10
10
|
* @license MIT
|
|
11
11
|
* @version 3.1.1
|
|
12
|
-
*/const Je=Object.freeze({left:0,top:0,width:16,height:16}),ee=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),H=Object.freeze({...Je,...ee}),me=Object.freeze({...H,body:"",hidden:!1});function Zt(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function Le(e,t){const n=Zt(e,t);for(const r in me)r in ee?r in e&&!(r in n)&&(n[r]=ee[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function en(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);function s(i){if(n[i])return o[i]=[];if(!(i in o)){o[i]=null;const c=r[i]&&r[i].parent,l=c&&s(c);l&&(o[i]=[c].concat(l))}return o[i]}return Object.keys(n).concat(Object.keys(r)).forEach(s),o}function tn(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let s={};function i(c){s=Le(r[c]||o[c],s)}return i(t),n.forEach(i),Le(e,s)}function nn(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(o=>{t(o,null),n.push(o)});const r=en(e);for(const o in r){const s=r[o];s&&(t(o,tn(e,o,s)),n.push(o))}return n}const V=/^[a-z0-9]+(-[a-z0-9]+)*$/,R=(e,t,n,r="")=>{const o=e.split(":");if(e.slice(0,1)==="@"){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const c=o.pop(),l=o.pop(),a={provider:o.length>0?o[0]:r,prefix:l,name:c};return t&&!X(a)?null:a}const s=o[0],i=s.split("-");if(i.length>1){const c={provider:r,prefix:i.shift(),name:i.join("-")};return t&&!X(c)?null:c}if(n&&r===""){const c={provider:r,prefix:"",name:s};return t&&!X(c,n)?null:c}return null},X=(e,t)=>e?!!((e.provider===""||e.provider.match(V))&&(t&&e.prefix===""||e.prefix.match(V))&&e.name.match(V)):!1,on={provider:"",aliases:{},not_found:{},...Je};function fe(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function rn(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!fe(e,on))return null;const n=t.icons;for(const o in n){const s=n[o];if(!o.match(V)||typeof s.body!="string"||!fe(s,me))return null}const r=t.aliases||Object.create(null);for(const o in r){const s=r[o],i=s.parent;if(!o.match(V)||typeof i!="string"||!n[i]&&!r[i]||!fe(s,me))return null}return t}const te=Object.create(null);function sn(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function C(e,t){const n=te[e]||(te[e]=Object.create(null));return n[t]||(n[t]=sn(e,t))}function Ee(e,t){return rn(t)?nn(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function cn(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}function an(e,t){let n=[];return(typeof e=="string"?[e]:Object.keys(te)).forEach(o=>{(typeof o=="string"&&typeof t=="string"?[t]:Object.keys(te[o]||{})).forEach(i=>{const c=C(o,i);n=n.concat(Object.keys(c.icons).map(l=>(o!==""?"@"+o+":":"")+i+":"+l))})}),n}let _e=!1;function ln(e){return _e}function q(e){const t=typeof e=="string"?R(e,!0,_e):e;if(t){const n=C(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function un(e,t){const n=R(e,!0,_e);if(!n)return!1;const r=C(n.provider,n.prefix);return cn(r,n.name,t)}function Xe(e,t){if(typeof e!="object")return!1;typeof t!="string"&&(t=e.provider||"");const n=e.prefix;if(!X({provider:t,prefix:n,name:"a"}))return!1;const r=C(t,n);return!!Ee(r,e)}function fn(e){return!!q(e)}function dn(e){const t=q(e);return t?{...H,...t}:null}const Ye=Object.freeze({width:null,height:null}),Ze=Object.freeze({...Ye,...ee}),pn=/(-?[0-9.]*[0-9]+[0-9.]*)/g,mn=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function he(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(pn);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=mn.test(s);for(;;){if(i){const c=parseFloat(s);isNaN(c)?o.push(s):o.push(Math.ceil(c*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}const hn=e=>e==="unset"||e==="undefined"||e==="none";function re(e,t){const n={...H,...e},r={...Ze,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(g=>{const y=[],E=g.hFlip,A=g.vFlip;let w=g.rotate;E?A?w+=2:(y.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),y.push("scale(-1 1)"),o.top=o.left=0):A&&(y.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),y.push("scale(1 -1)"),o.top=o.left=0);let S;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:S=o.height/2+o.top,y.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:y.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:S=o.width/2+o.left,y.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}w%2===1&&(o.left!==o.top&&(S=o.left,o.left=o.top,o.top=S),o.width!==o.height&&(S=o.width,o.width=o.height,o.height=S)),y.length&&(s='<g transform="'+y.join(" ")+'">'+s+"</g>")});const i=r.width,c=r.height,l=o.width,a=o.height;let u,p;i===null?(p=c===null?"1em":c==="auto"?a:c,u=he(p,l/a)):(u=i==="auto"?l:i,p=c===null?he(u,a/l):c==="auto"?a:c);const f={},h=(g,y)=>{hn(y)||(f[g]=y.toString())};return h("width",u),h("height",p),f.viewBox=o.left.toString()+" "+o.top.toString()+" "+l.toString()+" "+a.toString(),{attributes:f,body:s}}const gn=/\sid="(\S+)"/g,bn="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let yn=0;function et(e,t=bn){const n=[];let r;for(;r=gn.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const i=typeof t=="function"?t(s):t+(yn++).toString(),c=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+c+')([")]|\\.[a-z])',"g"),"$1"+i+o+"$3")}),e=e.replace(new RegExp(o,"g"),""),e}const D={local:!0,session:!0},tt={local:new Set,session:new Set};let Ce=!1;function vn(e){Ce=e}const Be="iconify2",U="iconify",nt=U+"-count",Me=U+"-version",ot=36e5,xn=168;function ge(e,t){try{return e.getItem(t)}catch{}}function Te(e,t,n){try{return e.setItem(t,n),!0}catch{}}function Re(e,t){try{e.removeItem(t)}catch{}}function be(e,t){return Te(e,nt,t.toString())}function ye(e){return parseInt(ge(e,nt))||0}let K=typeof window>"u"?{}:window;function rt(e){const t=e+"Storage";try{if(K&&K[t]&&typeof K[t].length=="number")return K[t]}catch{}D[e]=!1}function st(e,t){const n=rt(e);if(!n)return;const r=ge(n,Me);if(r!==Be){if(r){const c=ye(n);for(let l=0;l<c;l++)Re(n,U+l.toString())}Te(n,Me,Be),be(n,0);return}const o=Math.floor(Date.now()/ot)-xn,s=c=>{const l=U+c.toString(),a=ge(n,l);if(typeof a=="string"){try{const u=JSON.parse(a);if(typeof u=="object"&&typeof u.cached=="number"&&u.cached>o&&typeof u.provider=="string"&&typeof u.data=="object"&&typeof u.data.prefix=="string"&&t(u,c))return!0}catch{}Re(n,l)}};let i=ye(n);for(let c=i-1;c>=0;c--)s(c)||(c===i-1?(i--,be(n,i)):tt[e].add(c))}function it(){if(!Ce){vn(!0);for(const e in D)st(e,t=>{const n=t.data,r=t.provider,o=n.prefix,s=C(r,o);if(!Ee(s,n).length)return!1;const i=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,i):i,!0})}}function ct(e,t){switch(e){case"local":case"session":D[e]=t;break;case"all":for(const n in D)D[n]=t;break}}const ve=Object.create(null);function at(e,t){ve[e]=t}function xe(e){return ve[e]||ve[""]}function je(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const se=Object.create(null),N=["https://api.simplesvg.com","https://api.unisvg.com"],Y=[];for(;N.length>0;)N.length===1||Math.random()>.5?Y.push(N.shift()):Y.push(N.pop());se[""]=je({resources:["https://api.iconify.design"].concat(Y)});function lt(e,t){const n=je(t);return n===null?!1:(se[e]=n,!0)}function ie(e){return se[e]}function wn(){return Object.keys(se)}const Sn=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let ne=Sn();function In(e){ne=e}function kn(){return ne}function En(e,t){const n=ie(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let o=0;n.resources.forEach(i=>{o=Math.max(o,i.length)});const s=t+".json?icons=";r=n.maxURL-o-n.path.length-s.length}return r}function _n(e){return e===404}const Cn=(e,t,n)=>{const r=[],o=En(e,t),s="icons";let i={type:s,provider:e,prefix:t,icons:[]},c=0;return n.forEach((l,a)=>{c+=l.length+1,c>=o&&a>0&&(r.push(i),i={type:s,provider:e,prefix:t,icons:[]},c=l.length),i.icons.push(l)}),r.push(i),r};function Tn(e){if(typeof e=="string"){const t=ie(e);if(t)return t.path}return"/"}const jn=(e,t,n)=>{if(!ne){n("abort",424);return}let r=Tn(t.provider);switch(t.type){case"icons":{const s=t.prefix,c=t.icons.join(","),l=new URLSearchParams({icons:c});r+=s+".json?"+l.toString();break}case"custom":{const s=t.uri;r+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let o=503;ne(e+r).then(s=>{const i=s.status;if(i!==200){setTimeout(()=>{n(_n(i)?"abort":"next",i)});return}return o=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",o)});return}setTimeout(()=>{n("success",s)})}).catch(()=>{n("next",o)})},Pn={prepare:Cn,send:jn};function An(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((o,s)=>o.provider!==s.provider?o.provider.localeCompare(s.provider):o.prefix!==s.prefix?o.prefix.localeCompare(s.prefix):o.name.localeCompare(s.name));let r={provider:"",prefix:"",name:""};return e.forEach(o=>{if(r.name===o.name&&r.prefix===o.prefix&&r.provider===o.provider)return;r=o;const s=o.provider,i=o.prefix,c=o.name,l=n[s]||(n[s]=Object.create(null)),a=l[i]||(l[i]=C(s,i));let u;c in a.icons?u=t.loaded:i===""||a.missing.has(c)?u=t.missing:u=t.pending;const p={provider:s,prefix:i,name:c};u.push(p)}),t}function ut(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(o=>o.id!==t))})}function Dn(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach(s=>{const i=s.icons,c=i.pending.length;i.pending=i.pending.filter(l=>{if(l.prefix!==o)return!0;const a=l.name;if(e.icons[a])i.loaded.push({provider:r,prefix:o,name:a});else if(e.missing.has(a))i.missing.push({provider:r,prefix:o,name:a});else return n=!0,!0;return!1}),i.pending.length!==c&&(n||ut([e],s.id),s.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),s.abort))})}))}let On=0;function Ln(e,t,n){const r=On++,o=ut.bind(null,n,r);if(!t.pending.length)return o;const s={id:r,icons:t,callback:e,abort:o};return n.forEach(i=>{(i.loaderCallbacks||(i.loaderCallbacks=[])).push(s)}),o}function Bn(e,t=!0,n=!1){const r=[];return e.forEach(o=>{const s=typeof o=="string"?R(o,t,n):o;s&&r.push(s)}),r}var Mn={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function Rn(e,t,n,r){const o=e.resources.length,s=e.random?Math.floor(Math.random()*o):e.index;let i;if(e.random){let m=e.resources.slice(0);for(i=[];m.length>1;){const k=Math.floor(Math.random()*m.length);i.push(m[k]),m=m.slice(0,k).concat(m.slice(k+1))}i=i.concat(m)}else i=e.resources.slice(s).concat(e.resources.slice(0,s));const c=Date.now();let l="pending",a=0,u,p=null,f=[],h=[];typeof r=="function"&&h.push(r);function g(){p&&(clearTimeout(p),p=null)}function y(){l==="pending"&&(l="aborted"),g(),f.forEach(m=>{m.status==="pending"&&(m.status="aborted")}),f=[]}function E(m,k){k&&(h=[]),typeof m=="function"&&h.push(m)}function A(){return{startTime:c,payload:t,status:l,queriesSent:a,queriesPending:f.length,subscribe:E,abort:y}}function w(){l="failed",h.forEach(m=>{m(void 0,u)})}function S(){f.forEach(m=>{m.status==="pending"&&(m.status="aborted")}),f=[]}function L(m,k,_){const B=k!=="success";switch(f=f.filter(T=>T!==m),l){case"pending":break;case"failed":if(B||!e.dataAfterTimeout)return;break;default:return}if(k==="abort"){u=_,w();return}if(B){u=_,f.length||(i.length?v():w());return}if(g(),S(),!e.random){const T=e.resources.indexOf(m.resource);T!==-1&&T!==e.index&&(e.index=T)}l="completed",h.forEach(T=>{T(_)})}function v(){if(l!=="pending")return;g();const m=i.shift();if(m===void 0){if(f.length){p=setTimeout(()=>{g(),l==="pending"&&(S(),w())},e.timeout);return}w();return}const k={status:"pending",resource:m,callback:(_,B)=>{L(k,_,B)}};f.push(k),a++,p=setTimeout(v,e.rotate),n(m,t,k.callback)}return setTimeout(v),A}function ft(e){const t={...Mn,...e};let n=[];function r(){n=n.filter(c=>c().status==="pending")}function o(c,l,a){const u=Rn(t,c,l,(p,f)=>{r(),a&&a(p,f)});return n.push(u),u}function s(c){return n.find(l=>c(l))||null}return{query:o,find:s,setIndex:c=>{t.index=c},getIndex:()=>t.index,cleanup:r}}function Ne(){}const de=Object.create(null);function Nn(e){if(!de[e]){const t=ie(e);if(!t)return;const n=ft(t),r={config:t,redundancy:n};de[e]=r}return de[e]}function dt(e,t,n){let r,o;if(typeof e=="string"){const s=xe(e);if(!s)return n(void 0,424),Ne;o=s.send;const i=Nn(e);i&&(r=i.redundancy)}else{const s=je(e);if(s){r=ft(s);const i=e.resources?e.resources[0]:"",c=xe(i);c&&(o=c.send)}}return!r||!o?(n(void 0,424),Ne):r.query(t,o,n)().abort}function Fn(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const r in D)st(r,o=>{const s=o.data;return o.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return!0}function Vn(e,t){Ce||it();function n(r){let o;if(!D[r]||!(o=rt(r)))return;const s=tt[r];let i;if(s.size)s.delete(i=Array.from(s).shift());else if(i=ye(o),!be(o,i+1))return;const c={cached:Math.floor(Date.now()/ot),provider:e.provider,data:t};return Te(o,U+i.toString(),JSON.stringify(c))}t.lastModified&&!Fn(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"))}function Fe(){}function zn(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,Dn(e)}))}function $n(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,o=e.iconsToLoad;delete e.iconsToLoad;let s;if(!o||!(s=xe(n)))return;s.prepare(n,r,o).forEach(c=>{dt(n,c,l=>{if(typeof l!="object")c.icons.forEach(a=>{e.missing.add(a)});else try{const a=Ee(e,l);if(!a.length)return;const u=e.pendingIcons;u&&a.forEach(p=>{u.delete(p)}),Vn(e,l)}catch(a){console.error(a)}zn(e)})})}))}const Un=e=>{const n=C(e.provider,e.prefix).pendingIcons;return!!(n&&n.has(e.name))},Pe=(e,t)=>{const n=Bn(e,!0,ln()),r=An(n);if(!r.pending.length){let l=!0;return t&&setTimeout(()=>{l&&t(r.loaded,r.missing,r.pending,Fe)}),()=>{l=!1}}const o=Object.create(null),s=[];let i,c;return r.pending.forEach(l=>{const{provider:a,prefix:u}=l;if(u===c&&a===i)return;i=a,c=u,s.push(C(a,u));const p=o[a]||(o[a]=Object.create(null));p[u]||(p[u]=[])}),r.pending.forEach(l=>{const{provider:a,prefix:u,name:p}=l,f=C(a,u),h=f.pendingIcons||(f.pendingIcons=new Set);h.has(p)||(h.add(p),o[a][u].push(p))}),s.forEach(l=>{const{provider:a,prefix:u}=l;o[a][u].length&&$n(l,o[a][u])}),t?Ln(t,r,s):Fe},Hn=e=>new Promise((t,n)=>{const r=typeof e=="string"?R(e,!0):e;if(!r){n(e);return}Pe([r||e],o=>{if(o.length&&r){const s=q(r);if(s){t({...H,...s});return}}n(e)})});function pt(e,t){const n={...e};for(const r in t){const o=t[r],s=typeof o;r in Ye?(o===null||o&&(s==="string"||s==="number"))&&(n[r]=o):s===typeof n[r]&&(n[r]=r==="rotate"?o%4:o)}return n}const ce={...Ze,inline:!1},pe="iconify",we="iconify-inline",P="iconifyData"+Date.now();let O=[];function Q(e){for(let t=0;t<O.length;t++){const n=O[t];if((typeof n.node=="function"?n.node():n.node)===e)return n}}function mt(e,t=!1){let n=Q(e);return n?(n.temporary&&(n.temporary=t),n):(n={node:e,temporary:t},O.push(n),n)}function qn(){if(document.documentElement)return mt(document.documentElement);O.push({node:()=>document.documentElement})}function Qn(e){O=O.filter(t=>e!==t&&e!==(typeof t.node=="function"?t.node():t.node))}function G(){return O}function Gn(e){const t=document;t.readyState&&t.readyState!=="loading"?e():t.addEventListener("DOMContentLoaded",e)}let z=null;const Kn={childList:!0,subtree:!0,attributes:!0};function ht(e){if(!e.observer)return;const t=e.observer;t.pendingScan||(t.pendingScan=setTimeout(()=>{delete t.pendingScan,z&&z(e)}))}function Wn(e,t){if(!e.observer)return;const n=e.observer;if(!n.pendingScan)for(let r=0;r<t.length;r++){const o=t[r];if(o.addedNodes&&o.addedNodes.length>0||o.type==="attributes"&&o.target[P]!==void 0){n.paused||ht(e);return}}}function gt(e,t){e.observer.instance.observe(t,Kn)}function oe(e){let t=e.observer;if(t&&t.instance)return;const n=typeof e.node=="function"?e.node():e.node;!n||!window||(t||(t={paused:0},e.observer=t),t.instance=new window.MutationObserver(Wn.bind(null,e)),gt(e,n),t.paused||ht(e))}function Ve(){G().forEach(oe)}function bt(e){if(!e.observer)return;const t=e.observer;t.pendingScan&&(clearTimeout(t.pendingScan),delete t.pendingScan),t.instance&&(t.instance.disconnect(),delete t.instance)}function Jn(e){const t=z!==null;if(z!==e&&(z=e,t&&G().forEach(bt)),t){Ve();return}Gn(Ve)}function Se(e){(e?[e]:G()).forEach(t=>{if(!t.observer){t.observer={paused:1};return}const n=t.observer;if(n.paused++,n.paused>1||!n.instance)return;n.instance.disconnect()})}function Xn(e){if(e){const t=Q(e);t&&Se(t)}else Se()}function Ie(e){(e?[e]:G()).forEach(t=>{if(!t.observer){oe(t);return}const n=t.observer;if(n.paused&&(n.paused--,!n.paused)){const r=typeof t.node=="function"?t.node():t.node;if(r)n.instance?gt(t,r):oe(t);else return}})}function Yn(e){if(e){const t=Q(e);t&&Ie(t)}else Ie()}function yt(e,t=!1){const n=mt(e,t);return oe(n),n}function vt(e){const t=Q(e);t&&(bt(t),Qn(e))}function Zn(e,t){if(e.name!==t.name||e.mode!==t.mode)return!0;const n=e.customisations,r=t.customisations;for(const o in ce)if(n[o]!==r[o])return!0;return!1}function eo(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(o){for(;o<0;)o+=4;return o%4}if(n===""){const o=parseInt(e);return isNaN(o)?0:r(o)}else if(n!==e){let o=0;switch(n){case"%":o=25;break;case"deg":o=90}if(o){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/o,s%1===0?r(s):0)}}return t}const to=/[\s,]+/;function no(e,t){t.split(to).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}const oo=["width","height"],ro=["inline","hFlip","vFlip"];function so(e,t){return e===t||e==="true"?!0:e===""||e==="false"?!1:null}function io(e){const t=e.getAttribute("data-icon"),n=typeof t=="string"&&R(t,!0);if(!n)return null;const r={...ce,inline:e.classList&&e.classList.contains(we)};oo.forEach(c=>{const l=e.getAttribute("data-"+c);l&&(r[c]=l)});const o=e.getAttribute("data-rotate");typeof o=="string"&&(r.rotate=eo(o));const s=e.getAttribute("data-flip");typeof s=="string"&&no(r,s),ro.forEach(c=>{const l="data-"+c,a=so(e.getAttribute(l),l);typeof a=="boolean"&&(r[c]=a)});const i=e.getAttribute("data-mode");return{name:t,icon:n,customisations:r,mode:i}}const co="svg."+pe+", i."+pe+", span."+pe+", i."+we+", span."+we;function ao(e){const t=[];return e.querySelectorAll(co).forEach(n=>{const r=n[P]||n.tagName.toLowerCase()!=="svg"?io(n):null;r&&t.push({node:n,props:r})}),t}function xt(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}let $;function lo(){try{$=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{$=null}}function uo(e){return $===void 0&&lo(),$?$.createHTML(e):e}function wt(e){const t=new Set(["iconify"]);return["provider","prefix"].forEach(n=>{e[n]&&t.add("iconify--"+e[n])}),t}function St(e,t,n,r){const o=e.classList;if(r){const i=r.classList;Array.from(i).forEach(c=>{o.add(c)})}const s=[];return t.forEach(i=>{o.contains(i)?n.has(i)&&s.push(i):(o.add(i),s.push(i))}),n.forEach(i=>{t.has(i)||o.remove(i)}),s}function It(e,t,n){const r=e.style;(n||[]).forEach(s=>{r.removeProperty(s)});const o=[];for(const s in t)r.getPropertyValue(s)||(o.push(s),r.setProperty(s,t[s]));return o}function kt(e,t,n){let r;try{r=document.createElement("span")}catch{return e}const o=t.customisations,s=re(n,o),i=e[P],c=xt(et(s.body),{"aria-hidden":"true",role:"img",...s.attributes});r.innerHTML=uo(c);const l=r.childNodes[0],a=e.attributes;for(let g=0;g<a.length;g++){const y=a.item(g),E=y.name;E!=="class"&&!l.hasAttribute(E)&&l.setAttribute(E,y.value)}const u=wt(t.icon),p=St(l,u,new Set(i&&i.addedClasses),e),f=It(l,o.inline?{"vertical-align":"-0.125em"}:{},i&&i.addedStyles),h={...t,status:"loaded",addedClasses:p,addedStyles:f};return l[P]=h,e.parentNode&&e.parentNode.replaceChild(l,e),l}function fo(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function po(e){return"data:image/svg+xml,"+fo(e)}function mo(e){return'url("'+po(e)+'")'}const ho={display:"inline-block"},ke={"background-color":"currentColor"},Et={"background-color":"transparent"},ze={image:"var(--svg)",repeat:"no-repeat",size:"100% 100%"},$e={"-webkit-mask":ke,mask:ke,background:Et};for(const e in $e){const t=$e[e];for(const n in ze)t[e+"-"+n]=ze[n]}function Ue(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}function go(e,t,n,r){const o=t.customisations,s=re(n,o),i=s.attributes,c=e[P],l=xt(s.body,{...i,width:n.width+"",height:n.height+""}),a=wt(t.icon),u=St(e,a,new Set(c&&c.addedClasses)),f={"--svg":mo(l),width:Ue(i.width),height:Ue(i.height),...ho,...r?ke:Et};o.inline&&(f["vertical-align"]="-0.125em");const h=It(e,f,c&&c.addedStyles),g={...t,status:"loaded",addedClasses:u,addedStyles:h};return e[P]=g,e}let W=!1;function bo(){W||(W=!0,setTimeout(()=>{W&&(W=!1,M())}))}function M(e,t=!1){const n=Object.create(null);function r(o,s){const{provider:i,prefix:c,name:l}=o,a=C(i,c),u=a.icons[l];if(u)return{status:"loaded",icon:u};if(a.missing.has(l))return{status:"missing"};if(s&&!Un(o)){const p=n[i]||(n[i]=Object.create(null));(p[c]||(p[c]=new Set)).add(l)}return{status:"loading"}}(e?[e]:G()).forEach(o=>{const s=typeof o.node=="function"?o.node():o.node;if(!s||!s.querySelectorAll)return;let i=!1,c=!1;function l(a,u,p){if(c||(c=!0,Se(o)),a.tagName.toUpperCase()!=="SVG"){const f=u.mode,h=f==="mask"||(f==="bg"?!1:f==="style"?p.body.indexOf("currentColor")!==-1:null);if(typeof h=="boolean"){go(a,u,{...H,...p},h);return}}kt(a,u,p)}ao(s).forEach(({node:a,props:u})=>{const p=a[P];if(!p){const{status:h,icon:g}=r(u.icon,!0);if(g){l(a,u,g);return}i=i||h==="loading",a[P]={...u,status:h};return}let f;if(Zn(p,u)){if(f=r(u.icon,p.name!==u.name),!f.icon){i=i||f.status==="loading",Object.assign(p,{...u,status:f.status});return}}else{if(p.status!=="loading")return;if(f=r(u.icon,!1),!f.icon){p.status=f.status;return}}l(a,u,f.icon)}),o.temporary&&!i?vt(s):t&&i?yt(s,!0):c&&o.observer&&Ie(o)});for(const o in n){const s=n[o];for(const i in s){const c=s[i];Pe(Array.from(c).map(l=>({provider:o,prefix:i,name:l})),bo)}}}function yo(e){const t=Q(e);t?M(t):M({node:e,temporary:!0},!0)}function _t(e,t,n=!1){const r=q(e);if(!r)return null;const o=R(e),s=pt(ce,t||{}),i=kt(document.createElement("span"),{name:e,icon:o,customisations:s},r);return n?i.outerHTML:i}function vo(){return"3.1.1"}function xo(e,t){return _t(e,t,!1)}function wo(e,t){return _t(e,t,!0)}function So(e,t){const n=q(e);if(!n)return null;const r=pt(ce,t||{});return re(n,r)}function Io(e){e?yo(e):M()}if(typeof document<"u"&&typeof window<"u"){qn();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!Xe(r))&&console.error(n)}catch{console.error(n)}})}setTimeout(()=>{Jn(M),M()})}function ko(e,t){ct(e,t!==!1)}function Eo(e){ct(e,!0)}at("",Pn);if(typeof document<"u"&&typeof window<"u"){it();const e=window;if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(const n in t){const r="IconifyProviders["+n+"] is invalid.";try{const o=t[n];if(typeof o!="object"||!o||o.resources===void 0)continue;lt(n,o)||console.error(r)}catch{console.error(r)}}}}const _o={getAPIConfig:ie,setAPIModule:at,sendAPIQuery:dt,setFetch:In,getFetch:kn,listAPIProviders:wn},Co={_api:_o,addAPIProvider:lt,loadIcons:Pe,loadIcon:Hn,iconExists:fn,getIcon:dn,listIcons:an,addIcon:un,addCollection:Xe,replaceIDs:et,calculateSize:he,buildIcon:re,getVersion:vo,renderSVG:xo,renderHTML:wo,renderIcon:So,scan:Io,observe:yt,stopObserving:vt,pauseObserver:Xn,resumeObserver:Yn,enableCache:ko,disableCache:Eo};try{self.Iconify===void 0&&(self.Iconify=Co)}catch{}const To=e=>{const t={};let n=null;return j.forEachBlockletSync(e,r=>{t[r.meta.bundleDid]?n=j.getDisplayName(r,!0):r.meta.bundleDid&&(t[r.meta.bundleDid]=!0)}),n},jo=(e,t,n)=>{const{hostname:r,href:o}=e;if(!t)return o;if(n){const i=/\d+[-.]\d+[-.]\d+[-.]\d+/.exec(r);if(!i)return o;const c=i[0],a=((t.site?.domainAliases||[]).map(u=>u.value).filter(Boolean).find(u=>u.endsWith(F.DEFAULT_DID_DOMAIN))||"").replace(`.${F.DEFAULT_DID_DOMAIN}`,"");return a?o.replace(r,`${a}-${c}.${F.DEFAULT_IP_DOMAIN_SUFFIX}`):o}return o.replace(t.meta.bundleDid,t.appPid)};function Po(){const{t:e}=He(),{api:t}=qe(),{blocklet:n}=Qt(),{inService:r}=Ct(),[o,s]=b.useState(!1),[i,c]=b.useState(5),l=n&&n.structVersion!==F.APP_STRUCT_VERSION,a=()=>{try{if(j.isBlockletRunning(n)){J.error(e("blocklet.migrate.tip.running"));return}const f=To(n);if(f){J.error(e("blocklet.migrate.tip.duplicate",{name:f}));return}s(!0)}catch(f){J.error(Ke(f))}},u=()=>{const f=jo(window.location,n,r);setTimeout(()=>{window.location.href=f},5e3),c(5),setInterval(()=>{c(h=>h-1)},1e3)},p=()=>s(!1);return[l&&d.jsxs(Qe,{severity:"warning",style:{margin:"12px 0"},children:[d.jsxs(Z,{sx:{display:"flex",alignItems:"center"},children:[d.jsx(Ge,{variant:"contained",size:"small",color:"primary",onClick:()=>a(),style:{marginRight:8},children:e("blocklet.migrate.intro.l1")}),d.jsx("span",{children:e("blocklet.migrate.intro.l2")})]}),["l3","l4","l5","l6"].map(f=>d.jsx(Z,{sx:{display:"flex",alignItems:"center"},children:e(`blocklet.migrate.intro.${f}`)},f))]},"alert"),n&&d.jsx(Tt,{popup:!0,open:o,saveConnect:!1,forceConnected:!1,action:"migrate-app-to-struct-v2",checkFn:t.get,checkTimeout:5*60*1e3,onSuccess:u,extraParams:{appDid:n.appDid,did:n.meta.did,wt:jt(n,!0),title:j.getDisplayName(n)},messages:{title:e("blocklet.migrate.title"),scan:e("blocklet.migrate.scan"),confirm:e("blocklet.migrate.confirm"),success:i>=0?e("blocklet.migrate.success",{sec:i}):"Redirecting..."},onClose:p},"connect")]}const Ao=b.lazy(()=>I(()=>import("./overview-dKd5GT8L.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url)),Do=b.lazy(()=>I(()=>import("./domains-D6W5MF-p.js"),__vite__mapDeps([18,1,2,19,20,6,21,22,23,24,25,26,27,15,28,29,30,31,5,32,33,34,35,36,10]),import.meta.url)),Oo=b.lazy(()=>I(()=>import("./index-Bv7eZ7mu.js"),__vite__mapDeps([37,1,2,38,39,40,41,42,43,44,8,21,45,46,10,47,12,48,49,50,51,52,53,54,55,56,57,6,25,7,5,58,9,11,13,59,60,61,62,63,64,65,22,28,66,67,68,69,70,19,71,72,73,74,15]),import.meta.url)),Lo=b.lazy(()=>I(()=>import("./appearance-DPQCzdhZ.js"),__vite__mapDeps([75,1,2,6,74]),import.meta.url)),Bo=b.lazy(()=>I(()=>import("./config-navigation-nzNCj2pe.js"),__vite__mapDeps([76,1,2,12,77,48,78,70,6,61,62,63,79,7,8,38,39,40,41,42,43,44,21,60,65,46,73,51,17,54,55,80,31,81,82,72,28,35,83,53,36]),import.meta.url)),Mo=b.lazy(()=>I(()=>import("./index-B_lfyJAT.js"),__vite__mapDeps([84,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,85,5,46,86,87,88,53,89,45,90,91,92,93,94,57]),import.meta.url)),Ro=b.lazy(()=>I(()=>import("./audit-logs-C1Fzb4ps.js"),__vite__mapDeps([95,19,1,2,71,72,73,39,96,97,98,99,85,7,6,8]),import.meta.url)),No=b.lazy(()=>I(()=>import("./index-BUZBDqqG.js").then(e=>e.i),__vite__mapDeps([100,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,46,7,6,8,101,74,102,43,44,21,103,77,28,50,104,58,105,106]),import.meta.url)),Fo=b.lazy(()=>I(()=>import("./index-Bn367fJd.js").then(e=>e.i),__vite__mapDeps([107,1,2,28,108,66,67,68,69,61,62,63,70,19,71,72,73,40,13,102,43,44,7,6,8,60,103,77,54,55,99,21,25,93,94,57,46,5,109,41,11,110,111,81,74,22,23,85,101]),import.meta.url)),Vo=b.lazy(()=>I(()=>import("./service-CqUPpwp0.js"),__vite__mapDeps([112,1,2,113,67,68,69,90,63,79,62,94,46,28,22,73,114,45,89,72,51]),import.meta.url)),zo=b.lazy(()=>I(()=>import("./index-DDM20tun.js"),__vite__mapDeps([115,1,2,19,38,39,40,41,42,43,44,8,21,59,6,114,113,67,68,69,90,63,79,62,94,46,28,22,73,45,89,72,51,47,12,48,49,50,52,53,25,102,116,117,81,82,54,55,109,27,118,24,119,120,121,34,122,4,16,17,35,123,3,124,96,97,98,103,77,125,26,126,5,80,127,32,33,74,11,106,86,23,128,7]),import.meta.url)),$o=b.lazy(()=>I(()=>import("./log-BztLHiQf.js"),__vite__mapDeps([129,1,2,39,130,43,44,55]),import.meta.url)),Uo=b.lazy(()=>I(()=>import("./runtime-Dk9rcZxS.js"),__vite__mapDeps([131,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,6,123,132,91,92,26,105,44]),import.meta.url)),Ho=b.lazy(()=>I(()=>import("./traffic-Dk6Khjvb.js").then(e=>e.t),__vite__mapDeps([88,1,2,53,89,45,90,63,91,92,93,94,68,57]),import.meta.url)),qo=b.lazy(()=>I(()=>import("./index-CYUImSxu.js"),__vite__mapDeps([133,1,2,46,6,74,122,102,43,44,4,16,17,41,35,123,3,5,92,66,67,68,69,61,62,63,70,19,71,72,73,40,42,59,104]),import.meta.url)),Qo=({children:e})=>e;function Go(){const e=Pt(),{tab:t="overview"}=We(),{did:n,blocklet:r,error:o,client:s,actions:{setBlocklet:i,refreshBlocklet:c}}=Wt(),{refresh:l}=At(),{t:a}=He(),{session:u}=qe(),{data:p}=Dt(),f=Ot(()=>u.user?.role&&Lt.includes(u.user.role),[u]),h=b.useCallback(()=>d.jsx(Ro,{scope:n,blocklets:p}),[n,p]),g=b.useCallback(()=>f?d.jsx(Mo,{blocklet:r}):d.jsx(Gt,{status:403}),[r,f]),y=r?.environments.find(x=>x.key==="BLOCKLET_APP_URL")?.value||window.location.origin,E=x=>Mt(x,y),A=x=>{e(`/blocklets/${n}/${x}`)},w=x=>{x&&i(x),c()},S=!r||Ae(r.status)?[]:j.getAppMissingConfigs(r);let L=null;const v=[{label:a("common.overview"),value:"overview"},{breadcrumbsLabel:a("common.components"),label:d.jsx(Bt,{"data-cy":"blocklet-list",color:"error",variant:"dot",invisible:!S.length,children:a("common.components")}),value:"components"}];if(o)L=d.jsxs(d.Fragment,{children:[d.jsx(Qe,{severity:"error",children:Ke(o)}),d.jsx(Ge,{onClick:()=>c(),children:d.jsx("span",{style:{textDecoration:"underline"},children:a("common.retry")})})]});else if(r){const x={overview:d.jsx(Ao,{}),domains:d.jsx(Do,{}),configuration:Oo,appearance:Lo,navigation:Bo,services:Vo,members:d.jsx(Fo,{type:"blocklet",createPassportSvg:E}),passports:No,components:zo,"audit-logs":h,notifications:g,logs:$o,runtime:d.jsx(Uo,{}),traffic:d.jsx(Ho,{client:s,did:n}),didSpaces:d.jsx(qo,{})};t==="configuration"&&Ae(r.status)&&A("overview"),v.push({label:a("common.domains"),value:"domains"}),v.push({label:a("common.members"),value:"members"}),v.push({label:a("team.member.passports"),value:"passports"}),v.push({label:a("common.configuration"),value:"configuration"}),v.push({label:a("common.appearance"),value:"appearance"}),v.push({label:a("common.auditLogs"),value:"audit-logs"}),f&&v.push({label:a("common.notificationRecords"),value:"notifications"}),r&&r.children?.length&&r.structVersion===F.APP_STRUCT_VERSION&&v.push({label:a("common.logs"),value:"logs"}),v.push({label:a("common.configNavigation"),value:"navigation"}),v.push({label:a("common.runtime"),value:"runtime"}),v.push({label:a("common.traffic"),value:"traffic"}),v.push({label:a("storage.spaces.title"),value:"didSpaces"}),j.getBlockletServices(r).length&&v.splice(2,0,{label:a("blocklet.services"),value:"services"});const le=x[t]||x.overview;L=d.jsxs(Ht,{type:"components",children:[!j.isExternalBlocklet(r)&&d.jsx(zt,{tabs:v,current:t,onChange:A,scrollButtons:"auto"}),d.jsx("div",{className:"page-content",children:d.jsx(b.Suspense,{fallback:d.jsx(De,{relative:"parent",children:d.jsx(Oe,{})}),children:b.isValidElement(le)?le:d.jsx(le,{blocklet:r,onUpdate:w,createPassportSvg:E})})})]})}else L=d.jsx(De,{relative:"parent",children:d.jsx(Oe,{})});const m=()=>{},k=({action:x,error:ae})=>{if(ae){J.error(ae.message);return}x==="remove"?(l(),e("/blocklets")):c()},_=v.find(x=>x.value===t),B=r?Jt:Qo,T=$t(_,r?.meta?.title||a("common.blocklets"));return d.jsxs(B,{teamDid:n,children:[T,d.jsxs(Ko,{children:[d.jsxs(Yt,{separator:"›","aria-label":"breadcrumb",className:"page-breadcrumb",children:[d.jsx(Rt,{color:"textSecondary",to:"/blocklets",children:a("common.blocklets")}),d.jsx(Nt,{to:`/blocklets/${n}/overview`,style:x=>x?{color:"inherit"}:{},children:a("common.detail")}),d.jsx(ue,{color:"textSecondary",children:_?_.breadcrumbsLabel||_.label:""})]}),d.jsxs(ue,{component:"div",className:"page-header",children:[d.jsxs(ue,{component:"h2",variant:"h4",className:"page-title",color:"textPrimary",children:[r?d.jsx(Ft,{blocklet:r,style:{marginRight:16}}):null,r?d.jsxs(Z,{sx:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:1},children:[d.jsx(Z,{children:j.getDisplayName(r)}),r?.status!=="unknown"&&d.jsx(Ut,{size:"12px",status:r.status,source:r.source,progress:r.progress})]}):`${a("common.blocklet")} ${a("common.detail")}`]}),d.jsx(Xt,{permission:"mutate_blocklets",children:!!r&&!j.isExternalBlocklet(r)&&d.jsx(qt,{className:"page-actions",blocklet:r,onStart:m,onComplete:k,variant:"group",source:"blocklet-detail"})})]}),d.jsx(Po,{}),L]})]})}function fr(){const{did:e}=We();return e?d.jsx(Kt,{did:e,children:d.jsx(Go,{})}):null}const Ko=Vt.main`
|
|
12
|
+
*/const Je=Object.freeze({left:0,top:0,width:16,height:16}),ee=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),H=Object.freeze({...Je,...ee}),me=Object.freeze({...H,body:"",hidden:!1});function Zt(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const r=((e.rotate||0)+(t.rotate||0))%4;return r&&(n.rotate=r),n}function Le(e,t){const n=Zt(e,t);for(const r in me)r in ee?r in e&&!(r in n)&&(n[r]=ee[r]):r in t?n[r]=t[r]:r in e&&(n[r]=e[r]);return n}function en(e,t){const n=e.icons,r=e.aliases||Object.create(null),o=Object.create(null);function s(i){if(n[i])return o[i]=[];if(!(i in o)){o[i]=null;const c=r[i]&&r[i].parent,l=c&&s(c);l&&(o[i]=[c].concat(l))}return o[i]}return Object.keys(n).concat(Object.keys(r)).forEach(s),o}function tn(e,t,n){const r=e.icons,o=e.aliases||Object.create(null);let s={};function i(c){s=Le(r[c]||o[c],s)}return i(t),n.forEach(i),Le(e,s)}function nn(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(o=>{t(o,null),n.push(o)});const r=en(e);for(const o in r){const s=r[o];s&&(t(o,tn(e,o,s)),n.push(o))}return n}const V=/^[a-z0-9]+(-[a-z0-9]+)*$/,R=(e,t,n,r="")=>{const o=e.split(":");if(e.slice(0,1)==="@"){if(o.length<2||o.length>3)return null;r=o.shift().slice(1)}if(o.length>3||!o.length)return null;if(o.length>1){const c=o.pop(),l=o.pop(),a={provider:o.length>0?o[0]:r,prefix:l,name:c};return t&&!X(a)?null:a}const s=o[0],i=s.split("-");if(i.length>1){const c={provider:r,prefix:i.shift(),name:i.join("-")};return t&&!X(c)?null:c}if(n&&r===""){const c={provider:r,prefix:"",name:s};return t&&!X(c,n)?null:c}return null},X=(e,t)=>e?!!((e.provider===""||e.provider.match(V))&&(t&&e.prefix===""||e.prefix.match(V))&&e.name.match(V)):!1,on={provider:"",aliases:{},not_found:{},...Je};function fe(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function rn(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!fe(e,on))return null;const n=t.icons;for(const o in n){const s=n[o];if(!o.match(V)||typeof s.body!="string"||!fe(s,me))return null}const r=t.aliases||Object.create(null);for(const o in r){const s=r[o],i=s.parent;if(!o.match(V)||typeof i!="string"||!n[i]&&!r[i]||!fe(s,me))return null}return t}const te=Object.create(null);function sn(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function C(e,t){const n=te[e]||(te[e]=Object.create(null));return n[t]||(n[t]=sn(e,t))}function Ee(e,t){return rn(t)?nn(t,(n,r)=>{r?e.icons[n]=r:e.missing.add(n)}):[]}function cn(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}function an(e,t){let n=[];return(typeof e=="string"?[e]:Object.keys(te)).forEach(o=>{(typeof o=="string"&&typeof t=="string"?[t]:Object.keys(te[o]||{})).forEach(i=>{const c=C(o,i);n=n.concat(Object.keys(c.icons).map(l=>(o!==""?"@"+o+":":"")+i+":"+l))})}),n}let _e=!1;function ln(e){return _e}function q(e){const t=typeof e=="string"?R(e,!0,_e):e;if(t){const n=C(t.provider,t.prefix),r=t.name;return n.icons[r]||(n.missing.has(r)?null:void 0)}}function un(e,t){const n=R(e,!0,_e);if(!n)return!1;const r=C(n.provider,n.prefix);return cn(r,n.name,t)}function Xe(e,t){if(typeof e!="object")return!1;typeof t!="string"&&(t=e.provider||"");const n=e.prefix;if(!X({provider:t,prefix:n,name:"a"}))return!1;const r=C(t,n);return!!Ee(r,e)}function fn(e){return!!q(e)}function dn(e){const t=q(e);return t?{...H,...t}:null}const Ye=Object.freeze({width:null,height:null}),Ze=Object.freeze({...Ye,...ee}),pn=/(-?[0-9.]*[0-9]+[0-9.]*)/g,mn=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function he(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const r=e.split(pn);if(r===null||!r.length)return e;const o=[];let s=r.shift(),i=mn.test(s);for(;;){if(i){const c=parseFloat(s);isNaN(c)?o.push(s):o.push(Math.ceil(c*t*n)/n)}else o.push(s);if(s=r.shift(),s===void 0)return o.join("");i=!i}}const hn=e=>e==="unset"||e==="undefined"||e==="none";function re(e,t){const n={...H,...e},r={...Ze,...t},o={left:n.left,top:n.top,width:n.width,height:n.height};let s=n.body;[n,r].forEach(g=>{const y=[],E=g.hFlip,A=g.vFlip;let w=g.rotate;E?A?w+=2:(y.push("translate("+(o.width+o.left).toString()+" "+(0-o.top).toString()+")"),y.push("scale(-1 1)"),o.top=o.left=0):A&&(y.push("translate("+(0-o.left).toString()+" "+(o.height+o.top).toString()+")"),y.push("scale(1 -1)"),o.top=o.left=0);let S;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:S=o.height/2+o.top,y.unshift("rotate(90 "+S.toString()+" "+S.toString()+")");break;case 2:y.unshift("rotate(180 "+(o.width/2+o.left).toString()+" "+(o.height/2+o.top).toString()+")");break;case 3:S=o.width/2+o.left,y.unshift("rotate(-90 "+S.toString()+" "+S.toString()+")");break}w%2===1&&(o.left!==o.top&&(S=o.left,o.left=o.top,o.top=S),o.width!==o.height&&(S=o.width,o.width=o.height,o.height=S)),y.length&&(s='<g transform="'+y.join(" ")+'">'+s+"</g>")});const i=r.width,c=r.height,l=o.width,a=o.height;let u,p;i===null?(p=c===null?"1em":c==="auto"?a:c,u=he(p,l/a)):(u=i==="auto"?l:i,p=c===null?he(u,a/l):c==="auto"?a:c);const f={},h=(g,y)=>{hn(y)||(f[g]=y.toString())};return h("width",u),h("height",p),f.viewBox=o.left.toString()+" "+o.top.toString()+" "+l.toString()+" "+a.toString(),{attributes:f,body:s}}const gn=/\sid="(\S+)"/g,bn="IconifyId"+Date.now().toString(16)+(Math.random()*16777216|0).toString(16);let yn=0;function et(e,t=bn){const n=[];let r;for(;r=gn.exec(e);)n.push(r[1]);if(!n.length)return e;const o="suffix"+(Math.random()*16777216|Date.now()).toString(16);return n.forEach(s=>{const i=typeof t=="function"?t(s):t+(yn++).toString(),c=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+c+')([")]|\\.[a-z])',"g"),"$1"+i+o+"$3")}),e=e.replace(new RegExp(o,"g"),""),e}const D={local:!0,session:!0},tt={local:new Set,session:new Set};let Ce=!1;function vn(e){Ce=e}const Be="iconify2",U="iconify",nt=U+"-count",Me=U+"-version",ot=36e5,xn=168;function ge(e,t){try{return e.getItem(t)}catch{}}function Te(e,t,n){try{return e.setItem(t,n),!0}catch{}}function Re(e,t){try{e.removeItem(t)}catch{}}function be(e,t){return Te(e,nt,t.toString())}function ye(e){return parseInt(ge(e,nt))||0}let K=typeof window>"u"?{}:window;function rt(e){const t=e+"Storage";try{if(K&&K[t]&&typeof K[t].length=="number")return K[t]}catch{}D[e]=!1}function st(e,t){const n=rt(e);if(!n)return;const r=ge(n,Me);if(r!==Be){if(r){const c=ye(n);for(let l=0;l<c;l++)Re(n,U+l.toString())}Te(n,Me,Be),be(n,0);return}const o=Math.floor(Date.now()/ot)-xn,s=c=>{const l=U+c.toString(),a=ge(n,l);if(typeof a=="string"){try{const u=JSON.parse(a);if(typeof u=="object"&&typeof u.cached=="number"&&u.cached>o&&typeof u.provider=="string"&&typeof u.data=="object"&&typeof u.data.prefix=="string"&&t(u,c))return!0}catch{}Re(n,l)}};let i=ye(n);for(let c=i-1;c>=0;c--)s(c)||(c===i-1?(i--,be(n,i)):tt[e].add(c))}function it(){if(!Ce){vn(!0);for(const e in D)st(e,t=>{const n=t.data,r=t.provider,o=n.prefix,s=C(r,o);if(!Ee(s,n).length)return!1;const i=n.lastModified||-1;return s.lastModifiedCached=s.lastModifiedCached?Math.min(s.lastModifiedCached,i):i,!0})}}function ct(e,t){switch(e){case"local":case"session":D[e]=t;break;case"all":for(const n in D)D[n]=t;break}}const ve=Object.create(null);function at(e,t){ve[e]=t}function xe(e){return ve[e]||ve[""]}function je(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const se=Object.create(null),N=["https://api.simplesvg.com","https://api.unisvg.com"],Y=[];for(;N.length>0;)N.length===1||Math.random()>.5?Y.push(N.shift()):Y.push(N.pop());se[""]=je({resources:["https://api.iconify.design"].concat(Y)});function lt(e,t){const n=je(t);return n===null?!1:(se[e]=n,!0)}function ie(e){return se[e]}function wn(){return Object.keys(se)}const Sn=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let ne=Sn();function In(e){ne=e}function kn(){return ne}function En(e,t){const n=ie(e);if(!n)return 0;let r;if(!n.maxURL)r=0;else{let o=0;n.resources.forEach(i=>{o=Math.max(o,i.length)});const s=t+".json?icons=";r=n.maxURL-o-n.path.length-s.length}return r}function _n(e){return e===404}const Cn=(e,t,n)=>{const r=[],o=En(e,t),s="icons";let i={type:s,provider:e,prefix:t,icons:[]},c=0;return n.forEach((l,a)=>{c+=l.length+1,c>=o&&a>0&&(r.push(i),i={type:s,provider:e,prefix:t,icons:[]},c=l.length),i.icons.push(l)}),r.push(i),r};function Tn(e){if(typeof e=="string"){const t=ie(e);if(t)return t.path}return"/"}const jn=(e,t,n)=>{if(!ne){n("abort",424);return}let r=Tn(t.provider);switch(t.type){case"icons":{const s=t.prefix,c=t.icons.join(","),l=new URLSearchParams({icons:c});r+=s+".json?"+l.toString();break}case"custom":{const s=t.uri;r+=s.slice(0,1)==="/"?s.slice(1):s;break}default:n("abort",400);return}let o=503;ne(e+r).then(s=>{const i=s.status;if(i!==200){setTimeout(()=>{n(_n(i)?"abort":"next",i)});return}return o=501,s.json()}).then(s=>{if(typeof s!="object"||s===null){setTimeout(()=>{s===404?n("abort",s):n("next",o)});return}setTimeout(()=>{n("success",s)})}).catch(()=>{n("next",o)})},Pn={prepare:Cn,send:jn};function An(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((o,s)=>o.provider!==s.provider?o.provider.localeCompare(s.provider):o.prefix!==s.prefix?o.prefix.localeCompare(s.prefix):o.name.localeCompare(s.name));let r={provider:"",prefix:"",name:""};return e.forEach(o=>{if(r.name===o.name&&r.prefix===o.prefix&&r.provider===o.provider)return;r=o;const s=o.provider,i=o.prefix,c=o.name,l=n[s]||(n[s]=Object.create(null)),a=l[i]||(l[i]=C(s,i));let u;c in a.icons?u=t.loaded:i===""||a.missing.has(c)?u=t.missing:u=t.pending;const p={provider:s,prefix:i,name:c};u.push(p)}),t}function ut(e,t){e.forEach(n=>{const r=n.loaderCallbacks;r&&(n.loaderCallbacks=r.filter(o=>o.id!==t))})}function Dn(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const r=e.provider,o=e.prefix;t.forEach(s=>{const i=s.icons,c=i.pending.length;i.pending=i.pending.filter(l=>{if(l.prefix!==o)return!0;const a=l.name;if(e.icons[a])i.loaded.push({provider:r,prefix:o,name:a});else if(e.missing.has(a))i.missing.push({provider:r,prefix:o,name:a});else return n=!0,!0;return!1}),i.pending.length!==c&&(n||ut([e],s.id),s.callback(i.loaded.slice(0),i.missing.slice(0),i.pending.slice(0),s.abort))})}))}let On=0;function Ln(e,t,n){const r=On++,o=ut.bind(null,n,r);if(!t.pending.length)return o;const s={id:r,icons:t,callback:e,abort:o};return n.forEach(i=>{(i.loaderCallbacks||(i.loaderCallbacks=[])).push(s)}),o}function Bn(e,t=!0,n=!1){const r=[];return e.forEach(o=>{const s=typeof o=="string"?R(o,t,n):o;s&&r.push(s)}),r}var Mn={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function Rn(e,t,n,r){const o=e.resources.length,s=e.random?Math.floor(Math.random()*o):e.index;let i;if(e.random){let m=e.resources.slice(0);for(i=[];m.length>1;){const k=Math.floor(Math.random()*m.length);i.push(m[k]),m=m.slice(0,k).concat(m.slice(k+1))}i=i.concat(m)}else i=e.resources.slice(s).concat(e.resources.slice(0,s));const c=Date.now();let l="pending",a=0,u,p=null,f=[],h=[];typeof r=="function"&&h.push(r);function g(){p&&(clearTimeout(p),p=null)}function y(){l==="pending"&&(l="aborted"),g(),f.forEach(m=>{m.status==="pending"&&(m.status="aborted")}),f=[]}function E(m,k){k&&(h=[]),typeof m=="function"&&h.push(m)}function A(){return{startTime:c,payload:t,status:l,queriesSent:a,queriesPending:f.length,subscribe:E,abort:y}}function w(){l="failed",h.forEach(m=>{m(void 0,u)})}function S(){f.forEach(m=>{m.status==="pending"&&(m.status="aborted")}),f=[]}function L(m,k,_){const B=k!=="success";switch(f=f.filter(T=>T!==m),l){case"pending":break;case"failed":if(B||!e.dataAfterTimeout)return;break;default:return}if(k==="abort"){u=_,w();return}if(B){u=_,f.length||(i.length?v():w());return}if(g(),S(),!e.random){const T=e.resources.indexOf(m.resource);T!==-1&&T!==e.index&&(e.index=T)}l="completed",h.forEach(T=>{T(_)})}function v(){if(l!=="pending")return;g();const m=i.shift();if(m===void 0){if(f.length){p=setTimeout(()=>{g(),l==="pending"&&(S(),w())},e.timeout);return}w();return}const k={status:"pending",resource:m,callback:(_,B)=>{L(k,_,B)}};f.push(k),a++,p=setTimeout(v,e.rotate),n(m,t,k.callback)}return setTimeout(v),A}function ft(e){const t={...Mn,...e};let n=[];function r(){n=n.filter(c=>c().status==="pending")}function o(c,l,a){const u=Rn(t,c,l,(p,f)=>{r(),a&&a(p,f)});return n.push(u),u}function s(c){return n.find(l=>c(l))||null}return{query:o,find:s,setIndex:c=>{t.index=c},getIndex:()=>t.index,cleanup:r}}function Ne(){}const de=Object.create(null);function Nn(e){if(!de[e]){const t=ie(e);if(!t)return;const n=ft(t),r={config:t,redundancy:n};de[e]=r}return de[e]}function dt(e,t,n){let r,o;if(typeof e=="string"){const s=xe(e);if(!s)return n(void 0,424),Ne;o=s.send;const i=Nn(e);i&&(r=i.redundancy)}else{const s=je(e);if(s){r=ft(s);const i=e.resources?e.resources[0]:"",c=xe(i);c&&(o=c.send)}}return!r||!o?(n(void 0,424),Ne):r.query(t,o,n)().abort}function Fn(e,t){const n=e.lastModifiedCached;if(n&&n>=t)return n===t;if(e.lastModifiedCached=t,n)for(const r in D)st(r,o=>{const s=o.data;return o.provider!==e.provider||s.prefix!==e.prefix||s.lastModified===t});return!0}function Vn(e,t){Ce||it();function n(r){let o;if(!D[r]||!(o=rt(r)))return;const s=tt[r];let i;if(s.size)s.delete(i=Array.from(s).shift());else if(i=ye(o),!be(o,i+1))return;const c={cached:Math.floor(Date.now()/ot),provider:e.provider,data:t};return Te(o,U+i.toString(),JSON.stringify(c))}t.lastModified&&!Fn(e,t.lastModified)||Object.keys(t.icons).length&&(t.not_found&&(t=Object.assign({},t),delete t.not_found),n("local")||n("session"))}function Fe(){}function zn(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,Dn(e)}))}function $n(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:r}=e,o=e.iconsToLoad;delete e.iconsToLoad;let s;if(!o||!(s=xe(n)))return;s.prepare(n,r,o).forEach(c=>{dt(n,c,l=>{if(typeof l!="object")c.icons.forEach(a=>{e.missing.add(a)});else try{const a=Ee(e,l);if(!a.length)return;const u=e.pendingIcons;u&&a.forEach(p=>{u.delete(p)}),Vn(e,l)}catch(a){console.error(a)}zn(e)})})}))}const Un=e=>{const n=C(e.provider,e.prefix).pendingIcons;return!!(n&&n.has(e.name))},Pe=(e,t)=>{const n=Bn(e,!0,ln()),r=An(n);if(!r.pending.length){let l=!0;return t&&setTimeout(()=>{l&&t(r.loaded,r.missing,r.pending,Fe)}),()=>{l=!1}}const o=Object.create(null),s=[];let i,c;return r.pending.forEach(l=>{const{provider:a,prefix:u}=l;if(u===c&&a===i)return;i=a,c=u,s.push(C(a,u));const p=o[a]||(o[a]=Object.create(null));p[u]||(p[u]=[])}),r.pending.forEach(l=>{const{provider:a,prefix:u,name:p}=l,f=C(a,u),h=f.pendingIcons||(f.pendingIcons=new Set);h.has(p)||(h.add(p),o[a][u].push(p))}),s.forEach(l=>{const{provider:a,prefix:u}=l;o[a][u].length&&$n(l,o[a][u])}),t?Ln(t,r,s):Fe},Hn=e=>new Promise((t,n)=>{const r=typeof e=="string"?R(e,!0):e;if(!r){n(e);return}Pe([r||e],o=>{if(o.length&&r){const s=q(r);if(s){t({...H,...s});return}}n(e)})});function pt(e,t){const n={...e};for(const r in t){const o=t[r],s=typeof o;r in Ye?(o===null||o&&(s==="string"||s==="number"))&&(n[r]=o):s===typeof n[r]&&(n[r]=r==="rotate"?o%4:o)}return n}const ce={...Ze,inline:!1},pe="iconify",we="iconify-inline",P="iconifyData"+Date.now();let O=[];function Q(e){for(let t=0;t<O.length;t++){const n=O[t];if((typeof n.node=="function"?n.node():n.node)===e)return n}}function mt(e,t=!1){let n=Q(e);return n?(n.temporary&&(n.temporary=t),n):(n={node:e,temporary:t},O.push(n),n)}function qn(){if(document.documentElement)return mt(document.documentElement);O.push({node:()=>document.documentElement})}function Qn(e){O=O.filter(t=>e!==t&&e!==(typeof t.node=="function"?t.node():t.node))}function G(){return O}function Gn(e){const t=document;t.readyState&&t.readyState!=="loading"?e():t.addEventListener("DOMContentLoaded",e)}let z=null;const Kn={childList:!0,subtree:!0,attributes:!0};function ht(e){if(!e.observer)return;const t=e.observer;t.pendingScan||(t.pendingScan=setTimeout(()=>{delete t.pendingScan,z&&z(e)}))}function Wn(e,t){if(!e.observer)return;const n=e.observer;if(!n.pendingScan)for(let r=0;r<t.length;r++){const o=t[r];if(o.addedNodes&&o.addedNodes.length>0||o.type==="attributes"&&o.target[P]!==void 0){n.paused||ht(e);return}}}function gt(e,t){e.observer.instance.observe(t,Kn)}function oe(e){let t=e.observer;if(t&&t.instance)return;const n=typeof e.node=="function"?e.node():e.node;!n||!window||(t||(t={paused:0},e.observer=t),t.instance=new window.MutationObserver(Wn.bind(null,e)),gt(e,n),t.paused||ht(e))}function Ve(){G().forEach(oe)}function bt(e){if(!e.observer)return;const t=e.observer;t.pendingScan&&(clearTimeout(t.pendingScan),delete t.pendingScan),t.instance&&(t.instance.disconnect(),delete t.instance)}function Jn(e){const t=z!==null;if(z!==e&&(z=e,t&&G().forEach(bt)),t){Ve();return}Gn(Ve)}function Se(e){(e?[e]:G()).forEach(t=>{if(!t.observer){t.observer={paused:1};return}const n=t.observer;if(n.paused++,n.paused>1||!n.instance)return;n.instance.disconnect()})}function Xn(e){if(e){const t=Q(e);t&&Se(t)}else Se()}function Ie(e){(e?[e]:G()).forEach(t=>{if(!t.observer){oe(t);return}const n=t.observer;if(n.paused&&(n.paused--,!n.paused)){const r=typeof t.node=="function"?t.node():t.node;if(r)n.instance?gt(t,r):oe(t);else return}})}function Yn(e){if(e){const t=Q(e);t&&Ie(t)}else Ie()}function yt(e,t=!1){const n=mt(e,t);return oe(n),n}function vt(e){const t=Q(e);t&&(bt(t),Qn(e))}function Zn(e,t){if(e.name!==t.name||e.mode!==t.mode)return!0;const n=e.customisations,r=t.customisations;for(const o in ce)if(n[o]!==r[o])return!0;return!1}function eo(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function r(o){for(;o<0;)o+=4;return o%4}if(n===""){const o=parseInt(e);return isNaN(o)?0:r(o)}else if(n!==e){let o=0;switch(n){case"%":o=25;break;case"deg":o=90}if(o){let s=parseFloat(e.slice(0,e.length-n.length));return isNaN(s)?0:(s=s/o,s%1===0?r(s):0)}}return t}const to=/[\s,]+/;function no(e,t){t.split(to).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}const oo=["width","height"],ro=["inline","hFlip","vFlip"];function so(e,t){return e===t||e==="true"?!0:e===""||e==="false"?!1:null}function io(e){const t=e.getAttribute("data-icon"),n=typeof t=="string"&&R(t,!0);if(!n)return null;const r={...ce,inline:e.classList&&e.classList.contains(we)};oo.forEach(c=>{const l=e.getAttribute("data-"+c);l&&(r[c]=l)});const o=e.getAttribute("data-rotate");typeof o=="string"&&(r.rotate=eo(o));const s=e.getAttribute("data-flip");typeof s=="string"&&no(r,s),ro.forEach(c=>{const l="data-"+c,a=so(e.getAttribute(l),l);typeof a=="boolean"&&(r[c]=a)});const i=e.getAttribute("data-mode");return{name:t,icon:n,customisations:r,mode:i}}const co="svg."+pe+", i."+pe+", span."+pe+", i."+we+", span."+we;function ao(e){const t=[];return e.querySelectorAll(co).forEach(n=>{const r=n[P]||n.tagName.toLowerCase()!=="svg"?io(n):null;r&&t.push({node:n,props:r})}),t}function xt(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const r in t)n+=" "+r+'="'+t[r]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}let $;function lo(){try{$=window.trustedTypes.createPolicy("iconify",{createHTML:e=>e})}catch{$=null}}function uo(e){return $===void 0&&lo(),$?$.createHTML(e):e}function wt(e){const t=new Set(["iconify"]);return["provider","prefix"].forEach(n=>{e[n]&&t.add("iconify--"+e[n])}),t}function St(e,t,n,r){const o=e.classList;if(r){const i=r.classList;Array.from(i).forEach(c=>{o.add(c)})}const s=[];return t.forEach(i=>{o.contains(i)?n.has(i)&&s.push(i):(o.add(i),s.push(i))}),n.forEach(i=>{t.has(i)||o.remove(i)}),s}function It(e,t,n){const r=e.style;(n||[]).forEach(s=>{r.removeProperty(s)});const o=[];for(const s in t)r.getPropertyValue(s)||(o.push(s),r.setProperty(s,t[s]));return o}function kt(e,t,n){let r;try{r=document.createElement("span")}catch{return e}const o=t.customisations,s=re(n,o),i=e[P],c=xt(et(s.body),{"aria-hidden":"true",role:"img",...s.attributes});r.innerHTML=uo(c);const l=r.childNodes[0],a=e.attributes;for(let g=0;g<a.length;g++){const y=a.item(g),E=y.name;E!=="class"&&!l.hasAttribute(E)&&l.setAttribute(E,y.value)}const u=wt(t.icon),p=St(l,u,new Set(i&&i.addedClasses),e),f=It(l,o.inline?{"vertical-align":"-0.125em"}:{},i&&i.addedStyles),h={...t,status:"loaded",addedClasses:p,addedStyles:f};return l[P]=h,e.parentNode&&e.parentNode.replaceChild(l,e),l}function fo(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function po(e){return"data:image/svg+xml,"+fo(e)}function mo(e){return'url("'+po(e)+'")'}const ho={display:"inline-block"},ke={"background-color":"currentColor"},Et={"background-color":"transparent"},ze={image:"var(--svg)",repeat:"no-repeat",size:"100% 100%"},$e={"-webkit-mask":ke,mask:ke,background:Et};for(const e in $e){const t=$e[e];for(const n in ze)t[e+"-"+n]=ze[n]}function Ue(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}function go(e,t,n,r){const o=t.customisations,s=re(n,o),i=s.attributes,c=e[P],l=xt(s.body,{...i,width:n.width+"",height:n.height+""}),a=wt(t.icon),u=St(e,a,new Set(c&&c.addedClasses)),f={"--svg":mo(l),width:Ue(i.width),height:Ue(i.height),...ho,...r?ke:Et};o.inline&&(f["vertical-align"]="-0.125em");const h=It(e,f,c&&c.addedStyles),g={...t,status:"loaded",addedClasses:u,addedStyles:h};return e[P]=g,e}let W=!1;function bo(){W||(W=!0,setTimeout(()=>{W&&(W=!1,M())}))}function M(e,t=!1){const n=Object.create(null);function r(o,s){const{provider:i,prefix:c,name:l}=o,a=C(i,c),u=a.icons[l];if(u)return{status:"loaded",icon:u};if(a.missing.has(l))return{status:"missing"};if(s&&!Un(o)){const p=n[i]||(n[i]=Object.create(null));(p[c]||(p[c]=new Set)).add(l)}return{status:"loading"}}(e?[e]:G()).forEach(o=>{const s=typeof o.node=="function"?o.node():o.node;if(!s||!s.querySelectorAll)return;let i=!1,c=!1;function l(a,u,p){if(c||(c=!0,Se(o)),a.tagName.toUpperCase()!=="SVG"){const f=u.mode,h=f==="mask"||(f==="bg"?!1:f==="style"?p.body.indexOf("currentColor")!==-1:null);if(typeof h=="boolean"){go(a,u,{...H,...p},h);return}}kt(a,u,p)}ao(s).forEach(({node:a,props:u})=>{const p=a[P];if(!p){const{status:h,icon:g}=r(u.icon,!0);if(g){l(a,u,g);return}i=i||h==="loading",a[P]={...u,status:h};return}let f;if(Zn(p,u)){if(f=r(u.icon,p.name!==u.name),!f.icon){i=i||f.status==="loading",Object.assign(p,{...u,status:f.status});return}}else{if(p.status!=="loading")return;if(f=r(u.icon,!1),!f.icon){p.status=f.status;return}}l(a,u,f.icon)}),o.temporary&&!i?vt(s):t&&i?yt(s,!0):c&&o.observer&&Ie(o)});for(const o in n){const s=n[o];for(const i in s){const c=s[i];Pe(Array.from(c).map(l=>({provider:o,prefix:i,name:l})),bo)}}}function yo(e){const t=Q(e);t?M(t):M({node:e,temporary:!0},!0)}function _t(e,t,n=!1){const r=q(e);if(!r)return null;const o=R(e),s=pt(ce,t||{}),i=kt(document.createElement("span"),{name:e,icon:o,customisations:s},r);return n?i.outerHTML:i}function vo(){return"3.1.1"}function xo(e,t){return _t(e,t,!1)}function wo(e,t){return _t(e,t,!0)}function So(e,t){const n=q(e);if(!n)return null;const r=pt(ce,t||{});return re(n,r)}function Io(e){e?yo(e):M()}if(typeof document<"u"&&typeof window<"u"){qn();const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(r=>{try{(typeof r!="object"||r===null||r instanceof Array||typeof r.icons!="object"||typeof r.prefix!="string"||!Xe(r))&&console.error(n)}catch{console.error(n)}})}setTimeout(()=>{Jn(M),M()})}function ko(e,t){ct(e,t!==!1)}function Eo(e){ct(e,!0)}at("",Pn);if(typeof document<"u"&&typeof window<"u"){it();const e=window;if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(const n in t){const r="IconifyProviders["+n+"] is invalid.";try{const o=t[n];if(typeof o!="object"||!o||o.resources===void 0)continue;lt(n,o)||console.error(r)}catch{console.error(r)}}}}const _o={getAPIConfig:ie,setAPIModule:at,sendAPIQuery:dt,setFetch:In,getFetch:kn,listAPIProviders:wn},Co={_api:_o,addAPIProvider:lt,loadIcons:Pe,loadIcon:Hn,iconExists:fn,getIcon:dn,listIcons:an,addIcon:un,addCollection:Xe,replaceIDs:et,calculateSize:he,buildIcon:re,getVersion:vo,renderSVG:xo,renderHTML:wo,renderIcon:So,scan:Io,observe:yt,stopObserving:vt,pauseObserver:Xn,resumeObserver:Yn,enableCache:ko,disableCache:Eo};try{self.Iconify===void 0&&(self.Iconify=Co)}catch{}const To=e=>{const t={};let n=null;return j.forEachBlockletSync(e,r=>{t[r.meta.bundleDid]?n=j.getDisplayName(r,!0):r.meta.bundleDid&&(t[r.meta.bundleDid]=!0)}),n},jo=(e,t,n)=>{const{hostname:r,href:o}=e;if(!t)return o;if(n){const i=/\d+[-.]\d+[-.]\d+[-.]\d+/.exec(r);if(!i)return o;const c=i[0],a=((t.site?.domainAliases||[]).map(u=>u.value).filter(Boolean).find(u=>u.endsWith(F.DEFAULT_DID_DOMAIN))||"").replace(`.${F.DEFAULT_DID_DOMAIN}`,"");return a?o.replace(r,`${a}-${c}.${F.DEFAULT_IP_DOMAIN_SUFFIX}`):o}return o.replace(t.meta.bundleDid,t.appPid)};function Po(){const{t:e}=He(),{api:t}=qe(),{blocklet:n}=Qt(),{inService:r}=Ct(),[o,s]=b.useState(!1),[i,c]=b.useState(5),l=n&&n.structVersion!==F.APP_STRUCT_VERSION,a=()=>{try{if(j.isBlockletRunning(n)){J.error(e("blocklet.migrate.tip.running"));return}const f=To(n);if(f){J.error(e("blocklet.migrate.tip.duplicate",{name:f}));return}s(!0)}catch(f){J.error(Ke(f))}},u=()=>{const f=jo(window.location,n,r);setTimeout(()=>{window.location.href=f},5e3),c(5),setInterval(()=>{c(h=>h-1)},1e3)},p=()=>s(!1);return[l&&d.jsxs(Qe,{severity:"warning",style:{margin:"12px 0"},children:[d.jsxs(Z,{sx:{display:"flex",alignItems:"center"},children:[d.jsx(Ge,{variant:"contained",size:"small",color:"primary",onClick:()=>a(),style:{marginRight:8},children:e("blocklet.migrate.intro.l1")}),d.jsx("span",{children:e("blocklet.migrate.intro.l2")})]}),["l3","l4","l5","l6"].map(f=>d.jsx(Z,{sx:{display:"flex",alignItems:"center"},children:e(`blocklet.migrate.intro.${f}`)},f))]},"alert"),n&&d.jsx(Tt,{popup:!0,open:o,saveConnect:!1,forceConnected:!1,action:"migrate-app-to-struct-v2",checkFn:t.get,checkTimeout:5*60*1e3,onSuccess:u,extraParams:{appDid:n.appDid,did:n.meta.did,wt:jt(n,!0),title:j.getDisplayName(n)},messages:{title:e("blocklet.migrate.title"),scan:e("blocklet.migrate.scan"),confirm:e("blocklet.migrate.confirm"),success:i>=0?e("blocklet.migrate.success",{sec:i}):"Redirecting..."},onClose:p},"connect")]}const Ao=b.lazy(()=>I(()=>import("./overview-DL-GP40o.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17]),import.meta.url)),Do=b.lazy(()=>I(()=>import("./domains-BJzrDugH.js"),__vite__mapDeps([18,1,2,19,20,6,21,22,23,24,25,26,27,15,28,29,30,31,5,32,33,34,35,36,10]),import.meta.url)),Oo=b.lazy(()=>I(()=>import("./index-B3tcK3_z.js"),__vite__mapDeps([37,1,2,38,39,40,41,42,43,44,8,21,45,46,10,47,12,48,49,50,51,52,53,54,55,56,57,6,25,7,5,58,9,11,13,59,60,61,62,63,64,65,22,28,66,67,68,69,70,19,71,72,73,74,75,15]),import.meta.url)),Lo=b.lazy(()=>I(()=>import("./appearance-CKF7Bo6h.js"),__vite__mapDeps([76,1,2,6,74]),import.meta.url)),Bo=b.lazy(()=>I(()=>import("./config-navigation-B-CtKO70.js"),__vite__mapDeps([77,1,2,12,78,48,79,70,6,61,62,63,80,7,8,38,39,40,41,42,43,44,21,60,65,46,73,51,17,54,55,81,31,82,83,72,28,35,84,53,36]),import.meta.url)),Mo=b.lazy(()=>I(()=>import("./index-Dr7VuVvC.js"),__vite__mapDeps([85,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,86,5,46,87,88,89,53,90,45,91,92,93,94,95,57]),import.meta.url)),Ro=b.lazy(()=>I(()=>import("./audit-logs-CLt2l7-q.js"),__vite__mapDeps([96,19,1,2,71,72,73,39,97,98,99,100,86,7,6,8]),import.meta.url)),No=b.lazy(()=>I(()=>import("./index-CBHMH4Z7.js").then(e=>e.i),__vite__mapDeps([101,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,46,7,6,8,102,74,103,43,44,21,104,78,28,50,105,58,106,107]),import.meta.url)),Fo=b.lazy(()=>I(()=>import("./index-CKWS_NIP.js").then(e=>e.i),__vite__mapDeps([108,1,2,28,109,66,67,68,69,61,62,63,70,19,71,72,73,40,13,103,43,44,7,6,8,60,104,78,54,55,100,75,21,25,94,95,57,46,5,110,41,11,111,112,82,74,22,23,86,102]),import.meta.url)),Vo=b.lazy(()=>I(()=>import("./service-DCzLPjA3.js"),__vite__mapDeps([113,1,2,114,67,68,69,91,63,80,62,95,46,28,22,73,115,45,90,72,51]),import.meta.url)),zo=b.lazy(()=>I(()=>import("./index-HqyXcG7M.js"),__vite__mapDeps([116,1,2,19,38,39,40,41,42,43,44,8,21,59,6,115,114,67,68,69,91,63,80,62,95,46,28,22,73,45,90,72,51,47,12,48,49,50,52,53,25,103,117,118,82,83,54,55,110,27,119,24,120,121,122,34,123,4,16,17,35,124,3,125,97,98,99,104,78,126,26,127,5,81,128,32,33,74,11,107,87,23,129,7]),import.meta.url)),$o=b.lazy(()=>I(()=>import("./log-D4BWVj7G.js"),__vite__mapDeps([130,1,2,39,131,43,44,55]),import.meta.url)),Uo=b.lazy(()=>I(()=>import("./runtime-BUcScDcM.js"),__vite__mapDeps([132,1,2,66,67,68,69,61,62,63,70,19,71,72,73,40,6,124,133,92,93,26,106,44]),import.meta.url)),Ho=b.lazy(()=>I(()=>import("./traffic-C_4zWOQM.js").then(e=>e.t),__vite__mapDeps([89,1,2,53,90,45,91,63,92,93,94,95,68,57]),import.meta.url)),qo=b.lazy(()=>I(()=>import("./index-DCHzmqFc.js"),__vite__mapDeps([134,1,2,46,6,74,123,103,43,44,4,16,17,41,35,124,3,5,93,66,67,68,69,61,62,63,70,19,71,72,73,40,42,59,105]),import.meta.url)),Qo=({children:e})=>e;function Go(){const e=Pt(),{tab:t="overview"}=We(),{did:n,blocklet:r,error:o,client:s,actions:{setBlocklet:i,refreshBlocklet:c}}=Wt(),{refresh:l}=At(),{t:a}=He(),{session:u}=qe(),{data:p}=Dt(),f=Ot(()=>u.user?.role&&Lt.includes(u.user.role),[u]),h=b.useCallback(()=>d.jsx(Ro,{scope:n,blocklets:p}),[n,p]),g=b.useCallback(()=>f?d.jsx(Mo,{blocklet:r}):d.jsx(Gt,{status:403}),[r,f]),y=r?.environments.find(x=>x.key==="BLOCKLET_APP_URL")?.value||window.location.origin,E=x=>Mt(x,y),A=x=>{e(`/blocklets/${n}/${x}`)},w=x=>{x&&i(x),c()},S=!r||Ae(r.status)?[]:j.getAppMissingConfigs(r);let L=null;const v=[{label:a("common.overview"),value:"overview"},{breadcrumbsLabel:a("common.components"),label:d.jsx(Bt,{"data-cy":"blocklet-list",color:"error",variant:"dot",invisible:!S.length,children:a("common.components")}),value:"components"}];if(o)L=d.jsxs(d.Fragment,{children:[d.jsx(Qe,{severity:"error",children:Ke(o)}),d.jsx(Ge,{onClick:()=>c(),children:d.jsx("span",{style:{textDecoration:"underline"},children:a("common.retry")})})]});else if(r){const x={overview:d.jsx(Ao,{}),domains:d.jsx(Do,{}),configuration:Oo,appearance:Lo,navigation:Bo,services:Vo,members:d.jsx(Fo,{type:"blocklet",createPassportSvg:E}),passports:No,components:zo,"audit-logs":h,notifications:g,logs:$o,runtime:d.jsx(Uo,{}),traffic:d.jsx(Ho,{client:s,did:n}),didSpaces:d.jsx(qo,{})};t==="configuration"&&Ae(r.status)&&A("overview"),v.push({label:a("common.domains"),value:"domains"}),v.push({label:a("common.members"),value:"members"}),v.push({label:a("team.member.passports"),value:"passports"}),v.push({label:a("common.configuration"),value:"configuration"}),v.push({label:a("common.appearance"),value:"appearance"}),v.push({label:a("common.auditLogs"),value:"audit-logs"}),f&&v.push({label:a("common.notificationRecords"),value:"notifications"}),r&&r.children?.length&&r.structVersion===F.APP_STRUCT_VERSION&&v.push({label:a("common.logs"),value:"logs"}),v.push({label:a("common.configNavigation"),value:"navigation"}),v.push({label:a("common.runtime"),value:"runtime"}),v.push({label:a("common.traffic"),value:"traffic"}),v.push({label:a("storage.spaces.title"),value:"didSpaces"}),j.getBlockletServices(r).length&&v.splice(2,0,{label:a("blocklet.services"),value:"services"});const le=x[t]||x.overview;L=d.jsxs(Ht,{type:"components",children:[!j.isExternalBlocklet(r)&&d.jsx(zt,{tabs:v,current:t,onChange:A,scrollButtons:"auto"}),d.jsx("div",{className:"page-content",children:d.jsx(b.Suspense,{fallback:d.jsx(De,{relative:"parent",children:d.jsx(Oe,{})}),children:b.isValidElement(le)?le:d.jsx(le,{blocklet:r,onUpdate:w,createPassportSvg:E})})})]})}else L=d.jsx(De,{relative:"parent",children:d.jsx(Oe,{})});const m=()=>{},k=({action:x,error:ae})=>{if(ae){J.error(ae.message);return}x==="remove"?(l(),e("/blocklets")):c()},_=v.find(x=>x.value===t),B=r?Jt:Qo,T=$t(_,r?.meta?.title||a("common.blocklets"));return d.jsxs(B,{teamDid:n,children:[T,d.jsxs(Ko,{children:[d.jsxs(Yt,{separator:"›","aria-label":"breadcrumb",className:"page-breadcrumb",children:[d.jsx(Rt,{color:"textSecondary",to:"/blocklets",children:a("common.blocklets")}),d.jsx(Nt,{to:`/blocklets/${n}/overview`,style:x=>x?{color:"inherit"}:{},children:a("common.detail")}),d.jsx(ue,{color:"textSecondary",children:_?_.breadcrumbsLabel||_.label:""})]}),d.jsxs(ue,{component:"div",className:"page-header",children:[d.jsxs(ue,{component:"h2",variant:"h4",className:"page-title",color:"textPrimary",children:[r?d.jsx(Ft,{blocklet:r,style:{marginRight:16}}):null,r?d.jsxs(Z,{sx:{display:"flex",alignItems:"center",flexWrap:"wrap",gap:1},children:[d.jsx(Z,{children:j.getDisplayName(r)}),r?.status!=="unknown"&&d.jsx(Ut,{size:"12px",status:r.status,source:r.source,progress:r.progress})]}):`${a("common.blocklet")} ${a("common.detail")}`]}),d.jsx(Xt,{permission:"mutate_blocklets",children:!!r&&!j.isExternalBlocklet(r)&&d.jsx(qt,{className:"page-actions",blocklet:r,onStart:m,onComplete:k,variant:"group",source:"blocklet-detail"})})]}),d.jsx(Po,{}),L]})]})}function fr(){const{did:e}=We();return e?d.jsx(Kt,{did:e,children:d.jsx(Go,{})}):null}const Ko=Vt.main`
|
|
13
13
|
.page-header {
|
|
14
14
|
display: flex;
|
|
15
15
|
justify-content: space-between;
|