{"version":3,"sources":["webpack:///./Scripts/Components/QuickSearchResult.js","webpack:///./Scripts/Components/QuickSearch.js","webpack:///./Scripts/Containers/QuickSearch.container.js"],"names":["QuickSearchResult","result","showAll","searchUrl","nonSideListKeys","products","className","translate","item","href","url","key","name","src","hasImage","imageSource","items","category","QuickSearch","props","searchInput","query","showResult","isLoading","noHit","onSearch","selectedItem","React","useEffect","focus","role","placeholder","autoComplete","value","decodeURIComponent","onChange","e","encodeURIComponent","target","ref","input","onClick","debouncedQuery","debounce","dispatch","text","connect","state","quickSearch","setSearchQuery","urlParams","window","location","search","has","get","__litium","quickSearchUrl","length","elem"],"mappings":"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","file":"23.5ee7c13419d665381924.js","sourcesContent":["import React from 'react';\r\nimport { translate } from '../Services/translation';\r\n\r\nconst PLACEHOLDER_IMAGE_URL = \"/ui/images/image-placeholder.png\"\r\n\r\nconst QuickSearchResult = ({ result, showAll, searchUrl }) => {\r\n if(!result) return null\r\n\r\n var nonSideListKeys = [\"products\"]\r\n var products = result[\"products\"]\r\n\r\n return
\r\n
\r\n
\r\n
{translate(\"quicksearchheader.products\")}
\r\n {products && <>\r\n {products.map(item => \r\n \r\n
\r\n \r\n
\r\n

{item.name}

\r\n
\r\n )}\r\n }\r\n {!products && translate(\"search.no-matching-products\")}\r\n
\r\n
\r\n {Object.keys(result).map(key => {\r\n if(nonSideListKeys.includes(key)) return\r\n\r\n var items = result[key]\r\n return
\r\n
{items[0].category}
\r\n
\r\n {items.map(item => {item.name})}\r\n
\r\n
\r\n })}\r\n
\r\n
\r\n {showAll && \r\n
\r\n
\r\n {showAll.name}\r\n
\r\n
\r\n }\r\n
\r\n}\r\n\r\nexport default QuickSearchResult;","import React from 'react';\r\nimport QuickSearchResult from './QuickSearchResult';\r\nimport { translate } from '../Services/translation';\r\n\r\nconst QuickSearch = props => {\r\n const { query, result, showResult, isLoading, showAll, noHit, onSearch, selectedItem, searchUrl } = props\r\n var searchInput\r\n\r\n React.useEffect(() => {\r\n if(searchInput) {\r\n searchInput.focus();\r\n }\r\n }, [searchInput])\r\n\r\n const clearInput = () => {\r\n onSearch(\"\")\r\n searchInput.focus()\r\n }\r\n\r\n return <>\r\n
\r\n
\r\n
\r\n \r\n onSearch(encodeURIComponent(e.target.value))}\r\n ref={input => searchInput = input} />\r\n {!isLoading && }\r\n {isLoading && }\r\n
\r\n
\r\n
\r\n {showResult && }\r\n \r\n}\r\n\r\nexport default QuickSearch;","import React from 'react';\r\nimport * as debounce from 'lodash.debounce';\r\nimport { connect } from 'react-redux';\r\nimport QuickSearch from '../Components/QuickSearch';\r\nimport { query, setSearchQuery } from '../Actions/QuickSearch.action';\r\n\r\nconst QuickSearchContainer = props => {\r\n const { query, setSearchQuery, onSearch } = props\r\n var searchContainer\r\n\r\n React.useEffect(() => {\r\n var urlParams = new URLSearchParams(window.location.search);\r\n if (urlParams.has('q')) {\r\n const query = urlParams.get('q');\r\n setSearchQuery(query);\r\n onSearch(query)\r\n }\r\n }, [])\r\n\r\n const searchUrl = window.__litium.quickSearchUrl + (query.length > 0 ? `?q=${query}` : '')\r\n\r\n return
searchContainer = elem}>\r\n \r\n
\r\n}\r\n\r\nconst mapStateToProps = state => {\r\n return {\r\n query: state.quickSearch.query,\r\n result: state.quickSearch.result,\r\n showAll: state.quickSearch.showAll,\r\n noHit: state.quickSearch.noHit,\r\n isLoading: state.quickSearch.isLoading,\r\n showResult: state.quickSearch.showResult,\r\n }\r\n}\r\n\r\n// debouncing function to 200ms so we don't send query request on every key stroke\r\nconst debouncedQuery = debounce((dispatch, text) => dispatch(query(text)), 200);\r\n\r\nconst mapDispatchToProps = dispatch => {\r\n return {\r\n onSearch: (text) => {\r\n dispatch(setSearchQuery(text));\r\n debouncedQuery(dispatch, text);\r\n },\r\n setSearchQuery: (text) => dispatch(setSearchQuery(text)),\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(QuickSearchContainer);"],"sourceRoot":""}