@zengenti/contensis-react-base 3.0.2-beta.1 → 3.0.2-beta.10

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 (101) hide show
  1. package/cjs/{App-ee485b92.js → App-81a45001.js} +111 -427
  2. package/cjs/App-81a45001.js.map +1 -0
  3. package/cjs/ContensisDeliveryApi-de88df2a.js +231 -0
  4. package/cjs/ContensisDeliveryApi-de88df2a.js.map +1 -0
  5. package/cjs/{RouteLoader-3aa6456e.js → RouteLoader-47d70a26.js} +23 -37
  6. package/{esm/RouteLoader-5171c63f.js.map → cjs/RouteLoader-47d70a26.js.map} +1 -1
  7. package/cjs/{ToJs-a9a8522b.js → ToJs-61c03582.js} +3 -4
  8. package/cjs/{ToJs-a9a8522b.js.map → ToJs-61c03582.js.map} +1 -1
  9. package/cjs/client.js +20 -27
  10. package/cjs/client.js.map +1 -1
  11. package/cjs/contensis-react-base.js +124 -188
  12. package/cjs/contensis-react-base.js.map +1 -1
  13. package/cjs/forms.js +15 -154
  14. package/cjs/forms.js.map +1 -1
  15. package/cjs/{fromJSLeaveImmer-e74c673c.js → fromJSLeaveImmer-7c363211.js} +1 -4
  16. package/cjs/{fromJSLeaveImmer-e74c673c.js.map → fromJSLeaveImmer-7c363211.js.map} +1 -1
  17. package/cjs/{login-840860bc.js → login-51b66359.js} +64 -113
  18. package/cjs/login-51b66359.js.map +1 -0
  19. package/cjs/{reducers-3a4f8971.js → reducers-9afb5f89.js} +14 -31
  20. package/cjs/reducers-9afb5f89.js.map +1 -0
  21. package/cjs/redux.js +17 -17
  22. package/cjs/redux.js.map +1 -1
  23. package/cjs/routing.js +6 -7
  24. package/cjs/routing.js.map +1 -1
  25. package/cjs/{sagas-e2a34262.js → sagas-6d12e7ca.js} +183 -282
  26. package/cjs/sagas-6d12e7ca.js.map +1 -0
  27. package/cjs/search.js +56 -82
  28. package/cjs/search.js.map +1 -1
  29. package/cjs/{selectors-656da4b7.js → selectors-c76c2676.js} +84 -7
  30. package/cjs/selectors-c76c2676.js.map +1 -0
  31. package/cjs/urls-6fcaf4c6.js.map +1 -1
  32. package/cjs/user.js +4 -13
  33. package/cjs/user.js.map +1 -1
  34. package/cjs/util.js +45 -53
  35. package/cjs/util.js.map +1 -1
  36. package/cjs/{version-78dfc3bd.js → version-38afaf2a.js} +45 -158
  37. package/cjs/version-38afaf2a.js.map +1 -0
  38. package/cjs/version-886f49d8.js +98 -0
  39. package/cjs/version-886f49d8.js.map +1 -0
  40. package/esm/{App-640239d2.js → App-5f914483.js} +93 -407
  41. package/esm/App-5f914483.js.map +1 -0
  42. package/esm/ContensisDeliveryApi-ad06857d.js +227 -0
  43. package/esm/ContensisDeliveryApi-ad06857d.js.map +1 -0
  44. package/esm/{RouteLoader-5171c63f.js → RouteLoader-f5d5f733.js} +22 -36
  45. package/{cjs/RouteLoader-3aa6456e.js.map → esm/RouteLoader-f5d5f733.js.map} +1 -1
  46. package/esm/{ToJs-4e02a04d.js → ToJs-0066e629.js} +3 -4
  47. package/esm/{ToJs-4e02a04d.js.map → ToJs-0066e629.js.map} +1 -1
  48. package/esm/client.js +15 -22
  49. package/esm/client.js.map +1 -1
  50. package/esm/contensis-react-base.js +119 -183
  51. package/esm/contensis-react-base.js.map +1 -1
  52. package/esm/forms.js +15 -154
  53. package/esm/forms.js.map +1 -1
  54. package/esm/{fromJSLeaveImmer-0114ffcf.js → fromJSLeaveImmer-e2dacd63.js} +1 -4
  55. package/esm/{fromJSLeaveImmer-0114ffcf.js.map → fromJSLeaveImmer-e2dacd63.js.map} +1 -1
  56. package/esm/{login-57395c9c.js → login-4d07c2de.js} +63 -112
  57. package/esm/login-4d07c2de.js.map +1 -0
  58. package/esm/{reducers-8e5d6232.js → reducers-3d5c37d1.js} +14 -31
  59. package/esm/reducers-3d5c37d1.js.map +1 -0
  60. package/esm/redux.js +9 -8
  61. package/esm/redux.js.map +1 -1
  62. package/esm/routing.js +3 -4
  63. package/esm/routing.js.map +1 -1
  64. package/esm/{sagas-bb925ef4.js → sagas-53d2aefb.js} +135 -235
  65. package/esm/sagas-53d2aefb.js.map +1 -0
  66. package/esm/search.js +57 -83
  67. package/esm/search.js.map +1 -1
  68. package/esm/{selectors-a5e5835b.js → selectors-3f0d804d.js} +70 -7
  69. package/esm/selectors-3f0d804d.js.map +1 -0
  70. package/esm/urls-eac9a747.js.map +1 -1
  71. package/esm/user.js +6 -15
  72. package/esm/user.js.map +1 -1
  73. package/esm/util.js +42 -53
  74. package/esm/util.js.map +1 -1
  75. package/esm/{version-e3a5ec66.js → version-dd31c7f0.js} +32 -141
  76. package/esm/version-dd31c7f0.js.map +1 -0
  77. package/esm/version-f4629693.js +87 -0
  78. package/esm/version-f4629693.js.map +1 -0
  79. package/models/util/ContensisDeliveryApi.d.ts +6 -0
  80. package/models/util/index.d.ts +1 -0
  81. package/package.json +1 -1
  82. package/cjs/App-ee485b92.js.map +0 -1
  83. package/cjs/actions-8dc9e8de.js +0 -87
  84. package/cjs/actions-8dc9e8de.js.map +0 -1
  85. package/cjs/login-840860bc.js.map +0 -1
  86. package/cjs/reducers-3a4f8971.js.map +0 -1
  87. package/cjs/sagas-e2a34262.js.map +0 -1
  88. package/cjs/selectors-656da4b7.js.map +0 -1
  89. package/cjs/version-78dfc3bd.js.map +0 -1
  90. package/cjs/version-eba6d09b.js +0 -20
  91. package/cjs/version-eba6d09b.js.map +0 -1
  92. package/esm/App-640239d2.js.map +0 -1
  93. package/esm/actions-180948dd.js +0 -72
  94. package/esm/actions-180948dd.js.map +0 -1
  95. package/esm/login-57395c9c.js.map +0 -1
  96. package/esm/reducers-8e5d6232.js.map +0 -1
  97. package/esm/sagas-bb925ef4.js.map +0 -1
  98. package/esm/selectors-a5e5835b.js.map +0 -1
  99. package/esm/version-2485e2fb.js +0 -15
  100. package/esm/version-2485e2fb.js.map +0 -1
  101. package/esm/version-e3a5ec66.js.map +0 -1
@@ -1,20 +1,18 @@
1
- import { g as getImmutableOrJS, t as action } from './selectors-a5e5835b.js';
2
- import { all } from '@redux-saga/core/effects';
3
1
  import { compose, applyMiddleware, createStore as createStore$1, combineReducers } from 'redux';
4
2
  import thunkMiddleware from 'redux-thunk';
5
3
  import createSagaMiddleware, { END } from 'redux-saga';
6
4
  import { createInjectorsEnhancer } from 'redux-injectors';
7
5
  import { produce } from 'immer';
8
6
  import merge from 'deepmerge';
9
- import { h as SET_TARGET_PROJECT, i as SET_SURROGATE_KEYS, e as SET_SIBLINGS, b as SET_ROUTE, S as SET_NAVIGATION_PATH, U as UPDATE_LOADING_STATE, c as SET_ENTRY, d as SET_ANCESTORS } from './actions-180948dd.js';
10
- import { U as UserReducer } from './reducers-8e5d6232.js';
7
+ import { B as SET_TARGET_PROJECT, C as SET_SURROGATE_KEYS, n as SET_SIBLINGS, d as SET_ROUTE, S as SET_NAVIGATION_PATH, U as UPDATE_LOADING_STATE, l as SET_ENTRY, m as SET_ANCESTORS, g as getImmutableOrJS } from './selectors-3f0d804d.js';
8
+ import { U as UserReducer } from './reducers-3d5c37d1.js';
11
9
 
12
10
  const ACTION_PREFIX = '@NAVIGATION/';
13
11
  const GET_NODE_TREE = `${ACTION_PREFIX}_GET_NODE_TREE`;
14
12
  const SET_NODE_TREE = `${ACTION_PREFIX}_SET_NODE_TREE`;
15
13
  const GET_NODE_TREE_ERROR = `${ACTION_PREFIX}_GET_NODE_TREE_ERROR`;
16
14
 
17
- var navigation$1 = /*#__PURE__*/Object.freeze({
15
+ var navigation = /*#__PURE__*/Object.freeze({
18
16
  __proto__: null,
19
17
  GET_NODE_TREE: GET_NODE_TREE,
20
18
  SET_NODE_TREE: SET_NODE_TREE,
@@ -37,14 +35,12 @@ var NavigationReducer = produce((state, action) => {
37
35
  state.isReady = true;
38
36
  return;
39
37
  }
40
-
41
38
  case GET_NODE_TREE_ERROR:
42
39
  {
43
40
  state.error.isError = true;
44
41
  state.error.message = action.error || 'Unknown error occurred';
45
42
  return;
46
43
  }
47
-
48
44
  default:
49
45
  return;
50
46
  }
@@ -88,7 +84,6 @@ var RoutingReducer = produce((state, action) => {
88
84
  state.currentNodeAncestors = action.ancestors;
89
85
  return;
90
86
  }
91
-
92
87
  case SET_ENTRY:
93
88
  {
94
89
  const {
@@ -103,7 +98,6 @@ var RoutingReducer = produce((state, action) => {
103
98
  } = action;
104
99
  let defaultStatus = 200;
105
100
  if (notFound === true && isError === false) defaultStatus = 404;else if (isError === true) defaultStatus = statusCode || 500;
106
-
107
101
  if (!entry) {
108
102
  state.entryID = null;
109
103
  state.entry = null;
@@ -121,7 +115,6 @@ var RoutingReducer = produce((state, action) => {
121
115
  state.isLoading = isLoading;
122
116
  state.notFound = notFound;
123
117
  state.statusCode = statusCode || defaultStatus;
124
-
125
118
  if (mappedEntry && Object.keys(mappedEntry).length > 0) {
126
119
  state.mappedEntry = mappedEntry;
127
120
  state.entry = {
@@ -129,87 +122,77 @@ var RoutingReducer = produce((state, action) => {
129
122
  };
130
123
  }
131
124
  }
132
-
133
125
  if (!node) {
134
126
  state.currentNode = null;
135
127
  } else {
136
128
  // On Set Node, we reset all dependants.
137
- state.currentNode = node; // eslint-disable-next-line @typescript-eslint/no-unused-vars
138
-
129
+ state.currentNode = node;
130
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
139
131
  const {
140
132
  entry,
141
133
  ...nodeWithoutEntry
142
134
  } = node; // We have the entry stored elsewhere, so lets not keep it twice.
143
-
144
135
  state.currentNode = nodeWithoutEntry;
145
136
  }
146
-
147
137
  return;
148
138
  }
149
-
150
139
  case UPDATE_LOADING_STATE:
151
140
  {
152
141
  state.isLoading = action.isLoading;
153
142
  return;
154
143
  }
155
-
156
144
  case SET_NAVIGATION_PATH:
157
145
  {
158
146
  let staticRoute = {};
159
-
160
147
  if (action.staticRoute) {
161
- staticRoute = { ...action.staticRoute
148
+ staticRoute = {
149
+ ...action.staticRoute
162
150
  };
163
151
  }
164
-
165
152
  if (action.path) {
166
153
  var _state$entry, _state$entry$sys;
167
-
168
154
  // Don't run a path update on initial load as we allready should have it in redux
169
155
  const entryUri = state === null || state === void 0 ? void 0 : (_state$entry = state.entry) === null || _state$entry === void 0 ? void 0 : (_state$entry$sys = _state$entry.sys) === null || _state$entry$sys === void 0 ? void 0 : _state$entry$sys.uri;
170
-
171
156
  if (entryUri !== action.path) {
172
157
  state.currentPath = action.path;
173
158
  state.location = action.location;
174
- state.staticRoute = { ...staticRoute,
175
- route: { ...staticRoute.route,
159
+ state.staticRoute = {
160
+ ...staticRoute,
161
+ route: {
162
+ ...staticRoute.route,
176
163
  component: null
177
164
  }
178
165
  };
179
166
  state.isLoading = typeof window !== 'undefined';
180
167
  } else {
181
168
  state.location = action.location;
182
- state.staticRoute = { ...staticRoute,
183
- route: { ...staticRoute.route,
169
+ state.staticRoute = {
170
+ ...staticRoute,
171
+ route: {
172
+ ...staticRoute.route,
184
173
  component: null
185
174
  }
186
175
  };
187
176
  }
188
177
  }
189
-
190
178
  return;
191
179
  }
192
-
193
180
  case SET_ROUTE:
194
181
  {
195
182
  state.nextPath = action.path;
196
183
  return;
197
184
  }
198
-
199
185
  case SET_SIBLINGS:
200
186
  {
201
187
  // Can be null in some cases like the homepage.
202
188
  let currentNodeSiblingParent = null;
203
-
204
189
  if (action.siblings && action.siblings.length > 0) {
205
190
  currentNodeSiblingParent = action.siblings[0].parentId;
206
191
  }
207
-
208
192
  state.currentNodeSiblings = action.siblings;
209
193
  state.currentNodeSiblingsParent = currentNodeSiblingParent;
210
194
  return;
211
195
  }
212
-
213
196
  case SET_SURROGATE_KEYS:
214
197
  {
215
198
  // console.info(`SET_SURROGATE_KEYS: '${action.url}' keys: ${action.keys}`);
@@ -218,7 +201,6 @@ var RoutingReducer = produce((state, action) => {
218
201
  });
219
202
  return;
220
203
  }
221
-
222
204
  case SET_TARGET_PROJECT:
223
205
  {
224
206
  state.currentProject = action.project;
@@ -226,7 +208,6 @@ var RoutingReducer = produce((state, action) => {
226
208
  state.currentHostname = action.hostname;
227
209
  return;
228
210
  }
229
-
230
211
  default:
231
212
  return state;
232
213
  }
@@ -254,14 +235,12 @@ var VersionReducer = produce((state, action) => {
254
235
  state.contensisVersionStatus = action.status;
255
236
  return;
256
237
  }
257
-
258
238
  case SET_VERSION:
259
239
  {
260
240
  state.commitRef = action.commitRef;
261
241
  state.buildNo = action.buildNo;
262
242
  return;
263
243
  }
264
-
265
244
  default:
266
245
  return;
267
246
  }
@@ -272,13 +251,11 @@ var VersionReducer = produce((state, action) => {
272
251
  * provided history object. This will prevent these actions from reaching your
273
252
  * reducer or any middleware that comes after this one.
274
253
  */
275
-
276
254
  /* eslint-disable no-unused-vars */
277
255
  const routerMiddleware = history => store => next => action => {
278
256
  if (action.type !== 'CALL_HISTORY_METHOD') {
279
257
  return next(action);
280
258
  }
281
-
282
259
  const {
283
260
  payload: {
284
261
  method,
@@ -289,15 +266,14 @@ const routerMiddleware = history => store => next => action => {
289
266
  };
290
267
 
291
268
  let reduxStore;
269
+
292
270
  /* eslint-disable no-underscore-dangle */
293
271
 
294
272
  var createStore = (async (featureReducers, initialState, history, stateType) => {
295
273
  let reduxDevToolsMiddleware = f => f;
296
-
297
274
  if (typeof window != 'undefined') {
298
275
  reduxDevToolsMiddleware = window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : f => f;
299
276
  }
300
-
301
277
  const sagaMiddleware = createSagaMiddleware();
302
278
  const reducers = {
303
279
  navigation: NavigationReducer,
@@ -305,35 +281,26 @@ var createStore = (async (featureReducers, initialState, history, stateType) =>
305
281
  user: UserReducer,
306
282
  version: VersionReducer,
307
283
  ...featureReducers
308
- }; // Reassign the combiner and fromJS functions when
309
- // stateType is 'immutable' with dynamic imports
284
+ };
310
285
 
286
+ // Reassign the combiner and fromJS functions when
287
+ // stateType is 'immutable' with dynamic imports
311
288
  let combiner = combineReducers;
312
-
313
289
  let fromJS = obj => obj;
314
-
315
290
  globalThis.STATE_TYPE = stateType;
316
-
317
291
  if (stateType === 'immutable') {
318
- globalThis.immutable = await import(
319
- /* webpackChunkName: "immutable" */
320
- 'immutable');
321
- fromJS = (await import(
322
- /* webpackChunkName: "from-js" */
323
- './fromJSLeaveImmer-0114ffcf.js')).default;
324
- combiner = (await import(
325
- /* webpackChunkName: "redux-immutable" */
326
- 'redux-immutable')).combineReducers;
292
+ globalThis.immutable = await import( /* webpackChunkName: "immutable" */'immutable');
293
+ fromJS = (await import( /* webpackChunkName: "from-js" */'./fromJSLeaveImmer-e2dacd63.js')).default;
294
+ combiner = (await import( /* webpackChunkName: "redux-immutable" */'redux-immutable')).combineReducers;
327
295
  }
328
-
329
296
  const createReducer = (injectedReducers = {}) => {
330
- const rootReducer = combiner({ ...injectedReducers,
297
+ const rootReducer = combiner({
298
+ ...injectedReducers,
331
299
  // other non-injected reducers go here
332
300
  ...reducers
333
301
  });
334
302
  return rootReducer;
335
303
  };
336
-
337
304
  const store = initialState => {
338
305
  const runSaga = sagaMiddleware.run;
339
306
  const middleware = compose(applyMiddleware(thunkMiddleware, sagaMiddleware, routerMiddleware(history)), createInjectorsEnhancer({
@@ -342,99 +309,23 @@ var createStore = (async (featureReducers, initialState, history, stateType) =>
342
309
  }), reduxDevToolsMiddleware);
343
310
  const store = createStore$1(createReducer(), initialState, middleware);
344
311
  store.runSaga = runSaga;
345
-
346
312
  store.close = () => store.dispatch(END);
347
-
348
313
  return store;
349
314
  };
350
-
351
315
  reduxStore = store(fromJS(initialState));
352
316
  return reduxStore;
353
317
  });
354
318
 
355
- const hasNavigationTree = state => getImmutableOrJS(state, ['navigation', 'isReady']);
356
- const selectNavigationRoot = state => getImmutableOrJS(state, ['navigation', 'root']);
357
- const selectNavigationChildren = state => getImmutableOrJS(state, ['navigation', 'root', 'children']);
358
- const selectNavigationDepends = () => [];
359
-
360
- var navigation = /*#__PURE__*/Object.freeze({
361
- __proto__: null,
362
- hasNavigationTree: hasNavigationTree,
363
- selectNavigationRoot: selectNavigationRoot,
364
- selectNavigationChildren: selectNavigationChildren,
365
- selectNavigationDepends: selectNavigationDepends
366
- });
367
-
368
- const convertSagaArray = sagas => {
369
- if (Array.isArray(sagas)) return function* rootSaga() {
370
- yield all(sagas);
371
- };
372
- return sagas;
373
- };
374
- const injectReducer = ({
375
- key,
376
- reducer
377
- }, store = reduxStore) => {
378
- if (Reflect.has(store.injectedReducers, key) && store.injectedReducers[key] === reducer) return;
379
- store.injectedReducers[key] = reducer;
380
- store.replaceReducer(store.createReducer(store.injectedReducers));
381
- };
382
- const injectSaga = ({
383
- key,
384
- saga
385
- }, store = reduxStore) => {
386
- const rootSaga = convertSagaArray(saga);
387
- let hasSaga = Reflect.has(store.injectedSagas, key);
388
-
389
- if (process.env.NODE_ENV !== 'production') {
390
- const oldDescriptor = store.injectedSagas[key]; // enable hot reloading of daemon and once-till-unmount sagas
391
-
392
- if (hasSaga && oldDescriptor.saga !== rootSaga) {
393
- oldDescriptor.task.cancel();
394
- hasSaga = false;
395
- }
396
- }
397
-
398
- console.info('injectSaga, key: ', key, 'hasSaga: ', hasSaga);
399
-
400
- if (!hasSaga) {
401
- store.injectedSagas[key] = {
402
- key,
403
- saga: rootSaga,
404
- task: store.runSaga(rootSaga)
405
- };
406
- }
407
- };
408
- const injectRedux = ({
409
- key,
410
- reducer,
411
- saga
412
- }, store = reduxStore) => {
413
- console.info('injectRedux, key: ', key);
414
- if (reducer) injectReducer({
415
- key,
416
- reducer
417
- }, store);
418
- if (saga) injectSaga({
419
- key,
420
- saga
421
- }, store);
422
- };
423
- const useInjectRedux = injectRedux;
424
-
425
- const setVersion = (commitRef, buildNo) => action(SET_VERSION, {
426
- commitRef,
427
- buildNo
428
- });
429
- const setVersionStatus = status => action(SET_VERSION_STATUS, {
430
- status
431
- });
319
+ const selectCommitRef = state => getImmutableOrJS(state, ['version', 'commitRef']);
320
+ const selectBuildNumber = state => getImmutableOrJS(state, ['version', 'buildNo']);
321
+ const selectVersionStatus = state => getImmutableOrJS(state, ['version', 'contensisVersionStatus']);
432
322
 
433
323
  var version = /*#__PURE__*/Object.freeze({
434
324
  __proto__: null,
435
- setVersion: setVersion,
436
- setVersionStatus: setVersionStatus
325
+ selectCommitRef: selectCommitRef,
326
+ selectBuildNumber: selectBuildNumber,
327
+ selectVersionStatus: selectVersionStatus
437
328
  });
438
329
 
439
- export { GET_NODE_TREE as G, SET_NODE_TREE as S, setVersion as a, GET_NODE_TREE_ERROR as b, createStore as c, version as d, navigation as e, convertSagaArray as f, injectReducer as g, hasNavigationTree as h, injectRedux as i, injectSaga as j, navigation$1 as n, reduxStore as r, setVersionStatus as s, useInjectRedux as u, version$1 as v };
440
- //# sourceMappingURL=version-e3a5ec66.js.map
330
+ export { GET_NODE_TREE as G, SET_NODE_TREE as S, GET_NODE_TREE_ERROR as a, SET_VERSION_STATUS as b, createStore as c, SET_VERSION as d, version as e, selectCommitRef as f, selectBuildNumber as g, navigation as n, reduxStore as r, selectVersionStatus as s, version$1 as v };
331
+ //# sourceMappingURL=version-dd31c7f0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-dd31c7f0.js","sources":["../src/redux/types/navigation.js","../src/redux/reducers/navigation.ts","../src/util/merge.ts","../src/routing/redux/reducers.ts","../src/redux/types/version.js","../src/redux/reducers/version.ts","../src/redux/store/routerMiddleware.js","../src/redux/store/store.ts","../src/redux/selectors/version.js"],"sourcesContent":["const ACTION_PREFIX = '@NAVIGATION/';\nexport const GET_NODE_TREE = `${ACTION_PREFIX}_GET_NODE_TREE`;\nexport const SET_NODE_TREE = `${ACTION_PREFIX}_SET_NODE_TREE`;\nexport const GET_NODE_TREE_ERROR = `${ACTION_PREFIX}_GET_NODE_TREE_ERROR`;\n","import { Draft, produce } from 'immer';\nimport { SET_NODE_TREE, GET_NODE_TREE_ERROR } from '~/redux/types/navigation';\n\nconst initialState = {\n root: null,\n error: {\n isError: false,\n message: null,\n },\n isReady: false,\n};\n\nexport default produce((state: Draft<any>, action) => {\n switch (action.type) {\n case SET_NODE_TREE: {\n state.root = action.nodes;\n state.isReady = true;\n return;\n }\n case GET_NODE_TREE_ERROR: {\n state.error.isError = true;\n state.error.message = action.error || 'Unknown error occurred';\n return;\n }\n default:\n return;\n }\n}, initialState);\n","import merge from 'deepmerge';\n\nexport const combineMerge = (target: any, source: any, options: any) => {\n const destination = target.slice();\n\n source.forEach((item: any, index: any) => {\n if (typeof destination[index] === 'undefined') {\n destination[index] = options.cloneUnlessOtherwiseSpecified(item, options);\n } else if (options.isMergeableObject(item)) {\n destination[index] = merge(target[index], item, options);\n } else if (target.indexOf(item) === -1) {\n destination.push(item);\n }\n });\n return destination;\n};\n","import { Draft, produce } from 'immer';\nimport merge from 'deepmerge';\n\nimport {\n SET_ENTRY,\n SET_NAVIGATION_PATH,\n SET_ANCESTORS,\n SET_TARGET_PROJECT,\n SET_ROUTE,\n SET_SIBLINGS,\n SET_SURROGATE_KEYS,\n UPDATE_LOADING_STATE,\n} from './types';\nimport { combineMerge } from '~/util/merge';\n\nconst initialState = {\n currentHostname: null,\n currentPath: '/',\n currentNode: {},\n currentNodeAncestors: [],\n currentProject: 'unknown',\n entryID: null,\n entry: null,\n error: undefined,\n isError: false,\n isLoading: false,\n location: {},\n mappedEntry: null,\n notFound: false,\n staticRoute: null,\n statusCode: 200,\n};\n\nexport default produce((state: Draft<any>, action) => {\n switch (action.type) {\n case SET_ANCESTORS: {\n state.currentNodeAncestors = action.ancestors;\n return;\n }\n case SET_ENTRY: {\n const {\n entry,\n error,\n mappedEntry,\n node = {},\n isError = false,\n isLoading = false,\n notFound = false,\n statusCode,\n } = action;\n\n let defaultStatus = 200;\n if (notFound === true && isError === false) defaultStatus = 404;\n else if (isError === true) defaultStatus = statusCode || 500;\n\n if (!entry) {\n state.entryID = null;\n state.entry = null;\n state.error = error;\n state.mappedEntry = null;\n state.isError = isError;\n state.isLoading = isLoading;\n state.notFound = notFound;\n state.statusCode = statusCode || defaultStatus;\n } else {\n state.entryID = action.id;\n state.entry = entry;\n state.error = error;\n state.isError = isError;\n state.isLoading = isLoading;\n state.notFound = notFound;\n state.statusCode = statusCode || defaultStatus;\n\n if (mappedEntry && Object.keys(mappedEntry).length > 0) {\n state.mappedEntry = mappedEntry;\n state.entry = { sys: entry.sys };\n }\n }\n\n if (!node) {\n state.currentNode = null;\n } else {\n // On Set Node, we reset all dependants.\n state.currentNode = node;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { entry, ...nodeWithoutEntry } = node; // We have the entry stored elsewhere, so lets not keep it twice.\n state.currentNode = nodeWithoutEntry;\n }\n return;\n }\n case UPDATE_LOADING_STATE: {\n state.isLoading = action.isLoading;\n return;\n }\n case SET_NAVIGATION_PATH: {\n let staticRoute = {} as any;\n if (action.staticRoute) {\n staticRoute = { ...action.staticRoute };\n }\n if (action.path) {\n // Don't run a path update on initial load as we allready should have it in redux\n const entryUri = state?.entry?.sys?.uri;\n if (entryUri !== action.path) {\n state.currentPath = action.path;\n state.location = action.location;\n state.staticRoute = {\n ...staticRoute,\n route: { ...staticRoute.route, component: null },\n };\n\n state.isLoading = typeof window !== 'undefined';\n } else {\n state.location = action.location;\n state.staticRoute = {\n ...staticRoute,\n route: { ...staticRoute.route, component: null },\n };\n }\n }\n return;\n }\n case SET_ROUTE: {\n state.nextPath = action.path;\n return;\n }\n case SET_SIBLINGS: {\n // Can be null in some cases like the homepage.\n let currentNodeSiblingParent = null;\n if (action.siblings && action.siblings.length > 0) {\n currentNodeSiblingParent = action.siblings[0].parentId;\n }\n\n state.currentNodeSiblings = action.siblings;\n state.currentNodeSiblingsParent = currentNodeSiblingParent;\n return;\n }\n case SET_SURROGATE_KEYS: {\n // console.info(`SET_SURROGATE_KEYS: '${action.url}' keys: ${action.keys}`);\n state.surrogateKeys = merge(\n state.surrogateKeys,\n (action.keys || '').split(' '),\n { arrayMerge: combineMerge }\n );\n return;\n }\n case SET_TARGET_PROJECT: {\n state.currentProject = action.project;\n state.allowedGroups = action.allowedGroups;\n state.currentHostname = action.hostname;\n return;\n }\n default:\n return state;\n }\n}, initialState);\n","const VERSION_PREFIX = '@VERSION/';\nexport const SET_VERSION = `${VERSION_PREFIX}SET_VERSION`;\nexport const SET_VERSION_STATUS = `${VERSION_PREFIX}SET_VERSION_STATUS`;\n","import { Draft, produce } from 'immer';\nimport { SET_VERSION, SET_VERSION_STATUS } from '~/redux/types/version';\n\nconst initialState = {\n commitRef: null,\n buildNo: null,\n contensisVersionStatus: null as 'latest' | 'published' | null,\n};\n\nexport default produce((state: Draft<any>, action) => {\n switch (action.type) {\n case SET_VERSION_STATUS: {\n state.contensisVersionStatus = action.status;\n return;\n }\n case SET_VERSION: {\n state.commitRef = action.commitRef;\n state.buildNo = action.buildNo;\n return;\n }\n default:\n return;\n }\n}, initialState);\n","/**\n * This middleware captures 'CALL_HISTORY_METHOD' actions to redirect to the\n * provided history object. This will prevent these actions from reaching your\n * reducer or any middleware that comes after this one.\n */\n/* eslint-disable no-unused-vars */\nconst routerMiddleware = history => store => next => action => {\n if (action.type !== 'CALL_HISTORY_METHOD') {\n return next(action);\n }\n\n const {\n payload: { method, args },\n } = action;\n history[method](...args);\n};\n\nexport default routerMiddleware;\n","import {\n applyMiddleware,\n combineReducers,\n compose,\n createStore,\n Action,\n Store,\n StoreEnhancer,\n} from 'redux';\nimport thunkMiddleware from 'redux-thunk';\nimport createSagaMiddleware, { END } from 'redux-saga';\nimport { createInjectorsEnhancer } from 'redux-injectors';\n\n// Core reducers\nimport NavigationReducer from '../reducers/navigation';\nimport RoutingReducer from '~/routing/redux/reducers';\nimport UserReducer from '~/user/redux/reducers';\nimport VersionReducer from '../reducers/version';\nimport routerMiddleware from './routerMiddleware';\nimport { AppState } from '../appstate';\nimport { History, MemoryHistory } from 'history';\nimport { StateType } from '~/config';\n\nexport let reduxStore;\n\n/* eslint-disable no-underscore-dangle */\ndeclare let window: Window &\n typeof globalThis & {\n __REDUX_DEVTOOLS_EXTENSION__: any;\n };\n\nexport default async (\n featureReducers: any,\n initialState: AppState,\n history: History | MemoryHistory,\n stateType: StateType\n) => {\n let reduxDevToolsMiddleware = f => f;\n\n if (typeof window != 'undefined') {\n reduxDevToolsMiddleware = window.__REDUX_DEVTOOLS_EXTENSION__\n ? window.__REDUX_DEVTOOLS_EXTENSION__()\n : f => f;\n }\n\n const sagaMiddleware = createSagaMiddleware();\n\n const reducers = {\n navigation: NavigationReducer,\n routing: RoutingReducer,\n user: UserReducer,\n version: VersionReducer,\n ...featureReducers,\n };\n\n // Reassign the combiner and fromJS functions when\n // stateType is 'immutable' with dynamic imports\n let combiner = combineReducers;\n let fromJS: any = (obj: any) => obj;\n globalThis.STATE_TYPE = stateType;\n\n if (stateType === 'immutable') {\n globalThis.immutable = await import(\n /* webpackChunkName: \"immutable\" */ 'immutable'\n );\n\n fromJS = (\n await import(/* webpackChunkName: \"from-js\" */ '~/util/fromJSLeaveImmer')\n ).default;\n\n combiner = (\n await import(/* webpackChunkName: \"redux-immutable\" */ 'redux-immutable')\n ).combineReducers;\n }\n\n const createReducer = (injectedReducers = {}) => {\n const rootReducer = combiner<AppState>({\n ...injectedReducers,\n // other non-injected reducers go here\n ...reducers,\n });\n\n return rootReducer;\n };\n\n const store = (initialState: AppState) => {\n const runSaga = sagaMiddleware.run;\n\n const middleware: StoreEnhancer<\n {\n dispatch: unknown;\n },\n unknown\n > = compose(\n applyMiddleware(\n thunkMiddleware,\n sagaMiddleware,\n routerMiddleware(history)\n ),\n createInjectorsEnhancer({\n createReducer,\n runSaga,\n }),\n reduxDevToolsMiddleware\n );\n\n const store: Store<AppState, Action<any>> & {\n runSaga?: typeof runSaga;\n close?: () => void;\n } = createStore<AppState, Action<any>, unknown, unknown>(\n createReducer(),\n initialState,\n middleware\n );\n\n store.runSaga = runSaga;\n store.close = () => store.dispatch(END);\n\n return store;\n };\n\n reduxStore = store(fromJS(initialState));\n return reduxStore;\n};\n","import { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const selectCommitRef = state => getIn(state, ['version', 'commitRef']);\n\nexport const selectBuildNumber = state => getIn(state, ['version', 'buildNo']);\n\nexport const selectVersionStatus = state =>\n getIn(state, ['version', 'contensisVersionStatus']);\n"],"names":["ACTION_PREFIX","GET_NODE_TREE","SET_NODE_TREE","GET_NODE_TREE_ERROR","initialState","root","error","isError","message","isReady","produce","state","action","type","nodes","combineMerge","target","source","options","destination","slice","forEach","item","index","cloneUnlessOtherwiseSpecified","isMergeableObject","merge","indexOf","push","currentHostname","currentPath","currentNode","currentNodeAncestors","currentProject","entryID","entry","undefined","isLoading","location","mappedEntry","notFound","staticRoute","statusCode","SET_ANCESTORS","ancestors","SET_ENTRY","node","defaultStatus","id","Object","keys","length","sys","nodeWithoutEntry","UPDATE_LOADING_STATE","SET_NAVIGATION_PATH","path","_state$entry","_state$entry$sys","entryUri","uri","route","component","window","SET_ROUTE","nextPath","SET_SIBLINGS","currentNodeSiblingParent","siblings","parentId","currentNodeSiblings","currentNodeSiblingsParent","SET_SURROGATE_KEYS","surrogateKeys","split","arrayMerge","SET_TARGET_PROJECT","project","allowedGroups","hostname","VERSION_PREFIX","SET_VERSION","SET_VERSION_STATUS","commitRef","buildNo","contensisVersionStatus","status","routerMiddleware","history","store","next","payload","method","args","reduxStore","featureReducers","stateType","reduxDevToolsMiddleware","f","__REDUX_DEVTOOLS_EXTENSION__","sagaMiddleware","createSagaMiddleware","reducers","navigation","NavigationReducer","routing","RoutingReducer","user","UserReducer","version","VersionReducer","combiner","combineReducers","fromJS","obj","globalThis","STATE_TYPE","immutable","default","createReducer","injectedReducers","rootReducer","runSaga","run","middleware","compose","applyMiddleware","thunkMiddleware","createInjectorsEnhancer","createStore","close","dispatch","END","selectCommitRef","getIn","selectBuildNumber","selectVersionStatus"],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import { g as getImmutableOrJS, D as action } from './selectors-3f0d804d.js';
2
+ import { all } from '@redux-saga/core/effects';
3
+ import { r as reduxStore, b as SET_VERSION_STATUS, d as SET_VERSION } from './version-dd31c7f0.js';
4
+
5
+ const hasNavigationTree = state => getImmutableOrJS(state, ['navigation', 'isReady']);
6
+ const selectNavigationRoot = state => getImmutableOrJS(state, ['navigation', 'root']);
7
+ const selectNavigationChildren = state => getImmutableOrJS(state, ['navigation', 'root', 'children']);
8
+ const selectNavigationDepends = () => [];
9
+
10
+ var navigation = /*#__PURE__*/Object.freeze({
11
+ __proto__: null,
12
+ hasNavigationTree: hasNavigationTree,
13
+ selectNavigationRoot: selectNavigationRoot,
14
+ selectNavigationChildren: selectNavigationChildren,
15
+ selectNavigationDepends: selectNavigationDepends
16
+ });
17
+
18
+ const convertSagaArray = sagas => {
19
+ if (Array.isArray(sagas)) return function* rootSaga() {
20
+ yield all(sagas);
21
+ };
22
+ return sagas;
23
+ };
24
+ const injectReducer = ({
25
+ key,
26
+ reducer
27
+ }, store = reduxStore) => {
28
+ if (Reflect.has(store.injectedReducers, key) && store.injectedReducers[key] === reducer) return;
29
+ store.injectedReducers[key] = reducer;
30
+ store.replaceReducer(store.createReducer(store.injectedReducers));
31
+ };
32
+ const injectSaga = ({
33
+ key,
34
+ saga
35
+ }, store = reduxStore) => {
36
+ const rootSaga = convertSagaArray(saga);
37
+ let hasSaga = Reflect.has(store.injectedSagas, key);
38
+ if (process.env.NODE_ENV !== 'production') {
39
+ const oldDescriptor = store.injectedSagas[key]; // enable hot reloading of daemon and once-till-unmount sagas
40
+
41
+ if (hasSaga && oldDescriptor.saga !== rootSaga) {
42
+ oldDescriptor.task.cancel();
43
+ hasSaga = false;
44
+ }
45
+ }
46
+ console.info('injectSaga, key: ', key, 'hasSaga: ', hasSaga);
47
+ if (!hasSaga) {
48
+ store.injectedSagas[key] = {
49
+ key,
50
+ saga: rootSaga,
51
+ task: store.runSaga(rootSaga)
52
+ };
53
+ }
54
+ };
55
+ const injectRedux = ({
56
+ key,
57
+ reducer,
58
+ saga
59
+ }, store = reduxStore) => {
60
+ console.info('injectRedux, key: ', key);
61
+ if (reducer) injectReducer({
62
+ key,
63
+ reducer
64
+ }, store);
65
+ if (saga) injectSaga({
66
+ key,
67
+ saga
68
+ }, store);
69
+ };
70
+ const useInjectRedux = injectRedux;
71
+
72
+ const setVersion = (commitRef, buildNo) => action(SET_VERSION, {
73
+ commitRef,
74
+ buildNo
75
+ });
76
+ const setVersionStatus = status => action(SET_VERSION_STATUS, {
77
+ status
78
+ });
79
+
80
+ var version = /*#__PURE__*/Object.freeze({
81
+ __proto__: null,
82
+ setVersion: setVersion,
83
+ setVersionStatus: setVersionStatus
84
+ });
85
+
86
+ export { setVersion as a, injectReducer as b, convertSagaArray as c, injectSaga as d, hasNavigationTree as h, injectRedux as i, navigation as n, setVersionStatus as s, useInjectRedux as u, version as v };
87
+ //# sourceMappingURL=version-f4629693.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-f4629693.js","sources":["../src/redux/selectors/navigation.js","../src/redux/store/injectors.js","../src/redux/actions/version.js"],"sourcesContent":["import { getImmutableOrJS as getIn } from '~/redux/util';\n\nexport const hasNavigationTree = state =>\n getIn(state, ['navigation', 'isReady']);\n\nexport const selectNavigationRoot = state =>\n getIn(state, ['navigation', 'root']);\n\nexport const selectNavigationChildren = state =>\n getIn(state, ['navigation', 'root', 'children']);\n\nexport const selectNavigationDepends = () => [];\n","import { all } from 'redux-saga/effects';\nimport { reduxStore as DefaultStore } from './store';\n\nexport const convertSagaArray = sagas => {\n if (Array.isArray(sagas))\n return function* rootSaga() {\n yield all(sagas);\n };\n return sagas;\n};\n\nexport const injectReducer = ({ key, reducer }, store = DefaultStore) => {\n if (\n Reflect.has(store.injectedReducers, key) &&\n store.injectedReducers[key] === reducer\n )\n return;\n store.injectedReducers[key] = reducer;\n\n store.replaceReducer(store.createReducer(store.injectedReducers));\n};\n\nexport const injectSaga = ({ key, saga }, store = DefaultStore) => {\n const rootSaga = convertSagaArray(saga);\n let hasSaga = Reflect.has(store.injectedSagas, key);\n\n if (process.env.NODE_ENV !== 'production') {\n const oldDescriptor = store.injectedSagas[key]; // enable hot reloading of daemon and once-till-unmount sagas\n\n if (hasSaga && oldDescriptor.saga !== rootSaga) {\n oldDescriptor.task.cancel();\n hasSaga = false;\n }\n }\n console.info('injectSaga, key: ', key, 'hasSaga: ', hasSaga);\n\n if (!hasSaga) {\n store.injectedSagas[key] = {\n key,\n saga: rootSaga,\n task: store.runSaga(rootSaga),\n };\n }\n};\n\nexport const injectRedux = ({ key, reducer, saga }, store = DefaultStore) => {\n console.info('injectRedux, key: ', key);\n if (reducer) injectReducer({ key, reducer }, store);\n if (saga) injectSaga({ key, saga }, store);\n};\n\nexport const useInjectRedux = injectRedux;\n","import { action } from '../util';\nimport { SET_VERSION, SET_VERSION_STATUS } from '../types/version';\n\nexport const setVersion = (commitRef, buildNo) =>\n action(SET_VERSION, { commitRef, buildNo });\n\nexport const setVersionStatus = status =>\n action(SET_VERSION_STATUS, { status });\n"],"names":["hasNavigationTree","state","getIn","selectNavigationRoot","selectNavigationChildren","selectNavigationDepends","convertSagaArray","sagas","Array","isArray","rootSaga","all","injectReducer","key","reducer","store","DefaultStore","Reflect","has","injectedReducers","replaceReducer","createReducer","injectSaga","saga","hasSaga","injectedSagas","process","env","NODE_ENV","oldDescriptor","task","cancel","console","info","runSaga","injectRedux","useInjectRedux","setVersion","commitRef","buildNo","action","SET_VERSION","setVersionStatus","status","SET_VERSION_STATUS"],"mappings":"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"}
@@ -1,3 +1,9 @@
1
+ export function getClientConfig(project: any): {
2
+ rootUrl: string;
3
+ accessToken: string;
4
+ projectId: string;
5
+ livePublishingRootUrl: string;
6
+ };
1
7
  export * from "contensis-delivery-api";
2
8
  export const deliveryApi: DeliveryApi;
3
9
  export const cachedSearch: CachedSearch;
@@ -1,4 +1,5 @@
1
1
  export { default as setCachingHeaders } from "../server/features/caching/setCachingHeaders";
2
+ export { cachedSearch, deliveryApi, getClientConfig, } from './ContensisDeliveryApi';
2
3
  export { default as stringifyStrings } from './stringifyStrings';
3
4
  export { default as urls } from './urls';
4
5
  export * from './json-mapper';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zengenti/contensis-react-base",
3
- "version": "3.0.2-beta.1",
3
+ "version": "3.0.2-beta.10",
4
4
  "repository": "https://github.com/zengenti/contensis-react-base",
5
5
  "license": "None",
6
6
  "description": "Turbocharge your React web apps with Contensis. This package handles all dependencies for creating full featured web apps in React with Contensis and Site View. Routing is driven by Site View, Redux is used for global state management and server-side rendering (SSR) is handled for you. Also taking care of intricate hosting issues such as cache invalidation and supporting authenticated content where required.",