@frontegg/nextjs 6.7.9 → 6.7.10-alpha.3866771854

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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Change Log
2
2
 
3
+ ## [6.7.10](https://github.com/frontegg/frontegg-nextjs/compare/v6.7.9...v6.7.10) (2023-1-8)
4
+
5
+
6
+ ### NextJS Wrapper 6.7.10:
7
+ - FR-10153 - Fix app session bug without keepSessionAlive
8
+
3
9
  ## [6.7.9](https://github.com/frontegg/frontegg-nextjs/compare/v6.7.8...v6.7.9) (2022-12-20)
4
10
 
5
11
  - Added support for next 13 - app directory and server components
@@ -120,6 +120,14 @@ var FronteggConfig = /** @class */ (function () {
120
120
  }());
121
121
  var FronteggConfig$1 = new FronteggConfig();
122
122
 
123
+ var envError = function (varName) { return "@frontegg/nextjs: .env.local must contain ".concat(varName); };
124
+ var fronteggErrors = {
125
+ envAppUrl: envError('FRONTEGG_APP_URL'),
126
+ envBaseUrl: envError('FRONTEGG_BASE_URL'),
127
+ envClientId: envError('FRONTEGG_CLIENT_ID'),
128
+ };
129
+ var COOKIE_MAX_LENGTH = 4092;
130
+
123
131
  function chunkString(str, chunkSize) {
124
132
  var numChunks = Math.ceil(str.length / chunkSize);
125
133
  var chunks = [];
@@ -131,12 +139,12 @@ function chunkString(str, chunkSize) {
131
139
  return chunks;
132
140
  }
133
141
 
134
- var COOKIE_MAX_LENGTH = 4096;
135
142
  var CookieManager = /** @class */ (function () {
136
143
  function CookieManager() {
137
144
  var _this = this;
138
145
  this.getCookieName = function (cookieNumber, cookieName) {
139
- return "".concat(cookieName !== null && cookieName !== void 0 ? cookieName : FronteggConfig$1.cookieName, "-").concat(cookieNumber);
146
+ if (cookieName === void 0) { cookieName = FronteggConfig$1.cookieName; }
147
+ return cookieNumber ? "".concat(cookieName, "-").concat(cookieNumber) : cookieName;
140
148
  };
141
149
  this.mapValueChunksToCookies = function (cookieName, valueChunks, options) {
142
150
  return valueChunks.map(function (chunk, index) { return cookie.serialize(_this.getCookieName(index + 1, cookieName), chunk, options); });
@@ -160,13 +168,13 @@ var CookieManager = /** @class */ (function () {
160
168
  }
161
169
  try {
162
170
  var cookieStr = _this.getCookieStringFromRequest(req);
163
- var allCookies = cookieStr && cookie.parse(cookieStr);
164
- if (!allCookies) {
171
+ var cookies = cookieStr && cookie.parse(cookieStr);
172
+ if (!cookies) {
165
173
  return [];
166
174
  }
167
175
  var cookieNumber = 1;
168
176
  var cookieToRemove = [];
169
- while (allCookies[_this.getCookieName(cookieNumber)]) {
177
+ while (cookies[_this.getCookieName(cookieNumber)]) {
170
178
  cookieToRemove.push(_this.getCookieName(cookieNumber));
171
179
  cookieNumber++;
172
180
  }
@@ -233,7 +241,7 @@ var CookieManager = /** @class */ (function () {
233
241
  secure: isSecured,
234
242
  };
235
243
  var cookieValue = cookie.serialize(cookieName !== null && cookieName !== void 0 ? cookieName : this.getCookieName(1), value, options);
236
- if (cookieValue.length < COOKIE_MAX_LENGTH) {
244
+ if (cookieValue.length <= COOKIE_MAX_LENGTH) {
237
245
  return [cookieValue];
238
246
  }
239
247
  var valueChunks = this.splitValueToChunks(cookieName, value, options);
@@ -252,20 +260,18 @@ var CookieManager = /** @class */ (function () {
252
260
  return this.parseCookie(cookieStr);
253
261
  };
254
262
  CookieManager.prototype.parseCookie = function (cookieStr) {
263
+ var cookies = cookie.parse(cookieStr);
255
264
  var sealFromCookies = '';
256
265
  var i = 1;
257
- while (cookie.parse(cookieStr)[this.getCookieName(i)]) {
258
- sealFromCookies += cookie.parse(cookieStr)[this.getCookieName(i)];
266
+ while (cookies[this.getCookieName(i)]) {
267
+ sealFromCookies += cookies[this.getCookieName(i)];
259
268
  i++;
260
269
  }
261
270
  return sealFromCookies !== '' ? sealFromCookies : undefined;
262
271
  };
263
272
  CookieManager.prototype.parseCookieFromArray = function (cookies) {
264
- var userCookie = cookies.find(function (c) { return c.name === FronteggConfig$1.cookieName; });
265
- if (userCookie) {
266
- return userCookie.value;
267
- }
268
- var cookieChunks = cookies.filter(function (c) { return c.name.includes(FronteggConfig$1.cookieName); });
273
+ var _this = this;
274
+ var cookieChunks = cookies.filter(function (c) { return c.name.includes(_this.getCookieName()); });
269
275
  if (!cookieChunks) {
270
276
  return undefined;
271
277
  }
@@ -299,5 +305,5 @@ var CookieManager = /** @class */ (function () {
299
305
  }());
300
306
  var CookieManager$1 = new CookieManager();
301
307
 
302
- export { CookieManager$1 as C, FronteggConfig$1 as F };
303
- //# sourceMappingURL=CookieManager-c1d6c5b0.js.map
308
+ export { CookieManager$1 as C, FronteggConfig$1 as F, COOKIE_MAX_LENGTH as a, fronteggErrors as f };
309
+ //# sourceMappingURL=CookieManager-27107b90.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CookieManager-27107b90.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,6 +1,6 @@
1
1
  'use client';
2
2
  import { __assign, __rest } from 'tslib';
3
- import { useAuthUserOrNull, useAuthActions, FronteggStoreProvider } from '@frontegg/react-hooks';
3
+ import { FronteggStoreProvider } from '@frontegg/react-hooks';
4
4
  import { fronteggAuthApiRoutes, ContextHolder } from '@frontegg/rest-api';
5
5
  import React, { createContext, useEffect, useRef, useCallback, useMemo } from 'react';
6
6
  import { AppHolder, initialize } from '@frontegg/js';
@@ -10,9 +10,10 @@ import { useRouter } from 'next/navigation';
10
10
  var AppContext = createContext(null);
11
11
 
12
12
  var createOrGetFronteggApp = function (_a) {
13
- var _b, _c, _d, _e, _f, _g, _h, _j, _k;
14
- var options = _a.options, onRedirectTo = _a.onRedirectTo, appName = _a.appName, user = _a.user, tenants = _a.tenants, storeHolder = _a.storeHolder;
15
- var _l = (_b = options.session) !== null && _b !== void 0 ? _b : {}, accessToken = _l.accessToken, refreshToken = _l.refreshToken;
13
+ var _b, _c, _d, _e, _f, _g, _h, _j;
14
+ var options = _a.options, onRedirectTo = _a.onRedirectTo, appName = _a.appName, storeHolder = _a.storeHolder;
15
+ var session = options.session, user = options.user, tenants = options.tenants;
16
+ var _k = session !== null && session !== void 0 ? session : {}, accessToken = _k.accessToken, refreshToken = _k.refreshToken;
16
17
  var contextOptions = __assign(__assign({ requestCredentials: 'include' }, options.contextOptions), { baseUrl: function (path) {
17
18
  if (fronteggAuthApiRoutes.indexOf(path) !== -1 ||
18
19
  path.endsWith('/postlogin') ||
@@ -25,13 +26,13 @@ var createOrGetFronteggApp = function (_a) {
25
26
  }
26
27
  }, clientId: options.envClientId });
27
28
  var tenantsState = tenants
28
- ? __assign({ tenantTree: null, subTenants: [], tenants: tenants, loading: false }, (_c = options.authOptions) === null || _c === void 0 ? void 0 : _c.tenantsState) : undefined;
29
+ ? __assign({ tenantTree: null, subTenants: [], tenants: tenants, loading: false }, (_b = options.authOptions) === null || _b === void 0 ? void 0 : _b.tenantsState) : undefined;
29
30
  var userData = user
30
- ? __assign(__assign(__assign({}, user), { accessToken: accessToken !== null && accessToken !== void 0 ? accessToken : '', refreshToken: refreshToken !== null && refreshToken !== void 0 ? refreshToken : undefined }), (_d = options.authOptions) === null || _d === void 0 ? void 0 : _d.user) : null;
31
- var authOptions = __assign(__assign({}, options.authOptions), { onRedirectTo: onRedirectTo, isLoading: false, isAuthenticated: !!options.session, hostedLoginBox: (_e = options.hostedLoginBox) !== null && _e !== void 0 ? _e : false, disableSilentRefresh: (_g = (_f = options.authOptions) === null || _f === void 0 ? void 0 : _f.disableSilentRefresh) !== null && _g !== void 0 ? _g : false, user: userData, tenantsState: tenantsState });
31
+ ? __assign(__assign(__assign({}, user), { accessToken: accessToken !== null && accessToken !== void 0 ? accessToken : '', refreshToken: refreshToken !== null && refreshToken !== void 0 ? refreshToken : undefined }), (_c = options.authOptions) === null || _c === void 0 ? void 0 : _c.user) : null;
32
+ var authOptions = __assign(__assign({}, options.authOptions), { onRedirectTo: onRedirectTo, isLoading: false, isAuthenticated: !!options.session, hostedLoginBox: (_d = options.hostedLoginBox) !== null && _d !== void 0 ? _d : false, disableSilentRefresh: (_f = (_e = options.authOptions) === null || _e === void 0 ? void 0 : _e.disableSilentRefresh) !== null && _f !== void 0 ? _f : false, user: userData, tenantsState: tenantsState });
32
33
  var sharedStore = createFronteggStore({ context: contextOptions }, storeHolder.current, options.previewMode, authOptions, {
33
34
  auth: authOptions !== null && authOptions !== void 0 ? authOptions : {},
34
- audits: (_h = options.auditsOptions) !== null && _h !== void 0 ? _h : {},
35
+ audits: (_g = options.auditsOptions) !== null && _g !== void 0 ? _g : {},
35
36
  }, false, options.urlStrategy);
36
37
  var createdApp;
37
38
  try {
@@ -39,31 +40,19 @@ var createOrGetFronteggApp = function (_a) {
39
40
  createdApp.store = sharedStore;
40
41
  }
41
42
  catch (e) {
42
- createdApp = initialize(__assign(__assign({}, options), { store: sharedStore, hostedLoginBox: (_j = options.hostedLoginBox) !== null && _j !== void 0 ? _j : false, customLoginBox: (_k = options.customLoginBox) !== null && _k !== void 0 ? _k : false, basename: options.basename, authOptions: authOptions, contextOptions: contextOptions, onRedirectTo: onRedirectTo }), appName !== null && appName !== void 0 ? appName : 'default');
43
+ createdApp = initialize(__assign(__assign({}, options), { store: sharedStore, hostedLoginBox: (_h = options.hostedLoginBox) !== null && _h !== void 0 ? _h : false, customLoginBox: (_j = options.customLoginBox) !== null && _j !== void 0 ? _j : false, basename: options.basename, authOptions: authOptions, contextOptions: contextOptions, onRedirectTo: onRedirectTo }), appName !== null && appName !== void 0 ? appName : 'default');
43
44
  }
44
45
  return createdApp;
45
46
  };
46
47
 
47
- var ExpireInListener = function () {
48
- var user = useAuthUserOrNull();
49
- var actions = useAuthActions();
50
- useEffect(function () {
51
- if (user && (user === null || user === void 0 ? void 0 : user.expiresIn) == null) {
52
- actions.setUser(__assign(__assign({}, user), { expiresIn: Math.floor((user['exp'] * 1000 - Date.now()) / 1000) }));
53
- }
54
- }, [actions, user]);
55
- // eslint-disable-next-line react/jsx-no-useless-fragment
56
- return React.createElement(React.Fragment, null);
57
- };
58
-
59
48
  var useRequestAuthorizeSSR = function (_a) {
60
- var app = _a.app, accessToken = _a.accessToken, user = _a.user, tenants = _a.tenants, refreshToken = _a.refreshToken;
49
+ var app = _a.app, user = _a.user, tenants = _a.tenants, session = _a.session;
61
50
  useEffect(function () {
62
51
  app === null || app === void 0 ? void 0 : app.store.dispatch({
63
52
  type: 'auth/requestAuthorizeSSR',
64
53
  payload: {
65
- accessToken: accessToken,
66
- user: user ? __assign(__assign({}, user), { refreshToken: refreshToken }) : null,
54
+ accessToken: session === null || session === void 0 ? void 0 : session.accessToken,
55
+ user: user ? __assign(__assign({}, user), { refreshToken: session === null || session === void 0 ? void 0 : session.refreshToken }) : null,
67
56
  tenants: tenants,
68
57
  },
69
58
  });
@@ -71,11 +60,11 @@ var useRequestAuthorizeSSR = function (_a) {
71
60
  };
72
61
 
73
62
  var Connector = function (_a) {
74
- var _b, _c;
75
- var router = _a.router, _d = _a.appName, appName = _d === void 0 ? 'default' : _d, user = _a.user, tenants = _a.tenants, props = __rest(_a, ["router", "appName", "user", "tenants"]);
63
+ var _b;
64
+ var router = _a.router, _c = _a.appName, appName = _c === void 0 ? 'default' : _c, props = __rest(_a, ["router", "appName"]);
76
65
  var isSSR = typeof window === 'undefined';
77
- var _e = (_b = props.session) !== null && _b !== void 0 ? _b : {}, accessToken = _e.accessToken, refreshToken = _e.refreshToken;
78
- var baseName = (_c = props.basename) !== null && _c !== void 0 ? _c : '';
66
+ var user = props.user, session = props.session, tenants = props.tenants;
67
+ var baseName = (_b = props.basename) !== null && _b !== void 0 ? _b : '';
79
68
  var storeHolder = useRef({});
80
69
  var onRedirectTo = useCallback(function (_path, opts) {
81
70
  var path = _path;
@@ -96,22 +85,18 @@ var Connector = function (_a) {
96
85
  var app = useMemo(function () {
97
86
  return createOrGetFronteggApp({
98
87
  options: __assign(__assign({}, props), { basename: baseName }),
99
- user: user,
100
- tenants: tenants,
101
88
  onRedirectTo: onRedirectTo,
102
89
  appName: appName,
103
90
  storeHolder: storeHolder,
104
91
  });
105
92
  }, [props]);
106
93
  ContextHolder.setOnRedirectTo(onRedirectTo);
107
- useRequestAuthorizeSSR({ app: app, accessToken: accessToken, user: user, tenants: tenants, refreshToken: refreshToken });
94
+ useRequestAuthorizeSSR({ app: app, user: user, tenants: tenants, session: session });
108
95
  return (React.createElement(AppContext.Provider, { value: app },
109
96
  React.createElement(FronteggStoreProvider, __assign({}, __assign(__assign({}, props), { app: app })), props.children)));
110
97
  };
111
98
  var FronteggBaseProvider = function (props) {
112
- return (React.createElement(Connector, __assign({}, props, { framework: 'nextjs' }),
113
- React.createElement(ExpireInListener, null),
114
- props.children));
99
+ return (React.createElement(Connector, __assign({}, props, { framework: 'nextjs' }), props.children));
115
100
  };
116
101
 
117
102
  var FronteggClientProviderNext13 = function (_a) {
@@ -122,4 +107,4 @@ var FronteggClientProviderNext13 = function (_a) {
122
107
  };
123
108
 
124
109
  export { AppContext as A, FronteggClientProviderNext13 as F };
125
- //# sourceMappingURL=FronteggClientProviderNext13-3259fcd9.js.map
110
+ //# sourceMappingURL=FronteggClientProviderNext13-d020161d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FronteggClientProviderNext13-d020161d.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/client/index.js CHANGED
@@ -1,14 +1,14 @@
1
1
  'use client';
2
2
  import { __assign, __spreadArray } from 'tslib';
3
- import { F as FronteggConfig } from '../CookieManager-c1d6c5b0.js';
4
- import '../api-25516652.js';
3
+ import { F as FronteggConfig } from '../CookieManager-27107b90.js';
5
4
  import 'iron-session';
6
5
  import 'jose';
6
+ import '../api-25516652.js';
7
+ import { useContext, useEffect } from 'react';
7
8
  import { useLoginWithRedirect, useLoginActions } from '@frontegg/react-hooks';
8
9
  import '@frontegg/rest-api';
9
- import { useContext, useEffect } from 'react';
10
- import { A as AppContext } from '../FronteggClientProviderNext13-3259fcd9.js';
11
- export { F as FronteggClientProviderNext13 } from '../FronteggClientProviderNext13-3259fcd9.js';
10
+ import { A as AppContext } from '../FronteggClientProviderNext13-d020161d.js';
11
+ export { F as FronteggClientProviderNext13 } from '../FronteggClientProviderNext13-d020161d.js';
12
12
  import '@frontegg/js';
13
13
  import { authInitialState } from '@frontegg/redux-store';
14
14
  import { useRouter, notFound } from 'next/navigation';
@@ -21,7 +21,7 @@ type RemoveCookiesArguments = {
21
21
  };
22
22
  declare class CookieManager {
23
23
  constructor();
24
- getCookieName: (cookieNumber: number, cookieName?: string) => string;
24
+ getCookieName: (cookieNumber?: number, cookieName?: string) => string;
25
25
  rewriteCookieProperty(header: string | string[], config: any, property: string): string | string[];
26
26
  createCookie({ cookieName, value, expires, isSecured, cookieDomain, httpOnly, path, }: CreateCookieArguments): string[];
27
27
  splitValueToChunks(cookieName: string | undefined, value: string, options: CookieSerializeOptions): string[];
@@ -1 +1,2 @@
1
+ export declare const calculateExpiresInFromExp: (exp: number) => number;
1
2
  export declare const ExpireInListener: () => JSX.Element;
@@ -1,11 +1,11 @@
1
1
  import { FronteggApp } from '@frontegg/js';
2
2
  import { AuthState } from '@frontegg/redux-store';
3
- import { FronteggProviderOptions, MeAndTenantsResponse } from '../types';
3
+ import { FronteggProviderOptions } from '../types';
4
4
  type CreateOrGetFronteggAppParams = {
5
5
  options: FronteggProviderOptions;
6
6
  onRedirectTo: AuthState['onRedirectTo'];
7
7
  appName?: string;
8
8
  storeHolder: any;
9
- } & MeAndTenantsResponse;
10
- export declare const createOrGetFronteggApp: ({ options, onRedirectTo, appName, user, tenants, storeHolder, }: CreateOrGetFronteggAppParams) => FronteggApp;
9
+ };
10
+ export declare const createOrGetFronteggApp: ({ options, onRedirectTo, appName, storeHolder, }: CreateOrGetFronteggAppParams) => FronteggApp;
11
11
  export {};
@@ -1,9 +1,5 @@
1
1
  import { FronteggApp } from '@frontegg/js';
2
- import { MeAndTenantsResponse } from '../../types';
3
- type useRequestAuthorizeSSR = {
2
+ import { AllUserData } from '../../types';
3
+ export declare const useRequestAuthorizeSSR: ({ app, user, tenants, session }: {
4
4
  app: FronteggApp;
5
- accessToken?: string;
6
- refreshToken?: string;
7
- } & MeAndTenantsResponse;
8
- export declare const useRequestAuthorizeSSR: ({ app, accessToken, user, tenants, refreshToken }: useRequestAuthorizeSSR) => void;
9
- export {};
5
+ } & AllUserData) => void;
@@ -3,3 +3,4 @@ export declare const fronteggErrors: {
3
3
  envBaseUrl: string;
4
4
  envClientId: string;
5
5
  };
6
+ export declare const COOKIE_MAX_LENGTH = 4092;
@@ -1,3 +1,9 @@
1
- import { FronteggUserTokens } from './types';
1
+ import { FronteggNextJSSession, FronteggUserTokens, AllUserData } from './types';
2
2
  export declare function createSessionFromAccessToken(output: string): Promise<[string, any, string] | []>;
3
3
  export declare function getTokensFromCookie(cookie?: string): Promise<FronteggUserTokens | undefined>;
4
+ type UserDataArguments = {
5
+ getSession: () => Promise<FronteggNextJSSession | undefined | null>;
6
+ reqHeaders: Record<string, string | string[] | undefined>;
7
+ };
8
+ export declare const getAllUserData: ({ getSession, reqHeaders }: UserDataArguments) => Promise<Partial<AllUserData>>;
9
+ export {};
package/common/index.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  export { default as FronteggConfig } from './FronteggConfig';
2
2
  export * from './types';
3
- export * from './getMeAndTenants';
4
3
  export * from './helpers';
5
4
  export * from './createGetSession';
6
5
  export * from './consts';
package/common/index.js CHANGED
@@ -1,19 +1,12 @@
1
- export { C as CookieManager, F as FronteggConfig } from '../CookieManager-c1d6c5b0.js';
2
- export { c as createSessionFromAccessToken, a as getMeAndTenants, g as getTokensFromCookie } from '../helpers-942ef431.js';
3
- export { c as createGetSession } from '../createGetSession-b2281638.js';
1
+ export { a as COOKIE_MAX_LENGTH, C as CookieManager, F as FronteggConfig, f as fronteggErrors } from '../CookieManager-27107b90.js';
2
+ export { c as createSessionFromAccessToken, a as getAllUserData, g as getTokensFromCookie } from '../helpers-b15628e9.js';
3
+ export { c as createGetSession } from '../createGetSession-bee8af0a.js';
4
4
  import 'tslib';
5
5
  import 'cookie';
6
6
  import 'jose';
7
+ import 'iron-session';
7
8
  import '../api-25516652.js';
8
9
  import '@frontegg/rest-api';
9
- import 'iron-session';
10
-
11
- var envError = function (varName) { return "@frontegg/nextjs: .env.local must contain ".concat(varName); };
12
- var fronteggErrors = {
13
- envAppUrl: envError('FRONTEGG_APP_URL'),
14
- envBaseUrl: envError('FRONTEGG_BASE_URL'),
15
- envClientId: envError('FRONTEGG_CLIENT_ID'),
16
- };
17
-
18
- export { fronteggErrors };
10
+ import 'react';
11
+ import '@frontegg/react-hooks';
19
12
  //# sourceMappingURL=index.js.map
package/common/types.d.ts CHANGED
@@ -17,9 +17,10 @@ export interface FronteggUserTokens {
17
17
  accessToken: string;
18
18
  refreshToken?: string;
19
19
  }
20
- export interface MeAndTenantsResponse {
21
- user?: ILoginResponse;
22
- tenants?: ITenantsResponse[];
20
+ export interface AllUserData {
21
+ user?: ILoginResponse | null;
22
+ tenants?: ITenantsResponse[] | null;
23
+ session?: FronteggNextJSSession | null;
23
24
  }
24
25
  export interface FronteggUserSession {
25
26
  sub: string;
@@ -47,14 +48,13 @@ export interface AppEnvConfig {
47
48
  envBaseUrl?: string;
48
49
  envClientId?: string;
49
50
  }
50
- export interface FronteggProviderOptions extends Omit<FronteggAppOptions, 'contextOptions'> {
51
- session?: FronteggNextJSSession;
51
+ export interface FronteggProviderOptions extends Omit<FronteggAppOptions, 'contextOptions'>, AllUserData {
52
52
  envAppUrl: string;
53
53
  envBaseUrl: string;
54
54
  envClientId: string;
55
55
  contextOptions?: Omit<FronteggAppOptions['contextOptions'], 'baseUrl'>;
56
56
  }
57
- export interface FronteggProviderProps extends FronteggProviderOptions, MeAndTenantsResponse {
57
+ export interface FronteggProviderProps extends FronteggProviderOptions {
58
58
  children?: ReactNode;
59
59
  router: AppRouterInstance | NextRouter;
60
60
  appName?: string;
@@ -1,6 +1,6 @@
1
1
  import { __awaiter, __generator } from 'tslib';
2
2
  import { jwtVerify } from 'jose';
3
- import { F as FronteggConfig } from './CookieManager-c1d6c5b0.js';
3
+ import { F as FronteggConfig } from './CookieManager-27107b90.js';
4
4
 
5
5
  var createGetSession = function (_a) {
6
6
  var getCookie = _a.getCookie, cookieResolver = _a.cookieResolver;
@@ -47,4 +47,4 @@ var createGetSession = function (_a) {
47
47
  };
48
48
 
49
49
  export { createGetSession as c };
50
- //# sourceMappingURL=createGetSession-b2281638.js.map
50
+ //# sourceMappingURL=createGetSession-bee8af0a.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createGetSession-bee8af0a.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/edge/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { __awaiter, __generator } from 'tslib';
2
2
  import { unsealData } from 'iron-session/edge';
3
- import { C as CookieManager, F as FronteggConfig } from '../CookieManager-c1d6c5b0.js';
4
- import { c as createGetSession } from '../createGetSession-b2281638.js';
3
+ import { C as CookieManager, F as FronteggConfig } from '../CookieManager-27107b90.js';
4
+ import { c as createGetSession } from '../createGetSession-bee8af0a.js';
5
5
  import 'cookie';
6
6
  import 'jose';
7
7
 
@@ -1,27 +1,12 @@
1
1
  import { __awaiter, __generator, __assign } from 'tslib';
2
- import { g as getUsers, a as getTenants } from './api-25516652.js';
3
2
  import { sealData, unsealData } from 'iron-session';
4
3
  import { jwtVerify } from 'jose';
5
- import { F as FronteggConfig } from './CookieManager-c1d6c5b0.js';
4
+ import { g as getUsers, a as getTenants } from './api-25516652.js';
5
+ import 'react';
6
+ import '@frontegg/react-hooks';
7
+ import { F as FronteggConfig } from './CookieManager-27107b90.js';
6
8
 
7
- function getMeAndTenants(reqHeaders, accessToken) {
8
- return __awaiter(this, void 0, void 0, function () {
9
- var headers, _a, user, tenants;
10
- return __generator(this, function (_b) {
11
- switch (_b.label) {
12
- case 0:
13
- if (!reqHeaders || !accessToken) {
14
- return [2 /*return*/, {}];
15
- }
16
- headers = __assign(__assign({}, reqHeaders), { Authorization: "Bearer ".concat(accessToken) });
17
- return [4 /*yield*/, Promise.all([getUsers(headers), getTenants(headers)])];
18
- case 1:
19
- _a = _b.sent(), user = _a[0], tenants = _a[1];
20
- return [2 /*return*/, { user: user, tenants: tenants }];
21
- }
22
- });
23
- });
24
- }
9
+ var calculateExpiresInFromExp = function (exp) { return Math.floor((exp * 1000 - Date.now()) / 1000); };
25
10
 
26
11
  function createSessionFromAccessToken(output) {
27
12
  var _a, _b;
@@ -75,7 +60,37 @@ function getTokensFromCookie(cookie) {
75
60
  }
76
61
  });
77
62
  });
78
- }
63
+ }
64
+ var getAllUserData = function (_a) {
65
+ var getSession = _a.getSession, reqHeaders = _a.reqHeaders;
66
+ return __awaiter(void 0, void 0, void 0, function () {
67
+ var session, headers, _b, baseUser, tenants, user;
68
+ return __generator(this, function (_d) {
69
+ switch (_d.label) {
70
+ case 0:
71
+ _d.trys.push([0, 3, , 4]);
72
+ return [4 /*yield*/, getSession()];
73
+ case 1:
74
+ session = _d.sent();
75
+ if (!session)
76
+ return [2 /*return*/, {}];
77
+ headers = __assign(__assign({}, reqHeaders), { Authorization: "Bearer ".concat(session.accessToken) });
78
+ return [4 /*yield*/, Promise.all([getUsers(headers), getTenants(headers)])];
79
+ case 2:
80
+ _b = _d.sent(), baseUser = _b[0], tenants = _b[1];
81
+ if (!baseUser || !tenants)
82
+ return [2 /*return*/, {}];
83
+ user = baseUser && session
84
+ ? __assign(__assign(__assign({}, session.user), baseUser), { expiresIn: calculateExpiresInFromExp(session.user.exp) }) : undefined;
85
+ return [2 /*return*/, { user: user, session: session, tenants: tenants }];
86
+ case 3:
87
+ _d.sent();
88
+ return [2 /*return*/, {}];
89
+ case 4: return [2 /*return*/];
90
+ }
91
+ });
92
+ });
93
+ };
79
94
 
80
- export { getMeAndTenants as a, createSessionFromAccessToken as c, getTokensFromCookie as g };
81
- //# sourceMappingURL=helpers-942ef431.js.map
95
+ export { getAllUserData as a, createSessionFromAccessToken as c, getTokensFromCookie as g };
96
+ //# sourceMappingURL=helpers-b15628e9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers-b15628e9.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/index.js CHANGED
@@ -25,9 +25,10 @@ var httpProxy__default = /*#__PURE__*/_interopDefaultLegacy(httpProxy);
25
25
  var AppContext = React.createContext(null);
26
26
 
27
27
  var createOrGetFronteggApp = function (_a) {
28
- var _b, _c, _d, _e, _f, _g, _h, _j, _k;
29
- var options = _a.options, onRedirectTo = _a.onRedirectTo, appName = _a.appName, user = _a.user, tenants = _a.tenants, storeHolder = _a.storeHolder;
30
- var _l = (_b = options.session) !== null && _b !== void 0 ? _b : {}, accessToken = _l.accessToken, refreshToken = _l.refreshToken;
28
+ var _b, _c, _d, _e, _f, _g, _h, _j;
29
+ var options = _a.options, onRedirectTo = _a.onRedirectTo, appName = _a.appName, storeHolder = _a.storeHolder;
30
+ var session = options.session, user = options.user, tenants = options.tenants;
31
+ var _k = session !== null && session !== void 0 ? session : {}, accessToken = _k.accessToken, refreshToken = _k.refreshToken;
31
32
  var contextOptions = tslib.__assign(tslib.__assign({ requestCredentials: 'include' }, options.contextOptions), { baseUrl: function (path) {
32
33
  if (restApi.fronteggAuthApiRoutes.indexOf(path) !== -1 ||
33
34
  path.endsWith('/postlogin') ||
@@ -40,13 +41,13 @@ var createOrGetFronteggApp = function (_a) {
40
41
  }
41
42
  }, clientId: options.envClientId });
42
43
  var tenantsState = tenants
43
- ? tslib.__assign({ tenantTree: null, subTenants: [], tenants: tenants, loading: false }, (_c = options.authOptions) === null || _c === void 0 ? void 0 : _c.tenantsState) : undefined;
44
+ ? tslib.__assign({ tenantTree: null, subTenants: [], tenants: tenants, loading: false }, (_b = options.authOptions) === null || _b === void 0 ? void 0 : _b.tenantsState) : undefined;
44
45
  var userData = user
45
- ? tslib.__assign(tslib.__assign(tslib.__assign({}, user), { accessToken: accessToken !== null && accessToken !== void 0 ? accessToken : '', refreshToken: refreshToken !== null && refreshToken !== void 0 ? refreshToken : undefined }), (_d = options.authOptions) === null || _d === void 0 ? void 0 : _d.user) : null;
46
- var authOptions = tslib.__assign(tslib.__assign({}, options.authOptions), { onRedirectTo: onRedirectTo, isLoading: false, isAuthenticated: !!options.session, hostedLoginBox: (_e = options.hostedLoginBox) !== null && _e !== void 0 ? _e : false, disableSilentRefresh: (_g = (_f = options.authOptions) === null || _f === void 0 ? void 0 : _f.disableSilentRefresh) !== null && _g !== void 0 ? _g : false, user: userData, tenantsState: tenantsState });
46
+ ? tslib.__assign(tslib.__assign(tslib.__assign({}, user), { accessToken: accessToken !== null && accessToken !== void 0 ? accessToken : '', refreshToken: refreshToken !== null && refreshToken !== void 0 ? refreshToken : undefined }), (_c = options.authOptions) === null || _c === void 0 ? void 0 : _c.user) : null;
47
+ var authOptions = tslib.__assign(tslib.__assign({}, options.authOptions), { onRedirectTo: onRedirectTo, isLoading: false, isAuthenticated: !!options.session, hostedLoginBox: (_d = options.hostedLoginBox) !== null && _d !== void 0 ? _d : false, disableSilentRefresh: (_f = (_e = options.authOptions) === null || _e === void 0 ? void 0 : _e.disableSilentRefresh) !== null && _f !== void 0 ? _f : false, user: userData, tenantsState: tenantsState });
47
48
  var sharedStore = reduxStore.createFronteggStore({ context: contextOptions }, storeHolder.current, options.previewMode, authOptions, {
48
49
  auth: authOptions !== null && authOptions !== void 0 ? authOptions : {},
49
- audits: (_h = options.auditsOptions) !== null && _h !== void 0 ? _h : {},
50
+ audits: (_g = options.auditsOptions) !== null && _g !== void 0 ? _g : {},
50
51
  }, false, options.urlStrategy);
51
52
  var createdApp;
52
53
  try {
@@ -54,31 +55,19 @@ var createOrGetFronteggApp = function (_a) {
54
55
  createdApp.store = sharedStore;
55
56
  }
56
57
  catch (e) {
57
- createdApp = js.initialize(tslib.__assign(tslib.__assign({}, options), { store: sharedStore, hostedLoginBox: (_j = options.hostedLoginBox) !== null && _j !== void 0 ? _j : false, customLoginBox: (_k = options.customLoginBox) !== null && _k !== void 0 ? _k : false, basename: options.basename, authOptions: authOptions, contextOptions: contextOptions, onRedirectTo: onRedirectTo }), appName !== null && appName !== void 0 ? appName : 'default');
58
+ createdApp = js.initialize(tslib.__assign(tslib.__assign({}, options), { store: sharedStore, hostedLoginBox: (_h = options.hostedLoginBox) !== null && _h !== void 0 ? _h : false, customLoginBox: (_j = options.customLoginBox) !== null && _j !== void 0 ? _j : false, basename: options.basename, authOptions: authOptions, contextOptions: contextOptions, onRedirectTo: onRedirectTo }), appName !== null && appName !== void 0 ? appName : 'default');
58
59
  }
59
60
  return createdApp;
60
61
  };
61
62
 
62
- var ExpireInListener = function () {
63
- var user = reactHooks.useAuthUserOrNull();
64
- var actions = reactHooks.useAuthActions();
65
- React.useEffect(function () {
66
- if (user && (user === null || user === void 0 ? void 0 : user.expiresIn) == null) {
67
- actions.setUser(tslib.__assign(tslib.__assign({}, user), { expiresIn: Math.floor((user['exp'] * 1000 - Date.now()) / 1000) }));
68
- }
69
- }, [actions, user]);
70
- // eslint-disable-next-line react/jsx-no-useless-fragment
71
- return React__default["default"].createElement(React__default["default"].Fragment, null);
72
- };
73
-
74
63
  var useRequestAuthorizeSSR = function (_a) {
75
- var app = _a.app, accessToken = _a.accessToken, user = _a.user, tenants = _a.tenants, refreshToken = _a.refreshToken;
64
+ var app = _a.app, user = _a.user, tenants = _a.tenants, session = _a.session;
76
65
  React.useEffect(function () {
77
66
  app === null || app === void 0 ? void 0 : app.store.dispatch({
78
67
  type: 'auth/requestAuthorizeSSR',
79
68
  payload: {
80
- accessToken: accessToken,
81
- user: user ? tslib.__assign(tslib.__assign({}, user), { refreshToken: refreshToken }) : null,
69
+ accessToken: session === null || session === void 0 ? void 0 : session.accessToken,
70
+ user: user ? tslib.__assign(tslib.__assign({}, user), { refreshToken: session === null || session === void 0 ? void 0 : session.refreshToken }) : null,
82
71
  tenants: tenants,
83
72
  },
84
73
  });
@@ -86,11 +75,11 @@ var useRequestAuthorizeSSR = function (_a) {
86
75
  };
87
76
 
88
77
  var Connector$1 = function (_a) {
89
- var _b, _c;
90
- var router = _a.router, _d = _a.appName, appName = _d === void 0 ? 'default' : _d, user = _a.user, tenants = _a.tenants, props = tslib.__rest(_a, ["router", "appName", "user", "tenants"]);
78
+ var _b;
79
+ var router = _a.router, _c = _a.appName, appName = _c === void 0 ? 'default' : _c, props = tslib.__rest(_a, ["router", "appName"]);
91
80
  var isSSR = typeof window === 'undefined';
92
- var _e = (_b = props.session) !== null && _b !== void 0 ? _b : {}, accessToken = _e.accessToken, refreshToken = _e.refreshToken;
93
- var baseName = (_c = props.basename) !== null && _c !== void 0 ? _c : '';
81
+ var user = props.user, session = props.session, tenants = props.tenants;
82
+ var baseName = (_b = props.basename) !== null && _b !== void 0 ? _b : '';
94
83
  var storeHolder = React.useRef({});
95
84
  var onRedirectTo = React.useCallback(function (_path, opts) {
96
85
  var path = _path;
@@ -111,22 +100,31 @@ var Connector$1 = function (_a) {
111
100
  var app = React.useMemo(function () {
112
101
  return createOrGetFronteggApp({
113
102
  options: tslib.__assign(tslib.__assign({}, props), { basename: baseName }),
114
- user: user,
115
- tenants: tenants,
116
103
  onRedirectTo: onRedirectTo,
117
104
  appName: appName,
118
105
  storeHolder: storeHolder,
119
106
  });
120
107
  }, [props]);
121
108
  restApi.ContextHolder.setOnRedirectTo(onRedirectTo);
122
- useRequestAuthorizeSSR({ app: app, accessToken: accessToken, user: user, tenants: tenants, refreshToken: refreshToken });
109
+ useRequestAuthorizeSSR({ app: app, user: user, tenants: tenants, session: session });
123
110
  return (React__default["default"].createElement(AppContext.Provider, { value: app },
124
111
  React__default["default"].createElement(reactHooks.FronteggStoreProvider, tslib.__assign({}, tslib.__assign(tslib.__assign({}, props), { app: app })), props.children)));
125
112
  };
126
113
  var FronteggBaseProvider = function (props) {
127
- return (React__default["default"].createElement(Connector$1, tslib.__assign({}, props, { framework: 'nextjs' }),
128
- React__default["default"].createElement(ExpireInListener, null),
129
- props.children));
114
+ return (React__default["default"].createElement(Connector$1, tslib.__assign({}, props, { framework: 'nextjs' }), props.children));
115
+ };
116
+
117
+ var calculateExpiresInFromExp = function (exp) { return Math.floor((exp * 1000 - Date.now()) / 1000); };
118
+ var ExpireInListener = function () {
119
+ var user = reactHooks.useAuthUserOrNull();
120
+ var actions = reactHooks.useAuthActions();
121
+ React.useEffect(function () {
122
+ if (user && (user === null || user === void 0 ? void 0 : user.expiresIn) == null) {
123
+ actions.setUser(tslib.__assign(tslib.__assign({}, user), { expiresIn: calculateExpiresInFromExp(user['exp']) }));
124
+ }
125
+ }, [actions, user]);
126
+ // eslint-disable-next-line react/jsx-no-useless-fragment
127
+ return React__default["default"].createElement(React__default["default"].Fragment, null);
130
128
  };
131
129
 
132
130
  var FronteggProvider = function (_a) {
@@ -402,25 +400,6 @@ var getTenants = function (headers) { return tslib.__awaiter(void 0, void 0, voi
402
400
  });
403
401
  }); };
404
402
 
405
- function getMeAndTenants(reqHeaders, accessToken) {
406
- return tslib.__awaiter(this, void 0, void 0, function () {
407
- var headers, _a, user, tenants;
408
- return tslib.__generator(this, function (_b) {
409
- switch (_b.label) {
410
- case 0:
411
- if (!reqHeaders || !accessToken) {
412
- return [2 /*return*/, {}];
413
- }
414
- headers = tslib.__assign(tslib.__assign({}, reqHeaders), { Authorization: "Bearer ".concat(accessToken) });
415
- return [4 /*yield*/, Promise.all([getUsers(headers), getTenants(headers)])];
416
- case 1:
417
- _a = _b.sent(), user = _a[0], tenants = _a[1];
418
- return [2 /*return*/, { user: user, tenants: tenants }];
419
- }
420
- });
421
- });
422
- }
423
-
424
403
  function createSessionFromAccessToken(output) {
425
404
  var _a, _b;
426
405
  return tslib.__awaiter(this, void 0, void 0, function () {
@@ -473,7 +452,37 @@ function getTokensFromCookie(cookie) {
473
452
  }
474
453
  });
475
454
  });
476
- }
455
+ }
456
+ var getAllUserData = function (_a) {
457
+ var getSession = _a.getSession, reqHeaders = _a.reqHeaders;
458
+ return tslib.__awaiter(void 0, void 0, void 0, function () {
459
+ var session, headers, _b, baseUser, tenants, user;
460
+ return tslib.__generator(this, function (_d) {
461
+ switch (_d.label) {
462
+ case 0:
463
+ _d.trys.push([0, 3, , 4]);
464
+ return [4 /*yield*/, getSession()];
465
+ case 1:
466
+ session = _d.sent();
467
+ if (!session)
468
+ return [2 /*return*/, {}];
469
+ headers = tslib.__assign(tslib.__assign({}, reqHeaders), { Authorization: "Bearer ".concat(session.accessToken) });
470
+ return [4 /*yield*/, Promise.all([getUsers(headers), getTenants(headers)])];
471
+ case 2:
472
+ _b = _d.sent(), baseUser = _b[0], tenants = _b[1];
473
+ if (!baseUser || !tenants)
474
+ return [2 /*return*/, {}];
475
+ user = baseUser && session
476
+ ? tslib.__assign(tslib.__assign(tslib.__assign({}, session.user), baseUser), { expiresIn: calculateExpiresInFromExp(session.user.exp) }) : undefined;
477
+ return [2 /*return*/, { user: user, session: session, tenants: tenants }];
478
+ case 3:
479
+ _d.sent();
480
+ return [2 /*return*/, {}];
481
+ case 4: return [2 /*return*/];
482
+ }
483
+ });
484
+ });
485
+ };
477
486
 
478
487
  var createGetSession = function (_a) {
479
488
  var getCookie = _a.getCookie, cookieResolver = _a.cookieResolver;
@@ -524,7 +533,8 @@ var fronteggErrors = {
524
533
  envAppUrl: envError('FRONTEGG_APP_URL'),
525
534
  envBaseUrl: envError('FRONTEGG_BASE_URL'),
526
535
  envClientId: envError('FRONTEGG_CLIENT_ID'),
527
- };
536
+ };
537
+ var COOKIE_MAX_LENGTH = 4092;
528
538
 
529
539
  function chunkString(str, chunkSize) {
530
540
  var numChunks = Math.ceil(str.length / chunkSize);
@@ -537,12 +547,12 @@ function chunkString(str, chunkSize) {
537
547
  return chunks;
538
548
  }
539
549
 
540
- var COOKIE_MAX_LENGTH = 4096;
541
550
  var CookieManager = /** @class */ (function () {
542
551
  function CookieManager() {
543
552
  var _this = this;
544
553
  this.getCookieName = function (cookieNumber, cookieName) {
545
- return "".concat(cookieName !== null && cookieName !== void 0 ? cookieName : fronteggConfig.cookieName, "-").concat(cookieNumber);
554
+ if (cookieName === void 0) { cookieName = fronteggConfig.cookieName; }
555
+ return cookieNumber ? "".concat(cookieName, "-").concat(cookieNumber) : cookieName;
546
556
  };
547
557
  this.mapValueChunksToCookies = function (cookieName, valueChunks, options) {
548
558
  return valueChunks.map(function (chunk, index) { return cookie__default["default"].serialize(_this.getCookieName(index + 1, cookieName), chunk, options); });
@@ -566,13 +576,13 @@ var CookieManager = /** @class */ (function () {
566
576
  }
567
577
  try {
568
578
  var cookieStr = _this.getCookieStringFromRequest(req);
569
- var allCookies = cookieStr && cookie__default["default"].parse(cookieStr);
570
- if (!allCookies) {
579
+ var cookies = cookieStr && cookie__default["default"].parse(cookieStr);
580
+ if (!cookies) {
571
581
  return [];
572
582
  }
573
583
  var cookieNumber = 1;
574
584
  var cookieToRemove = [];
575
- while (allCookies[_this.getCookieName(cookieNumber)]) {
585
+ while (cookies[_this.getCookieName(cookieNumber)]) {
576
586
  cookieToRemove.push(_this.getCookieName(cookieNumber));
577
587
  cookieNumber++;
578
588
  }
@@ -639,7 +649,7 @@ var CookieManager = /** @class */ (function () {
639
649
  secure: isSecured,
640
650
  };
641
651
  var cookieValue = cookie__default["default"].serialize(cookieName !== null && cookieName !== void 0 ? cookieName : this.getCookieName(1), value, options);
642
- if (cookieValue.length < COOKIE_MAX_LENGTH) {
652
+ if (cookieValue.length <= COOKIE_MAX_LENGTH) {
643
653
  return [cookieValue];
644
654
  }
645
655
  var valueChunks = this.splitValueToChunks(cookieName, value, options);
@@ -658,20 +668,18 @@ var CookieManager = /** @class */ (function () {
658
668
  return this.parseCookie(cookieStr);
659
669
  };
660
670
  CookieManager.prototype.parseCookie = function (cookieStr) {
671
+ var cookies = cookie__default["default"].parse(cookieStr);
661
672
  var sealFromCookies = '';
662
673
  var i = 1;
663
- while (cookie__default["default"].parse(cookieStr)[this.getCookieName(i)]) {
664
- sealFromCookies += cookie__default["default"].parse(cookieStr)[this.getCookieName(i)];
674
+ while (cookies[this.getCookieName(i)]) {
675
+ sealFromCookies += cookies[this.getCookieName(i)];
665
676
  i++;
666
677
  }
667
678
  return sealFromCookies !== '' ? sealFromCookies : undefined;
668
679
  };
669
680
  CookieManager.prototype.parseCookieFromArray = function (cookies) {
670
- var userCookie = cookies.find(function (c) { return c.name === fronteggConfig.cookieName; });
671
- if (userCookie) {
672
- return userCookie.value;
673
- }
674
- var cookieChunks = cookies.filter(function (c) { return c.name.includes(fronteggConfig.cookieName); });
681
+ var _this = this;
682
+ var cookieChunks = cookies.filter(function (c) { return c.name.includes(_this.getCookieName()); });
675
683
  if (!cookieChunks) {
676
684
  return undefined;
677
685
  }
@@ -969,20 +977,25 @@ var withFronteggApp = function (app, options) {
969
977
  var _a, _b;
970
978
  var originalGetInitialProps = app.getInitialProps;
971
979
  app.getInitialProps = function (appContext) { return tslib.__awaiter(void 0, void 0, void 0, function () {
972
- var ctx, Component, session, _a, user, tenants, _b, envAppUrl, envBaseUrl, envClientId, _c, _d, _e, _f, _g, _h, _j, _k;
980
+ var ctx, Component, _a, user, tenants, session, _b, envAppUrl, envBaseUrl, envClientId, _c, _d, _e, _f, _g, _h, _j, _k;
973
981
  var _l, _m;
974
982
  var _o;
975
983
  return tslib.__generator(this, function (_p) {
976
984
  switch (_p.label) {
977
985
  case 0:
978
986
  ctx = appContext.ctx, Component = appContext.Component;
979
- if (!ctx.req) return [3 /*break*/, 9];
980
- return [4 /*yield*/, refreshToken(ctx)];
987
+ if (!ctx.req) return [3 /*break*/, 8];
988
+ return [4 /*yield*/, getAllUserData({
989
+ getSession: function () { return tslib.__awaiter(void 0, void 0, void 0, function () { return tslib.__generator(this, function (_a) {
990
+ switch (_a.label) {
991
+ case 0: return [4 /*yield*/, refreshToken(ctx)];
992
+ case 1: return [2 /*return*/, _a.sent()];
993
+ }
994
+ }); }); },
995
+ reqHeaders: (_o = ctx.req) === null || _o === void 0 ? void 0 : _o.headers,
996
+ })];
981
997
  case 1:
982
- session = _p.sent();
983
- return [4 /*yield*/, getMeAndTenants((_o = ctx.req) === null || _o === void 0 ? void 0 : _o.headers, session === null || session === void 0 ? void 0 : session.accessToken)];
984
- case 2:
985
- _a = _p.sent(), user = _a.user, tenants = _a.tenants;
998
+ _a = _p.sent(), user = _a.user, tenants = _a.tenants, session = _a.session;
986
999
  appContext.session = session;
987
1000
  appContext.user = user;
988
1001
  appContext.tenants = tenants;
@@ -998,49 +1011,49 @@ var withFronteggApp = function (app, options) {
998
1011
  }
999
1012
  _l = {};
1000
1013
  _c = [{}];
1001
- if (!originalGetInitialProps) return [3 /*break*/, 4];
1014
+ if (!originalGetInitialProps) return [3 /*break*/, 3];
1002
1015
  return [4 /*yield*/, originalGetInitialProps(appContext)];
1003
- case 3:
1016
+ case 2:
1004
1017
  _d = _p.sent();
1005
- return [3 /*break*/, 5];
1006
- case 4:
1018
+ return [3 /*break*/, 4];
1019
+ case 3:
1007
1020
  _d = {};
1008
- _p.label = 5;
1009
- case 5:
1021
+ _p.label = 4;
1022
+ case 4:
1010
1023
  _e = [tslib.__assign.apply(void 0, _c.concat([(_d)]))];
1011
- if (!Component.getInitialProps) return [3 /*break*/, 7];
1024
+ if (!Component.getInitialProps) return [3 /*break*/, 6];
1012
1025
  return [4 /*yield*/, Component.getInitialProps(ctx)];
1013
- case 6:
1026
+ case 5:
1014
1027
  _f = _p.sent();
1015
- return [3 /*break*/, 8];
1016
- case 7:
1028
+ return [3 /*break*/, 7];
1029
+ case 6:
1017
1030
  _f = {};
1018
- _p.label = 8;
1019
- case 8: return [2 /*return*/, (_l.pageProps = tslib.__assign.apply(void 0, [tslib.__assign.apply(void 0, _e.concat([(_f)])), { session: session, user: user, tenants: tenants, envAppUrl: envAppUrl, envBaseUrl: process.env['FRONTEGG_BASE_URL'], envClientId: process.env['FRONTEGG_CLIENT_ID'] }]),
1031
+ _p.label = 7;
1032
+ case 7: return [2 /*return*/, (_l.pageProps = tslib.__assign.apply(void 0, [tslib.__assign.apply(void 0, _e.concat([(_f)])), { session: session, user: user, tenants: tenants, envAppUrl: envAppUrl, envBaseUrl: process.env['FRONTEGG_BASE_URL'], envClientId: process.env['FRONTEGG_CLIENT_ID'] }]),
1020
1033
  _l)];
1021
- case 9:
1034
+ case 8:
1022
1035
  appContext.session = null;
1023
1036
  _m = {};
1024
1037
  _g = [{}];
1025
- if (!originalGetInitialProps) return [3 /*break*/, 11];
1038
+ if (!originalGetInitialProps) return [3 /*break*/, 10];
1026
1039
  return [4 /*yield*/, originalGetInitialProps(appContext)];
1027
- case 10:
1040
+ case 9:
1028
1041
  _h = _p.sent();
1029
- return [3 /*break*/, 12];
1030
- case 11:
1042
+ return [3 /*break*/, 11];
1043
+ case 10:
1031
1044
  _h = {};
1032
- _p.label = 12;
1033
- case 12:
1045
+ _p.label = 11;
1046
+ case 11:
1034
1047
  _j = [tslib.__assign.apply(void 0, _g.concat([(_h)]))];
1035
- if (!Component.getInitialProps) return [3 /*break*/, 14];
1048
+ if (!Component.getInitialProps) return [3 /*break*/, 13];
1036
1049
  return [4 /*yield*/, Component.getInitialProps(ctx)];
1037
- case 13:
1050
+ case 12:
1038
1051
  _k = _p.sent();
1039
- return [3 /*break*/, 15];
1040
- case 14:
1052
+ return [3 /*break*/, 14];
1053
+ case 13:
1041
1054
  _k = {};
1042
- _p.label = 15;
1043
- case 15: return [2 /*return*/, (_m.pageProps = tslib.__assign.apply(void 0, _j.concat([(_k)])),
1055
+ _p.label = 14;
1056
+ case 14: return [2 /*return*/, (_m.pageProps = tslib.__assign.apply(void 0, _j.concat([(_k)])),
1044
1057
  _m)];
1045
1058
  }
1046
1059
  });
@@ -1193,6 +1206,7 @@ Object.defineProperty(exports, 'AdminPortal', {
1193
1206
  get: function () { return js.AdminPortal; }
1194
1207
  });
1195
1208
  exports.AuthorizedContent = AuthorizedContent;
1209
+ exports.COOKIE_MAX_LENGTH = COOKIE_MAX_LENGTH;
1196
1210
  exports.CookieManager = CookieManager$1;
1197
1211
  exports.FronteggConfig = fronteggConfig;
1198
1212
  exports.FronteggProvider = FronteggProvider;
@@ -1203,7 +1217,7 @@ exports.createGetSession = createGetSession;
1203
1217
  exports.createSessionFromAccessToken = createSessionFromAccessToken;
1204
1218
  exports.fronteggErrors = fronteggErrors;
1205
1219
  exports.fronteggMiddleware = fronteggMiddleware;
1206
- exports.getMeAndTenants = getMeAndTenants;
1220
+ exports.getAllUserData = getAllUserData;
1207
1221
  exports.getSession = getSession;
1208
1222
  exports.getTokensFromCookie = getTokensFromCookie;
1209
1223
  exports.rewritePath = rewritePath;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@frontegg/nextjs",
3
3
  "libName": "FronteggNextJs",
4
- "version": "6.7.9",
4
+ "version": "6.7.10-alpha.3866771854",
5
5
  "author": "Frontegg LTD",
6
6
  "license": "MIT",
7
7
  "types": "dist/index.d.ts",
package/server/index.js CHANGED
@@ -1,19 +1,19 @@
1
1
  import { __awaiter, __generator, __rest, __assign } from 'tslib';
2
2
  import React from 'react';
3
3
  import { cookies, headers } from 'next/headers';
4
- import { C as CookieManager } from '../CookieManager-c1d6c5b0.js';
5
- import '../api-25516652.js';
6
- import { g as getTokensFromCookie, a as getMeAndTenants } from '../helpers-942ef431.js';
7
- import { c as createGetSession } from '../createGetSession-b2281638.js';
8
- import 'iron-session';
4
+ import { C as CookieManager } from '../CookieManager-27107b90.js';
5
+ import { g as getTokensFromCookie, a as getAllUserData } from '../helpers-b15628e9.js';
6
+ import { c as createGetSession } from '../createGetSession-bee8af0a.js';
9
7
  import 'jose';
10
8
  import '@frontegg/react-hooks';
11
9
  import '@frontegg/rest-api';
12
- import { F as FronteggClientProviderNext13 } from '../FronteggClientProviderNext13-3259fcd9.js';
10
+ import { F as FronteggClientProviderNext13 } from '../FronteggClientProviderNext13-d020161d.js';
13
11
  import '@frontegg/js';
14
12
  import '@frontegg/redux-store';
15
13
  import 'next/navigation';
16
14
  import 'cookie';
15
+ import 'iron-session';
16
+ import '../api-25516652.js';
17
17
 
18
18
  var getCookie = function () {
19
19
  var allCookies = cookies().getAll();
@@ -52,7 +52,7 @@ function getUserTokens() {
52
52
  }
53
53
 
54
54
  var FronteggAppProvider = function (_a) { return __awaiter(void 0, void 0, void 0, function () {
55
- var envAppUrl, envBaseUrl, envClientId, session, allHeaders, _b, user, tenants;
55
+ var envAppUrl, envBaseUrl, envClientId, reqHeaders, _b, user, tenants, session;
56
56
  var children = _a.children, options = __rest(_a, ["children"]);
57
57
  return __generator(this, function (_c) {
58
58
  switch (_c.label) {
@@ -69,14 +69,11 @@ var FronteggAppProvider = function (_a) { return __awaiter(void 0, void 0, void
69
69
  if (!envClientId) {
70
70
  throw Error('@frontegg/nextjs: .env.local must contain FRONTEGG_CLIENT_ID');
71
71
  }
72
- return [4 /*yield*/, getSession()];
72
+ reqHeaders = {};
73
+ headers().forEach(function (value, key) { return (reqHeaders[key] = value); });
74
+ return [4 /*yield*/, getAllUserData({ getSession: getSession, reqHeaders: reqHeaders })];
73
75
  case 1:
74
- session = _c.sent();
75
- allHeaders = {};
76
- headers().forEach(function (value, key) { return (allHeaders[key] = value); });
77
- return [4 /*yield*/, getMeAndTenants(allHeaders, session === null || session === void 0 ? void 0 : session.accessToken)];
78
- case 2:
79
- _b = _c.sent(), user = _b.user, tenants = _b.tenants;
76
+ _b = _c.sent(), user = _b.user, tenants = _b.tenants, session = _b.session;
80
77
  return [2 /*return*/, (React.createElement(FronteggClientProviderNext13, __assign({}, { session: session, envAppUrl: envAppUrl, envBaseUrl: envBaseUrl, envClientId: envClientId, user: user, tenants: tenants }, options), children))];
81
78
  }
82
79
  });
@@ -1,10 +1,8 @@
1
1
  import { FronteggAppOptions } from '@frontegg/types';
2
2
  import type { AppInitialProps } from 'next/app';
3
3
  import type { AppContextType, AppPropsType, NextComponentType } from 'next/dist/shared/lib/utils';
4
- import { FronteggNextJSSession } from './common';
5
- type FronteggCustomApp = NextComponentType<AppContextType & {
6
- session: FronteggNextJSSession | null;
7
- }, AppInitialProps, AppPropsType>;
4
+ import { AllUserData } from './common';
5
+ type FronteggCustomApp = NextComponentType<AppContextType & AllUserData, AppInitialProps, AppPropsType>;
8
6
  export declare const withFronteggApp: (app: ((props: AppPropsType<any>) => JSX.Element) & {
9
7
  getInitialProps?: FronteggCustomApp['getInitialProps'];
10
8
  }, options?: Omit<FronteggAppOptions, 'contextOptions'> & {
@@ -1 +0,0 @@
1
- {"version":3,"file":"CookieManager-c1d6c5b0.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"FronteggClientProviderNext13-3259fcd9.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import { MeAndTenantsResponse } from './types';
2
- export declare function getMeAndTenants(reqHeaders?: Record<string, string | string[] | null | undefined>, accessToken?: string): Promise<MeAndTenantsResponse>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"createGetSession-b2281638.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"helpers-942ef431.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}