@zengenti/contensis-react-base 2.5.1-beta.4 → 3.0.0-beta.3

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 (134) hide show
  1. package/README.md +8 -2
  2. package/cjs/{App-fbd91490.js → App-581b6653.js} +20 -19
  3. package/cjs/App-581b6653.js.map +1 -0
  4. package/cjs/{RouteLoader-f99cd734.js → RouteLoader-282c03ab.js} +5 -5
  5. package/cjs/RouteLoader-282c03ab.js.map +1 -0
  6. package/cjs/ToJs-87edc45d.js +230 -0
  7. package/cjs/ToJs-87edc45d.js.map +1 -0
  8. package/cjs/{actions-e9f69947.js → actions-12871aca.js} +9 -13
  9. package/cjs/actions-12871aca.js.map +1 -0
  10. package/cjs/client.js +47 -64
  11. package/cjs/client.js.map +1 -1
  12. package/cjs/contensis-react-base.js +54 -55
  13. package/cjs/contensis-react-base.js.map +1 -1
  14. package/cjs/forms.js +1 -1
  15. package/cjs/fromJSLeaveImmer-9b550c8e.js +40 -0
  16. package/cjs/fromJSLeaveImmer-9b550c8e.js.map +1 -0
  17. package/cjs/{login-4f274c6a.js → login-81d7f9ef.js} +11 -10
  18. package/cjs/login-81d7f9ef.js.map +1 -0
  19. package/cjs/{reducers-cb531715.js → reducers-fde41d6b.js} +76 -31
  20. package/cjs/reducers-fde41d6b.js.map +1 -0
  21. package/cjs/redux.js +11 -8
  22. package/cjs/redux.js.map +1 -1
  23. package/cjs/routing.js +5 -5
  24. package/cjs/search.js +409 -233
  25. package/cjs/search.js.map +1 -1
  26. package/cjs/selectors-ed26ed97.js +141 -0
  27. package/cjs/selectors-ed26ed97.js.map +1 -0
  28. package/cjs/user.js +14 -14
  29. package/cjs/user.js.map +1 -1
  30. package/cjs/util.js +24 -10
  31. package/cjs/util.js.map +1 -1
  32. package/cjs/version-0c190929.js +20 -0
  33. package/cjs/version-0c190929.js.map +1 -0
  34. package/cjs/{version-3a808c12.js → version-f061e409.js} +154 -76
  35. package/cjs/version-f061e409.js.map +1 -0
  36. package/esm/{App-fbef99b3.js → App-122f28a3.js} +20 -19
  37. package/esm/App-122f28a3.js.map +1 -0
  38. package/esm/{RouteLoader-281d47e1.js → RouteLoader-c2faac87.js} +5 -5
  39. package/esm/RouteLoader-c2faac87.js.map +1 -0
  40. package/esm/ToJs-52fee252.js +199 -0
  41. package/esm/ToJs-52fee252.js.map +1 -0
  42. package/esm/{actions-ddd9c623.js → actions-3cc39599.js} +4 -7
  43. package/esm/actions-3cc39599.js.map +1 -0
  44. package/esm/client.js +48 -65
  45. package/esm/client.js.map +1 -1
  46. package/esm/contensis-react-base.js +53 -53
  47. package/esm/contensis-react-base.js.map +1 -1
  48. package/esm/forms.js +1 -1
  49. package/esm/fromJSLeaveImmer-e44d1a91.js +38 -0
  50. package/esm/fromJSLeaveImmer-e44d1a91.js.map +1 -0
  51. package/esm/{login-1f9ad133.js → login-92db44d1.js} +11 -10
  52. package/esm/login-92db44d1.js.map +1 -0
  53. package/esm/{reducers-feab84fc.js → reducers-d6c0edb1.js} +77 -31
  54. package/esm/reducers-d6c0edb1.js.map +1 -0
  55. package/esm/redux.js +9 -8
  56. package/esm/redux.js.map +1 -1
  57. package/esm/routing.js +5 -5
  58. package/esm/search.js +409 -235
  59. package/esm/search.js.map +1 -1
  60. package/esm/selectors-82e71d8e.js +116 -0
  61. package/esm/selectors-82e71d8e.js.map +1 -0
  62. package/esm/user.js +10 -10
  63. package/esm/user.js.map +1 -1
  64. package/esm/util.js +24 -10
  65. package/esm/util.js.map +1 -1
  66. package/esm/version-59c8f9be.js +15 -0
  67. package/esm/version-59c8f9be.js.map +1 -0
  68. package/esm/{version-64906b26.js → version-cb9cd09d.js} +133 -76
  69. package/esm/version-cb9cd09d.js.map +1 -0
  70. package/models/app/pages/VersionInfo/components/VersionInfo.d.ts +1 -1
  71. package/models/config.d.ts +2 -0
  72. package/models/redux/appstate.d.ts +85 -0
  73. package/models/redux/index.d.ts +1 -0
  74. package/models/redux/reducers/navigation.d.ts +6 -2
  75. package/models/redux/reducers/version.d.ts +5 -2
  76. package/models/redux/store/store.d.ts +4 -1
  77. package/models/redux/util.d.ts +2 -0
  78. package/models/routing/components/RouteLoader.d.ts +20 -2
  79. package/models/routing/redux/reducers.d.ts +21 -3
  80. package/models/routing/redux/selectors.d.ts +29 -25
  81. package/models/routing/routes.d.ts +10 -2
  82. package/models/search/hooks/useMinilist.hook.d.ts +7 -20
  83. package/models/search/models/Search.d.ts +8 -1
  84. package/models/search/models/SearchActions.d.ts +3 -4
  85. package/models/search/models/SearchProps.d.ts +16 -2
  86. package/models/search/models/SearchState.d.ts +25 -9
  87. package/models/search/models/WithSearch.d.ts +61 -0
  88. package/models/search/redux/getIn.d.ts +3 -0
  89. package/models/search/redux/reducers.d.ts +346 -2
  90. package/models/search/redux/sagas.d.ts +2 -2
  91. package/models/search/redux/schema.d.ts +56 -8
  92. package/models/search/redux/selectors.d.ts +75 -66
  93. package/models/search/redux/util.d.ts +1 -1
  94. package/models/search/search/util.d.ts +2 -3
  95. package/models/user/components/Login.d.ts +10 -1
  96. package/models/user/containers/ChangePassword.container.d.ts +4 -1
  97. package/models/user/containers/ForgotPassword.container.d.ts +4 -1
  98. package/models/user/containers/Login.container.d.ts +4 -1
  99. package/models/user/containers/Registration.container.d.ts +4 -1
  100. package/models/user/hocs/withLogin.d.ts +9 -1
  101. package/models/user/hocs/withRegistration.d.ts +9 -1
  102. package/models/user/hooks/useChangePassword.d.ts +5 -5
  103. package/models/user/hooks/useForgotPassword.d.ts +6 -6
  104. package/models/user/hooks/useLogin.d.ts +45 -7
  105. package/models/user/hooks/useRegistration.d.ts +4 -4
  106. package/models/user/redux/reducers.d.ts +54 -3
  107. package/models/user/redux/selectors.d.ts +72 -27
  108. package/models/util/ToJs.d.ts +4 -1
  109. package/package-lock.json +1092 -21401
  110. package/package.json +9 -8
  111. package/cjs/App-fbd91490.js.map +0 -1
  112. package/cjs/RouteLoader-f99cd734.js.map +0 -1
  113. package/cjs/ToJs-d72e5b10.js +0 -167
  114. package/cjs/ToJs-d72e5b10.js.map +0 -1
  115. package/cjs/actions-e9f69947.js.map +0 -1
  116. package/cjs/login-4f274c6a.js.map +0 -1
  117. package/cjs/reducers-cb531715.js.map +0 -1
  118. package/cjs/selectors-1295124a.js +0 -139
  119. package/cjs/selectors-1295124a.js.map +0 -1
  120. package/cjs/version-2193b4a2.js +0 -24
  121. package/cjs/version-2193b4a2.js.map +0 -1
  122. package/cjs/version-3a808c12.js.map +0 -1
  123. package/esm/App-fbef99b3.js.map +0 -1
  124. package/esm/RouteLoader-281d47e1.js.map +0 -1
  125. package/esm/ToJs-6e7b247c.js +0 -136
  126. package/esm/ToJs-6e7b247c.js.map +0 -1
  127. package/esm/actions-ddd9c623.js.map +0 -1
  128. package/esm/login-1f9ad133.js.map +0 -1
  129. package/esm/reducers-feab84fc.js.map +0 -1
  130. package/esm/selectors-68799788.js +0 -117
  131. package/esm/selectors-68799788.js.map +0 -1
  132. package/esm/version-64906b26.js.map +0 -1
  133. package/esm/version-7fdbd2d5.js +0 -19
  134. package/esm/version-7fdbd2d5.js.map +0 -1
@@ -1,12 +1,12 @@
1
- import { Map, List, fromJS, OrderedMap, Set } from 'immutable';
2
- import { compose, applyMiddleware, createStore as createStore$1 } from 'redux';
3
- import { combineReducers } from 'redux-immutable';
1
+ import { combineReducers, compose, applyMiddleware, createStore as createStore$1 } 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
- 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, j as action } from './actions-ddd9c623.js';
8
- import { U as UserReducer } from './reducers-feab84fc.js';
5
+ import { produce } from 'immer';
6
+ 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-3cc39599.js';
7
+ import { U as UserReducer } from './reducers-d6c0edb1.js';
9
8
  import { all } from '@redux-saga/core/effects';
9
+ import { g as getImmutableOrJS, p as action } from './selectors-82e71d8e.js';
10
10
 
11
11
  const ACTION_PREFIX = '@NAVIGATION/';
12
12
  const GET_NODE_TREE = `${ACTION_PREFIX}_GET_NODE_TREE`;
@@ -20,59 +20,59 @@ var navigation = /*#__PURE__*/Object.freeze({
20
20
  GET_NODE_TREE_ERROR: GET_NODE_TREE_ERROR
21
21
  });
22
22
 
23
- const initialState = Map({
23
+ const initialState = {
24
24
  root: null,
25
- treeDepends: new List([]),
25
+ treeDepends: [],
26
26
  isError: false,
27
27
  isReady: false
28
- });
29
- var NavigationReducer = ((state = initialState, action) => {
28
+ };
29
+ var NavigationReducer = produce((state, action) => {
30
30
  switch (action.type) {
31
31
  case SET_NODE_TREE:
32
32
  {
33
- return state.set('root', fromJS(action.nodes)).set('isReady', true);
33
+ state.root = action.nodes;
34
+ state.isReady = true;
35
+ return;
34
36
  }
35
37
 
36
38
  case GET_NODE_TREE_ERROR:
37
39
  {
38
- return state.set('isError', true);
40
+ state.isError = true;
41
+ return;
39
42
  }
40
43
 
41
44
  default:
42
- return state;
45
+ return;
43
46
  }
44
- });
47
+ }, initialState);
45
48
 
46
- let initialState$1 = OrderedMap({
49
+ const initialState$1 = {
47
50
  currentHostname: null,
48
51
  contentTypeId: null,
49
52
  currentPath: '/',
50
- currentNode: OrderedMap(),
51
- currentNodeAncestors: List(),
53
+ currentNode: {},
54
+ currentNodeAncestors: [],
52
55
  currentProject: 'unknown',
53
56
  entryID: null,
54
57
  entry: null,
55
58
  currentTreeId: null,
56
- entryDepends: List(),
59
+ entryDepends: [],
57
60
  error: undefined,
58
61
  isError: false,
59
62
  isLoading: false,
60
- location: OrderedMap(),
63
+ location: {},
61
64
  mappedEntry: null,
62
- nodeDepends: List(),
65
+ nodeDepends: [],
63
66
  notFound: false,
64
67
  staticRoute: null,
65
68
  statusCode: 200
66
- });
67
- var RoutingReducer = ((state = initialState$1, action) => {
69
+ };
70
+ var RoutingReducer = produce((state, action) => {
68
71
  switch (action.type) {
69
72
  case SET_ANCESTORS:
70
73
  {
71
- if (action.ancestors) {
72
- return state.set('currentNodeAncestors', fromJS(action.ancestors));
73
- }
74
-
75
- return state.set('currentNodeAncestors', fromJS(action.ancestors));
74
+ state.currentNodeAncestors = action.ancestors;
75
+ return;
76
76
  }
77
77
 
78
78
  case SET_ENTRY:
@@ -89,33 +89,60 @@ var RoutingReducer = ((state = initialState$1, action) => {
89
89
  } = action;
90
90
  let defaultStatus = 200;
91
91
  if (notFound === true && isError === false) defaultStatus = 404;else if (isError === true) defaultStatus = statusCode || 500;
92
- let nextState;
93
92
 
94
93
  if (!entry) {
95
- nextState = state.set('entryID', null).set('entry', null).set('error', fromJS(error)).set('mappedEntry', null).set('isError', isError).set('isLoading', isLoading).set('notFound', notFound).set('statusCode', statusCode || defaultStatus);
94
+ state.entryID = null;
95
+ state.entry = null;
96
+ state.error = error;
97
+ state.mappedEntry = null;
98
+ state.isError = isError;
99
+ state.isLoading = isLoading;
100
+ state.notFound = notFound;
101
+ state.statusCode = statusCode || defaultStatus;
96
102
  } else {
97
- nextState = state.set('entryID', action.id).set('entry', fromJS(entry)).set('error', fromJS(error)).set('isError', isError).set('isLoading', isLoading).set('notFound', notFound).set('statusCode', statusCode || defaultStatus);
98
- if (mappedEntry && Object.keys(mappedEntry).length > 0) nextState = nextState.set('mappedEntry', fromJS(mappedEntry)).set('entry', fromJS({
99
- sys: entry.sys
100
- }));
103
+ state.entryID = action.id;
104
+ state.entry = entry;
105
+ state.error = error;
106
+ state.isError = isError;
107
+ state.isLoading = isLoading;
108
+ state.notFound = notFound;
109
+ state.statusCode = statusCode || defaultStatus;
110
+
111
+ if (mappedEntry && Object.keys(mappedEntry).length > 0) {
112
+ state.mappedEntry = mappedEntry;
113
+ state.entry = {
114
+ sys: entry.sys
115
+ };
116
+ }
101
117
  }
102
118
 
103
119
  if (!node) {
104
- return nextState.set('nodeDepends', null).set('currentNode', null);
120
+ state.nodeDepends = null;
121
+ state.currentNode = null;
105
122
  } else {
106
123
  // On Set Node, we reset all dependants.
107
- return nextState.set('currentNode', fromJS(node)).removeIn(['currentNode', 'entry']); // We have the entry stored elsewhere, so lets not keep it twice.
124
+ state.currentNode = node; // eslint-disable-next-line @typescript-eslint/no-unused-vars
125
+
126
+ const {
127
+ entry,
128
+ ...nodeWithoutEntry
129
+ } = node; // We have the entry stored elsewhere, so lets not keep it twice.
130
+
131
+ state.currentNode = nodeWithoutEntry;
108
132
  }
133
+
134
+ return;
109
135
  }
110
136
 
111
137
  case UPDATE_LOADING_STATE:
112
138
  {
113
- return state.set('isLoading', action.isLoading);
139
+ state.isLoading = action.isLoading;
140
+ return;
114
141
  }
115
142
 
116
143
  case SET_NAVIGATION_PATH:
117
144
  {
118
- let staticRoute = false;
145
+ let staticRoute = {};
119
146
 
120
147
  if (action.staticRoute) {
121
148
  staticRoute = { ...action.staticRoute
@@ -123,30 +150,37 @@ var RoutingReducer = ((state = initialState$1, action) => {
123
150
  }
124
151
 
125
152
  if (action.path) {
153
+ var _state$entry, _state$entry$sys;
154
+
126
155
  // Don't run a path update on initial load as we allready should have it in redux
127
- const entryUri = state.getIn(['entry', 'sys', 'uri']);
156
+ 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;
128
157
 
129
- if (entryUri != action.path) {
130
- return state.set('currentPath', fromJS(action.path)).set('location', fromJS(action.location)).set('staticRoute', fromJS({ ...staticRoute,
158
+ if (entryUri !== action.path) {
159
+ state.currentPath = action.path;
160
+ state.location = action.location;
161
+ state.staticRoute = { ...staticRoute,
131
162
  route: { ...staticRoute.route,
132
163
  component: null
133
164
  }
134
- })).set('isLoading', typeof window !== 'undefined');
165
+ };
166
+ state.isLoading = typeof window !== 'undefined';
135
167
  } else {
136
- return state.set('location', fromJS(action.location)).set('staticRoute', fromJS({ ...staticRoute,
168
+ state.location = action.location;
169
+ state.staticRoute = { ...staticRoute,
137
170
  route: { ...staticRoute.route,
138
171
  component: null
139
172
  }
140
- }));
173
+ };
141
174
  }
142
175
  }
143
176
 
144
- return state;
177
+ return;
145
178
  }
146
179
 
147
180
  case SET_ROUTE:
148
181
  {
149
- return state.set('nextPath', action.path);
182
+ state.nextPath = action.path;
183
+ return;
150
184
  }
151
185
 
152
186
  case SET_SIBLINGS:
@@ -157,31 +191,37 @@ var RoutingReducer = ((state = initialState$1, action) => {
157
191
 
158
192
  if (action.siblings && action.siblings.length > 0) {
159
193
  currentNodeSiblingParent = action.siblings[0].parentId;
160
- siblingIDs = action.siblings.map(node => {
161
- return node.id;
162
- });
194
+ siblingIDs = action.siblings.map(node => node.id);
163
195
  }
164
196
 
165
- let currentNodeDepends = state.get('nodeDepends');
166
- const allNodeDepends = Set.union([Set(siblingIDs), currentNodeDepends]);
167
- return state.set('nodeDepends', allNodeDepends).set('currentNodeSiblings', fromJS(action.siblings)).set('currentNodeSiblingsParent', currentNodeSiblingParent);
197
+ const currentNodeDepends = state.nodeDepends;
198
+ const allNodeDepends = [...new Set([...new Set(siblingIDs), currentNodeDepends])];
199
+ state.nodeDepends = allNodeDepends;
200
+ state.currentNodeSiblings = action.siblings;
201
+ state.currentNodeSiblingsParent = currentNodeSiblingParent;
202
+ return;
168
203
  }
169
204
 
170
205
  case SET_SURROGATE_KEYS:
171
206
  {
172
- return state.set('surrogateKeys', action.keys);
207
+ state.surrogateKeys = action.keys;
208
+ return;
173
209
  }
174
210
 
175
211
  case SET_TARGET_PROJECT:
176
212
  {
177
- return state.set('currentProject', action.project).set('currentTreeId', '') //getTreeID(action.project))
178
- .set('allowedGroups', fromJS(action.allowedGroups)).set('currentHostname', action.hostname);
213
+ state.currentProject = action.project;
214
+ state.currentTreeId = ''; // getTreeID(action.project))
215
+
216
+ state.allowedGroups = action.allowedGroups;
217
+ state.currentHostname = action.hostname;
218
+ return;
179
219
  }
180
220
 
181
221
  default:
182
222
  return state;
183
223
  }
184
- });
224
+ }, initialState$1);
185
225
 
186
226
  const VERSION_PREFIX = '@VERSION/';
187
227
  const SET_VERSION = `${VERSION_PREFIX}SET_VERSION`;
@@ -193,27 +233,30 @@ var version = /*#__PURE__*/Object.freeze({
193
233
  SET_VERSION_STATUS: SET_VERSION_STATUS
194
234
  });
195
235
 
196
- let initialState$2 = Map({
236
+ const initialState$2 = {
197
237
  commitRef: null,
198
238
  buildNo: null,
199
239
  contensisVersionStatus: 'published'
200
- });
201
- var VersionReducer = ((state = initialState$2, action) => {
240
+ };
241
+ var VersionReducer = produce((state, action) => {
202
242
  switch (action.type) {
203
243
  case SET_VERSION_STATUS:
204
244
  {
205
- return state.set('contensisVersionStatus', action.status);
245
+ state.contensisVersionStatus = action.status;
246
+ return;
206
247
  }
207
248
 
208
249
  case SET_VERSION:
209
250
  {
210
- return state.set('commitRef', action.commitRef).set('buildNo', action.buildNo);
251
+ state.commitRef = action.commitRef;
252
+ state.buildNo = action.buildNo;
253
+ return;
211
254
  }
212
255
 
213
256
  default:
214
- return state;
257
+ return;
215
258
  }
216
- });
259
+ }, initialState$2);
217
260
 
218
261
  /**
219
262
  * This middleware captures 'CALL_HISTORY_METHOD' actions to redirect to the
@@ -236,9 +279,10 @@ const routerMiddleware = history => store => next => action => {
236
279
  history[method](...args);
237
280
  };
238
281
 
239
- /* eslint-disable no-underscore-dangle */
240
282
  let reduxStore;
241
- var createStore = ((featureReducers, initialState, history) => {
283
+ /* eslint-disable no-underscore-dangle */
284
+
285
+ var createStore = (async (featureReducers, initialState, history, stateType) => {
242
286
  let reduxDevToolsMiddleware = f => f;
243
287
 
244
288
  if (typeof window != 'undefined') {
@@ -252,10 +296,29 @@ var createStore = ((featureReducers, initialState, history) => {
252
296
  user: UserReducer,
253
297
  version: VersionReducer,
254
298
  ...featureReducers
255
- };
299
+ }; // Reassign the combiner and fromJS functions when
300
+ // stateType is 'immutable' with dynamic imports
301
+
302
+ let combiner = combineReducers;
303
+
304
+ let fromJS = obj => obj;
305
+
306
+ globalThis.STATE_TYPE = stateType;
307
+
308
+ if (stateType === 'immutable') {
309
+ globalThis.immutable = await import(
310
+ /* webpackChunkName: "immutable" */
311
+ 'immutable');
312
+ fromJS = (await import(
313
+ /* webpackChunkName: "from-js" */
314
+ './fromJSLeaveImmer-e44d1a91.js')).default;
315
+ combiner = (await import(
316
+ /* webpackChunkName: "redux-immutable" */
317
+ 'redux-immutable')).combineReducers;
318
+ }
256
319
 
257
320
  const createReducer = (injectedReducers = {}) => {
258
- const rootReducer = combineReducers({ ...injectedReducers,
321
+ const rootReducer = combiner({ ...injectedReducers,
259
322
  // other non-injected reducers go here
260
323
  ...reducers
261
324
  });
@@ -276,19 +339,13 @@ var createStore = ((featureReducers, initialState, history) => {
276
339
  return store;
277
340
  };
278
341
 
279
- reduxStore = store(initialState);
342
+ reduxStore = store(fromJS(initialState));
280
343
  return reduxStore;
281
344
  });
282
345
 
283
- const hasNavigationTree = state => {
284
- return state.getIn(['navigation', 'isReady']);
285
- };
286
- const selectNavigationRoot = state => {
287
- return state.getIn(['navigation', 'root']);
288
- };
289
- const selectNavigationDepends = state => {
290
- return state.getIn(['navigation', 'treeDepends']);
291
- };
346
+ const hasNavigationTree = state => getImmutableOrJS(state, ['navigation', 'isReady']);
347
+ const selectNavigationRoot = state => getImmutableOrJS(state, ['navigation', 'root']);
348
+ const selectNavigationDepends = state => getImmutableOrJS(state, ['navigation', 'treeDepends']);
292
349
 
293
350
  var navigation$1 = /*#__PURE__*/Object.freeze({
294
351
  __proto__: null,
@@ -369,4 +426,4 @@ var version$1 = /*#__PURE__*/Object.freeze({
369
426
  });
370
427
 
371
428
  export { GET_NODE_TREE as G, SET_NODE_TREE as S, setVersion as a, GET_NODE_TREE_ERROR as b, createStore as c, version$1 as d, navigation$1 as e, convertSagaArray as f, injectReducer as g, hasNavigationTree as h, injectRedux as i, injectSaga as j, navigation as n, reduxStore as r, setVersionStatus as s, useInjectRedux as u, version as v };
372
- //# sourceMappingURL=version-64906b26.js.map
429
+ //# sourceMappingURL=version-cb9cd09d.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-cb9cd09d.js","sources":["../src/redux/types/navigation.js","../src/redux/reducers/navigation.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/navigation.js","../src/redux/store/injectors.js","../src/redux/actions/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 treeDepends: [],\n isError: false,\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.isError = true;\n return;\n }\n default:\n return;\n }\n}, initialState);\n","import { Draft, produce } from 'immer';\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';\n\nconst initialState = {\n currentHostname: null,\n contentTypeId: null,\n currentPath: '/',\n currentNode: {},\n currentNodeAncestors: [],\n currentProject: 'unknown',\n entryID: null,\n entry: null,\n currentTreeId: null,\n entryDepends: [],\n error: undefined,\n isError: false,\n isLoading: false,\n location: {},\n mappedEntry: null,\n nodeDepends: [],\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.nodeDepends = null;\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 let siblingIDs = [];\n if (action.siblings && action.siblings.length > 0) {\n currentNodeSiblingParent = action.siblings[0].parentId;\n siblingIDs = action.siblings.map(node => node.id);\n }\n const currentNodeDepends = state.nodeDepends;\n const allNodeDepends = [\n ...new Set([...new Set(siblingIDs), currentNodeDepends]),\n ];\n state.nodeDepends = allNodeDepends;\n state.currentNodeSiblings = action.siblings;\n state.currentNodeSiblingsParent = currentNodeSiblingParent;\n return;\n }\n case SET_SURROGATE_KEYS: {\n state.surrogateKeys = action.keys;\n return;\n }\n case SET_TARGET_PROJECT: {\n state.currentProject = action.project;\n state.currentTreeId = ''; // getTreeID(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: 'published',\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 hasNavigationTree = state =>\n getIn(state, ['navigation', 'isReady']);\n\nexport const selectNavigationRoot = state =>\n getIn(state, ['navigation', 'root']);\n\nexport const selectNavigationDepends = state =>\n getIn(state, ['navigation', 'treeDepends']);\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":["ACTION_PREFIX","GET_NODE_TREE","SET_NODE_TREE","GET_NODE_TREE_ERROR","initialState","root","treeDepends","isError","isReady","produce","state","action","type","nodes","currentHostname","contentTypeId","currentPath","currentNode","currentNodeAncestors","currentProject","entryID","entry","currentTreeId","entryDepends","error","undefined","isLoading","location","mappedEntry","nodeDepends","notFound","staticRoute","statusCode","SET_ANCESTORS","ancestors","SET_ENTRY","node","defaultStatus","id","Object","keys","length","sys","nodeWithoutEntry","UPDATE_LOADING_STATE","SET_NAVIGATION_PATH","path","entryUri","uri","route","component","window","SET_ROUTE","nextPath","SET_SIBLINGS","currentNodeSiblingParent","siblingIDs","siblings","parentId","map","currentNodeDepends","allNodeDepends","Set","currentNodeSiblings","currentNodeSiblingsParent","SET_SURROGATE_KEYS","surrogateKeys","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","hasNavigationTree","getIn","selectNavigationRoot","selectNavigationDepends","convertSagaArray","sagas","Array","isArray","rootSaga","all","injectReducer","key","reducer","DefaultStore","Reflect","has","replaceReducer","injectSaga","saga","hasSaga","injectedSagas","process","env","NODE_ENV","oldDescriptor","task","cancel","console","info","injectRedux","useInjectRedux","setVersion","setVersionStatus"],"mappings":"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"}
@@ -36,5 +36,5 @@ export interface IVersionInfoProps {
36
36
  };
37
37
  zenPackageVersions: string[];
38
38
  }
39
- declare const _default: import("react-redux").ConnectedComponent<({ deliveryApi, devEnv, disableSsrRedux, nodeEnv, packageDetail, project, projects, proxyDeliveryApi, publicUri, reverseProxyPaths, servers, uris, version, zenPackageVersions, }: IVersionInfoProps) => JSX.Element, import("react-redux").Omit<IVersionInfoProps, "disableSsrRedux" | "reverseProxyPaths" | "proxyDeliveryApi" | "version" | "packageDetail" | "uris" | "zenPackageVersions" | "deliveryApi" | "devEnv" | "nodeEnv" | "projects" | "publicUri" | "project" | "servers">>;
39
+ declare const _default: import("react-redux").ConnectedComponent<({ deliveryApi, devEnv, disableSsrRedux, nodeEnv, packageDetail, project, projects, proxyDeliveryApi, publicUri, reverseProxyPaths, servers, uris, version, zenPackageVersions, }: IVersionInfoProps) => JSX.Element, import("react-redux").Omit<IVersionInfoProps, "version" | "disableSsrRedux" | "reverseProxyPaths" | "proxyDeliveryApi" | "packageDetail" | "uris" | "zenPackageVersions" | "deliveryApi" | "devEnv" | "nodeEnv" | "projects" | "publicUri" | "project" | "servers">>;
40
40
  export default _default;
@@ -1,6 +1,8 @@
1
1
  import { AppRoutes, WithEvents } from './routing/routes';
2
2
  import handleResponse from './server/features/response-handler';
3
+ export declare type StateType = 'immutable' | 'js';
3
4
  export declare type AppConfig = {
5
+ stateType?: StateType;
4
6
  routes: AppRoutes;
5
7
  withReducers: {
6
8
  [key: string]: any;
@@ -0,0 +1,85 @@
1
+ import { VersionStatus } from 'contensis-core-api';
2
+ import { Entry, Node } from 'contensis-delivery-api/lib/models';
3
+ import { Group, User } from 'contensis-management-api/lib/models';
4
+ import { MatchedRoute } from 'react-router-config';
5
+ import { StaticRoute } from "../routing/routes";
6
+ export declare type AppState = {
7
+ navigation: {
8
+ root: Node | null;
9
+ treeDepends: string[];
10
+ isError: boolean;
11
+ isReady: boolean;
12
+ };
13
+ routing: {
14
+ currentHostname: null;
15
+ contentTypeId: null;
16
+ currentPath: string;
17
+ currentNode: Node & {
18
+ children: Node[];
19
+ };
20
+ currentNodeAncestors: Node[];
21
+ currentNodeSiblings: Node[];
22
+ currentProject: string;
23
+ entryID: string | null;
24
+ entry: Entry | null;
25
+ entryDepends: string[];
26
+ error?: Error | any;
27
+ isError: boolean;
28
+ isLoading: boolean;
29
+ location: {
30
+ pathname: string;
31
+ search: string;
32
+ hash: string;
33
+ key?: string;
34
+ };
35
+ mappedEntry: Record<string, any> | null;
36
+ nodeDepends: string[];
37
+ notFound: boolean;
38
+ staticRoute: MatchedRoute<Record<string, any>, StaticRoute>;
39
+ statusCode: number;
40
+ };
41
+ user: {
42
+ authenticationState: {
43
+ authenticated: boolean;
44
+ authenticationError: boolean;
45
+ authenticationErrorMessage: string | null;
46
+ clientCredentials: {
47
+ bearerToken: string;
48
+ bearerTokenExpiryDate: Date;
49
+ refreshToken: string;
50
+ refreshTokenExpiryDate: Date;
51
+ contensisClassicToken: string;
52
+ } | null;
53
+ error: boolean;
54
+ errorMessage: string | null;
55
+ loading: boolean;
56
+ };
57
+ groups: Group[];
58
+ isZengentiStaff?: boolean;
59
+ registration?: {
60
+ error: Error | null;
61
+ loading: boolean;
62
+ success: boolean;
63
+ };
64
+ passwordResetRequest?: {
65
+ isSending: boolean;
66
+ sent: boolean;
67
+ error: Error | null;
68
+ };
69
+ resetPassword?: {
70
+ isSending: boolean;
71
+ sent: boolean;
72
+ error: Error | null;
73
+ };
74
+ changePassword?: {
75
+ isSending: boolean;
76
+ sent: boolean;
77
+ error: Error | null;
78
+ };
79
+ } & User;
80
+ version: {
81
+ commitRef: string | null;
82
+ buildNo: string | null;
83
+ contensisVersionStatus: VersionStatus;
84
+ };
85
+ };
@@ -1,3 +1,4 @@
1
+ export { action, getJS, getImmutableOrJS as getIn } from './util';
1
2
  export { reduxStore as store } from './store/store';
2
3
  export { convertSagaArray, injectRedux, injectReducer, injectSaga, useInjectRedux, } from './store/injectors';
3
4
  export declare const navigation: {
@@ -1,3 +1,7 @@
1
- declare function _default(state: Map<string, any> | undefined, action: any): Map<string, any>;
1
+ declare const _default: <Base extends {
2
+ readonly root: null;
3
+ readonly treeDepends: readonly never[];
4
+ readonly isError: boolean;
5
+ readonly isReady: boolean;
6
+ }>(base?: Base | undefined, action: any) => Base;
2
7
  export default _default;
3
- import { Map } from "immutable";
@@ -1,3 +1,6 @@
1
- declare function _default(state: Map<string, string | null> | undefined, action: any): Map<string, string | null>;
1
+ declare const _default: <Base extends {
2
+ readonly commitRef: null;
3
+ readonly buildNo: null;
4
+ readonly contensisVersionStatus: string;
5
+ }>(base?: Base | undefined, action: any) => Base;
2
6
  export default _default;
3
- import { Map } from "immutable";
@@ -1,3 +1,6 @@
1
+ import { AppState } from '../appstate';
2
+ import { History, MemoryHistory } from 'history';
3
+ import { StateType } from "../../config";
1
4
  export declare let reduxStore: any;
2
- declare const _default: (featureReducers: any, initialState: any, history: any) => any;
5
+ declare const _default: (featureReducers: any, initialState: AppState, history: History | MemoryHistory, stateType: StateType) => Promise<any>;
3
6
  export default _default;
@@ -1 +1,3 @@
1
1
  export declare const action: (type: string, payload?: any) => any;
2
+ export declare const getJS: <S extends Record<string, unknown>, T extends keyof S>(state: S, stateKey: T) => S[T];
3
+ export declare const getImmutableOrJS: <S extends Record<string, unknown>, T extends unknown>(state: S, stateKey: T | T[], fallbackValue?: any, returnType?: 'immutable' | 'js') => any;
@@ -1,3 +1,21 @@
1
- /// <reference types="react" />
2
- declare const _default: import("react-redux").ConnectedComponent<(wrappedComponentProps: any) => JSX.Element, import("react-redux").Omit<any, "isError" | "contentTypeId" | "entry" | "isLoading" | "mappedEntry" | "statusCode" | "statusText" | "isLoggedIn" | "isNotFound" | "projectId" | "setNavigationPath" | "statePath" | "userGroups">>;
1
+ import React from 'react';
2
+ import { setNavigationPath } from '../redux/actions';
3
+ import { Entry } from 'contensis-delivery-api/lib/models';
4
+ import { AppRootProps, RouteLoaderProps } from '../routes';
5
+ interface IReduxProps {
6
+ contentTypeId: string | null;
7
+ entry: Entry | null;
8
+ isError: boolean;
9
+ isNotFound: boolean;
10
+ isLoading: boolean;
11
+ isLoggedIn: boolean;
12
+ mappedEntry: any;
13
+ projectId: string;
14
+ setNavigationPath: typeof setNavigationPath;
15
+ statePath: string;
16
+ statusCode: any;
17
+ statusText: string;
18
+ userGroups: any;
19
+ }
20
+ declare const _default: import("react-redux").ConnectedComponent<React.ComponentType<AppRootProps & RouteLoaderProps & IReduxProps>, import("react-redux").Omit<AppRootProps & RouteLoaderProps & IReduxProps, "projectId" | "contentTypeId" | "entry" | "mappedEntry" | "isLoggedIn" | "isError" | "isLoading" | "statusCode" | "statusText" | "isNotFound" | "setNavigationPath" | "statePath" | "userGroups"> | import("react-redux").Omit<React.ClassAttributes<React.Component<AppRootProps & RouteLoaderProps & IReduxProps, any, any>> & AppRootProps & RouteLoaderProps & IReduxProps, "projectId" | "contentTypeId" | "entry" | "mappedEntry" | "isLoggedIn" | "isError" | "isLoading" | "statusCode" | "statusText" | "isNotFound" | "setNavigationPath" | "statePath" | "userGroups">>;
3
21
  export default _default;
@@ -1,4 +1,22 @@
1
- declare function _default(state: OrderedMap<string, string | number | boolean | OrderedMap<any, any> | List<any> | null | undefined> | undefined, action: any): OrderedMap<string, string | number | boolean | OrderedMap<any, any> | List<any> | null | undefined>;
1
+ declare const _default: <Base extends {
2
+ readonly currentHostname: null;
3
+ readonly contentTypeId: null;
4
+ readonly currentPath: string;
5
+ readonly currentNode: {};
6
+ readonly currentNodeAncestors: readonly never[];
7
+ readonly currentProject: string;
8
+ readonly entryID: null;
9
+ readonly entry: null;
10
+ readonly currentTreeId: null;
11
+ readonly entryDepends: readonly never[];
12
+ readonly error: undefined;
13
+ readonly isError: boolean;
14
+ readonly isLoading: boolean;
15
+ readonly location: {};
16
+ readonly mappedEntry: null;
17
+ readonly nodeDepends: readonly never[];
18
+ readonly notFound: boolean;
19
+ readonly staticRoute: null;
20
+ readonly statusCode: number;
21
+ }>(base?: Base | undefined, action: any) => any;
2
22
  export default _default;
3
- import { OrderedMap } from "immutable";
4
- import { List } from "immutable";