From 848a6117512e063496ac4dfc6d08919367d2f914 Mon Sep 17 00:00:00 2001 From: DecDuck Date: Mon, 28 Oct 2024 22:16:29 +1100 Subject: [PATCH] server side and user client side completed for registration --- components/HeaderUserWidget.vue | 2 +- error.vue | 154 ++++++----- package.json | 2 + pages/register.vue | 246 +++++++++++++++++- .../v1/admin/auth/invitation/index.delete.ts | 17 ++ .../api/v1/admin/auth/invitation/index.get.ts | 9 + .../v1/admin/auth/invitation/index.post.ts | 27 ++ .../api/v1/admin/import/version/index.post.ts | 27 +- server/api/v1/auth/signup/simple.get.ts | 20 ++ server/api/v1/auth/signup/simple.post.ts | 23 +- tailwind.config.js | 5 +- yarn.lock | 62 ++++- 12 files changed, 499 insertions(+), 95 deletions(-) create mode 100644 server/api/v1/admin/auth/invitation/index.delete.ts create mode 100644 server/api/v1/admin/auth/invitation/index.get.ts create mode 100644 server/api/v1/admin/auth/invitation/index.post.ts create mode 100644 server/api/v1/auth/signup/simple.get.ts diff --git a/components/HeaderUserWidget.vue b/components/HeaderUserWidget.vue index 073181c..18e4b6c 100644 --- a/components/HeaderUserWidget.vue +++ b/components/HeaderUserWidget.vue @@ -22,7 +22,7 @@ leave-to-class="transform opacity-0 scale-95" > NuxtError, + error: Object as () => NuxtError, }); const route = useRoute(); const user = useUser(); +const statusCode = props.error?.statusCode; +const message = + props.error?.statusMessage || + props.error?.message || + "An unknown error occurred."; +const showSignIn = statusCode ? statusCode == 403 || statusCode == 401 : false; async function signIn() { - clearError({ - redirect: `/signin?redirect=${encodeURIComponent(route.fullPath)}`, - }); + clearError({ + redirect: `/signin?redirect=${encodeURIComponent(route.fullPath)}`, + }); } useHead({ - title: `${props.error?.statusCode ?? "An unknown error occurred"} | Drop`, + title: `${statusCode ?? message} | Drop`, }); console.log(props.error); diff --git a/package.json b/package.json index b5018c5..c5a8262 100644 --- a/package.json +++ b/package.json @@ -17,8 +17,10 @@ "@prisma/client": "5.20.0", "axios": "^1.7.7", "bcrypt": "^5.1.1", + "canvas": "^2.11.2", "fast-fuzzy": "^1.12.0", "file-type-mime": "^0.4.3", + "jdenticon": "^3.3.0", "markdown-it": "^14.1.0", "moment": "^2.30.1", "nuxt": "^3.13.2", diff --git a/pages/register.vue b/pages/register.vue index 3c8e2d6..a369b8b 100644 --- a/pages/register.vue +++ b/pages/register.vue @@ -1,26 +1,260 @@