From 7019800769985a8d0a8753d7e6cc3724f65108e7 Mon Sep 17 00:00:00 2001 From: Julien Herr Date: Mon, 25 May 2026 09:14:48 +0200 Subject: [PATCH] feat(admin): land on feed emails page after creation --- src/routes/admin.test.ts | 6 ++++-- src/routes/admin/feeds.tsx | 5 +---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/routes/admin.test.ts b/src/routes/admin.test.ts index 1a08584..636b4e6 100644 --- a/src/routes/admin.test.ts +++ b/src/routes/admin.test.ts @@ -151,8 +151,10 @@ describe("Admin Routes", () => { body: formData, }); - expect(res.status).toBe(302); // Redirects back to dashboard - expect(res.headers.get("Location")).toBe("/admin?view=list#your-feeds"); + expect(res.status).toBe(302); // Redirects to new feed's emails page + expect(res.headers.get("Location")).toMatch( + /^\/admin\/feeds\/.+\/emails$/, + ); // Verify feed was created in KV const feedList = (await mockEnv.EMAIL_STORAGE.get( diff --git a/src/routes/admin/feeds.tsx b/src/routes/admin/feeds.tsx index e5349e5..06a9fa4 100644 --- a/src/routes/admin/feeds.tsx +++ b/src/routes/admin/feeds.tsx @@ -70,7 +70,6 @@ feedsRouter.post("/create", async (c) => { let title: string; let description: string | undefined; let language: string; - let view: string; let allowedSenders: string[]; let blockedSenders: string[]; let lifetimeHoursRaw: string | undefined; @@ -81,7 +80,6 @@ feedsRouter.post("/create", async (c) => { description = body.description != null ? String(body.description) : undefined; language = String(body.language ?? "en"); - view = "list"; allowedSenders = Array.isArray(body.allowedSenders) ? normalizeAllowedSenders( (body.allowedSenders as unknown[]).map(String), @@ -99,7 +97,6 @@ feedsRouter.post("/create", async (c) => { title = formData.get("title")?.toString() || ""; description = formData.get("description")?.toString(); language = formData.get("language")?.toString() || "en"; - view = formData.get("view")?.toString() === "table" ? "table" : "list"; allowedSenders = parseAllowedSenders( formData.get("allowed_senders")?.toString() || "", ); @@ -138,7 +135,7 @@ feedsRouter.post("/create", async (c) => { }); } - return c.redirect(`/admin?view=${view}#your-feeds`); + return c.redirect(`/admin/feeds/${feedId}/emails`); } catch (error) { logger.error("Error creating feed", { error: String(error) }); if (c.req.header("Content-Type")?.includes("application/json")) {