1import{a as G,_ as Y}from"./BYfOL9nw.js";import{a as L,b as Z,_ as J}from"./CVswU6C3.js";import{_ as K}from"./AmPNt4rF.js";import{e as C,I as b,s as d,i as n,k as l,y as R,g as k,t as y,h as e,F as X,O as ee,a6 as te,a3 as oe,S as se,Z as re,c as i,be as ne,r as ae,bH as ie,l as c,j as le,m as w,f as v,a1 as ue,ah as ce}from"#entry";import{u as de}from"./WTSGRRfm.js";import{u as pe,a as _e}from"./Dot95OYn.js";import"./Ds1R8kbg.js";import"./BL6B1D23.js";const j={es:{foundProducts:"Hemos encontrado {count} productos",forQuery:'para "{query}"',noResults:"No se encontraron productos con los filtros seleccionados.",filters:"Filtrar",seoTitle:"Búsqueda",seoTitleWithQuery:"Resultados: {query}",seoDescription:"Encuentra productos dentales en Dentaltix."},pt:{foundProducts:"Encontramos {count} produtos",forQuery:'para "{query}"',noResults:"Nenhum produto encontrado com os filtros selecionados.",filters:"Filtrar",seoTitle:"Pesquisa",seoTitleWithQuery:"Resultados: {query}",seoDescription:"Encontre produtos dentários na Dentaltix."},fr:{foundProducts:"Nous avons trouvé {count} produits",forQuery:'pour "{query}"',noResults:"Aucun produit trouvé avec les filtres sélectionnés.",filters:"Filtrer",seoTitle:"Recherche",seoTitleWithQuery:"Résultats : {query}",seoDescription:"Trouvez des produits dentaires sur Dentaltix."},en:{foundProducts:"We found {count} products",forQuery:'for "{query}"',noResults:"No products found with the selected filters.",filters:"Filter",seoTitle:"Search",seoTitleWithQuery:"Results: {query}",seoDescription:"Find dental products at Dentaltix."},it:{foundProducts:"Abbiamo trovato {count} prodotti",forQuery:'per "{query}"',noResults:"Nessun prodotto trovato con i filtri selezionati.",filters:"Filtra",seoTitle:"Ricerca",seoTitleWithQuery:"Risultati: {query}",seoDescription:"Trova prodotti dentali su Dentaltix."}},fe={class:"mb-4"},me={class:"text-sm text-gray-600"},ve=C({__name:"index",props:{total:{},query:{}},setup(u){const{t:r}=b({messages:j});return(a,T)=>(n(),d("div",fe,[l("p",me,[R(y(e(r)("foundProducts",{count:u.total}))+" ",1),u.query?(n(),d(X,{key:0},[R(y(e(r)("forQuery",{query:u.query})),1)],64)):k("",!0)])]))}}),ye=Object.assign(ve,{__name:"SearchResultHeader"}),he={class:"container mx-auto px-4 py-6"},ge={class:"flex gap-2 mb-4 lg:hidden"},xe={class:"p-4 w-72 overflow-y-auto h-full"},qe={class:"flex flex-col lg:flex-row gap-8"},be={class:"hidden lg:block w-56 shrink-0"},Re={class:"flex-1"},ke={key:3,class:"text-center py-12 text-gray-500"},Te={key:4,class:"flex justify-center mt-10"},Se=C({__name:"index",setup(u){const{t:r}=b({messages:j}),{locale:a}=b(),T=ee(),{accessToken:h}=te(oe()),{track:S}=ie(),{registerClick:I}=_e(),{registerSearch:N}=pe(),{filters:t,filterSidebarOpen:p,currentPage:g,updateFilters:D}=de({withQuery:!0,itemsPerPage:40});se({title:t.value.query?r("seoTitleWithQuery",{query:t.value.query}):r("seoTitle"),description:r("seoDescription"),noindex:!0});const U=i(()=>({query:t.value.query,lang:a.value,store:T.salesChannelCode||ue(a.value),page:t.value.page,limit:t.value.limit,sort:t.value.sort,categoryIds:t.value.categoryIds?.join(",")||void 0,brandIds:t.value.brandIds?.join(",")||void 0,promotionIds:t.value.promotionIds?.join(",")||void 0,ratings:t.value.ratings?.join(",")||void 0,priceMin:t.value.priceMin,priceMax:t.value.priceMax,deliveryTomorrow:t.value.deliveryTomorrow?"1":void 0})),{data:$,status:W}=re("/api/product/filter",{query:U,headers:i(()=>h.value?{Authorization:`Bearer ${h.value}`}:{}),watch:[h]},"$Y00oY_UEUt"),_=i(()=>$.value?.data??null),f=i(()=>W.value==="pending"),x=i(()=>_.value?.products??[]),q=i(()=>_.value?.total??0),B={categories:[],brands:[],promotions:[],ratings:[],delivery:[],priceRange:{min:0,max:1e4}},F=i(()=>_.value?.filters??B),P=ae(null);ne(()=>{const s=t.value.query,o=_.value?.total;!s||o===void 0||P.value!==s&&(P.value=s,S("search",{query:s,num_results:o}),N(s,a.value))});function E(s){const o=x.value.indexOf(s);I({dfid:s.dfid,locale:a.value,query:t.value.query,position:o>=0?o+1:void 0}),S("click",{type:"search_click",product_id:s.id,query:t.value.query})}return(s,o)=>{const O=G,Q=L,z=K,A=ye,H=J,M=Z,V=Y;return n(),d("div",he,[l("div",ge,[l("button",{type:"button",class:"flex-1 flex items-center justify-center gap-2 h-10 px-4 bg-gray-100 rounded text-primary font-medium",onClick:o[0]||(o[0]=m=>p.value=!0)},[R(y(e(r)("filters"))+" ",1),c(O,{size:14})])]),c(z,{open:e(p),"onUpdate:open":o[1]||(o[1]=m=>w(p)?p.value=m:null),position:"left"},{default:le(()=>[l("div",xe,[c(Q,{filters:e(t),"available-filters":e(F),loading:e(f),"onUpdate:filters":e(D)},null,8,["filters","available-filters","loading","onUpdate:filters"])])]),_:1},8,["open"]),l("div",qe,[l("aside",be,[c(Q,{filters:e(t),"available-filters":e(F),loading:e(f),"onUpdate:filters":e(D)},null,8,["filters","available-filters","loading","onUpdate:filters"])]),l("main",Re,[e
1(f)?k("",!0):(n(),v(A,{key:0,total:e(q),query:e(t).query},null,8,["total","query"])),e(f)?(n(),v(H,{key:1,count:12,"mobile-list-view":""})):e(x).length>0?(n(),v(M,{key:2,products:e(x),"mobile-list-view":"",onProductClick:E},null,8,["products"])):(n(),d("div",ke,y(e(r)("noResults")),1)),e(q)>0?(n(),d("div",Te,[c(V,{page:e(g),"onUpdate:page":o[2]||(o[2]=m=>w(g)?g.value=m:null),total:e(q),"items-per-page":e(t).limit||20},null,8,["page","total","items-per-page"])])):k("",!0)])])])}}}),De=Object.assign(Se,{__name:"SearchResult"}),Fe={};function Pe(u,r){const a=De;return n(),v(a)}const We=ce(Fe,[["render",Pe]]);export{We as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.