diff --git a/.gitignore b/.gitignore index 90f1512..a8f51dc 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ beszel/cmd/hub/hub beszel/cmd/agent/agent node_modules beszel/build +*timestamp* diff --git a/beszel/site/bun.lockb b/beszel/site/bun.lockb index eb19571..7fd9092 100755 Binary files a/beszel/site/bun.lockb and b/beszel/site/bun.lockb differ diff --git a/beszel/site/lingui.config.ts b/beszel/site/lingui.config.ts new file mode 100644 index 0000000..c58cabd --- /dev/null +++ b/beszel/site/lingui.config.ts @@ -0,0 +1,15 @@ +import type { LinguiConfig } from "@lingui/conf" + +const config: LinguiConfig = { + locales: ["en", "ar", "de", "es", "fr", "ja", "ko", "pt", "tr", "ru", "uk", "vi", "zh-CN", "zh-HK"], + sourceLocale: "en", + compileNamespace: "ts", + catalogs: [ + { + path: "/src/locales/{locale}/messages", + include: ["src"], + }, + ], +} + +export default config diff --git a/beszel/site/package-lock.json b/beszel/site/package-lock.json index 24c81eb..dff2e41 100644 --- a/beszel/site/package-lock.json +++ b/beszel/site/package-lock.json @@ -9,6 +9,9 @@ "version": "0.0.0", "dependencies": { "@henrygd/queue": "^1.0.7", + "@lingui/detect-locale": "^4.13.0", + "@lingui/macro": "^4.13.0", + "@lingui/react": "^4.13.0", "@nanostores/react": "^0.7.3", "@nanostores/router": "^0.11.0", "@radix-ui/react-alert-dialog": "^1.1.2", @@ -26,27 +29,28 @@ "@radix-ui/react-toast": "^1.2.2", "@radix-ui/react-tooltip": "^1.1.3", "@tanstack/react-table": "^8.20.5", - "@vitejs/plugin-react": "^4.3.2", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "cmdk": "^1.0.0", "d3-time": "^3.1.0", - "i18next": "^23.16.4", "lucide-react": "^0.452.0", "nanostores": "^0.11.3", "pocketbase": "^0.21.5", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-i18next": "^15.1.0", "recharts": "^2.13.0", "tailwind-merge": "^2.5.4", "tailwindcss-animate": "^1.0.7", "valibot": "^0.36.0" }, "devDependencies": { + "@lingui/cli": "^4.13.0", + "@lingui/swc-plugin": "^4.1.0", + "@lingui/vite-plugin": "^4.13.0", "@types/bun": "^1.1.11", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react-swc": "^3.7.1", "autoprefixer": "^10.4.20", "postcss": "^8.4.47", "tailwindcss": "^3.4.14", @@ -74,6 +78,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "dev": true, "license": "Apache-2.0", "dependencies": { "@jridgewell/gen-mapping": "^0.3.5", @@ -100,6 +105,7 @@ "version": "7.25.4", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz", "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -109,6 +115,7 @@ "version": "7.25.2", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz", "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==", + "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "^2.2.0", @@ -139,6 +146,7 @@ "version": "7.25.6", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz", "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.25.6", @@ -154,6 +162,7 @@ "version": "7.25.2", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz", "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==", + "dev": true, "license": "MIT", "dependencies": { "@babel/compat-data": "^7.25.2", @@ -170,6 +179,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz", "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.24.7" @@ -182,6 +192,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -196,6 +207,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -205,6 +217,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz", "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/template": "^7.24.7", @@ -218,6 +231,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz", "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", @@ -232,6 +246,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "dev": true, "license": "MIT", "bin": { "parser": "bin/babel-parser.js" @@ -244,6 +259,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -258,6 +274,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -267,6 +284,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz", "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.24.7" @@ -279,6 +297,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -293,6 +312,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -302,6 +322,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz", "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/traverse": "^7.24.7", @@ -315,6 +336,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", @@ -336,6 +358,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.24.7", @@ -351,6 +374,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "dev": true, "license": "MIT", "bin": { "parser": "bin/babel-parser.js" @@ -363,6 +387,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -377,6 +402,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -386,6 +412,7 @@ "version": "7.25.2", "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz", "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-module-imports": "^7.24.7", @@ -400,19 +427,11 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz", - "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-simple-access": { "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz", "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==", + "dev": true, "license": "MIT", "dependencies": { "@babel/traverse": "^7.24.7", @@ -426,6 +445,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz", "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", @@ -447,6 +467,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz", "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.24.7", @@ -462,6 +483,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "dev": true, "license": "MIT", "bin": { "parser": "bin/babel-parser.js" @@ -474,6 +496,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -488,6 +511,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -497,6 +521,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.24.7" @@ -509,6 +534,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/helper-string-parser": "^7.24.7", @@ -523,6 +549,7 @@ "version": "7.24.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -550,6 +577,7 @@ "version": "7.24.8", "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz", "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -559,6 +587,7 @@ "version": "7.25.6", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz", "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/template": "^7.25.0", @@ -587,6 +616,7 @@ "version": "7.25.6", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/types": "^7.25.6" @@ -598,36 +628,6 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-transform-react-jsx-self": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.24.7.tgz", - "integrity": "sha512-fOPQYbGSgH0HUp4UJO4sMBFjY6DuWq+2i8rixyUMb3CdGixs/gccURvYOAhajBdKDoGajFr3mUq5rH3phtkGzw==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-transform-react-jsx-source": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.24.7.tgz", - "integrity": "sha512-J2z+MWzZHVOemyLweMqngXrgGC42jQ//R0KdxqkIz/OrbVIIlhFI3WigZ5fO+nwFvBlncr4MGapd8vTyc7RPNQ==", - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.24.7" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/runtime": { "version": "7.26.0", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", @@ -644,6 +644,7 @@ "version": "7.25.0", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz", "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", @@ -658,6 +659,7 @@ "version": "7.25.6", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz", "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==", + "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.24.7", @@ -693,6 +695,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -709,6 +712,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -725,6 +729,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -741,6 +746,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -757,6 +763,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -773,6 +780,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -789,6 +797,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -805,6 +814,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -821,6 +831,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -853,6 +864,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -869,6 +881,7 @@ "cpu": [ "loong64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -885,6 +898,7 @@ "cpu": [ "mips64el" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -901,6 +915,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -917,6 +932,7 @@ "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -933,6 +949,7 @@ "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -949,6 +966,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -965,6 +983,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -981,6 +1000,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -997,6 +1017,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1013,6 +1034,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1029,6 +1051,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1045,6 +1068,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -1115,6 +1139,105 @@ "node": ">=12" } }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@jest/types/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@jest/types/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/@jest/types/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/types/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", @@ -1163,6 +1286,871 @@ "@jridgewell/sourcemap-codec": "^1.4.14" } }, + "node_modules/@lingui/babel-plugin-extract-messages": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-extract-messages/-/babel-plugin-extract-messages-4.13.0.tgz", + "integrity": "sha512-7tvSw/768RU52NYJ9CtdcoPfkR6fF9+1uX7mXkhvcjOHAdZJReOu+8MLTusjjOtcSPYHc3yoercTbNo1k32gQQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/cli": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/cli/-/cli-4.13.0.tgz", + "integrity": "sha512-NqQJmm2b3sf+Fb/blhcS2C6kqzkHVmS4m9VzQZZT0UvxN0Mw5S6hu0aAy/ndXBfRelNqMpdTFGBlrJn/IC6GjQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": "^7.21.0", + "@babel/generator": "^7.21.1", + "@babel/parser": "^7.22.0", + "@babel/runtime": "^7.21.0", + "@babel/types": "^7.21.2", + "@lingui/babel-plugin-extract-messages": "4.13.0", + "@lingui/conf": "4.13.0", + "@lingui/core": "4.13.0", + "@lingui/format-po": "4.13.0", + "@lingui/message-utils": "4.13.0", + "babel-plugin-macros": "^3.0.1", + "chalk": "^4.1.0", + "chokidar": "3.5.1", + "cli-table": "^0.3.11", + "commander": "^10.0.0", + "convert-source-map": "^2.0.0", + "date-fns": "^3.6.0", + "esbuild": "^0.17.10", + "glob": "^7.1.4", + "inquirer": "^7.3.3", + "micromatch": "^4.0.2", + "normalize-path": "^3.0.0", + "ora": "^5.1.0", + "pathe": "^1.1.0", + "pkg-up": "^3.1.0", + "pofile": "^1.1.4", + "pseudolocale": "^2.0.0", + "ramda": "^0.27.1", + "source-map": "^0.8.0-beta.0" + }, + "bin": { + "lingui": "dist/lingui.js" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/android-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz", + "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/android-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz", + "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/android-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz", + "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/darwin-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz", + "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/darwin-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz", + "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/freebsd-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz", + "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/freebsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz", + "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-arm": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz", + "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz", + "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz", + "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-loong64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz", + "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-mips64el": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz", + "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-ppc64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz", + "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-riscv64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz", + "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-s390x": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz", + "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/linux-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz", + "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/netbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz", + "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/openbsd-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz", + "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/sunos-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz", + "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/win32-arm64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz", + "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/win32-ia32": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz", + "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/@esbuild/win32-x64": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz", + "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@lingui/cli/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@lingui/cli/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@lingui/cli/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@lingui/cli/node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/@lingui/cli/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@lingui/cli/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@lingui/cli/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/@lingui/cli/node_modules/esbuild": { + "version": "0.17.19", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz", + "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.17.19", + "@esbuild/android-arm64": "0.17.19", + "@esbuild/android-x64": "0.17.19", + "@esbuild/darwin-arm64": "0.17.19", + "@esbuild/darwin-x64": "0.17.19", + "@esbuild/freebsd-arm64": "0.17.19", + "@esbuild/freebsd-x64": "0.17.19", + "@esbuild/linux-arm": "0.17.19", + "@esbuild/linux-arm64": "0.17.19", + "@esbuild/linux-ia32": "0.17.19", + "@esbuild/linux-loong64": "0.17.19", + "@esbuild/linux-mips64el": "0.17.19", + "@esbuild/linux-ppc64": "0.17.19", + "@esbuild/linux-riscv64": "0.17.19", + "@esbuild/linux-s390x": "0.17.19", + "@esbuild/linux-x64": "0.17.19", + "@esbuild/netbsd-x64": "0.17.19", + "@esbuild/openbsd-x64": "0.17.19", + "@esbuild/sunos-x64": "0.17.19", + "@esbuild/win32-arm64": "0.17.19", + "@esbuild/win32-ia32": "0.17.19", + "@esbuild/win32-x64": "0.17.19" + } + }, + "node_modules/@lingui/cli/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@lingui/cli/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@lingui/cli/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@lingui/cli/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@lingui/cli/node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/@lingui/cli/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@lingui/conf": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/conf/-/conf-4.13.0.tgz", + "integrity": "sha512-7NSinlzgSMKBezLsSM7DMwr0IpTHKr8nuSDpTZpI79+BhW+Xq38jPRQqMXdzItW8Cl/Lsdr3Y3MnYJIl8tADsQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "chalk": "^4.1.0", + "cosmiconfig": "^8.0.0", + "jest-validate": "^29.4.3", + "jiti": "^1.17.1", + "lodash.get": "^4.4.2" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/conf/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@lingui/conf/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/@lingui/conf/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/@lingui/conf/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/@lingui/conf/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@lingui/conf/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@lingui/core": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/core/-/core-4.13.0.tgz", + "integrity": "sha512-kRqQWeEVoqNrDtEdyHPWGsAHRStN8ObYc5a1gdyuBhoj1zaoUS/DMK5C7B1ZeTtj6rCCmZRs6d2tN12hsZ2zJA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "@lingui/message-utils": "4.13.0", + "unraw": "^3.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/detect-locale": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/detect-locale/-/detect-locale-4.13.0.tgz", + "integrity": "sha512-1Q08tMdG3Avh7ruBxFPNA9Ll1ekunpIMHWg9MuGDcDsG/5ucNbZocUh9+iJxkqWmBMNbEaOj14oN8oRsHk2ufA==", + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/format-po": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/format-po/-/format-po-4.13.0.tgz", + "integrity": "sha512-G//WCCXi0cZ9SGuZ0gwm7JCZEiKvENZViqceX8Qjid0r/Lwom3SGeZhVaqzWGQR5YoA8KBQ9elJrbcVJnKh97g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@lingui/conf": "4.13.0", + "@lingui/message-utils": "4.13.0", + "date-fns": "^3.6.0", + "pofile": "^1.1.4" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/macro": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/macro/-/macro-4.13.0.tgz", + "integrity": "sha512-OjhaWOWbTCXHOOHNaGI0shMP3qrPjNZ19tpEx/iStAmJq64fkevx/HbDPI0uuqLX8v1NFWG/SzBMIQzJb5YOvA==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "@babel/types": "^7.20.7", + "@lingui/conf": "4.13.0", + "@lingui/core": "4.13.0", + "@lingui/message-utils": "4.13.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "@lingui/react": "^4.0.0", + "babel-plugin-macros": "2 || 3" + } + }, + "node_modules/@lingui/message-utils": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/message-utils/-/message-utils-4.13.0.tgz", + "integrity": "sha512-tI/WBVZym+APwqk0O3xTaF0k+RQIv5E4PqGHdXqwbofycHly2C+izH+hg6UeNctc6jd19GRwqu/4ga9knkdAlQ==", + "license": "MIT", + "dependencies": { + "@messageformat/parser": "^5.0.0", + "js-sha256": "^0.10.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@lingui/react": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/react/-/react-4.13.0.tgz", + "integrity": "sha512-5remR9rVwosiiX/RnEWETHA8cpqQiP7U87OXXMPz67LuyG3XP8RP+ic75rVn284DHLHgpjDbauz7vYIz855ZoQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.20.13", + "@lingui/core": "4.13.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/@lingui/swc-plugin": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@lingui/swc-plugin/-/swc-plugin-4.1.0.tgz", + "integrity": "sha512-LBiSbDJoYlB5pT3qtOwZzmqAXSSuhSTx9Zxfhfmfo2NZ6otCDYULCYj0YoXjOCyL1WOWQ72CwAhdxUS8WIt/OQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@lingui/macro": "4" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "next": { + "optional": true + } + } + }, + "node_modules/@lingui/vite-plugin": { + "version": "4.13.0", + "resolved": "https://registry.npmjs.org/@lingui/vite-plugin/-/vite-plugin-4.13.0.tgz", + "integrity": "sha512-PuyMQwVYhwoWva+rNyiMQFoit9WAFqcMP/8c8fL3fFJlSaAXa+Roy4RfnoixfPoqe++qEOkjvDF0vKSAjiX0iA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@lingui/cli": "4.13.0", + "@lingui/conf": "4.13.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "peerDependencies": { + "vite": "^3 || ^4 || ^5.0.9" + } + }, + "node_modules/@messageformat/parser": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@messageformat/parser/-/parser-5.1.0.tgz", + "integrity": "sha512-jKlkls3Gewgw6qMjKZ9SFfHUpdzEVdovKFtW1qRhJ3WI4FW5R/NnGDqr8SDGz+krWDO3ki94boMmQvGke1HwUQ==", + "license": "MIT", + "dependencies": { + "moo": "^0.5.1" + } + }, "node_modules/@nanostores/react": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/@nanostores/react/-/react-0.7.3.tgz", @@ -2318,6 +3306,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2331,6 +3320,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2344,6 +3334,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2357,6 +3348,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2370,6 +3362,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2383,6 +3376,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2396,6 +3390,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2409,6 +3404,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2422,6 +3418,7 @@ "cpu": [ "ppc64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2435,6 +3432,7 @@ "cpu": [ "riscv64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2448,6 +3446,7 @@ "cpu": [ "s390x" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2461,6 +3460,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2474,6 +3474,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2487,6 +3488,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2500,6 +3502,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -2513,12 +3516,245 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ "win32" ] }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "license": "MIT" + }, + "node_modules/@swc/core": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core/-/core-1.7.42.tgz", + "integrity": "sha512-iQrRk3SKndQZ4ptJv1rzeQSiCYQIhMjiO97QXOlCcCoaazOLKPnLnXzU4Kv0FuBFyYfG2FE94BoR0XI2BN02qw==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3", + "@swc/types": "^0.1.13" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/swc" + }, + "optionalDependencies": { + "@swc/core-darwin-arm64": "1.7.42", + "@swc/core-darwin-x64": "1.7.42", + "@swc/core-linux-arm-gnueabihf": "1.7.42", + "@swc/core-linux-arm64-gnu": "1.7.42", + "@swc/core-linux-arm64-musl": "1.7.42", + "@swc/core-linux-x64-gnu": "1.7.42", + "@swc/core-linux-x64-musl": "1.7.42", + "@swc/core-win32-arm64-msvc": "1.7.42", + "@swc/core-win32-ia32-msvc": "1.7.42", + "@swc/core-win32-x64-msvc": "1.7.42" + }, + "peerDependencies": { + "@swc/helpers": "*" + }, + "peerDependenciesMeta": { + "@swc/helpers": { + "optional": true + } + } + }, + "node_modules/@swc/core-darwin-arm64": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-arm64/-/core-darwin-arm64-1.7.42.tgz", + "integrity": "sha512-fWhaCs2+8GDRIcjExVDEIfbptVrxDqG8oHkESnXgymmvqTWzWei5SOnPNMS8Q+MYsn/b++Y2bDxkcwmq35Bvxg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-darwin-x64": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-darwin-x64/-/core-darwin-x64-1.7.42.tgz", + "integrity": "sha512-ZaVHD2bijrlkCyD7NDzLmSK849Jgcx+6DdL4x1dScoz1slJ8GTvLtEu0JOUaaScQwA+cVlhmrmlmi9ssjbRLGQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm-gnueabihf": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm-gnueabihf/-/core-linux-arm-gnueabihf-1.7.42.tgz", + "integrity": "sha512-iF0BJj7hVTbY/vmbvyzVTh/0W80+Q4fbOYschdUM3Bsud39TA+lSaPOefOHywkNH58EQ1z3EAxYcJOWNES7GFQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-gnu": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-gnu/-/core-linux-arm64-gnu-1.7.42.tgz", + "integrity": "sha512-xGu8j+DOLYTLkVmsfZPJbNPW1EkiWgSucT0nOlz77bLxImukt/0+HVm2hOwHSKuArQ8C3cjahAMY3b/s4VH2ww==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-arm64-musl": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-linux-arm64-musl/-/core-linux-arm64-musl-1.7.42.tgz", + "integrity": "sha512-qtW3JNO7i1yHEko59xxz+jY38+tYmB96JGzj6XzygMbYJYZDYbrOpXQvKbMGNG3YeTDan7Fp2jD0dlKf7NgDPA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-gnu": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-gnu/-/core-linux-x64-gnu-1.7.42.tgz", + "integrity": "sha512-F9WY1TN+hhhtiEzZjRQziNLt36M5YprMeOBHjsLVNqwgflzleSI7ulgnlQECS8c8zESaXj3ksGduAoJYtPC1cA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-linux-x64-musl": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-linux-x64-musl/-/core-linux-x64-musl-1.7.42.tgz", + "integrity": "sha512-7YMdOaYKLMQ8JGfnmRDwidpLFs/6ka+80zekeM0iCVO48yLrJR36G0QGXzMjKsXI0BPhq+mboZRRENK4JfQnEA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-arm64-msvc": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-win32-arm64-msvc/-/core-win32-arm64-msvc-1.7.42.tgz", + "integrity": "sha512-C5CYWaIZEyqPl5W/EwcJ/mLBJFHVoUEa/IwWi0b4q2fCXcSCktQGwKXOQ+d67GneiZoiq0HasgcdMmMpGS9YRQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-ia32-msvc": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-win32-ia32-msvc/-/core-win32-ia32-msvc-1.7.42.tgz", + "integrity": "sha512-3j47seZ5pO62mbrqvPe1iwhe2BXnM5q7iB+n2xgA38PCGYt0mnaJafqmpCXm/uYZOCMqSNynaoOWCMMZm4sqtA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/core-win32-x64-msvc": { + "version": "1.7.42", + "resolved": "https://registry.npmjs.org/@swc/core-win32-x64-msvc/-/core-win32-x64-msvc-1.7.42.tgz", + "integrity": "sha512-FXl9MdeUogZLGDcLr6QIRdDVkpG0dkN4MLM4dwQ5kcAk+XfKPrQibX6M2kcfhsCx+jtBqtK7hRFReRXPWJZGbA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=10" + } + }, + "node_modules/@swc/counter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@swc/counter/-/counter-0.1.3.tgz", + "integrity": "sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@swc/types": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/@swc/types/-/types-0.1.13.tgz", + "integrity": "sha512-JL7eeCk6zWCbiYQg2xQSdLXQJl8Qoc9rXmG2cEKvHe3CKwMHwHGpfOb8frzNLmbycOo6I51qxnLnn9ESf4I20Q==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@swc/counter": "^0.1.3" + } + }, "node_modules/@tanstack/react-table": { "version": "8.20.5", "resolved": "https://registry.npmjs.org/@tanstack/react-table/-/react-table-8.20.5.tgz", @@ -2552,163 +3788,6 @@ "url": "https://github.com/sponsors/tannerlinsley" } }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__core/node_modules/@babel/parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", - "license": "MIT", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@types/babel__core/node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__core/node_modules/@babel/types/node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.8", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", - "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__generator/node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__generator/node_modules/@babel/types/node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "license": "MIT", - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template/node_modules/@babel/parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", - "license": "MIT", - "bin": { - "parser": "bin/babel-parser.js" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/@types/babel__template/node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__template/node_modules/@babel/types/node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.6", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", - "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", - "license": "MIT", - "dependencies": { - "@babel/types": "^7.20.7" - } - }, - "node_modules/@types/babel__traverse/node_modules/@babel/types": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz", - "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==", - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.24.7", - "@babel/helper-validator-identifier": "^7.24.7", - "to-fast-properties": "^2.0.0" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@types/babel__traverse/node_modules/@babel/types/node_modules/@babel/helper-string-parser": { - "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz", - "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==", - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@types/bun": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.1.11.tgz", @@ -2786,18 +3865,48 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, "license": "MIT" }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, "node_modules/@types/node": { "version": "20.12.14", "resolved": "https://registry.npmjs.org/@types/node/-/node-20.12.14.tgz", "integrity": "sha512-scnD59RpYD91xngrQQLGkE+6UrHUPzeKZWhhjBSa3HSkwjbQc38+q3RoIVEwxQGRw3M+j5hpNAM+lgV3cVormg==", - "devOptional": true, "license": "MIT", "dependencies": { "undici-types": "~5.26.4" } }, + "node_modules/@types/parse-json": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==", + "license": "MIT" + }, "node_modules/@types/prop-types": { "version": "15.7.12", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz", @@ -2836,23 +3945,48 @@ "@types/node": "*" } }, - "node_modules/@vitejs/plugin-react": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.2.tgz", - "integrity": "sha512-hieu+o05v4glEBucTcKMK3dlES0OeJlD9YVOAPraVMOInBCwzumaIFiUjr4bHK7NPgnAHgiskUoceKercrN8vg==", + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", "license": "MIT", "dependencies": { - "@babel/core": "^7.25.2", - "@babel/plugin-transform-react-jsx-self": "^7.24.7", - "@babel/plugin-transform-react-jsx-source": "^7.24.7", - "@types/babel__core": "^7.20.5", - "react-refresh": "^0.14.2" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "license": "MIT" + }, + "node_modules/@vitejs/plugin-react-swc": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-react-swc/-/plugin-react-swc-3.7.1.tgz", + "integrity": "sha512-vgWOY0i1EROUK0Ctg1hwhtC3SdcDjZcdit4Ups4aPkDcB1jYhmo+RMYWY87cmXMhvtD5uf8lV89j2w16vkdSVg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@swc/core": "^1.7.26" }, "peerDependencies": { - "vite": "^4.2.0 || ^5.0.0" + "vite": "^4 || ^5" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/ansi-regex": { @@ -2904,6 +4038,12 @@ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", "license": "MIT" }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, "node_modules/aria-hidden": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/aria-hidden/-/aria-hidden-1.2.4.tgz", @@ -2954,12 +4094,73 @@ "postcss": "^8.1.0" } }, + "node_modules/babel-plugin-macros": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-3.1.0.tgz", + "integrity": "sha512-Cg7TFGpIr01vOQNODXOOaGz2NpCU5gl8x1qJFbb6hbZxR7XrcE2vtbAsTAbJ7/xwJtUuJEw8K8Zr/AE0LHlesg==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.12.5", + "cosmiconfig": "^7.0.0", + "resolve": "^1.19.0" + }, + "engines": { + "node": ">=10", + "npm": ">=6" + } + }, + "node_modules/babel-plugin-macros/node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/babel-plugin-macros/node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "license": "MIT" }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/binary-extensions": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", @@ -2972,6 +4173,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, "node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -2997,6 +4210,7 @@ "version": "4.23.3", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz", "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==", + "dev": true, "funding": [ { "type": "opencollective", @@ -3025,6 +4239,31 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, "node_modules/bun-types": { "version": "1.1.30", "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.1.30.tgz", @@ -3036,6 +4275,27 @@ "@types/ws": "~8.5.10" } }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -3049,6 +4309,7 @@ "version": "1.0.30001647", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001647.tgz", "integrity": "sha512-n83xdNiyeNcHpzWY+1aFbqCK7LuLfBricc4+alSQL2Xb6OR3XpnQAmlDG+pQcdTfiHRuLcQ96VOfrPSGiNJYSg==", + "dev": true, "funding": [ { "type": "opencollective", @@ -3079,6 +4340,13 @@ "node": ">=4" } }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true, + "license": "MIT" + }, "node_modules/chokidar": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", @@ -3136,6 +4404,64 @@ "node": ">=6" } }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table": { + "version": "0.3.11", + "resolved": "https://registry.npmjs.org/cli-table/-/cli-table-0.3.11.tgz", + "integrity": "sha512-IqLQi4lO0nIB4tcdTpN4LCB9FI3uqrJZK7RC515EnhZ6qBaglkIgICb1wjeAqpdoOabm1+SuQtkXIPdYC93jhQ==", + "dev": true, + "dependencies": { + "colors": "1.0.3" + }, + "engines": { + "node": ">= 0.2.0" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, "node_modules/clsx": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz", @@ -3629,6 +4955,16 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "license": "MIT" }, + "node_modules/colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha512-pFGrxThWcWQ2MsAz6RtgeWe4NK2kUE1WfsrvvlctdII745EW9I0yflqhe7++M5LEc7bV2c/9/5zc8sFcpL0Drw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.1.90" + } + }, "node_modules/commander": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", @@ -3638,12 +4974,46 @@ "node": ">= 6" } }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, "node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "dev": true, "license": "MIT" }, + "node_modules/cosmiconfig": { + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", + "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "license": "MIT", + "dependencies": { + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + }, + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -3797,10 +5167,22 @@ "node": ">=12" } }, + "node_modules/date-fns": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-3.6.0.tgz", + "integrity": "sha512-fRHTG8g/Gif+kSh50gaGEdToemgfj74aRX3swtiouboip5JDLAyDE9F11nHMIcvOaXeOC6D7SpNhi7uFyB7Uww==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/kossnocorp" + } + }, "node_modules/debug": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", + "dev": true, "license": "MIT", "dependencies": { "ms": "2.1.2" @@ -3820,6 +5202,19 @@ "integrity": "sha512-qIMFpTMZmny+MMIitAB6D7iVPEorVw6YQRWkvarTkT4tBeSLLiHzcwj6q0MmYSFCiVpiqPJTJEYIrpcPzVEIvg==", "license": "MIT" }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/detect-node-es": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", @@ -3858,6 +5253,7 @@ "version": "1.5.4", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.4.tgz", "integrity": "sha512-orzA81VqLyIGUEA77YkVA1D+N+nNfl2isJVjjmOyrlxuooZ19ynb+dOlaDTqd/idKRS9lDCSBmtzM+kyCsMnkA==", + "dev": true, "license": "ISC" }, "node_modules/emoji-regex": { @@ -3866,10 +5262,20 @@ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", "license": "MIT" }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, "node_modules/esbuild": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "dev": true, "hasInstallScript": true, "license": "MIT", "bin": { @@ -3908,6 +5314,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -3928,6 +5335,21 @@ "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "license": "MIT" }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "license": "MIT", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/fast-equals": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-5.0.1.tgz", @@ -3974,6 +5396,22 @@ "reusify": "^1.0.4" } }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", @@ -3986,6 +5424,19 @@ "node": ">=8" } }, + "node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/foreground-child": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.1.tgz", @@ -4016,6 +5467,13 @@ "url": "https://github.com/sponsors/rawify" } }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, "node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", @@ -4043,6 +5501,7 @@ "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" @@ -4096,6 +5555,7 @@ "version": "11.12.0", "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, "license": "MIT", "engines": { "node": ">=4" @@ -4122,36 +5582,219 @@ "node": ">= 0.4" } }, - "node_modules/html-parse-stringify": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/html-parse-stringify/-/html-parse-stringify-3.0.1.tgz", - "integrity": "sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==", + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, "license": "MIT", "dependencies": { - "void-elements": "3.1.0" + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "node_modules/i18next": { - "version": "23.16.4", - "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.16.4.tgz", - "integrity": "sha512-9NIYBVy9cs4wIqzurf7nLXPyf3R78xYbxExVqHLK9od3038rjpyOEzW+XB130kZ1N4PZ9inTtJ471CRJ4Ituyg==", + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "dev": true, "funding": [ { - "type": "individual", - "url": "https://locize.com" + "type": "github", + "url": "https://github.com/sponsors/feross" }, { - "type": "individual", - "url": "https://locize.com/i18next.html" + "type": "patreon", + "url": "https://www.patreon.com/feross" }, { - "type": "individual", - "url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project" + "type": "consulting", + "url": "https://feross.org/support" } ], + "license": "BSD-3-Clause" + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "license": "MIT", "dependencies": { - "@babel/runtime": "^7.23.2" + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/inquirer/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/internmap": { @@ -4172,6 +5815,12 @@ "loose-envify": "^1.0.0" } }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, "node_modules/is-binary-path": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", @@ -4229,6 +5878,16 @@ "node": ">=0.10.0" } }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -4238,6 +5897,19 @@ "node": ">=0.12.0" } }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -4262,6 +5934,102 @@ "@pkgjs/parseargs": "^0.11.0" } }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/jest-validate/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/jest-validate/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/jest-validate/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/jest-validate/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/jiti": { "version": "1.21.6", "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", @@ -4271,16 +6039,35 @@ "jiti": "bin/jiti.js" } }, + "node_modules/js-sha256": { + "version": "0.10.1", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.10.1.tgz", + "integrity": "sha512-5obBtsz9301ULlsgggLg542s/jqtddfOpV5KJc4hajc9JV8GeY2gZHSVpYBn4nWqAUTJ9v+xwtbJ1mIBgIH5Vw==", + "license": "MIT" + }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "license": "MIT" }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, "license": "MIT", "bin": { "jsesc": "bin/jsesc" @@ -4289,10 +6076,17 @@ "node": ">=4" } }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, "node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "dev": true, "license": "MIT", "bin": { "json5": "lib/cli.js" @@ -4301,6 +6095,15 @@ "node": ">=6" } }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/lilconfig": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", @@ -4316,12 +6119,132 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", "license": "MIT" }, + "node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", "license": "MIT" }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "license": "MIT" + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.1.0", + "is-unicode-supported": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/log-symbols/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/log-symbols/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/log-symbols/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/log-symbols/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", @@ -4338,6 +6261,7 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, "license": "ISC", "dependencies": { "yallist": "^3.0.2" @@ -4374,6 +6298,16 @@ "node": ">=8.6" } }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", @@ -4398,12 +6332,26 @@ "node": ">=16 || 14 >=14.17" } }, + "node_modules/moo": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.2.tgz", + "integrity": "sha512-iSAJLHYKnX41mKcJKjqvnAN9sf0LMDTXDEvFv+ffuRR9a1MIuXLjMNL6EsnDHSkKLTWNqQQ5uo61P4EbU4NU+Q==", + "license": "BSD-3-Clause" + }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, "license": "MIT" }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true, + "license": "ISC" + }, "node_modules/mz": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", @@ -4452,6 +6400,7 @@ "version": "2.0.18", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "dev": true, "license": "MIT" }, "node_modules/normalize-path": { @@ -4491,12 +6440,260 @@ "node": ">= 6" } }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/package-json-from-dist": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", "license": "BlueOak-1.0.0" }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", @@ -4537,6 +6734,22 @@ "node": ">=18" } }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/pathe": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", + "dev": true, + "license": "MIT" + }, "node_modules/picocolors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", @@ -4573,12 +6786,32 @@ "node": ">= 6" } }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/pocketbase": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/pocketbase/-/pocketbase-0.21.5.tgz", "integrity": "sha512-bnI/uinnQps+ElSlzxkc4yvwuSFfKcoszDtXH/4QT2FhGq2mJVUvDlxn+rjRXVntUjPfmMG5LEPZ1eGqV6ssog==", "license": "MIT" }, + "node_modules/pofile": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/pofile/-/pofile-1.1.4.tgz", + "integrity": "sha512-r6Q21sKsY1AjTVVjOuU02VYKVNQGJNQHjTIvs4dEbeuuYfxgYk/DGD2mqqq4RDaVkwdSq0VEtmQUOPe/wH8X3g==", + "dev": true, + "license": "MIT" + }, "node_modules/postcss": { "version": "8.4.47", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", @@ -4734,6 +6967,32 @@ "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "license": "ISC" }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, "node_modules/prop-types": { "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", @@ -4751,6 +7010,42 @@ "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", "license": "MIT" }, + "node_modules/pseudolocale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pseudolocale/-/pseudolocale-2.1.0.tgz", + "integrity": "sha512-af5fsrRvVwD+MBasBJvuDChT0KDqT0nEwD9NTgbtHJ16FKomWac9ua0z6YVNB4G9x9IOaiGWym62aby6n4tFMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "commander": "^10.0.0" + }, + "bin": { + "pseudolocale": "dist/cli.mjs" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/pseudolocale/node_modules/commander": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz", + "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=14" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -4771,6 +7066,13 @@ ], "license": "MIT" }, + "node_modules/ramda": { + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", + "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", + "dev": true, + "license": "MIT" + }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -4796,43 +7098,12 @@ "react": "^18.3.1" } }, - "node_modules/react-i18next": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/react-i18next/-/react-i18next-15.1.0.tgz", - "integrity": "sha512-zj3nJynMnZsy2gPZiOTC7XctCY5eQGqT3tcKMmfJWC9FMvgd+960w/adq61j8iPzpwmsXejqID9qC3Mqu1Xu2Q==", - "license": "MIT", - "dependencies": { - "@babel/runtime": "^7.25.0", - "html-parse-stringify": "^3.0.1" - }, - "peerDependencies": { - "i18next": ">= 23.2.3", - "react": ">= 16.8.0" - }, - "peerDependenciesMeta": { - "react-dom": { - "optional": true - }, - "react-native": { - "optional": true - } - } - }, "node_modules/react-is": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", "license": "MIT" }, - "node_modules/react-refresh": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.14.2.tgz", - "integrity": "sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==", - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/react-remove-scroll": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.6.0.tgz", @@ -4943,6 +7214,21 @@ "pify": "^2.3.0" } }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/readdirp": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", @@ -5010,6 +7296,36 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/restore-cursor/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true, + "license": "ISC" + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -5024,6 +7340,7 @@ "version": "4.24.0", "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.24.0.tgz", "integrity": "sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==", + "dev": true, "license": "MIT", "dependencies": { "@types/estree": "1.0.6" @@ -5055,6 +7372,16 @@ "fsevents": "~2.3.2" } }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -5078,6 +7405,54 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/rxjs/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, "node_modules/scheduler": { "version": "0.23.2", "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", @@ -5091,6 +7466,7 @@ "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -5129,6 +7505,19 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/source-map": { + "version": "0.8.0-beta.0", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz", + "integrity": "sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "whatwg-url": "^7.0.0" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", @@ -5138,6 +7527,16 @@ "node": ">=0.10.0" } }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, "node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", @@ -5370,12 +7769,32 @@ "node": ">=0.8" } }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", + "dev": true, + "license": "MIT" + }, "node_modules/tiny-invariant": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz", "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==", "license": "MIT" }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -5397,6 +7816,16 @@ "node": ">=8.0" } }, + "node_modules/tr46": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", + "integrity": "sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "punycode": "^2.1.0" + } + }, "node_modules/ts-interface-checker": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", @@ -5409,11 +7838,24 @@ "integrity": "sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ==", "license": "0BSD" }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/typescript": { "version": "5.6.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz", "integrity": "sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==", - "dev": true, + "devOptional": true, "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", @@ -5427,13 +7869,19 @@ "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "devOptional": true, + "license": "MIT" + }, + "node_modules/unraw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unraw/-/unraw-3.0.0.tgz", + "integrity": "sha512-08/DA66UF65OlpUDIQtbJyrqTR0jTAlJ+jsnkQ4jxR7+K5g5YG1APZKQSMCE1vqqmD+2pv6+IdEjmopFatacvg==", "license": "MIT" }, "node_modules/update-browserslist-db": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "dev": true, "funding": [ { "type": "opencollective", @@ -5541,6 +7989,7 @@ "version": "5.4.9", "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz", "integrity": "sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==", + "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.21.3", @@ -5596,13 +8045,33 @@ } } }, - "node_modules/void-elements": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", - "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dev": true, "license": "MIT", - "engines": { - "node": ">=0.10.0" + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, "node_modules/which": { @@ -5741,10 +8210,18 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, "node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true, "license": "ISC" }, "node_modules/yaml": { diff --git a/beszel/site/package.json b/beszel/site/package.json index 7535aed..9a8ea46 100644 --- a/beszel/site/package.json +++ b/beszel/site/package.json @@ -6,10 +6,15 @@ "scripts": { "dev": "vite", "build": "vite build", - "preview": "vite preview" + "preview": "vite preview", + "sync": "lingui extract --overwrite && lingui compile", + "sync_and_purge": "lingui extract --overwrite --clean && lingui compile" }, "dependencies": { "@henrygd/queue": "^1.0.7", + "@lingui/detect-locale": "^4.13.0", + "@lingui/macro": "^4.13.0", + "@lingui/react": "^4.13.0", "@nanostores/react": "^0.7.3", "@nanostores/router": "^0.11.0", "@radix-ui/react-alert-dialog": "^1.1.2", @@ -27,27 +32,28 @@ "@radix-ui/react-toast": "^1.2.2", "@radix-ui/react-tooltip": "^1.1.3", "@tanstack/react-table": "^8.20.5", - "@vitejs/plugin-react": "^4.3.2", "class-variance-authority": "^0.7.0", "clsx": "^2.1.1", "cmdk": "^1.0.0", "d3-time": "^3.1.0", - "i18next": "^23.16.4", "lucide-react": "^0.452.0", "nanostores": "^0.11.3", "pocketbase": "^0.21.5", "react": "^18.3.1", "react-dom": "^18.3.1", - "react-i18next": "^15.1.0", "recharts": "^2.13.0", "tailwind-merge": "^2.5.4", "tailwindcss-animate": "^1.0.7", "valibot": "^0.36.0" }, "devDependencies": { + "@lingui/cli": "^4.13.0", + "@lingui/swc-plugin": "^4.1.0", + "@lingui/vite-plugin": "^4.13.0", "@types/bun": "^1.1.11", "@types/react": "^18.3.11", "@types/react-dom": "^18.3.1", + "@vitejs/plugin-react-swc": "^3.7.1", "autoprefixer": "^10.4.20", "postcss": "^8.4.47", "tailwindcss": "^3.4.14", diff --git a/beszel/site/src/components/add-system.tsx b/beszel/site/src/components/add-system.tsx index f90d846..2ee6dfe 100644 --- a/beszel/site/src/components/add-system.tsx +++ b/beszel/site/src/components/add-system.tsx @@ -19,11 +19,9 @@ import { useState, useRef, MutableRefObject } from "react" import { useStore } from "@nanostores/react" import { cn, copyToClipboard, isReadOnlyUser } from "@/lib/utils" import { navigate } from "./router" -import { useTranslation } from "react-i18next" +import { Trans } from "@lingui/macro" export function AddSystemButton({ className }: { className?: string }) { - const { t } = useTranslation() - const [open, setOpen] = useState(false) const port = useRef() as MutableRefObject const publicKey = useStore($publicKey) @@ -73,56 +71,64 @@ export function AddSystemButton({ className }: { className?: string }) { className={cn("flex gap-1 max-xs:h-[2.4rem]", className, isReadOnlyUser() && "hidden")} > - {t("add")} - {t("system")} + + Add System + - {t("add_system.add_new_system")} + + Add New System + Docker - {t("add_system.binary")} + + Binary + {/* Docker */} - - {t("add_system.dialog_des_1")} docker-compose.yml{" "} - {t("add_system.dialog_des_2")} + + + The agent must be running on the system to connect. Copy the + docker-compose.yml for the agent below. + {/* Binary */} - - {t("add_system.dialog_des_1")} install command{" "} - {t("add_system.dialog_des_2")} + + + The agent must be running on the system to connect. Copy the installation command for the agent below. +
-

{t("add_system.click_to_copy")}

+

+ Click to copy +

@@ -153,18 +161,22 @@ export function AddSystemButton({ className }: { className?: string }) { + - {/* Binary */} + - diff --git a/beszel/site/src/components/alerts/alert-button.tsx b/beszel/site/src/components/alerts/alert-button.tsx index e62bb50..2f61b2a 100644 --- a/beszel/site/src/components/alerts/alert-button.tsx +++ b/beszel/site/src/components/alerts/alert-button.tsx @@ -17,7 +17,7 @@ import { Link } from "../router" import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs" import { Checkbox } from "../ui/checkbox" import { SystemAlert, SystemAlertGlobal } from "./alerts-system" -import { useTranslation } from "react-i18next" +import { Trans, t } from "@lingui/macro" export default memo(function AlertsButton({ system }: { system: SystemRecord }) { const alerts = useStore($alerts) @@ -29,7 +29,7 @@ export default memo(function AlertsButton({ system }: { system: SystemRecord }) return ( -
@@ -225,7 +223,9 @@ export function UserAuthForm({
- Or continue with + + Or continue with +
)} @@ -253,8 +253,8 @@ export function UserAuthForm({ if (!authWindow) { setIsOauthLoading(false) toast({ - title: "Error", - description: "Please enable pop-ups for this site", + title: t`Error`, + description: t`Please enable pop-ups for this site`, variant: "destructive", }) return @@ -304,19 +304,25 @@ export function UserAuthForm({ - OAuth 2 / OIDC support + + OAuth 2 / OIDC support +
-

{t("auth.openid_des")}

- {t("please_view_the")}{" "} - - GitHub README - {" "} - {t("for_instructions")} + Beszel supports OpenID Connect and many OAuth2 authentication providers. +

+

+ + Please see{" "} + + the documentation + {" "} + for instructions. +

@@ -328,7 +334,7 @@ export function UserAuthForm({ href="/forgot-password" className="text-sm mx-auto hover:text-brand underline underline-offset-4 opacity-70 hover:opacity-100 transition-opacity" > - {t("auth.forgot_password")} + Forgot password? )} diff --git a/beszel/site/src/components/login/forgot-pass-form.tsx b/beszel/site/src/components/login/forgot-pass-form.tsx index 44ef3f3..f25c2ec 100644 --- a/beszel/site/src/components/login/forgot-pass-form.tsx +++ b/beszel/site/src/components/login/forgot-pass-form.tsx @@ -8,18 +8,17 @@ import { cn } from "@/lib/utils" import { pb } from "@/lib/stores" import { Dialog, DialogHeader } from "../ui/dialog" import { DialogContent, DialogTrigger, DialogTitle } from "../ui/dialog" -import { useTranslation } from "react-i18next" +import { t, Trans } from "@lingui/macro" const showLoginFaliedToast = () => { toast({ - title: "Login attempt failed", - description: "Please check your credentials and try again", + title: t`Login attempt failed`, + description: t`Please check your credentials and try again`, variant: "destructive", }) } export default function ForgotPassword() { - const { t } = useTranslation() const [isLoading, setIsLoading] = useState(false) const [email, setEmail] = useState("") @@ -31,8 +30,8 @@ export default function ForgotPassword() { // console.log(email) await pb.collection("users").requestPasswordReset(email) toast({ - title: "Password reset request received", - description: `Check ${email} for a reset link.`, + title: t`Password reset request received`, + description: t`Check ${email} for a reset link.`, }) } catch (e) { showLoginFaliedToast() @@ -51,7 +50,7 @@ export default function ForgotPassword() {
)} - {t("auth.reset_password")} + Reset Password
- {t("auth.command_line_instructions")} + + Command line instructions + -

{t("auth.command_1")}

-

{t("auth.command_2")}

+

+ + If you've lost the password to your admin account, you may reset it using the following command. + +

+

+ Then log into the backend and reset your user account password in the users table. +

beszel admin update youremail@example.com newpassword diff --git a/beszel/site/src/components/login/login.tsx b/beszel/site/src/components/login/login.tsx index 2023358..cc85145 100644 --- a/beszel/site/src/components/login/login.tsx +++ b/beszel/site/src/components/login/login.tsx @@ -6,17 +6,15 @@ import { useStore } from "@nanostores/react" import ForgotPassword from "./forgot-pass-form" import { $router } from "../router" import { AuthMethodsList } from "pocketbase" -import { useTranslation } from "react-i18next" +import { t } from "@lingui/macro" export default function () { - const { t } = useTranslation() - const page = useStore($router) const [isFirstRun, setFirstRun] = useState(false) const [authMethods, setAuthMethods] = useState() useEffect(() => { - document.title = "Login / Beszel" + document.title = t`Login` + " / Beszel" pb.send("/api/beszel/first-run", {}).then(({ firstRun }) => { setFirstRun(firstRun) @@ -33,11 +31,11 @@ export default function () { const subtitle = useMemo(() => { if (isFirstRun) { - return t("auth.create") + return t`Please create an admin account` } else if (page?.path === "/forgot-password") { - return t("auth.reset") + return t`Enter email address to reset password` } else { - return t("auth.login") + return t`Please sign in to your account` } }, [isFirstRun, page]) diff --git a/beszel/site/src/components/mode-toggle.tsx b/beszel/site/src/components/mode-toggle.tsx index cbfac25..b39b55b 100644 --- a/beszel/site/src/components/mode-toggle.tsx +++ b/beszel/site/src/components/mode-toggle.tsx @@ -3,38 +3,36 @@ import { LaptopIcon, MoonStarIcon, SunIcon } from "lucide-react" import { Button } from "@/components/ui/button" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger } from "@/components/ui/dropdown-menu" import { useTheme } from "@/components/theme-provider" -import { useTranslation } from "react-i18next" import { cn } from "@/lib/utils" +import { t, Trans } from "@lingui/macro" export function ModeToggle() { - const { t } = useTranslation() const { theme, setTheme } = useTheme() const options = [ { theme: "light", Icon: SunIcon, - label: t("themes.light"), + label: Light, }, { theme: "dark", Icon: MoonStarIcon, - label: t("themes.dark"), + label: Dark, }, { theme: "system", Icon: LaptopIcon, - label: t("themes.system"), + label: System, }, ] return ( - diff --git a/beszel/site/src/components/navbar.tsx b/beszel/site/src/components/navbar.tsx index c48f78c..80b8e9e 100644 --- a/beszel/site/src/components/navbar.tsx +++ b/beszel/site/src/components/navbar.tsx @@ -27,21 +27,19 @@ import { DropdownMenuItem, } from "@/components/ui/dropdown-menu" import { AddSystemButton } from "./add-system" -import { useTranslation } from "react-i18next" -import { TFunction } from "i18next" +import { Trans } from "@lingui/macro" const CommandPalette = lazy(() => import("./command-palette")) const isMac = navigator.platform.toUpperCase().indexOf("MAC") >= 0 export default function Navbar() { - const { t } = useTranslation() return (
- +
@@ -68,31 +66,41 @@ export default function Navbar() { - {t("user_dm.users")} + + Users + - {t("systems")} + + Systems + - {t("user_dm.logs")} + + Logs + - {t("user_dm.backups")} + + Backups + - {t("user_dm.auth_providers")} + + Auth Providers + @@ -101,7 +109,9 @@ export default function Navbar() { pb.authStore.clear()}> - {t("user_dm.log_out")} + + Log Out + @@ -111,7 +121,7 @@ export default function Navbar() { ) } -function SearchButton({ t }: { t: TFunction<"translation", undefined> }) { +function SearchButton() { const [open, setOpen] = useState(false) const Kbd = ({ children }: { children: React.ReactNode }) => ( @@ -129,8 +139,7 @@ function SearchButton({ t }: { t: TFunction<"translation", undefined> }) { > - {t("search")} - {t("search")} + Search {isMac ? "⌘" : "Ctrl"} K diff --git a/beszel/site/src/components/routes/home.tsx b/beszel/site/src/components/routes/home.tsx index de1a9d4..ff8d351 100644 --- a/beszel/site/src/components/routes/home.tsx +++ b/beszel/site/src/components/routes/home.tsx @@ -9,17 +9,17 @@ import { AlertRecord, SystemRecord } from "@/types" import { Input } from "../ui/input" import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert" import { Link } from "../router" -import { useTranslation } from "react-i18next" +import { Plural, t, Trans } from "@lingui/macro" +import { useLingui } from "@lingui/react" const SystemsTable = lazy(() => import("../systems-table/systems-table")) -export default function () { - const { t } = useTranslation() - +export default function Home() { const hubVersion = useStore($hubVersion) const [filter, setFilter] = useState() const alerts = useStore($alerts) const systems = useStore($systems) + const { _ } = useLingui() // todo: maybe remove active alert if changed const activeAlerts = useMemo(() => { @@ -35,7 +35,7 @@ export default function () { }, [alerts]) useEffect(() => { - document.title = "Dashboard / Beszel" + document.title = t`Dashboard` + " / Beszel" // make sure we have the latest list of systems updateSystemList() @@ -61,7 +61,9 @@ export default function () {
- {t("home.active_alerts")} + + Active Alerts +
@@ -76,16 +78,13 @@ export default function () { > - {alert.sysname} {t(info.name)} + {alert.sysname} {info.name().toLowerCase().replace("cpu", "CPU")} - {t("home.active_des", { - value: alert.value, - unit: info.unit, - })} - {t("minutes", { - count: alert.min, - })} + + Exceeds {alert.value} + {info.unit} in last +
- {t("all_systems")} - {t("home.subtitle")} + + All Systems + + + Updated in real time. Click on a system to view information. +
setFilter(e.target.value)} className="w-full md:w-56 lg:w-72 ms-auto px-4" /> diff --git a/beszel/site/src/components/routes/settings/config-yaml.tsx b/beszel/site/src/components/routes/settings/config-yaml.tsx index 4bf9432..8c31223 100644 --- a/beszel/site/src/components/routes/settings/config-yaml.tsx +++ b/beszel/site/src/components/routes/settings/config-yaml.tsx @@ -10,11 +10,9 @@ import { useState } from "react" import { Textarea } from "@/components/ui/textarea" import { toast } from "@/components/ui/use-toast" import clsx from "clsx" -import { useTranslation } from "react-i18next" +import { Trans, t } from "@lingui/macro" export default function ConfigYaml() { - const { t } = useTranslation() - const [configContent, setConfigContent] = useState("") const [isLoading, setIsLoading] = useState(false) @@ -27,7 +25,7 @@ export default function ConfigYaml() { setConfigContent(config) } catch (error: any) { toast({ - title: "Error", + title: t`Error`, description: error.message, variant: "destructive", }) @@ -43,23 +41,37 @@ export default function ConfigYaml() { return (
-

{t("settings.yaml_config.title")}

-

{t("settings.yaml_config.subtitle")}

+

+ YAML Configuration +

+

+ Export your current systems configuration. +

- {t("settings.yaml_config.des_1")} config.yml{" "} - {t("settings.yaml_config.des_2")} + + Systems may be managed in a config.yml file + inside your data directory. + +

+

+ + On each restart, systems in the database will be updated to match the systems defined in the file. +

-

{t("settings.yaml_config.des_3")}

- {t("settings.yaml_config.alert.title")} + + Caution - potential data loss +

- {t("settings.yaml_config.alert.des_1")} config.yml {t("settings.yaml_config.alert.des_2")} + + Existing systems not defined in config.yml will be deleted. Please make regular backups. +

@@ -78,7 +90,7 @@ export default function ConfigYaml() {
) diff --git a/beszel/site/src/components/routes/settings/general.tsx b/beszel/site/src/components/routes/settings/general.tsx index 309b8fa..8392beb 100644 --- a/beszel/site/src/components/routes/settings/general.tsx +++ b/beszel/site/src/components/routes/settings/general.tsx @@ -6,20 +6,16 @@ import { Separator } from "@/components/ui/separator" import { LanguagesIcon, LoaderCircleIcon, SaveIcon } from "lucide-react" import { UserSettings } from "@/types" import { saveSettings } from "./layout" -import { useState, useEffect } from "react" -// import { Input } from '@/components/ui/input' -import { useTranslation } from "react-i18next" +import { useState } from "react" +import { Trans } from "@lingui/macro" import languages from "../../../lib/languages.json" -import { setLang } from "@/lib/i18n" +import { dynamicActivate } from "@/lib/i18n" +import { useLingui } from "@lingui/react" +// import { setLang } from "@/lib/i18n" export default function SettingsProfilePage({ userSettings }: { userSettings: UserSettings }) { - const { t, i18n } = useTranslation() - - useEffect(() => { - document.documentElement.lang = i18n.language - }, [i18n.language]) - const [isLoading, setIsLoading] = useState(false) + const { i18n } = useLingui() async function handleSubmit(e: React.FormEvent) { e.preventDefault() @@ -33,8 +29,12 @@ export default function SettingsProfilePage({ userSettings }: { userSettings: Us return (
-

{t("settings.general.title")}

-

{t("settings.general.subtitle")}

+

+ General +

+

+ Change general application options. +

@@ -42,25 +42,22 @@ export default function SettingsProfilePage({ userSettings }: { userSettings: Us

- {t("settings.general.language.title")} + Language

- {t("settings.general.language.subtitle_1")}{" "} - - Weblate - {" "} - {t("settings.general.language.subtitle_2")} + + Want to help us make our translations even better? Check out{" "} + + Crowdin + {" "} + for more details. +

- dynamicActivate(lang)}> @@ -77,13 +74,15 @@ export default function SettingsProfilePage({ userSettings }: { userSettings: Us
-

{t("settings.general.chart_options.title")}

+

+ Chart options +

- {t("settings.general.chart_options.subtitle")} + Adjust display options for charts.

- {t("settings.general.chart_options.default_time_period_des")} + Sets the default time range for charts when a system is viewed.

diff --git a/beszel/site/src/components/routes/settings/layout.tsx b/beszel/site/src/components/routes/settings/layout.tsx index 00cf59a..8c50556 100644 --- a/beszel/site/src/components/routes/settings/layout.tsx +++ b/beszel/site/src/components/routes/settings/layout.tsx @@ -12,9 +12,8 @@ import { UserSettings } from "@/types.js" import General from "./general.tsx" import Notifications from "./notifications.tsx" import ConfigYaml from "./config-yaml.tsx" -import { isAdmin } from "@/lib/utils.ts" -import { useTranslation } from "react-i18next" -import { t } from "i18next" +import { Trans, t } from "@lingui/macro" +import { useLingui } from "@lingui/react" export async function saveSettings(newSettings: Partial) { try { @@ -31,47 +30,45 @@ export async function saveSettings(newSettings: Partial) { }) $userSettings.set(updatedSettings.settings) toast({ - title: t("settings.saved"), - description: t("settings.saved_des"), + title: t`Settings saved`, + description: t`Your user settings have been updated.`, }) } catch (e) { // console.error('update settings', e) toast({ - title: t("settings.failed_to_save"), - description: t("settings.check_logs"), + title: t`Failed to save settings`, + description: t`Check logs for more details.`, variant: "destructive", }) } } export default function SettingsLayout() { - const { t } = useTranslation() + const { _ } = useLingui() const sidebarNavItems = [ { - title: t("settings.general.title"), + title: _(t({ message: `General`, comment: "Context: General settings" })), href: "/settings/general", icon: SettingsIcon, }, { - title: t("settings.notifications.title"), + title: t`Notifications`, href: "/settings/notifications", icon: BellIcon, }, - ] - - if (isAdmin()) { - sidebarNavItems.push({ - title: t("settings.yaml_config.short_title"), + { + title: t`YAML Config`, href: "/settings/config", icon: FileSlidersIcon, - }) - } + admin: true, + }, + ] const page = useStore($router) useEffect(() => { - document.title = "Settings / Beszel" + document.title = t`Settings` + " / Beszel" // redirect to account page if no page is specified if (page?.path === "/settings") { redirectPage($router, "settings", { name: "general" }) @@ -81,8 +78,12 @@ export default function SettingsLayout() { return ( - {t("settings.settings")} - {t("settings.subtitle")} + + Settings + + + Manage display and notification preferences. + diff --git a/beszel/site/src/components/routes/settings/notifications.tsx b/beszel/site/src/components/routes/settings/notifications.tsx index cefa976..61beed7 100644 --- a/beszel/site/src/components/routes/settings/notifications.tsx +++ b/beszel/site/src/components/routes/settings/notifications.tsx @@ -12,8 +12,7 @@ import { UserSettings } from "@/types" import { saveSettings } from "./layout" import * as v from "valibot" import { isAdmin } from "@/lib/utils" -import { useTranslation } from "react-i18next" -import { t } from "i18next" +import { Trans, t } from "@lingui/macro" interface ShoutrrrUrlCardProps { url: string @@ -27,8 +26,6 @@ const NotificationSchema = v.object({ }) const SettingsNotificationsPage = ({ userSettings }: { userSettings: UserSettings }) => { - const { t } = useTranslation() - const [webhooks, setWebhooks] = useState(userSettings.webhooks ?? []) const [emails, setEmails] = useState(userSettings.emails ?? []) const [isLoading, setIsLoading] = useState(false) @@ -62,7 +59,7 @@ const SettingsNotificationsPage = ({ userSettings }: { userSettings: UserSetting await saveSettings(parsedData) } catch (e: any) { toast({ - title: t("settings.failed_to_save"), + title: t`Failed to save settings`, description: e.message, variant: "destructive", }) @@ -73,51 +70,67 @@ const SettingsNotificationsPage = ({ userSettings }: { userSettings: UserSetting return (
-

{t("settings.notifications.title")}

-

{t("settings.notifications.subtitle_1")}

+

+ Notifications +

+

+ Configure how you receive alert notifications. +

- {t("settings.notifications.subtitle_2")} {" "} - {t("settings.notifications.subtitle_3")} + + Looking instead for where to create alerts? Click the bell icons in + the systems table. +

-

{t("settings.notifications.email.title")}

+

+ Email notifications +

{isAdmin() && (

- {t("settings.notifications.email.please")}{" "} - - {t("settings.notifications.email.configure_an_SMTP_server")} - {" "} - {t("settings.notifications.email.to_ensure_alerts_are_delivered")}{" "} + + Please{" "} + + configure an SMTP server + {" "} + to ensure alerts are delivered. +

)}
-

{t("settings.notifications.email.des")}

+

+ Save address using enter key or comma. Leave blank to disable email notifications. +

-

{t("settings.notifications.webhook.title")}

+

+ Webhook / Push notifications +

- {t("settings.notifications.webhook.des_1")}{" "} - - Shoutrrr - {" "} - {t("settings.notifications.webhook.des_2")} + + Beszel uses{" "} + + Shoutrrr + {" "} + to integrate with popular notification services. +

{webhooks.length > 0 && ( @@ -140,7 +153,7 @@ const SettingsNotificationsPage = ({ userSettings }: { userSettings: UserSetting onClick={addWebhook} > - {t("settings.notifications.webhook.add")} URL + Add URL
@@ -151,7 +164,7 @@ const SettingsNotificationsPage = ({ userSettings }: { userSettings: UserSetting disabled={isLoading} > {isLoading ? : } - {t("settings.save_settings")} + Save Settings
@@ -166,13 +179,13 @@ const ShoutrrrUrlCard = ({ url, onUrlChange, onRemove }: ShoutrrrUrlCardProps) = const res = await pb.send("/api/beszel/send-test-notification", { url }) if ("err" in res && !res.err) { toast({ - title: t("settings.notifications.webhook.test_sent"), - description: t("settings.notifications.webhook.test_sent_des"), + title: t`Test notification sent`, + description: t`Check your notification service`, }) } else { toast({ - title: t("error"), - description: res.err ?? "Failed to send test notification", + title: t`Error`, + description: res.err ?? t`Failed to send test notification`, variant: "destructive", }) } @@ -195,7 +208,9 @@ const ShoutrrrUrlCard = ({ url, onUrlChange, onRemove }: ShoutrrrUrlCardProps) = ) : ( - {t("settings.notifications.webhook.test")} URL + + Test URL + )} diff --git a/beszel/site/src/components/routes/settings/sidebar-nav.tsx b/beszel/site/src/components/routes/settings/sidebar-nav.tsx index 6a17594..f39e73d 100644 --- a/beszel/site/src/components/routes/settings/sidebar-nav.tsx +++ b/beszel/site/src/components/routes/settings/sidebar-nav.tsx @@ -1,5 +1,5 @@ import React from "react" -import { cn } from "@/lib/utils" +import { cn, isAdmin } from "@/lib/utils" import { buttonVariants } from "../../ui/button" import { $router, Link, navigate } from "../../router" import { useStore } from "@nanostores/react" @@ -11,6 +11,7 @@ interface SidebarNavProps extends React.HTMLAttributes { href: string title: string icon?: React.FC> + admin?: boolean }[] } @@ -23,17 +24,20 @@ export function SidebarNav({ className, items, ...props }: SidebarNavProps) {
diff --git a/beszel/site/src/components/routes/system.tsx b/beszel/site/src/components/routes/system.tsx index 6b3e194..b4cebf3 100644 --- a/beszel/site/src/components/routes/system.tsx +++ b/beszel/site/src/components/routes/system.tsx @@ -1,4 +1,4 @@ -import { $systems, pb, $chartTime, $containerFilter, $userSettings } from "@/lib/stores" +import { $systems, pb, $chartTime, $containerFilter, $userSettings, $direction } from "@/lib/stores" import { ChartData, ChartTimes, ContainerStatsRecord, SystemRecord, SystemStatsRecord } from "@/types" import React, { lazy, useCallback, useEffect, useMemo, useRef, useState } from "react" import { Card, CardHeader, CardTitle, CardDescription } from "../ui/card" @@ -15,7 +15,8 @@ import { ChartAverage, ChartMax, Rows, TuxIcon } from "../ui/icons" import { useIntersectionObserver } from "@/lib/use-intersection-observer" import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "../ui/select" import { timeTicks } from "d3-time" -import { useTranslation } from "react-i18next" +import { Plural, Trans, t } from "@lingui/macro" +import { useLingui } from "@lingui/react" const AreaChartDefault = lazy(() => import("../charts/area-chart")) const ContainerChart = lazy(() => import("../charts/container-chart")) @@ -85,7 +86,8 @@ async function getStats(collection: string, system: SystemRecord, chartTime: } export default function SystemDetail({ name }: { name: string }) { - const { t, i18n } = useTranslation() + const direction = useStore($direction) + const { _ } = useLingui() const systems = useStore($systems) const chartTime = useStore($chartTime) /** Max CPU toggle value */ @@ -157,10 +159,10 @@ export default function SystemDetail({ name }: { name: string }) { systemStats, containerData, chartTime, - orientation: i18n.dir() == "rtl" ? "right" : "left", + orientation: direction === "rtl" ? "right" : "left", ...getTimeData(chartTime, lastCreated), } - }, [systemStats, containerData, i18n.dir()]) + }, [systemStats, containerData, direction]) // get stats useEffect(() => { @@ -232,12 +234,12 @@ export default function SystemDetail({ name }: { name: string }) { if (!system.info) { return [] } - let uptime: number | string = system.info.u + let uptime: React.ReactNode if (system.info.u < 172800) { - const hours = Math.trunc(uptime / 3600) - uptime = t("hours", { count: hours }) + const hours = Math.trunc(system.info.u / 3600) + uptime = } else { - uptime = t("days", { count: Math.trunc(system.info?.u / 86400) }) + uptime = } return [ { value: system.host, Icon: GlobeIcon }, @@ -248,8 +250,8 @@ export default function SystemDetail({ name }: { name: string }) { // hide if hostname is same as host or name hide: system.info.h === system.host || system.info.h === system.name, }, - { value: uptime, Icon: ClockArrowUp, label: "Uptime" }, - { value: system.info.k, Icon: TuxIcon, label: "Kernel" }, + { value: uptime, Icon: ClockArrowUp, label: t`Uptime` }, + { value: system.info.k, Icon: TuxIcon, label: t({ comment: "Linux kernel", message: "Kernel" }) }, { value: `${system.info.m} (${system.info.c}c${system.info.t ? `/${system.info.t}t` : ""})`, Icon: CpuIcon, @@ -261,7 +263,7 @@ export default function SystemDetail({ name }: { name: string }) { Icon: any hide?: boolean }[] - }, [system.info, t]) + }, [system.info]) /** Space for tooltip if more than 12 containers */ useEffect(() => { @@ -345,7 +347,7 @@ export default function SystemDetail({ name }: { name: string }) {
@@ -370,26 +372,19 @@ export default function SystemDetail({ name }: { name: string }) { : null} > - + {containerFilterBar && ( @@ -399,8 +394,8 @@ export default function SystemDetail({ name }: { name: string }) { @@ -409,15 +404,15 @@ export default function SystemDetail({ name }: { name: string }) { )} - + : null} > @@ -438,9 +433,9 @@ export default function SystemDetail({ name }: { name: string }) { : null} - description={t("monitor.bandwidth_des")} + description={t`Network traffic of public interfaces`} > @@ -454,8 +449,8 @@ export default function SystemDetail({ name }: { name: string }) { > {/* @ts-ignore */} @@ -468,8 +463,8 @@ export default function SystemDetail({ name }: { name: string }) { @@ -479,8 +474,8 @@ export default function SystemDetail({ name }: { name: string }) { @@ -496,8 +491,8 @@ export default function SystemDetail({ name }: { name: string }) { : null} > ) => { @@ -542,7 +535,7 @@ function ContainerFilterBar() { return ( <> - + {containerFilter && ( @@ -219,43 +219,49 @@ export default function SystemsTable({ filter }: { filter?: string }) { {status === "paused" ? ( <> - {t("systems_table.resume")} + Resume ) : ( <> - {t("systems_table.pause")} + Pause )} copyToClipboard(host)}> - {t("systems_table.copy_host")} + Copy host - {t("systems_table.delete")} + Delete - {t("systems_table.delete_confirm", { name })} + + Are you sure you want to delete {name}? + - {t("systems_table.delete_confirm_des_1")} {name}{" "} - {t("systems_table.delete_confirm_des_2")} + + This action cannot be undone. This will permanently delete all current records for {name} from + the database. + - {t("cancel")} + + Cancel + pb.collection("systems").delete(id)} > - {t("continue")} + Continue @@ -334,7 +340,7 @@ export default function SystemsTable({ filter }: { filter?: string }) { ) : ( - {t("systems_table.no_systems_found")} + No systems found. )} diff --git a/beszel/site/src/lib/i18n.ts b/beszel/site/src/lib/i18n.ts index 02227e0..5949199 100644 --- a/beszel/site/src/lib/i18n.ts +++ b/beszel/site/src/lib/i18n.ts @@ -1,75 +1,46 @@ -import i18n from "i18next" -import { initReactI18next } from "react-i18next" -import enTranslations from "../locales/en/translation.json" import { $direction } from "./stores" +import { i18n } from "@lingui/core" +import { detect, fromUrl, fromStorage, fromNavigator } from "@lingui/detect-locale" +import { messages as enMessages } from "../locales/en/messages.ts" -// Custom language detector to use localStorage -const languageDetector: any = { - type: "languageDetector", - async: true, - detect: (callback: (lng: string) => void) => { - const savedLanguage = localStorage.getItem("i18nextLng") - const zhVariantMap: Record = { - "zh-CN": "zh-CN", - "zh-SG": "zh-CN", - "zh-MY": "zh-CN", - zh: "zh-CN", - "zh-Hans": "zh-CN", - "zh-HK": "zh-HK", - "zh-TW": "zh-HK", - "zh-MO": "zh-HK", - "zh-Hant": "zh-HK", - } - const fallbackLanguage = zhVariantMap[navigator.language] || navigator.language - callback(savedLanguage || fallbackLanguage) - }, - init: () => {}, - cacheUserLanguage: (lng: string) => { - localStorage.setItem("i18nextLng", lng) - }, +// const locale = detect(fromUrl("lang"), fromStorage("lang"), fromNavigator(), "en") +const locale = detect(fromStorage("lang"), fromNavigator(), "en") + +// log if dev +if (import.meta.env.DEV) { + console.log("detected locale", locale) } -// Function to dynamically load translation files -async function loadMessages(locale: string) { +export async function dynamicActivate(locale: string) { try { - if (locale === "en") { - return enTranslations - } - const translation = await import(`../locales/${locale}/translation.json`) - return translation.default + const { messages } = await import(`../locales/${locale}/messages.ts`) + i18n.load(locale, messages) + i18n.activate(locale) + document.documentElement.lang = locale + $direction.set(locale.startsWith("ar") ? "rtl" : "ltr") + localStorage.setItem("lang", locale) } catch (error) { console.error(`Error loading ${locale}`, error) - return enTranslations } } -i18n - .use(languageDetector) - .use(initReactI18next) - .init({ - resources: { - en: { - translation: enTranslations, - }, - }, - fallbackLng: "en", - interpolation: { - escapeValue: false, - }, - }) - -// Function to dynamically activate a language -export async function setLang(locale: string) { - const messages = await loadMessages(locale) - i18n.addResourceBundle(locale, "translation", messages) - await i18n.changeLanguage(locale) - const dir = i18n.dir(locale) - document.dir = dir - $direction.set(dir) +if (locale?.startsWith("zh-")) { + // map zh variants to zh-CN + const zhVariantMap: Record = { + "zh-CN": "zh-CN", + "zh-SG": "zh-CN", + "zh-MY": "zh-CN", + zh: "zh-CN", + "zh-Hans": "zh-CN", + "zh-HK": "zh-HK", + "zh-TW": "zh-HK", + "zh-MO": "zh-HK", + "zh-Hant": "zh-HK", + } + dynamicActivate(zhVariantMap[locale] || "zh-CN") +} else if (locale && !locale.startsWith("en")) { + dynamicActivate(locale.split("-")[0]) +} else { + i18n.load("en", enMessages) + i18n.activate("en") } - -// Initialize with detected/saved language -const initialLanguage = localStorage.getItem("i18nextLng") || navigator.language -setLang(initialLanguage) - -export { i18n } diff --git a/beszel/site/src/lib/utils.ts b/beszel/site/src/lib/utils.ts index 44a53d3..390d7bf 100644 --- a/beszel/site/src/lib/utils.ts +++ b/beszel/site/src/lib/utils.ts @@ -9,7 +9,7 @@ import { timeDay, timeHour } from "d3-time" import { useEffect, useState } from "react" import { CpuIcon, HardDriveIcon, MemoryStickIcon, ServerIcon } from "lucide-react" import { EthernetIcon, ThermometerIcon } from "@/components/ui/icons" -import { t } from "i18next" +import { t } from "@lingui/macro" export function cn(...inputs: ClassValue[]) { return twMerge(clsx(inputs)) @@ -22,7 +22,7 @@ export async function copyToClipboard(content: string) { await navigator.clipboard.writeText(content) toast({ duration, - description: t("clipboard.copied"), + description: t`Copied to clipboard`, }) } catch (e: any) { $copyContent.set(content) @@ -35,8 +35,8 @@ const verifyAuth = () => { .catch(() => { pb.authStore.clear() toast({ - title: "Failed to authenticate", - description: "Please log in again", + title: t`Failed to authenticate`, + description: t`Please log in again`, variant: "destructive", }) }) @@ -76,30 +76,14 @@ const shortDateFormatter = new Intl.DateTimeFormat(undefined, { minute: "numeric", }) export const formatShortDate = (timestamp: string) => { - // console.log('ts', timestamp) return shortDateFormatter.format(new Date(timestamp)) } -// const dayTimeFormatter = new Intl.DateTimeFormat(undefined, { -// // day: 'numeric', -// // month: 'short', -// hour: 'numeric', -// weekday: 'short', -// minute: 'numeric', -// // dateStyle: 'short', -// }) -// export const formatDayTime = (timestamp: string) => { -// // console.log('ts', timestamp) -// return dayTimeFormatter.format(new Date(timestamp)) -// } - const dayFormatter = new Intl.DateTimeFormat(undefined, { day: "numeric", month: "short", - // dateStyle: 'medium', }) export const formatDay = (timestamp: string) => { - // console.log('ts', timestamp) return dayFormatter.format(new Date(timestamp)) } @@ -109,13 +93,11 @@ export const updateFavicon = (newIcon: string) => { export const isAdmin = () => pb.authStore.model?.role === "admin" export const isReadOnlyUser = () => pb.authStore.model?.role === "readonly" -// export const isDefaultUser = () => pb.authStore.model?.role === 'user' /** Update systems / alerts list when records change */ export function updateRecordList(e: RecordSubscription, $store: WritableAtom) { const curRecords = $store.get() const newRecords = [] - // console.log('e', e) if (e.action === "delete") { for (const server of curRecords) { if (server.id !== e.record.id) { @@ -154,7 +136,7 @@ export const chartTimeData: ChartTimeData = { "1h": { type: "1m", expectedInterval: 60_000, - label: () => t("hours", { count: 1 }), + label: () => t`1 hour`, // ticks: 12, format: (timestamp: string) => hourWithMinutes(timestamp), getOffset: (endTime: Date) => timeHour.offset(endTime, -1), @@ -162,7 +144,7 @@ export const chartTimeData: ChartTimeData = { "12h": { type: "10m", expectedInterval: 60_000 * 10, - label: () => t("hours", { count: 12 }), + label: () => t`12 hours`, ticks: 12, format: (timestamp: string) => hourWithMinutes(timestamp), getOffset: (endTime: Date) => timeHour.offset(endTime, -12), @@ -170,14 +152,14 @@ export const chartTimeData: ChartTimeData = { "24h": { type: "20m", expectedInterval: 60_000 * 20, - label: () => t("hours", { count: 24 }), + label: () => t`24 hours`, format: (timestamp: string) => hourWithMinutes(timestamp), getOffset: (endTime: Date) => timeHour.offset(endTime, -24), }, "1w": { type: "120m", expectedInterval: 60_000 * 120, - label: () => t("weeks", { count: 1 }), + label: () => t`1 week`, ticks: 7, format: (timestamp: string) => formatDay(timestamp), getOffset: (endTime: Date) => timeDay.offset(endTime, -7), @@ -185,7 +167,7 @@ export const chartTimeData: ChartTimeData = { "30d": { type: "480m", expectedInterval: 60_000 * 480, - label: () => t("days_other", { count: 30 }), + label: () => t`30 days`, ticks: 30, format: (timestamp: string) => formatDay(timestamp), getOffset: (endTime: Date) => timeDay.offset(endTime, -30), @@ -297,40 +279,40 @@ export const chartMargin = { top: 12 } export const alertInfo = { Status: { - name: "alerts.info.status", + name: () => t`Status`, unit: "", icon: ServerIcon, - desc: "alerts.info.status_des", + desc: () => t`Triggers when status switches between up and down`, single: true, }, CPU: { - name: "alerts.info.cpu_usage", + name: () => t`CPU Usage`, unit: "%", icon: CpuIcon, - desc: "alerts.info.cpu_usage_des", + desc: () => t`Triggers when CPU usage exceeds a threshold`, }, Memory: { - name: "alerts.info.memory_usage", + name: () => t`Memory Usage`, unit: "%", icon: MemoryStickIcon, - desc: "alerts.info.memory_usage_des", + desc: () => t`Triggers when memory usage exceeds a threshold`, }, Disk: { - name: "alerts.info.disk_usage", + name: () => t`Disk Usage`, unit: "%", icon: HardDriveIcon, - desc: "alerts.info.disk_usage_des", + desc: () => t`Triggers when usage of any disk exceeds a threshold`, }, Bandwidth: { - name: "alerts.info.bandwidth", + name: () => t`Bandwidth`, unit: " MB/s", icon: EthernetIcon, - desc: "alerts.info.bandwidth_des", + desc: () => t`Triggers when combined up/down exceeds a threshold`, }, Temperature: { - name: "alerts.info.temperature", + name: () => t`Temperature`, unit: "°C", icon: ThermometerIcon, - desc: "alerts.info.temperature_des", + desc: () => t`Triggers when any sensor exceeds a threshold`, }, } diff --git a/beszel/site/src/locales/ar/messages.po b/beszel/site/src/locales/ar/messages.po new file mode 100644 index 0000000..fec3974 --- /dev/null +++ b/beszel/site/src/locales/ar/messages.po @@ -0,0 +1,796 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 18:55-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: ar\n" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Plural-Forms: \n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "{0, plural, one {# يوم} other {# أيام}}" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "{hours, plural, one {# ساعة} other {# ساعات}}" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "1 ساعة" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "1 أسبوع" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "12 ساعة" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "24 ساعة" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "30 يومًا" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "التنبيهات النشطة" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "إضافة <0>نظام" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "إضافة نظام جديد" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "إضافة نظام" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "إضافة عنوان URL" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "تعديل خيارات العرض للرسوم البيانية." + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "مسؤول" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "وكيل" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "التنبيهات" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "جميع الأنظمة" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "هل أنت متأكد أنك تريد حذف {name}؟" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "مزودو المصادقة" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "النسخ التلقائي يتطلب سياقًا آمنًا." + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "متوسط" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "متوسط استخدام وحدة المعالجة المركزية للحاويات" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "المتوسط يتجاوز <0>{value}{0}" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "متوسط استخدام وحدة المعالجة المركزية على مستوى النظام" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "النسخ الاحتياطية" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "عرض النطاق الترددي" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "يدعم Beszel OpenID Connect والعديد من مزودي المصادقة OAuth2." + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "يستخدم Beszel <0>Shoutrrr للتكامل مع خدمات الإشعارات الشهيرة." + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "ثنائي" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "ذاكرة التخزين المؤقت / المخازن المؤقتة" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "إلغاء" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "تحذير - فقدان محتمل للبيانات" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "تغيير خيارات التطبيق العامة." + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "خيارات الرسم البياني" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "تحقق من {email} للحصول على رابط إعادة التعيين." + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "تحقق من السجلات لمزيد من التفاصيل." + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "تحقق من خدمة الإشعارات الخاصة بك" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "انقر للنسخ" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "تعليمات سطر الأوامر" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "قم بتكوين كيفية تلقي إشعارات التنبيه." + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "تأكيد كلمة المرور" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "متابعة" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "تم النسخ إلى الحافظة" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "نسخ" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "نسخ المضيف" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "نسخ أمر لينكس" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "نسخ النص" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "وحدة المعالجة المركزية" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "استخدام وحدة المعالجة المركزية" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "إنشاء حساب" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "داكن" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "لوحة التحكم" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "الفترة الزمنية الافتراضية" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "حذف" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "القرص" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "إدخال/إخراج القرص" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "استخدام القرص" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "استخدام القرص لـ {extraFsName}" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "استخدام وحدة المعالجة المركزية لـ Docker" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "استخدام الذاكرة لـ Docker" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "إدخال/إخراج الشبكة لـ Docker" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "التوثيق" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "البريد الإلكتروني" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "البريد الإلكتروني" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "إشعارات البريد الإلكتروني" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "أدخل عنوان البريد الإلكتروني لإعادة تعيين كلمة المرور" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "أدخل عنوان البريد الإلكتروني..." + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "خطأ" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "يتجاوز {0}{1} في آخر {2, plural, one {# دقيقة} other {# دقائق}}" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "سيتم حذف الأنظمة الحالية غير المعرفة في <0>config.yml. يرجى عمل نسخ احتياطية بانتظام." + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "تصدير التكوين" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "تصدير تكوين الأنظمة الحالية الخاصة بك." + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "فشل في المصادقة" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "فشل في حفظ الإعدادات" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "فشل في إرسال إشعار الاختبار" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "فشل في تحديث التنبيه" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "تصفية..." + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "لمدة <0>{min} {min, plural, one {دقيقة} other {دقائق}}" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "هل نسيت كلمة المرور؟" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "عام" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "المضيف / عنوان IP" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "إذا فقدت كلمة المرور لحساب المسؤول الخاص بك، يمكنك إعادة تعيينها باستخدام الأمر التالي." + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "عنوان البريد الإلكتروني غير صالح." + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "كيرنل" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "اللغة" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "فاتح" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "تسجيل الخروج" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "تسجيل الدخول" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "فشل محاولة تسجيل الدخول" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "السجلات" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "هل تبحث عن مكان لإنشاء التنبيهات؟ انقر على أيقونات الجرس <0/> في جدول الأنظمة." + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "إدارة تفضيلات العرض والإشعارات." + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "الحد الأقصى 1 دقيقة" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "الذاكرة" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "استخدام الذاكرة" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "استخدام الذاكرة لحاويات Docker" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "الاسم" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "name@example.com" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "الشبكة" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "حركة مرور الشبكة لحاويات Docker" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "حركة مرور الشبكة للواجهات العامة" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "لم يتم العثور على نتائج." + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "لم يتم العثور على أنظمة." + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "الإشعارات" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "دعم OAuth 2 / OIDC" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "في كل إعادة تشغيل، سيتم تحديث الأنظمة في قاعدة البيانات لتتطابق مع الأنظمة المعرفة في الملف." + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "فتح القائمة" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "أو المتابعة باستخدام" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "الكتابة فوق التنبيهات الحالية" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "صفحة" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "الصفحات / الإعدادات" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "كلمة المرور" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "يجب أن تكون كلمة الم��ور مكونة من 10 أحرف على الأقل." + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "تم استلام طلب إعادة تعيين كلمة المرور" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "إيقاف مؤقت" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "يرجى <0>تكوين خادم SMTP لضمان تسليم التنبيهات." + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "يرجى التحقق من السجلات لمزيد من التفاصيل." + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "يرجى التحقق من بيانات الاعتماد الخاصة بك والمحاولة مرة أخرى" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "يرجى إنشاء حساب مسؤول" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "يرجى تمكين النوافذ المنبثقة لهذا الموقع" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "يرجى تسجيل الدخول مرة أخرى" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "يرجى الاطلاع على <0>التوثيق للحصول على التعليمات." + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "يرجى تسجيل الدخول إلى حسابك" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "المنفذ" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "اللغة المفضلة" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "المفتاح العام" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "قراءة" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "تم الاستلام" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "إعادة تعيين كلمة المرور" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "استئناف" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "احفظ العنوان باستخدام مفتاح الإدخال أو الفاصلة. اتركه فارغًا لتعطيل إشعارات البريد الإلكتروني." + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "حفظ الإعدادات" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "بحث" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "البحث عن الأنظمة أو الإعدادات..." + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "راجع <0>إعدادات الإشعارات لتكوين كيفية تلقي التنبيهات." + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "تم الإرسال" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "يحدد النطاق الزمني الافتراضي للرسوم البيانية عند عرض النظام." + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "الإعدادات" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "تم حفظ الإعدادات" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "تسجيل الدخول" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "إعدادات SMTP" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "الحالة" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "مساحة التبديل المستخدمة من قبل النظام" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "استخدام التبديل" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "النظام" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "الأنظمة" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "يمكن إدارة الأنظمة في ملف <0>config.yml داخل دليل البيانات الخاص بك." + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "درجة الحرارة" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "درجات حرارة مستشعرات النظام" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "اختبار <0>URL" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "تم إرسال إشعار الاختبار" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "يجب أن يكون الوكيل قيد التشغيل على النظام للاتصال. انسخ أمر التثبيت للوكيل أدناه." + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "يجب أن يكون الوكيل قيد التشغيل على النظام للاتصال. انسخ <0>docker-compose.yml للوكيل أدناه." + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "ثم قم بتسجيل الدخول إلى الواجهة الخلفية وأعد تعيين كلمة مرور حساب المستخدم الخاص بك في جدول المستخدمين." + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "لا يمكن التراجع عن هذا الإجراء. سيؤدي ذلك إلى حذف جميع السجلات الحالية لـ {name} من قاعدة البيانات بشكل دائم." + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "معدل نقل {extraFsName}" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "معدل نقل نظام الملفات الجذر" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "إلى البريد الإلكتروني" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "تبديل الشبكة" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "تبديل السمة" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "يتم التفعيل عندما يتجاوز أي مستشعر عتبة معينة" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "يتم التفعيل عندما يتجاوز الجمع بين الصعود/الهبوط عتبة معينة" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "يتم التفعيل عندما يتجاوز استخدام وحدة المعالجة المركزية عتبة معينة" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "يتم التفعيل عندما يتجاوز استخدام الذاكرة عتبة معينة" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "يتم التفعيل عندما يتجاوز استخدام الذاكرة عتبة معينة." + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "يتم التفعيل عندما يتغير الحالة بين التشغيل والإيقاف" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "يتم التفعيل عندما يتجاوز استخدام أي قرص عتبة معينة" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "محدث في الوقت الحقيقي. انقر على نظام لعرض المعلومات." + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "مدة التشغيل" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "الاستخدام" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "استخدام القسم الجذر" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "مستخدم" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "اسم المستخدم" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "اسم المستخدم" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "المستخدمون" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "في انتظار وجود سجلات كافية للعرض" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "هل تريد مساعدتنا في تحسين ترجماتنا؟ تحقق من <0>Crowdin لمزيد من التفاصيل." + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "إشعارات Webhook / Push" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "كتابة" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "تكوين YAML" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "تكوين YAML" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "تم تحديث إعدادات المستخدم الخاصة بك." diff --git a/beszel/site/src/locales/ar/messages.ts b/beszel/site/src/locales/ar/messages.ts new file mode 100644 index 0000000..54a5dcb --- /dev/null +++ b/beszel/site/src/locales/ar/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" يوم\"],\"other\":[\"#\",\" أيام\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" ساعة\"],\"other\":[\"#\",\" ساعات\"]}]],\"vp5vfW\":\"1 ساعة\",\"3vtzIH\":\"1 أسبوع\",\"8gE33P\":\"12 ساعة\",\"VaA9mu\":\"24 ساعة\",\"P9cEa2\":\"30 يومًا\",\"BF9frx\":\"التنبيهات النشطة\",\"STwytW\":\"إضافة <0>نظام\",\"bJRBHa\":\"إضافة نظام جديد\",\"WXW3md\":\"إضافة نظام\",\"dn+x7E\":\"إضافة عنوان URL\",\"rjj30q\":\"تعديل خيارات العرض للرسوم البيانية.\",\"U3pytU\":\"مسؤول\",\"iEQQyu\":\"وكيل\",\"s4BX3A\":\"التنبيهات\",\"sifuwH\":\"جميع الأنظمة\",\"kXr5Rz\":[\"هل أنت متأكد أنك تريد حذف \",[\"name\"],\"؟\"],\"B0W4bF\":\"مزودو المصادقة\",\"/++c22\":\"النسخ التلقائي يتطلب سياقًا آمنًا.\",\"3uQmjD\":\"متوسط\",\"813hlv\":\"متوسط استخدام وحدة المعالجة المركزية للحاويات\",\"rOqZKh\":[\"المتوسط يتجاوز <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"متوسط استخدام وحدة المعالجة المركزية على مستوى النظام\",\"llDXYJ\":\"النسخ الاحتياطية\",\"OlXThP\":\"عرض النطاق الترددي\",\"cKuF3W\":\"يدعم Beszel OpenID Connect والعديد من مزودي المصادقة OAuth2.\",\"lZMdCW\":\"يستخدم Beszel <0>Shoutrrr للتكامل مع خدمات الإشعارات الشهيرة.\",\"uDUdRI\":\"ثنائي\",\"wKr2uE\":\"ذاكرة التخزين المؤقت / المخازن المؤقتة\",\"dEgA5A\":\"إلغاء\",\"sN0FOL\":\"تحذير - فقدان محتمل للبيانات\",\"IARMkX\":\"تغيير خيارات التطبيق العامة.\",\"ow1Q6+\":\"خيارات الرسم البياني\",\"bYfJUT\":[\"تحقق من \",[\"email\"],\" للحصول على رابط إعادة التعيين.\"],\"fRZFZa\":\"تحقق من السجلات لمزيد من التفاصيل.\",\"/CIvpD\":\"تحقق من خدمة الإشعارات الخاصة بك\",\"sby+1/\":\"انقر للنسخ\",\"vUSFSH\":\"تعليمات سطر الأوامر\",\"lHxpbL\":\"قم بتكوين كيفية تلقي إشعارات التنبيه.\",\"xnWESi\":\"تأكيد كلمة المرور\",\"xGVfLh\":\"متابعة\",\"FxVG/l\":\"تم النسخ إلى الحافظة\",\"he3ygx\":\"نسخ\",\"YYVxgQ\":\"نسخ المضيف\",\"4G+D0j\":\"نسخ أمر لينكس\",\"VsHxv+\":\"نسخ النص\",\"FSbpS7\":\"وحدة المعالجة المركزية\",\"ptAX+h\":\"استخدام وحدة المعالجة المركزية\",\"1hMWR6\":\"إنشاء حساب\",\"pvnfJD\":\"داكن\",\"7p5kLi\":\"لوحة التحكم\",\"EGiNTR\":\"الفترة الزمنية الافتراضية\",\"cnGeoo\":\"حذف\",\"sPFHpI\":\"القرص\",\"EodlUw\":\"إدخال/إخراج القرص\",\"gMnhTK\":\"استخدام القرص\",\"WLrITB\":[\"استخدام القرص لـ \",[\"extraFsName\"]],\"MS2ofg\":\"استخدام وحدة المعالجة المركزية لـ Docker\",\"nYgC28\":\"استخدام الذاكرة لـ Docker\",\"t7nUxv\":\"إدخال/إخراج الشبكة لـ Docker\",\"TvY/XA\":\"التوثيق\",\"b/LfJo\":\"البريد الإلكتروني\",\"O3oNi5\":\"البريد الإلكتروني\",\"aW3TOw\":\"إشعارات البريد الإلكتروني\",\"jS3CO/\":\"أدخل عنوان البريد الإلكتروني لإعادة تعيين كلمة المرور\",\"3xTTUj\":\"أدخل عنوان البريد الإلكتروني...\",\"SlfejT\":\"خطأ\",\"5KrEtU\":[\"يتجاوز \",[\"0\"],[\"1\"],\" في آخر \",[\"2\",\"plural\",{\"one\":[\"#\",\" دقيقة\"],\"other\":[\"#\",\" دقائق\"]}]],\"Mgu3+g\":\"سيتم حذف الأنظمة الحالية غير المعرفة في <0>config.yml. يرجى عمل نسخ احتياطية بانتظام.\",\"UoqckY\":\"تصدير التكوين\",\"fw839L\":\"تصدير تكوين الأنظمة الحالية الخاصة بك.\",\"XnB4ti\":\"فشل في المصادقة\",\"iQ1BL4\":\"فشل في حفظ الإعدادات\",\"6H2zd1\":\"فشل في إرسال إشعار الاختبار\",\"MN5GEP\":\"فشل في تحديث التنبيه\",\"6HLTEb\":\"تصفية...\",\"bBRdOW\":[\"لمدة <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"دقيقة\",\"other\":\"دقائق\"}]],\"UNMVei\":\"هل نسيت كلمة المرور؟\",\"Weq9zb\":\"عام\",\"mwiW0X\":\"المضيف / عنوان IP\",\"XeH33w\":\"إذا فقدت كلمة المرور لحساب المسؤول الخاص بك، يمكنك إعادة تعيينها باستخدام الأمر التالي.\",\"9lqqpY\":\"عنوان البريد الإلكتروني غير صالح.\",\"ZelZFY\":\"كيرنل\",\"vXIe7J\":\"اللغة\",\"1njn7W\":\"فاتح\",\"paehRh\":\"تسجيل الخروج\",\"z0t9bb\":\"تسجيل الدخول\",\"wJ4oIw\":\"فشل محاولة تسجيل الدخول\",\"w/bY7R\":\"السجلات\",\"TrZx/y\":\"هل تبحث عن مكان لإنشاء التنبيهات؟ انقر على أيقونات الجرس <0/> في جدول الأنظمة.\",\"chM9YL\":\"إدارة تفضيلات العرض والإشعارات.\",\"j0+pbV\":\"الحد الأقصى 1 دقيقة\",\"v8o+Rn\":\"الذاكرة\",\"8x/SfR\":\"استخدام الذاكرة\",\"aG5gQK\":\"استخدام الذاكرة لحاويات Docker\",\"6YtxFj\":\"الاسم\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"الشبكة\",\"NisKE2\":\"حركة مرور الشبكة لحاويات Docker\",\"HUz8wT\":\"حركة مرور الشبكة للواجهات العامة\",\"MZbQHL\":\"لم يتم العثور على نتائج.\",\"OpAFHJ\":\"لم يتم العثور على أنظمة.\",\"iDNBZe\":\"الإشعارات\",\"FhQ2zl\":\"دعم OAuth 2 / OIDC\",\"2FBOPo\":\"في كل إعادة تشغيل، سيتم تحديث الأنظمة في قاعدة البيانات لتتطابق مع الأنظمة المعرفة في الملف.\",\"GSr0rF\":\"فتح القائمة\",\"zW+FpA\":\"أو المتابعة باستخدام\",\"pZFbw+\":\"الكتابة فوق التنبيهات الحالية\",\"6WdDG7\":\"صفحة\",\"O20gpZ\":\"الصفحات / الإعدادات\",\"8ZsakT\":\"كلمة المرور\",\"liCR+k\":\"يجب أن تكون كلمة الم��ور مكونة من 10 أحرف على الأقل.\",\"uIpEE5\":\"تم استلام طلب إعادة تعيين كلمة المرور\",\"IgrLD/\":\"إيقاف مؤقت\",\"LSiEmM\":\"يرجى <0>تكوين خادم SMTP لضمان تسليم التنبيهات.\",\"31UfkH\":\"يرجى التحقق من السجلات لمزيد من التفاصيل.\",\"GoDeWb\":\"يرجى التحقق من بيانات الاعتماد الخاصة بك والمحاولة مرة أخرى\",\"OYKYtf\":\"يرجى إنشاء حساب مسؤول\",\"YHbZRj\":\"يرجى تمكين النوافذ المنبثقة لهذا الموقع\",\"slfxx+\":\"يرجى تسجيل الدخول مرة أخرى\",\"EKu8aa\":\"يرجى الاطلاع على <0>التوثيق للحصول على التعليمات.\",\"evGUBI\":\"يرجى تسجيل الدخول إلى حسابك\",\"hZ6znB\":\"المنفذ\",\"DV+Xbw\":\"اللغة المفضلة\",\"z1Vlg/\":\"المفتاح العام\",\"cQlPDN\":\"قراءة\",\"fZ5Vnu\":\"تم الاستلام\",\"KbS2K9\":\"إعادة تعيين كلمة المرور\",\"v39wLo\":\"استئناف\",\"9mH8Zc\":\"احفظ العنوان باستخدام مفتاح الإدخال أو الفاصلة. اتركه فارغًا لتعطيل إشعارات البريد الإلكتروني.\",\"UGT5vp\":\"حفظ الإعدادات\",\"A1taO8\":\"بحث\",\"61jyG4\":\"البحث عن الأنظمة أو الإعدادات...\",\"L0g2h9\":\"راجع <0>إعدادات الإشعارات لتكوين كيفية تلقي التنبيهات.\",\"h69WC6\":\"تم الإرسال\",\"/U/zMZ\":\"يحدد النطاق الزمني الافتراضي للرسوم البيانية عند عرض النظام.\",\"Tz0i8g\":\"الإعدادات\",\"iMxx2A\":\"تم حفظ الإعدادات\",\"5lWFkC\":\"تسجيل الدخول\",\"3cXFzn\":\"إعدادات SMTP\",\"uAQUqI\":\"الحالة\",\"xa/6Rx\":\"مساحة التبديل المستخدمة من قبل النظام\",\"AnW27x\":\"استخدام التبديل\",\"D+NlUC\":\"النظام\",\"c8KseH\":\"الأنظمة\",\"CLDb6E\":\"يمكن إدارة الأنظمة في ملف <0>config.yml داخل دليل البيانات الخاص بك.\",\"oE+H8K\":\"درجة الحرارة\",\"gLNBDr\":\"درجات حرارة مستشعرات النظام\",\"eeos47\":\"اختبار <0>URL\",\"MucYW8\":\"تم إرسال إشعار الاختبار\",\"O+ia7W\":\"يجب أن يكون الوكيل قيد التشغيل على النظام للاتصال. انسخ أمر التثبيت للوكيل أدناه.\",\"Ii3pEi\":\"يجب أن يكون الوكيل قيد التشغيل على النظام للاتصال. انسخ <0>docker-compose.yml للوكيل أدناه.\",\"i0G/mY\":\"ثم قم بتسجيل الدخول إلى الواجهة الخلفية وأعد تعيين كلمة مرور حساب المستخدم الخاص بك في جدول المستخدمين.\",\"Iy90xV\":[\"لا يمكن التراجع عن هذا الإجراء. سيؤدي ذلك إلى حذف جميع السجلات الحالية لـ \",[\"name\"],\" من قاعدة البيانات بشكل دائم.\"],\"udNvwS\":[\"معدل نقل \",[\"extraFsName\"]],\"lcJPpM\":\"معدل نقل نظام الملفات الجذر\",\"KLX09x\":\"إلى البريد الإلكتروني\",\"UILhO0\":\"تبديل الشبكة\",\"2N0C4b\":\"تبديل السمة\",\"OC0Gym\":\"يتم التفعيل عندما يتجاوز أي مستشعر عتبة معينة\",\"5W9YJm\":\"يتم التفعيل عندما يتجاوز الجمع بين الصعود/الهبوط عتبة معينة\",\"Mj1/gd\":\"يتم التفعيل عندما يتجاوز استخدام وحدة المعالجة المركزية عتبة معينة\",\"ovrW9c\":\"يتم التفعيل عندما يتجاوز استخدام الذاكرة عتبة معينة\",\"EDcnZf\":\"يتم التفعيل عندما يتجاوز استخدام الذاكرة عتبة معينة.\",\"Y9QEKW\":\"يتم التفعيل عندما يتغير الحالة بين التشغيل والإيقاف\",\"6IQ5X1\":\"يتم التفعيل عندما يتجاوز استخدام أي قرص عتبة معينة\",\"XxWdUX\":\"محدث في الوقت الحقيقي. انقر على نظام لعرض المعلومات.\",\"TjrbDj\":\"مدة التشغيل\",\"7FaY4u\":\"الاستخدام\",\"SFR5+X\":\"استخدام القسم الجذر\",\"aL1w5Z\":\"مستخدم\",\"silO9A\":\"اسم المستخدم\",\"7sNhEz\":\"اسم المستخدم\",\"Sxm8rQ\":\"المستخدمون\",\"nQZqIc\":\"في انتظار وجود سجلات كافية للعرض\",\"uZcLj0\":\"هل تريد مساعدتنا في تحسين ترجماتنا؟ تحقق من <0>Crowdin لمزيد من التفاصيل.\",\"iHzCRV\":\"إشعارات Webhook / Push\",\"i4/LY/\":\"كتابة\",\"x1z+B4\":\"تكوين YAML\",\"HqAFfq\":\"تكوين YAML\",\"GWFpJ1\":\"تم تحديث إعدادات المستخدم الخاصة بك.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/ar/translation.json b/beszel/site/src/locales/ar/translation.json deleted file mode 100644 index 1b0229c..0000000 --- a/beszel/site/src/locales/ar/translation.json +++ /dev/null @@ -1,235 +0,0 @@ -{ - "add": "إضافة", - "add_system": { - "add_new_system": "إضافة نظام جديد", - "add_system": "إضافة نظام", - "binary": "الملف الثنائي", - "click_to_copy": "انقر للنسخ", - "command": "الأمر", - "dialog_des_1": "يجب تشغيل العميل على الخادم للاتصال. انسخ", - "dialog_des_2": "إلى الخادم المستهدف للتثبيت.", - "host_ip": "المضيف/IP", - "key": "المفتاح العام", - "name": "الاسم", - "port": "المنفذ" - }, - "alerts": { - "average_exceeds": "المتوسط يتجاوز", - "for": "لمدة", - "info": { - "bandwidth": "النطاق الترددي", - "bandwidth_des": "يتم التشغيل عندما يتجاوز استخدام الشبكة الحد.", - "cpu_usage": "استخدام المعالج", - "cpu_usage_des": "يتم التشغيل عندما يتجاوز استخدام المعالج الحد.", - "disk_usage": "استخدام القرص", - "disk_usage_des": "يتم التشغيل عندما يتجاوز استخدام أي قرص الحد.", - "memory_usage": "استخدام الذاكرة", - "memory_usage_des": "يتم التشغيل عندما يتجاوز استخدام الذاكرة الحد.", - "status": "الحالة", - "status_des": "يتم التشغيل عند تبديل الحالة بين متصل ومنقطع.", - "temperature": "درجة الحرارة", - "temperature_des": "يتم التشغيل عندما يتجاوز أي مستشعر الحد المسموح به." - }, - "notification_settings": "إعدادات الإشعارات", - "overwrite_existing_alerts": "استبدال التنبيهات الموجودة", - "subtitle_1": "راجع", - "subtitle_2": "لتكوين كيفية استلام التنبيهات.", - "title": "التنبيهات" - }, - "all_systems": "جميع الأنظمة", - "auth": { - "command_1": "إذا فقدت كلمة مرور حساب المسؤول، يمكنك إعادة تعيينها باستخدام الأمر التالي.", - "command_2": "ثم قم بتسجيل الدخول إلى الخلفية وإعادة تعيين كلمة مرور حساب المستخدم في جدول المستخدمين.", - "command_line_instructions": "تعليمات سطر الأوامر", - "create": "الرجاء إنشاء حساب مسؤول", - "create_account": "إنشاء حساب", - "for_instructions": "للتعليمات.", - "forgot_password": "نسيت كلمة المرور؟", - "login": "الرجاء تسجيل الدخول إلى حسابك", - "openid_des": "يدعم Beszel OpenID Connect والعديد من مزودي مصادقة OAuth2.", - "please_view_the": "الرجاء مراجعة", - "reset": "أدخل البريد الإلكتروني لإعادة تعيين كلمة المرور", - "reset_password": "إعادة تعيين كلمة المرور", - "sign_in": "تسجيل الدخول" - }, - "cancel": "إلغاء", - "clipboard": { - "copied": "تم النسخ إلى الحافظة", - "des": "النسخ التلقائي يتطلب سياق آمن.", - "title": "نسخ النص" - }, - "command": { - "SMTP_settings": "إعدادات SMTP", - "admin": "المسؤول", - "dashboard": "لوحة التحكم", - "documentation": "التوثيق", - "page": "الصفحة", - "pages_settings": "الصفحات / الإعدادات", - "search": "البحث في الإعدادات أو الأنظمة..." - }, - "continue": "متابعة", - "copy": "نسخ", - "days_few": "{{count}} أيام", - "days_many": "{{count}} يومًا", - "days_one": "{{count}} يوم", - "days_other": "{{count}} أيام", - "days_two": "{{count}} يومان", - "days_zero": "٠ أيام", - "error": "خطأ", - "filter": "تصفية...", - "home": { - "active_alerts": "التنبيهات النشطة", - "active_des": "يتجاوز {{value}}{{unit}} في آخر ", - "subtitle": "يتم التحديث في الوقت الفعلي. انقر على نظام لعرض المعلومات." - }, - "hours_few": "{{count}} ساعات", - "hours_many": "{{count}} ساعة", - "hours_one": "{{count}} ساعة", - "hours_other": "{{count}} ساعات", - "hours_two": "{{count}} ساعتان", - "hours_zero": "٠ ساعات", - "minutes_few": "{{count}} دقائق", - "minutes_many": "{{count}} دقيقة", - "minutes_one": "{{count}} دقيقة", - "minutes_other": "{{count}} دقائق", - "minutes_two": "{{count}} دقيقتان", - "minutes_zero": "٠ دقائق", - "monitor": { - "average": "المتوسط", - "bandwidth": "النطاق الترددي", - "bandwidth_des": "حركة الشبكة للواجهات العامة", - "cache_buffers": "ذاكرة التخزين المؤقت / المخازن المؤقتة", - "cpu_des": "استخدام المعالج على مستوى النظام", - "disk_des": "استخدام القسم الجذر", - "disk_io": "إدخال/إخراج القرص", - "disk_io_des": "معدل نقل نظام الملفات الجذر", - "disk_space": "مساحة القرص", - "disk_usage_of": "استخدام القرص لـ", - "docker_cpu_des": "متوسط استخدام المعالج للحاويات", - "docker_cpu_usage": "استخدام معالج Docker", - "docker_memory_des": "استخدام الذاكرة لحاويات Docker", - "docker_memory_usage": "استخدام ذاكرة Docker", - "docker_network_io": "إدخال/إخراج شبكة Docker", - "docker_network_io_des": "حركة الشبكة لحاويات Docker", - "max_1_min": "أقصى 1 دقيقة", - "memory_des": "الاستخدام الدقيق في وقت التسجيل", - "read": "قراءة", - "received": "مستلم", - "sent": "مرسل", - "swap_des": "مساحة المبادلة المستخدمة من قبل النظام", - "swap_usage": "استخدام المبادلة", - "temperature": "درجة الحرارة", - "temperature_des": "درجات حرارة مستشعرات النظام", - "throughput_of": "معدل نقل", - "toggle_grid": "تبديل الشبكة", - "total_cpu_usage": "إجمالي استخدام المعالج", - "total_memory_usage": "إجمالي استخدام الذاكرة", - "usage": "الاستخدام", - "used": "مستخدم", - "waiting_for": "في انتظار سجلات كافية للعرض", - "write": "كتابة" - }, - "search": "بحث", - "settings": { - "check_logs": "راجع السجلات لمزيد من التفاصيل", - "export_configuration": "تصدير الإعدادات", - "failed_to_save": "فشل في حفظ الإعدادات", - "general": { - "chart_options": { - "default_time_period": "الفترة الزمنية الافتراضية", - "default_time_period_des": "يحدد النطاق الزمني الافتراضي للمخططات عند عرض النظام.", - "subtitle": "ضبط خيارات عرض المخططات.", - "title": "خيارات المخطط" - }, - "language": { - "preferred_language": "اللغة المفضلة", - "subtitle_1": "هل تريد مساعدتنا في تحسين ترجماتنا؟ راجع", - "subtitle_2": "للمزيد من التفاصيل.", - "title": "اللغة" - }, - "subtitle": "تغيير خيارات التطبيق العامة.", - "title": "عام" - }, - "language": "اللغة", - "notifications": { - "email": { - "configure_an_SMTP_server": "تكوين خادم SMTP", - "des": "احفظ العنوان باستخدام مفتاح الإدخال أو الفاصلة. اتركه فاغاً لتعطيل إشعارات البريد الإلكتروني.", - "enter_email_address": "أدخل عنوان البريد الإلكتروني...", - "please": "الرجاء", - "title": "إشعارات البريد الإلكتروني", - "to_emails": "إلى البريد الإلكتروني", - "to_ensure_alerts_are_delivered": "لضمان تسليم التنبيهات." - }, - "subtitle_1": "تكوين كيفية استلام إشعارات التنبيه.", - "subtitle_2": "هل تبحث عن مكان إنشاء التنبيهات؟ انقر على رمز الجرس", - "subtitle_3": "في جدول الأنظمة.", - "title": "الإشعارات", - "webhook": { - "add": "إضافة", - "des_1": "يستخدم Beszel", - "des_2": "للتكامل مع خدمات الإشعارات الشائعة", - "test": "اختبار", - "test_sent": "تم إرسال إشعار الاختبار", - "test_sent_des": "تحقق من خدمة الإشعارات الخاصة بك", - "title": "إشعارات Webhook / Push" - } - }, - "save_settings": "حفظ الإعدادات", - "saved": "تم حفظ الإعدادات", - "saved_des": "تم تحديث إعدادات المستخدم الخاصة بك", - "settings": "الإعدادات", - "subtitle": "إدارة تفضيلات العرض والإشعارات.", - "yaml_config": { - "alert": { - "des_1": "الأنظمة الموجودة غير المحددة في", - "des_2": "سيتم حذفها. يرجى النسخ الاحتياطي بانتظام.", - "title": "تحذير - احتمال فقدان البيانات" - }, - "des_1": "يستخدم النظام", - "des_2": "ملف تكوين لإدارة البيانات", - "des_3": "عند كل إعادة تشغيل، سيتم تحديث الأنظمة في قاعدة البيانات لتطابق الأنظمة المحددة في الملف.", - "short_title": "تكوين YAML", - "subtitle": "تصدير تكوين النظام الحالي.", - "title": "تكوين YAML" - } - }, - "system": "نظام", - "systems": "الأنظمة", - "systems_table": { - "agent": "الوكيل", - "copy_host": "نسخ المضيف", - "cpu": "المعالج", - "delete": "حذف", - "delete_confirm": "هل أنت متأكد أنك تريد حذف {{name}}؟", - "delete_confirm_des_1": "لا يمكن التراجع عن هذا الإجراء. سيؤدي هذا إلى حذف جميع السجلات الحالية نهائياً لـ", - "delete_confirm_des_2": "من قاعدة البيانات.", - "disk": "القرص", - "memory": "الذاكرة", - "net": "الشبكة", - "no_systems_found": "لم يتم العثور على أنظمة.", - "open_menu": "فتح القائمة", - "pause": "إيقاف مؤقت", - "resume": "استئناف", - "system": "النظام" - }, - "themes": { - "dark": "داكن", - "light": "فاتح", - "system": "النظام", - "toggle_theme": "تبديل السمة" - }, - "user_dm": { - "auth_providers": "مزودو المصادقة", - "backups": "النسخ الاحتياطي", - "log_out": "تسجيل الخروج", - "logs": "السجلات", - "users": "المستخدمون" - }, - "weeks_few": "{{count}} أسابيع", - "weeks_many": "{{count}} أسبوعًا", - "weeks_one": "{{count}} أسبوع", - "weeks_other": "{{count}} أسابيع", - "weeks_two": "{{count}} أسبوعان", - "weeks_zero": "٠ أسابيع" -} diff --git a/beszel/site/src/locales/de/messages.po b/beszel/site/src/locales/de/messages.po new file mode 100644 index 0000000..06294a0 --- /dev/null +++ b/beszel/site/src/locales/de/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: de\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/de/messages.ts b/beszel/site/src/locales/de/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/de/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/de/translation.json b/beszel/site/src/locales/de/translation.json deleted file mode 100644 index 216ddf0..0000000 --- a/beszel/site/src/locales/de/translation.json +++ /dev/null @@ -1,219 +0,0 @@ -{ - "add": "Hinzufügen", - "add_system": { - "add_new_system": "Neues System hinzufügen", - "add_system": "System hinzufügen", - "binary": "Binär", - "click_to_copy": "Zum Kopieren klicken", - "command": "Befehl", - "dialog_des_1": "Der Agent muss auf dem System laufen, um eine Verbindung herzustellen. Kopieren Sie den", - "dialog_des_2": "für den Agenten unten.", - "host_ip": "Host / IP", - "key": "Schlüssel", - "name": "Name", - "port": "Port" - }, - "alerts": { - "average_exceeds": "Durchschnitt überschreitet", - "for": "Für", - "info": { - "bandwidth": "Bandbreite", - "bandwidth_des": "Löst aus, wenn die kombinierte Auf-/Abwärtsbandbreite einen Schwellenwert überschreitet.", - "cpu_usage": "CPU-Auslastung", - "cpu_usage_des": "Löst aus, wenn die CPU-Auslastung einen Schwellenwert überschreitet.", - "disk_usage": "Festplattennutzung", - "disk_usage_des": "Löst aus, wenn die Nutzung einer Festplatte einen Schwellenwert überschreitet.", - "memory_usage": "Speicherauslastung", - "memory_usage_des": "Löst aus, wenn die Speicherauslastung einen Schwellenwert überschreitet.", - "status": "Status", - "status_des": "Löst aus, wenn der Status zwischen oben und unten wechselt.", - "temperature": "Temperatur", - "temperature_des": "Löst aus, wenn ein Sensor einen Schwellenwert überschreitet." - }, - "notification_settings": "Benachrichtigungseinstellungen", - "overwrite_existing_alerts": "Bestehende Warnungen überschreiben", - "subtitle_1": "Siehe", - "subtitle_2": "um zu konfigurieren, wie Sie Warnungen erhalten.", - "title": "Warnungen" - }, - "all_systems": "Alle Systeme", - "auth": { - "command_1": "Wenn Sie das Passwort für Ihr Administratorkonto verloren haben, können Sie es mit dem folgenden Befehl zurücksetzen.", - "command_2": "Melden Sie sich dann im Backend an und setzen Sie das Passwort Ihres Benutzerkontos in der Benutzertabelle zurück.", - "command_line_instructions": "Befehlszeilenanweisungen", - "create": "Bitte erstellen Sie ein Administratorkonto", - "create_account": "Konto erstellen", - "for_instructions": "für Anweisungen an.", - "forgot_password": "Passwort vergessen?", - "login": "Bitte melden Sie sich bei Ihrem Konto an", - "openid_des": "Beszel unterstützt OpenID Connect und viele OAuth2-Authentifizierungsanbieter.", - "please_view_the": "Bitte sehen Sie sich die", - "reset": "E-Mail-Adresse eingeben, um das Passwort zurückzusetzen", - "reset_password": "Passwort zurücksetzen", - "sign_in": "Anmelden" - }, - "cancel": "Abbrechen", - "clipboard": { - "copied": "In die Zwischenablage kopiert", - "des": "Automatisches Kopieren erfordert einen sicheren Kontext.", - "title": "Text kopieren" - }, - "command": { - "SMTP_settings": "SMTP-Einstellungen", - "admin": "Admin", - "dashboard": "Dashboard", - "documentation": "Dokumentation", - "page": "Seite", - "pages_settings": "Seiten / Einstellungen", - "search": "Nach Systemen oder Einstellungen suchen..." - }, - "continue": "Fortsetzen", - "copy": "Kopieren", - "days_one": "", - "days_other": "{{count}} Tage", - "error": "Fehler", - "filter": "Filtern...", - "home": { - "active_alerts": "Aktive Warnungen", - "active_des": "Überschreitet {{value}}{{unit}} in den letzten ", - "subtitle": "Wird in Echtzeit aktualisiert. Klicken Sie auf ein System, um Informationen anzuzeigen." - }, - "hours_one": "{{count}} Stunde", - "hours_other": "{{count}} Stunden", - "minutes_one": "{{count}} Minute", - "minutes_other": "{{count}} Minuten", - "monitor": { - "average": "Durchschnitt", - "bandwidth": "Bandbreite", - "bandwidth_des": "Netzwerkverkehr der öffentlichen Schnittstellen", - "cache_buffers": "Cache/Puffer", - "cpu_des": "Systemweite CPU-Auslastung", - "disk_des": "Nutzung der Root-Partition", - "disk_io": "Festplatten-I/O", - "disk_io_des": "Durchsatz des Root-Dateisystems", - "disk_space": "Festplattenspeicher", - "disk_usage_of": "Festplattennutzung von", - "docker_cpu_des": "Durchschnittliche CPU-Auslastung der Container", - "docker_cpu_usage": "Docker-CPU-Auslastung", - "docker_memory_des": "Speichernutzung der Docker-Container", - "docker_memory_usage": "Docker-Speicherauslastung", - "docker_network_io": "Docker-Netzwerk-I/O", - "docker_network_io_des": "Netzwerkverkehr der Docker-Container", - "max_1_min": "Max 1 Min", - "memory_des": "Genaue Nutzung zum aufgezeichneten Zeitpunkt", - "read": "Lesen", - "received": "Empfangen", - "sent": "Gesendet", - "swap_des": "Vom System genutzter Swap-Speicher", - "swap_usage": "Swap-Nutzung", - "temperature": "Temperatur", - "temperature_des": "Temperaturen der System-Sensoren", - "throughput_of": "Durchsatz von", - "toggle_grid": "Raster umschalten", - "total_cpu_usage": "Gesamte CPU-Auslastung", - "total_memory_usage": "Gesamte Speicherauslastung", - "usage": "Nutzung", - "used": "Verwendet", - "waiting_for": "Warten auf genügend Datensätze zur Anzeige", - "write": "Schreiben" - }, - "search": "Suchen", - "settings": { - "check_logs": "Überprüfen Sie die Protokolle für weitere Details", - "export_configuration": "Konfiguration exportieren", - "failed_to_save": "Fehler beim Speichern der Einstellungen", - "general": { - "chart_options": { - "default_time_period": "Standardzeitraum", - "default_time_period_des": "Legt den Standardzeitraum für Diagramme fest, wenn ein System angezeigt wird.", - "subtitle": "Anzeigeoptionen für Diagramme anpassen.", - "title": "Diagrammoptionen" - }, - "language": { - "preferred_language": "Bevorzugte Sprache", - "subtitle_1": "Möchten Sie uns helfen, unsere Übersetzungen noch besser zu machen? Schauen Sie sich", - "subtitle_2": "für weitere Details an.", - "title": "Sprache" - }, - "subtitle": "Allgemeine Anwendungsoptionen ändern.", - "title": "Allgemein" - }, - "language": "Sprache", - "notifications": { - "email": { - "configure_an_SMTP_server": "konfigurieren Sie einen SMTP-Server", - "des": "Adresse mit der Eingabetaste oder dem Komma speichern. Leer lassen, um E-Mail-Benachrichtigungen zu deaktivieren.", - "enter_email_address": "E-Mail-Adresse eingeben...", - "please": "Bitte", - "title": "E-Mail-Benachrichtigungen", - "to_emails": "An E-Mail(s)", - "to_ensure_alerts_are_delivered": "um sicherzustellen, dass Warnungen zugestellt werden." - }, - "subtitle_1": "Konfigurieren Sie, wie Sie Warnbenachrichtigungen erhalten.", - "subtitle_2": "Suchen Sie stattdessen nach dem Ort, an dem Sie Warnungen erstellen können? Klicken Sie auf die Glocke", - "subtitle_3": "Symbole in der Systemtabelle.", - "title": "Benachrichtigungen", - "webhook": { - "add": "Hinzufügen", - "des_1": "Beszel verwendet", - "des_2": "um sich mit beliebten Benachrichtigungsdiensten zu integrieren", - "test": "Testen", - "test_sent": "Testbenachrichtigung gesendet", - "test_sent_des": "Überprüfen Sie Ihren Benachrichtigungsdienst", - "title": "Webhook / Push-Benachrichtigungen" - } - }, - "save_settings": "Einstellungen speichern", - "saved": "Einstellungen gespeichert", - "saved_des": "Ihre Benutzereinstellungen wurden aktualisiert", - "settings": "Einstellungen", - "subtitle": "Anzeige- und Benachrichtigungseinstellungen verwalten.", - "yaml_config": { - "alert": { - "des_1": "Bestehende Systeme, die nicht in", - "des_2": "definiert sind, werden gelöscht. Bitte machen Sie regelmäßige Backups.", - "title": "Achtung - potenzieller Datenverlust" - }, - "des_1": "Systeme können in einer", - "des_2": "Datei im Datenverzeichnis verwaltet werden.", - "des_3": "Bei jedem Neustart werden die Systeme in der Datenbank aktualisiert, um den in der Datei definierten Systemen zu entsprechen.", - "short_title": "YAML-Konfig", - "subtitle": "Aktuelle Systemkonfiguration exportieren.", - "title": "YAML-Konfiguration" - } - }, - "system": "System", - "systems": "Systeme", - "systems_table": { - "agent": "Agent", - "copy_host": "Host kopieren", - "cpu": "CPU", - "delete": "Löschen", - "delete_confirm": "Sind Sie sicher, dass Sie {{name}} löschen möchten?", - "delete_confirm_des_1": "Diese Aktion kann nicht rückgängig gemacht werden. Dies wird alle aktuellen Aufzeichnungen für", - "delete_confirm_des_2": "dauerhaft aus der Datenbank löschen.", - "disk": "Festplatte", - "memory": "Speicher", - "net": "Net", - "no_systems_found": "Keine Systeme gefunden.", - "open_menu": "Menü öffnen", - "pause": "Pause", - "resume": "Fortsetzen", - "system": "System" - }, - "themes": { - "dark": "Dunkel", - "light": "Hell", - "system": "System", - "toggle_theme": "Thema wechseln" - }, - "user_dm": { - "auth_providers": "Authentifizierungsanbieter", - "backups": "Backups", - "log_out": "Abmelden", - "logs": "Protokolle", - "users": "Benutzer" - }, - "weeks_one": "{{count}} Woche", - "weeks_other": "" -} diff --git a/beszel/site/src/locales/en/messages.po b/beszel/site/src/locales/en/messages.po new file mode 100644 index 0000000..c534201 --- /dev/null +++ b/beszel/site/src/locales/en/messages.po @@ -0,0 +1,796 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 11:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: en\n" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Plural-Forms: \n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "{0, plural, one {# day} other {# days}}" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "{hours, plural, one {# hour} other {# hours}}" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "1 hour" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "1 week" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "12 hours" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "24 hours" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "30 days" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "Active Alerts" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "Add <0>System" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "Add New System" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "Add system" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "Add URL" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "Adjust display options for charts." + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "Admin" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "Agent" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "Alerts" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "All Systems" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "Are you sure you want to delete {name}?" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "Auth Providers" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "Automatic copy requires a secure context." + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "Average" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "Average CPU utilization of containers" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "Average exceeds <0>{value}{0}" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "Average system-wide CPU utilization" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "Backups" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "Bandwidth" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "Beszel supports OpenID Connect and many OAuth2 authentication providers." + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "Beszel uses <0>Shoutrrr to integrate with popular notification services." + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "Binary" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "Cache / Buffers" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "Cancel" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "Caution - potential data loss" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "Change general application options." + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "Chart options" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "Check {email} for a reset link." + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "Check logs for more details." + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "Check your notification service" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "Click to copy" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "Command line instructions" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "Configure how you receive alert notifications." + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "Confirm password" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "Continue" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "Copied to clipboard" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "Copy" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "Copy host" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "Copy Linux command" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "Copy text" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "CPU" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "CPU Usage" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "Create account" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "Dark" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "Dashboard" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "Default time period" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "Delete" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "Disk" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "Disk I/O" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "Disk Usage" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "Disk usage of {extraFsName}" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "Docker CPU Usage" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "Docker Memory Usage" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "Docker Network I/O" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "Documentation" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "email" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "Email" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "Email notifications" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "Enter email address to reset password" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "Enter email address..." + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "Error" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "Export configuration" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "Export your current systems configuration." + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "Failed to authenticate" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "Failed to save settings" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "Failed to send test notification" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "Failed to update alert" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "Filter..." + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "For <0>{min} {min, plural, one {minute} other {minutes}}" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "Forgot password?" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "General" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "Host / IP" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "If you've lost the password to your admin account, you may reset it using the following command." + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "Invalid email address." + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "Kernel" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "Language" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "Light" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "Log Out" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "Login" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "Login attempt failed" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "Logs" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "Manage display and notification preferences." + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "Max 1 min" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "Memory" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "Memory Usage" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "Memory usage of docker containers" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "Name" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "name@example.com" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "Net" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "Network traffic of docker containers" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "Network traffic of public interfaces" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "No results found." + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "No systems found." + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "Notifications" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "OAuth 2 / OIDC support" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "On each restart, systems in the database will be updated to match the systems defined in the file." + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "Open menu" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "Or continue with" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "Overwrite existing alerts" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "Page" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "Pages / Settings" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "Password" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "Password must be at least 10 characters." + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "Password reset request received" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "Pause" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "Please <0>configure an SMTP server to ensure alerts are delivered." + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "Please check logs for more details." + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "Please check your credentials and try again" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "Please create an admin account" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "Please enable pop-ups for this site" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "Please log in again" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "Please see <0>the documentation for instructions." + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "Please sign in to your account" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "Port" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "Preferred Language" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "Public Key" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "Read" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "Received" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "Reset Password" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "Resume" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "Save address using enter key or comma. Leave blank to disable email notifications." + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "Save Settings" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "Search" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "Search for systems or settings..." + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "See <0>notification settings to configure how you receive alerts." + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "Sent" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "Sets the default time range for charts when a system is viewed." + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "Settings" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "Settings saved" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "Sign in" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "SMTP settings" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "Status" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "Swap space used by the system" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "Swap Usage" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "System" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "Systems" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "Systems may be managed in a <0>config.yml file inside your data directory." + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "Temperature" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "Temperatures of system sensors" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "Test <0>URL" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "Test notification sent" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "The agent must be running on the system to connect. Copy the installation command for the agent below." + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "Then log into the backend and reset your user account password in the users table." + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "This action cannot be undone. This will permanently delete all current records for {name} from the database." + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "Throughput of {extraFsName}" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "Throughput of root filesystem" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "To email(s)" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "Toggle grid" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "Toggle theme" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "Triggers when any sensor exceeds a threshold" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "Triggers when combined up/down exceeds a threshold" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "Triggers when CPU usage exceeds a threshold" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "Triggers when memory usage exceeds a threshold" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "Triggers when memory usage exceeds a threshold." + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "Triggers when status switches between up and down" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "Triggers when usage of any disk exceeds a threshold" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "Updated in real time. Click on a system to view information." + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "Uptime" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "Usage" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "Usage of root partition" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "Used" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "username" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "Username" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "Users" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "Waiting for enough records to display" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "Want to help us make our translations even better? Check out <0>Crowdin for more details." + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "Webhook / Push notifications" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "Write" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "YAML Config" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "YAML Configuration" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "Your user settings have been updated." diff --git a/beszel/site/src/locales/en/messages.ts b/beszel/site/src/locales/en/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/en/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/en/translation.json b/beszel/site/src/locales/en/translation.json deleted file mode 100644 index 8af3450..0000000 --- a/beszel/site/src/locales/en/translation.json +++ /dev/null @@ -1,217 +0,0 @@ -{ - "add": "Add", - "add_system": { - "add_new_system": "Add New System", - "add_system": "Add system", - "binary": "Binary", - "click_to_copy": "Click to copy", - "command": "command", - "dialog_des_1": "The agent must be running on the system to connect. Copy the", - "dialog_des_2": "for the agent below.", - "host_ip": "Host / IP", - "key": "Public Key", - "name": "Name", - "port": "Port" - }, - "alerts": { - "average_exceeds": "Average exceeds", - "for": "For", - "info": { - "bandwidth": "Bandwidth", - "bandwidth_des": "Triggers when combined up/down exceeds a threshold.", - "cpu_usage": "CPU Usage", - "cpu_usage_des": "Triggers when CPU usage exceeds a threshold.", - "disk_usage": "Disk Usage", - "disk_usage_des": "Triggers when usage of any disk exceeds a threshold.", - "memory_usage": "Memory Usage", - "memory_usage_des": "Triggers when memory usage exceeds a threshold.", - "status": "Status", - "status_des": "Triggers when status switches between up and down.", - "temperature": "Temperature", - "temperature_des": "Triggers when any sensor exceeds a threshold." - }, - "notification_settings": "notification settings", - "overwrite_existing_alerts": "Overwrite existing alerts", - "subtitle_1": "See", - "subtitle_2": "to configure how you receive alerts.", - "title": "Alerts" - }, - "all_systems": "All Systems", - "auth": { - "command_1": "If you've lost the password to your admin account, you may reset it using the following command.", - "command_2": "Then log into the backend and reset your user account password in the users table.", - "command_line_instructions": "Command line instructions", - "create": "Please create an admin account", - "create_account": "Create account", - "for_instructions": "for instructions.", - "forgot_password": "Forgot password?", - "login": "Please sign in to your account", - "openid_des": "Beszel supports OpenID Connect and many OAuth2 authentication providers.", - "please_view_the": "Please view the", - "reset": "Enter email address to reset password", - "reset_password": "Reset Password", - "sign_in": "Sign in" - }, - "cancel": "Cancel", - "clipboard": { - "copied": "Copied to clipboard", - "des": "Automatic copy requires a secure context.", - "title": "Copy text" - }, - "command": { - "SMTP_settings": "SMTP settings", - "admin": "Admin", - "dashboard": "Dashboard", - "documentation": "Documentation", - "page": "Page", - "pages_settings": "Pages / Settings", - "search": "Search for systems or settings..." - }, - "continue": "Continue", - "copy": "Copy", - "days_other": "{{count}} days", - "error": "Error", - "filter": "Filter...", - "home": { - "active_alerts": "Active Alerts", - "active_des": "Exceeds {{value}}{{unit}} in last ", - "subtitle": "Updated in real time. Click on a system to view information." - }, - "hours_one": "{{count}} hour", - "hours_other": "{{count}} hours", - "minutes_one": "{{count}} minute", - "minutes_other": "{{count}} minutes", - "monitor": { - "average": "Average", - "bandwidth": "Bandwidth", - "bandwidth_des": "Network traffic of public interfaces", - "cache_buffers": "Cache / Buffers", - "cpu_des": "system-wide CPU utilization", - "disk_des": "Usage of root partition", - "disk_io": "Disk I/O", - "disk_io_des": "Throughput of root filesystem", - "disk_space": "Disk Space", - "disk_usage_of": "Disk usage of", - "docker_cpu_des": "Average CPU utilization of containers", - "docker_cpu_usage": "Docker CPU Usage", - "docker_memory_des": "Memory usage of docker containers", - "docker_memory_usage": "Docker Memory Usage", - "docker_network_io": "Docker Network I/O", - "docker_network_io_des": "Network traffic of docker containers", - "max_1_min": "Max 1 min ", - "memory_des": "Precise utilization at the recorded time", - "read": "Read", - "received": "Received", - "sent": "Sent", - "swap_des": "Swap space used by the system", - "swap_usage": "Swap Usage", - "temperature": "Temperature", - "temperature_des": "Temperatures of system sensors", - "throughput_of": "Throughput of", - "toggle_grid": "Toggle grid", - "total_cpu_usage": "Total CPU Usage", - "total_memory_usage": "Total Memory Usage", - "usage": "Usage", - "used": "Used", - "waiting_for": "Waiting for enough records to display", - "write": "Write" - }, - "search": "Search", - "settings": { - "check_logs": "Check logs for more details.", - "export_configuration": "Export configuration", - "failed_to_save": "Failed to save settings", - "general": { - "chart_options": { - "default_time_period": "Default time period", - "default_time_period_des": "Sets the default time range for charts when a system is viewed.", - "subtitle": "Adjust display options for charts.", - "title": "Chart options" - }, - "language": { - "preferred_language": "Preferred Language", - "subtitle_1": "Want to help us make our translations even better? Check out", - "subtitle_2": "for more details.", - "title": "Language" - }, - "subtitle": "Change general application options.", - "title": "General" - }, - "language": "Language", - "notifications": { - "email": { - "configure_an_SMTP_server": "configure an SMTP server", - "des": "Save address using enter key or comma. Leave blank to disable email notifications.", - "enter_email_address": "Enter email address...", - "please": "Please", - "title": "Email notifications", - "to_emails": "To email(s)", - "to_ensure_alerts_are_delivered": "to ensure alerts are delivered." - }, - "subtitle_1": "Configure how you receive alert notifications.", - "subtitle_2": "Looking instead for where to create alerts? Click the bell", - "subtitle_3": "icons in the systems table.", - "title": "Notifications", - "webhook": { - "add": "Add", - "des_1": "Beszel uses", - "des_2": "to integrate with popular notification services.", - "test": "Test", - "test_sent": "Test notification sent", - "test_sent_des": "Check your notification service", - "title": "Webhook / Push notifications" - } - }, - "save_settings": "Save Settings", - "saved": "Settings saved", - "saved_des": "Your user settings have been updated.", - "settings": "Settings", - "subtitle": "Manage display and notification preferences.", - "yaml_config": { - "alert": { - "des_1": "Existing systems not defined in", - "des_2": "will be deleted. Please make regular backups.", - "title": "Caution - potential data loss" - }, - "des_1": "Systems may be managed in a", - "des_2": "file inside your data directory.", - "des_3": "On each restart, systems in the database will be updated to match the systems defined in the file.", - "short_title": "YAML Config", - "subtitle": "Export your current systems configuration.", - "title": "YAML Configuration" - } - }, - "system": "System", - "systems": "Systems", - "systems_table": { - "agent": "Agent", - "copy_host": "Copy host", - "cpu": "CPU", - "delete": "Delete", - "delete_confirm": "Are you sure you want to delete {{name}}?", - "delete_confirm_des_1": "This action cannot be undone. This will permanently delete all current records for", - "delete_confirm_des_2": "from the database.", - "disk": "Disk", - "memory": "Memory", - "net": "Net", - "no_systems_found": "No systems found.", - "open_menu": "Open menu", - "pause": "Pause", - "resume": "Resume", - "system": "System" - }, - "themes": { - "dark": "Dark", - "light": "Light", - "system": "System", - "toggle_theme": "Toggle theme" - }, - "user_dm": { - "auth_providers": "Auth Providers", - "backups": "Backups", - "log_out": "Log Out", - "logs": "Logs", - "users": "Users" - }, - "weeks_one": "{{count}} week" -} diff --git a/beszel/site/src/locales/es/messages.po b/beszel/site/src/locales/es/messages.po new file mode 100644 index 0000000..4a4e273 --- /dev/null +++ b/beszel/site/src/locales/es/messages.po @@ -0,0 +1,796 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 12:23-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: es\n" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: \n" +"Last-Translator: \n" +"Language-Team: \n" +"Plural-Forms: \n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "{0, plural, one {# día} other {# días}}" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "{hours, plural, one {# hora} other {# horas}}" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "1 hora" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "1 semana" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "12 horas" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "24 horas" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "30 días" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "Alertas Activas" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "Agregar <0>Sistema" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "Agregar Nuevo Sistema" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "Agregar sistema" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "Agregar URL" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "Ajustar las opciones de visualización para los gráficos." + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "Administrador" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "Agente" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "Alertas" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "Todos los Sistemas" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "¿Está seguro de que desea eliminar {name}?" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "Proveedores de Autenticación" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "La copia automática requiere un contexto seguro." + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "Promedio" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "Utilización promedio de CPU de los contenedores" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "El promedio excede <0>{value}{0}" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "Utilización promedio de CPU del sistema" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "Copias de Seguridad" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "Ancho de banda" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "Beszel admite OpenID Connect y muchos proveedores de autenticación OAuth2." + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "Beszel utiliza <0>Shoutrrr para integrarse con servicios populares de notificación." + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "Binario" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "Caché / Buffers" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "Cancelar" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "Precaución - posible pérdida de datos" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "Cambiar las opciones generales de la aplicación." + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "Opciones de Gráficos" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "Revise {email} para un enlace de restablecimiento." + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "Revise los registros para más detalles." + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "Verifique su servicio de notificaciones" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "Haga clic para copiar" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "Instrucciones de línea de comandos" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "Configure cómo recibe las notificaciones de alertas." + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "Confirmar contraseña" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "Continuar" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "Copiado al portapapeles" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "Copiar" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "Copiar host" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "Copiar comando de Linux" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "Copiar texto" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "CPU" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "Uso de CPU" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "Crear cuenta" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "Oscuro" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "Tablero" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "Período de tiempo predeterminado" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "Eliminar" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "Disco" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "E/S de Disco" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "Uso de Disco" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "Uso de disco de {extraFsName}" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "Uso de CPU de Docker" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "Uso de Memoria de Docker" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "E/S de Red de Docker" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "Documentación" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "correo electrónico" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "Correo electrónico" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "Notificaciones por correo" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "Ingrese la dirección de correo electrónico para restablecer la contraseña" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "Ingrese dirección de correo..." + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "Error" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "Excede {0}{1} en el último {2, plural, one {# minuto} other {# minutos}}" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "Los sistemas existentes no definidos en <0>config.yml serán eliminados. Por favor, haga copias de seguridad regularmente." + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "Exportar configuración" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "Exporte la configuración actual de sus sistemas." + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "Error al autenticar" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "Error al guardar la configuración" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "Error al enviar la notificación de prueba" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "Error al actualizar la alerta" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "Filtrar..." + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "Por <0>{min} {min, plural, one {minuto} other {minutos}}" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "¿Olvidó su contraseña?" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "General" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "Host / IP" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "Si ha perdido la contraseña de su cuenta de administrador, puede restablecerla usando el siguiente comando." + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "Dirección de correo electrónico no válida." + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "Kernel" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "Idioma" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "Claro" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "Cerrar Sesión" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "Iniciar sesión" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "Intento de inicio de sesión fallido" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "Registros" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "¿Busca dónde crear alertas? Haga clic en los iconos de campana <0/> en la tabla de sistemas." + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "Administrar preferencias de visualización y notificaciones." + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "Máx 1 min" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "Memoria" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "Uso de Memoria" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "Uso de memoria de los contenedores de Docker" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "Nombre" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "nombre@ejemplo.com" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "Red" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "Tráfico de red de los contenedores de Docker" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "Tráfico de red de interfaces públicas" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "No se encontraron resultados." + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "No se encontraron sistemas." + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "Notificaciones" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "Soporte para OAuth 2 / OIDC" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "En cada reinicio, los sistemas en la base de datos se actualizarán para coincidir con los sistemas definidos en el archivo." + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "Abrir menú" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "O continuar con" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "Sobrescribir alertas existentes" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "Página" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "Páginas / Configuraciones" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "Contraseña" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "La contraseña debe tener al menos 10 caracteres." + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "Solicitud de restablecimiento de contraseña recibida" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "Pausar" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "Por favor, <0>configure un servidor SMTP para asegurar que las alertas sean entregadas." + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "Por favor, revise los registros para más detalles." + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "Por favor, verifique sus credenciales e intente de nuevo" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "Por favor, cree una cuenta de administrador" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "Por favor, habilite las ventanas emergentes para este sitio" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "Por favor, inicie sesión de nuevo" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "Por favor, consulte <0>la documentación para obtener instrucciones." + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "Por favor, inicie sesión en su cuenta" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "Puerto" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "Idioma Preferido" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "Clave Pública" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "Lectura" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "Recibido" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "Restablecer Contraseña" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "Reanudar" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "Guarde la dirección usando la tecla enter o coma. Deje en blanco para desactivar las notificaciones por correo." + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "Guardar Configuración" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "Buscar" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "Buscar sistemas o configuraciones..." + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "Consulte <0>configuración de notificaciones para configurar cómo recibe alertas." + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "Enviado" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "Establece el rango de tiempo predeterminado para los gráficos cuando se visualiza un sistema." + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "Configuración" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "Configuración guardada" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "Iniciar sesión" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "Configuración SMTP" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "Estado" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "Espacio de swap utilizado por el sistema" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "Uso de Swap" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "Sistema" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "Sistemas" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "Los sistemas pueden ser gestionados en un archivo <0>config.yml dentro de su directorio de datos." + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "Temperatura" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "Temperaturas de los sensores del sistema" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "Probar <0>URL" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "Notificación de prueba enviada" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "El agente debe estar ejecutándose en el sistema para conectarse. Copie el comando de instalación para el agente a continuación." + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "El agente debe estar ejecutándose en el sistema para conectarse. Copie el <0>docker-compose.yml para el agente a continuación." + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "Luego inicie sesión en el backend y restablezca la contraseña de su cuenta de usuario en la tabla de usuarios." + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "Esta acción no se puede deshacer. Esto eliminará permanentemente todos los registros actuales de {name} de la base de datos." + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "Rendimiento de {extraFsName}" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "Rendimiento del sistema de archivos raíz" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "A correo(s)" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "Alternar cuadrícula" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "Alternar tema" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "Se activa cuando cualquier sensor supera un umbral" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "Se activa cuando la suma de subida/bajada supera un umbral" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "Se activa cuando el uso de CPU supera un umbral" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "Se activa cuando el uso de memoria supera un umbral" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "Se activa cuando el uso de memoria supera un umbral." + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "Se activa cuando el estado cambia entre activo e inactivo" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "Se activa cuando el uso de cualquier disco supera un umbral" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "Actualizado en tiempo real. Haga clic en un sistema para ver la información." + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "Tiempo de actividad" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "Uso" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "Uso de la partición raíz" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "Usado" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "nombre de usuario" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "Nombre de usuario" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "Usuarios" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "Esperando suficientes registros para mostrar" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "¿Quieres ayudarnos a mejorar nuestras traducciones? Consulta <0>Crowdin para más detalles." + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "Notificaciones Webhook / Push" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "Escritura" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "Configuración YAML" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "Configuración YAML" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "Su configuración de usuario ha sido actualizada." diff --git a/beszel/site/src/locales/es/messages.ts b/beszel/site/src/locales/es/messages.ts new file mode 100644 index 0000000..fcf1d19 --- /dev/null +++ b/beszel/site/src/locales/es/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" día\"],\"other\":[\"#\",\" días\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hora\"],\"other\":[\"#\",\" horas\"]}]],\"vp5vfW\":\"1 hora\",\"3vtzIH\":\"1 semana\",\"8gE33P\":\"12 horas\",\"VaA9mu\":\"24 horas\",\"P9cEa2\":\"30 días\",\"BF9frx\":\"Alertas Activas\",\"STwytW\":\"Agregar <0>Sistema\",\"bJRBHa\":\"Agregar Nuevo Sistema\",\"WXW3md\":\"Agregar sistema\",\"dn+x7E\":\"Agregar URL\",\"rjj30q\":\"Ajustar las opciones de visualización para los gráficos.\",\"U3pytU\":\"Administrador\",\"iEQQyu\":\"Agente\",\"s4BX3A\":\"Alertas\",\"sifuwH\":\"Todos los Sistemas\",\"kXr5Rz\":[\"¿Está seguro de que desea eliminar \",[\"name\"],\"?\"],\"B0W4bF\":\"Proveedores de Autenticación\",\"/++c22\":\"La copia automática requiere un contexto seguro.\",\"3uQmjD\":\"Promedio\",\"813hlv\":\"Utilización promedio de CPU de los contenedores\",\"rOqZKh\":[\"El promedio excede <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Utilización promedio de CPU del sistema\",\"llDXYJ\":\"Copias de Seguridad\",\"OlXThP\":\"Ancho de banda\",\"cKuF3W\":\"Beszel admite OpenID Connect y muchos proveedores de autenticación OAuth2.\",\"lZMdCW\":\"Beszel utiliza <0>Shoutrrr para integrarse con servicios populares de notificación.\",\"uDUdRI\":\"Binario\",\"wKr2uE\":\"Caché / Buffers\",\"dEgA5A\":\"Cancelar\",\"sN0FOL\":\"Precaución - posible pérdida de datos\",\"IARMkX\":\"Cambiar las opciones generales de la aplicación.\",\"ow1Q6+\":\"Opciones de Gráficos\",\"bYfJUT\":[\"Revise \",[\"email\"],\" para un enlace de restablecimiento.\"],\"fRZFZa\":\"Revise los registros para más detalles.\",\"/CIvpD\":\"Verifique su servicio de notificaciones\",\"sby+1/\":\"Haga clic para copiar\",\"vUSFSH\":\"Instrucciones de línea de comandos\",\"lHxpbL\":\"Configure cómo recibe las notificaciones de alertas.\",\"xnWESi\":\"Confirmar contraseña\",\"xGVfLh\":\"Continuar\",\"FxVG/l\":\"Copiado al portapapeles\",\"he3ygx\":\"Copiar\",\"YYVxgQ\":\"Copiar host\",\"4G+D0j\":\"Copiar comando de Linux\",\"VsHxv+\":\"Copiar texto\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"Uso de CPU\",\"1hMWR6\":\"Crear cuenta\",\"pvnfJD\":\"Oscuro\",\"7p5kLi\":\"Tablero\",\"EGiNTR\":\"Período de tiempo predeterminado\",\"cnGeoo\":\"Eliminar\",\"sPFHpI\":\"Disco\",\"EodlUw\":\"E/S de Disco\",\"gMnhTK\":\"Uso de Disco\",\"WLrITB\":[\"Uso de disco de \",[\"extraFsName\"]],\"MS2ofg\":\"Uso de CPU de Docker\",\"nYgC28\":\"Uso de Memoria de Docker\",\"t7nUxv\":\"E/S de Red de Docker\",\"TvY/XA\":\"Documentación\",\"b/LfJo\":\"correo electrónico\",\"O3oNi5\":\"Correo electrónico\",\"aW3TOw\":\"Notificaciones por correo\",\"jS3CO/\":\"Ingrese la dirección de correo electrónico para restablecer la contraseña\",\"3xTTUj\":\"Ingrese dirección de correo...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Excede \",[\"0\"],[\"1\"],\" en el último \",[\"2\",\"plural\",{\"one\":[\"#\",\" minuto\"],\"other\":[\"#\",\" minutos\"]}]],\"Mgu3+g\":\"Los sistemas existentes no definidos en <0>config.yml serán eliminados. Por favor, haga copias de seguridad regularmente.\",\"UoqckY\":\"Exportar configuración\",\"fw839L\":\"Exporte la configuración actual de sus sistemas.\",\"XnB4ti\":\"Error al autenticar\",\"iQ1BL4\":\"Error al guardar la configuración\",\"6H2zd1\":\"Error al enviar la notificación de prueba\",\"MN5GEP\":\"Error al actualizar la alerta\",\"6HLTEb\":\"Filtrar...\",\"bBRdOW\":[\"Por <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minuto\",\"other\":\"minutos\"}]],\"UNMVei\":\"¿Olvidó su contraseña?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"Si ha perdido la contraseña de su cuenta de administrador, puede restablecerla usando el siguiente comando.\",\"9lqqpY\":\"Dirección de correo electrónico no válida.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Idioma\",\"1njn7W\":\"Claro\",\"paehRh\":\"Cerrar Sesión\",\"z0t9bb\":\"Iniciar sesión\",\"wJ4oIw\":\"Intento de inicio de sesión fallido\",\"w/bY7R\":\"Registros\",\"TrZx/y\":\"¿Busca dónde crear alertas? Haga clic en los iconos de campana <0/> en la tabla de sistemas.\",\"chM9YL\":\"Administrar preferencias de visualización y notificaciones.\",\"j0+pbV\":\"Máx 1 min\",\"v8o+Rn\":\"Memoria\",\"8x/SfR\":\"Uso de Memoria\",\"aG5gQK\":\"Uso de memoria de los contenedores de Docker\",\"6YtxFj\":\"Nombre\",\"WcgzjF\":\"nombre@ejemplo.com\",\"EcdbXQ\":\"Red\",\"NisKE2\":\"Tráfico de red de los contenedores de Docker\",\"HUz8wT\":\"Tráfico de red de interfaces públicas\",\"MZbQHL\":\"No se encontraron resultados.\",\"OpAFHJ\":\"No se encontraron sistemas.\",\"iDNBZe\":\"Notificaciones\",\"FhQ2zl\":\"Soporte para OAuth 2 / OIDC\",\"2FBOPo\":\"En cada reinicio, los sistemas en la base de datos se actualizarán para coincidir con los sistemas definidos en el archivo.\",\"GSr0rF\":\"Abrir menú\",\"zW+FpA\":\"O continuar con\",\"pZFbw+\":\"Sobrescribir alertas existentes\",\"6WdDG7\":\"Página\",\"O20gpZ\":\"Páginas / Configuraciones\",\"8ZsakT\":\"Contraseña\",\"liCR+k\":\"La contraseña debe tener al menos 10 caracteres.\",\"uIpEE5\":\"Solicitud de restablecimiento de contraseña recibida\",\"IgrLD/\":\"Pausar\",\"LSiEmM\":\"Por favor, <0>configure un servidor SMTP para asegurar que las alertas sean entregadas.\",\"31UfkH\":\"Por favor, revise los registros para más detalles.\",\"GoDeWb\":\"Por favor, verifique sus credenciales e intente de nuevo\",\"OYKYtf\":\"Por favor, cree una cuenta de administrador\",\"YHbZRj\":\"Por favor, habilite las ventanas emergentes para este sitio\",\"slfxx+\":\"Por favor, inicie sesión de nuevo\",\"EKu8aa\":\"Por favor, consulte <0>la documentación para obtener instrucciones.\",\"evGUBI\":\"Por favor, inicie sesión en su cuenta\",\"hZ6znB\":\"Puerto\",\"DV+Xbw\":\"Idioma Preferido\",\"z1Vlg/\":\"Clave Pública\",\"cQlPDN\":\"Lectura\",\"fZ5Vnu\":\"Recibido\",\"KbS2K9\":\"Restablecer Contraseña\",\"v39wLo\":\"Reanudar\",\"9mH8Zc\":\"Guarde la dirección usando la tecla enter o coma. Deje en blanco para desactivar las notificaciones por correo.\",\"UGT5vp\":\"Guardar Configuración\",\"A1taO8\":\"Buscar\",\"61jyG4\":\"Buscar sistemas o configuraciones...\",\"L0g2h9\":\"Consulte <0>configuración de notificaciones para configurar cómo recibe alertas.\",\"h69WC6\":\"Enviado\",\"/U/zMZ\":\"Establece el rango de tiempo predeterminado para los gráficos cuando se visualiza un sistema.\",\"Tz0i8g\":\"Configuración\",\"iMxx2A\":\"Configuración guardada\",\"5lWFkC\":\"Iniciar sesión\",\"3cXFzn\":\"Configuración SMTP\",\"uAQUqI\":\"Estado\",\"xa/6Rx\":\"Espacio de swap utilizado por el sistema\",\"AnW27x\":\"Uso de Swap\",\"D+NlUC\":\"Sistema\",\"c8KseH\":\"Sistemas\",\"CLDb6E\":\"Los sistemas pueden ser gestionados en un archivo <0>config.yml dentro de su directorio de datos.\",\"oE+H8K\":\"Temperatura\",\"gLNBDr\":\"Temperaturas de los sensores del sistema\",\"eeos47\":\"Probar <0>URL\",\"MucYW8\":\"Notificación de prueba enviada\",\"O+ia7W\":\"El agente debe estar ejecutándose en el sistema para conectarse. Copie el comando de instalación para el agente a continuación.\",\"Ii3pEi\":\"El agente debe estar ejecutándose en el sistema para conectarse. Copie el <0>docker-compose.yml para el agente a continuación.\",\"i0G/mY\":\"Luego inicie sesión en el backend y restablezca la contraseña de su cuenta de usuario en la tabla de usuarios.\",\"Iy90xV\":[\"Esta acción no se puede deshacer. Esto eliminará permanentemente todos los registros actuales de \",[\"name\"],\" de la base de datos.\"],\"udNvwS\":[\"Rendimiento de \",[\"extraFsName\"]],\"lcJPpM\":\"Rendimiento del sistema de archivos raíz\",\"KLX09x\":\"A correo(s)\",\"UILhO0\":\"Alternar cuadrícula\",\"2N0C4b\":\"Alternar tema\",\"OC0Gym\":\"Se activa cuando cualquier sensor supera un umbral\",\"5W9YJm\":\"Se activa cuando la suma de subida/bajada supera un umbral\",\"Mj1/gd\":\"Se activa cuando el uso de CPU supera un umbral\",\"ovrW9c\":\"Se activa cuando el uso de memoria supera un umbral\",\"EDcnZf\":\"Se activa cuando el uso de memoria supera un umbral.\",\"Y9QEKW\":\"Se activa cuando el estado cambia entre activo e inactivo\",\"6IQ5X1\":\"Se activa cuando el uso de cualquier disco supera un umbral\",\"XxWdUX\":\"Actualizado en tiempo real. Haga clic en un sistema para ver la información.\",\"TjrbDj\":\"Tiempo de actividad\",\"7FaY4u\":\"Uso\",\"SFR5+X\":\"Uso de la partición raíz\",\"aL1w5Z\":\"Usado\",\"silO9A\":\"nombre de usuario\",\"7sNhEz\":\"Nombre de usuario\",\"Sxm8rQ\":\"Usuarios\",\"nQZqIc\":\"Esperando suficientes registros para mostrar\",\"uZcLj0\":\"¿Quieres ayudarnos a mejorar nuestras traducciones? Consulta <0>Crowdin para más detalles.\",\"iHzCRV\":\"Notificaciones Webhook / Push\",\"i4/LY/\":\"Escritura\",\"x1z+B4\":\"Configuración YAML\",\"HqAFfq\":\"Configuración YAML\",\"GWFpJ1\":\"Su configuración de usuario ha sido actualizada.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/es/translation.json b/beszel/site/src/locales/es/translation.json deleted file mode 100644 index 2ee5034..0000000 --- a/beszel/site/src/locales/es/translation.json +++ /dev/null @@ -1,223 +0,0 @@ -{ - "add": "Agregar", - "add_system": { - "add_new_system": "Agregar nuevo sistema", - "add_system": "Agregar sistema", - "binary": "Binario", - "click_to_copy": "Haz clic para copiar", - "command": "comando", - "dialog_des_1": "El agente debe estar ejecutándose en el sistema para conectarse. Copia el", - "dialog_des_2": "para el agente a continuación.", - "host_ip": "Host/IP", - "key": "Clave pública", - "name": "Nombre", - "port": "Puerto" - }, - "alerts": { - "average_exceeds": "Promedio excede", - "for": "Por", - "info": { - "bandwidth": "Ancho de banda", - "bandwidth_des": "Se activa cuando el combinado arriba/abajo supera un umbral.", - "cpu_usage": "Uso de CPU", - "cpu_usage_des": "Se activa cuando el uso de la CPU supera un umbral.", - "disk_usage": "Uso de disco", - "disk_usage_des": "Se activa cuando el uso de cualquier disco supera un umbral.", - "memory_usage": "Uso de memoria", - "memory_usage_des": "Se activa cuando el uso de la memoria supera un umbral.", - "status": "Estado", - "status_des": "Se activa cuando el estado cambia entre arriba y abajo.", - "temperature": "Temperatura", - "temperature_des": "Se activa cuando cualquier sensor supera un umbral." - }, - "notification_settings": "configuraciones de notificación", - "overwrite_existing_alerts": "Sobrescribir alertas existentes", - "subtitle_1": "Ver", - "subtitle_2": "para configurar cómo recibes las alertas.", - "title": "Alertas" - }, - "all_systems": "Todos los sistemas", - "auth": { - "command_1": "Si ha perdido la contraseña de su cuenta de administrador, puede restablecerla usando el siguiente comando.", - "command_2": "Luego inicie sesión en el backend y restablezca la contraseña de su cuenta de usuario en la tabla de usuarios.", - "command_line_instructions": "Instrucciones de línea de comandos", - "create": "Por favor, cree una cuenta de administrador", - "create_account": "Crear cuenta", - "for_instructions": "para obtener instrucciones.", - "forgot_password": "¿Olvidó su contraseña?", - "login": "Por favor, inicie sesión en su cuenta", - "openid_des": "Beszel admite OpenID Connect y muchos proveedores de autenticación OAuth2.", - "please_view_the": "Por favor, consulte el", - "reset": "Ingrese la dirección de correo electrónico para restablecer la contraseña", - "reset_password": "Restablecer contraseña", - "sign_in": "Iniciar sesión" - }, - "cancel": "Cancelar", - "clipboard": { - "copied": "Copiado al portapapeles", - "des": "La copia automática requiere un contexto seguro.", - "title": "Copiar texto" - }, - "command": { - "SMTP_settings": "Configuraciones SMTP", - "admin": "Administrador", - "dashboard": "Panel de control", - "documentation": "Documentación", - "page": "Página", - "pages_settings": "Páginas/Configuraciones", - "search": "Buscar sistemas o configuraciones..." - }, - "continue": "Continuar", - "copy": "Copiar", - "days_many": "{{count}} días", - "days_one": "{{count}} día", - "days_other": "{{count}} días", - "error": "Error", - "filter": "Filtrar...", - "home": { - "active_alerts": "Alertas activas", - "active_des": "Excede {{value}}{{unit}} en los últimos ", - "subtitle": "Actualizado en tiempo real. Haga clic en un sistema para ver información." - }, - "hours_many": "{{count}} horas", - "hours_one": "{{count}} hora", - "hours_other": "{{count}} horas", - "minutes_many": "{{count}} minutos", - "minutes_one": "{{count}} minuto", - "minutes_other": "{{count}} minutos", - "monitor": { - "average": "Promedio", - "bandwidth": "Ancho de banda", - "bandwidth_des": "Tráfico de red de interfaces públicas", - "cache_buffers": "Caché/Búferes", - "cpu_des": "Utilización de CPU de todo el sistema", - "disk_des": "Uso de la partición raíz", - "disk_io": "E/S de disco", - "disk_io_des": "Rendimiento de la raíz del sistema de archivos", - "disk_space": "Espacio en disco", - "disk_usage_of": "Uso de disco de", - "docker_cpu_des": "Uso promedio de CPU de los contenedores", - "docker_cpu_usage": "Uso de CPU de Docker", - "docker_memory_des": "Uso de memoria de los contenedores de Docker", - "docker_memory_usage": "Uso de memoria de Docker", - "docker_network_io": "E/S de red de Docker", - "docker_network_io_des": "Tráfico de red de los contenedores de Docker", - "max_1_min": "Máx. 1 min ", - "memory_des": "Utilización precisa en el momento registrado", - "read": "Lectura", - "received": "Recibido", - "sent": "Enviado", - "swap_des": "Espacio de intercambio utilizado por el sistema", - "swap_usage": "Uso de intercambio", - "temperature": "Temperatura", - "temperature_des": "Temperaturas de los sensores del sistema", - "throughput_of": "Rendimiento de", - "toggle_grid": "Alternar cuadrícula", - "total_cpu_usage": "Uso total de CPU", - "total_memory_usage": "Uso total de memoria", - "usage": "Uso", - "used": "Usado", - "waiting_for": "Esperando suficientes registros para mostrar", - "write": "Escritura" - }, - "search": "Buscar", - "settings": { - "check_logs": "Consulte los registros para más detalles.", - "export_configuration": "Exportar configuración", - "failed_to_save": "Error al guardar la configuración", - "general": { - "chart_options": { - "default_time_period": "Período de tiempo predeterminado", - "default_time_period_des": "Establezca el rango de tiempo predeterminado para los gráficos cuando se visualiza un sistema.", - "subtitle": "Ajuste las opciones de visualización para los gráficos.", - "title": "Opciones de gráficos" - }, - "language": { - "preferred_language": "Idioma preferido", - "subtitle_1": "¿Quiere ayudarnos a mejorar nuestras traducciones? Consulte", - "subtitle_2": "para más detalles.", - "title": "Idioma" - }, - "subtitle": "Cambie las opciones generales de la aplicación.", - "title": "General" - }, - "language": "Idioma", - "notifications": { - "email": { - "configure_an_SMTP_server": "configure un servidor SMTP", - "des": "Guarde la dirección presionando Enter o usando una coma. Deje en blanco para desactivar las notificaciones por correo electrónico.", - "enter_email_address": "Ingrese la dirección de correo electrónico...", - "please": "Por favor", - "title": "Notificaciones por correo electrónico", - "to_emails": "A correo electrónico(s)", - "to_ensure_alerts_are_delivered": "para asegurarse de que se entreguen las alertas." - }, - "subtitle_1": "Configure cómo recibe las notificaciones de alerta.", - "subtitle_2": "¿Busca en su lugar dónde crear alertas? Haga clic en el icono de campana", - "subtitle_3": "en la tabla de sistemas.", - "title": "Notificaciones", - "webhook": { - "add": "Agregar", - "des_1": "Beszel utiliza", - "des_2": "para integrarse con populares servicios de notificación.", - "test": "Probar", - "test_sent": "Notificación de prueba enviada", - "test_sent_des": "Verifica tu servicio de notificación", - "title": "Notificaciones Webhook/Push" - } - }, - "save_settings": "Guardar configuraciones", - "saved": "Configuración guardada", - "saved_des": "Tu configuración de usuario ha sido actualizada.", - "settings": "Configuraciones", - "subtitle": "Administre las preferencias de visualización y notificación.", - "yaml_config": { - "alert": { - "des_1": "Los sistemas existentes no definidos en", - "des_2": "serán eliminados. Por favor, haz copias de seguridad regulares.", - "title": "Advertencia - posible pérdida de datos" - }, - "des_1": "Los sistemas pueden gestionarse en un", - "des_2": "archivo dentro de tu directorio de datos.", - "des_3": "En cada reinicio, los sistemas de la base de datos se actualizarán para coincidir con los sistemas definidos en el archivo.", - "short_title": "Configuración YAML", - "subtitle": "Exporta tu configuración actual de sistemas.", - "title": "Configuración YAML" - } - }, - "system": "Sistema", - "systems": "Sistemas", - "systems_table": { - "agent": "Agente", - "copy_host": "Copiar host", - "cpu": "CPU", - "delete": "Eliminar", - "delete_confirm": "¿Estás seguro de que quieres eliminar {{name}}?", - "delete_confirm_des_1": "Esta acción no se puede deshacer. Esto eliminará permanentemente todos los registros actuales para", - "delete_confirm_des_2": "de la base de datos.", - "disk": "Disco", - "memory": "Memoria", - "net": "Red", - "no_systems_found": "No se encontraron sistemas.", - "open_menu": "Abrir menú", - "pause": "Pausar", - "resume": "Reanudar", - "system": "Sistema" - }, - "themes": { - "dark": "Oscuro", - "light": "Claro", - "system": "Sistema", - "toggle_theme": "Alternar tema" - }, - "user_dm": { - "auth_providers": "Proveedores de autenticación", - "backups": "Respaldos", - "log_out": "Cerrar sesión", - "logs": "Registros", - "users": "Usuarios" - }, - "weeks_many": "{{count}} semanas", - "weeks_one": "{{count}} semana", - "weeks_other": "{{count}} semanas" -} diff --git a/beszel/site/src/locales/fr/messages.po b/beszel/site/src/locales/fr/messages.po new file mode 100644 index 0000000..b953a2e --- /dev/null +++ b/beszel/site/src/locales/fr/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: fr\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/fr/messages.ts b/beszel/site/src/locales/fr/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/fr/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/fr/translation.json b/beszel/site/src/locales/fr/translation.json deleted file mode 100644 index 1d8fc8e..0000000 --- a/beszel/site/src/locales/fr/translation.json +++ /dev/null @@ -1,225 +0,0 @@ -{ - "add": "Ajouter", - "add_system": { - "add_new_system": "Ajouter un nouveau système", - "add_system": "Ajouter un système", - "binary": "Binaire", - "click_to_copy": "Cliquez pour copier", - "command": "commande", - "dialog_des_1": "L'agent doit être en cours d'exécution sur le système pour se connecter. Copiez le", - "dialog_des_2": "pour l'agent ci-dessous.", - "host_ip": "Hôte / IP", - "key": "Clé publique", - "name": "Nom", - "port": "Port" - }, - "alerts": { - "average_exceeds": "La moyenne dépasse", - "for": "Pour", - "info": { - "bandwidth": "Bande passante", - "bandwidth_des": "Déclenchement lorsque le total montant/descendant dépasse un seuil.", - "cpu_usage": "Utilisation du CPU", - "cpu_usage_des": "Déclenchement lorsque l'utilisation du CPU dépasse un seuil.", - "disk_usage": "Utilisation du disque", - "disk_usage_des": "Déclenchement lorsque l'utilisation de n'importe quel disque dépasse un seuil.", - "memory_usage": "Utilisation de la mémoire", - "memory_usage_des": "Déclenchement lorsque l'utilisation de la mémoire dépasse un seuil.", - "status": "Statut", - "status_des": "Déclenchement lorsque le statut passe de haut en bas.", - "temperature": "Température", - "temperature_des": "Déclenchement lorsque n'importe quel capteur dépasse un seuil." - }, - "notification_settings": "paramètres de notification", - "overwrite_existing_alerts": "Écraser les alertes existantes", - "subtitle_1": "Voir", - "subtitle_2": "pour configurer comment vous recevez les alertes.", - "title": "Alertes" - }, - "all_systems": "Tous les systèmes", - "auth": { - "command_1": "Si vous avez perdu le mot de passe de votre compte administrateur, vous pouvez le réinitialiser en utilisant la commande suivante.", - "command_2": "Ensuite, connectez-vous au backend et réinitialisez le mot de passe de votre compte utilisateur dans la table des utilisateurs.", - "command_line_instructions": "Instructions en ligne de commande", - "create": "Veuillez créer un compte administrateur", - "create_account": "Créer un compte", - "for_instructions": "pour les instructions.", - "forgot_password": "Mot de passe oublié ?", - "login": "Veuillez vous connecter à votre compte", - "openid_des": "Beszel prend en charge OpenID Connect et de nombreux fournisseurs d'authentification OAuth2.", - "please_view_the": "Veuillez consulter le", - "reset": "Entrez l'adresse e-mail pour réinitialiser le mot de passe", - "reset_password": "Réinitialiser le mot de passe", - "sign_in": "Se connecter" - }, - "cancel": "Annuler", - "clipboard": { - "copied": "Copié dans le presse-papiers", - "des": "La copie automatique nécessite un contexte sécurisé.", - "title": "Copier le texte" - }, - "command": { - "SMTP_settings": "Paramètres SMTP", - "admin": "Admin", - "dashboard": "Tableau de bord", - "documentation": "Documentation", - "page": "Page", - "pages_settings": "Pages / Paramètres", - "search": "Rechercher des systèmes ou des paramètres..." - }, - "continue": "Continuer", - "copy": "Copier", - "days_many": "", - "days_one": "", - "days_other": "{{count}} jours", - "error": "Erreur", - "filter": "Filtrer...", - "home": { - "active_alerts": "Alertes actives", - "active_des": "Dépasse {{value}}{{unit}} dans les derniers ", - "subtitle": "Mis à jour en temps réel. Cliquez sur un système pour voir les informations.", - "subtitle_1": "Mis à jour en temps réel. Appuyez sur", - "subtitle_2": "pour ouvrir la palette de commandes." - }, - "hours_many": "", - "hours_one": "{{count}} heure", - "hours_other": "{{count}} heures", - "minutes_many": "", - "minutes_one": "{{count}} minute", - "minutes_other": "{{count}} minutes", - "monitor": { - "average": "Moyenne", - "bandwidth": "Bande passante", - "bandwidth_des": "Trafic réseau des interfaces publiques", - "cache_buffers": "Cache/Tampons", - "cpu_des": "utilisation du CPU à l'échelle du système", - "disk_des": "Utilisation de la partition racine", - "disk_io": "E/S disque", - "disk_io_des": "Débit du système de fichiers racine", - "disk_space": "Espace disque", - "disk_usage_of": "Utilisation du disque de", - "docker_cpu_des": "Utilisation moyenne du CPU des conteneurs", - "docker_cpu_usage": "Utilisation du CPU Docker", - "docker_memory_des": "Utilisation de la mémoire des conteneurs Docker", - "docker_memory_usage": "Utilisation de la mémoire Docker", - "docker_network_io": "E/S réseau Docker", - "docker_network_io_des": "Trafic réseau des conteneurs Docker", - "max_1_min": "Max 1 min", - "memory_des": "Utilisation précise au moment enregistré", - "read": "Lecture", - "received": "Reçu", - "sent": "Envoyé", - "swap_des": "Espace swap utilisé par le système", - "swap_usage": "Utilisation du swap", - "temperature": "Température", - "temperature_des": "Températures des capteurs du système", - "throughput_of": "Débit de", - "toggle_grid": "Changer de grille", - "total_cpu_usage": "Utilisation totale du CPU", - "total_memory_usage": "Utilisation totale de la mémoire", - "usage": "Utilisation", - "used": "Utilisé", - "waiting_for": "En attente de suffisamment d'enregistrements pour afficher", - "write": "Écriture" - }, - "search": "Rechercher", - "settings": { - "check_logs": "Consultez les journaux pour plus de détails", - "export_configuration": "Exporter la configuration", - "failed_to_save": "Échec de l'enregistrement des paramètres", - "general": { - "chart_options": { - "default_time_period": "Période de temps par défaut", - "default_time_period_des": "Définit la plage de temps par défaut pour les graphiques lorsqu'un système est consulté.", - "subtitle": "Ajuster les options d'affichage pour les graphiques.", - "title": "Options de graphique" - }, - "language": { - "preferred_language": "Langue préférée", - "subtitle_1": "Vous voulez nous aider à améliorer nos traductions? Consultez", - "subtitle_2": "pour plus de détails.", - "title": "Langue" - }, - "subtitle": "Modifier les options générales de l'application.", - "title": "Général" - }, - "language": "Langue", - "notifications": { - "email": { - "configure_an_SMTP_server": "configurer un serveur SMTP", - "des": "Enregistrez l'adresse en utilisant la touche entrée ou la virgule. Laissez vide pour désactiver les notifications par email.", - "enter_email_address": "Entrez l'adresse email...", - "please": "Veuillez", - "title": "Notifications par email", - "to_emails": "À email(s)", - "to_ensure_alerts_are_delivered": "pour garantir la livraison des alertes." - }, - "subtitle_1": "Configurer comment vous recevez les notifications d'alerte.", - "subtitle_2": "Vous cherchez plutôt où créer des alertes? Cliquez sur la cloche", - "subtitle_3": "icônes dans le tableau des systèmes.", - "title": "Notifications", - "webhook": { - "add": "Ajouter", - "des_1": "Beszel utilise", - "des_2": "pour s'intégrer avec des services de notification populaires", - "test": "Tester", - "test_sent": "Notification de test envoyée", - "test_sent_des": "Vérifiez votre service de notification", - "title": "Notifications Webhook / Push" - } - }, - "save_settings": "Enregistrer les paramètres", - "saved": "Paramètres enregistrés", - "saved_des": "Vos paramètres utilisateur ont été mis à jour", - "settings": "Paramètres", - "subtitle": "Gérer les préférences d'affichage et de notification.", - "yaml_config": { - "alert": { - "des_1": "Les systèmes existants non définis dans", - "des_2": "seront supprimés. Veuillez faire des sauvegardes régulières.", - "title": "Attention - perte de données potentielle" - }, - "des_1": "Les systèmes peuvent être gérés dans un fichier", - "des_2": "à l'intérieur de votre répertoire de données.", - "des_3": "À chaque redémarrage, les systèmes dans la base de données seront mis à jour pour correspondre aux systèmes définis dans le fichier.", - "short_title": "Config YAML", - "subtitle": "Exporter la configuration actuelle de vos systèmes.", - "title": "Configuration YAML" - } - }, - "system": "Système", - "systems": "Systèmes", - "systems_table": { - "agent": "Agent", - "copy_host": "Copier l'hôte", - "cpu": "CPU", - "delete": "Supprimer", - "delete_confirm": "Êtes-vous sûr de vouloir supprimer {{name}}?", - "delete_confirm_des_1": "Cette action est irréversible. Cela supprimera définitivement tous les enregistrements actuels de", - "delete_confirm_des_2": "de la base de données.", - "disk": "Disque", - "memory": "Mémoire", - "net": "Réseau", - "no_systems_found": "Aucun système trouvé.", - "open_menu": "Ouvrir le menu", - "pause": "Pause", - "resume": "Reprendre", - "system": "Système" - }, - "themes": { - "dark": "Sombre", - "light": "Clair", - "system": "Système", - "toggle_theme": "Changer de thème" - }, - "user_dm": { - "auth_providers": "Fournisseurs d'authentification", - "backups": "Sauvegardes", - "log_out": "Déconnexion", - "logs": "Journaux", - "users": "Utilisateurs" - }, - "weeks_many": "", - "weeks_one": "{{count}} semaine", - "weeks_other": "" -} diff --git a/beszel/site/src/locales/ja/messages.po b/beszel/site/src/locales/ja/messages.po new file mode 100644 index 0000000..8ea4d72 --- /dev/null +++ b/beszel/site/src/locales/ja/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: ja\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/ja/messages.ts b/beszel/site/src/locales/ja/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/ja/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/ja/translation.json b/beszel/site/src/locales/ja/translation.json deleted file mode 100644 index 9e81c0b..0000000 --- a/beszel/site/src/locales/ja/translation.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "add": "追加", - "add_system": { - "add_new_system": "新規システム追加", - "add_system": "システムを追加", - "binary": "バイナリ", - "click_to_copy": "クリックでコピー", - "command": "コマンド", - "dialog_des_1": "接続するにはシステム上でエージェントが実行されている必要があります。以下の", - "dialog_des_2": "をエージェント用にコピーしてください。", - "host_ip": "ホスト / IP", - "key": "公開鍵", - "name": "名前", - "port": "ポート" - }, - "alerts": { - "average_exceeds": "平均値が超過", - "for": "期間", - "info": { - "bandwidth": "帯域幅", - "bandwidth_des": "上り/下りの合計が閾値を超えた時にトリガー。", - "cpu_usage": "CPU使用率", - "cpu_usage_des": "CPU使用率が閾値を超えた時にトリガー。", - "disk_usage": "ディスク使用率", - "disk_usage_des": "いずれかのディスク使用率が閾値を超えた時にトリガー。", - "memory_usage": "メモリ使用率", - "memory_usage_des": "メモリ使用率が閾値を超えた時にトリガー。", - "status": "ステータス", - "status_des": "稼働状態と停止状態の切り替わり時にトリガー。", - "temperature": "温度", - "temperature_des": "いずれかのセンサーが閾値を超えた時にトリガー。" - }, - "notification_settings": "通知設定", - "overwrite_existing_alerts": "既存のアラートを上書き", - "subtitle_1": "確認", - "subtitle_2": "でアラートの受信方法を設定できます。", - "title": "アラート" - }, - "all_systems": "すべてのシステム", - "auth": { - "command_1": "管理者アカウントのパスワードを紛失した場合、以下のコマンドでリセットできます。", - "command_2": "その後、バックエンドにログインしてユーザーテーブルでアカウントパスワードをリセットしてください。", - "command_line_instructions": "コマンドライン手順", - "create": "管理者アカウントを作成してください", - "create_account": "アカウント作成", - "for_instructions": "をご確認ください。", - "forgot_password": "パスワードをお忘れですか?", - "login": "アカウントにサインインしてください", - "openid_des": "BeszelはOpenID ConnectとさまざまなOAuth2認証プロバイダーをサポートしています。", - "please_view_the": "詳細については", - "reset": "パスワードをリセットするメールアドレスを入力", - "reset_password": "パスワードリセット", - "sign_in": "サインイン" - }, - "cancel": "キャンセル", - "clipboard": { - "copied": "クリップボードにコピーしました", - "des": "自動コピーには安全なコンテキストが必要です。", - "title": "テキストをコピー" - }, - "command": { - "SMTP_settings": "SMTP設定", - "admin": "管理者", - "dashboard": "ダッシュボード", - "documentation": "ドキュメント", - "page": "ページ", - "pages_settings": "ページ / 設定", - "search": "システムまたは設定を検索..." - }, - "continue": "続行", - "copy": "コピー", - "days_other": "{{count}}日", - "error": "エラー", - "filter": "フィルター...", - "home": { - "active_alerts": "アクティブなアラート", - "active_des": "過去{{value}}{{unit}}を超過", - "subtitle": "リアルタイムで更新されます。システムをクリックして情報を表示します。" - }, - "hours_other": "{{count}}時間", - "minutes_other": "{{count}}分", - "monitor": { - "average": "平均", - "bandwidth": "帯域幅", - "bandwidth_des": "パブリックインターフェースのネットワークトラフィック", - "cache_buffers": "キャッシュ/バッファ", - "cpu_des": "システム全体のCPU使用率", - "disk_des": "ルートパーティションの使用率", - "disk_io": "ディスクI/O", - "disk_io_des": "ルートファイルシステムのスループット", - "disk_space": "ディスク容量", - "disk_usage_of": "のディスク使用率", - "docker_cpu_des": "コンテナの平均CPU使用率", - "docker_cpu_usage": "Docker CPU使用率", - "docker_memory_des": "Dockerコンテナのメモリ使用量", - "docker_memory_usage": "Dockerメモリ使用率", - "docker_network_io": "Dockerネットワークの入出力", - "docker_network_io_des": "Dockerコンテナのネットワークトラフィック", - "max_1_min": "1分間の最大値", - "memory_des": "��録時点での正確な使用率", - "read": "読み込み", - "received": "受信", - "sent": "送信", - "swap_des": "システムが使用するスワップ領域", - "swap_usage": "スワップ使用率", - "temperature": "温度", - "temperature_des": "システムセンサーの温度", - "throughput_of": "のスループット", - "toggle_grid": "グリッド切り替え", - "total_cpu_usage": "CPU使用率合計", - "total_memory_usage": "メモリ使用率合計", - "usage": "使用率", - "used": "使用済み", - "waiting_for": "表示に必要な記録を待機中", - "write": "書き込み" - }, - "search": "検索", - "settings": { - "check_logs": "詳細はログを確認してください", - "export_configuration": "設定をエクスポート", - "failed_to_save": "設定の保存に失敗しました", - "general": { - "chart_options": { - "default_time_period": "デフォルト期間", - "default_time_period_des": "システム表示時のグラフのデフォルト時間範囲を設定。", - "subtitle": "グラフの表示オプションを調整。", - "title": "グラフオプション" - }, - "language": { - "preferred_language": "優先言語", - "subtitle_1": "翻訳の改善にご協力いただけますか?詳細は", - "subtitle_2": "をご確認ください。", - "title": "言語" - }, - "subtitle": "一般的なアプリケーション設定を変更。", - "title": "一般" - }, - "language": "言語", - "notifications": { - "email": { - "configure_an_SMTP_server": "SMTPサーバーを設定", - "des": "Enterキーまたはカンマで保存。空白にするとメール通知が無効になります。", - "enter_email_address": "メールアドレスを入力...", - "please": "アラートの配信を確実にするため、", - "title": "メール通知", - "to_emails": "送信先メールアドレス", - "to_ensure_alerts_are_delivered": "してください。" - }, - "subtitle_1": "アラート通知の受信方法を設定。", - "subtitle_2": "アラートの作成場所をお探しですか?ベルアイコン", - "subtitle_3": "をシステムテーブルでクリックしてください。", - "title": "通知", - "webhook": { - "add": "追加", - "des_1": "Beszelは", - "des_2": "を使用して一般的な通知サービスと連携します", - "test": "テスト", - "test_sent": "テスト通知を送信しました", - "test_sent_des": "通知サービスを確認してください", - "title": "Webhook / プッシュ通知" - } - }, - "save_settings": "設定を保存", - "saved": "設定を保存しました", - "saved_des": "ユーザー設定が更新されました", - "settings": "設定", - "subtitle": "表示設定と通知設定の管理。", - "yaml_config": { - "alert": { - "des_1": "ファイルで定義されていない既存のシステムは", - "des_2": "削除されます。定期的なバックアップを行ってください。", - "title": "注意 - データ損失の可能性" - }, - "des_1": "システムはデータディレクトリ内の", - "des_2": "ファイルで管理できます。", - "des_3": "再起動時、データベース内のシステムはファイルで定義されたシステムと一致するように更新されます。", - "short_title": "YAML設定", - "subtitle": "現在のシステム設定をエクスポート。", - "title": "YAML設定" - } - }, - "system": "システム", - "systems": "システム一覧", - "systems_table": { - "agent": "エージ", - "copy_host": "ホストをコピー", - "cpu": "CPU", - "delete": "削除", - "delete_confirm": "{{name}}を削除してもよろしいですか?", - "delete_confirm_des_1": "この操作は取り消せません。現在の全ての記録が完全に削除されます:", - "delete_confirm_des_2": "がデータベースから削除されます。", - "disk": "ディスク", - "memory": "メモリ", - "net": "帯域", - "no_systems_found": "システムが見つかりません。", - "open_menu": "メニューを開く", - "pause": "一時停止", - "resume": "再開", - "system": "システム" - }, - "themes": { - "dark": "ダーク", - "light": "ライト", - "system": "システム", - "toggle_theme": "テーマ切替" - }, - "user_dm": { - "auth_providers": "認証プロバイダー", - "backups": "バックアップ", - "log_out": "ログアウト", - "logs": "ログ", - "users": "ユーザー" - }, - "weeks_other": "{{count}}週間" -} diff --git a/beszel/site/src/locales/ko/messages.po b/beszel/site/src/locales/ko/messages.po new file mode 100644 index 0000000..7693911 --- /dev/null +++ b/beszel/site/src/locales/ko/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: ko\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/ko/messages.ts b/beszel/site/src/locales/ko/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/ko/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/ko/translation.json b/beszel/site/src/locales/ko/translation.json deleted file mode 100644 index 99fa2c7..0000000 --- a/beszel/site/src/locales/ko/translation.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "add": "추가", - "add_system": { - "add_new_system": "새 시스템 추가", - "add_system": "시스템 추가", - "binary": "바이너리", - "click_to_copy": "클릭하여 복사", - "command": "명령어", - "dialog_des_1": "연결하려면 시스템에서 에이전트가 실행 중이어야 합니다. 아래의", - "dialog_des_2": "에이전트용을 복사하세요.", - "host_ip": "호스트 / IP", - "key": "공개 키", - "name": "이름", - "port": "포트" - }, - "alerts": { - "average_exceeds": "평균 초과", - "for": "동안", - "info": { - "bandwidth": "대역폭", - "bandwidth_des": "업로드/다운로드 합계가 임계값을 초과할 때 트리거됩니다.", - "cpu_usage": "CPU 사용량", - "cpu_usage_des": "CPU 사용량이 임계값을 초과할 때 트리거됩니다.", - "disk_usage": "디스크 사용량", - "disk_usage_des": "디스크 사용량이 임계값을 초과할 때 트리거됩니다.", - "memory_usage": "메모리 사용량", - "memory_usage_des": "메모리 사용량이 임계값을 초과할 때 트리거됩니다.", - "status": "상태", - "status_des": "상태가 작동/중단 사이에서 전환될 때 트리거됩니다.", - "temperature": "온도", - "temperature_des": "센서가 임계값을 초과할 때 트리거됩니다." - }, - "notification_settings": "알림 설정", - "overwrite_existing_alerts": "기존 경고 덮어쓰기", - "subtitle_1": "참조", - "subtitle_2": "경고를 받는 방법을 구성하세요.", - "title": "경고" - }, - "all_systems": "모든 시스템", - "auth": { - "command_1": "관리자 계정의 비밀번호를 잃어버린 경우 다음 명령을 사용하여 재설정할 수 있습니다.", - "command_2": "그런 다음 백엔드에 로그인하여 사용자 테이블에서 사용자 계정 비밀번호를 재설정하세요.", - "command_line_instructions": "명령줄 지침", - "create": "관리자 계정을 생성하세요", - "create_account": "계정 생성", - "for_instructions": "지침을 확인하세요.", - "forgot_password": "비밀번호를 잊으셨나요?", - "login": "계정에 로그인하세요", - "openid_des": "Beszel은 OpenID Connect와 많은 OAuth2 인증 제공자를 지원합니다.", - "please_view_the": "다음을 확인하세요", - "reset": "비밀번호 재설정을 위해 이메일 주소를 입력하세요", - "reset_password": "비밀번호 재설정", - "sign_in": "로그인" - }, - "cancel": "취소", - "clipboard": { - "copied": "클립보드에 복사됨", - "des": "자동 복사에는 보안 컨텍스트가 필요합니다.", - "title": "텍스트 복사" - }, - "command": { - "SMTP_settings": "SMTP 설정", - "admin": "관리자", - "dashboard": "대시보드", - "documentation": "문서", - "page": "페이지", - "pages_settings": "페이지 / 설정", - "search": "시스템 또는 설정 검색..." - }, - "continue": "계속", - "copy": "복사", - "days_other": "{{count}}일", - "error": "오류", - "filter": "필터...", - "home": { - "active_alerts": "활성 경고", - "active_des": "{{value}}{{unit}} 초과 지난", - "subtitle": "실시간으로 업데이트됩니다. 시스템을 클릭하여 정보를 확인하세요." - }, - "hours_other": "{{count}}시간", - "minutes_other": "{{count}}분", - "monitor": { - "average": "평균", - "bandwidth": "대역폭", - "bandwidth_des": "공용 인터페이스의 네트워크 트래픽", - "cache_buffers": "캐시/버퍼", - "cpu_des": "시스템 전체 CPU 사용률", - "disk_des": "루트 파티션 사용량", - "disk_io": "디스크 I/O", - "disk_io_des": "루트 파일시스템의 처리량", - "disk_space": "디스크 공간", - "disk_usage_of": "디스크 사용량", - "docker_cpu_des": "컨테이너의 평균 CPU 사용률", - "docker_cpu_usage": "Docker CPU 사용량", - "docker_memory_des": "Docker 컨테이너의 메모리 사용량", - "docker_memory_usage": "Docker 메모리 사용량", - "docker_network_io": "Docker 네트워크 I/O", - "docker_network_io_des": "Docker 컨테이너의 네트워크 트래픽", - "max_1_min": "1분 최대", - "memory_des": "기록된 시간의 정확한 사용률", - "read": "읽기", - "received": "수신됨", - "sent": "전송됨", - "swap_des": "시스템이 사용하는 스왑 공간", - "swap_usage": "스왑 사용량", - "temperature": "온도", - "temperature_des": "시스템 센서의 온도", - "throughput_of": "처리량", - "toggle_grid": "그리드 전환", - "total_cpu_usage": "전체 CPU 사용량", - "total_memory_usage": "전체 메모리 사용량", - "usage": "사용량", - "used": "사용됨", - "waiting_for": "표시할 충분한 기록을 기다리는 중", - "write": "쓰기" - }, - "search": "검색", - "settings": { - "check_logs": "자세한 내용은 로그를 확인하세요", - "export_configuration": "구성 내보내기", - "failed_to_save": "설정 저장 실패", - "general": { - "chart_options": { - "default_time_period": "기본 시간 기간", - "default_time_period_des": "시스템을 볼 때 차트의 기본 시간 범위를 설정합니다.", - "subtitle": "차트 표시 옵션을 조정합니다.", - "title": "차트 옵션" - }, - "language": { - "preferred_language": "선호하는 언어", - "subtitle_1": "번역 개선에 도움을 주고 싶으신가요? 확인해 보세요", - "subtitle_2": "자세한 내용을 확인하세요.", - "title": "언어" - }, - "subtitle": "일반 애플리케이션 옵션을 변경합니다.", - "title": "일반" - }, - "language": "언어", - "notifications": { - "email": { - "configure_an_SMTP_server": "SMTP 서버 구성", - "des": "엔터 키나 쉼표를 사용하여 주소를 저장하세요. 이메일 알림을 비활성화하려면 비워두세요.", - "enter_email_address": "이메일 주소 입력...", - "please": "다음을 수행하세요", - "title": "이메일 알림", - "to_emails": "받는 이메일", - "to_ensure_alerts_are_delivered": "경고가 전달되도록 하기 위해." - }, - "subtitle_1": "경고 알림을 받는 방법을 구성합니다.", - "subtitle_2": "경고를 생성하는 위치를 찾고 계신가요? 벨 아이콘을 클릭하세요", - "subtitle_3": "시스템 테이블에서.", - "title": "알림", - "webhook": { - "add": "추가", - "des_1": "Beszel은", - "des_2": "를 사용하여 인기 있는 알림 서비스와 통합합니다", - "test": "테스트", - "test_sent": "테스트 알림 전송됨", - "test_sent_des": "알림 서비스를 확인하세요", - "title": "웹훅 / 푸시 알림" - } - }, - "save_settings": "설정 저장", - "saved": "설정이 저장됨", - "saved_des": "사용자 설정이 업데이트되었습니다", - "settings": "설정", - "subtitle": "디스플레이 및 알림 기본 설정을 관리합니다.", - "yaml_config": { - "alert": { - "des_1": "에 정의되지 않은 기존 시스템", - "des_2": "은(는) 삭제됩니다. 정기적으로 백업을 수행하세요.", - "title": "주의 - 데이터 손실 가능성" - }, - "des_1": "시스템은", - "des_2": "파일에서 데이터 디렉토리 내에서 관리될 수 있습니다.", - "des_3": "재시작할 때마다 데이터베이스의 시스템이 파일에 정의된 시스템과 일치하도록 업데이트됩니다.", - "short_title": "YAML 구성", - "subtitle": "현재 시스템 구성을 내보냅니다.", - "title": "YAML 구성" - } - }, - "system": "시스템", - "systems": "시스템", - "systems_table": { - "agent": "에이젠", - "copy_host": "호스트 복사", - "cpu": "CPU", - "delete": "삭제", - "delete_confirm": "{{name}}을(를) 삭제하시겠습니까?", - "delete_confirm_des_1": "이 작업은 취소할 수 없습니다. 다음에 대한 모든 현재 기록이 영구적으로 삭제됩니다", - "delete_confirm_des_2": "데이터베이스에서.", - "disk": "디스크", - "memory": "메모리", - "net": "넷", - "no_systems_found": "시스템을 찾을 수 없습니다.", - "open_menu": "메뉴 열기", - "pause": "일시정지", - "resume": "재개", - "system": "시스템" - }, - "themes": { - "dark": "다크", - "light": "라이트", - "system": "시스템", - "toggle_theme": "테마 전환" - }, - "user_dm": { - "auth_providers": "인증 제공자", - "backups": "백업", - "log_out": "로그아웃", - "logs": "로그", - "users": "사용자" - }, - "weeks_other": "{{count}}주" -} diff --git a/beszel/site/src/locales/pt/messages.po b/beszel/site/src/locales/pt/messages.po new file mode 100644 index 0000000..8580d21 --- /dev/null +++ b/beszel/site/src/locales/pt/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: pt\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/pt/messages.ts b/beszel/site/src/locales/pt/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/pt/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/pt/translation.json b/beszel/site/src/locales/pt/translation.json deleted file mode 100644 index 8e11f25..0000000 --- a/beszel/site/src/locales/pt/translation.json +++ /dev/null @@ -1,223 +0,0 @@ -{ - "add": "Adicionar", - "add_system": { - "add_new_system": "Adicionar Novo Sistema", - "add_system": "Adicionar sistema", - "binary": "Binário", - "click_to_copy": "Clique para copiar", - "command": "comando", - "dialog_des_1": "O agente deve estar em execução no sistema para conectar. Copie o", - "dialog_des_2": "para o agente abaixo.", - "host_ip": "Host / IP", - "key": "Chave Pública", - "name": "Nome", - "port": "Porta" - }, - "alerts": { - "average_exceeds": "Média excede", - "for": "Por", - "info": { - "bandwidth": "Largura de Banda", - "bandwidth_des": "Dispara quando o total de upload/download excede um limite.", - "cpu_usage": "Uso de CPU", - "cpu_usage_des": "Dispara quando o uso de CPU excede um limite.", - "disk_usage": "Uso de Disco", - "disk_usage_des": "Dispara quando o uso de qualquer disco excede um limite.", - "memory_usage": "Uso de Memória", - "memory_usage_des": "Dispara quando o uso de memória excede um limite.", - "status": "Status", - "status_des": "Dispara quando o status alterna entre ativo e inativo.", - "temperature": "Temperatura", - "temperature_des": "Dispara quando qualquer sensor excede um limite." - }, - "notification_settings": "configurações de notificação", - "overwrite_existing_alerts": "Sobrescrever alertas existentes", - "subtitle_1": "Veja", - "subtitle_2": "para configurar como você recebe alertas.", - "title": "Alertas" - }, - "all_systems": "Todos os Sistemas", - "auth": { - "command_1": "Se você perdeu a senha da sua conta de administrador, você pode redefini-la usando o seguinte comando.", - "command_2": "Em seguida, faça login no backend e redefina a senha da sua conta de usuário na tabela de usuários.", - "command_line_instructions": "Instruções de linha de comando", - "create": "Por favor, crie uma conta de administrador", - "create_account": "Criar conta", - "for_instructions": "para instruções.", - "forgot_password": "Esqueceu a senha?", - "login": "Por favor, faça login em sua conta", - "openid_des": "Beszel suporta OpenID Connect e vários provedores de autenticação OAuth2.", - "please_view_the": "Por favor, veja a", - "reset": "Digite o endereço de e-mail para redefinir a senha", - "reset_password": "Redefinir Senha", - "sign_in": "Entrar" - }, - "cancel": "Cancelar", - "clipboard": { - "copied": "Copiado para a área de transferência", - "des": "A cópia automática requer um contexto seguro.", - "title": "Copiar texto" - }, - "command": { - "SMTP_settings": "Configurações SMTP", - "admin": "Admin", - "dashboard": "Painel", - "documentation": "Documentação", - "page": "Página", - "pages_settings": "Páginas / Configurações", - "search": "Pesquisar sistemas ou configurações..." - }, - "continue": "Continuar", - "copy": "Copiar", - "days_many": "", - "days_one": "", - "days_other": "{{count}} dias", - "error": "Erro", - "filter": "Filtrar...", - "home": { - "active_alerts": "Alertas Ativos", - "active_des": "Excede {{value}}{{unit}} nos últimos ", - "subtitle": "Atualizado em tempo real. Clique em um sistema para ver informações." - }, - "hours_many": "", - "hours_one": "{{count}} hora", - "hours_other": "{{count}} horas", - "minutes_many": "", - "minutes_one": "{{count}} minuto", - "minutes_other": "{{count}} minutos", - "monitor": { - "average": "Média", - "bandwidth": "Largura de Banda", - "bandwidth_des": "Tráfego de rede das interfaces públicas", - "cache_buffers": "Cache/Buffers", - "cpu_des": "utilização de CPU em todo o sistema", - "disk_des": "Uso da partição raiz", - "disk_io": "E/S de Disco", - "disk_io_des": "Taxa de transferência do sistema de arquivos raiz", - "disk_space": "Espaço em Disco", - "disk_usage_of": "Uso de disco de", - "docker_cpu_des": "Utilização média de CPU dos contêineres", - "docker_cpu_usage": "Uso de CPU do Docker", - "docker_memory_des": "Uso de memória dos contêineres Docker", - "docker_memory_usage": "Uso de Memória do Docker", - "docker_network_io": "E/S de Rede do Docker", - "docker_network_io_des": "Tráfego de rede dos contêineres Docker", - "max_1_min": "Máx 1 min", - "memory_des": "Utilização precisa no momento registrado", - "read": "Leitura", - "received": "Recebido", - "sent": "Enviado", - "swap_des": "Espaço de swap usado pelo sistema", - "swap_usage": "Uso de Swap", - "temperature": "Temperatura", - "temperature_des": "Temperaturas dos sensores do sistema", - "throughput_of": "Taxa de transferência de", - "toggle_grid": "Alternar grade", - "total_cpu_usage": "Uso Total de CPU", - "total_memory_usage": "Uso Total de Memória", - "usage": "Uso", - "used": "Usado", - "waiting_for": "Aguardando registros suficientes para exibir", - "write": "Escrita" - }, - "search": "Pesquisar", - "settings": { - "check_logs": "Verifique os logs para mais detalhes", - "export_configuration": "Exportar configuração", - "failed_to_save": "Falha ao salvar configurações", - "general": { - "chart_options": { - "default_time_period": "Período padrão", - "default_time_period_des": "Define o intervalo de tempo padrão para gráficos quando um sistema é visualizado.", - "subtitle": "Ajustar opções de exibição para gráficos.", - "title": "Opções de gráfico" - }, - "language": { - "preferred_language": "Idioma Preferido", - "subtitle_1": "Quer nos ajudar a melhorar nossas traduções? Confira", - "subtitle_2": "para mais detalhes.", - "title": "Idioma" - }, - "subtitle": "Alterar opções gerais da aplicação.", - "title": "Geral" - }, - "language": "Idioma", - "notifications": { - "email": { - "configure_an_SMTP_server": "configure um servidor SMTP", - "des": "Salve o endereço usando a tecla enter ou vírgula. Deixe em branco para desativar notificações por e-mail.", - "enter_email_address": "Digite o endereço de e-mail...", - "please": "Por favor", - "title": "Notificações por e-mail", - "to_emails": "Para e-mail(s)", - "to_ensure_alerts_are_delivered": "para garantir que os alertas sejam entregues." - }, - "subtitle_1": "Configure como você recebe notificações de alerta.", - "subtitle_2": "Procurando onde criar alertas? Clique no sino", - "subtitle_3": "na tabela de sistemas.", - "title": "Notificações", - "webhook": { - "add": "Adicionar", - "des_1": "Beszel usa", - "des_2": "para integrar com serviços populares de notificação", - "test": "Testar", - "test_sent": "Notificação de teste enviada", - "test_sent_des": "Verifique seu serviço de notificação", - "title": "Notificações Webhook / Push" - } - }, - "save_settings": "Salvar Configurações", - "saved": "Configurações salvas", - "saved_des": "Suas configurações de usuário foram atualizadas", - "settings": "Configurações", - "subtitle": "Gerenciar preferências de exibição e notificação.", - "yaml_config": { - "alert": { - "des_1": "Sistemas existentes não definidos em", - "des_2": "serão excluídos. Faça backups regulares.", - "title": "Cuidado - possível perda de dados" - }, - "des_1": "Os sistemas podem ser gerenciados em um", - "des_2": "arquivo dentro do seu diretório de dados.", - "des_3": "A cada reinicialização, os sistemas no banco de dados serão atualizados para corresponder aos sistemas definidos no arquivo.", - "short_title": "Config YAML", - "subtitle": "Exporte sua configuração atual de sistemas.", - "title": "Configuração YAML" - } - }, - "system": "Sistema", - "systems": "Sistemas", - "systems_table": { - "agent": "Agente", - "copy_host": "Copiar host", - "cpu": "CPU", - "delete": "Excluir", - "delete_confirm": "Tem certeza que deseja excluir {{name}}?", - "delete_confirm_des_1": "Esta ação não pode ser desfeita. Isso excluirá permanentemente todos os registros atuais para", - "delete_confirm_des_2": "do banco de dados.", - "disk": "Disco", - "memory": "Memória", - "net": "Rede", - "no_systems_found": "Nenhum sistema encontrado.", - "open_menu": "Abrir menu", - "pause": "Pausar", - "resume": "Retomar", - "system": "Sistema" - }, - "themes": { - "dark": "Escuro", - "light": "Claro", - "system": "Sistema", - "toggle_theme": "Alternar tema" - }, - "user_dm": { - "auth_providers": "Provedores de Autenticação", - "backups": "Backups", - "log_out": "Sair", - "logs": "Registros", - "users": "Usuários" - }, - "weeks_many": "", - "weeks_one": "{{count}} semana", - "weeks_other": "" -} diff --git a/beszel/site/src/locales/ru/messages.po b/beszel/site/src/locales/ru/messages.po new file mode 100644 index 0000000..4b7ed21 --- /dev/null +++ b/beszel/site/src/locales/ru/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: ru\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/ru/messages.ts b/beszel/site/src/locales/ru/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/ru/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/ru/translation.json b/beszel/site/src/locales/ru/translation.json deleted file mode 100644 index 70c10fb..0000000 --- a/beszel/site/src/locales/ru/translation.json +++ /dev/null @@ -1,223 +0,0 @@ -{ - "add": "Добавить", - "add_system": { - "add_new_system": "Добавить новую систему", - "add_system": "Добавить систему", - "binary": "Бинарный", - "click_to_copy": "Нажмите, чтобы скопировать", - "command": "команда", - "dialog_des_1": "Агент должен работать на системе для подключения. Скопируйте", - "dialog_des_2": "для агента ниже.", - "host_ip": "Хост / IP", - "key": "Ключ", - "name": "Имя", - "port": "Порт" - }, - "alerts": { - "average_exceeds": "Среднее превышает", - "for": "За", - "info": { - "bandwidth": "Пропускная способность", - "bandwidth_des": "Срабатывает, когда суммарная загрузка/выгрузка превышает порог.", - "cpu_usage": "Использование ЦП", - "cpu_usage_des": "Срабатывает, когда использование ЦП превышает порог.", - "disk_usage": "Использование диска", - "disk_usage_des": "Срабатывает, когда использование любого диска превышает порог.", - "memory_usage": "Использование памяти", - "memory_usage_des": "Срабатывает, когда использование памяти превышает порог.", - "status": "Статус", - "status_des": "Срабатывает, когда статус переключается между вверх и вниз.", - "temperature": "Температура", - "temperature_des": "Срабатывает, когда любой датчик превышает порог." - }, - "notification_settings": "настройки уведомлений", - "overwrite_existing_alerts": "Перезаписать существующие предупреждения", - "subtitle_1": "См.", - "subtitle_2": "чтобы настроить, как вы получаете предупреждения.", - "title": "Предупреждения" - }, - "all_systems": "Все системы", - "auth": { - "command_1": "Если вы потеряли пароль от своей учетной записи администратора, вы можете сбросить его, используя следующую команду.", - "command_2": "Затем войдите в бэкэнд и сбросьте пароль своей учетной записи пользователя в таблице пользователей.", - "command_line_instructions": "Инструкции по командной строке", - "create": "Пожалуйста, создайте учетную запись администратора", - "create_account": "Создать учетную запись", - "for_instructions": "для получения инструкций.", - "forgot_password": "Забыли пароль?", - "login": "Пожалуйста, войдите в свою учетную запись", - "openid_des": "Beszel поддерживает OpenID Connect и многих поставщиков аутентификации OAuth2.", - "please_view_the": "Пожалуйста, ознакомьтесь с", - "reset": "Введите адрес электронной почты для сброса пароля", - "reset_password": "Сбросить пароль", - "sign_in": "Войти" - }, - "cancel": "Отмена", - "clipboard": { - "copied": "Скопировано в буфер обмена", - "des": "Автоматическое копирование требует безопасного контекста.", - "title": "Копировать текст" - }, - "command": { - "SMTP_settings": "Настройки SMTP", - "admin": "Админ", - "dashboard": "Панель управления", - "documentation": "Документация", - "page": "Страница", - "pages_settings": "Страницы / Настройки", - "search": "Поиск систем или настроек..." - }, - "continue": "Продолжить", - "copy": "Копировать", - "days_few": "", - "days_many": "", - "days_one": "", - "error": "Ошибка", - "filter": "Фильтр...", - "home": { - "active_alerts": "Активные предупреждения", - "active_des": "Превышает {{value}}{{unit}} за последние ", - "subtitle": "Обновляется в реальном времени. Нажмите на систему для просмотра информации." - }, - "hours_few": "{{count}} часа", - "hours_many": "{{count}} часов", - "hours_one": "{{count}} час", - "minutes_few": "", - "minutes_many": "", - "minutes_one": "{{count}} минута", - "monitor": { - "average": "Среднее", - "bandwidth": "Пропускная способность", - "bandwidth_des": "Сетевой трафик публичных интерфейсов", - "cache_buffers": "Кэш/Буферы", - "cpu_des": "системное использование ЦП", - "disk_des": "Использование корневого раздела", - "disk_io": "Дисковый ввод/вывод", - "disk_io_des": "Пропускная способность корневой файловой системы", - "disk_space": "Место на диске", - "disk_usage_of": "Использование диска", - "docker_cpu_des": "Среднее использование ЦП контейнеров", - "docker_cpu_usage": "Использование ЦП Docker", - "docker_memory_des": "Использование памяти контейнеров Docker", - "docker_memory_usage": "Использование памяти Docker", - "docker_network_io": "Сетевой ввод/вывод Docker", - "docker_network_io_des": "Сетевой трафик контейнеров Docker", - "max_1_min": "Макс 1 мин", - "memory_des": "Точное использование на момент записи", - "read": "Чтение", - "received": "Получено", - "sent": "Отправлено", - "swap_des": "Использование swap пространства системой", - "swap_usage": "Использование swap", - "temperature": "Температура", - "temperature_des": "Температуры датчиков системы", - "throughput_of": "Пропускная способность", - "toggle_grid": "Переключить сетку", - "total_cpu_usage": "Общее использование ЦП", - "total_memory_usage": "Общее использование памяти", - "usage": "Использование", - "used": "Использовано", - "waiting_for": "Ожидание достаточного количества записей для отображения", - "write": "Запись" - }, - "search": "Поиск", - "settings": { - "check_logs": "Проверьте журналы для получения дополнительной информации", - "export_configuration": "Экспорт конфигурации", - "failed_to_save": "Не удалось сохранить настройки", - "general": { - "chart_options": { - "default_time_period": "Период по умолчанию", - "default_time_period_des": "Устанавливает диапазон времени по умолчанию для диаграмм при просмотре системы.", - "subtitle": "Настроить параметры отображения для диаграмм.", - "title": "Параметры диаграммы" - }, - "language": { - "preferred_language": "Предпочитаемый язык", - "subtitle_1": "Хотите помочь нам улучшить наши переводы? Ознакомьтесь с", - "subtitle_2": "для получения дополнительной информации.", - "title": "Язык" - }, - "subtitle": "Изменить общие параметры приложения.", - "title": "Общие" - }, - "language": "Язык", - "notifications": { - "email": { - "configure_an_SMTP_server": "настройте SMTP-сервер", - "des": "Сохраните адрес, используя клавишу ввода или запятую. Оставьте пустым, чтобы отключить уведомления по электронной почте.", - "enter_email_address": "Введите адрес электронной почты...", - "please": "Пожалуйста", - "title": "Уведомления по электронной почте", - "to_emails": "На электронную почту(ы)", - "to_ensure_alerts_are_delivered": "чтобы гарантировать доставку предупреждений." - }, - "subtitle_1": "Настройте, как вы получаете уведомления о предупреждениях.", - "subtitle_2": "Ищете, где создать предупреждения? Нажмите на колокольчик", - "subtitle_3": "значки в таблице систем.", - "title": "Уведомления", - "webhook": { - "add": "Добавить", - "des_1": "Beszel использует", - "des_2": "для интеграции с популярными сервисами уведомлений", - "test": "Тестировать", - "test_sent": "Тестовое уведомление отправлено", - "test_sent_des": "Проверьте ваш сервис уведомлений", - "title": "Webhook / Push уведомления" - } - }, - "save_settings": "Сохранить настройки", - "saved": "Настройки сохранены", - "saved_des": "Ваши пользовательские настройки были обновлены", - "settings": "Настройки", - "subtitle": "Управление предпочтениями отображения и уведомлений.", - "yaml_config": { - "alert": { - "des_1": "Существующие системы, не определенные в", - "des_2": "будут удалены. Пожалуйста, делайте регулярные резервные копии.", - "title": "Внимание - возможная потеря данных" - }, - "des_1": "Системы могут управляться в", - "des_2": "файле в вашем каталоге данных.", - "des_3": "При каждом перезапуске системы в базе данных будут обновлены, чтобы соответствовать системам, определенным в файле.", - "short_title": "YAML Конфиг", - "subtitle": "Экспорт текущей конфигурации ваших систем.", - "title": "YAML Конфигурация" - } - }, - "system": "Система", - "systems": "Системы", - "systems_table": { - "agent": "Агент", - "copy_host": "Копировать хост", - "cpu": "ЦП", - "delete": "Удалить", - "delete_confirm": "Вы уверены, что хотите удалить {{name}}?", - "delete_confirm_des_1": "Это действие нельзя отменить. Это навсегда удалит все текущие записи для", - "delete_confirm_des_2": "из базы данных.", - "disk": "Диск", - "memory": "Память", - "net": "Сеть", - "no_systems_found": "Систем не найдено.", - "open_menu": "Открыть меню", - "pause": "Пауза", - "resume": "Возобновить", - "system": "Система" - }, - "themes": { - "dark": "Темная", - "light": "Светлая", - "system": "Система", - "toggle_theme": "Переключить тему" - }, - "user_dm": { - "auth_providers": "Поставщики аутентификации", - "backups": "Резервные копии", - "log_out": "Выйти", - "logs": "Журналы", - "users": "Пользователи" - }, - "weeks_few": "", - "weeks_many": "", - "weeks_one": "{{count}} неделя" -} diff --git a/beszel/site/src/locales/tr/messages.po b/beszel/site/src/locales/tr/messages.po new file mode 100644 index 0000000..2875122 --- /dev/null +++ b/beszel/site/src/locales/tr/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: tr\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/tr/messages.ts b/beszel/site/src/locales/tr/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/tr/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/tr/translation.json b/beszel/site/src/locales/tr/translation.json deleted file mode 100644 index ce2d9b2..0000000 --- a/beszel/site/src/locales/tr/translation.json +++ /dev/null @@ -1,217 +0,0 @@ -{ - "add": "Ekle", - "add_system": { - "add_new_system": "Yeni Sistem Ekle", - "add_system": "Sistem ekle", - "binary": "İkili", - "click_to_copy": "Kopyalamak için tıklayın", - "command": "komut", - "dialog_des_1": "Bağlanmak için ajan sistemde çalışıyor olmalıdır. Aşağıdaki ajan için", - "dialog_des_2": "kopyalayın.", - "host_ip": "Host / IP", - "key": "Genel Anahtar", - "name": "Ad", - "port": "Port" - }, - "alerts": { - "average_exceeds": "Ortalama aşıyor", - "for": "İçin", - "info": { - "bandwidth": "Bant Genişliği", - "bandwidth_des": "Yukarı/aşağı birleşik değer bir eşiği aştığında tetiklenir.", - "cpu_usage": "CPU Kullanımı", - "cpu_usage_des": "CPU kullanımı bir eşiği aştığında tetiklenir.", - "disk_usage": "Disk Kullanımı", - "disk_usage_des": "Herhangi bir diskin kullanımı bir eşiği aştığında tetiklenir.", - "memory_usage": "Bellek Kullanımı", - "memory_usage_des": "Bellek kullanımı bir eşiği aştığında tetiklenir.", - "status": "Durum", - "status_des": "Durum yukarı ve aşağı arasında değiştiğinde tetiklenir.", - "temperature": "Sıcaklık", - "temperature_des": "Herhangi bir sensör bir eşiği aştığında tetiklenir." - }, - "notification_settings": "bildirim ayarları", - "overwrite_existing_alerts": "Mevcut uyarıları üzerine yaz", - "subtitle_1": "Nasıl uyarı alacağınızı yapılandırmak için", - "subtitle_2": "görün.", - "title": "Uyarılar" - }, - "all_systems": "Tüm Sistemler", - "auth": { - "command_1": "Yönetici hesabınızın şifresini kaybettiyseniz, aşağıdaki komutu kullanarak sıfırlayabilirsiniz.", - "command_2": "Ardından arka uca giriş yapın ve kullanıcı hesabı şifrenizi kullanıcılar tablosunda sıfırlayın.", - "command_line_instructions": "Komut satırı talimatları", - "create": "Lütfen bir yönetici hesabı oluşturun", - "create_account": "Hesap oluştur", - "for_instructions": "talimatlar için.", - "forgot_password": "Şifrenizi mi unuttunuz?", - "login": "Hesabınıza giriş yapın", - "openid_des": "Beszel, OpenID Connect ve birçok OAuth2 kimlik doğrulama sağlayıcısını destekler.", - "please_view_the": "Lütfen", - "reset": "Şifreyi sıfırlamak için e-posta adresini girin", - "reset_password": "Şifreyi Sıfırla", - "sign_in": "Giriş yap" - }, - "cancel": "İptal", - "clipboard": { - "copied": "Panoya kopyalandı", - "des": "Otomatik kopyalama güvenli bir bağlam gerektirir.", - "title": "Metni kopyala" - }, - "command": { - "SMTP_settings": "SMTP ayarları", - "admin": "Yönetici", - "dashboard": "Gösterge Paneli", - "documentation": "Dokümantasyon", - "page": "Sayfa", - "pages_settings": "Sayfalar / Ayarlar", - "search": "Sistemler veya ayarlar için ara..." - }, - "continue": "Devam et", - "copy": "Kopyala", - "days_other": "{{count}} gün", - "error": "Hata", - "filter": "Filtrele...", - "home": { - "active_alerts": "Aktif Uyarılar", - "active_des": "Son {{value}}{{unit}} içinde aşıldı", - "subtitle": "Gerçek zamanlı olarak güncellenir. Bilgi görüntülemek için bir sisteme tıklayın." - }, - "hours_one": "{{count}} saat", - "hours_other": "{{count}} saat", - "minutes_one": "{{count}} dakika", - "minutes_other": "{{count}} dakika", - "monitor": { - "average": "Ortalama", - "bandwidth": "Bant Genişliği", - "bandwidth_des": "Genel arayüzlerin ağ trafiği", - "cache_buffers": "Önbellek / Tamponlar", - "cpu_des": "sistem genelinde CPU kullanımı", - "disk_des": "Kök bölümün kullanımı", - "disk_io": "Disk G/Ç", - "disk_io_des": "Kök dosya sisteminin verimi", - "disk_space": "Disk Alanı", - "disk_usage_of": "Disk kullanımı", - "docker_cpu_des": "Konteynerlerin ortalama CPU kullanımı", - "docker_cpu_usage": "Docker CPU Kullanımı", - "docker_memory_des": "Docker konteynerlerinin bellek kullanımı", - "docker_memory_usage": "Docker Bellek Kullanımı", - "docker_network_io": "Docker Ağ G/Ç", - "docker_network_io_des": "Docker konteynerlerinin ağ trafiği", - "max_1_min": "Maks 1 dk", - "memory_des": "Kaydedilen zamandaki kesin kullanım", - "read": "Oku", - "received": "Alındı", - "sent": "Gönderildi", - "swap_des": "Sistem tarafından kullanılan takas alanı", - "swap_usage": "Takas Kullanımı", - "temperature": "Sıcaklık", - "temperature_des": "Sistem sensörlerinin sıcaklıkları", - "throughput_of": "Verimi", - "toggle_grid": "Izgarayı değiştir", - "total_cpu_usage": "Toplam CPU Kullanımı", - "total_memory_usage": "Toplam Bellek Kullanımı", - "usage": "Kullanım", - "used": "Kullanıldı", - "waiting_for": "Görüntülemek için yeterli kayıt bekleniyor", - "write": "Yaz" - }, - "search": "Ara", - "settings": { - "check_logs": "Daha fazla ayrıntı için kayıtları kontrol edin", - "export_configuration": "Yapılandırmayı dışa aktar", - "failed_to_save": "Ayarlar kaydedilemedi", - "general": { - "chart_options": { - "default_time_period": "Varsayılan zaman aralığı", - "default_time_period_des": "Bir sistem görüntülendiğinde grafikler için varsayılan zaman aralığını ayarlar.", - "subtitle": "Grafikler için görüntüleme seçeneklerini ayarlayın.", - "title": "Grafik seçenekleri" - }, - "language": { - "preferred_language": "Tercih Edilen Dil", - "subtitle_1": "Çevirilerimizi daha iyi hale getirmemize yardımcı olmak ister misiniz? Daha fazla bilgi için", - "subtitle_2": "göz atın.", - "title": "Dil" - }, - "subtitle": "Genel uygulama seçeneklerini değiştirin.", - "title": "Genel" - }, - "language": "Dil", - "notifications": { - "email": { - "configure_an_SMTP_server": "bir SMTP sunucusu yapılandırın", - "des": "Adresleri enter tuşu veya virgül ile kaydedin. E-posta bildirimlerini devre dışı bırakmak için boş bırakın.", - "enter_email_address": "E-posta adresi girin...", - "please": "Lütfen", - "title": "E-posta bildirimleri", - "to_emails": "E-posta(lar)a", - "to_ensure_alerts_are_delivered": "uyarıların teslim edilmesini sağlamak için." - }, - "subtitle_1": "Uyarı bildirimlerini nasıl alacağınızı yapılandırın.", - "subtitle_2": "Uyarı oluşturma yerini mi arıyorsunuz? Çan simgelerine tıklayın", - "subtitle_3": "sistemler tablosunda.", - "title": "Bildirimler", - "webhook": { - "add": "Ekle", - "des_1": "Beszel", - "des_2": "popüler bildirim hizmetleriyle entegre olmak için kullanır", - "test": "Test et", - "test_sent": "Test bildirimi gönderildi", - "test_sent_des": "Bildirim hizmetinizi kontrol edin", - "title": "Webhook / Push bildirimleri" - } - }, - "save_settings": "Ayarları Kaydet", - "saved": "Ayarlar kaydedildi", - "saved_des": "Kullanıcı ayarlarınız güncellendi", - "settings": "Ayarlar", - "subtitle": "Görüntüleme ve bildirim tercihlerini yönetin.", - "yaml_config": { - "alert": { - "des_1": "İçinde tanımlanmayan mevcut sistemler", - "des_2": "silinecektir. Lütfen düzenli yedeklemeler yapın.", - "title": "Dikkat - potansiyel veri kaybı" - }, - "des_1": "Sistemler, veri dizininizdeki bir", - "des_2": "dosyasında yönetilebilir.", - "des_3": "Her yeniden başlatmada, veritabanındaki sistemler dosyada tanımlanan sistemlerle eşleşecek şekilde güncellenir.", - "short_title": "YAML Yapılandırması", - "subtitle": "Mevcut sistem yapılandırmanızı dışa aktarın.", - "title": "YAML Yapılandırması" - } - }, - "system": "Sistem", - "systems": "Sistemler", - "systems_table": { - "agent": "Ajan", - "copy_host": "Host'u kopyala", - "cpu": "CPU", - "delete": "Sil", - "delete_confirm": "{{name}} silmek istediğinizden emin misiniz?", - "delete_confirm_des_1": "Bu işlem geri alınamaz. Bu, tüm mevcut kayıtları kalıcı olarak silecektir", - "delete_confirm_des_2": "veritabanından.", - "disk": "Disk", - "memory": "Bellek", - "net": "Ağ", - "no_systems_found": "Sistem bulunamadı.", - "open_menu": "Menüyü aç", - "pause": "Duraklat", - "resume": "Devam et", - "system": "Sistem" - }, - "themes": { - "dark": "Koyu", - "light": "Açık", - "system": "Sistem", - "toggle_theme": "Temayı değiştir" - }, - "user_dm": { - "auth_providers": "Kimlik Sağlayıcılar", - "backups": "Yedekler", - "log_out": "Çıkış Yap", - "logs": "Kayıtlar", - "users": "Kullanıcılar" - }, - "weeks_one": "{{count}} hafta" -} diff --git a/beszel/site/src/locales/uk/messages.po b/beszel/site/src/locales/uk/messages.po new file mode 100644 index 0000000..affd5ba --- /dev/null +++ b/beszel/site/src/locales/uk/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: uk\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/uk/messages.ts b/beszel/site/src/locales/uk/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/uk/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/uk/translation.json b/beszel/site/src/locales/uk/translation.json deleted file mode 100644 index 607d438..0000000 --- a/beszel/site/src/locales/uk/translation.json +++ /dev/null @@ -1,223 +0,0 @@ -{ - "add": "Додати", - "add_system": { - "add_new_system": "Додати нову систему", - "add_system": "Додати систему", - "binary": "Бінарний файл", - "click_to_copy": "Натисніть, щоб скопіювати", - "command": "команду", - "dialog_des_1": "Агент повинен бути запущений в системі для підключення. Скопіюйте", - "dialog_des_2": "для агента нижче.", - "host_ip": "Хост / IP", - "key": "Ключ", - "name": "Назва", - "port": "Порт" - }, - "alerts": { - "average_exceeds": "Середнє перевищує", - "for": "Протягом", - "info": { - "bandwidth": "Пропускна здатність", - "bandwidth_des": "Спрацьовує, коли сумарний вхідний/вихідний трафік перевищує поріг.", - "cpu_usage": "Використання процесора", - "cpu_usage_des": "Спрацьовує, коли використання процесора перевищує поріг.", - "disk_usage": "Використання диску", - "disk_usage_des": "Спрацьовує, коли використання будь-якого диску перевищує поріг.", - "memory_usage": "Використання пам'яті", - "memory_usage_des": "Спрацьовує, коли використання пам'яті перевищує поріг.", - "status": "Статус", - "status_des": "Спрацьовує при зміні статусу між активним та неактивним.", - "temperature": "Температура", - "temperature_des": "Спрацьовує, коли будь-який датчик перевищує поріг." - }, - "notification_settings": "налаштування сповіщень", - "overwrite_existing_alerts": "Перезаписати існуючі сповіщення", - "subtitle_1": "Дивіться", - "subtitle_2": "щоб налаштувати отримання сповіщень.", - "title": "Сповіщення" - }, - "all_systems": "Всі системи", - "auth": { - "command_1": "Якщо ви втратили пароль адміністратора, ви можете скинути його за допомогою наступної команди.", - "command_2": "Потім увійдіть у бекенд і скиньте пароль свого облікового запису в таблиці користувачів.", - "command_line_instructions": "Інструкції командного рядка", - "create": "Будь ласка, створіть обліковий запис адміністратора", - "create_account": "Створити обліковий запис", - "for_instructions": "для інструкцій.", - "forgot_password": "Забули пароль?", - "login": "Будь ласка, увійдіть у свій обліковий запис", - "openid_des": "Beszel підтримує OpenID Connect та багато провайдерів автентифікації OAuth2.", - "please_view_the": "Будь ласка, перегляньте", - "reset": "Введіть email адресу для скидання пароля", - "reset_password": "Скинути пароль", - "sign_in": "Увійти" - }, - "cancel": "Скасувати", - "clipboard": { - "copied": "Скопійовано в буфер обміну", - "des": "Автоматичне копіювання вимагає безпечного контексту.", - "title": "Копіювати текст" - }, - "command": { - "SMTP_settings": "Налаштування SMTP", - "admin": "Адміністратор", - "dashboard": "Панель керування", - "documentation": "Документація", - "page": "Сторінка", - "pages_settings": "Сторінки / Налаштування", - "search": "Пошук систем або налаштувань..." - }, - "continue": "Продовжити", - "copy": "Копіювати", - "days_few": "{{count}} дні", - "days_many": "{{count}} днів", - "days_one": "{{count}} день", - "error": "Помилка", - "filter": "Фільтр...", - "home": { - "active_alerts": "Активні сповіщення", - "active_des": "Перевищує {{value}}{{unit}} за останні ", - "subtitle": "Оновлюється в реальному часі. Натисніть на систему для перегляду інформації." - }, - "hours_few": "{{count}} години", - "hours_many": "{{count}} годин", - "hours_one": "{{count}} година", - "minutes_few": "{{count}} хвилини", - "minutes_many": "", - "minutes_one": "{{count}} хвилина", - "monitor": { - "average": "Середнє", - "bandwidth": "Пропускна здатність", - "bandwidth_des": "Мережевий трафік публічних інтерфейсів", - "cache_buffers": "Кеш / Буфери", - "cpu_des": "загальносистемне використання процесора", - "disk_des": "Використання кореневого розділу", - "disk_io": "Дисковий ввід/вивід", - "disk_io_des": "Пропускна здатність кореневої файлової системи", - "disk_space": "Дисковий простір", - "disk_usage_of": "Використання диску", - "docker_cpu_des": "Середнє використання процесора контейнерами", - "docker_cpu_usage": "Використання процесора Docker", - "docker_memory_des": "Використання пам'яті контейнерами docker", - "docker_memory_usage": "Використання пам'яті Docker", - "docker_network_io": "Мережевий ввід/вивід Docker", - "docker_network_io_des": "Мережевий трафік контейнерів docker", - "max_1_min": "Макс. 1 хв ", - "memory_des": "Точне використання на момент запису", - "read": "Читання", - "received": "Отримано", - "sent": "Відправлено", - "swap_des": "Використання swap-простору системою", - "swap_usage": "Використання swap", - "temperature": "Температура", - "temperature_des": "Температура системних датчиків", - "throughput_of": "Пропускна здатність", - "toggle_grid": "Перемкнути сітку", - "total_cpu_usage": "Загальне використання процесора", - "total_memory_usage": "Загальне використання пам'яті", - "usage": "Використання", - "used": "Використано", - "waiting_for": "Очікування достатньої кількості записів для відображення", - "write": "Запис" - }, - "search": "Пошук", - "settings": { - "check_logs": "Перевірте журнали для отримання додаткової інформації", - "export_configuration": "Експорт конфігурації", - "failed_to_save": "Не вдалося зберегти налаштування", - "general": { - "chart_options": { - "default_time_period": "Стандартний період часу", - "default_time_period_des": "Встановлює стандартний діапазон часу для графіків при перегляді системи.", - "subtitle": "Налаштування параметрів відображення графіків.", - "title": "Налаштування графіків" - }, - "language": { - "preferred_language": "Бажана мова", - "subtitle_1": "Хочете допомогти нам покращити переклади? Перегляньте", - "subtitle_2": "для додаткової інформації.", - "title": "Мова" - }, - "subtitle": "Змінити загальні параметри програми.", - "title": "Загальні" - }, - "language": "Мова", - "notifications": { - "email": { - "configure_an_SMTP_server": "налаштуйте SMTP сервер", - "des": "Збережіть адресу, використовуючи клавішу enter або кому. Залиште порожнім, щоб вимкнути email сповіщення.", - "enter_email_address": "Введіть email адресу...", - "please": "Будь ласка", - "title": "Сповіщення електронною поштою", - "to_emails": "На email(и)", - "to_ensure_alerts_are_delivered": "щоб забезпечити доставку сповіщень." - }, - "subtitle_1": "Налаштуйте спосіб отримання сповіщень.", - "subtitle_2": "Шукаєте де створити сповіщення? Натисніть на значок дзвінка", - "subtitle_3": "в таблиці систем.", - "title": "Сповіщення", - "webhook": { - "add": "Додати", - "des_1": "Beszel використовує", - "des_2": "для інтеграції з популярними сервісами сповіщень", - "test": "Тестувати", - "test_sent": "Тестове сповіщення надіслано", - "test_sent_des": "Перевірте ваш сервіс сповіщень", - "title": "Webhook / Push сповіщення" - } - }, - "save_settings": "Зберегти налаштування", - "saved": "Налаштування збережено", - "saved_des": "Ваші налаштування користувача оновлено", - "settings": "Налаштування", - "subtitle": "Керування налаштуваннями відображення та сповіщень.", - "yaml_config": { - "alert": { - "des_1": "Існуючі системи, не визначені в", - "des_2": "будуть видалені. Будь ласка, робіть регулярні резервні копії.", - "title": "Увага - можлива втрата даних" - }, - "des_1": "Системами можна керувати в", - "des_2": "файлі всередині вашої директорії даних.", - "des_3": "При кожному перезапуску системи в базі даних будуть оновлені відповідно до систем, визначених у файлі.", - "short_title": "YAML конфігурація", - "subtitle": "Експорт поточної конфігурації систем.", - "title": "YAML конфігурація" - } - }, - "system": "Система", - "systems": "Системи", - "systems_table": { - "agent": "Агент", - "copy_host": "Копіювати хост", - "cpu": "Процесор", - "delete": "Видалити", - "delete_confirm": "Ви впевнені, що хочете видалити {{name}}?", - "delete_confirm_des_1": "Цю дію неможливо скасувати. Це назавжди видалить всі поточні записи для", - "delete_confirm_des_2": "з бази даних.", - "disk": "Диск", - "memory": "Пам'ять", - "net": "Мережа", - "no_systems_found": "Системи не знайдено.", - "open_menu": "Відкрити меню", - "pause": "Пауза", - "resume": "Відновити", - "system": "Система" - }, - "themes": { - "dark": "Темна", - "light": "Світла", - "system": "Системна", - "toggle_theme": "Перемкнути тему" - }, - "user_dm": { - "auth_providers": "Провайдери автентифікації", - "backups": "Резервні копії", - "log_out": "Вийти", - "logs": "Журнали", - "users": "Користувачі" - }, - "weeks_few": "", - "weeks_many": "", - "weeks_one": "{{count}} тиждень" -} diff --git a/beszel/site/src/locales/vi/messages.po b/beszel/site/src/locales/vi/messages.po new file mode 100644 index 0000000..d041791 --- /dev/null +++ b/beszel/site/src/locales/vi/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: vi\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/vi/messages.ts b/beszel/site/src/locales/vi/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/vi/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/vi/translation.json b/beszel/site/src/locales/vi/translation.json deleted file mode 100644 index 8891f14..0000000 --- a/beszel/site/src/locales/vi/translation.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "add": "Thêm", - "add_system": { - "add_new_system": "Thêm hệ thống mới", - "add_system": "Thêm hệ thống", - "binary": "Tệp nhị phân", - "click_to_copy": "Nhấp để sao chép", - "command": "lệnh", - "dialog_des_1": "Agent phải đang chạy trên hệ thống để kết nối. Sao chép", - "dialog_des_2": "cho agent bên dưới.", - "host_ip": "Host / IP", - "key": "Khóa", - "name": "Tên", - "port": "Cổng" - }, - "alerts": { - "average_exceeds": "Trung bình vượt quá", - "for": "Trong", - "info": { - "bandwidth": "Băng thông", - "bandwidth_des": "Kích hoạt khi tổng lưu lượng up/down vượt quá ngưỡng.", - "cpu_usage": "Sử dụng CPU", - "cpu_usage_des": "Kích hoạt khi mức sử dụng CPU vượt quá ngưỡng.", - "disk_usage": "Sử dụng ổ đĩa", - "disk_usage_des": "Kích hoạt khi mức sử dụng của bất kỳ ổ đĩa nào vượt quá ngưỡng.", - "memory_usage": "Sử dụng bộ nhớ", - "memory_usage_des": "Kích hoạt khi mức sử dụng bộ nhớ vượt quá ngưỡng.", - "status": "Trạng thái", - "status_des": "Kích hoạt khi trạng thái chuyển đổi giữa hoạt động và ngừng hoạt động.", - "temperature": "Nhiệt độ", - "temperature_des": "Kích hoạt khi bất kỳ cảm biến nào vượt quá ngưỡng." - }, - "notification_settings": "cài đặt thông báo", - "overwrite_existing_alerts": "Ghi đè lên cảnh báo hiện có", - "subtitle_1": "Xem", - "subtitle_2": "để cấu hình cách bạn nhận cảnh báo.", - "title": "Cảnh báo" - }, - "all_systems": "Tất cả hệ thống", - "auth": { - "command_1": "Nếu bạn đã mất mật khẩu tài khoản quản trị, bạn có thể đặt lại nó bằng lệnh sau.", - "command_2": "Sau đó đăng nhập vào backend và đặt lại mật khẩu tài khoản người dùng của bạn trong bảng users.", - "command_line_instructions": "Hướng dẫn dòng lệnh", - "create": "Vui lòng tạo tài khoản quản trị", - "create_account": "Tạo tài khoản", - "for_instructions": "để được hướng dẫn.", - "forgot_password": "Quên mật khẩu?", - "login": "Vui lòng đăng nhập vào tài khoản của bạn", - "openid_des": "Beszel hỗ trợ OpenID Connect và nhiều nhà cung cấp xác thực OAuth2.", - "please_view_the": "Vui lòng xem", - "reset": "Nhập địa chỉ email để đặt lại mật khẩu", - "reset_password": "Đặt lại mật khẩu", - "sign_in": "Đăng nhập" - }, - "cancel": "Hủy", - "clipboard": { - "copied": "Đã sao chép vào clipboard", - "des": "Sao chép tự động yêu cầu một ngữ cảnh bảo mật.", - "title": "Sao chép văn bản" - }, - "command": { - "SMTP_settings": "Cài đặt SMTP", - "admin": "Quản trị", - "dashboard": "Bảng điều khiển", - "documentation": "Tài liệu", - "page": "Trang", - "pages_settings": "Trang / Cài đặt", - "search": "Tìm kiếm hệ thống hoặc cài đặt..." - }, - "continue": "Tiếp tục", - "copy": "Sao chép", - "days_other": "{{count}} ngày", - "error": "Lỗi", - "filter": "Lọc...", - "home": { - "active_alerts": "Cảnh báo đang hoạt động", - "active_des": "Vượt quá {{value}}{{unit}} trong ", - "subtitle": "Cập nhật theo thời gian thực. Nhấp vào hệ thống để xem thông tin." - }, - "hours_other": "{{count}} giờ", - "minutes_other": "{{count}} phút", - "monitor": { - "average": "Trung bình", - "bandwidth": "Băng thông", - "bandwidth_des": "Lưu lượng mạng của các giao diện công cộng", - "cache_buffers": "Bộ nhớ đệm/Buffer", - "cpu_des": "sử dụng CPU toàn hệ thống", - "disk_des": "Sử dụng phân vùng gốc", - "disk_io": "I/O ổ đĩa", - "disk_io_des": "Thông lượng của hệ thống tệp gốc", - "disk_space": "Không gian ổ đĩa", - "disk_usage_of": "Sử dụng ổ đĩa của", - "docker_cpu_des": "Mức sử dụng CPU trung bình của các container", - "docker_cpu_usage": "Sử dụng CPU Docker", - "docker_memory_des": "Sử dụng bộ nhớ của các container docker", - "docker_memory_usage": "Sử dụng bộ nhớ Docker", - "docker_network_io": "I/O mạng Docker", - "docker_network_io_des": "Lưu lượng mạng của các container docker", - "max_1_min": "Tối đa 1 phút", - "memory_des": "Mức sử dụng chính xác tại thời điểm ghi", - "read": "Đọc", - "received": "Đã nhận", - "sent": "Đã gửi", - "swap_des": "Không gian swap được sử dụng bởi hệ thống", - "swap_usage": "Sử dụng Swap", - "temperature": "Nhiệt độ", - "temperature_des": "Nhiệt độ của các cảm biến hệ thống", - "throughput_of": "Thông lượng của", - "toggle_grid": "Bật/tắt lưới", - "total_cpu_usage": "Tổng sử dụng CPU", - "total_memory_usage": "Tổng sử dụng bộ nhớ", - "usage": "Sử dụng", - "used": "Đã sử dụng", - "waiting_for": "Đang chờ đủ bản ghi để hiển thị", - "write": "Ghi" - }, - "search": "Tìm kiếm", - "settings": { - "check_logs": "Kiểm tra nhật ký để biết thêm chi tiết", - "export_configuration": "Xuất cấu hình", - "failed_to_save": "Không thể lưu cài đặt", - "general": { - "chart_options": { - "default_time_period": "Khoảng thời gian mặc định", - "default_time_period_des": "Đặt phạm vi thời gian mặc định cho biểu đồ khi xem hệ thống.", - "subtitle": "Điều chỉnh tùy chọn hiển thị cho biểu đồ.", - "title": "Tùy chọn biểu đồ" - }, - "language": { - "preferred_language": "Ngôn ngữ ưa thích", - "subtitle_1": "Bạn muốn giúp chúng tôi cải thiện bản dịch? Hãy xem", - "subtitle_2": "để biết thêm chi tiết.", - "title": "Ngôn ngữ" - }, - "subtitle": "Thay đổi tùy chọn ứng dụng chung.", - "title": "Chung" - }, - "language": "Ngôn ngữ", - "notifications": { - "email": { - "configure_an_SMTP_server": "cấu hình máy chủ SMTP", - "des": "Lưu địa chỉ bằng phím enter hoặc dấu phẩy. Để trống để tắt thông báo qua email.", - "enter_email_address": "Nhập địa chỉ email...", - "please": "Vui lòng", - "title": "Thông báo qua email", - "to_emails": "Đến email", - "to_ensure_alerts_are_delivered": "để đảm bảo cảnh báo được gửi đi." - }, - "subtitle_1": "Cấu hình cách bạn nhận thông báo cảnh báo.", - "subtitle_2": "Bạn đang tìm nơi tạo cảnh báo? Nhấp vào biểu tượng chuông", - "subtitle_3": "trong bảng hệ thống.", - "title": "Thông báo", - "webhook": { - "add": "Thêm", - "des_1": "Beszel sử dụng", - "des_2": "để tích hợp với các dịch vụ thông báo phổ biến", - "test": "Kiểm tra", - "test_sent": "Đã gửi thông báo kiểm tra", - "test_sent_des": "Kiểm tra dịch vụ thông báo của bạn", - "title": "Thông báo Webhook / Push" - } - }, - "save_settings": "Lưu cài đặt", - "saved": "Đã lưu cài đặt", - "saved_des": "Cài đặt người dùng của bạn đã được cập nhật", - "settings": "Cài đặt", - "subtitle": "Quản lý tùy chọn hiển thị và thông báo.", - "yaml_config": { - "alert": { - "des_1": "Các hệ thống hiện có không được định nghĩa trong", - "des_2": "sẽ bị xóa. Vui lòng sao lưu thường xuyên.", - "title": "Cảnh báo - có thể mất dữ liệu" - }, - "des_1": "Các hệ thống có thể được quản lý trong một", - "des_2": "tệp trong thư mục dữ liệu của bạn.", - "des_3": "Mỗi lần khởi động lại, các hệ thống trong cơ sở dữ liệu sẽ được cập nhật để khớp với các hệ thống được định nghĩa trong tệp.", - "short_title": "Cấu hình YAML", - "subtitle": "Xuất cấu hình hệ thống hiện tại của bạn.", - "title": "Cấu hình YAML" - } - }, - "system": "Hệ thống", - "systems": "Các hệ thống", - "systems_table": { - "agent": "Agent", - "copy_host": "Sao chép host", - "cpu": "CPU", - "delete": "Xóa", - "delete_confirm": "Bạn có chắc chắn muốn xóa {{name}}?", - "delete_confirm_des_1": "Hành động này không thể hoàn tác. Điều này sẽ xóa vĩnh viễn tất cả bản ghi hiện tại cho", - "delete_confirm_des_2": "khỏi cơ sở dữ liệu.", - "disk": "Ổ đĩa", - "memory": "Bộ nhớ", - "net": "Mạng", - "no_systems_found": "Không tìm thấy hệ thống nào.", - "open_menu": "Mở menu", - "pause": "Tạm dừng", - "resume": "Tiếp tục", - "system": "Hệ thống" - }, - "themes": { - "dark": "Tối", - "light": "Sáng", - "system": "Hệ thống", - "toggle_theme": "Chuyển đổi giao diện" - }, - "user_dm": { - "auth_providers": "Nhà cung cấp xác thực", - "backups": "Sao lưu", - "log_out": "Đăng xuất", - "logs": "Nhật ký", - "users": "Người dùng" - }, - "weeks_other": "{{count}} tuần" -} diff --git a/beszel/site/src/locales/zh-CN/messages.po b/beszel/site/src/locales/zh-CN/messages.po new file mode 100644 index 0000000..602baf2 --- /dev/null +++ b/beszel/site/src/locales/zh-CN/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: zh-CN\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/zh-CN/messages.ts b/beszel/site/src/locales/zh-CN/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/zh-CN/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/zh-CN/translation.json b/beszel/site/src/locales/zh-CN/translation.json deleted file mode 100644 index 375aa48..0000000 --- a/beszel/site/src/locales/zh-CN/translation.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "add": "添加", - "add_system": { - "add_new_system": "添加新服务器", - "add_system": "添加服务器", - "binary": "二进制文件", - "click_to_copy": "点击复制", - "command": "命令", - "dialog_des_1": "客户端必须在服务器上运行才能连接。复制", - "dialog_des_2": "到目标服务器以安装。", - "host_ip": "主机/IP", - "key": "公钥", - "name": "名称", - "port": "端口" - }, - "alerts": { - "average_exceeds": "平均值超过", - "for": "持续", - "info": { - "bandwidth": "带宽", - "bandwidth_des": "当组合的 上行/下行 流量超过阈值时触发。", - "cpu_usage": "CPU 使用率", - "cpu_usage_des": "当 CPU 使用率超过阈值时触发。", - "disk_usage": "磁盘使用率", - "disk_usage_des": "当任何磁盘的使用率超过阈值时触发。", - "memory_usage": "内存使用率", - "memory_usage_des": "当内存使用率超过阈值时触发。", - "status": "状态", - "status_des": "状态在 在线/离线 之间切换时触发。", - "temperature": "温度", - "temperature_des": "当任何传感器超过阈值时触发。" - }, - "notification_settings": "通知设置", - "overwrite_existing_alerts": "覆盖现有警报", - "subtitle_1": "查看", - "subtitle_2": "配置如何接收警报。", - "title": "警报" - }, - "all_systems": "所有服务器", - "auth": { - "command_1": "如果您忘记了管理员账户的密码,可以使用以下命令重置。", - "command_2": "然后登录到后台,在用户表中重置您的用户账户密码。", - "command_line_instructions": "了解命令行指令", - "create": "请创建管理员账户", - "create_account": "创建账户", - "for_instructions": "以获取更多信息。", - "forgot_password": "忘记密码?", - "login": "请登入你的账户", - "openid_des": "Beszel 支持 OpenID Connect 和许多 OAuth2 认证提供商。", - "please_view_the": "请检视", - "reset": "输入邮箱来重设密码", - "reset_password": "重设密码", - "sign_in": "登入" - }, - "cancel": "取消", - "clipboard": { - "copied": "已复制到剪贴板", - "des": "自动复制需要安全上下文。", - "title": "复制文本" - }, - "command": { - "SMTP_settings": "SMTP 设置", - "admin": "管理员", - "dashboard": "仪表盘", - "documentation": "文档", - "page": "页面", - "pages_settings": "页面 / 设置", - "search": "在设置或系统中搜索..." - }, - "continue": "继续", - "copy": "复制", - "days_other": "{{count}} 天", - "error": "错误", - "filter": "筛选...", - "home": { - "active_alerts": "活动警报", - "active_des": "超过 {{value}}{{unit}} 在过去 ", - "subtitle": "实时更新。点击系统以查看信息。" - }, - "hours_other": "{{count}} 小时", - "minutes_other": "{{count}} 分钟", - "monitor": { - "average": "平均值", - "bandwidth": "带宽", - "bandwidth_des": "公共接口的网络流量", - "cache_buffers": "缓存/缓冲区", - "cpu_des": "系统范围的 CPU 利用率", - "disk_des": "根分区的使用情况", - "disk_io": "磁盘 I/O", - "disk_io_des": "根文件系统的吞吐量", - "disk_space": "磁盘空间", - "disk_usage_of": "的磁盘使用率", - "docker_cpu_des": "Docker 的平均 CPU 利用率", - "docker_cpu_usage": "Docker CPU 使用率", - "docker_memory_des": "Docker 容器的内存使用率", - "docker_memory_usage": "Docker 内存使用率", - "docker_network_io": "Docker 网络 I/O", - "docker_network_io_des": "Docker 容器的网络流量", - "max_1_min": "1 分钟最大", - "memory_des": "记录时间点的精确利用率", - "read": "读取", - "received": "已接收", - "sent": "已发送", - "swap_des": "系统使用的交换空间", - "swap_usage": "交换空间使用率", - "temperature": "温度", - "temperature_des": "系统传感器的温度", - "throughput_of": "的吞吐量", - "toggle_grid": "切换布局", - "total_cpu_usage": "总 CPU 使用率", - "total_memory_usage": "总内存使用率", - "usage": "使用率", - "used": "已使用", - "waiting_for": "等待足够的记录以显示", - "write": "写入" - }, - "search": "搜索", - "settings": { - "check_logs": "查看日志以获取更多详细信息", - "export_configuration": "导出配置", - "failed_to_save": "保存设置失败", - "general": { - "chart_options": { - "default_time_period": "默认时间段", - "default_time_period_des": "设置查看服务器时图表的默认时间范围。", - "subtitle": "调整图表的显示选项。", - "title": "图表选项" - }, - "language": { - "preferred_language": "首选语言", - "subtitle_1": "想帮助我们改进翻译吗?查看", - "subtitle_2": "了解更多详情。", - "title": "语言" - }, - "subtitle": "更改通用应用程序选项。", - "title": "常规" - }, - "language": "语言", - "notifications": { - "email": { - "configure_an_SMTP_server": "SMTP 服务器", - "des": "使用 Enter 键或逗号保存地址。留空以禁用电子邮件通知。", - "enter_email_address": "输入邮箱地址...", - "please": "配置", - "title": "电子邮件通知", - "to_emails": "收件人邮箱", - "to_ensure_alerts_are_delivered": "以确保邮件可以成功发送。" - }, - "subtitle_1": "设置如何接收警报通知。", - "subtitle_2": "正在寻找创建警报的位置?点击服务器列表中的", - "subtitle_3": "图标。", - "title": "通知", - "webhook": { - "add": "添加", - "des_1": "Beszel 使用", - "des_2": "与流行的通知服务集成", - "test": "测试", - "test_sent": "测试通知已发送", - "test_sent_des": "请检查您的通知服务", - "title": "Webhook / 推送通知" - } - }, - "save_settings": "保存设置", - "saved": "设置已保存", - "saved_des": "您的用户设置已更新", - "settings": "设置", - "subtitle": "管理显示和通知偏好。", - "yaml_config": { - "alert": { - "des_1": "未在", - "des_2": "中定义的现有系统将被删除。请定期备份。", - "title": "警告 - 潜在数据丢失" - }, - "des_1": "系统使用", - "des_2": "配置文件储存管理数据", - "des_3": "每次重启时,数据库中的系统将更新以匹配文件中定义的系统。", - "short_title": "YAML 配置", - "subtitle": "导出当前系统配置。", - "title": "YAML 配置" - } - }, - "system": "服务器", - "systems": "服务器", - "systems_table": { - "agent": "客户端", - "copy_host": "复制主机", - "cpu": "CPU", - "delete": "删除", - "delete_confirm": "您确定要删除 {{name}} 吗?", - "delete_confirm_des_1": "此操作无法撤消。这将永久从数据库中删除", - "delete_confirm_des_2": "的所有记录。", - "disk": "磁盘", - "memory": "内存", - "net": "网络", - "no_systems_found": "未找到服务器。", - "open_menu": "打开菜单", - "pause": "暂停", - "resume": "恢复", - "system": "服务器" - }, - "themes": { - "dark": "深色", - "light": "浅色", - "system": "系统", - "toggle_theme": "切换主题" - }, - "user_dm": { - "auth_providers": "身份验证提供者", - "backups": "备份", - "log_out": "登出", - "logs": "日志", - "users": "用户" - }, - "weeks_other": "{{count}} 周" -} diff --git a/beszel/site/src/locales/zh-HK/messages.po b/beszel/site/src/locales/zh-HK/messages.po new file mode 100644 index 0000000..2e77d14 --- /dev/null +++ b/beszel/site/src/locales/zh-HK/messages.po @@ -0,0 +1,790 @@ +msgid "" +msgstr "" +"POT-Creation-Date: 2024-11-01 20:30-0400\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: @lingui/cli\n" +"Language: zh-HK\n" + +#: src/components/routes/system.tsx:242 +msgid "{0, plural, one {# day} other {# days}}" +msgstr "" + +#: src/components/routes/system.tsx:240 +msgid "{hours, plural, one {# hour} other {# hours}}" +msgstr "" + +#: src/lib/utils.ts:139 +msgid "1 hour" +msgstr "" + +#: src/lib/utils.ts:162 +msgid "1 week" +msgstr "" + +#: src/lib/utils.ts:147 +msgid "12 hours" +msgstr "" + +#: src/lib/utils.ts:155 +msgid "24 hours" +msgstr "" + +#: src/lib/utils.ts:170 +msgid "30 days" +msgstr "" + +#: src/components/routes/home.tsx:65 +msgid "Active Alerts" +msgstr "" + +#: src/components/add-system.tsx:74 +msgid "Add <0>System" +msgstr "" + +#: src/components/add-system.tsx:83 +msgid "Add New System" +msgstr "" + +#: src/components/add-system.tsx:167 +#: src/components/add-system.tsx:178 +msgid "Add system" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:156 +msgid "Add URL" +msgstr "" + +#: src/components/routes/settings/general.tsx:81 +msgid "Adjust display options for charts." +msgstr "" + +#: src/components/command-palette.tsx:133 +#: src/components/command-palette.tsx:146 +#: src/components/command-palette.tsx:160 +#: src/components/command-palette.tsx:174 +#: src/components/command-palette.tsx:189 +#: src/components/command-palette.tsx:204 +msgid "Admin" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:174 +msgid "Agent" +msgstr "" + +#: src/components/alerts/alert-button.tsx:32 +#: src/components/alerts/alert-button.tsx:68 +msgid "Alerts" +msgstr "" + +#: src/components/alerts/alert-button.tsx:88 +#: src/components/routes/home.tsx:107 +msgid "All Systems" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:247 +msgid "Are you sure you want to delete {name}?" +msgstr "" + +#: src/components/command-palette.tsx:186 +#: src/components/navbar.tsx:102 +msgid "Auth Providers" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:16 +msgid "Automatic copy requires a secure context." +msgstr "" + +#: src/components/routes/system.tsx:567 +msgid "Average" +msgstr "" + +#: src/components/routes/system.tsx:387 +msgid "Average CPU utilization of containers" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:204 +msgid "Average exceeds <0>{value}{0}" +msgstr "" + +#: src/components/routes/system.tsx:376 +msgid "Average system-wide CPU utilization" +msgstr "" + +#: src/components/command-palette.tsx:171 +#: src/components/navbar.tsx:94 +msgid "Backups" +msgstr "" + +#: src/components/routes/system.tsx:436 +#: src/lib/utils.ts:307 +msgid "Bandwidth" +msgstr "" + +#: src/components/login/auth-form.tsx:313 +msgid "Beszel supports OpenID Connect and many OAuth2 authentication providers." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:127 +msgid "Beszel uses <0>Shoutrrr to integrate with popular notification services." +msgstr "" + +#: src/components/add-system.tsx:88 +msgid "Binary" +msgstr "" + +#: src/components/charts/mem-chart.tsx:89 +msgid "Cache / Buffers" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:258 +msgid "Cancel" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:68 +msgid "Caution - potential data loss" +msgstr "" + +#: src/components/routes/settings/general.tsx:36 +msgid "Change general application options." +msgstr "" + +#: src/components/routes/settings/general.tsx:78 +msgid "Chart options" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:34 +msgid "Check {email} for a reset link." +msgstr "" + +#: src/components/routes/settings/layout.tsx:40 +msgid "Check logs for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:183 +msgid "Check your notification service" +msgstr "" + +#: src/components/add-system.tsx:153 +msgid "Click to copy" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:83 +#: src/components/login/forgot-pass-form.tsx:89 +msgid "Command line instructions" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:77 +msgid "Configure how you receive alert notifications." +msgstr "" + +#: src/components/login/auth-form.tsx:189 +#: src/components/login/auth-form.tsx:194 +msgid "Confirm password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:264 +msgid "Continue" +msgstr "" + +#: src/lib/utils.ts:25 +msgid "Copied to clipboard" +msgstr "" + +#: src/components/add-system.tsx:164 +msgid "Copy" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:233 +msgid "Copy host" +msgstr "" + +#: src/components/add-system.tsx:175 +msgid "Copy Linux command" +msgstr "" + +#: src/components/copy-to-clipboard.tsx:13 +msgid "Copy text" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:143 +msgid "CPU" +msgstr "" + +#: src/components/charts/area-chart.tsx:52 +#: src/components/routes/system.tsx:375 +#: src/lib/utils.ts:289 +msgid "CPU Usage" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Create account" +msgstr "" + +#. Dark theme +#: src/components/mode-toggle.tsx:21 +msgid "Dark" +msgstr "" + +#: src/components/command-palette.tsx:82 +#: src/components/routes/home.tsx:38 +msgid "Dashboard" +msgstr "" + +#: src/components/routes/settings/general.tsx:85 +msgid "Default time period" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:239 +msgid "Delete" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:155 +msgid "Disk" +msgstr "" + +#: src/components/routes/system.tsx:426 +msgid "Disk I/O" +msgstr "" + +#: src/components/charts/disk-chart.tsx:74 +#: src/components/routes/system.tsx:415 +#: src/lib/utils.ts:301 +msgid "Disk Usage" +msgstr "" + +#: src/components/routes/system.tsx:495 +msgid "Disk usage of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:386 +msgid "Docker CPU Usage" +msgstr "" + +#: src/components/routes/system.tsx:407 +msgid "Docker Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:452 +msgid "Docker Network I/O" +msgstr "" + +#: src/components/command-palette.tsx:125 +msgid "Documentation" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "email" +msgstr "" + +#: src/components/login/auth-form.tsx:152 +#: src/components/login/forgot-pass-form.tsx:53 +msgid "Email" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:91 +msgid "Email notifications" +msgstr "" + +#: src/components/login/login.tsx:36 +msgid "Enter email address to reset password" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:111 +msgid "Enter email address..." +msgstr "" + +#: src/components/login/auth-form.tsx:256 +#: src/components/routes/settings/config-yaml.tsx:28 +#: src/components/routes/settings/notifications.tsx:187 +msgid "Error" +msgstr "" + +#: src/components/routes/home.tsx:84 +msgid "Exceeds {0}{1} in last {2, plural, one {# minute} other {# minutes}}" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:72 +msgid "Existing systems not defined in <0>config.yml will be deleted. Please make regular backups." +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:93 +msgid "Export configuration" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:48 +msgid "Export your current systems configuration." +msgstr "" + +#: src/lib/utils.ts:38 +msgid "Failed to authenticate" +msgstr "" + +#: src/components/routes/settings/layout.tsx:39 +#: src/components/routes/settings/notifications.tsx:62 +msgid "Failed to save settings" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:188 +msgid "Failed to send test notification" +msgstr "" + +#: src/components/alerts/alerts-system.tsx:27 +msgid "Failed to update alert" +msgstr "" + +#: src/components/routes/home.tsx:114 +#: src/components/routes/system.tsx:538 +msgid "Filter..." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:225 +msgid "For <0>{min} {min, plural, one {minute} other {minutes}}" +msgstr "" + +#: src/components/login/auth-form.tsx:337 +msgid "Forgot password?" +msgstr "" + +#. Context: General settings +#: src/components/routes/settings/general.tsx:33 +#: src/components/routes/settings/layout.tsx:51 +msgid "General" +msgstr "" + +#: src/components/add-system.tsx:119 +msgid "Host / IP" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:93 +msgid "If you've lost the password to your admin account, you may reset it using the following command." +msgstr "" + +#: src/components/login/auth-form.tsx:16 +msgid "Invalid email address." +msgstr "" + +#. Linux kernel +#: src/components/routes/system.tsx:254 +msgid "Kernel" +msgstr "" + +#: src/components/routes/settings/general.tsx:45 +msgid "Language" +msgstr "" + +#. Light theme +#: src/components/mode-toggle.tsx:16 +msgid "Light" +msgstr "" + +#: src/components/navbar.tsx:113 +msgid "Log Out" +msgstr "" + +#: src/components/login/login.tsx:17 +msgid "Login" +msgstr "" + +#: src/components/login/auth-form.tsx:42 +#: src/components/login/forgot-pass-form.tsx:15 +msgid "Login attempt failed" +msgstr "" + +#: src/components/command-palette.tsx:157 +#: src/components/navbar.tsx:86 +msgid "Logs" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:80 +msgid "Looking instead for where to create alerts? Click the bell <0/> icons in the systems table." +msgstr "" + +#: src/components/routes/settings/layout.tsx:85 +msgid "Manage display and notification preferences." +msgstr "" + +#. Chart select field. Please try to keep this short. +#: src/components/routes/system.tsx:570 +msgid "Max 1 min" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:149 +msgid "Memory" +msgstr "" + +#: src/components/routes/system.tsx:397 +#: src/lib/utils.ts:295 +msgid "Memory Usage" +msgstr "" + +#: src/components/routes/system.tsx:408 +msgid "Memory usage of docker containers" +msgstr "" + +#: src/components/add-system.tsx:113 +msgid "Name" +msgstr "" + +#: src/components/login/auth-form.tsx:158 +msgid "name@example.com" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:162 +msgid "Net" +msgstr "" + +#: src/components/routes/system.tsx:453 +msgid "Network traffic of docker containers" +msgstr "" + +#: src/components/routes/system.tsx:438 +msgid "Network traffic of public interfaces" +msgstr "" + +#: src/components/command-palette.tsx:50 +msgid "No results found." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:343 +msgid "No systems found." +msgstr "" + +#: src/components/command-palette.tsx:111 +#: src/components/routes/settings/layout.tsx:56 +#: src/components/routes/settings/notifications.tsx:74 +msgid "Notifications" +msgstr "" + +#: src/components/login/auth-form.tsx:308 +msgid "OAuth 2 / OIDC support" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:61 +msgid "On each restart, systems in the database will be updated to match the systems defined in the file." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:205 +msgid "Open menu" +msgstr "" + +#: src/components/login/auth-form.tsx:227 +msgid "Or continue with" +msgstr "" + +#: src/components/alerts/alert-button.tsx:109 +msgid "Overwrite existing alerts" +msgstr "" + +#: src/components/command-palette.tsx:85 +msgid "Page" +msgstr "" + +#: src/components/command-palette.tsx:72 +msgid "Pages / Settings" +msgstr "" + +#: src/components/login/auth-form.tsx:171 +#: src/components/login/auth-form.tsx:176 +msgid "Password" +msgstr "" + +#: src/components/login/auth-form.tsx:17 +msgid "Password must be at least 10 characters." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:33 +msgid "Password reset request received" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:227 +msgid "Pause" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:95 +msgid "Please <0>configure an SMTP server to ensure alerts are delivered." +msgstr "" + +#: src/components/alerts/alerts-system.tsx:28 +msgid "Please check logs for more details." +msgstr "" + +#: src/components/login/auth-form.tsx:43 +#: src/components/login/forgot-pass-form.tsx:16 +msgid "Please check your credentials and try again" +msgstr "" + +#: src/components/login/login.tsx:34 +msgid "Please create an admin account" +msgstr "" + +#: src/components/login/auth-form.tsx:257 +msgid "Please enable pop-ups for this site" +msgstr "" + +#: src/lib/utils.ts:39 +msgid "Please log in again" +msgstr "" + +#: src/components/login/auth-form.tsx:316 +msgid "Please see <0>the documentation for instructions." +msgstr "" + +#: src/components/login/login.tsx:38 +msgid "Please sign in to your account" +msgstr "" + +#: src/components/add-system.tsx:125 +msgid "Port" +msgstr "" + +#: src/components/routes/settings/general.tsx:58 +msgid "Preferred Language" +msgstr "" + +#. Use 'Key' if your language requires many more characters +#: src/components/add-system.tsx:131 +msgid "Public Key" +msgstr "" + +#. Context is disk read +#: src/components/charts/area-chart.tsx:56 +#: src/components/charts/area-chart.tsx:65 +msgid "Read" +msgstr "" + +#. Context is network bytes received (download) +#: src/components/charts/area-chart.tsx:61 +msgid "Received" +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:76 +msgid "Reset Password" +msgstr "" + +#: src/components/systems-table/systems-table.tsx:222 +msgid "Resume" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:117 +msgid "Save address using enter key or comma. Leave blank to disable email notifications." +msgstr "" + +#: src/components/routes/settings/general.tsx:106 +#: src/components/routes/settings/notifications.tsx:167 +msgid "Save Settings" +msgstr "" + +#: src/components/navbar.tsx:142 +msgid "Search" +msgstr "" + +#: src/components/command-palette.tsx:47 +msgid "Search for systems or settings..." +msgstr "" + +#: src/components/alerts/alert-button.tsx:71 +msgid "See <0>notification settings to configure how you receive alerts." +msgstr "" + +#. Context is network bytes sent (upload) +#: src/components/charts/area-chart.tsx:60 +msgid "Sent" +msgstr "" + +#: src/components/routes/settings/general.tsx:100 +msgid "Sets the default time range for charts when a system is viewed." +msgstr "" + +#: src/components/command-palette.tsx:96 +#: src/components/command-palette.tsx:99 +#: src/components/command-palette.tsx:114 +#: src/components/routes/settings/layout.tsx:71 +#: src/components/routes/settings/layout.tsx:82 +msgid "Settings" +msgstr "" + +#: src/components/routes/settings/layout.tsx:33 +msgid "Settings saved" +msgstr "" + +#: src/components/login/auth-form.tsx:215 +msgid "Sign in" +msgstr "" + +#: src/components/command-palette.tsx:201 +msgid "SMTP settings" +msgstr "" + +#: src/lib/utils.ts:282 +msgid "Status" +msgstr "" + +#: src/components/routes/system.tsx:467 +msgid "Swap space used by the system" +msgstr "" + +#: src/components/routes/system.tsx:466 +msgid "Swap Usage" +msgstr "" + +#. System theme +#: src/components/mode-toggle.tsx:26 +#: src/components/systems-table/systems-table.tsx:137 +msgid "System" +msgstr "" + +#: src/components/navbar.tsx:78 +msgid "Systems" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:55 +msgid "Systems may be managed in a <0>config.yml file inside your data directory." +msgstr "" + +#: src/components/routes/system.tsx:477 +#: src/lib/utils.ts:313 +msgid "Temperature" +msgstr "" + +#: src/components/routes/system.tsx:478 +msgid "Temperatures of system sensors" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:211 +msgid "Test <0>URL" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:182 +msgid "Test notification sent" +msgstr "" + +#: src/components/add-system.tsx:104 +msgid "The agent must be running on the system to connect. Copy the installation command for the agent below." +msgstr "" + +#: src/components/add-system.tsx:95 +msgid "The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below." +msgstr "" + +#: src/components/login/forgot-pass-form.tsx:98 +msgid "Then log into the backend and reset your user account password in the users table." +msgstr "" + +#: src/components/systems-table/systems-table.tsx:250 +msgid "This action cannot be undone. This will permanently delete all current records for {name} from the database." +msgstr "" + +#: src/components/routes/system.tsx:507 +msgid "Throughput of {extraFsName}" +msgstr "" + +#: src/components/routes/system.tsx:427 +msgid "Throughput of root filesystem" +msgstr "" + +#: src/components/routes/settings/notifications.tsx:106 +msgid "To email(s)" +msgstr "" + +#: src/components/routes/system.tsx:350 +#: src/components/routes/system.tsx:363 +msgid "Toggle grid" +msgstr "" + +#: src/components/mode-toggle.tsx:33 +msgid "Toggle theme" +msgstr "" + +#: src/lib/utils.ts:316 +msgid "Triggers when any sensor exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:310 +msgid "Triggers when combined up/down exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:292 +msgid "Triggers when CPU usage exceeds a threshold" +msgstr "" + +#: src/lib/utils.ts:298 +msgid "Triggers when memory usage exceeds a threshold" +msgstr "" + +#: src/components/routes/system.tsx:398 +msgid "Triggers when memory usage exceeds a threshold." +msgstr "" + +#: src/lib/utils.ts:285 +msgid "Triggers when status switches between up and down" +msgstr "" + +#: src/lib/utils.ts:304 +msgid "Triggers when usage of any disk exceeds a threshold" +msgstr "" + +#: src/components/routes/home.tsx:110 +msgid "Updated in real time. Click on a system to view information." +msgstr "" + +#: src/components/routes/system.tsx:253 +msgid "Uptime" +msgstr "" + +#: src/components/routes/system.tsx:494 +msgid "Usage" +msgstr "" + +#: src/components/routes/system.tsx:415 +msgid "Usage of root partition" +msgstr "" + +#: src/components/charts/mem-chart.tsx:65 +#: src/components/charts/swap-chart.tsx:56 +msgid "Used" +msgstr "" + +#: src/components/login/auth-form.tsx:138 +msgid "username" +msgstr "" + +#: src/components/login/auth-form.tsx:131 +msgid "Username" +msgstr "" + +#: src/components/command-palette.tsx:143 +#: src/components/navbar.tsx:70 +msgid "Users" +msgstr "" + +#: src/components/routes/system.tsx:602 +msgid "Waiting for enough records to display" +msgstr "" + +#: src/components/routes/settings/general.tsx:48 +msgid "Want to help us make our translations even better? Check out <0>Crowdin for more details." +msgstr "" + +#: src/components/routes/settings/notifications.tsx:124 +msgid "Webhook / Push notifications" +msgstr "" + +#. Context is disk write +#: src/components/charts/area-chart.tsx:55 +#: src/components/charts/area-chart.tsx:66 +msgid "Write" +msgstr "" + +#: src/components/routes/settings/layout.tsx:61 +msgid "YAML Config" +msgstr "" + +#: src/components/routes/settings/config-yaml.tsx:45 +msgid "YAML Configuration" +msgstr "" + +#: src/components/routes/settings/layout.tsx:34 +msgid "Your user settings have been updated." +msgstr "" diff --git a/beszel/site/src/locales/zh-HK/messages.ts b/beszel/site/src/locales/zh-HK/messages.ts new file mode 100644 index 0000000..f7332a2 --- /dev/null +++ b/beszel/site/src/locales/zh-HK/messages.ts @@ -0,0 +1 @@ +/*eslint-disable*/import type{Messages}from"@lingui/core";export const messages=JSON.parse("{\"AqcrQK\":[[\"0\",\"plural\",{\"one\":[\"#\",\" day\"],\"other\":[\"#\",\" days\"]}]],\"tkDYSE\":[[\"hours\",\"plural\",{\"one\":[\"#\",\" hour\"],\"other\":[\"#\",\" hours\"]}]],\"vp5vfW\":\"1 hour\",\"3vtzIH\":\"1 week\",\"8gE33P\":\"12 hours\",\"VaA9mu\":\"24 hours\",\"P9cEa2\":\"30 days\",\"BF9frx\":\"Active Alerts\",\"STwytW\":\"Add <0>System\",\"bJRBHa\":\"Add New System\",\"WXW3md\":\"Add system\",\"dn+x7E\":\"Add URL\",\"rjj30q\":\"Adjust display options for charts.\",\"U3pytU\":\"Admin\",\"iEQQyu\":\"Agent\",\"s4BX3A\":\"Alerts\",\"sifuwH\":\"All Systems\",\"kXr5Rz\":[\"Are you sure you want to delete \",[\"name\"],\"?\"],\"B0W4bF\":\"Auth Providers\",\"/++c22\":\"Automatic copy requires a secure context.\",\"3uQmjD\":\"Average\",\"813hlv\":\"Average CPU utilization of containers\",\"rOqZKh\":[\"Average exceeds <0>\",[\"value\"],[\"0\"],\"\"],\"KogyE9\":\"Average system-wide CPU utilization\",\"llDXYJ\":\"Backups\",\"OlXThP\":\"Bandwidth\",\"cKuF3W\":\"Beszel supports OpenID Connect and many OAuth2 authentication providers.\",\"lZMdCW\":\"Beszel uses <0>Shoutrrr to integrate with popular notification services.\",\"uDUdRI\":\"Binary\",\"wKr2uE\":\"Cache / Buffers\",\"dEgA5A\":\"Cancel\",\"sN0FOL\":\"Caution - potential data loss\",\"IARMkX\":\"Change general application options.\",\"ow1Q6+\":\"Chart options\",\"bYfJUT\":[\"Check \",[\"email\"],\" for a reset link.\"],\"fRZFZa\":\"Check logs for more details.\",\"/CIvpD\":\"Check your notification service\",\"sby+1/\":\"Click to copy\",\"vUSFSH\":\"Command line instructions\",\"lHxpbL\":\"Configure how you receive alert notifications.\",\"xnWESi\":\"Confirm password\",\"xGVfLh\":\"Continue\",\"FxVG/l\":\"Copied to clipboard\",\"he3ygx\":\"Copy\",\"YYVxgQ\":\"Copy host\",\"4G+D0j\":\"Copy Linux command\",\"VsHxv+\":\"Copy text\",\"FSbpS7\":\"CPU\",\"ptAX+h\":\"CPU Usage\",\"1hMWR6\":\"Create account\",\"pvnfJD\":\"Dark\",\"7p5kLi\":\"Dashboard\",\"EGiNTR\":\"Default time period\",\"cnGeoo\":\"Delete\",\"sPFHpI\":\"Disk\",\"EodlUw\":\"Disk I/O\",\"gMnhTK\":\"Disk Usage\",\"WLrITB\":[\"Disk usage of \",[\"extraFsName\"]],\"MS2ofg\":\"Docker CPU Usage\",\"nYgC28\":\"Docker Memory Usage\",\"t7nUxv\":\"Docker Network I/O\",\"TvY/XA\":\"Documentation\",\"b/LfJo\":\"email\",\"O3oNi5\":\"Email\",\"aW3TOw\":\"Email notifications\",\"jS3CO/\":\"Enter email address to reset password\",\"3xTTUj\":\"Enter email address...\",\"SlfejT\":\"Error\",\"5KrEtU\":[\"Exceeds \",[\"0\"],[\"1\"],\" in last \",[\"2\",\"plural\",{\"one\":[\"#\",\" minute\"],\"other\":[\"#\",\" minutes\"]}]],\"Mgu3+g\":\"Existing systems not defined in <0>config.yml will be deleted. Please make regular backups.\",\"UoqckY\":\"Export configuration\",\"fw839L\":\"Export your current systems configuration.\",\"XnB4ti\":\"Failed to authenticate\",\"iQ1BL4\":\"Failed to save settings\",\"6H2zd1\":\"Failed to send test notification\",\"MN5GEP\":\"Failed to update alert\",\"6HLTEb\":\"Filter...\",\"bBRdOW\":[\"For <0>\",[\"min\"],\" \",[\"min\",\"plural\",{\"one\":\"minute\",\"other\":\"minutes\"}]],\"UNMVei\":\"Forgot password?\",\"Weq9zb\":\"General\",\"mwiW0X\":\"Host / IP\",\"XeH33w\":\"If you've lost the password to your admin account, you may reset it using the following command.\",\"9lqqpY\":\"Invalid email address.\",\"ZelZFY\":\"Kernel\",\"vXIe7J\":\"Language\",\"1njn7W\":\"Light\",\"paehRh\":\"Log Out\",\"z0t9bb\":\"Login\",\"wJ4oIw\":\"Login attempt failed\",\"w/bY7R\":\"Logs\",\"TrZx/y\":\"Looking instead for where to create alerts? Click the bell <0/> icons in the systems table.\",\"chM9YL\":\"Manage display and notification preferences.\",\"j0+pbV\":\"Max 1 min\",\"v8o+Rn\":\"Memory\",\"8x/SfR\":\"Memory Usage\",\"aG5gQK\":\"Memory usage of docker containers\",\"6YtxFj\":\"Name\",\"WcgzjF\":\"name@example.com\",\"EcdbXQ\":\"Net\",\"NisKE2\":\"Network traffic of docker containers\",\"HUz8wT\":\"Network traffic of public interfaces\",\"MZbQHL\":\"No results found.\",\"OpAFHJ\":\"No systems found.\",\"iDNBZe\":\"Notifications\",\"FhQ2zl\":\"OAuth 2 / OIDC support\",\"2FBOPo\":\"On each restart, systems in the database will be updated to match the systems defined in the file.\",\"GSr0rF\":\"Open menu\",\"zW+FpA\":\"Or continue with\",\"pZFbw+\":\"Overwrite existing alerts\",\"6WdDG7\":\"Page\",\"O20gpZ\":\"Pages / Settings\",\"8ZsakT\":\"Password\",\"liCR+k\":\"Password must be at least 10 characters.\",\"uIpEE5\":\"Password reset request received\",\"IgrLD/\":\"Pause\",\"LSiEmM\":\"Please <0>configure an SMTP server to ensure alerts are delivered.\",\"31UfkH\":\"Please check logs for more details.\",\"GoDeWb\":\"Please check your credentials and try again\",\"OYKYtf\":\"Please create an admin account\",\"YHbZRj\":\"Please enable pop-ups for this site\",\"slfxx+\":\"Please log in again\",\"EKu8aa\":\"Please see <0>the documentation for instructions.\",\"evGUBI\":\"Please sign in to your account\",\"hZ6znB\":\"Port\",\"DV+Xbw\":\"Preferred Language\",\"z1Vlg/\":\"Public Key\",\"cQlPDN\":\"Read\",\"fZ5Vnu\":\"Received\",\"KbS2K9\":\"Reset Password\",\"v39wLo\":\"Resume\",\"9mH8Zc\":\"Save address using enter key or comma. Leave blank to disable email notifications.\",\"UGT5vp\":\"Save Settings\",\"A1taO8\":\"Search\",\"61jyG4\":\"Search for systems or settings...\",\"L0g2h9\":\"See <0>notification settings to configure how you receive alerts.\",\"h69WC6\":\"Sent\",\"/U/zMZ\":\"Sets the default time range for charts when a system is viewed.\",\"Tz0i8g\":\"Settings\",\"iMxx2A\":\"Settings saved\",\"5lWFkC\":\"Sign in\",\"3cXFzn\":\"SMTP settings\",\"uAQUqI\":\"Status\",\"xa/6Rx\":\"Swap space used by the system\",\"AnW27x\":\"Swap Usage\",\"D+NlUC\":\"System\",\"c8KseH\":\"Systems\",\"CLDb6E\":\"Systems may be managed in a <0>config.yml file inside your data directory.\",\"oE+H8K\":\"Temperature\",\"gLNBDr\":\"Temperatures of system sensors\",\"eeos47\":\"Test <0>URL\",\"MucYW8\":\"Test notification sent\",\"O+ia7W\":\"The agent must be running on the system to connect. Copy the installation command for the agent below.\",\"Ii3pEi\":\"The agent must be running on the system to connect. Copy the<0>docker-compose.yml for the agent below.\",\"i0G/mY\":\"Then log into the backend and reset your user account password in the users table.\",\"Iy90xV\":[\"This action cannot be undone. This will permanently delete all current records for \",[\"name\"],\" from the database.\"],\"udNvwS\":[\"Throughput of \",[\"extraFsName\"]],\"lcJPpM\":\"Throughput of root filesystem\",\"KLX09x\":\"To email(s)\",\"UILhO0\":\"Toggle grid\",\"2N0C4b\":\"Toggle theme\",\"OC0Gym\":\"Triggers when any sensor exceeds a threshold\",\"5W9YJm\":\"Triggers when combined up/down exceeds a threshold\",\"Mj1/gd\":\"Triggers when CPU usage exceeds a threshold\",\"ovrW9c\":\"Triggers when memory usage exceeds a threshold\",\"EDcnZf\":\"Triggers when memory usage exceeds a threshold.\",\"Y9QEKW\":\"Triggers when status switches between up and down\",\"6IQ5X1\":\"Triggers when usage of any disk exceeds a threshold\",\"XxWdUX\":\"Updated in real time. Click on a system to view information.\",\"TjrbDj\":\"Uptime\",\"7FaY4u\":\"Usage\",\"SFR5+X\":\"Usage of root partition\",\"aL1w5Z\":\"Used\",\"silO9A\":\"username\",\"7sNhEz\":\"Username\",\"Sxm8rQ\":\"Users\",\"nQZqIc\":\"Waiting for enough records to display\",\"uZcLj0\":\"Want to help us make our translations even better? Check out <0>Crowdin for more details.\",\"iHzCRV\":\"Webhook / Push notifications\",\"i4/LY/\":\"Write\",\"x1z+B4\":\"YAML Config\",\"HqAFfq\":\"YAML Configuration\",\"GWFpJ1\":\"Your user settings have been updated.\"}")as Messages; \ No newline at end of file diff --git a/beszel/site/src/locales/zh-HK/translation.json b/beszel/site/src/locales/zh-HK/translation.json deleted file mode 100644 index 2502277..0000000 --- a/beszel/site/src/locales/zh-HK/translation.json +++ /dev/null @@ -1,215 +0,0 @@ -{ - "add": "新增", - "add_system": { - "add_new_system": "新增新伺服器", - "add_system": "新增伺服器", - "binary": "二進制檔案", - "click_to_copy": "點擊複製", - "command": "指令", - "dialog_des_1": "客戶端必須在伺服器上運行才能連接。複製", - "dialog_des_2": "到目標伺服器以安裝。", - "host_ip": "主機/IP", - "key": "公鑰", - "name": "名稱", - "port": "端口" - }, - "alerts": { - "average_exceeds": "平均值超過", - "for": "持續", - "info": { - "bandwidth": "頻寬", - "bandwidth_des": "當組合的 上行/下行 流量超過閾值時觸發。", - "cpu_usage": "CPU 使用率", - "cpu_usage_des": "當 CPU 使用率超過閾值時觸發。", - "disk_usage": "磁碟使用率", - "disk_usage_des": "當任何磁碟的使用率超過閾值時觸發。", - "memory_usage": "記憶體使用率", - "memory_usage_des": "當記憶體使用率超過閾值時觸發。", - "status": "狀態", - "status_des": "狀態在 在線/離線 之間切換時觸發。", - "temperature": "溫度", - "temperature_des": "當任何感應器超過閾值時觸發。" - }, - "notification_settings": "通知設定", - "overwrite_existing_alerts": "覆蓋現有警報", - "subtitle_1": "查看", - "subtitle_2": "配置如何接收警報。", - "title": "警報" - }, - "all_systems": "所有伺服器", - "auth": { - "command_1": "如果您忘記了管理員賬戶的密碼,可以使用以下命令重置。", - "command_2": "然後登入到後台,在用戶表中重置您的用戶賬戶密碼。", - "command_line_instructions": "了解命令行指令", - "create": "請創建管理員賬戶", - "create_account": "創建賬戶", - "for_instructions": "以獲取更多信息。", - "forgot_password": "忘記密碼?", - "login": "請登入你的賬戶", - "openid_des": "Beszel 支持 OpenID Connect 和許多 OAuth2 認證提供商。", - "please_view_the": "請檢視", - "reset": "輸入電郵來重設密碼", - "reset_password": "重設密碼", - "sign_in": "登入" - }, - "cancel": "取消", - "clipboard": { - "copied": "已複製到剪貼簿", - "des": "自動複製需要安全上下文。", - "title": "複製文字" - }, - "command": { - "SMTP_settings": "SMTP 設定", - "admin": "管理員", - "dashboard": "儀表板", - "documentation": "文件", - "page": "頁面", - "pages_settings": "頁面 / 設定", - "search": "在設定或系統中搜尋..." - }, - "continue": "繼續", - "copy": "複製", - "days_other": "{{count}} 天", - "error": "錯誤", - "filter": "篩選...", - "home": { - "active_alerts": "活動警報", - "active_des": "超過 {{value}}{{unit}} 在過去 ", - "subtitle": "即時更新。點擊系統以查看資訊。" - }, - "hours_other": "{{count}} 小時", - "minutes_other": "{{count}} 分鐘", - "monitor": { - "average": "平均值", - "bandwidth": "頻寬", - "bandwidth_des": "公共介面的網絡流量", - "cache_buffers": "快取/緩衝區", - "cpu_des": "系統範圍的 CPU 利用率", - "disk_des": "根分區的使用情況", - "disk_io": "磁碟 I/O", - "disk_io_des": "根檔案系統的吞吐量", - "disk_space": "磁碟空間", - "disk_usage_of": "的磁碟使用率", - "docker_cpu_des": "Docker 的平均 CPU 利用率", - "docker_cpu_usage": "Docker CPU 使用率", - "docker_memory_des": "Docker 容器的記憶體使用率", - "docker_memory_usage": "Docker 記憶體使用率", - "docker_network_io": "Docker 網絡 I/O", - "docker_network_io_des": "Docker 容器的網絡流量", - "max_1_min": "1 分鐘最大", - "memory_des": "記錄時間點的精確利用率", - "read": "讀取", - "received": "已接收", - "sent": "已發送", - "swap_des": "系統使用的交換空間", - "swap_usage": "交換空間使用率", - "temperature": "溫度", - "temperature_des": "系統感應器的溫度", - "throughput_of": "的吞吐量", - "toggle_grid": "切換佈局", - "total_cpu_usage": "總 CPU 使用率", - "total_memory_usage": "總記憶體使用率", - "usage": "使用率", - "used": "已使用", - "waiting_for": "等待足夠的記錄以顯示", - "write": "寫入" - }, - "search": "搜尋", - "settings": { - "check_logs": "查看日志以获取更多详细信息", - "export_configuration": "匯出配置", - "failed_to_save": "保存设置失败", - "general": { - "chart_options": { - "default_time_period": "預設時間段", - "default_time_period_des": "設定查看伺服器時圖表的預設時間範圍。", - "subtitle": "調整圖表的顯示選項。", - "title": "圖表選項" - }, - "language": { - "preferred_language": "首選語言", - "subtitle_1": "想幫助我們改進翻譯嗎?查看", - "subtitle_2": "了解更多詳情。", - "title": "語言" - }, - "subtitle": "更改通用應用程式選項。", - "title": "一般" - }, - "language": "語言", - "notifications": { - "email": { - "configure_an_SMTP_server": "SMTP 伺服器", - "des": "使用 Enter 鍵或逗號儲存地址。留空以禁用電郵通知。", - "enter_email_address": "輸入電郵地址...", - "please": "配置", - "title": "電郵通知", - "to_emails": "收件人電郵", - "to_ensure_alerts_are_delivered": "以確保郵件可以成功發送。" - }, - "subtitle_1": "設定如何接收警報通知。", - "subtitle_2": "正在尋找建立警報的位置?點擊伺服器列表中的", - "subtitle_3": "圖示。", - "title": "通知", - "webhook": { - "add": "新增", - "des_1": "Beszel 使用", - "des_2": "與流行的通知服務整合", - "test": "測試", - "test_sent": "測試通知已發送", - "test_sent_des": "請檢查您的通知服務", - "title": "Webhook / 推送通知" - } - }, - "save_settings": "儲存設定", - "saved": "设置已保存", - "saved_des": "您的用户设置已更新", - "settings": "設定", - "subtitle": "管理顯示和通知偏好。", - "yaml_config": { - "alert": { - "des_1": "未在", - "des_2": "中定義的現有系統將被刪除。請定期備份。", - "title": "警告 - 潛在數據丟失" - }, - "des_1": "系統使用", - "des_2": "配置檔案儲存管理數據", - "des_3": "每次重啟時,資料庫中的系統將更新以匹配檔案中定義的系統。", - "short_title": "YAML 配置", - "subtitle": "匯出當前系統配置。", - "title": "YAML 配置" - } - }, - "system": "伺服器", - "systems": "伺服器", - "systems_table": { - "agent": "客戶端", - "copy_host": "複製主機", - "cpu": "CPU", - "delete": "刪除", - "delete_confirm": "您確定要刪除 {{name}} 嗎?", - "delete_confirm_des_1": "此操作無法撤銷。這將永久從資料庫中刪除", - "delete_confirm_des_2": "的所有記錄。", - "disk": "磁碟", - "memory": "記憶體", - "net": "網絡", - "no_systems_found": "未找到伺服器。", - "open_menu": "打開選單", - "pause": "暫停", - "resume": "恢復", - "system": "伺服器" - }, - "themes": { - "dark": "深色", - "light": "淺色", - "system": "系統", - "toggle_theme": "切換主題" - }, - "user_dm": { - "auth_providers": "身份驗證提供者", - "backups": "備份", - "log_out": "登出", - "logs": "日誌", - "users": "用戶" - }, - "weeks_other": "" -} diff --git a/beszel/site/src/main.tsx b/beszel/site/src/main.tsx index b54b84c..a290c1d 100644 --- a/beszel/site/src/main.tsx +++ b/beszel/site/src/main.tsx @@ -12,7 +12,8 @@ import { Toaster } from "./components/ui/toaster.tsx" import { $router } from "./components/router.tsx" import SystemDetail from "./components/routes/system.tsx" import Navbar from "./components/navbar.tsx" -import "./lib/i18n.ts" +import { I18nProvider } from "@lingui/react" +import { i18n } from "@lingui/core" // const ServerDetail = lazy(() => import('./components/routes/system.tsx')) const LoginPage = lazy(() => import("./components/login/login.tsx")) @@ -80,6 +81,10 @@ const Layout = () => { const copyContent = useStore($copyContent) const direction = useStore($direction) + useEffect(() => { + document.documentElement.dir = direction + }, [direction]) + return ( {!authenticated ? ( @@ -109,9 +114,11 @@ ReactDOM.createRoot(document.getElementById("app")!).render( // strict mode in dev mounts / unmounts components twice // and breaks the clipboard dialog // - - - - + + + + + + // ) diff --git a/beszel/site/vite.config.ts b/beszel/site/vite.config.ts index b813953..5491f75 100644 --- a/beszel/site/vite.config.ts +++ b/beszel/site/vite.config.ts @@ -1,9 +1,15 @@ import { defineConfig } from "vite" -import react from "@vitejs/plugin-react" import path from "path" +import react from "@vitejs/plugin-react-swc" +import { lingui } from "@lingui/vite-plugin" export default defineConfig({ - plugins: [react()], + plugins: [ + react({ + plugins: [["@lingui/swc-plugin", {}]], + }), + lingui(), + ], esbuild: { legalComments: "external", }, diff --git a/readme.md b/readme.md index f72118e..6d567d4 100644 --- a/readme.md +++ b/readme.md @@ -320,7 +320,7 @@ See a list of valid options by running `go tool dist list`. Contributions are welcome, but it's a good idea to check with us first in a discussion / issue if you plan on doing anything significant. -We use [Weblate](https://hosted.weblate.org/engage/beszel/) to manage translations. New languages or improvements to existing translations are appreciated! + We'll have more helpful information about contributing to Beszel in the near future.