{"version":3,"sources":["webpack://@verndale/toolkit/./src/js/modules/conditions-listing/hooks/useConditionsListing.js","webpack://@verndale/toolkit/./src/js/modules/conditions-listing/ConditionsListing.js","webpack://@verndale/toolkit/./src/js/modules/conditions-listing/index.js","webpack://@verndale/toolkit/./src/js/modules/react-components/pager/utils.js","webpack://@verndale/toolkit/./src/js/modules/react-components/pager/index.js"],"names":["useConditionsListing","props","url","filters","setFilters","useState","activeFilters","setActiveFilters","mainFacetPanelOpen","setMainFacetPanelOpen","items","setItems","term","setTerm","sorting","setSorting","page","setPage","totalPages","setTotalPages","searchSummary","setSearchSummary","termLength","error","setError","isLoading","setIsLoading","firstLoad","setFirstLoad","init","fetchData","scrollToTop","setUrlParam","updateUrl","handleClearAllFilters","e","handleFacetContentToggle","getUrlParam","param","uri","result","value","handleFacetToggle","event","dataFilter","dataId","updatedFilters","alpha","$filter","$item","checkActiveFilters","active","handleFilterPanelToggle","control","newFilters","expanded","handleTermClear","handleTermKeyDown","handleTermSubmit","handleTermKeyUp","el","handleSortingChange","endpoint","currentUrl","activeAlpha","r","data","processData","useEffect","ConditionsListing","config","dataLabels","noResultsMessage","errorMessage","facets","React","filter","item","summary","results","match","Pager","Module","getPageSpread","pages","current","getPages","total","n","pagerArrow","onChange","isPrevDisabled","isNextDisabled","handleButtonClick","previous","next","p"],"mappings":"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","file":"scripts/783.5497564f.js","sourcesContent":["/* eslint-disable no-use-before-define */\nimport { useState, useEffect } from 'react';\n\nfunction useConditionsListing(props) {\n const url = (new URL(window.location));\n // ========================================================================\n // Filters/Facets Setup\n // ========================================================================\n // // Filters\n const [ filters, setFilters ] = useState([]);\n const [ activeFilters, setActiveFilters ] = useState(false);\n const [ mainFacetPanelOpen, setMainFacetPanelOpen ] = useState(false);\n // ========================================================================\n // Results, Term, Sorting Page and URL Control Setup\n // ========================================================================\n const [ items, setItems ] = useState([]);\n const [ term, setTerm ] = useState(url.searchParams.get('term') || []);\n const [ sorting, setSorting ] = useState(url.searchParams.get('sorting') || 'alphabetical');\n const [ page, setPage ] = useState(parseInt(window.location.search.split('page=')[1], 10) || 1);\n const [ totalPages, setTotalPages ] = useState(0);\n const [ searchSummary, setSearchSummary ] = useState('');\n let termLength = term.length;\n // ========================================================================\n // Misc: Error and Loading States Setup\n // ========================================================================\n const [ error, setError ] = useState(false);\n const [ isLoading, setIsLoading ] = useState(false);\n const [ firstLoad, setFirstLoad ] = useState(false);\n\n // ========================================================================\n // Init Method\n // ========================================================================\n const init = () => {\n if(termLength > 0) {\n document.getElementById('conditions-listing__search-field').classList.add('conditions-listing__search-field--filled');\n }\n fetchData();\n }\n\n // ========================================================================\n // Utils\n // ========================================================================\n const scrollToTop = () => {\n if (firstLoad) {\n setUrlParam('page', `${page}`);\n document.getElementById('conditions-results-container').scrollIntoView();\n const ev = {\"target\":\"window\"};\n updateUrl(ev);\n }\n }\n\n const handleClearAllFilters = e => {\n e.preventDefault();\n e.stopPropagation();\n\n setUrlParam('Alpha', []);\n setUrlParam('page', \"1\");\n updateUrl({target: \"target\"});\n }\n\n const handleFacetContentToggle = e => {\n console.log(e.target);\n if(mainFacetPanelOpen === true) {\n setMainFacetPanelOpen(false);\n } else {\n setMainFacetPanelOpen(true);\n }\n }\n // ========================================================================\n\n // ========================================================================\n // URL Manipulation (getUrlParam, setUrlParam, updateUrl)\n // ========================================================================\n // eslint-disable-next-line arrow-body-style, no-unused-vars\n const getUrlParam = (param, uri) => {\n let result;\n if(uri) {\n result = uri.searchParams.get(param);\n } else {\n result = url.searchParams.get(param);\n }\n\n return result;\n }\n\n const setUrlParam = (param, value, uri) => {\n if(uri) {\n if (value.length) {\n uri.searchParams.set(param, value);\n } else {\n uri.searchParams.delete(param);\n }\n } else if (value.length) {\n url.searchParams.set(param, value);\n } else {\n url.searchParams.delete(param);\n }\n }\n\n const updateUrl = e => {\n console.log('=============== UPDATE URL ==================');\n window.history.replaceState(null, '', url.toString());\n if(e?.target){\n console.log('=================== EVENT FOUND, FETCH THE DATA AGAIN ============================', e);\n fetchData();\n }\n\n }\n // ========================================================================\n\n // ========================================================================\n // Facet Control ()\n // ========================================================================\n const handleFacetToggle = (event) => {\n const dataFilter = event.target.getAttribute('data-filter');\n const dataId = event.target.getAttribute('data-id');\n const updatedFilters = [...filters];\n const alpha = [];\n\n if(event) {\n updatedFilters.forEach($filter => {\n if($filter.value === dataFilter) {\n $filter.items.forEach($item => {\n if($item.value === dataId) {\n if($item.checked === true) {\n $item.checked = false;\n } else {\n $item.checked = true;\n }\n } else {\n $item.checked = false;\n }\n })\n }\n })\n\n updatedFilters.forEach($filter => {\n $filter.items.forEach($item => {\n if($item.checked === true){\n if($filter.value === \"Alpha\"){\n alpha.push(encodeURIComponent($item.value));\n }\n }\n })\n })\n\n setUrlParam('Alpha', alpha);\n setUrlParam('page', '1');\n setPage(1);\n setFilters(updatedFilters);\n updateUrl(event);\n }\n }\n\n const checkActiveFilters = () => {\n let active = 0;\n\n filters.forEach($filter => {\n $filter.items.forEach($item => {\n if($item.checked === true) {\n active += 1;\n }\n })\n });\n\n setActiveFilters(active);\n };\n\n const handleFilterPanelToggle = (e) => {\n const control = e.target.getAttribute('aria-controls');\n\n const newFilters = [...filters];\n\n newFilters.forEach($filter => {\n if($filter.value === control){\n const {expanded} = $filter;\n if(expanded === true){\n $filter.expanded = false;\n } else {\n $filter.expanded = true;\n }\n }\n });\n\n setFilters(newFilters);\n }\n // ========================================================================\n\n // ========================================================================\n // Term Search Control\n // ========================================================================\n const handleTermClear = e => {\n e.preventDefault();\n\n setTerm('');\n setUrlParam('term', []);\n document.getElementById('conditions-listing__search-field').value = '';\n document.getElementById('conditions-listing__search-field').focus();\n document.getElementById('conditions-listing__search-field').classList.remove('conditions-listing__search-field--filled');\n updateUrl(e);\n }\n\n const handleTermKeyDown = e => {\n if (e.keyCode === 13) {\n e.preventDefault();\n handleTermSubmit(e);\n }\n }\n\n const handleTermKeyUp = e => {\n termLength = e.target.value.length;\n\n if(e.target.value.length > 0) {\n e.target.classList.add('conditions-listing__search-field--filled');\n } else {\n e.target.classList.remove('conditions-listing__search-field--filled');\n }\n }\n\n const handleTermSubmit = e => {\n e.preventDefault();\n const el = document.getElementById('conditions-listing__search-field');\n setTerm(el.value);\n setPage(1);\n setUrlParam('page', \"1\");\n setUrlParam('term', el.value);\n updateUrl(e);\n document.activeElement.blur()\n }\n\n const handleSortingChange = e => {\n setPage(1);\n setSorting(e.target.value);\n setUrlParam('page', \"1\");\n setUrlParam('sorting', e.target.value);\n updateUrl(e);\n }\n // ========================================================================\n\n // ========================================================================\n // Fetch Data and process data\n // ========================================================================\n const fetchData = () => {\n const endpoint = new URL(`${props.endpoint}`, window.location.origin);\n const currentUrl = new URL(window.location);\n let activeAlpha = [];\n\n // Setting all the params to the endpoint url\n if(currentUrl.searchParams.get('sorting')) {\n endpoint.searchParams.set('sorting', currentUrl.searchParams.get('sorting'));\n }\n if(currentUrl.searchParams.get('term')) {\n endpoint.searchParams.set('term', currentUrl.searchParams.get('term'));\n }\n if(currentUrl.searchParams.get('Alpha')) {\n endpoint.searchParams.set('Alpha', currentUrl.searchParams.get('Alpha').split(','));\n activeAlpha = decodeURIComponent((currentUrl.searchParams.get('Alpha')).split(','));\n }\n if(currentUrl.searchParams.get('page')) {\n endpoint.searchParams.set('page', currentUrl.searchParams.get('page'));\n }\n\n\n console.log('==> ENDPOINT URL: ', endpoint.toString());\n\n setIsLoading(true);\n\n console.log('====================== FETCHING DATA ... ============================');\n window.fetch(endpoint.toString(), {\n method: 'GET',\n headers: {\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n }\n })\n .then(r => r.json())\n .then(data => {\n console.log(data);\n console.log('====================== FETCHING DATA ... DONE =======================');\n if (data.results) {\n processData(data, activeAlpha);\n } else {\n setError(true);\n }\n setIsLoading(false);\n if (!firstLoad) {\n setFirstLoad(true);\n }\n })\n .catch(() => {\n setError(true);\n setIsLoading(false);\n if (!firstLoad) {\n setFirstLoad(true);\n }\n });\n }\n\n const processData = (data, activeAlpha) => {\n data.filters.forEach($filter => {\n $filter.expanded = true;\n\n $filter.items.forEach($item => {\n if($filter.value === \"Alpha\") {\n if(activeAlpha.indexOf($item.value) !== -1 ) {\n $item.checked = true;\n } else {\n $item.checked = false;\n }\n }\n });\n })\n\n setFilters(data.filters);\n console.log(filters);\n setTotalPages(data.totalPages);\n setSearchSummary(data.searchSummary);\n setItems(data.results);\n }\n // ========================================================================\n\n // ========================================================================\n // Setting up UseEffect\n // ========================================================================\n useEffect(init, []);\n // useEffect(updateUrl, []);\n useEffect(scrollToTop, [page]);\n useEffect(checkActiveFilters, [filters]);\n // useEffect(fetchData, [alpha, sorting, term]);\n // ========================================================================\n\n\n return {\n error,\n isLoading,\n firstLoad,\n items,\n filters,\n sorting,\n results: items,\n term,\n page,\n totalPages,\n searchSummary,\n activeFilters,\n mainFacetPanelOpen,\n handleClearAllFilters,\n handleSortingChange,\n handleTermKeyDown,\n handleTermKeyUp,\n handleTermSubmit,\n handleTermClear,\n handleFacetToggle,\n handleFilterPanelToggle,\n handleFacetContentToggle,\n setPage\n };\n}\n\nexport default useConditionsListing;\n","import React from 'react';\nimport useConditionsListing from './hooks/useConditionsListing';\nimport Pager from '../react-components/pager';\n\nfunction ConditionsListing(props) {\n const { ...config } = useConditionsListing(props);\n // eslint-disable-next-line react/prop-types\n const dataLabels = JSON.parse(props.labels);\n // eslint-disable-next-line react/prop-types\n const noResultsMessage = props.noResultsRtf;\n // eslint-disable-next-line react/prop-types\n const errorMessage = props.errorMessageRtf;\n\n const facets = (\n <>\n
\n\n
\n \n \n \n \n \n \n
\n \n\n {config.filters.length?\n
\n
\n {dataLabels.narrowResults}\n {config.activeFilters?\n
\n \n
\n : \"\"\n }\n
\n
\n
    \n {config.filters?.map(filter => (\n
  • \n
      \n {filter.items?.map(item => (\n
    • \n \n
    • \n ))}\n
    \n
  • \n ))}\n
\n
\n
\n : \"\"}\n
\n \n );\n\n const summary = (\n <>\n
\n {config.searchSummary}\n
\n \n \n \n \n
\n
\n \n );\n\n\n const results = (\n <>\n \n \n \n )\n\n /* eslint-disable no-nested-ternary */\n return (\n <>\n
\n
\n {facets}\n
\n
\n {config.isLoading?\n
\n \n \n \n

Loading Results...

\n
\n :<>\n {config.error?\n
\n :config.results.length > 0?\n \n {summary}\n {results}\n \n :
\n }\n \n }\n
\n
\n \n );\n}\n\nexport default ConditionsListing;\n","import Module from './ConditionsListing';\n\nexport default Module;\n","const getPageSpread = (pages, current) => {\n const spreadPages = pages.map(page => ({\n page,\n isCurrent: current === page\n }));\n return spreadPages;\n};\n\nexport const getPages = (current, total) => {\n if (total <= 5) {\n const items = Array.from(new Array(total).keys()).map(n => n + 1);\n return getPageSpread(items, current);\n }\n if (current < 5) {\n\n if (current === 4) {\n return [\n ...getPageSpread([1], current),\n { isEllipses: true, page: current - 2 },\n ...getPageSpread([current - 1, current, current + 1], current),\n { isEllipses: true, page: current + 2 },\n ...getPageSpread([total], current)\n ];\n }\n\n const items = Array.from(new Array(4).keys()).map(n => n + 1);\n\n return [\n ...getPageSpread(items, current),\n { isEllipses: true, page: 5 },\n ...getPageSpread([total], current)\n ];\n }\n if (total > 5 && current >= total - 3) {\n\n if (current === total - 3) {\n return [\n ...getPageSpread([1], current),\n { isEllipses: true, page: current - 2 },\n ...getPageSpread([current - 1, current, current + 1], current),\n { isEllipses: true, page: current + 2 },\n ...getPageSpread([total], current)\n ];\n }\n\n return [\n ...getPageSpread([1], current),\n { isEllipses: true, page: total - 4 },\n ...getPageSpread([total - 3, total - 2, total - 1, total], current)\n ];\n }\n if (total > 6 && current > 4) {\n return [\n ...getPageSpread([1], current),\n { isEllipses: true, page: current - 2 },\n ...getPageSpread([current - 1, current, current + 1], current),\n { isEllipses: true, page: current + 2 },\n ...getPageSpread([total], current)\n ];\n }\n return [];\n};\n","/* eslint-disable react/prop-types */\nimport React from 'react';\nimport { getPages } from './utils';\n\nconst pagerArrow = {\n nextArrowLabel: \"Next page\",\n pageLabel: \"Page\",\n prevArrowLabel: \"Previous page\"\n};\n\nconst Pager = props => {\n const { page, total, onChange } = props;\n const pages = getPages(page, total);\n\n if (pages.length <= 1) return null;\n\n const isPrevDisabled = page === 1;\n const isNextDisabled = page === total;\n\n const handleButtonClick = n => {\n onChange(n);\n }\n\n const previous = (\n
  • \n handleButtonClick(page - 1)}\n className=\"pager__button\"\n disabled={isPrevDisabled}\n aria-label={pagerArrow?.prevArrowLabel}\n aria-disabled={isPrevDisabled}\n >\n {props.labelPrev}\n Previous\n \n
  • \n );\n\n\n const next = (\n
  • \n handleButtonClick(page + 1)}\n className=\"pager__button\"\n disabled={isNextDisabled}\n aria-label={pagerArrow?.nextArrowLabel}\n aria-disabled={isNextDisabled}\n >\n {props.labelNext}\n Next\n \n
  • \n );\n\n return (\n
      \n {previous}\n {pages.map(p => (\n
    1. \n \n
    2. \n ))}\n {next}\n
    \n );\n};\n\nexport default Pager;\n"],"sourceRoot":""}