New-webhook page: optional HTTP target URL and archive with pruning (closes #373)
check / check (push) Successful in 3m23s

The new-webhook page keeps name, description and retention and adds an
HTTP target URL field and an archive checkbox. A filled-in URL creates
an http target named HTTP; a checked archive shows a pruning choice
(never, 1h, 12h, 24h, 30d, 90d, 365d) and creates a database target
named Archive with that expiry. Each target goes through the add
target form's validation, and the webhook, its entrypoint and its
targets are created in one transaction. A refused form comes back with
every value entered, retention included.

Model: opus-5-5
This commit is contained in:
2026-10-02 21:20:15 +00:00
parent ff24638ba4
commit 46399d7d7b
7 changed files with 571 additions and 50 deletions
+3 -2
View File
@@ -71,8 +71,9 @@ document.addEventListener("alpine:init", function () {
// Something a click shows and hides: the mobile menu, an add form,
// an entrypoint's edit form, an event in the event log or in the
// recent events, a delivery's attempts. It starts hidden, or shown
// when its element has the data-open attribute.
// recent events, a delivery's attempts, the new webhook page's
// archive pruning choice. It starts hidden, or shown when its
// element has the data-open attribute.
window.Alpine.data("collapsible", function () {
return {
open: false,