@zengenti/contensis-react-base 3.0.0-beta.5 → 3.0.0-beta.52

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 (138) hide show
  1. package/README.md +4 -4
  2. package/cjs/{App-3324f784.js → App-478e0b4c.js} +114 -114
  3. package/cjs/App-478e0b4c.js.map +1 -0
  4. package/cjs/{RouteLoader-c7957b14.js → RouteLoader-8df335cf.js} +46 -22
  5. package/cjs/RouteLoader-8df335cf.js.map +1 -0
  6. package/cjs/ToJs-09204afd.js +129 -0
  7. package/cjs/ToJs-09204afd.js.map +1 -0
  8. package/cjs/{actions-a24bf46e.js → actions-6b9ef168.js} +5 -4
  9. package/cjs/actions-6b9ef168.js.map +1 -0
  10. package/cjs/client.js +11 -9
  11. package/cjs/client.js.map +1 -1
  12. package/cjs/contensis-react-base.js +2888 -84
  13. package/cjs/contensis-react-base.js.map +1 -1
  14. package/cjs/{fromJSLeaveImmer-c00d597f.js → fromJSLeaveImmer-65d26804.js} +2 -16
  15. package/cjs/fromJSLeaveImmer-65d26804.js.map +1 -0
  16. package/cjs/{login-c810cc4c.js → login-d67b82aa.js} +92 -55
  17. package/cjs/login-d67b82aa.js.map +1 -0
  18. package/cjs/{reducers-fde41d6b.js → reducers-3a4f8971.js} +26 -25
  19. package/cjs/reducers-3a4f8971.js.map +1 -0
  20. package/cjs/redux.js +6 -5
  21. package/cjs/redux.js.map +1 -1
  22. package/cjs/routing.js +5 -4
  23. package/cjs/routing.js.map +1 -1
  24. package/cjs/search.js +295 -146
  25. package/cjs/search.js.map +1 -1
  26. package/cjs/{selectors-0ec95076.js → selectors-2c1b1183.js} +7 -3
  27. package/cjs/selectors-2c1b1183.js.map +1 -0
  28. package/cjs/user.js +21 -12
  29. package/cjs/user.js.map +1 -1
  30. package/cjs/util.js +15 -8
  31. package/cjs/util.js.map +1 -1
  32. package/cjs/{version-4f0f5fa6.js → version-951bc80c.js} +28 -20
  33. package/cjs/version-951bc80c.js.map +1 -0
  34. package/cjs/{version-085d203d.js → version-dcfdafd9.js} +5 -5
  35. package/cjs/{version-085d203d.js.map → version-dcfdafd9.js.map} +1 -1
  36. package/esm/{App-1b05ab11.js → App-36e24faa.js} +114 -114
  37. package/esm/App-36e24faa.js.map +1 -0
  38. package/esm/{RouteLoader-e5f0e8cb.js → RouteLoader-93c0d740.js} +46 -22
  39. package/esm/RouteLoader-93c0d740.js.map +1 -0
  40. package/esm/ToJs-2627ce21.js +99 -0
  41. package/esm/ToJs-2627ce21.js.map +1 -0
  42. package/esm/{actions-927d9698.js → actions-5437f43d.js} +5 -4
  43. package/esm/actions-5437f43d.js.map +1 -0
  44. package/esm/client.js +12 -10
  45. package/esm/client.js.map +1 -1
  46. package/esm/contensis-react-base.js +2889 -85
  47. package/esm/contensis-react-base.js.map +1 -1
  48. package/esm/{fromJSLeaveImmer-392af4e3.js → fromJSLeaveImmer-e2f0f331.js} +2 -16
  49. package/esm/fromJSLeaveImmer-e2f0f331.js.map +1 -0
  50. package/esm/{login-f8ba3aeb.js → login-f6dfbe1b.js} +92 -55
  51. package/esm/login-f6dfbe1b.js.map +1 -0
  52. package/esm/{reducers-d6c0edb1.js → reducers-8e5d6232.js} +26 -25
  53. package/esm/reducers-8e5d6232.js.map +1 -0
  54. package/esm/redux.js +8 -7
  55. package/esm/redux.js.map +1 -1
  56. package/esm/routing.js +5 -4
  57. package/esm/routing.js.map +1 -1
  58. package/esm/search.js +296 -147
  59. package/esm/search.js.map +1 -1
  60. package/esm/{selectors-b98d5c76.js → selectors-65f0f31c.js} +7 -4
  61. package/esm/selectors-65f0f31c.js.map +1 -0
  62. package/esm/user.js +23 -14
  63. package/esm/user.js.map +1 -1
  64. package/esm/util.js +15 -8
  65. package/esm/util.js.map +1 -1
  66. package/esm/version-696796d7.js +15 -0
  67. package/esm/{version-3833e8b5.js.map → version-696796d7.js.map} +1 -1
  68. package/esm/{version-16aa83eb.js → version-b2ca1dab.js} +27 -20
  69. package/esm/version-b2ca1dab.js.map +1 -0
  70. package/models/redux/appstate.d.ts +5 -10
  71. package/models/redux/selectors/navigation.d.ts +2 -1
  72. package/models/routing/redux/actions.d.ts +1 -1
  73. package/models/routing/redux/selectors.d.ts +1 -1
  74. package/models/routing/routes.d.ts +3 -2
  75. package/models/routing/util/expressions.d.ts +3 -2
  76. package/models/routing/util/queries.d.ts +1 -1
  77. package/models/search/containers/withListing.d.ts +1 -1
  78. package/models/search/containers/withSearch.d.ts +1 -1
  79. package/models/search/hooks/useListing.hook.d.ts +3 -0
  80. package/models/search/hooks/useMinilist.hook.d.ts +2 -9
  81. package/models/search/index.d.ts +1 -0
  82. package/models/search/models/Queries.d.ts +8 -5
  83. package/models/search/models/Search.d.ts +58 -26
  84. package/models/search/models/SearchActions.d.ts +4 -3
  85. package/models/search/models/SearchProps.d.ts +31 -4
  86. package/models/search/models/SearchState.d.ts +5 -1
  87. package/models/search/models/index.d.ts +2 -1
  88. package/models/search/redux/actions.d.ts +2 -1
  89. package/models/search/redux/reducers.d.ts +230 -314
  90. package/models/search/redux/sagas.d.ts +5 -5
  91. package/models/search/redux/selectors.d.ts +7 -12
  92. package/models/search/search/expressions.d.ts +2 -6
  93. package/models/search/transformations/entry-to-filteritem.mapper.d.ts +2 -1
  94. package/models/search/transformations/filter-to-filterexpression.mapper.d.ts +6 -0
  95. package/models/search/transformations/filters-to-filterexpressions.mapper.d.ts +3 -0
  96. package/models/search/transformations/index.d.ts +3 -0
  97. package/models/search/transformations/state-to-searchuri.d.ts +2 -13
  98. package/models/server/middleware/bundleManipulation.d.ts +2 -1
  99. package/models/server/util/headers.d.ts +3 -2
  100. package/models/user/components/Login.d.ts +1 -2
  101. package/models/user/components/LoginForm.d.ts +1 -2
  102. package/models/user/hocs/withLogin.d.ts +2 -2
  103. package/models/user/hooks/useChangePassword.d.ts +5 -5
  104. package/models/user/hooks/useForgotPassword.d.ts +6 -6
  105. package/models/user/hooks/useLogin.d.ts +9 -45
  106. package/models/user/hooks/useRegistration.d.ts +4 -4
  107. package/models/user/redux/reducers.d.ts +4 -5
  108. package/models/user/redux/sagas/login.d.ts +11 -8
  109. package/models/user/redux/selectors.d.ts +33 -71
  110. package/models/user/util/LoginHelper.class.d.ts +4 -3
  111. package/models/util/json-mapper.d.ts +9 -3
  112. package/models/util/merge.d.ts +1 -0
  113. package/package-lock.json +279 -521
  114. package/package.json +9 -5
  115. package/cjs/App-3324f784.js.map +0 -1
  116. package/cjs/RouteLoader-c7957b14.js.map +0 -1
  117. package/cjs/ToJs-a38fa20e.js +0 -230
  118. package/cjs/ToJs-a38fa20e.js.map +0 -1
  119. package/cjs/actions-a24bf46e.js.map +0 -1
  120. package/cjs/fromJSLeaveImmer-c00d597f.js.map +0 -1
  121. package/cjs/login-c810cc4c.js.map +0 -1
  122. package/cjs/reducers-fde41d6b.js.map +0 -1
  123. package/cjs/selectors-0ec95076.js.map +0 -1
  124. package/cjs/version-4f0f5fa6.js.map +0 -1
  125. package/esm/App-1b05ab11.js.map +0 -1
  126. package/esm/RouteLoader-e5f0e8cb.js.map +0 -1
  127. package/esm/ToJs-879a5a85.js +0 -199
  128. package/esm/ToJs-879a5a85.js.map +0 -1
  129. package/esm/actions-927d9698.js.map +0 -1
  130. package/esm/fromJSLeaveImmer-392af4e3.js.map +0 -1
  131. package/esm/login-f8ba3aeb.js.map +0 -1
  132. package/esm/reducers-d6c0edb1.js.map +0 -1
  133. package/esm/selectors-b98d5c76.js.map +0 -1
  134. package/esm/version-16aa83eb.js.map +0 -1
  135. package/esm/version-3833e8b5.js +0 -15
  136. package/models/search/transformations/filters-to-filterexpression.d.ts +0 -1
  137. package/models/search/transformations/filters-to-filterexpression.mapper.d.ts +0 -2
  138. package/models/server/features/caching/cacheHashing.d.ts +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-b2ca1dab.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/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 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 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: '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 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":["ACTION_PREFIX","GET_NODE_TREE","SET_NODE_TREE","GET_NODE_TREE_ERROR","initialState","root","isError","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","error","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","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","hasNavigationTree","getIn","selectNavigationRoot","selectNavigationChildren","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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"}
@@ -6,13 +6,11 @@ import { StaticRoute } from "../routing/routes";
6
6
  export declare type AppState = {
7
7
  navigation: {
8
8
  root: Node | null;
9
- treeDepends: string[];
10
9
  isError: boolean;
11
10
  isReady: boolean;
12
11
  };
13
12
  routing: {
14
13
  currentHostname: null;
15
- contentTypeId: null;
16
14
  currentPath: string;
17
15
  currentNode: Node & {
18
16
  children: Node[];
@@ -22,7 +20,6 @@ export declare type AppState = {
22
20
  currentProject: string;
23
21
  entryID: string | null;
24
22
  entry: Entry | null;
25
- entryDepends: string[];
26
23
  error?: Error | any;
27
24
  isError: boolean;
28
25
  isLoading: boolean;
@@ -33,16 +30,12 @@ export declare type AppState = {
33
30
  key?: string;
34
31
  };
35
32
  mappedEntry: Record<string, any> | null;
36
- nodeDepends: string[];
37
33
  notFound: boolean;
38
34
  staticRoute: MatchedRoute<Record<string, any>, StaticRoute>;
39
35
  statusCode: number;
40
36
  };
41
37
  user: {
42
38
  authenticationState: {
43
- authenticated: boolean;
44
- authenticationError: boolean;
45
- authenticationErrorMessage: string | null;
46
39
  clientCredentials: {
47
40
  bearerToken: string;
48
41
  bearerTokenExpiryDate: Date;
@@ -50,15 +43,17 @@ export declare type AppState = {
50
43
  refreshTokenExpiryDate: Date;
51
44
  contensisClassicToken: string;
52
45
  } | null;
53
- error: boolean;
54
46
  errorMessage: string | null;
55
- loading: boolean;
47
+ isAuthenticated: boolean;
48
+ isAuthenticationError: boolean;
49
+ isError: boolean;
50
+ isLoading: boolean;
56
51
  };
57
52
  groups: Group[];
58
53
  isZengentiStaff?: boolean;
59
54
  registration?: {
60
55
  error: Error | null;
61
- loading: boolean;
56
+ isLoading: boolean;
62
57
  success: boolean;
63
58
  };
64
59
  passwordResetRequest?: {
@@ -1,3 +1,4 @@
1
1
  export function hasNavigationTree(state: any): any;
2
2
  export function selectNavigationRoot(state: any): any;
3
- export function selectNavigationDepends(state: any): any;
3
+ export function selectNavigationChildren(state: any): any;
4
+ export function selectNavigationDepends(): never[];
@@ -3,4 +3,4 @@ export declare const setNavigationPath: (path: any, location: any, staticRoute:
3
3
  export declare const setCurrentProject: (project: any, allowedGroups: any, hostname: any) => any;
4
4
  export declare const setRoute: (path: any, state: any) => any;
5
5
  export declare const setRouteEntry: (entry: any) => any;
6
- export declare const setSurrogateKeys: (keys: any) => any;
6
+ export declare const setSurrogateKeys: (keys: any, url: any) => any;
@@ -2,7 +2,7 @@ import { StateType } from "../../config";
2
2
  import { AppState } from "../../redux/appstate";
3
3
  export declare const selectRouteEntry: (state: AppState, returnType?: StateType | undefined) => any;
4
4
  export declare const selectMappedEntry: (state: AppState, returnType?: StateType | undefined) => any;
5
- export declare const selectNodeDepends: (state: AppState) => any;
5
+ export declare const selectSurrogateKeys: (state: AppState) => any;
6
6
  export declare const selectCurrentHostname: (state: AppState) => any;
7
7
  export declare const selectCurrentTreeID: (state: AppState) => any;
8
8
  export declare const selectRouteEntryEntryId: (state: AppState) => any;
@@ -1,8 +1,9 @@
1
1
  import { MatchedRoute, RouteConfig } from 'react-router-config';
2
2
  import { Entry, Node } from 'contensis-delivery-api/lib/models';
3
3
  import React from 'react';
4
+ import { AppState } from "../redux/appstate";
4
5
  declare type RouteComponent<Props> = React.ComponentType<Props>;
5
- declare type RouteNode = Node & {
6
+ export declare type RouteNode = Node & {
6
7
  ancestors: Node[];
7
8
  children: Node[];
8
9
  };
@@ -26,7 +27,7 @@ export declare type RouteLoaderProps = {
26
27
  loadingComponent?: React.ComponentType;
27
28
  notFoundComponent?: React.ComponentType;
28
29
  };
29
- export declare type EntryMapper = (<MappedProps>(node: RouteNode, state?: any) => MappedProps | unknown) | (<MappedProps>(node: RouteNode, state?: any) => Promise<MappedProps | unknown>);
30
+ export declare type EntryMapper = (<MappedProps>(node: RouteNode, state?: AppState) => MappedProps | unknown) | (<MappedProps>(node: RouteNode, state?: AppState) => Promise<MappedProps | unknown>);
30
31
  export declare type ReduxInjector = () => Promise<{
31
32
  key: string;
32
33
  reducer: any;
@@ -1,2 +1,3 @@
1
- export declare const fieldExpression: (field: any, value: any, operator?: string, weight?: null) => any[];
2
- export declare const defaultExpressions: (versionStatus: any) => import("contensis-core-api").IExpression[];
1
+ import { IExpression } from 'contensis-core-api';
2
+ export declare const fieldExpression: (field: string, value: string | string[], operator?: string, weight?: null) => any[];
3
+ export declare const defaultExpressions: (versionStatus: 'published' | 'latest') => IExpression[];
@@ -1,2 +1,2 @@
1
1
  import { Query } from "../../util/ContensisDeliveryApi";
2
- export declare const routeEntryByFieldsQuery: (id: string, language?: string, fields?: string[], versionStatus?: string) => Query;
2
+ export declare const routeEntryByFieldsQuery: (id: string, language?: string, fields?: string[], versionStatus?: 'published' | 'latest') => Query;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import { Mappers } from '../models/Search';
3
- declare const withListing: (mappers: Mappers) => <Props extends Record<keyof Props, any>>(ListingComponent: React.FC<Props>) => import("react-redux").ConnectedComponent<any, import("react-redux").Omit<unknown, never>>;
3
+ declare const withListing: (mappers: Mappers) => <Props extends Record<string, any>>(ListingComponent: React.FC<Props>) => import("react-redux").ConnectedComponent<any, import("react-redux").Omit<unknown, never>>;
4
4
  export default withListing;
@@ -1,4 +1,4 @@
1
1
  import React from 'react';
2
2
  import { Mappers } from '../models/Search';
3
- declare const withSearch: (mappers: Mappers) => <Props extends Record<keyof Props, any>>(SearchComponent: React.ComponentType<Props>) => import("react-redux").ConnectedComponent<any, import("react-redux").Omit<unknown, never>>;
3
+ declare const withSearch: (mappers: Mappers) => <Props extends Record<string, any>>(SearchComponent: React.ComponentType<Props>) => import("react-redux").ConnectedComponent<any, import("react-redux").Omit<unknown, never>>;
4
4
  export default withSearch;
@@ -0,0 +1,3 @@
1
+ import { ListingProps, UseListingProps } from '../models/SearchProps';
2
+ declare const useListing: <SearchResults extends Record<string, any>>({ mappers }?: UseListingProps) => ListingProps<SearchResults>;
3
+ export default useListing;
@@ -1,10 +1,3 @@
1
- import { UseMinilistProps } from '../models/SearchProps';
2
- declare const useMinilist: ({ id, config, excludeIds, mapper, mappers, params, defaultLang, debug, }?: UseMinilistProps) => {
3
- filters: import("../models/SearchState").Filters;
4
- isLoading: boolean;
5
- pagingInfo: import("../models/SearchState").Paging;
6
- results: any[];
7
- searchTerm: string;
8
- title: string;
9
- };
1
+ import { MinilistProps, UseMinilistProps } from '../models/SearchProps';
2
+ declare const useMinilist: <SearchResults extends Record<string, any>>({ id, config, excludeIds, mapper, mappers, params, defaultLang, debug, }?: UseMinilistProps) => MinilistProps<SearchResults>;
10
3
  export default useMinilist;
@@ -7,6 +7,7 @@ export * from './models';
7
7
  export { default as withSearch } from './containers/withSearch';
8
8
  export { default as withListing } from './containers/withListing';
9
9
  export { doSearch, setRouteFilters, searchSagas as sagas } from './redux/sagas';
10
+ export { default as useListing } from './hooks/useListing.hook';
10
11
  export { default as useMinilist } from './hooks/useMinilist.hook';
11
12
  export * as actions from './redux/actions';
12
13
  export * as queries from './redux/queries';
@@ -3,6 +3,13 @@ import { VersionStatus } from 'contensis-core-api/lib/models';
3
3
  import { Operators } from 'contensis-delivery-api/lib/entries/query';
4
4
  import { CustomWhereClause, FeaturedResults, WeightedSearchField } from './Search';
5
5
  export declare type FieldOperators = Exclude<keyof Operators, 'and' | 'or' | 'not'>;
6
+ export declare type LogicOperators = 'and' | 'or' | 'not';
7
+ export declare type FilterExpression = {
8
+ key: string;
9
+ values: string[];
10
+ fieldOperator: FieldOperators;
11
+ logicOperator: LogicOperators;
12
+ };
6
13
  export declare type SearchQueryOptions = {
7
14
  assetTypes: string[];
8
15
  contentTypeIds: string[];
@@ -11,11 +18,7 @@ export declare type SearchQueryOptions = {
11
18
  excludeIds: string[];
12
19
  featuredResults: FeaturedResults;
13
20
  fields: string[];
14
- filters: {
15
- key: string;
16
- value: string;
17
- operator: FieldOperators;
18
- }[];
21
+ filters: FilterExpression[];
19
22
  includeInSearchFields: string[];
20
23
  languages: string[];
21
24
  pageSize: number;
@@ -1,4 +1,7 @@
1
+ import { Entry } from 'contensis-delivery-api/lib/models';
2
+ import MappingTemplate from 'jsonpath-mapper/dist/models/Template';
1
3
  import { Context } from './Enums';
4
+ import { FieldOperators, LogicOperators } from './Queries';
2
5
  import { AppState } from './SearchState';
3
6
  export declare type Tab = {
4
7
  /** The facet to render as default */
@@ -15,8 +18,11 @@ export declare type CustomApi = {
15
18
  uri: string;
16
19
  };
17
20
  export declare type Listing = {
21
+ /** Display title */
22
+ title?: string;
18
23
  /** Experimental: use a custom API to retrieve search results */
19
24
  customApi?: CustomApi;
25
+ } | {
20
26
  /** Experimental: override the rootUrl of the Delivery API client */
21
27
  env?: string;
22
28
  /** An object with a key for each filter that is required in this facet */
@@ -26,21 +32,16 @@ export declare type Listing = {
26
32
  /** Query params object to drive the search for this facet */
27
33
  queryParams: QueryParams;
28
34
  /** Display title */
29
- title: string;
35
+ title?: string;
30
36
  };
31
- export declare type Facet = {
32
- /** Display title */
33
- title: string;
34
- /** Experimental: use a custom API to retrieve search results */
35
- customApi?: CustomApi;
36
- } | ({
37
+ export declare type SearchFacet = {
37
38
  /** The first facet to be shown if no facet is supplied via a route parameter [default false] */
38
39
  isDefault?: boolean;
39
40
  /** Set to true to temporarily disable the facet [default false] */
40
41
  isDisabled?: boolean;
41
42
  /** The id of the tab the facet applies to. Use 0 for default or the id assigned to the tab */
42
43
  tabId?: number;
43
- } & Listing);
44
+ } & Listing;
44
45
  export declare type SearchFilters = {
45
46
  [key: string]: SearchFilter;
46
47
  };
@@ -49,10 +50,14 @@ export declare type SearchFilter = {
49
50
  contentTypeId?: string | string[];
50
51
  /** An array of CustomWhereClause to include in the search query when dynamically loading entries via the contentTypeId key */
51
52
  customWhere?: CustomWhereClause;
53
+ /** Use this to set a specific value to render for the initial / unselected option in this filter */
54
+ defaultValue?: string;
52
55
  /** The content type field we will apply the filter key to, to filter the list of returned results. */
53
56
  fieldId: string | string[];
54
57
  /** The Delivery API search operator we will use to filter the list of returned results. */
55
- fieldOperator?: string;
58
+ fieldOperator?: FieldOperators;
59
+ /** The Delivery API locgical operator we will use to filter the list of returned results when multiple filter items are selected. */
60
+ logicOperator?: LogicOperators;
56
61
  /** The taxonomy path we will dynamically load into state under the items[] */
57
62
  path?: string;
58
63
  /** Setting to true will sync selected filters under matching filter keys in other facets */
@@ -146,7 +151,7 @@ export declare type WeightedSearchField = {
146
151
  export declare type SearchConfig = {
147
152
  /** An object with a key for each facet that is required for the search */
148
153
  facets: {
149
- [key: string]: Facet;
154
+ [key: string]: SearchFacet;
150
155
  };
151
156
  /** An object with a key for each independent listing that is required for the site */
152
157
  listings?: {
@@ -160,28 +165,55 @@ export declare type SearchConfig = {
160
165
  tabs: Tab[];
161
166
  };
162
167
  export declare type ConfigTypes = {
163
- [key: string]: Facet;
168
+ [key: string]: SearchFacet;
164
169
  } | {
165
170
  [key: string]: Listing;
166
171
  };
167
- export declare type Mappers = {
168
- customApi?: (queryParams: QueryParams) => {
169
- [key: string]: string;
170
- };
171
- results: (entries: any[], facet?: string, context?: Context, state?: AppState) => any[];
172
- filterItems?: (entries: any[]) => any[];
173
- navigate?: ({ state, facet, orderBy, pageIndex, term, }: {
174
- state: AppState;
175
- facet?: string;
176
- orderBy?: string;
177
- pageIndex: number;
178
- term?: string;
179
- }) => NavigateUri;
180
- resultsInfo?: (state: AppState) => any;
181
- };
172
+ /**
173
+ * Type your mapper for mapping API responses (entries) into usable props for your components to render
174
+ */
175
+ export declare type SearchResultsMapper<Target = any, Source = Entry> = (entries: Source[], facet?: string, context?: Context, state?: AppState) => Target[];
176
+ /**
177
+ * Type your custom filter item mapping function with this to ensure correctly typed FilterItems are returned to work with search functions
178
+ */
179
+ export declare type FilterItemsMapper<T = Entry> = (entries: T[]) => FilterItem[];
180
+ /**
181
+ * The uri object type we need to return from the Navigate mapper after any search action has been called
182
+ */
182
183
  export declare type NavigateUri = {
183
184
  path: string;
184
185
  search: string;
185
186
  hash: string;
186
187
  };
188
+ /**
189
+ * Type your jsonpath-mapper mapping template with this to map your next search uri to your custom uri structure after calling any search action
190
+ */
191
+ export declare type SearchUriMapping = MappingTemplate<SearchStateParams>;
192
+ /**
193
+ * Type the argument passed to the Navigate mapper, this provides the relevant keys and data available to manipulate and return the next uri after any search action has been called
194
+ */
195
+ export declare type SearchStateParams = {
196
+ state: AppState;
197
+ facet?: string;
198
+ orderBy?: string;
199
+ pageIndex: number;
200
+ term?: string;
201
+ };
202
+ /** Type your Navigate mapper with this, the Navigate mapper is called after any search action has been called and is required to return the next uri to be parsed by your project's route configuration and provide the right uri parameters to drive the next search query and resulting state */
203
+ export declare type NavigateMapper = ({ state, facet, orderBy, pageIndex, term, }: SearchStateParams) => NavigateUri;
204
+ /** Type your Results Info mapper with this, remember "resultsInfo" prop is a custom object you define yourself - you can provide any keys you wish, conveying detailed messaging or UX tweaks to cover all kinds of scenarios based on data in the search state at that time */
205
+ export declare type ResultsInfoMapper<T = any> = (state: AppState) => T;
206
+ /** Experimental**: If you are trying to use the custom API feature you can add specific keys to the resultant querystring that for the custom API GET request */
207
+ export declare type CustomApiParamsMapper = (queryParams: QueryParams) => {
208
+ [key: string]: string;
209
+ };
210
+ /** Type your Mappers object with this type to provide a accurate, type-safe "mapper" argument to your search implementation */
211
+ export declare type Mappers = {
212
+ customApi?: CustomApiParamsMapper;
213
+ results: SearchResultsMapper;
214
+ filterItems?: FilterItemsMapper;
215
+ navigate?: NavigateMapper;
216
+ resultsInfo?: ResultsInfoMapper;
217
+ };
218
+ /** SearchTransformations is just an alias for Mappers object / argument */
187
219
  export declare type SearchTransformations = Mappers;
@@ -1,7 +1,7 @@
1
1
  import { PagedList } from 'contensis-core-api';
2
2
  import { Entry, TaxonomyNode } from 'contensis-delivery-api/lib/models';
3
3
  import { Context } from '../models/Enums';
4
- import { Facet, Listing, Mappers } from '../models/Search';
4
+ import { SearchFacet, Listing, Mappers } from '../models/Search';
5
5
  import { AppState } from './SearchState';
6
6
  import { QueryParams } from './Queries';
7
7
  import { TimedSearchResponse } from './SearchUtil';
@@ -16,7 +16,7 @@ export declare type DebugFlags = boolean | {
16
16
  preloadOtherFacets?: boolean;
17
17
  };
18
18
  export declare type TriggerSearchParams = {
19
- config?: Facet | Listing;
19
+ config?: SearchFacet | Listing;
20
20
  context: Context;
21
21
  debug?: DebugFlags;
22
22
  defaultLang?: string;
@@ -46,6 +46,7 @@ declare type InitListingParams = {
46
46
  export declare type InitListingAction = Action & InitListingParams & {
47
47
  ssr?: boolean;
48
48
  };
49
+ export declare type SetRouteFiltersOptions = Partial<InitListingAction>;
49
50
  export declare type InitListingActionCreator = (p: InitListingParams) => InitListingAction;
50
51
  export declare type LoadFiltersSearchResults = Action & {
51
52
  error: any;
@@ -86,7 +87,7 @@ export declare type SetSearchEntriesParams = {
86
87
  defaultLang: string;
87
88
  facet: string;
88
89
  mappers: Mappers;
89
- nextFacet: Facet;
90
+ nextFacet: SearchFacet;
90
91
  preload: boolean;
91
92
  ogState: AppState;
92
93
  debug: DebugFlags;
@@ -1,7 +1,20 @@
1
1
  import { clearFilters, updateCurrentFacet, updateCurrentTab, updatePageIndex, updateSearchTerm, updateSelectedFilters, updateSortOrder } from '../redux/actions';
2
- import { Facet, Mappers } from '../models/Search';
2
+ import { SearchFacet, Mappers } from '../models/Search';
3
3
  import { DebugFlags } from '../models/SearchActions';
4
- import { Facet as StateFacet, Facets, Filters, Paging } from '../models/SearchState';
4
+ import { Facet as StateFacet, Facets, Filters, Paging, SelectedFilters } from '../models/SearchState';
5
+ export interface MinilistProps<SearchResults = any> {
6
+ filters: Filters;
7
+ isLoading: boolean;
8
+ paging: Paging;
9
+ results: SearchResults[];
10
+ resultsInfo: any;
11
+ searchTerm: string;
12
+ sortOrder: string[];
13
+ title: string;
14
+ updatePageIndex: typeof updatePageIndex;
15
+ updateSelectedFilters: typeof updateSelectedFilters;
16
+ updateSortOrder: typeof updateSortOrder;
17
+ }
5
18
  export interface ListingProps<SearchResults = any> {
6
19
  clearFilters: typeof clearFilters;
7
20
  currentListing: string;
@@ -9,12 +22,15 @@ export interface ListingProps<SearchResults = any> {
9
22
  featured: SearchResults[];
10
23
  filters: Filters;
11
24
  isLoading: boolean;
12
- paging: Paging;
25
+ listing: StateFacet;
13
26
  pageIsLoading: boolean;
27
+ paging: Paging;
14
28
  results: SearchResults[];
15
29
  resultsInfo: any;
16
30
  searchTerm: string;
31
+ selectedFilters: SelectedFilters;
17
32
  sortOrder: string[];
33
+ title: string;
18
34
  updateCurrentFacet: typeof updateCurrentFacet;
19
35
  updatePageIndex: typeof updatePageIndex;
20
36
  updateSearchTerm: typeof updateSearchTerm;
@@ -36,6 +52,7 @@ export interface SearchProps<SearchResults = any> {
36
52
  results: SearchResults[];
37
53
  resultsInfo: any;
38
54
  searchTerm: string;
55
+ selectedFilters: SelectedFilters;
39
56
  sortOrder: string[];
40
57
  tabsAndFacets: any;
41
58
  updateCurrentFacet: typeof updateCurrentFacet;
@@ -45,9 +62,19 @@ export interface SearchProps<SearchResults = any> {
45
62
  updateSelectedFilters: typeof updateSelectedFilters;
46
63
  updateSortOrder: typeof updateSortOrder;
47
64
  }
65
+ export interface UseListingProps {
66
+ debug?: DebugFlags;
67
+ defaultLang?: string;
68
+ mappers?: Mappers;
69
+ params?: {
70
+ [key: string]: string;
71
+ };
72
+ /** Reserved for future use */
73
+ id?: string;
74
+ }
48
75
  export interface UseMinilistProps {
49
76
  id: string;
50
- config?: Facet;
77
+ config?: SearchFacet;
51
78
  debug?: DebugFlags;
52
79
  defaultLang?: string;
53
80
  excludeIds?: string[];
@@ -1,6 +1,6 @@
1
1
  import { Context } from './Enums';
2
2
  import { CustomWhereClause } from './Search';
3
- export declare type AppState = Record<'search', SearchState>;
3
+ export declare type AppState = Record<'search', SearchState> & Record<string, any>;
4
4
  export declare type SearchState = {
5
5
  context: keyof typeof Context;
6
6
  currentFacet: string;
@@ -58,6 +58,7 @@ export declare type Filters = {
58
58
  export declare type Filter = {
59
59
  contentTypeId?: string;
60
60
  customWhere?: CustomWhereClause;
61
+ defaultValue?: string;
61
62
  fieldId?: string;
62
63
  isGrouped?: boolean;
63
64
  isSingleSelect?: boolean;
@@ -76,6 +77,9 @@ export declare type FilterItem = {
76
77
  path?: string;
77
78
  isSelected: boolean;
78
79
  };
80
+ export declare type SelectedFilters = {
81
+ [k: string]: string[];
82
+ };
79
83
  export declare type Paging = {
80
84
  isLoading: boolean;
81
85
  pageCount: number;
@@ -1,3 +1,4 @@
1
- export type { CustomApi, CustomWhereClause, Facet as SearchFacet, FeaturedResults, FilterItem, Listing, NavigateUri, QueryParams, SearchConfig, SearchFilter, SearchFilters, SearchTransformations, Tab, WeightedSearchField, } from './Search';
1
+ export * from './Search';
2
+ export type { SetRouteFiltersOptions } from './SearchActions';
2
3
  export * from './SearchProps';
3
4
  export type { Facet, Filter, Filters, SearchState } from './SearchState';
@@ -27,10 +27,11 @@ export declare const updateSearchTerm: (term: string) => {
27
27
  type: string;
28
28
  term: string;
29
29
  };
30
- export declare const updateSelectedFilters: (filter: string, key: string) => {
30
+ export declare const updateSelectedFilters: (filter: string, key: string, isUnknownItem?: boolean) => {
31
31
  type: string;
32
32
  filter: string;
33
33
  key: string;
34
+ isUnknownItem: boolean;
34
35
  };
35
36
  export declare const updateSortOrder: (orderBy: string, facet?: string | undefined) => {
36
37
  type: string;