From d0edf3f8ca3bd7e970bacffc7115353ee1ebfa28 Mon Sep 17 00:00:00 2001
From: Steel <mael.acier@ensiie.fr>
Date: Sun, 12 May 2024 15:24:20 +0200
Subject: [PATCH] fix: first session

---
 package.json       | 2 +-
 src/lib/default.ts | 1 +
 src/lib/index.ts   | 6 +++---
 src/lib/lucia.ts   | 2 +-
 4 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/package.json b/package.json
index cdf5100..9f7df98 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "@arise/aidc-sveltekit",
-  "version": "0.4.0",
+  "version": "0.4.1",
   "type": "module",
   "scripts": {
     "dev": "vite dev",
diff --git a/src/lib/default.ts b/src/lib/default.ts
index 82fc0e6..4ded991 100644
--- a/src/lib/default.ts
+++ b/src/lib/default.ts
@@ -59,6 +59,7 @@ class DefaultLucia<
     this.db
       .prepare("INSERT INTO user (id, subject, claims) VALUES (?, ?, ?)")
       .run(userId, subject, JSON.stringify(claims));
+    return userId;
   }
 }
 
diff --git a/src/lib/index.ts b/src/lib/index.ts
index a567f98..40e520e 100644
--- a/src/lib/index.ts
+++ b/src/lib/index.ts
@@ -151,10 +151,10 @@ export class AriseIdConnect {
     const { wrapper } = this.config;
     const existingUserId = await wrapper.getUserId(sub);
 
-    const userId = existingUserId ?? generateId(15);
+    let userId = existingUserId ?? generateId(15);
 
     if (existingUserId === undefined) {
-      await wrapper.createUser(sub, userId, claims);
+      userId = await wrapper.createUser(sub, userId, claims);
     }
 
     const session = await wrapper.lucia.createSession(userId, {
@@ -202,10 +202,10 @@ export class AriseIdConnect {
   handler(): Handle {
     return sequence(
       this.miscHandler.bind(this),
-      this.sessionHandler.bind(this),
       route(this.paths.login, this.loginHandler.bind(this)),
       route(this.paths.logout, method("POST", this.logoutHandler.bind(this))),
       route(this.paths.callback, this.callbackHandler.bind(this)),
+      this.sessionHandler.bind(this),
     );
   }
 }
diff --git a/src/lib/lucia.ts b/src/lib/lucia.ts
index 6d7ffda..910733f 100644
--- a/src/lib/lucia.ts
+++ b/src/lib/lucia.ts
@@ -68,5 +68,5 @@ export abstract class LuciaWrapper<
     subject: string,
     userId: string,
     claims: UserinfoResponse,
-  ): MaybePromise<void>;
+  ): MaybePromise<string>;
 }
-- 
GitLab