@functionalcms/svelte-components 5.6.0 → 5.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,10 +1,10 @@
1
1
  import { sequence } from "@sveltejs/kit/hooks";
2
2
  import errorHandler from "./auth/errorHandle";
3
3
  import { paraglideHandler } from "./handlers/paraglideHandler";
4
- import sessionStorageHandler from "./handlers/sessionStorageHandler";
5
4
  import authorizationHandle from "./auth/authorizationHandle";
6
5
  import { userHandler } from "./handlers/userHandler";
7
6
  import { accessTokenHandler } from "./handlers/accessTokenHandler";
7
+ import handleHealthCheck from "./handlers/handleHealthCheck";
8
8
  export const hookSequence = (secret, paraglideMiddleware, getTextDirection, customHooks) => {
9
- return sequence(userHandler(secret), accessTokenHandler(secret), errorHandler, paraglideHandler(paraglideMiddleware, getTextDirection), authorizationHandle(), ...customHooks);
9
+ return sequence(userHandler(secret), accessTokenHandler(secret), errorHandler, paraglideHandler(paraglideMiddleware, getTextDirection), authorizationHandle(), handleHealthCheck(), ...customHooks);
10
10
  };
@@ -3,10 +3,14 @@ import { loadCookie } from '../cookies';
3
3
  const accessTokenCookie = "functionalcms_access_token";
4
4
  export const accessTokenHandler = (secret) => {
5
5
  return async ({ event, resolve }) => {
6
- let token = await loadCookie(event.cookies, secret, accessTokenCookie);
7
- if (token) {
8
- event.locals.token = token;
6
+ try {
7
+ let token = await loadCookie(event.cookies, secret, accessTokenCookie);
8
+ if (token) {
9
+ event.locals.token = token;
10
+ }
11
+ }
12
+ finally {
13
+ return resolve(event);
9
14
  }
10
- return resolve(event);
11
15
  };
12
16
  };
@@ -0,0 +1,3 @@
1
+ import { type Handle } from '@sveltejs/kit';
2
+ declare const handleHealthCheck: () => Handle;
3
+ export default handleHealthCheck;
@@ -0,0 +1,16 @@
1
+ import {} from '@sveltejs/kit';
2
+ const handleHealthCheck = () => {
3
+ return async ({ event, resolve }) => {
4
+ const path = event.url.pathname;
5
+ if (path.startsWith('/health_check/') === true) {
6
+ return new Response(JSON.stringify({ ok: true }), {
7
+ status: 200,
8
+ headers: { 'Content-Type': 'application/json' }
9
+ });
10
+ }
11
+ else {
12
+ return resolve(event);
13
+ }
14
+ };
15
+ };
16
+ export default handleHealthCheck;
@@ -6,23 +6,28 @@ export const sessionStorageHandler = (url, token, contentName) => {
6
6
  token: token
7
7
  });
8
8
  return async ({ event, resolve }) => {
9
- const user = event.locals?.user;
10
- const uniqueKey = `${user?.id}_${contentName}`;
11
- if (user) {
12
- const itemContent = await redis.get(uniqueKey);
13
- if (itemContent != ''
14
- && (Array.isArray(itemContent) != [] && itemContent.length > 0)
15
- && itemContent != null) {
16
- event.locals[contentName] = itemContent;
9
+ try {
10
+ const user = event.locals?.user;
11
+ const uniqueKey = `${user?.id}_${contentName}`;
12
+ if (user) {
13
+ const itemContent = await redis.get(uniqueKey);
14
+ if (itemContent != ''
15
+ && (Array.isArray(itemContent) != [] && itemContent.length > 0)
16
+ && itemContent != null) {
17
+ event.locals[contentName] = itemContent;
18
+ }
17
19
  }
18
- }
19
- const result = await resolve(event);
20
- if (user) {
21
- if (event.locals[contentName]) {
22
- redis.set(uniqueKey, JSON.stringify(event.locals[contentName]), { ex: 3600 });
20
+ const result = await resolve(event);
21
+ if (user) {
22
+ if (event.locals[contentName]) {
23
+ redis.set(uniqueKey, JSON.stringify(event.locals[contentName]), { ex: 3600 });
24
+ }
23
25
  }
26
+ return result;
27
+ }
28
+ catch {
29
+ return await resolve(event);
24
30
  }
25
- return result;
26
31
  };
27
32
  };
28
33
  export default sessionStorageHandler;
@@ -13,11 +13,15 @@ const retrieveUser = async (idToken) => {
13
13
  };
14
14
  export const userHandler = (secret) => {
15
15
  return async ({ event, resolve }) => {
16
- let idToken = await loadCookie(event.cookies, secret, accessTokenCookie);
17
- if (idToken) {
18
- let user = await retrieveUser(idToken);
19
- event.locals.user = user;
16
+ try {
17
+ let idToken = await loadCookie(event.cookies, secret, accessTokenCookie);
18
+ if (idToken) {
19
+ let user = await retrieveUser(idToken);
20
+ event.locals.user = user;
21
+ }
22
+ }
23
+ finally {
24
+ return resolve(event);
20
25
  }
21
- return resolve(event);
22
26
  };
23
27
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@functionalcms/svelte-components",
3
- "version": "5.6.0",
3
+ "version": "5.8.0",
4
4
  "license": "MIT",
5
5
  "watch": {
6
6
  "build": {