@zengenti/contensis-react-base 4.0.0-beta.15 → 4.0.0-beta.17

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 (46) hide show
  1. package/cjs/client.js +3 -40
  2. package/cjs/client.js.map +1 -1
  3. package/cjs/contensis-react-base.js +1 -1
  4. package/cjs/{sagas-BtPnqKAF.js → sagas-C0t6j-SQ.js} +24 -5
  5. package/cjs/sagas-C0t6j-SQ.js.map +1 -0
  6. package/cjs/search.js +1 -1
  7. package/cjs/util.js +13 -0
  8. package/cjs/util.js.map +1 -1
  9. package/esm/{App-mNJ7mlmI.js → App-7G05PsXJ.js} +8 -8
  10. package/esm/{App-mNJ7mlmI.js.map → App-7G05PsXJ.js.map} +1 -1
  11. package/esm/{ChangePassword.container-DnIIAUHr.js → ChangePassword.container-DARIxI4T.js} +3 -3
  12. package/esm/{ChangePassword.container-DnIIAUHr.js.map → ChangePassword.container-DARIxI4T.js.map} +1 -1
  13. package/esm/{RouteLoader-CBiZR2pp.js → RouteLoader-DVGpaVNA.js} +4 -4
  14. package/esm/{RouteLoader-CBiZR2pp.js.map → RouteLoader-DVGpaVNA.js.map} +1 -1
  15. package/esm/{SSRContext-D2x7c2T6.js → SSRContext-CiOkP_gR.js} +3 -3
  16. package/esm/{SSRContext-D2x7c2T6.js.map → SSRContext-CiOkP_gR.js.map} +1 -1
  17. package/esm/{ToJs-BrCfQvqi.js → ToJs-Cs7Dqcpx.js} +2 -2
  18. package/esm/{ToJs-BrCfQvqi.js.map → ToJs-Cs7Dqcpx.js.map} +1 -1
  19. package/esm/{VersionInfo-DtF6rRcN.js → VersionInfo-j6NR0QJR.js} +3 -3
  20. package/esm/{VersionInfo-DtF6rRcN.js.map → VersionInfo-j6NR0QJR.js.map} +1 -1
  21. package/esm/client.js +13 -49
  22. package/esm/client.js.map +1 -1
  23. package/esm/contensis-react-base.js +12 -12
  24. package/esm/redux.js +7 -7
  25. package/esm/routing.js +5 -5
  26. package/esm/{sagas-BUsaApww.js → sagas-D2ECe61q.js} +24 -5
  27. package/esm/sagas-D2ECe61q.js.map +1 -0
  28. package/esm/search.js +2 -2
  29. package/esm/{selectors-gcTuM3x_.js → selectors-CNC7sDxg.js} +2 -2
  30. package/esm/{selectors-gcTuM3x_.js.map → selectors-CNC7sDxg.js.map} +1 -1
  31. package/esm/{store-BitMCsz9.js → store-CtDx5MLq.js} +2 -2
  32. package/esm/{store-BitMCsz9.js.map → store-CtDx5MLq.js.map} +1 -1
  33. package/esm/user.js +5 -5
  34. package/esm/util.js +18 -6
  35. package/esm/util.js.map +1 -1
  36. package/esm/{version-C7hR7DBF.js → version-CaL4czqJ.js} +2 -2
  37. package/esm/{version-C7hR7DBF.js.map → version-CaL4czqJ.js.map} +1 -1
  38. package/esm/{version-Br9VZIOE.js → version-CfABeHJA.js} +3 -3
  39. package/esm/{version-Br9VZIOE.js.map → version-CfABeHJA.js.map} +1 -1
  40. package/models/search/models/Search.d.ts +5 -1
  41. package/models/search/redux/selectors.d.ts +5 -0
  42. package/models/util/donotuse_useHistory.d.ts +6 -0
  43. package/models/util/index.d.ts +1 -0
  44. package/package.json +1 -1
  45. package/cjs/sagas-BtPnqKAF.js.map +0 -1
  46. package/esm/sagas-BUsaApww.js.map +0 -1
package/cjs/client.js CHANGED
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  require('isomorphic-fetch');
6
6
  var React = require('react');
7
- var require$$0 = require('react-dom');
7
+ var client = require('react-dom/client');
8
8
  var reactRedux = require('react-redux');
9
9
  var reactRouterDom = require('react-router-dom');
10
10
  var component = require('@loadable/component');
@@ -36,43 +36,6 @@ require('immer');
36
36
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
37
37
 
38
38
  var React__default = /*#__PURE__*/_interopDefault(React);
39
- var require$$0__default = /*#__PURE__*/_interopDefault(require$$0);
40
-
41
- var client = {};
42
-
43
- var hasRequiredClient;
44
-
45
- function requireClient () {
46
- if (hasRequiredClient) return client;
47
- hasRequiredClient = 1;
48
-
49
- var m = require$$0__default.default;
50
- if (process.env.NODE_ENV === 'production') {
51
- client.createRoot = m.createRoot;
52
- client.hydrateRoot = m.hydrateRoot;
53
- } else {
54
- var i = m.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;
55
- client.createRoot = function(c, o) {
56
- i.usingClientEntryPoint = true;
57
- try {
58
- return m.createRoot(c, o);
59
- } finally {
60
- i.usingClientEntryPoint = false;
61
- }
62
- };
63
- client.hydrateRoot = function(c, h, o) {
64
- i.usingClientEntryPoint = true;
65
- try {
66
- return m.hydrateRoot(c, h, o);
67
- } finally {
68
- i.usingClientEntryPoint = false;
69
- }
70
- };
71
- }
72
- return client;
73
- }
74
-
75
- var clientExports = requireClient();
76
39
 
77
40
  class ClientApp {
78
41
  constructor(ReactApp, config) {
@@ -109,14 +72,14 @@ class ClientApp {
109
72
  */
110
73
  const HMRRenderer = Component => {
111
74
  if (shouldHydrate) component.loadableReady(() => {
112
- clientExports.hydrateRoot(documentRoot, Component, {
75
+ client.hydrateRoot(documentRoot, Component, {
113
76
  onRecoverableError(error) {
114
77
  console.warn('Hydration warning:', error);
115
78
  }
116
79
  });
117
80
  }, {
118
81
  namespace: 'modern'
119
- });else clientExports.createRoot(documentRoot).render(Component);
82
+ });else client.createRoot(documentRoot).render(Component);
120
83
  };
121
84
  const hmr = store => {
122
85
  // webpack Hot Module Replacement API
package/cjs/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';\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 __USE_HYDRATE__: boolean;\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', // changed default in v4\n stateType = 'js',\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\n history={history as any}\n future={{\n v7_relativeSplatPath: true,\n v7_startTransition: true,\n }}\n >\n <SSRContextProvider>\n <ReactApp routes={routes} withEvents={withEvents} />\n </SSRContextProvider>\n </HistoryRouter>\n </ReduxProvider>\n </CookiesProvider>\n );\n return ClientJsx;\n };\n\n const isDev = process.env.NODE_ENV !== 'production';\n // const isProduction = !isDev;\n const shouldHydrate = window.__USE_HYDRATE__ && !window.isDynamic;\n\n /**\n * Webpack HMR Setup.\n */\n const HMRRenderer = Component => {\n if (shouldHydrate)\n loadableReady(\n () => {\n hydrateRoot(documentRoot, Component, {\n onRecoverableError(error) {\n console.warn('Hydration warning:', error);\n },\n });\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 (isDev || window.isDynamic || window.REDUX_DATA) {\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 console.log('Hydrating from inline Redux');\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 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":["require$$0","ClientApp","constructor","ReactApp","config","documentRoot","document","getElementById","stateType","routes","withReducers","withSagas","withEvents","GetClientJSX","store","ClientJsx","React","createElement","CookiesProvider","ReduxProvider","HistoryRouter","history","future","v7_relativeSplatPath","v7_startTransition","SSRContextProvider","isDev","process","env","NODE_ENV","shouldHydrate","window","__USE_HYDRATE__","isDynamic","HMRRenderer","Component","loadableReady","hydrateRoot","onRecoverableError","error","console","warn","namespace","createRoot","render","hmr","module","hot","accept","qs","parse","location","search","versionStatus","deliveryApi","getClientSideVersionStatus","REDUX_DATA","createStore","then","state","getState","ssrVersionStatus","selectVersionStatus","dispatch","setVersionStatus","log","runSaga","rootSaga","setCurrentProject","pickProject","hostname","fetch","pathname","response","json","data","ssRedux","JSON"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"client.js","sources":["../src/client/client.tsx"],"sourcesContent":["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 __USE_HYDRATE__: boolean;\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', // changed default in v4\n stateType = 'js',\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\n history={history as any}\n future={{\n v7_relativeSplatPath: true,\n v7_startTransition: true,\n }}\n >\n <SSRContextProvider>\n <ReactApp routes={routes} withEvents={withEvents} />\n </SSRContextProvider>\n </HistoryRouter>\n </ReduxProvider>\n </CookiesProvider>\n );\n return ClientJsx;\n };\n\n const isDev = process.env.NODE_ENV !== 'production';\n // const isProduction = !isDev;\n const shouldHydrate = window.__USE_HYDRATE__ && !window.isDynamic;\n\n /**\n * Webpack HMR Setup.\n */\n const HMRRenderer = Component => {\n if (shouldHydrate)\n loadableReady(\n () => {\n hydrateRoot(documentRoot, Component, {\n onRecoverableError(error) {\n console.warn('Hydration warning:', error);\n },\n });\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 (isDev || window.isDynamic || window.REDUX_DATA) {\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 console.log('Hydrating from inline Redux');\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 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","future","v7_relativeSplatPath","v7_startTransition","SSRContextProvider","isDev","process","env","NODE_ENV","shouldHydrate","window","__USE_HYDRATE__","isDynamic","HMRRenderer","Component","loadableReady","hydrateRoot","onRecoverableError","error","console","warn","namespace","createRoot","render","hmr","module","hot","accept","qs","parse","location","search","versionStatus","deliveryApi","getClientSideVersionStatus","REDUX_DATA","createStore","then","state","getState","ssrVersionStatus","selectVersionStatus","dispatch","setVersionStatus","log","runSaga","rootSaga","setCurrentProject","pickProject","hostname","fetch","pathname","response","json","data","ssRedux","JSON"],"mappings":"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"}
@@ -7,7 +7,7 @@ var contensisDeliveryApi = require('contensis-delivery-api');
7
7
  var React = require('react');
8
8
  var reactRedux = require('react-redux');
9
9
  var mapJson = require('jsonpath-mapper');
10
- var sagas = require('./sagas-BtPnqKAF.js');
10
+ var sagas = require('./sagas-C0t6j-SQ.js');
11
11
  require('reselect');
12
12
  require('immer');
13
13
  require('deep-equal');
@@ -262,9 +262,13 @@ const getListing$1 = (state, listing = '') => {
262
262
  const currentListing = listing || getCurrentListing(state);
263
263
  return getImmutableOrJS(state, ['search', Context.listings, currentListing], {});
264
264
  };
265
+
266
+ /** Return filter state for the current (or provided) facet */
265
267
  const getFilters = (state, facet, context = Context.facets, returnType) => {
266
268
  return getImmutableOrJS(state, ['search', context, facet || getCurrent$2(state, context), 'filters'], {}, returnType);
267
269
  };
270
+
271
+ /** Return filter state for the current (or provided) facet, excluding filters configured as `renderable: false` */
268
272
  const getRenderableFilters$2 = (state, facet = '', context = Context.facets) => Object.fromEntries(Object.entries(getFilters(state, facet, context, 'js')).filter(([, f = {}]) => typeof f.renderable !== 'boolean' ? true : f.renderable));
269
273
  const getFiltersToLoad = (state, facet, context = Context.facets, returnType) => {
270
274
  const filters = getFilters(state, facet, context, returnType);
@@ -275,16 +279,30 @@ const getFiltersToLoad = (state, facet, context = Context.facets, returnType) =>
275
279
  return loadedFilters.map(([filterKey, isLoaded]) => !isLoaded ? filterKey : null).filter(f => !!f);
276
280
  };
277
281
 
278
- // We lowercase the filter key unless it's an ISO date string where the T must be uppercase
279
- const getSelectedFilters = (state, facet = '', context = Context.facets, returnType) => {
280
- const filters = getFilters(state, facet, context, 'js');
282
+ /** Reduce filters state to a simple object containing all filter keys and the selected values */
283
+ const reduceSelectedFilters = filters => {
281
284
  const selectedFilters = Object.fromEntries(Object.entries(filters).map(([key, filter = {}]) => [key, (filter.items || []).filter(item => !!(item.isSelected || false)).map(item => {
282
285
  const key = (item === null || item === void 0 ? void 0 : item.key) || '';
283
286
  return key;
284
287
  })]));
288
+ return selectedFilters;
289
+ };
290
+
291
+ /** Return keyed object for all filters in the current facet with all selected values for each filter */
292
+ const getSelectedFilters = (state, facet = '', context = Context.facets, returnType) => {
293
+ const filters = getFilters(state, facet, context, 'js');
294
+ const selectedFilters = reduceSelectedFilters(filters);
285
295
  const fromJS = makeFromJS(returnType);
286
296
  return fromJS(selectedFilters);
287
297
  };
298
+
299
+ /** Return keyed object for all _renderable_ filters in the current facet with all selected values for each filter */
300
+ const getRenderableSelectedFilters = (state, facet = '', context = Context.facets) => {
301
+ const filters = getRenderableFilters$2(state, facet, context);
302
+
303
+ // new in CRB4: intended no support for immutable state type
304
+ return reduceSelectedFilters(filters);
305
+ };
288
306
  const getResults = (state, current = '', context = Context.facets, returnType) => {
289
307
  return getImmutableOrJS(state, ['search', context, current || getCurrent$2(state, context), 'results'], [], returnType);
290
308
  };
@@ -476,6 +494,7 @@ var selectors = /*#__PURE__*/Object.freeze({
476
494
  getQueryParameter: getQueryParameter$2,
477
495
  getQueryParams: getQueryParams,
478
496
  getRenderableFilters: getRenderableFilters$2,
497
+ getRenderableSelectedFilters: getRenderableSelectedFilters,
479
498
  getResults: getResults,
480
499
  getSearchContext: getSearchContext,
481
500
  getSearchTabs: getSearchTabs,
@@ -522,7 +541,7 @@ const searchUriTemplate = {
522
541
  const searchContext = getSearchContext(state);
523
542
  // Lose stateFilters and currentSearch if a new
524
543
  // term is passed via an argument
525
- const stateFilters = term ? {} : Object.fromEntries(Object.entries(getSelectedFilters(state, facet, searchContext, 'js')).map(([k, f]) => [k, f === null || f === void 0 ? void 0 : f.join(',')]));
544
+ const stateFilters = term ? {} : Object.fromEntries(Object.entries(getRenderableSelectedFilters(state, facet, searchContext)).map(([k, f]) => [k, f === null || f === void 0 ? void 0 : f.join(',')]));
526
545
  const currentSearch = !term && getImmutableOrJS(state, ['routing', 'location', 'search']);
527
546
  const currentQs = util.removeEmptyAttributes(queryString.parse(currentSearch));
528
547
  if (orderBy) currentQs.orderBy = orderBy;
@@ -5758,4 +5777,4 @@ exports.updateSortOrder = updateSortOrder$1;
5758
5777
  exports.useFacets = useFacets;
5759
5778
  exports.useListing = useListing;
5760
5779
  exports.withMappers = withMappers;
5761
- //# sourceMappingURL=sagas-BtPnqKAF.js.map
5780
+ //# sourceMappingURL=sagas-C0t6j-SQ.js.map