@abtnode/blocklet-services 1.16.33-beta-20241112-095006-c0bb4e6b → 1.16.33-beta-20241113-070920-6e6bae57
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/api/services/studio/index.js +15 -9
- package/dist/assets/{Add-Be5NIjqx.js → Add-keKAhJf1.js} +1 -1
- package/dist/assets/{Alert-BbtKi3v1.js → Alert-CvjoyYBC.js} +1 -1
- package/dist/assets/{ArrowDropDown-B9F9-dH8.js → ArrowDropDown-C0LbBLoq.js} +1 -1
- package/dist/assets/{Autocomplete-CY9iMSTD.js → Autocomplete-B2GoIEiU.js} +1 -1
- package/dist/assets/{Avatar-lahBxqDM.js → Avatar-Dpx0qZux.js} +1 -1
- package/dist/assets/{ButtonGroup-dnetDbaM.js → ButtonGroup-HFkgBADe.js} +1 -1
- package/dist/assets/{CSSTransition-ffaOecjt.js → CSSTransition-BCODA-ba.js} +1 -1
- package/dist/assets/{CheckCircle-C2xa70MK.js → CheckCircle-dj8lmygB.js} +1 -1
- package/dist/assets/{ChevronLeft-CNEQSjar.js → ChevronLeft-DMcIWZxt.js} +1 -1
- package/dist/assets/{ChevronRight-C4s6zT7y.js → ChevronRight-C5a3Tp9Z.js} +1 -1
- package/dist/assets/{Close-D4d0cmoo.js → Close-C1lblU7j.js} +1 -1
- package/dist/assets/{Delete-9I7Wb-WZ.js → Delete-Bt8sEFHf.js} +1 -1
- package/dist/assets/{DeleteOutline-Bfmy5Inl.js → DeleteOutline-CbAyWFU_.js} +1 -1
- package/dist/assets/{DialogContentText-CtUy42Wy.js → DialogContentText-DCrSbjzq.js} +1 -1
- package/dist/assets/{Done-CsJG7tLE.js → Done-DcSnacmc.js} +1 -1
- package/dist/assets/{Download-Ql_zAGR2.js → Download-DCo9Sut8.js} +1 -1
- package/dist/assets/{EditIcon-Bu2AC825.js → EditIcon-CCujR7ZO.js} +1 -1
- package/dist/assets/{Error-Bv-FkXIw.js → Error-B1YMBQQI.js} +1 -1
- package/dist/assets/{ExpandMore-CkVLrKqo.js → ExpandMore-gjdCPrPn.js} +1 -1
- package/dist/assets/{FormControl-BmbbFW7j.js → FormControl-fwuAUJF7.js} +1 -1
- package/dist/assets/{FormControlLabel-vyMASWw0.js → FormControlLabel-Dd50kGih.js} +1 -1
- package/dist/assets/{FormGroup-YyKrx4Oj.js → FormGroup-CQVrTSBu.js} +1 -1
- package/dist/assets/{Google-DfCiJ8zV.js → Google-tjgxWlOw.js} +1 -1
- package/dist/assets/{Grid-C54_tgj7.js → Grid-CdEXdmAj.js} +1 -1
- package/dist/assets/{HelpOutline-tmSL7Bzt.js → HelpOutline-BqeAr-nt.js} +1 -1
- package/dist/assets/{Hidden-DNna1408.js → Hidden-DzGAqhyo.js} +1 -1
- package/dist/assets/{InfoOutlined-Cl_8qFMi.js → InfoOutlined-bFgj9q23.js} +1 -1
- package/dist/assets/{InputAdornment-Co2MX07D.js → InputAdornment-DLavXxQC.js} +1 -1
- package/dist/assets/{LastPage-K8SBiloQ.js → LastPage-BKsIncQL.js} +1 -1
- package/dist/assets/{Launch-CF-5PGsC.js → Launch-CxApRsQk.js} +1 -1
- package/dist/assets/{LaunchOutlined-DJtyLEh9.js → LaunchOutlined-DfDSvTLO.js} +1 -1
- package/dist/assets/{Link-DSnY6X1i.js → Link-CwMoHxxH.js} +1 -1
- package/dist/assets/{ListItemButton-tIC8aee6.js → ListItemButton-DVUJtRJm.js} +1 -1
- package/dist/assets/{ListSubheader-BI6Zhgyl.js → ListSubheader-CFOk8Duw.js} +1 -1
- package/dist/assets/{LoadingButton-Dr2xn5-_.js → LoadingButton-CV6_YGxl.js} +1 -1
- package/dist/assets/{LockIcon-C56JTlvs.js → LockIcon-DuGlV5OX.js} +1 -1
- package/dist/assets/{Loop-Bb0sa1uu.js → Loop-StSu2hQZ.js} +1 -1
- package/dist/assets/{MarkEmailRead-Dq7KT_rd.js → MarkEmailRead-Dql1zMPh.js} +1 -1
- package/dist/assets/{Menu-jAkaRAOt.js → Menu-BO891UCo.js} +1 -1
- package/dist/assets/{MoreHoriz-CtIVG1MK.js → MoreHoriz-9r1HwwoN.js} +1 -1
- package/dist/assets/{MoreVert-CSIMTgso.js → MoreVert-DOniSEHD.js} +1 -1
- package/dist/assets/{OpenInNew-Dn-b4ql0.js → OpenInNew-BPyaFhom.js} +1 -1
- package/dist/assets/{Pagination-DtQ2UqOz.js → Pagination-BLtZNPA8.js} +1 -1
- package/dist/assets/{PlayArrow-DY1-OXZN.js → PlayArrow-5GWIfGl4.js} +1 -1
- package/dist/assets/{QuestionMarkCircle-BRNZxGZD.js → QuestionMarkCircle-DKy3bE5m.js} +1 -1
- package/dist/assets/{RadioGroup-DoFdHdBb.js → RadioGroup-DORPFwcd.js} +1 -1
- package/dist/assets/{Search-BSiUJ455.js → Search-DX3AW4Ja.js} +1 -1
- package/dist/assets/{Select-D2LyB2yK.js → Select-CRV0iHHv.js} +1 -1
- package/dist/assets/{ServerLogo-DP0iTccs.js → ServerLogo-Bf6UHHwQ.js} +1 -1
- package/dist/assets/{Skeleton-Be8s3-r3.js → Skeleton-B0qtX8zT.js} +1 -1
- package/dist/assets/{Slider-CmirSIGQ.js → Slider-ICT3OK_s.js} +1 -1
- package/dist/assets/{Stack-C3ImIxEz.js → Stack-D9gGxV3p.js} +1 -1
- package/dist/assets/{Stepper-D8Dcky2M.js → Stepper-DnzprAA5.js} +1 -1
- package/dist/assets/{TextField-IWXyq9WX.js → TextField-CDyde-vy.js} +1 -1
- package/dist/assets/{Toolbar-CTacdb76.js → Toolbar-B1kAku_I.js} +1 -1
- package/dist/assets/{ViewColumn-TT7ZfhoS.js → ViewColumn-Cnif--3f.js} +1 -1
- package/dist/assets/{ViewList-DBNZfOly.js → ViewList-BsA6104d.js} +1 -1
- package/dist/assets/{_createAggregator-CmZ2Urlh.js → _createAggregator-DrVSAj0q.js} +1 -1
- package/dist/assets/{access-control-CidcVWqD.js → access-control-DLJpzKF0.js} +1 -1
- package/dist/assets/{actions-DwWF_LII.js → actions-aH21JHuE.js} +1 -1
- package/dist/assets/{add-component-core-CU9aptXv.js → add-component-core-CUJCSG5o.js} +1 -1
- package/dist/assets/add-resource-DK1zuka_.js +1 -0
- package/dist/assets/{addon-DlKk3IoA.js → addon-q69Gsvdx.js} +1 -1
- package/dist/assets/{analytics-3_g9XBvU.js → analytics-PWeZC2nI.js} +1 -1
- package/dist/assets/api-BDt5g5RU.js +1 -0
- package/dist/assets/ar-CmDfOHUd.js +1 -0
- package/dist/assets/{audit-logs-Dj_QDB0p.js → audit-logs-DDiQqcXp.js} +1 -1
- package/dist/assets/{base32-DL019x7t.js → base32-C6zHYqZY.js} +1 -1
- package/dist/assets/branding-UWNwsJgO.js +37 -0
- package/dist/assets/{bundle-avatar-DH1wQ7kb.js → bundle-avatar-CAJ4ok0y.js} +1 -1
- package/dist/assets/{button-D7gPGN2F.js → button-B44tuPUX.js} +1 -1
- package/dist/assets/{click-to-copy-D0LAvhaE.js → click-to-copy-CO2NnWs4.js} +1 -1
- package/dist/assets/{complete-CPrs85Ex.js → complete-DDKp_U3c.js} +1 -1
- package/dist/assets/{component-ggjfCrdP.js → component-D3p8A_S7.js} +1 -1
- package/dist/assets/{config--9ik9B15.js → config-BaIaZlTt.js} +1 -1
- package/dist/assets/{config-WkXy7h0l.js → config-fErcYSNl.js} +1 -1
- package/dist/assets/{config-navigation-DxJyaC4o.js → config-navigation-CA8IvSUF.js} +1 -1
- package/dist/assets/{config-space-DVg9tNL1.js → config-space-BTpvPCf5.js} +1 -1
- package/dist/assets/{confirm-BU1Cx5fg.js → confirm-Bc68-DFG.js} +1 -1
- package/dist/assets/{connect-DPgkmdxo.js → connect-B-gCtz6y.js} +1 -1
- package/dist/assets/{connect-DnmfliZ-.js → connect-BuX8KN_Y.js} +1 -1
- package/dist/assets/{connect-to-D-grL4mp.js → connect-to-CmPhkTnO.js} +1 -1
- package/dist/assets/{content-layout-D2aXAPfw.js → content-layout-DWrJ4SYf.js} +1 -1
- package/dist/assets/{dashboard-verrE6SB.js → dashboard-BJUhLtpP.js} +3 -3
- package/dist/assets/de-CXIPlUxD.js +1 -0
- package/dist/assets/{deprecate-CcOeD5NI.js → deprecate-CBfNeB3N.js} +1 -1
- package/dist/assets/{did-address-DxAwQT37.js → did-address-CeAEd9AA.js} +1 -1
- package/dist/assets/{domain-qoKxvief.js → domain-DAVxIeBd.js} +1 -1
- package/dist/assets/{domain-list-VPg-n_IK.js → domain-list-C9Q-rA9d.js} +1 -1
- package/dist/assets/{email-BBDpX-5s.js → email-DVrFLh0C.js} +3 -3
- package/dist/assets/emotion-cache.browser.esm-CdXTLibk.js +1 -0
- package/dist/assets/es-B50lAPD2.js +1 -0
- package/dist/assets/{exchange-passport-CX9TMjVX.js → exchange-passport-CymsSQq4.js} +1 -1
- package/dist/assets/{fallback-D_QDGttC.js → fallback-HzSJFkgV.js} +1 -1
- package/dist/assets/{form-text-input-DUCCPm6k.js → form-text-input-DlUuPAGn.js} +1 -1
- package/dist/assets/{format-error-ChzZD3Gi.js → format-error-DiR6lB9S.js} +1 -1
- package/dist/assets/fr-CUxIEpIE.js +1 -0
- package/dist/assets/{fuel-C0jN-SJZ.js → fuel-00iTGFPb.js} +1 -1
- package/dist/assets/{fullpage-BlMNs4aL.js → fullpage-Tob3koDP.js} +1 -1
- package/dist/assets/hi-wDpKXbu9.js +1 -0
- package/dist/assets/{home-Dmac_aqq.js → home-C0YYsg_6.js} +1 -1
- package/dist/assets/id-DEzHxPLY.js +1 -0
- package/dist/assets/{iframe-iNaVuYbo.js → iframe-ClBOPtPf.js} +1 -1
- package/dist/assets/{index-BXIPxAhW.js → index-2aUz-aBH.js} +1 -1
- package/dist/assets/{index-DFXH0vaX.js → index-BBAn78dN.js} +3 -3
- package/dist/assets/{index-cbCBtDvk.js → index-BF7ZXXC1.js} +11 -11
- package/dist/assets/{index-ZEuzv_ea.js → index-BLoPFMkc.js} +1 -1
- package/dist/assets/{index-BNK6nvt-.js → index-BQQj2X3R.js} +1 -1
- package/dist/assets/{index-D-P_GY9j.js → index-BSr00ZmK.js} +1 -1
- package/dist/assets/{index-CaCM1SNQ.js → index-BVOdM4SV.js} +1 -1
- package/dist/assets/{index-CEDEkRWR.js → index-BdrLOxFM.js} +1 -1
- package/dist/assets/{index-xpNnhdaf.js → index-BrPvHdaT.js} +1 -1
- package/dist/assets/{index-CJfIeqOG.js → index-Bw7V6nBD.js} +1 -1
- package/dist/assets/{index-04cHYQ-I.js → index-BzUR-a4Z.js} +1 -1
- package/dist/assets/{index-B3PUjiYg.js → index-C0WGjtg-.js} +3 -3
- package/dist/assets/{index-DjajaUb5.js → index-CB8acmN6.js} +1 -1
- package/dist/assets/{index-DOBe8YkV.js → index-CCt0KYoE.js} +1 -1
- package/dist/assets/{index-Ch8nApPn.js → index-CElxuQNA.js} +1 -1
- package/dist/assets/{index-D6CUAurV.js → index-CgSUIlrZ.js} +1 -1
- package/dist/assets/{index-BS-wUHKY.js → index-CnIYMEiN.js} +1 -1
- package/dist/assets/{index-BKDM75Eh.js → index-CtQQYMUx.js} +1 -1
- package/dist/assets/{index-DJs3qjjS.js → index-D9LIoB-S.js} +1 -1
- package/dist/assets/{index-C6rBmIch.js → index-D9_f7f5B.js} +1 -1
- package/dist/assets/{index-B9_-R0J9.js → index-DFY8jb7D.js} +5 -5
- package/dist/assets/{index-DfgI3LpD.js → index-DMQtTWea.js} +1 -1
- package/dist/assets/{index-Di68ljBo.js → index-DV2LNzli.js} +1 -1
- package/dist/assets/{index-BFBCENEc.js → index-DdQMqH36.js} +1 -1
- package/dist/assets/{index-CsMWyT7N.js → index-DmehIOg4.js} +1 -1
- package/dist/assets/{index-s6wI6FUq.js → index-DsJOqL94.js} +1 -1
- package/dist/assets/{index-Ca9OhlyN.js → index-Dvw2zQCR.js} +1 -1
- package/dist/assets/{index-C24NOQwk.js → index-ElzBhQUO.js} +1 -1
- package/dist/assets/{index-BTSjCVQH.js → index-JB2oUFYn.js} +1 -1
- package/dist/assets/{index-BKtTxVLs.js → index-YTRzBzgM.js} +1 -1
- package/dist/assets/{index-BTGaXT27.js → index-ak_q22RG.js} +1 -1
- package/dist/assets/{index-C_f5JLr-.js → index-gOnIj4Rb.js} +1 -1
- package/dist/assets/{index-DdYlS53_.js → index-hSGAxOdh.js} +1 -1
- package/dist/assets/{index-M1nTFDLI.js → index-wdFo0Sfg.js} +1 -1
- package/dist/assets/{invitation-CyyqYlNb.js → invitation-5s62ddPg.js} +1 -1
- package/dist/assets/{invite-CbGyGzmx.js → invite-3Iwg7r6_.js} +1 -1
- package/dist/assets/{isEmail-izbtaaQQ.js → isEmail-9Cd87-Jf.js} +1 -1
- package/dist/assets/{issue-passport-3dVP7pnc.js → issue-passport-Bs_kcQrL.js} +1 -1
- package/dist/assets/{item-4JFyYUtQ.js → item-BoZPHIoN.js} +1 -1
- package/dist/assets/ja-e3wmzqpV.js +1 -0
- package/dist/assets/{jss-plugin-props-sort.esm-CbNAmI54.js → jss-plugin-props-sort.esm-CAi1eATI.js} +1 -1
- package/dist/assets/ko-9yz1hS_o.js +1 -0
- package/dist/assets/{launch-result-message-Csnmx5OM.js → launch-result-message-BKyjNhKo.js} +1 -1
- package/dist/assets/{layout-C8ceuP1O.js → layout-D2dVjUzS.js} +1 -1
- package/dist/assets/{list-header-Ctq6LcI7.js → list-header-C4m5dLsI.js} +1 -1
- package/dist/assets/localization-DDRUsd3P.js +1 -0
- package/dist/assets/{log-CL4QD1gw.js → log-C3JMMjMc.js} +1 -1
- package/dist/assets/{login-D9aQu6sk.js → login-Dvmflp_9.js} +1 -1
- package/dist/assets/{login-oauth-callback-Boxb4VVa.js → login-oauth-callback-CPc0zcES.js} +1 -1
- package/dist/assets/{logo-uploader-DQ2xFVgd.js → logo-uploader-CBETevxN.js} +3 -3
- package/dist/assets/{lost-passport-GnFgb36k.js → lost-passport-DU8KQjn-.js} +3 -3
- package/dist/assets/{lottie-react.esm-BH3BG_-P.js → lottie-react.esm-1vAuyi_k.js} +1 -1
- package/dist/assets/{notifications-BtjeF_bm.js → notifications-BckZ6Zeg.js} +1 -1
- package/dist/assets/{open-window-pjGXXc0-.js → open-window-0wATMkvy.js} +1 -1
- package/dist/assets/{overview-yDoLhnXv.js → overview-Btrxfq66.js} +1 -1
- package/dist/assets/{page-header-yd0FJEBt.js → page-header-UrCX2Xf3.js} +1 -1
- package/dist/assets/{permission-CeDHz8z1.js → permission-HDkuilbX.js} +1 -1
- package/dist/assets/{preferences-0i2g23g0.js → preferences-BY6jsr72.js} +1 -1
- package/dist/assets/pt-B3sa7Mxx.js +1 -0
- package/dist/assets/publish-resource-HbUTGqHz.js +1 -0
- package/dist/assets/{raf-schd.esm-DLXXWVH0.js → raf-schd.esm-B0fy_Dud.js} +1 -1
- package/dist/assets/{react-beautiful-dnd.esm-D2jpDw4M.js → react-beautiful-dnd.esm-qMe30Bxp.js} +1 -1
- package/dist/assets/refType-hOh2vas7.js +1 -0
- package/dist/assets/{resource-dialog-CTFOg2yy.js → resource-dialog-oqFn-KmA.js} +1 -1
- package/dist/assets/ru-NJ14fMtU.js +1 -0
- package/dist/assets/sdk-DAD_xkYB.js +1 -0
- package/dist/assets/{selector-BDN3xrV-.js → selector-DwWXI-4m.js} +1 -1
- package/dist/assets/session-CASkyLZm.js +1 -0
- package/dist/assets/{setup-C0yf3XW-.js → setup-BbMO8a0y.js} +3 -3
- package/dist/assets/{shorten-label-Bx3uHeta.js → shorten-label-D-Kk5MqZ.js} +1 -1
- package/dist/assets/{simple-select-BauGa3nb.js → simple-select-r4Tnf5lE.js} +1 -1
- package/dist/assets/{slicedToArray-DSijPVBu.js → slicedToArray-BO_HbV5G.js} +1 -1
- package/dist/assets/{start-CKXiSy-U.js → start-B4VFPrrl.js} +1 -1
- package/dist/assets/{step-actions-ClSrGBpc.js → step-actions-BRQxebyB.js} +1 -1
- package/dist/assets/{studio-Dy4Hb6Ns.js → studio-THlq023E.js} +1 -1
- package/dist/assets/{switch-control-BPueVJ6s.js → switch-control-8eQzUS4W.js} +1 -1
- package/dist/assets/{th-KYZmQlEk.js → th-D44cwFba.js} +1 -1
- package/dist/assets/{toUpper-CkN1_xDq.js → toUpper-DCrwupTk.js} +1 -1
- package/dist/assets/{transfer-Dl9O3w43.js → transfer-6dDKzuz2.js} +1 -1
- package/dist/assets/{trim-h1uVcGOT.js → trim-DYeSEo_Z.js} +1 -1
- package/dist/assets/{uniqBy-C90HAGZi.js → uniqBy-Vd8yZc0_.js} +1 -1
- package/dist/assets/{unsubscribe-t316mtFD.js → unsubscribe-BWgJo6hj.js} +1 -1
- package/dist/assets/{url-join-DMmAut1v.js → url-join-BOuybw6E.js} +1 -1
- package/dist/assets/{use-mobile-CJxiC-M_.js → use-mobile-BS_bqT1b.js} +1 -1
- package/dist/assets/{use-mobile-BRq2FKak.js → use-mobile-n7zuWNST.js} +1 -1
- package/dist/assets/{useAsync-BN1R2ebD.js → useAsync-Bif71966.js} +1 -1
- package/dist/assets/{useFormControl-DjmOtdAs.js → useFormControl-DqfIuuvt.js} +1 -1
- package/dist/assets/{useLocalStorage-B1FI1_4T.js → useLocalStorage-DMU1hTLM.js} +1 -1
- package/dist/assets/{useSetState-BAfQWGEm.js → useSetState-CN9u96ki.js} +1 -1
- package/dist/assets/{useSlot-CDCF2If3.js → useSlot-CHqta3Nf.js} +1 -1
- package/dist/assets/{useSlotProps-CbjQuc1h.js → useSlotProps-CCyJAuna.js} +1 -1
- package/dist/assets/{useThemeProps-DZfFxbKj.js → useThemeProps-BA28YyAa.js} +1 -1
- package/dist/assets/{user-center-DPaZkX-p.js → user-center-BDSX7lWk.js} +1 -1
- package/dist/assets/{user-sessions-DXdNgVKe.js → user-sessions-B3_Z4sc5.js} +1 -1
- package/dist/assets/{util-CcDEeHOO.js → util-BDJl9b79.js} +1 -1
- package/dist/assets/vi-D_0aqEIk.js +1 -0
- package/dist/assets/wrap-locale-Cy5ov56q.js +1 -0
- package/dist/assets/{zh-Drtm306V.js → zh-A1yYniN5.js} +1 -1
- package/dist/assets/zh-tw-W4HWUCjf.js +1 -0
- package/dist/index.html +1 -1
- package/dist/service-worker.js +1 -1
- package/package.json +18 -18
- package/dist/assets/add-resource-bDEgmOed.js +0 -1
- package/dist/assets/api-C0PK4EBY.js +0 -1
- package/dist/assets/ar-D4B_BKe0.js +0 -1
- package/dist/assets/branding-CDcsWRGi.js +0 -37
- package/dist/assets/de-C__DKoEA.js +0 -1
- package/dist/assets/emotion-cache.browser.esm-CIZCdZE-.js +0 -1
- package/dist/assets/es-Drri_3Re.js +0 -1
- package/dist/assets/fr-D6_iXdUw.js +0 -1
- package/dist/assets/hi-Cdbgnlr1.js +0 -1
- package/dist/assets/id-aV9m2_MW.js +0 -1
- package/dist/assets/ja-KaSVCmo6.js +0 -1
- package/dist/assets/ko-DpfCclMr.js +0 -1
- package/dist/assets/localization-B2x_Qrna.js +0 -1
- package/dist/assets/pt-DSz2Y0vp.js +0 -1
- package/dist/assets/publish-resource-BgdlYSXj.js +0 -1
- package/dist/assets/refType-BXN0uhpq.js +0 -1
- package/dist/assets/ru-P0dxFZEI.js +0 -1
- package/dist/assets/sdk-By-C6--g.js +0 -1
- package/dist/assets/session-5gd2ZUTN.js +0 -1
- package/dist/assets/vi-BePuxVQd.js +0 -1
- package/dist/assets/wrap-locale-C8wuzo7T.js +0 -1
- package/dist/assets/zh-tw-DSG5RRwT.js +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const e={setup:{connect:{title:"Требуется подпись",scan:"Подключите свой кошелек DID, чтобы стать владельцем этого сервера",confirm:"Просмотрите данную операцию в своем кошельке DID",success:"Ваш аккаунт связан с этим сервером"},keyPair:{title:"Требуется производный ключевой пары",scan:"Подключите свой кошелек DID для генерации ключевой пары для этого приложения",confirm:"Пожалуйста, проверьте эту операцию в своем кошельке DID",success:"Ваша пара ключей надежно хранится"},verify:{title:"Требуется удостоверение собственности",scan:"Подключите свой DID Wallet, чтобы предоставить удостоверения собственности",confirm:"Просмотрите эту операцию в своем DID-кошельке",success:"Ваш аккаунт подключен к этому серверу."},accept:{title:"Принятие на сервере требование сертификатов владельца",scan:"Подключите свой DID-кошелек, чтобы предоставить удостоверения владения",confirm:"Проверьте эту операцию в своем кошельке DID",success:"Ваша учетная запись подключена к этому серверу"},title:"Настроить сервер Blocklet",steps:{eula:"Лицензионное соглашение конечного пользователя",eulaFooter:"Я прочитал и согласен с условиями EULA.",connect:"Соединить кошелек владельца DID",verify:"Подтвердить собственность",basicSettings:"Основные настройки",launchApp:"Запустить приложение",complete:"Завершить"},congratulation:"Поздравляем! Ваш Blocklet Server защищен и готов к использованию",redirectButton:"Перейдите на панель управления!"},login:{loginTo:"Подключиться к",description:"Только владелец сервера и одобренные участники могут получить доступ к панели управления",switchDid:{title:"Переключить кошелек DID",scan:"Отсканируйте следующий QR-код, чтобы сменить аккаунт",confirm:"Подтвердите переключение в вашем кошельке DID",success:"Успешно переключено"},switchSpecifiedDid:{title:"Переключиться на DID-кошелек",scan:"Вам нужно переключить DID на {did}, чтобы выполнить следующие действия",confirm:"Подтвердите переключение в вашем кошельке DID",success:"Успешно переключено"},connect:{title:"Подключите кошелек DID",scan:"Подключите свой кошелек DID, чтобы предоставить паспорт",confirm:"Подтвердите в своем кошельке DID",success:"Вы успешно подключены"}},acceptServer:{title:"Претендуйте на сервер с правом собственности NFT",tooltip:"Если вы получили владение сервером nft, вы можете запросить свой паспорт владельца с помощью этой ссылки."},exchangePassport:{title:"Обменять паспорт на NFT",success:"Вы успешно обменяли паспорт и вошли в систему с паспортом",login:"Вход",tooltip:"Если у вас есть NFT из коллекции {collections}, вы можете обменять свой паспорт по этой ссылке.",dialog:{title:"Получите паспорт с NFT",scan:"Подключите свой кошелек DID, чтобы представить свою NFT и получить паспорт",confirm:"Выберите NFT в своем кошельке DID",success:"Паспорт успешно обменян"}},payablePassport:{title:"Приобрести паспорт с оплатой",tooltip:"Если у вас нет паспорта, вы можете приобрести паспорт по этой ссылке."},sidebar:{dashboard:"Информационная панель",blocklets:"Блоклетс",console:"Консоль",settings:"Настройки"},system:{total:"Всего",used:"Использованный",free:"Свободный",cores:"Количество ядер",instances:"Количество экземпляров"},common:{invalid:"Недействительный",about:"О",access:"Доступ",accessKey:"Ключи доступа",action:"Действие",actions:"Действия",add:"Добавить",address:"Адрес",afterTime:"После {time}",allow:"Разрешить",alreadyExist:"Уже существует",approve:"Одобрить",approved:"одобрен",appUrl:"URL приложения",auditLogs:"Журнал проверок",author:"Автор",avatar:"Аватар",back:"Назад",basic:"Основной",basicInfo:"Основная информация",profile:"Профиль",bind:"Связать",blocklet:"Блоклет",blocklets:"Блоклетс",blockletsStorage:"Хранилище блоклетов",cacheStorage:"Кэш-хранилище",cancel:"Отменить",certificate:"сертификат",category:"Тема журнала",click:"Нажмите, чтобы скопировать",close:"Закрыть",collapseAll:"Свернуть все",community:"Сообщество",complete:"Завершено",componentBasicInfo:"Основная информация о компоненте",components:"Блоклеты",config:"Настроить",configuration:"Настройка",configNavigation:"Навигация",configSuccess:"Конфигурация успешно",confirm:"Подтвердить",connect:"Подключить",console:"Консоль",continue:"Продолжать",continueWith:"Продолжить с",copiedTip:"Скопировано",copyAndClose:"Копировать и Закрыть",copyTip:"Нажмите, чтобы скопировать",coreStorage:"Основное хранение",cpu:"ЦПУ",create:"Создать",createSuccess:"Создать ключ доступа",created:"Создано",createdAt:"Создано",createdBy:"Создано",dAddress:"Децентрализованные идентификаторы (DID)",dataStorage:"Хранение на локальном диске",delConfirm:"Удалить",delConfirmDescription:"Подтвердите удаление {data}?",delete:"Удалить",dependents:"Нетрудоспособные",description:"Описание",detail:"Деталь",did:"СДЕЛАЛ",disk:"Диск",diskInfo:"Информация о диске",docker:"ЭТО Docker",documentation:"Документация",domain:"Домен",downgradeTo:"Перейти к более низкому уровню",download:"Скачать",downloading:"Скачивание",edit:"Редактировать",email:"Электронная почта",phone:"Телефон",empty:"Пустой",emptyData:"Результаты не найдены",enable:"Включить",engine:"Двигатель",env:"Окружающая среда",environment:"Окружение",expandAll:"Развернуть все",expired:"Истекло",expires:"Истекает",export:"Экспорт",externalIp:"Внешний IP",failed:"Не удалось",filter:"Фильтр журнала",fingerprint:"Отпечаток пальца",finish:"Готово",forbid:"Запрещать",free:"Свободно",general:"Общий",gitpod:"Gitpod -",goEULA:"Нажмите, чтобы просмотреть 'Лицензионное соглашение с конечным пользователем'",group:"Группа",image:"Это изображение",install:"Установить",installed:"Установлено",installedAt:"Установлено в",installSuccess:"Установка прошла успешно",installing:"Установка",internalIp:"Внутренний IP-адрес",introduction:"Введение",invite:"Пригласить",inviting:"Приглашение",ip:"IP",isPublic:"Общественность",issue:"Проблема",issuer:"Эмитент",item:"Предмет",joined:"Присоединился",key:"Ключ",lastPublishedAt:"Опубликовано",launcher:"Информация о запускающем устройстве",leavePageTip:"Вы уверены, что хотите покинуть страницу?",link:"Ссылка",loading:"Загрузка",log:"Просмотреть журналы",logStorage:"Хранение журналов",login:"Вход",logo:"Лого",logout:"Выйти",logs:"Журналы",manageTeam:"Управление командой",marketplace:"Рынок",member:"Участник",members:"Участники",memory:"Память",meta:"Метаданные",analytics:"Аналитика",runtime:"Время выполнения",traffic:"Движение",more:"Больше",mountPoint:"горная вершина",name:"Имя",next:"Следующий",no:"Нет",noData:"Нет записей для отображения",notice:"Если вы не прочитаете это, случится что-то непредвиденное и плохое!",noticeTitle:"Уведомление",notification:"Уведомление",open:"Открыть",management:"Менеджмент",os:"Операционная система",overview:"Обзор",owner:"Владелец",page404:"404 страница",passport:"Паспорт",permission:"Разрешение",port:"Порт",pre:"Предыдущий",preferences:"Предпочтения",preview:"Предварительный просмотр",protected:"Защищено",protocol:"Протокол",purchase:"Покупка",readMore:"Больше",redirect:"Перенаправить",redirectCode:"Код перенаправления",redirectPermanently:"Постоянное перенаправление",redirectTemporary:"Временное перенаправление",redirectUrl:"Адрес переадресации URL",rewrite:"Переписать",release:"Релиз",rewriteUrl:"Перепишите URL",reject:"Отклонить",reload:"Перезагрузить",remark:"Замечание",remove:"Удалить",removeSuccess:"Успешно удалено",renew:"Обновить",reportIssue:"Сообщить о проблеме",required:"Обязательный",requiredErrorText:"{name} необходим",resource:"Ресурс",restart:"Перезагрузка",restore:"Восстановить",retry:"Повторить",revoke:"Отозвать",role:"Роль",running:"Бег",runtimeInfo:"Информация о работе",save:"Сохранить",saveChanges:"Сохранить изменения",saveSuccess:"Сохранено успешно",scheduleFailed:"Определение расписания не удалось",scheduleSuccess:"Успешно запланировано",scope:"Область",screenshot:"Скриншоты",search:"Поиск",security:"Безопасность",serverDid:"Сервер DID",serverVersion:"Версия сервера",setting:"Настройки",start:"Начало",status:"Статус",stop:"Стоп",storage:"Хранение",backup:"Резервное копирование",store:"Магазин",succeeded:"Успешно",subscription:"Подписка",support:"Поддержка",switch:"Переключатель",team:"Команда",the:"Это",timeAgo:"{time} назад",title:"Заголовок",type:"Тип",unavailable:"Недоступно",update:"Обновить",updateAvailable:"Доступна новая версия {version}",updatedAt:"Обновлено в",updatedBy:"Обновлено пользователем",upgrade:"Обновление",upgradeTo:"Обновить до",upgrading:"Обновление",uptime:"Время работы",url:"URL",valid:"Действительный",value:"Значение",version:"Версия",visit:"Посещение",waiting:"Ожидание",webhook:"Интеграции",yes:"Да",invalidParam:"Неверные параметры",launch:"Запуск",price:"Цена",redirecting:"Перенаправление",error:"Ошибка",reminder:"Напоминание",normal:"Нормальный",gateway:"Шлюз",verifyNFT:"Проверьте NFT",errorMessage:"Ошибка сообщения",slugifyHint:"Фактическая точка монтирования будет: {value}",strategy:"Стратегия",auto:"Автомобиль",manual:"Руководство",progress:"В процессе",startTime:"Начальное время",endTime:"Время окончания",selected:"Выбран",timeoutError:"Ошибка ожидания",tags:"Метки",connectToStore:"Подключитесь к магазину",uploaded:"Загружено",upload:"Загрузить",blockletStudio:"Студия",visitStore:"Посетите магазин",reconnect:"Восстановить соединение",change:"Изменение",disconnect:"Отсоединить",sourceApp:"Принадлежит приложению",visitTarget:"Посетите {name}",upgradeServer:"Обновить сервер",display:"Показ",requiredInputPlaceholder:"Пожалуйста, введите {name}",refresh:"Обновить",moveUp:"Переместить вверх",moveDown:"Переместить вниз",enabled:"Включено",disabled:"Отключено"},blocklet:{external:"Внешний",notFound:"Блоклет не найден на этом сервере, возможно, его удалили",installFromMarket:"Установить новые блоклеты",installFromUrl:"Установить с URL",installFromCreate:"Создать блоклет",installFromDiskBackup:"Восстановить с этого сервера",installedAt:"Установлено в",internal:"Внутренний",startedAt:"Начало в",stoppedAt:"Остановлено на",urlEmptyTip:"Нет доступа к URL",goToAddRule:"Перейти к Добавить",services:"Открытые услуги",upstreamPort:"Порт вверх по течению",noService:"Нет услуг",appId:"App DID",appPid:"Постоянный DID",alsoKnownAs:"Также известно как",skSource:"Кошелек владельца",reloadSuccess:"Блоклет успешно перезагружен",statusTip:"Blocklet - это {status}",initialUptime:"Менее 1м",dashboard:"Панель управления Blocklet",noComponent:"Приложение не имеет компонентов и не может быть запущено",fromUrl:{title:"Установить блоклет",label:"URL мета-блоклета",description:"URL должен указывать на Мета-файл блоклета. Если вам нужно ссылаться на локальный файл, пожалуйста, добавьте префикс file://, например file:///Users/foo/blocklet.json.",confirm:"Установить",step0:"URL ввода",step1:"Подтвердить метаинформацию",existTipPrefix:"Блоклет с тем же DID уже существует, версия",existTipSuffix:"Пожалуйста, установите более новую версию."},action:{stopDescription:"Остановка блоклета сделает его общие интерфейсы недоступными, что может привести к сбоям у конечного пользователя",stopComponentDescription:"Остановка компонента сделает его общедоступные интерфейсы недоступными, что может вызвать ошибки для конечного пользователя.",confirmStop:"Да, остановись",cancelDownloadDescription:"Отменить загрузку {name}?",removeApplicationDescription:"Удаление приложения удалит код и данные, созданные этим приложением, которые не могут быть восстановлены, если у вас нет резервных копий",removeApplicationAfterBackup:"Сделайте резервную копию и удалите приложение. Вы можете восстановить приложение с этого сервера, если вам нужно.",removeApplicationComplete:"Удалите как код, так и данные для этого приложения",removeComponentDescription:"Удаление компонента приведет к удалению кода и данных, созданных этим компонентом, которые невозможно восстановить, если у вас нет резервных копий.",removeComponentKeepData:"Храните данные для этого компонента, удаляйте только код",removeComponentComplete:"Удалите и код, и данные для этого компонента",confirmRemove:"Да, удалить это",confirmComponentRemove:"Да, удалите его",upgradeDescription:"Обновление блоклета сделает его временно недоступным, вы уверены, что хотите продолжить?",confirmUpgrade:"Да, обновите его",confirmRestart:"Да, перезапустите его",restartDescription:"Блоклет будет временно приостановлен и может не запуститься из-за изменения конфигурации."},dev:{modeTip:"Пожалуйста, переключите сервер Blocklet в режим DEBUG"},index:{tableTitle:"Управляйте своими блоклетами",noBlocklet:"В этом сервере блоклетов не найдено блоклетов, установите блоклет из маркетплейса, чтобы начать."},admin:{iframeTitle:"Административный интерфейс блоклета",title:"Административный интерфейс",noContent:"У этого блоклета нет административного интерфейса",securityError:"Ошибка безопасности: Невозможно открыть URL администратора при доступе к источнику из другого происхождения"},config:{name:"Название приложения",description:"Описание приложения",sk:"Секретный ключ для кошелька приложения",logoSquare:"Логотип приложения",logoRect:"Прямоугольный логотип",logoRectDesc:"Обычно отображается в верхней части страницы, по умолчанию с логотипом приложения",logoFavicon:"Фавикон",logoFaviconDesc:"Обычно отображается в адресной строке браузера или на вкладке страницы, по умолчанию логотип приложения",clusterSize:"Число экземпляров при запуске этого блоклета в режиме кластера",copyrightOwner:"Владелец авторского права (Отображение в подвале)",copyrightYear:"Авторское право {year} (Отображать в нижнем колонтитуле)",deletable:{name:"Удалить защиту",enable:"Этот блоклет в настоящее время нельзя удалить",disable:"Этот блоклет в настоящее время можно удалить."},walletType:{name:"Тип кошелька",description:"Тип кошелька экземпляра Blocklet, изменит производное DID"},languages:"Поддерживаемые языки",selectLanguagesTip:"Измените порядок, удалив и снова добавив",languagesSearch:"Поиск по местному имени страны, английскому имени или ISO-коду...",passportColor:"Цвет паспорта",appUrl:"URL приложения",access:{title:"Кто имеет доступ",description:"Кто может получить доступ к блоклету?",useDefault:"Используйте настройки по умолчанию",defaultDescription:"Используйте конфигурацию приложения по умолчанию",whoCanAccess:{all:{title:"Доступно для всех",description:"Открытый для мира, к нему может получить доступ любой человек без паспорта"},owner:{title:"Только я могу получить доступ",description:"Вы должны предоставить паспорт владельца, чтобы получить доступ к этому приложению"},invited:{title:"Только приглашенные лица могут получить доступ",description:"Вы можете пригласить участников позже на странице администратора"}},publicToStore:"Публично в магазине",publicInstanceTip:"Адрес доступа этого блоклета будет отображаться в магазине (вместе с вашей DID для приема пожертвований)",updatedTip:"Изменен контроль доступа"},changedTip:"Конфигурация обновлена, пожалуйста, перезапустите блоклет",missingRequired:"Отсутствует необходимая конфигурация для запуска блоклета",gotoFix:"Иди исправлять",environment:{key:"Ключ конфигурации",value:"Значение конфигурации",keyValueRequired:"Ключ и значение конфигурации должны быть указаны",invalidKey:"Конфигурационный ключ не должен начинаться с BLOCKLET_ или COMPONENT_.",deleteForbidden:"Эта конфигурация обязательна и не должна быть удалена",tip:"Конфигурации, начинающиеся с BWA_, не должны содержать конфиденциальную информацию, поскольку они будут отправлены в браузер."},dangerZone:"Зона опасности",blockletTypeChangeTip:"Тип кошелька будет изменен на <b>{value}</b>",appDidChangeTip:"Эта операция изменит DID приложения, что приведет к следующим проблемам. Пожалуйста, подтвердите после тщательной оценки:",appDidChangeTipL1:"Аккаунт пользователя, связанный с этим приложением, будет изменен",appDidChangeTipL2:"Доменное имя DID приложения изменится, и исходное доменное имя станет недействительным",appSkChangeTip:"Вы изменяете секретный ключ приложения",walletTypeTitle:"Обновить тип кошелька",appSkTitle:"Обновить секретный ключ приложения",sharedToAllComponents:"Будет разделено на все компоненты",session:{ttl:"Пользователя попросят войти в систему еще раз, если на этом сайте у них не было активности в течение {day} дней.",day:"{day} день",days:"{day} дней",period:"Срок действия сессии",profile:"Требования к профилю пользователя",cacheTtl:"Время кэширования для данных сеанса пользователя (в секундах)",fullNameEnabled:"Запросить имя пользователя при входе (включено по умолчанию)",avatarEnabled:"Запросить аватар пользователя при входе (включено по умолчанию)",emailEnabled:"Запросить адрес электронной почты пользователя при входе",emailRequireVerified:"Требовать подтверждения электронной почты пользователя перед входом",emailRequireUnique:"Требуется сделать адрес электронной почты пользователя уникальным по всем пользователям",phoneEnabled:"Запросить номер телефона пользователя при входе (пока не поддерживается)",phoneRequireVerified:"Требуется подтверждение номера телефона пользователя перед входом",phoneRequireUnique:"Требуется, чтобы номер телефона пользователя был уникальным для всех пользователей",emailTrustOauthProviders:"Доверьте поставщикам OAuth статус проверки электронной почты",enableDomainBlackList:"Активировать черный список доменов электронной почты (отклонить список доменов электронной почты)",enableDomainWhiteList:"Включить белый список доменов электронной почты (разрешить вход только по указанным доменам электронной почты)",addDomain:"Добавьте источник для получения списка (в формате обычного текста, один домен на строку)"},clearCache:{name:"Управление кэшем",purpose:"Управление кэшированными файлами в службах маршрутизатора и блоклетов",title:"Подтвердить очистку кэша?",action:"Очистить кэш",success:"Успешно очищено {count} записей кэша",description:"Вы уверены, что хотите очистить кэшированные файлы в маршрутизаторе и службе блокировки? Эта операция может вызвать незначительное снижение производительности в короткой перспективе."},tenantMode:{name:"Режим нескольких арендаторов",multiple:"Этот блоклет работает в режиме множественных арендодателей, данные должны быть изолированы для каждого арендодателя",single:"Этот блоклет работает в режиме с одним арендатором, все данные общие."}},overview:{source:"Источник",deployedFrom:"Развернуто из",accessControl:"Контроль доступа",viewInStore:"Посмотрите в магазине"},diskInfo:{empty:"Информация о диске в данный момент недоступна!",appDir:"Каталог приложений",dataDir:"Каталог данных",logDir:"Каталог журналов",cacheDir:"Каталог кэша"},runtimeInfo:{noRunning:"Информация о работе будет доступна, когда блоклет будет работать!",memoryUsage:"Использование памяти",cpuUsage:"Загрузка ЦП",uptime:"Время работы",port:"Порт",processId:"Идентификатор процесса"},dist:{downloadLink:"Ссылка для загрузки",verify:"Проверить"},status:{added:"Добавлено",waiting:"Ожидание",downloading:"Загрузка",extracting:"Извлечение",installing:"Установка",upgrading:"Обновление",installed:"Установлено",created:"Создано",starting:"Начинающий",running:"Бег",stopping:"Остановка",stopped:"Остановлено",error:"Ошибка",deleting:"Удаление",corrupted:"испорченный",purchasing:"Ожидание покупки",purchased:"Куплено",verifying:"Проверка покупки",resource:"Ресурс"},list:{download:"Скачать",star:"Звезда"},component:{container:"Глобальная конфигурация",showContainer:"Показать глобальную конфигурацию",didSpaceConfig:"Настройка пространства DID",didSpaceConfigTip:"Завершите следующий процесс авторизации, чтобы сохранить данные приложения в пространствах DID",didSpaceConnected:"Хранение разрешено для: {endpoint}",checkUpdateTitle:"Проверить обновления",updateTitle:"Обновить компоненты",noUpdate:"Нет компонентов для обновления",add:"Добавить компонент",selectComponent:"Выберите блоклет",selectRegistry:"Выберите магазин Blocklet",selectRegistryTip:"Вы можете переключить магазин компонентов, чтобы увидеть больше компонентов",selectInstance:"Выберите экземпляр",selectInstanceTip:"Вы можете выбрать существующий экземпляр или создать новый экземпляр. Существующие экземпляры будут использовать ранее сохраненную конфигурацию и данные.",newInstance:"Создать новый экземпляр",noComponent:"Нет компонентов",mountPoint:"Какая точка монтирования?",mountPointTip:"Если вы установите точку монтирования на '/мой-префикс', то все запросы, начинающиеся с этой точки монтирования, будут направлены к выбранному компоненту.",delete:"Удалить компонент",deleteDescription:"Этот компонент будет недоступен после удаления. Подтвердить удаление?",purchase:"Требуется оплата",tip:{stopBlocklet:"Пожалуйста, сначала остановите запуск Blocklet",requiredBy:"Компонент требуется {name}"},choose:"Выберите",addWithName:"Добавить блоклет в {name}",installingCanCloseWindowTip:"Установка компонента в фоновом режиме, вы можете безопасно закрыть это окно",installSuccessTip:"Поздравляем, компонент успешно установлен!",missDownloadTokenTip:"Невозможно добавить платный компонент без действительного токена загрузки",purchaseComponentSecondCheckTip:"Пожалуйста, предоставьте свою покупку блоклета NFT для продолжения",installComponentError:"При установке компонента произошла ошибка, пожалуйста, повторите попытку",downloadComponentError:"Произошла ошибка при загрузке компонента, повторите попытку",addComponentTip:{introduction:"Добро пожаловать в Мастер добавления компонента",isPurchase:"Необходимо проверить NFT перед использованием <b>{name}</b> в качестве компонента",belowInformation:"Ниже приведена информация о компоненте:",verifyNFT:"Пожалуйста, выберите метод проверки NFT",config:"Пожалуйста, заполните настройки компонента",environment:"Пожалуйста, заполните среду компонента",fromUrl:"Добавить блоклет из URL"},addNext:"Добавить {name}",upgradeNext:"Обновление {name}",setting:"Настройки",noDependencies:"У {name} нет зависимостей",relatedComponents:"Связанные блоклеты",required:"Требуется",installed:"Установлено",installingTip:"Устанавливается компонент, пожалуйста, подождите...",upgrade:"Обновление"},router:{urlPath:"Путь URL",noRunning:"Блоклет в настоящее время не запущен. Невозможно получить доступ по следующему адресу!",securitySetting:"Настройка безопасности",checkUrlAccessible:"Проверьте доступность адреса",urlInaccessible:"Это может быть связано с проблемами сети, адрес временно недоступен",noAccessibleUrl:"Нет доступного URL",domainLockTooltip:"Сгенерированный системой домен не может быть отредактирован.",urlLockTooltip:"Система создала URL-адрес, который нельзя изменить.",showAllDomains:"Показать все домены",showAllDIDs:"Показать все DIDs",currentDomainTip:"Вы получаете доступ к текущей странице через этот домен"},export:{title:"Экспорт блоклета",name:"Имя пакета",nameTip:"например: «мое-имя-блоклета» или «@моя-область/имя-блоклета»",result:"Что дальше",exportSource:"Исходный материал для экспорта",success:"Блоклет успешно экспортирован",resultTipStart:"C",resultTipEnd:"Вы можете создать и опубликовать этот блоклет за несколько минут",uploadedComponentTip:"Прямо загруженные компоненты не могут быть экспортированы:"},migrate:{title:"Перенести приложение",scan:"Подключите ваш DID-кошелек для генерации ключевой пары для этого приложения",confirm:"Пожалуйста, просмотрите эту операцию в вашем DID-кошельке",success:"Ваше приложение успешно перенесено, страница будет обновлена через {sec} секунд.",intro:{l1:"Нажмите здесь",l2:"Пожалуйста, перенесите ваше приложение на новую версию (изменения отключены до завершения миграции)",l3:"Приложение DID будет полностью контролироваться из вашего кошелька DID.",l4:"Данные приложения будут мигрированы и дополнительные изменения не требуются.",l5:"Новая структура приложения позволит вам более гибко изменять компоненты.",l6:"4. Пожалуйста, не изменяйте точки монтирования компонентов, пока не будет выпущена новая версия компонента."},tip:{duplicate:"Найдите дублирующийся компонент {name}, пожалуйста, удалите ненужные компоненты и выполните миграцию снова",running:"Пожалуйста, прекратите блокировать блоклет перед миграцией"}},error:{isRunning:"Запущен Blocklet, сначала остановите его, пожалуйста",isInProgress:"Blocklet находится в процессе, пожалуйста, подождите, пока он закончится"},publish:{createResource:"Создать ресурс",addResource:"Добавить релиз",productTitle:"Продукт",versionTitle:"Версионирование",imgTitle:"Изображения",resourceTitle:"Ресурсы",blockletEmptyTip:"Здесь нет никаких блоклетов",createBlockletTip:"Вы можете создать новый блоклет с использованием существующих ресурсов, компонентов и конфигурации в этом приложении",createBlocklet:"Новый блоклет",componentNotRunning:"Блоклет {name} не запущен, пожалуйста, сначала запустите его",releaseEmptyTip:"Здесь нет никаких релизов",createReleaseTip:"Вы можете создать релиз блоклета вместе с примечаниями к релизу и ресурсами для использования другими людьми.",createRelease:"Создать релиз",deleteReleaseTip:"После удаления версия не может быть восстановлена",createBlockletDid:"Создать из кошелька DID",createReleaseSuccess:"Релиз успешно создан",saveDraftSuccess:"Черновик успешно сохранен",connect:{title:"Создать Blocklet DID",scan:"Отсканируйте QR-код ниже, чтобы сгенерировать Blocklet DID",confirm:"Подтвердите использование кошелька DID",success:"Был сгенерирован идентификатор Blocklet DID, продолжите вашу операцию"},saveDraft:"Сохранить черновик",releaseNote:"Примечание к выпуску",errorTip:{noDid:"Требуется Blocklet DID",noTitle:"Название блоклета обязательно",noVersion:"Требуется версия Blocklet",noDescription:"Требуется описание блокировки",noNote:"Требуется версия примечания",inValidVersion:"Неверная версия блоклета",noResource:"Пожалуйста, выберите загружаемые ресурсы для включения в блоклет",noFirstDid:"Пожалуйста, создайте сначала Blocklet DID"},packTip:"В настоящее время блоклеты могут быть установлены непосредственно в качестве приложений. Компоненты и конфигурации приложений будут автоматически включены в блоклет.",resourceChangedWarning:"Вы изменили ресурс, пожалуйста, сохраните его вовремя",installResourceTip:"URL для установки:",installResourceTip2:"Если вы хотите узнать больше советов, пожалуйста, посетите",installResourceHelp:"Документация помощи",componentIncluded:"Включено",componentForceRequired:"Обязательный",download:"Скачать {name}",delete:"Удалить {name}",copyInstallUrl:"Скопируйте URL для установки",install:"Установить {name}",publishToStoreSuccess:"Блоклет успешно опубликован в магазине",connectStoreSuccess:"Успешное подключение к Blocklet Store",uploadToStoreSuccess:"Блоклет успешно загружен в магазин, вам нужно опубликовать его в магазине",viewLastRelease:"Просмотр последнего релиза",reconnectStoreTip:"После переподключения будет назначен новый разработчик. Вы уверены, что хотите переподключиться?",deleteProject:{title:"Удалить {name}",scan:"Сканируйте QR-код ниже, чтобы удалить {name}",confirm:"Подтвердите использование кошелька DID",success:"Проект Blocklet был удален, пожалуйста, продолжите вашу операцию.",tip1:"Проект Blocklet не может быть восстановлен после удаления",tip2:"Вы больше не сможете публиковать новые версии удаленного блоклета, что означает, что блоклет больше не будет обновляться в магазине.",tip3:"Удаление блоклета не повлияет на его текущую опубликованную версию в Store.",description:"После удаления Блоклета вы столкнетесь со следующими проблемами. Вы уверены, что хотите удалить его?"},resourceTip:"В настоящее время, как ресурсный блоклет, его нельзя установить напрямую из Магазина.",whyCantSeeInStore:"Почему я не вижу этот блоклет в магазине?",whyCantSeeResourceBlockletInStore:"Реурсные блоклеты по умолчанию скрыты со страницы списка магазина",tenantScope:"Арендатор",blockletStudio:"Студия Блоклет",allComponentsNotRunning:"Blocklets не запускается, пожалуйста, сначала запустите его",resourceEmptyTip:"Нет доступных ресурсов",steps:{resources:"Пожалуйста, выберите ресурсы, которые необходимо связать с текущим блоклетом, поскольку эти ресурсы будут установлены вместе с блоклетом.",blocklets:"Выберите блоклеты, которые будут связаны.",version:"Установите версию выпуска и журнал изменений.",introduction:"Четкое введение может эффективно подчеркнуть ваш Blocklet. Можно использовать синтаксис Markdown для написания и предварительного просмотра.",branding:"Опишите основную информацию о вашем блоклете. Эта информация будет представлена пользователям в магазине."},branding:"Брендинг",brandingHelp:"Больше информации о блоклете будет отображаться в магазине",resourceSelect:"Выберите ресурс из блоклетов",resourceUpload:"Загрузите ресурс с вашего диска (в архиве требуется index.html)",deleteStoreTip:"Вы уверены, что хотите удалить {name} из списка магазина Connect?",disconnectStoreTip:"Блоклет будет удален из магазина после отключения. Уверены, что хотите отключить?",connectOrUpload:"Подключиться или Загрузить",developerInfo:"Информация для разработчиков",autoUploadTip:"Автоматически загрузить блоклет в магазин после выпуска",possibleSameStoreTip:"Попробуйте разрешить блоклеты зависимостей в том же хранилище блоклетов перед каждой загрузкой, если это возможно",needProjectId:"Пожалуйста, сначала создайте проект",projectSettings:"Настройки проекта",noStoreSelected:"Пожалуйста, выберите один из существующих магазинов или добавьте новый магазин, чтобы продолжить",installToThisServer:"Установить на этот сервер"},titleValidationError:"Длина заголовка должна быть не менее 3 символов",descriptionValidationError:"Длина описания должна быть от 3 до 80 символов",whyNeedAppPid:"Если ваше приложение перенесено, постоянный DID — это DID, созданный при первоначальной установке этого Blocklet.",usingDocker:"Этот блоклет будет работать с использованием Docker."},dashboard:{nodeDid:"Узел",ownerDid:"Владелец",routingEngine:"Машинное ориентирование",ownerNftURL:"Владелец NFT",expirationLeft:"Оставшееся время действия",startFromCrashTip:"Сервер Blocklet не завершил работу нормально в последний раз, пожалуйста, вручную запустите блоклеты, которые должны быть выполнены.",runtimeConfig:{blockletMaxMemoryLimit:"Максимальный лимит памяти Blocklet",daemonMaxMemoryLimit:"Максимальный лимит памяти сервера",proxyMaxMemoryLimit:"Максимальный лимит памяти шины событий"}},store:{nameSort:"Имя",popularSort:"Популярность",headerDescription:"Найдите и установите свои блоклеты",detail:{purchase:"Покупка {name}",open:"Откройте {name}",install:"Установите {name}",upgrade:"Улучшить {name}",empty:"Без представления"},blockletRegistry:{changeFailed:"Не удалось изменить хранилище блоков:",addFailed:"Не удалось добавить магазин блоклетов",editFailed:"Не удалось отредактировать Blocklet Store",switchRegistry:"Переключиться на Blocklet Store",addRegistry:"Добавить Blocklet Store",editRegistry:"Редактировать блоклет-магазин",deleteRegistry:"Удалить хранилище блоклетов",haveSameRegistry:"Существует одинаковый блоклет-магазин",registryName:"Название магазина Блоклет",registryUrl:"URL хранилища блоклетов",registryNameEmpty:"Название магазина Blocklet не может быть пустым",registryUrlEmpty:"URL магазина Blocklet не может быть пустым",deleteDesc:"Подтвердите удаление магазина блоклетов {name}?",confirmDesc:"Пожалуйста, введите {name}, чтобы удалить"},purchase:{title:"Приобрести {name}",confirmed:"Ваша покупка блоклета NFT подтверждена",declined:"Вы не предоставили действительного приобретения Blocklet NFT",waiting:"Ожидание завершения покупки...",purchase:{title:"Приобрести NFT",description:"Оплатите некоторый токен перед установкой этого блоклета, если вы не приобрели его."},verify:{title:"Проверьте NFT",description:"Ваш NFT будет проверен перед установкой этого блоклета, если вы приобрели и удерживаете NFT покупки в своем кошельке DID.",auth:{title:"Покупка требует подтверждения",scan:"Подключите DID-кошелек для покупки NFT-файлов через блокчейн",confirm:"Просмотрите эту операцию в своем DИD-кошельке",success:"Ваше приобретение NFT подтверждено, и установка начата."}},auth:{title:"Купить {name}",scan:"Отсканируйте следующий QR-код с помощью вашего кошелька DID",confirm:"Подтвердите в своем кошельке DID",success:"Покупка NFT отправлена на ваш DID-кошелек"},launch:"Запустить {name}",autoLaunch:"{name} успешно приобретено, перенаправление на страницу запуска..."},tooltip:{upgradeServer:"Блокировщик требует Blocklet Server версии {version}, текущая версия Blocklet Server составляет {serverVersion}"}},setting:{saveSuccess:"Настройки успешно сохранены",unSavedTip:'Имеются несохраненные изменения, пожалуйста, нажмите "Сохранить изменения", чтобы сохранить их.',unSavedLeaveTip:"Есть несохраненные изменения, вы уверены, что хотите покинуть страницу?",form:{name:"Название вашего сервера",nameRequired:"Требуется описание сервера",namePlaceholder:"Имя сервера",description:"Опишите ваш сервер",descriptionHolder:"Описание сервера",descriptionRequired:"Требуется описание сервера",domain:"Имя вашего серверного домена",domainPlaceholder:"Имя домена сервера",domainRequired:"Требуется домен сервера",ipPlaceholder:"IP",ipRequired:"Требуется IP",registry:"Blocklet Store",registryPlaceholder:"Магазин блоклетов для получения блоклетов",registryRequired:"Требуется магазин блоклетов",registerUrl:"URL загрузчика Blocklet",registerUrlPlaceholder:"Введите URL вашего предпочтительного запуска Blocklet, вы можете безопасно использовать официальный.",webWalletUrl:"URL кошелька DID",webWalletUrlPlaceholder:'Пожалуйста, введите URL вашего размещенного "DID кошелька", вы можете безопасно использовать официальную версию',nftDomainUrl:"URL домена NFT",nftDomainUrlPlaceholder:"Пожалуйста, введите URL вашего хостинга 'NFT Домена', вы можете безопасно использовать официальный",enableWelcomePage:"Включить страницу приветствия",welcome:{switchLabel:"Главная страница"},upgrade:{title:"Обновите сервер Blocklet до {version}",description:"Во время обновления ваш сервер Blocklet перейдет в режим обслуживания на несколько минут до завершения обновления.",dialog:"Щелкните 'подтвердить', чтобы установить обновление. Сервер Blocklet перейдет в режим обслуживания до завершения обновления и автоматически вернется в режим производства.",confirm:"Обновление",switchLabel:"Проверка автоматических обновлений",enableBetaRelease:"Включить бета-релиз",setup:"Подготовка к обновлению",installing:"Установка сервера Blocklet v{version}",restarting:"Перезапуск сервера Blocklet",cleanup:"Перенос данных сервера Blocklet",verifying:"Проверка сервера Blocklet версии {version}",rollback:"Сервер блоклетов отката",complete:"Обновление завершено!",progress:"Обновление {name}",check:"Проверить наличие обновлений",latest:"Вы используете последнюю версию."},restart:{title:"Перезапустить сервер Blocklet",description:"Во время перезапуска ваш сервер Blocklet перейдет в режим обслуживания, пока перезапуск не будет завершен.",dialog:'Нажмите кнопку "Подтвердить", чтобы перезагрузить. Сервер Blocklet будет находиться в режиме обслуживания до завершения перезагрузки и автоматически вернется в рабочий режим.',confirm:"Перезагрузка",setup:"Подготовка к перезагрузке",verifying:"Проверка сервера блокчейнового блока",restarting:"Перезапуск сервера блоклета",cleanup:"Убедитесь, что все в порядке",rollback:"Очистите грязное состояние",complete:"Полное обслуживание!",progress:"Перезапуск {name}"},register:{titleAdded:"Добавлено в Blocklet Launcher",title:"Добавить в Blocklet Launcher",description:"После добавления вы можете запустить блоклеты на этом сервере блоклетов с {url}.",descriptionOnAdded:"Вы можете запустить блоклеты на этом сервере блоклетов с {url}.",btn:"Добавить",update:"Обновить",added:"Добавлено",addSucceed:"Добавлено успешно",updateSucceed:"Обновление выполнено успешно",detecting:"Обнаружение",timeout:"Тайм-аут обнаружения, пожалуйста, проверьте, запущен ли блоклет лаунчер"},monitor:{diskThreshold:"Отправить предупреждение, когда использование диска превышает (%)",diskThresholdPlaceholder:"Пожалуйста, установите порог оповещения об использовании диска"},security:{switchLabel:"Изоляция файловой системы",switchTips:"После отключения этой опции файловая система блоклета больше не будет находиться в изоляции, что может повлечь за собой риск повреждения файловой системы вредоносным ПО.",warningTips:"Функция изоляции файловой системы не может вступить в силу. Пожалуйста, обновите версию node.js (текущая версия {version}) до v21.6.0 или выше."},docker:{switchLabel:"Контейнер запускает блоклет",switchTips:"После включения этой опции, блоклеты будут запускаться с использованием контейнеров, что может улучшить общую безопасность сервера.",notInstalled:"Невозможно активировать запуск контейнера, потому что Docker не установлен или не имеет необходимых разрешений для выполнения",needCloseFileSystemIsolation:"Изоляция файловой системы и режим выполнения контейнера docker не могут быть включены одновременно"}},accessKey:{accessKeyId:"КЛЮЧ ДОСТУПА",lastUsed:"Последний раз использовался в",tip:"Пожалуйста, введите имя для этого ключа доступа для будущих ссылок:",saveSecretTip:"Это единственный момент, когда ваш секретный ключ доступа может быть просмотрен и не может быть восстановлен. Однако вы можете создавать новые ключи доступа в любое время.",iKnow:"Я скопировал и сохранил секрет доступа",showSecret:"Показать секретный ключ доступа",hideSecret:"Спрятать секрет",title:"Удалить ключ доступа",descriptionNoTime:"Это навсегда удалит ключ доступа {key} с именем {name}, который (никогда не использовался ранее)",description:"Это навсегда удалит ключ доступа {key} с именем {name}, который был (последний раз использован {time}, {timeAge}).",confirm_desc:"Пожалуйста, введите {name} для удаления",remark:"Имя ключа доступа",remarkInvalid:"Требуется указать имя ключа доступа"},webhook:{add:"Добавить интеграцию",delTitle:"Удалить интеграцию",requiredError:"Пожалуйста, укажите действительный {type}",confirm_desc:"Пожалуйста, введите {name} для удаления",test:"Тест",description:"Это навсегда удалит интеграцию с ID {id}.",columns:{description:"Идентификатор",params:"Параметры",createdAt:"Создано"}}},notification:{title:"Активности",empty:"Пока нет активностей",viewAll:"Показать все",showRead:"Показать чтение",markAllAsRead:"Отметить все как прочитанные",markAsRead:"Пометить как прочитанное",proceed:"Продолжить",checkingForUpdates:"Проверка наличия обновлений...",email:{enable:"Включить уведомления по электронной почте",from:"Отправитель электронной почты",host:"Хост SMTP-сервера",port:"Порт сервера SMTP",user:"Имя пользователя SMTP-сервера",secure:"Включить безопасное подключение",password:"Пароль пользователя для SMTP-сервера",fromRequired:"Требуется отправитель электронной почты",fromInvalid:"Недопустимый отправитель электронной почты",receiverRequired:"Требуется получатель электронной почты",receiverInvalid:"Получатель электронной почты недействителен",hostRequired:"Требуется хост SMTP-сервера",hostInvalid:"Недопустимый хост SMTP-сервера",portRequired:"Требуется порт SMTP-сервера",portInvalid:"Неверный номер порта SMTP-сервера, порт должен быть от 1 до 65535.",userRequired:"Требуется имя пользователя SMTP-сервера",passwordRequired:"Требуется пароль пользователя SMTP-сервера",testSuccess:"Тестовое письмо успешно отправлено",testFailed:"Не удалось отправить тестовое электронное письмо",testReceiver:"Получатель электронной почты",testSendEmail:"Отправить тестовое письмо",inputTestReceiver:"Пожалуйста, введите тестовый адрес электронной почты получателя",disable:"Отменить подписку на уведомления по электронной почте",disableDescription:"После отписки вы больше не будете получать уведомления по электронной почте. Чтобы снова получать уведомления по электронной почте, вы можете подписаться снова на этой странице.",unsubscribe:"Отписаться от уведомления по электронной почте",unsubscribeDescription:"После отписки вы больше не будете получать уведомления по электронной почте.",subscribe:"Подписаться",subscribeDescription:"Чтобы получать уведомления по электронной почте, вы можете снова подписаться на странице настроек."},comingSoon:"Более множество каналов уведомлений находятся в процессе строительства",unsubscribe:"Отказаться от подписки",unsubscribeSucceed:"Отмена подписки выполнена успешно",unsubscribeFailed:"Не удалось отписаться",unsubscribeTokenRequired:"Требуется токен отмены подписки",unsubscribeTokenExpired:"Срок действия токена отписки истек",unsubscribeTokenInvalid:"Токен отписки недействителен",installComponentError:"Не найден удаленный компонент {name}",installingComponent:"Установка компонента {name}",pushKit:{enable:"Активировать уведомления PushKit",endpoint:"Конечная точка PushKit",endpointInvalid:"Конечная точка PushKit является недействительным URL-адресом",testSuccess:"Тестовая рассылка PushKit успешно",testFailed:"Тест PushKit отправить не удалось",testReceiver:"Приемник PushKit",testSend:"Проверка отправки push-комплекта",inputTestReceiver:"Пожалуйста, введите тестовый приемник",receiverRequired:"Требуется приемник PushKit",pushPath:"Путь Api для push-kit (по умолчанию /api/push)",did:"PushKit Blocklet DID",customOptions:"Пользовательские настройки"}},router:{routerSetting:"Домены и URL",certSetting:"SSL-сертификаты",defaultSite:"По умолчанию",urlHelperText:"URL-адреса, которые не начинаются с HTTP/HTTPS, считаются относительными путями",empty:"Нажмите на Действия, чтобы настроить сопоставление URL",healthy:{ok:"Блоклет или сервис работает",error:"Блоклет или служба не работает или не установлена"},service:{select:"Выберите услуги блоклет (по желанию)",what:"Сервисы Blocklet - это конвейеры, выполняемые перед перенаправлением на основной блоклет."},nonProvider:{title:"Предупреждение об изменении двигателя",description:"Если вы измените двигатель на 'нет', ваша текущая страница может работать неправильно, потому что предыдущий двигатель будет остановлен. Вы уверены, что хотите продолжить?",confirm:"Я понимаю, продолжайте"},validation:{urlRequired:"Требуется URL",redirectCodeRequired:"Требуется код перенаправления",didRequired:"Требуется блоклет",pathPrefixTooLong:"Префикс URL не может превышать {length} символов",pathPrefixCannotBeEmpty:"Префикс URL не может быть пустым",domainRequired:"Требуется домен сервера",invalidUrl:"Пожалуйста, укажите действительный URL",pathPrefixRequired:"Требуется префикс URL",redirectUrlRequired:"Требуется URL-адрес перенаправления",rewriteUrlRequired:"Требуется переписать URL"},domain:{addSite:"Добавить сайт",validate:{emptyTip:"Домен сайта не может быть пустым",suffixTip:"Домен сайта не может включать {suffix}"},add:{title:"Добавить доменное имя",description:"Пожалуйста, укажите действительное имя домена",confirm:"Добавить",cancel:"Отмена",blocklet:"Выберите блоклет",redirect:"Куда перенаправить трафик?",port:"На каком порту должен слушать ваш обработчик запросов?",portTip:"По умолчанию используется основной порт обработчика запросов, вы можете настроить его",type:"Обработчик трафика",component:"Выберите компонент",pageGroup:"Группа страницы",pageGroupTip:"Этот компонент может отображать любую группу страниц, перечисленных выше; оставьте пустым, чтобы отобразить все страницы"},update:{title:"Обновить домен сайта",label:"Домен сайта",description:"Пожалуйста, укажите действительный домен сайта"},setup:{tipStart:"Добавьте DNS-записи для домена",tipEnd:"В соответствии с следующими рекомендациями",recordType:"Тип записи",recordValue:"Записать значение"},verify:{ok:"Разрешение домена нормальное",notResolved:"Этот домен не разрешен и недоступен, пожалуйста, проверьте настройки DNS."},https:{ok:"В этом домене включена поддержка протокола HTTPS",bad:"Этот домен не активировал протокол HTTPS"},delete:{title:"Удалить сайт",description:'Подтверждая, вы удалите свой существующий сайт "{name}". Введите "{name}" ниже и выберите Удалить, чтобы завершить изменение, или выберите Отмена, если хотите оставить свой сайт.',confirm_desc:"Пожалуйста, введите {name} для подтверждения"}},domainAlias:{nftDomain:"Автоматическая настройка с доменом DID",showTipHint:"Как настроить разрешение доменных имен?",add:{title:"Добавить дополнительный домен",domainDescription:"Пожалуйста, укажите действительное имя домена",forceTip:"Принудительное добавление, если имя домена уже существует",helperText:"Если введен URL HTTP или HTTPS, он будет автоматически преобразован в доменное имя.",isDidDomainError:"Этот домен является доменом DID. Пожалуйста, добавьте его, используя метод для автоматической конфигурации домена."},addCustomDomain:{name:"Пользовательский домен"},addDomainNFT:{showNFT:"Настройте домен автоматически",tips:"Вы можете ввести домен, приобретенный у DID Domain. Если обнаружен DID-домен, вы должны предъявить DID-домен NFT, чтобы продолжить.",connect:{title:"Пожалуйста, покажите вашу Доменную NFT",scan:"Для авторизации blocklet для использования вашего домена отсканируйте следующий QR-код с помощью DID Wallet.",confirm:"Подтвердите в своем кошельке DID",success:"Успешная авторизация"},buyTip:"DID Domain выполнит разрешение доменного имени автоматически. Вам не нужно настраивать его вручную, и приложение обновит запись разрешения доменного имени автоматически, когда это необходимо. Если у вас еще нет DID Domain NFT, ",buy:"Купите сейчас!"},delete:{title:"Удалить",description:"После удаления псевдонима домена доступ к этому псевдониму может быть обработан неправильно."}},domainSecurity:{title:"Безопасность домена",cors:{title:"Разрешенные домены CORS",description:"Список доменов, с которых {name} может отправить междоменные запросы, разделенных запятыми. Используйте «*» дле разрешения доступа всем, но это не рекомендуется.",domainInvalid:"Пожалуйста, введите список действительных доменных имен"}},rule:{add:{title:"Добавить сопоставление URL",confirm:"Добавить",pathPrefix:"Какой префикс URL?",pathPrefixTip:"Если вы установите префикс на '/мой-префикс', то все запросы, начинающиеся с этого префикса, будут маршрутизироваться к настроенному блоклету",blocklet:"Какой блоклет будет обрабатывать эти запросы?",port:"Какой порт блоклета будет обрабатывать запросы?",portTip:"По умолчанию используется основной порт блоклета. Если блоклет слушает несколько портов, вы можете настроить это.",responseType:"Тип ответа",responseBody:"Содержание ответа",responseBodyTip:"Вставьте сюда содержимое вашего ответа, не превышающее 4096 символов.",responseBodyRequired:"Содержимое ответа не может быть пустым"},delete:{title:"Удалить отображение URL",description:'Подтвердив, вы удалите существующую привязку URL для "{name}". Введите "{name}" ниже и выберите Удалить, чтобы завершить изменение, или выберите Отмена, если хотите оставить свою привязку URL.',confirm_desc:"Пожалуйста, введите {name} для удаления",cancel:"Отмена"},update:{title:"Обновить отображение URL",confirm:"Да, Обновить",cancel:"Отмена"}},cert:{name:"Название сертификата",domain:"Доменное имя",action:"Действие",commonName:"Общее название",boundDomains:"Домены",source:"Источник",expired:"Истекший",leftDays:"осталось дней",issuedOn:"Выдано",expiryOn:"Истекает",fingerprintAlg:"Алгоритм отпечатка пальца",validityPeriod:"Срок действия",matchedSites:"Совпадающие сайты",upload:"Ручная загрузка",publicCertHelperText:"Публичные сертификаты могут быть загружены",nonPublicCertHelperText:"Нельзя загружать не общедоступные сертификаты",protectedCertHelperText:"Защищенные сертификаты нельзя редактировать",unprotectedCertHelperText:"Незащищенные сертификаты могут быть отредактированы",issuing:"Генерируется сертификат",sourceTypes:{upload:"Ручная загрузка",lets_encrypt:"Давайте зашифруем"},table:{nodata:"Нет данных"},delete:{title:"Удалить сертификат",description:"Подтвердите удаление сертификата домена {domain}? Удаление может повлиять на связанные службы. Пожалуйста, подтвердите, что это безопасно, прежде чем продолжить удаление.",confirm:"Подтвердите"},nginx:{title:"Обновить сертификат",titleAdd:"Добавить сертификат",pem:"Файл SSL-сертификата",pemTip:'Пожалуйста, загрузите файл сертификата сервера здесь, он должен заканчиваться на ".pem" или ".crt".',key:"Файл приватного ключа",keyTip:'Пожалуйста, загрузите здесь файл вашего приватного ключа сервера, он должен оканчиваться на ".pem" или ".key".',confirm:"Сохранить",cancel:"Отмена",invalidFile:"Вы выбрали недопустимый файл",empty:"Пока не выбран файл",source:"Источник",sourceTypes:{upload:"Ручная загрузка",lets_encrypt:"Давайте зашифруем"}},detail:{title:"Детали сертификата"},genLetsEncryptCert:{title:"Сгенерировать сертификат Let's Encrypt",dnsTip:"Пожалуйста, убедитесь, что доменное имя указывает на текущий сервер Blocklet.",description:"Добавление сертификата повысит безопасность сервиса, а Blocklet Server автоматически обновит сертификат перед его истечением."}},gateway:{reqLimit:{status:{true:"Включено",false:"Отключено"},switchLabel:"Лимит запроса",rate:"Лимит запросов ({rate} запросов/секунду)",ipHeaderLabel:"Настройка заголовка IP-адреса клиента (по желанию)",ipHeaderDesc:"Если сервер Blocklet работает через прокси, вы можете установить здесь заголовок фактического IP-адреса клиента. Необязательно, оставьте пустым, чтобы использовать значение по умолчанию."},cacheEnabled:{switchLabel:"Включить кэш шлюза"}}},noMatch:{desc:"Мы не можем найти страницу, которую вы ищете"},health:{connectionErrorTip:"Сервер блоклетов не может подключиться к сети, пожалуйста, проверьте, был ли остановлен сервер блоклетов или есть проблема с сетью.",connectionRecoveryTip:"Соединение с сервером Blocklet восстановлено",connectionStoppedTip:"Сервер Blocklet был остановлен",wrongAccessUrlTip:"Неверный адрес доступа к серверу Blocklet, пожалуйста, используйте правильный адрес доступа."},debug:{title:"Ваш сервер Blocklet работает и функционирует!"},team:{invite:{action:"Пригласить Новый",setting:"Настройки приглашения",enabled:"Разрешить любому пользователю пригласить нового пользователя в это блоклет",disabled:"Только владелец/администратор может пригласить нового пользователя в этот блоклет",inviter:"Приглашенный"},add:"Добавить новый",member:{name:"Имя",passport:"Паспорт",passports:"Паспорта",lastLogin:"Последний вход",lastLoginIp:"Последний IP-адрес входа",source:"Регистрируйтесь источник",source_derived:"Получено из OAuth",source_wallet:"DID-кошелек",filter:"Фильтр по",blockAccess:"Запретить вход",blockAccessDescription:"Пользователь не сможет подключиться к этому приложению",allowAccess:"Разрешить вход",allowAccessDescription:"Пользователь сможет подключиться к этому приложению",updateRole:"Обновить роль",removeUser:"Удалить пользователя",removeUserDescription:"Подтвердить удаление пользователя '{name}'?",revokePassport:"Отозвать паспорт",revokePassportDescription:"После аннулирования паспорта его держатель не может использовать его для повторного входа в систему. Вы уверены, что хотите продолжить?",enablePassport:"Включить заграничный паспорт",enablePassportDescription:"После повторной активации отозванного паспорта его владелец сможет повторно использовать его для входа в систему. Вы уверены, что хотите продолжить?",passportPermissionTitle:"В паспорте есть следующие разрешения:",search:"Поиск участника",onlyApprovedMember:"Показать только утвержденные",inviteDialog:{createInviteLink:"Создать ссылку на приглашение",createSuccessTip:"Ссылка на приглашение успешно создана, нажмите, чтобы скопировать и отправить ссылку приглашенному участнику, обратите внимание, что данная ссылка на приглашение не может быть повторно использована и истекает {expireDate}."},error:{passportEmpty:"Паспорт не должен быть пустым"},connectedAccounts:"Подключенные аккаунты",connections:"Связи",federated:"Федеративный",switch:{did:"Переключить DID",profile:"Сменить профиль",passport:"Сменить паспорт"},settings:{notification:"Уведомления",email:"Отправьте мне электронное письмо, когда произойдут некоторые события",wallet:"Отправить уведомление на мой кошелек при возникновении некоторых событий",phone:"Отправьте мне текстовое сообщение, когда происходят некоторые события",webhook:"Вебхуки",add:"Добавить новый вебхук",url:"Пользовательский URL",slack:"Слэк вебхук",tested:"Тестовое сообщение отправлено"},activeUserSessions:"Активные пользовательские сессии",forceLogout:"Принудительный выход",forceLogoutDescription:"Подтвердить выход из системы этого пользователя?",openProfile:"Просмотр профиля",removeUserSuccess:"Пользователь успешно удален"},transferNode:{name:"Передача собственности",inviteDialog:{title:"Сервер передачи блокетов",tips:{progress:"Передачу сервера должен принять получатель, чтобы завершить операцию передачи, и после принятия получателем вы больше не можете войти на сервер с текущим паспортом.",newOwnerPermissions:"Новому владельцу будет предоставлено право управлять всеми операциями, такими как участники, паспорта и блоклеты.",revoke:'Если вы хотите отозвать приглашение к переводу, вы можете удалить ссылку на приглашение на странице "Команда -> Участники -> Приглашение".'},createInviteLink:"Сгенерировать ссылку приглашения",createSuccessTip:"Ссылка для приглашения успешно создана. Нажмите, чтобы скопировать и отправить ссылку приглашенному участнику, пожалуйста, обратите внимание, что данная ссылка для приглашения не может быть повторно использована и истечет {expireDate}."},delegateDialog:{title:"Требуется авторизация",scan:"Сканируйте следующий QR-код с помощью бумажника DID, чтобы авторизовать сервер на передачу владения сервером NFT.",confirm:"Подтвердите в своем кошельке DID",success:"Авторизация успешна"}},transferApp:{name:"Передача собственности",transferDialog:{title:"Заявление о переводе",tips:{progress:"Заявка должна быть принята получателем для завершения операции по переводу, и после того, как получатель принимает ее, вы не можете войти в приложение с текущим паспортом снова.",newOwnerPermissions:"Новый владелец будет иметь право управлять всеми операциями, такими как участники, паспорта и настройки."},createTransferLink:"Сгенерируйте ссылку для перевода",createSuccessTip1:'Ссылка на передачу успешно создана, приглашенному необходимо использовать <a style="color: rgb(29, 193, 199)" target="_blank" href="https://www.didwallet.io/">DID Wallet</a>, чтобы получить право собственности на приложение.',createSuccessTip2:"Пожалуйста, нажмите для копирования и отправки ссылки приглашенному участнику, обратите внимание, что эту ссылку для передачи нельзя повторно использовать, и она истекает {expireDate}. Вашу ссылку для передачи можно увидеть только один раз, и она не будет видна после закрытия этого диалогового окна.",createSuccessTip3:"После успешного переноса приложение автоматически перезагрузится, чтобы изменения вступили в силу",link:"Ссылка на перевод",iKnow:"Я скопировал и сохранил ссылку"},connectDialog:{title:"Требуется авторизация",scan:"Отсканируйте следующий QR-код с помощью своего DID-кошелька, чтобы авторизовать приложение на передачу владения.",confirm:"Подтвердите в своем кошельке DID",success:"Авторизация успешно"},receiveDialog:{title:"Получить владение приложением",scan:"Отсканируйте следующий QR-код с помощью кошелька DID, чтобы получить владение приложением.",confirm:"Подтвердите в своем кошельке DID",success:"Успешно получите собственность"},successTitle:"Вы стали новым владельцем этого приложения",visitDashboard:"Посетите панель управления приложения"},permission:{create:{title:"Создать разрешение",description:"Формат: <действие>_<ресурс>"},delete:{title:"Удалить разрешение",description:"Подтвердить удаление {name}?"},error:{actionEmpty:"Действие не может быть пустым",resourceEmpty:"Ресурс не может быть пустым",permissionTooLong:"Длина разрешения не должна превышать {length} символов",descriptionTooLong:"Описание не может превышать {length} символ(ов)"}},passport:{create:{title:"Создайте паспорт",titleTip:"Заголовок нельзя изменить после создания, рекомендуется ограничиться 14 символами"},bind:{title:"Разрешение на привязку",roleTip:"Вы получите все разрешения выбранного паспорта после привязки.",permissionTip:"Вы получите выбранные разрешения после привязки",transferLeftTitle:"Все разрешения",transferRightTitle:"Предоставленные разрешения"},delete:{title:"Удалить паспорт",description:"Паспорта, принадлежащие пользователю, потеряют все разрешения после их удаления. Вы уверены, что хотите продолжить?"},error:{titleEmpty:"Заголовок не может быть пустым",titleTooLong:"Длина заголовка не может превышать {length} символов",descriptionEmpty:"Описание не может быть пустым"},issuance:{pending:"В ожидании",create:{title:"Сгенерировать ссылку"},delete:{title:"Удалить ссылку для получения",description:"Подтвердить удаление {link}?"}},issue:"Выдать паспорт",disableIssuance:"Отключить выдачу паспортов",enableIssuance:"Включить выдачу паспорта",disableIssuanceTip:'"Выдача паспорта", "Пригласить участника" и другие операции будут отключены.',enableIssuanceTip:"Оформление паспорта",trustedPassportIssuers:"Доверенные испускающие органы паспортов",trustedIssuers:"Доверенные эмитенты",trustedFactories:"Доверенные коллекции NFT",trustedFactoriesTip:"Управляйте надежными коллекциями NFT, которые можно использовать для обмена на паспорт",searchFactoryAddress:"Поиск коллекции DID",configFactories:"Настройка доверенных коллекций NFT",configFactoriesTip:"Позвольте пользователям обменивать NFT на паспорта",factoryAddress:"Адрес коллекции NFT",factory404:"Коллекция NFT не найдена",factoryAddressTip:"Адрес коллекции NFT должен существовать в основной сети ArcBlock",role:"Тип паспорта",ttl:"Политика истечения срока действия паспорта",ttlNever:"Никогда не истекает",ttlMint:"С момента покупки NFT",ttlExchange:"Из-за обмена паспортами",ttlNeverTip:"Паспорт будет действителен до отмены",ttlMintTip:"Паспорт будет действителен, пока NFT не будет приобретен, пока вы не укажете ttl или не отмените его",ttlExchangeTip:"Паспорт будет действителен с момента успешного обмена пользователем до указанного вами ttl или отзыва",ttlTip:'"365d" означает 365 дней, вы также можете использовать "30 дней" или "24ч"',validUntil:"Действительно до: {date}",externalPassport:"Внешний паспорт",notTrustedIssuerTip:"Паспорт не может быть использован, потому что его выдающий орган не входит в список доверенных органов",issuerDid:"Идентификатор эмитента",addNodeToTrustedIssuers:"Добавьте текущий сервер как доверенное учреждение, выдающее паспорта",revoked:"Аннулированный",noPermission:"Нет разрешения на выполнение этой операции",shouldNotDeleteCurrent:"В настоящее время вы не можете отозвать свой используемый паспорт",mappingRule:"Правило отображения",defaultRule:"Стандартное правило",search:"Искать паспорт",searchIssuerDid:"Поиск выдавшего издателя DID",issueBy:"Проблема, вызванная {name}",configColor:"Настройка цвета паспорта",configColorTip:"Настройте цвет паспорта",color:"Цвет паспорта",description:"Используйте этот паспорт, чтобы подключить {teamName} как {title}",displayBuiltin:"Builtin",displayCustom:"Пользовательский",typesTip:"Настроить типы паспорта, разделенные запятыми",issuanceDate:"Дата выдачи: {date}"},inviting:{link:"Пригласительная ссылка",inviter:"Пригласить",delete:{title:"Удалить ссылку приглашения",description:"Подтвердить удаление {link}?"},disabledTip:"Приглашение не включено"},whoCanAccess:{all:{title:"Доступно для всех"},owner:{title:"Только владелец"},invited:{title:"Только приглашенный пользователь"}}},launcher:{provider:"Поставщик",adminUrl:"URL"},session:{blockAccess:"Вы были заблокированы от доступа к этому серверу"},launchBlocklet:{appInfo:"Информация о приложении",appInfoDesc:"Подтвердите информацию о заявке",author:"Автор приложения: {author}",setup:"Настройка блоклета",redirect:"Перенаправление",alreadyRunning:"Приложение {name} уже работает на этом сервере блоклетов",alreadyInstalled:"Приложение {name} уже установлено на этом сервере Blocklet.",alreadyExists:"Это приложение уже существует, перенаправление...",purchased:"Уже приобретено",purchase:"Покупка",nextStep:"Следующий шаг",agreement:"Лицензионное соглашение",agreeAll:"Согласиться и продолжить",installing:"Установка {appName} на {serverName} может занять несколько минут. Пожалуйста, оставайтесь на связи...",redirecting:"{appName} успешно установлен, теперь запуск...",start:"Запуск",launch:"Установите блоклет на сервер",launchSuccess:"{appName} успешно запущено!",installSuccess:"Blocklet успешно установлен и запущен на {serverName}",openInRegistry:"Просмотреть в Blocklet Store",subTitle:"Готов установить Блоклет {appName} на {serverName}",installingSubTitle:"Устанавливается {appName}",access:"Откройте приложение",viewApplication:"Показать заявку",newVersion:"Новая версия",newVersionDesc:"Приложение уже существует, но текущую версию можно обновить",upgradeNow:"Обновить сейчас",later:"Позже",introduction:"Введение",welcome:"Добро пожаловать в мастер запуска Blocklet",accept:"Я согласен с пользовательским соглашением Blocklet",license:"Лицензия приложения",next:"Согласитесь с EULA и продолжите",purchaseApp:"Приобрести Блоклет",setupAppDesc:"Инициализируйте свой блоклет",launched:"Завершенное",confirmInstall:"Подтвердить установку",dialog:{title:"Станьте владельцем приложения",nftFreeDescription:"Пожалуйста, представьте NFT пространства приложений и создайте учетную запись приложения, чтобы продолжить.",nftPaidDescription:"Пожалуйста, предоставьте место для приложения NFT и приобретение приложения NFT для продолжения",freeDescription:"Пожалуйста, создайте учетную запись приложения, чтобы продолжить",paidDescription:"Пожалуйста, представьте покупку NFT-приложения и создайте учетную запись приложения для продолжения",confirm:"Подтвердите в своем кошельке DID",success:"Авторизация успешна",authorizationTimeout:"Тайм-аут авторизации"},waiting:{verifying:"Проверка метаданных приложения ...",downloading:"Загрузка пакета приложения...",downloadingComponent:"Загрузка {name}",extractingComponent:"Извлечение {name}",extracting:"Извлечение пакета приложения...",installing:"Установка компонентов приложения...",installed:"Установлено",starting:"Запуск приложения...",done:"Ожидание готовности приложения..."},error:{loadMetaFailed:"Не удалось загрузить информацию о приложении",appMetaNotFound:"Нет информации об этом приложении",downloadFailed:"При загрузке приложения произошла ошибка, пожалуйста, повторите попытку.",installFailed:"Не удалось установить приложение, пожалуйста, повторите попытку.",startFailed:"Не удалось запустить приложение, пожалуйста, повторите попытку",launchFailed:"Не удалось запустить приложение, пожалуйста, попробуйте еще раз",installedButStopped:"Приложение успешно установлено, но не может быть запущено. Вы можете запустить его вручную после устранения блокирующих проблем.",installedButError:"Приложение успешно установлено, но не удалось запустить",restoreFailed:"Не удалось восстановить приложение, пожалуйста, попробуйте снова",resourceBlocklet:"Этот блоклет нельзя запустить напрямую, но вы можете добавить его в уже существующее приложение."},steps:{introduction:"Введение",installApp:"Установить приложение",purchaseSpace:"Покупка пространства",prepareSpace:"Подготовьте космос"},installRelatedComponents:"Установить связанные Блоклеты"},issuePassport:{title:"Получение паспорта",description:"Используйте кошелек DID для получения паспорта, выданного {name}",dialog:{scan:"Используйте свой кошелек DID, чтобы получить паспорт",confirm:"Подтвердите на вашем кошельке DID",success:"Паспорт успешно добавлен в ваш кошелек",loginWithPassport:"Подключитесь с помощью этого паспорта",autoClose:"Страница закроется автоматически через {seconds} секунд",autoJump:"Страница автоматически перейдет через {seconds} секунд."}},lostPassport:{title:"Утерянный паспорт",description:"Владелец {name} может отсканировать QR-код, чтобы получить паспорт. Члены, пожалуйста, свяжитесь с владельцем, чтобы переоформить паспорт.",dialog:{title:"Восстановить паспорт",scan:"Используйте свой DID кошелек для восстановления паспорта",confirm:"Подтвердите на своем кошельке DID",success:"Паспорт успешно добавлен в ваш кошелек"},return:"Подключиться с помощью паспорта",selectPassport:"Выберите паспорт",receivePassport:"Получить паспорт"},invite:{message:"{name} приглашает вас стать {role} {dapp}",success:"Вы успешно присоединились к {dapp}",receive:"Принимать с",validUntil:"Действительно до:",viewPermission:"Права на просмотр",emptyPermission:"Пустое разрешение",open:"Открыть",description:{step1:"Загрузите и настройте свой {wallet}",step2:"Нажмите на кнопку выше, чтобы получить паспорт",step3:"Войти в {dapp} с полученным паспортом"},transferNFTDialog:{title:"Принять сервер Blocklet {name}",scan:"Подключите запуск, чтобы завершить прием сервера Blocklet.",confirm:"Пожалуйста, просмотрите эту операцию в своем кошельке DID",success:"Соединение установлено успешно, ожидается подтверждение получения сервера"}},receive:{dialog:{title:"Используйте свой кошелек DID для получения паспорта",scan:"Подключите свой DID-кошелек, чтобы получить паспорт",confirm:"Подтвердите в вашем кошельке DID",success:"Вы успешно подключены"}},navigation:{navigation:"Навигация",actionFailed:"Действие не удалось",form:{title:"Заголовок",titlePlaceholder:"Пожалуйста, введите заголовок навигации",titleTooLong:"Длина заголовка должна быть меньше {len}",icon:"Иконка навигации",iconPlaceholder:"Пожалуйста, введите значок навигации",invalidIcon:"Иконка недействительна",findMoreIcon:"Найти больше значков",link:"Ссылка",linkPlaceholder:"Пожалуйста, введите ссылку навигации",invalidLink:"Ссылка недействительна",component:"Компонент",componentPlaceholder:"Пожалуйста, выберите компонент навигации",role:"Роль",rolePlaceholder:"Пожалуйста, выберите роль навигации",locale:"Локаль",localePlaceholder:"Пожалуйста, введите локаль, которую нужно добавить",localeExists:"{value} уже существует"},action:{add:"Добавить навигацию",addSub:"Добавить поднавигацию",edit:"Редактировать навигацию",hide:"Скрыть навигацию",show:"Показать навигацию",del:"Удалить навигацию",new:"Новый",noAddSub:"Деинсталлированный компонент не может добавить поднавигацию",noEdit:"Удалённый компонент нельзя редактировать",noDel:"Удаление встроенной навигации запрещено",reset:"Сброс",restConfirmTitle:"Вы хотите очистить все настраиваемые навигационные параметры?",restConfirmDesc:"После очистки навигация будет восстановлена в исходную конфигурацию Blocklet.",resetSuccessful:"Сброс успешен"},access:"Доступ",members:"Участники",passport:"Паспорт",analytics:"аналитика",dashboard:"Панель управления",studio:"Студия",blockletService:"Сервис Blocklet"},storage:{spaces:{title:"DID Spaces",tips:"Советы",label:"Введите шлюз DID Spaces",connected:{title:"Подключенные пространства DID",tag:"Подключено"},connectedWithName:"Вы успешно подключились к {name}",addedWithName:"Вы успешно добавили {name}",connects:"Подключиться",reconnect:"Подключиться снова",addressCannotEmpty:"Адрес не может быть пустым",addressNotValid:"{url} не является допустимым адресом",authorize:{title:"Подключите {appName} к пространствам DID",scan:"Используйте свой DID-кошелек для сканирования QR-кода ниже, чтобы разрешить приложению {appName} подключиться к DID Spaces.",success:"Успешное подключение"},provideNFT:{title:"Пожалуйста, покажите DID Spaces NFT для {appName}",scan:"Используйте свой кошелек DID для сканирования QR-кода ниже, чтобы разрешить приложению {appName} отображать DID-пространство NFT",success:"Соединение успешно"},backup:{title:"Резервное копирование",records:"Резервные записи"},autoBackup:{title:"Автоматическое резервное копирование",enabled:"Автоматическое резервное копирование включено",disabled:"Автоматическое резервное копирование отключено"},autoCheckUpdate:{title:"Автоматическая проверка уведомлений о новых версиях",enabled:"Автоматическая проверка наличия новой версии включена",disabled:"Автоматическая проверка новых версий отключена"},backupSuccessfully:"Резервное копирование успешно выполнено",restore:"Восстановить",restoreSuccessfully:"Успешно восстановлено",gateway:{title:"Шлюз",select:"Выберите пространство DID",add:{title:"Добавить пространство DID",label:"Введите URL-адрес DID Spaces",failed:"Не удалось добавить пространства DID",invalidUrl:"Неверный URL-адрес шлюза DID Spaces",duplicate:"Пространство DID({name}) уже существует"},delete:{title:"Удалить шлюз",succeeded:"Успешное удаление DID Spaces {name}",failed:"Не удалось удалить шлюз",failedForSelected:"Невозможно удалить выбранное пространство DID"},connect:{title:"Подключиться к DID Spaces",add:"Подключитесь к пространствам DID сейчас",addTips:"Вы еще не подключены к какому-либо пространству",switch:"Переключите DID Spaces",switchTips:"Вы подключены к {name}",connected:"Подключен"},switch:{failedForMismatchSpace:"Пожалуйста, подключитесь к правильному пространству {name}"},connectTo:"Подключение к DID Spaces"},strategy:{title:"Стратегия резервного копирования",autoBackup:"Автоматическое резервное копирование",backupNow:"Сделайте резервную копию сейчас",viewBackupFiles:"Просмотр резервных файлов"},progress:{title:"Прогресс резервного копирования"},record:{title:"Резервные записи",emptyData:"Нет записей"},notYet:"У вас еще нет выполняющейся резервной копии...",connect:{now:"Подключитесь сейчас",title:"Подключите пространства DID",provider:"Укажите ваши DID-пространства для начала резервного копирования",providerForStorage:"Предоставьте ваш DID Spaces для хранения данных",useWallet:"Подключитесь к кошельку DID",useWalletReconnect:"Восстановите подключение с DID-кошельком",useSpaceGateway:"Подключитесь, используя шлюз DID Spaces",useSpaceGatewayReconnect:"Подключитесь снова, используя шлюз DID Spaces",switchToSpace:"Переключиться на Space",switchToSpaceSucceeded:"Переключились на Space{name}",succeeded:"Вы успешно подключились к DID Spaces",disconnect:"Отключить"},disconnected:{tag:"Отключено",reconnectNow:"Переподключитесь сейчас"}},appLevel:{title:"Уровень приложения",description:"Все данные, созданные приложением, хранятся на этом DID Space"}},log:{lastDays:{1:"Последний 1 день",7:"Последняя 1 неделя"}},oauth:{commonSettings:"Общие настройки",save:"Сохранить",saveSuccess:"Успешно сохранено",saveFailed:"Сбой сохранения",issued:"Выдан",thirdPartyLogin:"Вход от третьих лиц",alreadyBindOAuth:"Уже привязана вход через третье лицо",alreadyBindWallet:"Уже привязать кошелек DID",auth0:{enable:"Включить вход через Auth0",domain:"Домен",domainDescription:"Требуется домен Auth0",clientId:"Идентификатор клиента",clientIdDescription:"Требуется идентификатор клиента Auth0",clientSecret:"Секрет клиента",clientSecretDescription:"Требуется секретный код клиента приложения Auth0 OAuth"},comingSoon:"Разрабатываются дополнительные методы входа.",moreLogin:"Больше входа",federated:"Федеративная аутентификация",runTest:"Тест",github:{enable:"Включить вход через Github",clientId:"Идентификатор клиента",clientIdDescription:"Для приложения Github OAuth требуется clientId",clientSecret:"Клиент секрет",clientSecretDescription:"Для приложения Github OAuth требуется clientSecret"},google:{enable:"Включить вход через Google",clientId:"Идентификатор клиента",clientIdDescription:"Для приложения Google OAuth требуется идентификатор клиента",clientSecret:"Секрет клиента",clientSecretDescription:"Для приложения Google OAuth требуется clientSecret"},apple:{enable:"Включить вход Apple",teamId:"Идентификатор команды",teamIdDescription:"Для приложения Apple OAuth требуется идентификатор команды",serviceId:"Идентификатор сервиса",serviceIdDescription:"Для приложения Apple OAuth требуется идентификатор сервиса",keyId:"Ключ ID",keyIdDescription:"Требуется ключ приложения OAuth Apple",authKey:"Ключ Auth",authKeyDescription:"Необходим ключ авторизации для приложения Apple OAuth",bundleId:"Идентификатор пакета",bundleIdDescription:"Идентификатор пакета приложения Apple OAuth обязателен"},oauth:"Вход через стороннее приложение"},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"Истекший"},loadFailed:"Повторить!"},desktop:{tips:{success:"Подписка истечет через {validity}",warning:"Подписка истекает через {validity}",error:"Подписка истекла"},loading:"Загрузка подписки...",loadFailed:"Не удалось загрузить информацию о подписке, попробуйте ещё раз!",nextInvoice:"Следующий счёт: {date}"}},analytics:{trend:"Тенденции",detail:"Сбой",traffic:{totalRequests:"Общее количество запросов",validRequests:"Успешные запросы",failedRequests:"Неудачные запросы",uniqueVisitors:"Уникальные посетители",uniqueFiles:"Уникальные URL",uniqueReferrers:"Уникальные рефереры",uniqueNotFound:"Уникальная 404",uniqueStaticFiles:"Уникальные статические файлы",logSize:"Размер журнала",bandwidth:"Пропускная способность"},runtime:"Время выполнения"},federated:{inviteJoinFederatedLogin:"Приглашение присоединиться к федеративной аутентификации",inviteJoinFederatedLoginDescription:"Скопируйте следующий адрес и заполните его в приложении, где вам нужно присоединиться, чтобы подать заявку на федеративную авторизацию.",federatedLogin:"Совместная авторизация",joinFederatedLogin:"Присоединяйтесь к федеративной авторизации",joinFederatedLoginDescription:"Пожалуйста, введите адрес федеративной системы входа, предоставленный Master Blocklet, чтобы присоединиться к федеративной системе входа",quitFederatedLogin:"Выйти из объединенного входа",quitFederatedLoginDescription:"После завершения федеративного входа обычная авторизация всегда доступна.",federatedJoinAppUrl:"Присоединитесь к приложению для входа в систему через аппу",federatedJoinAppUrlRequired:"Пожалуйста, введите URL-адрес объединенного входа в приложение",failedToGetFederatedLoginAppUrl:"Не удалось получить федеративный вход в приложение по адресу URL",federatedJoinAppUrlInvalid:"Недействительный URL приложения для федеративного входа.",siteDetail:"Детали сайта",approveToJoinLogin:"Одобрить для входа в федеративную систему",approve:"Включить вход",revoke:"Отключить вход",enableFederatedLogin:"Активировать федеративный вход",disableFederatedLogin:"Отключить федеративную авторизацию",enableFederatedLoginDescription:"После включения федеративной аутентификации, на этом сайте будет выполняться автоматический вход в систему.",disableFederatedLoginDescription:"После отключения федеративной входа, данная страница не будет автоматически выполнять вход",enableFederatedAutoLogin:"Включить автоматический вход",enableFederatedAutoLoginDescription:"После включения автоматического входа, если в настоящее время есть единая учетная запись, сайт автоматически войдет под учетной записью федеративного входа.",disableFederatedAutoLogin:"Отключить автоматическую авторизацию",disableFederatedAutoLoginDescription:"После отключения автоматического входа на сайт не будет автоматически входить в учетные данные единого входа, и вы по-прежнему можете выбрать вход вручную, щелкнув.",info:{appId:"ПРИЛОЖЕНИЕ СДЕЛАЛО",appPid:"Постоянный идентификатор",migratedFrom:"Также известен как",appName:"Имя блоклета",appDescription:"Описание блоклета",appUrl:"URL Blocklet",appLogo:"Лого Blocklet",did:"Blocklet DID",serverId:"Идентификатор сервера блоклет",serverVersion:"Версия сервера Blocklet",version:"Версия Блоклета",appliedAt:"Подавайте заявку на",status:"Статус"},status:{pending:"Ожидающий",approved:"Одобрено",rejected:"Отклонено",revoked:"Аннулировано"},disbandFederatedLogin:"Отключить федеральную аутентификацию",disbandFederatedLoginDescription:"После распуска федеративного входа все участники сайта автоматически отказываются от федеративного входа."},optionsOrder:{1:"Вариант один",2:"Вариант два"},securityRule:{title:"Правило безопасности",sortByDescription:"Сортировать по приоритету соответствия",add:"Добавить правило безопасности",edit:"Изменить правило безопасности",view:"Просмотреть правило безопасности",form:{precede:"Предшествовать",pathPattern:"Шаблон пути",pathPatternPlaceholder:"Введите шаблон пути",pathPatternErrorText:"Неверный шаблон пути",accessPolicyOrResponseHeaderPolicyRequired:"Необходима политика доступа или политика заголовка ответа",accessPolicy:"Доступ",accessPolicyPlaceholder:"Выберите политику доступа",accessPolicyHelperText:"Выберите политику доступа",responseHeaderPolicy:"Политика заголовка ответа",responseHeaderPolicyPlaceholder:"Пожалуйста, выберите политику заголовка ответа",responseHeaderPolicyHelperText:"Пожалуйста, выберите политику заголовка ответа",remark:"Замечание",remarkPlaceholder:"Введите примечание",component:"Компонент",componentPlaceholder:"Пожалуйста, выберите компонент"},delete:{title:"Удалить правило безопасности?",description:"После удаления правила безопасности оно перестает действовать"}},responseHeaderPolicy:{title:"Политика заголовка ответа",add:"Добавить политику заголовка ответа",edit:"Редактировать политику заголовка ответа",view:"Просмотреть политику заголовка ответа",form:{name:"Имя",namePlaceholder:"Введите имя",description:"Описание",descriptionPlaceholder:"Пожалуйста, введите описание",cors:{origin:"Происхождение",originPlaceholder:"Поддерживаются следующие форматы доменов: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (использование подстановочных знаков не рекомендуется)",originHelperText:"Имя домена начинается с http:// или https://, по одному в строке, по одному подстановочному знаку * в строке",methods:"Методы",allowedHeaders:"Допустимые заголовки",allowedHeadersPlaceholder:"Рекомендуется заполнить *, поддерживает многострочный ввод",allowedHeadersHelperText:"Сообщите серверу, какие пользовательские заголовки HTTP-запросов можно использовать в следующем запросе при отправке запроса OPTIONS, например, x-blocklet-version",exposedHeaders:"Открытые заголовки",exposedHeadersPlaceholder:"Поддерживает многострочный ввод",exposedHeadersHelperText:"Настройте Expose-Headers, например: X-Content-Range",maxAge:"Максимальный срок действия (секунд)",maxAgeHelperText:"Срок действия результата, полученного запросом OPTIONS, должен быть положительным целым числом",optionsSuccessStatus:"Статус успешности опционов",preflightContinue:"Продолжить",credentials:"Учётные данные",smartModeHelperText:"Автоматически добавлять все доменные имена текущего приложения, а также все доменные имена группы сайтов федерального входа",smartMode:"Интеллектуальный режим"},originOverride:"Замена источника",originOverrideHelperText:"Разрешить ли логике в приложении переопределить этот заголовок ответа"},delete:{title:"Удалить политику заголовка ответа?",description:"После удаления политики заголовка ответа политика больше не будет вступать в силу"}},accessPolicy:{title:"Политика доступа",add:"Добавить политику доступа",edit:"Изменить политику доступа",view:"Просмотреть политику доступа",form:{name:"Имя",namePlaceholder:"Введите имя",description:"Описание",descriptionPlaceholder:"Пожалуйста, введите описание",roles:"Роли доступа",accessType:"Тип доступа"},delete:{title:"Удалить политику доступа?",description:"После удаления политики доступа политика больше не вступит в силу"}}};export{e as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{cv as o}from"./index-B9_-R0J9.js";const c=new o;export{c as b};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as o,bC as t}from"./index-B9_-R0J9.js";function e(){return o.useContext(t)}export{e as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
const n={setup:{connect:{title:"Yêu cầu chữ ký",scan:"Kết nối ví DID của bạn để trở thành chủ sở hữu của máy chủ này",confirm:"Vui lòng xem xét thao tác này trên Ví DID của bạn",success:"Tài khoản của bạn đã kết nối với máy chủ này"},keyPair:{title:"Yêu cầu KeyPair đã tạo",scan:"Kết nối ví DID của bạn để tạo cặp khóa cho ứng dụng này",confirm:"Xem lại hoạt động này trên ví DID của bạn",success:"Cặp khóa của bạn được lưu trữ một cách an toàn"},verify:{title:"Yêu cầu Chứng chỉ Sở hữu",scan:"Kết nối Ví DID của bạn để cung cấp các thông tin chứng thực sở hữu",confirm:"Xem lại thao tác này trên Ví DID của bạn",success:"Tài khoản của bạn đã kết nối với máy chủ này"},accept:{title:"Chấp nhận chứng chỉ sở hữu máy chủ",scan:"Kết nối ví DID của bạn để cung cấp các chứng chỉ sở hữu",confirm:"Xem lại thao tác này trên ví DID của bạn",success:"Tài khoản của bạn được kết nối với máy chủ này"},title:"Cài đặt máy chủ Blocklet",steps:{eula:"Hợp đồng Cấp phép Người dùng cuối",eulaFooter:"Tôi đã đọc và đồng ý với các điều khoản của EULA",connect:"Kết nối Ví DID Chủ sở hữu",verify:"Xác minh Sở hữu",basicSettings:"Cài đặt cơ bản",launchApp:"Khởi chạy ứng dụng",complete:"Hoàn thành"},congratulation:"Xin chúc mừng! Máy chủ Blocklet của bạn đã được bảo mật và sẵn sàng sử dụng",redirectButton:"Đưa tôi đến bảng điều khiển!"},login:{loginTo:"Kết nối với",description:"Chỉ chủ sở hữu máy chủ và thành viên được phê duyệt mới có thể truy cập bảng điều khiển.",switchDid:{title:"Chuyển đổi Ví DID",scan:"Quét mã QR sau để chuyển đổi tài khoản",confirm:"Xác nhận chuyển đổi trong ví DID của bạn",success:"Chuyển đổi thành công"},switchSpecifiedDid:{title:"Chuyển Đổi Ví DID",scan:"Bạn cần chuyển đổi DID thành {did} để hoàn thành các hành động sau",confirm:"Xác nhận chuyển đổi trong Ví của bạn",success:"Chuyển đổi thành công"},connect:{title:"Kết nối Ví DID",scan:"Kết nối Ví DID của bạn để cung cấp hộ chiếu",confirm:"Xác nhận trên ví DID của bạn",success:"Bạn đã kết nối thành công"}},acceptServer:{title:"Thu thập máy chủ với NFT Sở hữu",tooltip:"Nếu bạn nhận được một NFT quyền sở hữu máy chủ, bạn có thể yêu cầu hộ chiếu chủ sở hữu của bạn với liên kết này."},exchangePassport:{title:"Đổi hộ chiếu của bạn bằng NFT",success:"Bạn đã thành công trong việc đổi hộ chiếu và đăng nhập bằng hộ chiếu của mình",login:"Đăng nhập",tooltip:"Nếu bạn sở hữu NFT từ bộ sưu tập {collections}, bạn có thể trao đổi hộ chiếu của bạn qua liên kết này.",dialog:{title:"Nhận hộ chiếu với NFT",scan:"Kết nối Ví DID của bạn để trình diễn NFT và nhận hộ chiếu",confirm:"Chọn NFT trên Ví DID của bạn",success:"Hộ chiếu đã được đổi thành công"}},payablePassport:{title:"Mua hộ chiếu bằng phương thức thanh toán",tooltip:"Nếu bạn không có hộ chiếu, bạn có thể mua hộ chiếu qua liên kết này."},sidebar:{dashboard:"Bảng điều khiển",blocklets:"Blocklets",console:"Bảng điều khiển",settings:"Cài đặt"},system:{total:"Tổng cộng",used:"Đã sử dụng",free:"Miễn phí",cores:"Số nhân",instances:"Số lượng trường hợp"},common:{invalid:"Không hợp lệ",about:"Về",access:"Truy cập",accessKey:"Khóa truy cập",action:"Hành động",actions:"Hành động",add:"Thêm",address:"Địa chỉ",afterTime:"Sau {time}",allow:"Cho phép",alreadyExist:"đã tồn tại",approve:"Phê duyệt",approved:"Được chấp thuận",appUrl:"URL Ứng dụng",auditLogs:"Lịch sử kiểm toán",author:"Tác giả",avatar:"Avatar",back:"Quay lại",basic:"Cơ bản",basicInfo:"Thông tin cơ bản",profile:"Hồ sơ",bind:"Buộc",blocklet:"Khối",blocklets:"Blocklets",blockletsStorage:"Lưu trữ Blocklets",cacheStorage:"Lưu trữ Bộ nhớ cache",cancel:"Hủy",certificate:"Chứng chỉ",category:"Chủ đề nhật ký",click:"Nhấp để sao chép",close:"Đóng",collapseAll:"Thu gọn Tất cả",community:"Cộng đồng",complete:"Hoàn thành",componentBasicInfo:"Thông tin cơ bản về thành phần",components:"Blockets",config:"Cài đặt",configuration:"Cấu hình",configNavigation:"Điều hướng",configSuccess:"Cấu hình thành công",confirm:"Xác nhận",connect:"Kết nối",console:"Console",continue:"Tiếp tục",continueWith:"Tiếp Tục Với",copiedTip:"Đã sao chép",copyAndClose:"Sao chép và Đóng",copyTip:"Nhấp để sao chép",coreStorage:"Lưu trữ Core",cpu:"CPU",create:"Tạo",createSuccess:"Tạo Khóa Truy Cập",created:"Được tạo lúc",createdAt:"Tạo vào",createdBy:"Được tạo bởi",dAddress:"Các Định danh Phi tập trung (DID)",dataStorage:"Lưu trữ trên Ổ đĩa Cục bộ",delConfirm:"Xoá",delConfirmDescription:"Xác nhận xóa {data}?",delete:"Xóa",dependents:"Người phụ thuộc",description:"Mô tả",detail:"Chi tiết",did:"DID",disk:"Ổ đĩa",diskInfo:"Thông tin đĩa",docker:"Có phải là Docker không",documentation:"Tài liệu",domain:"Miền",downgradeTo:"Downgrade xuống {name}",download:"Tải xuống",downloading:"Đang tải xuống",edit:"Chỉnh sửa",email:"Email",phone:"Điện thoại",empty:"Trống",emptyData:"Không tìm thấy kết quả",enable:"Bật",engine:"Động cơ",env:"Môi trường",environment:"Môi trường",expandAll:"Mở rộng Tất cả",expired:"Hết hạn",expires:"Hết hạn",export:"Xuất khẩu",externalIp:"IP Bên ngoài",failed:"Thất bại",filter:"Bộ lọc Nhật ký",fingerprint:"Vân tay",finish:"Hoàn thành",forbid:"Cấm",free:"Miễn phí",general:"Tổng quát",gitpod:"Gitpod LÀ GÌ",goEULA:'Nhấp để xem "Thỏa thuận Giấy phép Người dùng Cuối cùng"',group:"Nhóm",image:"Đây là một hình ảnh",install:"Cài đặt",installed:"Đã cài đặt",installedAt:"Đã cài đặt tại",installSuccess:"Cài đặt thành công",installing:"Đang cài đặt",internalIp:"Địa chỉ IP nội bộ",introduction:"Giới thiệu",invite:"Mời",inviting:"Mời",ip:"IP",isPublic:"Công chúng",issue:"Vấn đề",issuer:"Người phát hành",item:"Mục",joined:"Tham gia",key:"Khóa",lastPublishedAt:"Được xuất bản vào",launcher:"Thông tin về launcher",leavePageTip:"Bạn có chắc chắn muốn rời khỏi trang này không?",link:"Liên kết",loading:"Đang tải",log:"Xem Logs",logStorage:"Lưu trữ nhật ký",login:"Đăng nhập",logo:"Logo",logout:"Đăng xuất",logs:"Nhật ký",manageTeam:"Quản lý Nhóm",marketplace:"Chợ",member:"Thành viên",members:"Thành viên",memory:"Ký ức",meta:"Dữ liệu siêu",analytics:"Phân tích",runtime:"Thời gian chạy",traffic:"Giao thông",more:"Hơn",mountPoint:"Điểm Mount",name:"Tên",next:"Tiếp theo",no:"Không",noData:"Không có bản ghi để hiển thị",notice:"Những điều xấu không mong muốn sẽ xảy ra nếu bạn không đọc điều này!",noticeTitle:"Thông báo",notification:"Thông báo",open:"Mở",management:"Quản lý",os:"Hệ điều hành",overview:"Tổng quan",owner:"Chủ sở hữu",page404:"Trang 404",passport:"Hộ chiếu",permission:"Quyền",port:"Port",pre:"Trước đó",preferences:"Tùy chọn",preview:"Xem trước",protected:"Bảo vệ",protocol:"Giao thức",purchase:"Mua hàng",readMore:"Nhiều hơn",redirect:"Chuyển hướng",redirectCode:"Mã chuyển hướng",redirectPermanently:"Chuyển hướng vĩnh viễn",redirectTemporary:"Chuyển hướng tạm thời",redirectUrl:"URL chuyển hướng",rewrite:"Viết lại",release:"Phát hành",rewriteUrl:"Viết lại URL",reject:"Từ chối",reload:"Tải lại",remark:"Ghi chú",remove:"Xóa bỏ",removeSuccess:"Xoá thành công",renew:"Gia hạn",reportIssue:"Báo cáo vấn đề",required:"Bắt buộc",requiredErrorText:"Yêu cầu {name}",resource:"Tài nguyên",restart:"Khởi động lại",restore:"Phục hồi",retry:"Thử lại",revoke:"Thu hồi",role:"Vai trò",running:"Đang chạy",runtimeInfo:"Thông tin thời gian chạy",save:"Lưu",saveChanges:"Lưu Thay đổi",saveSuccess:"Lưu thành công",scheduleFailed:"Lịch trình thất bại",scheduleSuccess:"Đã lên lịch thành công",scope:"Phạm vi",screenshot:"Ảnh chụp màn hình",search:"Tìm kiếm",security:"An ninh",serverDid:"Máy chủ DID",serverVersion:"Phiên bản máy chủ",setting:"Cài đặt",start:"Bắt đầu",status:"Tình trạng",stop:"Dừng lại",storage:"Lưu trữ",backup:"Sao lưu",store:"Cửa hàng",succeeded:"Thành công",subscription:"Đăng ký",support:"Hỗ trợ",switch:"Chuyển đổi",team:"Đội",the:"O",timeAgo:"{time} trước",title:"Tiêu đề",type:"Loại",unavailable:"Không có sẵn",update:"Cập nhật",updateAvailable:"Phiên bản mới {version} đã có sẵn",updatedAt:"Cập nhật lúc",updatedBy:"Được cập nhật bởi",upgrade:"Nâng cấp",upgradeTo:"Nâng cấp lên",upgrading:"Nâng cấp",uptime:"Thời gian hoạt động",url:"URL",valid:"Hợp lệ",value:"Giá trị",version:"Phiên bản",visit:"Ghé thăm",waiting:"Đang chờ",webhook:"Tích hợp",yes:"Vâng",invalidParam:"Tham số không hợp lệ",launch:"Khởi chạy",price:"Giá",redirecting:"Đang chuyển hướng",error:"Lỗi",reminder:"Nhắc nhở",normal:"Bình thường",gateway:"Cổng",verifyNFT:"Xác minh NFT",errorMessage:"Thông báo lỗi:",slugifyHint:"Điểm gắn kết thực tế sẽ là: {value}",strategy:"Chiến lược",auto:"Ô tô",manual:"Hướng dẫn",progress:"Đang tiến hành",startTime:"Thời gian bắt đầu",endTime:"Thời gian kết thúc",selected:"Đã chọn",timeoutError:"Lỗi thời gian chờ",tags:"Tags",connectToStore:"Kết nối tới Cửa hàng",uploaded:"Đã tải lên",upload:"Tải lên",blockletStudio:"Studio",visitStore:"Ghé cửa hàng",reconnect:"Kết nối lại",change:"Thay đổi",disconnect:"Ngắt kết nối",sourceApp:"Thuộc về ứng dụng",visitTarget:"Ghé thăm {name}",upgradeServer:"Nâng cấp Máy chủ",display:"Hiển thị",requiredInputPlaceholder:"Vui lòng nhập {name}",refresh:"Làm mới",moveUp:"Di chuyển lên trên",moveDown:"Di chuyển xuống",enabled:"Đã kích hoạt",disabled:"Tắt"},blocklet:{external:"Bên ngoài",notFound:"Không tìm thấy Blocklet trên máy chủ này, có thể đã bị xóa",installFromMarket:"Cài đặt Blocklets Mới",installFromUrl:"Cài đặt từ URL",installFromCreate:"Tạo Blocklet",installFromDiskBackup:"Khôi phục từ máy chủ này",installedAt:"Được cài đặt tại",internal:"Nội bộ",startedAt:"Bắt đầu lúc",stoppedAt:"Đã dừng lại ở",urlEmptyTip:"URL không có quyền truy cập",goToAddRule:"Đi đến Thêm",services:"Các Dịch vụ Tiếp cận",upstreamPort:"Cổng Thượng Dòng",noService:"Không có dịch vụ",appId:"App DID",appPid:"DID vĩnh viễn",alsoKnownAs:"Còn được biết đến là",skSource:"Ví của Người sở hữu",reloadSuccess:"Blocklet đã được tải lại thành công",statusTip:"Blocklet là {status}",initialUptime:"Dưới 1m",dashboard:"Bảng điều khiển Blocklet",noComponent:"Ứng dụng không có thành phần và không thể được khởi chạy",fromUrl:{title:"Cài đặt Blocklet",label:"URL Meta Blocklet",description:"URL nên trỏ đến Tệp thông tin Meta của Blocklet. Nếu bạn cần tham chiếu đến một tệp cục bộ, vui lòng thêm tiền tố file://, ví dụ file:///Users/foo/blocklet.json.",confirm:"Cài đặt",step0:"URL đầu vào",step1:"Xác nhận Meta Info",existTipPrefix:"Blocklet với cùng DID đã tồn tại, phiên bản đang là {version}",existTipSuffix:"Vui lòng cài đặt phiên bản cao hơn."},action:{stopDescription:"Dừng blocklet sẽ làm cho giao diện công khai của nó trở thành không thể tiếp cận, điều này có thể gây ra các lỗi cho người dùng cuối",stopComponentDescription:"Ngừng hoạt động của thành phần sẽ làm cho giao diện công khai của nó không thể truy cập, điều này có thể gây ra sự cố cho người dùng cuối",confirmStop:"Vâng, Dừng lại",cancelDownloadDescription:"Hủy tải xuống {name}?",removeApplicationDescription:"Xóa ứng dụng sẽ xóa mã và dữ liệu được tạo ra bởi ứng dụng này, và không thể khôi phục nếu bạn không có bất kỳ bản sao lưu nào.",removeApplicationAfterBackup:"Sao lưu và gỡ bỏ ứng dụng. Bạn có thể khôi phục ứng dụng từ máy chủ này nếu cần",removeApplicationComplete:"Xóa cả mã và dữ liệu cho ứng dụng này",removeComponentDescription:"Việc xóa thành phần sẽ xóa mã và dữ liệu được tạo bởi thành phần này, không thể phục hồi nếu bạn không có bản sao",removeComponentKeepData:"Giữ dữ liệu cho thành phần này, chỉ xóa mã",removeComponentComplete:"Xoá cả mã và dữ liệu cho thành phần này",confirmRemove:"Vâng, Xóa nó",confirmComponentRemove:"Có, Xóa nó",upgradeDescription:"Nâng cấp blocklet sẽ làm cho nó tạm thời không khả dụng, bạn có chắc chắn muốn tiếp tục không?",confirmUpgrade:"Có, Nâng cấp nó",confirmRestart:"Có, Khởi động lại nó",restartDescription:"Khởi động lại blocklet sẽ tạm thời bị tạm ngưng và có thể không khởi động được do thay đổi cấu hình"},dev:{modeTip:"Vui lòng chuyển Blocklet Server sang chế độ DEBUG"},index:{tableTitle:"Quản lý Blocklets Của Bạn",noBlocklet:"Không tìm thấy blocklets trong Máy chủ Blocklet này, cài đặt một blocklet từ thị trường để bắt đầu."},admin:{iframeTitle:"Giao diện Quản trị Blocklet",title:"Giao diện quản trị",noContent:"Khối này không có giao diện quản trị",securityError:"SecurityError: Không thể mở URL quản trị từ truy cập khung nguồn gốc giao động"},config:{name:"Tên ứng dụng",description:"Mô tả ứng dụng",sk:"Khóa bí mật cho ví ứng dụng",logoSquare:"Biểu trưng ứng dụng",logoRect:"Logo hình chữ nhật",logoRectDesc:"Thường được hiển thị ở đầu trang, mặc định là biểu trưng ứng dụng",logoFavicon:"Favicon",logoFaviconDesc:"Thường được hiển thị trên thanh địa chỉ trình duyệt hoặc trang tab, mặc định là logo ứng dụng",clusterSize:"Số lượng phiên bản khi chạy blocklet này trong chế độ cụm",copyrightOwner:"Chủ sở hữu bản quyền (Hiển thị ở chân trang)",copyrightYear:"Năm bản quyền (Hiển thị ở chân trang)",deletable:{name:"Bảo vệ Xóa",enable:"Hiện tại, Khối này KHÔNG thể xóa",disable:"Hiện tại, blocklet này có thể bị xóa"},walletType:{name:"Loại ví",description:"Loại ví của khối Blocklet, sẽ thay đổi DID được lấy ra"},languages:"Ngôn ngữ được hỗ trợ",selectLanguagesTip:"Điều chỉnh thứ tự bằng cách loại bỏ và thêm lại",languagesSearch:"Tìm kiếm theo Tên Gọi địa phương của Quốc gia, Tên tiếng Anh hoặc Mã ISO...",passportColor:"Màu hòm hộ chiếu",appUrl:"URL ứng dụng",access:{title:"Ai có thể truy cập",description:"Ai có thể truy cập blocklet",useDefault:"Sử dụng mặc định",defaultDescription:"Sử dụng cấu hình mặc định của ứng dụng",whoCanAccess:{all:{title:"Dễ tiếp cận cho tất cả",description:"Mở cửa ra thế giới, bất cứ ai cũng có thể truy cập mà không cần hộ chiếu"},owner:{title:"Chỉ mình tôi có thể truy cập",description:"Bạn phải cung cấp hộ chiếu của chủ sở hữu để truy cập vào ứng dụng này"},invited:{title:"Chỉ có người được mời mới có thể truy cập",description:"Bạn có thể mời thành viên sau trên trang quản trị"}},publicToStore:"Công khai tại Cửa hàng",publicInstanceTip:"Địa chỉ truy cập khối này sẽ được hiển thị trong Cửa hàng (cùng với DID của bạn để chấp nhận quyên góp)",updatedTip:"Kiểm soát truy cập đã được sửa đổi"},changedTip:"Cấu hình được cập nhật, vui lòng khởi động lại Blocklet",missingRequired:"Thiếu cấu hình bắt buộc để khởi động blocklet",gotoFix:"Đi sửa",environment:{key:"Khóa cấu hình",value:"Giá trị cấu hình",keyValueRequired:"Phải chỉ định khóa và giá trị cấu hình",invalidKey:"Khóa cấu hình không được bắt đầu bằng BLOCKLET_ hoặc COMPONENT_",deleteForbidden:"Cấu hình này là bắt buộc và không được xóa",tip:"Các cấu hình có tiền tố BWA_ không nên chứa thông tin nhạy cảm vì chúng sẽ được gửi đến trình duyệt"},dangerZone:"Khu Vực Nguy Hiểm",blockletTypeChangeTip:"Loại ví sẽ được thay đổi thành <b>{value}</b>",appDidChangeTip:"Hoạt động này sẽ thay đổi DID của ứng dụng, điều này sẽ dẫn đến những vấn đề sau. Vui lòng xác nhận sau khi đánh giá cẩn thận:",appDidChangeTipL1:"Tài khoản người dùng kết nối với ứng dụng này sẽ thay đổi",appDidChangeTipL2:"Tên miền DID của ứng dụng sẽ thay đổi và tên miền gốc sẽ trở thành không hợp lệ",appSkChangeTip:"Bạn đang thay đổi khóa bí mật của ứng dụng",walletTypeTitle:"Cập Nhật Loại Ví",appSkTitle:"Cập nhật Khoá Bí Mật Ứng Dụng",sharedToAllComponents:"Sẽ được chia sẻ cho tất cả các thành phần",session:{ttl:"Người dùng sẽ được yêu cầu đăng nhập lại nếu không có hoạt động trên trang web này trong {ngày} ngày",day:"{day} ngày",days:"{day} ngày",period:"Thời gian hiệu lực phiên",profile:"Yêu cầu hồ sơ người dùng",cacheTtl:"Thời gian lưu trữ cache cho dữ liệu phiên người dùng (theo giây)",fullNameEnabled:"Yêu cầu tên người dùng khi đăng nhập (được bật mặc định)",avatarEnabled:"Yêu cầu avatar người dùng khi đăng nhập (được kích hoạt mặc định)",emailEnabled:"Yêu cầu email người dùng khi đăng nhập",emailRequireVerified:"Yêu cầu xác minh email người dùng trước khi đăng nhập",emailRequireUnique:"Yêu cầu email người dùng là duy nhất trong tất cả người dùng",phoneEnabled:"Yêu cầu số điện thoại người dùng khi đăng nhập (chưa được hỗ trợ)",phoneRequireVerified:"Yêu cầu xác minh số điện thoại người dùng trước khi đăng nhập",phoneRequireUnique:"Yêu cầu số điện thoại người dùng phải duy nhất trong tất cả người dùng",emailTrustOauthProviders:"Tin tưởng các nhà cung cấp OAuth để kiểm tra trạng thái xác minh email",enableDomainBlackList:"Kích hoạt danh sách đen tên miền email (từ chối các tên miền email đã liệt kê)",enableDomainWhiteList:"Kích hoạt danh sách trắng tên miền email (chỉ cho phép các tên miền email được liệt kê để đăng nhập)",addDomain:"Thêm nguồn để lấy danh sách (dưới dạng văn bản thường, một miền trên mỗi dòng)"},clearCache:{name:"Quản lý Cache",purpose:"Quản lý file được lưu trữ trong dịch vụ router và blocklet",title:"Xác nhận xóa Cache?",action:"Xóa Cache",success:"{count} mục cache đã được xóa thành công",description:"Bạn có chắc chắn muốn xóa các tệp được lưu trữ tạm thời trong bộ định tuyến và dịch vụ blocklet không? Thao tác này có thể làm giảm hiệu suất một chút trong thời gian ngắn."},tenantMode:{name:"Chế độ Đa Người Thuê",multiple:"Blocklet này chạy trong chế độ nhiều người thuê, dữ liệu được cô lập cho mỗi người thuê",single:"Khối mã này chạy trong chế độ khách hàng đơn, tất cả dữ liệu được chia sẻ"}},overview:{source:"Nguồn",deployedFrom:"Triển khai từ",accessControl:"Kiểm soát truy cập",viewInStore:"Xem tại cửa hàng"},diskInfo:{empty:"Thông tin đĩa không khả dụng hiện tại!",appDir:"Thư mục Ứng dụng",dataDir:"Thư mục dữ liệu",logDir:"Thư mục nhật ký",cacheDir:"Thư mục cache"},runtimeInfo:{noRunning:"Thông tin thời gian chạy sẽ có sẵn khi blocklet đang chạy!",memoryUsage:"Bộ nhớ sử dụng",cpuUsage:"Sử dụng CPU",uptime:"Thời gian hoạt động",port:"Cảng",processId:"Mã quy trình"},dist:{downloadLink:"Liên kết Tải xuống",verify:"Xác minh"},status:{added:"Đã thêm",waiting:"Đang chờ",downloading:"Đang tải xuống",extracting:"Trích xuất",installing:"Đang cài đặt",upgrading:"Nâng cấp",installed:"Đã cài đặt",created:"Được tạo",starting:"Bắt đầu",running:"Chạy",stopping:"Dừng lại",stopped:"Dừng",error:"Lỗi",deleting:"Xóa",corrupted:"Bị hỏng",purchasing:"Đang chờ mua hàng",purchased:"Đã mua",verifying:"Xác minh mua hàng",resource:"Tài nguyên"},list:{download:"Tải xuống",star:"Ngôi sao"},component:{container:"Cấu hình Toàn cầu",showContainer:"Hiển thị Cấu hình Toàn cầu",didSpaceConfig:"Cấu hình DID Spaces",didSpaceConfigTip:"Hoàn thành quy trình ủy quyền sau để lưu trữ dữ liệu ứng dụng trong DID Spaces",didSpaceConnected:"Lưu trữ được ủy quyền cho: {endpoint}",checkUpdateTitle:"Kiểm tra Cập nhật",updateTitle:"Cập nhật thành phần",noUpdate:"Không có thành phần cần cập nhật",add:"Thêm thành phần",selectComponent:"Chọn Blocklet",selectRegistry:"Chọn Blocklet Store",selectRegistryTip:"Bạn có thể chuyển cửa hàng khối để xem nhiều thành phần hơn",selectInstance:"Chọn Instance",selectInstanceTip:"Bạn có thể chọn một phiên bản hiện có hoặc tạo một phiên bản mới. Các phiên bản hiện có sẽ sử dụng cấu hình và dữ liệu đã được lưu trước đó.",newInstance:"Tạo Mới Thể hiện",noComponent:"Không có thành phần",mountPoint:"Điểm gắn kết là gì?",mountPointTip:"Nếu bạn đặt điểm gắn kết thành '/my-prefix', thì tất cả các yêu cầu bắt đầu bằng điểm gắn kết đó sẽ được định tuyến đến thành phần đã chọn",delete:"Xóa Bộ phận",deleteDescription:"Thành phần này sẽ không thể truy cập sau khi xóa. Xác nhận xóa?",purchase:"Yêu cầu thanh toán",tip:{stopBlocklet:"Vui lòng dừng chạy Blocklet trước",requiredBy:"Yếu tố này được yêu cầu bởi {name}"},choose:"Chọn",addWithName:"Thêm Blocklet vào {name}",installingCanCloseWindowTip:"Đang cài đặt thành phần trong nền, bạn có thể đóng cửa sổ này an toàn",installSuccessTip:"Chúc mừng, thành phần đã được cài đặt thành công!",missDownloadTokenTip:"Không thể thêm thành phần trả phí mà không có mã thông tin tải xuống hợp lệ",purchaseComponentSecondCheckTip:"Vui lòng trình diễn NFT mua Blocklet của bạn để tiếp tục",installComponentError:"Đã xảy ra lỗi khi cài đặt thành phần, vui lòng thử lại",downloadComponentError:"Đã xảy ra lỗi khi tải xuống thành phần, vui lòng thử lại",addComponentTip:{introduction:"Chào mừng bạn đến Vị tro Tiện ích Thêm Thành phần",isPurchase:"Bạn cần xác minh NFT trước khi sử dụng <b>{name}</b> như một thành phần",belowInformation:"Dưới đây là thông tin về thành phần:",verifyNFT:"Vui lòng chọn phương pháp Xác minh NFT",config:"Vui lòng điền vào cấu hình của thành phần",environment:"Vui lòng điền vào môi trường của thành phần",fromUrl:"Thêm Blocklet Từ Url"},addNext:"Thêm {name}",upgradeNext:"Nâng cấp {name}",setting:"Cài đặt",noDependencies:"{name} không có bất kỳ sự phụ thuộc nào",relatedComponents:"Các khối liên quan",required:"Cần thiết",installed:"Đã cài đặt",installingTip:"Đang cài đặt thành phần, vui lòng chờ...",upgrade:"Nâng cấp"},router:{urlPath:"URL Path",noRunning:"Blocklet hiện không được khởi động. Không thể truy cập thông qua địa chỉ sau!",securitySetting:"Cài đặt Bảo mật",checkUrlAccessible:"Kiểm tra tính khả dụng của địa chỉ",urlInaccessible:"Có thể do lý do mạng, địa chỉ tạm thời không thể truy cập",noAccessibleUrl:"URL không thể truy cập",domainLockTooltip:"Miền tên được tạo bởi hệ thống không thể chỉnh sửa.",urlLockTooltip:"Đường dẫn URL được tạo bởi hệ thống không thể chỉnh sửa.",showAllDomains:"Hiển thị tất cả các miền",showAllDIDs:"Hiển thị tất cả DIDs",currentDomainTip:"Bạn đang truy cập trang hiện tại qua tên miền này"},export:{title:"Xuất Blocklet",name:"Tên Bundle",nameTip:"ví dụ 'my-blocklet-name' hoặc '@my-scope/blocklet-name'",result:"Tiếp theo là gì",exportSource:"Xuất nguồn",success:"Blocklet xuất thành công",resultTipStart:"Với",resultTipEnd:"Bạn có thể xây dựng và xuất bản blocklet này trong vài phút",uploadedComponentTip:"Các thành phần được tải lên trực tiếp không thể được xuất khẩu:"},migrate:{title:"Di chuyển ứng dụng",scan:"Kết nối Ví DID của bạn để tạo một cặp khóa cho ứng dụng này",confirm:"Xem lại thao tác này trên ví DID của bạn",success:"Ứng dụng của bạn đã được di chuyển thành công, trang sẽ được làm mới trong {sec} giây",intro:{l1:"Nhấp vào đây",l2:"Để di chuyển ứng dụng của bạn sang phiên bản mới (thay đổi bị tắt cho đến khi quá trình di chuyển hoàn tất)",l3:"Ứng dụng DID sẽ được điều khiển hoàn toàn từ Ví DID của bạn.",l4:"Dữ liệu ứng dụng sẽ được di chuyển, và không yêu cầu thay đổi khác.",l5:"Cấu trúc ứng dụng mới sẽ mang lại cho bạn linh hoạt hơn khi thay đổi các thành phần.",l6:"4. Vui lòng không thay đổi điểm gắn kết thành phần trước khi phiên bản thành phần mới được phát hành."},tip:{duplicate:"Tìm thành phần trùng lặp {name}, vui lòng xóa các thành phần không cần thiết và di chuyển lại",running:"Vui lòng ngừng chặn trước quá trình di chuyển"}},error:{isRunning:"Blocklet đang chạy, vui lòng dừng nó trước",isInProgress:"Blocklet đang tiến hành, vui lòng đợi cho đến khi hoàn thành"},publish:{createResource:"Tạo tài nguyên",addResource:"Thêm bản phát hành",productTitle:"Sản phẩm",versionTitle:"Phiên bản",imgTitle:"Hình ảnh",resourceTitle:"Tài nguyên",blockletEmptyTip:"Ở đây không có khối",createBlockletTip:"Bạn có thể tạo blocklet mới thông qua các tài nguyên, thành phần và cấu hình hiện có trong ứng dụng này",createBlocklet:"Khối mới",componentNotRunning:"Blocklet {name} không hoạt động, vui lòng khởi chạy trước",releaseEmptyTip:"Không có bản phát hành ở đây",createReleaseTip:"Bạn có thể tạo một phiên bản của blocklet, cùng với ghi chú về phiên bản và tài nguyên, để mọi người khác có thể sử dụng",createRelease:"Tạo bản phát hành",deleteReleaseTip:"Phiên bản không thể khôi phục sau khi xóa",createBlockletDid:"Tạo từ Ví Điện tử DID",createReleaseSuccess:"Phát hành được tạo thành công",saveDraftSuccess:"Nháp đã được lưu thành công",connect:{title:"Tạo DID Blocklet",scan:"Quét mã QR bên dưới để tạo Blocklet DID",confirm:"Xác nhận bằng cách sử dụng Ví DID",success:"DID Blocklet đã được tạo ra, vui lòng tiếp tục hoạt động của bạn"},saveDraft:"Lưu nháp",releaseNote:"Ghi chú phát hành",errorTip:{noDid:"Blocklet DID là bắt buộc",noTitle:"Tiêu đề khối là bắt buộc",noVersion:"Phiên bản Blocklet cần thiết",noDescription:"Yêu cầu miêu tả Blocklet",noNote:"Cần có Ghi chú phát hành",inValidVersion:"Phiên bản Blocklet không hợp lệ",noResource:"Vui lòng chọn tài nguyên tải lên để bao gồm trong blocklet",noFirstDid:"Vui lòng tạo Blocklet DID trước"},packTip:"Hiện tại, blocklet có thể được cài đặt trực tiếp như các ứng dụng. Các thành phần và cấu hình ứng dụng sẽ được tự động bao gồm trong Blocklet.",resourceChangedWarning:"Bạn đã chỉnh sửa nguồn tài nguyên, vui lòng lưu lại đúng giờ",installResourceTip:"Đường dẫn Cài đặt:",installResourceTip2:"Nếu bạn muốn xem thêm những mẹo khác, vui lòng truy cập",installResourceHelp:"Tài liệu giúp đỡ",componentIncluded:"Bao gồm",componentForceRequired:"Yêu cầu",download:"Tải về {name}",delete:"Xóa {name}",copyInstallUrl:"Sao chép URL cài đặt",install:"Cài đặt {name}",publishToStoreSuccess:"Blocklet đã được xuất bản lên Cửa hàng thành công",connectStoreSuccess:"Kết nối Blocklet Store thành công",uploadToStoreSuccess:"Blocklet đã tải lên Store thành công, bạn cần phải xuất bản nó trong Store",viewLastRelease:"Xem phiên bản phát hành gần đây nhất",reconnectStoreTip:"Sau khi kết nối lại, một nhà phát triển mới sẽ được liên kết. Bạn có chắc chắn muốn kết nối lại không?",deleteProject:{title:"Xóa {name}",scan:"Quét mã QR bên dưới để xóa {name}",confirm:"Xác nhận sử dụng Ví DID",success:"Dự án Blocklet đã bị xóa, vui lòng tiếp tục hoạt động của bạn",tip1:"Dự án Blocklet sẽ không thể khôi phục sau khi xóa",tip2:"Bạn sẽ không còn có khả năng xuất bản phiên bản mới cho Blocklet đã bị xóa, điều đó có nghĩa là Blocklet sẽ không được cập nhật nữa trên Cửa hàng.",tip3:"Xóa Blocklet sẽ không ảnh hưởng đến phiên bản hiện tại đã được xuất bản trong Cửa hàng.",description:"Sau khi xóa Blocklet, bạn sẽ gặp các vấn đề sau, bạn có chắc chắn muốn xóa nó không?"},resourceTip:"Hiện tại, là một khối tài nguyên, nó không thể được cài đặt trực tiếp từ Cửa hàng.",whyCantSeeInStore:"Tại sao tôi không thể thấy khối này trong Cửa hàng?",whyCantSeeResourceBlockletInStore:"Resource Blocklet được ẩn khỏi trang danh sách cửa hàng mặc định",tenantScope:"Người thuê",blockletStudio:"Blocklet Studio",allComponentsNotRunning:"Blocklets không đang chạy, vui lòng khởi động nó trước",resourceEmptyTip:"Không có tài nguyên khả dụng",steps:{resources:"Vui lòng chọn các tài nguyên cần được liên kết với Blocklet hiện tại, vì các tài nguyên này sẽ được cài đặt cùng với Blocklet.",blocklets:"Chọn các khối để kết hợp.",version:"Cài đặt phiên bản phát hành và nhật ký thay đổi.",introduction:"Một phần giới thiệu rõ ràng có thể làm nổi bật hiệu quả Blocklet của bạn. Bạn có thể sử dụng cú pháp Markdown để viết và xem trước nó.",branding:"Mô tả thông tin cơ bản về Blocklet của bạn. Thông tin này sẽ được trình bày cho người dùng trong cửa hàng."},branding:"Thương hiệu",brandingHelp:"Thông tin chi tiết về blocklet sẽ được hiển thị trên Cửa hàng",resourceSelect:"Chọn tài nguyên từ blocklets",resourceUpload:"Tải tài nguyên từ ổ đĩa của bạn (index.html cần thiết trong tệp nén)",deleteStoreTip:"Bạn có chắc chắn muốn xóa {name} khỏi danh sách Cửa hàng Kết nối không?",disconnectStoreTip:"Sau khi ngắt kết nối, Blocklet sẽ bị xóa khỏi cửa hàng. Bạn có chắc chắn muốn ngắt kết nối không?",connectOrUpload:"Kết nối hoặc Tải lên",developerInfo:"Thông tin nhà phát triển",autoUploadTip:"Tự động tải lên blocklet lên Cửa hàng sau khi phát hành",possibleSameStoreTip:"Hãy thử giải quyết các blocklet phụ thuộc trong cùng một Cửa hàng Blocklet trước mỗi khi tải lên khi có thể",needProjectId:"Vui lòng tạo dự án trước",projectSettings:"Cài đặt Dự án",noStoreSelected:"Vui lòng chọn một cửa hàng hiện có hoặc thêm cửa hàng mới để tiếp tục",installToThisServer:"Cài đặt vào máy chủ này"},titleValidationError:"Độ dài tiêu đề phải ít nhất 3 ký tự",descriptionValidationError:"Độ dài mô tả phải từ 3 đến 80 ký tự",whyNeedAppPid:"Nếu ứng dụng của bạn đã được di chuyển, DID vĩnh viễn là DID được tạo khi Blocklet này được cài đặt ban đầu",usingDocker:"Blocklet này sẽ chạy bằng docker"},dashboard:{nodeDid:"Nút",ownerDid:"Chủ sở hữu",routingEngine:"Bộ Quy Tắc",ownerNftURL:"Chủ sở hữu NFT",expirationLeft:"Ngày hết hạn còn lại",startFromCrashTip:"Blocklet Server không thoát bình thường lần trước, vui lòng khởi động thủ công các blocklets cần chạy.",runtimeConfig:{blockletMaxMemoryLimit:"Giới hạn bộ nhớ tối đa của Blocklet",daemonMaxMemoryLimit:"Giới hạn bộ nhớ tối đa của máy chủ",proxyMaxMemoryLimit:"Giới hạn Bộ nhớ Tối đa của Bảng Tin Sự kiện"}},store:{nameSort:"Tên",popularSort:"Sự phổ biến",headerDescription:"Tìm kiếm và Cài đặt Blocklets của bạn",detail:{purchase:"Mua {name}",open:"Mở {name}",install:"Cài đặt {name}",upgrade:"Nâng cấp {name}",empty:"Không giới thiệu"},blockletRegistry:{changeFailed:"Thay đổi Cửa hàng Blocklet thất bại:",addFailed:"Thêm Blocklet Store thất bại: {name}",editFailed:"Sửa cửa hàng Blocklet không thành công",switchRegistry:"Chuyển Đổi Cửa Hàng Khối",addRegistry:"Thêm Blocklet Store",editRegistry:"Chỉnh sửa Cửa hàng Blocklet",deleteRegistry:"Xóa Blocklet Store",haveSameRegistry:"Cửa hàng khối cùng tồn tại",registryName:"Tên Cửa hàng Blocklet",registryUrl:"URL cửa hàng Blocklet",registryNameEmpty:"Tên cửa hàng Blocklet không thể để trống",registryUrlEmpty:"URL cửa hàng Blocklet không được để trống",deleteDesc:"Xác nhận Xóa cửa hàng blocklet {name} ?",confirmDesc:"Vui lòng nhập {name} để xóa"},purchase:{title:"Mua {name}",confirmed:"Giao dịch mua NFT của bạn đã được xác minh",declined:"Bạn không cung cấp mua NFT blocklet hợp lệ",waiting:"Đang chờ hoàn tất mua hàng...",purchase:{title:"Mua NFT",description:"Hãy thanh toán một số mã thông báo trước khi cài đặt khối này nếu bạn chưa mua khối này"},verify:{title:"Xác minh NFT",description:"NFT của bạn sẽ được xác minh trước khi cài đặt blocklet này nếu bạn đã mua và giữ NFT mua hàng trong Ví DID của bạn",auth:{title:"Yêu cầu Mua thông tin Xác thực",scan:"Kết nối DID Wallet để cung cấp mua blocklet NFT",confirm:"Vui lòng xem lại hoạt động này trên Ví DID của bạn",success:"Mua NFT của bạn đã được xác minh và việc cài đặt đã bắt đầu"}},auth:{title:"Mua {name}",scan:"Quét mã QR sau đây bằng ví điện tử DID của bạn",confirm:"Xác nhận trên ví DID của bạn",success:"Mua NFT được gửi vào ví DID của bạn"},launch:"Khởi chạy {name}",autoLaunch:"{name} đã mua thành công, đang chuyển hướng đến trang khởi chạy..."},tooltip:{upgradeServer:"Blocklet yêu cầu Blocklet Server phiên bản {version}, phiên bản Blocklet Server hiện tại là {serverVersion}"}},setting:{saveSuccess:"Cài đặt đã được lưu thành công",unSavedTip:'Có những thay đổi chưa được lưu, vui lòng nhấp vào "Lưu Thay Đổi" để lưu chúng.',unSavedLeaveTip:"Có những thay đổi chưa được lưu, bạn chắc chắn muốn rời khỏi trang?",form:{name:"Tên Máy chủ của bạn",nameRequired:"Mô tả máy chủ là bắt buộc",namePlaceholder:"Tên máy chủ",description:"Mô tả máy chủ của bạn",descriptionHolder:"Mô tả máy chủ",descriptionRequired:"Cần mô tả của máy chủ",domain:"Tên miền máy chủ của bạn",domainPlaceholder:"Tên Miền Máy Chủ",domainRequired:"Yêu cầu miền máy chủ",ipPlaceholder:"IP",ipRequired:"IP được yêu cầu",registry:"Cửa hàng Blocklet",registryPlaceholder:"Kho blocklet để tìm blocklets",registryRequired:"Cửa hàng Blocklet là bắt buộc",registerUrl:"Địa chỉ URL của Blocklet Launcher",registerUrlPlaceholder:"Nhập URL của Blocklet Launcher ưa thích của bạn, bạn có thể sử dụng phiên bản chính thức một cách an toàn",webWalletUrl:"URL ví DID",webWalletUrlPlaceholder:"Vui lòng nhập URL của 'Ví DID' của bạn được lưu trữ, bạn có thể sử dụng phiên bản chính thức một cách an toàn",nftDomainUrl:"URL miền NFT",nftDomainUrlPlaceholder:'Vui lòng nhập URL của miền "NFT" đã lưu trữ của bạn, bạn có thể sử dụng nó một cách an toàn',enableWelcomePage:"Bật trang chào mừng",welcome:{switchLabel:"Trang Chào mừng"},upgrade:{title:"Nâng cấp Blocklet Server lên phiên bản {version}",description:"Trong quá trình nâng cấp, máy chủ Blocklet của bạn sẽ vào chế độ bảo trì trong vài phút trong khi cập nhật hoàn tất.",dialog:'Nhấp vào "xác nhận" để cài đặt bản cập nhật. Blocklet Server sẽ vào chế độ bảo trì cho đến khi cập nhật hoàn thành và tự động trở lại chế độ sản xuất.',confirm:"Nâng cấp",switchLabel:"Kiểm tra cập nhật tự động",enableBetaRelease:"Kích hoạt Phiên bản Beta",setup:"Đang chuẩn bị nâng cấp",installing:"Đang cài đặt máy chủ Blocklet v{version}",restarting:"Khởi động lại Máy chủ Blocklet",cleanup:"Di chuyển dữ liệu máy chủ Blocklet",verifying:"Đang xác minh máy chủ Blocklet v{version}",rollback:"Máy chủ Rollback Blocklet",complete:"Nâng cấp đã hoàn thành!",progress:"Nâng cấp {name}",check:"Kiểm tra cập nhật",latest:"Bạn đang chạy phiên bản mới nhất."},restart:{title:"Khởi động lại máy chủ Blocklet",description:"Trong quá trình khởi động lại, máy chủ Blocklet của bạn sẽ vào chế độ bảo trì cho đến khi quá trình khởi động lại hoàn tất.",dialog:'Bấm vào "xác nhận" để khởi động lại. Blocklet Server sẽ vào chế độ bảo trì cho đến khi khởi động lại hoàn thành và tự động quay trở lại chế độ sản xuất.',confirm:"Khởi động lại",setup:"Đang chuẩn bị khởi động lại",verifying:"Đang xác minh Máy chủ Blocklet",restarting:"Khởi động lại Máy chủ Blocklet",cleanup:"Đảm bảo mọi thứ đều ổn",rollback:"Dọn dẹp trạng thái bẩn",complete:"Giữ hoàn chỉnh!",progress:"Khởi động lại {name}"},register:{titleAdded:"Thêm vào Blocklet Launcher",title:"Thêm vào Blocklet Launcher",description:"Sau khi thêm, bạn có thể khởi chạy blocklets tới máy chủ blocklet này từ {url}.",descriptionOnAdded:"Bạn có thể khởi chạy blocklets vào máy chủ blocklet này từ {url}.",btn:"Thêm",update:"Cập nhật",added:"Thêm vào",addSucceed:"Thêm thành công",updateSucceed:"Cập nhật thành công",detecting:"Phát hiện",timeout:"Hết thời gian phát hiện, vui lòng kiểm tra xem chương trình khởi chạy blocklet đã được bắt đầu hay chưa"},monitor:{diskThreshold:"Gửi cảnh báo khi sử dụng đĩa vượt quá (%)",diskThresholdPlaceholder:"Vui lòng đặt ngưỡng cảnh báo việc sử dụng đĩa"},security:{switchLabel:"Cách ly Hệ thống Tệp",switchTips:"Sau khi vô hiệu hóa tùy chọn này, hệ thống tệp của Blocklet sẽ không còn được cách ly nữa, điều này có thể tạo ra nguy cơ phần mềm độc hại làm hỏng hệ thống tệp.",warningTips:"Tính năng cô lập hệ thống tệp không có hiệu lực. Vui lòng nâng cấp phiên bản node.js (phiên bản hiện tại là {version}) lên v21.6.0 hoặc cao hơn."},docker:{switchLabel:"Container chạy blocklet",switchTips:"Sau khi kích hoạt tùy chọn này, các blocklet sẽ chạy bằng cách sử dụng container, có thể cải thiện bảo mật tổng thể của máy chủ.",notInstalled:"Không thể kích hoạt chạy container vì Docker chưa được cài đặt hoặc thiếu quyền cần thiết để thực thi.",needCloseFileSystemIsolation:"Cách ly hệ thống tệp và chế độ thùng chứa docker không thể được kích hoạt cùng một lúc"}},accessKey:{accessKeyId:"KHÓA TRUY CẬP",lastUsed:"Lần cuối sử dụng vào",tip:"Vui lòng nhập tên cho khóa truy cập này để tham khảo sau này:",saveSecretTip:"Đây là lần duy nhất mà khóa bí mật truy cập của bạn có thể được xem và không thể khôi phục. Tuy nhiên, bạn có thể tạo các khóa truy cập mới bất kỳ lúc nào.",iKnow:"Tôi đã sao chép và lưu Khoá truy cập Bí mật",showSecret:"Hiển thị Mã Truy Cập Bí Mật",hideSecret:"Ẩn bí mật",title:"Xóa Khóa Truy Cập",descriptionNoTime:"Điều này sẽ xóa vĩnh viễn khóa truy cập {key} với tên {name}, chưa bao giờ được sử dụng trước đó",description:"Điều này sẽ xóa khóa truy cập {key} vĩnh viễn với tên {name}, được sử dụng lần cuối vào {time}, {timeAge}",confirm_desc:"Vui lòng nhập {name} để xóa",remark:"Tên Khóa Truy Cập",remarkInvalid:"Tên Khóa truy cập là bắt buộc"},webhook:{add:"Thêm tích hợp",delTitle:"Xóa tích hợp",requiredError:"Vui lòng cung cấp một {type} hợp lệ",confirm_desc:"Vui lòng nhập {name} để xóa",test:"Kiểm tra",description:"Điều này sẽ xóa vĩnh viễn tích hợp với ID {id}",columns:{description:"Xin chào, ID",params:"Tham số",createdAt:"Tạo vào"}}},notification:{title:"Hoạt động",empty:"Chưa có hoạt động",viewAll:"Xem Tất Cả",showRead:"Hiển thị Đọc",markAllAsRead:"Đánh dấu tất cả là đã đọc",markAsRead:"Đánh dấu đã đọc",proceed:"Tiếp tục",checkingForUpdates:"Đang kiểm tra cập nhật...",email:{enable:"Bật thông báo qua email",from:"Người gửi email",host:"Máy chủ SMTP",port:"Cổng máy chủ SMTP",user:"Tên người dùng máy chủ SMTP",secure:"Kích hoạt kết nối an toàn",password:"Mật khẩu người dùng máy chủ SMTP",fromRequired:"Người gửi email là bắt buộc",fromInvalid:"Người gửi email không hợp lệ",receiverRequired:"Người nhận email bắt buộc",receiverInvalid:"Người nhận email không hợp lệ",hostRequired:"Máy chủ SMTP cần được cung cấp",hostInvalid:"Máy chủ SMTP không hợp lệ",portRequired:"Cổng máy chủ SMTP là bắt buộc",portInvalid:"Cổng máy chủ SMTP không hợp lệ, cổng phải từ 1 đến 65535",userRequired:"Cần nhập tên người dùng máy chủ SMTP",passwordRequired:"Yêu cầu mật khẩu người dùng máy chủ SMTP",testSuccess:"Gửi email kiểm tra thành công",testFailed:"Gửi email thử thất bại",testReceiver:"Người nhận Email",testSendEmail:"Thử gửi email",inputTestReceiver:"Vui lòng nhập email nhận kiểm tra",disable:"Hủy đăng ký thông báo qua email",disableDescription:"Sau khi hủy đăng ký, bạn sẽ không còn nhận được thông báo qua email nữa. Để nhận thông báo qua email, bạn có thể đăng ký lại trang này.",unsubscribe:"Hủy đăng ký thông báo qua email",unsubscribeDescription:"Sau khi hủy đăng ký, bạn sẽ không còn nhận được bất kỳ thông báo qua email nào nữa.",subscribe:"Đăng ký",subscribeDescription:"Để nhận thông báo qua email, bạn có thể đăng ký lại trên trang cài đặt."},comingSoon:"Có thêm kênh thông báo đang được xây dựng",unsubscribe:"Huỷ đăng ký",unsubscribeSucceed:"Hủy đăng ký thành công",unsubscribeFailed:"Hủy đăng ký không thành công",unsubscribeTokenRequired:"Mã token hủy đăng ký bắt buộc",unsubscribeTokenExpired:"Mã hủy đăng ký đã hết hạn",unsubscribeTokenInvalid:"Mã hủy đăng ký không hợp lệ",installComponentError:"Không tìm thấy thành phần {name} đã gỡ cài đặt",installingComponent:"Đang cài đặt thành phần {name}",pushKit:{enable:"Kích hoạt thông báo PushKit",endpoint:"PushKit endpoint",endpointInvalid:"Điểm cuối PushKit là URL không hợp lệ",testSuccess:"Đẩy thử PushKit thành công",testFailed:"Thử nghiệm gửi PushKit không thành công",testReceiver:"Máy thu PushKit",testSend:"Thử nghiệm đẩy push-kit",inputTestReceiver:"Vui lòng nhập máy thu thử nghiệm",receiverRequired:"Cần có bộ thu PushKit",pushPath:"Đường dẫn api cho push-kit (mặc định /api/push)",did:"PushKit Blocklet DID",customOptions:"Tùy Chọn Tùy Chỉnh"}},router:{routerSetting:"Domínio và URL",certSetting:"Chứng chỉ SSL",defaultSite:"Mặc định",urlHelperText:"URL không bắt đầu bằng HTTP/HTTPS được coi là đường dẫn tương đối",empty:"Nhấp vào Tác vụ để thiết lập Bản đồ URL",healthy:{ok:"Blocklet hoặc dịch vụ đang chạy",error:"Khối hoặc dịch vụ không chạy hoặc chưa được cài đặt"},service:{select:"Chọn Dịch vụ Blocklet (Tùy chọn)",what:"Dịch vụ Blocklet là các đường ống thực hiện trước yêu cầu trước khi chuyển hướng đến blocklet trên"},nonProvider:{title:"Cảnh báo Thay đổi Động cơ",description:"Nếu bạn thay đổi động cơ thành none, trang hiện tại của bạn có thể không hoạt động đúng vì động cơ trước đó sẽ bị dừng, bạn có chắc chắn tiếp tục không?",confirm:"Tôi hiểu, tiếp tục"},validation:{urlRequired:"URL là bắt buộc",redirectCodeRequired:"Mã chuyển hướng bắt buộc",didRequired:"Blocklet là bắt buộc",pathPrefixTooLong:"Tiền tố URL không được vượt quá {length} ký tự",pathPrefixCannotBeEmpty:"Tiền tố URL không được để trống",domainRequired:"Yêu cầu tên miền máy chủ",invalidUrl:"Vui lòng cung cấp một URL hợp lệ",pathPrefixRequired:"Yêu cầu tiền tố URL",redirectUrlRequired:"Yêu cầu URL chuyển hướng",rewriteUrlRequired:"Cần phải viết lại URL"},domain:{addSite:"Thêm Trang",validate:{emptyTip:"Tên miền trang web không thể để trống",suffixTip:"Tên miền trang web không thể bao gồm {suffix}"},add:{title:"Thêm Tên Miền",description:"Vui lòng cung cấp tên miền hợp lệ",confirm:"Thêm",cancel:"Hủy bỏ",blocklet:"Chọn Blocklet",redirect:"Hướng dẫn chuyển hướng lưu lượng?",port:"Cổng nào mà trình xử lý yêu cầu của bạn cần nghe?",portTip:"Mặc định là cổng chính của trình xử lý yêu cầu, bạn có thể tùy chỉnh điều này",type:"Người điều khiển giao thông",component:"Chọn thành phần",pageGroup:"Nhóm Trang",pageGroupTip:"Thành phần này có thể hiển thị bất kỳ nhóm trang nào được liệt kê ở trên, để trống để hiển thị tất cả các trang"},update:{title:"Cập nhật tên miền trang web",label:"Tên miền trang web",description:"Vui lòng cung cấp một tên miền trang web hợp lệ"},setup:{tipStart:"Thêm các bản ghi DNS cho tên miền",tipEnd:"Theo hướng dẫn dưới đây",recordType:"Loại Bản ghi",recordValue:"Giá trị ghi"},verify:{ok:"Giải quyết tên miền bình thường",notResolved:"Miền này không được giải quyết hoặc truy cập, vui lòng kiểm tra cấu hình DNS của bạn."},https:{ok:"Tên miền này đã kích hoạt https",bad:"Tên miền này chưa bật https"},delete:{title:"Xóa trang",description:'Bằng cách xác nhận, bạn sẽ xóa trang web "{name}" hiện có của bạn. Nhập "{name}" vào phần dưới và chọn Xóa để hoàn tất thay đổi, hoặc chọn Hủy bỏ nếu bạn muốn giữ lại trang web của bạn.',confirm_desc:"Vui lòng nhập {name} để xác nhận"}},domainAlias:{nftDomain:"Cấu hình tự động với Domain DID",showTipHint:"Làm thế nào để cấu hình giải quyết tên miền?",add:{title:"Thêm tên miền bổ sung",domainDescription:"Vui lòng cung cấp tên miền hợp lệ",forceTip:"Thêm bắt buộc nếu tên miền đã tồn tại",helperText:"Nếu nhập một URL HTTP hoặc HTTPS, nó sẽ tự động chuyển đổi thành tên miền.",isDidDomainError:"Miền này là Miền DID. Vui lòng thêm nó bằng phương pháp cấu hình miền tự động."},addCustomDomain:{name:"Tên miền tùy chỉnh"},addDomainNFT:{showNFT:"Cấu hình tên miền tự động",tips:"Bạn có thể nhập một miền được mua từ DID Domain. Nếu phát hiện miền DID Domain, bạn phải trình bày NFT DID Domain để tiếp tục.",connect:{title:"Xin vui lòng hiển thị NFT Domain của bạn",scan:"Quét mã QR sau bằng Ví DID để ủy quyền cho Blocklet sử dụng miền của bạn",confirm:"Xác nhận trên Ví DID của bạn",success:"Xác nhận thành công"},buyTip:"DID Domain sẽ thực hiện phân giải tên miền tự động, không cần phải cấu hình thủ công và ứng dụng sẽ tự động cập nhật bản ghi phân giải của tên miền khi cần thiết. Nếu bạn chưa có DID Domain NFT,",buy:"Mua ngay!"},delete:{title:"Xóa",description:"Sau khi xóa bí danh miền, việc truy cập vào bí danh đó có thể không được xử lý đúng cách."}},domainSecurity:{title:"Bảo mật miền",cors:{title:"Tên miền CORS được phép",description:'Danh sách tên miền có thể gửi yêu cầu gốc chéo đến {name}, phân tách bằng dấu phẩy, sử dụng "*" để cho phép bất kỳ ai, điều này không được khuyến nghị',domainInvalid:"Vui lòng nhập một danh sách tên miền hợp lệ"}},rule:{add:{title:"Thêm Ánh xạ địa chỉ URL",confirm:"Thêm",pathPrefix:"Tiền tố URL là gì?",pathPrefixTip:"Nếu bạn đặt tiền tố là '/tiền-tố-của-tôi', thì tất cả các yêu cầu bắt đầu bằng tiền tố đó sẽ được định tuyến đến khối đã được cấu hình",blocklet:"Blocklet nào sẽ xử lý những yêu cầu đó?",port:"Cổng nào của blocklet sẽ xử lý các yêu cầu?",portTip:"Mặc định là cổng chính của blocklet, nếu blocklet của bạn lắng nghe trên nhiều cổng, bạn có thể tùy chỉnh điều này",responseType:"Loại phản hồi",responseBody:"Nội dung phản hồi",responseBodyTip:"Dán nội dung đáp ứng của bạn vào đây, không vượt quá 4096 ký tự",responseBodyRequired:"Nội dung phản hồi không thể trống"},delete:{title:"Xóa Liên kết URL",description:'Bằng cách xác nhận, bạn sẽ xóa Bản đồ URL "{name}" hiện có của bạn. Nhập "{name}" vào bên dưới và chọn Xóa để hoàn tất thay đổi hoặc chọn Hủy nếu bạn muốn giữ Bản đồ URL của bạn.',confirm_desc:"Vui lòng nhập {name} để xóa",cancel:"Hủy"},update:{title:"Cập nhật Gán địa chỉ URL",confirm:"Có, Cập nhật",cancel:"Hủy bỏ"}},cert:{name:"Tên Chứng chỉ",domain:"Tên miền",action:"Hành động",commonName:"Tên thông thường",boundDomains:"Tên miền",source:"Nguồn",expired:"Hết hạn",leftDays:"ngày còn lại",issuedOn:"Được phát hành vào",expiryOn:"Hết hạn vào",fingerprintAlg:"Thuật toán Vân tay",validityPeriod:"Thời hạn hiệu lực",matchedSites:"Các trang phù hợp",upload:"Tải lên thủ công",publicCertHelperText:"Chứng chỉ công cộng có thể được tải xuống",nonPublicCertHelperText:"Không thể tải xuống chứng chỉ không công khai",protectedCertHelperText:"Chứng chỉ bảo vệ không thể chỉnh sửa",unprotectedCertHelperText:"Chứng chỉ chưa được bảo vệ có thể được chỉnh sửa",issuing:"Đang tạo chứng chỉ",sourceTypes:{upload:"Tải lên bằng tay",lets_encrypt:"Hãy Mã hóa"},table:{nodata:"Không có dữ liệu"},delete:{title:"Xóa Chứng chỉ",description:"Xác nhận xóa chứng chỉ của miền {domain}? Xóa nó có thể ảnh hưởng đến các dịch vụ liên quan. Vui lòng xác nhận rằng nó an toàn trước khi tiếp tục xóa.",confirm:"Xác nhận"},nginx:{title:"Cập nhật Chứng chỉ",titleAdd:"Thêm Chứng chỉ",pem:"Tập tin chứng chỉ SSL",pemTip:'Vui lòng thả tệp chứng chỉ máy chủ của bạn vào đây, tệp nên kết thúc bằng ".pem" hoặc ".crt"',key:"Tệp Khóa Riêng",keyTip:"Vui lòng thả tệp khóa riêng của máy chủ của bạn vào đây, nó phải kết thúc bằng '.pem' hoặc '.key'",confirm:"Lưu",cancel:"Hủy",invalidFile:"Bạn đã chọn một tệp không hợp lệ",empty:"Chưa chọn tệp nào",source:"Nguồn",sourceTypes:{upload:"Tải lên thủ công",lets_encrypt:"Hãy mã hóa"}},detail:{title:"Chi tiết Chứng chỉ"},genLetsEncryptCert:{title:"Tạo chứng chỉ Let's Encrypt",dnsTip:"Vui lòng đảm bảo tên miền đã trỏ đến Máy chủ Blocklet hiện tại.",description:"Thêm một chứng chỉ sẽ làm cho dịch vụ an toàn hơn, và Blocklet Server sẽ tự động gia hạn chứng chỉ trước khi hết hạn."}},gateway:{reqLimit:{status:{true:"Đã kích hoạt",false:"Vô hiệu hóa"},switchLabel:"Giới hạn yêu cầu",rate:"Giới hạn yêu cầu ({rate} yêu cầu/giây)",ipHeaderLabel:"Tùy chỉnh tiêu đề IP của khách hàng (Tùy chọn)",ipHeaderDesc:"Nếu Máy chủ Blocklet đang chạy sau một số proxy, bạn có thể thiết lập tiêu đề IP thực của khách hàng ở đây. Tùy chọn, để trống để sử dụng mặc định."},cacheEnabled:{switchLabel:"Bật Bộ nhớ Cache Cổng"}}},noMatch:{desc:"Chúng tôi không thể tìm thấy trang bạn đang tìm kiếm"},health:{connectionErrorTip:"Blocklet Server không thể kết nối với mạng, vui lòng kiểm tra xem Blocklet Server đã bị dừng hoặc có vấn đề về mạng",connectionRecoveryTip:"Đã khôi phục kết nối với máy chủ Blocklet",connectionStoppedTip:"Máy chủ Blocklet đã được tắt",wrongAccessUrlTip:"Địa chỉ truy cập máy chủ Blocklet không đúng, vui lòng sử dụng địa chỉ truy cập đúng"},debug:{title:"Máy chủ Blocklet của bạn đã hoạt động!"},team:{invite:{action:"Mời Mới",setting:"Cài đặt Mời",enabled:"Cho phép bất kỳ người dùng nào mời người dùng mới vào blocklet này",disabled:"Chỉ chủ sở hữu/quản trị viên mới có thể mời người dùng mới vào blocklet này",inviter:"Được Mời Bởi"},add:"Thêm Mới",member:{name:"Tên",passport:"Hộ chiếu",passports:"Hộ chiếu",lastLogin:"Lần đăng nhập cuối",lastLoginIp:"IP đăng nhập gần nhất",source:"Đăng ký Nguồn",source_derived:"Bắt nguồn từ OAuth",source_wallet:"Ví DID",filter:"Lọc theo",blockAccess:"Cấm đăng nhập",blockAccessDescription:"Người dùng sẽ không thể kết nối với ứng dụng này",allowAccess:"Cho phép Đăng nhập",allowAccessDescription:"Người dùng sẽ có thể kết nối với ứng dụng này",updateRole:"Cập nhật Vai trò",removeUser:"Xóa Người dùng",removeUserDescription:'Xác nhận xóa người dùng "{name}"?',revokePassport:"Thu hồi Hộ chiếu",revokePassportDescription:"Một khi hộ chiếu bị thu hồi, người giữ hộ chiếu không thể sử dụng nó để đăng nhập lại, bạn có chắc chắn muốn tiếp tục không?",enablePassport:"Kích hoạt Hộ chiếu",enablePassportDescription:"Sau khi hồ sơ hủy bỏ được kích hoạt lại, chủ sở hữu hộ chiếu có thể sử dụng nó để đăng nhập lại, bạn có chắc chắn muốn tiếp tục không?",passportPermissionTitle:"Hộ chiếu có các quyền sau:",search:"Tìm Kiếm Thành Viên",onlyApprovedMember:"Chỉ Hiện Được Phê Duyệt",inviteDialog:{createInviteLink:"Tạo liên kết mời",createSuccessTip:"Liên kết mời đã được tạo thành công, nhấn để sao chép và gửi liên kết cho thành viên được mời. Vui lòng lưu ý rằng liên kết mời này không thể sử dụng lại và sẽ hết hạn vào {expireDate}."},error:{passportEmpty:"Hộ chiếu không được để trống"},connectedAccounts:"Tài khoản Đã kết nối",connections:"Kết nối",federated:"Liên minh",switch:{did:"Chuyển đổi DID",profile:"Chuyển đổi Hồ sơ",passport:"Đổi Hộ chiếu"},settings:{notification:"Thông báo",email:"Gửi email cho tôi khi có một số sự kiện xảy ra",wallet:"Gửi thông báo đến ví của tôi khi có một số sự kiện xảy ra",phone:"Gửi tin nhắn đến tôi khi các sự kiện xảy ra",webhook:"Webhooks",add:"Thêm webhook mới",url:"URL tùy chỉnh",slack:"Slack Webhook",tested:"Tin nhắn kiểm tra đã được gửi"},activeUserSessions:"Phiên người dùng hoạt động",forceLogout:"Đăng xuất bắt buộc",forceLogoutDescription:"Xác nhận đăng xuất buộc người dùng này?",openProfile:"Xem hồ sơ",removeUserSuccess:"Người dùng đã bị xóa thành công"},transferNode:{name:"Chuyển quyền sở hữu",inviteDialog:{title:"Chuyển máy chủ Blocklet",tips:{progress:"Việc chuyển đổi máy chủ cần được người nhận chấp nhận để hoàn tất hoạt động chuyển đổi và một khi người nhận đã chấp nhận, bạn không thể đăng nhập vào máy chủ với hộ chiếu hiện tại nữa.",newOwnerPermissions:"Chủ sở hữu mới sẽ có quyền quản lý tất cả các hoạt động như thành viên, hộ chiếu và Blocklets.",revoke:'Nếu bạn muốn rút lại lời mời chuyển giao, bạn có thể xóa liên kết mời trên trang "Nhóm -> Thành viên -> Mời".'},createInviteLink:"Tạo Liên kết Mời",createSuccessTip:"Liên kết mời đã được tạo thành công, nhấp để sao chép và gửi liên kết đến thành viên được mời, lưu ý rằng liên kết mời này không thể tái sử dụng và sẽ hết hạn vào {expireDate}."},delegateDialog:{title:"Yêu cầu ủy quyền",scan:"Quét mã QR sau đây bằng ví DID của bạn để ủy quyền server chuyển quyền sở hữu NFT.",confirm:"Xác nhận trên ví DID của bạn",success:"Xác thực thành công"}},transferApp:{name:"Chuyển Quyền Sở Hữu",transferDialog:{title:"Ứng dụng Chuyển khoản",tips:{progress:"Yêu cầu chuyển tiền phải được người nhận chấp nhận để hoàn tất thao tác chuyển tiền, và một khi người nhận chấp nhận, bạn không thể đăng nhập vào ứng dụng bằng hộ chiếu hiện tại.",newOwnerPermissions:"Chủ sở hữu mới sẽ có quyền quản lý tất cả các hoạt động như thành viên, hộ chiếu và cài đặt."},createTransferLink:"Tạo liên kết Chuyển khoản",createSuccessTip1:'Liên kết chuyển nhượng đã được tạo thành công, người được mời phải sử dụng <a style="color: rgb(29, 193, 199)" target="_blank" href="https://www.didwallet.io/">DID Wallet</a> để nhận quyền sở hữu ứng dụng',createSuccessTip2:"Vui lòng nhấp để sao chép và gửi liên kết đến thành viên được mời, lưu ý rằng liên kết chuyển này không thể tái sử dụng và sẽ hết hạn vào ngày {expireDate}. Liên kết chuyển của bạn chỉ được hiển thị một lần và sẽ không thể xem được sau khi đóng hộp thoại này.",createSuccessTip3:"Sau khi chuyển thành công, ứng dụng sẽ tự động khởi động lại để thay đổi có hiệu lực.",link:"Liên kết chuyển tiền",iKnow:"Tôi đã sao chép và lưu liên kết"},connectDialog:{title:"Yêu cầu Xin phép",scan:"Quét mã QR dưới đây bằng DID Wallet để ủy quyền ứng dụng thực hiện chuyển quyền sở hữu.",confirm:"Xác nhận trên ví DID của bạn",success:"Xác thực thành công"},receiveDialog:{title:"Nhận Quyền Sở Hữu Ứng Dụng",scan:"Quét mã QR bên dưới bằng Ví DID để nhận quyền sở hữu ứng dụng.",confirm:"Xác nhận trên ví DID của bạn",success:"Nhận Quyền Sở Hữu Thành Công"},successTitle:"Bạn đã trở thành chủ sở hữu mới của ứng dụng này",visitDashboard:"Truy cập Bảng điều khiển Ứng dụng"},permission:{create:{title:"Tạo Quyền",description:"Định dạng: <hành động>_<tài nguyên>"},delete:{title:"Xóa Quyền",description:"Xác nhận xóa {name}?"},error:{actionEmpty:"Hành động không thể trống",resourceEmpty:"Tài nguyên không thể trống",permissionTooLong:"Quyền không được vượt quá {length} ký tự",descriptionTooLong:"Mô tả không được vượt quá {length} ký tự"}},passport:{create:{title:"Tạo hộ chiếu",titleTip:"Tiêu đề không thể chỉnh sửa sau khi tạo, nên giới hạn trong 14 chữ cái"},bind:{title:"Gán Phân Quyền",roleTip:"Bạn sẽ nhận được tất cả các quyền của hộ chiếu đã chọn sau khi ràng buộc",permissionTip:"Bạn sẽ nhận được các quyền đã chọn sau khi ràng buộc",transferLeftTitle:"Tất cả các quyền",transferRightTitle:"Được cấp quyền"},delete:{title:"Xóa Hộ chiếu",description:"Các hộ chiếu mà người dùng đang sở hữu sẽ mất mọi quyền sau khi bị xóa. Bạn có chắc chắn muốn tiếp tục?"},error:{titleEmpty:"Tiêu đề không thể bỏ trống",titleTooLong:"Tiêu đề không được vượt quá {length} ký tự",descriptionEmpty:"Mô tả không thể để trống"},issuance:{pending:"Đang chờ",create:{title:"Tạo liên kết"},delete:{title:"Xóa Liên kết Nhận",description:"Xác nhận xóa {link}?"}},issue:"Phát hành hộ chiếu",disableIssuance:"Vô hiệu hóa Cấp phát Hộ chiếu",enableIssuance:"Bật Phát Hành Hộ Chiếu",disableIssuanceTip:'Các hoạt động "Cấp hộ chiếu", "Mời thành viên" và các hoạt động khác sẽ bị vô hiệu',enableIssuanceTip:"Cấp Hộ chiếu",trustedPassportIssuers:"Nhà cấp hộ chiếu đáng tin cậy",trustedIssuers:"Người phát hành đáng tin cậy",trustedFactories:"Bộ sưu tập NFT đáng tin cậy",trustedFactoriesTip:"Quản lý bộ sưu tập NFT đáng tin cậy có thể được sử dụng để trao đổi cho hộ chiếu",searchFactoryAddress:"Tìm bộ sưu tập DID",configFactories:"Cấu hình Bộ sưu tập NFT Đáng tin cậy",configFactoriesTip:"Cho phép người dùng đổi NFT cho hộ chiếu",factoryAddress:"Địa chỉ Bộ sưu tập NFT",factory404:"Bộ sưu tập NFT không tìm thấy",factoryAddressTip:"Địa chỉ bộ sưu tập NFT phải tồn tại trên ArcBlock Main Chain",role:"Loại hộ chiếu",ttl:"Chính sách hết hạn Hộ chiếu",ttlNever:"Không bao giờ hết hạn",ttlMint:"Kể từ khi mua NFT",ttlExchange:"Kể từ Trao đổi Hộ chiếu",ttlNeverTip:"Hộ chiếu sẽ có giá trị cho đến khi bị thu hồi",ttlMintTip:"Hộ chiếu sẽ có giá trị từ khi mua NFT cho đến khi bạn chỉ định thời gian (ttl) hoặc thu hồi",ttlExchangeTip:"Hộ chiếu sẽ hợp lệ từ thời điểm người dùng đổi thành công cho đến khi bạn chỉ định ttl hoặc thu hồi",ttlTip:'"365d" có nghĩa là 365 ngày, bạn cũng có thể sử dụng "30 ngày" hoặc "24 giờ"',validUntil:"Có hiệu lực đến: {date}",externalPassport:"Hộ chiếu ngoại",notTrustedIssuerTip:"Hộ chiếu không thể được sử dụng vì người cấp không có trong danh sách người cấp phát đáng tin cậy",issuerDid:"DID NGƯỜI CÃƠ QUAN PHÁT HÀNH",addNodeToTrustedIssuers:"Thêm máy chủ hiện tại như một nhà phát hành hộ chiếu đáng tin cậy",revoked:"Rút lại",noPermission:"Không có quyền để thực hiện thao tác này",shouldNotDeleteCurrent:"Bạn không thể thu hồi hộ chiếu đang sử dụng hiện tại",mappingRule:"Quy tắc ánh xạ",defaultRule:"Luật mặc định",search:"Tìm Hộ Chiếu",searchIssuerDid:"Tìm kiếm Nhà phát hành DID",issueBy:"Vấn đề bởi {name}",configColor:"Cấu hình Màu Hộ Chiếu",configColorTip:"Tùy chỉnh màu hộ chiếu",color:"Màu Hộ Chiếu",description:"Sử dụng hộ chiếu này để kết nối {teamName} là {title}",displayBuiltin:"Được tích hợp sẵn",displayCustom:"Tùy chỉnh",typesTip:"Tùy chỉnh các loại hộ chiếu, phân chia bằng dấu phẩy",issuanceDate:"Ngày phát hành: {date}"},inviting:{link:"Liên kết Mời",inviter:"Người mời",delete:{title:"Xóa Liên kết Mời",description:"Xác nhận xóa {link}?"},disabledTip:"Lời mời không được kích hoạt"},whoCanAccess:{all:{title:"Dễ tiếp cận cho tất cả"},owner:{title:"Chỉ chủ sở hữu"},invited:{title:"Chỉ người dùng được mời"}}},launcher:{provider:"Nhà cung cấp",adminUrl:"URL"},session:{blockAccess:"Bạn đã bị chặn khỏi truy cập vào máy chủ này"},launchBlocklet:{appInfo:"Thông tin ứng dụng",appInfoDesc:"Xác nhận thông tin ứng dụng",author:"Tác giả ứng dụng: {author}",setup:"Cài đặt Blocklet",redirect:"Chuyển hướng",alreadyRunning:"Ứng dụng {name} đã được chạy trên máy chủ Blocklet này",alreadyInstalled:"Ứng dụng {name} đã được cài đặt trên máy chủ Blocklet này",alreadyExists:"Ứng dụng này đã tồn tại, đang chuyển hướng...",purchased:"Đã Mua",purchase:"Mua hàng",nextStep:"Bước Tiếp theo",agreement:"Thỏa thuận Cấp phép",agreeAll:"Đồng ý & Tiếp tục",installing:"Đang cài đặt {appName} trên {serverName}, việc này có thể mất vài phút để hoàn thành, xin vui lòng đợi...",redirecting:"{appName} đã được cài đặt thành công, đang khởi động...",start:"Khởi động",launch:"Cài đặt Blocklet vào máy chủ",launchSuccess:"{appName} đã được khởi chạy thành công!",installSuccess:"Blocklet đã được cài đặt và khởi chạy thành công trên {serverName}",openInRegistry:"Xem trong Blocklet Store",subTitle:"Sẵn sàng cài đặt Blocklet {appName} trên {serverName}",installingSubTitle:"{appName} đang được cài đặt",access:"Mở ứng dụng",viewApplication:"Xem Ứng Dụng",newVersion:"Phiên bản mới",newVersionDesc:"Ứng dụng đã tồn tại, nhưng phiên bản hiện tại có thể nâng cấp",upgradeNow:"Nâng cấp Ngay",later:"Sau",introduction:"Giới thiệu",welcome:"Chào mừng bạn đến với Trình hướng dẫn Khởi chạy Blocklet",accept:"Tôi đồng ý với EULA của Blocklet",license:"Giấy phép ứng dụng",next:"Đồng ý với EULA và tiếp tục",purchaseApp:"Mua Blocklet",setupAppDesc:"Khởi tạo Blocklet của bạn",launched:"Hoàn thành",confirmInstall:"Xác nhận Cài đặt",dialog:{title:"Trở thành chủ sở hữu ứng dụng",nftFreeDescription:"Vui lòng giới thiệu không gian NFT ứng dụng và tạo tài khoản ứng dụng để tiếp tục",nftPaidDescription:"Vui lòng giới thiệu NFT không gian ứng dụng và mua NFT ứng dụng để tiếp tục",freeDescription:"Vui lòng tạo tài khoản ứng dụng để tiếp tục",paidDescription:"Vui lòng trình diễn mua NFT ứng dụng và tạo tài khoản ứng dụng để tiếp tục",confirm:"Xác nhận trong ví DID của bạn",success:"Xác thực thành công",authorizationTimeout:"Hết thời gian ủy quyền"},waiting:{verifying:"Đang xác minh siêu dữ liệu ứng dụng...",downloading:"Đang tải xuống gói ứng dụng...",downloadingComponent:"Đang tải xuống {name}",extractingComponent:"Trích xuất {name}",extracting:"Đang trích xuất gói ứng dụng...",installing:"Đang cài đặt các thành phần ứng dụng...",installed:"Đã cài đặt",starting:"Bắt đầu ứng dụng...",done:"Đang chờ ứng dụng sẵn sàng..."},error:{loadMetaFailed:"Không thể tải thông tin ứng dụng",appMetaNotFound:"Không tìm thấy thông tin cho ứng dụng này",downloadFailed:"Không tải được ứng dụng, vui lòng thử lại",installFailed:"Không cài đặt được ứng dụng, vui lòng thử lại",startFailed:"Không thể khởi động ứng dụng, vui lòng thử lại",launchFailed:"Không khởi động được ứng dụng, vui lòng thử lại",installedButStopped:"Ứng dụng được cài đặt thành công, nhưng không thể khởi động. Bạn có thể khởi động nó thủ công sau khi giải quyết các vấn đề chặn",installedButError:"Ứng dụng đã được cài đặt thành công, nhưng không khởi động được",restoreFailed:"Không thể khôi phục ứng dụng, vui lòng thử lại",resourceBlocklet:"Không thể khởi chạy khối chức năng này trực tiếp, nhưng bạn có thể thêm khối chức năng này vào ứng dụng hiện có."},steps:{introduction:"Giới thiệu",installApp:"Cài đặt Ứng dụng",purchaseSpace:"Mua Không gian",prepareSpace:"Chuẩn bị không gian"},installRelatedComponents:"Cài đặt các Blocklet liên quan"},issuePassport:{title:"Nhận Hộ chiếu",description:"Sử dụng ví DID để nhận hộ chiếu được cấp bởi {name}",dialog:{scan:"Sử dụng Ví DID của bạn để yêu cầu hộ chiếu",confirm:"Xác nhận trên Ví DID của bạn",success:"Hộ chiếu đã được thêm vào ví của bạn thành công",loginWithPassport:"Kết nối với hộ chiếu này",autoClose:"Trang sẽ tự đóng sau {seconds}s",autoJump:"Trang sẽ tự động chuyển đến trong {seconds}s"}},lostPassport:{title:"Hộ chiếu bị mất",description:"Chủ sở hữu {name} có thể quét mã QR để lấy hộ chiếu, thành viên vui lòng liên hệ với chủ sở hữu để cấp lại hộ chiếu",dialog:{title:"Phục hồi Hộ chiếu",scan:"Sử dụng Ví DID của bạn để khôi phục hộ chiếu",confirm:"Xác nhận trên Ví DID của bạn",success:"Hộ chiếu đã được thêm vào ví của bạn"},return:"Kết nối với hộ chiếu",selectPassport:"Chọn hộ chiếu",receivePassport:"Nhận hộ chiếu"},invite:{message:"{name} mời bạn làm {role} của {dapp}",success:"Bạn đã tham gia {dapp} thành công",receive:"Nhận với",validUntil:"Hiệu lực đến:",viewPermission:"Quyền Xem",emptyPermission:"Quyền trống rỗng",open:"Mở",description:{step1:"Tải về và cài đặt {wallet} của bạn",step2:"Nhấp vào nút bên trên để nhận hộ chiếu",step3:"Đăng nhập vào {dapp} bằng hộ chiếu đã nhận được"},transferNFTDialog:{title:"Chấp nhận máy chủ Blocklet {name}",scan:"Kết nối Launcher để hoàn tất việc nhận dữ liệu từ máy chủ Blocklet.",confirm:"Xem lại thao tác này trên Ví DID của bạn",success:"Kết nối thành công, đang chờ xác nhận nhận từ Máy chủ"}},receive:{dialog:{title:"Sử dụng ví DID của bạn để nhận hộ chiếu",scan:"Kết nối Ví DID của bạn để nhận hộ chiếu",confirm:"Xác nhận trên ví DID của bạn",success:"Bạn đã kết nối thành công"}},navigation:{navigation:"Điều hướng",actionFailed:"Hành động thất bại",form:{title:"Tiêu đề",titlePlaceholder:"Vui lòng nhập tiêu đề điều hướng",titleTooLong:"Độ dài tiêu đề phải nhỏ hơn {len}",icon:"Biểu tượng điều hướng",iconPlaceholder:"Vui lòng nhập biểu tượng điều hướng",invalidIcon:"Biểu tượng không hợp lệ",findMoreIcon:"Tìm thêm biểu tượng",link:"Liên kết",linkPlaceholder:"Vui lòng nhập liên kết điều hướng",invalidLink:"Liên kết không hợp lệ",component:"Thành phần",componentPlaceholder:"Vui lòng chọn thành phần điều hướng",role:"Vai trò",rolePlaceholder:"Vui lòng chọn vai trò điều hướng",locale:"Cấu hình",localePlaceholder:"Vui lòng nhập vị trí cần thêm",localeExists:"{value} đã tồn tại"},action:{add:"Thêm điều hướng",addSub:"Thêm điều hướng phụ",edit:"Chỉnh sửa điều hướng",hide:"Ẩn điều hướng",show:"Hiển thị điều hướng",del:"Xóa điều hướng",new:"Mới",noAddSub:"Thành phần đã gỡ cài đặt không thể thêm điều hướng phụ",noEdit:"Không thể chỉnh sửa thành phần đã gỡ cài đặt",noDel:"Không cho phép xóa điều hướng tích hợp sẵn",reset:"Đặt lại",restConfirmTitle:"Bạn có muốn xóa tất cả các điều hướng tùy chỉnh?",restConfirmDesc:"Sau khi làm sạch, điều hướng sẽ được khôi phục về cấu hình mặc định ban đầu của Blocklet",resetSuccessful:"Khôi phục thành công"},access:"Truy cập",members:"Thành viên",passport:"Hộ chiếu",analytics:"Phân tích",dashboard:"Bảng điều khiển",studio:"Studio",blockletService:"Dịch vụ Blocklet"},storage:{spaces:{title:"DID Spaces",tips:"Mẹo",label:"Nhập Cổng DID Spaces",connected:{title:"Các Không gian DID đã Kết nối",tag:"Kết nối"},connectedWithName:"Bạn đã kết nối thành công với {name}",addedWithName:"Bạn đã thêm {name} thành công",connects:"Kết nối",reconnect:"Kết nối lại",addressCannotEmpty:"Địa chỉ không được để trống",addressNotValid:"{url} không phải là một địa chỉ hợp lệ",authorize:{title:"Kết nối {appName} với DID Spaces",scan:"Sử dụng ví DID của bạn để quét mã QR bên dưới để cho phép ứng dụng {appName} kết nối với không gian DID",success:"Kết nối thành công"},provideNFT:{title:"Vui lòng hiển thị DID Spaces NFT cho {appName}",scan:"Sử dụng ví DID của bạn để quét mã QR dưới đây để cho phép ứng dụng {appName} hiển thị không gian NFT DID",success:"Kết nối thành công"},backup:{title:"Sao lưu",records:"Sao lưu Hồ sơ"},autoBackup:{title:"Sao lưu tự động",enabled:"Sao lưu tự động đã được bật",disabled:"Sao lưu tự động đã tắt"},autoCheckUpdate:{title:"Kiểm tra tự động thông báo phiên bản mới",enabled:"Tự động kiểm tra phiên bản mới đã được kích hoạt",disabled:"Tự động kiểm tra phiên bản mới đã tắt"},backupSuccessfully:"Sao lưu thành công",restore:"Khôi phục",restoreSuccessfully:"Khôi phục thành công",gateway:{title:"Cổng",select:"Chọn một Không gian DID",add:{title:"Thêm Không gian DID",label:"Nhập URL của Không gian DID",failed:"Thêm DID Spaces thất bại",invalidUrl:"URL cổng không gian DID không hợp lệ",duplicate:"DID Space ({name}) đã tồn tại"},delete:{title:"Xóa cổng kết nối",succeeded:"Xóa Dịch vụ DID Thành công {name}.",failed:"Xóa cổng không thành công",failedForSelected:"Không thể xóa DID Spaces đã chọn"},connect:{title:"Kết nối DID Spaces",add:"Kết nối với không gian DID ngay bây giờ",addTips:"Bạn chưa kết nối với bất kỳ Không gian nào",switch:"Chuyển đổi không gian DID",switchTips:"Bạn đã kết nối với {name}",connected:"Đã kết nối"},switch:{failedForMismatchSpace:"Vui lòng kết nối đến Không gian chính xác {name}"},connectTo:"Kết nối với DID Spaces"},strategy:{title:"Chiến lược sao lưu",autoBackup:"Auto backup",backupNow:"Sao lưu ngay bây giờ",viewBackupFiles:"Xem tệp sao lưu"},progress:{title:"Tiến trình sao lưu"},record:{title:"Sao lưu hồ sơ",emptyData:"Không có hồ sơ"},notYet:"Bạn chưa có sao lưu đang diễn ra...",connect:{now:"Kết nối ngay bây giờ",title:"Kết nối DID Spaces",provider:"Cung cấp Không gian DID của bạn để bắt đầu sao lưu",providerForStorage:"Cung cấp DID Spaces của bạn để lưu trữ dữ liệu",useWallet:"Kết nối với Ví DID",useWalletReconnect:"Kết nối lại với Ví DID",useSpaceGateway:"Kết nối bằng cổng thành phố DID Spaces",useSpaceGatewayReconnect:"Kết nối lại bằng cổng DID Spaces",switchToSpace:"Chuyển sang không gian",switchToSpaceSucceeded:"Chuyển sang Không gian{name}",succeeded:"Bạn đã kết nối thành công với không gian DID",disconnect:"Ngắt kết nối"},disconnected:{tag:"Ngắt kết nối",reconnectNow:"Kết nối lại ngay bây giờ"}},appLevel:{title:"Lưu trữ ứng dụng",description:"Tất cả dữ liệu được tạo ra bởi ứng dụng được lưu trữ trên DID Space này"}},log:{lastDays:{1:"1 Ngày cuối cùng",7:"Tuần trước"}},oauth:{commonSettings:"Cài đặt chung",save:"Lưu",saveSuccess:"Lưu thành công",saveFailed:"Lưu thất bại",issued:"Được phát hành",thirdPartyLogin:"Đăng nhập bằng bên thứ ba",alreadyBindOAuth:"Đã kết nối đăng nhập bên thứ ba",alreadyBindWallet:"Đã ràng buộc ví DID",auth0:{enable:"Cho phép đăng nhập Auth0",domain:"Tên miền",domainDescription:"Yêu cầu tên miền của Auth0",clientId:"Mã khách hàng",clientIdDescription:"Yêu cầu clientId của Auth0",clientSecret:"Bí mật của khách hàng",clientSecretDescription:"Secret Client ứng dụng OAuth Auth0 là bắt buộc"},comingSoon:"Có thêm phương thức đăng nhập đang được xây dựng",moreLogin:"Đăng nhập thêm",federated:"Đăng nhập liên kết",runTest:"Kiểm tra",github:{enable:"Bật đăng nhập Github",clientId:"ID Khách hàng",clientIdDescription:"Yêu cầu clientId của ứng dụng OAuth trên Github",clientSecret:"Bí Mật Khách Hàng",clientSecretDescription:"Bí mật ứng dụng OAuth của Github là bắt buộc"},google:{enable:"Kích hoạt đăng nhập Google",clientId:"Mã khách hàng",clientIdDescription:"Yêu cầu clientId của ứng dụng Google OAuth",clientSecret:"Bí Mật Khách Hàng",clientSecretDescription:"ClientSecret của ứng dụng Google OAuth là bắt buộc"},apple:{enable:"Bật đăng nhập Apple",teamId:"ID nhóm",teamIdDescription:"Cần có ID nhóm ứng dụng OAuth của Apple",serviceId:"ID dịch vụ",serviceIdDescription:"Cần có ID Dịch vụ ứng dụng OAuth của Apple",keyId:"Mã khóa",keyIdDescription:"Cần ID ứng dụng Apple OAuth",authKey:"Khóa Auth",authKeyDescription:"Cần Khoá xác thực ứng dụng Apple OAuth",bundleId:"Bundle ID",bundleIdDescription:"ID gói ứng dụng Apple OAuth là bắt buộc"},oauth:"Đăng nhập bên thứ ba"},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"Hết hạn"},loadFailed:"Thử lại!"},desktop:{tips:{success:"Gói đăng ký sẽ hết hạn sau {validity}",warning:"Đăng ký sẽ hết hạn sau {validity}",error:"Đã hết hạn đăng ký"},loading:"Tải đăng ký...",loadFailed:"Không tải được thông tin đăng ký, vui lòng thử lại!",nextInvoice:"Hóa đơn tiếp theo: {date}"}},analytics:{trend:"Xu hướng",detail:"Hỏng",traffic:{totalRequests:"Tổng số yêu cầu",validRequests:"Các yêu cầu thành công",failedRequests:"Yêu cầu thất bại",uniqueVisitors:"Lượt truy cập duy nhất",uniqueFiles:"URL duy nhất",uniqueReferrers:"Người giới thiệu duy nhất",uniqueNotFound:"404 Độc nhất",uniqueStaticFiles:"Tập tin tĩnh duy nhất",logSize:"Kích thước Log",bandwidth:"Băng thông"},runtime:"Thời gian chạy"},federated:{inviteJoinFederatedLogin:"Mời tham gia đăng nhập liên kết",inviteJoinFederatedLoginDescription:"Sao chép địa chỉ sau đây và điền vào ứng dụng nơi bạn cần tham gia để đăng ký đăng nhập liên minh.",federatedLogin:"Đăng nhập liên kết",joinFederatedLogin:"Tham gia đăng nhập phân liên hợp",joinFederatedLoginDescription:"Vui lòng nhập địa chỉ đăng nhập liên kết được cung cấp bởi Master Blocklet để tham gia đăng nhập liên kết",quitFederatedLogin:"Thoát khỏi đăng nhập liên minh",quitFederatedLoginDescription:"Sau khi thoát khỏi đăng nhập được liên kết, đăng nhập thông thường luôn có sẵn",federatedJoinAppUrl:"Đăng nhập bằng đăng ký kết hợp trên appUrl",federatedJoinAppUrlRequired:"Vui lòng nhập đăng nhập liên kết để tham gia {appUrl}",failedToGetFederatedLoginAppUrl:"Không thành công trong việc lấy đăng nhập qui định liên kết, tham gia appUrl",federatedJoinAppUrlInvalid:"AppUrl đăng nhập liên kết không hợp lệ",siteDetail:"Chi tiết trang web",approveToJoinLogin:"Chấp nhận tham gia đăng nhập liên thông",approve:"Bật chế độ đăng nhập",revoke:"Vô hiệu hóa đăng nhập",enableFederatedLogin:"Kích hoạt đăng nhập liên danh",disableFederatedLogin:"Vô hiệu hóa đăng nhập liên kết",enableFederatedLoginDescription:"Sau khi kích hoạt đăng nhập liên kết, trang web này sẽ tự động đăng nhập",disableFederatedLoginDescription:"Sau khi vô hiệu hóa đăng nhập liên tục, trang web này sẽ không đăng nhập tự động",enableFederatedAutoLogin:"Bật đăng nhập tự động",enableFederatedAutoLoginDescription:"Sau khi kích hoạt đăng nhập tự động, nếu hiện tại có trạng thái đăng nhập thống nhất, trang web sẽ tự động đăng nhập với danh tính của đăng nhập đoàn thể",disableFederatedAutoLogin:"Tắt đăng nhập tự động",disableFederatedAutoLoginDescription:"Sau khi đăng nhập tự động tắt, trang web sẽ không đăng nhập tự động thông tin người dùng của đăng nhập thống nhất và bạn vẫn có thể chọn để đăng nhập bằng tay bằng danh tính đăng nhập liên minh.",info:{appId:"ỨNG DỤNG ĐÃ LÀM",appPid:"ID vĩnh viễn",migratedFrom:"Còn được biết đến là",appName:"Tên Blocklet",appDescription:"Mô tả khối",appUrl:"URL Blocklet",appLogo:"Logo Blocklet",did:"Blocklet DID",serverId:"ID máy chủ Blocklet",serverVersion:"Phiên bản Blocklet Server",version:"Phiên bản Blocklet",appliedAt:"Đăng ký tại",status:"Tình trạng"},status:{pending:"Đang chờ",approved:"Được chấp thuận",rejected:"Bị từ chối",revoked:"Thu hồi"},disbandFederatedLogin:"Hủy kết nối đăng nhập liên kết",disbandFederatedLoginDescription:"Sau khi giải tán đăng nhập liên kết, tất cả các trang thành viên sẽ tự động thoát khỏi đăng nhập liên kết"},optionsOrder:{1:"Tùy chọn Một",2:"Lựa chọn Hai"},securityRule:{title:"Quy tắc bảo mật",sortByDescription:"Sắp xếp theo mức độ ưu tiên phù hợp",add:"Thêm Quy tắc Bảo mật",edit:"Chỉnh sửa Quy tắc Bảo mật",view:"Xem quy tắc bảo mật",form:{precede:"Trước đó",pathPattern:"รูปแบบพาธ",pathPatternPlaceholder:"Hãy nhập mô hình đường dẫn",pathPatternErrorText:"Mẫu đường dẫn không hợp lệ",accessPolicyOrResponseHeaderPolicyRequired:"Chính sách truy cập hoặc chính sách tiêu đề phản hồi là bắt buộc",accessPolicy:"Chính sách truy cập",accessPolicyPlaceholder:"Vui lòng chọn chính sách truy cập",accessPolicyHelperText:"Chọn chính sách truy cập",responseHeaderPolicy:"Chính sách Tiêu đề phản hồi",responseHeaderPolicyPlaceholder:"Vui lòng chọn chính sách tiêu đề phản hồi",responseHeaderPolicyHelperText:"Vui lòng chọn chính sách tiêu đề phản hồi",remark:"Chú thích",remarkPlaceholder:"Hãy nhập chú thích",component:"Thành phần",componentPlaceholder:"Vui lòng chọn thành phần"},delete:{title:"Xóa Quy tắc Bảo mật?",description:"Sau khi xóa bỏ quy tắc bảo mật, quy tắc này sẽ không còn hiệu lực"}},responseHeaderPolicy:{title:"Chính sách header phản hồi",add:"Thêm Chính sách Tiêu đề Phản hồi",edit:"Chỉnh sửa Chính sách Đầu phản hồi",view:"Xem Chính sách Tiêu đề Phản hồi",form:{name:"Tên",namePlaceholder:"Vui lòng nhập tên",description:"Mô tả",descriptionPlaceholder:"Vui lòng nhập mô tả",cors:{origin:"Gốc",originPlaceholder:"Hỗ trợ các định dạng miền sau: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (không khuyến nghị sử dụng ký tự đại diện)",originHelperText:"Tên miền bắt đầu với http:// hoặc https://, một trên một dòng, một ký tự đại diện * trên một dòng",methods:"Phương pháp",allowedHeaders:"Đầu trang được cho phép",allowedHeadersPlaceholder:"Khuyến nghị điền *, hỗ trợ nhập nhiều dòng",allowedHeadersHelperText:"Cho máy chủ biết những header tùy chỉnh nào có thể dùng trong yêu cầu tiếp theo khi gửi yêu cầu OPTIONS như: x-blocklet-version",exposedHeaders:"Tiêu đề được hiển thị",exposedHeadersPlaceholder:"Hỗ trợ nhập nhiều dòng",exposedHeadersHelperText:"Cấu hình Expose-Headers, ví dụ: X-Content-Range",maxAge:"Max-Age (giây)",maxAgeHelperText:"Thời hạn hiệu lực của kết quả thu được bằng yêu cầu OPTIONS, phải là một số nguyên dương",optionsSuccessStatus:"Trạng thái thành công của tùy chọn",preflightContinue:"Tiếp tục Chế độ xem trước",credentials:"Thông tin xác thực",smartModeHelperText:"Tự động thêm mọi tên miền của ứng dụng hiện tại, cũng như mọi tên miền của nhóm trang web đăng nhập liên kết",smartMode:"Chế Độ Thông Minh"},originOverride:"Origin Override",originOverrideHelperText:"Cho phép logic trong ứng dụng ghi đè lên tiêu đề phản hồi này"},delete:{title:"Xóa Chính sách tiêu đề phản hồi?",description:"Sau khi xóa chính sách tiêu đề phản hồi, chính sách sẽ không còn hiệu lực"}},accessPolicy:{title:"Chính sách truy cập",add:"Thêm Chính sách truy cập",edit:"Chỉnh sửa Chính sách Truy cập",view:"Xem chính sách quyền truy cập",form:{name:"Tên",namePlaceholder:"Vui lòng nhập tên",description:"Mô tả",descriptionPlaceholder:"Vui lòng nhập mô tả",roles:"Quyền truy cập",accessType:"Loại truy cập"},delete:{title:"Xóa Chính sách truy cập?",description:"Sau khi xóa một chính sách truy cập, chính sách này sẽ không còn hiệu lực"}}};export{n as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{aA as _,aB as i,a5 as e,j as r,aC as a}from"./index-B9_-R0J9.js";const u={en:_(i),ar:()=>e(()=>import("./ar-D4B_BKe0.js"),[]).then(t=>_(t.default)),de:()=>e(()=>import("./de-C__DKoEA.js"),[]).then(t=>_(t.default)),es:()=>e(()=>import("./es-Drri_3Re.js"),[]).then(t=>_(t.default)),fr:()=>e(()=>import("./fr-D6_iXdUw.js"),[]).then(t=>_(t.default)),hi:()=>e(()=>import("./hi-Cdbgnlr1.js"),[]).then(t=>_(t.default)),id:()=>e(()=>import("./id-aV9m2_MW.js"),[]).then(t=>_(t.default)),ja:()=>e(()=>import("./ja-KaSVCmo6.js"),[]).then(t=>_(t.default)),ko:()=>e(()=>import("./ko-DpfCclMr.js"),[]).then(t=>_(t.default)),pt:()=>e(()=>import("./pt-DSz2Y0vp.js"),[]).then(t=>_(t.default)),ru:()=>e(()=>import("./ru-P0dxFZEI.js"),[]).then(t=>_(t.default)),th:()=>e(()=>import("./th-KYZmQlEk.js"),[]).then(t=>_(t.default)),vi:()=>e(()=>import("./vi-BePuxVQd.js"),[]).then(t=>_(t.default)),"zh-TW":()=>e(()=>import("./zh-tw-DSG5RRwT.js"),[]).then(t=>_(t.default)),zh:()=>e(()=>import("./zh-Drtm306V.js"),[]).then(t=>_(t.default))};function E(t){return function(o){return r.jsx(a,{translations:u,children:r.jsx(t,{...o})})}}export{E as w};
|