From 792ef4ddfb25fa57755b50079ee71ed9b7844ba4 Mon Sep 17 00:00:00 2001 From: MickaelK Date: Thu, 30 Nov 2023 00:21:20 +1100 Subject: [PATCH] chore (error): refactoring error controller --- public/assets/pages/adminpage/ctrl_login.js | 2 +- public/assets/pages/adminpage/ctrl_setup.js | 2 +- public/assets/pages/adminpage/decorator_admin_only.js | 1 - public/assets/pages/ctrl_error.js | 8 +++++--- public/assets/pages/ctrl_notfound.js | 4 +++- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/public/assets/pages/adminpage/ctrl_login.js b/public/assets/pages/adminpage/ctrl_login.js index 24e6cfff..f443fe71 100644 --- a/public/assets/pages/adminpage/ctrl_login.js +++ b/public/assets/pages/adminpage/ctrl_login.js @@ -45,7 +45,7 @@ export default async function(render) { if (err instanceof AjaxError) { switch (err.code()) { case "INTERNAL_SERVER_ERROR": - ctrlError(err)(render); + ctrlError(render)(err); return rxjs.EMPTY; case "FORBIDDEN": return rxjs.of(false); diff --git a/public/assets/pages/adminpage/ctrl_setup.js b/public/assets/pages/adminpage/ctrl_setup.js index cc254fae..9f7b38ba 100644 --- a/public/assets/pages/adminpage/ctrl_setup.js +++ b/public/assets/pages/adminpage/ctrl_setup.js @@ -36,7 +36,7 @@ export default async function(render) { throw new ApplicationError("INTERNAL_ERROR", "Assumption failed"); }), rxjs.tap((ctrl) => ctrl(createRender(qs($page, "[data-bind=\"multistep-form\"]")))), - rxjs.catchError((err) => ctrlError(err)(render)), + rxjs.catchError(ctrlError(render)), )); }; diff --git a/public/assets/pages/adminpage/decorator_admin_only.js b/public/assets/pages/adminpage/decorator_admin_only.js index 24194b8f..080a765f 100644 --- a/public/assets/pages/adminpage/decorator_admin_only.js +++ b/public/assets/pages/adminpage/decorator_admin_only.js @@ -1,5 +1,4 @@ import rxjs, { effect } from "../../lib/rx.js"; -import { AjaxError } from "../../lib/error.js"; import ctrlError from "../ctrl_error.js"; import ctrlLogin from "./ctrl_login.js"; diff --git a/public/assets/pages/ctrl_error.js b/public/assets/pages/ctrl_error.js index 9a44534a..d22167ae 100644 --- a/public/assets/pages/ctrl_error.js +++ b/public/assets/pages/ctrl_error.js @@ -8,12 +8,14 @@ import { AjaxError, ApplicationError } from "../lib/error.js"; import "../components/icon.js"; -export default function(err) { - return async function(render) { +const css = await CSS(import.meta.url, "ctrl_error.css") + +export default function(render) { + return async function(err) { const [msg, trace] = processError(err); const $page = createElement(`
- + home diff --git a/public/assets/pages/ctrl_notfound.js b/public/assets/pages/ctrl_notfound.js index 61411e8a..b0c457a7 100644 --- a/public/assets/pages/ctrl_notfound.js +++ b/public/assets/pages/ctrl_notfound.js @@ -1,4 +1,6 @@ import ctrlError from "./ctrl_error.js"; import { ApplicationError } from "../lib/error.js"; -export default ctrlError(new ApplicationError("Not Found", "404 - Not Found")); +export default function(render) { + ctrlError(render)(new ApplicationError("Not Found", "404 - Not Found")); +}