From 134fe22fded2585d7d57c942cc4a05a3cc5fd9d9 Mon Sep 17 00:00:00 2001 From: "alexei.dolgolyov" Date: Thu, 7 May 2026 00:57:18 +0300 Subject: [PATCH] refactor(ui): standardize boolean inputs on ToggleSwitch Replace raw with the ToggleSwitch component on sites/[id] (encrypt-secret), sites/new (render-markdown, enable-storage), and stacks/new (deploy-immediately). Document the convention in CLAUDE.md so future forms keep the same control instead of mixing styles. --- CLAUDE.md | 4 ++++ web/src/routes/sites/[id]/+page.svelte | 9 +++---- web/src/routes/sites/new/+page.svelte | 17 ++++++------- web/src/routes/stacks/new/+page.svelte | 33 ++++---------------------- 4 files changed, 23 insertions(+), 40 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 933da9b..f35db68 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -8,3 +8,7 @@ Start/restart with: `./scripts/dev-server.sh` - Auto-generates `ENCRYPTION_KEY` if not set - Default login: `admin` / `admin123` - Override port: `LISTEN_ADDR=:9000 ./scripts/dev-server.sh` + +## Frontend + +- **Boolean inputs use `ToggleSwitch`** (`$lib/components/ToggleSwitch.svelte`) — the slide-style switch is the unified control across the WebUI. Do not introduce raw `` elements; place a `` next to a label/help block instead. diff --git a/web/src/routes/sites/[id]/+page.svelte b/web/src/routes/sites/[id]/+page.svelte index 05d405e..d086f39 100644 --- a/web/src/routes/sites/[id]/+page.svelte +++ b/web/src/routes/sites/[id]/+page.svelte @@ -8,6 +8,7 @@ import FormField from '$lib/components/FormField.svelte'; import ConfirmDialog from '$lib/components/ConfirmDialog.svelte'; import ForgeHero from '$lib/components/ForgeHero.svelte'; + import ToggleSwitch from '$lib/components/ToggleSwitch.svelte'; import WebhookPanel from '$lib/components/WebhookPanel.svelte'; import ContainerStats from '$lib/components/ContainerStats.svelte'; import ContainerLogs from '$lib/components/ContainerLogs.svelte'; @@ -304,10 +305,10 @@
- +
+ + {$t('sites.encryptSecret')} +
-