mirror of
https://github.com/kiddin9/op-packages.git
synced 2026-10-31 11:55:13 +08:00
🐤 Sync 2026-08-24 23:23:52
This commit is contained in:
1 parent
406281adb5
commit
cf5ae27e91
82 files changed
+5971
-5537
No files matched your search
@@ -116,6 +116,22 @@ function processLines(buffer, onChunk) {
|
||||
return buffer;
|
||||
}
|
||||
|
||||
// Parse the docker multiplexed stream format, https://docs.docker.com/reference/api/engine/version/v1.43/#stream-format
|
||||
function parse_multiplexed_stream(buffer) {
|
||||
const output = [];
|
||||
|
||||
while (buffer.length > 0) {
|
||||
if (buffer.length < 8) break; // Not enough data for header
|
||||
let stream_type = buffer.charCodeAt(0);
|
||||
let payload_length = (buffer.charCodeAt(4) << 24) | (buffer.charCodeAt(5) << 16) | (buffer.charCodeAt(6) << 8) | buffer.charCodeAt(7);
|
||||
if (buffer.length < 8 + payload_length) break; // Not enough data for payload
|
||||
let payload = buffer.slice(8, 8 + payload_length);
|
||||
output.push({ type: stream_type, payload: payload });
|
||||
buffer = buffer.slice(8 + payload_length);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
function call_docker(method, path, options = {}) {
|
||||
return loadPromise.then(() => {
|
||||
@@ -228,20 +244,24 @@ function call_docker(method, path, options = {}) {
|
||||
let parsed = safeText || text;
|
||||
const contentType = response.headers.get('content-type') || '';
|
||||
|
||||
// Try normal JSON parse first
|
||||
try {
|
||||
parsed = JSON.parse(text);
|
||||
} catch (err) {
|
||||
// If the payload is newline-delimited JSON (Docker events), split and parse each line
|
||||
if (['application/json',
|
||||
'application/x-ndjson',
|
||||
'application/json-seq'].includes(contentType) || safeText.includes('\n')) {
|
||||
const lines = safeText.split(/\r?\n/).filter(Boolean);
|
||||
try {
|
||||
parsed = lines.map(l => JSON.parse(l));
|
||||
} catch (err2) {
|
||||
// Fall back to raw text if parsing fails
|
||||
parsed = text;
|
||||
if ("application/vnd.docker.multiplexed-stream" == contentType) {
|
||||
parsed = parse_multiplexed_stream(safeText);
|
||||
} else {
|
||||
// Try normal JSON parse first
|
||||
try {
|
||||
parsed = JSON.parse(text);
|
||||
} catch (err) {
|
||||
// If the payload is newline-delimited JSON (Docker events), split and parse each line
|
||||
if (['application/json',
|
||||
'application/x-ndjson',
|
||||
'application/json-seq'].includes(contentType) || safeText.includes('\n')) {
|
||||
const lines = safeText.split(/\r?\n/).filter(Boolean);
|
||||
try {
|
||||
parsed = lines.map(l => JSON.parse(l));
|
||||
} catch (err2) {
|
||||
// Fall back to raw text if parsing fails
|
||||
parsed = text;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1280,13 +1280,14 @@ const ansiToHtml = function(text) {
|
||||
// Escape HTML special characters
|
||||
const escapeHtml = (str) => {
|
||||
const map = {
|
||||
' ': ' ',
|
||||
'&': '&',
|
||||
'<': '<',
|
||||
'>': '>',
|
||||
'"': '"',
|
||||
"'": '''
|
||||
};
|
||||
return str.replace(/[&<>"']/g, m => map[m]);
|
||||
return str.replace(/[&<>"' ]/g, m => map[m]);
|
||||
};
|
||||
|
||||
// Split by ANSI escape sequences and process
|
||||
|
||||
@@ -1684,7 +1684,10 @@ return dm2.dv.extend({
|
||||
return false;
|
||||
}
|
||||
|
||||
const logText = response?.body || _('No logs available');
|
||||
let logText = response?.body || _('No logs available');
|
||||
if ("application/vnd.docker.multiplexed-stream" == response?.headers['content-type']) {
|
||||
logText = (response?.body || []).map((frame)=>frame.payload).join('');
|
||||
}
|
||||
// Convert ANSI codes to HTML and set innerHTML
|
||||
logsDiv.innerHTML = dm2.ansiToHtml(logText);
|
||||
logsDiv.scrollTop = logsDiv.scrollHeight;
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2025-10-05 13:02+0000\n"
|
||||
"Last-Translator: A R Asad <arasad222@gmail.com>\n"
|
||||
"PO-Revision-Date: 2026-08-06 20:04+0000\n"
|
||||
"Last-Translator: Mehedi Hasan <asmaparvin019@gmail.com>\n"
|
||||
"Language-Team: Bengali (Bangladesh) <https://hosted.weblate.org/projects/"
|
||||
"openwrt/luciapplicationsdockerman/bn_BD/>\n"
|
||||
"Language: bn_BD\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 5.14-dev\n"
|
||||
"X-Generator: Weblate 2026.8.1.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -940,7 +940,7 @@ msgstr ""
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:359
|
||||
msgid "Import"
|
||||
msgstr ""
|
||||
msgstr "ইম্পরট"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/overview.js:202
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/overview.js:212
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-07-13 02:01+0000\n"
|
||||
"PO-Revision-Date: 2026-08-14 18:35+0000\n"
|
||||
"Last-Translator: Pavel Borecki <pavel.borecki@gmail.com>\n"
|
||||
"Language-Team: Czech <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/cs/>\n"
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n"
|
||||
"X-Generator: Weblate 2026.7.1.dev0\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -866,7 +866,7 @@ msgstr "Název stroje"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:60
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/networks.js:178
|
||||
msgid "ID"
|
||||
msgstr "Identifikátor"
|
||||
msgstr "Identif."
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:45
|
||||
msgid "IP VLAN"
|
||||
@@ -984,7 +984,7 @@ msgstr "Info"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:73
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:72
|
||||
msgid "Ingress"
|
||||
msgstr "Dovnitř"
|
||||
msgstr "Vstup"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:73
|
||||
msgid ""
|
||||
@@ -1409,7 +1409,7 @@ msgstr "Operační výstup"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:89
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:80
|
||||
msgid "Options"
|
||||
msgstr "Možnosti"
|
||||
msgstr "Předvolby"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:46
|
||||
msgid "Overlay network"
|
||||
@@ -1641,7 +1641,7 @@ msgstr "Prostředky"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1802
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:242
|
||||
msgid "Restart"
|
||||
msgstr "Restartovat"
|
||||
msgstr "Restart"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/overview.js:154
|
||||
msgctxt "daemon restart action"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-06-22 22:15+0000\n"
|
||||
"PO-Revision-Date: 2026-08-14 17:53+0000\n"
|
||||
"Last-Translator: Franco Castillo <castillofrancodamian@gmail.com>\n"
|
||||
"Language-Team: Spanish <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/es/>\n"
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 2026.7.dev0\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -1685,7 +1685,7 @@ msgstr "Ejecutar comando"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:84
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:141
|
||||
msgid "Running"
|
||||
msgstr "Ejecutando"
|
||||
msgstr "Ejecutándose"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:833
|
||||
msgid "Running Processes"
|
||||
@@ -2093,7 +2093,7 @@ msgstr "Vista general de Volúmenes"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/configuration.js:75
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1763
|
||||
msgid "Warning"
|
||||
msgstr "Aviso"
|
||||
msgstr "Advertencia"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1078
|
||||
msgid "WebSocket"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-06-07 18:23+0000\n"
|
||||
"PO-Revision-Date: 2026-08-16 17:38+0000\n"
|
||||
"Last-Translator: Aindriú Mac Giolla Eoin <aindriu80@gmail.com>\n"
|
||||
"Language-Team: Irish <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/ga/>\n"
|
||||
@@ -9,7 +9,7 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=5; plural=n==1 ? 0 : n==2 ? 1 : (n>2 && n<7) ? 2 :"
|
||||
"(n>6 && n<11) ? 3 : 4;\n"
|
||||
"X-Generator: Weblate 2026.6\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -45,7 +45,7 @@ msgstr "Aisteoir"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:582
|
||||
msgid "Add"
|
||||
msgstr "Cuir"
|
||||
msgstr "Cuir leis"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:315
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:620
|
||||
@@ -254,7 +254,7 @@ msgstr "Glanadh an taisce tógála"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1189
|
||||
msgid "Clear"
|
||||
msgstr "Soiléir"
|
||||
msgstr "Glan"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/images.js:617
|
||||
msgid "Click to add a new tag to this image"
|
||||
@@ -988,7 +988,7 @@ msgstr "Eolas"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:73
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:72
|
||||
msgid "Ingress"
|
||||
msgstr "Iontráil"
|
||||
msgstr "Dul Isteach"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:73
|
||||
msgid ""
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2025-12-07 21:54+0000\n"
|
||||
"PO-Revision-Date: 2026-08-05 02:03+0000\n"
|
||||
"Last-Translator: Monarch "
|
||||
"<monarch.scrap-0p@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Japanese <https://hosted.weblate.org/projects/openwrt/"
|
||||
@@ -9,7 +9,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 5.15-dev\n"
|
||||
"X-Generator: Weblate 2026.8.1.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -759,7 +759,7 @@ msgstr ""
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/configuration.js:77
|
||||
msgid "Fatal"
|
||||
msgstr ""
|
||||
msgstr "致命的"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:924
|
||||
msgid "File"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-06-27 12:02+0000\n"
|
||||
"PO-Revision-Date: 2026-08-07 23:22+0000\n"
|
||||
"Last-Translator: Hyeonjeong Lee <h9101654@gmail.com>\n"
|
||||
"Language-Team: Korean <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/ko/>\n"
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 2026.7.dev0\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -973,7 +973,7 @@ msgstr "정보(Info)"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:73
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:72
|
||||
msgid "Ingress"
|
||||
msgstr ""
|
||||
msgstr "인그레스"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:73
|
||||
msgid ""
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-05-03 08:19+0000\n"
|
||||
"Last-Translator: BoneNI <bounkirdni@gmail.com>\n"
|
||||
"PO-Revision-Date: 2026-08-15 13:06+0000\n"
|
||||
"Last-Translator: Bone NI <bounkirdni@gmail.com>\n"
|
||||
"Language-Team: Lao <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/lo/>\n"
|
||||
"Language: lo\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 5.17.1\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -65,11 +65,11 @@ msgstr "ຂັ້ນສູງ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:590
|
||||
msgid "Aliases"
|
||||
msgstr ""
|
||||
msgstr "ນາມແຝງ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1923
|
||||
msgid "Aliases (optional):"
|
||||
msgstr ""
|
||||
msgstr "ນາມແຝງ (ເລືອກໄດ້):"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/events.js:342
|
||||
msgid "All Subtypes"
|
||||
@@ -109,7 +109,7 @@ msgstr "ສາມາດເຊື່ອມຕໍ່ໄດ້"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/overview.js:139
|
||||
msgid "Available"
|
||||
msgstr "ພ້ອມໃຊ້ງານ"
|
||||
msgstr "ມີຢູ່"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:431
|
||||
msgid "Back to Containers"
|
||||
@@ -242,7 +242,7 @@ msgstr "ລ້າງ build cache ແລ້ວ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1189
|
||||
msgid "Clear"
|
||||
msgstr "ລ້າງ"
|
||||
msgstr "ລ້າງອອກ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/images.js:617
|
||||
msgid "Click to add a new tag to this image"
|
||||
@@ -477,7 +477,7 @@ msgstr "ດີບັກ (Debug)"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:753
|
||||
msgid "Default (daemon)"
|
||||
msgstr ""
|
||||
msgstr "ຄ່າເລີ່ມຕົ້ນ (daemon)"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/configuration.js:57
|
||||
msgid "Default bridge"
|
||||
@@ -877,7 +877,7 @@ msgstr "ທີ່ຢູ່ IPv4"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1919
|
||||
msgid "IPv4 Address (optional):"
|
||||
msgstr ""
|
||||
msgstr "ທີ່ຢູ່ IPv4 (ເລືອກໄດ້):"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:64
|
||||
msgid "IPv6"
|
||||
@@ -891,7 +891,7 @@ msgstr "ທີ່ຢູ່ IPv6"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1921
|
||||
msgid "IPv6 Address (optional):"
|
||||
msgstr ""
|
||||
msgstr "ທີ່ຢູ່ IPv6 (ເລືອກໄດ້):"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:586
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:134
|
||||
@@ -973,7 +973,7 @@ msgstr "ຂໍ້ມູນ"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:73
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:72
|
||||
msgid "Ingress"
|
||||
msgstr "Ingress"
|
||||
msgstr "ຂາເຂົ້າ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:73
|
||||
msgid ""
|
||||
@@ -1085,7 +1085,7 @@ msgstr "ຕົວເລືອກລັອກ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:751
|
||||
msgid "Log driver"
|
||||
msgstr ""
|
||||
msgstr "ໄດເວີການບັນທຶກ (Log driver)"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:745
|
||||
msgid "Log driver options"
|
||||
@@ -1211,7 +1211,7 @@ msgstr "ສະຖິຕິເນັດເວີກ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:282
|
||||
msgid "Network Aliases"
|
||||
msgstr ""
|
||||
msgstr "ນາມແຝງເຄືອຂ່າຍ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:100
|
||||
msgid "Network Configurations"
|
||||
@@ -1376,7 +1376,7 @@ msgstr "ສຳລັບເນັດເວີກທີ່ຜູ້ໃຊ້ກຳ
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:351
|
||||
msgid "Open in browser"
|
||||
msgstr ""
|
||||
msgstr "ເປີດໃນບຣາວເຊີ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:899
|
||||
msgid "Operation failed"
|
||||
@@ -1621,7 +1621,7 @@ msgstr "ຊັບພະຍາກອນ"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1802
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:242
|
||||
msgid "Restart"
|
||||
msgstr "ຣີສະຕາດ"
|
||||
msgstr "ເລີ່ມໃໝ່"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/overview.js:154
|
||||
msgctxt "daemon restart action"
|
||||
@@ -2161,7 +2161,7 @@ msgstr "ອິເມຈ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:755
|
||||
msgid "json-file"
|
||||
msgstr ""
|
||||
msgstr "json-file"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:336
|
||||
msgid "kill"
|
||||
@@ -2173,7 +2173,7 @@ msgstr "ໂຫຼດ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:754
|
||||
msgid "local"
|
||||
msgstr ""
|
||||
msgstr "local"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:383
|
||||
msgid "mount"
|
||||
@@ -2189,7 +2189,7 @@ msgstr "node"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:757
|
||||
msgid "none"
|
||||
msgstr ""
|
||||
msgstr "ບໍ່ມີ"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:337
|
||||
msgid "oom"
|
||||
@@ -2258,7 +2258,7 @@ msgstr "stop"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:756
|
||||
msgid "syslog"
|
||||
msgstr ""
|
||||
msgstr "syslog"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:364
|
||||
msgid "tag"
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-07-05 14:58+0000\n"
|
||||
"Last-Translator: Deni Dgabiev <ghostcraft412@gmail.com>\n"
|
||||
"PO-Revision-Date: 2026-08-14 12:12+0000\n"
|
||||
"Last-Translator: SnIPeRSnIPeR "
|
||||
"<snipersniper@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Russian <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/ru/>\n"
|
||||
"Language: ru\n"
|
||||
@@ -9,7 +10,7 @@ msgstr ""
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
|
||||
"X-Generator: Weblate 2026.7.1.dev0\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -253,7 +254,7 @@ msgstr "Кэш сборки очищен"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1189
|
||||
msgid "Clear"
|
||||
msgstr "Сбросить"
|
||||
msgstr "Очистить"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/images.js:617
|
||||
msgid "Click to add a new tag to this image"
|
||||
@@ -639,7 +640,7 @@ msgstr "Дублировать/Редактировать контейнер: %s
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:422
|
||||
msgid "Edit"
|
||||
msgstr "Редактировать"
|
||||
msgstr "Изменить"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:315
|
||||
msgid "Edit Mount"
|
||||
@@ -1415,7 +1416,7 @@ msgstr "Результат операции"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:89
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:80
|
||||
msgid "Options"
|
||||
msgstr "Опции"
|
||||
msgstr "Параметры"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:46
|
||||
msgid "Overlay network"
|
||||
@@ -1472,7 +1473,7 @@ msgstr "Приостановить этот контейнер"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:86
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:143
|
||||
msgid "Paused"
|
||||
msgstr "Приостановлено"
|
||||
msgstr "На паузе"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:742
|
||||
msgid "Per CPU Stats"
|
||||
@@ -1754,7 +1755,7 @@ msgstr ""
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:354
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1801
|
||||
msgid "Start"
|
||||
msgstr "Начало"
|
||||
msgstr "Запустить"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/containers.js:208
|
||||
msgid "Start this container"
|
||||
@@ -1773,7 +1774,7 @@ msgstr "Статистика"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:721
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:840
|
||||
msgid "Status"
|
||||
msgstr "Статус"
|
||||
msgstr "Состояние"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1109
|
||||
msgid "Stderr"
|
||||
@@ -2004,7 +2005,7 @@ msgstr "Возобновить этот контейнер"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:582
|
||||
msgid "Update"
|
||||
msgstr "Применить"
|
||||
msgstr "Обновить"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1358
|
||||
msgid "Updated"
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-06-09 01:01+0000\n"
|
||||
"PO-Revision-Date: 2026-07-28 20:29+0000\n"
|
||||
"Last-Translator: Oğuz Ersen <oguz@ersen.moe>\n"
|
||||
"Language-Team: Turkish <https://hosted.weblate.org/projects/openwrt/"
|
||||
"luciapplicationsdockerman/tr/>\n"
|
||||
@@ -8,7 +8,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=n != 1;\n"
|
||||
"X-Generator: Weblate 2026.6\n"
|
||||
"X-Generator: Weblate 2026.8.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -251,7 +251,7 @@ msgstr ""
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1189
|
||||
msgid "Clear"
|
||||
msgstr ""
|
||||
msgstr "Temizle"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/images.js:617
|
||||
msgid "Click to add a new tag to this image"
|
||||
@@ -326,7 +326,7 @@ msgstr ""
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1520
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1532
|
||||
msgid "Connected"
|
||||
msgstr ""
|
||||
msgstr "Bağlandı"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1063
|
||||
msgid "Connected to container console"
|
||||
@@ -541,7 +541,7 @@ msgstr ""
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1538
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1557
|
||||
msgid "Disconnected"
|
||||
msgstr ""
|
||||
msgstr "Bağlantı kesildi"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/images.js:536
|
||||
msgid "Do you want to remove the tag \"%s\"?"
|
||||
@@ -1285,7 +1285,7 @@ msgstr ""
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:679
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:249
|
||||
msgid "No"
|
||||
msgstr ""
|
||||
msgstr "Hayır"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:1877
|
||||
msgid "No additional networks available to connect"
|
||||
@@ -2073,7 +2073,7 @@ msgstr ""
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:679
|
||||
msgid "Yes"
|
||||
msgstr ""
|
||||
msgstr "Evet"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/dockerman/common.js:323
|
||||
msgid "attach"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"PO-Revision-Date: 2026-06-05 19:02+0000\n"
|
||||
"Last-Translator: 大王叫我来巡山 "
|
||||
"PO-Revision-Date: 2026-08-15 13:57+0000\n"
|
||||
"Last-Translator: Hosted Weblate user 54392 "
|
||||
"<hamburger2048@users.noreply.hosted.weblate.org>\n"
|
||||
"Language-Team: Chinese (Simplified Han script) <https://hosted.weblate.org/"
|
||||
"projects/openwrt/luciapplicationsdockerman/zh_Hans/>\n"
|
||||
@@ -9,7 +9,7 @@ msgstr ""
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
"X-Generator: Weblate 2026.6\n"
|
||||
"X-Generator: Weblate 2026.9.dev0\n"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:505
|
||||
msgid "/mnt/path"
|
||||
@@ -45,7 +45,7 @@ msgstr "操作方"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:582
|
||||
msgid "Add"
|
||||
msgstr "新增"
|
||||
msgstr "添加"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:315
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container_new.js:620
|
||||
@@ -972,7 +972,7 @@ msgstr "信息"
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network.js:73
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:72
|
||||
msgid "Ingress"
|
||||
msgstr "入口"
|
||||
msgstr "入站"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/network_new.js:73
|
||||
msgid ""
|
||||
@@ -1398,7 +1398,7 @@ msgstr "覆盖网络"
|
||||
|
||||
#: applications/luci-app-dockerman/root/usr/share/luci/menu.d/luci-app-dockerman.json:19
|
||||
msgid "Overview"
|
||||
msgstr "概况"
|
||||
msgstr "概览"
|
||||
|
||||
#: applications/luci-app-dockerman/htdocs/luci-static/resources/view/dockerman/container.js:847
|
||||
msgid "PID"
|
||||
|
||||
@@ -100,6 +100,23 @@ function coerce_values_to_string(obj) {
|
||||
return obj;
|
||||
};
|
||||
|
||||
// Parse the docker multiplexed stream format, https://docs.docker.com/reference/api/engine/version/v1.43/#stream-format
|
||||
function parse_multiplexed_stream(buffer) {
|
||||
let output = [];
|
||||
|
||||
while (length(buffer) > 0) {
|
||||
if (length(buffer) < 8) break; // Not enough data for header
|
||||
let stream_type = ord(buffer, 0);
|
||||
let payload_length = ord(buffer, 4) << 24 | ord(buffer, 5) << 16 | ord(buffer, 6) << 8 | ord(buffer, 7);
|
||||
if (length(buffer) < 8 + payload_length) break; // Not enough data for payload
|
||||
let payload = substr(buffer, 8, payload_length);
|
||||
push(output, { type: stream_type, payload: payload });
|
||||
buffer = substr(buffer, 8 + payload_length);
|
||||
}
|
||||
|
||||
return output;
|
||||
};
|
||||
|
||||
function call_docker(method, path, options) {
|
||||
options = options || {};
|
||||
const headers = options.headers || {};
|
||||
@@ -277,6 +294,8 @@ function call_docker(method, path, options) {
|
||||
} else {
|
||||
response_body = data;
|
||||
}
|
||||
} else if (response_headers['content-type'] === 'application/vnd.docker.multiplexed-stream' && response_body) {
|
||||
response_body = parse_multiplexed_stream(response_body);
|
||||
}
|
||||
|
||||
return {
|
||||
|
||||
Reference in new issue
Block a user