@frontegg/nextjs 6.7.21-alpha.4441481917 → 6.7.21-alpha.4455122973

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 (136) hide show
  1. package/CHANGELOG.md +3 -1
  2. package/README.md +1 -1
  3. package/api/index.js +31 -22
  4. package/api/index.js.map +1 -1
  5. package/api/urls.js +17 -7
  6. package/api/urls.js.map +1 -1
  7. package/api/utils.js +35 -20
  8. package/api/utils.js.map +1 -1
  9. package/app/ClientFronteggProvider.js +17 -10
  10. package/app/ClientFronteggProvider.js.map +1 -1
  11. package/app/FronteggAppProvider.js +22 -14
  12. package/app/FronteggAppProvider.js.map +1 -1
  13. package/app/FronteggAppRouter.d.ts +0 -1
  14. package/app/FronteggAppRouter.js +19 -11
  15. package/app/FronteggAppRouter.js.map +1 -1
  16. package/app/helpers.js +23 -12
  17. package/app/helpers.js.map +1 -1
  18. package/app/index.js +38 -3
  19. package/app/index.js.map +1 -1
  20. package/common/AppContext.js +9 -3
  21. package/common/AppContext.js.map +1 -1
  22. package/common/AuthorizedContent.js +14 -8
  23. package/common/AuthorizedContent.js.map +1 -1
  24. package/common/FronteggBaseProvider.js +30 -21
  25. package/common/FronteggBaseProvider.js.map +1 -1
  26. package/common/FronteggRouterBase.d.ts +1 -1
  27. package/common/FronteggRouterBase.js +41 -21
  28. package/common/FronteggRouterBase.js.map +1 -1
  29. package/common/helpers.js +15 -7
  30. package/common/helpers.js.map +1 -1
  31. package/common/index.js +44 -4
  32. package/common/index.js.map +1 -1
  33. package/common/useRequestAuthorizeSSR.js +11 -5
  34. package/common/useRequestAuthorizeSSR.js.map +1 -1
  35. package/config/constants.js +10 -3
  36. package/config/constants.js.map +1 -1
  37. package/config/helpers.js +24 -14
  38. package/config/helpers.js.map +1 -1
  39. package/config/index.js +27 -15
  40. package/config/index.js.map +1 -1
  41. package/config/types.js +5 -1
  42. package/edge/getSessionOnEdge.js +14 -6
  43. package/edge/getSessionOnEdge.js.map +1 -1
  44. package/edge/index.js +38 -3
  45. package/edge/index.js.map +1 -1
  46. package/edge/redirectToLogin.js +12 -5
  47. package/edge/redirectToLogin.js.map +1 -1
  48. package/edge/shouldBypassMiddleware.js +19 -6
  49. package/edge/shouldBypassMiddleware.js.map +1 -1
  50. package/index.js +102 -8
  51. package/index.js.map +1 -1
  52. package/middleware/FronteggApiMiddleware.js +13 -7
  53. package/middleware/FronteggApiMiddleware.js.map +1 -1
  54. package/middleware/FronteggProxy.js +13 -6
  55. package/middleware/FronteggProxy.js.map +1 -1
  56. package/middleware/ProxyRequestCallback.js +19 -11
  57. package/middleware/ProxyRequestCallback.js.map +1 -1
  58. package/middleware/ProxyResponseCallback.js +23 -15
  59. package/middleware/ProxyResponseCallback.js.map +1 -1
  60. package/middleware/constants.js +10 -2
  61. package/middleware/constants.js.map +1 -1
  62. package/middleware/helpers.js +11 -4
  63. package/middleware/helpers.js.map +1 -1
  64. package/middleware/index.js +12 -23
  65. package/middleware/index.js.map +1 -1
  66. package/no-ssr/ExpireInListener.d.ts +0 -1
  67. package/no-ssr/ExpireInListener.js +20 -13
  68. package/no-ssr/ExpireInListener.js.map +1 -1
  69. package/no-ssr/FronteggProviderNoSSR.js +36 -28
  70. package/no-ssr/FronteggProviderNoSSR.js.map +1 -1
  71. package/no-ssr/index.js +12 -1
  72. package/no-ssr/index.js.map +1 -1
  73. package/package.json +21 -2
  74. package/pages/FronteggPagesProvider/index.js +18 -10
  75. package/pages/FronteggPagesProvider/index.js.map +1 -1
  76. package/pages/FronteggRouter/FronteggRouter.d.ts +0 -1
  77. package/pages/FronteggRouter/FronteggRouter.js +22 -14
  78. package/pages/FronteggRouter/FronteggRouter.js.map +1 -1
  79. package/pages/FronteggRouter/index.js +18 -26
  80. package/pages/FronteggRouter/index.js.map +1 -1
  81. package/pages/helpers.js +19 -10
  82. package/pages/helpers.js.map +1 -1
  83. package/pages/index.js +46 -3
  84. package/pages/index.js.map +1 -1
  85. package/pages/withFronteggApp/index.js +12 -1
  86. package/pages/withFronteggApp/index.js.map +1 -1
  87. package/pages/withFronteggApp/types.d.ts +0 -1
  88. package/pages/withFronteggApp/types.js +5 -1
  89. package/pages/withFronteggApp/withFronteggApp.js +23 -15
  90. package/pages/withFronteggApp/withFronteggApp.js.map +1 -1
  91. package/sdkVersion.js +9 -2
  92. package/sdkVersion.js.map +1 -1
  93. package/types/index.js +5 -1
  94. package/utils/common/constants.js +12 -3
  95. package/utils/common/constants.js.map +1 -1
  96. package/utils/common/index.js +9 -3
  97. package/utils/common/index.js.map +1 -1
  98. package/utils/cookies/constants.js +8 -1
  99. package/utils/cookies/constants.js.map +1 -1
  100. package/utils/cookies/helpers.js +24 -13
  101. package/utils/cookies/helpers.js.map +1 -1
  102. package/utils/cookies/index.js +38 -31
  103. package/utils/cookies/index.js.map +1 -1
  104. package/utils/cookies/serializer.js +13 -6
  105. package/utils/cookies/serializer.js.map +1 -1
  106. package/utils/cookies/types.js +5 -1
  107. package/utils/createSession/index.js +12 -5
  108. package/utils/createSession/index.js.map +1 -1
  109. package/utils/encryption/index.js +15 -7
  110. package/utils/encryption/index.js.map +1 -1
  111. package/utils/encryption-edge/index.js +15 -7
  112. package/utils/encryption-edge/index.js.map +1 -1
  113. package/utils/errors/FronteggEnvNotFound.js +8 -1
  114. package/utils/errors/FronteggEnvNotFound.js.map +1 -1
  115. package/utils/errors/InvalidFronteggEnv.js +8 -1
  116. package/utils/errors/InvalidFronteggEnv.js.map +1 -1
  117. package/utils/errors/index.js +27 -2
  118. package/utils/errors/index.js.map +1 -1
  119. package/utils/fetchUserData/index.js +17 -10
  120. package/utils/fetchUserData/index.js.map +1 -1
  121. package/utils/fronteggLogger/constants.js +10 -2
  122. package/utils/fronteggLogger/constants.js.map +1 -1
  123. package/utils/fronteggLogger/index.js +13 -7
  124. package/utils/fronteggLogger/index.js.map +1 -1
  125. package/utils/initializeFronteggApp/index.js +25 -17
  126. package/utils/initializeFronteggApp/index.js.map +1 -1
  127. package/utils/jwt/index.js +18 -10
  128. package/utils/jwt/index.js.map +1 -1
  129. package/utils/refreshAccessToken/helpers.js +28 -17
  130. package/utils/refreshAccessToken/helpers.js.map +1 -1
  131. package/utils/refreshAccessToken/index.js +28 -22
  132. package/utils/refreshAccessToken/index.js.map +1 -1
  133. package/utils/routing/index.js +15 -7
  134. package/utils/routing/index.js.map +1 -1
  135. package/utils/useOnRedirectTo/index.js +10 -3
  136. package/utils/useOnRedirectTo/index.js.map +1 -1
package/CHANGELOG.md CHANGED
@@ -1,9 +1,11 @@
1
1
  # Change Log
2
2
 
3
- ## [6.7.21](https://github.com/frontegg/frontegg-nextjs/compare/v6.7.20...v6.7.21) (2023-3-16)
3
+ ## [6.7.21](https://github.com/frontegg/frontegg-nextjs/compare/v6.7.20...v6.7.21) (2023-3-18)
4
4
 
5
5
 
6
6
  ### NextJS Wrapper 6.7.21:
7
+ - FR-10654 - Add missing requestAuthorize for appDir architecture
8
+ - FR-10654 - Use CJS build instead of ESM
7
9
  - FR-10654 - Prevent overriding default package.json file in dist folder
8
10
  - FR-10654 - Add missing alpha version in pre-release script
9
11
  - FR-10654 - Update nvmrc load and fix deprecated set-output
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- ![alt text](https://github.com/frontegg/frontegg-nextjs/blob/master/logo.png)
1
+ ![alt text](https://raw.githubusercontent.com/frontegg/frontegg-nextjs/master/logo.png)
2
2
 
3
3
  Frontegg is a web platform where SaaS companies can set up their fully managed, scalable and brand aware - SaaS features
4
4
  and integrate them into their SaaS portals in up to 5 lines of code.
package/api/index.js CHANGED
@@ -1,13 +1,19 @@
1
- import config from '../config';
2
- import { ApiUrls } from './urls';
3
- import { buildRequestHeaders, Get, parseHttpResponse, Post } from './utils';
4
- import { fronteggTenantsUrl, fronteggUsersUrl } from '@frontegg/rest-api';
1
+ "use strict";
5
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getUsers = exports.getTenants = exports.default = void 0;
8
+ var _config = _interopRequireDefault(require("../config"));
9
+ var _urls = require("./urls");
10
+ var _utils = require("./utils");
11
+ var _restApi = require("@frontegg/rest-api");
6
12
  /**
7
13
  * Send HTTP GET to frontegg domain public route to download the JWT public key
8
14
  */
9
15
  const loadPublicKey = async () => {
10
- const response = await fetch(`${config.baseUrl}${ApiUrls.WellKnown.jwks}`, {
16
+ const response = await fetch(`${_config.default.baseUrl}${_urls.ApiUrls.WellKnown.jwks}`, {
11
17
  cache: 'force-cache'
12
18
  });
13
19
  const data = await response.json();
@@ -19,11 +25,11 @@ const loadPublicKey = async () => {
19
25
  * by providing client's fe_ cookies
20
26
  */
21
27
  const refreshTokenEmbedded = async headers => {
22
- return Post({
23
- url: `${config.baseUrl}${ApiUrls.refreshToken.embedded}`,
28
+ return (0, _utils.Post)({
29
+ url: `${_config.default.baseUrl}${_urls.ApiUrls.refreshToken.embedded}`,
24
30
  body: '{}',
25
31
  credentials: 'include',
26
- headers: buildRequestHeaders(headers)
32
+ headers: (0, _utils.buildRequestHeaders)(headers)
27
33
  });
28
34
  };
29
35
 
@@ -32,13 +38,13 @@ const refreshTokenEmbedded = async headers => {
32
38
  * by providing client's fe_ as body with grant_type.
33
39
  */
34
40
  const refreshTokenHostedLogin = async (headers, refresh_token) => {
35
- return Post({
36
- url: `${config.baseUrl}${ApiUrls.refreshToken.hosted}`,
41
+ return (0, _utils.Post)({
42
+ url: `${_config.default.baseUrl}${_urls.ApiUrls.refreshToken.hosted}`,
37
43
  body: JSON.stringify({
38
44
  grant_type: 'refresh_token',
39
45
  refresh_token
40
46
  }),
41
- headers: buildRequestHeaders(headers, {
47
+ headers: (0, _utils.buildRequestHeaders)(headers, {
42
48
  cookie: headers['cookie']
43
49
  })
44
50
  });
@@ -48,31 +54,34 @@ const refreshTokenHostedLogin = async (headers, refresh_token) => {
48
54
  *
49
55
  * @param headers
50
56
  */
51
- export const getUsers = async headers => {
52
- const headersToSend = buildRequestHeaders(headers);
53
- const res = await Get({
54
- url: `${config.baseUrl}/frontegg${fronteggUsersUrl}`,
57
+ const getUsers = async headers => {
58
+ const headersToSend = (0, _utils.buildRequestHeaders)(headers);
59
+ const res = await (0, _utils.Get)({
60
+ url: `${_config.default.baseUrl}/frontegg${_restApi.fronteggUsersUrl}`,
55
61
  headers: headersToSend
56
62
  });
57
- return parseHttpResponse(res);
63
+ return (0, _utils.parseHttpResponse)(res);
58
64
  };
59
65
 
60
66
  /**
61
67
  *
62
68
  * @param headers
63
69
  */
64
- export const getTenants = async headers => {
65
- const res = await Get({
66
- url: `${config.baseUrl}/frontegg${fronteggTenantsUrl}`,
67
- headers: buildRequestHeaders(headers)
70
+ exports.getUsers = getUsers;
71
+ const getTenants = async headers => {
72
+ const res = await (0, _utils.Get)({
73
+ url: `${_config.default.baseUrl}/frontegg${_restApi.fronteggTenantsUrl}`,
74
+ headers: (0, _utils.buildRequestHeaders)(headers)
68
75
  });
69
- return parseHttpResponse(res);
76
+ return (0, _utils.parseHttpResponse)(res);
70
77
  };
71
- export default {
78
+ exports.getTenants = getTenants;
79
+ var _default = {
72
80
  loadPublicKey,
73
81
  refreshTokenEmbedded,
74
82
  refreshTokenHostedLogin,
75
83
  getUsers,
76
84
  getTenants
77
85
  };
86
+ exports.default = _default;
78
87
  //# sourceMappingURL=index.js.map
package/api/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["config","ApiUrls","buildRequestHeaders","Get","parseHttpResponse","Post","fronteggTenantsUrl","fronteggUsersUrl","loadPublicKey","response","fetch","baseUrl","WellKnown","jwks","cache","data","json","keys","refreshTokenEmbedded","headers","url","refreshToken","embedded","body","credentials","refreshTokenHostedLogin","refresh_token","hosted","JSON","stringify","grant_type","cookie","getUsers","headersToSend","res","getTenants"],"sources":["../../../../packages/nextjs/src/api/index.ts"],"sourcesContent":["import config from '../config';\nimport { ApiUrls } from './urls';\nimport { buildRequestHeaders, Get, parseHttpResponse, Post } from './utils';\nimport { fronteggTenantsUrl, fronteggUsersUrl, ILoginResponse, ITenantsResponse } from '@frontegg/rest-api';\n\n/**\n * Send HTTP GET to frontegg domain public route to download the JWT public key\n */\nconst loadPublicKey = async () => {\n const response = await fetch(`${config.baseUrl}${ApiUrls.WellKnown.jwks}`, {\n cache: 'force-cache',\n });\n const data = await response.json();\n return data.keys[0];\n};\n\n/**\n * Send HTTP post request for Frontegg services to refresh token\n * by providing client's fe_ cookies\n */\nconst refreshTokenEmbedded = async (headers: Record<string, string>) => {\n return Post({\n url: `${config.baseUrl}${ApiUrls.refreshToken.embedded}`,\n body: '{}',\n credentials: 'include',\n headers: buildRequestHeaders(headers),\n });\n};\n\n/**\n * Send HTTP post request for Frontegg services to refresh `hosted login` token\n * by providing client's fe_ as body with grant_type.\n */\nconst refreshTokenHostedLogin = async (headers: Record<string, string>, refresh_token: string) => {\n return Post({\n url: `${config.baseUrl}${ApiUrls.refreshToken.hosted}`,\n body: JSON.stringify({\n grant_type: 'refresh_token',\n refresh_token,\n }),\n headers: buildRequestHeaders(headers, { cookie: headers['cookie'] }),\n });\n};\n\n/**\n *\n * @param headers\n */\nexport const getUsers = async (headers: Record<string, string>): Promise<ILoginResponse | undefined> => {\n const headersToSend = buildRequestHeaders(headers);\n const res = await Get({\n url: `${config.baseUrl}/frontegg${fronteggUsersUrl}`,\n headers: headersToSend,\n });\n return parseHttpResponse(res);\n};\n\n/**\n *\n * @param headers\n */\nexport const getTenants = async (headers: Record<string, string>): Promise<ITenantsResponse[] | undefined> => {\n const res = await Get({\n url: `${config.baseUrl}/frontegg${fronteggTenantsUrl}`,\n headers: buildRequestHeaders(headers),\n });\n return parseHttpResponse(res);\n};\n\nexport default {\n loadPublicKey,\n refreshTokenEmbedded,\n refreshTokenHostedLogin,\n getUsers,\n getTenants,\n};\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,WAAW;AAC9B,SAASC,OAAO,QAAQ,QAAQ;AAChC,SAASC,mBAAmB,EAAEC,GAAG,EAAEC,iBAAiB,EAAEC,IAAI,QAAQ,SAAS;AAC3E,SAASC,kBAAkB,EAAEC,gBAAgB,QAA0C,oBAAoB;;AAE3G;AACA;AACA;AACA,MAAMC,aAAa,GAAG,YAAY;EAChC,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAAE,GAAEV,MAAM,CAACW,OAAQ,GAAEV,OAAO,CAACW,SAAS,CAACC,IAAK,EAAC,EAAE;IACzEC,KAAK,EAAE;EACT,CAAC,CAAC;EACF,MAAMC,IAAI,GAAG,MAAMN,QAAQ,CAACO,IAAI,EAAE;EAClC,OAAOD,IAAI,CAACE,IAAI,CAAC,CAAC,CAAC;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAG,MAAOC,OAA+B,IAAK;EACtE,OAAOd,IAAI,CAAC;IACVe,GAAG,EAAG,GAAEpB,MAAM,CAACW,OAAQ,GAAEV,OAAO,CAACoB,YAAY,CAACC,QAAS,EAAC;IACxDC,IAAI,EAAE,IAAI;IACVC,WAAW,EAAE,SAAS;IACtBL,OAAO,EAAEjB,mBAAmB,CAACiB,OAAO;EACtC,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMM,uBAAuB,GAAG,OAAON,OAA+B,EAAEO,aAAqB,KAAK;EAChG,OAAOrB,IAAI,CAAC;IACVe,GAAG,EAAG,GAAEpB,MAAM,CAACW,OAAQ,GAAEV,OAAO,CAACoB,YAAY,CAACM,MAAO,EAAC;IACtDJ,IAAI,EAAEK,IAAI,CAACC,SAAS,CAAC;MACnBC,UAAU,EAAE,eAAe;MAC3BJ;IACF,CAAC,CAAC;IACFP,OAAO,EAAEjB,mBAAmB,CAACiB,OAAO,EAAE;MAAEY,MAAM,EAAEZ,OAAO,CAAC,QAAQ;IAAE,CAAC;EACrE,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMa,QAAQ,GAAG,MAAOb,OAA+B,IAA0C;EACtG,MAAMc,aAAa,GAAG/B,mBAAmB,CAACiB,OAAO,CAAC;EAClD,MAAMe,GAAG,GAAG,MAAM/B,GAAG,CAAC;IACpBiB,GAAG,EAAG,GAAEpB,MAAM,CAACW,OAAQ,YAAWJ,gBAAiB,EAAC;IACpDY,OAAO,EAAEc;EACX,CAAC,CAAC;EACF,OAAO7B,iBAAiB,CAAC8B,GAAG,CAAC;AAC/B,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMC,UAAU,GAAG,MAAOhB,OAA+B,IAA8C;EAC5G,MAAMe,GAAG,GAAG,MAAM/B,GAAG,CAAC;IACpBiB,GAAG,EAAG,GAAEpB,MAAM,CAACW,OAAQ,YAAWL,kBAAmB,EAAC;IACtDa,OAAO,EAAEjB,mBAAmB,CAACiB,OAAO;EACtC,CAAC,CAAC;EACF,OAAOf,iBAAiB,CAAC8B,GAAG,CAAC;AAC/B,CAAC;AAED,eAAe;EACb1B,aAAa;EACbU,oBAAoB;EACpBO,uBAAuB;EACvBO,QAAQ;EACRG;AACF,CAAC"}
1
+ {"version":3,"file":"index.js","names":["_config","_interopRequireDefault","require","_urls","_utils","_restApi","loadPublicKey","response","fetch","config","baseUrl","ApiUrls","WellKnown","jwks","cache","data","json","keys","refreshTokenEmbedded","headers","Post","url","refreshToken","embedded","body","credentials","buildRequestHeaders","refreshTokenHostedLogin","refresh_token","hosted","JSON","stringify","grant_type","cookie","getUsers","headersToSend","res","Get","fronteggUsersUrl","parseHttpResponse","exports","getTenants","fronteggTenantsUrl","_default","default"],"sources":["../../../../packages/nextjs/src/api/index.ts"],"sourcesContent":["import config from '../config';\nimport { ApiUrls } from './urls';\nimport { buildRequestHeaders, Get, parseHttpResponse, Post } from './utils';\nimport { fronteggTenantsUrl, fronteggUsersUrl, ILoginResponse, ITenantsResponse } from '@frontegg/rest-api';\n\n/**\n * Send HTTP GET to frontegg domain public route to download the JWT public key\n */\nconst loadPublicKey = async () => {\n const response = await fetch(`${config.baseUrl}${ApiUrls.WellKnown.jwks}`, {\n cache: 'force-cache',\n });\n const data = await response.json();\n return data.keys[0];\n};\n\n/**\n * Send HTTP post request for Frontegg services to refresh token\n * by providing client's fe_ cookies\n */\nconst refreshTokenEmbedded = async (headers: Record<string, string>) => {\n return Post({\n url: `${config.baseUrl}${ApiUrls.refreshToken.embedded}`,\n body: '{}',\n credentials: 'include',\n headers: buildRequestHeaders(headers),\n });\n};\n\n/**\n * Send HTTP post request for Frontegg services to refresh `hosted login` token\n * by providing client's fe_ as body with grant_type.\n */\nconst refreshTokenHostedLogin = async (headers: Record<string, string>, refresh_token: string) => {\n return Post({\n url: `${config.baseUrl}${ApiUrls.refreshToken.hosted}`,\n body: JSON.stringify({\n grant_type: 'refresh_token',\n refresh_token,\n }),\n headers: buildRequestHeaders(headers, { cookie: headers['cookie'] }),\n });\n};\n\n/**\n *\n * @param headers\n */\nexport const getUsers = async (headers: Record<string, string>): Promise<ILoginResponse | undefined> => {\n const headersToSend = buildRequestHeaders(headers);\n const res = await Get({\n url: `${config.baseUrl}/frontegg${fronteggUsersUrl}`,\n headers: headersToSend,\n });\n return parseHttpResponse(res);\n};\n\n/**\n *\n * @param headers\n */\nexport const getTenants = async (headers: Record<string, string>): Promise<ITenantsResponse[] | undefined> => {\n const res = await Get({\n url: `${config.baseUrl}/frontegg${fronteggTenantsUrl}`,\n headers: buildRequestHeaders(headers),\n });\n return parseHttpResponse(res);\n};\n\nexport default {\n loadPublicKey,\n refreshTokenEmbedded,\n refreshTokenHostedLogin,\n getUsers,\n getTenants,\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAEA;AACA;AACA;AACA,MAAMI,aAAa,GAAG,MAAAA,CAAA,KAAY;EAChC,MAAMC,QAAQ,GAAG,MAAMC,KAAK,CAAE,GAAEC,eAAM,CAACC,OAAQ,GAAEC,aAAO,CAACC,SAAS,CAACC,IAAK,EAAC,EAAE;IACzEC,KAAK,EAAE;EACT,CAAC,CAAC;EACF,MAAMC,IAAI,GAAG,MAAMR,QAAQ,CAACS,IAAI,EAAE;EAClC,OAAOD,IAAI,CAACE,IAAI,CAAC,CAAC,CAAC;AACrB,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMC,oBAAoB,GAAG,MAAOC,OAA+B,IAAK;EACtE,OAAO,IAAAC,WAAI,EAAC;IACVC,GAAG,EAAG,GAAEZ,eAAM,CAACC,OAAQ,GAAEC,aAAO,CAACW,YAAY,CAACC,QAAS,EAAC;IACxDC,IAAI,EAAE,IAAI;IACVC,WAAW,EAAE,SAAS;IACtBN,OAAO,EAAE,IAAAO,0BAAmB,EAACP,OAAO;EACtC,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA,MAAMQ,uBAAuB,GAAG,MAAAA,CAAOR,OAA+B,EAAES,aAAqB,KAAK;EAChG,OAAO,IAAAR,WAAI,EAAC;IACVC,GAAG,EAAG,GAAEZ,eAAM,CAACC,OAAQ,GAAEC,aAAO,CAACW,YAAY,CAACO,MAAO,EAAC;IACtDL,IAAI,EAAEM,IAAI,CAACC,SAAS,CAAC;MACnBC,UAAU,EAAE,eAAe;MAC3BJ;IACF,CAAC,CAAC;IACFT,OAAO,EAAE,IAAAO,0BAAmB,EAACP,OAAO,EAAE;MAAEc,MAAM,EAAEd,OAAO,CAAC,QAAQ;IAAE,CAAC;EACrE,CAAC,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACO,MAAMe,QAAQ,GAAG,MAAOf,OAA+B,IAA0C;EACtG,MAAMgB,aAAa,GAAG,IAAAT,0BAAmB,EAACP,OAAO,CAAC;EAClD,MAAMiB,GAAG,GAAG,MAAM,IAAAC,UAAG,EAAC;IACpBhB,GAAG,EAAG,GAAEZ,eAAM,CAACC,OAAQ,YAAW4B,yBAAiB,EAAC;IACpDnB,OAAO,EAAEgB;EACX,CAAC,CAAC;EACF,OAAO,IAAAI,wBAAiB,EAACH,GAAG,CAAC;AAC/B,CAAC;;AAED;AACA;AACA;AACA;AAHAI,OAAA,CAAAN,QAAA,GAAAA,QAAA;AAIO,MAAMO,UAAU,GAAG,MAAOtB,OAA+B,IAA8C;EAC5G,MAAMiB,GAAG,GAAG,MAAM,IAAAC,UAAG,EAAC;IACpBhB,GAAG,EAAG,GAAEZ,eAAM,CAACC,OAAQ,YAAWgC,2BAAmB,EAAC;IACtDvB,OAAO,EAAE,IAAAO,0BAAmB,EAACP,OAAO;EACtC,CAAC,CAAC;EACF,OAAO,IAAAoB,wBAAiB,EAACH,GAAG,CAAC;AAC/B,CAAC;AAACI,OAAA,CAAAC,UAAA,GAAAA,UAAA;AAAA,IAAAE,QAAA,GAEa;EACbrC,aAAa;EACbY,oBAAoB;EACpBS,uBAAuB;EACvBO,QAAQ;EACRO;AACF,CAAC;AAAAD,OAAA,CAAAI,OAAA,GAAAD,QAAA"}
package/api/urls.js CHANGED
@@ -1,14 +1,24 @@
1
- import { fronteggRefreshTokenUrl } from '@frontegg/rest-api';
2
- import config from '../config';
3
- export const ApiUrls = {
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ApiUrls = void 0;
8
+ exports.buildLoginRoute = buildLoginRoute;
9
+ exports.buildLogoutRoute = buildLogoutRoute;
10
+ var _restApi = require("@frontegg/rest-api");
11
+ var _config = _interopRequireDefault(require("../config"));
12
+ const ApiUrls = {
4
13
  WellKnown: {
5
14
  jwks: `/.well-known/jwks.json`
6
15
  },
7
16
  refreshToken: {
8
- embedded: `/frontegg${fronteggRefreshTokenUrl}`,
17
+ embedded: `/frontegg${_restApi.fronteggRefreshTokenUrl}`,
9
18
  hosted: `/frontegg/oauth/token`
10
19
  }
11
20
  };
21
+ exports.ApiUrls = ApiUrls;
12
22
  /**
13
23
  * Builds a login route with a redirect URL encoded as a query parameter.
14
24
  *
@@ -17,8 +27,8 @@ export const ApiUrls = {
17
27
  *
18
28
  * @throws {TypeError} If redirectUrl is not a string.
19
29
  */
20
- export function buildLoginRoute(redirectUrl) {
21
- const asPath = `${config.appUrl}/account/login?redirectUrl=${encodeURIComponent(redirectUrl)}`;
30
+ function buildLoginRoute(redirectUrl) {
31
+ const asPath = `${_config.default.appUrl}/account/login?redirectUrl=${encodeURIComponent(redirectUrl)}`;
22
32
  const asUrl = new URL(asPath);
23
33
  return {
24
34
  asPath,
@@ -35,7 +45,7 @@ export function buildLoginRoute(redirectUrl) {
35
45
  *
36
46
  * @throws {TypeError} If redirectUrl is not a string.
37
47
  */
38
- export function buildLogoutRoute(redirectUrl, baseUrl) {
48
+ function buildLogoutRoute(redirectUrl, baseUrl) {
39
49
  const asPath = `${baseUrl}/oauth/logout?post_logout_redirect_uri=${encodeURIComponent(redirectUrl)}`;
40
50
  const asUrl = new URL(asPath, baseUrl);
41
51
  return {
package/api/urls.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"urls.js","names":["fronteggRefreshTokenUrl","config","ApiUrls","WellKnown","jwks","refreshToken","embedded","hosted","buildLoginRoute","redirectUrl","asPath","appUrl","encodeURIComponent","asUrl","URL","buildLogoutRoute","baseUrl"],"sources":["../../../../packages/nextjs/src/api/urls.ts"],"sourcesContent":["import { fronteggAuthApiRoutes, fronteggRefreshTokenUrl } from '@frontegg/rest-api';\nimport config from '../config';\n\nexport const ApiUrls = {\n WellKnown: {\n jwks: `/.well-known/jwks.json`,\n },\n refreshToken: {\n embedded: `/frontegg${fronteggRefreshTokenUrl}`,\n hosted: `/frontegg/oauth/token`,\n },\n};\n\ninterface BuildRouteResult {\n asPath: string;\n asUrl: URL;\n}\n\n/**\n * Builds a login route with a redirect URL encoded as a query parameter.\n *\n * @param {string} redirectUrl - The URL to redirect to after successful login.\n * @returns {BuildRouteResult} An object containing the generated login route and URL.\n *\n * @throws {TypeError} If redirectUrl is not a string.\n */\nexport function buildLoginRoute(redirectUrl: string): BuildRouteResult {\n const asPath = `${config.appUrl}/account/login?redirectUrl=${encodeURIComponent(redirectUrl)}`;\n const asUrl = new URL(asPath);\n return {\n asPath,\n asUrl,\n };\n}\n\n/**\n * Builds a HostedLogin's logout route with a redirect URL encoded as a query parameter.\n *\n * @param {string} redirectUrl - The URL to redirect to after successful login.\n * @param {string} baseUrl - The frontegg domain url\n * @returns {BuildRouteResult} An object containing the generated login route and URL.\n *\n * @throws {TypeError} If redirectUrl is not a string.\n */\nexport function buildLogoutRoute(redirectUrl: string, baseUrl: string): BuildRouteResult {\n const asPath = `${baseUrl}/oauth/logout?post_logout_redirect_uri=${encodeURIComponent(redirectUrl)}`;\n const asUrl = new URL(asPath, baseUrl);\n return {\n asPath,\n asUrl,\n };\n}\n"],"mappings":"AAAA,SAAgCA,uBAAuB,QAAQ,oBAAoB;AACnF,OAAOC,MAAM,MAAM,WAAW;AAE9B,OAAO,MAAMC,OAAO,GAAG;EACrBC,SAAS,EAAE;IACTC,IAAI,EAAG;EACT,CAAC;EACDC,YAAY,EAAE;IACZC,QAAQ,EAAG,YAAWN,uBAAwB,EAAC;IAC/CO,MAAM,EAAG;EACX;AACF,CAAC;AAOD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,eAAe,CAACC,WAAmB,EAAoB;EACrE,MAAMC,MAAM,GAAI,GAAET,MAAM,CAACU,MAAO,8BAA6BC,kBAAkB,CAACH,WAAW,CAAE,EAAC;EAC9F,MAAMI,KAAK,GAAG,IAAIC,GAAG,CAACJ,MAAM,CAAC;EAC7B,OAAO;IACLA,MAAM;IACNG;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,gBAAgB,CAACN,WAAmB,EAAEO,OAAe,EAAoB;EACvF,MAAMN,MAAM,GAAI,GAAEM,OAAQ,0CAAyCJ,kBAAkB,CAACH,WAAW,CAAE,EAAC;EACpG,MAAMI,KAAK,GAAG,IAAIC,GAAG,CAACJ,MAAM,EAAEM,OAAO,CAAC;EACtC,OAAO;IACLN,MAAM;IACNG;EACF,CAAC;AACH"}
1
+ {"version":3,"file":"urls.js","names":["_restApi","require","_config","_interopRequireDefault","ApiUrls","WellKnown","jwks","refreshToken","embedded","fronteggRefreshTokenUrl","hosted","exports","buildLoginRoute","redirectUrl","asPath","config","appUrl","encodeURIComponent","asUrl","URL","buildLogoutRoute","baseUrl"],"sources":["../../../../packages/nextjs/src/api/urls.ts"],"sourcesContent":["import { fronteggAuthApiRoutes, fronteggRefreshTokenUrl } from '@frontegg/rest-api';\nimport config from '../config';\n\nexport const ApiUrls = {\n WellKnown: {\n jwks: `/.well-known/jwks.json`,\n },\n refreshToken: {\n embedded: `/frontegg${fronteggRefreshTokenUrl}`,\n hosted: `/frontegg/oauth/token`,\n },\n};\n\ninterface BuildRouteResult {\n asPath: string;\n asUrl: URL;\n}\n\n/**\n * Builds a login route with a redirect URL encoded as a query parameter.\n *\n * @param {string} redirectUrl - The URL to redirect to after successful login.\n * @returns {BuildRouteResult} An object containing the generated login route and URL.\n *\n * @throws {TypeError} If redirectUrl is not a string.\n */\nexport function buildLoginRoute(redirectUrl: string): BuildRouteResult {\n const asPath = `${config.appUrl}/account/login?redirectUrl=${encodeURIComponent(redirectUrl)}`;\n const asUrl = new URL(asPath);\n return {\n asPath,\n asUrl,\n };\n}\n\n/**\n * Builds a HostedLogin's logout route with a redirect URL encoded as a query parameter.\n *\n * @param {string} redirectUrl - The URL to redirect to after successful login.\n * @param {string} baseUrl - The frontegg domain url\n * @returns {BuildRouteResult} An object containing the generated login route and URL.\n *\n * @throws {TypeError} If redirectUrl is not a string.\n */\nexport function buildLogoutRoute(redirectUrl: string, baseUrl: string): BuildRouteResult {\n const asPath = `${baseUrl}/oauth/logout?post_logout_redirect_uri=${encodeURIComponent(redirectUrl)}`;\n const asUrl = new URL(asPath, baseUrl);\n return {\n asPath,\n asUrl,\n };\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEO,MAAMG,OAAO,GAAG;EACrBC,SAAS,EAAE;IACTC,IAAI,EAAG;EACT,CAAC;EACDC,YAAY,EAAE;IACZC,QAAQ,EAAG,YAAWC,gCAAwB,EAAC;IAC/CC,MAAM,EAAG;EACX;AACF,CAAC;AAACC,OAAA,CAAAP,OAAA,GAAAA,OAAA;AAOF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASQ,eAAeA,CAACC,WAAmB,EAAoB;EACrE,MAAMC,MAAM,GAAI,GAAEC,eAAM,CAACC,MAAO,8BAA6BC,kBAAkB,CAACJ,WAAW,CAAE,EAAC;EAC9F,MAAMK,KAAK,GAAG,IAAIC,GAAG,CAACL,MAAM,CAAC;EAC7B,OAAO;IACLA,MAAM;IACNI;EACF,CAAC;AACH;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASE,gBAAgBA,CAACP,WAAmB,EAAEQ,OAAe,EAAoB;EACvF,MAAMP,MAAM,GAAI,GAAEO,OAAQ,0CAAyCJ,kBAAkB,CAACJ,WAAW,CAAE,EAAC;EACpG,MAAMK,KAAK,GAAG,IAAIC,GAAG,CAACL,MAAM,EAAEO,OAAO,CAAC;EACtC,OAAO;IACLP,MAAM;IACNI;EACF,CAAC;AACH"}
package/api/utils.js CHANGED
@@ -1,10 +1,22 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import config from '../config';
3
- import sdkVersion from '../sdkVersion';
4
- import nextjsPkg from 'next/package.json';
5
- import { fronteggAuthApiRoutes } from '@frontegg/rest-api';
6
- import { headerCharRegex } from '../utils/common/constants';
7
- export const Get = ({
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.Post = exports.Get = void 0;
8
+ exports.buildRequestHeaders = buildRequestHeaders;
9
+ exports.isAuthPath = isAuthPath;
10
+ exports.isSocialLoginPath = isSocialLoginPath;
11
+ exports.parseHttpResponse = void 0;
12
+ exports.removeInvalidHeaders = removeInvalidHeaders;
13
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
+ var _config = _interopRequireDefault(require("../config"));
15
+ var _sdkVersion = _interopRequireDefault(require("../sdkVersion"));
16
+ var _package = _interopRequireDefault(require("next/package.json"));
17
+ var _restApi = require("@frontegg/rest-api");
18
+ var _constants = require("../utils/common/constants");
19
+ const Get = ({
8
20
  url,
9
21
  credentials = 'include',
10
22
  headers
@@ -13,7 +25,8 @@ export const Get = ({
13
25
  credentials,
14
26
  headers
15
27
  });
16
- export const Post = ({
28
+ exports.Get = Get;
29
+ const Post = ({
17
30
  url,
18
31
  credentials = 'include',
19
32
  headers,
@@ -32,13 +45,14 @@ export const Post = ({
32
45
  * https://github.com/nodejs/undici/blob/2b260c997ad4efe4ed2064b264b4b546a59e7a67/lib/core/request.js#L282
33
46
  * @param headers
34
47
  */
35
- export function removeInvalidHeaders(headers) {
36
- const newHeaders = _extends({}, headers);
48
+ exports.Post = Post;
49
+ function removeInvalidHeaders(headers) {
50
+ const newHeaders = (0, _extends2.default)({}, headers);
37
51
  Object.keys(newHeaders).forEach(key => {
38
52
  const val = headers[key];
39
53
  if (val && typeof val === 'object' && !Array.isArray(val)) {
40
54
  delete newHeaders[key];
41
- } else if (headerCharRegex.exec(val) !== null) {
55
+ } else if (_constants.headerCharRegex.exec(val) !== null) {
42
56
  delete newHeaders[key];
43
57
  } else if (val === undefined || val === null) {
44
58
  delete newHeaders[key];
@@ -54,7 +68,7 @@ export function removeInvalidHeaders(headers) {
54
68
  * @param headers - Incoming request headers
55
69
  * @param additionalHeaders - Specify additional headers
56
70
  */
57
- export function buildRequestHeaders(headers, additionalHeaders = {}) {
71
+ function buildRequestHeaders(headers, additionalHeaders = {}) {
58
72
  let cookie = headers['cookie'];
59
73
  if (cookie != null && typeof cookie === 'string') {
60
74
  cookie = cookie.replace(/fe_session-[^=]*=[^;]*$/, '').replace(/fe_session-[^=]*=[^;]*;/, '');
@@ -65,21 +79,21 @@ export function buildRequestHeaders(headers, additionalHeaders = {}) {
65
79
  'accept-language': headers['accept-language'],
66
80
  accept: headers['accept'],
67
81
  'content-type': 'application/json',
68
- origin: config.baseUrl,
82
+ origin: _config.default.baseUrl,
69
83
  cookie,
70
84
  'user-agent': headers['user-agent'],
71
85
  'cache-control': headers['cache-control'],
72
- 'x-frontegg-framework': `next@${nextjsPkg.version}`,
73
- 'x-frontegg-sdk': `@frontegg/nextjs@${sdkVersion.version}`
86
+ 'x-frontegg-framework': `next@${_package.default.version}`,
87
+ 'x-frontegg-sdk': `@frontegg/nextjs@${_sdkVersion.default.version}`
74
88
  };
75
- return removeInvalidHeaders(_extends({}, preparedHeaders, additionalHeaders));
89
+ return removeInvalidHeaders((0, _extends2.default)({}, preparedHeaders, additionalHeaders));
76
90
  }
77
91
 
78
92
  /**
79
93
  * Return parsed json response if http status code = 200
80
94
  * @param res
81
95
  */
82
- export const parseHttpResponse = async res => {
96
+ const parseHttpResponse = async res => {
83
97
  if (!res.ok) {
84
98
  return undefined;
85
99
  }
@@ -92,8 +106,9 @@ export const parseHttpResponse = async res => {
92
106
  * @param {string} path - The path to check for authentication API routes.
93
107
  * @returns {boolean} Returns true if the path is a frontegg authentication API route or ends with '/postlogin' or '/prelogin'; otherwise, returns false.
94
108
  */
95
- export function isAuthPath(path) {
96
- return fronteggAuthApiRoutes.indexOf(path) !== -1 || path.endsWith('/postlogin') || path.endsWith('/prelogin');
109
+ exports.parseHttpResponse = parseHttpResponse;
110
+ function isAuthPath(path) {
111
+ return _restApi.fronteggAuthApiRoutes.indexOf(path) !== -1 || path.endsWith('/postlogin') || path.endsWith('/prelogin');
97
112
  }
98
113
 
99
114
  /**
@@ -102,7 +117,7 @@ export function isAuthPath(path) {
102
117
  * @param {string} path - The path to check for a social login prelogin route pattern.
103
118
  * @returns {boolean} Returns true if the path matches the social login prelogin route pattern; otherwise, returns false.
104
119
  */
105
- export function isSocialLoginPath(path) {
120
+ function isSocialLoginPath(path) {
106
121
  return RegExp('^/identity/resources/auth/v[0-9]*/user/sso/default/.*/prelogin$').test(path);
107
122
  }
108
123
  //# sourceMappingURL=utils.js.map
package/api/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["config","sdkVersion","nextjsPkg","fronteggAuthApiRoutes","headerCharRegex","Get","url","credentials","headers","fetch","method","Post","body","removeInvalidHeaders","newHeaders","Object","keys","forEach","key","val","Array","isArray","exec","undefined","length","buildRequestHeaders","additionalHeaders","cookie","replace","preparedHeaders","authorization","accept","origin","baseUrl","version","parseHttpResponse","res","ok","json","isAuthPath","path","indexOf","endsWith","isSocialLoginPath","RegExp","test"],"sources":["../../../../packages/nextjs/src/api/utils.ts"],"sourcesContent":["import config from '../config';\nimport sdkVersion from '../sdkVersion';\nimport nextjsPkg from 'next/package.json';\nimport { fronteggAuthApiRoutes } from '@frontegg/rest-api';\nimport { headerCharRegex } from '../utils/common/constants';\n\ninterface GetRequestOptions {\n url: string;\n credentials?: RequestCredentials;\n headers?: HeadersInit;\n}\n\nexport const Get = ({ url, credentials = 'include', headers }: GetRequestOptions) =>\n fetch(url, { method: 'GET', credentials, headers });\n\ninterface PostRequestOptions extends GetRequestOptions {\n body: string;\n}\n\nexport const Post = ({ url, credentials = 'include', headers, body }: PostRequestOptions) =>\n fetch(url, { method: 'POST', credentials, headers, body });\n\n/**\n * NodeJS 18 start using undici as http request handler,\n * undici http request does not accept invalid headers\n * for more details see:\n * https://github.com/nodejs/undici/blob/2b260c997ad4efe4ed2064b264b4b546a59e7a67/lib/core/request.js#L282\n * @param headers\n */\nexport function removeInvalidHeaders(headers: Record<string, string>) {\n const newHeaders = { ...headers };\n Object.keys(newHeaders).forEach((key: string) => {\n const val: any = headers[key];\n if (val && typeof val === 'object' && !Array.isArray(val)) {\n delete newHeaders[key];\n } else if (headerCharRegex.exec(val) !== null) {\n delete newHeaders[key];\n } else if (val === undefined || val === null) {\n delete newHeaders[key];\n } else if (key.length === 10 && key === 'connection') {\n delete newHeaders[key];\n }\n });\n return newHeaders;\n}\n\n/**\n * Build fetch request headers, remove invalid http headers\n * @param headers - Incoming request headers\n * @param additionalHeaders - Specify additional headers\n */\nexport function buildRequestHeaders(\n headers: Record<string, any>,\n additionalHeaders: Record<string, string> = {}\n): Record<string, string> {\n let cookie = headers['cookie'];\n if (cookie != null && typeof cookie === 'string') {\n cookie = cookie.replace(/fe_session-[^=]*=[^;]*$/, '').replace(/fe_session-[^=]*=[^;]*;/, '');\n }\n const preparedHeaders: Record<string, string> = {\n authorization: headers['authorization'],\n 'accept-encoding': headers['accept-encoding'],\n 'accept-language': headers['accept-language'],\n accept: headers['accept'],\n 'content-type': 'application/json',\n origin: config.baseUrl,\n cookie,\n 'user-agent': headers['user-agent'],\n 'cache-control': headers['cache-control'],\n 'x-frontegg-framework': `next@${nextjsPkg.version}`,\n 'x-frontegg-sdk': `@frontegg/nextjs@${sdkVersion.version}`,\n };\n\n return removeInvalidHeaders({\n ...preparedHeaders,\n ...additionalHeaders,\n });\n}\n\n/**\n * Return parsed json response if http status code = 200\n * @param res\n */\nexport const parseHttpResponse = async <T>(res: Response): Promise<T | undefined> => {\n if (!res.ok) {\n return undefined;\n }\n return await res.json();\n};\n\n/**\n * Checks if the given path is a frontegg authentication API route, ends with '/postlogin', or ends with '/prelogin'.\n *\n * @param {string} path - The path to check for authentication API routes.\n * @returns {boolean} Returns true if the path is a frontegg authentication API route or ends with '/postlogin' or '/prelogin'; otherwise, returns false.\n */\nexport function isAuthPath(path: string): boolean {\n return fronteggAuthApiRoutes.indexOf(path) !== -1 || path.endsWith('/postlogin') || path.endsWith('/prelogin');\n}\n\n/**\n * Checks if the given path matches the pattern for a social login prelogin route.\n *\n * @param {string} path - The path to check for a social login prelogin route pattern.\n * @returns {boolean} Returns true if the path matches the social login prelogin route pattern; otherwise, returns false.\n */\nexport function isSocialLoginPath(path: string): boolean {\n return RegExp('^/identity/resources/auth/v[0-9]*/user/sso/default/.*/prelogin$').test(path);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","names":["_config","_interopRequireDefault","require","_sdkVersion","_package","_restApi","_constants","Get","url","credentials","headers","fetch","method","exports","Post","body","removeInvalidHeaders","newHeaders","_extends2","default","Object","keys","forEach","key","val","Array","isArray","headerCharRegex","exec","undefined","length","buildRequestHeaders","additionalHeaders","cookie","replace","preparedHeaders","authorization","accept","origin","config","baseUrl","nextjsPkg","version","sdkVersion","parseHttpResponse","res","ok","json","isAuthPath","path","fronteggAuthApiRoutes","indexOf","endsWith","isSocialLoginPath","RegExp","test"],"sources":["../../../../packages/nextjs/src/api/utils.ts"],"sourcesContent":["import config from '../config';\nimport sdkVersion from '../sdkVersion';\nimport nextjsPkg from 'next/package.json';\nimport { fronteggAuthApiRoutes } from '@frontegg/rest-api';\nimport { headerCharRegex } from '../utils/common/constants';\n\ninterface GetRequestOptions {\n url: string;\n credentials?: RequestCredentials;\n headers?: HeadersInit;\n}\n\nexport const Get = ({ url, credentials = 'include', headers }: GetRequestOptions) =>\n fetch(url, { method: 'GET', credentials, headers });\n\ninterface PostRequestOptions extends GetRequestOptions {\n body: string;\n}\n\nexport const Post = ({ url, credentials = 'include', headers, body }: PostRequestOptions) =>\n fetch(url, { method: 'POST', credentials, headers, body });\n\n/**\n * NodeJS 18 start using undici as http request handler,\n * undici http request does not accept invalid headers\n * for more details see:\n * https://github.com/nodejs/undici/blob/2b260c997ad4efe4ed2064b264b4b546a59e7a67/lib/core/request.js#L282\n * @param headers\n */\nexport function removeInvalidHeaders(headers: Record<string, string>) {\n const newHeaders = { ...headers };\n Object.keys(newHeaders).forEach((key: string) => {\n const val: any = headers[key];\n if (val && typeof val === 'object' && !Array.isArray(val)) {\n delete newHeaders[key];\n } else if (headerCharRegex.exec(val) !== null) {\n delete newHeaders[key];\n } else if (val === undefined || val === null) {\n delete newHeaders[key];\n } else if (key.length === 10 && key === 'connection') {\n delete newHeaders[key];\n }\n });\n return newHeaders;\n}\n\n/**\n * Build fetch request headers, remove invalid http headers\n * @param headers - Incoming request headers\n * @param additionalHeaders - Specify additional headers\n */\nexport function buildRequestHeaders(\n headers: Record<string, any>,\n additionalHeaders: Record<string, string> = {}\n): Record<string, string> {\n let cookie = headers['cookie'];\n if (cookie != null && typeof cookie === 'string') {\n cookie = cookie.replace(/fe_session-[^=]*=[^;]*$/, '').replace(/fe_session-[^=]*=[^;]*;/, '');\n }\n const preparedHeaders: Record<string, string> = {\n authorization: headers['authorization'],\n 'accept-encoding': headers['accept-encoding'],\n 'accept-language': headers['accept-language'],\n accept: headers['accept'],\n 'content-type': 'application/json',\n origin: config.baseUrl,\n cookie,\n 'user-agent': headers['user-agent'],\n 'cache-control': headers['cache-control'],\n 'x-frontegg-framework': `next@${nextjsPkg.version}`,\n 'x-frontegg-sdk': `@frontegg/nextjs@${sdkVersion.version}`,\n };\n\n return removeInvalidHeaders({\n ...preparedHeaders,\n ...additionalHeaders,\n });\n}\n\n/**\n * Return parsed json response if http status code = 200\n * @param res\n */\nexport const parseHttpResponse = async <T>(res: Response): Promise<T | undefined> => {\n if (!res.ok) {\n return undefined;\n }\n return await res.json();\n};\n\n/**\n * Checks if the given path is a frontegg authentication API route, ends with '/postlogin', or ends with '/prelogin'.\n *\n * @param {string} path - The path to check for authentication API routes.\n * @returns {boolean} Returns true if the path is a frontegg authentication API route or ends with '/postlogin' or '/prelogin'; otherwise, returns false.\n */\nexport function isAuthPath(path: string): boolean {\n return fronteggAuthApiRoutes.indexOf(path) !== -1 || path.endsWith('/postlogin') || path.endsWith('/prelogin');\n}\n\n/**\n * Checks if the given path matches the pattern for a social login prelogin route.\n *\n * @param {string} path - The path to check for a social login prelogin route pattern.\n * @returns {boolean} Returns true if the path matches the social login prelogin route pattern; otherwise, returns false.\n */\nexport function isSocialLoginPath(path: string): boolean {\n return RegExp('^/identity/resources/auth/v[0-9]*/user/sso/default/.*/prelogin$').test(path);\n}\n"],"mappings":"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"}
@@ -1,25 +1,32 @@
1
+ "use strict";
1
2
  'use client';
2
3
 
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ClientFronteggProvider = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
+ var _common = require("../common");
12
+ var _navigation = require("next/navigation");
13
+ var _react = _interopRequireDefault(require("react"));
14
+ var _jsxRuntime = require("react/jsx-runtime");
5
15
  const _excluded = ["children", "basename"];
6
- import { FronteggBaseProvider } from '../common';
7
- import { useRouter } from 'next/navigation';
8
- import React from 'react';
9
- import { jsx as _jsx } from "react/jsx-runtime";
10
- export const ClientFronteggProvider = _ref => {
16
+ const ClientFronteggProvider = _ref => {
11
17
  let {
12
18
  children,
13
19
  basename
14
20
  } = _ref,
15
- props = _objectWithoutPropertiesLoose(_ref, _excluded);
16
- const router = useRouter();
21
+ props = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
22
+ const router = (0, _navigation.useRouter)();
17
23
  const basePath = process.env.__NEXT_ROUTER_BASEPATH || '';
18
- return /*#__PURE__*/_jsx(FronteggBaseProvider, _extends({
24
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_common.FronteggBaseProvider, (0, _extends2.default)({
19
25
  router: router,
20
26
  basename: basename != null ? basename : basePath
21
27
  }, props, {
22
28
  children: children
23
29
  }));
24
30
  };
31
+ exports.ClientFronteggProvider = ClientFronteggProvider;
25
32
  //# sourceMappingURL=ClientFronteggProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientFronteggProvider.js","names":["FronteggBaseProvider","useRouter","React","ClientFronteggProvider","children","basename","props","router","basePath","process","env","__NEXT_ROUTER_BASEPATH"],"sources":["../../../../packages/nextjs/src/app/ClientFronteggProvider.tsx"],"sourcesContent":["'use client';\n\nimport type { FronteggProviderProps } from '../types';\nimport { FronteggBaseProvider } from '../common';\nimport { useRouter } from 'next/navigation';\nimport React, { FC } from 'react';\n\nexport const ClientFronteggProvider: FC<Omit<FronteggProviderProps, 'router'>> = ({ children, basename, ...props }) => {\n const router = useRouter();\n const basePath = process.env.__NEXT_ROUTER_BASEPATH || '';\n\n return (\n <FronteggBaseProvider router={router} basename={basename ?? basePath} {...props}>\n {children}\n </FronteggBaseProvider>\n );\n};\n"],"mappings":"AAAA,YAAY;;AAAC;AAAA;AAAA;AAGb,SAASA,oBAAoB,QAAQ,WAAW;AAChD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,OAAOC,KAAK,MAAc,OAAO;AAAC;AAElC,OAAO,MAAMC,sBAAiE,GAAG,QAAsC;EAAA,IAArC;MAAEC,QAAQ;MAAEC;IAAmB,CAAC;IAAPC,KAAK;EAC9G,MAAMC,MAAM,GAAGN,SAAS,EAAE;EAC1B,MAAMO,QAAQ,GAAGC,OAAO,CAACC,GAAG,CAACC,sBAAsB,IAAI,EAAE;EAEzD,oBACE,KAAC,oBAAoB;IAAC,MAAM,EAAEJ,MAAO;IAAC,QAAQ,EAAEF,QAAQ,WAARA,QAAQ,GAAIG;EAAS,GAAKF,KAAK;IAAA,UAC5EF;EAAQ,GACY;AAE3B,CAAC"}
1
+ {"version":3,"file":"ClientFronteggProvider.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","ClientFronteggProvider","_extends2","_objectWithoutPropertiesLoose2","_common","_navigation","_react","_jsxRuntime","_excluded","_ref","children","basename","props","default","router","useRouter","basePath","process","env","__NEXT_ROUTER_BASEPATH","jsx","FronteggBaseProvider"],"sources":["../../../../packages/nextjs/src/app/ClientFronteggProvider.tsx"],"sourcesContent":["'use client';\n\nimport type { FronteggProviderProps } from '../types';\nimport { FronteggBaseProvider } from '../common';\nimport { useRouter } from 'next/navigation';\nimport React, { FC } from 'react';\n\nexport const ClientFronteggProvider: FC<Omit<FronteggProviderProps, 'router'>> = ({ children, basename, ...props }) => {\n const router = useRouter();\n const basePath = process.env.__NEXT_ROUTER_BASEPATH || '';\n\n return (\n <FronteggBaseProvider router={router} basename={basename ?? basePath} {...props}>\n {children}\n </FronteggBaseProvider>\n );\n};\n"],"mappings":";AAAA,YAAY;;AAAC,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,sBAAA;AAAA,IAAAC,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AAAA,IAAAO,8BAAA,GAAAR,sBAAA,CAAAC,OAAA;AAGb,IAAAQ,OAAA,GAAAR,OAAA;AACA,IAAAS,WAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAX,sBAAA,CAAAC,OAAA;AAAkC,IAAAW,WAAA,GAAAX,OAAA;AAAA,MAAAY,SAAA;AAE3B,MAAMP,sBAAiE,GAAGQ,IAAA,IAAsC;EAAA,IAArC;MAAEC,QAAQ;MAAEC;IAAmB,CAAC,GAAAF,IAAA;IAAPG,KAAK,OAAAT,8BAAA,CAAAU,OAAA,EAAAJ,IAAA,EAAAD,SAAA;EAC9G,MAAMM,MAAM,GAAG,IAAAC,qBAAS,GAAE;EAC1B,MAAMC,QAAQ,GAAGC,OAAO,CAACC,GAAG,CAACC,sBAAsB,IAAI,EAAE;EAEzD,oBACE,IAAAZ,WAAA,CAAAa,GAAA,EAAChB,OAAA,CAAAiB,oBAAoB,MAAAnB,SAAA,CAAAW,OAAA;IAACC,MAAM,EAAEA,MAAO;IAACH,QAAQ,EAAEA,QAAQ,WAARA,QAAQ,GAAIK;EAAS,GAAKJ,KAAK;IAAAF,QAAA,EAC5EA;EAAQ,GACY;AAE3B,CAAC;AAACX,OAAA,CAAAE,sBAAA,GAAAA,sBAAA"}
@@ -1,17 +1,25 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import React from 'react';
3
- import { ClientFronteggProvider } from './ClientFronteggProvider';
4
- import { getAppHeaders, getAppSession } from './helpers';
5
- import config from '../config';
6
- import fetchUserData from '../utils/fetchUserData';
7
- import { jsx as _jsx } from "react/jsx-runtime";
8
- export const FronteggAppProvider = async options => {
9
- const appEnvConfig = config.appEnvConfig;
10
- const userData = await fetchUserData({
11
- getSession: getAppSession,
12
- getHeaders: getAppHeaders
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.FronteggAppProvider = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireDefault(require("react"));
10
+ var _ClientFronteggProvider = require("./ClientFronteggProvider");
11
+ var _helpers = require("./helpers");
12
+ var _config = _interopRequireDefault(require("../config"));
13
+ var _fetchUserData = _interopRequireDefault(require("../utils/fetchUserData"));
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ const FronteggAppProvider = async options => {
16
+ const appEnvConfig = _config.default.appEnvConfig;
17
+ const userData = await (0, _fetchUserData.default)({
18
+ getSession: _helpers.getAppSession,
19
+ getHeaders: _helpers.getAppHeaders
13
20
  });
14
- const providerProps = _extends({}, appEnvConfig, userData, options);
15
- return /*#__PURE__*/_jsx(ClientFronteggProvider, _extends({}, providerProps));
21
+ const providerProps = (0, _extends2.default)({}, appEnvConfig, userData, options);
22
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ClientFronteggProvider.ClientFronteggProvider, (0, _extends2.default)({}, providerProps));
16
23
  };
24
+ exports.FronteggAppProvider = FronteggAppProvider;
17
25
  //# sourceMappingURL=FronteggAppProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FronteggAppProvider.js","names":["React","ClientFronteggProvider","getAppHeaders","getAppSession","config","fetchUserData","FronteggAppProvider","options","appEnvConfig","userData","getSession","getHeaders","providerProps"],"sources":["../../../../packages/nextjs/src/app/FronteggAppProvider.tsx"],"sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { ClientFronteggProvider } from './ClientFronteggProvider';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { getAppHeaders, getAppSession } from './helpers';\nimport config from '../config';\nimport fetchUserData from '../utils/fetchUserData';\n\nexport type FronteggAppProviderProps = PropsWithChildren<Omit<FronteggAppOptions, 'contextOptions'>>;\n\nexport const FronteggAppProvider = async (options: FronteggAppProviderProps) => {\n const appEnvConfig = config.appEnvConfig;\n const userData = await fetchUserData({ getSession: getAppSession, getHeaders: getAppHeaders });\n\n const providerProps = {\n ...appEnvConfig,\n ...userData,\n ...options,\n };\n\n return <ClientFronteggProvider {...providerProps} />;\n};\n"],"mappings":";AAAA,OAAOA,KAAK,MAA6B,OAAO;AAChD,SAASC,sBAAsB,QAAQ,0BAA0B;AAEjE,SAASC,aAAa,EAAEC,aAAa,QAAQ,WAAW;AACxD,OAAOC,MAAM,MAAM,WAAW;AAC9B,OAAOC,aAAa,MAAM,wBAAwB;AAAC;AAInD,OAAO,MAAMC,mBAAmB,GAAG,MAAOC,OAAiC,IAAK;EAC9E,MAAMC,YAAY,GAAGJ,MAAM,CAACI,YAAY;EACxC,MAAMC,QAAQ,GAAG,MAAMJ,aAAa,CAAC;IAAEK,UAAU,EAAEP,aAAa;IAAEQ,UAAU,EAAET;EAAc,CAAC,CAAC;EAE9F,MAAMU,aAAa,gBACdJ,YAAY,EACZC,QAAQ,EACRF,OAAO,CACX;EAED,oBAAO,KAAC,sBAAsB,eAAKK,aAAa,EAAI;AACtD,CAAC"}
1
+ {"version":3,"file":"FronteggAppProvider.js","names":["_react","_interopRequireDefault","require","_ClientFronteggProvider","_helpers","_config","_fetchUserData","_jsxRuntime","FronteggAppProvider","options","appEnvConfig","config","userData","fetchUserData","getSession","getAppSession","getHeaders","getAppHeaders","providerProps","_extends2","default","jsx","ClientFronteggProvider","exports"],"sources":["../../../../packages/nextjs/src/app/FronteggAppProvider.tsx"],"sourcesContent":["import React, { PropsWithChildren } from 'react';\nimport { ClientFronteggProvider } from './ClientFronteggProvider';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport { getAppHeaders, getAppSession } from './helpers';\nimport config from '../config';\nimport fetchUserData from '../utils/fetchUserData';\n\nexport type FronteggAppProviderProps = PropsWithChildren<Omit<FronteggAppOptions, 'contextOptions'>>;\n\nexport const FronteggAppProvider = async (options: FronteggAppProviderProps) => {\n const appEnvConfig = config.appEnvConfig;\n const userData = await fetchUserData({ getSession: getAppSession, getHeaders: getAppHeaders });\n\n const providerProps = {\n ...appEnvConfig,\n ...userData,\n ...options,\n };\n\n return <ClientFronteggProvider {...providerProps} />;\n};\n"],"mappings":";;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AAEA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,cAAA,GAAAL,sBAAA,CAAAC,OAAA;AAAmD,IAAAK,WAAA,GAAAL,OAAA;AAI5C,MAAMM,mBAAmB,GAAG,MAAOC,OAAiC,IAAK;EAC9E,MAAMC,YAAY,GAAGC,eAAM,CAACD,YAAY;EACxC,MAAME,QAAQ,GAAG,MAAM,IAAAC,sBAAa,EAAC;IAAEC,UAAU,EAAEC,sBAAa;IAAEC,UAAU,EAAEC;EAAc,CAAC,CAAC;EAE9F,MAAMC,aAAa,OAAAC,SAAA,CAAAC,OAAA,MACdV,YAAY,EACZE,QAAQ,EACRH,OAAO,CACX;EAED,oBAAO,IAAAF,WAAA,CAAAc,GAAA,EAAClB,uBAAA,CAAAmB,sBAAsB,MAAAH,SAAA,CAAAC,OAAA,MAAKF,aAAa,EAAI;AACtD,CAAC;AAACK,OAAA,CAAAf,mBAAA,GAAAA,mBAAA"}
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  /// <reference types="node" />
3
2
  import { ParsedUrlQuery } from 'querystring';
4
3
  interface FronteggRouterProps {
@@ -1,9 +1,16 @@
1
- import { notFound } from 'next/navigation';
2
- import { isAuthRoute } from '../utils/routing';
3
- import { FronteggRouterBase } from '../common/FronteggRouterBase';
4
- import React from 'react';
5
- import { jsx as _jsx } from "react/jsx-runtime";
6
- export function FronteggAppRouter({
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.FronteggAppRouter = FronteggAppRouter;
8
+ var _navigation = require("next/navigation");
9
+ var _routing = require("../utils/routing");
10
+ var _FronteggRouterBase = require("../common/FronteggRouterBase");
11
+ var _react = _interopRequireDefault(require("react"));
12
+ var _jsxRuntime = require("react/jsx-runtime");
13
+ function FronteggAppRouter({
7
14
  params: {
8
15
  'frontegg-router': pathArr = []
9
16
  },
@@ -15,17 +22,18 @@ export function FronteggAppRouter({
15
22
  const query = searchParams[Object.keys(searchParams)[0]];
16
23
  pathname = `/${Array.isArray(query) ? query.join('/') : query}`;
17
24
  } else {
18
- notFound();
25
+ (0, _navigation.notFound)();
19
26
  return null;
20
27
  }
21
28
  }
22
- if (!isAuthRoute(pathname)) {
23
- notFound();
29
+ if (!(0, _routing.isAuthRoute)(pathname)) {
30
+ (0, _navigation.notFound)();
24
31
  return null;
25
32
  }
26
- return /*#__PURE__*/_jsx(FronteggRouterBase, {
33
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FronteggRouterBase.FronteggRouterBase, {
27
34
  pathArr: pathArr,
28
- queryParams: searchParams
35
+ queryParams: searchParams,
36
+ isAppDirEnabled: true
29
37
  });
30
38
  }
31
39
  //# sourceMappingURL=FronteggAppRouter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FronteggAppRouter.js","names":["notFound","isAuthRoute","FronteggRouterBase","React","FronteggAppRouter","params","pathArr","searchParams","pathname","join","startsWith","query","Object","keys","Array","isArray"],"sources":["../../../../packages/nextjs/src/app/FronteggAppRouter.tsx"],"sourcesContent":["import { notFound } from 'next/navigation';\nimport { ParsedUrlQuery } from 'querystring';\nimport { isAuthRoute } from '../utils/routing';\nimport { FronteggRouterBase } from '../common/FronteggRouterBase';\nimport React from 'react';\n\ninterface FronteggRouterProps {\n params: ParsedUrlQuery & { 'frontegg-router'?: string[] };\n searchParams?: ParsedUrlQuery;\n}\n\nexport function FronteggAppRouter({ params: { 'frontegg-router': pathArr = [] }, searchParams }: FronteggRouterProps) {\n let pathname = `/${pathArr.join('/')}`;\n if (!pathname || pathname.startsWith('/_next/data')) {\n if (searchParams) {\n const query = searchParams[Object.keys(searchParams)[0]];\n pathname = `/${Array.isArray(query) ? query.join('/') : query}`;\n } else {\n notFound();\n return null;\n }\n }\n\n if (!isAuthRoute(pathname)) {\n notFound();\n return null;\n }\n\n return <FronteggRouterBase pathArr={pathArr} queryParams={searchParams} />;\n}\n"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,iBAAiB;AAE1C,SAASC,WAAW,QAAQ,kBAAkB;AAC9C,SAASC,kBAAkB,QAAQ,8BAA8B;AACjE,OAAOC,KAAK,MAAM,OAAO;AAAC;AAO1B,OAAO,SAASC,iBAAiB,CAAC;EAAEC,MAAM,EAAE;IAAE,iBAAiB,EAAEC,OAAO,GAAG;EAAG,CAAC;EAAEC;AAAkC,CAAC,EAAE;EACpH,IAAIC,QAAQ,GAAI,IAAGF,OAAO,CAACG,IAAI,CAAC,GAAG,CAAE,EAAC;EACtC,IAAI,CAACD,QAAQ,IAAIA,QAAQ,CAACE,UAAU,CAAC,aAAa,CAAC,EAAE;IACnD,IAAIH,YAAY,EAAE;MAChB,MAAMI,KAAK,GAAGJ,YAAY,CAACK,MAAM,CAACC,IAAI,CAACN,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;MACxDC,QAAQ,GAAI,IAAGM,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,GAAGA,KAAK,CAACF,IAAI,CAAC,GAAG,CAAC,GAAGE,KAAM,EAAC;IACjE,CAAC,MAAM;MACLX,QAAQ,EAAE;MACV,OAAO,IAAI;IACb;EACF;EAEA,IAAI,CAACC,WAAW,CAACO,QAAQ,CAAC,EAAE;IAC1BR,QAAQ,EAAE;IACV,OAAO,IAAI;EACb;EAEA,oBAAO,KAAC,kBAAkB;IAAC,OAAO,EAAEM,OAAQ;IAAC,WAAW,EAAEC;EAAa,EAAG;AAC5E"}
1
+ {"version":3,"file":"FronteggAppRouter.js","names":["_navigation","require","_routing","_FronteggRouterBase","_react","_interopRequireDefault","_jsxRuntime","FronteggAppRouter","params","pathArr","searchParams","pathname","join","startsWith","query","Object","keys","Array","isArray","notFound","isAuthRoute","jsx","FronteggRouterBase","queryParams","isAppDirEnabled"],"sources":["../../../../packages/nextjs/src/app/FronteggAppRouter.tsx"],"sourcesContent":["import { notFound } from 'next/navigation';\nimport { ParsedUrlQuery } from 'querystring';\nimport { isAuthRoute } from '../utils/routing';\nimport { FronteggRouterBase } from '../common/FronteggRouterBase';\nimport React from 'react';\n\ninterface FronteggRouterProps {\n params: ParsedUrlQuery & { 'frontegg-router'?: string[] };\n searchParams?: ParsedUrlQuery;\n}\n\nexport function FronteggAppRouter({ params: { 'frontegg-router': pathArr = [] }, searchParams }: FronteggRouterProps) {\n let pathname = `/${pathArr.join('/')}`;\n if (!pathname || pathname.startsWith('/_next/data')) {\n if (searchParams) {\n const query = searchParams[Object.keys(searchParams)[0]];\n pathname = `/${Array.isArray(query) ? query.join('/') : query}`;\n } else {\n notFound();\n return null;\n }\n }\n\n if (!isAuthRoute(pathname)) {\n notFound();\n return null;\n }\n\n return <FronteggRouterBase pathArr={pathArr} queryParams={searchParams} isAppDirEnabled />;\n}\n"],"mappings":";;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,mBAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAA0B,IAAAK,WAAA,GAAAL,OAAA;AAOnB,SAASM,iBAAiBA,CAAC;EAAEC,MAAM,EAAE;IAAE,iBAAiB,EAAEC,OAAO,GAAG;EAAG,CAAC;EAAEC;AAAkC,CAAC,EAAE;EACpH,IAAIC,QAAQ,GAAI,IAAGF,OAAO,CAACG,IAAI,CAAC,GAAG,CAAE,EAAC;EACtC,IAAI,CAACD,QAAQ,IAAIA,QAAQ,CAACE,UAAU,CAAC,aAAa,CAAC,EAAE;IACnD,IAAIH,YAAY,EAAE;MAChB,MAAMI,KAAK,GAAGJ,YAAY,CAACK,MAAM,CAACC,IAAI,CAACN,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;MACxDC,QAAQ,GAAI,IAAGM,KAAK,CAACC,OAAO,CAACJ,KAAK,CAAC,GAAGA,KAAK,CAACF,IAAI,CAAC,GAAG,CAAC,GAAGE,KAAM,EAAC;IACjE,CAAC,MAAM;MACL,IAAAK,oBAAQ,GAAE;MACV,OAAO,IAAI;IACb;EACF;EAEA,IAAI,CAAC,IAAAC,oBAAW,EAACT,QAAQ,CAAC,EAAE;IAC1B,IAAAQ,oBAAQ,GAAE;IACV,OAAO,IAAI;EACb;EAEA,oBAAO,IAAAb,WAAA,CAAAe,GAAA,EAAClB,mBAAA,CAAAmB,kBAAkB;IAACb,OAAO,EAAEA,OAAQ;IAACc,WAAW,EAAEb,YAAa;IAACc,eAAe;EAAA,EAAG;AAC5F"}
package/app/helpers.js CHANGED
@@ -1,25 +1,36 @@
1
- import { cookies, headers } from 'next/headers';
2
- import CookieManager from '../utils/cookies';
3
- import createSession from '../utils/createSession';
4
- import encryption from '../utils/encryption';
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.getAppSession = exports.getAppHeaders = void 0;
8
+ exports.getAppUserSession = getAppUserSession;
9
+ exports.getAppUserTokens = getAppUserTokens;
10
+ var _headers = require("next/headers");
11
+ var _cookies = _interopRequireDefault(require("../utils/cookies"));
12
+ var _createSession = _interopRequireDefault(require("../utils/createSession"));
13
+ var _encryption = _interopRequireDefault(require("../utils/encryption"));
5
14
  const getCookie = () => {
6
- const allCookies = cookies().getAll();
7
- return CookieManager.parseCookieFromArray(allCookies);
15
+ const allCookies = (0, _headers.cookies)().getAll();
16
+ return _cookies.default.parseCookieFromArray(allCookies);
8
17
  };
9
- export const getAppSession = () => {
18
+ const getAppSession = () => {
10
19
  const cookies = getCookie();
11
- return createSession(cookies, encryption);
20
+ return (0, _createSession.default)(cookies, _encryption.default);
12
21
  };
13
- export const getAppHeaders = async () => {
22
+ exports.getAppSession = getAppSession;
23
+ const getAppHeaders = async () => {
14
24
  const reqHeaders = {};
15
- headers().forEach((value, key) => reqHeaders[key] = value);
25
+ (0, _headers.headers)().forEach((value, key) => reqHeaders[key] = value);
16
26
  return reqHeaders;
17
27
  };
18
- export async function getAppUserSession() {
28
+ exports.getAppHeaders = getAppHeaders;
29
+ async function getAppUserSession() {
19
30
  const session = await getAppSession();
20
31
  return session == null ? void 0 : session.user;
21
32
  }
22
- export async function getAppUserTokens() {
33
+ async function getAppUserTokens() {
23
34
  const session = await getAppSession();
24
35
  if (!session) {
25
36
  return undefined;