@frontegg/nextjs 8.0.26 → 8.0.27-alpha.10042638343

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.
@@ -6,5 +6,5 @@ interface FronteggRouterProps {
6
6
  };
7
7
  searchParams?: ParsedUrlQuery;
8
8
  }
9
- export declare function FronteggAppRouter({ params: { 'frontegg-router': pathArr }, searchParams }: FronteggRouterProps): JSX.Element | null;
9
+ export declare function FronteggAppRouter(props: FronteggRouterProps): JSX.Element | null;
10
10
  export {};
@@ -10,12 +10,13 @@ var _routing = require("../utils/routing");
10
10
  var _FronteggRouterBase = require("../common/FronteggRouterBase");
11
11
  var _react = _interopRequireDefault(require("react"));
12
12
  var _jsxRuntime = require("react/jsx-runtime");
13
- function FronteggAppRouter({
14
- params: {
15
- 'frontegg-router': pathArr = []
16
- },
17
- searchParams
18
- }) {
13
+ function FronteggAppRouter(props) {
14
+ const {
15
+ params: {
16
+ 'frontegg-router': pathArr = []
17
+ },
18
+ searchParams
19
+ } = props;
19
20
  let pathname = `/${pathArr.join('/')}`;
20
21
  if (!pathname || pathname.startsWith('/_next/data')) {
21
22
  if (searchParams) {
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"FronteggAppRouter.js","names":["_navigation","require","_routing","_FronteggRouterBase","_react","_interopRequireDefault","_jsxRuntime","FronteggAppRouter","props","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(props: FronteggRouterProps) {\n const {\n params: { 'frontegg-router': pathArr = [] },\n searchParams,\n } = props;\n\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,CAACC,KAA0B,EAAE;EAC5D,MAAM;IACJC,MAAM,EAAE;MAAE,iBAAiB,EAAEC,OAAO,GAAG;IAAG,CAAC;IAC3CC;EACF,CAAC,GAAGH,KAAK;EAET,IAAII,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,IAAAd,WAAA,CAAAgB,GAAA,EAACnB,mBAAA,CAAAoB,kBAAkB;IAACb,OAAO,EAAEA,OAAQ;IAACc,WAAW,EAAEb,YAAa;IAACc,eAAe;EAAA,EAAG;AAC5F"}
@@ -35,8 +35,7 @@ const Connector = _ref => {
35
35
  activeTenant
36
36
  } = props;
37
37
  const baseName = (_props$basename = props.basename) != null ? _props$basename : '';
38
- const ssrStoreHolder = (0, _react.useRef)({});
39
- const storeHolder = isSSR ? ssrStoreHolder.current : undefined;
38
+ const storeHolder = (0, _react.useRef)({});
40
39
  const onRedirectTo = (0, _useOnRedirectTo.default)(baseName, router, (_props$authOptions = props.authOptions) == null ? void 0 : _props$authOptions.routes);
41
40
  const app = (0, _react.useMemo)(() => (0, _initializeFronteggApp.default)({
42
41
  options: (0, _extends2.default)({}, props, {
@@ -44,7 +43,7 @@ const Connector = _ref => {
44
43
  }),
45
44
  onRedirectTo,
46
45
  appName,
47
- storeHolder
46
+ storeHolder: storeHolder.current
48
47
  }), [props]);
49
48
  _restApi.ContextHolder.setOnRedirectTo(onRedirectTo);
50
49
  (0, _useRequestAuthorizeSSR.default)({
@@ -1 +1 @@
1
- {"version":3,"file":"FronteggBaseProvider.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","FronteggBaseProvider","_extends2","_objectWithoutPropertiesLoose2","_react","_interopRequireWildcard","_reactHooks","_restApi","_AppContext","_initializeFronteggApp","_useRequestAuthorizeSSR","_useOnRedirectTo","_config","_jsxRuntime","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Connector","_ref","_props$basename","_props$authOptions","router","appName","props","isSSR","window","user","session","tenants","activeTenant","baseName","basename","ssrStoreHolder","useRef","storeHolder","current","undefined","onRedirectTo","useOnRedirectTo","authOptions","routes","app","useMemo","initializeFronteggApp","options","ContextHolder","setOnRedirectTo","useRequestAuthorizeSSR","jsx","Provider","children","FronteggStoreProvider","alwaysVisibleChildren","CustomComponentRegister","themeOptions","config","fronteggAppOptions","framework"],"sources":["../../../../packages/nextjs/src/common/FronteggBaseProvider.tsx"],"sourcesContent":["'use client';\n\nimport React, { FC, useMemo, useRef } from 'react';\nimport { FronteggStoreProvider, CustomComponentRegister } from '@frontegg/react-hooks';\nimport { ContextHolder } from '@frontegg/rest-api';\nimport type { FronteggProviderProps } from '../types';\nimport AppContext from './AppContext';\nimport initializeFronteggApp from '../utils/initializeFronteggApp';\nimport useRequestAuthorizeSSR from './useRequestAuthorizeSSR';\nimport useOnRedirectTo from '../utils/useOnRedirectTo';\nimport config from '../config';\n\nconst Connector: FC<FronteggProviderProps> = ({ router, appName = 'default', ...props }) => {\n const isSSR = typeof window === 'undefined';\n const { user, session, tenants, activeTenant } = props;\n const baseName = props.basename ?? '';\n const ssrStoreHolder = useRef({});\n const storeHolder = isSSR ? ssrStoreHolder.current : undefined;\n\n const onRedirectTo = useOnRedirectTo(baseName, router, props.authOptions?.routes);\n\n const app = useMemo(\n () =>\n initializeFronteggApp({\n options: { ...props, basename: baseName },\n onRedirectTo,\n appName,\n storeHolder,\n }),\n [props]\n );\n ContextHolder.setOnRedirectTo(onRedirectTo);\n\n useRequestAuthorizeSSR({ app, user, tenants, activeTenant, session });\n return (\n <AppContext.Provider value={app}>\n <FronteggStoreProvider\n {...({ ...props, app } as any)}\n alwaysVisibleChildren={!isSSR && <CustomComponentRegister app={app} themeOptions={props.themeOptions} />}\n >\n {props.children}\n </FronteggStoreProvider>\n </AppContext.Provider>\n );\n};\n\nexport const FronteggBaseProvider: FC<FronteggProviderProps> = (props) => {\n config.fronteggAppOptions = props ?? {};\n\n return (\n <Connector {...props} framework={'nextjs'}>\n {props.children}\n </Connector>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"FronteggBaseProvider.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","FronteggBaseProvider","_extends2","_objectWithoutPropertiesLoose2","_react","_interopRequireWildcard","_reactHooks","_restApi","_AppContext","_initializeFronteggApp","_useRequestAuthorizeSSR","_useOnRedirectTo","_config","_jsxRuntime","_excluded","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","Connector","_ref","_props$basename","_props$authOptions","router","appName","props","isSSR","window","user","session","tenants","activeTenant","baseName","basename","storeHolder","useRef","onRedirectTo","useOnRedirectTo","authOptions","routes","app","useMemo","initializeFronteggApp","options","current","ContextHolder","setOnRedirectTo","useRequestAuthorizeSSR","jsx","Provider","children","FronteggStoreProvider","alwaysVisibleChildren","CustomComponentRegister","themeOptions","config","fronteggAppOptions","framework"],"sources":["../../../../packages/nextjs/src/common/FronteggBaseProvider.tsx"],"sourcesContent":["'use client';\n\nimport React, { FC, useMemo, useRef } from 'react';\nimport { FronteggStoreProvider, CustomComponentRegister } from '@frontegg/react-hooks';\nimport { ContextHolder } from '@frontegg/rest-api';\nimport type { FronteggProviderProps } from '../types';\nimport AppContext from './AppContext';\nimport initializeFronteggApp from '../utils/initializeFronteggApp';\nimport useRequestAuthorizeSSR from './useRequestAuthorizeSSR';\nimport useOnRedirectTo from '../utils/useOnRedirectTo';\nimport config from '../config';\n\nconst Connector: FC<FronteggProviderProps> = ({ router, appName = 'default', ...props }) => {\n const isSSR = typeof window === 'undefined';\n const { user, session, tenants, activeTenant } = props;\n const baseName = props.basename ?? '';\n const storeHolder = useRef({});\n\n const onRedirectTo = useOnRedirectTo(baseName, router, props.authOptions?.routes);\n\n const app = useMemo(\n () =>\n initializeFronteggApp({\n options: { ...props, basename: baseName },\n onRedirectTo,\n appName,\n storeHolder: storeHolder.current,\n }),\n [props]\n );\n ContextHolder.setOnRedirectTo(onRedirectTo);\n\n useRequestAuthorizeSSR({ app, user, tenants, activeTenant, session });\n return (\n <AppContext.Provider value={app}>\n <FronteggStoreProvider\n {...({ ...props, app } as any)}\n alwaysVisibleChildren={!isSSR && <CustomComponentRegister app={app} themeOptions={props.themeOptions} />}\n >\n {props.children}\n </FronteggStoreProvider>\n </AppContext.Provider>\n );\n};\n\nexport const FronteggBaseProvider: FC<FronteggProviderProps> = (props) => {\n config.fronteggAppOptions = props ?? {};\n\n return (\n <Connector {...props} framework={'nextjs'}>\n {props.children}\n </Connector>\n );\n};\n"],"mappings":"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"}
@@ -8,7 +8,7 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.FronteggRouterBase = FronteggRouterBase;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _config = _interopRequireDefault(require("../config"));
11
- var _reduxStore = require("@frontegg/redux-store");
11
+ var _routing = require("../utils/routing");
12
12
  var _react = _interopRequireWildcard(require("react"));
13
13
  var _reactHooks = require("@frontegg/react-hooks");
14
14
  var _constants = require("../utils/common/constants");
@@ -33,7 +33,7 @@ function FronteggRouterBase(props) {
33
33
  return;
34
34
  }
35
35
  const pathname = `/${pathArr.join('/')}`;
36
- const routesObj = (0, _extends2.default)({}, _reduxStore.authInitialState.routes, _config.default.authRoutes);
36
+ const routesObj = (0, _extends2.default)({}, _routing.defaultFronteggRoutes, _config.default.authRoutes);
37
37
  if (app.options.hostedLoginBox) {
38
38
  if (pathname === routesObj.loginUrl) {
39
39
  if (queryParams.redirectUrl) {
@@ -1 +1 @@
1
- {"version":3,"file":"FronteggRouterBase.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","FronteggRouterBase","_extends2","_config","_reduxStore","_react","_interopRequireWildcard","_reactHooks","_constants","_AppContext","_jsxRuntime","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","props","queryParams","pathArr","isAppDirEnabled","app","useContext","AppContext","loginWithRedirect","useLoginWithRedirect","requestAuthorize","logout","useLoginActions","useEffect","pathname","join","routesObj","authInitialState","routes","config","authRoutes","options","hostedLoginBox","loginUrl","redirectUrl","localStorage","setItem","FRONTEGG_AFTER_AUTH_REDIRECT_URL","window","location","origin","logoutUrl","_routesObj$hostedLogi","startsWith","hostedLoginRedirectUrl","href","authenticatedUrl","isSamlCallback","samlCallbackUrl","isLoginPage","jsx","Fragment"],"sources":["../../../../packages/nextjs/src/common/FronteggRouterBase.tsx"],"sourcesContent":["'use client';\n\nimport config from '../config';\nimport { authInitialState } from '@frontegg/redux-store';\nimport { useContext, useEffect } from 'react';\nimport { useLoginActions, useLoginWithRedirect } from '@frontegg/react-hooks';\nimport { FRONTEGG_AFTER_AUTH_REDIRECT_URL } from '../utils/common/constants';\nimport AppContext from './AppContext';\nimport React from 'react';\nimport { ParsedUrlQuery } from 'querystring';\n\ninterface FronteggRouterBaseProps {\n queryParams?: ParsedUrlQuery;\n pathArr: string[];\n isAppDirEnabled?: boolean;\n}\n\nexport function FronteggRouterBase(props: FronteggRouterBaseProps) {\n const { queryParams = {}, pathArr, isAppDirEnabled } = props;\n const app = useContext(AppContext);\n const loginWithRedirect = useLoginWithRedirect();\n const { requestAuthorize, logout } = useLoginActions();\n\n useEffect(() => {\n if (!app) {\n return;\n }\n const pathname = `/${pathArr.join('/')}`;\n const routesObj = {\n ...authInitialState.routes,\n ...config.authRoutes,\n };\n\n if (app.options.hostedLoginBox) {\n if (pathname === routesObj.loginUrl) {\n if (queryParams.redirectUrl) {\n localStorage.setItem(FRONTEGG_AFTER_AUTH_REDIRECT_URL, `${window.location.origin}${queryParams.redirectUrl}`);\n }\n loginWithRedirect();\n } else if (pathname === routesObj.logoutUrl) {\n logout();\n }\n } else {\n if (pathname.startsWith(routesObj.hostedLoginRedirectUrl ?? '/oauth/callback')) {\n // if not hosted login, redirect the user to the authenticated url\n window.location.href = routesObj.authenticatedUrl;\n } else {\n const isSamlCallback = pathname === routesObj.samlCallbackUrl;\n const isLoginPage = pathname.startsWith(routesObj.loginUrl);\n if ((isAppDirEnabled && isLoginPage) || isSamlCallback) {\n requestAuthorize(true);\n }\n }\n }\n }, [app, queryParams, pathArr, loginWithRedirect, logout]);\n return <></>;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"FronteggRouterBase.js","names":["_interopRequireDefault","require","Object","defineProperty","exports","value","FronteggRouterBase","_extends2","_config","_routing","_react","_interopRequireWildcard","_reactHooks","_constants","_AppContext","_jsxRuntime","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","props","queryParams","pathArr","isAppDirEnabled","app","useContext","AppContext","loginWithRedirect","useLoginWithRedirect","requestAuthorize","logout","useLoginActions","useEffect","pathname","join","routesObj","defaultFronteggRoutes","config","authRoutes","options","hostedLoginBox","loginUrl","redirectUrl","localStorage","setItem","FRONTEGG_AFTER_AUTH_REDIRECT_URL","window","location","origin","logoutUrl","_routesObj$hostedLogi","startsWith","hostedLoginRedirectUrl","href","authenticatedUrl","isSamlCallback","samlCallbackUrl","isLoginPage","jsx","Fragment"],"sources":["../../../../packages/nextjs/src/common/FronteggRouterBase.tsx"],"sourcesContent":["'use client';\n\nimport config from '../config';\nimport { defaultFronteggRoutes } from '../utils/routing';\nimport { useContext, useEffect } from 'react';\nimport { useLoginActions, useLoginWithRedirect } from '@frontegg/react-hooks';\nimport { FRONTEGG_AFTER_AUTH_REDIRECT_URL } from '../utils/common/constants';\nimport AppContext from './AppContext';\nimport React from 'react';\nimport { ParsedUrlQuery } from 'querystring';\n\ninterface FronteggRouterBaseProps {\n queryParams?: ParsedUrlQuery;\n pathArr: string[];\n isAppDirEnabled?: boolean;\n}\n\nexport function FronteggRouterBase(props: FronteggRouterBaseProps) {\n const { queryParams = {}, pathArr, isAppDirEnabled } = props;\n const app = useContext(AppContext);\n const loginWithRedirect = useLoginWithRedirect();\n const { requestAuthorize, logout } = useLoginActions();\n\n useEffect(() => {\n if (!app) {\n return;\n }\n\n const pathname = `/${pathArr.join('/')}`;\n const routesObj = {\n ...defaultFronteggRoutes,\n ...config.authRoutes,\n };\n\n if (app.options.hostedLoginBox) {\n if (pathname === routesObj.loginUrl) {\n if (queryParams.redirectUrl) {\n localStorage.setItem(FRONTEGG_AFTER_AUTH_REDIRECT_URL, `${window.location.origin}${queryParams.redirectUrl}`);\n }\n loginWithRedirect();\n } else if (pathname === routesObj.logoutUrl) {\n logout();\n }\n } else {\n if (pathname.startsWith(routesObj.hostedLoginRedirectUrl ?? '/oauth/callback')) {\n // if not hosted login, redirect the user to the authenticated url\n window.location.href = routesObj.authenticatedUrl;\n } else {\n const isSamlCallback = pathname === routesObj.samlCallbackUrl;\n const isLoginPage = pathname.startsWith(routesObj.loginUrl);\n if ((isAppDirEnabled && isLoginPage) || isSamlCallback) {\n requestAuthorize(true);\n }\n }\n }\n }, [app, queryParams, pathArr, loginWithRedirect, logout]);\n return <></>;\n}\n"],"mappings":";AAAA,YAAY;;AAAC,IAAAA,sBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,cAAA,CAAAC,OAAA;EAAAC,KAAA;AAAA;AAAAD,OAAA,CAAAE,kBAAA,GAAAA,kBAAA;AAAA,IAAAC,SAAA,GAAAP,sBAAA,CAAAC,OAAA;AAEb,IAAAO,OAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,QAAA,GAAAR,OAAA;AACA,IAAAS,MAAA,GAAAC,uBAAA,CAAAV,OAAA;AACA,IAAAW,WAAA,GAAAX,OAAA;AACA,IAAAY,UAAA,GAAAZ,OAAA;AACA,IAAAa,WAAA,GAAAd,sBAAA,CAAAC,OAAA;AAAsC,IAAAc,WAAA,GAAAd,OAAA;AAAA,SAAAe,yBAAAC,WAAA,eAAAC,OAAA,kCAAAC,iBAAA,OAAAD,OAAA,QAAAE,gBAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,WAAA,WAAAA,WAAA,GAAAG,gBAAA,GAAAD,iBAAA,KAAAF,WAAA;AAAA,SAAAN,wBAAAU,GAAA,EAAAJ,WAAA,SAAAA,WAAA,IAAAI,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,QAAAA,GAAA,oBAAAA,GAAA,wBAAAA,GAAA,4BAAAE,OAAA,EAAAF,GAAA,UAAAG,KAAA,GAAAR,wBAAA,CAAAC,WAAA,OAAAO,KAAA,IAAAA,KAAA,CAAAC,GAAA,CAAAJ,GAAA,YAAAG,KAAA,CAAAE,GAAA,CAAAL,GAAA,SAAAM,MAAA,WAAAC,qBAAA,GAAA1B,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAA2B,wBAAA,WAAAC,GAAA,IAAAT,GAAA,QAAAS,GAAA,kBAAA5B,MAAA,CAAA6B,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAZ,GAAA,EAAAS,GAAA,SAAAI,IAAA,GAAAN,qBAAA,GAAA1B,MAAA,CAAA2B,wBAAA,CAAAR,GAAA,EAAAS,GAAA,cAAAI,IAAA,KAAAA,IAAA,CAAAR,GAAA,IAAAQ,IAAA,CAAAC,GAAA,KAAAjC,MAAA,CAAAC,cAAA,CAAAwB,MAAA,EAAAG,GAAA,EAAAI,IAAA,YAAAP,MAAA,CAAAG,GAAA,IAAAT,GAAA,CAAAS,GAAA,SAAAH,MAAA,CAAAJ,OAAA,GAAAF,GAAA,MAAAG,KAAA,IAAAA,KAAA,CAAAW,GAAA,CAAAd,GAAA,EAAAM,MAAA,YAAAA,MAAA;AAU/B,SAASrB,kBAAkBA,CAAC8B,KAA8B,EAAE;EACjE,MAAM;IAAEC,WAAW,GAAG,CAAC,CAAC;IAAEC,OAAO;IAAEC;EAAgB,CAAC,GAAGH,KAAK;EAC5D,MAAMI,GAAG,GAAG,IAAAC,iBAAU,EAACC,mBAAU,CAAC;EAClC,MAAMC,iBAAiB,GAAG,IAAAC,gCAAoB,GAAE;EAChD,MAAM;IAAEC,gBAAgB;IAAEC;EAAO,CAAC,GAAG,IAAAC,2BAAe,GAAE;EAEtD,IAAAC,gBAAS,EAAC,MAAM;IACd,IAAI,CAACR,GAAG,EAAE;MACR;IACF;IAEA,MAAMS,QAAQ,GAAI,IAAGX,OAAO,CAACY,IAAI,CAAC,GAAG,CAAE,EAAC;IACxC,MAAMC,SAAS,OAAA5C,SAAA,CAAAgB,OAAA,MACV6B,8BAAqB,EACrBC,eAAM,CAACC,UAAU,CACrB;IAED,IAAId,GAAG,CAACe,OAAO,CAACC,cAAc,EAAE;MAC9B,IAAIP,QAAQ,KAAKE,SAAS,CAACM,QAAQ,EAAE;QACnC,IAAIpB,WAAW,CAACqB,WAAW,EAAE;UAC3BC,YAAY,CAACC,OAAO,CAACC,2CAAgC,EAAG,GAAEC,MAAM,CAACC,QAAQ,CAACC,MAAO,GAAE3B,WAAW,CAACqB,WAAY,EAAC,CAAC;QAC/G;QACAf,iBAAiB,EAAE;MACrB,CAAC,MAAM,IAAIM,QAAQ,KAAKE,SAAS,CAACc,SAAS,EAAE;QAC3CnB,MAAM,EAAE;MACV;IACF,CAAC,MAAM;MAAA,IAAAoB,qBAAA;MACL,IAAIjB,QAAQ,CAACkB,UAAU,EAAAD,qBAAA,GAACf,SAAS,CAACiB,sBAAsB,YAAAF,qBAAA,GAAI,iBAAiB,CAAC,EAAE;QAC9E;QACAJ,MAAM,CAACC,QAAQ,CAACM,IAAI,GAAGlB,SAAS,CAACmB,gBAAgB;MACnD,CAAC,MAAM;QACL,MAAMC,cAAc,GAAGtB,QAAQ,KAAKE,SAAS,CAACqB,eAAe;QAC7D,MAAMC,WAAW,GAAGxB,QAAQ,CAACkB,UAAU,CAAChB,SAAS,CAACM,QAAQ,CAAC;QAC3D,IAAKlB,eAAe,IAAIkC,WAAW,IAAKF,cAAc,EAAE;UACtD1B,gBAAgB,CAAC,IAAI,CAAC;QACxB;MACF;IACF;EACF,CAAC,EAAE,CAACL,GAAG,EAAEH,WAAW,EAAEC,OAAO,EAAEK,iBAAiB,EAAEG,MAAM,CAAC,CAAC;EAC1D,oBAAO,IAAA/B,WAAA,CAAA2D,GAAA,EAAA3D,WAAA,CAAA4D,QAAA,KAAK;AACd"}
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.shouldByPassMiddleware = void 0;
8
8
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _consts = require("@frontegg/redux-store/auth/LoginState/consts");
10
+ var _routing = require("../utils/routing");
11
11
  const _excluded = ["authenticatedUrl"];
12
12
  const staticFilesRegex = new RegExp('^/(_next/static).*');
13
13
  const imageOptimizationRegex = new RegExp('^/(_next/image).*');
@@ -41,7 +41,7 @@ const shouldByPassMiddleware = (pathname, options) => {
41
41
  const isImageOptimization = imageOptimizationRegex.test(pathname);
42
42
  const isHeaderRequests = headerRequestsRegex.test(pathname);
43
43
  const isFronteggMiddleware = fronteggMiddlewareRegex.test(pathname);
44
- const authRoutes = (0, _objectWithoutPropertiesLoose2.default)(_consts.defaultFronteggRoutes, _excluded);
44
+ const authRoutes = (0, _objectWithoutPropertiesLoose2.default)(_routing.defaultFronteggRoutes, _excluded);
45
45
  const isFronteggRoutes = Object.values(authRoutes).find(path => pathname.startsWith(path)) != null;
46
46
  if (isStaticFiles) return _options.bypassStaticFiles;
47
47
  if (isImageOptimization) return _options.bypassImageOptimization;
@@ -1 +1 @@
1
- {"version":3,"file":"shouldBypassMiddleware.js","names":["_consts","require","_excluded","staticFilesRegex","RegExp","imageOptimizationRegex","headerRequestsRegex","fronteggMiddlewareRegex","shouldByPassMiddleware","pathname","options","_options","_extends2","default","bypassStaticFiles","bypassImageOptimization","bypassHeaderRequests","bypassFronteggMiddleware","bypassFronteggRoutes","bypassAuthSamlCallback","isStaticFiles","test","isImageOptimization","isHeaderRequests","isFronteggMiddleware","authRoutes","_objectWithoutPropertiesLoose2","defaultFronteggRoutes","isFronteggRoutes","Object","values","find","path","startsWith","exports"],"sources":["../../../../packages/nextjs/src/edge/shouldBypassMiddleware.ts"],"sourcesContent":["import { defaultFronteggRoutes } from '@frontegg/redux-store/auth/LoginState/consts';\n\nconst staticFilesRegex = new RegExp('^/(_next/static).*');\nconst imageOptimizationRegex = new RegExp('^/(_next/image).*');\nconst headerRequestsRegex = new RegExp('^/(favicon.ico).*');\nconst fronteggMiddlewareRegex = new RegExp('^/(api/frontegg).*');\n\ninterface ByPassOptions {\n bypassStaticFiles?: boolean; // default: true\n bypassImageOptimization?: boolean; // default: true\n bypassHeaderRequests?: boolean; // default: true\n}\n\n/**\n * Use `shouldByPassMiddleware` in the middleware.ts file\n * to protect all application's routes.\n * You can override whitelist by passing options parameter\n * NOTE: this will slow down your application due to session check on each\n * static files and image request\n *\n * The default whitelist:\n * - _next/static (static files)\n * - _next/image (image optimization files)\n * - favicon.ico (favicon file)\n * - api/frontegg (API frontegg middleware)\n * - account/[login|logout|saml/callback|...] (frontegg authentication routes)\n */\nexport const shouldByPassMiddleware = (pathname: string, options?: ByPassOptions): boolean => {\n const _options = {\n bypassStaticFiles: true,\n bypassImageOptimization: true,\n bypassHeaderRequests: true,\n ...options,\n bypassFronteggMiddleware: true,\n bypassFronteggRoutes: true,\n bypassAuthSamlCallback: true,\n };\n\n const isStaticFiles = staticFilesRegex.test(pathname);\n const isImageOptimization = imageOptimizationRegex.test(pathname);\n const isHeaderRequests = headerRequestsRegex.test(pathname);\n const isFronteggMiddleware = fronteggMiddlewareRegex.test(pathname);\n\n const { authenticatedUrl, ...authRoutes } = defaultFronteggRoutes;\n const isFronteggRoutes = Object.values(authRoutes).find((path) => pathname.startsWith(path)) != null;\n\n if (isStaticFiles) return _options.bypassStaticFiles;\n if (isImageOptimization) return _options.bypassImageOptimization;\n if (isHeaderRequests) return _options.bypassHeaderRequests;\n if (isFronteggMiddleware) return _options.bypassFronteggMiddleware;\n if (isFronteggRoutes) return _options.bypassFronteggRoutes;\n\n return false;\n};\n"],"mappings":";;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAAqF,MAAAC,SAAA;AAErF,MAAMC,gBAAgB,GAAG,IAAIC,MAAM,CAAC,oBAAoB,CAAC;AACzD,MAAMC,sBAAsB,GAAG,IAAID,MAAM,CAAC,mBAAmB,CAAC;AAC9D,MAAME,mBAAmB,GAAG,IAAIF,MAAM,CAAC,mBAAmB,CAAC;AAC3D,MAAMG,uBAAuB,GAAG,IAAIH,MAAM,CAAC,oBAAoB,CAAC;AAQhE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMI,sBAAsB,GAAGA,CAACC,QAAgB,EAAEC,OAAuB,KAAc;EAC5F,MAAMC,QAAQ,OAAAC,SAAA,CAAAC,OAAA;IACZC,iBAAiB,EAAE,IAAI;IACvBC,uBAAuB,EAAE,IAAI;IAC7BC,oBAAoB,EAAE;EAAI,GACvBN,OAAO;IACVO,wBAAwB,EAAE,IAAI;IAC9BC,oBAAoB,EAAE,IAAI;IAC1BC,sBAAsB,EAAE;EAAI,EAC7B;EAED,MAAMC,aAAa,GAAGjB,gBAAgB,CAACkB,IAAI,CAACZ,QAAQ,CAAC;EACrD,MAAMa,mBAAmB,GAAGjB,sBAAsB,CAACgB,IAAI,CAACZ,QAAQ,CAAC;EACjE,MAAMc,gBAAgB,GAAGjB,mBAAmB,CAACe,IAAI,CAACZ,QAAQ,CAAC;EAC3D,MAAMe,oBAAoB,GAAGjB,uBAAuB,CAACc,IAAI,CAACZ,QAAQ,CAAC;EAEnE,MAA6BgB,UAAU,OAAAC,8BAAA,CAAAb,OAAA,EAAKc,6BAAqB,EAAAzB,SAAA;EACjE,MAAM0B,gBAAgB,GAAGC,MAAM,CAACC,MAAM,CAACL,UAAU,CAAC,CAACM,IAAI,CAAEC,IAAI,IAAKvB,QAAQ,CAACwB,UAAU,CAACD,IAAI,CAAC,CAAC,IAAI,IAAI;EAEpG,IAAIZ,aAAa,EAAE,OAAOT,QAAQ,CAACG,iBAAiB;EACpD,IAAIQ,mBAAmB,EAAE,OAAOX,QAAQ,CAACI,uBAAuB;EAChE,IAAIQ,gBAAgB,EAAE,OAAOZ,QAAQ,CAACK,oBAAoB;EAC1D,IAAIQ,oBAAoB,EAAE,OAAOb,QAAQ,CAACM,wBAAwB;EAClE,IAAIW,gBAAgB,EAAE,OAAOjB,QAAQ,CAACO,oBAAoB;EAE1D,OAAO,KAAK;AACd,CAAC;AAACgB,OAAA,CAAA1B,sBAAA,GAAAA,sBAAA"}
1
+ {"version":3,"file":"shouldBypassMiddleware.js","names":["_routing","require","_excluded","staticFilesRegex","RegExp","imageOptimizationRegex","headerRequestsRegex","fronteggMiddlewareRegex","shouldByPassMiddleware","pathname","options","_options","_extends2","default","bypassStaticFiles","bypassImageOptimization","bypassHeaderRequests","bypassFronteggMiddleware","bypassFronteggRoutes","bypassAuthSamlCallback","isStaticFiles","test","isImageOptimization","isHeaderRequests","isFronteggMiddleware","authRoutes","_objectWithoutPropertiesLoose2","defaultFronteggRoutes","isFronteggRoutes","Object","values","find","path","startsWith","exports"],"sources":["../../../../packages/nextjs/src/edge/shouldBypassMiddleware.ts"],"sourcesContent":["import { defaultFronteggRoutes } from '../utils/routing';\n\nconst staticFilesRegex = new RegExp('^/(_next/static).*');\nconst imageOptimizationRegex = new RegExp('^/(_next/image).*');\nconst headerRequestsRegex = new RegExp('^/(favicon.ico).*');\nconst fronteggMiddlewareRegex = new RegExp('^/(api/frontegg).*');\n\ninterface ByPassOptions {\n bypassStaticFiles?: boolean; // default: true\n bypassImageOptimization?: boolean; // default: true\n bypassHeaderRequests?: boolean; // default: true\n}\n\n/**\n * Use `shouldByPassMiddleware` in the middleware.ts file\n * to protect all application's routes.\n * You can override whitelist by passing options parameter\n * NOTE: this will slow down your application due to session check on each\n * static files and image request\n *\n * The default whitelist:\n * - _next/static (static files)\n * - _next/image (image optimization files)\n * - favicon.ico (favicon file)\n * - api/frontegg (API frontegg middleware)\n * - account/[login|logout|saml/callback|...] (frontegg authentication routes)\n */\nexport const shouldByPassMiddleware = (pathname: string, options?: ByPassOptions): boolean => {\n const _options = {\n bypassStaticFiles: true,\n bypassImageOptimization: true,\n bypassHeaderRequests: true,\n ...options,\n bypassFronteggMiddleware: true,\n bypassFronteggRoutes: true,\n bypassAuthSamlCallback: true,\n };\n\n const isStaticFiles = staticFilesRegex.test(pathname);\n const isImageOptimization = imageOptimizationRegex.test(pathname);\n const isHeaderRequests = headerRequestsRegex.test(pathname);\n const isFronteggMiddleware = fronteggMiddlewareRegex.test(pathname);\n\n const { authenticatedUrl, ...authRoutes } = defaultFronteggRoutes;\n const isFronteggRoutes = Object.values(authRoutes).find((path) => pathname.startsWith(path)) != null;\n\n if (isStaticFiles) return _options.bypassStaticFiles;\n if (isImageOptimization) return _options.bypassImageOptimization;\n if (isHeaderRequests) return _options.bypassHeaderRequests;\n if (isFronteggMiddleware) return _options.bypassFronteggMiddleware;\n if (isFronteggRoutes) return _options.bypassFronteggRoutes;\n\n return false;\n};\n"],"mappings":";;;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAAyD,MAAAC,SAAA;AAEzD,MAAMC,gBAAgB,GAAG,IAAIC,MAAM,CAAC,oBAAoB,CAAC;AACzD,MAAMC,sBAAsB,GAAG,IAAID,MAAM,CAAC,mBAAmB,CAAC;AAC9D,MAAME,mBAAmB,GAAG,IAAIF,MAAM,CAAC,mBAAmB,CAAC;AAC3D,MAAMG,uBAAuB,GAAG,IAAIH,MAAM,CAAC,oBAAoB,CAAC;AAQhE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMI,sBAAsB,GAAGA,CAACC,QAAgB,EAAEC,OAAuB,KAAc;EAC5F,MAAMC,QAAQ,OAAAC,SAAA,CAAAC,OAAA;IACZC,iBAAiB,EAAE,IAAI;IACvBC,uBAAuB,EAAE,IAAI;IAC7BC,oBAAoB,EAAE;EAAI,GACvBN,OAAO;IACVO,wBAAwB,EAAE,IAAI;IAC9BC,oBAAoB,EAAE,IAAI;IAC1BC,sBAAsB,EAAE;EAAI,EAC7B;EAED,MAAMC,aAAa,GAAGjB,gBAAgB,CAACkB,IAAI,CAACZ,QAAQ,CAAC;EACrD,MAAMa,mBAAmB,GAAGjB,sBAAsB,CAACgB,IAAI,CAACZ,QAAQ,CAAC;EACjE,MAAMc,gBAAgB,GAAGjB,mBAAmB,CAACe,IAAI,CAACZ,QAAQ,CAAC;EAC3D,MAAMe,oBAAoB,GAAGjB,uBAAuB,CAACc,IAAI,CAACZ,QAAQ,CAAC;EAEnE,MAA6BgB,UAAU,OAAAC,8BAAA,CAAAb,OAAA,EAAKc,8BAAqB,EAAAzB,SAAA;EACjE,MAAM0B,gBAAgB,GAAGC,MAAM,CAACC,MAAM,CAACL,UAAU,CAAC,CAACM,IAAI,CAAEC,IAAI,IAAKvB,QAAQ,CAACwB,UAAU,CAACD,IAAI,CAAC,CAAC,IAAI,IAAI;EAEpG,IAAIZ,aAAa,EAAE,OAAOT,QAAQ,CAACG,iBAAiB;EACpD,IAAIQ,mBAAmB,EAAE,OAAOX,QAAQ,CAACI,uBAAuB;EAChE,IAAIQ,gBAAgB,EAAE,OAAOZ,QAAQ,CAACK,oBAAoB;EAC1D,IAAIQ,oBAAoB,EAAE,OAAOb,QAAQ,CAACM,wBAAwB;EAClE,IAAIW,gBAAgB,EAAE,OAAOjB,QAAQ,CAACO,oBAAoB;EAE1D,OAAO,KAAK;AACd,CAAC;AAACgB,OAAA,CAAA1B,sBAAA,GAAAA,sBAAA"}
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license Frontegg v8.0.26
1
+ /** @license Frontegg v8.0.27-alpha.10042638343
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.rewritePath = exports.removeJwtSignatureFrom = exports.isFronteggOauthLogoutUrl = exports.isFronteggLogoutUrl = exports.getHostedLogoutUrl = exports.extractAccessToken = void 0;
8
8
  var _urls = require("../api/urls");
9
9
  var _config = _interopRequireDefault(require("../config"));
10
- var _reduxStore = require("@frontegg/redux-store");
10
+ var _routing = require("../utils/routing");
11
11
  /**
12
12
  * If pattern information matching the input url information is found in the `pathRewrite` array,
13
13
  * the url value is partially replaced with the `pathRewrite.replaceStr` value.
@@ -59,7 +59,7 @@ const isFronteggOauthLogoutUrl = url => url.endsWith('/oauth/logout');
59
59
  exports.isFronteggOauthLogoutUrl = isFronteggOauthLogoutUrl;
60
60
  const getHostedLogoutUrl = (referer = _config.default.appUrl) => {
61
61
  var _config$authRoutes$lo, _config$authRoutes;
62
- const logoutPath = (_config$authRoutes$lo = (_config$authRoutes = _config.default.authRoutes) == null ? void 0 : _config$authRoutes.logoutUrl) != null ? _config$authRoutes$lo : _reduxStore.authInitialState.routes.logoutUrl;
62
+ const logoutPath = (_config$authRoutes$lo = (_config$authRoutes = _config.default.authRoutes) == null ? void 0 : _config$authRoutes.logoutUrl) != null ? _config$authRoutes$lo : _routing.defaultFronteggRoutes.logoutUrl;
63
63
  const refererUrl = new URL(referer);
64
64
  const isLogoutRoute = refererUrl.toString().includes(logoutPath);
65
65
  const redirectUrl = isLogoutRoute ? refererUrl.origin + refererUrl.search : refererUrl.toString();
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["_urls","require","_config","_interopRequireDefault","_reduxStore","rewritePath","url","pathRewrite","Array","isArray","item","patternStr","replaceStr","pattern","RegExp","test","replace","path","exports","isFronteggLogoutUrl","endsWith","isFronteggOauthLogoutUrl","getHostedLogoutUrl","referer","config","appUrl","_config$authRoutes$lo","_config$authRoutes","logoutPath","authRoutes","logoutUrl","authInitialState","routes","refererUrl","URL","isLogoutRoute","toString","includes","redirectUrl","origin","search","buildLogoutRoute","baseUrl","extractAccessToken","bodyStr","body","JSON","parse","authResponse","Object","assign","accessToken","access_token","refreshToken","refresh_token","jwtKeys","refreshTokenKeys","removeJwtSignatureFrom","forEach","key","split"],"sources":["../../../../packages/nextjs/src/middleware/helpers.ts"],"sourcesContent":["import { BuildRouteResult, buildLogoutRoute } from '../api/urls';\nimport config from '../config';\nimport { authInitialState } from '@frontegg/redux-store';\n\n/**\n * If pattern information matching the input url information is found in the `pathRewrite` array,\n * the url value is partially replaced with the `pathRewrite.replaceStr` value.\n * @param url\n * @param pathRewrite\n */\nexport const rewritePath = (\n url: string,\n pathRewrite: { [key: string]: string } | { patternStr: string; replaceStr: string }[]\n) => {\n if (Array.isArray(pathRewrite)) {\n for (const item of pathRewrite) {\n const { patternStr, replaceStr } = item;\n const pattern = RegExp(patternStr);\n if (pattern.test(url as string)) {\n return url.replace(pattern, replaceStr);\n }\n }\n } else {\n for (const patternStr in pathRewrite) {\n const pattern = RegExp(patternStr);\n const path = pathRewrite[patternStr];\n if (pattern.test(url as string)) {\n return url.replace(pattern, path);\n }\n }\n }\n return url;\n};\n\n/**\n * Checks If route is a logout route\n * @param url\n */\nexport const isFronteggLogoutUrl = (url: string) => url.endsWith('/logout');\n\n/**\n * Checks If route is a hosted logout route\n * @param url\n */\nexport const isFronteggOauthLogoutUrl = (url: string) => url.endsWith('/oauth/logout');\n\n/**\n * Returns url to be redirected for hosted logout\n * @param referer the route to redirect to after logout\n */\nexport const getHostedLogoutUrl = (referer = config.appUrl): BuildRouteResult => {\n const logoutPath = config.authRoutes?.logoutUrl ?? authInitialState.routes.logoutUrl;\n const refererUrl = new URL(referer);\n const isLogoutRoute = refererUrl.toString().includes(logoutPath);\n\n const redirectUrl = isLogoutRoute ? refererUrl.origin + refererUrl.search : refererUrl.toString();\n\n return buildLogoutRoute(redirectUrl, config.baseUrl);\n};\n\nexport type Tokens = {\n accessToken: string;\n refreshToken: string;\n};\n\n/**\n * Extracts the access token from the response body\n * @param bodyStr\n */\nexport const extractAccessToken = (bodyStr: string): Tokens => {\n const body = JSON.parse(bodyStr);\n\n if (body.authResponse) {\n Object.assign(body, body.authResponse);\n }\n return {\n accessToken: body.accessToken || body.access_token,\n refreshToken: body.refreshToken || body.refresh_token,\n };\n};\n\nconst jwtKeys = ['accessToken', 'access_token', 'idToken', 'id_token'];\nconst refreshTokenKeys = ['refreshToken', 'refresh_token'];\n/**\n * Removes the signature from the JWT token\n * @param body\n */\nexport const removeJwtSignatureFrom = <T extends any>(body: any): T => {\n if (!body) {\n return body;\n }\n\n if (body.authResponse) {\n jwtKeys.forEach((key) => {\n if (body.authResponse[key]) {\n // body.authResponse[key] = \"REDACTED_FOR_SECURITY\";\n // body.authResponse[key] = body.authResponse[key].split('.')[0] + '.' + body.authResponse[key].split('.')[1];\n body.authResponse[key] = `REDACTED_FOR_SECURITY.${body.authResponse[key].split('.')[1]}.REDACTED_FOR_SECURITY`;\n }\n });\n refreshTokenKeys.forEach((key) => {\n if (body.authResponse[key]) {\n delete body.authResponse[key];\n }\n });\n }\n\n jwtKeys.forEach((key) => {\n if (body[key]) {\n // body[key] = \"REDACTED_FOR_SECURITY\";\n // body[key] = body[key].split('.')[0] + '.' + body[key].split('.')[1];\n body[key] = `REDACTED_FOR_SECURITY.${body[key].split('.')[1]}.REDACTED_FOR_SECURITY`;\n }\n });\n refreshTokenKeys.forEach((key) => {\n if (body[key]) {\n delete body[key];\n }\n });\n return body;\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMI,WAAW,GAAGA,CACzBC,GAAW,EACXC,WAAqF,KAClF;EACH,IAAIC,KAAK,CAACC,OAAO,CAACF,WAAW,CAAC,EAAE;IAC9B,KAAK,MAAMG,IAAI,IAAIH,WAAW,EAAE;MAC9B,MAAM;QAAEI,UAAU;QAAEC;MAAW,CAAC,GAAGF,IAAI;MACvC,MAAMG,OAAO,GAAGC,MAAM,CAACH,UAAU,CAAC;MAClC,IAAIE,OAAO,CAACE,IAAI,CAACT,GAAG,CAAW,EAAE;QAC/B,OAAOA,GAAG,CAACU,OAAO,CAACH,OAAO,EAAED,UAAU,CAAC;MACzC;IACF;EACF,CAAC,MAAM;IACL,KAAK,MAAMD,UAAU,IAAIJ,WAAW,EAAE;MACpC,MAAMM,OAAO,GAAGC,MAAM,CAACH,UAAU,CAAC;MAClC,MAAMM,IAAI,GAAGV,WAAW,CAACI,UAAU,CAAC;MACpC,IAAIE,OAAO,CAACE,IAAI,CAACT,GAAG,CAAW,EAAE;QAC/B,OAAOA,GAAG,CAACU,OAAO,CAACH,OAAO,EAAEI,IAAI,CAAC;MACnC;IACF;EACF;EACA,OAAOX,GAAG;AACZ,CAAC;;AAED;AACA;AACA;AACA;AAHAY,OAAA,CAAAb,WAAA,GAAAA,WAAA;AAIO,MAAMc,mBAAmB,GAAIb,GAAW,IAAKA,GAAG,CAACc,QAAQ,CAAC,SAAS,CAAC;;AAE3E;AACA;AACA;AACA;AAHAF,OAAA,CAAAC,mBAAA,GAAAA,mBAAA;AAIO,MAAME,wBAAwB,GAAIf,GAAW,IAAKA,GAAG,CAACc,QAAQ,CAAC,eAAe,CAAC;;AAEtF;AACA;AACA;AACA;AAHAF,OAAA,CAAAG,wBAAA,GAAAA,wBAAA;AAIO,MAAMC,kBAAkB,GAAGA,CAACC,OAAO,GAAGC,eAAM,CAACC,MAAM,KAAuB;EAAA,IAAAC,qBAAA,EAAAC,kBAAA;EAC/E,MAAMC,UAAU,IAAAF,qBAAA,IAAAC,kBAAA,GAAGH,eAAM,CAACK,UAAU,qBAAjBF,kBAAA,CAAmBG,SAAS,YAAAJ,qBAAA,GAAIK,4BAAgB,CAACC,MAAM,CAACF,SAAS;EACpF,MAAMG,UAAU,GAAG,IAAIC,GAAG,CAACX,OAAO,CAAC;EACnC,MAAMY,aAAa,GAAGF,UAAU,CAACG,QAAQ,EAAE,CAACC,QAAQ,CAACT,UAAU,CAAC;EAEhE,MAAMU,WAAW,GAAGH,aAAa,GAAGF,UAAU,CAACM,MAAM,GAAGN,UAAU,CAACO,MAAM,GAAGP,UAAU,CAACG,QAAQ,EAAE;EAEjG,OAAO,IAAAK,sBAAgB,EAACH,WAAW,EAAEd,eAAM,CAACkB,OAAO,CAAC;AACtD,CAAC;AAACxB,OAAA,CAAAI,kBAAA,GAAAA,kBAAA;AAOF;AACA;AACA;AACA;AACO,MAAMqB,kBAAkB,GAAIC,OAAe,IAAa;EAC7D,MAAMC,IAAI,GAAGC,IAAI,CAACC,KAAK,CAACH,OAAO,CAAC;EAEhC,IAAIC,IAAI,CAACG,YAAY,EAAE;IACrBC,MAAM,CAACC,MAAM,CAACL,IAAI,EAAEA,IAAI,CAACG,YAAY,CAAC;EACxC;EACA,OAAO;IACLG,WAAW,EAAEN,IAAI,CAACM,WAAW,IAAIN,IAAI,CAACO,YAAY;IAClDC,YAAY,EAAER,IAAI,CAACQ,YAAY,IAAIR,IAAI,CAACS;EAC1C,CAAC;AACH,CAAC;AAACpC,OAAA,CAAAyB,kBAAA,GAAAA,kBAAA;AAEF,MAAMY,OAAO,GAAG,CAAC,aAAa,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,CAAC;AACtE,MAAMC,gBAAgB,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC;AAC1D;AACA;AACA;AACA;AACO,MAAMC,sBAAsB,GAAmBZ,IAAS,IAAQ;EACrE,IAAI,CAACA,IAAI,EAAE;IACT,OAAOA,IAAI;EACb;EAEA,IAAIA,IAAI,CAACG,YAAY,EAAE;IACrBO,OAAO,CAACG,OAAO,CAAEC,GAAG,IAAK;MACvB,IAAId,IAAI,CAACG,YAAY,CAACW,GAAG,CAAC,EAAE;QAC1B;QACA;QACAd,IAAI,CAACG,YAAY,CAACW,GAAG,CAAC,GAAI,yBAAwBd,IAAI,CAACG,YAAY,CAACW,GAAG,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,wBAAuB;MAChH;IACF,CAAC,CAAC;IACFJ,gBAAgB,CAACE,OAAO,CAAEC,GAAG,IAAK;MAChC,IAAId,IAAI,CAACG,YAAY,CAACW,GAAG,CAAC,EAAE;QAC1B,OAAOd,IAAI,CAACG,YAAY,CAACW,GAAG,CAAC;MAC/B;IACF,CAAC,CAAC;EACJ;EAEAJ,OAAO,CAACG,OAAO,CAAEC,GAAG,IAAK;IACvB,IAAId,IAAI,CAACc,GAAG,CAAC,EAAE;MACb;MACA;MACAd,IAAI,CAACc,GAAG,CAAC,GAAI,yBAAwBd,IAAI,CAACc,GAAG,CAAC,CAACC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,wBAAuB;IACtF;EACF,CAAC,CAAC;EACFJ,gBAAgB,CAACE,OAAO,CAAEC,GAAG,IAAK;IAChC,IAAId,IAAI,CAACc,GAAG,CAAC,EAAE;MACb,OAAOd,IAAI,CAACc,GAAG,CAAC;IAClB;EACF,CAAC,CAAC;EACF,OAAOd,IAAI;AACb,CAAC;AAAC3B,OAAA,CAAAuC,sBAAA,GAAAA,sBAAA"}
1
+ {"version":3,"file":"helpers.js","names":["_urls","require","_config","_interopRequireDefault","_routing","rewritePath","url","pathRewrite","Array","isArray","item","patternStr","replaceStr","pattern","RegExp","test","replace","path","exports","isFronteggLogoutUrl","endsWith","isFronteggOauthLogoutUrl","getHostedLogoutUrl","referer","config","appUrl","_config$authRoutes$lo","_config$authRoutes","logoutPath","authRoutes","logoutUrl","defaultFronteggRoutes","refererUrl","URL","isLogoutRoute","toString","includes","redirectUrl","origin","search","buildLogoutRoute","baseUrl","extractAccessToken","bodyStr","body","JSON","parse","authResponse","Object","assign","accessToken","access_token","refreshToken","refresh_token","jwtKeys","refreshTokenKeys","removeJwtSignatureFrom","forEach","key","split"],"sources":["../../../../packages/nextjs/src/middleware/helpers.ts"],"sourcesContent":["import { BuildRouteResult, buildLogoutRoute } from '../api/urls';\nimport config from '../config';\nimport { defaultFronteggRoutes } from '../utils/routing';\n\n/**\n * If pattern information matching the input url information is found in the `pathRewrite` array,\n * the url value is partially replaced with the `pathRewrite.replaceStr` value.\n * @param url\n * @param pathRewrite\n */\nexport const rewritePath = (\n url: string,\n pathRewrite: { [key: string]: string } | { patternStr: string; replaceStr: string }[]\n) => {\n if (Array.isArray(pathRewrite)) {\n for (const item of pathRewrite) {\n const { patternStr, replaceStr } = item;\n const pattern = RegExp(patternStr);\n if (pattern.test(url as string)) {\n return url.replace(pattern, replaceStr);\n }\n }\n } else {\n for (const patternStr in pathRewrite) {\n const pattern = RegExp(patternStr);\n const path = pathRewrite[patternStr];\n if (pattern.test(url as string)) {\n return url.replace(pattern, path);\n }\n }\n }\n return url;\n};\n\n/**\n * Checks If route is a logout route\n * @param url\n */\nexport const isFronteggLogoutUrl = (url: string) => url.endsWith('/logout');\n\n/**\n * Checks If route is a hosted logout route\n * @param url\n */\nexport const isFronteggOauthLogoutUrl = (url: string) => url.endsWith('/oauth/logout');\n\n/**\n * Returns url to be redirected for hosted logout\n * @param referer the route to redirect to after logout\n */\nexport const getHostedLogoutUrl = (referer = config.appUrl): BuildRouteResult => {\n const logoutPath = config.authRoutes?.logoutUrl ?? defaultFronteggRoutes.logoutUrl;\n const refererUrl = new URL(referer);\n const isLogoutRoute = refererUrl.toString().includes(logoutPath);\n\n const redirectUrl = isLogoutRoute ? refererUrl.origin + refererUrl.search : refererUrl.toString();\n\n return buildLogoutRoute(redirectUrl, config.baseUrl);\n};\n\nexport type Tokens = {\n accessToken: string;\n refreshToken: string;\n};\n\n/**\n * Extracts the access token from the response body\n * @param bodyStr\n */\nexport const extractAccessToken = (bodyStr: string): Tokens => {\n const body = JSON.parse(bodyStr);\n\n if (body.authResponse) {\n Object.assign(body, body.authResponse);\n }\n return {\n accessToken: body.accessToken || body.access_token,\n refreshToken: body.refreshToken || body.refresh_token,\n };\n};\n\nconst jwtKeys = ['accessToken', 'access_token', 'idToken', 'id_token'];\nconst refreshTokenKeys = ['refreshToken', 'refresh_token'];\n/**\n * Removes the signature from the JWT token\n * @param body\n */\nexport const removeJwtSignatureFrom = <T extends any>(body: any): T => {\n if (!body) {\n return body;\n }\n\n if (body.authResponse) {\n jwtKeys.forEach((key) => {\n if (body.authResponse[key]) {\n // body.authResponse[key] = \"REDACTED_FOR_SECURITY\";\n // body.authResponse[key] = body.authResponse[key].split('.')[0] + '.' + body.authResponse[key].split('.')[1];\n body.authResponse[key] = `REDACTED_FOR_SECURITY.${body.authResponse[key].split('.')[1]}.REDACTED_FOR_SECURITY`;\n }\n });\n refreshTokenKeys.forEach((key) => {\n if (body.authResponse[key]) {\n delete body.authResponse[key];\n }\n });\n }\n\n jwtKeys.forEach((key) => {\n if (body[key]) {\n // body[key] = \"REDACTED_FOR_SECURITY\";\n // body[key] = body[key].split('.')[0] + '.' + body[key].split('.')[1];\n body[key] = `REDACTED_FOR_SECURITY.${body[key].split('.')[1]}.REDACTED_FOR_SECURITY`;\n }\n });\n refreshTokenKeys.forEach((key) => {\n if (body[key]) {\n delete body[key];\n }\n });\n return body;\n};\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@frontegg/nextjs",
3
3
  "libName": "FronteggNextJs",
4
- "version": "8.0.26",
4
+ "version": "8.0.27-alpha.10042638343",
5
5
  "author": "Frontegg LTD",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -27,8 +27,8 @@
27
27
  "lint-json": "eslint -c .eslintrc.json -o ./lint-report.json --format json --no-color ./src/**/*.{ts,tsx}"
28
28
  },
29
29
  "dependencies": {
30
- "@frontegg/js": "6.206.0",
31
- "@frontegg/react-hooks": "6.206.0",
30
+ "@frontegg/js": "7.0.0-alpha.9",
31
+ "@frontegg/react-hooks": "7.0.0-alpha.9",
32
32
  "http-proxy": "^1.18.1",
33
33
  "iron-session": "^6.3.1",
34
34
  "jose": "^4.12.2"
@@ -16,15 +16,16 @@ var _jsxRuntime = require("react/jsx-runtime");
16
16
  const _excluded = ["frontegg-router"];
17
17
  function FronteggRouter() {
18
18
  const {
19
- query
19
+ query,
20
+ route
20
21
  } = (0, _router.useRouter)();
21
22
  const _ref = query,
22
23
  {
23
- 'frontegg-router': pathArr
24
+ 'frontegg-router': pathArr = []
24
25
  } = _ref,
25
26
  queryParams = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded);
26
27
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_FronteggRouterBase.FronteggRouterBase, {
27
- pathArr: pathArr,
28
+ pathArr: pathArr != null ? pathArr : [route.substring(1)],
28
29
  queryParams: queryParams
29
30
  });
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FronteggRouter.js","names":["_react","_interopRequireDefault","require","_url","_router","_routing","_FronteggRouterBase","_jsxRuntime","_excluded","FronteggRouter","query","useRouter","_ref","pathArr","queryParams","_objectWithoutPropertiesLoose2","default","jsx","FronteggRouterBase","FronteggRouterProps","context","_context$resolvedUrl","pathname","URL","parse","resolvedUrl","req","url","startsWith","Object","keys","Array","isArray","join","notFound","isAuthRoute","props"],"sources":["../../../../../packages/nextjs/src/pages/FronteggRouter/FronteggRouter.tsx"],"sourcesContent":["import React from 'react';\nimport URL from 'url';\nimport { useRouter } from 'next/router';\nimport { isAuthRoute } from '../../utils/routing';\nimport { FronteggRouterBase } from '../../common/FronteggRouterBase';\n\nexport function FronteggRouter() {\n const { query } = useRouter();\n const { 'frontegg-router': pathArr, ...queryParams } = query as any;\n\n return <FronteggRouterBase pathArr={pathArr} queryParams={queryParams} />;\n}\n\nexport function FronteggRouterProps(context: any) {\n let { pathname } = URL.parse(context.resolvedUrl ?? context.req.url, true);\n if (!pathname || pathname.startsWith('/_next/data')) {\n const query = context.req.query[Object.keys(context.req.query)[0]];\n pathname = `/${Array.isArray(query) ? query.join('/') : query}`;\n }\n\n const notFound = !isAuthRoute(pathname);\n\n return {\n notFound,\n props: {},\n };\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AAAqE,IAAAK,WAAA,GAAAL,OAAA;AAAA,MAAAM,SAAA;AAE9D,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC;EAAM,CAAC,GAAG,IAAAC,iBAAS,GAAE;EAC7B,MAAAC,IAAA,GAAuDF,KAAK;IAAtD;MAAE,iBAAiB,EAAEG;IAAwB,CAAC,GAAAD,IAAA;IAAbE,WAAW,OAAAC,8BAAA,CAAAC,OAAA,EAAAJ,IAAA,EAAAJ,SAAA;EAElD,oBAAO,IAAAD,WAAA,CAAAU,GAAA,EAACX,mBAAA,CAAAY,kBAAkB;IAACL,OAAO,EAAEA,OAAQ;IAACC,WAAW,EAAEA;EAAY,EAAG;AAC3E;AAEO,SAASK,mBAAmBA,CAACC,OAAY,EAAE;EAAA,IAAAC,oBAAA;EAChD,IAAI;IAAEC;EAAS,CAAC,GAAGC,YAAG,CAACC,KAAK,EAAAH,oBAAA,GAACD,OAAO,CAACK,WAAW,YAAAJ,oBAAA,GAAID,OAAO,CAACM,GAAG,CAACC,GAAG,EAAE,IAAI,CAAC;EAC1E,IAAI,CAACL,QAAQ,IAAIA,QAAQ,CAACM,UAAU,CAAC,aAAa,CAAC,EAAE;IACnD,MAAMlB,KAAK,GAAGU,OAAO,CAACM,GAAG,CAAChB,KAAK,CAACmB,MAAM,CAACC,IAAI,CAACV,OAAO,CAACM,GAAG,CAAChB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClEY,QAAQ,GAAI,IAAGS,KAAK,CAACC,OAAO,CAACtB,KAAK,CAAC,GAAGA,KAAK,CAACuB,IAAI,CAAC,GAAG,CAAC,GAAGvB,KAAM,EAAC;EACjE;EAEA,MAAMwB,QAAQ,GAAG,CAAC,IAAAC,oBAAW,EAACb,QAAQ,CAAC;EAEvC,OAAO;IACLY,QAAQ;IACRE,KAAK,EAAE,CAAC;EACV,CAAC;AACH"}
1
+ {"version":3,"file":"FronteggRouter.js","names":["_react","_interopRequireDefault","require","_url","_router","_routing","_FronteggRouterBase","_jsxRuntime","_excluded","FronteggRouter","query","route","useRouter","_ref","pathArr","queryParams","_objectWithoutPropertiesLoose2","default","jsx","FronteggRouterBase","substring","FronteggRouterProps","context","_context$resolvedUrl","pathname","URL","parse","resolvedUrl","req","url","startsWith","Object","keys","Array","isArray","join","notFound","isAuthRoute","props"],"sources":["../../../../../packages/nextjs/src/pages/FronteggRouter/FronteggRouter.tsx"],"sourcesContent":["import React from 'react';\nimport URL from 'url';\nimport { useRouter } from 'next/router';\nimport { isAuthRoute } from '../../utils/routing';\nimport { FronteggRouterBase } from '../../common/FronteggRouterBase';\n\nexport function FronteggRouter() {\n const { query, route } = useRouter();\n const { 'frontegg-router': pathArr = [], ...queryParams } = query as any;\n\n return <FronteggRouterBase pathArr={pathArr ?? [route.substring(1)]} queryParams={queryParams} />;\n}\n\nexport function FronteggRouterProps(context: any) {\n let { pathname } = URL.parse(context.resolvedUrl ?? context.req.url, true);\n if (!pathname || pathname.startsWith('/_next/data')) {\n const query = context.req.query[Object.keys(context.req.query)[0]];\n pathname = `/${Array.isArray(query) ? query.join('/') : query}`;\n }\n\n const notFound = !isAuthRoute(pathname);\n\n return {\n notFound,\n props: {},\n };\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AACA,IAAAI,mBAAA,GAAAJ,OAAA;AAAqE,IAAAK,WAAA,GAAAL,OAAA;AAAA,MAAAM,SAAA;AAE9D,SAASC,cAAcA,CAAA,EAAG;EAC/B,MAAM;IAAEC,KAAK;IAAEC;EAAM,CAAC,GAAG,IAAAC,iBAAS,GAAE;EACpC,MAAAC,IAAA,GAA4DH,KAAK;IAA3D;MAAE,iBAAiB,EAAEI,OAAO,GAAG;IAAmB,CAAC,GAAAD,IAAA;IAAbE,WAAW,OAAAC,8BAAA,CAAAC,OAAA,EAAAJ,IAAA,EAAAL,SAAA;EAEvD,oBAAO,IAAAD,WAAA,CAAAW,GAAA,EAACZ,mBAAA,CAAAa,kBAAkB;IAACL,OAAO,EAAEA,OAAO,WAAPA,OAAO,GAAI,CAACH,KAAK,CAACS,SAAS,CAAC,CAAC,CAAC,CAAE;IAACL,WAAW,EAAEA;EAAY,EAAG;AACnG;AAEO,SAASM,mBAAmBA,CAACC,OAAY,EAAE;EAAA,IAAAC,oBAAA;EAChD,IAAI;IAAEC;EAAS,CAAC,GAAGC,YAAG,CAACC,KAAK,EAAAH,oBAAA,GAACD,OAAO,CAACK,WAAW,YAAAJ,oBAAA,GAAID,OAAO,CAACM,GAAG,CAACC,GAAG,EAAE,IAAI,CAAC;EAC1E,IAAI,CAACL,QAAQ,IAAIA,QAAQ,CAACM,UAAU,CAAC,aAAa,CAAC,EAAE;IACnD,MAAMpB,KAAK,GAAGY,OAAO,CAACM,GAAG,CAAClB,KAAK,CAACqB,MAAM,CAACC,IAAI,CAACV,OAAO,CAACM,GAAG,CAAClB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClEc,QAAQ,GAAI,IAAGS,KAAK,CAACC,OAAO,CAACxB,KAAK,CAAC,GAAGA,KAAK,CAACyB,IAAI,CAAC,GAAG,CAAC,GAAGzB,KAAM,EAAC;EACjE;EAEA,MAAM0B,QAAQ,GAAG,CAAC,IAAAC,oBAAW,EAACb,QAAQ,CAAC;EAEvC,OAAO;IACLY,QAAQ;IACRE,KAAK,EAAE,CAAC;EACV,CAAC;AACH"}
package/pages/helpers.js CHANGED
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.getSession = void 0;
8
8
  exports.withSSRSession = withSSRSession;
9
- var _reduxStore = require("@frontegg/redux-store");
9
+ var _routing = require("../utils/routing");
10
10
  var _config = _interopRequireDefault(require("../config"));
11
11
  var _cookies = _interopRequireDefault(require("../utils/cookies"));
12
12
  var _createSession = _interopRequireDefault(require("../utils/createSession"));
@@ -23,7 +23,7 @@ function withSSRSession(handler) {
23
23
  return handler(context, session);
24
24
  } else {
25
25
  var _config$authRoutes$lo, _context$resolvedUrl;
26
- let loginUrl = (_config$authRoutes$lo = _config.default.authRoutes.loginUrl) != null ? _config$authRoutes$lo : _reduxStore.authInitialState.routes.loginUrl;
26
+ let loginUrl = (_config$authRoutes$lo = _config.default.authRoutes.loginUrl) != null ? _config$authRoutes$lo : _routing.defaultFronteggRoutes.logoutUrl;
27
27
  if (!loginUrl.startsWith('/')) {
28
28
  loginUrl = `/${loginUrl}`;
29
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","names":["_reduxStore","require","_config","_interopRequireDefault","_cookies","_createSession","_encryption","getSession","req","cookies","CookieManager","getSessionCookieFromRequest","createSession","encryption","exports","withSSRSession","handler","context","session","_config$authRoutes$lo","_context$resolvedUrl","loginUrl","config","authRoutes","authInitialState","routes","startsWith","fullUrl","URL","appUrl","resolvedUrl","urlSearchParams","searchParams","set","url","redirect","permanent","destination","toString","props"],"sources":["../../../../packages/nextjs/src/pages/helpers.ts"],"sourcesContent":["import { authInitialState } from '@frontegg/redux-store';\nimport type { GetServerSidePropsContext, GetServerSidePropsResult } from 'next';\nimport type { ParsedUrlQuery } from 'querystring';\nimport type { FronteggNextJSSession, RequestType } from '../types';\nimport config from '../config';\nimport CookieManager from '../utils/cookies';\nimport createSession from '../utils/createSession';\nimport encryption from '../utils/encryption';\n\nexport const getSession = (req: RequestType) => {\n const cookies = CookieManager.getSessionCookieFromRequest(req);\n return createSession(cookies, encryption);\n};\n\nexport function withSSRSession<\n P extends { [key: string]: any } = { [key: string]: any },\n Q extends ParsedUrlQuery = ParsedUrlQuery\n>(\n handler: (\n context: GetServerSidePropsContext<Q>,\n session: FronteggNextJSSession\n ) => GetServerSidePropsResult<P> | Promise<GetServerSidePropsResult<P>>\n) {\n return async (context: GetServerSidePropsContext<Q>): Promise<GetServerSidePropsResult<P>> => {\n const session = await getSession(context.req);\n if (session) {\n return handler(context, session);\n } else {\n let loginUrl = config.authRoutes.loginUrl ?? authInitialState.routes.loginUrl;\n\n if (!loginUrl.startsWith('/')) {\n loginUrl = `/${loginUrl}`;\n }\n\n const fullUrl = new URL(config.appUrl + context.resolvedUrl);\n const urlSearchParams = fullUrl.searchParams;\n urlSearchParams.set('redirectUrl', context.resolvedUrl ?? context.req.url);\n\n return {\n redirect: {\n permanent: false,\n destination: `${loginUrl}?${urlSearchParams.toString()}`,\n },\n props: {},\n } as GetServerSidePropsResult<P>;\n }\n };\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAEO,MAAMM,UAAU,GAAIC,GAAgB,IAAK;EAC9C,MAAMC,OAAO,GAAGC,gBAAa,CAACC,2BAA2B,CAACH,GAAG,CAAC;EAC9D,OAAO,IAAAI,sBAAa,EAACH,OAAO,EAAEI,mBAAU,CAAC;AAC3C,CAAC;AAACC,OAAA,CAAAP,UAAA,GAAAA,UAAA;AAEK,SAASQ,cAAcA,CAI5BC,OAGuE,EACvE;EACA,OAAO,MAAOC,OAAqC,IAA2C;IAC5F,MAAMC,OAAO,GAAG,MAAMX,UAAU,CAACU,OAAO,CAACT,GAAG,CAAC;IAC7C,IAAIU,OAAO,EAAE;MACX,OAAOF,OAAO,CAACC,OAAO,EAAEC,OAAO,CAAC;IAClC,CAAC,MAAM;MAAA,IAAAC,qBAAA,EAAAC,oBAAA;MACL,IAAIC,QAAQ,IAAAF,qBAAA,GAAGG,eAAM,CAACC,UAAU,CAACF,QAAQ,YAAAF,qBAAA,GAAIK,4BAAgB,CAACC,MAAM,CAACJ,QAAQ;MAE7E,IAAI,CAACA,QAAQ,CAACK,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7BL,QAAQ,GAAI,IAAGA,QAAS,EAAC;MAC3B;MAEA,MAAMM,OAAO,GAAG,IAAIC,GAAG,CAACN,eAAM,CAACO,MAAM,GAAGZ,OAAO,CAACa,WAAW,CAAC;MAC5D,MAAMC,eAAe,GAAGJ,OAAO,CAACK,YAAY;MAC5CD,eAAe,CAACE,GAAG,CAAC,aAAa,GAAAb,oBAAA,GAAEH,OAAO,CAACa,WAAW,YAAAV,oBAAA,GAAIH,OAAO,CAACT,GAAG,CAAC0B,GAAG,CAAC;MAE1E,OAAO;QACLC,QAAQ,EAAE;UACRC,SAAS,EAAE,KAAK;UAChBC,WAAW,EAAG,GAAEhB,QAAS,IAAGU,eAAe,CAACO,QAAQ,EAAG;QACzD,CAAC;QACDC,KAAK,EAAE,CAAC;MACV,CAAC;IACH;EACF,CAAC;AACH"}
1
+ {"version":3,"file":"helpers.js","names":["_routing","require","_config","_interopRequireDefault","_cookies","_createSession","_encryption","getSession","req","cookies","CookieManager","getSessionCookieFromRequest","createSession","encryption","exports","withSSRSession","handler","context","session","_config$authRoutes$lo","_context$resolvedUrl","loginUrl","config","authRoutes","defaultFronteggRoutes","logoutUrl","startsWith","fullUrl","URL","appUrl","resolvedUrl","urlSearchParams","searchParams","set","url","redirect","permanent","destination","toString","props"],"sources":["../../../../packages/nextjs/src/pages/helpers.ts"],"sourcesContent":["import { defaultFronteggRoutes } from '../utils/routing';\nimport type { GetServerSidePropsContext, GetServerSidePropsResult } from 'next';\nimport type { ParsedUrlQuery } from 'querystring';\nimport type { FronteggNextJSSession, RequestType } from '../types';\nimport config from '../config';\nimport CookieManager from '../utils/cookies';\nimport createSession from '../utils/createSession';\nimport encryption from '../utils/encryption';\n\nexport const getSession = (req: RequestType) => {\n const cookies = CookieManager.getSessionCookieFromRequest(req);\n return createSession(cookies, encryption);\n};\n\nexport function withSSRSession<\n P extends { [key: string]: any } = { [key: string]: any },\n Q extends ParsedUrlQuery = ParsedUrlQuery\n>(\n handler: (\n context: GetServerSidePropsContext<Q>,\n session: FronteggNextJSSession\n ) => GetServerSidePropsResult<P> | Promise<GetServerSidePropsResult<P>>\n) {\n return async (context: GetServerSidePropsContext<Q>): Promise<GetServerSidePropsResult<P>> => {\n const session = await getSession(context.req);\n if (session) {\n return handler(context, session);\n } else {\n let loginUrl = config.authRoutes.loginUrl ?? defaultFronteggRoutes.logoutUrl;\n\n if (!loginUrl.startsWith('/')) {\n loginUrl = `/${loginUrl}`;\n }\n\n const fullUrl = new URL(config.appUrl + context.resolvedUrl);\n const urlSearchParams = fullUrl.searchParams;\n urlSearchParams.set('redirectUrl', context.resolvedUrl ?? context.req.url);\n\n return {\n redirect: {\n permanent: false,\n destination: `${loginUrl}?${urlSearchParams.toString()}`,\n },\n props: {},\n } as GetServerSidePropsResult<P>;\n }\n };\n}\n"],"mappings":";;;;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAIA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,QAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,cAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,WAAA,GAAAH,sBAAA,CAAAF,OAAA;AAEO,MAAMM,UAAU,GAAIC,GAAgB,IAAK;EAC9C,MAAMC,OAAO,GAAGC,gBAAa,CAACC,2BAA2B,CAACH,GAAG,CAAC;EAC9D,OAAO,IAAAI,sBAAa,EAACH,OAAO,EAAEI,mBAAU,CAAC;AAC3C,CAAC;AAACC,OAAA,CAAAP,UAAA,GAAAA,UAAA;AAEK,SAASQ,cAAcA,CAI5BC,OAGuE,EACvE;EACA,OAAO,MAAOC,OAAqC,IAA2C;IAC5F,MAAMC,OAAO,GAAG,MAAMX,UAAU,CAACU,OAAO,CAACT,GAAG,CAAC;IAC7C,IAAIU,OAAO,EAAE;MACX,OAAOF,OAAO,CAACC,OAAO,EAAEC,OAAO,CAAC;IAClC,CAAC,MAAM;MAAA,IAAAC,qBAAA,EAAAC,oBAAA;MACL,IAAIC,QAAQ,IAAAF,qBAAA,GAAGG,eAAM,CAACC,UAAU,CAACF,QAAQ,YAAAF,qBAAA,GAAIK,8BAAqB,CAACC,SAAS;MAE5E,IAAI,CAACJ,QAAQ,CAACK,UAAU,CAAC,GAAG,CAAC,EAAE;QAC7BL,QAAQ,GAAI,IAAGA,QAAS,EAAC;MAC3B;MAEA,MAAMM,OAAO,GAAG,IAAIC,GAAG,CAACN,eAAM,CAACO,MAAM,GAAGZ,OAAO,CAACa,WAAW,CAAC;MAC5D,MAAMC,eAAe,GAAGJ,OAAO,CAACK,YAAY;MAC5CD,eAAe,CAACE,GAAG,CAAC,aAAa,GAAAb,oBAAA,GAAEH,OAAO,CAACa,WAAW,YAAAV,oBAAA,GAAIH,OAAO,CAACT,GAAG,CAAC0B,GAAG,CAAC;MAE1E,OAAO;QACLC,QAAQ,EAAE;UACRC,SAAS,EAAE,KAAK;UAChBC,WAAW,EAAG,GAAEhB,QAAS,IAAGU,eAAe,CAACO,QAAQ,EAAG;QACzD,CAAC;QACDC,KAAK,EAAE,CAAC;MACV,CAAC;IACH;EACF,CAAC;AACH"}
package/sdkVersion.js CHANGED
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = void 0;
7
7
  var _default = {
8
- version: '8.0.26'
8
+ version: '8.0.27-alpha.10042638343'
9
9
  };
10
10
  exports.default = _default;
11
11
  //# sourceMappingURL=sdkVersion.js.map
package/sdkVersion.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdkVersion.js","names":["version","exports","default","_default"],"sources":["../../../packages/nextjs/src/sdkVersion.ts"],"sourcesContent":["export default { version: '8.0.26' };\n"],"mappings":";;;;;;eAAe;EAAEA,OAAO,EAAE;AAAS,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAC,QAAA"}
1
+ {"version":3,"file":"sdkVersion.js","names":["version","exports","default","_default"],"sources":["../../../packages/nextjs/src/sdkVersion.ts"],"sourcesContent":["export default { version: '8.0.27-alpha.10042638343' };\n"],"mappings":";;;;;;eAAe;EAAEA,OAAO,EAAE;AAA2B,CAAC;AAAAC,OAAA,CAAAC,OAAA,GAAAC,QAAA"}
@@ -17,7 +17,7 @@ const initializeFronteggApp = ({
17
17
  appName,
18
18
  storeHolder
19
19
  }) => {
20
- var _options$authOptions, _options$authOptions2, _options$hostedLoginB, _options$authOptions$, _options$authOptions3, _options$auditsOption;
20
+ var _options$authOptions, _options$authOptions2, _options$hostedLoginB, _options$authOptions$, _options$authOptions3;
21
21
  const {
22
22
  session,
23
23
  user,
@@ -64,7 +64,7 @@ const initializeFronteggApp = ({
64
64
  },
65
65
  clientId: options.envClientId
66
66
  });
67
- const tenantsState = (0, _extends2.default)({}, _reduxStore.tenantsState, {
67
+ const tenantsState = (0, _extends2.default)({
68
68
  tenants: tenants || [],
69
69
  activeTenant
70
70
  }, (_options$authOptions = options.authOptions) == null ? void 0 : _options$authOptions.tenantsState);
@@ -79,15 +79,19 @@ const initializeFronteggApp = ({
79
79
  hostedLoginBox: (_options$hostedLoginB = options.hostedLoginBox) != null ? _options$hostedLoginB : false,
80
80
  disableSilentRefresh: (_options$authOptions$ = (_options$authOptions3 = options.authOptions) == null ? void 0 : _options$authOptions3.disableSilentRefresh) != null ? _options$authOptions$ : true,
81
81
  user: userData,
82
- tenantsState
82
+ tenantsState: tenantsState
83
83
  });
84
- const sharedStore = (0, _reduxStore.createFronteggStore)({
84
+ const sharedStore = (0, _reduxStore.createStore)({
85
85
  context: contextOptions,
86
- appName: appName != null ? appName : 'default'
87
- }, storeHolder, options.previewMode, authOptions, {
88
- auth: authOptions != null ? authOptions : {},
89
- audits: (_options$auditsOption = options.auditsOptions) != null ? _options$auditsOption : {}
90
- }, false, options.urlStrategy);
86
+ storeHolder,
87
+ previewMode: options.previewMode,
88
+ name: appName != null ? appName : 'default',
89
+ urlStrategy: options.urlStrategy,
90
+ builderMode: false,
91
+ initialState: {
92
+ auth: authOptions
93
+ }
94
+ });
91
95
  let createdApp;
92
96
  try {
93
97
  createdApp = _js.AppHolder.getInstance(appName != null ? appName : 'default');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_js","require","_reduxStore","_sdkVersion","_interopRequireDefault","_package","_utils","initializeFronteggApp","options","onRedirectTo","appName","storeHolder","_options$authOptions","_options$authOptions2","_options$hostedLoginB","_options$authOptions$","_options$authOptions3","_options$auditsOption","session","user","tenants","activeTenant","accessToken","refreshToken","contextOptions","_extends2","default","requestCredentials","additionalHeadersResolver","_options$contextOptio","additionalHeaders","originalAdditionalHeadersResolver","push","e","Array","isArray","key","value","nextjsPkg","version","sdkVersion","tokenResolver","secureJwtEnabled","undefined","baseUrl","path","isMiddlewarePath","envAppUrl","envBaseUrl","clientId","envClientId","tenantsState","defaultTenantsState","authOptions","userData","isLoading","isAuthenticated","hostedLoginBox","disableSilentRefresh","sharedStore","createFronteggStore","context","previewMode","auth","audits","auditsOptions","urlStrategy","createdApp","AppHolder","getInstance","store","_options$hostedLoginB2","_options$customLoginB","initialize","customLoginBox","basename","_default","exports"],"sources":["../../../../../packages/nextjs/src/utils/initializeFronteggApp/index.ts"],"sourcesContent":["import { AppHolder, FronteggApp, initialize } from '@frontegg/js';\nimport { createFronteggStore, AuthState, tenantsState as defaultTenantsState } from '@frontegg/redux-store';\nimport { KeyValuePair } from '@frontegg/rest-api';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport sdkVersion from '../../sdkVersion';\nimport type { FronteggProviderOptions } from '../../types';\nimport nextjsPkg from 'next/package.json';\nimport { isMiddlewarePath } from '../../api/utils';\n\ntype CreateOrGetFronteggAppParams = {\n options: FronteggProviderOptions;\n onRedirectTo: AuthState['onRedirectTo'];\n appName?: string;\n storeHolder: any;\n};\n\nconst initializeFronteggApp = ({\n options,\n onRedirectTo,\n appName,\n storeHolder,\n}: CreateOrGetFronteggAppParams): FronteggApp => {\n const { session, user, tenants, activeTenant } = options;\n const { accessToken, refreshToken } = session ?? {};\n\n const contextOptions: FronteggAppOptions['contextOptions'] = {\n requestCredentials: 'include' as RequestCredentials,\n ...options.contextOptions,\n additionalHeadersResolver: async () => {\n const additionalHeaders: KeyValuePair[] = [];\n const originalAdditionalHeadersResolver = options.contextOptions?.additionalHeadersResolver;\n if (typeof originalAdditionalHeadersResolver === 'function') {\n try {\n additionalHeaders.push(...(await originalAdditionalHeadersResolver()));\n } catch (e) {\n /** ignore failed additionalHeadersResolver */\n }\n } else if (Array.isArray(originalAdditionalHeadersResolver)) {\n additionalHeaders.push(...(originalAdditionalHeadersResolver as KeyValuePair[]));\n }\n additionalHeaders.push({\n key: 'x-frontegg-framework',\n value: `next@${nextjsPkg.version}`,\n });\n additionalHeaders.push({\n key: 'x-frontegg-sdk',\n value: `@frontegg/nextjs@${sdkVersion.version}`,\n });\n return additionalHeaders;\n },\n tokenResolver: options.secureJwtEnabled ? () => '' : undefined,\n baseUrl: (path: string) => {\n if (isMiddlewarePath(path) || options.secureJwtEnabled) {\n return `${options.envAppUrl}/api`;\n } else {\n return options.envBaseUrl;\n }\n },\n clientId: options.envClientId,\n };\n\n const tenantsState = {\n ...defaultTenantsState,\n tenants: tenants || [],\n activeTenant,\n ...options.authOptions?.tenantsState,\n };\n const userData = user\n ? {\n ...user,\n accessToken: accessToken ?? '',\n refreshToken: refreshToken ?? undefined,\n ...options.authOptions?.user,\n }\n : null;\n\n const authOptions: FronteggAppOptions['authOptions'] = {\n ...options.authOptions,\n onRedirectTo,\n isLoading: false,\n isAuthenticated: !!options.session,\n hostedLoginBox: options.hostedLoginBox ?? false,\n disableSilentRefresh: options.authOptions?.disableSilentRefresh ?? true,\n user: userData,\n tenantsState,\n };\n\n const sharedStore = createFronteggStore(\n { context: contextOptions, appName: appName ?? 'default' },\n storeHolder,\n options.previewMode,\n authOptions,\n {\n auth: authOptions ?? {},\n audits: options.auditsOptions ?? {},\n },\n false,\n options.urlStrategy\n );\n\n let createdApp;\n try {\n createdApp = AppHolder.getInstance(appName ?? 'default');\n createdApp.store = sharedStore;\n } catch (e) {\n createdApp = initialize(\n {\n ...options,\n store: sharedStore,\n hostedLoginBox: options.hostedLoginBox ?? false,\n customLoginBox: options.customLoginBox ?? false,\n basename: options.basename,\n authOptions,\n contextOptions,\n onRedirectTo,\n },\n appName ?? 'default'\n );\n }\n return createdApp;\n};\n\nexport default initializeFronteggApp;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_js","require","_reduxStore","_sdkVersion","_interopRequireDefault","_package","_utils","initializeFronteggApp","options","onRedirectTo","appName","storeHolder","_options$authOptions","_options$authOptions2","_options$hostedLoginB","_options$authOptions$","_options$authOptions3","session","user","tenants","activeTenant","accessToken","refreshToken","contextOptions","_extends2","default","requestCredentials","additionalHeadersResolver","_options$contextOptio","additionalHeaders","originalAdditionalHeadersResolver","push","e","Array","isArray","key","value","nextjsPkg","version","sdkVersion","tokenResolver","secureJwtEnabled","undefined","baseUrl","path","isMiddlewarePath","envAppUrl","envBaseUrl","clientId","envClientId","tenantsState","authOptions","userData","isLoading","isAuthenticated","hostedLoginBox","disableSilentRefresh","sharedStore","createStore","context","previewMode","name","urlStrategy","builderMode","initialState","auth","createdApp","AppHolder","getInstance","store","_options$hostedLoginB2","_options$customLoginB","initialize","customLoginBox","basename","_default","exports"],"sources":["../../../../../packages/nextjs/src/utils/initializeFronteggApp/index.ts"],"sourcesContent":["import { AppHolder, FronteggApp, initialize } from '@frontegg/js';\nimport { createStore, AuthState } from '@frontegg/redux-store';\nimport { KeyValuePair } from '@frontegg/rest-api';\nimport { FronteggAppOptions } from '@frontegg/types';\nimport sdkVersion from '../../sdkVersion';\nimport type { FronteggProviderOptions } from '../../types';\nimport nextjsPkg from 'next/package.json';\nimport { isMiddlewarePath } from '../../api/utils';\n\ntype CreateOrGetFronteggAppParams = {\n options: FronteggProviderOptions;\n onRedirectTo: AuthState['onRedirectTo'];\n appName?: string;\n storeHolder: any;\n};\n\nconst initializeFronteggApp = ({\n options,\n onRedirectTo,\n appName,\n storeHolder,\n}: CreateOrGetFronteggAppParams): FronteggApp => {\n const { session, user, tenants, activeTenant } = options;\n const { accessToken, refreshToken } = session ?? {};\n\n const contextOptions: FronteggAppOptions['contextOptions'] = {\n requestCredentials: 'include' as RequestCredentials,\n ...options.contextOptions,\n additionalHeadersResolver: async () => {\n const additionalHeaders: KeyValuePair[] = [];\n const originalAdditionalHeadersResolver = options.contextOptions?.additionalHeadersResolver;\n if (typeof originalAdditionalHeadersResolver === 'function') {\n try {\n additionalHeaders.push(...(await originalAdditionalHeadersResolver()));\n } catch (e) {\n /** ignore failed additionalHeadersResolver */\n }\n } else if (Array.isArray(originalAdditionalHeadersResolver)) {\n additionalHeaders.push(...(originalAdditionalHeadersResolver as KeyValuePair[]));\n }\n additionalHeaders.push({\n key: 'x-frontegg-framework',\n value: `next@${nextjsPkg.version}`,\n });\n additionalHeaders.push({\n key: 'x-frontegg-sdk',\n value: `@frontegg/nextjs@${sdkVersion.version}`,\n });\n return additionalHeaders;\n },\n tokenResolver: options.secureJwtEnabled ? () => '' : undefined,\n baseUrl: (path: string) => {\n if (isMiddlewarePath(path) || options.secureJwtEnabled) {\n return `${options.envAppUrl}/api`;\n } else {\n return options.envBaseUrl;\n }\n },\n clientId: options.envClientId,\n };\n\n const tenantsState = {\n tenants: tenants || [],\n activeTenant,\n ...options.authOptions?.tenantsState,\n };\n const userData = user\n ? {\n ...user,\n accessToken: accessToken ?? '',\n refreshToken: refreshToken ?? undefined,\n ...options.authOptions?.user,\n }\n : null;\n\n const authOptions: FronteggAppOptions['authOptions'] = {\n ...options.authOptions,\n onRedirectTo,\n isLoading: false,\n isAuthenticated: !!options.session,\n hostedLoginBox: options.hostedLoginBox ?? false,\n disableSilentRefresh: options.authOptions?.disableSilentRefresh ?? true,\n user: userData,\n tenantsState: tenantsState as AuthState['tenantsState'],\n };\n\n const sharedStore = createStore({\n context: contextOptions,\n storeHolder,\n previewMode: options.previewMode,\n name: appName ?? 'default',\n urlStrategy: options.urlStrategy,\n builderMode: false,\n initialState: {\n auth: authOptions,\n },\n });\n\n let createdApp;\n try {\n createdApp = AppHolder.getInstance(appName ?? 'default');\n createdApp.store = sharedStore;\n } catch (e) {\n createdApp = initialize(\n {\n ...options,\n store: sharedStore,\n hostedLoginBox: options.hostedLoginBox ?? false,\n customLoginBox: options.customLoginBox ?? false,\n basename: options.basename,\n authOptions,\n contextOptions,\n onRedirectTo,\n },\n appName ?? 'default'\n );\n }\n return createdApp;\n};\nexport default initializeFronteggApp;\n"],"mappings":"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"}
@@ -1,3 +1,22 @@
1
+ export declare const defaultFronteggRoutes: {
2
+ authenticatedUrl: string;
3
+ loginUrl: string;
4
+ stepUpUrl: string;
5
+ logoutUrl: string;
6
+ activateUrl: string;
7
+ impersonationUrl: string;
8
+ acceptInvitationUrl: string;
9
+ forgetPasswordUrl: string;
10
+ resetPhoneNumberUrl: string;
11
+ resetPasswordUrl: string;
12
+ socialLoginCallbackUrl: string;
13
+ signUpUrl: string;
14
+ oidcRedirectUrl: string;
15
+ samlCallbackUrl: string;
16
+ magicLinkCallbackUrl: string;
17
+ hostedLoginRedirectUrl: string;
18
+ openAppUrl: string;
19
+ };
1
20
  export declare function getAuthRoutes(): {
2
21
  routesArr: string[];
3
22
  routesObj: Record<string, string>;
@@ -4,13 +4,33 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
+ exports.defaultFronteggRoutes = void 0;
7
8
  exports.getAuthRoutes = getAuthRoutes;
8
9
  exports.isAuthRoute = isAuthRoute;
9
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
- var _reduxStore = require("@frontegg/redux-store");
11
11
  var _config = _interopRequireDefault(require("../../config"));
12
+ const defaultFronteggRoutes = {
13
+ authenticatedUrl: '/',
14
+ loginUrl: '/account/login',
15
+ stepUpUrl: '/account/step-up',
16
+ logoutUrl: '/account/logout',
17
+ activateUrl: '/account/activate',
18
+ impersonationUrl: '/account/impersonate',
19
+ acceptInvitationUrl: '/account/invitation/accept',
20
+ forgetPasswordUrl: '/account/forget-password',
21
+ resetPhoneNumberUrl: '/account/reset-phone-number',
22
+ resetPasswordUrl: '/account/reset-password',
23
+ socialLoginCallbackUrl: '/account/social/success',
24
+ signUpUrl: '/account/sign-up',
25
+ oidcRedirectUrl: '/account/oidc/callback',
26
+ samlCallbackUrl: '/account/saml/callback',
27
+ magicLinkCallbackUrl: '/account/login/magic-link',
28
+ hostedLoginRedirectUrl: '/oauth/callback',
29
+ openAppUrl: '/account/redirect'
30
+ };
31
+ exports.defaultFronteggRoutes = defaultFronteggRoutes;
12
32
  function getAuthRoutes() {
13
- const routesObj = (0, _extends2.default)({}, _reduxStore.authInitialState.routes, _config.default.authRoutes);
33
+ const routesObj = (0, _extends2.default)({}, defaultFronteggRoutes, _config.default.authRoutes);
14
34
  const routesArr = Object.keys(routesObj).reduce((p, key) => [...p, routesObj[key]], []);
15
35
  return {
16
36
  routesArr,
@@ -25,7 +45,7 @@ function isAuthRoute(pathname) {
25
45
  if (_config.default.isHostedLogin) {
26
46
  return routesObj.loginUrl === pathname || routesObj.logoutUrl === pathname || routesObj.hostedLoginRedirectUrl === pathname;
27
47
  } else {
28
- return routesArr.indexOf(pathname) !== -1;
48
+ return pathname !== routesObj.authenticatedUrl && routesArr.indexOf(pathname) !== -1;
29
49
  }
30
50
  }
31
51
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_reduxStore","require","_config","_interopRequireDefault","getAuthRoutes","routesObj","_extends2","default","authInitialState","routes","config","authRoutes","routesArr","Object","keys","reduce","p","key","isAuthRoute","pathname","isHostedLogin","loginUrl","logoutUrl","hostedLoginRedirectUrl","indexOf"],"sources":["../../../../../packages/nextjs/src/utils/routing/index.ts"],"sourcesContent":["import { authInitialState } from '@frontegg/redux-store';\nimport config from '../../config';\n\nexport function getAuthRoutes(): { routesArr: string[]; routesObj: Record<string, string> } {\n const routesObj = {\n ...authInitialState.routes,\n ...config.authRoutes,\n };\n const routesArr: string[] = Object.keys(routesObj).reduce(\n (p: string[], key: string) => [...p, (routesObj as any)[key]],\n []\n );\n return { routesArr, routesObj };\n}\n\nexport function isAuthRoute(pathname: string): boolean {\n const { routesArr, routesObj } = getAuthRoutes();\n\n if (config.isHostedLogin) {\n return (\n routesObj.loginUrl === pathname ||\n routesObj.logoutUrl === pathname ||\n routesObj.hostedLoginRedirectUrl === pathname\n );\n } else {\n return routesArr.indexOf(pathname) !== -1;\n }\n}\n"],"mappings":";;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAC,sBAAA,CAAAF,OAAA;AAEO,SAASG,aAAaA,CAAA,EAA+D;EAC1F,MAAMC,SAAS,OAAAC,SAAA,CAAAC,OAAA,MACVC,4BAAgB,CAACC,MAAM,EACvBC,eAAM,CAACC,UAAU,CACrB;EACD,MAAMC,SAAmB,GAAGC,MAAM,CAACC,IAAI,CAACT,SAAS,CAAC,CAACU,MAAM,CACvD,CAACC,CAAW,EAAEC,GAAW,KAAK,CAAC,GAAGD,CAAC,EAAGX,SAAS,CAASY,GAAG,CAAC,CAAC,EAC7D,EAAE,CACH;EACD,OAAO;IAAEL,SAAS;IAAEP;EAAU,CAAC;AACjC;AAEO,SAASa,WAAWA,CAACC,QAAgB,EAAW;EACrD,MAAM;IAAEP,SAAS;IAAEP;EAAU,CAAC,GAAGD,aAAa,EAAE;EAEhD,IAAIM,eAAM,CAACU,aAAa,EAAE;IACxB,OACEf,SAAS,CAACgB,QAAQ,KAAKF,QAAQ,IAC/Bd,SAAS,CAACiB,SAAS,KAAKH,QAAQ,IAChCd,SAAS,CAACkB,sBAAsB,KAAKJ,QAAQ;EAEjD,CAAC,MAAM;IACL,OAAOP,SAAS,CAACY,OAAO,CAACL,QAAQ,CAAC,KAAK,CAAC,CAAC;EAC3C;AACF"}
1
+ {"version":3,"file":"index.js","names":["_config","_interopRequireDefault","require","defaultFronteggRoutes","authenticatedUrl","loginUrl","stepUpUrl","logoutUrl","activateUrl","impersonationUrl","acceptInvitationUrl","forgetPasswordUrl","resetPhoneNumberUrl","resetPasswordUrl","socialLoginCallbackUrl","signUpUrl","oidcRedirectUrl","samlCallbackUrl","magicLinkCallbackUrl","hostedLoginRedirectUrl","openAppUrl","exports","getAuthRoutes","routesObj","_extends2","default","config","authRoutes","routesArr","Object","keys","reduce","p","key","isAuthRoute","pathname","isHostedLogin","indexOf"],"sources":["../../../../../packages/nextjs/src/utils/routing/index.ts"],"sourcesContent":["import config from '../../config';\n\nexport const defaultFronteggRoutes = {\n authenticatedUrl: '/',\n loginUrl: '/account/login',\n stepUpUrl: '/account/step-up',\n logoutUrl: '/account/logout',\n activateUrl: '/account/activate',\n impersonationUrl: '/account/impersonate',\n acceptInvitationUrl: '/account/invitation/accept',\n forgetPasswordUrl: '/account/forget-password',\n resetPhoneNumberUrl: '/account/reset-phone-number',\n resetPasswordUrl: '/account/reset-password',\n socialLoginCallbackUrl: '/account/social/success',\n signUpUrl: '/account/sign-up',\n oidcRedirectUrl: '/account/oidc/callback',\n samlCallbackUrl: '/account/saml/callback',\n magicLinkCallbackUrl: '/account/login/magic-link',\n hostedLoginRedirectUrl: '/oauth/callback',\n openAppUrl: '/account/redirect',\n};\n\nexport function getAuthRoutes(): { routesArr: string[]; routesObj: Record<string, string> } {\n const routesObj = {\n ...defaultFronteggRoutes,\n ...config.authRoutes,\n };\n const routesArr: string[] = Object.keys(routesObj).reduce(\n (p: string[], key: string) => [...p, (routesObj as any)[key]],\n []\n );\n return { routesArr, routesObj };\n}\n\nexport function isAuthRoute(pathname: string): boolean {\n const { routesArr, routesObj } = getAuthRoutes();\n\n if (config.isHostedLogin) {\n return (\n routesObj.loginUrl === pathname ||\n routesObj.logoutUrl === pathname ||\n routesObj.hostedLoginRedirectUrl === pathname\n );\n } else {\n return pathname !== routesObj.authenticatedUrl && routesArr.indexOf(pathname) !== -1;\n }\n}\n"],"mappings":";;;;;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AAEO,MAAMC,qBAAqB,GAAG;EACnCC,gBAAgB,EAAE,GAAG;EACrBC,QAAQ,EAAE,gBAAgB;EAC1BC,SAAS,EAAE,kBAAkB;EAC7BC,SAAS,EAAE,iBAAiB;EAC5BC,WAAW,EAAE,mBAAmB;EAChCC,gBAAgB,EAAE,sBAAsB;EACxCC,mBAAmB,EAAE,4BAA4B;EACjDC,iBAAiB,EAAE,0BAA0B;EAC7CC,mBAAmB,EAAE,6BAA6B;EAClDC,gBAAgB,EAAE,yBAAyB;EAC3CC,sBAAsB,EAAE,yBAAyB;EACjDC,SAAS,EAAE,kBAAkB;EAC7BC,eAAe,EAAE,wBAAwB;EACzCC,eAAe,EAAE,wBAAwB;EACzCC,oBAAoB,EAAE,2BAA2B;EACjDC,sBAAsB,EAAE,iBAAiB;EACzCC,UAAU,EAAE;AACd,CAAC;AAACC,OAAA,CAAAlB,qBAAA,GAAAA,qBAAA;AAEK,SAASmB,aAAaA,CAAA,EAA+D;EAC1F,MAAMC,SAAS,OAAAC,SAAA,CAAAC,OAAA,MACVtB,qBAAqB,EACrBuB,eAAM,CAACC,UAAU,CACrB;EACD,MAAMC,SAAmB,GAAGC,MAAM,CAACC,IAAI,CAACP,SAAS,CAAC,CAACQ,MAAM,CACvD,CAACC,CAAW,EAAEC,GAAW,KAAK,CAAC,GAAGD,CAAC,EAAGT,SAAS,CAASU,GAAG,CAAC,CAAC,EAC7D,EAAE,CACH;EACD,OAAO;IAAEL,SAAS;IAAEL;EAAU,CAAC;AACjC;AAEO,SAASW,WAAWA,CAACC,QAAgB,EAAW;EACrD,MAAM;IAAEP,SAAS;IAAEL;EAAU,CAAC,GAAGD,aAAa,EAAE;EAEhD,IAAII,eAAM,CAACU,aAAa,EAAE;IACxB,OACEb,SAAS,CAAClB,QAAQ,KAAK8B,QAAQ,IAC/BZ,SAAS,CAAChB,SAAS,KAAK4B,QAAQ,IAChCZ,SAAS,CAACJ,sBAAsB,KAAKgB,QAAQ;EAEjD,CAAC,MAAM;IACL,OAAOA,QAAQ,KAAKZ,SAAS,CAACnB,gBAAgB,IAAIwB,SAAS,CAACS,OAAO,CAACF,QAAQ,CAAC,KAAK,CAAC,CAAC;EACtF;AACF"}
@@ -8,10 +8,11 @@ var _react = require("react");
8
8
  var _reduxStore = require("@frontegg/redux-store");
9
9
  const useOnRedirectTo = (baseName, router, routes) => {
10
10
  const isAuthRouteRef = (0, _react.useRef)(() => false);
11
+ const onRedirectTo = (0, _react.useRef)((_path, opts) => {});
11
12
  (0, _react.useMemo)(() => {
12
13
  isAuthRouteRef.current = path => (0, _reduxStore.isAuthRoute)(path, routes);
13
14
  }, [routes]);
14
- return (0, _react.useCallback)((_path, opts) => {
15
+ onRedirectTo.current = (_path, opts) => {
15
16
  const isSSR = typeof window == undefined;
16
17
  let path = _path;
17
18
  if (path.startsWith(baseName)) {
@@ -26,7 +27,8 @@ const useOnRedirectTo = (baseName, router, routes) => {
26
27
  } else {
27
28
  opts != null && opts.replace ? router.replace(path) : router.push(path);
28
29
  }
29
- }, []);
30
+ };
31
+ return onRedirectTo.current;
30
32
  };
31
33
  var _default = useOnRedirectTo;
32
34
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_reduxStore","useOnRedirectTo","baseName","router","routes","isAuthRouteRef","useRef","useMemo","current","path","isAuthRoute","useCallback","_path","opts","isSSR","window","undefined","startsWith","substring","length","preserveQueryParams","location","search","refresh","Cypress","push","href","replace","_default","exports","default"],"sources":["../../../../../packages/nextjs/src/utils/useOnRedirectTo/index.ts"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport { RedirectOptions } from '@frontegg/rest-api';\nimport type { NextRouter } from 'next/router';\nimport type { AppRouterInstance } from 'next/dist/shared/lib/app-router-context';\nimport { isAuthRoute, AuthPageRoutes } from '@frontegg/redux-store';\n\nconst useOnRedirectTo = (\n baseName: string,\n router: AppRouterInstance | NextRouter,\n routes?: Partial<AuthPageRoutes>\n) => {\n const isAuthRouteRef = useRef<(path: string) => boolean>(() => false);\n\n useMemo(() => {\n isAuthRouteRef.current = (path) => isAuthRoute(path, routes);\n }, [routes]);\n\n return useCallback((_path: string, opts?: RedirectOptions) => {\n const isSSR = typeof window == undefined;\n let path = _path;\n if (path.startsWith(baseName)) {\n path = path.substring(baseName.length);\n }\n if (opts?.preserveQueryParams || isAuthRouteRef.current(path)) {\n path = `${path}${window.location.search}`;\n }\n if (opts?.refresh && !isSSR) {\n // @ts-ignore\n window.Cypress ? router.push(path) : (window.location.href = path);\n } else {\n opts?.replace ? router.replace(path) : router.push(path);\n }\n }, []);\n};\n\nexport default useOnRedirectTo;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,WAAA,GAAAD,OAAA;AAEA,MAAME,eAAe,GAAGA,CACtBC,QAAgB,EAChBC,MAAsC,EACtCC,MAAgC,KAC7B;EACH,MAAMC,cAAc,GAAG,IAAAC,aAAM,EAA4B,MAAM,KAAK,CAAC;EAErE,IAAAC,cAAO,EAAC,MAAM;IACZF,cAAc,CAACG,OAAO,GAAIC,IAAI,IAAK,IAAAC,uBAAW,EAACD,IAAI,EAAEL,MAAM,CAAC;EAC9D,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,OAAO,IAAAO,kBAAW,EAAC,CAACC,KAAa,EAAEC,IAAsB,KAAK;IAC5D,MAAMC,KAAK,GAAG,OAAOC,MAAM,IAAIC,SAAS;IACxC,IAAIP,IAAI,GAAGG,KAAK;IAChB,IAAIH,IAAI,CAACQ,UAAU,CAACf,QAAQ,CAAC,EAAE;MAC7BO,IAAI,GAAGA,IAAI,CAACS,SAAS,CAAChB,QAAQ,CAACiB,MAAM,CAAC;IACxC;IACA,IAAIN,IAAI,YAAJA,IAAI,CAAEO,mBAAmB,IAAIf,cAAc,CAACG,OAAO,CAACC,IAAI,CAAC,EAAE;MAC7DA,IAAI,GAAI,GAAEA,IAAK,GAAEM,MAAM,CAACM,QAAQ,CAACC,MAAO,EAAC;IAC3C;IACA,IAAIT,IAAI,YAAJA,IAAI,CAAEU,OAAO,IAAI,CAACT,KAAK,EAAE;MAC3B;MACAC,MAAM,CAACS,OAAO,GAAGrB,MAAM,CAACsB,IAAI,CAAChB,IAAI,CAAC,GAAIM,MAAM,CAACM,QAAQ,CAACK,IAAI,GAAGjB,IAAK;IACpE,CAAC,MAAM;MACLI,IAAI,YAAJA,IAAI,CAAEc,OAAO,GAAGxB,MAAM,CAACwB,OAAO,CAAClB,IAAI,CAAC,GAAGN,MAAM,CAACsB,IAAI,CAAChB,IAAI,CAAC;IAC1D;EACF,CAAC,EAAE,EAAE,CAAC;AACR,CAAC;AAAC,IAAAmB,QAAA,GAEa3B,eAAe;AAAA4B,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_reduxStore","useOnRedirectTo","baseName","router","routes","isAuthRouteRef","useRef","onRedirectTo","_path","opts","useMemo","current","path","isAuthRoute","isSSR","window","undefined","startsWith","substring","length","preserveQueryParams","location","search","refresh","Cypress","push","href","replace","_default","exports","default"],"sources":["../../../../../packages/nextjs/src/utils/useOnRedirectTo/index.ts"],"sourcesContent":["import { useCallback, useMemo, useRef } from 'react';\nimport { RedirectOptions } from '@frontegg/rest-api';\nimport type { NextRouter } from 'next/router';\nimport type { AppRouterInstance } from 'next/dist/shared/lib/app-router-context';\nimport { isAuthRoute, AuthPageRoutes } from '@frontegg/redux-store';\n\nconst useOnRedirectTo = (\n baseName: string,\n router: AppRouterInstance | NextRouter,\n routes?: Partial<AuthPageRoutes>\n) => {\n const isAuthRouteRef = useRef<(path: string) => boolean>(() => false);\n const onRedirectTo = useRef((_path: string, opts?: RedirectOptions) => {});\n\n useMemo(() => {\n isAuthRouteRef.current = (path) => isAuthRoute(path, routes);\n }, [routes]);\n\n onRedirectTo.current = (_path: string, opts?: RedirectOptions) => {\n const isSSR = typeof window == undefined;\n let path = _path;\n if (path.startsWith(baseName)) {\n path = path.substring(baseName.length);\n }\n if (opts?.preserveQueryParams || isAuthRouteRef.current(path)) {\n path = `${path}${window.location.search}`;\n }\n if (opts?.refresh && !isSSR) {\n // @ts-ignore\n window.Cypress ? router.push(path) : (window.location.href = path);\n } else {\n opts?.replace ? router.replace(path) : router.push(path);\n }\n };\n\n return onRedirectTo.current;\n};\n\nexport default useOnRedirectTo;\n"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAIA,IAAAC,WAAA,GAAAD,OAAA;AAEA,MAAME,eAAe,GAAGA,CACtBC,QAAgB,EAChBC,MAAsC,EACtCC,MAAgC,KAC7B;EACH,MAAMC,cAAc,GAAG,IAAAC,aAAM,EAA4B,MAAM,KAAK,CAAC;EACrE,MAAMC,YAAY,GAAG,IAAAD,aAAM,EAAC,CAACE,KAAa,EAAEC,IAAsB,KAAK,CAAC,CAAC,CAAC;EAE1E,IAAAC,cAAO,EAAC,MAAM;IACZL,cAAc,CAACM,OAAO,GAAIC,IAAI,IAAK,IAAAC,uBAAW,EAACD,IAAI,EAAER,MAAM,CAAC;EAC9D,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZG,YAAY,CAACI,OAAO,GAAG,CAACH,KAAa,EAAEC,IAAsB,KAAK;IAChE,MAAMK,KAAK,GAAG,OAAOC,MAAM,IAAIC,SAAS;IACxC,IAAIJ,IAAI,GAAGJ,KAAK;IAChB,IAAII,IAAI,CAACK,UAAU,CAACf,QAAQ,CAAC,EAAE;MAC7BU,IAAI,GAAGA,IAAI,CAACM,SAAS,CAAChB,QAAQ,CAACiB,MAAM,CAAC;IACxC;IACA,IAAIV,IAAI,YAAJA,IAAI,CAAEW,mBAAmB,IAAIf,cAAc,CAACM,OAAO,CAACC,IAAI,CAAC,EAAE;MAC7DA,IAAI,GAAI,GAAEA,IAAK,GAAEG,MAAM,CAACM,QAAQ,CAACC,MAAO,EAAC;IAC3C;IACA,IAAIb,IAAI,YAAJA,IAAI,CAAEc,OAAO,IAAI,CAACT,KAAK,EAAE;MAC3B;MACAC,MAAM,CAACS,OAAO,GAAGrB,MAAM,CAACsB,IAAI,CAACb,IAAI,CAAC,GAAIG,MAAM,CAACM,QAAQ,CAACK,IAAI,GAAGd,IAAK;IACpE,CAAC,MAAM;MACLH,IAAI,YAAJA,IAAI,CAAEkB,OAAO,GAAGxB,MAAM,CAACwB,OAAO,CAACf,IAAI,CAAC,GAAGT,MAAM,CAACsB,IAAI,CAACb,IAAI,CAAC;IAC1D;EACF,CAAC;EAED,OAAOL,YAAY,CAACI,OAAO;AAC7B,CAAC;AAAC,IAAAiB,QAAA,GAEa3B,eAAe;AAAA4B,OAAA,CAAAC,OAAA,GAAAF,QAAA"}