{"version":3,"file":"js/SiteSearch.bundle.js","mappings":"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","sources":["webpack://rp-majoitus-client/./src/views/SiteSearch/SiteSearchResult.js","webpack://rp-majoitus-client/./src/views/SiteSearch/SiteSearch.js","webpack://rp-majoitus-client/./src/views/SiteSearch/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\n\nconst SiteSearchResult = (props) => {\n return (\n
\n \n
{props.type}
\n
\n
\n

\n {props.title}\n

\n
\n {props.description}\n
\n
\n \n );\n};\n\nSiteSearchResult.propTypes = {\n title: PropTypes.array,\n url: PropTypes.array,\n description: PropTypes.array,\n type: PropTypes.array,\n};\n\nexport default SiteSearchResult;\n","import React, { useState, useEffect } from 'react';\nimport {\n ReactiveBase,\n DataSearch,\n ReactiveList,\n} from '@appbaseio/reactivesearch';\nimport EventSearchResult from './SiteSearchResult';\nimport { sendSiteSearchToGA4 } from '../../components/GA4';\n\nconst searchFields = [\n 'facilities_name',\n 'field_facility_description',\n 'field_location_description',\n 'title_product',\n 'field_short_description',\n 'theme_name',\n 'field_body',\n 'field_title',\n 'field_description',\n 'field_hero_text',\n 'field_hero_title',\n 'paragraphs_field_body',\n 'field_link_text',\n 'field_description_node',\n 'field_hero_description',\n 'title_node',\n 'field_place',\n 'field_body_text',\n 'field_description_taxonomy',\n 'field_hero_text_taxonomy',\n 'field_hero_title_taxonomy',\n 'name',\n 'metatag_description_node',\n 'metatag_description_product',\n 'metatag_description_taxonomy',\n 'metatag_keywords_node',\n 'metatag_keywords_product',\n 'metatag_keywords_taxonomy',\n 'metatag_title_node',\n 'metatag_title_product',\n 'metatag_title_taxonomy',\n];\n\nconst searchUrl = drupalSettings.base_url + '/node-search/';\nlet searchIndex;\n\nswitch (drupalSettings.active_site) {\n case 'Pyha':\n searchIndex = process.env.PYHA_ES_SITE_SEARCH_INDEX_NAME;\n break;\n\n case 'Luosto':\n searchIndex = process.env.LUOSTO_ES_SITE_SEARCH_INDEX_NAME;\n break;\n\n default:\n searchIndex = process.env.RUKA_ES_SITE_SEARCH_INDEX_NAME;\n}\n\nsearchIndex += `_${drupalSettings.current_language}`;\n\nconst SiteSearch = () => {\n const [displayedResultsCount, setDisplayedResultsCount] = useState(15);\n const [totalResultsCount, setTotalResultsCount] = useState();\n const [displaySearch, setDisplaySearch] = useState(false);\n const [query, setQuery] = useState('');\n const dataLayer = window.dataLayer;\n\n function toggleDisplaySearch() {\n // Displays search overlay and hides content below.\n let footerElement = document.getElementsByClassName('main')[0];\n let mainElement = document.getElementsByClassName('footer')[0];\n if (displaySearch) {\n setDisplaySearch(false);\n footerElement.style.display = 'block';\n mainElement.style.display = 'block';\n } else {\n setDisplaySearch(true);\n footerElement.style.display = 'none';\n mainElement.style.display = 'none';\n }\n }\n\n useEffect(() => {\n const delayDebounceFn = setTimeout(() => {\n if (query.length > 0) {\n sendSiteSearchToGA4(dataLayer, query, totalResultsCount);\n }\n }, 1000);\n\n return () => clearTimeout(delayDebounceFn);\n }, [query, totalResultsCount]);\n\n return (\n \n {displaySearch ? (\n \n \n {Drupal.t('Close search bar')}\n \n \n ) : (\n \n {Drupal.t('Open search bar')}\n \n )}\n {displaySearch && (\n
\n

\n {Drupal.t('Search from the site')}\n

\n
\n
\n \n {Drupal.t('Close search')}\n \n
\n\n {\n setQuery(value);\n }}\n autoFocus\n />\n
\n {query.length > 2 && (\n
\n (\n
\n {Drupal.t('No results')}\n
\n )}\n renderResultStats={(stats) => (\n
\n {`${stats.numberOfResults} ${Drupal.t('results')}`}\n
\n )}\n render={({ data }) => (\n
\n {setTotalResultsCount(data.length)}\n {data.slice(0, displayedResultsCount).map((item) => (\n \n ))}\n
\n )}\n />\n {totalResultsCount > displayedResultsCount && (\n
\n \n setDisplayedResultsCount(displayedResultsCount + 15)\n }\n >\n {Drupal.t('Show more')}\n \n
\n )}\n
\n )}\n
\n )}\n \n );\n};\n\nexport default SiteSearch;\n","import React from 'react';\nimport ReactDOM from 'react-dom/client';\n\nimport SiteSearch from './SiteSearch';\n\nconst root = ReactDOM.createRoot(document.getElementById('site_search'));\n\nroot.render(\n \n \n \n);\n"],"names":["SiteSearchResult","props","React","className","concat","type","href","url","title","description","propTypes","PropTypes","searchIndex","searchFields","searchUrl","drupalSettings","base_url","active_site","process","current_language","_useState","useState","_useState2","_slicedToArray","displayedResultsCount","setDisplayedResultsCount","_useState3","_useState4","totalResultsCount","setTotalResultsCount","_useState5","_useState6","displaySearch","setDisplaySearch","_useState7","_useState8","query","setQuery","dataLayer","window","toggleDisplaySearch","footerElement","document","getElementsByClassName","mainElement","style","display","useEffect","delayDebounceFn","setTimeout","length","sendSiteSearchToGA4","clearTimeout","ReactiveBase","app","headers","token","theme","typography","fontFamily","colors","textColor","primaryColor","onClick","Drupal","t","DataSearch","componentId","dataField","placeholder","autosuggest","onValueChange","value","autoFocus","ReactiveList","showResultStats","size","scrollOnChange","loader","react","and","renderNoResults","renderResultStats","stats","numberOfResults","render","_ref","data","slice","map","item","EventSearchResult","key","nid","title_node","title_product","name","field_description_node","field_short_description","field_description","field_description_taxonomy","field_hero_description","status_product","ReactDOM","getElementById","SiteSearch"],"sourceRoot":""}