From 67958105a115ff8b4dd1d1980ea96115dc0ded6d Mon Sep 17 00:00:00 2001 From: Marco Pedone Date: Fri, 27 Mar 2026 18:49:13 +0100 Subject: [PATCH] feat: document login flow and update flow generation for login process --- apps/infoalloggi/docs/flows/login.md | 6 ++++++ apps/infoalloggi/flow-gen.ts | 4 ++-- apps/infoalloggi/src/forms/FormLogin.tsx | 1 + apps/infoalloggi/src/pages/login.tsx | 2 +- apps/infoalloggi/src/server/controllers/auth.controller.ts | 1 + 5 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 apps/infoalloggi/docs/flows/login.md diff --git a/apps/infoalloggi/docs/flows/login.md b/apps/infoalloggi/docs/flows/login.md new file mode 100644 index 0000000..522a015 --- /dev/null +++ b/apps/infoalloggi/docs/flows/login.md @@ -0,0 +1,6 @@ +```mermaid + +graph TD + step_1("Login Page") --> step_2("Login function") + step_2("Login function") --> step_3("Login Result Handling") +``` \ No newline at end of file diff --git a/apps/infoalloggi/flow-gen.ts b/apps/infoalloggi/flow-gen.ts index b70bee4..1b09a7b 100644 --- a/apps/infoalloggi/flow-gen.ts +++ b/apps/infoalloggi/flow-gen.ts @@ -144,14 +144,14 @@ function main() { }); nextSteps.forEach((next) => { - const link = ` ${safeId(current.id)}["${current.label}"] --> ${safeId(next.id)}["${next.label}"]`; + const link = ` ${safeId(current.id)}("${current.label}") --> ${safeId(next.id)}("${next.label}")`; connections.add(link); }); }); // Handle single-node flows (start node with no connections) if (connections.size === 0 && sorted.length > 0 && sorted[0]) { - mermaid.push(` ${safeId(sorted[0].id)}["${sorted[0].label}"]`); + mermaid.push(` ${safeId(sorted[0].id)}("${sorted[0].label}")`); } else { connections.forEach((c) => mermaid.push(c)); } diff --git a/apps/infoalloggi/src/forms/FormLogin.tsx b/apps/infoalloggi/src/forms/FormLogin.tsx index 821f14a..abe2751 100644 --- a/apps/infoalloggi/src/forms/FormLogin.tsx +++ b/apps/infoalloggi/src/forms/FormLogin.tsx @@ -50,6 +50,7 @@ export const FormLogin = () => { toast.error(`${t.auth.login.fail}\n${message}`); }, onSuccess: async (data) => { + // FLOWS: login | 3 | Login Result Handling switch (data.status) { case "not-found": setUserNotFound(true); diff --git a/apps/infoalloggi/src/pages/login.tsx b/apps/infoalloggi/src/pages/login.tsx index cd49e6e..fcb3a80 100644 --- a/apps/infoalloggi/src/pages/login.tsx +++ b/apps/infoalloggi/src/pages/login.tsx @@ -8,7 +8,7 @@ import { useTranslation } from "~/providers/I18nProvider"; */ const LoginPage: NextPage = () => { const { t } = useTranslation(); - + // FLOWS: login | 1 | Login Page return ( <> diff --git a/apps/infoalloggi/src/server/controllers/auth.controller.ts b/apps/infoalloggi/src/server/controllers/auth.controller.ts index 78daba9..bfa53ea 100644 --- a/apps/infoalloggi/src/server/controllers/auth.controller.ts +++ b/apps/infoalloggi/src/server/controllers/auth.controller.ts @@ -67,6 +67,7 @@ export const createUserAdmin = async ({ return { status: "success" as const }; }; +// FLOWS: login | 2 | Login function export const logIn = async ({ email, password,