Skip to content

Commit bf77bf9

Browse files
authored
Merge pull request #84 from Koosha-Owji/main
fix: prevent users from being logged out when browser session ends
2 parents 815d4b8 + 6db91b1 commit bf77bf9

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

src/lib/hooks/sessionHooks.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ export async function sessionHooks({ event }: { event: EventHandler }) {
1616
secure: process.env.NODE_ENV === "production",
1717
sameSite: "lax",
1818
httpOnly: true,
19+
maxAge: 29 * 24 * 60 * 60,
1920
},
2021
);
2122
};

src/tests/hooks.spec.ts

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,4 +154,34 @@ describe("sessionHooks", () => {
154154
expect(retrievedValue1).toBeUndefined();
155155
expect(retrievedValue2).toBeUndefined();
156156
});
157+
158+
it("should set cookies with 29-day expiry", async () => {
159+
// Arrange
160+
const event = {
161+
request: {},
162+
cookies: {
163+
set: vi.fn(),
164+
get: vi.fn(),
165+
},
166+
};
167+
168+
await sessionHooks({ event });
169+
170+
// Act
171+
await event.request.setSessionItem("testKey", "testValue");
172+
173+
// Assert
174+
expect(event.cookies.set).toHaveBeenCalledWith(
175+
"kinde_testKey",
176+
"testValue",
177+
expect.objectContaining({
178+
maxAge: 29 * 24 * 60 * 60,
179+
domain: process.env.KINDE_COOKIE_DOMAIN,
180+
path: "/",
181+
secure: process.env.NODE_ENV === "production",
182+
sameSite: "lax",
183+
httpOnly: true,
184+
}),
185+
);
186+
});
157187
});

0 commit comments

Comments
 (0)