Fixed Change Language Direction In Setting Page
This commit is contained in:
		
						commit
						f2c7308c96
					
				
					 29 changed files with 605 additions and 301 deletions
				
			
		|  | @ -16,7 +16,7 @@ WORKDIR /app | ||||||
| # Install Apprise, add sqlite3 cli for debugging in the future, iputils-ping for ping, util-linux for setpriv | # Install Apprise, add sqlite3 cli for debugging in the future, iputils-ping for ping, util-linux for setpriv | ||||||
| RUN apt update && \ | RUN apt update && \ | ||||||
|     apt --yes install python3 python3-pip python3-cryptography python3-six python3-yaml python3-click python3-markdown python3-requests python3-requests-oauthlib \ |     apt --yes install python3 python3-pip python3-cryptography python3-six python3-yaml python3-click python3-markdown python3-requests python3-requests-oauthlib \ | ||||||
|         sqlite3 iputils-ping util-linux && \ |         sqlite3 iputils-ping util-linux dumb-init && \ | ||||||
|     pip3 --no-cache-dir install apprise && \ |     pip3 --no-cache-dir install apprise && \ | ||||||
|     rm -rf /var/lib/apt/lists/* |     rm -rf /var/lib/apt/lists/* | ||||||
| 
 | 
 | ||||||
|  | @ -26,7 +26,7 @@ COPY --from=build /app /app | ||||||
| EXPOSE 3001 | EXPOSE 3001 | ||||||
| VOLUME ["/app/data"] | VOLUME ["/app/data"] | ||||||
| HEALTHCHECK --interval=60s --timeout=30s --start-period=180s --retries=5 CMD node extra/healthcheck.js | HEALTHCHECK --interval=60s --timeout=30s --start-period=180s --retries=5 CMD node extra/healthcheck.js | ||||||
| ENTRYPOINT ["extra/entrypoint.sh"] | ENTRYPOINT ["/usr/bin/dumb-init", "--", "extra/entrypoint.sh"] | ||||||
| CMD ["node", "server/server.js"] | CMD ["node", "server/server.js"] | ||||||
| 
 | 
 | ||||||
| FROM release AS nightly | FROM release AS nightly | ||||||
|  |  | ||||||
|  | @ -13,7 +13,7 @@ FROM node:14-alpine3.12 AS release | ||||||
| WORKDIR /app | WORKDIR /app | ||||||
| 
 | 
 | ||||||
| # Install apprise, iputils for non-root ping, setpriv | # Install apprise, iputils for non-root ping, setpriv | ||||||
| RUN apk add --no-cache iputils setpriv python3 py3-cryptography py3-pip py3-six py3-yaml py3-click py3-markdown py3-requests py3-requests-oauthlib && \ | RUN apk add --no-cache iputils setpriv dumb-init python3 py3-cryptography py3-pip py3-six py3-yaml py3-click py3-markdown py3-requests py3-requests-oauthlib && \ | ||||||
|     pip3 --no-cache-dir install apprise && \ |     pip3 --no-cache-dir install apprise && \ | ||||||
|     rm -rf /root/.cache |     rm -rf /root/.cache | ||||||
| 
 | 
 | ||||||
|  | @ -23,7 +23,7 @@ COPY --from=build /app /app | ||||||
| EXPOSE 3001 | EXPOSE 3001 | ||||||
| VOLUME ["/app/data"] | VOLUME ["/app/data"] | ||||||
| HEALTHCHECK --interval=60s --timeout=30s --start-period=180s --retries=5 CMD node extra/healthcheck.js | HEALTHCHECK --interval=60s --timeout=30s --start-period=180s --retries=5 CMD node extra/healthcheck.js | ||||||
| ENTRYPOINT ["extra/entrypoint.sh"] | ENTRYPOINT ["/usr/bin/dumb-init", "--", "extra/entrypoint.sh"] | ||||||
| CMD ["node", "server/server.js"] | CMD ["node", "server/server.js"] | ||||||
| 
 | 
 | ||||||
| FROM release AS nightly | FROM release AS nightly | ||||||
|  |  | ||||||
|  | @ -2,8 +2,8 @@ | ||||||
| 
 | 
 | ||||||
| # set -e Exit the script if an error happens | # set -e Exit the script if an error happens | ||||||
| set -e | set -e | ||||||
| PUID=${PUID=1000} | PUID=${PUID=0} | ||||||
| PGID=${PGID=1000} | PGID=${PGID=0} | ||||||
| 
 | 
 | ||||||
| files_ownership () { | files_ownership () { | ||||||
|     # -h Changes the ownership of an encountered symbolic link and not that of the file or directory pointed to by the symbolic link. |     # -h Changes the ownership of an encountered symbolic link and not that of the file or directory pointed to by the symbolic link. | ||||||
|  |  | ||||||
							
								
								
									
										188
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										188
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							|  | @ -1,12 +1,12 @@ | ||||||
| { | { | ||||||
|     "name": "uptime-kuma", |     "name": "uptime-kuma", | ||||||
|     "version": "1.6.0", |     "version": "1.7.0", | ||||||
|     "lockfileVersion": 2, |     "lockfileVersion": 2, | ||||||
|     "requires": true, |     "requires": true, | ||||||
|     "packages": { |     "packages": { | ||||||
|         "": { |         "": { | ||||||
|             "name": "uptime-kuma", |             "name": "uptime-kuma", | ||||||
|             "version": "1.6.0", |             "version": "1.7.0", | ||||||
|             "license": "MIT", |             "license": "MIT", | ||||||
|             "dependencies": { |             "dependencies": { | ||||||
|                 "@fortawesome/fontawesome-svg-core": "^1.2.36", |                 "@fortawesome/fontawesome-svg-core": "^1.2.36", | ||||||
|  | @ -2797,18 +2797,6 @@ | ||||||
|                 "node": ">=10" |                 "node": ">=10" | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|         "node_modules/eslint/node_modules/lru-cache": { |  | ||||||
|             "version": "6.0.0", |  | ||||||
|             "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", |  | ||||||
|             "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", |  | ||||||
|             "dev": true, |  | ||||||
|             "dependencies": { |  | ||||||
|                 "yallist": "^4.0.0" |  | ||||||
|             }, |  | ||||||
|             "engines": { |  | ||||||
|                 "node": ">=10" |  | ||||||
|             } |  | ||||||
|         }, |  | ||||||
|         "node_modules/eslint/node_modules/semver": { |         "node_modules/eslint/node_modules/semver": { | ||||||
|             "version": "7.3.5", |             "version": "7.3.5", | ||||||
|             "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", |             "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", | ||||||
|  | @ -2824,12 +2812,6 @@ | ||||||
|                 "node": ">=10" |                 "node": ">=10" | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|         "node_modules/eslint/node_modules/yallist": { |  | ||||||
|             "version": "4.0.0", |  | ||||||
|             "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", |  | ||||||
|             "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", |  | ||||||
|             "dev": true |  | ||||||
|         }, |  | ||||||
|         "node_modules/esm": { |         "node_modules/esm": { | ||||||
|             "version": "3.2.25", |             "version": "3.2.25", | ||||||
|             "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", |             "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz", | ||||||
|  | @ -4296,6 +4278,18 @@ | ||||||
|                 "url": "https://github.com/sponsors/wooorm" |                 "url": "https://github.com/sponsors/wooorm" | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|  |         "node_modules/lru-cache": { | ||||||
|  |             "version": "6.0.0", | ||||||
|  |             "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||||
|  |             "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||||
|  |             "dev": true, | ||||||
|  |             "dependencies": { | ||||||
|  |                 "yallist": "^4.0.0" | ||||||
|  |             }, | ||||||
|  |             "engines": { | ||||||
|  |                 "node": ">=10" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|         "node_modules/magic-string": { |         "node_modules/magic-string": { | ||||||
|             "version": "0.25.7", |             "version": "0.25.7", | ||||||
|             "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", |             "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", | ||||||
|  | @ -4615,6 +4609,7 @@ | ||||||
|             "version": "3.1.25", |             "version": "3.1.25", | ||||||
|             "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", |             "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", | ||||||
|             "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", |             "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", | ||||||
|  |             "dev": true, | ||||||
|             "bin": { |             "bin": { | ||||||
|                 "nanoid": "bin/nanoid.cjs" |                 "nanoid": "bin/nanoid.cjs" | ||||||
|             }, |             }, | ||||||
|  | @ -7447,6 +7442,64 @@ | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/@vue/reactivity": { | ||||||
|  |             "version": "3.2.19", | ||||||
|  |             "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.19.tgz", | ||||||
|  |             "integrity": "sha512-FtachoYs2SnyrWup5UikP54xDX6ZJ1s5VgHcJp4rkGoutU3Ry61jhs+nCX7J64zjX992Mh9gGUC0LqTs8q9vCA==", | ||||||
|  |             "dependencies": { | ||||||
|  |                 "@vue/shared": "3.2.19" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/@vue/runtime-core": { | ||||||
|  |             "version": "3.2.19", | ||||||
|  |             "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.19.tgz", | ||||||
|  |             "integrity": "sha512-qArZSWKxWsgKfxk9BelZ32nY0MZ31CAW2kUUyVJyxh4cTfHaXGbjiQB5JgsvKc49ROMNffv9t3/qjasQqAH+RQ==", | ||||||
|  |             "dependencies": { | ||||||
|  |                 "@vue/reactivity": "3.2.19", | ||||||
|  |                 "@vue/shared": "3.2.19" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/@vue/runtime-dom": { | ||||||
|  |             "version": "3.2.19", | ||||||
|  |             "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.19.tgz", | ||||||
|  |             "integrity": "sha512-hIRboxXwafeHhbZEkZYNV0MiJXPNf4fP0X6hM2TJb0vssz8BKhD9cF92BkRgZztTQevecbhk0gu4uAPJ3dxL9A==", | ||||||
|  |             "dependencies": { | ||||||
|  |                 "@vue/runtime-core": "3.2.19", | ||||||
|  |                 "@vue/shared": "3.2.19", | ||||||
|  |                 "csstype": "^2.6.8" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/@vue/runtime-dom/node_modules/csstype": { | ||||||
|  |             "version": "2.6.18", | ||||||
|  |             "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.18.tgz", | ||||||
|  |             "integrity": "sha512-RSU6Hyeg14am3Ah4VZEmeX8H7kLwEEirXe6aU2IPfKNvhXwTflK5HQRDNI0ypQXoqmm+QPyG2IaPuQE5zMwSIQ==" | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/@vue/shared": { | ||||||
|  |             "version": "3.2.19", | ||||||
|  |             "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.19.tgz", | ||||||
|  |             "integrity": "sha512-Knqhx7WieLdVgwCAZgTVrDCXZ50uItuecLh9JdLC8O+a5ayaSyIQYveUK3hCRNC7ws5zalHmZwfdLMGaS8r4Ew==" | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/csstype": { | ||||||
|  |             "version": "3.0.9", | ||||||
|  |             "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", | ||||||
|  |             "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==" | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/lodash": { | ||||||
|  |             "version": "4.17.21", | ||||||
|  |             "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", | ||||||
|  |             "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" | ||||||
|  |         }, | ||||||
|  |         "node_modules/vue-chart-3/node_modules/nanoid": { | ||||||
|  |             "version": "3.1.28", | ||||||
|  |             "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.28.tgz", | ||||||
|  |             "integrity": "sha512-gSu9VZ2HtmoKYe/lmyPFES5nknFrHa+/DT9muUFWFMi6Jh9E1I7bkvlQ8xxf1Kos9pi9o8lBnIOkatMhKX/YUw==", | ||||||
|  |             "bin": { | ||||||
|  |                 "nanoid": "bin/nanoid.cjs" | ||||||
|  |             }, | ||||||
|  |             "engines": { | ||||||
|  |                 "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|         "node_modules/vue-confirm-dialog": { |         "node_modules/vue-confirm-dialog": { | ||||||
|             "version": "1.0.2", |             "version": "1.0.2", | ||||||
|             "resolved": "https://registry.npmjs.org/vue-confirm-dialog/-/vue-confirm-dialog-1.0.2.tgz", |             "resolved": "https://registry.npmjs.org/vue-confirm-dialog/-/vue-confirm-dialog-1.0.2.tgz", | ||||||
|  | @ -7804,6 +7857,12 @@ | ||||||
|             "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", |             "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", | ||||||
|             "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" |             "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" | ||||||
|         }, |         }, | ||||||
|  |         "node_modules/yallist": { | ||||||
|  |             "version": "4.0.0", | ||||||
|  |             "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||||
|  |             "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||||
|  |             "dev": true | ||||||
|  |         }, | ||||||
|         "node_modules/yaml": { |         "node_modules/yaml": { | ||||||
|             "version": "1.10.2", |             "version": "1.10.2", | ||||||
|             "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", |             "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", | ||||||
|  | @ -10065,15 +10124,6 @@ | ||||||
|                 "v8-compile-cache": "^2.0.3" |                 "v8-compile-cache": "^2.0.3" | ||||||
|             }, |             }, | ||||||
|             "dependencies": { |             "dependencies": { | ||||||
|                 "lru-cache": { |  | ||||||
|                     "version": "6.0.0", |  | ||||||
|                     "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", |  | ||||||
|                     "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", |  | ||||||
|                     "dev": true, |  | ||||||
|                     "requires": { |  | ||||||
|                         "yallist": "^4.0.0" |  | ||||||
|                     } |  | ||||||
|                 }, |  | ||||||
|                 "semver": { |                 "semver": { | ||||||
|                     "version": "7.3.5", |                     "version": "7.3.5", | ||||||
|                     "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", |                     "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", | ||||||
|  | @ -10082,12 +10132,6 @@ | ||||||
|                     "requires": { |                     "requires": { | ||||||
|                         "lru-cache": "^6.0.0" |                         "lru-cache": "^6.0.0" | ||||||
|                     } |                     } | ||||||
|                 }, |  | ||||||
|                 "yallist": { |  | ||||||
|                     "version": "4.0.0", |  | ||||||
|                     "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", |  | ||||||
|                     "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", |  | ||||||
|                     "dev": true |  | ||||||
|                 } |                 } | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|  | @ -11260,6 +11304,15 @@ | ||||||
|             "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", |             "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", | ||||||
|             "dev": true |             "dev": true | ||||||
|         }, |         }, | ||||||
|  |         "lru-cache": { | ||||||
|  |             "version": "6.0.0", | ||||||
|  |             "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", | ||||||
|  |             "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", | ||||||
|  |             "dev": true, | ||||||
|  |             "requires": { | ||||||
|  |                 "yallist": "^4.0.0" | ||||||
|  |             } | ||||||
|  |         }, | ||||||
|         "magic-string": { |         "magic-string": { | ||||||
|             "version": "0.25.7", |             "version": "0.25.7", | ||||||
|             "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", |             "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", | ||||||
|  | @ -11489,7 +11542,8 @@ | ||||||
|         "nanoid": { |         "nanoid": { | ||||||
|             "version": "3.1.25", |             "version": "3.1.25", | ||||||
|             "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", |             "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.25.tgz", | ||||||
|             "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==" |             "integrity": "sha512-rdwtIXaXCLFAQbnfqDRnI6jaRHp9fTcYBjtFKE8eezcZ7LuLjhUaQGNeMXf1HmRoCH32CLz6XwX0TtxEOS/A3Q==", | ||||||
|  |             "dev": true | ||||||
|         }, |         }, | ||||||
|         "natural-compare": { |         "natural-compare": { | ||||||
|             "version": "1.4.0", |             "version": "1.4.0", | ||||||
|  | @ -13683,6 +13737,62 @@ | ||||||
|                 "lodash": "latest", |                 "lodash": "latest", | ||||||
|                 "nanoid": "latest", |                 "nanoid": "latest", | ||||||
|                 "vue-demi": "^0.10.1" |                 "vue-demi": "^0.10.1" | ||||||
|  |             }, | ||||||
|  |             "dependencies": { | ||||||
|  |                 "@vue/reactivity": { | ||||||
|  |                     "version": "3.2.19", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.2.19.tgz", | ||||||
|  |                     "integrity": "sha512-FtachoYs2SnyrWup5UikP54xDX6ZJ1s5VgHcJp4rkGoutU3Ry61jhs+nCX7J64zjX992Mh9gGUC0LqTs8q9vCA==", | ||||||
|  |                     "requires": { | ||||||
|  |                         "@vue/shared": "3.2.19" | ||||||
|  |                     } | ||||||
|  |                 }, | ||||||
|  |                 "@vue/runtime-core": { | ||||||
|  |                     "version": "3.2.19", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.2.19.tgz", | ||||||
|  |                     "integrity": "sha512-qArZSWKxWsgKfxk9BelZ32nY0MZ31CAW2kUUyVJyxh4cTfHaXGbjiQB5JgsvKc49ROMNffv9t3/qjasQqAH+RQ==", | ||||||
|  |                     "requires": { | ||||||
|  |                         "@vue/reactivity": "3.2.19", | ||||||
|  |                         "@vue/shared": "3.2.19" | ||||||
|  |                     } | ||||||
|  |                 }, | ||||||
|  |                 "@vue/runtime-dom": { | ||||||
|  |                     "version": "3.2.19", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.2.19.tgz", | ||||||
|  |                     "integrity": "sha512-hIRboxXwafeHhbZEkZYNV0MiJXPNf4fP0X6hM2TJb0vssz8BKhD9cF92BkRgZztTQevecbhk0gu4uAPJ3dxL9A==", | ||||||
|  |                     "requires": { | ||||||
|  |                         "@vue/runtime-core": "3.2.19", | ||||||
|  |                         "@vue/shared": "3.2.19", | ||||||
|  |                         "csstype": "^2.6.8" | ||||||
|  |                     }, | ||||||
|  |                     "dependencies": { | ||||||
|  |                         "csstype": { | ||||||
|  |                             "version": "2.6.18", | ||||||
|  |                             "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.18.tgz", | ||||||
|  |                             "integrity": "sha512-RSU6Hyeg14am3Ah4VZEmeX8H7kLwEEirXe6aU2IPfKNvhXwTflK5HQRDNI0ypQXoqmm+QPyG2IaPuQE5zMwSIQ==" | ||||||
|  |                         } | ||||||
|  |                     } | ||||||
|  |                 }, | ||||||
|  |                 "@vue/shared": { | ||||||
|  |                     "version": "3.2.19", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.2.19.tgz", | ||||||
|  |                     "integrity": "sha512-Knqhx7WieLdVgwCAZgTVrDCXZ50uItuecLh9JdLC8O+a5ayaSyIQYveUK3hCRNC7ws5zalHmZwfdLMGaS8r4Ew==" | ||||||
|  |                 }, | ||||||
|  |                 "csstype": { | ||||||
|  |                     "version": "3.0.9", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.9.tgz", | ||||||
|  |                     "integrity": "sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw==" | ||||||
|  |                 }, | ||||||
|  |                 "lodash": { | ||||||
|  |                     "version": "4.17.21", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", | ||||||
|  |                     "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" | ||||||
|  |                 }, | ||||||
|  |                 "nanoid": { | ||||||
|  |                     "version": "3.1.28", | ||||||
|  |                     "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.28.tgz", | ||||||
|  |                     "integrity": "sha512-gSu9VZ2HtmoKYe/lmyPFES5nknFrHa+/DT9muUFWFMi6Jh9E1I7bkvlQ8xxf1Kos9pi9o8lBnIOkatMhKX/YUw==" | ||||||
|  |                 } | ||||||
|             } |             } | ||||||
|         }, |         }, | ||||||
|         "vue-confirm-dialog": { |         "vue-confirm-dialog": { | ||||||
|  | @ -13922,6 +14032,12 @@ | ||||||
|             "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", |             "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", | ||||||
|             "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" |             "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" | ||||||
|         }, |         }, | ||||||
|  |         "yallist": { | ||||||
|  |             "version": "4.0.0", | ||||||
|  |             "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", | ||||||
|  |             "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", | ||||||
|  |             "dev": true | ||||||
|  |         }, | ||||||
|         "yaml": { |         "yaml": { | ||||||
|             "version": "1.10.2", |             "version": "1.10.2", | ||||||
|             "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", |             "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| { | { | ||||||
|     "name": "uptime-kuma", |     "name": "uptime-kuma", | ||||||
|     "version": "1.7.0", |     "version": "1.7.1", | ||||||
|     "license": "MIT", |     "license": "MIT", | ||||||
|     "repository": { |     "repository": { | ||||||
|         "type": "git", |         "type": "git", | ||||||
|  | @ -23,12 +23,12 @@ | ||||||
|         "tsc": "tsc", |         "tsc": "tsc", | ||||||
|         "vite-preview-dist": "vite preview --host", |         "vite-preview-dist": "vite preview --host", | ||||||
|         "build-docker": "npm run build-docker-debian && npm run build-docker-alpine", |         "build-docker": "npm run build-docker-debian && npm run build-docker-alpine", | ||||||
|         "build-docker-alpine": "docker buildx build -f dockerfile-alpine --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:alpine -t louislam/uptime-kuma:1-alpine -t louislam/uptime-kuma:1.7.0-alpine --target release . --push", |         "build-docker-alpine": "docker buildx build -f dockerfile-alpine --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:alpine -t louislam/uptime-kuma:1-alpine -t louislam/uptime-kuma:1.7.1-alpine --target release . --push", | ||||||
|         "build-docker-debian": "docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma -t louislam/uptime-kuma:1 -t louislam/uptime-kuma:1.7.0 -t louislam/uptime-kuma:debian -t louislam/uptime-kuma:1-debian -t louislam/uptime-kuma:1.7.0-debian --target release . --push", |         "build-docker-debian": "docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma -t louislam/uptime-kuma:1 -t louislam/uptime-kuma:1.7.1 -t louislam/uptime-kuma:debian -t louislam/uptime-kuma:1-debian -t louislam/uptime-kuma:1.7.1-debian --target release . --push", | ||||||
|         "build-docker-nightly": "docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:nightly --target nightly . --push", |         "build-docker-nightly": "docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:nightly --target nightly . --push", | ||||||
|         "build-docker-nightly-alpine": "docker buildx build -f dockerfile-alpine --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:nightly-alpine --target nightly . --push", |         "build-docker-nightly-alpine": "docker buildx build -f dockerfile-alpine --platform linux/amd64,linux/arm64,linux/arm/v7 -t louislam/uptime-kuma:nightly-alpine --target nightly . --push", | ||||||
|         "build-docker-nightly-amd64": "docker buildx build --platform linux/amd64 -t louislam/uptime-kuma:nightly-amd64 --target nightly . --push --progress plain", |         "build-docker-nightly-amd64": "docker buildx build --platform linux/amd64 -t louislam/uptime-kuma:nightly-amd64 --target nightly . --push --progress plain", | ||||||
|         "setup": "git checkout 1.7.0 && npm install --legacy-peer-deps && node node_modules/esbuild/install.js && npm run build && npm prune", |         "setup": "git checkout 1.7.1 && npm install --legacy-peer-deps && node node_modules/esbuild/install.js && npm run build && npm prune", | ||||||
|         "update-version": "node extra/update-version.js", |         "update-version": "node extra/update-version.js", | ||||||
|         "mark-as-nightly": "node extra/mark-as-nightly.js", |         "mark-as-nightly": "node extra/mark-as-nightly.js", | ||||||
|         "reset-password": "node extra/reset-password.js", |         "reset-password": "node extra/reset-password.js", | ||||||
|  |  | ||||||
							
								
								
									
										25
									
								
								src/App.vue
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								src/App.vue
									
									
									
									
									
								
							|  | @ -1,27 +1,12 @@ | ||||||
| <template> | <template> | ||||||
|     <router-view /> |   <router-view /> | ||||||
| </template> | </template> | ||||||
| 
 | 
 | ||||||
| <script> | <script> | ||||||
| 
 | import { setPageLocale } from "./util-frontend"; | ||||||
| import { i18n, localeDirection } from "./i18n"; |  | ||||||
| 
 |  | ||||||
| export default { | export default { | ||||||
|     created() { |   created() { | ||||||
|      |     setPageLocale(); | ||||||
|     this.setPageLocale(); |  | ||||||
|   }, |   }, | ||||||
|   methods: { | }; | ||||||
|       setPageLocale() { |  | ||||||
|         const html = document.documentElement  |  | ||||||
|         html.setAttribute('lang', this.$i18n.locale ) |  | ||||||
|         html.setAttribute('dir', localeDirection() ) |  | ||||||
|       } |  | ||||||
|   }, |  | ||||||
|   watch: { |  | ||||||
|         "$i18n.locale"() { |  | ||||||
|             this.setPageLocale(); |  | ||||||
|         }, |  | ||||||
|     }, |  | ||||||
| } |  | ||||||
| </script> | </script> | ||||||
|  |  | ||||||
|  | @ -1,4 +1,5 @@ | ||||||
| import { createI18n } from "vue-i18n"; | import { createI18n } from "vue-i18n"; | ||||||
|  | import bgBG from "./languages/bg-BG"; | ||||||
| import daDK from "./languages/da-DK"; | import daDK from "./languages/da-DK"; | ||||||
| import deDE from "./languages/de-DE"; | import deDE from "./languages/de-DE"; | ||||||
| import en from "./languages/en"; | import en from "./languages/en"; | ||||||
|  | @ -23,6 +24,7 @@ import zhHK from "./languages/zh-HK"; | ||||||
| const languageList = { | const languageList = { | ||||||
|     en, |     en, | ||||||
|     "zh-HK": zhHK, |     "zh-HK": zhHK, | ||||||
|  |     "bg-BG": bgBG, | ||||||
|     "de-DE": deDE, |     "de-DE": deDE, | ||||||
|     "nl-NL": nlNL, |     "nl-NL": nlNL, | ||||||
|     "es-ES": esEs, |     "es-ES": esEs, | ||||||
|  | @ -45,7 +47,7 @@ const languageList = { | ||||||
| 
 | 
 | ||||||
| const rtlLangs = ["fa"]; | const rtlLangs = ["fa"]; | ||||||
|      |      | ||||||
| const currentLocale = () => localStorage.locale || "en"; | export const currentLocale = () => localStorage.locale || "en"; | ||||||
| 
 | 
 | ||||||
| export const localeDirection = () => { | export const localeDirection = () => { | ||||||
|     return rtlLangs.includes(currentLocale()) ? "rtl" : "ltr" |     return rtlLangs.includes(currentLocale()) ? "rtl" : "ltr" | ||||||
|  |  | ||||||
							
								
								
									
										181
									
								
								src/languages/bg-BG.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										181
									
								
								src/languages/bg-BG.js
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,181 @@ | ||||||
|  | export default { | ||||||
|  |     languageName: "Български", | ||||||
|  |     checkEverySecond: "Проверявай на всеки {0} секунди.", | ||||||
|  |     retryCheckEverySecond: "Повторен опит на всеки {0} секунди.", | ||||||
|  |     retriesDescription: "Максимакен брой опити преди услугата да бъде маркирана като недостъпна и да бъде изпратено известие", | ||||||
|  |     ignoreTLSError: "Игнорирай TLS/SSL грешки за HTTPS уебсайтове", | ||||||
|  |     upsideDownModeDescription: "Обърни статуса от достъпен на недостъпен. Ако услугата е достъпна се вижда НЕДОСТЪПНА.", | ||||||
|  |     maxRedirectDescription: "Максимален брой пренасочвания, които да бъдат следвани. Въведете 0 за да изключите пренасочване.", | ||||||
|  |     acceptedStatusCodesDescription: "Изберете статус кодове, които се считат за успешен отговор.", | ||||||
|  |     passwordNotMatchMsg: "Повторената парола не съвпада.", | ||||||
|  |     notificationDescription: "Моля, задайте известието към монитор(и), за да функционира.", | ||||||
|  |     keywordDescription: "Търсете ключова дума в обикновен html или JSON отговор - чувствителна е към регистъра", | ||||||
|  |     pauseDashboardHome: "Пауза", | ||||||
|  |     deleteMonitorMsg: "Наистина ли желаете да изтриете този монитор?", | ||||||
|  |     deleteNotificationMsg: "Наистина ли желаете да изтриете известието за всички монитори?", | ||||||
|  |     resoverserverDescription: "Cloudflare е сървърът по подразбиране, можете да промените сървъра по всяко време.", | ||||||
|  |     rrtypeDescription: "Изберете ресурсния запис, който желаете да наблюдавате", | ||||||
|  |     pauseMonitorMsg: "Наистина ли желаете да поставите в режим пауза?", | ||||||
|  |     enableDefaultNotificationDescription: "За всеки нов монитор това известие ще бъде активирано по подразбиране. Можете да изключите известието за всеки отделен монитор.", | ||||||
|  |     clearEventsMsg: "Наистина ли желаете да изтриете всички събития за този монитор?", | ||||||
|  |     clearHeartbeatsMsg: "Наистина ли желаете да изтриете всички записи за честотни проверки на този монитор?", | ||||||
|  |     confirmClearStatisticsMsg: "Наистина ли желаете да изтриете всички статистически данни?", | ||||||
|  |     importHandleDescription: "Изберете 'Пропусни съществуващите', ако искате да пропуснете всеки монитор или известие със същото име. 'Презапис' ще изтрие всеки съществуващ монитор и известие.", | ||||||
|  |     confirmImportMsg: "Сигурни ли сте за импортирането на архива? Моля, уверете се, че сте избрали правилната опция за импортиране.", | ||||||
|  |     twoFAVerifyLabel: "Моля, въведете вашия токен код, за да проверите дали 2FA работи", | ||||||
|  |     tokenValidSettingsMsg: "Токен кодът е валиден! Вече можете да запазите настройките за 2FA.", | ||||||
|  |     confirmEnableTwoFAMsg: "Сигурни ли сте, че желаете да активирате 2FA?", | ||||||
|  |     confirmDisableTwoFAMsg: "Сигурни ли сте, че желаете да изключите 2FA?", | ||||||
|  |     Settings: "Настройки", | ||||||
|  |     Dashboard: "Табло", | ||||||
|  |     "New Update": "Нова актуализация", | ||||||
|  |     Language: "Език", | ||||||
|  |     Appearance: "Изглед", | ||||||
|  |     Theme: "Тема", | ||||||
|  |     General: "Общи", | ||||||
|  |     Version: "Версия", | ||||||
|  |     "Check Update On GitHub": "Провери за актуализация в GitHub", | ||||||
|  |     List: "Списък", | ||||||
|  |     Add: "Добави", | ||||||
|  |     "Add New Monitor": "Добави монитор", | ||||||
|  |     "Quick Stats": "Кратка статистика", | ||||||
|  |     Up: "Достъпни", | ||||||
|  |     Down: "Недостъпни", | ||||||
|  |     Pending: "В изчакване", | ||||||
|  |     Unknown: "Неизвестни", | ||||||
|  |     Pause: "В пауза", | ||||||
|  |     Name: "Име", | ||||||
|  |     Status: "Статус", | ||||||
|  |     DateTime: "Дата и час", | ||||||
|  |     Message: "Съобщение", | ||||||
|  |     "No important events": "Няма важни събития", | ||||||
|  |     Resume: "Възобнови", | ||||||
|  |     Edit: "Редактирай", | ||||||
|  |     Delete: "Изтрий", | ||||||
|  |     Current: "Текущ", | ||||||
|  |     Uptime: "Време на работа", | ||||||
|  |     "Cert Exp.": "Вал. сертификат", | ||||||
|  |     days: "дни", | ||||||
|  |     day: "ден", | ||||||
|  |     "-day": "-ден", | ||||||
|  |     hour: "час", | ||||||
|  |     "-hour": "-час", | ||||||
|  |     Response: "Отговор", | ||||||
|  |     Ping: "Пинг", | ||||||
|  |     "Monitor Type": "Монитор тип", | ||||||
|  |     Keyword: "Ключова дума", | ||||||
|  |     "Friendly Name": "Псевдоним", | ||||||
|  |     URL: "URL Адрес", | ||||||
|  |     Hostname: "Име на хост", | ||||||
|  |     Port: "Порт", | ||||||
|  |     "Heartbeat Interval": "Честота на проверка", | ||||||
|  |     Retries: "Повторни опити", | ||||||
|  |     "Heartbeat Retry Interval": "Честота на повторните опити", | ||||||
|  |     Advanced: "Разширени", | ||||||
|  |     "Upside Down Mode": "Обърнат режим", | ||||||
|  |     "Max. Redirects": "Макс. брой пренасочвания", | ||||||
|  |     "Accepted Status Codes": "Допустими статус кодове", | ||||||
|  |     Save: "Запази", | ||||||
|  |     Notifications: "Известявания", | ||||||
|  |     "Not available, please setup.": "Не е налично. Моля, настройте.", | ||||||
|  |     "Setup Notification": "Настройка за известяване", | ||||||
|  |     Light: "Светла", | ||||||
|  |     Dark: "Тъмна", | ||||||
|  |     Auto: "Автоматично", | ||||||
|  |     "Theme - Heartbeat Bar": "Тема - поле проверки", | ||||||
|  |     Normal: "Нормално", | ||||||
|  |     Bottom: "Долу", | ||||||
|  |     None: "Без", | ||||||
|  |     Timezone: "Часова зона", | ||||||
|  |     "Search Engine Visibility": "Видимост за търсачки", | ||||||
|  |     "Allow indexing": "Разреши индексиране", | ||||||
|  |     "Discourage search engines from indexing site": "Обезкуражи индексирането на сайта от търсачките", | ||||||
|  |     "Change Password": "Промени парола", | ||||||
|  |     "Current Password": "Текуща парола", | ||||||
|  |     "New Password": "Нова парола", | ||||||
|  |     "Repeat New Password": "Повторете новата парола", | ||||||
|  |     "Update Password": "Актуализирай парола", | ||||||
|  |     "Disable Auth": "Изключи удостоверяване", | ||||||
|  |     "Enable Auth": "Включи удостоверяване", | ||||||
|  |     Logout: "Изход от профила", | ||||||
|  |     Leave: "Напускам", | ||||||
|  |     "I understand, please disable": "Разбирам. Моля, изключи", | ||||||
|  |     Confirm: "Потвърди", | ||||||
|  |     Yes: "Да", | ||||||
|  |     No: "Не", | ||||||
|  |     Username: "Потребител", | ||||||
|  |     Password: "Парола", | ||||||
|  |     "Remember me": "Запомни ме", | ||||||
|  |     Login: "Вход", | ||||||
|  |     "No Monitors, please": "Моля, без монитори", | ||||||
|  |     "add one": "добави един", | ||||||
|  |     "Notification Type": "Тип известяване", | ||||||
|  |     Email: "Имейл", | ||||||
|  |     Test: "Тест", | ||||||
|  |     "Certificate Info": "Информация за сертификат", | ||||||
|  |     "Resolver Server": "Преобразуващ (DNS) сървър", | ||||||
|  |     "Resource Record Type": "Тип запис", | ||||||
|  |     "Last Result": "Последен резултат", | ||||||
|  |     "Create your admin account": "Създаване на администриращ акаунт", | ||||||
|  |     "Repeat Password": "Повторете паролата", | ||||||
|  |     "Import Backup": "Импорт на архив", | ||||||
|  |     "Export Backup": "Експорт на архив", | ||||||
|  |     Export: "Експорт", | ||||||
|  |     Import: "Импорт", | ||||||
|  |     respTime: "Време за отговор (ms)", | ||||||
|  |     notAvailableShort: "Няма", | ||||||
|  |     "Default enabled": "Включен по подразбиране", | ||||||
|  |     "Apply on all existing monitors": "Приложи върху всички съществуващи монитори", | ||||||
|  |     Create: "Създай", | ||||||
|  |     "Clear Data": "Изчисти данни", | ||||||
|  |     Events: "Събития", | ||||||
|  |     Heartbeats: "Проверки", | ||||||
|  |     "Auto Get": "Автоматияно получаване", | ||||||
|  |     backupDescription: "Можете да архивирате всички монитори и всички известия в JSON файл.", | ||||||
|  |     backupDescription2: "PS: Данни за история и събития не са включени.", | ||||||
|  |     backupDescription3: "Чувствителни данни, като токен кодове за известяване, се съдържат в експортирания файл. Моля, бъдете внимателни с неговото съхранение.", | ||||||
|  |     alertNoFile: "Моля, изберете файл за импортиране.", | ||||||
|  |     alertWrongFileType: "Моля, изберете JSON файл.", | ||||||
|  |     "Clear all statistics": "Изчисти всички статистики", | ||||||
|  |     "Skip existing": "Пропусни съществуващите", | ||||||
|  |     Overwrite: "Презапиши", | ||||||
|  |     Options: "Опции", | ||||||
|  |     "Keep both": "Запази двете", | ||||||
|  |     "Verify Token": "Проверка на токен код", | ||||||
|  |     "Setup 2FA": "Настройка 2FA", | ||||||
|  |     "Enable 2FA": "Включи 2FA", | ||||||
|  |     "Disable 2FA": "Изключи 2FA", | ||||||
|  |     "2FA Settings": "Настройки 2FA", | ||||||
|  |     "Two Factor Authentication": "Двуфакторно удостоверяване", | ||||||
|  |     Active: "Активно", | ||||||
|  |     Inactive: "Неактивно", | ||||||
|  |     Token: "Токен код", | ||||||
|  |     "Show URI": "Покажи URI", | ||||||
|  |     Tags: "Етикети", | ||||||
|  |     "Add New below or Select...": "Добави нов по-долу или избери...", | ||||||
|  |     "Tag with this name already exist.": "Етикет с това име вече съществува.", | ||||||
|  |     "Tag with this value already exist.": "Етикет с тази стойност вече съществува.", | ||||||
|  |     color: "цвят", | ||||||
|  |     "value (optional)": "стойност (по желание)", | ||||||
|  |     Gray: "Сиво", | ||||||
|  |     Red: "Червено", | ||||||
|  |     Orange: "Оранжево", | ||||||
|  |     Green: "Зелено", | ||||||
|  |     Blue: "Синьо", | ||||||
|  |     Indigo: "Индиго", | ||||||
|  |     Purple: "Лилаво", | ||||||
|  |     Pink: "Розово", | ||||||
|  |     "Search...": "Търси...", | ||||||
|  |     "Avg. Ping": "Ср. пинг", | ||||||
|  |     "Avg. Response": "Ср. отговор", | ||||||
|  |     "Entry Page": "Основна страница", | ||||||
|  |     statusPageNothing: "Все още няма нищо тук. Моля, добавете група или монитор.", | ||||||
|  |     "No Services": "Няма Услуги", | ||||||
|  |     "All Systems Operational": "Всички системи функционират", | ||||||
|  |     "Partially Degraded Service": "Частично влошена услуга", | ||||||
|  |     "Degraded Service": "Влошена услуга", | ||||||
|  |     "Add Group": "Добави група", | ||||||
|  |     "Add a monitor": "Добави монитор", | ||||||
|  |     "Edit Status Page": "Редактирай статус страница", | ||||||
|  |     "Go to Dashboard": "Към Таблото", | ||||||
|  | }; | ||||||
|  | @ -126,57 +126,57 @@ export default { | ||||||
|     backupDescription3: "Følsom data, f.eks. underretnings-tokener, er inkluderet i eksportfilen. Gem den sikkert.", |     backupDescription3: "Følsom data, f.eks. underretnings-tokener, er inkluderet i eksportfilen. Gem den sikkert.", | ||||||
|     alertNoFile: "Vælg en fil der skal importeres.", |     alertNoFile: "Vælg en fil der skal importeres.", | ||||||
|     alertWrongFileType: "Vælg venligst en JSON-fil.", |     alertWrongFileType: "Vælg venligst en JSON-fil.", | ||||||
|     twoFAVerifyLabel: "Please type in your token to verify that 2FA is working", |     twoFAVerifyLabel: "Indtast venligst dit token for at bekræfte, at 2FA fungerer", | ||||||
|     tokenValidSettingsMsg: "Token is valid! You can now save the 2FA settings.", |     tokenValidSettingsMsg: "Token er gyldigt! Du kan nu gemme 2FA -indstillingerne.", | ||||||
|     confirmEnableTwoFAMsg: "Are you sure you want to enable 2FA?", |     confirmEnableTwoFAMsg: "Er du sikker på at du vil aktivere 2FA?", | ||||||
|     confirmDisableTwoFAMsg: "Are you sure you want to disable 2FA?", |     confirmDisableTwoFAMsg: "Er du sikker på at du vil deaktivere 2FA?", | ||||||
|     "Apply on all existing monitors": "Apply on all existing monitors", |     "Apply on all existing monitors": "Anvend på alle eksisterende overvågere", | ||||||
|     "Verify Token": "Verify Token", |     "Verify Token": "Verificere Token", | ||||||
|     "Setup 2FA": "Setup 2FA", |     "Setup 2FA": "Opsæt 2FA", | ||||||
|     "Enable 2FA": "Enable 2FA", |     "Enable 2FA": "Aktiver 2FA", | ||||||
|     "Disable 2FA": "Disable 2FA", |     "Disable 2FA": "Deaktiver 2FA", | ||||||
|     "2FA Settings": "2FA Settings", |     "2FA Settings": "2FA Indstillinger", | ||||||
|     "Two Factor Authentication": "Two Factor Authentication", |     "Two Factor Authentication": "To-Faktor Autentificering", | ||||||
|     Active: "Active", |     Active: "Aktive", | ||||||
|     Inactive: "Inactive", |     Inactive: "Inaktive", | ||||||
|     Token: "Token", |     Token: "Token", | ||||||
|     "Show URI": "Show URI", |     "Show URI": "Vis URI", | ||||||
|     "Clear all statistics": "Clear all Statistics", |     "Clear all statistics": "Ryd alle Statistikker", | ||||||
|     retryCheckEverySecond: "Retry every {0} seconds.", |     retryCheckEverySecond: "Prøv igen hvert {0} sekund.", | ||||||
|     importHandleDescription: "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.", |     importHandleDescription: "Vælg 'Spring over eksisterende', hvis du vil springe over hver overvåger eller underretning med samme navn. 'Overskriv' sletter alle eksisterende overvågere og underretninger.", | ||||||
|     confirmImportMsg: "Are you sure to import the backup? Please make sure you've selected the right import option.", |     confirmImportMsg: "Er du sikker på at importere sikkerhedskopien? Sørg for, at du har valgt den rigtige importindstilling.", | ||||||
|     "Heartbeat Retry Interval": "Heartbeat Retry Interval", |     "Heartbeat Retry Interval": "Heartbeat Gentagelsesinterval", | ||||||
|     "Import Backup": "Import Backup", |     "Import Backup": "Importer Backup", | ||||||
|     "Export Backup": "Export Backup", |     "Export Backup": "Eksporter Backup", | ||||||
|     "Skip existing": "Skip existing", |     "Skip existing": "Spring over eksisterende", | ||||||
|     Overwrite: "Overwrite", |     Overwrite: "Overskriv", | ||||||
|     Options: "Options", |     Options: "Valgmuligheder", | ||||||
|     "Keep both": "Keep both", |     "Keep both": "Behold begge", | ||||||
|     Tags: "Tags", |     Tags: "Tags", | ||||||
|     "Add New below or Select...": "Add New below or Select...", |     "Add New below or Select...": "Tilføj Nyt nedenfor eller Vælg ...", | ||||||
|     "Tag with this name already exist.": "Tag with this name already exist.", |     "Tag with this name already exist.": "Et Tag med dette navn findes allerede.", | ||||||
|     "Tag with this value already exist.": "Tag with this value already exist.", |     "Tag with this value already exist.": "Et Tag med denne værdi findes allerede.", | ||||||
|     color: "color", |     color: "farve", | ||||||
|     "value (optional)": "value (optional)", |     "value (optional)": "værdi (valgfri)", | ||||||
|     Gray: "Gray", |     Gray: "Grå", | ||||||
|     Red: "Red", |     Red: "Rød", | ||||||
|     Orange: "Orange", |     Orange: "Orange", | ||||||
|     Green: "Green", |     Green: "Grøn", | ||||||
|     Blue: "Blue", |     Blue: "Blå", | ||||||
|     Indigo: "Indigo", |     Indigo: "Indigo", | ||||||
|     Purple: "Purple", |     Purple: "Lilla", | ||||||
|     Pink: "Pink", |     Pink: "Pink", | ||||||
|     "Search...": "Search...", |     "Search...": "Søg...", | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Gns. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Gns. Respons", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Side", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     "statusPageNothing": "Intet her, tilføj venligst en Gruppe eller en Overvåger.", | ||||||
|     "No Services": "No Services", |     "No Services": "Ingen Tjenester", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "Alle Systemer i Drift", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Delvist Forringet Service", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "Forringet Service", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "Tilføj Gruppe", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "Tilføj en Overvåger", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "Rediger Statusside", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "Gå til Dashboard", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -169,7 +169,7 @@ export default { | ||||||
|     "Avg. Ping": "Durchsch. Ping", |     "Avg. Ping": "Durchsch. Ping", | ||||||
|     "Avg. Response": "Durchsch. Antwort", |     "Avg. Response": "Durchsch. Antwort", | ||||||
|     "Entry Page": "Einstiegsseite", |     "Entry Page": "Einstiegsseite", | ||||||
|     "statusPageNothing": "Nichts ist hier, bitte füge eine Gruppe oder Monitor hinzu.", |     statusPageNothing: "Nichts ist hier, bitte füge eine Gruppe oder Monitor hinzu.", | ||||||
|     "No Services": "Keine Dienste", |     "No Services": "Keine Dienste", | ||||||
|     "All Systems Operational": "Alle Systeme Betriebsbereit", |     "All Systems Operational": "Alle Systeme Betriebsbereit", | ||||||
|     "Partially Degraded Service": "Teilweise beeinträchtigter Dienst", |     "Partially Degraded Service": "Teilweise beeinträchtigter Dienst", | ||||||
|  |  | ||||||
|  | @ -169,7 +169,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -109,74 +109,74 @@ export default { | ||||||
|     respTime: "Temps de réponse (ms)", |     respTime: "Temps de réponse (ms)", | ||||||
|     notAvailableShort: "N/A", |     notAvailableShort: "N/A", | ||||||
|     Create: "Créer", |     Create: "Créer", | ||||||
|     clearEventsMsg: "Are you sure want to delete all events for this monitor?", |     clearEventsMsg: "Êtes-vous sûr de vouloir supprimer tous les événements pour cette sonde ?", | ||||||
|     clearHeartbeatsMsg: "Are you sure want to delete all heartbeats for this monitor?", |     clearHeartbeatsMsg: "Êtes-vous sûr de vouloir supprimer tous les vérifications pour cette sonde ? Are you sure want to delete all heartbeats for this monitor?", | ||||||
|     confirmClearStatisticsMsg: "Are you sure want to delete ALL statistics?", |     confirmClearStatisticsMsg: "tes-vous sûr de vouloir supprimer tous les statistiques ?", | ||||||
|     "Clear Data": "Clear Data", |     "Clear Data": "Effacer les données", | ||||||
|     Events: "Events", |     Events: "Evénements", | ||||||
|     Heartbeats: "Heartbeats", |     Heartbeats: "Vérfications", | ||||||
|     "Auto Get": "Auto Get", |     "Auto Get": "Auto Get", | ||||||
|     enableDefaultNotificationDescription: "For every new monitor this notification will be enabled by default. You can still disable the notification separately for each monitor.", |     enableDefaultNotificationDescription: "Pour chaque nouvelle sonde, cette notification sera activée par défaut. Vous pouvez toujours désactiver la notification séparément pour chaque sonde.", | ||||||
|     "Default enabled": "Default enabled", |     "Default enabled": "Activé par défaut", | ||||||
|     "Also apply to existing monitors": "Also apply to existing monitors", |     "Also apply to existing monitors": "S'applique également aux sondes existantes", | ||||||
|     Export: "Export", |     Export: "Exporter", | ||||||
|     Import: "Import", |     Import: "Importer", | ||||||
|     backupDescription: "You can backup all monitors and all notifications into a JSON file.", |     backupDescription: "Vous pouvez sauvegarder toutes les sondes et toutes les notifications dans un fichier JSON.", | ||||||
|     backupDescription2: "PS: History and event data is not included.", |     backupDescription2: "PS: Les données relatives à l'historique et aux événements ne sont pas incluses.", | ||||||
|     backupDescription3: "Sensitive data such as notification tokens is included in the export file, please keep it carefully.", |     backupDescription3: "Les données sensibles telles que les jetons de notification sont incluses dans le fichier d'exportation, veuillez les conserver soigneusement.", | ||||||
|     alertNoFile: "Please select a file to import.", |     alertNoFile: "Veuillez sélectionner un fichier à importer.", | ||||||
|     alertWrongFileType: "Please select a JSON file.", |     alertWrongFileType: "Veuillez sélectionner un fichier JSON à importer.", | ||||||
|     twoFAVerifyLabel: "Please type in your token to verify that 2FA is working", |     twoFAVerifyLabel: "Veuillez saisir votre jeton pour vérifier que le système 2FA fonctionne.", | ||||||
|     tokenValidSettingsMsg: "Token is valid! You can now save the 2FA settings.", |     tokenValidSettingsMsg: "Le jeton est valide ! Vous pouvez maintenant sauvegarder les paramètres 2FA.", | ||||||
|     confirmEnableTwoFAMsg: "Are you sure you want to enable 2FA?", |     confirmEnableTwoFAMsg: "Êtes-vous sûr de vouloir activer le 2FA ?", | ||||||
|     confirmDisableTwoFAMsg: "Are you sure you want to disable 2FA?", |     confirmDisableTwoFAMsg: "Êtes-vous sûr de vouloir désactiver le 2FA ?", | ||||||
|     "Apply on all existing monitors": "Apply on all existing monitors", |     "Apply on all existing monitors": "Appliquer sur toutes les sondes existantes", | ||||||
|     "Verify Token": "Verify Token", |     "Verify Token": "Vérifier le jeton", | ||||||
|     "Setup 2FA": "Setup 2FA", |     "Setup 2FA": "Configurer 2FA", | ||||||
|     "Enable 2FA": "Enable 2FA", |     "Enable 2FA": "Activer 2FA", | ||||||
|     "Disable 2FA": "Disable 2FA", |     "Disable 2FA": "Désactiver 2FA", | ||||||
|     "2FA Settings": "2FA Settings", |     "2FA Settings": "Paramètres 2FA", | ||||||
|     "Two Factor Authentication": "Two Factor Authentication", |     "Two Factor Authentication": "Authentification à deux facteurs", | ||||||
|     Active: "Active", |     Active: "Actif", | ||||||
|     Inactive: "Inactive", |     Inactive: "Inactif", | ||||||
|     Token: "Token", |     Token: "Jeton", | ||||||
|     "Show URI": "Show URI", |     "Show URI": "Afficher l'URI", | ||||||
|     "Clear all statistics": "Clear all Statistics", |     "Clear all statistics": "Effacer touutes les statistiques", | ||||||
|     retryCheckEverySecond: "Retry every {0} seconds.", |     retryCheckEverySecond: "Réessayer toutes les {0} secondes.", | ||||||
|     importHandleDescription: "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.", |     importHandleDescription: "Choisissez 'Ignorer l'existant' si vous voulez ignorer chaque sonde ou notification portant le même nom. L'option 'Écraser' supprime tous les sondes et notifications existantes.", | ||||||
|     confirmImportMsg: "Are you sure to import the backup? Please make sure you've selected the right import option.", |     confirmImportMsg: "Êtes-vous sûr d'importer la sauvegarde ? Veuillez vous assurer que vous avez sélectionné la bonne option d'importation.", | ||||||
|     "Heartbeat Retry Interval": "Heartbeat Retry Interval", |     "Heartbeat Retry Interval": "Réessayer l'intervale de vérification", | ||||||
|     "Import Backup": "Import Backup", |     "Import Backup": "Importation de la sauvegarde", | ||||||
|     "Export Backup": "Export Backup", |     "Export Backup": "Exportation de la sauvegarde", | ||||||
|     "Skip existing": "Skip existing", |     "Skip existing": "Sauter l'existant", | ||||||
|     Overwrite: "Overwrite", |     Overwrite: "Ecraser", | ||||||
|     Options: "Options", |     Options: "Options", | ||||||
|     "Keep both": "Keep both", |     "Keep both": "Garder les deux", | ||||||
|     Tags: "Tags", |     Tags: "Étiquettes", | ||||||
|     "Add New below or Select...": "Add New below or Select...", |     "Add New below or Select...": "Ajouter nouveau ci-dessous ou sélectionner...", | ||||||
|     "Tag with this name already exist.": "Tag with this name already exist.", |     "Tag with this name already exist.": "Une étiquette portant ce nom existe déjà.", | ||||||
|     "Tag with this value already exist.": "Tag with this value already exist.", |     "Tag with this value already exist.": "Une étiquette avec cette valeur existe déjà.", | ||||||
|     color: "color", |     color: "couleur", | ||||||
|     "value (optional)": "value (optional)", |     "value (optional)": "valeur (facultatif)", | ||||||
|     Gray: "Gray", |     Gray: "Gris", | ||||||
|     Red: "Red", |     Red: "Rouge", | ||||||
|     Orange: "Orange", |     Orange: "Orange", | ||||||
|     Green: "Green", |     Green: "Vert", | ||||||
|     Blue: "Blue", |     Blue: "Bleu", | ||||||
|     Indigo: "Indigo", |     Indigo: "Indigo", | ||||||
|     Purple: "Purple", |     Purple: "Violet", | ||||||
|     Pink: "Pink", |     Pink: "Rose", | ||||||
|     "Search...": "Search...", |     "Search...": "Rechercher...", | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Ping moyen", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Réponse moyenne", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Page d'accueil", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     "statusPageNothing": "Rien ici, veuillez ajouter un groupe ou une sonde.", | ||||||
|     "No Services": "No Services", |     "No Services": "Aucun service", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "Tous les systèmes sont opérationnels", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Service partiellement dégradé", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "Service dégradé", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "Ajouter un groupe", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "Ajouter une sonde", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "Modifier la page de statut", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "Accéder au tableau de bord", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -73,7 +73,7 @@ export default { | ||||||
|     "Heartbeat Retry Interval": "Intervallo tra un tentativo di controllo e l'altro", |     "Heartbeat Retry Interval": "Intervallo tra un tentativo di controllo e l'altro", | ||||||
|     Advanced: "Avanzate", |     Advanced: "Avanzate", | ||||||
|     "Upside Down Mode": "Modalità capovolta", |     "Upside Down Mode": "Modalità capovolta", | ||||||
|     "Max. Redirects": "Redirezionamenti massimi", |     "Max. Redirects": "Reindirizzamenti massimi", | ||||||
|     "Accepted Status Codes": "Codici di stato accettati", |     "Accepted Status Codes": "Codici di stato accettati", | ||||||
|     Save: "Salva", |     Save: "Salva", | ||||||
|     Notifications: "Notifiche", |     Notifications: "Notifiche", | ||||||
|  | @ -166,16 +166,16 @@ export default { | ||||||
|     Purple: "Viola", |     Purple: "Viola", | ||||||
|     Pink: "Rosa", |     Pink: "Rosa", | ||||||
|     "Search...": "Cerca...", |     "Search...": "Cerca...", | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Ping medio", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Risposta media", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     "statusPageNothing": "Non c'è nulla qui, aggiungere un gruppo oppure un monitoraggio.", | ||||||
|     "No Services": "No Services", |     "No Services": "Nessun Servizio", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "Tutti i sistemi sono operativi", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Servizio parzialmente degradato", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "Servizio degradato", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "Aggiungi Gruppo", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "Aggiungi un monitoraggio", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "Modifica pagina di stato", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "Vai al Cruscotto", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -87,7 +87,7 @@ export default { | ||||||
|     "Allow indexing": "Indexering toestaan", |     "Allow indexing": "Indexering toestaan", | ||||||
|     "Discourage search engines from indexing site": "Ontmoedig zoekmachines om de site te indexeren", |     "Discourage search engines from indexing site": "Ontmoedig zoekmachines om de site te indexeren", | ||||||
|     "Change Password": "Verander wachtwoord", |     "Change Password": "Verander wachtwoord", | ||||||
|     "Current Password": "Huidig wachtwoord", |     "Current Password": "Huidig wachtwoord", | ||||||
|     "New Password": "Nieuw wachtwoord", |     "New Password": "Nieuw wachtwoord", | ||||||
|     "Repeat New Password": "Herhaal nieuw wachtwoord", |     "Repeat New Password": "Herhaal nieuw wachtwoord", | ||||||
|     "Update Password": "Vernieuw wachtwoord", |     "Update Password": "Vernieuw wachtwoord", | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -1,6 +1,6 @@ | ||||||
| export default { | export default { | ||||||
|     languageName: "Polski", |     languageName: "Polski", | ||||||
|     checkEverySecond: "Sprawdzaj co {0} sekund.", |     checkEverySecond: "Sprawdzam co {0} sekund.", | ||||||
|     retriesDescription: "Maksymalna liczba powtórzeń, zanim usługa zostanie oznaczona jako wyłączona i zostanie wysłane powiadomienie", |     retriesDescription: "Maksymalna liczba powtórzeń, zanim usługa zostanie oznaczona jako wyłączona i zostanie wysłane powiadomienie", | ||||||
|     ignoreTLSError: "Ignoruj błąd TLS/SSL dla stron HTTPS", |     ignoreTLSError: "Ignoruj błąd TLS/SSL dla stron HTTPS", | ||||||
|     upsideDownModeDescription: "Odwróć status do góry nogami. Jeśli usługa jest osiągalna, to jest oznaczona jako niedostępna.", |     upsideDownModeDescription: "Odwróć status do góry nogami. Jeśli usługa jest osiągalna, to jest oznaczona jako niedostępna.", | ||||||
|  | @ -169,14 +169,14 @@ export default { | ||||||
|     "Search...": "Szukaj...", |     "Search...": "Szukaj...", | ||||||
|     "Avg. Ping": "Średni ping", |     "Avg. Ping": "Średni ping", | ||||||
|     "Avg. Response": "Średnia odpowiedź", |     "Avg. Response": "Średnia odpowiedź", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Wejdź na stronę", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     "statusPageNothing": "Nic tu nie ma, dodaj monitor lub grupę.", | ||||||
|     "No Services": "No Services", |     "No Services": "Brak usług", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "Wszystkie systemy działają", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Częściowy błąd usługi", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "Błąd usługi", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "Dodaj grupę", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "Dodaj monitoe", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "Edytuj stronę statusu", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "Idź do panelu", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Response": "Resposta Média. ", |     "Avg. Response": "Resposta Média. ", | ||||||
|     "Status Page": "Página de Status", |     "Status Page": "Página de Status", | ||||||
|     "Entry Page": "Página de entrada", |     "Entry Page": "Página de entrada", | ||||||
|     "statusPageNothing": "Nada aqui, por favor, adicione um grupo ou monitor.", |     statusPageNothing: "Nada aqui, por favor, adicione um grupo ou monitor.", | ||||||
|     "No Services": "Nenhum Serviço", |     "No Services": "Nenhum Serviço", | ||||||
|     "All Systems Operational": "Todos os Serviços Operacionais", |     "All Systems Operational": "Todos os Serviços Operacionais", | ||||||
|     "Partially Degraded Service": "Serviço parcialmente degradado", |     "Partially Degraded Service": "Serviço parcialmente degradado", | ||||||
|  |  | ||||||
|  | @ -1,11 +1,11 @@ | ||||||
| export default { | export default { | ||||||
|     languageName: "Русский", |     languageName: "Русский", | ||||||
|     checkEverySecond: "Проверять каждые {0} секунд.", |     checkEverySecond: "проверять каждые {0} секунд", | ||||||
|     retriesDescription: "Максимальное количество попыток перед пометкой сервиса как недоступного и отправкой уведомления", |     retriesDescription: "Максимальное количество попыток перед пометкой сервиса как недоступного и отправкой уведомления", | ||||||
|     ignoreTLSError: "Игнорировать ошибку TLS/SSL для HTTPS сайтов", |     ignoreTLSError: "Игнорировать ошибку TLS/SSL для HTTPS сайтов", | ||||||
|     upsideDownModeDescription: "Реверс статуса сервиса. Если сервис доступен, то он помечается как НЕДОСТУПНЫЙ.", |     upsideDownModeDescription: "Реверс статуса сервиса. Если сервис доступен, то он помечается как НЕДОСТУПНЫЙ.", | ||||||
|     maxRedirectDescription: "Максимальное количество перенаправлений. Поставьте 0, чтобы отключить перенаправления.", |     maxRedirectDescription: "Максимальное количество перенаправлений. Поставьте 0, чтобы отключить перенаправления.", | ||||||
|     acceptedStatusCodesDescription: "Выберите коды статусов, которые должны считаться за успешный ответ.", |     acceptedStatusCodesDescription: "Выберите коды статусов для определения доступности сервиса.", | ||||||
|     passwordNotMatchMsg: "Повтор пароля не совпадает.", |     passwordNotMatchMsg: "Повтор пароля не совпадает.", | ||||||
|     notificationDescription: "Привяжите уведомления к мониторам.", |     notificationDescription: "Привяжите уведомления к мониторам.", | ||||||
|     keywordDescription: "Поиск слова в чистом HTML или в JSON-ответе (чувствительно к регистру)", |     keywordDescription: "Поиск слова в чистом HTML или в JSON-ответе (чувствительно к регистру)", | ||||||
|  | @ -16,7 +16,7 @@ export default { | ||||||
|     rrtypeDescription: "Выберите тип ресурсной записи, который вы хотите отслеживать", |     rrtypeDescription: "Выберите тип ресурсной записи, который вы хотите отслеживать", | ||||||
|     pauseMonitorMsg: "Вы действительно хотите поставить на паузу?", |     pauseMonitorMsg: "Вы действительно хотите поставить на паузу?", | ||||||
|     Settings: "Настройки", |     Settings: "Настройки", | ||||||
|     Dashboard: "Панель", |     Dashboard: "Панель мониторов", | ||||||
|     "New Update": "Обновление", |     "New Update": "Обновление", | ||||||
|     Language: "Язык", |     Language: "Язык", | ||||||
|     Appearance: "Внешний вид", |     Appearance: "Внешний вид", | ||||||
|  | @ -28,8 +28,8 @@ export default { | ||||||
|     Add: "Добавить", |     Add: "Добавить", | ||||||
|     "Add New Monitor": "Новый монитор", |     "Add New Monitor": "Новый монитор", | ||||||
|     "Quick Stats": "Статистика", |     "Quick Stats": "Статистика", | ||||||
|     Up: "Доступно", |     Up: "Доступен", | ||||||
|     Down: "Недоступно", |     Down: "Н/Д", | ||||||
|     Pending: "Ожидание", |     Pending: "Ожидание", | ||||||
|     Unknown: "Неизвестно", |     Unknown: "Неизвестно", | ||||||
|     Pause: "Пауза", |     Pause: "Пауза", | ||||||
|  | @ -61,7 +61,7 @@ export default { | ||||||
|     Retries: "Попыток", |     Retries: "Попыток", | ||||||
|     Advanced: "Дополнительно", |     Advanced: "Дополнительно", | ||||||
|     "Upside Down Mode": "Режим реверса статуса", |     "Upside Down Mode": "Режим реверса статуса", | ||||||
|     "Max. Redirects": "Макс. перенаправлений", |     "Max. Redirects": "Макс. количество перенаправлений", | ||||||
|     "Accepted Status Codes": "Допустимые коды статуса", |     "Accepted Status Codes": "Допустимые коды статуса", | ||||||
|     Save: "Сохранить", |     Save: "Сохранить", | ||||||
|     Notifications: "Уведомления", |     Notifications: "Уведомления", | ||||||
|  | @ -112,18 +112,18 @@ export default { | ||||||
|     clearEventsMsg: "Вы действительно хотите удалить всю статистику событий данного монитора?", |     clearEventsMsg: "Вы действительно хотите удалить всю статистику событий данного монитора?", | ||||||
|     clearHeartbeatsMsg: "Вы действительно хотите удалить всю статистику опросов данного монитора?", |     clearHeartbeatsMsg: "Вы действительно хотите удалить всю статистику опросов данного монитора?", | ||||||
|     confirmClearStatisticsMsg: "Вы действительно хотите удалить ВСЮ статистику?", |     confirmClearStatisticsMsg: "Вы действительно хотите удалить ВСЮ статистику?", | ||||||
|     "Clear Data": "Очистить статистику", |     "Clear Data": "Удалить статистику", | ||||||
|     Events: "События", |     Events: "События", | ||||||
|     Heartbeats: "Опросы", |     Heartbeats: "Опросы", | ||||||
|     "Auto Get": "Авто-получение", |     "Auto Get": "Авто-получение", | ||||||
|     enableDefaultNotificationDescription: "Для каждого нового монитора это уведомление будет включено по умолчанию. Вы всё ещё можете отключить уведомления в каждом мониторе отдельно.", |     enableDefaultNotificationDescription: "Для каждого нового монитора это уведомление будет включено по умолчанию. Вы всё ещё можете отключить уведомления в каждом мониторе отдельно.", | ||||||
|     "Default enabled": "Использовать по умолчанию", |     "Default enabled": "Использовать по умолчанию", | ||||||
|     "Also apply to existing monitors": "Применить к существующим мониторам", |     "Also apply to existing monitors": "Применить к существующим мониторам", | ||||||
|     Export: "Экспорт", |     Export: "Резервная копия", | ||||||
|     Import: "Импорт", |     Import: "Восстановление", | ||||||
|     backupDescription: "Вы можете сохранить резервную копию всех мониторов и уведомлений в виде JSON-файла", |     backupDescription: "Вы можете сохранить резервную копию всех мониторов и уведомлений в виде JSON-файла", | ||||||
|     backupDescription2: "P.S.: История и события сохранены не будут.", |     backupDescription2: "P.S. История и события сохранены не будут", | ||||||
|     backupDescription3: "Важные данные, такие как токены уведомлений, добавляются при экспорте, поэтому храните файлы в безопасном месте.", |     backupDescription3: "Важные данные, такие как токены уведомлений, добавляются при экспорте, поэтому храните файлы в безопасном месте", | ||||||
|     alertNoFile: "Выберите файл для импорта.", |     alertNoFile: "Выберите файл для импорта.", | ||||||
|     alertWrongFileType: "Выберите JSON-файл.", |     alertWrongFileType: "Выберите JSON-файл.", | ||||||
|     twoFAVerifyLabel: "Пожалуйста, введите свой токен, чтобы проверить работу 2FA", |     twoFAVerifyLabel: "Пожалуйста, введите свой токен, чтобы проверить работу 2FA", | ||||||
|  | @ -141,19 +141,19 @@ export default { | ||||||
|     Inactive: "Неактивно", |     Inactive: "Неактивно", | ||||||
|     Token: "Токен", |     Token: "Токен", | ||||||
|     "Show URI": "Показать URI", |     "Show URI": "Показать URI", | ||||||
|     "Clear all statistics": "Очистить всю статистику", |     "Clear all statistics": "Удалить всю статистику", | ||||||
|     retryCheckEverySecond: "Повторять каждые {0} секунд.", |     retryCheckEverySecond: "повторять каждые {0} секунд", | ||||||
|     importHandleDescription: "Выберите 'Пропустить существующие' если вы хотите пропустить каждый монитор или уведомление с таким же именем. 'Перезаписать' удалит каждый существующий монитор или уведомление.", |     importHandleDescription: "Выберите \"Пропустить существующие\", если вы хотите пропустить каждый монитор или уведомление с таким же именем. \"Перезаписать\" удалит каждый существующий монитор или уведомление и добавит заново. Вариант \"Не проверять\" принудительно восстанавливает все мониторы и уведомления, даже если они уже существуют.", | ||||||
|     confirmImportMsg: "Вы действительно хотите восстановить резервную копию? Убедитесь, что вы выбрали подходящий вариант импорта.", |     confirmImportMsg: "Вы действительно хотите восстановить резервную копию? Убедитесь, что вы выбрали подходящий вариант импорта.", | ||||||
|     "Heartbeat Retry Interval": "Интервал повтора опроса", |     "Heartbeat Retry Interval": "Интервал повтора опроса", | ||||||
|     "Import Backup": "Импорт резервной копии", |     "Import Backup": "Восстановление резервной копии", | ||||||
|     "Export Backup": "Экспорт резервной копии", |     "Export Backup": "Резервная копия", | ||||||
|     "Skip existing": "Пропустить существующие", |     "Skip existing": "Пропустить существующие", | ||||||
|     Overwrite: "Перезаписать", |     Overwrite: "Перезаписать", | ||||||
|     Options: "Опции", |     Options: "Опции", | ||||||
|     "Keep both": "Оставить оба", |     "Keep both": "Не проверять", | ||||||
|     Tags: "Теги", |     Tags: "Теги", | ||||||
|     "Add New below or Select...": "Добавить новое ниже или выбрать...", |     "Add New below or Select...": "Добавить новый или выбрать...", | ||||||
|     "Tag with this name already exist.": "Такой тег уже существует.", |     "Tag with this name already exist.": "Такой тег уже существует.", | ||||||
|     "Tag with this value already exist.": "Тег с таким значением уже существует.", |     "Tag with this value already exist.": "Тег с таким значением уже существует.", | ||||||
|     color: "цвет", |     color: "цвет", | ||||||
|  | @ -167,16 +167,21 @@ export default { | ||||||
|     Purple: "Пурпурный", |     Purple: "Пурпурный", | ||||||
|     Pink: "Розовый", |     Pink: "Розовый", | ||||||
|     "Search...": "Поиск...", |     "Search...": "Поиск...", | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Средн. пинг", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Средн. ответ", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Главная страница", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Здесь пусто. Добавьте группу или монитор.", | ||||||
|     "No Services": "No Services", |     "No Services": "Нет сервисов", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "Все сервисы работают", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Сервисы частично не работают", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "Все сервисы не работают", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "Добавить группу", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "Добавить монитор", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "Редактировать", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "Панель мониторов", | ||||||
|  |     "Status Page": "Статус сервисов", | ||||||
|  |     "Discard": "Отмена", | ||||||
|  |     "Create Incident": "Создать инцидент", | ||||||
|  |     "Switch to Dark Theme": "Тёмная тема", | ||||||
|  |     "Switch to Light Theme": "Светлая тема", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -169,7 +169,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -126,57 +126,57 @@ export default { | ||||||
|     backupDescription3: "导出的文件中可能包含敏感信息,如消息通知的 Token 信息,请小心存放!", |     backupDescription3: "导出的文件中可能包含敏感信息,如消息通知的 Token 信息,请小心存放!", | ||||||
|     alertNoFile: "请选择一个文件导入", |     alertNoFile: "请选择一个文件导入", | ||||||
|     alertWrongFileType: "请选择一个 JSON 格式的文件", |     alertWrongFileType: "请选择一个 JSON 格式的文件", | ||||||
|     twoFAVerifyLabel: "Please type in your token to verify that 2FA is working", |     twoFAVerifyLabel: "请输入Token以验证2FA(二次验证)是否正常工作", | ||||||
|     tokenValidSettingsMsg: "Token is valid! You can now save the 2FA settings.", |     tokenValidSettingsMsg: "Token有效!您现在可以保存2FA(二次验证)设置", | ||||||
|     confirmEnableTwoFAMsg: "Are you sure you want to enable 2FA?", |     confirmEnableTwoFAMsg: "确定要启用2FA(二次验证)吗?", | ||||||
|     confirmDisableTwoFAMsg: "Are you sure you want to disable 2FA?", |     confirmDisableTwoFAMsg: "确定要禁用2FA(二次验证)吗?", | ||||||
|     "Apply on all existing monitors": "应用到所有监控项", |     "Apply on all existing monitors": "应用到所有监控项", | ||||||
|     "Verify Token": "Verify Token", |     "Verify Token": "验证Token", | ||||||
|     "Setup 2FA": "Setup 2FA", |     "Setup 2FA": "设置2FA", | ||||||
|     "Enable 2FA": "Enable 2FA", |     "Enable 2FA": "启用2FA", | ||||||
|     "Disable 2FA": "Disable 2FA", |     "Disable 2FA": "禁用2FA", | ||||||
|     "2FA Settings": "2FA Settings", |     "2FA Settings": "2FA设置", | ||||||
|     "Two Factor Authentication": "Two Factor Authentication", |     "Two Factor Authentication": "双因素认证", | ||||||
|     Active: "Active", |     Active: "有效", | ||||||
|     Inactive: "Inactive", |     Inactive: "无效", | ||||||
|     Token: "Token", |     Token: "Token", | ||||||
|     "Show URI": "Show URI", |     "Show URI": "显示URI", | ||||||
|     "Clear all statistics": "Clear all Statistics", |     "Clear all statistics": "清除所有统计数据", | ||||||
|     retryCheckEverySecond: "Retry every {0} seconds.", |     retryCheckEverySecond: "重试间隔 {0} 秒", | ||||||
|     importHandleDescription: "Choose 'Skip existing' if you want to skip every monitor or notification with the same name. 'Overwrite' will delete every existing monitor and notification.", |     importHandleDescription: "如果想跳过同名的监控项或通知,请选择“跳过”;“覆盖”将删除所有现有的监控项和通知。", | ||||||
|     confirmImportMsg: "Are you sure to import the backup? Please make sure you've selected the right import option.", |     confirmImportMsg: "确定要导入备份吗?请确保已经选择了正确的导入选项。", | ||||||
|     "Heartbeat Retry Interval": "Heartbeat Retry Interval", |     "Heartbeat Retry Interval": "心跳重试间隔", | ||||||
|     "Import Backup": "Import Backup", |     "Import Backup": "导入备份", | ||||||
|     "Export Backup": "Export Backup", |     "Export Backup": "导出备份", | ||||||
|     "Skip existing": "Skip existing", |     "Skip existing": "跳过", | ||||||
|     Overwrite: "Overwrite", |     Overwrite: "覆盖", | ||||||
|     Options: "Options", |     Options: "选项", | ||||||
|     "Keep both": "Keep both", |     "Keep both": "全部保留", | ||||||
|     Tags: "Tags", |     Tags: "标签", | ||||||
|     "Add New below or Select...": "Add New below or Select...", |     "Add New below or Select...": "在下面新增或选择...", | ||||||
|     "Tag with this name already exist.": "Tag with this name already exist.", |     "Tag with this name already exist.": "相同名称的标签已存在", | ||||||
|     "Tag with this value already exist.": "Tag with this value already exist.", |     "Tag with this value already exist.": "相同内容的标签已存在", | ||||||
|     color: "color", |     color: "颜色", | ||||||
|     "value (optional)": "value (optional)", |     "value (optional)": "值(可选)", | ||||||
|     Gray: "Gray", |     Gray: "灰色", | ||||||
|     Red: "Red", |     Red: "红色", | ||||||
|     Orange: "Orange", |     Orange: "橙色", | ||||||
|     Green: "Green", |     Green: "绿色", | ||||||
|     Blue: "Blue", |     Blue: "蓝色", | ||||||
|     Indigo: "Indigo", |     Indigo: "靛蓝", | ||||||
|     Purple: "Purple", |     Purple: "紫色", | ||||||
|     Pink: "Pink", |     Pink: "粉色", | ||||||
|     "Search...": "Search...", |     "Search...": "搜索...", | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "平均Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "平均响应", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "入口页面", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     "statusPageNothing": "这里什么也没有,请添加一个分组或一个监控项。", | ||||||
|     "No Services": "No Services", |     "No Services": "无服务", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "所有服务运行正常", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "部分服务出现故障", | ||||||
|     "Degraded Service": "Degraded Service", |     "Degraded Service": "全部服务出现故障", | ||||||
|     "Add Group": "Add Group", |     "Add Group": "新建分组", | ||||||
|     "Add a monitor": "Add a monitor", |     "Add a monitor": "添加监控项", | ||||||
|     "Edit Status Page": "Edit Status Page", |     "Edit Status Page": "编辑状态页", | ||||||
|     "Go to Dashboard": "Go to Dashboard", |     "Go to Dashboard": "前往仪表盘", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  | @ -170,7 +170,7 @@ export default { | ||||||
|     "Avg. Ping": "Avg. Ping", |     "Avg. Ping": "Avg. Ping", | ||||||
|     "Avg. Response": "Avg. Response", |     "Avg. Response": "Avg. Response", | ||||||
|     "Entry Page": "Entry Page", |     "Entry Page": "Entry Page", | ||||||
|     "statusPageNothing": "Nothing here, please add a group or a monitor.", |     statusPageNothing: "Nothing here, please add a group or a monitor.", | ||||||
|     "No Services": "No Services", |     "No Services": "No Services", | ||||||
|     "All Systems Operational": "All Systems Operational", |     "All Systems Operational": "All Systems Operational", | ||||||
|     "Partially Degraded Service": "Partially Degraded Service", |     "Partially Degraded Service": "Partially Degraded Service", | ||||||
|  |  | ||||||
|  | @ -322,6 +322,12 @@ | ||||||
|                     <p>لطفا از این امکان با دقت استفاده کنید.</p> |                     <p>لطفا از این امکان با دقت استفاده کنید.</p> | ||||||
|                 </template> |                 </template> | ||||||
| 
 | 
 | ||||||
|  |                 <template v-else-if="$i18n.locale === 'bg-BG' "> | ||||||
|  |                     <p>Сигурни ли сте, че желаете да <strong>изключите удостоверяването</strong>?</p> | ||||||
|  |                     <p>Използва се в случаите, когато <strong>има настроен алтернативен метод за удостоверяване</strong> преди Uptime Kuma, например Cloudflare Access.</p> | ||||||
|  |                     <p>Моля, използвайте внимателно.</p> | ||||||
|  |                 </template> | ||||||
|  | 
 | ||||||
|                 <!-- English (en) --> |                 <!-- English (en) --> | ||||||
|                 <template v-else> |                 <template v-else> | ||||||
|                     <p>Are you sure want to <strong>disable auth</strong>?</p> |                     <p>Are you sure want to <strong>disable auth</strong>?</p> | ||||||
|  | @ -350,8 +356,9 @@ import TwoFADialog from "../components/TwoFADialog.vue"; | ||||||
| dayjs.extend(utc); | dayjs.extend(utc); | ||||||
| dayjs.extend(timezone); | dayjs.extend(timezone); | ||||||
| 
 | 
 | ||||||
| import { timezoneList } from "../util-frontend"; | import { timezoneList, setPageLocale } from "../util-frontend"; | ||||||
| import { useToast } from "vue-toastification"; | import { useToast } from "vue-toastification"; | ||||||
|  | 
 | ||||||
| const toast = useToast(); | const toast = useToast(); | ||||||
| 
 | 
 | ||||||
| export default { | export default { | ||||||
|  | @ -387,6 +394,7 @@ export default { | ||||||
| 
 | 
 | ||||||
|         "$i18n.locale"() { |         "$i18n.locale"() { | ||||||
|             localStorage.locale = this.$i18n.locale; |             localStorage.locale = this.$i18n.locale; | ||||||
|  |             setPageLocale() | ||||||
|         }, |         }, | ||||||
|     }, |     }, | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -2,6 +2,7 @@ import dayjs from "dayjs"; | ||||||
| import timezone from "dayjs/plugin/timezone"; | import timezone from "dayjs/plugin/timezone"; | ||||||
| import utc from "dayjs/plugin/utc"; | import utc from "dayjs/plugin/utc"; | ||||||
| import timezones from "timezones-list"; | import timezones from "timezones-list"; | ||||||
|  | import { localeDirection, currentLocale } from "./i18n"; | ||||||
| 
 | 
 | ||||||
| dayjs.extend(utc); | dayjs.extend(utc); | ||||||
| dayjs.extend(timezone); | dayjs.extend(timezone); | ||||||
|  | @ -30,7 +31,7 @@ export function timezoneList() { | ||||||
|                 time: getTimezoneOffset(timezone.tzCode), |                 time: getTimezoneOffset(timezone.tzCode), | ||||||
|             }); |             }); | ||||||
|         } catch (e) { |         } catch (e) { | ||||||
|             console.log("Skip Timezone: " + timezone.tzCode); |             // Skipping not supported timezone.tzCode by dayjs
 | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|  | @ -48,3 +49,9 @@ export function timezoneList() { | ||||||
| 
 | 
 | ||||||
|     return result; |     return result; | ||||||
| } | } | ||||||
|  | 
 | ||||||
|  | export function setPageLocale() { | ||||||
|  |     const html = document.documentElement  | ||||||
|  |     html.setAttribute('lang', currentLocale() ) | ||||||
|  |     html.setAttribute('dir', localeDirection() ) | ||||||
|  |   } | ||||||
		Loading…
	
		Reference in a new issue