{"version":3,"sources":["webpack:///./Scripts/Components/FacetedSearchCompact.js","webpack:///./Scripts/Containers/Accordion.container.js","webpack:///./Scripts/Components/SubNavCompact.js","webpack:///./Scripts/Components/SortCriteriaCompact.js","webpack:///./Scripts/Components/FilterTags.js","webpack:///./Scripts/Containers/FacetedSearchCompact.container.js"],"names":["FacetedFilterCheckbox","item","group","onFacetChange","className","type","onChange","event","checked","selectedOptions","id","label","FacetedSearchCompact","facetFilters","visibleDropdownMenu","toggleVisibleDropdownMenu","onSubmit","groupIndex","array","options","length","key","role","onClick","itemIndex","translate","AccordionPanel","props","Accordion","index","state","e","this","setState","prevState","accordions","React","Children","toArray","children","activeClass","headers","accordion","Math","floor","icon","handleClick","header","panels","Component","displaySubNav","subnav","name","url","isSelected","links","href","SubNavCompact","subNavigation","SortCriteriaCompact","sortCriteria","selectedOption","sort","selected","value","window","location","target","text","FilterTags","searchFacetChange","navigationTheme","selectedFacetGroup","filter","selectedFacetOption","accumulator","groupOptions","option","FacetedSearchCompactContainer","query","search","substr","newFilters","updateFilterOption","dom","undefined","container","document","createElement","innerHTML","existingResult","querySelector","tempResult","existingFilter","replace","node","newNode","parentNode","replaceChild","__litium","bootstrapComponents","productViewCached","cache","PRODUCT_VIEW_CACHED","used","productsView","onSearchResultDataChange","facetProps","facetState","empty","subNavigations","sortCriterias","sortItems","arr","nextProp","productsViewCachedId","connect","facetedSearch","dispatch","q","withHtmlResult","allFilters","submitSearchFacet"],"mappings":"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","file":"21.3c5ebc55ee76b2c38198.js","sourcesContent":["import React, { Fragment } from 'react';\r\nimport { translate } from \"../Services/translation\";\r\n\r\nconst FacetedSearchCompact = ({facetFilters, visibleDropdownMenu, toggleVisibleDropdownMenu, onFacetChange, onSubmit}) => (\r\n \r\n)\r\n\r\nconst FacetedFilterCheckbox = ({item, group, onFacetChange}) => (\r\n\r\n \r\n)\r\n\r\nexport default FacetedSearchCompact;\r\n","import React, { Component } from 'react';\r\n\r\nexport const AccordionPanel = (props) => props;\r\n\r\nexport class Accordion extends Component {\r\n constructor(props) {\r\n super(props);\r\n const {index = -1} = props;\r\n this.state = {\r\n index,\r\n };\r\n }\r\n handleClick(e, index) {\r\n this.setState((prevState, props) => ({\r\n ...prevState,\r\n index: index===prevState.index ? -1 : index,\r\n }));\r\n }\r\n render() {\r\n const accordions = React.Children.toArray(this.props.children);\r\n const activeClass = index => this.state.index===index ? 'active' : '';\r\n const headers = accordions.map((accordion, index) =>\r\n
\r\n
this.handleClick(e, index)}>\r\n {accordion.props.header||''}\r\n
\r\n
\r\n );\r\n const panels = accordions.map((accordion, index) =>\r\n
\r\n {accordion.props.children}\r\n
\r\n );\r\n return (\r\n
\r\n \r\n {panels}\r\n
\r\n );\r\n }\r\n}","import React, { Fragment } from 'react';\r\nimport { translate } from '../Services/translation';\r\n\r\nconst SubNavCompact = ({subNavigation}) => (\r\n \r\n \r\n \r\n)\r\n\r\nconst displaySubNav = subnav => (subnav &&\r\n \r\n)\r\n\r\nexport default SubNavCompact;","import React, { Fragment } from 'react';\r\n\r\nconst SortCriteriaCompact = ({sortCriteria}) => {\r\n const selectedOption = [...sortCriteria.filter(sort => sort.selected === true), {} ][0];\r\n return (\r\n
\r\n \r\n
\r\n)};\r\n\r\nexport default SortCriteriaCompact;","import React, { Fragment } from 'react';\r\nimport { translate } from '../Services/translation';\r\n\r\nconst FilterTags = (({facetFilters, searchFacetChange, navigationTheme}) => {\r\n const selectedFacetGroup = facetFilters.filter(filter => filter.selectedOptions.length>0);\r\n const selectedFacetOption = selectedFacetGroup.reduce((accumulator, group) => {\r\n if (!group) {\r\n return accumulator;\r\n }\r\n const {options, selectedOptions} = group;\r\n const groupOptions = options.filter(option => selectedOptions.includes(option.id)).map(option=>({...option, group}));\r\n return [\r\n ...accumulator,\r\n ...groupOptions\r\n ];\r\n }, []);\r\n return ( selectedFacetGroup.length === 0 ? null :\r\n
\r\n \r\n {translate('search.yourfilter')} : \r\n {selectedFacetGroup && selectedFacetGroup.map((group, index) =>\r\n searchFacetChange(group)} key={`group-${index}`}> {group.label} \r\n )}\r\n \r\n {navigationTheme === 'category' &&\r\n \r\n {translate('search.yourfilter')} : \r\n {selectedFacetOption && selectedFacetOption.map((option, index) =>\r\n searchFacetChange(option.group, option)} key={`option-${index}`}> {option.label} \r\n )}\r\n \r\n }\r\n
\r\n)})\r\n\r\nexport default FilterTags;","import React, { Component, Fragment } from 'react';\r\nimport { connect } from 'react-redux';\r\nimport FacetedSearchCompact from '../Components/FacetedSearchCompact';\r\nimport {AccordionPanel, Accordion} from './Accordion.container';\r\nimport { query, submitSearchFacet, toggleVisibleDropdownMenu, searchFacetChange } from '../Actions/FacetedSearch.action';\r\nimport SubNav from '../Components/SubNavCompact';\r\nimport SortCriteriaCompact from '../Components/SortCriteriaCompact';\r\nimport FilterTag from '../Components/FilterTags';\r\nimport { translate } from '../Services/translation';\r\nimport { PRODUCT_VIEW_CACHED, updateFilterOption } from '../Actions/FacetedSearch.action';\r\n\r\nclass FacetedSearchCompactContainer extends Component {\r\n constructor(props) {\r\n super(props);\r\n const {facetFilters} = props;\r\n this.state = {\r\n facetFilters,\r\n };\r\n }\r\n\r\n componentDidMount() {\r\n this.props.query(window.location.search.substr(1) || '', false);\r\n }\r\n\r\n onFacetChange (filter, option) {\r\n this.setState((prevState, props) => {\r\n const { facetFilters } = this.state;\r\n const newFilters = updateFilterOption(facetFilters, filter, option);\r\n return {\r\n ...prevState,\r\n facetFilters: newFilters,\r\n };\r\n });\r\n }\r\n\r\n static getDerivedStateFromProps(nextProp, prevState) {\r\n if (nextProp.productsViewCachedId !== prevState.productsViewCachedId) {\r\n return {\r\n ...prevState,\r\n ...nextProp,\r\n }\r\n }\r\n return prevState;\r\n }\r\n\r\n onSearchResultDataChange(dom) {\r\n if ( [null, undefined].includes(dom) ) {\r\n return;\r\n }\r\n const container = document.createElement('div');\r\n container.innerHTML = dom;\r\n const existingResult = document.querySelector(\"#search-result\");\r\n const tempResult = container.querySelector(\"#search-result\");\r\n const existingFilter = existingResult.querySelector('#facetedSearchCompact');\r\n const tempFilter = tempResult.querySelector('#facetedSearchCompact');\r\n const replace = (node, newNode) => node.parentNode.replaceChild(newNode, node);\r\n // move existingFilter from existingResult to tempResult\r\n replace(tempFilter, existingFilter);\r\n // replace existingResult with tempResult ( newResult )\r\n replace(existingResult, tempResult);\r\n // bootstrap react components if any exists in the search result\r\n window.__litium.bootstrapComponents();\r\n }\r\n\r\n componentDidUpdate() {\r\n const productViewCached = window.__litium.cache ? window.__litium.cache[PRODUCT_VIEW_CACHED] || {} : {};\r\n if (!productViewCached.used) {\r\n productViewCached.used = true;\r\n const dom = productViewCached.productsView;\r\n dom && this.onSearchResultDataChange(dom);\r\n }\r\n }\r\n\r\n render() {\r\n const {\r\n subNavigation,\r\n sortCriteria,\r\n navigationTheme='',\r\n ...facetProps\r\n } = this.props;\r\n const { facetFilters } = this.state;\r\n const facetState = {\r\n ...facetProps,\r\n facetFilters,\r\n onFacetChange: (filter, option) => this.onFacetChange(filter, option),\r\n };\r\n const empty = array => !(array && array.length);\r\n const subNavigations = !subNavigation ? null : [subNavigation];\r\n const sortCriterias = !sortCriteria || !sortCriteria.sortItems ? null : sortCriteria.sortItems;\r\n const hidden = [subNavigations, facetFilters, sortCriterias].every(arr => empty(arr));\r\n return ( hidden ? null :\r\n \r\n \r\n \r\n {!empty(subNavigations) && subNavigations[0].links.length > 0 &&\r\n \r\n \r\n \r\n }\r\n {!empty(facetFilters) &&\r\n \r\n \r\n \r\n }\r\n {!empty(sortCriterias) &&\r\n \r\n \r\n \r\n }\r\n \r\n {navigationTheme==='category' && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n );\r\n }\r\n}\r\n\r\nconst mapStateToProps = ({facetedSearch:{subNavigation, sortCriteria, facetFilters, visibleDropdownMenu, navigationTheme, productsViewCachedId}}) => {\r\n return {\r\n subNavigation,\r\n sortCriteria,\r\n facetFilters,\r\n visibleDropdownMenu,\r\n navigationTheme,\r\n productsViewCachedId,\r\n }\r\n}\r\n\r\nconst mapDispatchToProps = dispatch => {\r\n return {\r\n query: (q, withHtmlResult) => dispatch(query(q, withHtmlResult)),\r\n onSubmit: (allFilters) => dispatch(submitSearchFacet(allFilters)),\r\n toggleVisibleDropdownMenu: (group) => dispatch(toggleVisibleDropdownMenu(group)),\r\n searchFacetChange: (group, item) => dispatch(searchFacetChange(group, item)),\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(FacetedSearchCompactContainer);"],"sourceRoot":""}