mirror of
https://github.com/louislam/uptime-kuma.git
synced 2024-11-27 16:54:04 +00:00
Merge remote-tracking branch 'origin/master' into dns
This commit is contained in:
commit
1999541802
8 changed files with 1877 additions and 1551 deletions
|
@ -1,4 +1,4 @@
|
|||
# Simple docker-composer.yml
|
||||
# Simple docker-compose.yml
|
||||
# You can change your port or volume location
|
||||
|
||||
version: '3.3'
|
||||
|
|
3200
package-lock.json
generated
3200
package-lock.json
generated
File diff suppressed because it is too large
Load diff
86
package.json
86
package.json
|
@ -61,23 +61,15 @@
|
|||
"build-dist-and-restart": "npm run build && npm run start-server-dev"
|
||||
},
|
||||
"dependencies": {
|
||||
"@fortawesome/fontawesome-svg-core": "~1.2.36",
|
||||
"@fortawesome/free-regular-svg-icons": "~5.15.4",
|
||||
"@fortawesome/free-solid-svg-icons": "~5.15.4",
|
||||
"@fortawesome/vue-fontawesome": "~3.0.0-5",
|
||||
"@louislam/sqlite3": "~15.0.6",
|
||||
"@popperjs/core": "~2.10.2",
|
||||
"args-parser": "~1.3.0",
|
||||
"axios": "~0.26.1",
|
||||
"axios-ntlm": "^1.3.0",
|
||||
"badge-maker": "^3.3.1",
|
||||
"bcryptjs": "~2.4.3",
|
||||
"bootstrap": "5.1.3",
|
||||
"bree": "~7.1.5",
|
||||
"cacheable-lookup": "^6.0.4",
|
||||
"chardet": "^1.3.0",
|
||||
"chart.js": "~3.6.2",
|
||||
"chartjs-adapter-dayjs": "~1.0.0",
|
||||
"check-password-strength": "^2.0.5",
|
||||
"cheerio": "^1.0.0-rc.10",
|
||||
"chroma-js": "^2.1.2",
|
||||
|
@ -88,7 +80,6 @@
|
|||
"express": "~4.17.3",
|
||||
"express-basic-auth": "~1.2.1",
|
||||
"express-static-gzip": "^2.1.7",
|
||||
"favico.js": "^0.3.10",
|
||||
"form-data": "~4.0.0",
|
||||
"http-graceful-shutdown": "~3.1.7",
|
||||
"http-proxy-agent": "^5.0.0",
|
||||
|
@ -103,21 +94,58 @@
|
|||
"nodemailer": "~6.6.5",
|
||||
"notp": "~2.0.3",
|
||||
"password-hash": "~1.2.2",
|
||||
"postcss-rtlcss": "~3.4.1",
|
||||
"postcss-scss": "~4.0.3",
|
||||
"prismjs": "^1.27.0",
|
||||
"prom-client": "~13.2.0",
|
||||
"prometheus-api-metrics": "~3.2.1",
|
||||
"qrcode": "~1.5.0",
|
||||
"redbean-node": "0.1.4",
|
||||
"socket.io": "~4.4.1",
|
||||
"socket.io-client": "~4.4.1",
|
||||
"socks-proxy-agent": "^6.1.1",
|
||||
"tar": "^6.1.11",
|
||||
"tcp-ping": "~0.1.1",
|
||||
"thirty-two": "~1.0.2",
|
||||
"thirty-two": "~1.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@actions/github": "~5.0.1",
|
||||
"@babel/eslint-parser": "~7.17.0",
|
||||
"@babel/preset-env": "^7.15.8",
|
||||
"@fortawesome/fontawesome-svg-core": "~1.2.36",
|
||||
"@fortawesome/free-regular-svg-icons": "~5.15.4",
|
||||
"@fortawesome/free-solid-svg-icons": "~5.15.4",
|
||||
"@fortawesome/vue-fontawesome": "~3.0.0-5",
|
||||
"@popperjs/core": "~2.10.2",
|
||||
"@types/bootstrap": "~5.1.9",
|
||||
"@vitejs/plugin-legacy": "~1.8.2",
|
||||
"@vitejs/plugin-vue": "~2.3.3",
|
||||
"@vue/compiler-sfc": "~3.2.36",
|
||||
"aedes": "^0.46.3",
|
||||
"babel-plugin-rewire": "~1.2.0",
|
||||
"bootstrap": "5.1.3",
|
||||
"chart.js": "~3.6.2",
|
||||
"chartjs-adapter-dayjs": "~1.0.0",
|
||||
"concurrently": "^7.1.0",
|
||||
"core-js": "~3.18.3",
|
||||
"cross-env": "~7.0.3",
|
||||
"dns2": "~2.0.1",
|
||||
"eslint": "~8.14.0",
|
||||
"eslint-plugin-vue": "~8.7.1",
|
||||
"favico.js": "^0.3.10",
|
||||
"jest": "~27.2.5",
|
||||
"jest-puppeteer": "~6.0.3",
|
||||
"postcss-html": "^1.3.1",
|
||||
"postcss-rtlcss": "~3.4.1",
|
||||
"postcss-scss": "~4.0.3",
|
||||
"prismjs": "^1.27.0",
|
||||
"puppeteer": "~13.1.3",
|
||||
"qrcode": "~1.5.0",
|
||||
"rollup-plugin-visualizer": "^5.6.0",
|
||||
"sass": "~1.42.1",
|
||||
"stylelint": "~14.7.1",
|
||||
"stylelint-config-standard": "~25.0.0",
|
||||
"timezones-list": "~3.0.1",
|
||||
"typescript": "~4.4.4",
|
||||
"v-pagination-3": "~0.1.7",
|
||||
"vite": "~2.9.9",
|
||||
"vite-plugin-compression": "^0.5.1",
|
||||
"vue": "next",
|
||||
"vue-chart-3": "3.0.9",
|
||||
"vue-confirm-dialog": "~1.0.2",
|
||||
|
@ -129,35 +157,7 @@
|
|||
"vue-qrcode": "~1.0.0",
|
||||
"vue-router": "~4.0.14",
|
||||
"vue-toastification": "~2.0.0-rc.5",
|
||||
"vuedraggable": "~4.1.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@actions/github": "~5.0.1",
|
||||
"@babel/eslint-parser": "~7.17.0",
|
||||
"@babel/preset-env": "^7.15.8",
|
||||
"@types/bootstrap": "~5.1.9",
|
||||
"@vitejs/plugin-legacy": "~1.8.2",
|
||||
"@vitejs/plugin-vue": "~2.3.3",
|
||||
"@vue/compiler-sfc": "~3.2.36",
|
||||
"aedes": "^0.46.3",
|
||||
"babel-plugin-rewire": "~1.2.0",
|
||||
"concurrently": "^7.1.0",
|
||||
"core-js": "~3.18.3",
|
||||
"cross-env": "~7.0.3",
|
||||
"dns2": "~2.0.1",
|
||||
"eslint": "~8.14.0",
|
||||
"eslint-plugin-vue": "~8.7.1",
|
||||
"jest": "~27.2.5",
|
||||
"jest-puppeteer": "~6.0.3",
|
||||
"postcss-html": "^1.3.1",
|
||||
"puppeteer": "~13.1.3",
|
||||
"rollup-plugin-visualizer": "^5.6.0",
|
||||
"sass": "~1.42.1",
|
||||
"stylelint": "~14.7.1",
|
||||
"stylelint-config-standard": "~25.0.0",
|
||||
"typescript": "~4.4.4",
|
||||
"vite": "~2.9.9",
|
||||
"vite-plugin-compression": "^0.5.1",
|
||||
"vuedraggable": "~4.1.0",
|
||||
"wait-on": "^6.0.1"
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because one or more lines are too long
Before Width: | Height: | Size: 6.4 KiB After Width: | Height: | Size: 893 B |
|
@ -45,6 +45,8 @@ class StatusPage extends BeanModel {
|
|||
$("link[rel=icon]")
|
||||
.attr("href", statusPage.icon)
|
||||
.removeAttr("type");
|
||||
|
||||
$("link[rel=apple-touch-icon]").remove();
|
||||
}
|
||||
|
||||
const head = $("head");
|
||||
|
@ -61,6 +63,9 @@ class StatusPage extends BeanModel {
|
|||
</script>
|
||||
`);
|
||||
|
||||
// manifest.json
|
||||
$("link[rel=manifest]").attr("href", `/api/status-page/${statusPage.slug}/manifest.json`);
|
||||
|
||||
return $.root().html();
|
||||
}
|
||||
|
||||
|
|
|
@ -107,4 +107,42 @@ router.get("/api/status-page/heartbeat/:slug", cache("1 minutes"), async (reques
|
|||
}
|
||||
});
|
||||
|
||||
// Status page's manifest.json
|
||||
router.get("/api/status-page/:slug/manifest.json", cache("1440 minutes"), async (request, response) => {
|
||||
allowDevAllOrigin(response);
|
||||
let slug = request.params.slug;
|
||||
|
||||
try {
|
||||
// Get Status Page
|
||||
let statusPage = await R.findOne("status_page", " slug = ? ", [
|
||||
slug
|
||||
]);
|
||||
|
||||
if (!statusPage) {
|
||||
response.statusCode = 404;
|
||||
response.json({
|
||||
msg: "Not Found"
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
// Response
|
||||
response.json({
|
||||
"name": statusPage.title,
|
||||
"start_url": "/status/" + statusPage.slug,
|
||||
"display": "standalone",
|
||||
"icons": [
|
||||
{
|
||||
"src": statusPage.icon,
|
||||
"sizes": "128x128",
|
||||
"type": "image/png"
|
||||
}
|
||||
]
|
||||
});
|
||||
|
||||
} catch (error) {
|
||||
send403(response, error.message);
|
||||
}
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
|
|
@ -90,8 +90,11 @@ export default {
|
|||
"New Password": "Nieuw wachtwoord",
|
||||
"Repeat New Password": "Herhaal nieuw wachtwoord",
|
||||
"Update Password": "Vernieuw wachtwoord",
|
||||
"Disable Auth": "Autorisatie uitschakelen",
|
||||
"Enable Auth": "Autorisatie inschakelen",
|
||||
"Disable Auth": "Authenticatie uitschakelen",
|
||||
"Enable Auth": "Authenticatie inschakelen",
|
||||
"disableauth.message1": "Weet je zeker dat je <strong>authenticatie wilt uitschakelen</strong>?",
|
||||
"disableauth.message2": "Er zijn omstandigheden waarbij je <strong>authenticatie door derden wilt implementeren</strong> voor Uptime Kuma, zoals Cloudflare Access, Authelia of andere authenticatiemechanismen.",
|
||||
"Please use this option carefully!": "Gebruik deze optie zorgvuldig!",
|
||||
Logout: "Uitloggen",
|
||||
Leave: "Vertrekken",
|
||||
"I understand, please disable": "Ik begrijp het, schakel a.u.b. uit",
|
||||
|
@ -351,7 +354,7 @@ export default {
|
|||
Discard: "Weggooien",
|
||||
Cancel: "Annuleren",
|
||||
"Powered by": "Mogelijk gemaakt door",
|
||||
shrinkDatabaseDescription: "Trigger database VACUUM voor SQLite. Als de database na 1.10.0 gemaakt is, dan is AUTO_VACUUM al aangezet en deze actie niet nodig.",
|
||||
shrinkDatabaseDescription: "Activeer database VACUUM voor SQLite. Als de database na 1.10.0 aangemaakt is, dan staat AUTO_VACUUM al aan en is deze actie niet nodig.",
|
||||
serwersms: "SerwerSMS.pl",
|
||||
serwersmsAPIUser: "API Gebruikersnaam (incl. webapi_ prefix)",
|
||||
serwersmsAPIPassword: "API Wachtwoord",
|
||||
|
@ -386,7 +389,7 @@ export default {
|
|||
proxyDescription: "Proxies moeten worden toegewezen aan een monitor om te functioneren.",
|
||||
enableProxyDescription: "Deze proxy heeft geen effect op monitor verzoeken totdat het is geactiveerd. Je kunt tijdelijk de proxy uitschakelen voor alle monitors voor activatie status.",
|
||||
setAsDefaultProxyDescription: "Deze proxy wordt standaard aangezet voor alle nieuwe monitors. Je kunt nog steeds de proxy apart uitschakelen voor elke monitor.",
|
||||
"Certificate Chain": "Certificaat Chain",
|
||||
"Certificate Chain": "Certificaatketen",
|
||||
Valid: "Geldig",
|
||||
Invalid: "Ongeldig",
|
||||
AccessKeyId: "AccessKey ID",
|
||||
|
@ -407,7 +410,7 @@ export default {
|
|||
High: "Hoog",
|
||||
Retry: "Opnieuw",
|
||||
Topic: "Onderwerp",
|
||||
"WeCom Bot Key": "WeCom Bot Sleutel",
|
||||
"WeCom Bot Key": "WeCom Bot Key",
|
||||
"Setup Proxy": "Proxy instellen",
|
||||
"Proxy Protocol": "Proxy Protocol",
|
||||
"Proxy Server": "Proxy Server",
|
||||
|
@ -449,7 +452,6 @@ export default {
|
|||
"Issuer:": "Uitgever:",
|
||||
"Fingerprint:": "Vingerafruk:",
|
||||
"No status pages": "Geen status pagina's",
|
||||
"Domain Name Expiry Notification": "Domein Naam Verloop Notificatie",
|
||||
Proxy: "Proxy",
|
||||
"Date Created": "Datum Aangemaakt",
|
||||
onebotHttpAddress: "OneBot HTTP Adres",
|
||||
|
@ -460,6 +462,70 @@ export default {
|
|||
onebotSafetyTips: "Voor de veiligheid moet een toegangssleutel worden ingesteld",
|
||||
"PushDeer Key": "PushDeer Key",
|
||||
"Footer Text": "Footer Tekst",
|
||||
"Show Powered By": "Laat 'Mogeljik gemaakt door' zien",
|
||||
"Show Powered By": "Laat \"Mogeljik gemaakt door\" zien",
|
||||
"Domain Names": "Domein Namen",
|
||||
"pushoversounds pushover": "Pushover (default)",
|
||||
"pushoversounds bike": "Bike",
|
||||
"pushoversounds bugle": "Bugle",
|
||||
"pushoversounds cashregister": "Cash Register",
|
||||
"pushoversounds classical": "Classical",
|
||||
"pushoversounds cosmic": "Cosmic",
|
||||
"pushoversounds falling": "Falling",
|
||||
"pushoversounds gamelan": "Gamelan",
|
||||
"pushoversounds incoming": "Incoming",
|
||||
"pushoversounds intermission": "Intermission",
|
||||
"pushoversounds magic": "Magic",
|
||||
"pushoversounds mechanical": "Mechanical",
|
||||
"pushoversounds pianobar": "Piano Bar",
|
||||
"pushoversounds siren": "Siren",
|
||||
"pushoversounds spacealarm": "Space Alarm",
|
||||
"pushoversounds tugboat": "Tug Boat",
|
||||
"pushoversounds alien": "Alien Alarm (long)",
|
||||
"pushoversounds climb": "Climb (long)",
|
||||
"pushoversounds persistent": "Persistent (long)",
|
||||
"pushoversounds echo": "Pushover Echo (long)",
|
||||
"pushoversounds updown": "Up Down (long)",
|
||||
"pushoversounds vibrate": "Vibrate Only",
|
||||
"pushoversounds none": "None (silent)",
|
||||
dnsPortDescription: "DNS-serverpoort. Standaard ingesteld op 53. Je kunt de poort op elk moment wijzigen.",
|
||||
error: "fout",
|
||||
critical: "kritisch",
|
||||
wayToGetPagerDutyKey: "Je kunt dit krijgen door naar Service -> Service Directory -> (Selecteer een service) -> Integraties -> Integratie toevoegen te gaan. Hier kunt u zoeken naar \"Events API V2\". Meer informatie {0}",
|
||||
"Integration Key": "Integration Key",
|
||||
"Integration URL": "Integration URL",
|
||||
"Auto resolve or acknowledged": "Automatisch oplossen of bevestigen",
|
||||
"do nothing": "niets doen",
|
||||
"auto acknowledged": "automatisch bevestigen",
|
||||
"auto resolve": "automatisch oplossen",
|
||||
Authentication: "authenticatie",
|
||||
signedInDisp: "Aangemeld als {0}",
|
||||
signedInDispDisabled: "Authenticatie uitgeschakeld.",
|
||||
"Certificate Expiry Notification": "Melding over verlopen certificaat",
|
||||
"Recipient Number": "Nummer ontvanger",
|
||||
"From Name/Number": "Van naam/nummer",
|
||||
"Leave blank to use a shared sender number.": "Laat leeg om een gedeeld afzendernummer te gebruiken.",
|
||||
endpoint: "endpoint",
|
||||
pushyAPIKey: "Secret API Key",
|
||||
pushyToken: "Device token",
|
||||
"Show update if available": "Update weergeven indien beschikbaar",
|
||||
"Also check beta release": "Controleer ook de bètaversies",
|
||||
"Using a Reverse Proxy?": "Een reverse proxy gebruiken?",
|
||||
"Check how to config it for WebSocket": "Controleer hoe je het configureert voor een WebSocket",
|
||||
"Steam Game Server": "Steam gameserver",
|
||||
"Most likely causes:": "Meest waarschijnlijke oorzaken:",
|
||||
"The resource is no longer available.": "De paginabron is niet langer beschikbaar.",
|
||||
"There might be a typing error in the address.": "Er zit een typefout in het de URL.",
|
||||
"What you can try:": "Wat je kan proberen:",
|
||||
"Retype the address.": "De URL controleren en/of opnnieuw typen.",
|
||||
"Go back to the previous page.": "Terug naar de vorige pagina.",
|
||||
"Coming Soon": "Binnenkort beschikbaar",
|
||||
wayToGetClickSendSMSToken: "Je kan een API Username en API Key krijgen vanuit {0} .",
|
||||
"Connection String": "Connection String",
|
||||
Query: "Query",
|
||||
settingsCertificateExpiry: "TLS Certificate Expiry",
|
||||
certificationExpiryDescription: "HTTPS Monitors trigger notification when TLS certificate expires in:",
|
||||
"ntfy Topic": "ntfy Topic",
|
||||
Domain: "Domein",
|
||||
Workstation: "Werkstation",
|
||||
disableCloudflaredNoAuthMsg: "De \"Geen authenticatie\" modus staat aan, wachtwoord is niet vereist.",
|
||||
};
|
||||
|
|
|
@ -184,8 +184,8 @@ export default {
|
|||
"Add a monitor": "Dodaj monitor",
|
||||
"Edit Status Page": "Uredi statusno stran",
|
||||
"Go to Dashboard": "Pojdi na nadzorno ploščo",
|
||||
"Status Page": "Página de Status",
|
||||
"Status Pages": "Página de Status",
|
||||
"Status Page": "Statusna stran",
|
||||
"Status Pages": "Statusne strani",
|
||||
defaultNotificationName: "Moje {notification} Obvestilo ({number})",
|
||||
here: "tukaj",
|
||||
Required: "Obvezno",
|
||||
|
|
Loading…
Reference in a new issue