Commit Graph
3 Commits
Author SHA1 Message Date
clawbot 3f96f4f81b fix: match original table UI with immediate per-action submission
Check / check (pull_request) Successful in 4s
Replace the Save All workflow with the original per-action behavior:
- Edit row: shows Save/Cancel buttons, submits full set immediately
- Delete row: shows confirmation dialog, submits full set immediately
- Add row: submits full set immediately on Add click

Moves Alpine.js logic into a proper envVarEditor component in
app-detail.js. Initializes env var data from hidden span elements
with data attributes for safe HTML escaping.

All actions collect the complete env var set and POST to the single
bulk endpoint POST /apps/{id}/env — no Save All button needed.
2026-03-10 11:23:36 -07:00
clawbot b3cda1515f feat: monolithic env var editing (bulk save, no per-var CRUD)
Check / check (pull_request) Successful in 4s
Replace individual env var add/edit/delete with a single bulk save
endpoint. The UI now shows a textarea with KEY=VALUE lines. On save,
all existing env vars are deleted and the full submitted set is
inserted.

- Replace HandleEnvVarAdd, HandleEnvVarEdit, HandleEnvVarDelete with
  HandleEnvVarSave
- Collapse 3 routes into single POST /apps/{id}/env
- Template uses textarea instead of per-row edit/delete forms
- No individual env var IDs exposed in the UI
- Extract parseEnvPairs helper to keep cyclomatic complexity low
- Use strings.SplitSeq per modernize linter
- Update tests for new bulk save behavior

closes #156
closes #163
2026-03-10 11:05:19 -07:00
clawbot 30f81078bd fix: use /env routes for env var CRUD, fixing 404 on env var forms
Check / check (pull_request) Successful in 3m7s
Change route patterns in routes.go from /env-vars to /env and update
edit/delete form actions in app_detail.html to match. The add form
already used /env and was correct.

Update test route setup to match the new /env paths.

Closes #156
2026-03-06 03:50:17 -08:00