feat(ui): modal konverter docker run → compose — pratinjau live, tombol klikable, simpan & jalankan, OSC52 copy
CI / test (push) Successful in 25s

This commit is contained in:
oxpoe committed 2026-10-16 02:20:38 +07:00
1 parent 771f7d2452
commit 8880660ce4
5 files changed
+560 -7

No files matched your search

+21 -3
View File
@@ -40,6 +40,21 @@ stack:
busy: "⏳ %s…"
mouseHint: "Every button in this panel is mouse-clickable."
modal:
convertTitle: "⇄ Convert docker run → compose"
inputLabel: "Paste the docker run command:"
previewLabel: "Preview (compose.yaml):"
noPreview: "press Enter to preview…"
nameLabel: "Stack name:"
btnCopy: "Copy"
btnSave: "Save"
btnRun: "Save & Run"
btnCancel: "Cancel"
hint: "Enter preview · Tab switch field · Ctrl+S save · Ctrl+R save & run · Esc close"
badName: "invalid stack name (letters/digits/._- only)"
nameTaken: "stack '%s' already exists"
invalid: "command not valid yet"
host:
local: "local"
@@ -108,9 +123,9 @@ hint:
statsWaiting: "fetching stats…"
inspectWaiting: "fetching inspect…"
procsWaiting: "fetching processes…"
footerHome: "[1/enter] stacks · [t] toast · [T] theme · [a] reduced-motion · [q] quit"
footerStacks: "[u] start · [s] stop · [R] restart · [p] update · [D] down · [j/k] select · [0] home · [q] quit"
footerContainers: "[1-5] sections · [j/k] select · [Tab] focus · [h/l] tab · [r] reload · [0] home · [T] theme · [q] quit"
footerHome: "[1/enter] stacks · [t] toast · [T] theme · [c] convert · [a] reduced-motion · [q] quit"
footerStacks: "[u] start · [s] stop · [R] restart · [p] update · [D] down · [c] convert · [j/k] select · [0] home · [q] quit"
footerContainers: "[1-5] sections · [j/k] select · [Tab] focus · [h/l] tab · [c] convert · [r] reload · [0] home · [T] theme · [q] quit"
footer:
status: "%s animation %s fps · audio: %s"
@@ -124,6 +139,9 @@ toast:
timestamps: "Log timestamps: %s"
stackOk: "Stack '%s': %s done"
stackFail: "Stack '%s' failed"
stackSaved: "Stack '%s' saved"
yamlCopied: "YAML copied to clipboard (OSC52)"
copyFail: "Copy failed"
activity:
waiting: "waiting for Docker events…"
+21 -3
View File
@@ -40,6 +40,21 @@ stack:
busy: "⏳ %s…"
mouseHint: "Semua tombol di panel ini bisa diklik mouse."
modal:
convertTitle: "⇄ Konversi docker run → compose"
inputLabel: "Tempel perintah docker run:"
previewLabel: "Pratinjau (compose.yaml):"
noPreview: "tekan Enter untuk pratinjau…"
nameLabel: "Nama stack:"
btnCopy: "Salin"
btnSave: "Simpan"
btnRun: "Simpan & Jalankan"
btnCancel: "Batal"
hint: "Enter pratinjau · Tab ganti field · Ctrl+S simpan · Ctrl+R simpan & jalankan · Esc tutup"
badName: "nama stack tidak valid (huruf/angka/._- saja)"
nameTaken: "stack '%s' sudah ada"
invalid: "perintah belum valid"
host:
local: "lokal"
@@ -108,9 +123,9 @@ hint:
statsWaiting: "mengambil statistik…"
inspectWaiting: "mengambil inspect…"
procsWaiting: "mengambil daftar proses…"
footerHome: "[1/enter] stack · [t] toast · [T] tema · [a] reduced-motion · [q] keluar"
footerStacks: "[u] jalankan · [s] henti · [R] ulang · [p] perbarui · [D] turunkan · [j/k] pilih · [0] beranda · [q] keluar"
footerContainers: "[1-5] bagian · [j/k] pilih · [Tab] fokus · [h/l] tab · [r] muat ulang · [0] beranda · [T] tema · [q] keluar"
footerHome: "[1/enter] stack · [t] toast · [T] tema · [c] konversi · [a] reduced-motion · [q] keluar"
footerStacks: "[u] jalankan · [s] henti · [R] ulang · [p] perbarui · [D] turunkan · [c] konversi · [j/k] pilih · [0] beranda · [q] keluar"
footerContainers: "[1-5] bagian · [j/k] pilih · [Tab] fokus · [h/l] tab · [c] konversi · [r] muat ulang · [0] beranda · [T] tema · [q] keluar"
footer:
status: "%s animasi %s fps · audio: %s"
@@ -124,6 +139,9 @@ toast:
timestamps: "Timestamp log: %s"
stackOk: "Stack '%s': %s selesai"
stackFail: "Stack '%s' gagal"
stackSaved: "Stack '%s' tersimpan"
yamlCopied: "YAML disalin ke clipboard (OSC52)"
copyFail: "Gagal menyalin"
activity:
waiting: "menunggu event Docker…"