hfs 3.2.0 → 3.2.2
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/admin/assets/{af-BcngPxum.js → af-BDoqNBMg.js} +1 -1
- package/admin/assets/{am-DtFo7gXc.js → am-DXBvKJ3X.js} +1 -1
- package/admin/assets/{ar-B_EQ0gOA.js → ar-BJIoxKTh.js} +1 -1
- package/admin/assets/{ar-dz-C7XYleW9.js → ar-dz-C9l3uc_3.js} +1 -1
- package/admin/assets/{ar-iq-BfQJc2dx.js → ar-iq-DKH8u2lX.js} +1 -1
- package/admin/assets/{ar-kw-0U1JfQOh.js → ar-kw-D3gJalQp.js} +1 -1
- package/admin/assets/{ar-ly-zXio0U_R.js → ar-ly-BZJzWFeR.js} +1 -1
- package/admin/assets/{ar-ma-RnCHj7rY.js → ar-ma-DabiOCr0.js} +1 -1
- package/admin/assets/{ar-sa-CMO7zpcn.js → ar-sa-C7suzSCY.js} +1 -1
- package/admin/assets/{ar-tn-BKftC1Mu.js → ar-tn-BvBucEx0.js} +1 -1
- package/admin/assets/{az-AiZRgUb5.js → az-CPUppH2M.js} +1 -1
- package/admin/assets/{be-y6bzPWFN.js → be-vzvhX2dl.js} +1 -1
- package/admin/assets/{bg-BisLARft.js → bg-09Xbj_Y3.js} +1 -1
- package/admin/assets/{bi-48sz9hUu.js → bi-CvhiuiE9.js} +1 -1
- package/admin/assets/{bm-Bs6BVzFS.js → bm-DtJAZAkZ.js} +1 -1
- package/admin/assets/{bn-CyEiX_eK.js → bn-Dnzh2x6I.js} +1 -1
- package/admin/assets/{bn-bd-_Q2I_DOn.js → bn-bd-xEy4797g.js} +1 -1
- package/admin/assets/{bo-Ue1q-9BD.js → bo-vuPmptG3.js} +1 -1
- package/admin/assets/{br-Bb9l-ihS.js → br-C9xH4OD3.js} +1 -1
- package/admin/assets/{bs-BPmB5n9t.js → bs-BB_uCUp1.js} +1 -1
- package/admin/assets/{ca-B_r4lj3j.js → ca-D7LKaf98.js} +1 -1
- package/admin/assets/{cs-CyhhYDkg.js → cs-DMFTNdNC.js} +1 -1
- package/admin/assets/{cv-ulbhiGq8.js → cv-DNUjJwnO.js} +1 -1
- package/admin/assets/{cy-C3WqFe_5.js → cy-qmAOTPwC.js} +1 -1
- package/admin/assets/{da-DZLHh8Xm.js → da-DDX54iM9.js} +1 -1
- package/admin/assets/{de-clnjk21u.js → de-BBmlsfbM.js} +1 -1
- package/admin/assets/{de-at-CCxj6Bp4.js → de-at-CuMZqYfu.js} +1 -1
- package/admin/assets/{de-ch-CM8icK9J.js → de-ch-s8OXKb-5.js} +1 -1
- package/admin/assets/{dist-Cvm-5z2_.js → dist-CHP3cW_n.js} +1 -1
- package/admin/assets/{dv-X1dg-Sap.js → dv-Cjs3QDBN.js} +1 -1
- package/admin/assets/{el-Df4pHDZ3.js → el-BsAOrUDP.js} +1 -1
- package/admin/assets/{en-rCfYK-2n.js → en-DQ460ET7.js} +1 -1
- package/admin/assets/{en-au-Ct_0mddK.js → en-au-8tMHM2OT.js} +1 -1
- package/admin/assets/{en-ca-CQqkpac1.js → en-ca-c9jM4M_8.js} +1 -1
- package/admin/assets/{en-in-DVbA81wM.js → en-gb-unFIXx9f.js} +1 -1
- package/admin/assets/{en-ie-CFOYG_Tt.js → en-ie-D4_e3kV6.js} +1 -1
- package/admin/assets/{en-il-DgoPI8Zb.js → en-il-BoaZOven.js} +1 -1
- package/admin/assets/{en-tt-BAyEMcr3.js → en-in-D2ULzXMp.js} +1 -1
- package/admin/assets/{en-nz-D4INWdbm.js → en-nz-grrmB3dg.js} +1 -1
- package/admin/assets/{en-sg-_a9wehQB.js → en-sg-Cmqxpoir.js} +1 -1
- package/admin/assets/{en-gb-BL2mYabO.js → en-tt-Cn72OR4N.js} +1 -1
- package/admin/assets/{eo-CMQMiEUh.js → eo-Cqxmc0TT.js} +1 -1
- package/admin/assets/{es-B7YOeh-c.js → es-CkjKdFZ3.js} +1 -1
- package/admin/assets/{es-do-Mq8WNgVk.js → es-do-CTcTshup.js} +1 -1
- package/admin/assets/{es-mx-B_RMTunI.js → es-mx-DMXgMMxs.js} +1 -1
- package/admin/assets/{es-pr-uqTuZpUr.js → es-pr-DNCV91L3.js} +1 -1
- package/admin/assets/{es-us-D598JSxH.js → es-us-C7o2mlIH.js} +1 -1
- package/admin/assets/{esm-C8k0V7Wx.js → esm-DvUbRuYx.js} +1 -1
- package/admin/assets/{et-B6n19kok.js → et-DaPpH-gK.js} +1 -1
- package/admin/assets/{eu-CNx2Jk1_.js → eu-DfKyFruu.js} +1 -1
- package/admin/assets/{fa-DGIot4qi.js → fa-xWrBjePb.js} +1 -1
- package/admin/assets/{fi-DaJl-Yrn.js → fi-BOWDMsDS.js} +1 -1
- package/admin/assets/{fo-DgxLc8Be.js → fo-B3FupW8R.js} +1 -1
- package/admin/assets/{fr-DoSFLSk1.js → fr-DZBDBkwp.js} +1 -1
- package/admin/assets/{fr-ca-XcVXSZm2.js → fr-ca-CRePPJJ5.js} +1 -1
- package/admin/assets/{fr-ch-CY_qBJu6.js → fr-ch-pFKvYU8D.js} +1 -1
- package/admin/assets/{fy-CwP6pdZi.js → fy-0k7RzHUH.js} +1 -1
- package/admin/assets/{ga-BtKmIiqR.js → ga-D31rB2ys.js} +1 -1
- package/admin/assets/{gd-BdHmijxR.js → gd-CbgY-FFE.js} +1 -1
- package/admin/assets/{gl-C5lGSMcI.js → gl-DrtvS9gt.js} +1 -1
- package/admin/assets/{gom-latn-DLun_Cyc.js → gom-latn-Dkke3GyE.js} +1 -1
- package/admin/assets/{gu-BBxROGEb.js → gu-BlEipYhR.js} +1 -1
- package/admin/assets/{he-DseTadyh.js → he-BrHT6OLB.js} +1 -1
- package/admin/assets/{hi-DM8DF6aA.js → hi-Bx0zlAgr.js} +1 -1
- package/admin/assets/{hr-Dcrr0w28.js → hr-CoFYGbr6.js} +1 -1
- package/admin/assets/{ht-B6ek9t1g.js → ht-Df5xKo4a.js} +1 -1
- package/admin/assets/{hu-TGqjozNS.js → hu-BFTN3q6-.js} +1 -1
- package/admin/assets/{hy-am-D5nMz6Yy.js → hy-am-DuZTJQed.js} +1 -1
- package/admin/assets/{id-B9LrfD64.js → id-DBZ5nPkf.js} +1 -1
- package/admin/assets/{index-CMfN0pC5.js → index-BGIe1xaR.js} +57 -57
- package/admin/assets/index-eeRX25da.css +1 -0
- package/admin/assets/{is-CHPxwKd7.js → is-CmeHm47B.js} +1 -1
- package/admin/assets/{it-D1Dtu0nW.js → it-Cv3fjOA9.js} +1 -1
- package/admin/assets/{it-ch-C1zLR1pY.js → it-ch-DCTyHA3T.js} +1 -1
- package/admin/assets/{ja-DNNRQqi9.js → ja-DHNVXAM5.js} +1 -1
- package/admin/assets/{jv-ByMRyHLP.js → jv-BdNIxhWv.js} +1 -1
- package/admin/assets/{ka-BaIaZhNb.js → ka-D-joD0QB.js} +1 -1
- package/admin/assets/{kk-CdG5pC8o.js → kk-8wRNNjxz.js} +1 -1
- package/admin/assets/{km-CQGImLMP.js → km-dUWOg1uK.js} +1 -1
- package/admin/assets/{kn-i6v2JbuU.js → kn-CwQbzel0.js} +1 -1
- package/admin/assets/{ko-B7ZMJY_D.js → ko-D_gn9Sfw.js} +1 -1
- package/admin/assets/{ku-Du7Lj5Ai.js → ku-Dh3MRML3.js} +1 -1
- package/admin/assets/{ky-BFcjDu3n.js → ky-CWYuRvil.js} +1 -1
- package/admin/assets/{lb-kUg2Mh9U.js → lb-Cc2xsSIx.js} +1 -1
- package/admin/assets/{lo-CP6L0V2h.js → lo-CkwNFDBz.js} +1 -1
- package/admin/assets/{lt-BIgC7Saa.js → lt-HWyFDLXu.js} +1 -1
- package/admin/assets/{lv-BOs7b0pg.js → lv-C7Zx3OLO.js} +1 -1
- package/admin/assets/{me-DYHaVe93.js → me-DH3AqnfF.js} +1 -1
- package/admin/assets/{mi-Drez7lLe.js → mi-DMmUry6m.js} +1 -1
- package/admin/assets/{mk-BK-ldTLL.js → mk-D6MNZrzX.js} +1 -1
- package/admin/assets/{ml-DaF3pZLU.js → ml-B_ur8Zqf.js} +1 -1
- package/admin/assets/{mn-nHbNPFAG.js → mn-DeL8Ry7x.js} +1 -1
- package/admin/assets/{mr-Wwf63eZM.js → mr-C01qRXFL.js} +1 -1
- package/admin/assets/{ms-BIXjE3b0.js → ms-DFUZJzOm.js} +1 -1
- package/admin/assets/{ms-my-CMG5GLpT.js → ms-my-CUYHkebs.js} +1 -1
- package/admin/assets/{mt-SRQPZ5le.js → mt-CE8t5jSj.js} +1 -1
- package/admin/assets/{my-DQYSisI9.js → my-Df96A8jZ.js} +1 -1
- package/admin/assets/{nb-BU06Sx9X.js → nb-D0837ewu.js} +1 -1
- package/admin/assets/{ne-BMChpdeq.js → ne-BdK5TR0R.js} +1 -1
- package/admin/assets/{nl-be-fI6vO9FU.js → nl-be-BfVC0cur.js} +1 -1
- package/admin/assets/{nl-CXWGdKg5.js → nl-oYKmSma6.js} +1 -1
- package/admin/assets/{nn-CkojFw3N.js → nn-IEUPnyc8.js} +1 -1
- package/admin/assets/{oc-lnc-BKfjK0lp.js → oc-lnc-g_wSIROr.js} +1 -1
- package/admin/assets/{pa-in-BT8DvsfB.js → pa-in-gWhcLmZE.js} +1 -1
- package/admin/assets/{pl-D0Cpx-wE.js → pl-H3-LoxVn.js} +1 -1
- package/admin/assets/{pt-br-DPY09O20.js → pt-br-B8UcNR6_.js} +1 -1
- package/admin/assets/{pt-DD7k0D3o.js → pt-hiX8RqVw.js} +1 -1
- package/admin/assets/{rn-DWaRj8UF.js → rn-BKupViLr.js} +1 -1
- package/admin/assets/{ro-X4IcZOVs.js → ro-DmhgIvml.js} +1 -1
- package/admin/assets/{ru-DqdQ6YYP.js → ru-CcpO-b8g.js} +1 -1
- package/admin/assets/{rw-q8Mu5eAK.js → rw-DWX_5ZK0.js} +1 -1
- package/admin/assets/{sd-WzFJ-b9p.js → sd-Dat8YgLw.js} +1 -1
- package/admin/assets/{se-B0Nt39h7.js → se-nTBYCwx3.js} +1 -1
- package/admin/assets/{sha512-ChZ-ZgQF.js → sha512-CZz40GwW.js} +1 -1
- package/admin/assets/{si-D7WSpsGm.js → si-DG88w5El.js} +1 -1
- package/admin/assets/{sk-wIcTcNYq.js → sk-s5FxW36J.js} +1 -1
- package/admin/assets/{sl-k_cEMlZY.js → sl-B-HyGrpA.js} +1 -1
- package/admin/assets/{sq-D145xgL0.js → sq-DPFtfEC8.js} +1 -1
- package/admin/assets/{sr-hqDfAF1G.js → sr-bBPg1zz4.js} +1 -1
- package/admin/assets/{sr-cyrl-CEGYotNk.js → sr-cyrl-cXkYHMcP.js} +1 -1
- package/admin/assets/{ss-DnoCncEs.js → ss-7nSqXJN7.js} +1 -1
- package/admin/assets/{sv-DB81pVMk.js → sv-B8mG1QK4.js} +1 -1
- package/admin/assets/{sv-fi-DYpZcfvJ.js → sv-fi-CotGRXSH.js} +1 -1
- package/admin/assets/{sw-DjXd57gN.js → sw-fAxU-Uck.js} +1 -1
- package/admin/assets/{ta-C3wYK0Z3.js → ta-Dl0Z1pan.js} +1 -1
- package/admin/assets/{te-BD4lPDF4.js → te-DmcKasFF.js} +1 -1
- package/admin/assets/{tet-BDurv1U8.js → tet-D6mmvYpQ.js} +1 -1
- package/admin/assets/{tg-Bm80AbZW.js → tg-39Hf2-oO.js} +1 -1
- package/admin/assets/{th-DflYkQDK.js → th-BSmTJSFN.js} +1 -1
- package/admin/assets/{tk-rvsm_JbC.js → tk-m85E5igC.js} +1 -1
- package/admin/assets/{tl-ph-Bwc5zmby.js → tl-ph-BlYxVvNt.js} +1 -1
- package/admin/assets/{tlh-HKfEoZ7k.js → tlh-D1POnIeE.js} +1 -1
- package/admin/assets/{tr-VizeBtG6.js → tr-BurtfrLy.js} +1 -1
- package/admin/assets/{tzl-BwO5wCIa.js → tzl-BvyD0lOf.js} +1 -1
- package/admin/assets/{tzm-BG7lewWS.js → tzm-DZHS0dK6.js} +1 -1
- package/admin/assets/{tzm-latn-CrnUHIcs.js → tzm-latn-yNW7CNCH.js} +1 -1
- package/admin/assets/{ug-cn-BK--SUxc.js → ug-cn-rxs2pf5Y.js} +1 -1
- package/admin/assets/{uk-AJsAkG20.js → uk-CgZM-NnA.js} +1 -1
- package/admin/assets/{ur-vO2PrLFV.js → ur-YxIR8yYD.js} +1 -1
- package/admin/assets/{uz-CU8j0C84.js → uz-CE9QsQMG.js} +1 -1
- package/admin/assets/{uz-latn-B1U_SldD.js → uz-latn-DiVdSW6G.js} +1 -1
- package/admin/assets/{vi-Br-FE8zw.js → vi-DKARV6qf.js} +1 -1
- package/admin/assets/{x-pseudo-BEc6ucZj.js → x-pseudo-BuAdOrXQ.js} +1 -1
- package/admin/assets/{yo-DL2G7So6.js → yo-BcB85DhC.js} +1 -1
- package/admin/assets/{zh-DNL75MTZ.js → zh-DLmxfxzl.js} +1 -1
- package/admin/assets/{zh-cn-BBd_VD1y.js → zh-cn-ILRADZJi.js} +1 -1
- package/admin/assets/{zh-hk-CNn_dGjQ.js → zh-hk-fT7fQk9_.js} +1 -1
- package/admin/assets/{zh-tw-B7cjw6lq.js → zh-tw-NqRXGP6v.js} +1 -1
- package/admin/index.html +2 -2
- package/central.json +1 -4
- package/frontend/assets/{dist-legacy-CFPnugjA.js → dist-legacy-BPToXNXu.js} +1 -1
- package/frontend/assets/index-legacy-CmusDwvl.js +1 -0
- package/frontend/assets/{lib-legacy-CCULxbTk.js → lib-legacy-CBk-_G90.js} +1 -1
- package/frontend/assets/{sha512-legacy-D8zcvvqa.js → sha512-legacy-CWrR2rkQ.js} +1 -1
- package/frontend/index.html +1 -1
- package/npm-shrinkwrap.json +33 -29
- package/package.json +6 -5
- package/src/api.auth.js +25 -7
- package/src/api.lang.js +1 -1
- package/src/apiMiddleware.js +2 -3
- package/src/auth.js +4 -1
- package/src/basicWeb.js +1 -1
- package/src/block.js +4 -3
- package/src/connections.js +3 -2
- package/src/cross.js +1 -1
- package/src/fileAttr.js +5 -1
- package/src/index.js +2 -1
- package/src/lang.js +6 -1
- package/src/langs/embedded.js +2 -1
- package/src/langs/hfs-lang-pl.json +181 -0
- package/src/listen.js +1 -1
- package/src/middlewares.js +4 -2
- package/src/nat.js +4 -2
- package/src/outboundProxy.js +3 -1
- package/src/selfCheck.js +4 -4
- package/src/serveFile.js +5 -3
- package/src/upload.js +1 -1
- package/src/vfs.js +8 -4
- package/src/webdav.js +12 -0
- package/src/zip.js +3 -2
- package/admin/assets/index-BGZpazPR.css +0 -1
- package/frontend/assets/index-legacy-CCOgiwQJ.js +0 -1
package/src/langs/embedded.js
CHANGED
|
@@ -13,6 +13,7 @@ const hfs_lang_ko_json_1 = __importDefault(require("./hfs-lang-ko.json"));
|
|
|
13
13
|
const hfs_lang_ms_json_1 = __importDefault(require("./hfs-lang-ms.json"));
|
|
14
14
|
const hfs_lang_zh_tw_json_1 = __importDefault(require("./hfs-lang-zh-tw.json"));
|
|
15
15
|
const hfs_lang_fr_json_1 = __importDefault(require("./hfs-lang-fr.json"));
|
|
16
|
+
const hfs_lang_pl_json_1 = __importDefault(require("./hfs-lang-pl.json"));
|
|
16
17
|
const hfs_lang_pt_br_json_1 = __importDefault(require("./hfs-lang-pt-br.json"));
|
|
17
18
|
const hfs_lang_vi_json_1 = __importDefault(require("./hfs-lang-vi.json"));
|
|
18
19
|
const hfs_lang_es_json_1 = __importDefault(require("./hfs-lang-es.json"));
|
|
@@ -28,4 +29,4 @@ const hfs_lang_uk_json_1 = __importDefault(require("./hfs-lang-uk.json"));
|
|
|
28
29
|
const hfs_lang_ar_json_1 = __importDefault(require("./hfs-lang-ar.json"));
|
|
29
30
|
const hfs_lang_lt_json_1 = __importDefault(require("./hfs-lang-lt.json"));
|
|
30
31
|
const hfs_lang_bg_json_1 = __importDefault(require("./hfs-lang-bg.json"));
|
|
31
|
-
exports.default = { it: hfs_lang_it_json_1.default, zh: hfs_lang_zh_json_1.default, ru: hfs_lang_ru_json_1.default, sr: hfs_lang_sr_json_1.default, 'sr-latn': hfs_lang_sr_latn_json_1.default, ko: hfs_lang_ko_json_1.default, ms: hfs_lang_ms_json_1.default, 'zh-tw': hfs_lang_zh_tw_json_1.default, fr: hfs_lang_fr_json_1.default, 'pt-br': hfs_lang_pt_br_json_1.default, vi: hfs_lang_vi_json_1.default, es: hfs_lang_es_json_1.default, nl: hfs_lang_nl_json_1.default, el: hfs_lang_el_json_1.default, de: hfs_lang_de_json_1.default, fi: hfs_lang_fi_json_1.default, hu: hfs_lang_hu_json_1.default, ja: hfs_lang_ja_json_1.default, ro: hfs_lang_ro_json_1.default, tr: hfs_lang_tr_json_1.default, th: hfs_lang_th_json_1.default, uk: hfs_lang_uk_json_1.default, ar: hfs_lang_ar_json_1.default, lt: hfs_lang_lt_json_1.default, bg: hfs_lang_bg_json_1.default };
|
|
32
|
+
exports.default = { it: hfs_lang_it_json_1.default, zh: hfs_lang_zh_json_1.default, ru: hfs_lang_ru_json_1.default, sr: hfs_lang_sr_json_1.default, 'sr-latn': hfs_lang_sr_latn_json_1.default, ko: hfs_lang_ko_json_1.default, ms: hfs_lang_ms_json_1.default, 'zh-tw': hfs_lang_zh_tw_json_1.default, fr: hfs_lang_fr_json_1.default, pl: hfs_lang_pl_json_1.default, 'pt-br': hfs_lang_pt_br_json_1.default, vi: hfs_lang_vi_json_1.default, es: hfs_lang_es_json_1.default, nl: hfs_lang_nl_json_1.default, el: hfs_lang_el_json_1.default, de: hfs_lang_de_json_1.default, fi: hfs_lang_fi_json_1.default, hu: hfs_lang_hu_json_1.default, ja: hfs_lang_ja_json_1.default, ro: hfs_lang_ro_json_1.default, tr: hfs_lang_tr_json_1.default, th: hfs_lang_th_json_1.default, uk: hfs_lang_uk_json_1.default, ar: hfs_lang_ar_json_1.default, lt: hfs_lang_lt_json_1.default, bg: hfs_lang_bg_json_1.default };
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
{
|
|
2
|
+
"author": "Flis666",
|
|
3
|
+
"version": 1.0,
|
|
4
|
+
"hfs_version": "0.57.5",
|
|
5
|
+
"translate": {
|
|
6
|
+
"Select": "Wybierz",
|
|
7
|
+
"n_files": "{n,plural,one{# plik} other{# plików}}",
|
|
8
|
+
"n_folders": "{n,plural,one{# folder} other{# foldery}}",
|
|
9
|
+
"filter_count": "{n,plural,one{# filtered} other{# filtered}}",
|
|
10
|
+
"select_count": "{n,plural, one{# selected} other{# selected}}",
|
|
11
|
+
"filter_placeholder": "Wpisz tutaj, aby filtrować listę poniżej",
|
|
12
|
+
"Select some files": "Wybierz kilka plików",
|
|
13
|
+
"zip_checkboxes": "Użyj pól wyboru, aby zaznaczyć pliki, a następnie możesz ponownie użyć opcji Zip",
|
|
14
|
+
"zip_tooltip_selected": "Pobierz wybrane elementy jako pojedynczy plik zip",
|
|
15
|
+
"zip_tooltip_whole": "Pobierz całą listę (nieprzefiltrowaną) jako pojedynczy plik zip. Jeśli zaznaczysz niektóre elementy, pobrane zostaną tylko te.",
|
|
16
|
+
"zip_confirm_search": "Pobrać WSZYSTKIE wyniki tego wyszukiwania jako archiwum ZIP?",
|
|
17
|
+
"zip_confirm_folder": "Pobrać CAŁY folder jako archiwum ZIP?",
|
|
18
|
+
"select_tooltip": "Wybór dotyczy opcji „Zip” i „Usuń” (jeśli są dostępne), ale możesz także filtrować listę",
|
|
19
|
+
"delete_hint": "Aby usunąć, najpierw kliknij Wybierz",
|
|
20
|
+
"delete_confirm": "Usunąć {n,plural,one{# pozycję} other{# pozycje}}?",
|
|
21
|
+
"delete_completed": "Usuwanie: {n} zakończone",
|
|
22
|
+
"delete_failed": ", {n,plural,one{# failed} other{# failed}}",
|
|
23
|
+
"delete_select": "Wybierz coś do usunięcia",
|
|
24
|
+
"Delete": "Usuń",
|
|
25
|
+
"Options": "Opcje",
|
|
26
|
+
"Search": "Szukaj",
|
|
27
|
+
"Zip": "Zip",
|
|
28
|
+
"search_msg": "Przeszukaj ten folder i podfoldery",
|
|
29
|
+
"Searching": "Wyszukiwanie",
|
|
30
|
+
"Searched": "Przeszukano",
|
|
31
|
+
"Clear search": "Wyczyść wyszukiwanie",
|
|
32
|
+
"Interrupted": "Przerwane",
|
|
33
|
+
"stopped_before": "Zatrzymane przed znalezieniem czegokolwiek",
|
|
34
|
+
"empty_list": "Nic tu nie ma",
|
|
35
|
+
"filter_none": "Brak dopasowań dla tego filtra",
|
|
36
|
+
"Admin-panel": "Panel administracyjny",
|
|
37
|
+
"Login": "Zaloguj",
|
|
38
|
+
"Username": "Nazwa użytkownika",
|
|
39
|
+
"Password": "Hasło",
|
|
40
|
+
"login_untrusted": "Logowanie przerwane: tożsamość serwera nie może być uznana za wiarygodną",
|
|
41
|
+
"login_bad_credentials": "Nieprawidłowe dane logowania",
|
|
42
|
+
"login_bad_cookies": "Ciasteczka nie działają - logowanie nie powiodło się",
|
|
43
|
+
"User panel": "Panel użytkownika",
|
|
44
|
+
"Change password": "Zmień hasło",
|
|
45
|
+
"enter_pass": "Wprowadź nowe hasło",
|
|
46
|
+
"enter_pass2": "POWTÓRZ to samo nowe hasło",
|
|
47
|
+
"pass2_mismatch": "Drugie hasło, które wprowadziłeś, nie pasuje do pierwszego. Procedura przerwana.",
|
|
48
|
+
"password_changed": "hasło_zmienione",
|
|
49
|
+
"Logout": "Wyloguj",
|
|
50
|
+
"connection error": "błąd połączenia",
|
|
51
|
+
"Full timestamp:": "Pełny znacznik czasu:",
|
|
52
|
+
"Search was interrupted": "Wyszukiwanie zostało przerwane",
|
|
53
|
+
"Stop list": "Lista zatrzymań",
|
|
54
|
+
"download_starting": "Twój pobieranie powinno teraz rozpocząć się",
|
|
55
|
+
"wrong_account": "Konto {u} nie ma dostępu, spróbuj inne",
|
|
56
|
+
"no_upload_here": "Brak uprawnień do przesyłania w bieżącym folderze",
|
|
57
|
+
"Create folder": "Utwórz folder",
|
|
58
|
+
"Pick files": "Wybierz pliki",
|
|
59
|
+
"Pick folder": "Wybierz folder",
|
|
60
|
+
"ready_to_upload": "{n,plural,one{# plik} other{# pliki}}, {size}, gotowe do przesłania",
|
|
61
|
+
"Send": "Wyślij",
|
|
62
|
+
"Clear": "Wyczyść",
|
|
63
|
+
"failed_upload": "Nie można przesłać {name}",
|
|
64
|
+
"file too large": "plik jest zbyt duży",
|
|
65
|
+
"Enter folder name": "Wprowadź nazwę folderu",
|
|
66
|
+
"Successfully created": "Pomyślnie utworzono",
|
|
67
|
+
"enter_folder": "Wejdź do folderu",
|
|
68
|
+
"folder_exists": "Folder o tej samej nazwie już istnieje",
|
|
69
|
+
"Sort by:": "Sortuj według: {by}",
|
|
70
|
+
"name": "nazwa",
|
|
71
|
+
"extension": "rozszerzenie",
|
|
72
|
+
"size": "rozmiar",
|
|
73
|
+
"time": "czas",
|
|
74
|
+
"Invert order": "Odwróć kolejność",
|
|
75
|
+
"Folders first": "Najpierw foldery",
|
|
76
|
+
"Numeric names": "Nazwy numeryczne",
|
|
77
|
+
"theme:": "motyw:",
|
|
78
|
+
"auto": "auto",
|
|
79
|
+
"light": "jasny",
|
|
80
|
+
"dark": "ciemny",
|
|
81
|
+
"parent folder": "folder nadrzędny",
|
|
82
|
+
"home": "dom",
|
|
83
|
+
"Continue": "Kontynuuj",
|
|
84
|
+
"Confirm": "Potwierdź",
|
|
85
|
+
"Don't": "Nie",
|
|
86
|
+
"Warning": "Ostrzeżenie",
|
|
87
|
+
"Error": "Błąd",
|
|
88
|
+
"Info": "Informacja",
|
|
89
|
+
"Unauthorized": "Nieautoryzowany",
|
|
90
|
+
"Forbidden": "Zabronione",
|
|
91
|
+
"Not found": "Nie znaleziono",
|
|
92
|
+
"Server error": "Błąd serwera",
|
|
93
|
+
"Upload": "Prześlij",
|
|
94
|
+
"upload_concluded": "Przesyłanie zakończone:",
|
|
95
|
+
"upload_finished": "{n} zakończonych ({size})",
|
|
96
|
+
"upload_errors": "{n} nieudanych",
|
|
97
|
+
"upload_file_rejected": "Niektóre pliki nie zostały zaakceptowane",
|
|
98
|
+
"File menu": "Menu pliku",
|
|
99
|
+
"Folder menu": "Menu folderu",
|
|
100
|
+
"Name": "Nazwa",
|
|
101
|
+
"file_open": "Otwórz",
|
|
102
|
+
"Download": "Pobierz",
|
|
103
|
+
"Missing permission": "Brak uprawnień",
|
|
104
|
+
"Reload": "Przeładuj",
|
|
105
|
+
"Get list": "Pobierz listę",
|
|
106
|
+
"Skip existing files": "Pomiń istniejące pliki",
|
|
107
|
+
"Size": "Rozmiar",
|
|
108
|
+
"Timestamp": "Znacznik czasu",
|
|
109
|
+
"Show": "Pokaż",
|
|
110
|
+
"Loading failed": "Nieudane ładowanie",
|
|
111
|
+
"Rename": "Zmień nazwę",
|
|
112
|
+
"Tiles mode:": "Tryb kafelków:",
|
|
113
|
+
"off": "wyłączony",
|
|
114
|
+
"Operation successful": "Operacja zakończona sukcesem",
|
|
115
|
+
"Uploader": "Przesyłający",
|
|
116
|
+
"Download counter": "Licznik pobierań",
|
|
117
|
+
"Switch zoom mode": "Przełącz tryb powiększenia",
|
|
118
|
+
"Full screen": "Pełny ekran",
|
|
119
|
+
"File Show help": "Pomoc dotycząca pliku",
|
|
120
|
+
"showHelpMain": "Możesz użyć klawiatury do niektórych działań:",
|
|
121
|
+
"showHelp_←/→": "←/→",
|
|
122
|
+
"showHelp_↑/↓": "↑/↓",
|
|
123
|
+
"showHelp_space": "spacja",
|
|
124
|
+
"showHelp_←/→_body": "Przejdź do poprzedniego/następnego pliku",
|
|
125
|
+
"showHelp_↑/↓_body": "Przewiń wysokie obrazy",
|
|
126
|
+
"Destination": "Cel",
|
|
127
|
+
"in_queue": "{n} w kolejce",
|
|
128
|
+
"enter_comment": "Komentarz dla {name}",
|
|
129
|
+
"Comment": "Komentarz",
|
|
130
|
+
"upload_dd_hint": "Możesz przesyłać pliki, przeciągając je na liście plików",
|
|
131
|
+
"Upload not available": "Przesyłanie niedostępne",
|
|
132
|
+
"Cut": "Wytnij",
|
|
133
|
+
"n_items": "{n,plural,one{# pozycję} other{# pozycje}}",
|
|
134
|
+
"move_results": "{good} przeniesiono, {bad} nieudanych",
|
|
135
|
+
"after_cut": "Twoje zaznaczenie jest teraz w schowku.\nPrzejdź do folderu docelowego, aby wkleić.",
|
|
136
|
+
"Cancel clipboard": "Anuluj schowek",
|
|
137
|
+
"to_clipboard_source": "Powrót do folderu źródłowego",
|
|
138
|
+
"Paste": "Wklej",
|
|
139
|
+
"clipboard_list": "Elementy w schowku:",
|
|
140
|
+
"Close": "Zamknij",
|
|
141
|
+
"Folder": "Folder",
|
|
142
|
+
"Web page": "Strona internetowa",
|
|
143
|
+
"Link": "Link",
|
|
144
|
+
"Auto-play": "Auto-odtwarzanie",
|
|
145
|
+
"autoplay_seconds": "Sekundy do oczekiwania na obrazy",
|
|
146
|
+
"Select all": "Wybierz wszystko",
|
|
147
|
+
"go_first": "Przejdź do pierwszego elementu",
|
|
148
|
+
"go_last": "Przejdź do ostatniego elementu",
|
|
149
|
+
"Shuffle": "Tasuj",
|
|
150
|
+
"Repeat": "Powtarzaj",
|
|
151
|
+
"showHelpListShortcut": "Z listy plików kliknij i przytrzymaj {key}, aby szybko pokazać",
|
|
152
|
+
"Invalid value": "Nieprawidłowa wartość",
|
|
153
|
+
"upload_interrupted": "{n} Przerwane",
|
|
154
|
+
"Overwrite policy": "Polityka nadpisania",
|
|
155
|
+
"Rename to avoid overwriting": "Zmień nazwę, aby uniknąć nadpisania",
|
|
156
|
+
"Overwrite existing files": "Nadpisz istniejące pliki",
|
|
157
|
+
"Menu": "Menu",
|
|
158
|
+
"clipboard": "Schowek ({content})",
|
|
159
|
+
"to_clipboard_source_tooltip": "Przejdź do folderu zawierającego elementy ze schowka",
|
|
160
|
+
"more_items": "{n} więcej elementów",
|
|
161
|
+
"Show details": "Pokaż szczegóły",
|
|
162
|
+
"upload_conflict": "już istnieje",
|
|
163
|
+
"Logged in": "Zalogowano",
|
|
164
|
+
"Logged out": "Wylogowano",
|
|
165
|
+
"Cancel": "Anuluj",
|
|
166
|
+
"allow_session_ip_change": "Zezwalaj na zmianę adresu IP podczas tej sesji",
|
|
167
|
+
"focus_hint": "Wpisując tekst na klawiaturze, możesz wyszukiwać i wybierać elementy na liście.",
|
|
168
|
+
"copy_links": "Kopiuj linki",
|
|
169
|
+
"Calculate": "Oblicz",
|
|
170
|
+
"Creation": "Utworzenie",
|
|
171
|
+
"creation": "utworzenie",
|
|
172
|
+
"required_change_password": "Musisz zmienić swoje hasło",
|
|
173
|
+
"Wildcards": "Symbole wieloznaczne",
|
|
174
|
+
"Considering resume": "Rozważanie wznowienia",
|
|
175
|
+
"Yes": "Tak",
|
|
176
|
+
"No": "Nie",
|
|
177
|
+
"esc_again": "Naciśnij ESC dwukrotnie do zamkniecia",
|
|
178
|
+
"insufficient storage": "za mało miejsca",
|
|
179
|
+
"Account disabled": "Konto wyłączone"
|
|
180
|
+
}
|
|
181
|
+
}
|
package/src/listen.js
CHANGED
|
@@ -160,7 +160,6 @@ const considerHttps = (0, misc_1.debounceAsync)(async () => {
|
|
|
160
160
|
const cn = certObj.subject?.CN;
|
|
161
161
|
if (cn)
|
|
162
162
|
console.log("Certificate loaded for", certObj.altNames?.join(' + ') || cn);
|
|
163
|
-
const now = new Date();
|
|
164
163
|
const from = new Date(certObj.validFrom);
|
|
165
164
|
const to = new Date(certObj.validTo);
|
|
166
165
|
updateError(); // error will change at from and to dates of the certificate
|
|
@@ -173,6 +172,7 @@ const considerHttps = (0, misc_1.debounceAsync)(async () => {
|
|
|
173
172
|
function updateError() {
|
|
174
173
|
if (!httpsSrv)
|
|
175
174
|
return;
|
|
175
|
+
const now = new Date();
|
|
176
176
|
httpsSrv.error = from > now ? "certificate not valid yet" : to < now ? "certificate expired" : undefined;
|
|
177
177
|
}
|
|
178
178
|
}
|
package/src/middlewares.js
CHANGED
|
@@ -142,9 +142,11 @@ const prepareState = async (ctx, next) => {
|
|
|
142
142
|
};
|
|
143
143
|
exports.prepareState = prepareState;
|
|
144
144
|
function failAllowNet(ctx, a) {
|
|
145
|
-
|
|
145
|
+
// a cached mask is valid only for the identity that stored it
|
|
146
|
+
const sameAccount = ctx.session?.username === (0, perm_1.normalizeUsername)(a?.username || '');
|
|
147
|
+
const cached = sameAccount ? ctx.session?.allowNet : undefined;
|
|
146
148
|
const mask = cached ?? (0, perm_1.getFromAccount)(a || '', a => a.allow_net);
|
|
147
|
-
if (!cached && mask
|
|
149
|
+
if (sameAccount && !cached && mask)
|
|
148
150
|
ctx.session.allowNet = mask; // must be deleted on logout by setLoggedIn
|
|
149
151
|
const ret = mask && !(0, misc_1.netMatches)(ctx.ip, mask, true);
|
|
150
152
|
if (ret)
|
package/src/nat.js
CHANGED
|
@@ -144,8 +144,10 @@ function findGateway() {
|
|
|
144
144
|
return new Promise((resolve, reject) => (0, child_process_1.exec)(const_1.IS_WINDOWS || const_1.IS_MAC ? 'netstat -rn' : 'route -n', (err, out) => {
|
|
145
145
|
if (err)
|
|
146
146
|
return reject(err);
|
|
147
|
-
if (!const_1.IS_WINDOWS)
|
|
148
|
-
|
|
147
|
+
if (!const_1.IS_WINDOWS) {
|
|
148
|
+
// linux route output starts with headers, so its default-route pattern must be multiline
|
|
149
|
+
return resolve(out.match(const_1.IS_MAC ? /default +([\d.]+)/ : /^0\.0\.0\.0 +([\d.]+)/m)?.[1]);
|
|
150
|
+
}
|
|
149
151
|
const sortedByMetric = lodash_1.default.sortBy([...out.matchAll(/(?:0\.0\.0\.0 +){2}([\d.]+)\s+[\d.]+\s+(\d+)/g)], x => Number(x[2]));
|
|
150
152
|
resolve(sortedByMetric[0]?.[1]); // take ip with lowest metric
|
|
151
153
|
}));
|
package/src/outboundProxy.js
CHANGED
|
@@ -6,6 +6,7 @@ const util_os_1 = require("./util-os");
|
|
|
6
6
|
const const_1 = require("./const");
|
|
7
7
|
const cross_1 = require("./cross");
|
|
8
8
|
const outboundProxy = (0, config_1.defineConfig)(cross_1.CFG.outbound_proxy, '', v => {
|
|
9
|
+
util_http_1.httpStream.defaultProxy = undefined;
|
|
9
10
|
if (!v)
|
|
10
11
|
return;
|
|
11
12
|
try {
|
|
@@ -26,7 +27,8 @@ config_1.configReady.then(async (startedWithoutConfig) => {
|
|
|
26
27
|
if (!const_1.IS_WINDOWS || !startedWithoutConfig)
|
|
27
28
|
return;
|
|
28
29
|
// try to read Windows system setting for proxy
|
|
29
|
-
const out = await (0, util_os_1.reg)('query', 'HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings')
|
|
30
|
+
const out = await (0, util_os_1.reg)('query', 'HKCU\\Software\\Microsoft\\Windows\\CurrentVersion\\Internet Settings')
|
|
31
|
+
.catch(() => '');
|
|
30
32
|
if (!Number(/ProxyEnable\s+\w+\s+(.+)/.exec(out)?.[1]))
|
|
31
33
|
return;
|
|
32
34
|
const read = /ProxyServer\s+\w+\s+(.+)/.exec(out)?.[1];
|
package/src/selfCheck.js
CHANGED
|
@@ -11,10 +11,10 @@ const net_1 = require("net");
|
|
|
11
11
|
const lodash_1 = __importDefault(require("lodash"));
|
|
12
12
|
const cross_1 = require("./cross");
|
|
13
13
|
const util_http_1 = require("./util-http");
|
|
14
|
-
let
|
|
14
|
+
let activeSelfChecks = 0;
|
|
15
15
|
const CHECK_URL = cross_const_1.SPECIAL_URI + 'self-check';
|
|
16
16
|
const selfCheckMiddleware = (ctx, next) => {
|
|
17
|
-
if (!
|
|
17
|
+
if (!activeSelfChecks || !ctx.url.startsWith(CHECK_URL))
|
|
18
18
|
return next();
|
|
19
19
|
ctx.body = 'HFS';
|
|
20
20
|
ctx.state.skipFilters = true;
|
|
@@ -26,7 +26,7 @@ async function selfCheck(url) {
|
|
|
26
26
|
const parsed = new URL(url);
|
|
27
27
|
const family = !(0, net_1.isIP)(parsed.hostname) ? undefined : (0, net_1.isIPv6)(parsed.hostname) ? 6 : 4;
|
|
28
28
|
try {
|
|
29
|
-
|
|
29
|
+
++activeSelfChecks;
|
|
30
30
|
for (const services of lodash_1.default.chunk(lodash_1.default.shuffle(prjInfo.selfCheckServices), 2)) {
|
|
31
31
|
try {
|
|
32
32
|
const results = await Promise.allSettled(services.map(async (svc) => {
|
|
@@ -57,7 +57,7 @@ async function selfCheck(url) {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
finally {
|
|
60
|
-
|
|
60
|
+
--activeSelfChecks;
|
|
61
61
|
}
|
|
62
62
|
function applySymbols(s) {
|
|
63
63
|
return s?.replace('$IP', parsed.hostname)
|
package/src/serveFile.js
CHANGED
|
@@ -37,9 +37,11 @@ function forceDownload(ctx, name) {
|
|
|
37
37
|
disposition(ctx, name, true);
|
|
38
38
|
}
|
|
39
39
|
function disposition(ctx, name, forceDownload = false) {
|
|
40
|
-
//
|
|
41
|
-
ctx.
|
|
42
|
-
|
|
40
|
+
// override Koa's question-mark fallback for decomposed Unicode filenames on Windows
|
|
41
|
+
ctx.attachment(name, {
|
|
42
|
+
type: forceDownload ? 'attachment' : 'inline',
|
|
43
|
+
fallback: toAsciiEquivalent(name),
|
|
44
|
+
});
|
|
43
45
|
}
|
|
44
46
|
async function serveFileNode(ctx, node) {
|
|
45
47
|
const { source, mime } = node;
|
package/src/upload.js
CHANGED
|
@@ -132,7 +132,7 @@ function uploadWriter(base, baseUri, filename, ctx) {
|
|
|
132
132
|
// append if resuming
|
|
133
133
|
if (!resume && stats)
|
|
134
134
|
fs_1.default.unlinkSync(tempName);
|
|
135
|
-
const writeStream = (0, misc_1.createStreamLimiter)(contentLength
|
|
135
|
+
const writeStream = (0, misc_1.createStreamLimiter)(isNaN(contentLength) ? Infinity : contentLength);
|
|
136
136
|
const fullSize = stillToWrite + resume;
|
|
137
137
|
// allow plugins to mess with the write-stream, because the read-stream can be complicated in case of multipart
|
|
138
138
|
const obj = { ctx, writeStream, fullPath, tempName, resume, fullSize, uri: '' };
|
package/src/vfs.js
CHANGED
|
@@ -485,10 +485,14 @@ events_1.default.on('accountRenamed', ({ from, to }) => {
|
|
|
485
485
|
})(exports.vfs);
|
|
486
486
|
(0, exports.saveVfs)();
|
|
487
487
|
function renameInPerm(a) {
|
|
488
|
-
if (
|
|
488
|
+
if ((0, misc_1.isWhoObject)(a)) {
|
|
489
|
+
renameInPerm(a.this);
|
|
490
|
+
renameInPerm(a.children);
|
|
489
491
|
return;
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
492
|
+
}
|
|
493
|
+
if (Array.isArray(a))
|
|
494
|
+
for (let i = 0; i < a.length; i++)
|
|
495
|
+
if (a[i] === from)
|
|
496
|
+
a[i] = to;
|
|
493
497
|
}
|
|
494
498
|
});
|
package/src/webdav.js
CHANGED
|
@@ -246,6 +246,18 @@ const webdav = async (ctx, next) => {
|
|
|
246
246
|
}
|
|
247
247
|
async function handleLock() {
|
|
248
248
|
setWebdavHeaders();
|
|
249
|
+
// a lock reserves a future write, so authorize it against the existing resource or its parent
|
|
250
|
+
const node = await (0, vfs_1.urlToNode)(path, ctx);
|
|
251
|
+
const permissionNode = node || await (0, vfs_1.urlToNode)((0, path_1.dirname)(path), ctx);
|
|
252
|
+
if (!permissionNode)
|
|
253
|
+
return ctx.status = cross_1.HTTP_CONFLICT;
|
|
254
|
+
const missingWritePerm = node && canOverwrite.has(path + (0, cross_1.prefix)('|', (0, auth_1.getCurrentUsername)(ctx))) ? 0
|
|
255
|
+
: (0, vfs_1.statusCodeForMissingPerm)(permissionNode, node ? 'can_delete' : 'can_upload', ctx);
|
|
256
|
+
if (missingWritePerm) {
|
|
257
|
+
if (ctx.status === cross_1.HTTP_UNAUTHORIZED)
|
|
258
|
+
setWebdavHeaders(true);
|
|
259
|
+
return;
|
|
260
|
+
}
|
|
249
261
|
const body = ctx.length || ctx.get('content-length') || ctx.get('transfer-encoding') ? await (0, consumers_1.text)(ctx.req) : '';
|
|
250
262
|
const token = getProvidedLockToken();
|
|
251
263
|
let seconds = Number(ctx.get('timeout').split(',').find(x => /^Second-\d+$/i.test(x.trim()))?.trim().split('-', 2)[1]);
|
package/src/zip.js
CHANGED
|
@@ -39,8 +39,9 @@ async function zipStreamFromFolder(node, ctx) {
|
|
|
39
39
|
continue;
|
|
40
40
|
if ((0, vfs_1.nodeIsFolder)(subNode)) { // a directory needs to be walked
|
|
41
41
|
if ((0, vfs_1.hasPermission)(subNode, 'can_list', ctx) && (0, vfs_1.hasPermission)(subNode, 'can_archive', ctx)) {
|
|
42
|
-
|
|
43
|
-
yield
|
|
42
|
+
const archivePath = (0, misc_1.pathDecodeSegments)(uri);
|
|
43
|
+
yield { ...subNode, name: archivePath }; // keep empty selected folders at the same path used for their contents
|
|
44
|
+
yield* (0, vfs_1.walkNode)(subNode, { ctx, prefixPath: archivePath + '/', requiredPerm: 'can_archive' });
|
|
44
45
|
}
|
|
45
46
|
continue;
|
|
46
47
|
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.ariaOnly{clip-path:rect(1px 1px 1px 1px);clip:rect(1px, 1px, 1px, 1px);position:absolute}.icon{text-align:center;width:1.4em;height:1.2em;font-size:1.2em;display:inline-block}@keyframes blink{0%{opacity:1}50%{opacity:.3}}:root{--success:#5c5;height:100dvh}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;height:100vh;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}#root{min-height:100%;display:flex}main{word-break:break-word}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}img.flag{vertical-align:text-top;width:1.5em;height:1em;margin-top:1px}.icon-w-text{margin-right:.5em}form{max-width:100%}.MuiSvgIcon-root{vertical-align:bottom}div.MuiTreeItem-content{padding-top:1px;padding-bottom:0}.MuiDataGrid-columnHeaders{background-color:rgba(136,136,136,.133)}.MuiDataGrid-virtualScrollerRenderZone .MuiDataGrid-row .MuiDataGrid-cell{align-items:center;line-height:1.2em;display:flex}.MuiDataGrid-filterForm{flex-wrap:wrap;justify-content:flex-end;row-gap:1em}.wrap[role=cell]{white-space:normal!important}ol,ul{margin-top:.2em;margin-bottom:.2em;padding-left:1.5em}h2.MuiDialogTitle-root{padding-top:2px;padding-bottom:2px}.dialog-alert .MuiDialogContent-root{white-space:pre-wrap;max-width:45em;padding:.5em 1em}.release code{background-color:rgba(136,136,136,.2);border-radius:.2em;padding:0 .2em;font-size:95%}.MuiAppBar-root .MuiAlert-standardInfo .MuiAlert-icon{color:rgba(255,255,255,.533)!important}.MuiAppBar-root .MuiAlert-standardInfo .MuiAlert-message{color:rgba(255,255,255,.667)!important}.MuiAppBar-root .MuiAlert-colorWarning .MuiAlert-icon{color:rgba(255,255,0,.533)!important}.MuiAppBar-root .MuiAlert-colorWarning .MuiAlert-message{color:rgba(255,255,0,.667)!important}.animated-dashed-line{background-image:linear-gradient(90deg,currentColor 50%,transparent 50%);background-size:10px 100%;width:100%;height:2px;animation:1s linear infinite alternate animate-dash}@keyframes animate-dash{to{background-position:20px 0}}@keyframes success{50%{color:var(--success);transform:scale(1.3)}to{transform:inherit;color:inherit}}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:rgba(136,136,136,.533)}::-webkit-scrollbar-track{background:rgba(136,136,136,.133)}.token.operator{background:unset!important}.fflag{vertical-align:bottom;border:none;width:1.7em;height:1.1em}code[class*=language-],pre[class*=language-]{color:#657b83;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;-moz-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;line-height:1.5}pre[class*=language-]::-moz-selection{background:#073642}pre[class*=language-] ::-moz-selection{background:#073642}code[class*=language-]::-moz-selection{background:#073642}code[class*=language-] ::-moz-selection{background:#073642}pre[class*=language-]::-moz-selection{background:#073642}pre[class*=language-]::selection{background:#073642}pre[class*=language-] ::-moz-selection{background:#073642}pre[class*=language-] ::selection{background:#073642}code[class*=language-]::-moz-selection{background:#073642}code[class*=language-]::selection{background:#073642}code[class*=language-] ::-moz-selection{background:#073642}code[class*=language-] ::selection{background:#073642}pre[class*=language-]{border-radius:.3em;margin:.5em 0;padding:1em;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{border-radius:.3em;padding:.1em}.token.comment,.token.prolog,.token.doctype,.token.cdata{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.property,.token.tag,.token.boolean,.token.number,.token.constant,.token.symbol,.token.deleted{color:#268bd2}.token.selector,.token.attr-name,.token.string,.token.char,.token.builtin,.token.url,.token.inserted{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.function,.token.class-name{color:#b58900}.token.regex,.token.important,.token.variable{color:#cb4b16}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
|