@zengenti/contensis-react-base 3.0.2-beta.13 → 3.0.2-beta.14

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.
package/esm/search.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sources":["../node_modules/zengenti-search-package/src/app/zengenti-search-package/search/ToJs.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/containers/withSearch.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/containers/withListing.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/transformations/index.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useFacets.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useListing.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useMinilist.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/redux/schema.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/redux/reducers.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/index.ts"],"sourcesContent":["/* eslint-disable import/default */\n/* eslint-disable react/display-name */\n/* eslint-disable @typescript-eslint/naming-convention */\nimport React from 'react';\n\nexport const toJS =\n <Props extends { [key: string]: any }>(\n WrappedComponent: React.ComponentType<Props>\n ): React.ComponentType<Props> =>\n (wrappedComponentProps: Props) => {\n const KEY = 0;\n const VALUE = 1;\n\n const propsJS = Object.entries(wrappedComponentProps).reduce<Props>(\n (newProps: any, wrappedComponentProp) => {\n const propKey = wrappedComponentProp[KEY];\n const propValue = wrappedComponentProp[VALUE];\n newProps[propKey] =\n propValue && typeof propValue === 'object' && 'toJS' in propValue\n ? propValue.toJS()\n : propValue;\n return newProps as Props;\n },\n {} as Props\n );\n\n return <WrappedComponent {...propsJS} />;\n };\n","// eslint-disable-next-line import/default\nimport React from 'react';\nimport { connect } from 'react-redux';\n\nimport { toJS } from '../search/ToJs';\nimport {\n clearFilters,\n updateCurrentFacet,\n updateCurrentTab,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport {\n getCurrentFacet,\n getCurrentTab,\n getFacet,\n getFacetTitles,\n getFacetsTotalCount,\n getFeaturedResults,\n getIsLoading,\n getPageIndex,\n getPageIsLoading,\n getPaging,\n getQueryParameter,\n getRenderableFilters,\n getResults,\n getSearchTerm,\n getSearchTotalCount,\n getSelectedFilters,\n getTabFacets,\n getTabsAndFacets,\n getTotalCount,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nimport { SearchProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\n\nconst withSearch =\n (mappers: Mappers) =>\n <Props extends Record<string, any>>(\n SearchComponent: React.ComponentType<Props>\n ) => {\n const Wrapper: React.FC<Props & SearchProps<any>> = props => {\n return <SearchComponent {...props} />;\n };\n\n Wrapper.displayName = `withSearch(${\n SearchComponent.displayName || SearchComponent.name\n })`;\n\n const mapStateToProps = (state: AppState) => {\n return {\n currentFacet: getCurrentFacet(state),\n currentPageIndex: getPageIndex(state),\n currentTabIndex: getCurrentTab(state),\n facet: getFacet(state),\n facets: getTabFacets(state),\n facetsTotalCount: getFacetsTotalCount(state),\n facetTitles: getFacetTitles(state),\n featuredResults: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n paging: getPaging(state),\n pageIsLoading: getPageIsLoading(state),\n results: getResults(state),\n resultsInfo: mappers?.resultsInfo && mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n searchTotalCount: getSearchTotalCount(state),\n selectedFilters: getSelectedFilters(state),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n tabsAndFacets: getTabsAndFacets(state),\n totalCount: getTotalCount(state),\n };\n };\n\n const mapDispatchToProps = {\n clearFilters: (filterKey?: string) =>\n withMappers(clearFilters(filterKey), mappers),\n updateCurrentFacet: (facet: string) =>\n withMappers(updateCurrentFacet(facet), mappers),\n updateCurrentTab: (id: number) =>\n withMappers(updateCurrentTab(id), mappers),\n updatePageIndex: (pageIndex: number, scrollYPos?: number) =>\n withMappers(updatePageIndex(pageIndex, scrollYPos), mappers),\n updatePageSize: (pageSize: number, scrollYPos?: number) =>\n withMappers(updatePageSize(pageSize, scrollYPos), mappers),\n updateSearchTerm: (term: string) =>\n withMappers(updateSearchTerm(term), mappers),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollYPos?: number\n ) =>\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollYPos),\n mappers\n ),\n updateSortOrder: (orderBy: string) =>\n withMappers(updateSortOrder(orderBy), mappers),\n };\n\n const connector = connect(mapStateToProps, mapDispatchToProps);\n\n return connector(toJS(Wrapper) as any);\n };\n\nexport default withSearch;\n","/* eslint-disable @typescript-eslint/naming-convention */\n// eslint-disable-next-line import/default\nimport React from 'react';\nimport { connect } from 'react-redux';\nimport { toJS } from '../search/ToJs';\nimport {\n clearFilters,\n updateCurrentFacet,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport { selectListing } from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nimport { AppState } from '../models/SearchState';\nimport { ListingProps } from '../models/SearchProps';\n\nconst withListing =\n (mappers: Mappers) =>\n <Props extends Record<string, any>>(ListingComponent: React.FC<Props>) => {\n const Wrapper: React.FC<Props & ListingProps<any>> = props => {\n return <ListingComponent {...props} />;\n };\n\n Wrapper.displayName = `withListing(${\n ListingComponent.displayName || ListingComponent.name\n })`;\n\n const {\n getCurrent,\n getFeaturedResults,\n getIsLoading,\n getListing,\n getPageIndex,\n getPaging,\n getQueryParameter,\n getRenderableFilters,\n getResults,\n getSearchTerm,\n getSelectedFilters,\n } = selectListing;\n\n const mapStateToProps = (state: AppState) => {\n return {\n currentListing: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n listing: getListing(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n paging: getPaging(state),\n results: getResults(state),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n selectedFilters: getSelectedFilters(state),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n };\n };\n\n const mapDispatchToProps = {\n clearFilters: (filterKey?: string) =>\n withMappers(clearFilters(filterKey), mappers),\n updateCurrentFacet: (facet: string) =>\n withMappers(updateCurrentFacet(facet), mappers),\n updatePageIndex: (pageIndex: number, scrollYPos?: number) =>\n withMappers(updatePageIndex(pageIndex, scrollYPos), mappers),\n updatePageSize: (pageSize: number, scrollYPos?: number) =>\n withMappers(updatePageSize(pageSize, scrollYPos), mappers),\n updateSearchTerm: (term: string) =>\n withMappers(updateSearchTerm(term), mappers),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollYPos?: number\n ) =>\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollYPos),\n mappers\n ),\n updateSortOrder: (orderBy: string) =>\n withMappers(updateSortOrder(orderBy), mappers),\n };\n\n return connect(mapStateToProps, mapDispatchToProps)(toJS(Wrapper) as any);\n };\n\nexport default withListing;\n","import { Mappers } from '../models/Search';\nimport mapStateToSearchUri from './state-to-searchuri';\n\nexport default {\n results: entries => entries,\n navigate: mapStateToSearchUri,\n} as Mappers;\n","import { useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\nimport {\n clearFilters,\n updateCurrentFacet,\n updateCurrentTab,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport defaultMappers from '../transformations';\nimport { Context } from '../models/Enums';\nimport { SearchProps, UseFacetsProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\nimport {\n getPaging,\n getResults,\n getSelectedFilters,\n selectFacets,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nconst {\n getCurrent,\n getCurrentTab,\n getFacet,\n getFacetsTotalCount,\n getFacetTitles,\n getFeaturedResults,\n getIsLoading,\n getPageIndex,\n getPageIsLoading,\n getQueryParameter,\n getRenderableFilters,\n getSearchTerm,\n getSearchTotalCount,\n getTabFacets,\n getTabsAndFacets,\n getTotalCount,\n} = selectFacets;\n\nconst makeSelectFacetsProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, mappers: Mappers) => mappers,\n (state: AppState, mappers: Mappers) => ({\n currentFacet: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n currentTabIndex: getCurrentTab(state),\n facet: getFacet(state),\n facetTitles: getFacetTitles(state),\n facets: getTabFacets(state),\n facetsTotalCount: getFacetsTotalCount(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n pageIsLoading: getPageIsLoading(state),\n paging: getPaging(state, '', Context.facets, 'js'),\n results: getResults(state, '', Context.facets, 'js'),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n searchTotalCount: getSearchTotalCount(state),\n selectedFilters: getSelectedFilters(state, '', Context.facets, 'js'),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n tabsAndFacets: getTabsAndFacets(state),\n totalCount: getTotalCount(state),\n })\n );\n\nconst useFacets = <SearchResults extends Record<string, any>>(\n { mappers }: UseFacetsProps = {\n id: '',\n }\n) => {\n const dispatch = useDispatch();\n\n const m = mappers || defaultMappers;\n\n const selectListingProps = useMemo(makeSelectFacetsProps, [m]);\n\n const dispatchProps = {\n clearFilters: (filterKey?: string) =>\n dispatch(withMappers(clearFilters(filterKey), m)),\n updateCurrentFacet: (facet: string) =>\n dispatch(withMappers(updateCurrentFacet(facet), m)),\n updateCurrentTab: (id: number) => withMappers(updateCurrentTab(id), m),\n updatePageIndex: (pageIndex: number, scrollYPos?: number) =>\n dispatch(withMappers(updatePageIndex(pageIndex, scrollYPos), m)),\n updatePageSize: (pageSize: number, scrollYPos?: number) =>\n dispatch(withMappers(updatePageSize(pageSize, scrollYPos), m)),\n updateSearchTerm: (term: string) =>\n dispatch(withMappers(updateSearchTerm(term), m)),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollYPos?: number\n ) =>\n dispatch(\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollYPos),\n m\n )\n ),\n updateSortOrder: (orderBy: string) =>\n dispatch(withMappers(updateSortOrder(orderBy), m)),\n };\n\n const {\n currentFacet,\n currentPageIndex,\n currentTabIndex,\n facet,\n facets,\n facetsTotalCount,\n facetTitles,\n featured,\n filters,\n isLoading,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n searchTotalCount,\n selectedFilters,\n sortOrder,\n tabsAndFacets,\n totalCount,\n } = useSelector((state: AppState) => selectListingProps(state, m));\n\n return {\n currentFacet,\n currentPageIndex,\n currentTabIndex,\n facet,\n facets,\n facetsTotalCount,\n facetTitles,\n featured,\n filters,\n isLoading,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n searchTotalCount,\n selectedFilters,\n sortOrder,\n tabsAndFacets,\n totalCount,\n ...dispatchProps,\n } as SearchProps<SearchResults>;\n};\n\nexport default useFacets;\n","import { useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\nimport {\n clearFilters,\n updateCurrentFacet,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport defaultMappers from '../transformations';\nimport { Context } from '../models/Enums';\nimport { ListingProps, UseListingProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\nimport {\n getPaging,\n getResults,\n getSelectedFilters,\n selectListing,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nconst {\n getCurrent,\n getFeaturedResults,\n getIsLoading,\n getListing,\n getPageIndex,\n getPageIsLoading,\n getQueryParameter,\n getRenderableFilters,\n getSearchTerm,\n} = selectListing;\n\nconst makeSelectListingProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, mappers: Mappers) => mappers,\n (state: AppState, mappers: Mappers) => ({\n currentListing: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n listing: getListing(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n pageIsLoading: getPageIsLoading(state),\n paging: getPaging(state, '', Context.listings, 'js'),\n results: getResults(state, '', Context.listings, 'js'),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n selectedFilters: getSelectedFilters(state, '', Context.listings, 'js'),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n })\n );\n\nconst useListing = <SearchResults extends Record<string, any>>(\n { mappers }: UseListingProps = {\n id: '',\n }\n) => {\n const dispatch = useDispatch();\n\n const m = mappers || defaultMappers;\n\n const selectListingProps = useMemo(makeSelectListingProps, [m]);\n\n const dispatchProps = {\n clearFilters: (filterKey?: string) =>\n dispatch(withMappers(clearFilters(filterKey), m)),\n updateCurrentFacet: (facet: string) =>\n dispatch(withMappers(updateCurrentFacet(facet), m)),\n updatePageIndex: (pageIndex: number, scrollYPos?: number) =>\n dispatch(withMappers(updatePageIndex(pageIndex, scrollYPos), m)),\n updatePageSize: (pageSize: number, scrollYPos?: number) =>\n dispatch(withMappers(updatePageSize(pageSize, scrollYPos), m)),\n updateSearchTerm: (term: string) =>\n dispatch(withMappers(updateSearchTerm(term), m)),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollYPos?: number\n ) =>\n dispatch(\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollYPos),\n m\n )\n ),\n updateSortOrder: (orderBy: string) =>\n dispatch(withMappers(updateSortOrder(orderBy), m)),\n };\n\n const {\n currentListing,\n currentPageIndex,\n featured,\n filters,\n isLoading,\n listing,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n selectedFilters,\n sortOrder,\n } = useSelector((state: AppState) => selectListingProps(state, m));\n\n return {\n currentListing,\n currentPageIndex,\n featured,\n filters,\n isLoading,\n listing,\n pageIsLoading,\n paging,\n results,\n resultsInfo,\n searchTerm,\n selectedFilters,\n sortOrder,\n title: listing.title,\n ...dispatchProps,\n } as ListingProps<SearchResults>;\n};\n\nexport default useListing;\n","import { useEffect, useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\n\nimport { Context } from '../models/Enums';\nimport { MinilistProps, UseMinilistProps } from '../models/SearchProps';\nimport { AppState, Facet, Filters } from '../models/SearchState';\n\nimport { triggerSearch } from '../redux/actions';\nimport {\n getResults,\n getIsLoading,\n getFacet,\n getPaging,\n getSearchTerm,\n getFilters,\n} from '../redux/selectors';\n\nconst makeSelectMinilistProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, id: string) => id,\n (state: AppState, id: string) =>\n id\n ? {\n facet: getFacet(state, id, Context.minilist, 'js'),\n filters: getFilters(state, id, Context.minilist, 'js'),\n isLoading: getIsLoading(state, Context.minilist, id),\n pagingInfo: getPaging(state, id, Context.minilist, 'js'),\n results: getResults(state, id, Context.minilist, 'js'),\n searchTerm: getSearchTerm(state),\n }\n : null\n );\n\nconst useMinilist = <SearchResults extends Record<string, any>>(\n {\n id,\n config,\n excludeIds,\n mapper,\n mappers,\n params,\n defaultLang,\n debug,\n }: UseMinilistProps = { id: '' }\n) => {\n const dispatch = useDispatch();\n\n const selectMinilistProps = useMemo(makeSelectMinilistProps, [id]);\n\n const { facet, filters, isLoading, pagingInfo, results, searchTerm } =\n useSelector((state: AppState) => selectMinilistProps(state, id)) || {\n facet: {} as Facet,\n filters: {} as Filters,\n isLoading: false,\n pagingInfo: {} as Facet['pagingInfo'],\n results: [] as SearchResults[],\n searchTerm: '',\n };\n // useSelector((state: AppState) => ({\n // facet: getFacet(state, id, Context.minilist).toJS(),\n // filters: getFilters(state, id, Context.minilist).toJS(),\n // isLoading: getIsLoading(state, Context.minilist, id),\n // pagingInfo: getPaging(state, id, Context.minilist).toJS(),\n // results: getResults(state, id, Context.minilist).toJS(),\n // searchTerm: getSearchTerm(state),\n // }));\n\n useEffect(() => {\n if (id && (mapper || mappers?.results)) {\n dispatch(\n triggerSearch({\n config,\n context: Context.minilist,\n defaultLang,\n facet: id,\n mapper,\n mappers,\n params,\n excludeIds,\n debug,\n })\n );\n }\n }, [dispatch, excludeIds, id, defaultLang, params]);\n\n return {\n filters,\n isLoading,\n paging: pagingInfo,\n results,\n searchTerm,\n title: facet.title,\n } as MinilistProps<SearchResults>;\n};\n\nexport default useMinilist;\n","import { CustomWhereClause } from '../models/Search';\nimport { Filter, FilterItem, SearchState } from '../models/SearchState';\n\nexport const entries = {\n isLoading: false,\n isError: false,\n items: [],\n};\n\nexport const pagingInfo = {\n isLoading: false,\n pageCount: 0,\n pageIndex: 0,\n pageSize: 0,\n pagesLoaded: [],\n prevPageIndex: 0,\n totalCount: 0,\n};\n\nexport const searchFacet = {\n title: null,\n featuredEntries: entries,\n featuredResults: [],\n entries,\n results: [],\n queryParams: {},\n filters: {},\n queryDuration: 0,\n pagingInfo,\n projectId: '',\n};\n\nexport const searchTab = {\n currentFacet: undefined,\n facets: {},\n id: 0,\n label: undefined,\n totalCount: '',\n};\n\nexport const filtering = {\n isLoading: false,\n isError: false,\n isGrouped: false,\n title: undefined,\n contentTypeId: undefined,\n customWhere: [],\n fieldId: undefined,\n items: [],\n} as Omit<Filter, 'customWhere' | 'items'> & {\n customWhere?: CustomWhereClause[];\n items?: FilterItem[];\n};\n\nexport const filterItem = {\n key: '',\n type: undefined,\n title: undefined,\n path: undefined,\n isSelected: false,\n} as FilterItem;\n\nconst config = {\n isLoaded: false,\n isError: false,\n};\n\nconst searchState: SearchState = {\n context: 'facets',\n currentFacet: '',\n currentListing: '',\n facets: {},\n listings: {},\n minilist: {},\n term: '',\n tabs: [],\n config,\n};\n\nexport const initialState = searchState;\n","import { Draft, produce } from 'immer';\nimport equals from 'deep-equal';\nimport merge from 'deepmerge';\n\nimport {\n entries,\n filterItem,\n pagingInfo,\n searchFacet,\n initialState,\n} from './schema';\nimport {\n APPLY_CONFIG,\n CLEAR_FILTERS,\n EXECUTE_SEARCH,\n EXECUTE_SEARCH_ERROR,\n LOAD_FILTERS,\n LOAD_FILTERS_COMPLETE,\n LOAD_FILTERS_ERROR,\n SET_ROUTE_FILTERS,\n SET_SEARCH_FILTERS,\n SET_SEARCH_ENTRIES,\n UPDATE_SEARCH_TERM,\n UPDATE_SELECTED_FILTERS,\n UPDATE_SORT_ORDER,\n UPDATE_PAGE_INDEX,\n UPDATE_PAGE_SIZE,\n} from './types';\nimport { toArray } from '../search/util';\nimport {\n ConfigTypes,\n SearchFacet,\n Listing,\n SearchConfig,\n} from '../models/Search';\nimport { Context } from '../models/Enums';\nimport {\n Facet,\n Facets,\n SearchState,\n Filter,\n Filters,\n FilterItem,\n} from '../models/SearchState';\n\nconst addConfigToState = (state: SearchState, action: any) => {\n const { context, facet, config } = action as {\n context: keyof typeof Context;\n facet: string;\n config: any;\n };\n // Adding or changing the config of a single facet, listing or minilist\n if (context && facet && config) {\n state[context][facet] = { ...searchFacet, ...config };\n } else if (config) {\n // Changing the entire search config\n state = { ...config, config: initialState.config };\n }\n return state;\n};\n\nconst generateSearchFacets = (context: Context, config: SearchConfig) => {\n const facets = {} as Facets;\n if (config) {\n const thisConfig: ConfigTypes = config[context] || {};\n if (Object.keys(thisConfig).length > 0) {\n Object.entries(thisConfig).map(\n ([facetName, facet]: [string, SearchFacet | Listing]) => {\n const newFacet = merge(searchFacet, facet);\n if (!('isDisabled' in facet) || facet.isDisabled !== true)\n facets[facetName] = newFacet;\n }\n );\n }\n }\n return facets;\n};\n\nconst generateFiltersState = (\n {\n facet,\n params,\n context,\n isCurrentFacet,\n }: {\n facet: string;\n params: { [k: string]: string };\n context: keyof typeof Context;\n isCurrentFacet: boolean;\n },\n state: SearchState\n) => {\n // Remove filters we know about from params\n const filterParams = {\n ...params,\n facet: undefined,\n orderBy: undefined,\n pageIndex: undefined,\n term: undefined,\n } as { [k: string]: string | undefined };\n\n // Get any existing filters and normalise the items[]\n // so we can start off with isSelected is false\n let filters: [string, Filter][] = Object.entries(\n (state[context][facet].filters || []) as Filters\n ).map(([key, filter]: [string, Filter]) => {\n if (isCurrentFacet || filter.isGrouped) {\n return [\n key,\n {\n ...filter,\n items: filter.items?.map(item => ({ ...item, isSelected: false })),\n } as Filter,\n ];\n }\n return [key, filter];\n });\n\n const addFilterItem = (\n filters: [string, Filter][],\n paramKey: string,\n paramValue: string\n ) =>\n // Iterate through all filters within the facet,\n // if the paramKey matches the filter key\n // get the existing items list, and see if that filter\n // already exists, if so set isSelected to true,\n // if not create a new filterItem, setting the key only\n // so we can match this key later on when we load the filters\n filters.map<[string, Filter]>(([key, filter]) => {\n if (paramKey !== key || (!isCurrentFacet && !filter.isGrouped)) {\n return [key, filter];\n } else {\n const items = (filter.items || []) as FilterItem[];\n const itemIndex = items.findIndex(item => item?.key === paramValue);\n if (items.length > 0 && itemIndex !== -1) {\n items[itemIndex].isSelected = true;\n } else {\n items.push({\n ...filterItem,\n key: paramValue,\n isSelected: true,\n });\n }\n\n return [\n key,\n {\n ...filter,\n items,\n } as Filter,\n ];\n }\n });\n\n // For each value found in filterParams\n // we are looking to split that value into multiple by any comma\n // and then either set isSelected for an existing filterItem\n // or push an item to the filters.{ key }.items[] array\n // giving it only the key (entry guid) that can be taken to filter\n // the search results during SSR without needing to fetch the filters first\n Object.entries(filterParams).map(([paramName = '', paramValue]) => {\n if (typeof paramValue === 'string')\n return paramValue\n .split(',')\n .map(pVal => (filters = addFilterItem(filters, paramName, pVal)));\n if (typeof paramValue === 'boolean')\n filters = addFilterItem(filters, paramName, paramValue);\n });\n\n return Object.fromEntries(filters) as Filters;\n};\n\nconst resetFacets = (state: SearchState, context: keyof typeof Context) =>\n Object.fromEntries(\n Object.entries(state[context] as Facets).map(([k, v]) => [k, resetFacet(v)])\n ) as Facets;\n\nconst resetFacet = (facet: Facet) => {\n facet.pagingInfo.pagesLoaded = [];\n facet.pagingInfo.pageIndex = 0;\n facet.queryDuration = 0;\n return facet;\n};\n\nexport default (config: SearchConfig) => {\n // Add facets from SearchConfig to initialState\n const initState: SearchState = {\n ...initialState,\n tabs: config.tabs as any,\n facets: generateSearchFacets(Context.facets, config),\n listings: generateSearchFacets(Context.listings, config),\n minilist: generateSearchFacets(Context.minilist, config),\n };\n\n return produce(\n (\n state: Draft<SearchState> = initState,\n action: {\n [key: string]: any;\n context: keyof typeof Context;\n facet: string;\n params: { [key: string]: string };\n }\n ) => {\n const context = state.context as keyof typeof Context;\n const current =\n context !== 'listings' ? state.currentFacet : state.currentListing;\n\n switch (action.type) {\n case APPLY_CONFIG: {\n state = addConfigToState(state, action);\n return state;\n }\n case CLEAR_FILTERS: {\n const currentFilters = state[context][current].filters as Filters;\n\n state[context][current].filters = Object.fromEntries(\n Object.entries(currentFilters).map(([filterKey, filter]) => {\n if (\n typeof action.filterKey === 'undefined' ||\n action.filterKey === filterKey\n ) {\n const filterItems = (filter.items || []) as FilterItem[];\n\n filter.items = filterItems.map(item => ({\n ...item,\n isSelected: false,\n })) as FilterItem[];\n }\n\n return [filterKey, filter];\n })\n );\n state[context][current].queryDuration = 0;\n state[context][current].pagingInfo.pagesLoaded = [];\n\n return;\n }\n case EXECUTE_SEARCH: {\n state[action.context][action.facet].entries = {\n ...(state[action.context][action.facet].entries || entries),\n isLoading: true,\n };\n return;\n }\n case EXECUTE_SEARCH_ERROR: {\n state[action.context][action.facet].entries = {\n ...entries,\n isError: true,\n error: action.error,\n };\n return;\n }\n case LOAD_FILTERS: {\n const { facetKey, filtersToLoad } = action;\n const filters = state[action.context][facetKey].filters as Filters;\n\n Object.entries(filters).map(([filterKey, filter]) => {\n if (filtersToLoad.find((f: string) => f === filterKey))\n return { ...filter, isLoading: true } as Filter;\n return filter;\n });\n\n state[action.context][facetKey].filters = Object.fromEntries(\n Object.entries(filters).map(([filterKey, filter]) => {\n if (filtersToLoad.find((f: string) => f === filterKey))\n return [filterKey, { ...filter, isLoading: true }];\n return [filterKey, filter];\n })\n );\n\n return;\n }\n case LOAD_FILTERS_ERROR:\n case LOAD_FILTERS_COMPLETE: {\n const { facetKey, filterKey, nextFilter } = action;\n const filter = state[action.context][facetKey].filters[\n filterKey\n ] as Filter;\n\n if (\n !(nextFilter.items && nextFilter.items.length > 0) &&\n (filter.items || []).length >= nextFilter.items.length\n ) {\n // Preserve items already in state\n state[action.context][facetKey].filters[filterKey] = {\n ...filter,\n isLoading: false,\n isError: nextFilter.isError,\n };\n return;\n }\n\n state[action.context][facetKey].filters[filterKey] = merge(\n filter,\n nextFilter,\n {\n arrayMerge: (source, inbound) => inbound,\n }\n );\n\n return;\n }\n case SET_ROUTE_FILTERS: {\n const { facet, params, context } = action;\n const { term = '', pageIndex, pageSize, orderBy } = params;\n\n const stateTerm = state.term;\n const tabId = state[context][facet].tabId || 0;\n\n // Reset the facet if the search term has changed, or if the any of\n // the filters have changed\n const resetAllFacets = stateTerm && term !== stateTerm;\n let resetCurrentFacet = false;\n\n // Add filter values in params to the matched filters in state for the current facet\n // causing unfetched filter items to be generated with isSelected: true\n // or existing filter items to be tagged with isSelected: true\n const nextFacets = Object.fromEntries(\n Object.entries(state[context] as Facets).map(\n ([facetName = '', stateFacet]) => {\n const isCurrentFacet = facetName === facet;\n const nextFilters = generateFiltersState(\n {\n facet: facetName,\n params,\n context,\n isCurrentFacet,\n },\n state\n );\n\n resetCurrentFacet =\n state.config.isLoaded === true &&\n !equals(nextFilters, stateFacet.filters);\n\n stateFacet = resetCurrentFacet\n ? resetFacet(stateFacet)\n : stateFacet;\n stateFacet.filters = nextFilters;\n stateFacet.queryParams.dynamicOrderBy = toArray(orderBy) || [];\n return [facetName, stateFacet];\n }\n )\n );\n\n state.context = context;\n state[context] = nextFacets;\n state[\n action.context === Context.facets\n ? 'currentFacet'\n : 'currentListing'\n ] = facet;\n state.term = term;\n state.tabs[tabId].currentFacet = facet;\n state[context][facet].pagingInfo = {\n ...(state[context][facet].pagingInfo || pagingInfo),\n pageIndex:\n Number(pageIndex) - 1 ||\n (state[context][facet].queryParams.loadMorePaging\n ? state[context][facet].pagingInfo?.pageIndex || 0\n : 0),\n pageSize:\n Number(pageSize) || state[context][facet].queryParams.pageSize,\n };\n state.config.isLoaded = true;\n state.config.ssr = typeof window === 'undefined';\n\n if (resetAllFacets) state[context] = resetFacets(state, context);\n\n return;\n }\n case SET_SEARCH_ENTRIES: {\n const thisContext = action.context || context;\n const currentFacet = state[thisContext][action.facet];\n state[thisContext][action.facet] = merge(\n currentFacet,\n action.nextFacet,\n {\n arrayMerge: (source, inbound) => inbound,\n }\n );\n return;\n }\n case SET_SEARCH_FILTERS: {\n // DO SEARCH then SET_SEARCH_FILTERS is for when we cannot use SET_ROUTE_FILTERS\n // for example in a minilist scenario where the route filters\n // are used for the primary page / listing navigation\n\n // Add filter values in params to the matched filters in state\n // causing unfetched filter items to be generated with isSelected: true\n const filters = generateFiltersState(\n { ...action, isCurrentFacet: true },\n state\n );\n\n const term = action?.params?.term;\n const useSearchTerm =\n state[action.context || Context.minilist][action.facet].queryParams\n .useSearchTerm || false;\n state[action.context || Context.minilist][action.facet].filters =\n filters;\n state[action.context || Context.minilist][\n action.facet\n ].queryParams.excludeIds = action.excludeIds;\n state.term = useSearchTerm ? term : state.term;\n state.config.ssr = typeof window === 'undefined';\n\n return;\n }\n case UPDATE_PAGE_INDEX: {\n const { pageIndex } = action;\n const internalPaging =\n state[context][current].queryParams.internalPaging || false;\n\n const currentPageIndex =\n state[context][current].pagingInfo.pageIndex || 0;\n\n state[context][current].pagingInfo.pageIndex = Number(pageIndex) || 0;\n state[context][current].pagingInfo.prevPageIndex = currentPageIndex;\n state[context][current].pagingInfo.isLoading = true;\n\n if (internalPaging) return;\n\n state[context][current].queryDuration = 0;\n return;\n }\n case UPDATE_PAGE_SIZE: {\n const { pageSize } = action;\n\n state[context][current].pagingInfo.pageSize = pageSize;\n state[context][current].pagingInfo.pageIndex = 0;\n state[context][current].pagingInfo.isLoading = true;\n state[context][current].queryDuration = 0;\n return;\n }\n case UPDATE_SEARCH_TERM: {\n state.term = action.term;\n state[context] = resetFacets(state, context);\n\n return;\n }\n case UPDATE_SELECTED_FILTERS: {\n const { filter, key, isUnknownItem } = action;\n\n const isSingleSelect =\n state[context][current].filters[filter].isSingleSelect || false;\n const isGrouped =\n state[context][current].filters[filter].isGrouped || false;\n\n const currentItems = state[context][current].filters[filter].items;\n if (isGrouped) state[context] = resetFacets(state, context);\n state[context][current] = resetFacet(state[context][current]);\n\n if (\n isUnknownItem &&\n currentItems?.findIndex(item => item?.key === key) === -1\n ) {\n currentItems?.push({\n key,\n isSelected: false,\n });\n }\n state[context][current].filters[filter].items = currentItems?.map(\n item => {\n if (item.key === key) {\n return { ...item, isSelected: !item.isSelected };\n }\n if (isSingleSelect) return { ...item, isSelected: false };\n return item;\n }\n );\n\n return;\n }\n case UPDATE_SORT_ORDER: {\n const { orderBy, facet } = action;\n state[context] = resetFacets(state, context);\n const currentFacet = facet || current;\n state[context][currentFacet].queryParams.dynamicOrderBy = orderBy\n ? toArray(orderBy) || []\n : [];\n\n return;\n }\n default:\n return;\n }\n },\n initState\n );\n};\n","export const Context = {\n facets: 'facets',\n listings: 'listings',\n minilist: 'minilist',\n};\nexport * from './models';\n\nexport { default as withSearch } from './containers/withSearch';\nexport { default as withListing } from './containers/withListing';\n\nexport { default as useFacets } from './hooks/useFacets.hook';\nexport { default as useListing } from './hooks/useListing.hook';\nexport { default as useMinilist } from './hooks/useMinilist.hook';\n\nexport * as actions from './redux/actions';\nexport {\n doSearch,\n setRouteFilters,\n searchSagas as sagas,\n triggerListingSsr,\n triggerMinilistSsr,\n triggerSearchSsr,\n} from './redux/sagas';\nexport { default as reducer } from './redux/reducers';\nexport * as schema from './redux/schema';\nexport * as selectors from './redux/selectors';\nexport * as types from './redux/types';\n\nexport * as expressions from './search/expressions';\nexport * as queries from './search/queries';\nexport { routeParams } from './search/util';\n"],"names":["toJS","WrappedComponent","wrappedComponentProps","KEY","VALUE","propsJS","Object","entries","reduce","newProps","wrappedComponentProp","propKey","propValue","React","createElement","withSearch","mappers","SearchComponent","Wrapper","props","displayName","name","mapStateToProps","state","currentFacet","getCurrentFacet","currentPageIndex","getPageIndex","currentTabIndex","getCurrentTab","facet","getFacet","facets","getTabFacets","facetsTotalCount","getFacetsTotalCount","facetTitles","getFacetTitles","featuredResults","getFeaturedResults","filters","getRenderableFilters","isLoading","getIsLoading","paging","getPaging","pageIsLoading","getPageIsLoading","results","getResults","resultsInfo","searchTerm","getSearchTerm","searchTotalCount","getSearchTotalCount","selectedFilters","getSelectedFilters","sortOrder","getQueryParameter","tabsAndFacets","getTabsAndFacets","totalCount","getTotalCount","mapDispatchToProps","clearFilters","filterKey","withMappers","updateCurrentFacet","updateCurrentTab","id","updatePageIndex","pageIndex","scrollYPos","updatePageSize","pageSize","updateSearchTerm","term","updateSelectedFilters","filter","key","isUnknownItem","updateSortOrder","orderBy","connector","connect","withListing","ListingComponent","getCurrent","getListing","selectListing","currentListing","listing","featured","navigate","mapStateToSearchUri","selectFacets","makeSelectFacetsProps","createSelector","_","Context","useFacets","dispatch","useDispatch","m","defaultMappers","selectListingProps","useMemo","dispatchProps","useSelector","makeSelectListingProps","listings","useListing","title","makeSelectMinilistProps","minilist","getFilters","pagingInfo","useMinilist","config","excludeIds","mapper","params","defaultLang","debug","selectMinilistProps","useEffect","triggerSearch","context","isError","items","pageCount","pagesLoaded","prevPageIndex","searchFacet","featuredEntries","queryParams","queryDuration","projectId","searchTab","undefined","label","filtering","isGrouped","contentTypeId","customWhere","fieldId","filterItem","type","path","isSelected","isLoaded","searchState","tabs","initialState","addConfigToState","action","generateSearchFacets","thisConfig","keys","length","map","facetName","newFacet","merge","isDisabled","generateFiltersState","isCurrentFacet","filterParams","_filter$items","item","addFilterItem","paramKey","paramValue","itemIndex","findIndex","push","paramName","split","pVal","fromEntries","resetFacets","k","v","resetFacet","initState","produce","current","APPLY_CONFIG","CLEAR_FILTERS","currentFilters","filterItems","EXECUTE_SEARCH","EXECUTE_SEARCH_ERROR","error","LOAD_FILTERS","facetKey","filtersToLoad","find","f","LOAD_FILTERS_ERROR","LOAD_FILTERS_COMPLETE","nextFilter","arrayMerge","source","inbound","SET_ROUTE_FILTERS","_state$context$facet$","stateTerm","tabId","resetAllFacets","resetCurrentFacet","nextFacets","stateFacet","nextFilters","equals","dynamicOrderBy","toArray","Number","loadMorePaging","ssr","window","SET_SEARCH_ENTRIES","thisContext","nextFacet","SET_SEARCH_FILTERS","_action$params","useSearchTerm","UPDATE_PAGE_INDEX","internalPaging","UPDATE_PAGE_SIZE","UPDATE_SEARCH_TERM","UPDATE_SELECTED_FILTERS","isSingleSelect","currentItems","UPDATE_SORT_ORDER"],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sources":["../node_modules/zengenti-search-package/src/app/zengenti-search-package/search/ToJs.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/containers/withSearch.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/containers/withListing.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/transformations/index.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useFacets.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useListing.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/hooks/useMinilist.hook.tsx","../node_modules/zengenti-search-package/src/app/zengenti-search-package/redux/schema.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/redux/reducers.ts","../node_modules/zengenti-search-package/src/app/zengenti-search-package/index.ts"],"sourcesContent":["/* eslint-disable import/default */\n/* eslint-disable react/display-name */\n/* eslint-disable @typescript-eslint/naming-convention */\nimport React from 'react';\n\nexport const toJS =\n <Props extends { [key: string]: any }>(\n WrappedComponent: React.ComponentType<Props>\n ): React.ComponentType<Props> =>\n (wrappedComponentProps: Props) => {\n const KEY = 0;\n const VALUE = 1;\n\n const propsJS = Object.entries(wrappedComponentProps).reduce<Props>(\n (newProps: any, wrappedComponentProp) => {\n const propKey = wrappedComponentProp[KEY];\n const propValue = wrappedComponentProp[VALUE];\n newProps[propKey] =\n propValue && typeof propValue === 'object' && 'toJS' in propValue\n ? propValue.toJS()\n : propValue;\n return newProps as Props;\n },\n {} as Props\n );\n\n return <WrappedComponent {...propsJS} />;\n };\n","// eslint-disable-next-line import/default\nimport React from 'react';\nimport { connect } from 'react-redux';\n\nimport { toJS } from '../search/ToJs';\nimport {\n clearFilters,\n updateCurrentFacet,\n updateCurrentTab,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport {\n getCurrentFacet,\n getCurrentTab,\n getFacet,\n getFacetTitles,\n getFacetsTotalCount,\n getFeaturedResults,\n getIsLoading,\n getPageIndex,\n getPageIsLoading,\n getPaging,\n getQueryParameter,\n getRenderableFilters,\n getResults,\n getSearchTerm,\n getSearchTotalCount,\n getSelectedFilters,\n getTabFacets,\n getTabsAndFacets,\n getTotalCount,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nimport { SearchProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\n\nconst withSearch =\n (mappers: Mappers) =>\n <Props extends Record<string, any>>(\n SearchComponent: React.ComponentType<Props>\n ) => {\n const Wrapper: React.FC<Props & SearchProps<any>> = props => {\n return <SearchComponent {...props} />;\n };\n\n Wrapper.displayName = `withSearch(${\n SearchComponent.displayName || SearchComponent.name\n })`;\n\n const mapStateToProps = (state: AppState) => {\n return {\n currentFacet: getCurrentFacet(state),\n currentPageIndex: getPageIndex(state),\n currentTabIndex: getCurrentTab(state),\n facet: getFacet(state),\n facets: getTabFacets(state),\n facetsTotalCount: getFacetsTotalCount(state),\n facetTitles: getFacetTitles(state),\n featuredResults: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n paging: getPaging(state),\n pageIsLoading: getPageIsLoading(state),\n results: getResults(state),\n resultsInfo: mappers?.resultsInfo && mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n searchTotalCount: getSearchTotalCount(state),\n selectedFilters: getSelectedFilters(state),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n tabsAndFacets: getTabsAndFacets(state),\n totalCount: getTotalCount(state),\n };\n };\n\n const mapDispatchToProps = {\n clearFilters: (filterKey?: string) =>\n withMappers(clearFilters(filterKey), mappers),\n updateCurrentFacet: (facet: string) =>\n withMappers(updateCurrentFacet(facet), mappers),\n updateCurrentTab: (id: number) =>\n withMappers(updateCurrentTab(id), mappers),\n updatePageIndex: (pageIndex: number, scrollToElement?: string) =>\n withMappers(updatePageIndex(pageIndex, scrollToElement), mappers),\n updatePageSize: (pageSize: number, scrollToElement?: string) =>\n withMappers(updatePageSize(pageSize, scrollToElement), mappers),\n updateSearchTerm: (term: string) =>\n withMappers(updateSearchTerm(term), mappers),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollToElement?: string\n ) =>\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollToElement),\n mappers\n ),\n updateSortOrder: (orderBy: string) =>\n withMappers(updateSortOrder(orderBy), mappers),\n };\n\n const connector = connect(mapStateToProps, mapDispatchToProps);\n\n return connector(toJS(Wrapper) as any);\n };\n\nexport default withSearch;\n","/* eslint-disable @typescript-eslint/naming-convention */\n// eslint-disable-next-line import/default\nimport React from 'react';\nimport { connect } from 'react-redux';\nimport { toJS } from '../search/ToJs';\nimport {\n clearFilters,\n updateCurrentFacet,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport { selectListing } from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nimport { AppState } from '../models/SearchState';\nimport { ListingProps } from '../models/SearchProps';\n\nconst withListing =\n (mappers: Mappers) =>\n <Props extends Record<string, any>>(ListingComponent: React.FC<Props>) => {\n const Wrapper: React.FC<Props & ListingProps<any>> = props => {\n return <ListingComponent {...props} />;\n };\n\n Wrapper.displayName = `withListing(${\n ListingComponent.displayName || ListingComponent.name\n })`;\n\n const {\n getCurrent,\n getFeaturedResults,\n getIsLoading,\n getListing,\n getPageIndex,\n getPaging,\n getQueryParameter,\n getRenderableFilters,\n getResults,\n getSearchTerm,\n getSelectedFilters,\n } = selectListing;\n\n const mapStateToProps = (state: AppState) => {\n return {\n currentListing: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n listing: getListing(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n paging: getPaging(state),\n results: getResults(state),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n selectedFilters: getSelectedFilters(state),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n };\n };\n\n const mapDispatchToProps = {\n clearFilters: (filterKey?: string) =>\n withMappers(clearFilters(filterKey), mappers),\n updateCurrentFacet: (facet: string) =>\n withMappers(updateCurrentFacet(facet), mappers),\n updatePageIndex: (pageIndex: number, scrollToElement?: string) =>\n withMappers(updatePageIndex(pageIndex, scrollToElement), mappers),\n updatePageSize: (pageSize: number, scrollToElement?: string) =>\n withMappers(updatePageSize(pageSize, scrollToElement), mappers),\n updateSearchTerm: (term: string) =>\n withMappers(updateSearchTerm(term), mappers),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollToElement?: string\n ) =>\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollToElement),\n mappers\n ),\n updateSortOrder: (orderBy: string) =>\n withMappers(updateSortOrder(orderBy), mappers),\n };\n\n return connect(mapStateToProps, mapDispatchToProps)(toJS(Wrapper) as any);\n };\n\nexport default withListing;\n","import { Mappers } from '../models/Search';\nimport mapStateToSearchUri from './state-to-searchuri';\n\nexport default {\n results: entries => entries,\n navigate: mapStateToSearchUri,\n} as Mappers;\n","import { useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\nimport {\n clearFilters,\n updateCurrentFacet,\n updateCurrentTab,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport defaultMappers from '../transformations';\nimport { Context } from '../models/Enums';\nimport { SearchProps, UseFacetsProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\nimport {\n getPaging,\n getResults,\n getSelectedFilters,\n selectFacets,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nconst {\n getCurrent,\n getCurrentTab,\n getFacet,\n getFacetsTotalCount,\n getFacetTitles,\n getFeaturedResults,\n getIsLoading,\n getPageIndex,\n getPageIsLoading,\n getQueryParameter,\n getRenderableFilters,\n getSearchTerm,\n getSearchTotalCount,\n getTabFacets,\n getTabsAndFacets,\n getTotalCount,\n} = selectFacets;\n\nconst makeSelectFacetsProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, mappers: Mappers) => mappers,\n (state: AppState, mappers: Mappers) => ({\n currentFacet: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n currentTabIndex: getCurrentTab(state),\n facet: getFacet(state),\n facetTitles: getFacetTitles(state),\n facets: getTabFacets(state),\n facetsTotalCount: getFacetsTotalCount(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n pageIsLoading: getPageIsLoading(state),\n paging: getPaging(state, '', Context.facets, 'js'),\n results: getResults(state, '', Context.facets, 'js'),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n searchTotalCount: getSearchTotalCount(state),\n selectedFilters: getSelectedFilters(state, '', Context.facets, 'js'),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n tabsAndFacets: getTabsAndFacets(state),\n totalCount: getTotalCount(state),\n })\n );\n\nconst useFacets = <SearchResults extends Record<string, any>>(\n { mappers }: UseFacetsProps = {\n id: '',\n }\n) => {\n const dispatch = useDispatch();\n\n const m = mappers || defaultMappers;\n\n const selectListingProps = useMemo(makeSelectFacetsProps, [m]);\n\n const dispatchProps = {\n clearFilters: (filterKey?: string) =>\n dispatch(withMappers(clearFilters(filterKey), m)),\n updateCurrentFacet: (facet: string) =>\n dispatch(withMappers(updateCurrentFacet(facet), m)),\n updateCurrentTab: (id: number) => withMappers(updateCurrentTab(id), m),\n updatePageIndex: (pageIndex: number, scrollToElement?: string) =>\n dispatch(withMappers(updatePageIndex(pageIndex, scrollToElement), m)),\n updatePageSize: (pageSize: number, scrollToElement?: string) =>\n dispatch(withMappers(updatePageSize(pageSize, scrollToElement), m)),\n updateSearchTerm: (term: string) =>\n dispatch(withMappers(updateSearchTerm(term), m)),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollToElement?: string\n ) =>\n dispatch(\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollToElement),\n m\n )\n ),\n updateSortOrder: (orderBy: string) =>\n dispatch(withMappers(updateSortOrder(orderBy), m)),\n };\n\n const {\n currentFacet,\n currentPageIndex,\n currentTabIndex,\n facet,\n facets,\n facetsTotalCount,\n facetTitles,\n featured,\n filters,\n isLoading,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n searchTotalCount,\n selectedFilters,\n sortOrder,\n tabsAndFacets,\n totalCount,\n } = useSelector((state: AppState) => selectListingProps(state, m));\n\n return {\n currentFacet,\n currentPageIndex,\n currentTabIndex,\n facet,\n facets,\n facetsTotalCount,\n facetTitles,\n featured,\n filters,\n isLoading,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n searchTotalCount,\n selectedFilters,\n sortOrder,\n tabsAndFacets,\n totalCount,\n ...dispatchProps,\n } as SearchProps<SearchResults>;\n};\n\nexport default useFacets;\n","import { useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\nimport {\n clearFilters,\n updateCurrentFacet,\n updatePageIndex,\n updatePageSize,\n updateSearchTerm,\n updateSelectedFilters,\n updateSortOrder,\n withMappers,\n} from '../redux/actions';\nimport defaultMappers from '../transformations';\nimport { Context } from '../models/Enums';\nimport { ListingProps, UseListingProps } from '../models/SearchProps';\nimport { AppState } from '../models/SearchState';\nimport {\n getPaging,\n getResults,\n getSelectedFilters,\n selectListing,\n} from '../redux/selectors';\nimport { Mappers } from '../models/Search';\nconst {\n getCurrent,\n getFeaturedResults,\n getIsLoading,\n getListing,\n getPageIndex,\n getPageIsLoading,\n getQueryParameter,\n getRenderableFilters,\n getSearchTerm,\n} = selectListing;\n\nconst makeSelectListingProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, mappers: Mappers) => mappers,\n (state: AppState, mappers: Mappers) => ({\n currentListing: getCurrent(state),\n currentPageIndex: getPageIndex(state),\n listing: getListing(state),\n featured: getFeaturedResults(state),\n filters: getRenderableFilters(state),\n isLoading: getIsLoading(state),\n pageIsLoading: getPageIsLoading(state),\n paging: getPaging(state, '', Context.listings, 'js'),\n results: getResults(state, '', Context.listings, 'js'),\n resultsInfo:\n mappers &&\n typeof mappers.resultsInfo === 'function' &&\n mappers.resultsInfo(state),\n searchTerm: getSearchTerm(state),\n selectedFilters: getSelectedFilters(state, '', Context.listings, 'js'),\n sortOrder: getQueryParameter({ state }, 'dynamicOrderBy', []),\n })\n );\n\nconst useListing = <SearchResults extends Record<string, any>>(\n { mappers }: UseListingProps = {\n id: '',\n }\n) => {\n const dispatch = useDispatch();\n\n const m = mappers || defaultMappers;\n\n const selectListingProps = useMemo(makeSelectListingProps, [m]);\n\n const dispatchProps = {\n clearFilters: (filterKey?: string) =>\n dispatch(withMappers(clearFilters(filterKey), m)),\n updateCurrentFacet: (facet: string) =>\n dispatch(withMappers(updateCurrentFacet(facet), m)),\n updatePageIndex: (pageIndex: number, scrollToElement?: string) =>\n dispatch(withMappers(updatePageIndex(pageIndex, scrollToElement), m)),\n updatePageSize: (pageSize: number, scrollToElement?: string) =>\n dispatch(withMappers(updatePageSize(pageSize, scrollToElement), m)),\n updateSearchTerm: (term: string) =>\n dispatch(withMappers(updateSearchTerm(term), m)),\n updateSelectedFilters: (\n filter: string,\n key: string,\n isUnknownItem = false,\n scrollToElement?: string\n ) =>\n dispatch(\n withMappers(\n updateSelectedFilters(filter, key, isUnknownItem, scrollToElement),\n m\n )\n ),\n updateSortOrder: (orderBy: string) =>\n dispatch(withMappers(updateSortOrder(orderBy), m)),\n };\n\n const {\n currentListing,\n currentPageIndex,\n featured,\n filters,\n isLoading,\n listing,\n paging,\n pageIsLoading,\n results,\n resultsInfo,\n searchTerm,\n selectedFilters,\n sortOrder,\n } = useSelector((state: AppState) => selectListingProps(state, m));\n\n return {\n currentListing,\n currentPageIndex,\n featured,\n filters,\n isLoading,\n listing,\n pageIsLoading,\n paging,\n results,\n resultsInfo,\n searchTerm,\n selectedFilters,\n sortOrder,\n title: listing.title,\n ...dispatchProps,\n } as ListingProps<SearchResults>;\n};\n\nexport default useListing;\n","import { useEffect, useMemo } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { createSelector } from 'reselect';\n\nimport { Context } from '../models/Enums';\nimport { MinilistProps, UseMinilistProps } from '../models/SearchProps';\nimport { AppState, Facet, Filters } from '../models/SearchState';\n\nimport { triggerSearch } from '../redux/actions';\nimport {\n getResults,\n getIsLoading,\n getFacet,\n getPaging,\n getSearchTerm,\n getFilters,\n} from '../redux/selectors';\n\nconst makeSelectMinilistProps = () =>\n createSelector(\n (state: AppState) => state,\n (_: any, id: string) => id,\n (state: AppState, id: string) =>\n id\n ? {\n facet: getFacet(state, id, Context.minilist, 'js'),\n filters: getFilters(state, id, Context.minilist, 'js'),\n isLoading: getIsLoading(state, Context.minilist, id),\n pagingInfo: getPaging(state, id, Context.minilist, 'js'),\n results: getResults(state, id, Context.minilist, 'js'),\n searchTerm: getSearchTerm(state),\n }\n : null\n );\n\nconst useMinilist = <SearchResults extends Record<string, any>>(\n {\n id,\n config,\n excludeIds,\n mapper,\n mappers,\n params,\n defaultLang,\n debug,\n }: UseMinilistProps = { id: '' }\n) => {\n const dispatch = useDispatch();\n\n const selectMinilistProps = useMemo(makeSelectMinilistProps, [id]);\n\n const { facet, filters, isLoading, pagingInfo, results, searchTerm } =\n useSelector((state: AppState) => selectMinilistProps(state, id)) || {\n facet: {} as Facet,\n filters: {} as Filters,\n isLoading: false,\n pagingInfo: {} as Facet['pagingInfo'],\n results: [] as SearchResults[],\n searchTerm: '',\n };\n // useSelector((state: AppState) => ({\n // facet: getFacet(state, id, Context.minilist).toJS(),\n // filters: getFilters(state, id, Context.minilist).toJS(),\n // isLoading: getIsLoading(state, Context.minilist, id),\n // pagingInfo: getPaging(state, id, Context.minilist).toJS(),\n // results: getResults(state, id, Context.minilist).toJS(),\n // searchTerm: getSearchTerm(state),\n // }));\n\n useEffect(() => {\n if (id && (mapper || mappers?.results)) {\n dispatch(\n triggerSearch({\n config,\n context: Context.minilist,\n defaultLang,\n facet: id,\n mapper,\n mappers,\n params,\n excludeIds,\n debug,\n })\n );\n }\n }, [dispatch, excludeIds, id, defaultLang, params]);\n\n return {\n filters,\n isLoading,\n paging: pagingInfo,\n results,\n searchTerm,\n title: facet.title,\n } as MinilistProps<SearchResults>;\n};\n\nexport default useMinilist;\n","import { CustomWhereClause } from '../models/Search';\nimport { Filter, FilterItem, SearchState } from '../models/SearchState';\n\nexport const entries = {\n isLoading: false,\n isError: false,\n items: [],\n};\n\nexport const pagingInfo = {\n isLoading: false,\n pageCount: 0,\n pageIndex: 0,\n pageSize: 0,\n pagesLoaded: [],\n prevPageIndex: 0,\n totalCount: 0,\n};\n\nexport const searchFacet = {\n title: null,\n featuredEntries: entries,\n featuredResults: [],\n entries,\n results: [],\n queryParams: {},\n filters: {},\n queryDuration: 0,\n pagingInfo,\n projectId: '',\n};\n\nexport const searchTab = {\n currentFacet: undefined,\n facets: {},\n id: 0,\n label: undefined,\n totalCount: '',\n};\n\nexport const filtering = {\n isLoading: false,\n isError: false,\n isGrouped: false,\n title: undefined,\n contentTypeId: undefined,\n customWhere: [],\n fieldId: undefined,\n items: [],\n} as Omit<Filter, 'customWhere' | 'items'> & {\n customWhere?: CustomWhereClause[];\n items?: FilterItem[];\n};\n\nexport const filterItem = {\n key: '',\n type: undefined,\n title: undefined,\n path: undefined,\n isSelected: false,\n} as FilterItem;\n\nconst config = {\n isLoaded: false,\n isError: false,\n};\n\nconst searchState: SearchState = {\n context: 'facets',\n currentFacet: '',\n currentListing: '',\n facets: {},\n listings: {},\n minilist: {},\n term: '',\n tabs: [],\n config,\n};\n\nexport const initialState = searchState;\n","import { Draft, produce } from 'immer';\nimport equals from 'deep-equal';\nimport merge from 'deepmerge';\n\nimport {\n entries,\n filterItem,\n pagingInfo,\n searchFacet,\n initialState,\n} from './schema';\nimport {\n APPLY_CONFIG,\n CLEAR_FILTERS,\n EXECUTE_SEARCH,\n EXECUTE_SEARCH_ERROR,\n LOAD_FILTERS,\n LOAD_FILTERS_COMPLETE,\n LOAD_FILTERS_ERROR,\n SET_ROUTE_FILTERS,\n SET_SEARCH_FILTERS,\n SET_SEARCH_ENTRIES,\n UPDATE_SEARCH_TERM,\n UPDATE_SELECTED_FILTERS,\n UPDATE_SORT_ORDER,\n UPDATE_PAGE_INDEX,\n UPDATE_PAGE_SIZE,\n} from './types';\nimport { toArray } from '../search/util';\nimport {\n ConfigTypes,\n SearchFacet,\n Listing,\n SearchConfig,\n} from '../models/Search';\nimport { Context } from '../models/Enums';\nimport {\n Facet,\n Facets,\n SearchState,\n Filter,\n Filters,\n FilterItem,\n} from '../models/SearchState';\n\nconst addConfigToState = (state: SearchState, action: any) => {\n const { context, facet, config } = action as {\n context: keyof typeof Context;\n facet: string;\n config: any;\n };\n // Adding or changing the config of a single facet, listing or minilist\n if (context && facet && config) {\n state[context][facet] = { ...searchFacet, ...config };\n } else if (config) {\n // Changing the entire search config\n state = { ...config, config: initialState.config };\n }\n return state;\n};\n\nconst generateSearchFacets = (context: Context, config: SearchConfig) => {\n const facets = {} as Facets;\n if (config) {\n const thisConfig: ConfigTypes = config[context] || {};\n if (Object.keys(thisConfig).length > 0) {\n Object.entries(thisConfig).map(\n ([facetName, facet]: [string, SearchFacet | Listing]) => {\n const newFacet = merge(searchFacet, facet);\n if (!('isDisabled' in facet) || facet.isDisabled !== true)\n facets[facetName] = newFacet;\n }\n );\n }\n }\n return facets;\n};\n\nconst generateFiltersState = (\n {\n facet,\n params,\n context,\n isCurrentFacet,\n }: {\n facet: string;\n params: { [k: string]: string };\n context: keyof typeof Context;\n isCurrentFacet: boolean;\n },\n state: SearchState\n) => {\n // Remove filters we know about from params\n const filterParams = {\n ...params,\n facet: undefined,\n orderBy: undefined,\n pageIndex: undefined,\n term: undefined,\n } as { [k: string]: string | undefined };\n\n // Get any existing filters and normalise the items[]\n // so we can start off with isSelected is false\n let filters: [string, Filter][] = Object.entries(\n (state[context][facet].filters || []) as Filters\n ).map(([key, filter]: [string, Filter]) => {\n if (isCurrentFacet || filter.isGrouped) {\n return [\n key,\n {\n ...filter,\n items: filter.items?.map(item => ({ ...item, isSelected: false })),\n } as Filter,\n ];\n }\n return [key, filter];\n });\n\n const addFilterItem = (\n filters: [string, Filter][],\n paramKey: string,\n paramValue: string\n ) =>\n // Iterate through all filters within the facet,\n // if the paramKey matches the filter key\n // get the existing items list, and see if that filter\n // already exists, if so set isSelected to true,\n // if not create a new filterItem, setting the key only\n // so we can match this key later on when we load the filters\n filters.map<[string, Filter]>(([key, filter]) => {\n if (paramKey !== key || (!isCurrentFacet && !filter.isGrouped)) {\n return [key, filter];\n } else {\n const items = (filter.items || []) as FilterItem[];\n const itemIndex = items.findIndex(item => item?.key === paramValue);\n if (items.length > 0 && itemIndex !== -1) {\n items[itemIndex].isSelected = true;\n } else {\n items.push({\n ...filterItem,\n key: paramValue,\n isSelected: true,\n });\n }\n\n return [\n key,\n {\n ...filter,\n items,\n } as Filter,\n ];\n }\n });\n\n // For each value found in filterParams\n // we are looking to split that value into multiple by any comma\n // and then either set isSelected for an existing filterItem\n // or push an item to the filters.{ key }.items[] array\n // giving it only the key (entry guid) that can be taken to filter\n // the search results during SSR without needing to fetch the filters first\n Object.entries(filterParams).map(([paramName = '', paramValue]) => {\n if (typeof paramValue === 'string')\n return paramValue\n .split(',')\n .map(pVal => (filters = addFilterItem(filters, paramName, pVal)));\n if (typeof paramValue === 'boolean')\n filters = addFilterItem(filters, paramName, paramValue);\n });\n\n return Object.fromEntries(filters) as Filters;\n};\n\nconst resetFacets = (state: SearchState, context: keyof typeof Context) =>\n Object.fromEntries(\n Object.entries(state[context] as Facets).map(([k, v]) => [k, resetFacet(v)])\n ) as Facets;\n\nconst resetFacet = (facet: Facet) => {\n facet.pagingInfo.pagesLoaded = [];\n facet.pagingInfo.pageIndex = 0;\n facet.queryDuration = 0;\n return facet;\n};\n\nexport default (config: SearchConfig) => {\n // Add facets from SearchConfig to initialState\n const initState: SearchState = {\n ...initialState,\n tabs: config.tabs as any,\n facets: generateSearchFacets(Context.facets, config),\n listings: generateSearchFacets(Context.listings, config),\n minilist: generateSearchFacets(Context.minilist, config),\n };\n\n return produce(\n (\n state: Draft<SearchState> = initState,\n action: {\n [key: string]: any;\n context: keyof typeof Context;\n facet: string;\n params: { [key: string]: string };\n }\n ) => {\n const context = state.context as keyof typeof Context;\n const current =\n context !== 'listings' ? state.currentFacet : state.currentListing;\n\n switch (action.type) {\n case APPLY_CONFIG: {\n state = addConfigToState(state, action);\n return state;\n }\n case CLEAR_FILTERS: {\n const currentFilters = state[context][current].filters as Filters;\n\n state[context][current].filters = Object.fromEntries(\n Object.entries(currentFilters).map(([filterKey, filter]) => {\n if (\n typeof action.filterKey === 'undefined' ||\n action.filterKey === filterKey\n ) {\n const filterItems = (filter.items || []) as FilterItem[];\n\n filter.items = filterItems.map(item => ({\n ...item,\n isSelected: false,\n })) as FilterItem[];\n }\n\n return [filterKey, filter];\n })\n );\n state[context][current].queryDuration = 0;\n state[context][current].pagingInfo.pagesLoaded = [];\n\n return;\n }\n case EXECUTE_SEARCH: {\n state[action.context][action.facet].entries = {\n ...(state[action.context][action.facet].entries || entries),\n isLoading: true,\n };\n return;\n }\n case EXECUTE_SEARCH_ERROR: {\n state[action.context][action.facet].entries = {\n ...entries,\n isError: true,\n error: action.error,\n };\n return;\n }\n case LOAD_FILTERS: {\n const { facetKey, filtersToLoad } = action;\n const filters = state[action.context][facetKey].filters as Filters;\n\n Object.entries(filters).map(([filterKey, filter]) => {\n if (filtersToLoad.find((f: string) => f === filterKey))\n return { ...filter, isLoading: true } as Filter;\n return filter;\n });\n\n state[action.context][facetKey].filters = Object.fromEntries(\n Object.entries(filters).map(([filterKey, filter]) => {\n if (filtersToLoad.find((f: string) => f === filterKey))\n return [filterKey, { ...filter, isLoading: true }];\n return [filterKey, filter];\n })\n );\n\n return;\n }\n case LOAD_FILTERS_ERROR:\n case LOAD_FILTERS_COMPLETE: {\n const { facetKey, filterKey, nextFilter } = action;\n const filter = state[action.context][facetKey].filters[\n filterKey\n ] as Filter;\n\n if (\n !(nextFilter.items && nextFilter.items.length > 0) &&\n (filter.items || []).length >= nextFilter.items.length\n ) {\n // Preserve items already in state\n state[action.context][facetKey].filters[filterKey] = {\n ...filter,\n isLoading: false,\n isError: nextFilter.isError,\n };\n return;\n }\n\n state[action.context][facetKey].filters[filterKey] = merge(\n filter,\n nextFilter,\n {\n arrayMerge: (source, inbound) => inbound,\n }\n );\n\n return;\n }\n case SET_ROUTE_FILTERS: {\n const { facet, params, context } = action;\n const { term = '', pageIndex, pageSize, orderBy } = params;\n\n const stateTerm = state.term;\n const tabId = state[context][facet].tabId || 0;\n\n // Reset the facet if the search term has changed, or if the any of\n // the filters have changed\n const resetAllFacets = stateTerm && term !== stateTerm;\n let resetCurrentFacet = false;\n\n // Add filter values in params to the matched filters in state for the current facet\n // causing unfetched filter items to be generated with isSelected: true\n // or existing filter items to be tagged with isSelected: true\n const nextFacets = Object.fromEntries(\n Object.entries(state[context] as Facets).map(\n ([facetName = '', stateFacet]) => {\n const isCurrentFacet = facetName === facet;\n const nextFilters = generateFiltersState(\n {\n facet: facetName,\n params,\n context,\n isCurrentFacet,\n },\n state\n );\n\n resetCurrentFacet =\n state.config.isLoaded === true &&\n !equals(nextFilters, stateFacet.filters);\n\n stateFacet = resetCurrentFacet\n ? resetFacet(stateFacet)\n : stateFacet;\n stateFacet.filters = nextFilters;\n stateFacet.queryParams.dynamicOrderBy = toArray(orderBy) || [];\n return [facetName, stateFacet];\n }\n )\n );\n\n state.context = context;\n state[context] = nextFacets;\n state[\n action.context === Context.facets\n ? 'currentFacet'\n : 'currentListing'\n ] = facet;\n state.term = term;\n state.tabs[tabId].currentFacet = facet;\n state[context][facet].pagingInfo = {\n ...(state[context][facet].pagingInfo || pagingInfo),\n pageIndex:\n Number(pageIndex) - 1 ||\n (state[context][facet].queryParams.loadMorePaging\n ? state[context][facet].pagingInfo?.pageIndex || 0\n : 0),\n pageSize:\n Number(pageSize) || state[context][facet].queryParams.pageSize,\n };\n state.config.isLoaded = true;\n state.config.ssr = typeof window === 'undefined';\n\n if (resetAllFacets) state[context] = resetFacets(state, context);\n\n return;\n }\n case SET_SEARCH_ENTRIES: {\n const thisContext = action.context || context;\n const currentFacet = state[thisContext][action.facet];\n state[thisContext][action.facet] = merge(\n currentFacet,\n action.nextFacet,\n {\n arrayMerge: (source, inbound) => inbound,\n }\n );\n return;\n }\n case SET_SEARCH_FILTERS: {\n // DO SEARCH then SET_SEARCH_FILTERS is for when we cannot use SET_ROUTE_FILTERS\n // for example in a minilist scenario where the route filters\n // are used for the primary page / listing navigation\n\n // Add filter values in params to the matched filters in state\n // causing unfetched filter items to be generated with isSelected: true\n const filters = generateFiltersState(\n { ...action, isCurrentFacet: true },\n state\n );\n\n const term = action?.params?.term;\n const useSearchTerm =\n state[action.context || Context.minilist][action.facet].queryParams\n .useSearchTerm || false;\n state[action.context || Context.minilist][action.facet].filters =\n filters;\n state[action.context || Context.minilist][\n action.facet\n ].queryParams.excludeIds = action.excludeIds;\n state.term = useSearchTerm ? term : state.term;\n state.config.ssr = typeof window === 'undefined';\n\n return;\n }\n case UPDATE_PAGE_INDEX: {\n const { pageIndex } = action;\n const internalPaging =\n state[context][current].queryParams.internalPaging || false;\n\n const currentPageIndex =\n state[context][current].pagingInfo.pageIndex || 0;\n\n state[context][current].pagingInfo.pageIndex = Number(pageIndex) || 0;\n state[context][current].pagingInfo.prevPageIndex = currentPageIndex;\n state[context][current].pagingInfo.isLoading = true;\n\n if (internalPaging) return;\n\n state[context][current].queryDuration = 0;\n return;\n }\n case UPDATE_PAGE_SIZE: {\n const { pageSize } = action;\n\n state[context][current].pagingInfo.pageSize = pageSize;\n state[context][current].pagingInfo.pageIndex = 0;\n state[context][current].pagingInfo.isLoading = true;\n state[context][current].queryDuration = 0;\n return;\n }\n case UPDATE_SEARCH_TERM: {\n state.term = action.term;\n state[context] = resetFacets(state, context);\n\n return;\n }\n case UPDATE_SELECTED_FILTERS: {\n const { filter, key, isUnknownItem } = action;\n\n const isSingleSelect =\n state[context][current].filters[filter].isSingleSelect || false;\n const isGrouped =\n state[context][current].filters[filter].isGrouped || false;\n\n const currentItems = state[context][current].filters[filter].items;\n if (isGrouped) state[context] = resetFacets(state, context);\n state[context][current] = resetFacet(state[context][current]);\n\n if (\n isUnknownItem &&\n currentItems?.findIndex(item => item?.key === key) === -1\n ) {\n currentItems?.push({\n key,\n isSelected: false,\n });\n }\n state[context][current].filters[filter].items = currentItems?.map(\n item => {\n if (item.key === key) {\n return { ...item, isSelected: !item.isSelected };\n }\n if (isSingleSelect) return { ...item, isSelected: false };\n return item;\n }\n );\n\n return;\n }\n case UPDATE_SORT_ORDER: {\n const { orderBy, facet } = action;\n state[context] = resetFacets(state, context);\n const currentFacet = facet || current;\n state[context][currentFacet].queryParams.dynamicOrderBy = orderBy\n ? toArray(orderBy) || []\n : [];\n\n return;\n }\n default:\n return;\n }\n },\n initState\n );\n};\n","export const Context = {\n facets: 'facets',\n listings: 'listings',\n minilist: 'minilist',\n};\nexport * from './models';\n\nexport { default as withSearch } from './containers/withSearch';\nexport { default as withListing } from './containers/withListing';\n\nexport { default as useFacets } from './hooks/useFacets.hook';\nexport { default as useListing } from './hooks/useListing.hook';\nexport { default as useMinilist } from './hooks/useMinilist.hook';\n\nexport * as actions from './redux/actions';\nexport {\n doSearch,\n setRouteFilters,\n searchSagas as sagas,\n triggerListingSsr,\n triggerMinilistSsr,\n triggerSearchSsr,\n} from './redux/sagas';\nexport { default as reducer } from './redux/reducers';\nexport * as schema from './redux/schema';\nexport * as selectors from './redux/selectors';\nexport * as types from './redux/types';\n\nexport * as expressions from './search/expressions';\nexport * as queries from './search/queries';\nexport { routeParams } from './search/util';\n"],"names":["toJS","WrappedComponent","wrappedComponentProps","KEY","VALUE","propsJS","Object","entries","reduce","newProps","wrappedComponentProp","propKey","propValue","React","createElement","withSearch","mappers","SearchComponent","Wrapper","props","displayName","name","mapStateToProps","state","currentFacet","getCurrentFacet","currentPageIndex","getPageIndex","currentTabIndex","getCurrentTab","facet","getFacet","facets","getTabFacets","facetsTotalCount","getFacetsTotalCount","facetTitles","getFacetTitles","featuredResults","getFeaturedResults","filters","getRenderableFilters","isLoading","getIsLoading","paging","getPaging","pageIsLoading","getPageIsLoading","results","getResults","resultsInfo","searchTerm","getSearchTerm","searchTotalCount","getSearchTotalCount","selectedFilters","getSelectedFilters","sortOrder","getQueryParameter","tabsAndFacets","getTabsAndFacets","totalCount","getTotalCount","mapDispatchToProps","clearFilters","filterKey","withMappers","updateCurrentFacet","updateCurrentTab","id","updatePageIndex","pageIndex","scrollToElement","updatePageSize","pageSize","updateSearchTerm","term","updateSelectedFilters","filter","key","isUnknownItem","updateSortOrder","orderBy","connector","connect","withListing","ListingComponent","getCurrent","getListing","selectListing","currentListing","listing","featured","navigate","mapStateToSearchUri","selectFacets","makeSelectFacetsProps","createSelector","_","Context","useFacets","dispatch","useDispatch","m","defaultMappers","selectListingProps","useMemo","dispatchProps","useSelector","makeSelectListingProps","listings","useListing","title","makeSelectMinilistProps","minilist","getFilters","pagingInfo","useMinilist","config","excludeIds","mapper","params","defaultLang","debug","selectMinilistProps","useEffect","triggerSearch","context","isError","items","pageCount","pagesLoaded","prevPageIndex","searchFacet","featuredEntries","queryParams","queryDuration","projectId","searchTab","undefined","label","filtering","isGrouped","contentTypeId","customWhere","fieldId","filterItem","type","path","isSelected","isLoaded","searchState","tabs","initialState","addConfigToState","action","generateSearchFacets","thisConfig","keys","length","map","facetName","newFacet","merge","isDisabled","generateFiltersState","isCurrentFacet","filterParams","_filter$items","item","addFilterItem","paramKey","paramValue","itemIndex","findIndex","push","paramName","split","pVal","fromEntries","resetFacets","k","v","resetFacet","initState","produce","current","APPLY_CONFIG","CLEAR_FILTERS","currentFilters","filterItems","EXECUTE_SEARCH","EXECUTE_SEARCH_ERROR","error","LOAD_FILTERS","facetKey","filtersToLoad","find","f","LOAD_FILTERS_ERROR","LOAD_FILTERS_COMPLETE","nextFilter","arrayMerge","source","inbound","SET_ROUTE_FILTERS","_state$context$facet$","stateTerm","tabId","resetAllFacets","resetCurrentFacet","nextFacets","stateFacet","nextFilters","equals","dynamicOrderBy","toArray","Number","loadMorePaging","ssr","window","SET_SEARCH_ENTRIES","thisContext","nextFacet","SET_SEARCH_FILTERS","_action$params","useSearchTerm","UPDATE_PAGE_INDEX","internalPaging","UPDATE_PAGE_SIZE","UPDATE_SEARCH_TERM","UPDATE_SELECTED_FILTERS","isSingleSelect","currentItems","UPDATE_SORT_ORDER"],"mappings":"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"}
@@ -100,7 +100,7 @@ export declare type ApplySearchFilterAction = Action & {
100
100
  filter: string;
101
101
  key: string;
102
102
  isUnknownItem: boolean;
103
- scrollYPos?: number;
103
+ scrollToElement?: string;
104
104
  };
105
105
  export declare type ApplySearchFilterActionCreator = (filter: string, key: string) => ApplySearchFilterAction;
106
106
  export declare type ClearFiltersAction = Action;
@@ -124,12 +124,12 @@ export declare type UpdateSortOrderAction = Action & {
124
124
  export declare type UpdateSortOrderActionCreator = (orderBy: string, facet: string) => UpdateSortOrderAction;
125
125
  export declare type UpdatePageIndexAction = Action & {
126
126
  pageIndex: number;
127
- scrollYPos?: number;
127
+ scrollToElement?: string;
128
128
  };
129
129
  export declare type UpdatePageIndexActionCreator = (pageIndex: number) => UpdatePageIndexAction;
130
130
  export declare type UpdatePageSizeAction = Action & {
131
131
  pageSize: number;
132
- scrollYPos?: number;
132
+ scrollToElement?: string;
133
133
  };
134
134
  export declare type UpdatePageSizeActionCreator = (pageSize: number) => UpdatePageSizeAction;
135
135
  export {};
@@ -11,15 +11,15 @@ export declare const navigate: (path: string, state?: any) => {
11
11
  state: any;
12
12
  };
13
13
  export declare const clearFilters: ClearFiltersActionCreator;
14
- export declare const updatePageIndex: (pageIndex: number, scrollYPos?: number | undefined) => {
14
+ export declare const updatePageIndex: (pageIndex: number, scrollToElement?: string | undefined) => {
15
15
  type: string;
16
16
  pageIndex: number;
17
- scrollYPos: number | undefined;
17
+ scrollToElement: string | undefined;
18
18
  };
19
- export declare const updatePageSize: (pageSize: number, scrollYPos?: number | undefined) => {
19
+ export declare const updatePageSize: (pageSize: number, scrollToElement?: string | undefined) => {
20
20
  type: string;
21
21
  pageSize: number;
22
- scrollYPos: number | undefined;
22
+ scrollToElement: string | undefined;
23
23
  };
24
24
  export declare const updateCurrentFacet: (facet: string) => {
25
25
  type: string;
@@ -33,12 +33,12 @@ export declare const updateSearchTerm: (term: string) => {
33
33
  type: string;
34
34
  term: string;
35
35
  };
36
- export declare const updateSelectedFilters: (filter: string, key: string, isUnknownItem?: boolean, scrollYPos?: number | undefined) => {
36
+ export declare const updateSelectedFilters: (filter: string, key: string, isUnknownItem?: boolean, scrollToElement?: string | undefined) => {
37
37
  type: string;
38
38
  filter: string;
39
39
  key: string;
40
40
  isUnknownItem: boolean;
41
- scrollYPos: number | undefined;
41
+ scrollToElement: string | undefined;
42
42
  };
43
43
  export declare const updateSortOrder: (orderBy: string, facet?: string | undefined) => {
44
44
  type: string;
@@ -23,4 +23,4 @@ export declare const runSearch: (action: EnsureSearchAction | SetSearchEntriesAc
23
23
  */
24
24
  export declare const filterParamsChanged: (action: EnsureSearchAction | SetSearchEntriesAction, state?: AppState | undefined) => boolean;
25
25
  export declare const debugExecuteSearch: (action: EnsureSearchAction | SetSearchEntriesAction, state: AppState) => void;
26
- export declare const scrollTop: (scrollYPos: number) => void;
26
+ export declare const scrollTo: (scrollToElement: string) => void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zengenti/contensis-react-base",
3
- "version": "3.0.2-beta.13",
3
+ "version": "3.0.2-beta.14",
4
4
  "repository": "https://github.com/zengenti/contensis-react-base",
5
5
  "license": "None",
6
6
  "description": "Turbocharge your React web apps with Contensis. This package handles all dependencies for creating full featured web apps in React with Contensis and Site View. Routing is driven by Site View, Redux is used for global state management and server-side rendering (SSR) is handled for you. Also taking care of intricate hosting issues such as cache invalidation and supporting authenticated content where required.",