{"version":3,"sources":["webpack:///./scripts/Components/Filterbar/styles|lazy|/^\\.\\/.*\\.scss$/|groupOptions: {}|namespace object","webpack:///./scripts/Components/Filterbar/FilterTogglerButton.js","webpack:///./scripts/Components/Filterbar/ListingLayoutTogglers.js","webpack:///./scripts/Actions/ProductsView.action.js","webpack:///./scripts/Components/Filterbar/FilterBar.js","webpack:///./scripts/Components/SideMenu.js","webpack:///./styles/exports/wtg.module.scss","webpack:///./scripts/Hooks/useIsMobile.js","webpack:///./scripts/Hooks/useWindowSize.js","webpack:///../node_modules/clsx/dist/clsx.mjs"],"names":["map","webpackAsyncContext","req","__webpack_require__","o","Promise","resolve","then","e","Error","code","ids","id","keys","Object","module","exports","FilterTogglerButton","facetedSearchState","useSelector","state","facetedSearch","activeFiltersCount","facetFilters","f","selectedOptions","length","reduce","a","b","filterMenuOpen","setFilterMenuOpen","useState","activeFilterGroup","setActiveFilterGroup","isLoading","setIsLoading","isMobile","useIsMobile","filterGroups","dispatch","useDispatch","headerRef","React","className","onClick","translate","footer","clearSelectedFilters","forEach","submitSearchFacet","totalCount","filterGroup","key","label","openSpecificFilterGroup","filtergrpId","SideMenu","open","onClosed","FacetedSearch","openedFacet","window","__litium","themeName","TogglerOption","activeOption","text","icon","iconActive","ListingLayoutTogglers","listType","productsView","setActiveOption","post","type","PRODUCTS_SET_LIST_TYPE","payload","setListType","LIST_TYPE_GALLERY","Icon","iconCode","iconClass","LIST_TYPE_TABLE","FilterBar","forwardRef","duration","from","showCloseButton","children","title","disableClosing","closeButton","languageSwitcher","messageBar","ref","slideIn","setSlideIn","timeoutId","setTimeoutId","close","useCallback","useEffect","updateOverlay","clearTimeout","newTimeoutId","setTimeout","undefined","substr","removeOverlay","addOverlay","ReactDOM","style","transitionDuration","cloneElement","props","currentChannel","document","body","breakpoint","parseInt","breakpoints","replace","windowWidth","initialWidth","innerWidth","initialHeight","innerHeight","size","setSize","useLayoutEffect","updateSize","addEventListener","removeEventListener","useWindowSize","setIsMobile","r","t","n","Array","isArray","arguments"],"mappings":"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","file":"6738.d363a27493d3faec3846.js","sourcesContent":["var map = {\n\t\"./alf.scss\": [\n\t\t41451,\n\t\t1451\n\t],\n\t\"./main.scss\": [\n\t\t28785,\n\t\t8785\n\t],\n\t\"./oh-poppy.scss\": [\n\t\t1242,\n\t\t1242\n\t],\n\t\"./vincent.scss\": [\n\t\t30106,\n\t\t106\n\t],\n\t\"./wtg.scss\": [\n\t\t79236,\n\t\t9236\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn __webpack_require__.e(ids[1]).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 76172;\nmodule.exports = webpackAsyncContext;","import React, { useEffect, useState } from 'react';\nimport { useDispatch, useSelector } from 'react-redux';\nimport {\n searchFacetChange,\n submitSearchFacet,\n updateFilterOption,\n} from '../../Actions/FacetedSearch.action';\nimport SideMenu from '../SideMenu';\nimport FacetedSearch from '../FacetedSearch';\nimport Icon from '../IconBase/Icon';\nimport { translate } from '../../Services/translation';\nimport useIsMobile from '../../Hooks/useIsMobile';\n\nconst FilterTogglerButton = () => {\n const facetedSearchState = useSelector((state) => state.facetedSearch);\n const activeFiltersCount = facetedSearchState.facetFilters\n .map((f) => f.selectedOptions.length)\n .reduce((a, b) => a + b, 0);\n const [filterMenuOpen, setFilterMenuOpen] = useState(false);\n const [activeFilterGroup, setActiveFilterGroup] = useState(null);\n const [isLoading, setIsLoading] = useState(false);\n const isMobile = useIsMobile();\n const filterGroups = facetedSearchState.facetFilters;\n const dispatch = useDispatch();\n const clearSelectedFilters = () => {\n // Set all selectedOptions to an empty array\n setIsLoading(true);\n filterGroups.forEach((f) => (f.selectedOptions = []));\n dispatch(submitSearchFacet(filterGroups));\n setFilterMenuOpen(false);\n };\n\n const headerRef = (\n
setFilterMenuOpen(false)}>\n {translate('category.filter')}\n
\n );\n\n const openSpecificFilterGroup = (filtergrpId) => {\n setActiveFilterGroup(filtergrpId);\n setFilterMenuOpen(!filterMenuOpen);\n };\n\n const footer = (\n
\n \n setFilterMenuOpen(false)}\n >\n {\n \n {translate('global.show')}{' '}\n {facetedSearchState.totalCount > 0 &&\n '(' + facetedSearchState.totalCount + ')'}\n \n }\n \n
\n );\n\n return (\n <>\n {isMobile ? (\n setFilterMenuOpen(!filterMenuOpen)}\n >\n {translate('category.filter')}\n {activeFiltersCount > 0 && (\n {activeFiltersCount}\n )}\n \n ) : (\n <>\n {filterGroups.map((filterGroup) => (\n openSpecificFilterGroup(filterGroup.id)}\n >\n {filterGroup.label}{' '}\n {filterGroup.selectedOptions.length > 0 ? (\n \n {filterGroup.selectedOptions.length}\n \n ) : null}\n \n ))}\n \n )}\n setFilterMenuOpen(false)}\n >\n \n \n \n );\n};\n\nexport default FilterTogglerButton;\n","import React, { useState } from 'react';\nimport Icon from '../IconBase/Icon';\nimport { translate } from '../../Services/translation';\nimport {\n LIST_TYPE_GALLERY,\n LIST_TYPE_LIST,\n LIST_TYPE_TABLE,\n} from '../ProductsView/ProductsView';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { setListType } from '../../Actions/ProductsView.action';\nimport(`./styles/${window.__litium.themeName}.scss`);\n\nconst TogglerOption = ({\n id,\n onClick,\n activeOption,\n text,\n icon,\n iconActive,\n}) => {\n return (\n onClick(id)}\n className={\n activeOption == id\n ? 'product-sorting__view-options--button product-sorting__view-options--button--active'\n : 'product-sorting__view-options--button'\n }\n >\n {activeOption == id ? iconActive : icon}\n {text}\n \n );\n};\n\nconst ListingLayoutTogglers = () => {\n const { listType } = useSelector((state) => state.productsView);\n const dispatch = useDispatch();\n\n const setActiveOption = (id) => {\n dispatch(setListType(id));\n };\n\n return (\n <>\n }\n iconActive={\n \n }\n onClick={(id) => setActiveOption(id)}\n />\n }\n iconActive={\n \n }\n onClick={(id) => setActiveOption(id)}\n />\n \n );\n};\n\nexport default ListingLayoutTogglers;\n","import { post } from '../Services/http';\nimport {\n PRODUCTS_RECEIVE_PRODUCTS_WRAPPER,\n PRODUCTS_SET_LIST_TYPE,\n PRODUCTS_SET_IS_LOADING,\n} from '../constants';\n\nexport const setListType = (listType) => {\n // Fire and forget\n post(`/api/productsview/setListType?listType=${listType}`);\n\n return {\n type: PRODUCTS_SET_LIST_TYPE,\n payload: {\n listType,\n },\n };\n};\n\nexport const receiveProductsWrapper = (productsWrapper) => ({\n type: PRODUCTS_RECEIVE_PRODUCTS_WRAPPER,\n payload: {\n productsWrapper,\n },\n});\n\nexport const setProductsLoading = (isLoading) => ({\n type: PRODUCTS_SET_IS_LOADING,\n payload: {\n isLoading,\n },\n});\n","import React from 'react';\nimport { useSelector } from 'react-redux';\nimport { translate } from '../../Services/translation';\nimport FilterTogglerButton from './FilterTogglerButton';\nimport ListingLayoutTogglers from './ListingLayoutTogglers';\nimport(`./styles/${window.__litium.themeName}.scss`);\n\nconst FilterBar = () => {\n const facetedSearchState = useSelector((state) => state.facetedSearch);\n\n return (\n <>\n
\n \n
\n
\n
\n {facetedSearchState?.totalCount}{' '}\n {translate('category-filter.results')}\n
\n
\n \n
\n
\n \n );\n};\n\nexport default FilterBar;\n","import React, {\n cloneElement,\n createElement,\n createRef,\n forwardRef,\n useCallback,\n useEffect,\n useState,\n} from 'react';\nimport ReactDOM, { render } from 'react-dom';\nimport { useDispatch } from 'react-redux';\nimport {\n addOverlay,\n removeOverlay,\n updateOverlay,\n} from '../Actions/Overlay.action';\nimport Icon from './IconBase/Icon';\n// import colors from 'Exports/colors.scss';\n\nexport default forwardRef(\n (\n {\n id,\n duration = '0.2s',\n from = 'right',\n className,\n open,\n onClosed,\n showCloseButton = true,\n children,\n title,\n headerRef,\n footer,\n disableClosing = false,\n closeButton = null,\n languageSwitcher = null,\n messageBar = null,\n },\n ref\n ) => {\n const [slideIn, setSlideIn] = useState();\n const [timeoutId, setTimeoutId] = useState();\n const dispatch = useDispatch();\n\n if (!id || id == '') {\n throw new Error(\n 'A unique side-menu \"id\" must be passed to side menu component'\n );\n }\n\n const close = useCallback(() => {\n if (!disableClosing) {\n // Just sets \"slideIn\" to false, which triggers the animation to close it\n setSlideIn(false);\n return true;\n }\n\n // False disables overlay click\n return false;\n }, [disableClosing]);\n\n useEffect(() => {\n dispatch(updateOverlay(id, close));\n }, [dispatch, close, id]);\n\n useEffect(() => {\n if (!slideIn) {\n // If not slide in, slide out :^)\n if (timeoutId) {\n // Clear previous timeout to avoid animation delay bug\n clearTimeout(timeoutId);\n }\n\n var newTimeoutId = setTimeout(() => {\n setTimeoutId(undefined);\n onClosed && onClosed();\n }, duration.substr(0, duration.length - 1) * 1000);\n\n setTimeoutId(newTimeoutId);\n dispatch(removeOverlay(id));\n }\n }, [slideIn]);\n\n useEffect(() => {\n // Triggered every time \"open\" is changed, initially as well\n // Timeout to not trigger on the same frame as the render, to enable the slide-in\n\n setTimeout(() => setSlideIn(open), 1);\n\n if (open) {\n dispatch(addOverlay(id, close));\n }\n }, [open]);\n\n return open\n ? ReactDOM.createPortal(\n \n {headerRef && (\n
\n {showCloseButton &&\n !disableClosing &&\n (!closeButton ? (\n \n ) : (\n cloneElement(closeButton, {\n onClick: close,\n })\n ))}\n {languageSwitcher?.props.currentChannel\n ? languageSwitcher\n : null}\n {headerRef}\n
\n )}\n {!headerRef &&\n showCloseButton &&\n !disableClosing &&\n (!closeButton ? (\n \n ) : (\n cloneElement(closeButton, {\n onClick: close,\n })\n ))}\n {title &&

{title}

}\n {messageBar && (\n
{messageBar}
\n )}\n
{children}
\n {footer &&
{footer}
}\n ,\n document.body\n )\n : null;\n }\n);\n","// extracted by mini-css-extract-plugin\nexport default {\"xsmall\":\"0\",\"small\":\"480px\",\"medium\":\"768px\",\"large\":\"1024px\",\"xlarge\":\"1440px\",\"sitelarge\":\"1656px\",\"xxlarge\":\"1920px\"};","import React, { useEffect } from 'react';\nimport breakpoints from '../../styles/exports/wtg.module.scss';\nimport useWindowSize from './useWindowSize';\n\nconst MOBILE_BREAKPOINT = 'large'; // below large = mobile\n\nconst useIsMobile = (breakpoint = MOBILE_BREAKPOINT) => {\n breakpoint = parseInt(breakpoints[breakpoint].replace('px', ''));\n\n const [windowWidth] = useWindowSize();\n const [isMobile, setIsMobile] = React.useState(windowWidth <= breakpoint - 1);\n\n useEffect(() => {\n setIsMobile(windowWidth <= breakpoint - 1);\n }, [windowWidth, breakpoint]);\n\n return isMobile;\n};\n\nexport default useIsMobile;\n","import { useState, useLayoutEffect } from 'react';\n\nexport default function () {\n var initialWidth = window && window.innerWidth ? window.innerWidth : 0;\n var initialHeight = window && window.innerHeight ? window.innerHeight : 0;\n const [size, setSize] = useState([initialWidth, initialHeight]);\n useLayoutEffect(() => {\n function updateSize() {\n setSize([window.innerWidth, window.innerHeight]);\n }\n window.addEventListener('resize', updateSize);\n updateSize();\n return () => window.removeEventListener('resize', updateSize);\n }, []);\n return size;\n}\n","function r(e){var t,f,n=\"\";if(\"string\"==typeof e||\"number\"==typeof e)n+=e;else if(\"object\"==typeof e)if(Array.isArray(e)){var o=e.length;for(t=0;t