{"version":3,"sources":["components/organisms/search/actions/facets.ts","components/organisms/search/actions/search.js","components/organisms/search/reducers/facets.js","components/organisms/search/reducers/search.js","components/organisms/search/reducers/index.js","components/organisms/search/store.ts","components/organisms/search/components/FilterContainer.jsx","components/organisms/search/components/Filter.tsx","components/organisms/search/components/DateFilter.jsx","components/organisms/search/components/FilterGroup.jsx","components/organisms/search/components/SearchFilters.jsx","components/organisms/search/components/ActiveFacetButton.tsx","components/organisms/search/components/ActiveFacets.jsx","components/organisms/search/components/Search.jsx","components/organisms/search/components/SearchContainer.jsx","components/organisms/search/components/App.tsx","components/organisms/search/components/SearchField.tsx","components/organisms/search/components/SearchPager.tsx","components/organisms/search/components/SearchResults.tsx","components/organisms/search/components/SearchResult.tsx","components/organisms/search/app.tsx"],"names":["INIT_FACETS","ADD_FACET_AS_ACTIVE","REMOVE_FACET_AS_ACTIVE","RESET_ACTIVE_FACETS","removeFacetAsActive","facet","type","payload","UPDATE_SEARCH_DATE","UPDATE_SEARCH_QUERY","UPDATE_SEARCH_OFFSET","FETCH_SEARCH_START","FETCH_SEARCH_SUCCESS","FETCH_SEARCH_ERROR","SET_INITIAL_FACETS","updateSearchOffset","offset","convertActiveFacets","activeFacets","flattenDeep","Object","keys","map","key","setIntialSearch","dispatch","getState","state","query","queryString","parseUrl","window","location","href","result","facets","active","forEach","isArray","push","setIntialSearchFacets","setIntialSearchQuery","parseInt","page","setIntialSearchOffset","date","search","_objectSpread","setInitialSearchDate","updateBrowserHistory","base","toString","split","stringify","strict","encode","history","pushState","concat","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_getState$search","searchDate","response","wrap","_context","prev","next","SearchService","sent","err","error","items","results","total","stop","_x","_x2","apply","arguments","initialState","all","getType","initFacets","id","title","values","options","v","label","value","initActiveFacets","activeFacet","action","update","_defineProperty","$push","filter","f","length","undefined","searched","loading","d","m","y","uniqBy","rootReducer","combineReducers","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","store","createStore","reducers","applyMiddleware","thunk","connect","ownProps","checked","includes","addFacetAsActive","_jsx","className","children","_jsxs","onChange","DateFilter","_Component","_inherits","_super","_createSuper","_this","_classCallCheck","_len","args","Array","_key","call","isActive","props","activeDateFacets","handleOnChange","e","_this$props","thisUpdateSearchDate","updateSearchDate","thisSearch","target","name","render","defaultValue","years","months","days","_createClass","Component","defaultProps","get","FilterGroup","handleCollapseButtonClick","setState","prevState","collapsed","renderFilters","take","Filter","renderMore","onClick","this","facetType","SearchFilters","handleToggleClick","cn","xmlns","fill","width","height","viewBox","rx","clipRule","group","innerWidth","ActiveFacetButton","getActiveTopics","item","ActiveFacets","handleOnFacetButtonClick","onFacetButtonClick","handleOnResetButtonClick","_this$props2","thisResetActiveFacets","resetActiveFacets","renderFacetButtons","Search","_React$Component","componentDidMount","handleUpdateQuery","updateSearchQuery","handleUpdateOffset","_this$props3","handleSearch","_callee2","_this$props4","_context2","_this$props5","normalizedFacets","ref","container","SearchField","SearchResults","SearchPager","amount","React","App","Provider","textInput","useRef","useEffect","_textInput$current","current","focus","onSubmit","event","preventDefault","htmlFor","placeholder","fillRule","totalPages","ReactPaginate","pageCount","Math","ceil","pageRangeDisplayed","marginPagesDisplayed","onPageChange","i","selected","containerClassName","activeClassName","pageClassName","pageLinkClassName","previousLabel","nextLabel","forcePage","Error","message","_ref2","SearchResult","document","intro","highlights","_item$document","url","image","topic","created","bundle","rating","Teaser","body","searchContainer","querySelector","dataset","searchFacets","ReactDOM","createRoot","JSON","parse"],"mappings":"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","file":"js/15.dacce79c.chunk.js","sourcesContent":["export const INIT_FACETS = \"INIT_FACETS\";\nexport const ADD_FACET_AS_ACTIVE = \"MARK_FACET_AS_ACTIVE\";\nexport const REMOVE_FACET_AS_ACTIVE = \"REMOVE_FACET_AS_ACTIVE\";\nexport const RESET_ACTIVE_FACETS = \"RESET_ACTIVE_FACETS\";\n\nexport const initFacets = (facets: any) => ({\n type: INIT_FACETS,\n payload: {\n facets,\n },\n});\n\nexport const addFacetAsActive = (facet: any) => ({\n type: ADD_FACET_AS_ACTIVE,\n payload: {\n facet,\n },\n});\n\nexport const removeFacetAsActive = (facet: any) => ({\n type: REMOVE_FACET_AS_ACTIVE,\n payload: {\n facet,\n },\n});\n\nexport const resetActiveFacets = () => ({\n type: RESET_ACTIVE_FACETS,\n payload: {},\n});\n","import { flattenDeep, isArray } from \"lodash\";\nimport queryString from \"query-string\";\n\nimport { SearchService } from \"services\";\n\nexport const UPDATE_SEARCH_DATE = \"UPDATE_SEARCH_DATE\";\nexport const UPDATE_SEARCH_QUERY = \"UPDATE_SEARCH_QUERY\";\nexport const UPDATE_SEARCH_OFFSET = \"UPDATE_SEARCH_OFFSET\";\nexport const FETCH_SEARCH_START = \"FETCH_SEARCH_START\";\nexport const FETCH_SEARCH_SUCCESS = \"FETCH_SEARCH_SUCCESS\";\nexport const FETCH_SEARCH_ERROR = \"FETCH_SEARCH_ERROR\";\nexport const SET_INITIAL_FACETS = \"SET_INITIAL_FACETS\";\n\nexport const updateSearchQuery = (query) => ({\n type: UPDATE_SEARCH_QUERY,\n payload: {\n query,\n },\n});\n\nexport const updateSearchDate = (date) => ({\n type: UPDATE_SEARCH_DATE,\n payload: {\n date,\n },\n});\n\nexport const updateSearchOffset = (offset) => ({\n type: UPDATE_SEARCH_OFFSET,\n payload: {\n offset,\n },\n});\n\nexport const fetchSearchStart = () => ({\n type: FETCH_SEARCH_START,\n payload: {},\n});\n\nexport const fetchSearchSuccess = (items, total) => ({\n type: FETCH_SEARCH_SUCCESS,\n payload: {\n items,\n total,\n },\n});\n\nexport const fetchSearchError = (error) => ({\n type: FETCH_SEARCH_ERROR,\n payload: {\n error,\n },\n});\n\nexport const convertActiveFacets = (activeFacets) =>\n flattenDeep(Object.keys(activeFacets).map((key) => activeFacets[key]));\n\nexport const setIntialSearchFacets = (state) => {\n const { query } = queryString.parseUrl(window.location.href);\n\n const result = {};\n\n Object.keys(state.facets.active).forEach((key) => {\n if (!query[key]) {\n result[key] = [];\n } else if (!isArray(query[key])) {\n result[key] = [];\n result[key].push(query[key]);\n } else {\n result[key] = query[key];\n }\n });\n\n return {\n type: SET_INITIAL_FACETS,\n payload: {\n query: result,\n },\n };\n};\n\nexport const setIntialSearchQuery = () => {\n const { query } = queryString.parseUrl(window.location.href);\n\n return {\n type: UPDATE_SEARCH_QUERY,\n payload: {\n query: query.query,\n },\n };\n};\n\nexport const setIntialSearchOffset = () => {\n const { query } = queryString.parseUrl(window.location.href);\n\n return {\n type: UPDATE_SEARCH_OFFSET,\n payload: {\n offset: parseInt(query.page || 1) - 1,\n },\n };\n};\n\nexport const setInitialSearchDate = (state) => {\n const { query } = queryString.parseUrl(window.location.href);\n const date = {};\n\n Object.keys(state.search.date).forEach((key) => {\n if (query[key]) {\n date[key] = query[key];\n }\n });\n\n return {\n type: UPDATE_SEARCH_DATE,\n payload: {\n date: {\n ...date,\n },\n },\n };\n};\n\nexport const setIntialSearch = () => (dispatch, getState) => {\n dispatch(setIntialSearchFacets(getState()));\n dispatch(setIntialSearchQuery());\n dispatch(setIntialSearchOffset());\n dispatch(setInitialSearchDate(getState()));\n};\n\nexport const updateBrowserHistory = (state) => () => {\n const date = {};\n\n Object.keys(state.search.date).forEach((key) => {\n if (state.search.date[key]) {\n date[key] = state.search.date[key];\n }\n });\n\n const base = window.location.toString().split(\"?\")[0];\n const search = queryString.stringify(\n {\n ...state.facets.active,\n ...date,\n query: state.search.query,\n page: state.search.offset ? state.search.offset + 1 : 1,\n },\n {\n strict: false,\n encode: false,\n }\n );\n\n history.pushState({}, \"\", `${base}?${search}`); // eslint-disable-line no-restricted-globals\n};\n\nexport const search = () => async (dispatch, getState) => {\n dispatch(fetchSearchStart());\n dispatch(updateBrowserHistory(getState()));\n\n const { query, offset, date } = getState().search;\n const facets = convertActiveFacets(getState().facets.active);\n\n const searchDate = {};\n\n Object.keys(date).forEach((key) => {\n if (date[key] !== \"\") {\n searchDate[key] = date[key];\n }\n });\n\n const response = await SearchService.search(\n query,\n facets,\n searchDate,\n offset\n );\n\n if (response.err) {\n dispatch(fetchSearchError(response.err));\n } else {\n dispatch(fetchSearchSuccess(response.results, response.total));\n }\n};\n","// TODO: Can we remove, since this is the only place where it's used.\nimport update from \"immutability-helper\";\n\nimport {\n INIT_FACETS,\n ADD_FACET_AS_ACTIVE,\n REMOVE_FACET_AS_ACTIVE,\n RESET_ACTIVE_FACETS,\n SET_INITIAL_FACETS,\n} from \"components/organisms/search/actions\"; // eslint-disable-line\n\nconst initialState = {\n all: [],\n active: {},\n};\n\nconst getType = (type) => {\n switch (type) {\n case \"checkboxes\":\n return \"checkbox\";\n case \"radios\":\n return \"radio\";\n default:\n return \"checkbox\";\n }\n};\n\nconst initFacets = (facets) =>\n facets.map(({ id, title, type, values }) => ({\n id,\n title,\n type: getType(type),\n options: values.map((v) => ({\n label: v.value,\n value: v.key,\n })),\n }));\n\nconst initActiveFacets = (facets) => {\n const result = {};\n facets.forEach((facet) => {\n result[facet.id] = [];\n });\n return result;\n};\n\nconst activeFacet = (state, action) => {\n const { facet } = action.payload;\n\n switch (action.type) {\n case ADD_FACET_AS_ACTIVE:\n if (facet.type === \"checkbox\") {\n return update(state.active, {\n [facet.id]: { $push: [facet.value] },\n });\n }\n return {\n ...state.active,\n [facet.id]: [facet.value],\n };\n case REMOVE_FACET_AS_ACTIVE: // eslint-disable-line no-case-declarations\n const value = state.active[facet.id].filter((f) => f !== facet.value); // eslint-disable-line\n return {\n ...state.active,\n [facet.id]: value,\n };\n default:\n return null;\n }\n};\n\nconst facets = (state = initialState, action) => {\n switch (action.type) {\n case INIT_FACETS:\n return {\n all: initFacets(action.payload.facets),\n active: initActiveFacets(action.payload.facets),\n };\n case ADD_FACET_AS_ACTIVE:\n return {\n ...state,\n active: activeFacet(state, action),\n };\n case REMOVE_FACET_AS_ACTIVE: // eslint-disable-line\n return {\n ...state,\n active: activeFacet(state, action),\n };\n case RESET_ACTIVE_FACETS:\n return {\n ...state,\n active: initActiveFacets(state.all),\n };\n case SET_INITIAL_FACETS:\n return {\n ...state,\n active: {\n ...state.active,\n ...action.payload.query,\n },\n };\n default:\n return state;\n }\n};\n\nexport default facets;\n","import { uniqBy } from \"lodash\";\n\nimport {\n UPDATE_SEARCH_QUERY,\n UPDATE_SEARCH_OFFSET,\n FETCH_SEARCH_START,\n FETCH_SEARCH_SUCCESS,\n FETCH_SEARCH_ERROR,\n UPDATE_SEARCH_DATE,\n SET_INITIAL_FACETS,\n RESET_ACTIVE_FACETS,\n} from \"../actions\";\n\nconst initialState = {\n query: \"\",\n offset: 0,\n total: 0,\n items: [],\n searched: false,\n loading: false,\n error: null,\n date: {\n d: \"\",\n m: \"\",\n y: \"\",\n },\n};\n\nconst search = (state = initialState, action) => {\n switch (action.type) {\n case UPDATE_SEARCH_QUERY:\n return {\n ...state,\n query: action.payload.query,\n searched: false,\n };\n case UPDATE_SEARCH_DATE:\n return {\n ...state,\n date: action.payload.date,\n };\n case UPDATE_SEARCH_OFFSET:\n return {\n ...state,\n offset: action.payload.offset,\n };\n case FETCH_SEARCH_START:\n return {\n ...state,\n error: null,\n loading: true,\n searched: true,\n };\n case FETCH_SEARCH_SUCCESS:\n return {\n ...state,\n error: null,\n loading: false,\n items: uniqBy(action.payload.items, \"document.id\"),\n searched: true,\n total: action.payload.total,\n };\n case FETCH_SEARCH_ERROR:\n return {\n ...state,\n error: action.payload.error,\n loading: false,\n items: [],\n searched: true,\n };\n case SET_INITIAL_FACETS:\n return {\n ...state,\n query: action.payload.query.query,\n };\n case RESET_ACTIVE_FACETS:\n return {\n ...state,\n date: initialState.date,\n };\n default:\n return state;\n }\n};\n\nexport default search;\n","import { combineReducers } from \"redux\";\nimport facets from \"./facets\";\nimport search from \"./search\";\n\nconst rootReducer = combineReducers({\n facets,\n search,\n});\n\nexport default rootReducer;\n","import { createStore, applyMiddleware, compose } from \"redux\";\nimport thunk from \"redux-thunk\";\n\nimport reducers from \"./reducers\";\n\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose; // eslint-disable-line\nconst store = createStore(reducers, composeEnhancers(applyMiddleware(thunk)));\n\nexport default store;\n","import { connect } from \"react-redux\";\n\nimport { Filter } from \"./Filter\";\nimport {\n addFacetAsActive,\n removeFacetAsActive,\n search,\n updateSearchOffset,\n} from \"../actions\";\n\nconst mapStateToProps = (state, ownProps) => ({\n checked: state.facets.active[ownProps.id].includes(ownProps.value),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n addFacetAsActive: (facet) => dispatch(addFacetAsActive(facet)),\n removeFacetAsActive: (facet) => dispatch(removeFacetAsActive(facet)),\n updateSearchOffset: (offset) => dispatch(updateSearchOffset(offset)),\n search: () => dispatch(search()),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Filter);\n","import { FC } from \"react\";\n\ninterface FilterProps {\n value: string;\n label: string;\n id: string;\n type: string;\n}\n\ninterface Props extends FilterProps {\n checked?: boolean;\n addFacetAsActive: (arg0: FilterProps) => void;\n removeFacetAsActive: (arg0: FilterProps) => void;\n search: () => void;\n updateSearchOffset: (offset: number) => void;\n}\n\nexport const Filter: FC = ({\n value,\n label,\n checked,\n id,\n type,\n addFacetAsActive,\n removeFacetAsActive,\n search,\n updateSearchOffset,\n}) => {\n const handleOnChange = () => {\n if (!checked) {\n addFacetAsActive({\n label,\n value,\n id,\n type,\n });\n } else {\n removeFacetAsActive({\n label,\n value,\n id,\n type,\n });\n }\n updateSearchOffset(0);\n search();\n };\n\n return (\n
\n \n
\n );\n};\n","import { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\nimport { get } from \"lodash\";\n\nimport { days, months, years } from \"consts\";\nimport {\n updateSearchDate,\n search,\n updateSearchOffset,\n} from \"../actions/search\";\n\nimport \"./DateFilter.scss\";\n\nconst mapStateToProps = (state) => ({\n date: state.search.date,\n activeDateFacets: get(state, \"facets.active.date\"),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n updateSearchDate: (date) => dispatch(updateSearchDate(date)),\n search: () => dispatch(search()),\n updateSearchOffset: (offset) => dispatch(updateSearchOffset(offset)),\n});\n\nclass DateFilter extends Component {\n static propTypes = {\n date: PropTypes.object,\n activeDateFacets: PropTypes.array,\n updateSearchDate: PropTypes.func,\n search: PropTypes.func,\n updateSearchOffset: PropTypes.func,\n };\n\n static defaultProps = {\n date: {},\n activeDateFacets: [],\n updateSearchDate: () => {},\n search: () => {},\n updateSearchOffset: () => {},\n };\n\n // eslint-disable-next-line react/destructuring-assignment\n isActive = () => this.props.activeDateFacets.includes(\"date:custom\");\n\n handleOnChange = (e) => {\n const {\n date,\n updateSearchDate: thisUpdateSearchDate,\n search: thisSearch,\n } = this.props;\n\n thisUpdateSearchDate({\n ...date,\n [e.target.name]: e.target.value,\n });\n\n updateSearchOffset(0);\n thisSearch();\n };\n\n render = () => {\n if (!this.isActive()) return null;\n\n const { date } = this.props;\n\n return (\n
\n
\n \n
\n
\n \n
\n
\n \n
\n
\n );\n };\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(DateFilter);\n","import { Component } from \"react\";\nimport { take } from \"lodash\";\nimport PropTypes from \"prop-types\";\n\nimport Filter from \"./FilterContainer\";\nimport DateFilter from \"./DateFilter\";\n\nexport default class FilterGroup extends Component {\n static propTypes = {\n title: PropTypes.string,\n id: PropTypes.string,\n type: PropTypes.string,\n options: PropTypes.array,\n facetType: PropTypes.string,\n };\n\n static defaultProps = {\n title: \"\",\n id: \"\",\n type: \"\",\n facetType: \"\",\n options: [],\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n collapsed: true,\n };\n }\n\n handleCollapseButtonClick = () => {\n this.setState((prevState) => ({\n collapsed: !prevState.collapsed,\n }));\n };\n\n renderFilters = () => {\n const { collapsed } = this.state;\n const { id, type, options } = this.props;\n\n return take(options, collapsed ? 5 : options.length).map((f) => [\n ,\n f.value === \"date:custom\" ? : null,\n ]);\n };\n\n renderMore = () => {\n const { collapsed } = this.state;\n const { options } = this.props;\n\n if (options.length <= 5) {\n return null;\n }\n\n return (\n \n {collapsed ? \"Toon meer\" : \"Toon minder\"}\n \n );\n };\n\n render() {\n const { title } = this.props;\n\n return (\n
\n {title &&

{title}

}\n {this.renderFilters()}\n {this.renderMore()}\n
\n );\n }\n}\n","import { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport cn from \"clsx\";\n\nimport FilterGroup from \"./FilterGroup\";\n\nexport default class SearchFilters extends Component {\n static propTypes = {\n facets: PropTypes.array,\n };\n\n static defaultProps = {\n facets: [],\n };\n\n constructor(props) {\n super(props);\n\n this.state = {\n collapsed: window.innerWidth < 768,\n };\n }\n\n handleToggleClick = () => {\n this.setState((prevState) => {\n return {\n collapsed: !prevState.collapsed,\n };\n });\n };\n\n render = () => {\n const { collapsed } = this.state;\n const { facets } = this.props;\n\n if (!facets) return null;\n\n return (\n \n \n Filter resultaten\n {collapsed ? (\n \n \n \n ) : (\n \n \n \n \n )}\n \n
\n {facets.map((group) => (\n \n ))}\n
\n \n );\n };\n}\n","import { FC } from \"react\";\n\nimport \"./ActiveFacetButton.scss\";\n\ninterface Props {\n label?: string;\n onClick?: () => void;\n}\n\nexport const ActiveFacetButton: FC = ({ label, onClick }) => (\n \n);\n","import { Component } from \"react\";\nimport PropTypes from \"prop-types\";\nimport { connect } from \"react-redux\";\n\nimport {\n removeFacetAsActive,\n resetActiveFacets,\n search,\n updateSearchOffset,\n} from \"../actions\";\n\nimport { ActiveFacetButton } from \"./ActiveFacetButton\";\n\nconst getActiveTopics = ({ facets }) => {\n const { active, all } = facets;\n const result = [];\n if (!all.length) return result;\n\n Object.keys(active).forEach((id) => {\n if (active[id].length) {\n active[id].forEach((value) => {\n const item = all\n .filter((f) => f.id === id)\n .map((f) => f.options)[0]\n .filter((f) => f.value === value)[0];\n result.push({\n ...item,\n id,\n });\n });\n }\n });\n\n return result;\n};\n\nconst mapStateToProps = (state) => ({\n facets: getActiveTopics(state),\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n onFacetButtonClick: (facet) => dispatch(removeFacetAsActive(facet)),\n resetActiveFacets: () => dispatch(resetActiveFacets()),\n search: () => dispatch(search()),\n updateSearchOffset: (offset) => dispatch(updateSearchOffset(offset)),\n});\n\nclass ActiveFacets extends Component {\n static propTypes = {\n facets: PropTypes.array,\n onFacetButtonClick: PropTypes.func,\n resetActiveFacets: PropTypes.func,\n search: PropTypes.func,\n updateSearchOffset: PropTypes.func,\n };\n\n static defaultProps = {\n facets: [],\n onFacetButtonClick: () => {},\n resetActiveFacets: () => {},\n search: () => {},\n updateSearchOffset: () => {},\n };\n\n constructor(props) {\n super(props);\n\n this.state = {};\n }\n\n handleOnFacetButtonClick = (f) => () => {\n const {\n onFacetButtonClick,\n search: thisSearch,\n updateSearchOffset,\n } = this.props;\n\n onFacetButtonClick(f);\n updateSearchOffset(0);\n thisSearch();\n };\n\n handleOnResetButtonClick = () => {\n const {\n resetActiveFacets: thisResetActiveFacets,\n search: thisSearch,\n updateSearchOffset,\n } = this.props;\n\n thisResetActiveFacets();\n updateSearchOffset(0);\n thisSearch();\n };\n\n renderFacetButtons = () => {\n const { facets } = this.props;\n\n return facets.map((f) => (\n \n ));\n };\n\n render = () => {\n const { facets } = this.props;\n\n if (!facets.length) {\n return null;\n }\n\n return (\n
\n {this.renderFacetButtons()}\n \n Reset filter\n \n
\n );\n };\n}\n\nexport default connect(mapStateToProps, mapDispatchToProps)(ActiveFacets);\n","import React from \"react\";\nimport PropTypes from \"prop-types\";\n\nimport { SearchField, SearchResults, SearchPager } from \"./\";\nimport SearchFilters from \"./SearchFilters\";\nimport ActiveFacets from \"./ActiveFacets\";\n\nexport default class Search extends React.Component {\n static propTypes = {\n facets: PropTypes.array,\n normalizedFacets: PropTypes.array,\n search: PropTypes.func,\n initFacets: PropTypes.func,\n updateSearchQuery: PropTypes.func,\n updateSearchOffset: PropTypes.func,\n setIntialSearch: PropTypes.func,\n searched: PropTypes.bool,\n loading: PropTypes.bool,\n query: PropTypes.string,\n total: PropTypes.number,\n items: PropTypes.array,\n offset: PropTypes.number,\n error: PropTypes.string,\n };\n\n static defaultProps = {\n facets: [],\n normalizedFacets: [],\n search: () => {},\n initFacets: () => {},\n updateSearchQuery: () => {},\n updateSearchOffset: () => {},\n setIntialSearch: () => {},\n searched: false,\n loading: false,\n query: \"\",\n total: 0,\n items: [],\n offset: 0,\n error: \"\",\n };\n\n componentDidMount = async () => {\n const { facets, initFacets, setIntialSearch, search } = this.props;\n\n initFacets(facets);\n setIntialSearch();\n search({});\n };\n\n handleUpdateQuery = (query) => {\n const { updateSearchOffset, updateSearchQuery } = this.props;\n\n updateSearchOffset(0);\n updateSearchQuery(query);\n };\n\n handleUpdateOffset = (offset) => {\n const { updateSearchOffset, search } = this.props;\n\n updateSearchOffset(offset);\n search();\n };\n\n handleSearch = async () => {\n const { updateSearchOffset, search } = this.props;\n\n updateSearchOffset(0);\n search();\n };\n\n render = () => {\n const {\n searched,\n loading,\n query,\n total,\n items,\n offset,\n error,\n normalizedFacets,\n } = this.props;\n\n return (\n {\n this.container = container;\n }}\n >\n
\n \n
\n
\n \n
\n \n \n \n
\n
\n \n );\n };\n}\n","import { connect } from \"react-redux\";\n\nimport {\n initFacets,\n updateSearchQuery,\n updateSearchOffset,\n search,\n setIntialSearch,\n} from \"../actions\";\n\nimport Search from \"./Search\";\n\nconst mapStateToProps = (state) => ({\n ...state.search,\n normalizedFacets: state.facets.all,\n});\n\nconst mapDispatchToProps = (dispatch) => ({\n setIntialSearch: () => dispatch(setIntialSearch()),\n initFacets: (facets) => dispatch(initFacets(facets)),\n search: () => dispatch(search()),\n updateSearchQuery: (query) => dispatch(updateSearchQuery(query)),\n updateSearchOffset: (offset) => dispatch(updateSearchOffset(offset)),\n});\n\nexport default connect(mapStateToProps, mapDispatchToProps)(Search);\n","import { FC } from \"react\";\nimport { Provider } from \"react-redux\";\n\nimport store from \"../store\";\nimport Search from \"./SearchContainer\";\n\ninterface Props {\n facets: string[];\n}\n\nexport const App: FC = ({ facets }) => (\n \n \n \n);\n\nexport default App;\n","import { FC, RefObject, useEffect, useRef } from \"react\";\n\ninterface Props {\n query: string;\n handleSearch: () => void;\n handleUpdateQuery: (query: string) => void;\n}\n\nexport const SearchField: FC = ({\n query,\n handleSearch,\n handleUpdateQuery,\n}) => {\n const textInput: RefObject = useRef(null);\n\n useEffect(() => {\n textInput.current?.focus();\n }, []);\n\n return (\n {\n event.preventDefault();\n\n handleSearch();\n }}\n >\n
\n \n \n
\n \n );\n};\n","import { FC } from \"react\";\nimport ReactPaginate from \"react-paginate\";\n\ninterface Props {\n total: number;\n offset: number;\n amount: number;\n loading: boolean;\n handleUpdateOffset: (offset: number) => void;\n}\n\nexport const SearchPager: FC = ({\n total,\n offset,\n amount,\n handleUpdateOffset,\n loading,\n}) => {\n if (loading) return null;\n\n const totalPages = total / amount;\n\n if (totalPages <= 1) {\n return null;\n }\n\n const handleClick = (i: any) => {\n handleUpdateOffset(i.selected);\n };\n\n return (\n
\n \n
\n );\n};\n","import { FC } from \"react\";\n\nimport { SearchResult } from \"./\";\n\nconst Error = ({ message }: { message: string }) => (\n
\n

{message}

\n
\n);\n\ninterface Props {\n searched: boolean;\n error: string;\n items: any[];\n loading?: boolean;\n}\n\nexport const SearchResults: FC = ({ searched, error, items }) => {\n if (error) {\n return ;\n }\n\n if (items.length === 0 && searched) {\n return

Er zijn helaas geen resultaten voor je zoekopdracht.

;\n }\n\n return (\n
\n {items.map((item) => (\n \n ))}\n
\n );\n};\n","import { FC } from \"react\";\n\nimport { Teaser } from \"components/molecules/teaser/Teaser\";\n\ninterface Props {\n item: {\n document: {\n url: string;\n image: string;\n label: string;\n title: string;\n topic: string;\n created: number;\n bundle: string;\n rating: number;\n };\n highlights: {\n intro: string[];\n };\n };\n}\n\nexport const SearchResult: FC = ({ item }) => {\n const { intro } = item.highlights;\n\n const { url, image, label, title, topic, created, bundle, rating } =\n item.document;\n\n return (\n \n );\n};\n","import ReactDOM from \"react-dom/client\";\n\nimport { App } from \"./components/\";\n\nconst searchContainer: HTMLDivElement | null = document.querySelector(\n \"[data-search-container]\"\n);\n\nif (searchContainer) {\n const facets = searchContainer ? searchContainer.dataset.searchFacets : null;\n\n if (facets) {\n const root = ReactDOM.createRoot(searchContainer);\n root.render();\n }\n}\n"],"sourceRoot":""}