@asgardeo/nextjs 0.3.10 → 0.3.12

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.
Files changed (53) hide show
  1. package/dist/cjs/middleware.js +45 -0
  2. package/dist/cjs/middleware.js.map +7 -0
  3. package/dist/cjs/server/index.js +2 -10
  4. package/dist/cjs/server/index.js.map +2 -2
  5. package/dist/esm/client/contexts/Asgardeo/AsgardeoContext.js +2 -0
  6. package/dist/esm/client/contexts/Asgardeo/AsgardeoContext.js.map +1 -1
  7. package/dist/esm/client/contexts/Asgardeo/AsgardeoProvider.js +3 -1
  8. package/dist/esm/client/contexts/Asgardeo/AsgardeoProvider.js.map +1 -1
  9. package/dist/esm/constants/sessionConstants.js +49 -0
  10. package/dist/esm/constants/sessionConstants.js.map +1 -0
  11. package/dist/esm/middleware.js +35 -0
  12. package/dist/esm/middleware.js.map +1 -0
  13. package/dist/esm/server/AsgardeoProvider.js +4 -2
  14. package/dist/esm/server/AsgardeoProvider.js.map +1 -1
  15. package/dist/esm/server/actions/clearSession.js +49 -0
  16. package/dist/esm/server/actions/clearSession.js.map +1 -0
  17. package/dist/esm/server/actions/getAccessToken.js.map +1 -1
  18. package/dist/esm/server/actions/getSessionId.js.map +1 -1
  19. package/dist/esm/server/actions/getSessionPayload.js.map +1 -1
  20. package/dist/esm/server/actions/handleOAuthCallbackAction.js +6 -3
  21. package/dist/esm/server/actions/handleOAuthCallbackAction.js.map +1 -1
  22. package/dist/esm/server/actions/isSignedIn.js +11 -15
  23. package/dist/esm/server/actions/isSignedIn.js.map +1 -1
  24. package/dist/esm/server/actions/refreshToken.js +86 -0
  25. package/dist/esm/server/actions/refreshToken.js.map +1 -0
  26. package/dist/esm/server/actions/signInAction.js +13 -5
  27. package/dist/esm/server/actions/signInAction.js.map +1 -1
  28. package/dist/esm/server/actions/signOutAction.js.map +1 -1
  29. package/dist/esm/server/actions/switchOrganization.js +8 -9
  30. package/dist/esm/server/actions/switchOrganization.js.map +1 -1
  31. package/dist/esm/server/index.js +0 -3
  32. package/dist/esm/server/index.js.map +1 -1
  33. package/dist/esm/server/middleware/asgardeoMiddleware.js +182 -85
  34. package/dist/esm/server/middleware/asgardeoMiddleware.js.map +1 -1
  35. package/dist/esm/utils/SessionManager.js +54 -7
  36. package/dist/esm/utils/SessionManager.js.map +1 -1
  37. package/dist/esm/utils/decorateConfigWithNextEnv.js +5 -1
  38. package/dist/esm/utils/decorateConfigWithNextEnv.js.map +1 -1
  39. package/dist/esm/utils/handleRefreshToken.js +82 -0
  40. package/dist/esm/utils/handleRefreshToken.js.map +1 -0
  41. package/dist/types/client/contexts/Asgardeo/AsgardeoContext.d.ts +5 -1
  42. package/dist/types/client/contexts/Asgardeo/AsgardeoProvider.d.ts +3 -0
  43. package/dist/types/constants/sessionConstants.d.ts +48 -0
  44. package/dist/types/middleware.d.ts +34 -0
  45. package/dist/types/server/AsgardeoProvider.d.ts +14 -0
  46. package/dist/types/server/actions/clearSession.d.ts +39 -0
  47. package/dist/types/server/actions/isSignedIn.d.ts +8 -3
  48. package/dist/types/server/actions/refreshToken.d.ts +44 -0
  49. package/dist/types/server/index.d.ts +0 -3
  50. package/dist/types/server/middleware/asgardeoMiddleware.d.ts +20 -28
  51. package/dist/types/utils/SessionManager.d.ts +26 -5
  52. package/dist/types/utils/handleRefreshToken.d.ts +46 -0
  53. package/package.json +9 -3
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var middleware_exports = {};
31
+ __export(middleware_exports, {
32
+ asgardeoMiddleware: () => import_asgardeoMiddleware.default,
33
+ createRouteMatcher: () => import_createRouteMatcher.default
34
+ });
35
+ module.exports = __toCommonJS(middleware_exports);
36
+ var import_asgardeoMiddleware = __toESM(require("./server/middleware/asgardeoMiddleware"), 1);
37
+ __reExport(middleware_exports, require("./server/middleware/asgardeoMiddleware"), module.exports);
38
+ var import_createRouteMatcher = __toESM(require("./server/middleware/createRouteMatcher"), 1);
39
+ // Annotate the CommonJS export names for ESM import in node:
40
+ 0 && (module.exports = {
41
+ asgardeoMiddleware,
42
+ createRouteMatcher,
43
+ ...require("./server/middleware/asgardeoMiddleware")
44
+ });
45
+ //# sourceMappingURL=middleware.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/middleware.ts"],
4
+ "sourcesContent": ["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\n/**\n * Edge Runtime entry point \u2014 safe for use in Next.js middleware.ts.\n *\n * This file must only import modules whose full transitive dependency graph\n * contains zero Node.js-only APIs (process.versions, fs, crypto, etc.).\n * Permitted dependencies: jose, fetch, next/server, and local utilities\n * that themselves satisfy the same constraint.\n *\n * Do NOT import from:\n * - AsgardeoNextClient (depends on @asgardeo/node \u2192 @asgardeo/javascript)\n * - server/AsgardeoProvider (depends on @asgardeo/node)\n * - server/actions/* (depend on @asgardeo/node)\n * - client/* (depend on @asgardeo/javascript via @asgardeo/react)\n */\n\nexport {default as asgardeoMiddleware} from './server/middleware/asgardeoMiddleware';\nexport * from './server/middleware/asgardeoMiddleware';\n\nexport {default as createRouteMatcher} from './server/middleware/createRouteMatcher';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAiCA,gCAA4C;AAC5C,+BAAc,mDAlCd;AAoCA,gCAA4C;",
6
+ "names": []
7
+ }
@@ -30,24 +30,16 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
30
30
  var server_exports = {};
31
31
  __export(server_exports, {
32
32
  AsgardeoProvider: () => import_AsgardeoProvider.default,
33
- asgardeo: () => import_asgardeo.default,
34
- asgardeoMiddleware: () => import_asgardeoMiddleware.default,
35
- createRouteMatcher: () => import_createRouteMatcher.default
33
+ asgardeo: () => import_asgardeo.default
36
34
  });
37
35
  module.exports = __toCommonJS(server_exports);
38
36
  var import_asgardeo = __toESM(require("./asgardeo"), 1);
39
37
  var import_AsgardeoProvider = __toESM(require("./AsgardeoProvider.js"), 1);
40
38
  __reExport(server_exports, require("./AsgardeoProvider.js"), module.exports);
41
- var import_asgardeoMiddleware = __toESM(require("./middleware/asgardeoMiddleware"), 1);
42
- __reExport(server_exports, require("./middleware/asgardeoMiddleware"), module.exports);
43
- var import_createRouteMatcher = __toESM(require("./middleware/createRouteMatcher"), 1);
44
39
  // Annotate the CommonJS export names for ESM import in node:
45
40
  0 && (module.exports = {
46
41
  AsgardeoProvider,
47
42
  asgardeo,
48
- asgardeoMiddleware,
49
- createRouteMatcher,
50
- ...require("./AsgardeoProvider.js"),
51
- ...require("./middleware/asgardeoMiddleware")
43
+ ...require("./AsgardeoProvider.js")
52
44
  });
53
45
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/server/index.ts"],
4
- "sourcesContent": ["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\n// @asgardeo/nextjs/server exports.\n\nexport {default as asgardeo} from './asgardeo';\n\nexport {default as AsgardeoProvider} from './AsgardeoProvider.js';\nexport * from './AsgardeoProvider.js';\n\nexport {default as asgardeoMiddleware} from './middleware/asgardeoMiddleware';\nexport * from './middleware/asgardeoMiddleware';\n\nexport {default as createRouteMatcher} from './middleware/createRouteMatcher';\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBA,sBAAkC;AAElC,8BAA0C;AAC1C,2BAAc,kCAvBd;AAyBA,gCAA4C;AAC5C,2BAAc,4CA1Bd;AA4BA,gCAA4C;",
4
+ "sourcesContent": ["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\n// @asgardeo/nextjs/server exports.\n\nexport {default as asgardeo} from './asgardeo';\n\nexport {default as AsgardeoProvider} from './AsgardeoProvider.js';\nexport * from './AsgardeoProvider.js';\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBA,sBAAkC;AAElC,8BAA0C;AAC1C,2BAAc,kCAvBd;",
6
6
  "names": []
7
7
  }
@@ -24,10 +24,12 @@ const AsgardeoContext = createContext({
24
24
  afterSignInUrl: undefined,
25
25
  applicationId: undefined,
26
26
  baseUrl: undefined,
27
+ clearSession: () => Promise.resolve(),
27
28
  isInitialized: false,
28
29
  isLoading: true,
29
30
  isSignedIn: false,
30
31
  organizationHandle: undefined,
32
+ refreshToken: () => Promise.resolve({ expiresAt: 0 }),
31
33
  signIn: () => Promise.resolve({}),
32
34
  signInUrl: undefined,
33
35
  signOut: () => Promise.resolve({}),
@@ -1 +1 @@
1
- {"version":3,"file":"AsgardeoContext.js","sourceRoot":"","sources":["../../../../../src/client/contexts/Asgardeo/AsgardeoContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAGb,OAAO,EAAU,aAAa,EAAC,MAAM,OAAO,CAAC;AAO7C;;GAEG;AACH,MAAM,eAAe,GAAyC,aAAa,CAA8B;IACvG,cAAc,EAAE,SAAS;IACzB,aAAa,EAAE,SAAS;IACxB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,KAAK;IACjB,kBAAkB,EAAE,SAAS;IAC7B,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACxC,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACzC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACxC,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,IAAI;CACX,CAAC,CAAC;AAEH,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAEhD,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"AsgardeoContext.js","sourceRoot":"","sources":["../../../../../src/client/contexts/Asgardeo/AsgardeoContext.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAGb,OAAO,EAAU,aAAa,EAAC,MAAM,OAAO,CAAC;AAW7C;;GAEG;AACH,MAAM,eAAe,GAAyC,aAAa,CAA8B;IACvG,cAAc,EAAE,SAAS;IACzB,aAAa,EAAE,SAAS;IACxB,OAAO,EAAE,SAAS;IAClB,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE;IACrC,aAAa,EAAE,KAAK;IACpB,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,KAAK;IACjB,kBAAkB,EAAE,SAAS;IAC7B,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAC,SAAS,EAAE,CAAC,EAAC,CAAC;IACnD,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACxC,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACzC,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAS,CAAC;IACxC,SAAS,EAAE,SAAS;IACpB,IAAI,EAAE,IAAI;CACX,CAAC,CAAC;AAEH,eAAe,CAAC,WAAW,GAAG,iBAAiB,CAAC;AAEhD,eAAe,eAAe,CAAC"}
@@ -23,7 +23,7 @@ import { useRouter, useSearchParams } from 'next/navigation';
23
23
  import { useEffect, useMemo, useRef, useState } from 'react';
24
24
  import AsgardeoContext from './AsgardeoContext';
25
25
  import logger from '../../../utils/logger';
26
- const AsgardeoClientProvider = ({ baseUrl, children, signIn, signOut, signUp, handleOAuthCallback, createOrganization, preferences, isSignedIn, signInUrl, signUpUrl, user: _user, userProfile: _userProfile, currentOrganization, updateProfile, applicationId, organizationHandle, myOrganizations, revalidateMyOrganizations, getAllOrganizations, switchOrganization, brandingPreference, }) => {
26
+ const AsgardeoClientProvider = ({ baseUrl, children, signIn, clearSession, refreshToken, signOut, signUp, handleOAuthCallback, createOrganization, preferences, isSignedIn, signInUrl, signUpUrl, user: _user, userProfile: _userProfile, currentOrganization, updateProfile, applicationId, organizationHandle, myOrganizations, revalidateMyOrganizations, getAllOrganizations, switchOrganization, brandingPreference, }) => {
27
27
  const reRenderCheckRef = useRef(false);
28
28
  const router = useRouter();
29
29
  const searchParams = useSearchParams();
@@ -152,9 +152,11 @@ const AsgardeoClientProvider = ({ baseUrl, children, signIn, signOut, signUp, ha
152
152
  const contextValue = useMemo(() => ({
153
153
  applicationId,
154
154
  baseUrl,
155
+ clearSession,
155
156
  isLoading,
156
157
  isSignedIn,
157
158
  organizationHandle,
159
+ refreshToken,
158
160
  signIn: handleSignIn,
159
161
  signInUrl,
160
162
  signOut: handleSignOut,
@@ -1 +1 @@
1
- {"version":3,"file":"AsgardeoProvider.js","sourceRoot":"","sources":["../../../../../src/client/contexts/Asgardeo/AsgardeoProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AsgardeoProvider.js","sourceRoot":"","sources":["../../../../../src/client/contexts/Asgardeo/AsgardeoProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
3
+ *
4
+ * WSO2 LLC. licenses this file to you under the Apache License,
5
+ * Version 2.0 (the "License"); you may not use this file except
6
+ * in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing,
12
+ * software distributed under the License is distributed on an
13
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ * KIND, either express or implied. See the License for the
15
+ * specific language governing permissions and limitations
16
+ * under the License.
17
+ */
18
+ /**
19
+ * Number of seconds before access token expiry at which the SDK proactively
20
+ * refreshes the token. A 25-second buffer prevents races where the token is
21
+ * valid when a request starts but expires mid-flight.
22
+ */
23
+ export const REFRESH_BUFFER_SECONDS = 25;
24
+ /**
25
+ * Default session cookie lifetime in seconds (24 hours).
26
+ *
27
+ * Used when no explicit session cookie expiry is configured. The session cookie
28
+ * lifetime can be overridden in two ways (evaluated in this order):
29
+ *
30
+ * 1. `sessionCookieExpiryTime` in `AsgardeoNodeConfig` — set programmatically
31
+ * when initialising the SDK.
32
+ * 2. `ASGARDEO_SESSION_COOKIE_EXPIRY_TIME` environment variable — set in `.env`
33
+ * (e.g. `ASGARDEO_SESSION_COOKIE_EXPIRY_TIME=86400`).
34
+ * 3. This constant — applied when neither of the above is present.
35
+ *
36
+ * Two independent expiry bounds apply to the session and they are generally
37
+ * NOT the same value:
38
+ *
39
+ * - JWT `exp` claim — set by `SessionManager.createSessionToken(...)` from
40
+ * the `accessTokenTtlSeconds` argument (i.e. the access token's `expires_in`
41
+ * returned by the auth server, typically ~1 hour). This controls when
42
+ * `verifySessionToken` rejects the token and is the trigger for a refresh.
43
+ * - Browser cookie `maxAge` — set by the caller (sign-in / refresh / org-switch
44
+ * actions) from `SessionManager.resolveSessionCookieExpiry(...)`, which returns
45
+ * this constant by default (24 hours). This controls how long the browser
46
+ * holds the cookie before discarding it.
47
+ */
48
+ export const DEFAULT_SESSION_COOKIE_EXPIRY_TIME = 86400;
49
+ //# sourceMappingURL=sessionConstants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessionConstants.js","sourceRoot":"","sources":["../../../src/constants/sessionConstants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAW,EAAE,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAW,KAAK,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
3
+ *
4
+ * WSO2 LLC. licenses this file to you under the Apache License,
5
+ * Version 2.0 (the "License"); you may not use this file except
6
+ * in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing,
12
+ * software distributed under the License is distributed on an
13
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ * KIND, either express or implied. See the License for the
15
+ * specific language governing permissions and limitations
16
+ * under the License.
17
+ */
18
+ /**
19
+ * Edge Runtime entry point — safe for use in Next.js middleware.ts.
20
+ *
21
+ * This file must only import modules whose full transitive dependency graph
22
+ * contains zero Node.js-only APIs (process.versions, fs, crypto, etc.).
23
+ * Permitted dependencies: jose, fetch, next/server, and local utilities
24
+ * that themselves satisfy the same constraint.
25
+ *
26
+ * Do NOT import from:
27
+ * - AsgardeoNextClient (depends on @asgardeo/node → @asgardeo/javascript)
28
+ * - server/AsgardeoProvider (depends on @asgardeo/node)
29
+ * - server/actions/* (depend on @asgardeo/node)
30
+ * - client/* (depend on @asgardeo/javascript via @asgardeo/react)
31
+ */
32
+ export { default as asgardeoMiddleware } from './server/middleware/asgardeoMiddleware';
33
+ export * from './server/middleware/asgardeoMiddleware';
34
+ export { default as createRouteMatcher } from './server/middleware/createRouteMatcher';
35
+ //# sourceMappingURL=middleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../src/middleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,wCAAwC,CAAC;AACrF,cAAc,wCAAwC,CAAC;AAEvD,OAAO,EAAC,OAAO,IAAI,kBAAkB,EAAC,MAAM,wCAAwC,CAAC"}
@@ -18,6 +18,7 @@
18
18
  'use server';
19
19
  import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
20
20
  import { AsgardeoRuntimeError } from '@asgardeo/node';
21
+ import clearSession from './actions/clearSession';
21
22
  import createOrganization from './actions/createOrganization';
22
23
  import getAllOrganizations from './actions/getAllOrganizations';
23
24
  import getBrandingPreference from './actions/getBrandingPreference';
@@ -29,6 +30,7 @@ import getUserAction from './actions/getUserAction';
29
30
  import getUserProfileAction from './actions/getUserProfileAction';
30
31
  import handleOAuthCallbackAction from './actions/handleOAuthCallbackAction';
31
32
  import isSignedIn from './actions/isSignedIn';
33
+ import refreshToken from './actions/refreshToken';
32
34
  import signInAction from './actions/signInAction';
33
35
  import signOutAction from './actions/signOutAction';
34
36
  import signUpAction from './actions/signUpAction';
@@ -71,7 +73,7 @@ const AsgardeoServerProvider = async ({ children, afterSignInUrl, afterSignOutUr
71
73
  // Try to get session information from JWT first, then fall back to legacy
72
74
  const sessionPayload = await getSessionPayload();
73
75
  const sessionId = sessionPayload?.sessionId || (await getSessionId()) || '';
74
- const signedIn = sessionPayload ? true : await isSignedIn(sessionId);
76
+ const signedIn = await isSignedIn(sessionId);
75
77
  let user = {};
76
78
  let userProfile = {
77
79
  flattenedProfile: {},
@@ -149,7 +151,7 @@ const AsgardeoServerProvider = async ({ children, afterSignInUrl, afterSignOutUr
149
151
  console.warn('[AsgardeoServerProvider] Failed to fetch branding preference:', error);
150
152
  }
151
153
  }
152
- return (_jsx(AsgardeoClientProvider, { organizationHandle: config?.organizationHandle, applicationId: config?.applicationId, baseUrl: config?.baseUrl, signIn: signInAction, signOut: signOutAction, signUp: signUpAction, handleOAuthCallback: handleOAuthCallbackAction, signInUrl: config?.signInUrl, signUpUrl: config?.signUpUrl, preferences: config?.preferences, clientId: config?.clientId, user: user, currentOrganization: currentOrganization, userProfile: userProfile, updateProfile: updateUserProfileAction, isSignedIn: signedIn, myOrganizations: myOrganizations, getAllOrganizations: getAllOrganizations, switchOrganization: switchOrganization, brandingPreference: brandingPreference, createOrganization: createOrganization, children: children }));
154
+ return (_jsx(AsgardeoClientProvider, { organizationHandle: config?.organizationHandle, applicationId: config?.applicationId, baseUrl: config?.baseUrl, signIn: signInAction, clearSession: clearSession, refreshToken: refreshToken, signOut: signOutAction, signUp: signUpAction, handleOAuthCallback: handleOAuthCallbackAction, signInUrl: config?.signInUrl, signUpUrl: config?.signUpUrl, preferences: config?.preferences, clientId: config?.clientId, user: user, currentOrganization: currentOrganization, userProfile: userProfile, updateProfile: updateUserProfileAction, isSignedIn: signedIn, myOrganizations: myOrganizations, getAllOrganizations: getAllOrganizations, switchOrganization: switchOrganization, brandingPreference: brandingPreference, createOrganization: createOrganization, children: children }));
153
155
  };
154
156
  export default AsgardeoServerProvider;
155
157
  //# sourceMappingURL=AsgardeoProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AsgardeoProvider.js","sourceRoot":"","sources":["../../../src/server/AsgardeoProvider.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AsgardeoProvider.js","sourceRoot":"","sources":["../../../src/server/AsgardeoProvider.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
3
+ *
4
+ * WSO2 LLC. licenses this file to you under the Apache License,
5
+ * Version 2.0 (the "License"); you may not use this file except
6
+ * in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing,
12
+ * software distributed under the License is distributed on an
13
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ * KIND, either express or implied. See the License for the
15
+ * specific language governing permissions and limitations
16
+ * under the License.
17
+ */
18
+ 'use server';
19
+ import { cookies } from 'next/headers';
20
+ import logger from '../../utils/logger';
21
+ import SessionManager from '../../utils/SessionManager';
22
+ /**
23
+ * Deletes all Asgardeo session cookies from the browser without contacting the
24
+ * identity server.
25
+ *
26
+ * Use this for error-recovery scenarios where the local session must be wiped
27
+ * immediately: refresh token failures, corrupt sessions, or forced local sign-out
28
+ * when the identity server is unreachable.
29
+ *
30
+ * For a complete sign-out that also revokes the server-side session and obtains the
31
+ * after-sign-out redirect URL, use `signOutAction` instead.
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * import { clearSession } from '@asgardeo/nextjs/server';
36
+ *
37
+ * // Inside a Server Action or Route Handler:
38
+ * await clearSession();
39
+ * redirect('/sign-in');
40
+ * ```
41
+ */
42
+ const clearSession = async () => {
43
+ const cookieStore = await cookies();
44
+ cookieStore.delete(SessionManager.getSessionCookieName());
45
+ cookieStore.delete(SessionManager.getTempSessionCookieName());
46
+ logger.debug('[clearSession] Session cookies cleared.');
47
+ };
48
+ export default clearSession;
49
+ //# sourceMappingURL=clearSession.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clearSession.js","sourceRoot":"","sources":["../../../../src/server/actions/clearSession.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,cAAc,MAAM,4BAA4B,CAAC;AAIxD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,YAAY,GAAG,KAAK,IAAmB,EAAE;IAC7C,MAAM,WAAW,GAAmB,MAAM,OAAO,EAAE,CAAC;IACpD,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC1D,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,wBAAwB,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getAccessToken.js","sourceRoot":"","sources":["../../../../src/server/actions/getAccessToken.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAGb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAE/E;;;;GAIG;AACH,MAAM,cAAc,GAAG,KAAK,IAAiC,EAAE;IAC7D,MAAM,WAAW,GAA2B,MAAM,OAAO,EAAE,CAAC;IAE5D,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IAEvG,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAwB,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAElG,OAAO,cAAc,CAAC,aAAa,CAAW,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"getAccessToken.js","sourceRoot":"","sources":["../../../../src/server/actions/getAccessToken.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAI/E;;;;GAIG;AACH,MAAM,cAAc,GAAG,KAAK,IAAiC,EAAE;IAC7D,MAAM,WAAW,GAAmB,MAAM,OAAO,EAAE,CAAC;IAEpD,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IAEvG,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAwB,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAElG,OAAO,cAAc,CAAC,aAAa,CAAW,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSessionId.js","sourceRoot":"","sources":["../../../../src/server/actions/getSessionId.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAGb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAE/E;;;;;GAKG;AACH,MAAM,YAAY,GAAG,KAAK,IAAiC,EAAE;IAC3D,MAAM,WAAW,GAA2B,MAAM,OAAO,EAAE,CAAC;IAE5D,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IAEvG,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAwB,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAElG,OAAO,cAAc,CAAC,SAAS,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"getSessionId.js","sourceRoot":"","sources":["../../../../src/server/actions/getSessionId.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAI/E;;;;;GAKG;AACH,MAAM,YAAY,GAAG,KAAK,IAAiC,EAAE;IAC3D,MAAM,WAAW,GAAmB,MAAM,OAAO,EAAE,CAAC;IAEpD,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IAEvG,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,cAAc,GAAwB,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;YAElG,OAAO,cAAc,CAAC,SAAS,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"getSessionPayload.js","sourceRoot":"","sources":["../../../../src/server/actions/getSessionPayload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAGb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAE/E;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,KAAK,IAA8C,EAAE;IAC7E,MAAM,WAAW,GAA2B,MAAM,OAAO,EAAE,CAAC;IAE5D,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IACvG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"getSessionPayload.js","sourceRoot":"","sources":["../../../../src/server/actions/getSessionPayload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAC;AACrC,OAAO,cAAqC,MAAM,4BAA4B,CAAC;AAI/E;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,KAAK,IAA8C,EAAE;IAC7E,MAAM,WAAW,GAAmB,MAAM,OAAO,EAAE,CAAC;IAEpD,MAAM,YAAY,GAAuB,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC,EAAE,KAAK,CAAC;IACvG,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,MAAM,cAAc,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -70,15 +70,19 @@ const handleOAuthCallbackAction = async (code, state, sessionState) => {
70
70
  session_state: sessionState,
71
71
  state,
72
72
  }, {}, sessionId);
73
+ const config = await asgardeoClient.getConfiguration();
73
74
  if (signInResult) {
74
75
  try {
75
76
  const idToken = await asgardeoClient.getDecodedIdToken(sessionId, (signInResult['id_token'] || signInResult['idToken']));
76
77
  const accessToken = (signInResult['accessToken'] || signInResult['access_token']);
78
+ const refreshToken = signInResult['refreshToken'] ?? '';
77
79
  const userIdFromToken = (idToken.sub || signInResult['sub'] || sessionId);
78
80
  const scopes = signInResult['scope'];
79
81
  const organizationId = (idToken['user_org'] || idToken['organization_id']);
80
- const sessionToken = await SessionManager.createSessionToken(accessToken, userIdFromToken, sessionId, scopes, organizationId);
81
- cookieStore.set(SessionManager.getSessionCookieName(), sessionToken, SessionManager.getSessionCookieOptions());
82
+ const expiresIn = signInResult['expiresIn'];
83
+ const sessionCookieExpiryTime = SessionManager.resolveSessionCookieExpiry(config.sessionCookieExpiryTime);
84
+ const sessionToken = await SessionManager.createSessionToken(accessToken, userIdFromToken, sessionId, scopes, expiresIn, refreshToken, organizationId);
85
+ cookieStore.set(SessionManager.getSessionCookieName(), sessionToken, SessionManager.getSessionCookieOptions(sessionCookieExpiryTime));
82
86
  cookieStore.delete(SessionManager.getTempSessionCookieName());
83
87
  }
84
88
  catch (error) {
@@ -86,7 +90,6 @@ const handleOAuthCallbackAction = async (code, state, sessionState) => {
86
90
  ${typeof error === 'string' ? error : JSON.stringify(error)}`);
87
91
  }
88
92
  }
89
- const config = await asgardeoClient.getConfiguration();
90
93
  const afterSignInUrl = config.afterSignInUrl || '/';
91
94
  return {
92
95
  redirectUrl: afterSignInUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"handleOAuthCallbackAction.js","sourceRoot":"","sources":["../../../../src/server/actions/handleOAuthCallbackAction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handleOAuthCallbackAction.js","sourceRoot":"","sources":["../../../../src/server/actions/handleOAuthCallbackAction.ts"],"names":[],"mappings":"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"}
@@ -21,27 +21,23 @@ import getSessionPayload from './getSessionPayload';
21
21
  import AsgardeoNextClient from '../../AsgardeoNextClient';
22
22
  /**
23
23
  * Check if the user is currently signed in.
24
- * First tries JWT session validation, then falls back to legacy session check.
25
24
  *
26
- * @param sessionId - Optional session ID to check (if not provided, gets from cookies)
27
- * @returns True if user is signed in, false otherwise
25
+ * For JWT-based sessions: the session JWT exp claim is now tied to the access
26
+ * token expiry. A successful jwtVerify (inside getSessionPayload) already proves
27
+ * exp > now, so no separate timestamp comparison is needed here.
28
+ *
29
+ * Falls back to the legacy SDK in-memory check when no JWT session cookie exists.
30
+ *
31
+ * @param sessionId - Optional session ID (used only for the legacy fallback path)
32
+ * @returns True if the user is signed in with a valid, non-expired token
28
33
  */
29
34
  const isSignedIn = async (sessionId) => {
30
35
  try {
31
36
  const sessionPayload = await getSessionPayload();
32
37
  if (sessionPayload) {
33
- const resolvedSessionId = sessionPayload.sessionId;
34
- if (resolvedSessionId) {
35
- const client = AsgardeoNextClient.getInstance();
36
- try {
37
- const accessToken = await client.getAccessToken(resolvedSessionId);
38
- return !!accessToken;
39
- }
40
- catch (error) {
41
- return false;
42
- }
43
- }
38
+ return true;
44
39
  }
40
+ // No JWT session — fall back to the legacy SDK in-memory store check.
45
41
  const resolvedSessionId = sessionId || (await getSessionId());
46
42
  if (!resolvedSessionId) {
47
43
  return false;
@@ -51,7 +47,7 @@ const isSignedIn = async (sessionId) => {
51
47
  const accessToken = await client.getAccessToken(resolvedSessionId);
52
48
  return !!accessToken;
53
49
  }
54
- catch (error) {
50
+ catch {
55
51
  return false;
56
52
  }
57
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"isSignedIn.js","sourceRoot":"","sources":["../../../../src/server/actions/isSignedIn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,kBAAkB,MAAM,0BAA0B,CAAC;AAG1D;;;;;;GAMG;AACH,MAAM,UAAU,GAAG,KAAK,EAAE,SAAkB,EAAoB,EAAE;IAChE,IAAI,CAAC;QACH,MAAM,cAAc,GAAoC,MAAM,iBAAiB,EAAE,CAAC;QAElF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,iBAAiB,GAAW,cAAc,CAAC,SAAS,CAAC;YAE3D,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,MAAM,GAAuB,kBAAkB,CAAC,WAAW,EAAE,CAAC;gBACpE,IAAI,CAAC;oBACH,MAAM,WAAW,GAAW,MAAM,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;oBAC3E,OAAO,CAAC,CAAC,WAAW,CAAC;gBACvB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,iBAAiB,GAAuB,SAAS,IAAI,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC;QAElF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,MAAM,GAAuB,kBAAkB,CAAC,WAAW,EAAE,CAAC;QAEpE,IAAI,CAAC;YACH,MAAM,WAAW,GAAW,MAAM,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YAE3E,OAAO,CAAC,CAAC,WAAW,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"isSignedIn.js","sourceRoot":"","sources":["../../../../src/server/actions/isSignedIn.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,YAAY,CAAC;AAEb,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AACpD,OAAO,kBAAkB,MAAM,0BAA0B,CAAC;AAG1D;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,GAAG,KAAK,EAAE,SAAkB,EAAoB,EAAE;IAChE,IAAI,CAAC;QACH,MAAM,cAAc,GAAoC,MAAM,iBAAiB,EAAE,CAAC;QAElF,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,sEAAsE;QACtE,MAAM,iBAAiB,GAAuB,SAAS,IAAI,CAAC,MAAM,YAAY,EAAE,CAAC,CAAC;QAElF,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,MAAM,GAAuB,kBAAkB,CAAC,WAAW,EAAE,CAAC;QAEpE,IAAI,CAAC;YACH,MAAM,WAAW,GAAW,MAAM,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,CAAC;YAC3E,OAAO,CAAC,CAAC,WAAW,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
3
+ *
4
+ * WSO2 LLC. licenses this file to you under the Apache License,
5
+ * Version 2.0 (the "License"); you may not use this file except
6
+ * in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing,
12
+ * software distributed under the License is distributed on an
13
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14
+ * KIND, either express or implied. See the License for the
15
+ * specific language governing permissions and limitations
16
+ * under the License.
17
+ */
18
+ 'use server';
19
+ import { AsgardeoAPIError, logger } from '@asgardeo/node';
20
+ import { cookies } from 'next/headers';
21
+ import AsgardeoNextClient from '../../AsgardeoNextClient';
22
+ import handleRefreshToken from '../../utils/handleRefreshToken';
23
+ import SessionManager from '../../utils/SessionManager';
24
+ /**
25
+ * Server action to refresh the access token using the stored refresh token.
26
+ * Exchanges the refresh token for a new token set and updates the session cookie.
27
+ *
28
+ * Delegates the HTTP exchange to handleRefreshToken so the same logic is shared
29
+ * with the middleware token refresh path.
30
+ *
31
+ * Called from the client side (e.g. AsgardeoClientProvider refreshOnMount) where
32
+ * Next.js allows cookie mutation. When invoked during SSR rendering the cookie
33
+ * write is silently skipped and a warning is logged.
34
+ */
35
+ const refreshToken = async () => {
36
+ try {
37
+ const cookieStore = await cookies();
38
+ const sessionToken = cookieStore.get(SessionManager.getSessionCookieName())?.value;
39
+ if (!sessionToken) {
40
+ throw new AsgardeoAPIError('No active session found. User must be signed in to refresh the token.', 'refreshToken-ServerActionError-002', 'nextjs', 401);
41
+ }
42
+ const sessionPayload = await SessionManager.verifySessionTokenForRefresh(sessionToken);
43
+ const client = AsgardeoNextClient.getInstance();
44
+ const config = await client.getConfiguration();
45
+ const result = await handleRefreshToken(sessionPayload, {
46
+ baseUrl: config.baseUrl ?? '',
47
+ clientId: config.clientId ?? '',
48
+ clientSecret: config.clientSecret ?? '',
49
+ sessionCookieExpiryTime: config.sessionCookieExpiryTime,
50
+ });
51
+ try {
52
+ cookieStore.set(SessionManager.getSessionCookieName(), result.newSessionToken, SessionManager.getSessionCookieOptions(result.sessionCookieExpiryTime));
53
+ }
54
+ catch {
55
+ // cookies().set() is only permitted inside a Server Action invoked from the client
56
+ // or a Route Handler. When this action is called during SSR rendering the write
57
+ // is blocked by Next.js. The middleware refresh path handles that case instead.
58
+ logger.warn('[refreshToken] Could not write session cookie — called from SSR rendering context.');
59
+ }
60
+ const rawExpiresIn = result.tokenResponse.expiresIn;
61
+ const expiresInSeconds = parseInt(rawExpiresIn ?? '', 10);
62
+ if (Number.isNaN(expiresInSeconds)) {
63
+ throw new Error(`[refreshToken] Invalid expiresIn value received: ${rawExpiresIn}`);
64
+ }
65
+ const expiresAt = Math.floor(Date.now() / 1000) + expiresInSeconds;
66
+ logger.debug('[refreshToken] Token refresh succeeded.');
67
+ return { expiresAt };
68
+ }
69
+ catch (error) {
70
+ // Clear the dead session cookie before throwing so the browser is not left
71
+ // holding a stale credential. This is best-effort — if called from an SSR
72
+ // rendering context Next.js blocks cookie mutation; the middleware cleanup
73
+ // path covers that case on the next request.
74
+ try {
75
+ const cookieStore = await cookies();
76
+ cookieStore.delete(SessionManager.getSessionCookieName());
77
+ logger.debug('[refreshToken] Cleared session cookie after refresh failure.');
78
+ }
79
+ catch {
80
+ // Intentionally swallowed — middleware handles cleanup when mutation is blocked.
81
+ }
82
+ throw new AsgardeoAPIError(`Failed to refresh the session: ${error instanceof Error ? error.message : JSON.stringify(error)}`, 'refreshToken-ServerActionError-001', 'nextjs', error instanceof AsgardeoAPIError ? error.statusCode : undefined);
83
+ }
84
+ };
85
+ export default refreshToken;
86
+ //# sourceMappingURL=refreshToken.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refreshToken.js","sourceRoot":"","sources":["../../../../src/server/actions/refreshToken.ts"],"names":[],"mappings":"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"}