{"version":3,"sources":["webpack://@verndale/toolkit/./node_modules/@coveo/headless/dist/browser/ sync","webpack://@verndale/toolkit/./src/js/coveo/components/CoveoSearchInput/SearchInput.jsx","webpack://@verndale/toolkit/./src/js/coveo/components/DidYouMean/index.jsx","webpack://@verndale/toolkit/./src/js/coveo/components/CoveoSearchInput/index.jsx","webpack://@verndale/toolkit/./src/js/coveo/engine/Engine.js","webpack://@verndale/toolkit/./src/js/coveo/modules/HeaderSearch/SearchSuggestions.jsx","webpack://@verndale/toolkit/./src/js/coveo/modules/HeaderSearch/HeaderSearchBox.jsx","webpack://@verndale/toolkit/./src/js/coveo/modules/HeaderSearch/index.jsx","webpack://@verndale/toolkit/./src/js/coveo/state/context.js","webpack://@verndale/toolkit/./src/js/hooks/useClickOutside.jsx"],"names":["webpackEmptyContext","req","module","props","placeholder","controller","useButton","showIcon","allowEmptyQueries","state","setState","useState","expanded","setExpanded","isEnterKey","e","useEffect","redirectTo","value","analytics","data","handleQuerySubmit","submitGoogleEvent","ref","useOutsideClick","searchTerm","eventData","React","suggestion","onCorrectionClick","didYouMeanString","coveoOrganizationId","coveoAccessToken","coveoSearchHub","coveoPipeline","coveoRedirectUrl","coveoNumberOfSuggestions","coveoEngine","searchInputPlaceholder","searchShowIcon","searchShowDidYouMean","engine","useMemo","buildEngine","searchController","buildStandaloneSearchBox","buildSearchBox","didYouMeanController","buildDidYouMean","SearchInput","DidYouMean","correction","postprocessSearchResponse","response","result","postprocessFacetSearchResponse","postprocessQuerySuggestSearchResponse","preprocessRequest","request","clientOrigin","body","organizationId","accessToken","searchHub","pipeline","buildSearchEngine","commonConfigurator","coveoCommonConfig","commonEngine","nearbyColumnHeadless","nearbyColumnEngineConfig","nearbyColumnEngine","SearchSuggestions","className","text","suggestedResultsLabel","onClickedSuggestion","numberOfSuggestions","resultsPageUrl","resultsPageLinkLabel","useContext","SearchContext","getHighlightedSuggestion","textValue","regex","match","facetSearchValue","HeaderSearchBox","suggestionsController","onInputChange","hasSuggestions","setHasSuggestions","coveoSearchResultsPageUrl","elementRef","useRef","isExpanded","setIsExpanded","searchState","setSearchState","searchInputValue","setSearchInputValue","handleClickedSuggestions","buildFieldSuggestions","handleSearchButtonClicked","CoveoSearchInput","createContext","callback","handleClick","event"],"mappings":"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","file":"Areas/SunriseSeniorLiving/Scripts/8202.dc007d82af2d8c549997.bundle.js","sourcesContent":["function webpackEmptyContext(req) {\n\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\te.code = 'MODULE_NOT_FOUND';\n\tthrow e;\n}\nwebpackEmptyContext.keys = function() { return []; };\nwebpackEmptyContext.resolve = webpackEmptyContext;\nwebpackEmptyContext.id = 73373;\nmodule.exports = webpackEmptyContext;","import React, { useState, useEffect } from 'react';\nimport useOutsideClick from '../../../hooks/useClickOutside';\n\nconst SearchBox = props => {\n  const {\n    placeholder = '',\n    controller,\n    useButton = true,\n    showIcon = false,\n    allowEmptyQueries = false\n  } = props;\n  const [state, setState] = useState(controller.state);\n  const [expanded, setExpanded] = useState(false);\n  const isEnterKey = e => e.key === 'Enter';\n\n  useEffect(() => {\n    controller.subscribe(() => {\n      setState(controller.state);\n      const { redirectTo, value, analytics } = controller.state;\n      if (redirectTo) {\n        const { redirectTo, value, analytics } = controller.state;\n        const data = JSON.stringify({ value, analytics });\n        localStorage.setItem('coveo_standalone_search_box_data', data);\n        window.location.href = redirectTo;\n        return null;\n      }\n    });\n  }, []);\n\n  const handleQuerySubmit = e => {\n    if (e.target.value.length === 0 && !allowEmptyQueries) {\n      return;\n    }\n\n    submitGoogleEvent(controller.state.value);\n\n    controller.submit();\n  };\n\n  const ref = useOutsideClick(() => {\n    setExpanded(false);\n  });\n\n  const submitGoogleEvent = (searchTerm) => {\n    const eventData = {\n      event: \"search\",\n      detailed_event: \"Search\",\n      event_data: {\n        identifier: \"site_search\",\n        name: \"site_search\",\n        corrected_term: searchTerm,\n        search_term: searchTerm,\n        search_type: \"site_search\"\n      }\n    };\n    \n    window.dataLayer = window.dataLayer || [];\n    window.dataLayer.push({ event_data: null });\n    window.dataLayer.push(eventData);\n  };\n\n  return (\n    <div className=\"fields__wrapper\">\n      <div className=\"field\">\n        <div className=\"field__input-label-wrapper\">\n          <div className=\"field__input-and-icon\" ref={ref}>\n            {showIcon && (\n              <svg\n                viewBox=\"0 0 31 33\"\n                width=\"31\"\n                height=\"33\"\n                role=\"presentation\"\n              >\n                <use xlinkHref=\"#search\"></use>\n              </svg>\n            )}\n            <input\n              className=\"field__input\"\n              value={state.value}\n              onChange={e => {\n                if (e.target.value.length > 0 && !expanded) {\n                  setExpanded(true);\n                }\n                controller.updateText(e.target.value);\n              }}\n              onKeyDown={e => isEnterKey(e) && handleQuerySubmit(e)}\n              placeholder={placeholder}\n            />\n          </div>\n          {state.suggestions.length > 0 && expanded && (\n            <ul className=\"field__input-suggestions\">\n              {state.suggestions.map(suggestion => {\n                const value = suggestion.rawValue;\n                return (\n                  <li\n                    className=\"field__input-suggestion\"\n                    key={value}\n                    onClick={() => { submitGoogleEvent(value); controller.selectSuggestion(value); }}\n                  >\n                    {value}\n                  </li>\n                );\n              })}\n            </ul>\n          )}\n        </div>\n      </div>\n      {useButton && (\n        <button\n          className=\"btn btn--submit\"\n          type=\"button\"\n          disabled={allowEmptyQueries ? false : state.value.length === 0}\n          onClick={() => { submitGoogleEvent(controller.state.value); controller.submit(); }}\n        >\n          <span className=\"btn__label\">Search</span>\n        </button>\n      )}\n    </div>\n  );\n};\n\nexport default SearchBox;\n","import React, { useEffect, useState } from 'react';\n\nconst DidYouMean = ({\n  controller,\n  onCorrectionClick = () => {},\n  didYouMeanString\n}) => {\n  const [state, setState] = useState(controller.state);\n\n  useEffect(() => controller.subscribe(() => setState(controller.state)), []);\n\n  if (!state.hasQueryCorrection) {\n    return null;\n  }\n\n  if (state.wasAutomaticallyCorrected) {\n    return (\n      <div className=\"search-masthead-headless__did-you-mean\">\n        {didYouMeanString}{' '}\n        <button type=\"button\" onClick={() => controller.applyCorrection()}>\n          <span className=\"coveo-did-you-mean-word-correction\">\n            {state.wasCorrectedTo}\n          </span>\n        </button>\n      </div>\n    );\n  }\n\n  return (\n    <div className=\"search-masthead-headless__did-you-mean\">\n      {didYouMeanString}{' '}\n      <button type=\"button\" onClick={() => controller.applyCorrection()}>\n        <span className=\"search-masthead-headless__did-you-mean-word-correction\">\n          {state.queryCorrection.correctedQuery}\n        </span>\n      </button>\n    </div>\n  );\n};\n\nexport default DidYouMean;\n","import React, { useMemo, useEffect } from 'react';\nimport { buildSearchBox, buildStandaloneSearchBox, buildDidYouMean } from '@coveo/headless';\nimport SearchInput from './SearchInput';\nimport { buildEngine } from '../../engine/Engine';\nimport DidYouMean from '../../components/DidYouMean';\n\nconst CoveoSearchInput = props => {\n  const {\n    coveoOrganizationId,\n    coveoAccessToken,\n    coveoSearchHub,\n    coveoPipeline,\n    coveoRedirectUrl,\n    coveoNumberOfSuggestions = 0,\n    coveoEngine = null,\n    searchInputPlaceholder = 'Search',\n    searchShowIcon = null,\n    searchShowDidYouMean = true,\n    allowEmptyQueries = false,\n    didYouMeanString = 'Did you mean',\n    useButton = true,\n  } = props;\n\n  let engine;\n  if (coveoEngine === null && coveoOrganizationId && coveoAccessToken) {\n    engine = useMemo(() => {\n      return buildEngine({\n        organizationId: coveoOrganizationId,\n        accessToken: coveoAccessToken,\n        searchHub: coveoSearchHub,\n        pipeline: coveoPipeline\n      });\n    }, []);\n  } else if (coveoEngine !== null) {\n    engine = useMemo(() => coveoEngine, [coveoEngine]);\n  }\n\n  let searchController;\n  if (coveoRedirectUrl && coveoRedirectUrl !== '') {\n    searchController = useMemo(\n      () =>\n        buildStandaloneSearchBox(engine, {\n          options: {\n            numberOfSuggestions: parseInt(coveoNumberOfSuggestions) || 0,\n            redirectionUrl: coveoRedirectUrl\n          }\n        }),\n      []\n    );\n  } else {\n    searchController = useMemo(\n      () =>\n        buildSearchBox(engine, {\n          options: {\n            numberOfSuggestions: parseInt(coveoNumberOfSuggestions) || 0\n          }\n        }),\n      []\n    );\n  }\n\n  const didYouMeanController = buildDidYouMean(engine);\n\n  const handleCorrectionClick = correction => {\n    searchController.updateText(correction);\n    searchController.submit();\n  };\n\n  return (\n    <>\n      <div className=\"coveo-search-input-headless\">\n        <SearchInput\n          controller={searchController}\n          placeholder={searchInputPlaceholder}\n          useButton={useButton}\n          showIcon={\n            (searchShowIcon && searchShowIcon !== 'false') ||\n            searchShowIcon === 'true'\n          }\n          allowEmptyQueries={allowEmptyQueries}\n        />\n        {((searchShowDidYouMean && searchShowDidYouMean !== 'false') ||\n          searchShowDidYouMean === 'true') && (\n          <DidYouMean\n            didYouMeanString={didYouMeanString}\n            controller={didYouMeanController}\n            onCorrectionClick={handleCorrectionClick}\n          />\n        )}\n      </div>\n    </>\n  );\n};\n\nexport default CoveoSearchInput;\n","import { buildSearchEngine } from '@coveo/headless';\n\nconst postprocessSearchResponse = response => {\n  response.body?.results.forEach(result => result);\n  return response;\n};\n\nconst postprocessFacetSearchResponse = response => {\n  return response;\n};\n\nconst postprocessQuerySuggestSearchResponse = response => {\n  return response;\n};\n\nconst preprocessRequest = (request, clientOrigin) => {\n  if (global.preProcessRequest) {\n    if (clientOrigin === 'searchApiFetch' && request.body) {\n      const body = global.preProcessRequest(request.body.toString());\n      request.body = body;\n    }\n  }\n\n  if (clientOrigin === 'analyticsFetch') {\n    // E.g., send data to a third party\n  }\n\n  return request;\n};\n\nconst buildEngine = ({ organizationId, accessToken, searchHub, pipeline }) => {\n  const headlessEngine = buildSearchEngine({\n    configuration: {\n      organizationId: organizationId,\n      accessToken: accessToken,\n      search: {\n        searchHub: searchHub,\n        pipeline: pipeline,\n        preprocessSearchResponseMiddleware: postprocessSearchResponse,\n        preprocessFacetSearchResponseMiddleware: postprocessFacetSearchResponse,\n        preprocessQuerySuggestResponseMiddleware:\n          postprocessQuerySuggestSearchResponse\n      },\n      analytics: {\n        originLevel3: document.referrer ? document.referrer : 'no-referrer'\n      },\n      preprocessRequest\n    }\n  });\n\n  return headlessEngine;\n};\n\nconst commonConfigurator = document.querySelector(\n  '.coveo-common-engine-configurator'\n);\n\nconst coveoCommonConfig = {};\nlet commonEngine = null;\n\nif (commonConfigurator) {\n  coveoCommonConfig.organizationId =\n    commonConfigurator.dataset.coveoOrganizationId;\n  coveoCommonConfig.accessToken = commonConfigurator.dataset.coveoAccessToken;\n  coveoCommonConfig.searchHub = commonConfigurator.dataset.coveoSearchHub;\n  coveoCommonConfig.pipeline = commonConfigurator.dataset.coveoPipeline;\n\n  commonEngine = buildSearchEngine({\n    configuration: {\n      organizationId: coveoCommonConfig.organizationId,\n      accessToken: coveoCommonConfig.accessToken,\n      search: {\n        searchHub: coveoCommonConfig.searchHub,\n        pipeline: coveoCommonConfig.pipeline,\n        preprocessSearchResponseMiddleware: postprocessSearchResponse,\n        preprocessFacetSearchResponseMiddleware: postprocessFacetSearchResponse,\n        preprocessQuerySuggestResponseMiddleware:\n          postprocessQuerySuggestSearchResponse\n      },\n      analytics: {\n        originLevel3: document.referrer ? document.referrer : 'no-referrer'\n      },\n      preprocessRequest\n    }\n  });\n}\n\nconst nearbyColumnHeadless = document.querySelector(\n  '.nearby-communities-supporting-column-headless > div'\n);\n\nconst nearbyColumnEngineConfig = {};\nlet nearbyColumnEngine = null;\n\nif (nearbyColumnHeadless) {\n  nearbyColumnEngineConfig.organizationId =\n    nearbyColumnHeadless.dataset.coveoOrganizationId;\n  nearbyColumnEngineConfig.accessToken =\n    nearbyColumnHeadless.dataset.coveoAccessToken;\n  nearbyColumnEngineConfig.searchHub =\n    nearbyColumnHeadless.dataset.coveoSearchHub;\n  nearbyColumnEngineConfig.pipeline =\n    nearbyColumnHeadless.dataset.coveoPipeline;\n\n  nearbyColumnEngine = buildSearchEngine({\n    configuration: {\n      organizationId: nearbyColumnEngineConfig.organizationId,\n      accessToken: nearbyColumnEngineConfig.accessToken,\n      search: {\n        searchHub: nearbyColumnEngineConfig.searchHub,\n        pipeline: nearbyColumnEngineConfig.pipeline,\n        preprocessSearchResponseMiddleware: postprocessSearchResponse,\n        preprocessFacetSearchResponseMiddleware: postprocessFacetSearchResponse,\n        preprocessQuerySuggestResponseMiddleware:\n          postprocessQuerySuggestSearchResponse\n      },\n      analytics: {\n        originLevel3: document.referrer ? document.referrer : 'no-referrer'\n      },\n      preprocessRequest\n    }\n  });\n}\n\nexport { buildEngine, commonEngine, nearbyColumnEngine };\n","import React, { useEffect, useState, useContext } from 'react';\nimport SearchContext from '../../state/context';\n\nconst SearchSuggestions = ({\n  controller,\n  className = '',\n  text,\n  suggestedResultsLabel\n}) => {\n  const [state, setState] = useState(controller.state);\n\n  const {\n    onClickedSuggestion,\n    numberOfSuggestions,\n    resultsPageUrl,\n    resultsPageLinkLabel\n  } = useContext(SearchContext);\n\n  useEffect(() => {\n    controller.subscribe(() => setState(controller.state));\n  }, []);\n\n  useEffect(() => {\n    if (text === '') {\n      controller.clear();\n      return;\n    }\n    controller.updateText(text);\n  }, [text]);\n\n  const getHighlightedSuggestion = textValue => {\n    const regex = new RegExp(text, 'gi');\n    return textValue.replace(regex, match => `<strong>${match}</strong>`);\n  };\n\n  return (\n    <>\n      {state.values.length > 0 && (\n        <>\n          <div className={className}>\n            <div className=\"header-search-headless__coveo-suggestions-header\">\n              <svg viewBox=\"0 0 31 33\" height=\"30\" role=\"presentation\">\n                <use xlinkHref=\"#search\"></use>\n              </svg>\n              <span>{suggestedResultsLabel}</span>\n            </div>\n            <ul>\n              {state.values\n                .slice(0, numberOfSuggestions)\n                .map(facetSearchValue => (\n                  <li key={facetSearchValue.rawValue}>\n                    <button\n                      className=\"header-search-headless__coveo-suggestion\"\n                      onClick={() =>\n                        onClickedSuggestion(facetSearchValue.displayValue)\n                      }\n                    >\n                      <span\n                        dangerouslySetInnerHTML={{\n                          __html: getHighlightedSuggestion(\n                            facetSearchValue.displayValue\n                          )\n                        }}\n                      />\n                    </button>\n                  </li>\n                ))}\n            </ul>\n            <a\n              className=\"header-search-headless__coveo-result-list-footer\"\n              href={resultsPageUrl ? resultsPageUrl : '#'}\n            >\n              <div className=\"header-search-headless__coveo-result-list-footer--link\">\n                <span>{resultsPageLinkLabel}</span>\n                <svg viewBox=\"0 0 11 18\" height=\"18\" role=\"presentation\">\n                  <use xlinkHref=\"#arrow-right\"></use>\n                </svg>\n              </div>\n            </a>\n          </div>\n        </>\n      )}\n    </>\n  );\n};\n\nexport default SearchSuggestions;\n","import React, { useState, useEffect } from 'react';\nimport SearchSuggestions from './SearchSuggestions';\n\nconst HeaderSearchBox = ({\n  controller,\n  className,\n  placeholder,\n  suggestionsController,\n  onInputChange,\n  suggestedResultsLabel,\n  allowEmptyQueries = 'true'\n}) => {\n  const [state, setState] = useState(controller.state);\n  const [hasSuggestions, setHasSuggestions] = useState(false);\n  const isEnterKey = e => e.key === 'Enter';\n\n  useEffect(() => {\n    controller.subscribe(() => {\n      setState(controller.state);\n    });\n    suggestionsController.subscribe(() => {\n      if (suggestionsController.state.values.length > 0 && !hasSuggestions)\n        setHasSuggestions(true);\n      else if (suggestionsController.state.values.length == 0)\n        setHasSuggestions(false);\n    });\n  }, []);\n\n  return (\n    <div className={className}>\n      <input\n        value={state.value}\n        onChange={e => {\n          onInputChange(e.target.value);\n          controller.updateText(e.target.value);\n        }}\n        onKeyDown={e => {\n          if (e.target.value.length === 0 && !(allowEmptyQueries === 'true')) {\n            return;\n          }\n          isEnterKey(e) && controller.submit();\n        }}\n        placeholder={placeholder}\n      />\n      <>\n        <SearchSuggestions\n          suggestedResultsLabel={suggestedResultsLabel}\n          controller={suggestionsController}\n          text={state.value}\n          className=\"header-search-headlesss__coveo-suggestions-container\"\n        />\n      </>\n    </div>\n  );\n};\n\nexport default HeaderSearchBox;\n","import React, { useEffect, useState, useMemo, useRef } from 'react';\nimport { buildEngine } from '../../engine/Engine';\nimport { buildFieldSuggestions, buildStandaloneSearchBox } from '@coveo/headless';\nimport HeaderSearchBox from './HeaderSearchBox';\nimport SearchContext from '../../state/context';\nimport useOutsideClick from '../../../hooks/useClickOutside';\nimport CoveoSearchInput from '../../components/CoveoSearchInput';\n\nconst HeaderSearch = ({\n  coveoNumberOfSuggestions = '4',\n  resultsPageLinkLabel = 'All Results',\n  suggestedResultsLabel = 'Suggested Results',\n  placeholder = 'Type to search...',\n  coveoSearchResultsPageUrl = '/',\n  coveoOrganizationId,\n  coveoAccessToken,\n  coveoSearchHub,\n  coveoPipeline,\n  allowEmptyQueries\n}) => {\n  const elementRef = useRef(null);\n  const engine = useMemo(() => {\n    return buildEngine({\n      organizationId: coveoOrganizationId,\n      accessToken: coveoAccessToken,\n      searchHub: coveoSearchHub,\n      pipeline: coveoPipeline\n    });\n  }, []);\n\n  const searchController = useMemo(\n    () =>\n      buildStandaloneSearchBox(engine, {\n        options: {\n          numberOfSuggestions: 0,\n          redirectionUrl: coveoSearchResultsPageUrl\n        }\n      }),\n    []\n  );\n  const [isExpanded, setIsExpanded] = useState(false);\n  const [searchState, setSearchState] = useState(searchController.state);\n  const [searchInputValue, setSearchInputValue] = useState('');\n\n  const handleClickedSuggestions = suggestion => {\n    searchController.updateText(suggestion);\n    searchController.submit();\n  };\n\n  const suggestionsController = useMemo(\n    () =>\n      buildFieldSuggestions(engine, {\n        options: {\n          facet: {\n            field: 'ssl_heading',\n            facetId: 'ssl-heading-1'\n          }\n        }\n      }),\n    []\n  );\n\n  useEffect(() => {\n    searchController.subscribe(() => {\n      setSearchState(searchController.state);\n\n      if (searchController.state.redirectTo) {\n        const { redirectTo, value, analytics } = searchController.state;\n        const data = JSON.stringify({ value, analytics });\n        localStorage.setItem('coveo_standalone_search_box_data', data);\n\n        if (redirectTo !== coveoSearchResultsPageUrl) {\n          window.location.href = redirectTo;\n        } else {\n          window.location.href = redirectTo;\n        }\n      }\n    });\n  }, []);\n\n  const handleSearchButtonClicked = () => {\n    if (isExpanded) {\n      ref.current.parentElement.classList.remove('header-search-headless--active');\n      ref.current.closest('.header')?.classList?.remove('header-search-headless--active');\n    } else {\n      ref.current.parentElement?.classList?.add('header-search-headless--active');\n      ref.current.closest('.header')?.classList?.add('header-search-headless--active');\n      setTimeout(() => { ref.current.querySelector('input').focus(); }, 1000);\n    }\n    setIsExpanded(!isExpanded);\n  };\n\n  const ref = useOutsideClick(() => {\n    ref.current.parentElement?.classList?.remove('header-search-headless--active');\n    ref.current.closest('.header')?.classList?.remove('header-search-headless--active');\n    setIsExpanded(false);\n  });\n\n  return (\n    <>\n      <SearchContext.Provider\n        value={{\n          engine: engine,\n          onClickedSuggestion: handleClickedSuggestions,\n          numberOfSuggestions: coveoNumberOfSuggestions,\n          resultsPageUrl: coveoSearchResultsPageUrl,\n          resultsPageLinkLabel: resultsPageLinkLabel\n        }}\n      >\n        <div ref={ref} className=\"header-search-headless__coveo-search-bar\">\n          <button className=\"header-search-headless__coveo-search-btn\" aria-label=\"Search\" onClick={() => { handleSearchButtonClicked(); }}>\n            <svg viewBox=\"0 0 31 33\" height=\"30\" role=\"presentation\">\n              <use xlinkHref=\"#search\"></use>\n            </svg>\n            <span className=\"header-search-headless__label\">Search</span>\n          </button>\n\n          <CoveoSearchInput\n            coveoNumberOfSuggestions={coveoNumberOfSuggestions}\n            coveoEngine={engine}\n            searchShowIcon={false}\n            useButton={false}\n            searchInputPlaceholder={placeholder}\n            allowEmptyQueries={allowEmptyQueries === 'true' ? true : false}\n            didYouMeanString=\"Did you mean\"\n            coveoRedirectUrl=\"/search\"\n          />\n\n          <button className=\"header-search-headless__coveo-close-btn\" aria-label=\"Close Search\"\n            onClick={() => {\n              searchController.clear();\n              ref.current.parentElement.classList.remove('header-search-headless--active');\n              ref.current.closest('.header').classList.remove('header-search-headless--active');\n              setSearchInputValue('');\n              setIsExpanded(false);\n            }}\n          >\n            <svg viewBox=\"0 0 25 25\" height=\"25\" role=\"presentation\">\n              <use xlinkHref=\"#close\"></use>\n            </svg>\n          </button>\n        </div>\n      </SearchContext.Provider>\n    </>\n  );\n};\n\nexport default HeaderSearch;","import { createContext } from 'react';\n\nconst SearchContext = createContext();\n\nexport default SearchContext;\n","import { useEffect, useRef } from 'react';\n\nconst useOutsideClick = callback => {\n  const ref = useRef();\n\n  useEffect(() => {\n    const handleClick = event => {\n      if (ref.current && !ref.current.contains(event.target)) {\n        callback();\n      }\n    };\n\n    document.addEventListener('click', handleClick);\n\n    return () => {\n      document.removeEventListener('click', handleClick);\n    };\n  }, [ref]);\n\n  return ref;\n};\n\nexport default useOutsideClick;\n"],"sourceRoot":""}