@zengenti/contensis-react-base 3.2.2-beta.6 → 3.2.2-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/cjs/{App-b96f8a00.js → App-D2_FqsUD.js} +30 -30
  2. package/{esm/App-71b8475e.js.map → cjs/App-D2_FqsUD.js.map} +1 -1
  3. package/cjs/{ChangePassword.container-fe39e44a.js → ChangePassword.container-DrO8p-7S.js} +17 -34
  4. package/cjs/{ChangePassword.container-fe39e44a.js.map → ChangePassword.container-DrO8p-7S.js.map} +1 -1
  5. package/cjs/{CookieHelper.class-e0908573.js → CookieHelper.class-CNL3lC5D.js} +1 -6
  6. package/cjs/{CookieHelper.class-e0908573.js.map → CookieHelper.class-CNL3lC5D.js.map} +1 -1
  7. package/cjs/{RouteLoader-4ac8153a.js → RouteLoader-BrUuhdcK.js} +14 -14
  8. package/cjs/{RouteLoader-4ac8153a.js.map → RouteLoader-BrUuhdcK.js.map} +1 -1
  9. package/cjs/{SSRContext-79344de2.js → SSRContext-CmXDzwPL.js} +8 -14
  10. package/cjs/{SSRContext-79344de2.js.map → SSRContext-CmXDzwPL.js.map} +1 -1
  11. package/cjs/{ToJs-8fd54c8e.js → ToJs-C9jwV7YB.js} +25 -24
  12. package/cjs/{ToJs-8fd54c8e.js.map → ToJs-C9jwV7YB.js.map} +1 -1
  13. package/cjs/{_commonjsHelpers-b3309d7b.js → _commonjsHelpers-BJu3ubxk.js} +1 -1
  14. package/cjs/_commonjsHelpers-BJu3ubxk.js.map +1 -0
  15. package/cjs/client.js +16 -16
  16. package/cjs/client.js.map +1 -1
  17. package/cjs/contensis-react-base.js +177 -184
  18. package/cjs/contensis-react-base.js.map +1 -1
  19. package/cjs/forms.js +2478 -2482
  20. package/cjs/forms.js.map +1 -1
  21. package/cjs/{fromJSLeaveImmer-7c363211.js → fromJSLeaveImmer-Drk6JyYs.js} +2 -2
  22. package/{esm/fromJSLeaveImmer-e2dacd63.js.map → cjs/fromJSLeaveImmer-Drk6JyYs.js.map} +1 -1
  23. package/cjs/redux.js +5 -7
  24. package/cjs/redux.js.map +1 -1
  25. package/cjs/routing.js +6 -8
  26. package/cjs/routing.js.map +1 -1
  27. package/cjs/{sagas-497c6e94.js → sagas-DFdRjqSX.js} +54 -56
  28. package/cjs/{sagas-497c6e94.js.map → sagas-DFdRjqSX.js.map} +1 -1
  29. package/cjs/search.js +24 -23
  30. package/cjs/search.js.map +1 -1
  31. package/cjs/{selectors-d5cd6b19.js → selectors-wCs5fHD4.js} +43 -43
  32. package/cjs/{selectors-d5cd6b19.js.map → selectors-wCs5fHD4.js.map} +1 -1
  33. package/cjs/{store-0ef9b570.js → store-D8dJBaFw.js} +16 -34
  34. package/cjs/{store-0ef9b570.js.map → store-D8dJBaFw.js.map} +1 -1
  35. package/cjs/{urls-6fcaf4c6.js → urls-DVIwGZmd.js} +1 -1
  36. package/cjs/{urls-6fcaf4c6.js.map → urls-DVIwGZmd.js.map} +1 -1
  37. package/cjs/user.js +7 -9
  38. package/cjs/user.js.map +1 -1
  39. package/cjs/util.js +46 -46
  40. package/cjs/util.js.map +1 -1
  41. package/cjs/{version-0cb648de.js → version-CM-bJ62L.js} +3 -3
  42. package/cjs/{version-0cb648de.js.map → version-CM-bJ62L.js.map} +1 -1
  43. package/cjs/{version-8072b62e.js → version-DSW6Roy9.js} +5 -5
  44. package/cjs/{version-8072b62e.js.map → version-DSW6Roy9.js.map} +1 -1
  45. package/esm/{App-71b8475e.js → App-BE7fh-wb.js} +24 -24
  46. package/{cjs/App-b96f8a00.js.map → esm/App-BE7fh-wb.js.map} +1 -1
  47. package/esm/{ChangePassword.container-572653e2.js → ChangePassword.container-6fQXhkzW.js} +14 -13
  48. package/esm/{ChangePassword.container-572653e2.js.map → ChangePassword.container-6fQXhkzW.js.map} +1 -1
  49. package/esm/{CookieHelper.class-67f65459.js → CookieHelper.class-DqJ_o1jL.js} +2 -7
  50. package/esm/{CookieHelper.class-67f65459.js.map → CookieHelper.class-DqJ_o1jL.js.map} +1 -1
  51. package/esm/{RouteLoader-11833209.js → RouteLoader-BNKfOnU8.js} +5 -5
  52. package/esm/{RouteLoader-11833209.js.map → RouteLoader-BNKfOnU8.js.map} +1 -1
  53. package/esm/{SSRContext-0177db9c.js → SSRContext-BoisoiyV.js} +5 -11
  54. package/esm/{SSRContext-0177db9c.js.map → SSRContext-BoisoiyV.js.map} +1 -1
  55. package/esm/{ToJs-0ed7c7db.js → ToJs-B4MH53fx.js} +23 -22
  56. package/esm/{ToJs-0ed7c7db.js.map → ToJs-B4MH53fx.js.map} +1 -1
  57. package/esm/{_commonjsHelpers-1789f0cf.js → _commonjsHelpers-BFTU3MAI.js} +1 -1
  58. package/esm/_commonjsHelpers-BFTU3MAI.js.map +1 -0
  59. package/esm/client.js +11 -11
  60. package/esm/client.js.map +1 -1
  61. package/esm/contensis-react-base.js +135 -142
  62. package/esm/contensis-react-base.js.map +1 -1
  63. package/esm/forms.js +2224 -2226
  64. package/esm/forms.js.map +1 -1
  65. package/esm/{fromJSLeaveImmer-e2dacd63.js → fromJSLeaveImmer-DfnbPBKC.js} +1 -1
  66. package/{cjs/fromJSLeaveImmer-7c363211.js.map → esm/fromJSLeaveImmer-DfnbPBKC.js.map} +1 -1
  67. package/esm/redux.js +8 -8
  68. package/esm/routing.js +6 -6
  69. package/esm/{sagas-b654d1a6.js → sagas-waBQR0Ek.js} +43 -45
  70. package/esm/{sagas-b654d1a6.js.map → sagas-waBQR0Ek.js.map} +1 -1
  71. package/esm/search.js +14 -11
  72. package/esm/search.js.map +1 -1
  73. package/esm/{selectors-bb117d1b.js → selectors-BRzliwbK.js} +41 -41
  74. package/esm/{selectors-bb117d1b.js.map → selectors-BRzliwbK.js.map} +1 -1
  75. package/esm/{store-2ff73952.js → store-Cr0lmZNr.js} +12 -12
  76. package/esm/{store-2ff73952.js.map → store-Cr0lmZNr.js.map} +1 -1
  77. package/esm/{urls-eac9a747.js → urls-DfCisos-.js} +1 -1
  78. package/esm/{urls-eac9a747.js.map → urls-DfCisos-.js.map} +1 -1
  79. package/esm/user.js +6 -6
  80. package/esm/user.js.map +1 -1
  81. package/esm/util.js +10 -8
  82. package/esm/util.js.map +1 -1
  83. package/esm/{version-df7f7154.js → version-78jjDnHU.js} +3 -3
  84. package/esm/{version-df7f7154.js.map → version-78jjDnHU.js.map} +1 -1
  85. package/esm/{version-49ad9e9d.js → version-CB7rIyoF.js} +6 -6
  86. package/esm/{version-49ad9e9d.js.map → version-CB7rIyoF.js.map} +1 -1
  87. package/package.json +21 -32
  88. package/cjs/_commonjsHelpers-b3309d7b.js.map +0 -1
  89. package/esm/_commonjsHelpers-1789f0cf.js.map +0 -1
@@ -6,18 +6,18 @@ var reactHotLoader = require('react-hot-loader');
6
6
  var reactRouterDom = require('react-router-dom');
7
7
  var reactRouterConfig = require('react-router-config');
8
8
  var reselect = require('reselect');
9
- var selectors = require('./selectors-d5cd6b19.js');
10
- var ToJs = require('./ToJs-8fd54c8e.js');
11
- var SSRContext = require('./SSRContext-79344de2.js');
9
+ var selectors = require('./selectors-wCs5fHD4.js');
10
+ var ToJs = require('./ToJs-C9jwV7YB.js');
11
+ var SSRContext = require('./SSRContext-CmXDzwPL.js');
12
12
 
13
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
13
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
14
 
15
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
15
+ var React__default = /*#__PURE__*/_interopDefault(React);
16
16
 
17
17
  const NotFound = ({
18
18
  statusCode,
19
19
  statusText
20
- }) => /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("header", null, /*#__PURE__*/React__default["default"].createElement("h1", null, statusCode || '404', " Page Not Found"), statusText && /*#__PURE__*/React__default["default"].createElement("h2", {
20
+ }) => /*#__PURE__*/React__default.default.createElement(React__default.default.Fragment, null, /*#__PURE__*/React__default.default.createElement("header", null, /*#__PURE__*/React__default.default.createElement("h1", null, statusCode || '404', " Page Not Found"), statusText && /*#__PURE__*/React__default.default.createElement("h2", {
21
21
  style: {
22
22
  background: '#eee',
23
23
  color: '#666',
@@ -30,7 +30,7 @@ const Status = ({
30
30
  code,
31
31
  children
32
32
  }) => {
33
- return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Route, {
33
+ return /*#__PURE__*/React__default.default.createElement(reactRouterDom.Route, {
34
34
  render: ({
35
35
  staticContext
36
36
  }) => {
@@ -134,9 +134,9 @@ const RouteLoader = ({
134
134
 
135
135
  // Need to redirect when url endswith a /
136
136
  if (location.pathname.length > trimmedPath.length) {
137
- return /*#__PURE__*/React__default["default"].createElement(Status, {
137
+ return /*#__PURE__*/React__default.default.createElement(Status, {
138
138
  code: trailingSlashRedirectCode
139
- }, /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Redirect, {
139
+ }, /*#__PURE__*/React__default.default.createElement(reactRouterDom.Redirect, {
140
140
  to: `${trimmedPath}${location.search}${location.hash}`
141
141
  }));
142
142
  }
@@ -156,14 +156,14 @@ const RouteLoader = ({
156
156
  // is not a static route and is in a loading state
157
157
  if (isLoading && !isNotFound && loadingComponent) {
158
158
  const LoadingComponent = loadingComponent;
159
- return /*#__PURE__*/React__default["default"].createElement(LoadingComponent, null);
159
+ return /*#__PURE__*/React__default.default.createElement(LoadingComponent, null);
160
160
  }
161
161
 
162
162
  // Match any defined Content Type Mappings
163
163
  if (contentTypeId && !(!isLoggedIn && routeRequiresLogin)) {
164
164
  const MatchedComponent = routes.ContentTypeMappings.find(item => item.contentTypeID === contentTypeId);
165
165
  if (MatchedComponent && !(MatchedComponent.requireLogin && !isLoggedIn)) {
166
- if (ToJs.matchUserGroup(userGroups, MatchedComponent.requireLogin)) return /*#__PURE__*/React__default["default"].createElement(MatchedComponent.component, {
166
+ if (ToJs.matchUserGroup(userGroups, MatchedComponent.requireLogin)) return /*#__PURE__*/React__default.default.createElement(MatchedComponent.component, {
167
167
  projectId: projectId,
168
168
  contentTypeId: contentTypeId,
169
169
  entry: entry,
@@ -175,9 +175,9 @@ const RouteLoader = ({
175
175
  const NotFoundComponent = notFoundComponent ? notFoundComponent : NotFound;
176
176
  if (isNotFound || isError) {
177
177
  console.info(`RouteLoader rendering NotFound component: statusCode ${statusCode}, isNotFound ${isNotFound}, isError ${isError}`);
178
- return /*#__PURE__*/React__default["default"].createElement(Status, {
178
+ return /*#__PURE__*/React__default.default.createElement(Status, {
179
179
  code: statusCode
180
- }, /*#__PURE__*/React__default["default"].createElement(NotFoundComponent, {
180
+ }, /*#__PURE__*/React__default.default.createElement(NotFoundComponent, {
181
181
  statusCode: statusCode,
182
182
  statusText: statusText
183
183
  }));
@@ -204,4 +204,4 @@ const mapDispatchToProps = {
204
204
  var RouteLoader$1 = reactHotLoader.hot(module)(reactRedux.connect(mapStateToPropsMemoized, mapDispatchToProps)(ToJs.toJS(RouteLoader)));
205
205
 
206
206
  exports.RouteLoader = RouteLoader$1;
207
- //# sourceMappingURL=RouteLoader-4ac8153a.js.map
207
+ //# sourceMappingURL=RouteLoader-BrUuhdcK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RouteLoader-4ac8153a.js","sources":["../src/routing/components/NotFound.tsx","../src/routing/components/Status.tsx","../src/routing/components/RouteLoader.tsx"],"sourcesContent":["import React from 'react';\n\nconst NotFound = ({\n statusCode,\n statusText,\n}: {\n statusCode: number;\n statusText: string;\n}) => (\n <>\n <header>\n <h1>{statusCode || '404'} Page Not Found</h1>\n {statusText && (\n <h2\n style={{\n background: '#eee',\n color: '#666',\n fontSize: '100%',\n padding: '10px',\n }}\n >\n {statusText}\n </h2>\n )}\n </header>\n </>\n);\n\nexport default NotFound;\n","import React, { PropsWithChildren } from 'react';\nimport { Route } from 'react-router-dom';\n\nexport const Status = ({\n code,\n children,\n}: PropsWithChildren<{ code: number }>) => {\n return (\n <Route\n render={({ staticContext }) => {\n if (staticContext) staticContext.statusCode = code;\n return children;\n }}\n />\n );\n};\n","import React, { useEffect, useCallback } from 'react';\nimport { connect } from 'react-redux';\nimport { hot } from 'react-hot-loader';\nimport { Redirect, useLocation } from 'react-router-dom';\nimport { renderRoutes, matchRoutes, RouteConfig } from 'react-router-config';\nimport { createSelector } from 'reselect';\n\nimport NotFound from './NotFound';\nimport { Status } from './Status';\n\nimport {\n selectCurrentPath,\n selectCurrentProject,\n selectIsNotFound,\n selectMappedEntry,\n selectRouteEntry,\n selectRouteEntryContentTypeId,\n selectRouteErrorMessage,\n selectRouteIsError,\n selectRouteLoading,\n selectRouteStatusCode,\n} from '../redux/selectors';\nimport { setNavigationPath } from '../redux/actions';\n\nimport {\n selectUserGroups,\n selectUserIsAuthenticated,\n} from '~/user/redux/selectors';\nimport { matchUserGroup } from '~/user/util/matchGroups';\nimport { toJS } from '~/util/ToJs';\nimport { useSSRContext } from '~/util/SSRContext';\n\nimport { Entry } from 'contensis-delivery-api/lib/models';\nimport { AppRootProps, RouteComponentProps, RouteLoaderProps } from '~/models';\n\nconst replaceDoubleSlashRecursive = (path: string) => {\n const nextPath = path.replace(/\\/\\//, '/');\n\n if (nextPath.match(/\\/\\//)) {\n return replaceDoubleSlashRecursive(nextPath);\n }\n\n return nextPath;\n};\n\nconst getTrimmedPath = path => {\n if (path !== '/') {\n const nextPath = replaceDoubleSlashRecursive(path);\n const lastChar = nextPath[nextPath.length - 1];\n if (lastChar === '/') {\n return nextPath.substring(0, nextPath.length - 1);\n }\n }\n return path;\n};\n\ninterface IReduxProps {\n contentTypeId: string | null;\n entry: Entry | null;\n isError: boolean;\n isNotFound: boolean;\n isLoading: boolean;\n isLoggedIn: boolean;\n mappedEntry: any;\n projectId: string;\n setNavigationPath: typeof setNavigationPath;\n statePath: string;\n statusCode: any;\n statusText: string;\n userGroups: any;\n}\n\nconst RouteLoader = ({\n contentTypeId,\n entry,\n isError,\n isLoading,\n isLoggedIn,\n isNotFound,\n loadingComponent,\n mappedEntry,\n notFoundComponent,\n projectId,\n routes,\n setNavigationPath,\n statePath,\n statusCode,\n statusText,\n userGroups,\n withEvents,\n trailingSlashRedirectCode = 302,\n}: AppRootProps & RouteLoaderProps & IReduxProps) => {\n const location = useLocation();\n\n // In SSR pass references to things in backing sagas\n // we cannot access in a global scope\n const ssrContext = useSSRContext();\n\n // Always ensure paths are trimmed of trailing slashes so urls are always unique\n const trimmedPath = getTrimmedPath(location.pathname);\n\n // Match any Static Routes a developer has defined\n const matchedStaticRoute = () =>\n matchRoutes(routes.StaticRoutes as RouteConfig[], location.pathname);\n const isStaticRoute = () => matchedStaticRoute().length > 0;\n\n const staticRoute = isStaticRoute() ? matchedStaticRoute()[0] : undefined;\n const routeRequiresLogin = staticRoute && staticRoute.route.requireLogin;\n\n const setPath = useCallback(() => {\n // Use serverPath to control the path we send to siteview node api to resolve a route\n let serverPath = '';\n if (staticRoute && staticRoute.match && staticRoute.match.isExact) {\n const { match, route } = staticRoute;\n\n if (route.path?.includes('*')) {\n // Send the whole url to api if we have matched route containing wildcard\n serverPath = match.url;\n } else if (typeof route.fetchNodeLevel === 'number') {\n // Send all url parts to a specified level to api\n serverPath = match.url\n .split('/')\n .splice(0, route.fetchNodeLevel + 1)\n .join('/');\n } else if (route.fetchNode?.params) {\n const fetchNodeParams: string[] = route.fetchNode.params;\n const routeParams: { [key: string]: string } = match.params;\n\n const regexExp = new RegExp(\n Object.keys(routeParams)\n .map(p => `:${p}`)\n .join('|'),\n 'g'\n );\n\n serverPath = match.path\n .replace(/\\?/g, '')\n .replace(regexExp, matched => {\n const param = matched.replace(':', '');\n if (fetchNodeParams.includes(param)) return routeParams[param];\n else return '';\n })\n .replace(/\\/$/, '');\n } else {\n // Send all non-parameterised url parts to api\n serverPath = (route.path as string)\n ?.split('/')\n .filter(p => !p.startsWith(':'))\n .join('/');\n }\n }\n\n setNavigationPath(\n serverPath || trimmedPath,\n location,\n staticRoute,\n withEvents,\n statePath,\n routes,\n ssrContext\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n setNavigationPath,\n // staticRoute,\n withEvents,\n location,\n routes,\n // statePath,\n trimmedPath,\n ]);\n\n if (typeof window == 'undefined') setPath();\n\n useEffect(() => {\n setPath();\n }, [location, setPath]);\n\n // Need to redirect when url endswith a /\n if (location.pathname.length > trimmedPath.length) {\n return (\n <Status code={trailingSlashRedirectCode}>\n <Redirect to={`${trimmedPath}${location.search}${location.hash}`} />\n </Status>\n );\n }\n\n // Render any Static Routes a developer has defined\n if (isStaticRoute() && !(!isLoggedIn && routeRequiresLogin)) {\n if (matchUserGroup(userGroups, routeRequiresLogin))\n return renderRoutes(\n routes.StaticRoutes as RouteConfig[],\n {\n projectId,\n contentTypeId,\n entry,\n mappedEntry,\n isLoggedIn,\n } as RouteComponentProps\n );\n }\n\n // Render a supplied Loading component if the route\n // is not a static route and is in a loading state\n if (isLoading && !isNotFound && loadingComponent) {\n const LoadingComponent = loadingComponent;\n return <LoadingComponent />;\n }\n\n // Match any defined Content Type Mappings\n if (contentTypeId && !(!isLoggedIn && routeRequiresLogin)) {\n const MatchedComponent = routes.ContentTypeMappings.find(\n item => item.contentTypeID === contentTypeId\n );\n\n if (MatchedComponent && !(MatchedComponent.requireLogin && !isLoggedIn)) {\n if (matchUserGroup(userGroups, MatchedComponent.requireLogin))\n return (\n <MatchedComponent.component\n projectId={projectId}\n contentTypeId={contentTypeId}\n entry={entry}\n mappedEntry={mappedEntry}\n isLoggedIn={isLoggedIn}\n />\n );\n }\n }\n\n const NotFoundComponent = notFoundComponent ? notFoundComponent : NotFound;\n if (isNotFound || isError) {\n console.info(\n `RouteLoader rendering NotFound component: statusCode ${statusCode}, isNotFound ${isNotFound}, isError ${isError}`\n );\n\n return (\n <Status code={statusCode}>\n <NotFoundComponent statusCode={statusCode} statusText={statusText} />\n </Status>\n );\n }\n\n return null;\n};\nconst mapStateToPropsMemoized = createSelector(\n selectRouteEntryContentTypeId,\n selectRouteEntry,\n selectRouteIsError,\n selectIsNotFound,\n selectRouteLoading,\n selectUserIsAuthenticated,\n selectMappedEntry,\n selectCurrentProject,\n selectCurrentPath,\n selectRouteStatusCode,\n selectRouteErrorMessage,\n selectUserGroups,\n (\n contentTypeId,\n entry,\n isError,\n isNotFound,\n isLoading,\n isLoggedIn,\n mappedEntry,\n projectId,\n statePath,\n statusCode,\n statusText,\n userGroups\n ) => ({\n contentTypeId,\n entry,\n isError,\n isNotFound,\n isLoading,\n isLoggedIn,\n mappedEntry,\n projectId,\n statePath,\n statusCode,\n statusText,\n userGroups,\n })\n);\n\nconst mapDispatchToProps = {\n setNavigationPath,\n};\n\nexport default hot(module)(\n connect(mapStateToPropsMemoized, mapDispatchToProps)(toJS(RouteLoader as any))\n) as unknown as (props: AppRootProps & RouteLoaderProps) => JSX.Element;\n"],"names":["NotFound","statusCode","statusText","React","createElement","Fragment","style","background","color","fontSize","padding","Status","code","children","Route","render","staticContext","replaceDoubleSlashRecursive","path","nextPath","replace","match","getTrimmedPath","lastChar","length","substring","RouteLoader","contentTypeId","entry","isError","isLoading","isLoggedIn","isNotFound","loadingComponent","mappedEntry","notFoundComponent","projectId","routes","setNavigationPath","statePath","userGroups","withEvents","trailingSlashRedirectCode","location","useLocation","ssrContext","useSSRContext","trimmedPath","pathname","matchedStaticRoute","matchRoutes","StaticRoutes","isStaticRoute","staticRoute","undefined","routeRequiresLogin","route","requireLogin","setPath","useCallback","serverPath","isExact","_route$path","_route$fetchNode","includes","url","fetchNodeLevel","split","splice","join","fetchNode","params","fetchNodeParams","routeParams","regexExp","RegExp","Object","keys","map","p","matched","param","_route$path2","filter","startsWith","window","useEffect","Redirect","to","search","hash","matchUserGroup","renderRoutes","LoadingComponent","MatchedComponent","ContentTypeMappings","find","item","contentTypeID","component","NotFoundComponent","console","info","mapStateToPropsMemoized","createSelector","selectRouteEntryContentTypeId","selectRouteEntry","selectRouteIsError","selectIsNotFound","selectRouteLoading","selectUserIsAuthenticated","selectMappedEntry","selectCurrentProject","selectCurrentPath","selectRouteStatusCode","selectRouteErrorMessage","selectUserGroups","mapDispatchToProps","hot","module","connect","toJS"],"mappings":"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"}
1
+ {"version":3,"file":"RouteLoader-BrUuhdcK.js","sources":["../src/routing/components/NotFound.tsx","../src/routing/components/Status.tsx","../src/routing/components/RouteLoader.tsx"],"sourcesContent":["import React from 'react';\n\nconst NotFound = ({\n statusCode,\n statusText,\n}: {\n statusCode: number;\n statusText: string;\n}) => (\n <>\n <header>\n <h1>{statusCode || '404'} Page Not Found</h1>\n {statusText && (\n <h2\n style={{\n background: '#eee',\n color: '#666',\n fontSize: '100%',\n padding: '10px',\n }}\n >\n {statusText}\n </h2>\n )}\n </header>\n </>\n);\n\nexport default NotFound;\n","import React, { PropsWithChildren } from 'react';\nimport { Route } from 'react-router-dom';\n\nexport const Status = ({\n code,\n children,\n}: PropsWithChildren<{ code: number }>) => {\n return (\n <Route\n render={({ staticContext }) => {\n if (staticContext) staticContext.statusCode = code;\n return children;\n }}\n />\n );\n};\n","import React, { useEffect, useCallback } from 'react';\nimport { connect } from 'react-redux';\nimport { hot } from 'react-hot-loader';\nimport { Redirect, useLocation } from 'react-router-dom';\nimport { renderRoutes, matchRoutes, RouteConfig } from 'react-router-config';\nimport { createSelector } from 'reselect';\n\nimport NotFound from './NotFound';\nimport { Status } from './Status';\n\nimport {\n selectCurrentPath,\n selectCurrentProject,\n selectIsNotFound,\n selectMappedEntry,\n selectRouteEntry,\n selectRouteEntryContentTypeId,\n selectRouteErrorMessage,\n selectRouteIsError,\n selectRouteLoading,\n selectRouteStatusCode,\n} from '../redux/selectors';\nimport { setNavigationPath } from '../redux/actions';\n\nimport {\n selectUserGroups,\n selectUserIsAuthenticated,\n} from '~/user/redux/selectors';\nimport { matchUserGroup } from '~/user/util/matchGroups';\nimport { toJS } from '~/util/ToJs';\nimport { useSSRContext } from '~/util/SSRContext';\n\nimport { Entry } from 'contensis-delivery-api/lib/models';\nimport { AppRootProps, RouteComponentProps, RouteLoaderProps } from '~/models';\n\nconst replaceDoubleSlashRecursive = (path: string) => {\n const nextPath = path.replace(/\\/\\//, '/');\n\n if (nextPath.match(/\\/\\//)) {\n return replaceDoubleSlashRecursive(nextPath);\n }\n\n return nextPath;\n};\n\nconst getTrimmedPath = path => {\n if (path !== '/') {\n const nextPath = replaceDoubleSlashRecursive(path);\n const lastChar = nextPath[nextPath.length - 1];\n if (lastChar === '/') {\n return nextPath.substring(0, nextPath.length - 1);\n }\n }\n return path;\n};\n\ninterface IReduxProps {\n contentTypeId: string | null;\n entry: Entry | null;\n isError: boolean;\n isNotFound: boolean;\n isLoading: boolean;\n isLoggedIn: boolean;\n mappedEntry: any;\n projectId: string;\n setNavigationPath: typeof setNavigationPath;\n statePath: string;\n statusCode: any;\n statusText: string;\n userGroups: any;\n}\n\nconst RouteLoader = ({\n contentTypeId,\n entry,\n isError,\n isLoading,\n isLoggedIn,\n isNotFound,\n loadingComponent,\n mappedEntry,\n notFoundComponent,\n projectId,\n routes,\n setNavigationPath,\n statePath,\n statusCode,\n statusText,\n userGroups,\n withEvents,\n trailingSlashRedirectCode = 302,\n}: AppRootProps & RouteLoaderProps & IReduxProps) => {\n const location = useLocation();\n\n // In SSR pass references to things in backing sagas\n // we cannot access in a global scope\n const ssrContext = useSSRContext();\n\n // Always ensure paths are trimmed of trailing slashes so urls are always unique\n const trimmedPath = getTrimmedPath(location.pathname);\n\n // Match any Static Routes a developer has defined\n const matchedStaticRoute = () =>\n matchRoutes(routes.StaticRoutes as RouteConfig[], location.pathname);\n const isStaticRoute = () => matchedStaticRoute().length > 0;\n\n const staticRoute = isStaticRoute() ? matchedStaticRoute()[0] : undefined;\n const routeRequiresLogin = staticRoute && staticRoute.route.requireLogin;\n\n const setPath = useCallback(() => {\n // Use serverPath to control the path we send to siteview node api to resolve a route\n let serverPath = '';\n if (staticRoute && staticRoute.match && staticRoute.match.isExact) {\n const { match, route } = staticRoute;\n\n if (route.path?.includes('*')) {\n // Send the whole url to api if we have matched route containing wildcard\n serverPath = match.url;\n } else if (typeof route.fetchNodeLevel === 'number') {\n // Send all url parts to a specified level to api\n serverPath = match.url\n .split('/')\n .splice(0, route.fetchNodeLevel + 1)\n .join('/');\n } else if (route.fetchNode?.params) {\n const fetchNodeParams: string[] = route.fetchNode.params;\n const routeParams: { [key: string]: string } = match.params;\n\n const regexExp = new RegExp(\n Object.keys(routeParams)\n .map(p => `:${p}`)\n .join('|'),\n 'g'\n );\n\n serverPath = match.path\n .replace(/\\?/g, '')\n .replace(regexExp, matched => {\n const param = matched.replace(':', '');\n if (fetchNodeParams.includes(param)) return routeParams[param];\n else return '';\n })\n .replace(/\\/$/, '');\n } else {\n // Send all non-parameterised url parts to api\n serverPath = (route.path as string)\n ?.split('/')\n .filter(p => !p.startsWith(':'))\n .join('/');\n }\n }\n\n setNavigationPath(\n serverPath || trimmedPath,\n location,\n staticRoute,\n withEvents,\n statePath,\n routes,\n ssrContext\n );\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [\n setNavigationPath,\n // staticRoute,\n withEvents,\n location,\n routes,\n // statePath,\n trimmedPath,\n ]);\n\n if (typeof window == 'undefined') setPath();\n\n useEffect(() => {\n setPath();\n }, [location, setPath]);\n\n // Need to redirect when url endswith a /\n if (location.pathname.length > trimmedPath.length) {\n return (\n <Status code={trailingSlashRedirectCode}>\n <Redirect to={`${trimmedPath}${location.search}${location.hash}`} />\n </Status>\n );\n }\n\n // Render any Static Routes a developer has defined\n if (isStaticRoute() && !(!isLoggedIn && routeRequiresLogin)) {\n if (matchUserGroup(userGroups, routeRequiresLogin))\n return renderRoutes(\n routes.StaticRoutes as RouteConfig[],\n {\n projectId,\n contentTypeId,\n entry,\n mappedEntry,\n isLoggedIn,\n } as RouteComponentProps\n );\n }\n\n // Render a supplied Loading component if the route\n // is not a static route and is in a loading state\n if (isLoading && !isNotFound && loadingComponent) {\n const LoadingComponent = loadingComponent;\n return <LoadingComponent />;\n }\n\n // Match any defined Content Type Mappings\n if (contentTypeId && !(!isLoggedIn && routeRequiresLogin)) {\n const MatchedComponent = routes.ContentTypeMappings.find(\n item => item.contentTypeID === contentTypeId\n );\n\n if (MatchedComponent && !(MatchedComponent.requireLogin && !isLoggedIn)) {\n if (matchUserGroup(userGroups, MatchedComponent.requireLogin))\n return (\n <MatchedComponent.component\n projectId={projectId}\n contentTypeId={contentTypeId}\n entry={entry}\n mappedEntry={mappedEntry}\n isLoggedIn={isLoggedIn}\n />\n );\n }\n }\n\n const NotFoundComponent = notFoundComponent ? notFoundComponent : NotFound;\n if (isNotFound || isError) {\n console.info(\n `RouteLoader rendering NotFound component: statusCode ${statusCode}, isNotFound ${isNotFound}, isError ${isError}`\n );\n\n return (\n <Status code={statusCode}>\n <NotFoundComponent statusCode={statusCode} statusText={statusText} />\n </Status>\n );\n }\n\n return null;\n};\nconst mapStateToPropsMemoized = createSelector(\n selectRouteEntryContentTypeId,\n selectRouteEntry,\n selectRouteIsError,\n selectIsNotFound,\n selectRouteLoading,\n selectUserIsAuthenticated,\n selectMappedEntry,\n selectCurrentProject,\n selectCurrentPath,\n selectRouteStatusCode,\n selectRouteErrorMessage,\n selectUserGroups,\n (\n contentTypeId,\n entry,\n isError,\n isNotFound,\n isLoading,\n isLoggedIn,\n mappedEntry,\n projectId,\n statePath,\n statusCode,\n statusText,\n userGroups\n ) => ({\n contentTypeId,\n entry,\n isError,\n isNotFound,\n isLoading,\n isLoggedIn,\n mappedEntry,\n projectId,\n statePath,\n statusCode,\n statusText,\n userGroups,\n })\n);\n\nconst mapDispatchToProps = {\n setNavigationPath,\n};\n\nexport default hot(module)(\n connect(mapStateToPropsMemoized, mapDispatchToProps)(toJS(RouteLoader as any))\n) as unknown as (props: AppRootProps & RouteLoaderProps) => JSX.Element;\n"],"names":["NotFound","statusCode","statusText","React","createElement","Fragment","style","background","color","fontSize","padding","Status","code","children","Route","render","staticContext","replaceDoubleSlashRecursive","path","nextPath","replace","match","getTrimmedPath","lastChar","length","substring","RouteLoader","contentTypeId","entry","isError","isLoading","isLoggedIn","isNotFound","loadingComponent","mappedEntry","notFoundComponent","projectId","routes","setNavigationPath","statePath","userGroups","withEvents","trailingSlashRedirectCode","location","useLocation","ssrContext","useSSRContext","trimmedPath","pathname","matchedStaticRoute","matchRoutes","StaticRoutes","isStaticRoute","staticRoute","undefined","routeRequiresLogin","route","requireLogin","setPath","useCallback","serverPath","isExact","_route$path","_route$fetchNode","includes","url","fetchNodeLevel","split","splice","join","fetchNode","params","fetchNodeParams","routeParams","regexExp","RegExp","Object","keys","map","p","matched","param","_route$path2","filter","startsWith","window","useEffect","Redirect","to","search","hash","matchUserGroup","renderRoutes","LoadingComponent","MatchedComponent","ContentTypeMappings","find","item","contentTypeID","component","NotFoundComponent","console","info","mapStateToPropsMemoized","createSelector","selectRouteEntryContentTypeId","selectRouteEntry","selectRouteIsError","selectIsNotFound","selectRouteLoading","selectUserIsAuthenticated","selectMappedEntry","selectCurrentProject","selectCurrentPath","selectRouteStatusCode","selectRouteErrorMessage","selectUserGroups","mapDispatchToProps","hot","module","connect","toJS"],"mappings":"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"}
@@ -5,13 +5,13 @@ var reactCookie = require('react-cookie');
5
5
  var reactRedux = require('react-redux');
6
6
  var contensisDeliveryApi = require('contensis-delivery-api');
7
7
  var queryString = require('query-string');
8
- var selectors = require('./selectors-d5cd6b19.js');
9
- var store = require('./store-0ef9b570.js');
10
- var CookieHelper_class = require('./CookieHelper.class-e0908573.js');
8
+ var selectors = require('./selectors-wCs5fHD4.js');
9
+ var store = require('./store-D8dJBaFw.js');
10
+ var CookieHelper_class = require('./CookieHelper.class-CNL3lC5D.js');
11
11
 
12
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
12
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
13
13
 
14
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
14
+ var React__default = /*#__PURE__*/_interopDefault(React);
15
15
 
16
16
  class CacheNode {
17
17
  constructor(key, value) {
@@ -89,8 +89,6 @@ class CachedSearch {
89
89
  constructor(ssr) {
90
90
  var _this$ssr;
91
91
  this.cache = new LruCache();
92
- this.cookies = void 0;
93
- this.ssr = void 0;
94
92
  this.ssr = ssr;
95
93
  this.cookies = (_this$ssr = this.ssr) === null || _this$ssr === void 0 ? void 0 : _this$ssr.cookies.raw;
96
94
  }
@@ -196,7 +194,7 @@ const storeSurrogateKeys = ssr => response => {
196
194
  // concurrent loads and exists here as a best effort fallback
197
195
  // in case the SSRContext is not provided
198
196
  const put = (ssr === null || ssr === void 0 ? void 0 : ssr.dispatch) || (store.reduxStore === null || store.reduxStore === void 0 ? void 0 : store.reduxStore.dispatch);
199
- put === null || put === void 0 ? void 0 : put(selectors.setSurrogateKeys(keys, response.url, response.status));
197
+ put === null || put === void 0 || put(selectors.setSurrogateKeys(keys, response.url, response.status));
200
198
  };
201
199
 
202
200
  /**
@@ -214,14 +212,12 @@ const deliveryApiConfig = ssr => {
214
212
  // request surrogate-key response header
215
213
  'x-crb-ssr': 'true' // add this for support tracing
216
214
  };
217
-
218
215
  if (ssr) config.defaultHeaders.referer = getSsrReferer(ssr); // add this for support tracing
219
216
 
220
217
  config.responseHandler = {
221
218
  [200]: storeSurrogateKeys(ssr)
222
219
  }; // for handling page cache invalidation
223
220
  }
224
-
225
221
  if (typeof window !== 'undefined' && PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */) {
226
222
  // ensure a relative url is used to bypass the need for CORS (separate OPTIONS calls)
227
223
  config.rootUrl = '';
@@ -251,8 +247,6 @@ const getClientConfig = (project, ssr) => {
251
247
 
252
248
  class DeliveryApi {
253
249
  constructor(ssr) {
254
- this.cookies = void 0;
255
- this.ssr = void 0;
256
250
  this.getClientSideVersionStatus = () => {
257
251
  if (typeof window !== 'undefined') {
258
252
  // Allow overriding versionStatus with the querystring
@@ -346,7 +340,7 @@ const SSRContextProvider = ({
346
340
  request,
347
341
  response
348
342
  });
349
- return /*#__PURE__*/React__default["default"].createElement(SSRContext.Provider, {
343
+ return /*#__PURE__*/React__default.default.createElement(SSRContext.Provider, {
350
344
  value: {
351
345
  ...context
352
346
  }
@@ -368,4 +362,4 @@ exports.deliveryApiWithCookies = deliveryApiWithCookies;
368
362
  exports.getClientConfig = getClientConfig;
369
363
  exports.useDeliveryApi = useDeliveryApi;
370
364
  exports.useSSRContext = useSSRContext;
371
- //# sourceMappingURL=SSRContext-79344de2.js.map
365
+ //# sourceMappingURL=SSRContext-CmXDzwPL.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SSRContext-79344de2.js","sources":["../src/util/LruCache.js","../src/util/CachedDeliveryApi.ts","../src/util/ContensisDeliveryApi.ts","../src/util/SSRContext.tsx"],"sourcesContent":["class CacheNode {\n constructor(key, value) {\n this.key = key;\n this.value = value;\n this.next = null;\n this.prev = null;\n }\n}\n\nexport class LruCache {\n constructor(limit = 100) {\n this.map = {};\n this.head = null;\n this.tail = null;\n this.limit = limit || 100;\n this.size = 0;\n }\n\n get(key) {\n if (this.map[key]) {\n let value = this.map[key].value;\n let node = new CacheNode(key, value);\n this.remove(key);\n this.setHead(node);\n return value;\n }\n }\n\n set(key, value) {\n let node = new CacheNode(key, value);\n if (this.map[key]) {\n this.remove(key);\n } else {\n if (this.size >= this.limit) {\n delete this.map[this.tail.key];\n this.size--;\n this.tail = this.tail.prev;\n this.tail.next = null;\n }\n }\n this.setHead(node);\n }\n\n setHead(node) {\n node.next = this.head;\n node.prev = null;\n if (this.head) {\n this.head.prev = node;\n }\n this.head = node;\n if (!this.tail) {\n this.tail = node;\n }\n this.size++;\n this.map[node.key] = node;\n }\n\n remove(key) {\n let node = this.map[key];\n if (!node) return; // This is sometimes null and crashes the container without this check\n\n if (node.prev) {\n node.prev.next = node.next;\n } else {\n this.head = node.next;\n }\n if (node.next) {\n node.next.prev = node.prev;\n } else {\n this.tail = node.prev;\n }\n delete this.map[key];\n this.size--;\n }\n}\n","import { VersionStatus } from 'contensis-core-api';\nimport { Client, Query } from 'contensis-delivery-api';\nimport {\n INodeOperations,\n NodeGetRootOptions,\n} from 'contensis-delivery-api/lib/models';\n\nimport {\n DeliveryApi,\n SSRContext,\n getClientConfig,\n} from './ContensisDeliveryApi';\nimport { LruCache } from './LruCache';\nimport { CookieObject } from '~/user/util/CookieConstants';\n\n// CachedSearch does not cache results in SSR by design\nclass CachedSearch {\n cache = new LruCache();\n cookies?: CookieObject;\n ssr?: SSRContext;\n\n constructor(ssr?: SSRContext) {\n this.ssr = ssr;\n this.cookies = this.ssr?.cookies.raw;\n }\n\n getClient(...args: Parameters<DeliveryApi['getClient']>) {\n return new DeliveryApi(this.ssr).getClient(...args);\n }\n\n search(query: Query, linkDepth = 0, project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project}+${JSON.stringify(query)}+${linkDepth}`,\n () => client.entries.search(query, linkDepth)\n );\n }\n\n searchUsingPost(query: Query, linkDepth = 0, project = '') {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project}+${JSON.stringify(query)}+${linkDepth}`,\n () => (client.entries as any).searchUsingPost(query, linkDepth)\n );\n }\n\n get(\n id: string,\n linkDepth = 0,\n versionStatus: VersionStatus = 'published',\n project?: string,\n fields?: string[]\n ) {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return this.request(id, () =>\n client.entries.get({ id, linkDepth, fields })\n );\n }\n\n getContentType(id: string, project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(`[CONTENT TYPE] ${id} ${project}`, () =>\n client.contentTypes.get(id)\n );\n }\n\n getRootNode(\n options: NodeGetRootOptions,\n versionStatus: VersionStatus = 'published',\n project?: string\n ) {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return this.request(`${project} / ${JSON.stringify(options)}`, () =>\n client.nodes.getRoot(options)\n );\n }\n\n getNode(options: Parameters<INodeOperations['get']>[0], project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} ${\n options && typeof options !== 'string'\n ? 'path' in options\n ? options.path\n : options.id\n : options\n } ${JSON.stringify(options)}`,\n () => client.nodes.get(options)\n );\n }\n\n getAncestors(\n options: Parameters<INodeOperations['getAncestors']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [A] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getAncestors(options)\n );\n }\n\n getChildren(\n options: Parameters<INodeOperations['getChildren']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [C] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getChildren(options)\n );\n }\n\n getSiblings(\n options: Parameters<INodeOperations['getSiblings']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [S] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getSiblings(options)\n );\n }\n\n request<T extends () => Promise<any>>(key: string, execute: T) {\n // do not cache results in SSR\n if (!this.cache.get(key) || typeof window == 'undefined') {\n const promise = execute();\n this.cache.set(key, promise);\n promise.catch(() => {\n this.cache.remove(key);\n });\n }\n return this.cache.get(key) as ReturnType<T>;\n }\n}\n\nexport const cachedSearch = new CachedSearch();\nexport const cachedSearchWithCookies = (ssr?: SSRContext) =>\n new CachedSearch(ssr);\n","import { VersionStatus } from 'contensis-core-api';\nimport { Client, Query } from 'contensis-delivery-api';\nimport { Config } from 'contensis-delivery-api/lib/models';\nimport { parse } from 'query-string';\nimport { setSurrogateKeys } from '~/routing/redux/actions';\nimport { reduxStore } from '~/redux/store/store';\n\nimport { CookieObject, findLoginCookies } from '~/user/util/CookieConstants';\nimport { Request } from 'express';\nimport { IncomingHttpHeaders } from 'http';\nimport { SSRContext as SSRContextType } from '~/models';\n\nexport type SSRContext = Omit<SSRContextType, 'api'>;\n\nconst mapCookieHeader = (cookies: CookieObject | string) =>\n typeof cookies === 'object'\n ? Object.entries(cookies)\n .map(([name, value]) => `${name}=${value}`)\n .join('; ')\n : cookies;\n\nconst getSsrReferer = ({ request }: SSRContext) => {\n if (request) {\n try {\n const url = new URL(\n request.url,\n `${request.protocol || `http`}://${request.headers.host}`\n );\n return url.href;\n } catch (ex) {\n console.error(\n `getSsrReferer cannot parse url ${request.url} and host ${request.headers.host}`\n );\n\n return request.url;\n }\n }\n\n // if (typeof window === 'undefined') {\n // const state = reduxStore.getState();\n // const referer = `${selectCurrentHostname(state)}${selectCurrentPath(\n // state\n // )}${selectCurrentSearch(state)}`;\n\n // return referer;\n // }\n return '';\n};\n\n/**\n * Store the surrogate-key header contents in redux state to output in SSR response\n */\nconst storeSurrogateKeys = (ssr?: SSRContext) => (response: any) => {\n let keys = '';\n if (response.status === 200) {\n keys = response.headers.get\n ? response.headers.get('surrogate-key')\n : response.headers.map['surrogate-key'];\n if (!keys) console.info(`[storeSurrogateKeys] No keys in ${response.url}`);\n }\n // Using imported reduxStore in SSR is unreliable during high\n // concurrent loads and exists here as a best effort fallback\n // in case the SSRContext is not provided\n const put = ssr?.dispatch || reduxStore?.dispatch;\n put?.(setSurrogateKeys(keys, response.url, response.status));\n};\n\n/**\n * Create a new Config object to create a DeliveryAPI Client\n */\nconst deliveryApiConfig = (ssr?: SSRContext) => {\n const config: Config = {\n ...DELIVERY_API_CONFIG /* global DELIVERY_API_CONFIG */,\n };\n\n // Add SSR headers and handlers\n if (typeof window === 'undefined') {\n config.defaultHeaders = {\n 'x-require-surrogate-key': 'true', // request surrogate-key response header\n 'x-crb-ssr': 'true', // add this for support tracing\n };\n if (ssr) config.defaultHeaders.referer = getSsrReferer(ssr); // add this for support tracing\n\n config.responseHandler = { [200]: storeSurrogateKeys(ssr) }; // for handling page cache invalidation\n }\n\n if (\n typeof window !== 'undefined' &&\n PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */\n ) {\n // ensure a relative url is used to bypass the need for CORS (separate OPTIONS calls)\n config.rootUrl = '';\n config.responseHandler = { [404]: () => null };\n }\n return config;\n};\n\nexport const getClientConfig = (project?: string, ssr?: SSRContext) => {\n const config = deliveryApiConfig(ssr);\n\n if (project) {\n config.projectId = project;\n }\n\n if (ssr?.cookies) {\n const cookieHeader = mapCookieHeader(findLoginCookies(ssr.cookies));\n if (cookieHeader) {\n config.defaultHeaders = Object.assign(config.defaultHeaders || {}, {\n Cookie: cookieHeader,\n });\n }\n }\n\n return config;\n};\n\n// export * from 'contensis-delivery-api';\n\ndeclare let window: Window &\n typeof globalThis & {\n versionStatus?: VersionStatus;\n };\n\nexport class DeliveryApi {\n cookies?: CookieObject;\n ssr?: SSRContext;\n\n constructor(ssr?: SSRContext) {\n this.ssr = ssr;\n this.cookies = ssr?.cookies.raw;\n }\n\n getClientSideVersionStatus = () => {\n if (typeof window !== 'undefined') {\n // Allow overriding versionStatus with the querystring\n const { versionStatus } = parse(window.location.search);\n if (versionStatus) return versionStatus;\n // Client-side we will have a global variable set if rendered by SSR in production\n if (typeof window.versionStatus !== 'undefined')\n return window.versionStatus;\n // For localhost development we can only work out versionStatus from the current hostname\n const currentHostname = window.location.hostname;\n return this.getVersionStatusFromHostname(currentHostname);\n }\n return null;\n };\n\n getServerSideVersionStatus = (request: Request) =>\n request.query.versionStatus ||\n deliveryApi.getVersionStatusFromHeaders(request.headers) ||\n deliveryApi.getVersionStatusFromHostname(request.hostname);\n\n getVersionStatusFromHeaders = (headers: IncomingHttpHeaders) => {\n const versionStatusHeader = headers['x-entry-versionstatus'];\n if (typeof versionStatusHeader !== 'undefined') return versionStatusHeader;\n return null;\n };\n\n getVersionStatusFromHostname = (currentHostname: string) => {\n if (currentHostname.indexOf('localhost') > -1) return 'latest';\n\n if (currentHostname.endsWith('contensis.cloud')) {\n if (currentHostname.indexOf('preview.') > -1) {\n return 'latest';\n } else {\n return 'published';\n }\n }\n\n if (currentHostname.endsWith('cloud.contensis.com')) {\n if (currentHostname.indexOf('preview-') > -1) {\n return 'latest';\n } else {\n return 'published';\n }\n }\n\n return 'published';\n };\n\n search = (query: Query, linkDepth = 0, project?: string) => {\n const client = Client.create(getClientConfig(project, this.ssr));\n return client.entries.search(\n query,\n typeof linkDepth !== 'undefined' ? linkDepth : 1\n );\n };\n\n getClient = (versionStatus: VersionStatus = 'published', project?: string) =>\n Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n\n getEntry = (\n id: string,\n linkDepth = 0,\n versionStatus: VersionStatus = 'published',\n project?: string\n ) => {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return client.entries.get({ id, linkDepth });\n };\n}\n\nexport const deliveryApi = new DeliveryApi();\n\nexport const deliveryApiWithCookies = (ssr?: SSRContext) =>\n new DeliveryApi(ssr);\n\nexport * from './CachedDeliveryApi';\n","import { Request, Response } from 'express';\nimport React, {\n PropsWithChildren,\n createContext,\n useContext,\n useState,\n} from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useDispatch } from 'react-redux';\nimport { SSRContext as SSRContextType } from '~/models';\nimport { cachedSearchWithCookies } from '~/util/CachedDeliveryApi';\nimport { CookieHelper } from '~/user/util/CookieHelper.class';\n\nconst SSRContext = createContext<SSRContextType | null>(null);\n\n/** SSRContextProvider allows us to hold and access request-scoped references\n * throughout the component tree\n *\n * adding this in client side allows consumers to write universal code and use\n * the same helpers and refs as in SSR */\nexport const SSRContextProvider = ({\n children,\n request,\n response,\n}: PropsWithChildren<{ request?: Request; response?: Response }>) => {\n // In SSR pass references to things in backing sagas\n // we cannot access in a global scope\n const dispatch = useDispatch();\n const cookies = new CookieHelper(...useCookies());\n const api = cachedSearchWithCookies({ cookies, dispatch, request, response });\n\n const [context] = useState<SSRContextType>({\n api,\n cookies,\n dispatch,\n request,\n response,\n });\n\n return (\n <SSRContext.Provider value={{ ...context }}>{children}</SSRContext.Provider>\n );\n};\n\nexport const useSSRContext = () => useContext(SSRContext) as SSRContextType;\n\nexport const useDeliveryApi = () => {\n const { api } = useSSRContext();\n return api;\n};\n"],"names":["CacheNode","constructor","key","value","next","prev","LruCache","limit","map","head","tail","size","get","node","remove","setHead","set","CachedSearch","ssr","_this$ssr","cache","cookies","raw","getClient","args","DeliveryApi","search","query","linkDepth","project","client","Client","create","getClientConfig","request","JSON","stringify","entries","searchUsingPost","id","versionStatus","fields","getContentType","contentTypes","getRootNode","options","nodes","getRoot","getNode","path","getAncestors","getChildren","getSiblings","execute","window","promise","catch","cachedSearch","cachedSearchWithCookies","mapCookieHeader","Object","name","join","getSsrReferer","url","URL","protocol","headers","host","href","ex","console","error","storeSurrogateKeys","response","keys","status","info","put","dispatch","reduxStore","setSurrogateKeys","deliveryApiConfig","config","DELIVERY_API_CONFIG","defaultHeaders","referer","responseHandler","PROXY_DELIVERY_API","rootUrl","projectId","cookieHeader","findLoginCookies","assign","Cookie","getClientSideVersionStatus","parse","location","currentHostname","hostname","getVersionStatusFromHostname","getServerSideVersionStatus","deliveryApi","getVersionStatusFromHeaders","versionStatusHeader","indexOf","endsWith","getEntry","deliveryApiWithCookies","SSRContext","createContext","SSRContextProvider","children","useDispatch","CookieHelper","useCookies","api","context","useState","React","createElement","Provider","useSSRContext","useContext","useDeliveryApi"],"mappings":"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"}
1
+ {"version":3,"file":"SSRContext-CmXDzwPL.js","sources":["../src/util/LruCache.js","../src/util/CachedDeliveryApi.ts","../src/util/ContensisDeliveryApi.ts","../src/util/SSRContext.tsx"],"sourcesContent":["class CacheNode {\n constructor(key, value) {\n this.key = key;\n this.value = value;\n this.next = null;\n this.prev = null;\n }\n}\n\nexport class LruCache {\n constructor(limit = 100) {\n this.map = {};\n this.head = null;\n this.tail = null;\n this.limit = limit || 100;\n this.size = 0;\n }\n\n get(key) {\n if (this.map[key]) {\n let value = this.map[key].value;\n let node = new CacheNode(key, value);\n this.remove(key);\n this.setHead(node);\n return value;\n }\n }\n\n set(key, value) {\n let node = new CacheNode(key, value);\n if (this.map[key]) {\n this.remove(key);\n } else {\n if (this.size >= this.limit) {\n delete this.map[this.tail.key];\n this.size--;\n this.tail = this.tail.prev;\n this.tail.next = null;\n }\n }\n this.setHead(node);\n }\n\n setHead(node) {\n node.next = this.head;\n node.prev = null;\n if (this.head) {\n this.head.prev = node;\n }\n this.head = node;\n if (!this.tail) {\n this.tail = node;\n }\n this.size++;\n this.map[node.key] = node;\n }\n\n remove(key) {\n let node = this.map[key];\n if (!node) return; // This is sometimes null and crashes the container without this check\n\n if (node.prev) {\n node.prev.next = node.next;\n } else {\n this.head = node.next;\n }\n if (node.next) {\n node.next.prev = node.prev;\n } else {\n this.tail = node.prev;\n }\n delete this.map[key];\n this.size--;\n }\n}\n","import { VersionStatus } from 'contensis-core-api';\nimport { Client, Query } from 'contensis-delivery-api';\nimport {\n INodeOperations,\n NodeGetRootOptions,\n} from 'contensis-delivery-api/lib/models';\n\nimport {\n DeliveryApi,\n SSRContext,\n getClientConfig,\n} from './ContensisDeliveryApi';\nimport { LruCache } from './LruCache';\nimport { CookieObject } from '~/user/util/CookieConstants';\n\n// CachedSearch does not cache results in SSR by design\nclass CachedSearch {\n cache = new LruCache();\n cookies?: CookieObject;\n ssr?: SSRContext;\n\n constructor(ssr?: SSRContext) {\n this.ssr = ssr;\n this.cookies = this.ssr?.cookies.raw;\n }\n\n getClient(...args: Parameters<DeliveryApi['getClient']>) {\n return new DeliveryApi(this.ssr).getClient(...args);\n }\n\n search(query: Query, linkDepth = 0, project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project}+${JSON.stringify(query)}+${linkDepth}`,\n () => client.entries.search(query, linkDepth)\n );\n }\n\n searchUsingPost(query: Query, linkDepth = 0, project = '') {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project}+${JSON.stringify(query)}+${linkDepth}`,\n () => (client.entries as any).searchUsingPost(query, linkDepth)\n );\n }\n\n get(\n id: string,\n linkDepth = 0,\n versionStatus: VersionStatus = 'published',\n project?: string,\n fields?: string[]\n ) {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return this.request(id, () =>\n client.entries.get({ id, linkDepth, fields })\n );\n }\n\n getContentType(id: string, project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(`[CONTENT TYPE] ${id} ${project}`, () =>\n client.contentTypes.get(id)\n );\n }\n\n getRootNode(\n options: NodeGetRootOptions,\n versionStatus: VersionStatus = 'published',\n project?: string\n ) {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return this.request(`${project} / ${JSON.stringify(options)}`, () =>\n client.nodes.getRoot(options)\n );\n }\n\n getNode(options: Parameters<INodeOperations['get']>[0], project?: string) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} ${\n options && typeof options !== 'string'\n ? 'path' in options\n ? options.path\n : options.id\n : options\n } ${JSON.stringify(options)}`,\n () => client.nodes.get(options)\n );\n }\n\n getAncestors(\n options: Parameters<INodeOperations['getAncestors']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [A] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getAncestors(options)\n );\n }\n\n getChildren(\n options: Parameters<INodeOperations['getChildren']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [C] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getChildren(options)\n );\n }\n\n getSiblings(\n options: Parameters<INodeOperations['getSiblings']>[0],\n project?: string\n ) {\n const client = Client.create(getClientConfig(project, this.ssr));\n return this.request(\n `${project} [S] ${\n (options && typeof options !== 'string' && options.id) || options\n } ${JSON.stringify(options)}`,\n () => client.nodes.getSiblings(options)\n );\n }\n\n request<T extends () => Promise<any>>(key: string, execute: T) {\n // do not cache results in SSR\n if (!this.cache.get(key) || typeof window == 'undefined') {\n const promise = execute();\n this.cache.set(key, promise);\n promise.catch(() => {\n this.cache.remove(key);\n });\n }\n return this.cache.get(key) as ReturnType<T>;\n }\n}\n\nexport const cachedSearch = new CachedSearch();\nexport const cachedSearchWithCookies = (ssr?: SSRContext) =>\n new CachedSearch(ssr);\n","import { VersionStatus } from 'contensis-core-api';\nimport { Client, Query } from 'contensis-delivery-api';\nimport { Config } from 'contensis-delivery-api/lib/models';\nimport { parse } from 'query-string';\nimport { setSurrogateKeys } from '~/routing/redux/actions';\nimport { reduxStore } from '~/redux/store/store';\n\nimport { CookieObject, findLoginCookies } from '~/user/util/CookieConstants';\nimport { Request } from 'express';\nimport { IncomingHttpHeaders } from 'http';\nimport { SSRContext as SSRContextType } from '~/models';\n\nexport type SSRContext = Omit<SSRContextType, 'api'>;\n\nconst mapCookieHeader = (cookies: CookieObject | string) =>\n typeof cookies === 'object'\n ? Object.entries(cookies)\n .map(([name, value]) => `${name}=${value}`)\n .join('; ')\n : cookies;\n\nconst getSsrReferer = ({ request }: SSRContext) => {\n if (request) {\n try {\n const url = new URL(\n request.url,\n `${request.protocol || `http`}://${request.headers.host}`\n );\n return url.href;\n } catch (ex) {\n console.error(\n `getSsrReferer cannot parse url ${request.url} and host ${request.headers.host}`\n );\n\n return request.url;\n }\n }\n\n // if (typeof window === 'undefined') {\n // const state = reduxStore.getState();\n // const referer = `${selectCurrentHostname(state)}${selectCurrentPath(\n // state\n // )}${selectCurrentSearch(state)}`;\n\n // return referer;\n // }\n return '';\n};\n\n/**\n * Store the surrogate-key header contents in redux state to output in SSR response\n */\nconst storeSurrogateKeys = (ssr?: SSRContext) => (response: any) => {\n let keys = '';\n if (response.status === 200) {\n keys = response.headers.get\n ? response.headers.get('surrogate-key')\n : response.headers.map['surrogate-key'];\n if (!keys) console.info(`[storeSurrogateKeys] No keys in ${response.url}`);\n }\n // Using imported reduxStore in SSR is unreliable during high\n // concurrent loads and exists here as a best effort fallback\n // in case the SSRContext is not provided\n const put = ssr?.dispatch || reduxStore?.dispatch;\n put?.(setSurrogateKeys(keys, response.url, response.status));\n};\n\n/**\n * Create a new Config object to create a DeliveryAPI Client\n */\nconst deliveryApiConfig = (ssr?: SSRContext) => {\n const config: Config = {\n ...DELIVERY_API_CONFIG /* global DELIVERY_API_CONFIG */,\n };\n\n // Add SSR headers and handlers\n if (typeof window === 'undefined') {\n config.defaultHeaders = {\n 'x-require-surrogate-key': 'true', // request surrogate-key response header\n 'x-crb-ssr': 'true', // add this for support tracing\n };\n if (ssr) config.defaultHeaders.referer = getSsrReferer(ssr); // add this for support tracing\n\n config.responseHandler = { [200]: storeSurrogateKeys(ssr) }; // for handling page cache invalidation\n }\n\n if (\n typeof window !== 'undefined' &&\n PROXY_DELIVERY_API /* global PROXY_DELIVERY_API */\n ) {\n // ensure a relative url is used to bypass the need for CORS (separate OPTIONS calls)\n config.rootUrl = '';\n config.responseHandler = { [404]: () => null };\n }\n return config;\n};\n\nexport const getClientConfig = (project?: string, ssr?: SSRContext) => {\n const config = deliveryApiConfig(ssr);\n\n if (project) {\n config.projectId = project;\n }\n\n if (ssr?.cookies) {\n const cookieHeader = mapCookieHeader(findLoginCookies(ssr.cookies));\n if (cookieHeader) {\n config.defaultHeaders = Object.assign(config.defaultHeaders || {}, {\n Cookie: cookieHeader,\n });\n }\n }\n\n return config;\n};\n\n// export * from 'contensis-delivery-api';\n\ndeclare let window: Window &\n typeof globalThis & {\n versionStatus?: VersionStatus;\n };\n\nexport class DeliveryApi {\n cookies?: CookieObject;\n ssr?: SSRContext;\n\n constructor(ssr?: SSRContext) {\n this.ssr = ssr;\n this.cookies = ssr?.cookies.raw;\n }\n\n getClientSideVersionStatus = () => {\n if (typeof window !== 'undefined') {\n // Allow overriding versionStatus with the querystring\n const { versionStatus } = parse(window.location.search);\n if (versionStatus) return versionStatus;\n // Client-side we will have a global variable set if rendered by SSR in production\n if (typeof window.versionStatus !== 'undefined')\n return window.versionStatus;\n // For localhost development we can only work out versionStatus from the current hostname\n const currentHostname = window.location.hostname;\n return this.getVersionStatusFromHostname(currentHostname);\n }\n return null;\n };\n\n getServerSideVersionStatus = (request: Request) =>\n request.query.versionStatus ||\n deliveryApi.getVersionStatusFromHeaders(request.headers) ||\n deliveryApi.getVersionStatusFromHostname(request.hostname);\n\n getVersionStatusFromHeaders = (headers: IncomingHttpHeaders) => {\n const versionStatusHeader = headers['x-entry-versionstatus'];\n if (typeof versionStatusHeader !== 'undefined') return versionStatusHeader;\n return null;\n };\n\n getVersionStatusFromHostname = (currentHostname: string) => {\n if (currentHostname.indexOf('localhost') > -1) return 'latest';\n\n if (currentHostname.endsWith('contensis.cloud')) {\n if (currentHostname.indexOf('preview.') > -1) {\n return 'latest';\n } else {\n return 'published';\n }\n }\n\n if (currentHostname.endsWith('cloud.contensis.com')) {\n if (currentHostname.indexOf('preview-') > -1) {\n return 'latest';\n } else {\n return 'published';\n }\n }\n\n return 'published';\n };\n\n search = (query: Query, linkDepth = 0, project?: string) => {\n const client = Client.create(getClientConfig(project, this.ssr));\n return client.entries.search(\n query,\n typeof linkDepth !== 'undefined' ? linkDepth : 1\n );\n };\n\n getClient = (versionStatus: VersionStatus = 'published', project?: string) =>\n Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n\n getEntry = (\n id: string,\n linkDepth = 0,\n versionStatus: VersionStatus = 'published',\n project?: string\n ) => {\n const client = Client.create({\n ...getClientConfig(project, this.ssr),\n versionStatus,\n });\n return client.entries.get({ id, linkDepth });\n };\n}\n\nexport const deliveryApi = new DeliveryApi();\n\nexport const deliveryApiWithCookies = (ssr?: SSRContext) =>\n new DeliveryApi(ssr);\n\nexport * from './CachedDeliveryApi';\n","import { Request, Response } from 'express';\nimport React, {\n PropsWithChildren,\n createContext,\n useContext,\n useState,\n} from 'react';\nimport { useCookies } from 'react-cookie';\nimport { useDispatch } from 'react-redux';\nimport { SSRContext as SSRContextType } from '~/models';\nimport { cachedSearchWithCookies } from '~/util/CachedDeliveryApi';\nimport { CookieHelper } from '~/user/util/CookieHelper.class';\n\nconst SSRContext = createContext<SSRContextType | null>(null);\n\n/** SSRContextProvider allows us to hold and access request-scoped references\n * throughout the component tree\n *\n * adding this in client side allows consumers to write universal code and use\n * the same helpers and refs as in SSR */\nexport const SSRContextProvider = ({\n children,\n request,\n response,\n}: PropsWithChildren<{ request?: Request; response?: Response }>) => {\n // In SSR pass references to things in backing sagas\n // we cannot access in a global scope\n const dispatch = useDispatch();\n const cookies = new CookieHelper(...useCookies());\n const api = cachedSearchWithCookies({ cookies, dispatch, request, response });\n\n const [context] = useState<SSRContextType>({\n api,\n cookies,\n dispatch,\n request,\n response,\n });\n\n return (\n <SSRContext.Provider value={{ ...context }}>{children}</SSRContext.Provider>\n );\n};\n\nexport const useSSRContext = () => useContext(SSRContext) as SSRContextType;\n\nexport const useDeliveryApi = () => {\n const { api } = useSSRContext();\n return api;\n};\n"],"names":["CacheNode","constructor","key","value","next","prev","LruCache","limit","map","head","tail","size","get","node","remove","setHead","set","CachedSearch","ssr","_this$ssr","cache","cookies","raw","getClient","args","DeliveryApi","search","query","linkDepth","project","client","Client","create","getClientConfig","request","JSON","stringify","entries","searchUsingPost","id","versionStatus","fields","getContentType","contentTypes","getRootNode","options","nodes","getRoot","getNode","path","getAncestors","getChildren","getSiblings","execute","window","promise","catch","cachedSearch","cachedSearchWithCookies","mapCookieHeader","Object","name","join","getSsrReferer","url","URL","protocol","headers","host","href","ex","console","error","storeSurrogateKeys","response","keys","status","info","put","dispatch","reduxStore","setSurrogateKeys","deliveryApiConfig","config","DELIVERY_API_CONFIG","defaultHeaders","referer","responseHandler","PROXY_DELIVERY_API","rootUrl","projectId","cookieHeader","findLoginCookies","assign","Cookie","getClientSideVersionStatus","parse","location","currentHostname","hostname","getVersionStatusFromHostname","getServerSideVersionStatus","deliveryApi","getVersionStatusFromHeaders","versionStatusHeader","indexOf","endsWith","getEntry","deliveryApiWithCookies","SSRContext","createContext","SSRContextProvider","children","useDispatch","CookieHelper","useCookies","api","context","useState","React","createElement","Provider","useSSRContext","useContext","useDeliveryApi"],"mappings":"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"}
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var selectors$1 = require('./selectors-d5cd6b19.js');
3
+ var selectors$1 = require('./selectors-wCs5fHD4.js');
4
4
  var React = require('react');
5
5
 
6
- function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
6
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
7
7
 
8
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
8
+ var React__default = /*#__PURE__*/_interopDefault(React);
9
9
 
10
10
  const selectUserIsLoading = state => selectors$1.getImmutableOrJS(state, ['user', 'authenticationState', 'isLoading']);
11
11
  const selectUserIsAuthenticated = state => selectors$1.getImmutableOrJS(state, ['user', 'authenticationState', 'isAuthenticated']);
@@ -43,33 +43,33 @@ const selectChangePasswordError = state => selectors$1.getImmutableOrJS(state, [
43
43
 
44
44
  var selectors = /*#__PURE__*/Object.freeze({
45
45
  __proto__: null,
46
- selectUserIsLoading: selectUserIsLoading,
47
- selectUserIsAuthenticated: selectUserIsAuthenticated,
48
- selectUserIsAuthenticationError: selectUserIsAuthenticationError,
49
- selectUserIsError: selectUserIsError,
50
- selectUserAuthenticationErrorMessage: selectUserAuthenticationErrorMessage,
51
- selectUserErrorMessage: selectUserErrorMessage,
46
+ selectChangePasswordError: selectChangePasswordError,
47
+ selectChangePasswordSending: selectChangePasswordSending,
48
+ selectChangePasswordSent: selectChangePasswordSent,
52
49
  selectClientCredentials: selectClientCredentials,
50
+ selectPasswordResetRequestError: selectPasswordResetRequestError,
51
+ selectPasswordResetRequestSending: selectPasswordResetRequestSending,
52
+ selectPasswordResetRequestSent: selectPasswordResetRequestSent,
53
+ selectResetPasswordError: selectResetPasswordError,
54
+ selectResetPasswordSending: selectResetPasswordSending,
55
+ selectResetPasswordSent: selectResetPasswordSent,
53
56
  selectUser: selectUser,
54
- selectUserIsZengentiStaff: selectUserIsZengentiStaff,
55
- selectUserGuid: selectUserGuid,
56
- selectUsername: selectUsername,
57
+ selectUserAuthenticationErrorMessage: selectUserAuthenticationErrorMessage,
57
58
  selectUserEmail: selectUserEmail,
59
+ selectUserErrorMessage: selectUserErrorMessage,
58
60
  selectUserGroups: selectUserGroups,
59
- selectUserSecurityToken: selectUserSecurityToken,
61
+ selectUserGuid: selectUserGuid,
62
+ selectUserIsAuthenticated: selectUserIsAuthenticated,
63
+ selectUserIsAuthenticationError: selectUserIsAuthenticationError,
64
+ selectUserIsError: selectUserIsError,
65
+ selectUserIsLoading: selectUserIsLoading,
66
+ selectUserIsZengentiStaff: selectUserIsZengentiStaff,
60
67
  selectUserRegistration: selectUserRegistration,
61
68
  selectUserRegistrationError: selectUserRegistrationError,
62
69
  selectUserRegistrationIsLoading: selectUserRegistrationIsLoading,
63
70
  selectUserRegistrationIsSuccess: selectUserRegistrationIsSuccess,
64
- selectPasswordResetRequestSending: selectPasswordResetRequestSending,
65
- selectPasswordResetRequestSent: selectPasswordResetRequestSent,
66
- selectPasswordResetRequestError: selectPasswordResetRequestError,
67
- selectResetPasswordSending: selectResetPasswordSending,
68
- selectResetPasswordSent: selectResetPasswordSent,
69
- selectResetPasswordError: selectResetPasswordError,
70
- selectChangePasswordSending: selectChangePasswordSending,
71
- selectChangePasswordSent: selectChangePasswordSent,
72
- selectChangePasswordError: selectChangePasswordError
71
+ selectUserSecurityToken: selectUserSecurityToken,
72
+ selectUsername: selectUsername
73
73
  });
74
74
 
75
75
  const matchUserGroup = (userGroups = [], requiredGroups = []) => {
@@ -88,6 +88,7 @@ const matchUserGroup = (userGroups = [], requiredGroups = []) => {
88
88
  };
89
89
 
90
90
  /* eslint-disable react/display-name */
91
+ /* eslint-disable @typescript-eslint/naming-convention */
91
92
  const toJS = WrappedComponent => wrappedComponentProps => {
92
93
  const KEY = 0;
93
94
  const VALUE = 1;
@@ -97,7 +98,7 @@ const toJS = WrappedComponent => wrappedComponentProps => {
97
98
  newProps[propKey] = propValue && typeof propValue === 'object' && 'toJS' in propValue ? propValue.toJS() : propValue;
98
99
  return newProps;
99
100
  }, {});
100
- return /*#__PURE__*/React__default["default"].createElement(WrappedComponent, propsJS);
101
+ return /*#__PURE__*/React__default.default.createElement(WrappedComponent, propsJS);
101
102
  };
102
103
 
103
104
  exports.matchUserGroup = matchUserGroup;
@@ -125,4 +126,4 @@ exports.selectUserRegistrationIsLoading = selectUserRegistrationIsLoading;
125
126
  exports.selectUserRegistrationIsSuccess = selectUserRegistrationIsSuccess;
126
127
  exports.selectors = selectors;
127
128
  exports.toJS = toJS;
128
- //# sourceMappingURL=ToJs-8fd54c8e.js.map
129
+ //# sourceMappingURL=ToJs-C9jwV7YB.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToJs-8fd54c8e.js","sources":["../src/user/redux/selectors.ts","../src/user/util/matchGroups.ts","../src/util/ToJs.tsx"],"sourcesContent":["import { AppState, StateType } from '~/models';\nimport { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const selectUserIsLoading = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isLoading']);\n\nexport const selectUserIsAuthenticated = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isAuthenticated']);\n\nexport const selectUserIsAuthenticationError = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isAuthenticationError']);\n\nexport const selectUserIsError = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isError']);\n\n/**\n * DEPRECATED 12/2021 - use selectUserErrorMessage instead\n * @param state AppState\n * @returns string\n */\nexport const selectUserAuthenticationErrorMessage = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'errorMessage']);\n\nexport const selectUserErrorMessage = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'errorMessage']);\n\nexport const selectClientCredentials = (\n state: AppState,\n returnType?: StateType\n) =>\n getIn(\n state,\n ['user', 'authenticationState', 'clientCredentials'],\n {},\n returnType\n );\n\nexport const selectUser = (state: AppState, returnType?: StateType) =>\n getIn(state, 'user', {}, returnType);\n\nexport const selectUserIsZengentiStaff = (state: AppState) =>\n getIn(state, ['user', 'isZengentiStaff']);\n\nexport const selectUserGuid = (state: AppState) => getIn(state, ['user', 'id']);\n\nexport const selectUsername = (state: AppState) =>\n getIn(state, ['user', 'username']);\n\nexport const selectUserEmail = (state: AppState) =>\n getIn(state, ['user', 'email']);\n\nexport const selectUserGroups = (state: AppState, returnType?: StateType) =>\n getIn(state, ['user', 'groups'], [], returnType);\n\nexport const selectUserSecurityToken = (state: AppState) =>\n getIn(state, [\n 'user',\n 'authenticationState',\n 'clientCredentials',\n 'contensisClassicToken',\n ]);\n\nexport const selectUserRegistration = (\n state: AppState,\n returnType?: StateType\n) => getIn(state, ['user', 'registration'], {}, returnType);\n\nexport const selectUserRegistrationError = (state: AppState) =>\n getIn(state, ['user', 'registration', 'error'], false);\n\nexport const selectUserRegistrationIsLoading = (state: AppState) =>\n getIn(state, ['user', 'registration', 'isLoading'], false);\n\nexport const selectUserRegistrationIsSuccess = (state: AppState) =>\n getIn(state, ['user', 'registration', 'success'], false);\n\nexport const selectPasswordResetRequestSending = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'isSending']);\n\nexport const selectPasswordResetRequestSent = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'sent']);\n\nexport const selectPasswordResetRequestError = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'error']);\n\nexport const selectResetPasswordSending = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'isSending']);\n\nexport const selectResetPasswordSent = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'sent']);\n\nexport const selectResetPasswordError = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'error']);\n\nexport const selectChangePasswordSending = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'isSending']);\n\nexport const selectChangePasswordSent = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'sent']);\n\nexport const selectChangePasswordError = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'error']);\n","import { Group } from 'contensis-management-api/lib/models';\nimport { RequireLogin } from '~/models';\n\nexport const matchUserGroup = (\n userGroups: Group[] = [],\n requiredGroups: RequireLogin = []\n) => {\n if (\n !Array.isArray(requiredGroups) ||\n (Array.isArray(requiredGroups) && requiredGroups.length === 0)\n )\n return true;\n\n const groupMatch = requiredGroups.some(requiredGroup => {\n return userGroups.some(userGroup => {\n if (requiredGroup.id === userGroup.id) {\n return true;\n }\n if (requiredGroup.name === userGroup.name) {\n return true;\n }\n });\n });\n return groupMatch;\n};\n","/* eslint-disable react/display-name */\n/* eslint-disable @typescript-eslint/naming-convention */\nimport React from 'react';\n\nexport const toJS =\n <Props extends { [key: string]: any }>(\n WrappedComponent: React.ComponentType<Props>\n ) =>\n (wrappedComponentProps: Props) => {\n const KEY = 0;\n const VALUE = 1;\n\n const propsJS = Object.entries(wrappedComponentProps).reduce<Props>(\n (newProps: any, wrappedComponentProp) => {\n const propKey = wrappedComponentProp[KEY];\n const propValue = wrappedComponentProp[VALUE];\n newProps[propKey] =\n propValue && typeof propValue === 'object' && 'toJS' in propValue\n ? propValue.toJS()\n : propValue;\n return newProps as Props;\n },\n {} as Props\n );\n\n return <WrappedComponent {...propsJS} />;\n };\n"],"names":["selectUserIsLoading","state","getIn","selectUserIsAuthenticated","selectUserIsAuthenticationError","selectUserIsError","selectUserAuthenticationErrorMessage","selectUserErrorMessage","selectClientCredentials","returnType","selectUser","selectUserIsZengentiStaff","selectUserGuid","selectUsername","selectUserEmail","selectUserGroups","selectUserSecurityToken","selectUserRegistration","selectUserRegistrationError","selectUserRegistrationIsLoading","selectUserRegistrationIsSuccess","selectPasswordResetRequestSending","selectPasswordResetRequestSent","selectPasswordResetRequestError","selectResetPasswordSending","selectResetPasswordSent","selectResetPasswordError","selectChangePasswordSending","selectChangePasswordSent","selectChangePasswordError","matchUserGroup","userGroups","requiredGroups","Array","isArray","length","groupMatch","some","requiredGroup","userGroup","id","name","toJS","WrappedComponent","wrappedComponentProps","KEY","VALUE","propsJS","Object","entries","reduce","newProps","wrappedComponentProp","propKey","propValue","React","createElement"],"mappings":"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"}
1
+ {"version":3,"file":"ToJs-C9jwV7YB.js","sources":["../src/user/redux/selectors.ts","../src/user/util/matchGroups.ts","../src/util/ToJs.tsx"],"sourcesContent":["import { AppState, StateType } from '~/models';\nimport { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const selectUserIsLoading = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isLoading']);\n\nexport const selectUserIsAuthenticated = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isAuthenticated']);\n\nexport const selectUserIsAuthenticationError = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isAuthenticationError']);\n\nexport const selectUserIsError = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'isError']);\n\n/**\n * DEPRECATED 12/2021 - use selectUserErrorMessage instead\n * @param state AppState\n * @returns string\n */\nexport const selectUserAuthenticationErrorMessage = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'errorMessage']);\n\nexport const selectUserErrorMessage = (state: AppState) =>\n getIn(state, ['user', 'authenticationState', 'errorMessage']);\n\nexport const selectClientCredentials = (\n state: AppState,\n returnType?: StateType\n) =>\n getIn(\n state,\n ['user', 'authenticationState', 'clientCredentials'],\n {},\n returnType\n );\n\nexport const selectUser = (state: AppState, returnType?: StateType) =>\n getIn(state, 'user', {}, returnType);\n\nexport const selectUserIsZengentiStaff = (state: AppState) =>\n getIn(state, ['user', 'isZengentiStaff']);\n\nexport const selectUserGuid = (state: AppState) => getIn(state, ['user', 'id']);\n\nexport const selectUsername = (state: AppState) =>\n getIn(state, ['user', 'username']);\n\nexport const selectUserEmail = (state: AppState) =>\n getIn(state, ['user', 'email']);\n\nexport const selectUserGroups = (state: AppState, returnType?: StateType) =>\n getIn(state, ['user', 'groups'], [], returnType);\n\nexport const selectUserSecurityToken = (state: AppState) =>\n getIn(state, [\n 'user',\n 'authenticationState',\n 'clientCredentials',\n 'contensisClassicToken',\n ]);\n\nexport const selectUserRegistration = (\n state: AppState,\n returnType?: StateType\n) => getIn(state, ['user', 'registration'], {}, returnType);\n\nexport const selectUserRegistrationError = (state: AppState) =>\n getIn(state, ['user', 'registration', 'error'], false);\n\nexport const selectUserRegistrationIsLoading = (state: AppState) =>\n getIn(state, ['user', 'registration', 'isLoading'], false);\n\nexport const selectUserRegistrationIsSuccess = (state: AppState) =>\n getIn(state, ['user', 'registration', 'success'], false);\n\nexport const selectPasswordResetRequestSending = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'isSending']);\n\nexport const selectPasswordResetRequestSent = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'sent']);\n\nexport const selectPasswordResetRequestError = (state: AppState) =>\n getIn(state, ['user', 'passwordResetRequest', 'error']);\n\nexport const selectResetPasswordSending = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'isSending']);\n\nexport const selectResetPasswordSent = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'sent']);\n\nexport const selectResetPasswordError = (state: AppState) =>\n getIn(state, ['user', 'resetPassword', 'error']);\n\nexport const selectChangePasswordSending = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'isSending']);\n\nexport const selectChangePasswordSent = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'sent']);\n\nexport const selectChangePasswordError = (state: AppState) =>\n getIn(state, ['user', 'changePassword', 'error']);\n","import { Group } from 'contensis-management-api/lib/models';\nimport { RequireLogin } from '~/models';\n\nexport const matchUserGroup = (\n userGroups: Group[] = [],\n requiredGroups: RequireLogin = []\n) => {\n if (\n !Array.isArray(requiredGroups) ||\n (Array.isArray(requiredGroups) && requiredGroups.length === 0)\n )\n return true;\n\n const groupMatch = requiredGroups.some(requiredGroup => {\n return userGroups.some(userGroup => {\n if (requiredGroup.id === userGroup.id) {\n return true;\n }\n if (requiredGroup.name === userGroup.name) {\n return true;\n }\n });\n });\n return groupMatch;\n};\n","/* eslint-disable react/display-name */\n/* eslint-disable @typescript-eslint/naming-convention */\nimport React from 'react';\n\nexport const toJS =\n <Props extends { [key: string]: any }>(\n WrappedComponent: React.ComponentType<Props>\n ) =>\n (wrappedComponentProps: Props) => {\n const KEY = 0;\n const VALUE = 1;\n\n const propsJS = Object.entries(wrappedComponentProps).reduce<Props>(\n (newProps: any, wrappedComponentProp) => {\n const propKey = wrappedComponentProp[KEY];\n const propValue = wrappedComponentProp[VALUE];\n newProps[propKey] =\n propValue && typeof propValue === 'object' && 'toJS' in propValue\n ? propValue.toJS()\n : propValue;\n return newProps as Props;\n },\n {} as Props\n );\n\n return <WrappedComponent {...propsJS} />;\n };\n"],"names":["selectUserIsLoading","state","getIn","selectUserIsAuthenticated","selectUserIsAuthenticationError","selectUserIsError","selectUserAuthenticationErrorMessage","selectUserErrorMessage","selectClientCredentials","returnType","selectUser","selectUserIsZengentiStaff","selectUserGuid","selectUsername","selectUserEmail","selectUserGroups","selectUserSecurityToken","selectUserRegistration","selectUserRegistrationError","selectUserRegistrationIsLoading","selectUserRegistrationIsSuccess","selectPasswordResetRequestSending","selectPasswordResetRequestSent","selectPasswordResetRequestError","selectResetPasswordSending","selectResetPasswordSent","selectResetPasswordError","selectChangePasswordSending","selectChangePasswordSent","selectChangePasswordError","matchUserGroup","userGroups","requiredGroups","Array","isArray","length","groupMatch","some","requiredGroup","userGroup","id","name","toJS","WrappedComponent","wrappedComponentProps","KEY","VALUE","propsJS","Object","entries","reduce","newProps","wrappedComponentProp","propKey","propValue","React","createElement"],"mappings":";;;;;;;;;MAGaA,mBAAmB,GAAIC,KAAe,IACjDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,WAAW,CAAC,EAAC;MAE/CE,yBAAyB,GAAIF,KAAe,IACvDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,CAAC,EAAC;MAErDG,+BAA+B,GAAIH,KAAe,IAC7DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,uBAAuB,CAAC,EAAC;MAE3DI,iBAAiB,GAAIJ,KAAe,IAC/CC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAC;;AAE1D;AACA;AACA;AACA;AACA;AACO,MAAMK,oCAAoC,GAAIL,KAAe,IAClEC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,cAAc,CAAC,CAAC,CAAA;MAElDM,sBAAsB,GAAIN,KAAe,IACpDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,cAAc,CAAC,EAAC;AAExD,MAAMO,uBAAuB,GAAGA,CACrCP,KAAe,EACfQ,UAAsB,KAEtBP,4BAAK,CACHD,KAAK,EACL,CAAC,MAAM,EAAE,qBAAqB,EAAE,mBAAmB,CAAC,EACpD,EAAE,EACFQ,UACF,EAAC;MAEUC,UAAU,GAAGA,CAACT,KAAe,EAAEQ,UAAsB,KAChEP,4BAAK,CAACD,KAAK,EAAE,MAAM,EAAE,EAAE,EAAEQ,UAAU,EAAC;AAE/B,MAAME,yBAAyB,GAAIV,KAAe,IACvDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAA;AAE9BW,MAAAA,cAAc,GAAIX,KAAe,IAAKC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,EAAC;AAExE,MAAMY,cAAc,GAAIZ,KAAe,IAC5CC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;AAE7B,MAAMa,eAAe,GAAIb,KAAe,IAC7CC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;AAE1B,MAAMc,gBAAgB,GAAGA,CAACd,KAAe,EAAEQ,UAAsB,KACtEP,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAEQ,UAAU,EAAC;AAE3C,MAAMO,uBAAuB,GAAIf,KAAe,IACrDC,4BAAK,CAACD,KAAK,EAAE,CACX,MAAM,EACN,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,CACxB,CAAC,CAAA;AAEG,MAAMgB,sBAAsB,GAAGA,CACpChB,KAAe,EACfQ,UAAsB,KACnBP,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,EAAE,EAAEQ,UAAU,EAAC;MAE9CS,2BAA2B,GAAIjB,KAAe,IACzDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,KAAK,EAAC;MAE3CkB,+BAA+B,GAAIlB,KAAe,IAC7DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,KAAK,EAAC;MAE/CmB,+BAA+B,GAAInB,KAAe,IAC7DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,KAAK,EAAC;MAE7CoB,iCAAiC,GAAIpB,KAAe,IAC/DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,WAAW,CAAC,EAAC;MAEhDqB,8BAA8B,GAAIrB,KAAe,IAC5DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,MAAM,CAAC,EAAC;MAE3CsB,+BAA+B,GAAItB,KAAe,IAC7DC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,CAAC,EAAC;MAE5CuB,0BAA0B,GAAIvB,KAAe,IACxDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,EAAC;MAEzCwB,uBAAuB,GAAIxB,KAAe,IACrDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,CAAC,EAAC;MAEpCyB,wBAAwB,GAAIzB,KAAe,IACtDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC,EAAC;MAErC0B,2BAA2B,GAAI1B,KAAe,IACzDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,CAAC,EAAC;MAE1C2B,wBAAwB,GAAI3B,KAAe,IACtDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,CAAC,EAAC;MAErC4B,yBAAyB,GAAI5B,KAAe,IACvDC,4BAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AClG3C,MAAM6B,cAAc,GAAGA,CAC5BC,UAAmB,GAAG,EAAE,EACxBC,cAA4B,GAAG,EAAE,KAC9B;EACH,IACE,CAACC,KAAK,CAACC,OAAO,CAACF,cAAc,CAAC,IAC7BC,KAAK,CAACC,OAAO,CAACF,cAAc,CAAC,IAAIA,cAAc,CAACG,MAAM,KAAK,CAAE,EAE9D,OAAO,IAAI,CAAA;AAEb,EAAA,MAAMC,UAAU,GAAGJ,cAAc,CAACK,IAAI,CAACC,aAAa,IAAI;AACtD,IAAA,OAAOP,UAAU,CAACM,IAAI,CAACE,SAAS,IAAI;AAClC,MAAA,IAAID,aAAa,CAACE,EAAE,KAAKD,SAAS,CAACC,EAAE,EAAE;AACrC,QAAA,OAAO,IAAI,CAAA;AACb,OAAA;AACA,MAAA,IAAIF,aAAa,CAACG,IAAI,KAAKF,SAAS,CAACE,IAAI,EAAE;AACzC,QAAA,OAAO,IAAI,CAAA;AACb,OAAA;AACF,KAAC,CAAC,CAAA;AACJ,GAAC,CAAC,CAAA;AACF,EAAA,OAAOL,UAAU,CAAA;AACnB;;ACxBA;AACA;MAGaM,IAAI,GAEbC,gBAA4C,IAE7CC,qBAA4B,IAAK;EAChC,MAAMC,GAAG,GAAG,CAAC,CAAA;EACb,MAAMC,KAAK,GAAG,CAAC,CAAA;AAEf,EAAA,MAAMC,OAAO,GAAGC,MAAM,CAACC,OAAO,CAACL,qBAAqB,CAAC,CAACM,MAAM,CAC1D,CAACC,QAAa,EAAEC,oBAAoB,KAAK;AACvC,IAAA,MAAMC,OAAO,GAAGD,oBAAoB,CAACP,GAAG,CAAC,CAAA;AACzC,IAAA,MAAMS,SAAS,GAAGF,oBAAoB,CAACN,KAAK,CAAC,CAAA;IAC7CK,QAAQ,CAACE,OAAO,CAAC,GACfC,SAAS,IAAI,OAAOA,SAAS,KAAK,QAAQ,IAAI,MAAM,IAAIA,SAAS,GAC7DA,SAAS,CAACZ,IAAI,EAAE,GAChBY,SAAS,CAAA;AACf,IAAA,OAAOH,QAAQ,CAAA;GAChB,EACD,EACF,CAAC,CAAA;AAED,EAAA,oBAAOI,sBAAA,CAAAC,aAAA,CAACb,gBAAgB,EAAKI,OAAU,CAAC,CAAA;AAC1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -8,4 +8,4 @@ function getDefaultExportFromCjs (x) {
8
8
 
9
9
  exports.commonjsGlobal = commonjsGlobal;
10
10
  exports.getDefaultExportFromCjs = getDefaultExportFromCjs;
11
- //# sourceMappingURL=_commonjsHelpers-b3309d7b.js.map
11
+ //# sourceMappingURL=_commonjsHelpers-BJu3ubxk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-BJu3ubxk.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}