"use strict";(self.webpackChunkui=self.webpackChunkui||[]).push([[30],{60:function(e,t,s){var l=this&&this.__awaiter||function(e,t,s,l){return new(s||(s=Promise))((function(r,i){function n(e){try{c(l.next(e))}catch(e){i(e)}}function a(e){try{c(l.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?r(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(n,a)}c((l=l.apply(e,t||[])).next())}))},r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Search=function({onClose:e,useSharedState:t,isMobileSearchRoute:s}){const r=(0,c.useRef)(null),[o,p]=(0,c.useState)(""),[f,x]=(0,c.useState)(""),[g,m]=(0,c.useState)(),[j,v]=(0,c.useState)(),y=(0,c.useCallback)((()=>l(this,void 0,void 0,(function*(){var e;const t=yield(0,u.getLazyState)("popularProducts",{featured_products_section_selector:null!==(e=(0,u.getAssignment)("search-featured-products"))&&void 0!==e?e:""});v(t)}))),[v]),S=(0,c.useCallback)((e=>l(this,void 0,void 0,(function*(){const t={includeCollections:"enabled"===(0,u.getAssignment)("searchIncludeCollections"),includePages:"enabled"===(0,u.getAssignment)("searchIncludePages"),includeArticles:"enabled"===(0,u.getAssignment)("searchIncludeArticles")},s=yield(0,u.getLazyState)("search",{query:e,options:t});m(s)}))),[m]),b=(0,c.useCallback)((()=>{var e;p(""),null===(e=r.current)||void 0===e||e.focus()}),[p]);return(0,c.useEffect)((()=>{var e;null===(e=r.current)||void 0===e||e.focus(),y()}),[]),(0,c.useEffect)((()=>{const e=setTimeout((()=>{x(o.trim())}),200);return()=>clearTimeout(e)}),[o]),(0,c.useEffect)((()=>{f&&S(f)}),[f]),(0,i.jsx)(n.Fragment,{children:(0,i.jsxs)("div",{class:a.default.container,children:[(0,i.jsxs)("div",{class:a.default.bar,children:[(0,i.jsxs)("form",{class:a.default.inputContainer,onSubmit:e=>{if(e.preventDefault(),o.trim()){const e=`/search?q=${encodeURIComponent(o.trim())}`;s&&location.replace(e),window.location.href=e}},children:[(0,i.jsx)("input",{type:"search",placeholder:"Search",value:o,onInput:e=>p(e.currentTarget.value),ref:r,autofocus:!0}),o&&(0,i.jsx)("button",{type:"button",onClick:b,children:"Clear"}),(0,i.jsx)("button",{type:"submit",hidden:!0,children:"Search"})]}),(0,i.jsx)("button",{type:"button",onClick:e,class:a.default.closeButton,"aria-label":"Close search",children:(0,i.jsx)(d.CloseIcon,{iconClass:a.default.closeButton,size:"18px"})})]}),(0,i.jsx)(h,{searchQuery:o,searchResults:g,initialPopularResults:j,useSharedState:t,isMobileSearchRoute:s})]})})};const i=s(0),n=s(3),a=r(s(214)),c=s(2),u=s(1),o=s(48),d=s(74);function h({searchQuery:e,searchResults:t,initialPopularResults:s,useSharedState:l,isMobileSearchRoute:r}){return(0,i.jsxs)("div",{class:a.default.results,children:[(0,i.jsx)(p,{searchQuery:e,searchResults:t,initialPopularResults:s,isMobileSearchRoute:r}),(0,i.jsx)(x,{searchQuery:e,searchResults:t,initialPopularResults:s,useSharedState:l,isMobileSearchRoute:r})]})}function p({searchQuery:e,searchResults:t,initialPopularResults:s,isMobileSearchRoute:l}){var r;return(0,i.jsxs)("div",{class:a.default.queries,children:[(0,i.jsx)(f,{title:"Suggestions",items:null==t?void 0:t.queries,searchQuery:e,isMobileSearchRoute:l,getUrl:e=>`/search?q=${encodeURIComponent(e.text)}`,getKey:e=>e.styledText,getTitle:e=>e.text,getDisplayHtml:e=>e.styledText}),(0,i.jsx)(f,{title:"Collections",items:null==t?void 0:t.collections,searchQuery:e,isMobileSearchRoute:l,getUrl:e=>`/collections/${e.handle}`,getKey:e=>e.handle,getTitle:e=>e.title,getDisplayHtml:e=>e.title,maxItems:3}),(0,i.jsx)(f,{title:"Pages",items:null==t?void 0:t.pages,searchQuery:e,isMobileSearchRoute:l,getUrl:e=>`/pages/${e.handle}`,getKey:e=>e.handle,getTitle:e=>e.title,getDisplayHtml:e=>e.title,maxItems:3}),(0,i.jsx)(f,{title:"Articles",items:null==t?void 0:t.articles,searchQuery:e,isMobileSearchRoute:l,getUrl:e=>`/articles/${e.handle}`,getKey:e=>e.handle,getTitle:e=>e.title,getDisplayHtml:e=>e.title,maxItems:3}),s&&(null===(r=s.queries)||void 0===r?void 0:r.length)>0&&(0,i.jsxs)(n.Fragment,{children:[(0,i.jsx)("h6",{children:"Trending Search Terms"}),(0,i.jsx)("ul",{children:s.queries.map((e=>(0,i.jsx)("li",{children:(0,i.jsx)("a",{href:`/search?q=${encodeURIComponent(e.text)}`,dangerouslySetInnerHTML:{__html:e.styledText}})},e.styledText)))})]})]})}function f({title:e,items:t,searchQuery:s,isMobileSearchRoute:l,getUrl:r,getKey:c,getTitle:u,getDisplayHtml:o,maxItems:d}){if(!s||!t||0===t.length)return null;const h=d?t.slice(0,d):t;return(0,i.jsxs)(n.Fragment,{children:[(0,i.jsx)("h6",{children:e}),(0,i.jsx)("ul",{class:a.default.suggestions,children:h.map((e=>{const t=r(e);return(0,i.jsx)("li",{children:(0,i.jsx)("a",{title:u(e),href:t,onClick:e=>{l&&(e.preventDefault(),location.replace(t))},dangerouslySetInnerHTML:{__html:o(e)}})},c(e))}))})]})}function x({searchQuery:e,searchResults:t,initialPopularResults:s,useSharedState:l,isMobileSearchRoute:r}){var c,u;return(0,i.jsxs)("div",{class:a.default.productsContainer,children:[e&&t&&(0,i.jsx)(n.Fragment,{children:t.products.length>0?(0,i.jsxs)(n.Fragment,{children:[(0,i.jsxs)("div",{class:a.default.productsHeader,children:[(0,i.jsx)("h6",{children:"Products"}),(0,i.jsxs)("a",{href:`/search?q=${encodeURIComponent(e)}`,onClick:t=>{r&&(t.preventDefault(),location.replace(`/search?q=${encodeURIComponent(e)}`))},children:["View All ",t.productsTotalCount,' Results for "',e,'"']})]}),(0,i.jsx)("div",{class:a.default.productsGrid,children:t.products.map((e=>(0,i.jsx)(o.ProductCard,{product:e,collectionHandle:"search",sharedStateStore:l,replaceStateEnabled:r},e.id)))})]}):(0,i.jsxs)("div",{class:a.default.productsHeaderEmpty,children:[(0,i.jsx)("h6",{children:"No Results Found"}),(0,i.jsxs)("span",{children:["Sorry, we couldn't find \"",t.query,'"']})]})}),(!e||!(null===(c=null==t?void 0:t.products)||void 0===c?void 0:c.length))&&(null===(u=null==s?void 0:s.products)||void 0===u?void 0:u.length)&&(0,i.jsxs)(n.Fragment,{children:[(0,i.jsxs)("div",{class:a.default.productsHeader,children:[(0,i.jsx)("h6",{children:"Popular Products"}),s.productsViewAllUrl&&(0,i.jsx)("a",{href:s.productsViewAllUrl,children:"View All"})]}),(0,i.jsx)("div",{class:a.default.productsGrid,children:s.products.map((e=>(0,i.jsx)(o.ProductCard,{product:e,collectionHandle:"search",sharedStateStore:l,replaceStateEnabled:r},e.id)))})]})]})}}}]);