@zengenti/contensis-react-base 4.0.0-beta.2 → 4.0.0-beta.4

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 (212) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +18 -478
  3. package/cjs/{App-b56aca04.js → App-DXro6av4.js} +215 -234
  4. package/cjs/App-DXro6av4.js.map +1 -0
  5. package/cjs/{ChangePassword.container-ae35785e.js → ChangePassword.container-ECjEXixF.js} +209 -286
  6. package/cjs/ChangePassword.container-ECjEXixF.js.map +1 -0
  7. package/cjs/CookieHelper.class-C3Eqoze9.js +471 -0
  8. package/cjs/CookieHelper.class-C3Eqoze9.js.map +1 -0
  9. package/cjs/{RouteLoader-c06dccd5.js → RouteLoader-BFc-Wl6M.js} +55 -68
  10. package/cjs/RouteLoader-BFc-Wl6M.js.map +1 -0
  11. package/cjs/{ContensisDeliveryApi-4fcf049d.js → SSRContext-CFeZxG9H.js} +165 -119
  12. package/cjs/SSRContext-CFeZxG9H.js.map +1 -0
  13. package/cjs/{ToJs-a8d8f3f0.js → ToJs-C9jwV7YB.js} +26 -80
  14. package/cjs/ToJs-C9jwV7YB.js.map +1 -0
  15. package/cjs/{_commonjsHelpers-b3309d7b.js → _commonjsHelpers-BJu3ubxk.js} +1 -1
  16. package/cjs/_commonjsHelpers-BJu3ubxk.js.map +1 -0
  17. package/cjs/client.js +67 -65
  18. package/cjs/client.js.map +1 -1
  19. package/cjs/contensis-react-base.js +387 -3294
  20. package/cjs/contensis-react-base.js.map +1 -1
  21. package/cjs/{fromJSLeaveImmer-e74c673c.js → fromJSLeaveImmer-Blvlk4t2.js} +3 -7
  22. package/{esm/fromJSLeaveImmer-0114ffcf.js.map → cjs/fromJSLeaveImmer-Blvlk4t2.js.map} +1 -1
  23. package/cjs/redux.js +19 -20
  24. package/cjs/redux.js.map +1 -1
  25. package/cjs/routing.js +13 -6
  26. package/cjs/routing.js.map +1 -1
  27. package/cjs/sagas-CbZhaRNd.js +6010 -0
  28. package/cjs/sagas-CbZhaRNd.js.map +1 -0
  29. package/cjs/search.js +105 -305
  30. package/cjs/search.js.map +1 -1
  31. package/cjs/selectors-wCs5fHD4.js +460 -0
  32. package/cjs/selectors-wCs5fHD4.js.map +1 -0
  33. package/cjs/{version-34d91f68.js → store-D07FOXvM.js} +44 -114
  34. package/cjs/store-D07FOXvM.js.map +1 -0
  35. package/cjs/{urls-6fcaf4c6.js → urls-DVIwGZmd.js} +1 -1
  36. package/{esm/urls-eac9a747.js.map → cjs/urls-DVIwGZmd.js.map} +1 -1
  37. package/cjs/user.js +12 -20
  38. package/cjs/user.js.map +1 -1
  39. package/cjs/util.js +109 -116
  40. package/cjs/util.js.map +1 -1
  41. package/cjs/{version-a410c88e.js → version-B7XFkBhY.js} +19 -22
  42. package/{esm/version-9f29becb.js.map → cjs/version-B7XFkBhY.js.map} +1 -1
  43. package/cjs/version-CM-bJ62L.js +20 -0
  44. package/cjs/version-CM-bJ62L.js.map +1 -0
  45. package/esm/{App-83107d7e.js → App-CIlf4cl4.js} +176 -195
  46. package/esm/App-CIlf4cl4.js.map +1 -0
  47. package/esm/{ChangePassword.container-76fd5e9b.js → ChangePassword.container-C0tFq0Tf.js} +191 -250
  48. package/esm/ChangePassword.container-C0tFq0Tf.js.map +1 -0
  49. package/esm/CookieHelper.class-FTURFpz3.js +464 -0
  50. package/esm/CookieHelper.class-FTURFpz3.js.map +1 -0
  51. package/esm/{RouteLoader-29fd689a.js → RouteLoader-D7HmVx5l.js} +40 -53
  52. package/esm/RouteLoader-D7HmVx5l.js.map +1 -0
  53. package/esm/{ContensisDeliveryApi-fe57a037.js → SSRContext-CkiWIvde.js} +159 -120
  54. package/esm/SSRContext-CkiWIvde.js.map +1 -0
  55. package/esm/{ToJs-df57f31d.js → ToJs-CpPNdcXS.js} +24 -77
  56. package/esm/ToJs-CpPNdcXS.js.map +1 -0
  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 +55 -53
  60. package/esm/client.js.map +1 -1
  61. package/esm/contensis-react-base.js +318 -3223
  62. package/esm/contensis-react-base.js.map +1 -1
  63. package/esm/{fromJSLeaveImmer-0114ffcf.js → fromJSLeaveImmer-C_YACmOf.js} +2 -6
  64. package/{cjs/fromJSLeaveImmer-e74c673c.js.map → esm/fromJSLeaveImmer-C_YACmOf.js.map} +1 -1
  65. package/esm/redux.js +10 -9
  66. package/esm/redux.js.map +1 -1
  67. package/esm/routing.js +13 -4
  68. package/esm/routing.js.map +1 -1
  69. package/esm/sagas-xJU-zOpn.js +5916 -0
  70. package/esm/sagas-xJU-zOpn.js.map +1 -0
  71. package/esm/search.js +113 -311
  72. package/esm/search.js.map +1 -1
  73. package/esm/selectors-CBdCY0u3.js +396 -0
  74. package/esm/selectors-CBdCY0u3.js.map +1 -0
  75. package/esm/{version-3d9911e2.js → store-v2gyr6u2.js} +38 -85
  76. package/esm/store-v2gyr6u2.js.map +1 -0
  77. package/esm/{urls-eac9a747.js → urls-DfCisos-.js} +1 -1
  78. package/{cjs/urls-6fcaf4c6.js.map → esm/urls-DfCisos-.js.map} +1 -1
  79. package/esm/user.js +7 -13
  80. package/esm/user.js.map +1 -1
  81. package/esm/util.js +67 -75
  82. package/esm/util.js.map +1 -1
  83. package/esm/version-D773TD9j.js +15 -0
  84. package/esm/version-D773TD9j.js.map +1 -0
  85. package/esm/{version-9f29becb.js → version-DvjTUbcA.js} +6 -9
  86. package/{cjs/version-a410c88e.js.map → esm/version-DvjTUbcA.js.map} +1 -1
  87. package/models/app/App.d.ts +1 -1
  88. package/models/app/pages/VersionInfo/components/VersionInfo.d.ts +4 -1
  89. package/models/app/pages/VersionInfo/components/VersionInfo.styled.d.ts +2 -1
  90. package/models/client/client.d.ts +1 -1
  91. package/models/index.d.ts +1 -2
  92. package/models/models/AppRouteProps.d.ts +11 -0
  93. package/models/{redux/appstate.d.ts → models/AppState.d.ts} +3 -3
  94. package/models/models/ContentTypeMapping.d.ts +89 -0
  95. package/models/models/EntryMapper.d.ts +3 -0
  96. package/models/models/GetRouteActionArgs.d.ts +15 -0
  97. package/models/models/MatchedRoute.d.ts +4 -0
  98. package/models/models/ReduxInjector.d.ts +5 -0
  99. package/models/models/RequireLogin.d.ts +6 -0
  100. package/models/models/RouteComponent.d.ts +4 -0
  101. package/models/models/RouteComponentProps.d.ts +9 -0
  102. package/models/models/RouteLoaderProps.d.ts +9 -0
  103. package/models/models/RouteNode.d.ts +5 -0
  104. package/models/models/SSRContext.d.ts +11 -0
  105. package/models/models/StaticRoute.d.ts +61 -0
  106. package/models/models/WithEvents.d.ts +58 -0
  107. package/models/models/config/AppConfig.d.ts +12 -0
  108. package/models/{config.d.ts → models/config/ServerConfig.d.ts} +3 -12
  109. package/models/models/config/StateType.d.ts +1 -0
  110. package/models/models/config/index.d.ts +3 -0
  111. package/models/models/index.d.ts +16 -0
  112. package/models/redux/actions/index.d.ts +2 -2
  113. package/models/redux/sagas/navigation.d.ts +1 -3
  114. package/models/redux/selectors/index.d.ts +2 -2
  115. package/models/redux/store/injectors.d.ts +16 -4
  116. package/models/redux/store/store.d.ts +10 -4
  117. package/models/redux/types/index.d.ts +2 -2
  118. package/models/redux/types/navigation.d.ts +3 -3
  119. package/models/redux/types/version.d.ts +2 -2
  120. package/models/routing/components/Redirect.d.ts +1 -1
  121. package/models/routing/components/RouteLoader.d.ts +1 -1
  122. package/models/routing/components/StaticRouteLoader.d.ts +1 -1
  123. package/models/routing/components/Status.d.ts +1 -1
  124. package/models/routing/redux/actions.d.ts +3 -4
  125. package/models/routing/redux/selectors.d.ts +2 -2
  126. package/models/routing/redux/types.d.ts +11 -11
  127. package/models/routing/util/find-contenttype-mapping.d.ts +1 -1
  128. package/models/routing/util/queries.d.ts +2 -2
  129. package/models/search/containers/withListing.d.ts +4 -1
  130. package/models/search/containers/withSearch.d.ts +4 -1
  131. package/models/search/models/Queries.d.ts +4 -2
  132. package/models/search/models/Search.d.ts +8 -1
  133. package/models/search/models/SearchActions.d.ts +3 -2
  134. package/models/search/models/SearchState.d.ts +5 -1
  135. package/models/search/redux/reducers.d.ts +2 -257
  136. package/models/search/redux/schema.d.ts +1 -1
  137. package/models/search/redux/selectors.d.ts +5 -5
  138. package/models/search/search/ContensisDeliveryApi.d.ts +2 -2
  139. package/models/search/search/ToJs.d.ts +1 -1
  140. package/models/search/search/expressions.d.ts +3 -3
  141. package/models/search/search/util.d.ts +17 -2
  142. package/models/search/transformations/searchresult-to-state.mapper.d.ts +1 -2
  143. package/models/server/features/caching/cacheDuration.schema.d.ts +1 -0
  144. package/models/server/features/linkdepth-api/search.d.ts +1 -1
  145. package/models/server/features/static-assets/index.d.ts +1 -1
  146. package/models/server/internalServer.d.ts +1 -1
  147. package/models/server/util/bundles.d.ts +1 -1
  148. package/models/server/util/headers.d.ts +1 -1
  149. package/models/server/webApp.d.ts +1 -1
  150. package/models/user/components/Login.d.ts +1 -1
  151. package/models/user/components/LoginForm.d.ts +6 -6
  152. package/models/user/components/LogoutForm.d.ts +4 -4
  153. package/models/user/components.styled/Login.styled.d.ts +1 -1
  154. package/models/user/components.styled/LoginForm.styled.d.ts +1 -1
  155. package/models/user/hocs/withLogin.d.ts +4 -4
  156. package/models/user/hocs/withRegistration.d.ts +6 -3
  157. package/models/user/hooks/useLogin.d.ts +4 -4
  158. package/models/user/redux/actions.d.ts +7 -6
  159. package/models/user/redux/sagas/index.d.ts +1 -1
  160. package/models/user/redux/sagas/login.d.ts +5 -17
  161. package/models/user/redux/selectors.d.ts +1 -2
  162. package/models/user/redux/types.d.ts +21 -21
  163. package/models/user/state.d.ts +12 -0
  164. package/models/user/transformations/mapClientCredentials.d.ts +3 -1
  165. package/models/user/util/ContensisManagementApi.d.ts +10 -9
  166. package/models/user/util/CookieConstants.d.ts +1 -0
  167. package/models/user/util/CookieHelper.class.d.ts +8 -4
  168. package/models/user/util/LoginHelper.class.d.ts +25 -37
  169. package/models/user/util/OidcUserManager.d.ts +1 -1
  170. package/models/user/util/matchGroups.d.ts +1 -1
  171. package/models/util/CachedDeliveryApi.d.ts +11 -10
  172. package/models/util/ContensisDeliveryApi.d.ts +11 -7
  173. package/models/util/SSRContext.d.ts +29 -0
  174. package/models/util/index.d.ts +1 -0
  175. package/models/util/json-mapper.d.ts +4 -5
  176. package/package.json +71 -92
  177. package/cjs/App-b56aca04.js.map +0 -1
  178. package/cjs/ChangePassword.container-ae35785e.js.map +0 -1
  179. package/cjs/ContensisDeliveryApi-4fcf049d.js.map +0 -1
  180. package/cjs/CookieConstants-000427db.js +0 -10
  181. package/cjs/CookieConstants-000427db.js.map +0 -1
  182. package/cjs/RouteLoader-c06dccd5.js.map +0 -1
  183. package/cjs/ToJs-a8d8f3f0.js.map +0 -1
  184. package/cjs/_commonjsHelpers-b3309d7b.js.map +0 -1
  185. package/cjs/forms.js +0 -5998
  186. package/cjs/forms.js.map +0 -1
  187. package/cjs/reducers-73a03ef4.js +0 -257
  188. package/cjs/reducers-73a03ef4.js.map +0 -1
  189. package/cjs/sagas-570f23ba.js +0 -2175
  190. package/cjs/sagas-570f23ba.js.map +0 -1
  191. package/cjs/selectors-14caa813.js +0 -228
  192. package/cjs/selectors-14caa813.js.map +0 -1
  193. package/cjs/version-34d91f68.js.map +0 -1
  194. package/esm/App-83107d7e.js.map +0 -1
  195. package/esm/ChangePassword.container-76fd5e9b.js.map +0 -1
  196. package/esm/ContensisDeliveryApi-fe57a037.js.map +0 -1
  197. package/esm/CookieConstants-3d3b6531.js +0 -6
  198. package/esm/CookieConstants-3d3b6531.js.map +0 -1
  199. package/esm/RouteLoader-29fd689a.js.map +0 -1
  200. package/esm/ToJs-df57f31d.js.map +0 -1
  201. package/esm/_commonjsHelpers-1789f0cf.js.map +0 -1
  202. package/esm/forms.js +0 -5984
  203. package/esm/forms.js.map +0 -1
  204. package/esm/reducers-aa8cef1e.js +0 -234
  205. package/esm/reducers-aa8cef1e.js.map +0 -1
  206. package/esm/sagas-07e82e18.js +0 -2083
  207. package/esm/sagas-07e82e18.js.map +0 -1
  208. package/esm/selectors-691caf02.js +0 -186
  209. package/esm/selectors-691caf02.js.map +0 -1
  210. package/esm/version-3d9911e2.js.map +0 -1
  211. package/models/forms/index.d.ts +0 -1
  212. package/models/routing/routes.d.ts +0 -133
@@ -1,16 +1,16 @@
1
- import { g as getImmutableOrJS } from './selectors-691caf02.js';
1
+ import { g as getImmutableOrJS } from './selectors-CBdCY0u3.js';
2
2
  import React from 'react';
3
3
 
4
4
  const selectUserIsLoading = state => getImmutableOrJS(state, ['user', 'authenticationState', 'isLoading']);
5
5
  const selectUserIsAuthenticated = state => getImmutableOrJS(state, ['user', 'authenticationState', 'isAuthenticated']);
6
6
  const selectUserIsAuthenticationError = state => getImmutableOrJS(state, ['user', 'authenticationState', 'isAuthenticationError']);
7
7
  const selectUserIsError = state => getImmutableOrJS(state, ['user', 'authenticationState', 'isError']);
8
+
8
9
  /**
9
10
  * DEPRECATED 12/2021 - use selectUserErrorMessage instead
10
11
  * @param state AppState
11
12
  * @returns string
12
13
  */
13
-
14
14
  const selectUserAuthenticationErrorMessage = state => getImmutableOrJS(state, ['user', 'authenticationState', 'errorMessage']);
15
15
  const selectUserErrorMessage = state => getImmutableOrJS(state, ['user', 'authenticationState', 'errorMessage']);
16
16
  const selectClientCredentials = (state, returnType) => getImmutableOrJS(state, ['user', 'authenticationState', 'clientCredentials'], {}, returnType);
@@ -37,33 +37,33 @@ const selectChangePasswordError = state => getImmutableOrJS(state, ['user', 'cha
37
37
 
38
38
  var selectors = /*#__PURE__*/Object.freeze({
39
39
  __proto__: null,
40
- selectUserIsLoading: selectUserIsLoading,
41
- selectUserIsAuthenticated: selectUserIsAuthenticated,
42
- selectUserIsAuthenticationError: selectUserIsAuthenticationError,
43
- selectUserIsError: selectUserIsError,
44
- selectUserAuthenticationErrorMessage: selectUserAuthenticationErrorMessage,
45
- selectUserErrorMessage: selectUserErrorMessage,
40
+ selectChangePasswordError: selectChangePasswordError,
41
+ selectChangePasswordSending: selectChangePasswordSending,
42
+ selectChangePasswordSent: selectChangePasswordSent,
46
43
  selectClientCredentials: selectClientCredentials,
44
+ selectPasswordResetRequestError: selectPasswordResetRequestError,
45
+ selectPasswordResetRequestSending: selectPasswordResetRequestSending,
46
+ selectPasswordResetRequestSent: selectPasswordResetRequestSent,
47
+ selectResetPasswordError: selectResetPasswordError,
48
+ selectResetPasswordSending: selectResetPasswordSending,
49
+ selectResetPasswordSent: selectResetPasswordSent,
47
50
  selectUser: selectUser,
48
- selectUserIsZengentiStaff: selectUserIsZengentiStaff,
49
- selectUserGuid: selectUserGuid,
50
- selectUsername: selectUsername,
51
+ selectUserAuthenticationErrorMessage: selectUserAuthenticationErrorMessage,
51
52
  selectUserEmail: selectUserEmail,
53
+ selectUserErrorMessage: selectUserErrorMessage,
52
54
  selectUserGroups: selectUserGroups,
53
- selectUserSecurityToken: selectUserSecurityToken,
55
+ selectUserGuid: selectUserGuid,
56
+ selectUserIsAuthenticated: selectUserIsAuthenticated,
57
+ selectUserIsAuthenticationError: selectUserIsAuthenticationError,
58
+ selectUserIsError: selectUserIsError,
59
+ selectUserIsLoading: selectUserIsLoading,
60
+ selectUserIsZengentiStaff: selectUserIsZengentiStaff,
54
61
  selectUserRegistration: selectUserRegistration,
55
62
  selectUserRegistrationError: selectUserRegistrationError,
56
63
  selectUserRegistrationIsLoading: selectUserRegistrationIsLoading,
57
64
  selectUserRegistrationIsSuccess: selectUserRegistrationIsSuccess,
58
- selectPasswordResetRequestSending: selectPasswordResetRequestSending,
59
- selectPasswordResetRequestSent: selectPasswordResetRequestSent,
60
- selectPasswordResetRequestError: selectPasswordResetRequestError,
61
- selectResetPasswordSending: selectResetPasswordSending,
62
- selectResetPasswordSent: selectResetPasswordSent,
63
- selectResetPasswordError: selectResetPasswordError,
64
- selectChangePasswordSending: selectChangePasswordSending,
65
- selectChangePasswordSent: selectChangePasswordSent,
66
- selectChangePasswordError: selectChangePasswordError
65
+ selectUserSecurityToken: selectUserSecurityToken,
66
+ selectUsername: selectUsername
67
67
  });
68
68
 
69
69
  const matchUserGroup = (userGroups = [], requiredGroups = []) => {
@@ -73,7 +73,6 @@ const matchUserGroup = (userGroups = [], requiredGroups = []) => {
73
73
  if (requiredGroup.id === userGroup.id) {
74
74
  return true;
75
75
  }
76
-
77
76
  if (requiredGroup.name === userGroup.name) {
78
77
  return true;
79
78
  }
@@ -82,60 +81,8 @@ const matchUserGroup = (userGroups = [], requiredGroups = []) => {
82
81
  return groupMatch;
83
82
  };
84
83
 
85
- const COOKIE_VALID_DAYS = 1; // 0 = Session cookie
86
-
87
- // CookieHelper is a class that takes in and lets us pass around the methods provided
88
- // by `useCookie` react hook in backend code that is connected to the universal-cookies
89
- // instance created in SSR middleware (and provides browser cookies)
90
- class CookieHelper {
91
- get raw() {
92
- return this.cookies;
93
- }
94
-
95
- constructor(cookies, setCookie, removeCookie) {
96
- this.cookies = void 0;
97
- this.setCookie = void 0;
98
- this.removeCookie = void 0;
99
- this.cookies = cookies;
100
- this.setCookie = setCookie;
101
- this.removeCookie = removeCookie;
102
- }
103
-
104
- GetCookie(name) {
105
- const cookie = this.cookies[name];
106
-
107
- if (typeof cookie === 'undefined') {
108
- return null;
109
- }
110
-
111
- return cookie;
112
- }
113
-
114
- SetCookie(name, value, maxAgeDays = COOKIE_VALID_DAYS) {
115
- // update local cookies object as this is provided as a clone of `req.universalCookies`
116
- this.cookies[name] = value; // call the passed setCookie method so we can update the `universal-cookie` instance
117
- // with the change listener attached so the cookies can be set in SSR response
118
-
119
- if (maxAgeDays === 0) this.setCookie(name, value);else this.setCookie(name, value, {
120
- expires: addDays(new Date(), maxAgeDays)
121
- });
122
- }
123
-
124
- DeleteCookie(name) {
125
- // update local cookies object as this is provided as a clone of `req.universalCookies`
126
- delete this.cookies[name];
127
- this.removeCookie(name);
128
- }
129
-
130
- }
131
-
132
- const addDays = (date = new Date(), days) => {
133
- const result = new Date(date);
134
- result.setDate(result.getDate() + days);
135
- return result;
136
- };
137
-
138
84
  /* eslint-disable react/display-name */
85
+ /* eslint-disable @typescript-eslint/naming-convention */
139
86
  const toJS = WrappedComponent => wrappedComponentProps => {
140
87
  const KEY = 0;
141
88
  const VALUE = 1;
@@ -148,5 +95,5 @@ const toJS = WrappedComponent => wrappedComponentProps => {
148
95
  return /*#__PURE__*/React.createElement(WrappedComponent, propsJS);
149
96
  };
150
97
 
151
- export { CookieHelper as C, selectUserIsAuthenticated as a, selectUserGroups as b, selectUserErrorMessage as c, selectUserIsAuthenticationError as d, selectUserIsError as e, selectUserIsLoading as f, selectUser as g, selectUserRegistrationError as h, selectUserRegistrationIsLoading as i, selectUserRegistrationIsSuccess as j, selectUserRegistration as k, selectPasswordResetRequestSending as l, matchUserGroup as m, selectPasswordResetRequestSent as n, selectPasswordResetRequestError as o, selectResetPasswordSending as p, selectResetPasswordSent as q, selectResetPasswordError as r, selectClientCredentials as s, toJS as t, selectChangePasswordSending as u, selectChangePasswordSent as v, selectUserGuid as w, selectChangePasswordError as x, selectors as y };
152
- //# sourceMappingURL=ToJs-df57f31d.js.map
98
+ export { selectUserIsAuthenticationError as a, selectUser as b, selectUserIsLoading as c, selectUserIsAuthenticated as d, selectUserErrorMessage as e, selectUserRegistration as f, selectUserRegistrationIsSuccess as g, selectUserRegistrationIsLoading as h, selectUserRegistrationError as i, selectors as j, selectUserGroups as k, selectClientCredentials as l, matchUserGroup as m, selectResetPasswordError as n, selectResetPasswordSent as o, selectResetPasswordSending as p, selectPasswordResetRequestError as q, selectPasswordResetRequestSent as r, selectUserIsError as s, toJS as t, selectPasswordResetRequestSending as u, selectChangePasswordError as v, selectUserGuid as w, selectChangePasswordSent as x, selectChangePasswordSending as y };
99
+ //# sourceMappingURL=ToJs-CpPNdcXS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToJs-CpPNdcXS.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,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,WAAW,CAAC;MAE9CE,yBAAyB,GAAIF,KAAe,IACvDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,CAAC;MAEpDG,+BAA+B,GAAIH,KAAe,IAC7DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,uBAAuB,CAAC;MAE1DI,iBAAiB,GAAIJ,KAAe,IAC/CC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,SAAS,CAAC;;AAEzD;AACA;AACA;AACA;AACA;AACO,MAAMK,oCAAoC,GAAIL,KAAe,IAClEC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,cAAc,CAAC,CAAC;MAElDM,sBAAsB,GAAIN,KAAe,IACpDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,qBAAqB,EAAE,cAAc,CAAC;AAEvD,MAAMO,uBAAuB,GAAGA,CACrCP,KAAe,EACfQ,UAAsB,KAEtBP,gBAAK,CACHD,KAAK,EACL,CAAC,MAAM,EAAE,qBAAqB,EAAE,mBAAmB,CAAC,EACpD,EAAE,EACFQ,UACF;MAEWC,UAAU,GAAGA,CAACT,KAAe,EAAEQ,UAAsB,KAChEP,gBAAK,CAACD,KAAK,EAAE,MAAM,EAAE,EAAE,EAAEQ,UAAU;AAE9B,MAAME,yBAAyB,GAAIV,KAAe,IACvDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAEpC,MAAMW,cAAc,GAAIX,KAAe,IAAKC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC;AAEvE,MAAMY,cAAc,GAAIZ,KAAe,IAC5CC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAE7B,MAAMa,eAAe,GAAIb,KAAe,IAC7CC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE1B,MAAMc,gBAAgB,GAAGA,CAACd,KAAe,EAAEQ,UAAsB,KACtEP,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,EAAE,EAAEQ,UAAU;AAE1C,MAAMO,uBAAuB,GAAIf,KAAe,IACrDC,gBAAK,CAACD,KAAK,EAAE,CACX,MAAM,EACN,qBAAqB,EACrB,mBAAmB,EACnB,uBAAuB,CACxB,CAAC;AAEG,MAAMgB,sBAAsB,GAAGA,CACpChB,KAAe,EACfQ,UAAsB,KACnBP,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,EAAE,EAAEQ,UAAU;MAE7CS,2BAA2B,GAAIjB,KAAe,IACzDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,CAAC,EAAE,KAAK;MAE1CkB,+BAA+B,GAAIlB,KAAe,IAC7DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,KAAK;MAE9CmB,+BAA+B,GAAInB,KAAe,IAC7DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,KAAK;MAE5CoB,iCAAiC,GAAIpB,KAAe,IAC/DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,WAAW,CAAC;MAE/CqB,8BAA8B,GAAIrB,KAAe,IAC5DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,MAAM,CAAC;MAE1CsB,+BAA+B,GAAItB,KAAe,IAC7DC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,sBAAsB,EAAE,OAAO,CAAC;MAE3CuB,0BAA0B,GAAIvB,KAAe,IACxDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC;MAExCwB,uBAAuB,GAAIxB,KAAe,IACrDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,CAAC;MAEnCyB,wBAAwB,GAAIzB,KAAe,IACtDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,eAAe,EAAE,OAAO,CAAC;MAEpC0B,2BAA2B,GAAI1B,KAAe,IACzDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,WAAW,CAAC;MAEzC2B,wBAAwB,GAAI3B,KAAe,IACtDC,gBAAK,CAACD,KAAK,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,MAAM,CAAC;MAEpC4B,yBAAyB,GAAI5B,KAAe,IACvDC,gBAAK,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;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;AACb,MAAA;AACA,MAAA,IAAIF,aAAa,CAACG,IAAI,KAAKF,SAAS,CAACE,IAAI,EAAE;AACzC,QAAA,OAAO,IAAI;AACb,MAAA;AACF,IAAA,CAAC,CAAC;AACJ,EAAA,CAAC,CAAC;AACF,EAAA,OAAOL,UAAU;AACnB;;ACxBA;AACA;MAGaM,IAAI,GAEbC,gBAA4C,IAE7CC,qBAA4B,IAAK;EAChC,MAAMC,GAAG,GAAG,CAAC;EACb,MAAMC,KAAK,GAAG,CAAC;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;AACzC,IAAA,MAAMS,SAAS,GAAGF,oBAAoB,CAACN,KAAK,CAAC;IAC7CK,QAAQ,CAACE,OAAO,CAAC,GACfC,SAAS,IAAI,OAAOA,SAAS,KAAK,QAAQ,IAAI,MAAM,IAAIA,SAAS,GAC7DA,SAAS,CAACZ,IAAI,EAAE,GAChBY,SAAS;AACf,IAAA,OAAOH,QAAQ;EACjB,CAAC,EACD,EACF,CAAC;AAED,EAAA,oBAAOI,KAAA,CAAAC,aAAA,CAACb,gBAAgB,EAAKI,OAAU,CAAC;AAC1C;;;;"}
@@ -5,4 +5,4 @@ function getDefaultExportFromCjs (x) {
5
5
  }
6
6
 
7
7
  export { commonjsGlobal as c, getDefaultExportFromCjs as g };
8
- //# sourceMappingURL=_commonjsHelpers-1789f0cf.js.map
8
+ //# sourceMappingURL=_commonjsHelpers-BFTU3MAI.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_commonjsHelpers-BFTU3MAI.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
package/esm/client.js CHANGED
@@ -6,57 +6,66 @@ import { unstable_HistoryRouter } from 'react-router-dom';
6
6
  import { loadableReady } from '@loadable/component';
7
7
  import { parse } from 'query-string';
8
8
  import { CookiesProvider } from 'react-cookie';
9
- import { c as createStore, s as selectVersionStatus } from './version-3d9911e2.js';
10
- import { s as setVersionStatus } from './version-9f29becb.js';
11
- import { b as browserHistory, r as rootSaga, p as pickProject } from './App-83107d7e.js';
12
- export { A as ReactApp } from './App-83107d7e.js';
13
- import { c as setCurrentProject } from './selectors-691caf02.js';
14
- import { d as deliveryApi } from './ContensisDeliveryApi-fe57a037.js';
15
- import 'redux';
16
- import 'redux-thunk';
17
- import 'redux-saga';
18
- import 'redux-injectors';
19
- import 'immer';
20
- import './reducers-aa8cef1e.js';
9
+ import { s as selectVersionStatus } from './version-D773TD9j.js';
10
+ import { s as setVersionStatus } from './version-DvjTUbcA.js';
11
+ import { b as browserHistory, r as rootSaga, p as pickProject } from './App-CIlf4cl4.js';
12
+ export { A as ReactApp } from './App-CIlf4cl4.js';
13
+ import { c as createStore } from './store-v2gyr6u2.js';
14
+ import { d as setCurrentProject } from './selectors-CBdCY0u3.js';
15
+ import { d as deliveryApi, S as SSRContextProvider } from './SSRContext-CkiWIvde.js';
21
16
  import '@redux-saga/core/effects';
22
17
  import 'history';
23
18
  import 'loglevel';
24
19
  import 'await-to-js';
25
- import './ChangePassword.container-76fd5e9b.js';
26
- import './ToJs-df57f31d.js';
20
+ import './ChangePassword.container-C0tFq0Tf.js';
21
+ import './ToJs-CpPNdcXS.js';
27
22
  import 'jsonpath-mapper';
28
- import './CookieConstants-3d3b6531.js';
23
+ import './CookieHelper.class-FTURFpz3.js';
29
24
  import 'contensis-delivery-api';
30
- import './RouteLoader-29fd689a.js';
25
+ import './RouteLoader-D7HmVx5l.js';
31
26
  import 'reselect';
27
+ import 'redux';
28
+ import 'redux-thunk';
29
+ import 'redux-saga';
30
+ import 'redux-injectors-19';
31
+ import 'immer';
32
32
 
33
- var hydrateRoot;
34
- var createRoot;
33
+ var client = {};
35
34
 
36
- var m = require$$0;
37
- if (process.env.NODE_ENV === 'production') {
38
- createRoot = m.createRoot;
39
- hydrateRoot = m.hydrateRoot;
40
- } else {
41
- var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
42
- createRoot = function(c, o) {
43
- i.usingClientEntryPoint = true;
44
- try {
45
- return m.createRoot(c, o);
46
- } finally {
47
- i.usingClientEntryPoint = false;
48
- }
49
- };
50
- hydrateRoot = function(c, h, o) {
51
- i.usingClientEntryPoint = true;
52
- try {
53
- return m.hydrateRoot(c, h, o);
54
- } finally {
55
- i.usingClientEntryPoint = false;
56
- }
57
- };
35
+ var hasRequiredClient;
36
+
37
+ function requireClient () {
38
+ if (hasRequiredClient) return client;
39
+ hasRequiredClient = 1;
40
+
41
+ var m = require$$0;
42
+ if (process.env.NODE_ENV === 'production') {
43
+ client.createRoot = m.createRoot;
44
+ client.hydrateRoot = m.hydrateRoot;
45
+ } else {
46
+ var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
47
+ client.createRoot = function(c, o) {
48
+ i.usingClientEntryPoint = true;
49
+ try {
50
+ return m.createRoot(c, o);
51
+ } finally {
52
+ i.usingClientEntryPoint = false;
53
+ }
54
+ };
55
+ client.hydrateRoot = function(c, h, o) {
56
+ i.usingClientEntryPoint = true;
57
+ try {
58
+ return m.hydrateRoot(c, h, o);
59
+ } finally {
60
+ i.usingClientEntryPoint = false;
61
+ }
62
+ };
63
+ }
64
+ return client;
58
65
  }
59
66
 
67
+ var clientExports = requireClient();
68
+
60
69
  class ClientApp {
61
70
  constructor(ReactApp, config) {
62
71
  const documentRoot = document.getElementById('root');
@@ -67,32 +76,29 @@ class ClientApp {
67
76
  withSagas,
68
77
  withEvents
69
78
  } = config;
70
-
71
79
  const GetClientJSX = store => {
72
80
  const ClientJsx = /*#__PURE__*/React.createElement(CookiesProvider, null, /*#__PURE__*/React.createElement(Provider, {
73
81
  store: store
74
82
  }, /*#__PURE__*/React.createElement(unstable_HistoryRouter, {
75
83
  history: browserHistory
76
- }, /*#__PURE__*/React.createElement(ReactApp, {
84
+ }, /*#__PURE__*/React.createElement(SSRContextProvider, null, /*#__PURE__*/React.createElement(ReactApp, {
77
85
  routes: routes,
78
86
  withEvents: withEvents
79
- }))));
87
+ })))));
80
88
  return ClientJsx;
81
89
  };
82
-
83
90
  const isProduction = !(process.env.NODE_ENV !== 'production');
91
+
84
92
  /**
85
93
  * Webpack HMR Setup.
86
94
  */
87
-
88
95
  const HMRRenderer = Component => {
89
96
  if (isProduction) loadableReady(() => {
90
- hydrateRoot(documentRoot, Component);
97
+ clientExports.hydrateRoot(documentRoot, Component);
91
98
  }, {
92
99
  namespace: 'modern'
93
- });else createRoot(documentRoot).render(Component);
100
+ });else clientExports.createRoot(documentRoot).render(Component);
94
101
  };
95
-
96
102
  const hmr = store => {
97
103
  // webpack Hot Module Replacement API
98
104
  if (module.hot) {
@@ -102,20 +108,17 @@ class ClientApp {
102
108
  });
103
109
  }
104
110
  };
105
-
106
111
  const qs = parse(window.location.search);
107
112
  const versionStatus = deliveryApi.getClientSideVersionStatus();
108
-
109
113
  if (window.isDynamic || window.REDUX_DATA || process.env.NODE_ENV !== 'production') {
110
114
  createStore(withReducers, window.REDUX_DATA, browserHistory, stateType).then(store => {
111
115
  const state = store.getState();
112
116
  const ssrVersionStatus = selectVersionStatus(state);
113
117
  if (!ssrVersionStatus) store.dispatch(setVersionStatus(versionStatus));
114
- /* eslint-disable no-console */
115
118
 
119
+ /* eslint-disable no-console */
116
120
  console.log('Hydrating from inline Redux');
117
121
  /* eslint-enable no-console */
118
-
119
122
  store.runSaga(rootSaga(withSagas));
120
123
  store.dispatch(setCurrentProject(pickProject(window.location.hostname, qs), [], window.location.hostname));
121
124
  delete window.REDUX_DATA;
@@ -135,7 +138,6 @@ class ClientApp {
135
138
  });
136
139
  }
137
140
  }
138
-
139
141
  }
140
142
 
141
143
  export { ClientApp as default };
package/esm/client.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sources":["../node_modules/react-dom/client.js","../src/client/client.tsx"],"sourcesContent":["'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","import 'isomorphic-fetch';\nimport React from 'react';\nimport { createRoot, hydrateRoot } from 'react-dom/client';\nimport { Provider as ReduxProvider } from 'react-redux';\nimport { unstable_HistoryRouter as HistoryRouter } from 'react-router-dom';\nimport { loadableReady } from '@loadable/component';\nimport { parse } from 'query-string';\nimport { CookiesProvider } from 'react-cookie';\n\nimport { selectVersionStatus } from '~/redux/selectors/version';\nimport { setVersionStatus } from '~/redux/actions/version';\nimport rootSaga from '~/redux/sagas';\nimport { browserHistory as history } from '~/redux/store/history';\nimport createStore from '~/redux/store/store';\n\nimport { setCurrentProject } from '~/routing/redux/actions';\n\nimport { deliveryApi } from '~/util/ContensisDeliveryApi';\nimport pickProject from '~/util/pickProject';\n\nimport { AppConfig } from '~/config';\n\ndeclare let window: typeof globalThis & {\n isDynamic;\n REDUX_DATA;\n};\n\ntype ReactAppProps = { routes: any; withEvents: any };\n\nclass ClientApp {\n constructor(ReactApp: React.ComponentType<ReactAppProps>, config: AppConfig) {\n const documentRoot = document.getElementById('root') as HTMLElement;\n\n const {\n stateType = 'immutable',\n routes,\n withReducers,\n withSagas,\n withEvents,\n } = config;\n\n const GetClientJSX = store => {\n const ClientJsx = (\n <CookiesProvider>\n <ReduxProvider store={store}>\n <HistoryRouter history={history as any}>\n <ReactApp routes={routes} withEvents={withEvents} />\n </HistoryRouter>\n </ReduxProvider>\n </CookiesProvider>\n );\n return ClientJsx;\n };\n\n const isProduction = !(process.env.NODE_ENV !== 'production');\n\n /**\n * Webpack HMR Setup.\n */\n const HMRRenderer = Component => {\n if (isProduction)\n loadableReady(\n () => {\n hydrateRoot(documentRoot, Component);\n },\n { namespace: 'modern' }\n );\n else createRoot(documentRoot).render(Component);\n };\n\n const hmr = store => {\n // webpack Hot Module Replacement API\n if (module.hot) {\n module.hot.accept(ReactApp as unknown as string, () => {\n // if you are using harmony modules ({modules:false})\n HMRRenderer(GetClientJSX(store));\n });\n }\n };\n\n const qs = parse(window.location.search);\n const versionStatus = deliveryApi.getClientSideVersionStatus();\n\n if (\n window.isDynamic ||\n window.REDUX_DATA ||\n process.env.NODE_ENV !== 'production'\n ) {\n createStore(withReducers, window.REDUX_DATA, history, stateType).then(\n store => {\n const state = store.getState();\n const ssrVersionStatus = selectVersionStatus(state);\n if (!ssrVersionStatus)\n store.dispatch(setVersionStatus(versionStatus));\n\n /* eslint-disable no-console */\n console.log('Hydrating from inline Redux');\n /* eslint-enable no-console */\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(window.location.hostname, qs),\n [],\n window.location.hostname\n )\n );\n\n delete window.REDUX_DATA;\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n }\n );\n } else {\n fetch(`${window.location.pathname}?redux=true`)\n .then(response => response.json())\n .then(data => {\n const ssRedux = JSON.parse(data);\n createStore(withReducers, ssRedux, history, stateType).then(store => {\n store.dispatch(setVersionStatus(versionStatus));\n\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(window.location.hostname, qs),\n [],\n window.location.hostname\n )\n );\n\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n });\n });\n }\n }\n}\n\nexport default ClientApp;\n"],"names":["ClientApp","constructor","ReactApp","config","documentRoot","document","getElementById","stateType","routes","withReducers","withSagas","withEvents","GetClientJSX","store","ClientJsx","ReduxProvider","HistoryRouter","history","isProduction","process","env","NODE_ENV","HMRRenderer","Component","loadableReady","hydrateRoot","namespace","createRoot","render","hmr","module","hot","accept","qs","parse","window","location","search","versionStatus","deliveryApi","getClientSideVersionStatus","isDynamic","REDUX_DATA","createStore","then","state","getState","ssrVersionStatus","selectVersionStatus","dispatch","setVersionStatus","console","log","runSaga","rootSaga","setCurrentProject","pickProject","hostname","fetch","pathname","response","json","data","ssRedux","JSON"],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sources":["../node_modules/react-dom/client.js","../src/client/client.tsx"],"sourcesContent":["'use strict';\n\nvar m = require('react-dom');\nif (process.env.NODE_ENV === 'production') {\n exports.createRoot = m.createRoot;\n exports.hydrateRoot = m.hydrateRoot;\n} else {\n var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n exports.createRoot = function(c, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.createRoot(c, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n exports.hydrateRoot = function(c, h, o) {\n i.usingClientEntryPoint = true;\n try {\n return m.hydrateRoot(c, h, o);\n } finally {\n i.usingClientEntryPoint = false;\n }\n };\n}\n","import 'isomorphic-fetch';\nimport React from 'react';\nimport { createRoot, hydrateRoot } from 'react-dom/client';\nimport { Provider as ReduxProvider } from 'react-redux';\nimport { unstable_HistoryRouter as HistoryRouter } from 'react-router-dom';\nimport { loadableReady } from '@loadable/component';\nimport { parse } from 'query-string';\nimport { CookiesProvider } from 'react-cookie';\n\nimport { selectVersionStatus } from '~/redux/selectors/version';\nimport { setVersionStatus } from '~/redux/actions/version';\nimport rootSaga from '~/redux/sagas';\nimport { browserHistory as history } from '~/redux/store/history';\nimport createStore from '~/redux/store/store';\n\nimport { setCurrentProject } from '~/routing/redux/actions';\n\nimport { deliveryApi } from '~/util/ContensisDeliveryApi';\nimport pickProject from '~/util/pickProject';\nimport { SSRContextProvider } from '~/util/SSRContext';\n\nimport { AppConfig, AppState } from '~/models';\n\ndeclare let window: typeof globalThis & {\n isDynamic: boolean;\n REDUX_DATA: AppState;\n};\n\ntype ReactAppProps = { routes: any; withEvents: any };\n\nclass ClientApp {\n constructor(ReactApp: React.ComponentType<ReactAppProps>, config: AppConfig) {\n const documentRoot = document.getElementById('root') as HTMLElement;\n\n const {\n stateType = 'immutable',\n routes,\n withReducers,\n withSagas,\n withEvents,\n } = config;\n\n const GetClientJSX = store => {\n const ClientJsx = (\n <CookiesProvider>\n <ReduxProvider store={store}>\n <HistoryRouter history={history as any}>\n <SSRContextProvider>\n <ReactApp routes={routes} withEvents={withEvents} />\n </SSRContextProvider>\n </HistoryRouter>\n </ReduxProvider>\n </CookiesProvider>\n );\n return ClientJsx;\n };\n\n const isProduction = !(process.env.NODE_ENV !== 'production');\n\n /**\n * Webpack HMR Setup.\n */\n const HMRRenderer = Component => {\n if (isProduction)\n loadableReady(\n () => {\n hydrateRoot(documentRoot, Component);\n },\n { namespace: 'modern' }\n );\n else createRoot(documentRoot).render(Component);\n };\n\n const hmr = store => {\n // webpack Hot Module Replacement API\n if (module.hot) {\n module.hot.accept(ReactApp as unknown as string, () => {\n // if you are using harmony modules ({modules:false})\n HMRRenderer(GetClientJSX(store));\n });\n }\n };\n\n const qs = parse(window.location.search);\n const versionStatus = deliveryApi.getClientSideVersionStatus();\n\n if (\n window.isDynamic ||\n window.REDUX_DATA ||\n process.env.NODE_ENV !== 'production'\n ) {\n createStore(withReducers, window.REDUX_DATA, history, stateType).then(\n store => {\n const state = store.getState();\n const ssrVersionStatus = selectVersionStatus(state);\n if (!ssrVersionStatus)\n store.dispatch(setVersionStatus(versionStatus));\n\n /* eslint-disable no-console */\n console.log('Hydrating from inline Redux');\n /* eslint-enable no-console */\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(window.location.hostname, qs),\n [],\n window.location.hostname\n )\n );\n\n delete (window as any).REDUX_DATA;\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n }\n );\n } else {\n fetch(`${window.location.pathname}?redux=true`)\n .then(response => response.json())\n .then(data => {\n const ssRedux = JSON.parse(data);\n createStore(withReducers, ssRedux, history, stateType).then(store => {\n store.dispatch(setVersionStatus(versionStatus));\n\n store.runSaga(rootSaga(withSagas));\n store.dispatch(\n setCurrentProject(\n pickProject(window.location.hostname, qs),\n [],\n window.location.hostname\n )\n );\n\n HMRRenderer(GetClientJSX(store));\n\n hmr(store);\n });\n });\n }\n }\n}\n\nexport default ClientApp;\n"],"names":["ClientApp","constructor","ReactApp","config","documentRoot","document","getElementById","stateType","routes","withReducers","withSagas","withEvents","GetClientJSX","store","ClientJsx","React","createElement","CookiesProvider","ReduxProvider","HistoryRouter","history","SSRContextProvider","isProduction","process","env","NODE_ENV","HMRRenderer","Component","loadableReady","hydrateRoot","namespace","createRoot","render","hmr","module","hot","accept","qs","parse","window","location","search","versionStatus","deliveryApi","getClientSideVersionStatus","isDynamic","REDUX_DATA","createStore","then","state","getState","ssrVersionStatus","selectVersionStatus","dispatch","setVersionStatus","console","log","runSaga","rootSaga","setCurrentProject","pickProject","hostname","fetch","pathname","response","json","data","ssRedux","JSON"],"mappings":"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","x_google_ignoreList":[0]}