mirror of
https://github.com/louislam/uptime-kuma.git
synced 2024-11-28 01:04:05 +00:00
Merge branch 'master' into import-export
This commit is contained in:
commit
8f9a973ede
27 changed files with 975 additions and 174 deletions
15
README.md
15
README.md
|
@ -10,6 +10,17 @@ It is a self-hosted monitoring tool like "Uptime Robot".
|
||||||
|
|
||||||
<img src="https://louislam.net/uptimekuma/1.jpg" width="512" alt="" />
|
<img src="https://louislam.net/uptimekuma/1.jpg" width="512" alt="" />
|
||||||
|
|
||||||
|
## 🥔 Live Demo
|
||||||
|
|
||||||
|
Try it!
|
||||||
|
|
||||||
|
https://demo.uptime.kuma.pet
|
||||||
|
|
||||||
|
It is a 5 minutes live demo, all data will be deleted after that. The server is located at Tokyo, if you live far away from here, it may affact your experience. I suggest that you should install to try it.
|
||||||
|
|
||||||
|
VPS is sponsored by Uptime Kuma sponsors on [Open Collective](https://opencollective.com/uptime-kuma)! Thank you so much!
|
||||||
|
|
||||||
|
|
||||||
## ⭐ Features
|
## ⭐ Features
|
||||||
|
|
||||||
* Monitoring uptime for HTTP(s) / TCP / Ping / DNS Record.
|
* Monitoring uptime for HTTP(s) / TCP / Ping / DNS Record.
|
||||||
|
@ -66,6 +77,10 @@ I will mark requests/issues to the next milestone.
|
||||||
|
|
||||||
https://github.com/louislam/uptime-kuma/milestones
|
https://github.com/louislam/uptime-kuma/milestones
|
||||||
|
|
||||||
|
Project Plan:
|
||||||
|
|
||||||
|
https://github.com/louislam/uptime-kuma/projects/1
|
||||||
|
|
||||||
## 🖼 More Screenshots
|
## 🖼 More Screenshots
|
||||||
|
|
||||||
Dark Mode:
|
Dark Mode:
|
||||||
|
|
BIN
db/demo_kuma.db
Normal file
BIN
db/demo_kuma.db
Normal file
Binary file not shown.
28
package.json
28
package.json
|
@ -16,8 +16,6 @@
|
||||||
"dev": "vite --host",
|
"dev": "vite --host",
|
||||||
"start": "npm run start-server",
|
"start": "npm run start-server",
|
||||||
"start-server": "node server/server.js",
|
"start-server": "node server/server.js",
|
||||||
"start-demo-server": "set NODE_ENV=demo && node server/server.js",
|
|
||||||
"update": "",
|
|
||||||
"build": "vite build",
|
"build": "vite build",
|
||||||
"vite-preview-dist": "vite preview --host",
|
"vite-preview-dist": "vite preview --host",
|
||||||
"build-docker": "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.5.2 --target release . --push",
|
"build-docker": "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.5.2 --target release . --push",
|
||||||
|
@ -54,19 +52,19 @@
|
||||||
"express": "^4.17.1",
|
"express": "^4.17.1",
|
||||||
"express-basic-auth": "^1.2.0",
|
"express-basic-auth": "^1.2.0",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.0",
|
||||||
"http-graceful-shutdown": "^3.1.3",
|
"http-graceful-shutdown": "^3.1.4",
|
||||||
"jsonwebtoken": "^8.5.1",
|
"jsonwebtoken": "^8.5.1",
|
||||||
"nodemailer": "^6.6.3",
|
"nodemailer": "^6.6.3",
|
||||||
"password-hash": "^1.2.2",
|
"password-hash": "^1.2.2",
|
||||||
"prom-client": "^13.2.0",
|
"prom-client": "^13.2.0",
|
||||||
"prometheus-api-metrics": "^3.2.0",
|
"prometheus-api-metrics": "^3.2.0",
|
||||||
"redbean-node": "0.1.2",
|
"redbean-node": "0.1.2",
|
||||||
"socket.io": "^4.1.3",
|
"socket.io": "^4.2.0",
|
||||||
"socket.io-client": "^4.1.3",
|
"socket.io-client": "^4.2.0",
|
||||||
"sqlite3": "github:mapbox/node-sqlite3#593c9d",
|
"sqlite3": "github:mapbox/node-sqlite3#593c9d",
|
||||||
"tcp-ping": "^0.1.1",
|
"tcp-ping": "^0.1.1",
|
||||||
"v-pagination-3": "^0.1.6",
|
"v-pagination-3": "^0.1.6",
|
||||||
"vue": "^3.2.2",
|
"vue": "^3.2.6",
|
||||||
"vue-chart-3": "^0.5.7",
|
"vue-chart-3": "^0.5.7",
|
||||||
"vue-confirm-dialog": "^1.0.2",
|
"vue-confirm-dialog": "^1.0.2",
|
||||||
"vue-i18n": "^9.1.7",
|
"vue-i18n": "^9.1.7",
|
||||||
|
@ -76,18 +74,18 @@
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/eslint-parser": "^7.15.0",
|
"@babel/eslint-parser": "^7.15.0",
|
||||||
"@types/bootstrap": "^5.1.1",
|
"@types/bootstrap": "^5.1.2",
|
||||||
"@vitejs/plugin-legacy": "^1.5.1",
|
"@vitejs/plugin-legacy": "^1.5.2",
|
||||||
"@vitejs/plugin-vue": "^1.4.0",
|
"@vitejs/plugin-vue": "^1.6.0",
|
||||||
"@vue/compiler-sfc": "^3.2.2",
|
"@vue/compiler-sfc": "^3.2.6",
|
||||||
"core-js": "^3.16.1",
|
"core-js": "^3.17.0",
|
||||||
"dns2": "^2.0.1",
|
"dns2": "^2.0.1",
|
||||||
"eslint": "^7.32.0",
|
"eslint": "^7.32.0",
|
||||||
"eslint-plugin-vue": "^7.16.0",
|
"eslint-plugin-vue": "^7.17.0",
|
||||||
"sass": "^1.37.5",
|
"sass": "^1.38.2",
|
||||||
"stylelint": "^13.13.1",
|
"stylelint": "^13.13.1",
|
||||||
"stylelint-config-standard": "^22.0.0",
|
"stylelint-config-standard": "^22.0.0",
|
||||||
"typescript": "^4.3.5",
|
"typescript": "^4.4.2",
|
||||||
"vite": "^2.4.4"
|
"vite": "^2.5.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,7 +5,8 @@ const { setSetting, setting } = require("./util-server");
|
||||||
class Database {
|
class Database {
|
||||||
|
|
||||||
static templatePath = "./db/kuma.db"
|
static templatePath = "./db/kuma.db"
|
||||||
static path = "./data/kuma.db";
|
static dataDir;
|
||||||
|
static path;
|
||||||
static latestVersion = 8;
|
static latestVersion = 8;
|
||||||
static noReject = true;
|
static noReject = true;
|
||||||
static sqliteInstance = null;
|
static sqliteInstance = null;
|
||||||
|
@ -56,7 +57,7 @@ class Database {
|
||||||
console.info("Database patch is needed")
|
console.info("Database patch is needed")
|
||||||
|
|
||||||
console.info("Backup the db")
|
console.info("Backup the db")
|
||||||
const backupPath = "./data/kuma.db.bak" + version;
|
const backupPath = this.dataDir + "kuma.db.bak" + version;
|
||||||
fs.copyFileSync(Database.path, backupPath);
|
fs.copyFileSync(Database.path, backupPath);
|
||||||
|
|
||||||
const shmPath = Database.path + "-shm";
|
const shmPath = Database.path + "-shm";
|
||||||
|
|
|
@ -6,6 +6,7 @@ const { sleep, debug, TimeLogger, getRandomInt } = require("../src/util");
|
||||||
console.log("Importing Node libraries")
|
console.log("Importing Node libraries")
|
||||||
const fs = require("fs");
|
const fs = require("fs");
|
||||||
const http = require("http");
|
const http = require("http");
|
||||||
|
const https = require("https");
|
||||||
|
|
||||||
console.log("Importing 3rd-party libraries")
|
console.log("Importing 3rd-party libraries")
|
||||||
debug("Importing express");
|
debug("Importing express");
|
||||||
|
@ -45,9 +46,41 @@ console.info("Version: " + checkVersion.version);
|
||||||
const hostname = process.env.HOST || args.host;
|
const hostname = process.env.HOST || args.host;
|
||||||
const port = parseInt(process.env.PORT || args.port || 3001);
|
const port = parseInt(process.env.PORT || args.port || 3001);
|
||||||
|
|
||||||
|
// SSL
|
||||||
|
const sslKey = process.env.SSL_KEY || args["ssl-key"] || undefined;
|
||||||
|
const sslCert = process.env.SSL_CERT || args["ssl-cert"] || undefined;
|
||||||
|
|
||||||
|
// Demo Mode?
|
||||||
|
const demoMode = args["demo"] || false;
|
||||||
|
|
||||||
|
if (demoMode) {
|
||||||
|
console.log("==== Demo Mode ====");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Data Directory (must be end with "/")
|
||||||
|
Database.dataDir = process.env.DATA_DIR || args["data-dir"] || "./data/";
|
||||||
|
Database.path = Database.dataDir + "kuma.db";
|
||||||
|
if (! fs.existsSync(Database.dataDir)) {
|
||||||
|
fs.mkdirSync(Database.dataDir, { recursive: true });
|
||||||
|
}
|
||||||
|
console.log(`Data Dir: ${Database.dataDir}`);
|
||||||
|
|
||||||
console.log("Creating express and socket.io instance")
|
console.log("Creating express and socket.io instance")
|
||||||
const app = express();
|
const app = express();
|
||||||
const server = http.createServer(app);
|
|
||||||
|
let server;
|
||||||
|
|
||||||
|
if (sslKey && sslCert) {
|
||||||
|
console.log("Server Type: HTTPS");
|
||||||
|
server = https.createServer({
|
||||||
|
key: fs.readFileSync(sslKey),
|
||||||
|
cert: fs.readFileSync(sslCert)
|
||||||
|
}, app);
|
||||||
|
} else {
|
||||||
|
console.log("Server Type: HTTP");
|
||||||
|
server = http.createServer(app);
|
||||||
|
}
|
||||||
|
|
||||||
const io = new Server(server);
|
const io = new Server(server);
|
||||||
app.use(express.json())
|
app.use(express.json())
|
||||||
|
|
||||||
|
|
|
@ -71,6 +71,14 @@ h2 {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-warning {
|
||||||
|
color: white;
|
||||||
|
|
||||||
|
&:hover, &:active, &:focus, &.active {
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.btn-info {
|
.btn-info {
|
||||||
color: white;
|
color: white;
|
||||||
|
|
||||||
|
@ -186,6 +194,14 @@ h2 {
|
||||||
color: white;
|
color: white;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-warning {
|
||||||
|
color: $dark-font-color2;
|
||||||
|
|
||||||
|
&:hover, &:active, &:focus, &.active {
|
||||||
|
color: $dark-font-color2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.btn-close {
|
.btn-close {
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
filter: invert(1);
|
filter: invert(1);
|
||||||
|
|
|
@ -85,7 +85,7 @@ export default {
|
||||||
y: {
|
y: {
|
||||||
title: {
|
title: {
|
||||||
display: true,
|
display: true,
|
||||||
text: "Resp. Time (ms)",
|
text: this.$t("respTime"),
|
||||||
},
|
},
|
||||||
offset: false,
|
offset: false,
|
||||||
grid: {
|
grid: {
|
||||||
|
|
|
@ -22,7 +22,7 @@ export default {
|
||||||
return Math.round(this.$root.uptimeList[key] * 10000) / 100 + "%";
|
return Math.round(this.$root.uptimeList[key] * 10000) / 100 + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
return "N/A"
|
return this.$t("notAvailableShort")
|
||||||
},
|
},
|
||||||
|
|
||||||
color() {
|
color() {
|
||||||
|
|
|
@ -4,7 +4,15 @@
|
||||||
2. Create a language file. (e.g. `zh-TW.js`) The filename must be ISO language code: http://www.lingoes.net/en/translator/langcode.htm
|
2. Create a language file. (e.g. `zh-TW.js`) The filename must be ISO language code: http://www.lingoes.net/en/translator/langcode.htm
|
||||||
3. `npm run update-language-files --base-lang=de-DE`
|
3. `npm run update-language-files --base-lang=de-DE`
|
||||||
6. Your language file should be filled in. You can translate now.
|
6. Your language file should be filled in. You can translate now.
|
||||||
7. Make a [pull request](https://github.com/louislam/uptime-kuma/pulls) when you have done.
|
7. Translate `src/pages/Settings.vue` (search for a `Confirm` component with `rel="confirmDisableAuth"`).
|
||||||
|
8. Import your language file in `src/main.js` and add it to `languageList` constant.
|
||||||
|
9. Make a [pull request](https://github.com/louislam/uptime-kuma/pulls) when you have done.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
One of good examples:
|
||||||
|
https://github.com/louislam/uptime-kuma/pull/316/files
|
||||||
|
|
||||||
|
|
||||||
If you do not have programming skills, let me know in [Issues section](https://github.com/louislam/uptime-kuma/issues). I will assist you. 😏
|
If you do not have programming skills, let me know in [Issues section](https://github.com/louislam/uptime-kuma/issues). I will assist you. 😏
|
||||||
|
|
||||||
|
|
|
@ -106,5 +106,7 @@ export default {
|
||||||
pauseMonitorMsg: "Er du sikker på, at du vil pause Overvågeren?",
|
pauseMonitorMsg: "Er du sikker på, at du vil pause Overvågeren?",
|
||||||
"Create your admin account": "Opret din administratorkonto",
|
"Create your admin account": "Opret din administratorkonto",
|
||||||
"Repeat Password": "Gentag adgangskoden",
|
"Repeat Password": "Gentag adgangskoden",
|
||||||
"Resource Record Type": "Resource Record Type"
|
"Resource Record Type": "Resource Record Type",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
|
@ -70,7 +70,7 @@ export default {
|
||||||
Timezone: "Zeitzone",
|
Timezone: "Zeitzone",
|
||||||
"Search Engine Visibility": "Suchmaschinensichtbarkeit",
|
"Search Engine Visibility": "Suchmaschinensichtbarkeit",
|
||||||
"Allow indexing": "Indizierung zulassen",
|
"Allow indexing": "Indizierung zulassen",
|
||||||
"Discourage search engines from indexing site": "Halte Suchmaschinen von der Indexierung der Site ab",
|
"Discourage search engines from indexing site": "Halte Suchmaschinen von der Indexierung der Seite ab",
|
||||||
"Change Password": "Passwort ändern",
|
"Change Password": "Passwort ändern",
|
||||||
"Current Password": "Dezeitiges Passwort",
|
"Current Password": "Dezeitiges Passwort",
|
||||||
"New Password": "Neues Passwort",
|
"New Password": "Neues Passwort",
|
||||||
|
@ -96,10 +96,10 @@ export default {
|
||||||
Email: "E-Mail",
|
Email: "E-Mail",
|
||||||
Test: "Test",
|
Test: "Test",
|
||||||
"Certificate Info": "Zertifikatsinfo",
|
"Certificate Info": "Zertifikatsinfo",
|
||||||
keywordDescription: "Suche nach einen Schlüsselwort in einer schlichten HTML oder JSON Ausgabe. Bitte beachte, es wird in der Groß-/Kleinschreibung unterschieden.",
|
keywordDescription: "Suche nach einem Schlüsselwort in der HTML oder JSON Ausgabe. Bitte beachte, es wird in der Groß-/Kleinschreibung unterschieden.",
|
||||||
deleteMonitorMsg: "Bist du sicher das du den Monitor löschen möchtest?",
|
deleteMonitorMsg: "Bist du sicher das du den Monitor löschen möchtest?",
|
||||||
deleteNotificationMsg: "Möchtest du diese Benachrichtigung wirklich für alle Monitore löschen?",
|
deleteNotificationMsg: "Möchtest du diese Benachrichtigung wirklich für alle Monitore löschen?",
|
||||||
resoverserverDescription: "Cloudflare ist der Standardserver, dieser kann jederzeit geändern werden.",
|
resoverserverDescription: "Cloudflare ist als der Standardserver festgelegt, dieser kann jederzeit geändern werden.",
|
||||||
"Resolver Server": "Auflösungsserver",
|
"Resolver Server": "Auflösungsserver",
|
||||||
rrtypeDescription: "Wähle den RR-Typ aus, welchen du überwachen möchtest.",
|
rrtypeDescription: "Wähle den RR-Typ aus, welchen du überwachen möchtest.",
|
||||||
"Last Result": "Letztes Ergebnis",
|
"Last Result": "Letztes Ergebnis",
|
||||||
|
@ -110,4 +110,6 @@ export default {
|
||||||
"Import/Export Backup": "Import/Export Backup",
|
"Import/Export Backup": "Import/Export Backup",
|
||||||
"Export": "Export",
|
"Export": "Export",
|
||||||
"Import": "Import",
|
"Import": "Import",
|
||||||
|
respTime: "Antw. Zeit (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
|
@ -110,4 +110,6 @@ export default {
|
||||||
"Import/Export Backup": "Import/Export Backup",
|
"Import/Export Backup": "Import/Export Backup",
|
||||||
"Export": "Export",
|
"Export": "Export",
|
||||||
"Import": "Import",
|
"Import": "Import",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
112
src/languages/es-ES.js
Normal file
112
src/languages/es-ES.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "Español",
|
||||||
|
checkEverySecond: "Comprobar cada {0} segundos.",
|
||||||
|
"Avg.": "Media. ",
|
||||||
|
retriesDescription: "Número máximo de intentos antes de que el servicio se marque como CAÍDO y una notificación sea enviada.",
|
||||||
|
ignoreTLSError: "Ignorar error TLS/SSL para sitios web HTTPS",
|
||||||
|
upsideDownModeDescription: "Invertir el estado. Si el servicio es alcanzable, está CAÍDO.",
|
||||||
|
maxRedirectDescription: "Número máximo de direcciones a seguir. Establecer a 0 para deshabilitar.",
|
||||||
|
acceptedStatusCodesDescription: "Seleccionar los códigos de estado que se consideran como respuesta exitosa.",
|
||||||
|
passwordNotMatchMsg: "La contraseña repetida no coincide.",
|
||||||
|
notificationDescription: "Por favor asigne una notificación a el/los monitor(es) para hacerlos funcional(es).",
|
||||||
|
keywordDescription: "Palabra clave en HTML plano o respuesta JSON y es sensible a mayúsculas",
|
||||||
|
pauseDashboardHome: "Pausar",
|
||||||
|
deleteMonitorMsg: "¿Seguro que quieres eliminar este monitor?",
|
||||||
|
deleteNotificationMsg: "¿Seguro que quieres eliminar esta notificación para todos los monitores?",
|
||||||
|
resoverserverDescription: "Cloudflare es el servidor por defecto, puedes cambiar el servidor de resolución en cualquier momento.",
|
||||||
|
rrtypeDescription: "Selecciona el tipo de registro que quieres monitorizar",
|
||||||
|
pauseMonitorMsg: "¿Seguro que quieres pausar?",
|
||||||
|
Settings: "Ajustes",
|
||||||
|
Dashboard: "Panel",
|
||||||
|
"New Update": "Vueva actualización",
|
||||||
|
Language: "Idioma",
|
||||||
|
Appearance: "Apariencia",
|
||||||
|
Theme: "Tema",
|
||||||
|
General: "General",
|
||||||
|
Version: "Versión",
|
||||||
|
"Check Update On GitHub": "Comprobar actualizaciones en GitHub",
|
||||||
|
List: "Lista",
|
||||||
|
Add: "Añadir",
|
||||||
|
"Add New Monitor": "Añadir nuevo monitor",
|
||||||
|
"Quick Stats": "Estadísticas rápidas",
|
||||||
|
Up: "Funcional",
|
||||||
|
Down: "Caído",
|
||||||
|
Pending: "Pendiente",
|
||||||
|
Unknown: "Desconociso",
|
||||||
|
Pause: "Pausa",
|
||||||
|
Name: "Nombre",
|
||||||
|
Status: "Estado",
|
||||||
|
DateTime: "Fecha y Hora",
|
||||||
|
Message: "Mensaje",
|
||||||
|
"No important events": "No hay eventos importantes",
|
||||||
|
Resume: "Reanudar",
|
||||||
|
Edit: "Editar",
|
||||||
|
Delete: "Eliminar",
|
||||||
|
Current: "Actual",
|
||||||
|
Uptime: "Tiempo activo",
|
||||||
|
"Cert Exp.": "Caducidad cert.",
|
||||||
|
days: "días",
|
||||||
|
day: "día",
|
||||||
|
"-day": "-día",
|
||||||
|
hour: "hora",
|
||||||
|
"-hour": "-hora",
|
||||||
|
Response: "Respuesta",
|
||||||
|
Ping: "Ping",
|
||||||
|
"Monitor Type": "Tipo de Monitor",
|
||||||
|
Keyword: "Palabra clave",
|
||||||
|
"Friendly Name": "Nombre sencillo",
|
||||||
|
URL: "URL",
|
||||||
|
Hostname: "Nombre del host",
|
||||||
|
Port: "Puerto",
|
||||||
|
"Heartbeat Interval": "Intervalo de latido",
|
||||||
|
Retries: "Reintentos",
|
||||||
|
Advanced: "Avanzado",
|
||||||
|
"Upside Down Mode": "Modo invertido",
|
||||||
|
"Max. Redirects": "Máx. redirecciones",
|
||||||
|
"Accepted Status Codes": "Códigos de estado aceptados",
|
||||||
|
Save: "Guardar",
|
||||||
|
Notifications: "Notificaciones",
|
||||||
|
"Not available, please setup.": "No disponible, por favor configurar.",
|
||||||
|
"Setup Notification": "Configurar notificación",
|
||||||
|
Light: "Claro",
|
||||||
|
Dark: "Oscuro",
|
||||||
|
Auto: "Auto",
|
||||||
|
"Theme - Heartbeat Bar": "Tema - Barra de intervalo de latido",
|
||||||
|
Normal: "Normal",
|
||||||
|
Bottom: "Abajo",
|
||||||
|
None: "Ninguno",
|
||||||
|
Timezone: "Zona horaria",
|
||||||
|
"Search Engine Visibility": "Visibilidad motor de búsqueda",
|
||||||
|
"Allow indexing": "Permitir indexación",
|
||||||
|
"Discourage search engines from indexing site": "Disuadir a los motores de búsqueda de indexar el sitio",
|
||||||
|
"Change Password": "Cambiar contraseña",
|
||||||
|
"Current Password": "Contraseña actual",
|
||||||
|
"New Password": "Nueva contraseña",
|
||||||
|
"Repeat New Password": "Repetir nueva contraseña",
|
||||||
|
"Update Password": "Actualizar contraseña",
|
||||||
|
"Disable Auth": "Deshabilitar Autenticación ",
|
||||||
|
"Enable Auth": "Habilitar Autenticación ",
|
||||||
|
Logout: "Cerrar sesión",
|
||||||
|
Leave: "Salir",
|
||||||
|
"I understand, please disable": "Lo comprendo, por favor deshabilitar",
|
||||||
|
Confirm: "Confirmar",
|
||||||
|
Yes: "Sí",
|
||||||
|
No: "No",
|
||||||
|
Username: "Usuario",
|
||||||
|
Password: "Contraseña",
|
||||||
|
"Remember me": "Recordarme",
|
||||||
|
Login: "Acceso",
|
||||||
|
"No Monitors, please": "Sin monitores, por favor",
|
||||||
|
"add one": "añade uno",
|
||||||
|
"Notification Type": "Tipo de notificación",
|
||||||
|
Email: "Email",
|
||||||
|
Test: "Test",
|
||||||
|
"Certificate Info": "Información del certificado ",
|
||||||
|
"Resolver Server": "Servidor de resolución",
|
||||||
|
"Resource Record Type": "Tipo de Registro",
|
||||||
|
"Last Result": "Último resultado",
|
||||||
|
"Create your admin account": "Crea tu cuenta de administrador",
|
||||||
|
"Repeat Password": "Repetir contraseña",
|
||||||
|
respTime: "Tiempo de resp. (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
|
@ -1,7 +1,7 @@
|
||||||
export default {
|
export default {
|
||||||
languageName: "Français (France)",
|
languageName: "Français (France)",
|
||||||
Settings: "Paramètres",
|
Settings: "Paramètres",
|
||||||
Dashboard: "Dashboard",
|
Dashboard: "Tableau de bord",
|
||||||
"New Update": "Mise à jour disponible",
|
"New Update": "Mise à jour disponible",
|
||||||
Language: "Langue",
|
Language: "Langue",
|
||||||
Appearance: "Apparence",
|
Appearance: "Apparence",
|
||||||
|
@ -11,11 +11,11 @@ export default {
|
||||||
"Check Update On GitHub": "Consulter les mises à jour sur Github",
|
"Check Update On GitHub": "Consulter les mises à jour sur Github",
|
||||||
List: "Lister",
|
List: "Lister",
|
||||||
Add: "Ajouter",
|
Add: "Ajouter",
|
||||||
"Add New Monitor": "Ajouter un nouveau check",
|
"Add New Monitor": "Ajouter une nouvelle sonde",
|
||||||
"Quick Stats": "Résumé",
|
"Quick Stats": "Résumé",
|
||||||
Up: "En ligne",
|
Up: "En ligne",
|
||||||
Down: "Hors ligne",
|
Down: "Hors ligne",
|
||||||
Pending: "Dans la file d'attente",
|
Pending: "En attente",
|
||||||
Unknown: "Inconnu",
|
Unknown: "Inconnu",
|
||||||
Pause: "En Pause",
|
Pause: "En Pause",
|
||||||
pauseDashboardHome: "Éléments mis en pause",
|
pauseDashboardHome: "Éléments mis en pause",
|
||||||
|
@ -29,60 +29,60 @@ export default {
|
||||||
Delete: "Supprimer",
|
Delete: "Supprimer",
|
||||||
Current: "Actuellement",
|
Current: "Actuellement",
|
||||||
Uptime: "Uptime",
|
Uptime: "Uptime",
|
||||||
"Cert Exp.": "Cert Exp.",
|
"Cert Exp.": "Certificat expiré",
|
||||||
days: "Jours",
|
days: "Jours",
|
||||||
day: "Jour",
|
day: "Jour",
|
||||||
"-day": "Demi-Journée",
|
"-day": "Journée",
|
||||||
hour: "Heure",
|
hour: "Heure",
|
||||||
"-hour": "Demi-Heure",
|
"-hour": "Heures",
|
||||||
checkEverySecond: "Vérifier toutes les {0} secondes",
|
checkEverySecond: "Vérifier toutes les {0} secondes",
|
||||||
"Avg.": "Moy.",
|
"Avg.": "Moyen",
|
||||||
Response: "Réponse",
|
Response: "Temps de réponse",
|
||||||
Ping: "Ping",
|
Ping: "Ping",
|
||||||
"Monitor Type": "Type de Monitoring",
|
"Monitor Type": "Type de Sonde",
|
||||||
Keyword: "Mot-clé",
|
Keyword: "Mot-clé",
|
||||||
"Friendly Name": "Nom d'affichage",
|
"Friendly Name": "Nom d'affichage",
|
||||||
URL: "URL",
|
URL: "URL",
|
||||||
Hostname: "Nom d'hôte",
|
Hostname: "Nom d'hôte",
|
||||||
Port: "Port",
|
Port: "Port",
|
||||||
"Heartbeat Interval": "Intervale de vérifications",
|
"Heartbeat Interval": "Intervale de vérification",
|
||||||
Retries: "Essais",
|
Retries: "Essais",
|
||||||
retriesDescription: "Nombre d'essais avant que le service soit déclaré hors-ligne.",
|
retriesDescription: "Nombre d'essais avant que le service soit déclaré hors-ligne.",
|
||||||
Advanced: "Avancé",
|
Advanced: "Avancé",
|
||||||
ignoreTLSError: "Ignorer les erreurs liées au certificat SSL/TLS",
|
ignoreTLSError: "Ignorer les erreurs liées au certificat SSL/TLS",
|
||||||
"Upside Down Mode": "Mode inversé",
|
"Upside Down Mode": "Mode inversé",
|
||||||
upsideDownModeDescription: "Si le service est en ligne il sera alors noté hors-ligne et vice-versa.",
|
upsideDownModeDescription: "Si le service est en ligne, il sera alors noté hors-ligne et vice-versa.",
|
||||||
"Max. Redirects": "Redirections",
|
"Max. Redirects": "Nombre maximum de redirections",
|
||||||
maxRedirectDescription: "Nombre maximal de redirections avant que le service soit noté hors-ligne.",
|
maxRedirectDescription: "Nombre maximal de redirections avant que le service soit noté hors-ligne.",
|
||||||
"Accepted Status Codes": "Codes HTTP",
|
"Accepted Status Codes": "Codes HTTP",
|
||||||
acceptedStatusCodesDescription: "Si les codes HTTP reçus sont ceux séléctionnés, alors le serveur sera noté en ligne.",
|
acceptedStatusCodesDescription: "Codes HTTP considérés comme en ligne",
|
||||||
Save: "Sauvegarder",
|
Save: "Sauvegarder",
|
||||||
Notifications: "Notifications",
|
Notifications: "Notifications",
|
||||||
"Not available, please setup.": "Créez des notifications depuis les paramètres.",
|
"Not available, please setup.": "Pas de système de notification disponible, merci de le configurer",
|
||||||
"Setup Notification": "Créer une notification",
|
"Setup Notification": "Créer une notification",
|
||||||
Light: "Clair",
|
Light: "Clair",
|
||||||
Dark: "Sombre",
|
Dark: "Sombre",
|
||||||
Auto: "Automatique",
|
Auto: "Automatique",
|
||||||
"Theme - Heartbeat Bar": "Voir les services monitorés",
|
"Theme - Heartbeat Bar": "Voir les services surveillés",
|
||||||
Normal: "Général",
|
Normal: "Général",
|
||||||
Bottom: "Au dessus",
|
Bottom: "En dessous",
|
||||||
None: "Neutre",
|
None: "Non",
|
||||||
Timezone: "Fuseau Horaire",
|
Timezone: "Fuseau Horaire",
|
||||||
"Search Engine Visibility": "SEO",
|
"Search Engine Visibility": "Visibilité par les moteurs de recherche",
|
||||||
"Allow indexing": "Autoriser l'indexation par des moteurs de recherche",
|
"Allow indexing": "Autoriser l'indexation par des moteurs de recherche",
|
||||||
"Discourage search engines from indexing site": "Empêche les moteurs de recherche d'indexer votre site",
|
"Discourage search engines from indexing site": "Refuser l'indexation par des moteurs de recherche",
|
||||||
"Change Password": "Changer le mot de passe",
|
"Change Password": "Changer le mot de passe",
|
||||||
"Current Password": "Mot de passe actuel",
|
"Current Password": "Mot de passe actuel",
|
||||||
"New Password": "Nouveau mot de passe",
|
"New Password": "Nouveau mot de passe",
|
||||||
"Repeat New Password": "Répéter votre nouveau mot de passe",
|
"Repeat New Password": "Répéter votre nouveau mot de passe",
|
||||||
passwordNotMatchMsg: "Les mots de passe ne correspondent pas",
|
passwordNotMatchMsg: "Les mots de passe ne correspondent pas",
|
||||||
"Update Password": "Mettre à jour le mot de passe",
|
"Update Password": "Mettre à jour le mot de passe",
|
||||||
"Disable Auth": "Désactiver l'authentification intégrée",
|
"Disable Auth": "Désactiver l'authentification",
|
||||||
"Enable Auth": "Activer l'authentification",
|
"Enable Auth": "Activer l'authentification",
|
||||||
Logout: "Se déconnecter",
|
Logout: "Se déconnecter",
|
||||||
notificationDescription: "Une fois ajoutée, vous devez l'activer manuellement dans les paramètres de vos hosts.",
|
notificationDescription: "Une fois ajoutée, vous devez l'activer manuellement dans les paramètres de vos hôtes.",
|
||||||
Leave: "Quitter",
|
Leave: "Quitter",
|
||||||
"I understand, please disable": "Je comprends, je l'ai désactivé",
|
"I understand, please disable": "J'ai compris, désactivez-le",
|
||||||
Confirm: "Confirmer",
|
Confirm: "Confirmer",
|
||||||
Yes: "Oui",
|
Yes: "Oui",
|
||||||
No: "Non",
|
No: "Non",
|
||||||
|
@ -90,21 +90,23 @@ export default {
|
||||||
Password: "Mot de passe",
|
Password: "Mot de passe",
|
||||||
"Remember me": "Se souvenir de moi",
|
"Remember me": "Se souvenir de moi",
|
||||||
Login: "Se connecter",
|
Login: "Se connecter",
|
||||||
"No Monitors, please": "Pas de monitor, veuillez ",
|
"No Monitors, please": "Pas de sondes, veuillez ",
|
||||||
"add one": "en ajouter un.",
|
"add one": "en ajouter une.",
|
||||||
"Notification Type": "Type de notification",
|
"Notification Type": "Type de notification",
|
||||||
Email: "Email",
|
Email: "Email",
|
||||||
Test: "Tester",
|
Test: "Tester",
|
||||||
keywordDescription: "Le mot clé sera cherché dans la réponse HTML/JSON reçue du site internet.",
|
keywordDescription: "Le mot clé sera recherché dans la réponse HTML/JSON reçue du site internet.",
|
||||||
"Certificate Info": "Des informations sur le certificat SSL",
|
"Certificate Info": "Informations sur le certificat SSL",
|
||||||
deleteMonitorMsg: "Êtes-vous sûr de vouloir supprimer ce monitor ?",
|
deleteMonitorMsg: "Êtes-vous sûr de vouloir supprimer cette sonde ?",
|
||||||
deleteNotificationMsg: "Êtes-vous sûr de vouloir supprimer ce type de notifications ? Une fois désactivée, les services qui l'utilisent ne pourront plus envoyer de notifications.",
|
deleteNotificationMsg: "Êtes-vous sûr de vouloir supprimer ce type de notifications ? Une fois désactivée, les services qui l'utilisent ne pourront plus envoyer de notifications.",
|
||||||
"Resolver Server": "Serveur DNS utilisé",
|
"Resolver Server": "Serveur DNS utilisé",
|
||||||
"Resource Record Type": "Type d'enregistrement DNS recherché",
|
"Resource Record Type": "Type d'enregistrement DNS recherché",
|
||||||
resoverserverDescription: "Le DNS de cloudflare est utilisé par défaut, mais vous pouvez le changer si vous le souhaitez.",
|
resoverserverDescription: "Le DNS de cloudflare est utilisé par défaut, mais vous pouvez le changer si vous le souhaitez.",
|
||||||
rrtypeDescription: "Veuillez séléctionner un type d'enregistrement DNS",
|
rrtypeDescription: "Veuillez séléctionner un type d'enregistrement DNS",
|
||||||
pauseMonitorMsg: "Are you sure want to pause?",
|
pauseMonitorMsg: "Etes vous sur de vouloir mettre en pause cette sonde ?",
|
||||||
"Last Result": "Last Result",
|
"Last Result": "Dernier résultat",
|
||||||
"Create your admin account": "Create your admin account",
|
"Create your admin account": "Créez votre compte administrateur",
|
||||||
"Repeat Password": "Repeat Password"
|
"Repeat Password": "Répéter le mot de passe",
|
||||||
|
respTime: "Temps de réponse (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,5 +106,7 @@ export default {
|
||||||
"Resource Record Type": "DNSレコード設定",
|
"Resource Record Type": "DNSレコード設定",
|
||||||
"Last Result": "最終結果",
|
"Last Result": "最終結果",
|
||||||
"Create your admin account": "Create your admin account",
|
"Create your admin account": "Create your admin account",
|
||||||
"Repeat Password": "Repeat Password"
|
"Repeat Password": "Repeat Password",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,110 +1,112 @@
|
||||||
export default {
|
export default {
|
||||||
languageName: '한국어',
|
languageName: "한국어",
|
||||||
checkEverySecond: '{0} 초마다 체크해요.',
|
checkEverySecond: "{0} 초마다 체크해요.",
|
||||||
'Avg.': '평균 ',
|
"Avg.": "평균 ",
|
||||||
retriesDescription: '서비스가 중단된 후 알림을 보내기 전 최대 재시도 횟수',
|
retriesDescription: "서비스가 중단된 후 알림을 보내기 전 최대 재시도 횟수",
|
||||||
ignoreTLSError: 'HTTPS 웹사이트에서 TLS/SSL 에러 무시하기',
|
ignoreTLSError: "HTTPS 웹사이트에서 TLS/SSL 에러 무시하기",
|
||||||
upsideDownModeDescription: '서버 상태를 반대로 표시해요. 서버가 작동하면 오프라인으로 표시할 거에요.',
|
upsideDownModeDescription: "서버 상태를 반대로 표시해요. 서버가 작동하면 오프라인으로 표시할 거에요.",
|
||||||
maxRedirectDescription: '최대 리다이렉트 횟수에요. 0을 입력하면 리다이렉트를 꺼요.',
|
maxRedirectDescription: "최대 리다이렉트 횟수에요. 0을 입력하면 리다이렉트를 꺼요.",
|
||||||
acceptedStatusCodesDescription: '응답 성공으로 간주할 상태 코드를 정해요.',
|
acceptedStatusCodesDescription: "응답 성공으로 간주할 상태 코드를 정해요.",
|
||||||
passwordNotMatchMsg: '비밀번호 재입력이 일치하지 않아요.',
|
passwordNotMatchMsg: "비밀번호 재입력이 일치하지 않아요.",
|
||||||
notificationDescription: '모니터링에 알림을 설정할 수 있어요.',
|
notificationDescription: "모니터링에 알림을 설정할 수 있어요.",
|
||||||
keywordDescription: 'Html 이나 JSON에서 대소문자를 구분해 키워드를 검색해요.',
|
keywordDescription: "Html 이나 JSON에서 대소문자를 구분해 키워드를 검색해요.",
|
||||||
pauseDashboardHome: '일시 정지',
|
pauseDashboardHome: "일시 정지",
|
||||||
deleteMonitorMsg: '정말 이 모니터링을 삭제할까요?',
|
deleteMonitorMsg: "정말 이 모니터링을 삭제할까요?",
|
||||||
deleteNotificationMsg: '정말 이 알림을 모든 모니터링에서 삭제할까요?',
|
deleteNotificationMsg: "정말 이 알림을 모든 모니터링에서 삭제할까요?",
|
||||||
resoverserverDescription: 'Cloudflare가 기본 서버에요, 원한다면 언제나 다른 resolver 서버로 변경할 수 있어요.',
|
resoverserverDescription: "Cloudflare가 기본 서버에요, 원한다면 언제나 다른 resolver 서버로 변경할 수 있어요.",
|
||||||
rrtypeDescription: '모니터링할 RR-Type을 선택해요.',
|
rrtypeDescription: "모니터링할 RR-Type을 선택해요.",
|
||||||
pauseMonitorMsg: '정말 이 모니터링을 일시 정지 할까요?',
|
pauseMonitorMsg: "정말 이 모니터링을 일시 정지 할까요?",
|
||||||
Settings: '설정',
|
Settings: "설정",
|
||||||
Dashboard: '대시보드',
|
Dashboard: "대시보드",
|
||||||
'New Update': '새로운 업데이트',
|
"New Update": "새로운 업데이트",
|
||||||
Language: '언어',
|
Language: "언어",
|
||||||
Appearance: '외형',
|
Appearance: "외형",
|
||||||
Theme: '테마',
|
Theme: "테마",
|
||||||
General: '일반',
|
General: "일반",
|
||||||
Version: '버전',
|
Version: "버전",
|
||||||
'Check Update On GitHub': '깃허브에서 업데이트 확인',
|
"Check Update On GitHub": "깃허브에서 업데이트 확인",
|
||||||
List: '목록',
|
List: "목록",
|
||||||
Add: '추가',
|
Add: "추가",
|
||||||
'Add New Monitor': '새로운 모니터링 추가하기',
|
"Add New Monitor": "새로운 모니터링 추가하기",
|
||||||
'Quick Stats': '간단한 정보',
|
"Quick Stats": "간단한 정보",
|
||||||
Up: '온라인',
|
Up: "온라인",
|
||||||
Down: '오프라인',
|
Down: "오프라인",
|
||||||
Pending: '대기 중',
|
Pending: "대기 중",
|
||||||
Unknown: '알 수 없음',
|
Unknown: "알 수 없음",
|
||||||
Pause: '일시 정지',
|
Pause: "일시 정지",
|
||||||
Name: '이름',
|
Name: "이름",
|
||||||
Status: '상태',
|
Status: "상태",
|
||||||
DateTime: '날짜',
|
DateTime: "날짜",
|
||||||
Message: '메시지',
|
Message: "메시지",
|
||||||
'No important events': '중요 이벤트 없음',
|
"No important events": "중요 이벤트 없음",
|
||||||
Resume: '재개',
|
Resume: "재개",
|
||||||
Edit: '수정',
|
Edit: "수정",
|
||||||
Delete: '삭제',
|
Delete: "삭제",
|
||||||
Current: '현재',
|
Current: "현재",
|
||||||
Uptime: '업타임',
|
Uptime: "업타임",
|
||||||
'Cert Exp.': '인증서 만료',
|
"Cert Exp.": "인증서 만료",
|
||||||
days: '일',
|
days: "일",
|
||||||
day: '일',
|
day: "일",
|
||||||
'-day': '-일',
|
"-day": "-일",
|
||||||
hour: '시간',
|
hour: "시간",
|
||||||
'-hour': '-시간',
|
"-hour": "-시간",
|
||||||
Response: '응답',
|
Response: "응답",
|
||||||
Ping: '핑',
|
Ping: "핑",
|
||||||
'Monitor Type': '모니터링 종류',
|
"Monitor Type": "모니터링 종류",
|
||||||
Keyword: '키워드',
|
Keyword: "키워드",
|
||||||
'Friendly Name': '이름',
|
"Friendly Name": "이름",
|
||||||
URL: 'URL',
|
URL: "URL",
|
||||||
Hostname: '호스트네임',
|
Hostname: "호스트네임",
|
||||||
Port: '포트',
|
Port: "포트",
|
||||||
'Heartbeat Interval': '하트비트 주기',
|
"Heartbeat Interval": "하트비트 주기",
|
||||||
Retries: '재시도',
|
Retries: "재시도",
|
||||||
Advanced: '고급',
|
Advanced: "고급",
|
||||||
'Upside Down Mode': '상태 반전 모드',
|
"Upside Down Mode": "상태 반전 모드",
|
||||||
'Max. Redirects': '최대 리다이렉트',
|
"Max. Redirects": "최대 리다이렉트",
|
||||||
'Accepted Status Codes': '응답 성공 상태 코드',
|
"Accepted Status Codes": "응답 성공 상태 코드",
|
||||||
Save: '저장',
|
Save: "저장",
|
||||||
Notifications: '알림',
|
Notifications: "알림",
|
||||||
'Not available, please setup.': '존재하지 않아요, 새로운거 하나 만드는건 어때요?',
|
"Not available, please setup.": "존재하지 않아요, 새로운거 하나 만드는건 어때요?",
|
||||||
'Setup Notification': '알림 설정',
|
"Setup Notification": "알림 설정",
|
||||||
Light: '라이트',
|
Light: "라이트",
|
||||||
Dark: '다크',
|
Dark: "다크",
|
||||||
Auto: '자동',
|
Auto: "자동",
|
||||||
'Theme - Heartbeat Bar': '테마 - 하트비트 바',
|
"Theme - Heartbeat Bar": "테마 - 하트비트 바",
|
||||||
Normal: '기본값',
|
Normal: "기본값",
|
||||||
Bottom: '가운데',
|
Bottom: "가운데",
|
||||||
None: '제거',
|
None: "제거",
|
||||||
Timezone: '시간대',
|
Timezone: "시간대",
|
||||||
'Search Engine Visibility': '검색 엔진 활성화',
|
"Search Engine Visibility": "검색 엔진 활성화",
|
||||||
'Allow indexing': '인덱싱 허용',
|
"Allow indexing": "인덱싱 허용",
|
||||||
'Discourage search engines from indexing site': '검색 엔진 인덱싱 거부',
|
"Discourage search engines from indexing site": "검색 엔진 인덱싱 거부",
|
||||||
'Change Password': '비밀번호 변경',
|
"Change Password": "비밀번호 변경",
|
||||||
'Current Password': '기존 비밀번호',
|
"Current Password": "기존 비밀번호",
|
||||||
'New Password': '새로운 비밀번호',
|
"New Password": "새로운 비밀번호",
|
||||||
'Repeat New Password': '새로운 비밀번호 재입력',
|
"Repeat New Password": "새로운 비밀번호 재입력",
|
||||||
'Update Password': '비밀번호 변경',
|
"Update Password": "비밀번호 변경",
|
||||||
'Disable Auth': '인증 끄기',
|
"Disable Auth": "인증 끄기",
|
||||||
'Enable Auth': '인증 켜기',
|
"Enable Auth": "인증 켜기",
|
||||||
Logout: '로그아웃',
|
Logout: "로그아웃",
|
||||||
Leave: '나가기',
|
Leave: "나가기",
|
||||||
'I understand, please disable': '기능에 대해 이해했어요.',
|
"I understand, please disable": "기능에 대해 이해했으니 꺼주세요.",
|
||||||
Confirm: '확인',
|
Confirm: "확인",
|
||||||
Yes: '확인',
|
Yes: "확인",
|
||||||
No: '취소',
|
No: "취소",
|
||||||
Username: '이름',
|
Username: "이름",
|
||||||
Password: '비밀번호',
|
Password: "비밀번호",
|
||||||
'Remember me': '비밀번호 기억하기',
|
"Remember me": "비밀번호 기억하기",
|
||||||
Login: '로그인',
|
Login: "로그인",
|
||||||
'No Monitors, please': '모니터링이 없어요,',
|
"No Monitors, please": "모니터링이 없어요,",
|
||||||
'add one': '하나 추가해봐요',
|
"add one": "하나 추가해봐요",
|
||||||
'Notification Type': '알림 종류',
|
"Notification Type": "알림 종류",
|
||||||
Email: '이메일',
|
Email: "이메일",
|
||||||
Test: '테스트',
|
Test: "테스트",
|
||||||
'Certificate Info': '인증서 정보',
|
"Certificate Info": "인증서 정보",
|
||||||
'Resolver Server': 'Resolver 서버',
|
"Resolver Server": "Resolver 서버",
|
||||||
'Resource Record Type': '자원 레코드 유형',
|
"Resource Record Type": "자원 레코드 유형",
|
||||||
'Last Result': '최근 결과',
|
"Last Result": "최근 결과",
|
||||||
'Create your admin account': '관리자 계정 만들기',
|
"Create your admin account": "관리자 계정 만들기",
|
||||||
'Repeat Password': '비밀번호 재입력'
|
"Repeat Password": "비밀번호 재입력",
|
||||||
};
|
respTime: "응답 시간 (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
||||||
|
|
112
src/languages/nl_NL.js
Normal file
112
src/languages/nl_NL.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "Nederlands",
|
||||||
|
checkEverySecond: "Controleer elke {0} seconden.",
|
||||||
|
"Avg.": "Gem. ",
|
||||||
|
retriesDescription: "Maximum aantal nieuwe pogingen voordat de service wordt gemarkeerd als niet beschikbaar en er een melding wordt verzonden",
|
||||||
|
ignoreTLSError: "Negeer TLS/SSL-fout voor HTTPS-websites",
|
||||||
|
upsideDownModeDescription: "Draai de status om. Als de service bereikbaar is, is deze OFFLINE.",
|
||||||
|
maxRedirectDescription: "Maximaal aantal te volgen omleidingen. Stel in op 0 om omleidingen uit te schakelen.",
|
||||||
|
acceptedStatusCodesDescription: "Selecteer statuscodes die als een succesvol antwoord worden beschouwd.",
|
||||||
|
passwordNotMatchMsg: "Het herhaalwachtwoord komt niet overeen.",
|
||||||
|
notificationDescription: "Wijs a.u.b. een melding toe aan de monitor(s) om het te laten werken.",
|
||||||
|
keywordDescription: "Zoek trefwoord in gewone html of JSON-response en het is hoofdlettergevoelig",
|
||||||
|
pauseDashboardHome: "Gepauzeerd",
|
||||||
|
deleteMonitorMsg: "Weet u zeker dat u deze monitor wilt verwijderen?",
|
||||||
|
deleteNotificationMsg: "Weet u zeker dat u deze melding voor alle monitoren wilt verwijderen?",
|
||||||
|
resoverserverDescription: "Cloudflare is de standaardserver, u kunt de resolver server op elk moment wijzigen.",
|
||||||
|
rrtypeDescription: "Selecteer het RR-type dat u wilt monitoren",
|
||||||
|
pauseMonitorMsg: "Weet je zeker dat je wilt pauzeren?",
|
||||||
|
Settings: "Instellingen",
|
||||||
|
Dashboard: "Dashboard",
|
||||||
|
"New Update": "Nieuwe update",
|
||||||
|
Language: "Taal",
|
||||||
|
Appearance: "Weergave",
|
||||||
|
Theme: "Thema",
|
||||||
|
General: "Algemeen",
|
||||||
|
Version: "Versie",
|
||||||
|
"Check Update On GitHub": "Controleer voor updates op GitHub",
|
||||||
|
List: "Lijst",
|
||||||
|
Add: "Toevoegen",
|
||||||
|
"Add New Monitor": "Nieuwe monitor toevoegen",
|
||||||
|
"Quick Stats": "Snelle statistieken",
|
||||||
|
Up: "Online",
|
||||||
|
Down: "Offline",
|
||||||
|
Pending: "In afwachting",
|
||||||
|
Unknown: "Onbekend",
|
||||||
|
Pause: "Pauze",
|
||||||
|
Name: "Naam",
|
||||||
|
Status: "Status",
|
||||||
|
DateTime: "Datum Tijd",
|
||||||
|
Message: "Bericht",
|
||||||
|
"No important events": "Geen belangrijke gebeurtenissen",
|
||||||
|
Resume: "Hervat",
|
||||||
|
Edit: "Wijzigen",
|
||||||
|
Delete: "Verwijderen",
|
||||||
|
Current: "Huidig",
|
||||||
|
Uptime: "Uptime",
|
||||||
|
"Cert Exp.": "Cert. verl.",
|
||||||
|
days: "dagen",
|
||||||
|
day: "dag",
|
||||||
|
"-day": "-dag",
|
||||||
|
hour: "uur",
|
||||||
|
"-hour": "-uur",
|
||||||
|
Response: "Antwoord",
|
||||||
|
Ping: "Ping",
|
||||||
|
"Monitor Type": "Monitortype:",
|
||||||
|
Keyword: "Trefwoord",
|
||||||
|
"Friendly Name": "Vriendelijke naam",
|
||||||
|
URL: "URL",
|
||||||
|
Hostname: "Hostnaam",
|
||||||
|
Port: "Poort",
|
||||||
|
"Heartbeat Interval": "Hartslaginterval",
|
||||||
|
Retries: "Pogingen",
|
||||||
|
Advanced: "Geavanceerd",
|
||||||
|
"Upside Down Mode": "Ondersteboven modus",
|
||||||
|
"Max. Redirects": "Max. Omleidingen",
|
||||||
|
"Accepted Status Codes": "Geaccepteerde statuscodes",
|
||||||
|
Save: "Opslaan",
|
||||||
|
Notifications: "Meldingen",
|
||||||
|
"Not available, please setup.": "Niet beschikbaar, stel a.u.b. in.",
|
||||||
|
"Setup Notification": "Melding instellen",
|
||||||
|
Light: "Licht",
|
||||||
|
Dark: "Donker",
|
||||||
|
Auto: "Auto",
|
||||||
|
"Theme - Heartbeat Bar": "Thema - Hartslagbalk",
|
||||||
|
Normal: "Normaal",
|
||||||
|
Bottom: "Onderkant",
|
||||||
|
None: "Geen",
|
||||||
|
Timezone: "Tijdzone",
|
||||||
|
"Search Engine Visibility": "Zichtbaarheid voor zoekmachines",
|
||||||
|
"Allow indexing": "Indexering toestaan",
|
||||||
|
"Discourage search engines from indexing site": "Ontmoedig zoekmachines om de site te indexeren",
|
||||||
|
"Change Password": "Verander wachtwoord",
|
||||||
|
"Current Password": "Huidig wachtwoord",
|
||||||
|
"New Password": "Nieuw wachtwoord",
|
||||||
|
"Repeat New Password": "Herhaal nieuw wachtwoord",
|
||||||
|
"Update Password": "Vernieuw wachtwoord",
|
||||||
|
"Disable Auth": "Autorisatie uitschakelen",
|
||||||
|
"Enable Auth": "Autorisatie inschakelen",
|
||||||
|
Logout: "Uitloggen",
|
||||||
|
Leave: "Vertrekken",
|
||||||
|
"I understand, please disable": "Ik begrijp het, schakel a.u.b. uit",
|
||||||
|
Confirm: "Bevestigen",
|
||||||
|
Yes: "Ja",
|
||||||
|
No: "Nee",
|
||||||
|
Username: "Gebruikersnaam",
|
||||||
|
Password: "Wachtwoord",
|
||||||
|
"Remember me": "Wachtwoord onthouden",
|
||||||
|
Login: "Inloggen",
|
||||||
|
"No Monitors, please": "Geen monitoren, ",
|
||||||
|
"add one": "voeg een toe",
|
||||||
|
"Notification Type": "Melding type",
|
||||||
|
Email: "E-mail",
|
||||||
|
Test: "Testen",
|
||||||
|
"Certificate Info": "Certificaat informatie",
|
||||||
|
"Resolver Server": "Resolver Server",
|
||||||
|
"Resource Record Type": "Type bronrecord",
|
||||||
|
"Last Result": "Laatste resultaat",
|
||||||
|
"Create your admin account": "Maak uw beheerdersaccount aan",
|
||||||
|
"Repeat Password": "Herhaal wachtwoord",
|
||||||
|
respTime: "resp. tijd (ms)",
|
||||||
|
notAvailableShort: "N.v.t."
|
||||||
|
}
|
112
src/languages/ru-RU.js
Normal file
112
src/languages/ru-RU.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "Русский",
|
||||||
|
checkEverySecond: "Проверять каждые {0} секунд.",
|
||||||
|
"Avg.": "Средн. ",
|
||||||
|
retriesDescription: "Максимальное количество попыток перед пометкой сервиса как недоступного и отправкой уведомления",
|
||||||
|
ignoreTLSError: "Игнорировать ошибку TLS/SSL для HTTPS сайтов",
|
||||||
|
upsideDownModeDescription: "Реверс статуса сервиса. Если сервис доступен, то он помечается как НЕДОСТУПНЫЙ.",
|
||||||
|
maxRedirectDescription: "Максимальное количество перенаправлений. Поставьте 0, чтобы отключить перенаправления.",
|
||||||
|
acceptedStatusCodesDescription: "Выберите коды статусов, которые должны считаться за успешный ответ.",
|
||||||
|
passwordNotMatchMsg: "Повтор пароля не совпадает.",
|
||||||
|
notificationDescription: "Привяжите уведомления к мониторам.",
|
||||||
|
keywordDescription: "Поиск слова в чистом HTML или в JSON-ответе (чувствительно к регистру)",
|
||||||
|
pauseDashboardHome: "Пауза",
|
||||||
|
deleteMonitorMsg: "Вы действительно хотите удалить данный монитор?",
|
||||||
|
deleteNotificationMsg: "Вы действительно хотите удалить это уведомление для всех мониторов?",
|
||||||
|
resoverserverDescription: "Cloudflare является сервером по умолчанию. Вы всегда можете сменить данный сервер.",
|
||||||
|
rrtypeDescription: "Выберите тип ресурсной записи, который вы хотите отслеживать",
|
||||||
|
pauseMonitorMsg: "Вы действительно хотите поставить на паузу?",
|
||||||
|
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: "Попыток",
|
||||||
|
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": "Повторите пароль",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
112
src/languages/sr-latn.js
Normal file
112
src/languages/sr-latn.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "Srpski",
|
||||||
|
checkEverySecond: "Proveri svakih {0} sekundi.",
|
||||||
|
"Avg.": "Prosečni ",
|
||||||
|
retriesDescription: "Maksimum pokušaja pre nego što se servis obeleži kao neaktivan i pošalje se obaveštenje.",
|
||||||
|
ignoreTLSError: "Ignoriši TLS/SSL greške za HTTPS veb stranice.",
|
||||||
|
upsideDownModeDescription: "Obrnite status. Ako je servis dostupan, onda je obeležen kao neaktivan.",
|
||||||
|
maxRedirectDescription: "Maksimani broj preusmerenja da se prate. Postavite na 0 da bi se isključila preusmerenja.",
|
||||||
|
acceptedStatusCodesDescription: "Odaberite statusne kodove koji se smatraju uspešnim odgovorom.",
|
||||||
|
passwordNotMatchMsg: "Ponovljena lozinka se ne poklapa.",
|
||||||
|
notificationDescription: "Molim Vas postavite obaveštenje za masmatrače da bise aktivirali.",
|
||||||
|
keywordDescription: "Pretraži ključnu reč u čistom html ili JSON odgovoru sa osetljivim velikim i malim slovima",
|
||||||
|
pauseDashboardHome: "Pauziraj",
|
||||||
|
deleteMonitorMsg: "Da li ste sigurni da želite da obrišete ovog posmatrača?",
|
||||||
|
deleteNotificationMsg: "Da li ste sigurni d aželite da uklonite ovo obaveštenje za sve posmatrače?",
|
||||||
|
resoverserverDescription: "Cloudflare je podrazumevani server. Možete promeniti server za raszrešavanje u bilo kom trenutku.",
|
||||||
|
rrtypeDescription: "Odaberite RR-Type koji želite da posmatrate",
|
||||||
|
pauseMonitorMsg: "Da li ste sigurni da želite da pauzirate?",
|
||||||
|
Settings: "Podešavanja",
|
||||||
|
Dashboard: "Komandna tabla",
|
||||||
|
"New Update": "Nova verzija",
|
||||||
|
Language: "Jezik",
|
||||||
|
Appearance: "Izgled",
|
||||||
|
Theme: "Tema",
|
||||||
|
General: "Opšte",
|
||||||
|
Version: "Verzija",
|
||||||
|
"Check Update On GitHub": "Proverite novu verziju na GitHub-u",
|
||||||
|
List: "Lista",
|
||||||
|
Add: "Dodaj",
|
||||||
|
"Add New Monitor": "Dodaj novog posmatrača",
|
||||||
|
"Quick Stats": "Brze statistike",
|
||||||
|
Up: "Aktivno",
|
||||||
|
Down: "Neaktivno",
|
||||||
|
Pending: "Nerešeno",
|
||||||
|
Unknown: "Nepoznato",
|
||||||
|
Pause: "Pauziraj",
|
||||||
|
Name: "Ime",
|
||||||
|
Status: "Status",
|
||||||
|
DateTime: "Datum i vreme",
|
||||||
|
Message: "Poruka",
|
||||||
|
"No important events": "Nema bitnih događaja",
|
||||||
|
Resume: "Nastavi",
|
||||||
|
Edit: "Izmeni",
|
||||||
|
Delete: "Ukloni",
|
||||||
|
Current: "Trenutno",
|
||||||
|
Uptime: "Vreme rada",
|
||||||
|
"Cert Exp.": "Istek sert.",
|
||||||
|
days: "dana",
|
||||||
|
day: "dan",
|
||||||
|
"-day": "-dana",
|
||||||
|
hour: "sat",
|
||||||
|
"-hour": "-sata",
|
||||||
|
Response: "Odgovor",
|
||||||
|
Ping: "Ping",
|
||||||
|
"Monitor Type": "Tip posmatrača",
|
||||||
|
Keyword: "Ključna reč",
|
||||||
|
"Friendly Name": "Prijateljsko ime",
|
||||||
|
URL: "URL",
|
||||||
|
Hostname: "Hostname",
|
||||||
|
Port: "Port",
|
||||||
|
"Heartbeat Interval": "Interval otkucaja srca",
|
||||||
|
Retries: "Pokušaji",
|
||||||
|
Advanced: "Napredno",
|
||||||
|
"Upside Down Mode": "Naopak mod",
|
||||||
|
"Max. Redirects": "Maks. preusmerenja",
|
||||||
|
"Accepted Status Codes": "Prihvaćeni statusni kodovi",
|
||||||
|
Save: "Sačuvaj",
|
||||||
|
Notifications: "Obaveštenja",
|
||||||
|
"Not available, please setup.": "Nije dostupno, molim Vas podesite.",
|
||||||
|
"Setup Notification": "Postavi obaveštenje",
|
||||||
|
Light: "Svetlo",
|
||||||
|
Dark: "Tamno",
|
||||||
|
Auto: "Automatsko",
|
||||||
|
"Theme - Heartbeat Bar": "Tema - Traka otkucaja srca",
|
||||||
|
Normal: "Normalno",
|
||||||
|
Bottom: "Dole",
|
||||||
|
None: "Isključeno",
|
||||||
|
Timezone: "Vremenska zona",
|
||||||
|
"Search Engine Visibility": "Vidljivost pretraživačima",
|
||||||
|
"Allow indexing": "Dozvoli indeksiranje",
|
||||||
|
"Discourage search engines from indexing site": "Odvraćajte pretraživače od indeksiranja sajta",
|
||||||
|
"Change Password": "Promeni lozinku",
|
||||||
|
"Current Password": "Trenutna lozinka",
|
||||||
|
"New Password": "Nova lozinka",
|
||||||
|
"Repeat New Password": "Ponovi novu lozinku",
|
||||||
|
"Update Password": "Izmeni lozinku",
|
||||||
|
"Disable Auth": "Isključi autentifikaciju",
|
||||||
|
"Enable Auth": "Uključi autentifikaciju",
|
||||||
|
Logout: "Odloguj se",
|
||||||
|
Leave: "Izađi",
|
||||||
|
"I understand, please disable": "Razumem, molim te isključi",
|
||||||
|
Confirm: "Potvrdi",
|
||||||
|
Yes: "Da",
|
||||||
|
No: "Ne",
|
||||||
|
Username: "Korisničko ime",
|
||||||
|
Password: "Lozinka",
|
||||||
|
"Remember me": "Zapamti me",
|
||||||
|
Login: "Uloguj se",
|
||||||
|
"No Monitors, please": "Bez posmatrača molim",
|
||||||
|
"add one": "dodaj jednog",
|
||||||
|
"Notification Type": "Tip obaveštenja",
|
||||||
|
Email: "E-pošta",
|
||||||
|
Test: "Test",
|
||||||
|
"Certificate Info": "Informacije sertifikata",
|
||||||
|
"Resolver Server": "Razrešivački server",
|
||||||
|
"Resource Record Type": "Tip zapisa resursa",
|
||||||
|
"Last Result": "Poslednji rezultat",
|
||||||
|
"Create your admin account": "Naprivi administratorski nalog",
|
||||||
|
"Repeat Password": "Ponovite lozinku",
|
||||||
|
respTime: "Vreme odg. (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
112
src/languages/sr.js
Normal file
112
src/languages/sr.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "Српски",
|
||||||
|
checkEverySecond: "Провери сваких {0} секунди.",
|
||||||
|
"Avg.": "Просечни ",
|
||||||
|
retriesDescription: "Максимум покушаја пре него што се сервис обележи као неактиван и пошаље се обавештење.",
|
||||||
|
ignoreTLSError: "Игнориши TLS/SSL грешке за HTTPS веб странице.",
|
||||||
|
upsideDownModeDescription: "Обрните статус. Ако је сервис доступан, онда је обележен као неактиван.",
|
||||||
|
maxRedirectDescription: "Максимани број преусмерења да се прате. Поставите на 0 да би се искључила преусмерења.",
|
||||||
|
acceptedStatusCodesDescription: "Одаберите статусне кодове који се сматрају успешним одговором.",
|
||||||
|
passwordNotMatchMsg: "Поновљена лозинка се не поклапа.",
|
||||||
|
notificationDescription: "Молим Вас поставите обавештење за масматраче да бисе активирали.",
|
||||||
|
keywordDescription: "Претражи кључну реч у чистом html или JSON одговору са осетљивим великим и малим словима",
|
||||||
|
pauseDashboardHome: "Паузирај",
|
||||||
|
deleteMonitorMsg: "Да ли сте сигурни да желите да обришете овог посматрача?",
|
||||||
|
deleteNotificationMsg: "Да ли сте сигурни д ажелите да уклоните ово обавештење за све посматраче?",
|
||||||
|
resoverserverDescription: "Cloudflare је подразумевани сервер. Можете променити сервер за расзрешавање у било ком тренутку.",
|
||||||
|
rrtypeDescription: "Одаберите RR-Type који желите да посматрате",
|
||||||
|
pauseMonitorMsg: "Да ли сте сигурни да желите да паузирате?",
|
||||||
|
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: "Hostname",
|
||||||
|
Port: "Порт",
|
||||||
|
"Heartbeat Interval": "Интервал откуцаја срца",
|
||||||
|
Retries: "Покушаји",
|
||||||
|
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": "Разрешивачки сервер",
|
||||||
|
"Resource Record Type": "Тип записа ресурса",
|
||||||
|
"Last Result": "Последњи резултат",
|
||||||
|
"Create your admin account": "Наприви администраторски налог",
|
||||||
|
"Repeat Password": "Поновите лозинку",
|
||||||
|
respTime: "Време одг. (мс)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
|
@ -106,5 +106,7 @@ export default {
|
||||||
"Resource Record Type": "RR-typ",
|
"Resource Record Type": "RR-typ",
|
||||||
"Last Result": "Senaste resultat",
|
"Last Result": "Senaste resultat",
|
||||||
"Create your admin account": "Skapa ditt administratörskonto",
|
"Create your admin account": "Skapa ditt administratörskonto",
|
||||||
"Repeat Password": "Upprepa Lösenord"
|
"Repeat Password": "Upprepa Lösenord",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
112
src/languages/zh-CN.js
Normal file
112
src/languages/zh-CN.js
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
export default {
|
||||||
|
languageName: "简体中文",
|
||||||
|
checkEverySecond: "检测频率 {0} 秒",
|
||||||
|
"Avg.": "平均",
|
||||||
|
retriesDescription: "最大重试失败次数",
|
||||||
|
ignoreTLSError: "忽略HTTPS站点的证书错误",
|
||||||
|
upsideDownModeDescription: "反向状态监控(状态码范围外为有效状态,反之为无效)",
|
||||||
|
maxRedirectDescription: "最大重定向次数,设置为 0 禁止重定向",
|
||||||
|
acceptedStatusCodesDescription: "选择被视为成功响应的状态码",
|
||||||
|
passwordNotMatchMsg: "两次密码输入不一致",
|
||||||
|
notificationDescription: "请为监控项配置消息通知",
|
||||||
|
keywordDescription: "检测响应内容中的关键字,区分大小写",
|
||||||
|
pauseDashboardHome: "暂停",
|
||||||
|
deleteMonitorMsg: "确定要删除此监控吗?",
|
||||||
|
deleteNotificationMsg: "确定要删除此消息通知吗?这将对所有监控生效。",
|
||||||
|
resoverserverDescription: "默认服务器 Cloudflare,可以修改为任意你想要使用的DNS服务器",
|
||||||
|
rrtypeDescription: "选择要监控的资源记录类型",
|
||||||
|
pauseMonitorMsg: "确定要暂停吗?",
|
||||||
|
Settings: "设置",
|
||||||
|
Dashboard: "仪表盘",
|
||||||
|
"New Update": "有新版本更新",
|
||||||
|
Language: "语言",
|
||||||
|
Appearance: "外观设置",
|
||||||
|
Theme: "主题",
|
||||||
|
General: "基本设置",
|
||||||
|
Version: "Version",
|
||||||
|
"Check Update On 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: "Ping",
|
||||||
|
"Monitor Type": "监控类型",
|
||||||
|
Keyword: "关键字",
|
||||||
|
"Friendly Name": "自定义名称",
|
||||||
|
URL: "网址URL",
|
||||||
|
Hostname: "主机名",
|
||||||
|
Port: "端口号",
|
||||||
|
"Heartbeat Interval": "心跳间隔",
|
||||||
|
Retries: "重试次数",
|
||||||
|
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": "解析服务器",
|
||||||
|
"Resource Record Type": "资源记录类型",
|
||||||
|
"Last Result": "Last Result",
|
||||||
|
"Create your admin account": "创建管理员账号",
|
||||||
|
"Repeat Password": "重复密码",
|
||||||
|
respTime: "Resp. Time (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
|
}
|
|
@ -103,8 +103,10 @@ export default {
|
||||||
"Resource Record Type": "DNS 記錄類型",
|
"Resource Record Type": "DNS 記錄類型",
|
||||||
resoverserverDescription: "預設值為 Cloudflare DNS 伺服器,你可以轉用其他 DNS 伺服器。",
|
resoverserverDescription: "預設值為 Cloudflare DNS 伺服器,你可以轉用其他 DNS 伺服器。",
|
||||||
rrtypeDescription: "請選擇 DNS 記錄類型",
|
rrtypeDescription: "請選擇 DNS 記錄類型",
|
||||||
pauseMonitorMsg: "Are you sure want to pause?",
|
pauseMonitorMsg: "是否確定暫停?",
|
||||||
"Last Result": "Last Result",
|
"Last Result": "最後結果",
|
||||||
"Create your admin account": "Create your admin account",
|
"Create your admin account": "製作你的管理員帳號",
|
||||||
"Repeat Password": "Repeat Password"
|
"Repeat Password": "重複密碼",
|
||||||
|
respTime: "反應時間 (ms)",
|
||||||
|
notAvailableShort: "N/A"
|
||||||
}
|
}
|
||||||
|
|
12
src/main.js
12
src/main.js
|
@ -26,11 +26,17 @@ import { appName } from "./util.ts";
|
||||||
import en from "./languages/en";
|
import en from "./languages/en";
|
||||||
import zhHK from "./languages/zh-HK";
|
import zhHK from "./languages/zh-HK";
|
||||||
import deDE from "./languages/de-DE";
|
import deDE from "./languages/de-DE";
|
||||||
|
import nlNL from "./languages/nl-NL";
|
||||||
|
import esEs from "./languages/es-ES";
|
||||||
import fr from "./languages/fr";
|
import fr from "./languages/fr";
|
||||||
import ja from "./languages/ja";
|
import ja from "./languages/ja";
|
||||||
import daDK from "./languages/da-DK";
|
import daDK from "./languages/da-DK";
|
||||||
|
import sr from "./languages/sr";
|
||||||
|
import srLatn from "./languages/sr-latn";
|
||||||
import svSE from "./languages/sv-SE";
|
import svSE from "./languages/sv-SE";
|
||||||
import koKR from "./languages/ko-KR";
|
import koKR from "./languages/ko-KR";
|
||||||
|
import ruRU from "./languages/ru-RU";
|
||||||
|
import zhCN from "./languages/zh-CN";
|
||||||
|
|
||||||
const routes = [
|
const routes = [
|
||||||
{
|
{
|
||||||
|
@ -97,11 +103,17 @@ const languageList = {
|
||||||
en,
|
en,
|
||||||
"zh-HK": zhHK,
|
"zh-HK": zhHK,
|
||||||
"de-DE": deDE,
|
"de-DE": deDE,
|
||||||
|
"nl-NL": nlNL,
|
||||||
|
"es-ES": esEs,
|
||||||
"fr": fr,
|
"fr": fr,
|
||||||
"ja": ja,
|
"ja": ja,
|
||||||
"da-DK": daDK,
|
"da-DK": daDK,
|
||||||
|
"sr": sr,
|
||||||
|
"sr-latn": srLatn,
|
||||||
"sv-SE": svSE,
|
"sv-SE": svSE,
|
||||||
"ko-KR": koKR,
|
"ko-KR": koKR,
|
||||||
|
"ru-RU": ruRU,
|
||||||
|
"zh-CN": zhCN,
|
||||||
};
|
};
|
||||||
|
|
||||||
const i18n = createI18n({
|
const i18n = createI18n({
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<div>
|
<div>
|
||||||
<router-link to="/add" class="btn btn-primary mb-3"><font-awesome-icon icon="plus" /> {{ $t("Add New Monitor") }}</router-link>
|
<router-link to="/add" class="btn btn-primary mb-3"><font-awesome-icon icon="plus" /> {{ $t("Add New Monitor") }}</router-link>
|
||||||
</div>
|
</div>
|
||||||
<MonitorList scrollbar="true" />
|
<MonitorList :scrollbar="true" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-md-7 col-xl-8 mb-3">
|
<div class="col-12 col-md-7 col-xl-8 mb-3">
|
||||||
|
|
|
@ -238,7 +238,7 @@ export default {
|
||||||
return this.lastHeartBeat.ping;
|
return this.lastHeartBeat.ping;
|
||||||
}
|
}
|
||||||
|
|
||||||
return "N/A"
|
return this.$t("notAvailableShort")
|
||||||
},
|
},
|
||||||
|
|
||||||
avgPing() {
|
avgPing() {
|
||||||
|
@ -246,7 +246,7 @@ export default {
|
||||||
return this.$root.avgPingList[this.monitor.id];
|
return this.$root.avgPingList[this.monitor.id];
|
||||||
}
|
}
|
||||||
|
|
||||||
return "N/A"
|
return this.$t("notAvailableShort")
|
||||||
},
|
},
|
||||||
|
|
||||||
importantHeartBeatList() {
|
importantHeartBeatList() {
|
||||||
|
|
|
@ -180,17 +180,47 @@
|
||||||
<p>Please use it carefully.</p>
|
<p>Please use it carefully.</p>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<template v-if="$i18n.locale === 'es-ES' ">
|
||||||
|
<p>Seguro que deseas <strong>deshabilitar la autenticación</strong>?</p>
|
||||||
|
<p>Es para <strong>quien implementa autenticación de terceros</strong> ante Uptime Kuma como por ejemplo Cloudflare Access.</p>
|
||||||
|
<p>Por favor usar con cuidado.</p>
|
||||||
|
</template>
|
||||||
|
|
||||||
<template v-if="$i18n.locale === 'zh-HK' ">
|
<template v-if="$i18n.locale === 'zh-HK' ">
|
||||||
<p>你是否確認<strong>取消登入認証</strong>?</p>
|
<p>你是否確認<strong>取消登入認証</strong>?</p>
|
||||||
<p>這個功能是設計給已有<strong>第三方認証</strong>的用家,例如 Cloudflare Access。</p>
|
<p>這個功能是設計給已有<strong>第三方認証</strong>的用家,例如 Cloudflare Access。</p>
|
||||||
<p>請小心使用。</p>
|
<p>請小心使用。</p>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<template v-if="$i18n.locale === 'zh-CN' ">
|
||||||
|
<p>是否确定 <strong>取消登录验证</strong>?</p>
|
||||||
|
<p>这是为 <strong>有第三方认证</strong> 的用户提供的功能,如 Cloudflare Access</p>
|
||||||
|
<p>请谨慎使用!</p>
|
||||||
|
</template>
|
||||||
|
|
||||||
<template v-if="$i18n.locale === 'de-DE' ">
|
<template v-if="$i18n.locale === 'de-DE' ">
|
||||||
<p>Bist du sicher das du die <strong>Authentifizierung deaktivieren</strong> möchtest?</p>
|
<p>Bist du sicher das du die <strong>Authentifizierung deaktivieren</strong> möchtest?</p>
|
||||||
<p>Es ist für <strong>jemanden der eine externe Authentifizierung</strong> vor Uptime Kuma geschaltet hat, wie z.B. Cloudflare Access.</p>
|
<p>Es ist für <strong>jemanden der eine externe Authentifizierung</strong> vor Uptime Kuma geschaltet hat, wie z.B. Cloudflare Access.</p>
|
||||||
<p>Bitte mit Vorsicht nutzen.</p>
|
<p>Bitte mit Vorsicht nutzen.</p>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
<template v-if="$i18n.locale === 'sr' ">
|
||||||
|
<p>Да ли сте сигурни да желите да <strong>искључите аутентификацију</strong>?</p>
|
||||||
|
<p>То је за <strong>оне који имају додату аутентификацију</strong> испред Uptime Kuma као на пример Cloudflare Access.</p>
|
||||||
|
<p>Молим Вас користите ово са пажњом.</p>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template v-if="$i18n.locale === 'sr-latn' ">
|
||||||
|
<p>Da li ste sigurni da želite da <strong>isključite autentifikaciju</strong>?</p>
|
||||||
|
<p>To je za <strong>one koji imaju dodatu autentifikaciju</strong> ispred Uptime Kuma kao na primer Cloudflare Access.</p>
|
||||||
|
<p>Molim Vas koristite ovo sa pažnjom.</p>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<template v-if="$i18n.locale === 'ko-KR' ">
|
||||||
|
<p>정말로 <strong>인증 기능을 끌까요</strong>?</p>
|
||||||
|
<p>이 기능은 <strong>Cloudflare Access와 같은 서드파티 인증</strong>을 Uptime Kuma 앞에 둔 사용자를 위한 기능이에요.</p>
|
||||||
|
<p>신중하게 사용하세요.</p>
|
||||||
|
</template>
|
||||||
</Confirm>
|
</Confirm>
|
||||||
</div>
|
</div>
|
||||||
</transition>
|
</transition>
|
||||||
|
|
Loading…
Reference in a new issue