PageSourceSearch

https://www.guide-des-landes.com/modules/algolia/scripts/v-algolia.min.js?v=1789120539

js guide-des-landes.com collected 2026-09-24 10:15:33 UTC 6,514 bytes, 40 lines download raw bytes

1var vAlgolia=function(){var i,e=!1,a=null,r={fr:{searchBoxPlaceholder:"Que recherchez vous ?",statsTextTpl:function(e,t){return t`<strong>${e.nbHits}</strong>
2								${1<e.nbHits?" résultats trouvés ":" résultat trouvé"}
3								${""!=e.query?t` pour <strong>${e.query}</strong>`:""}`},pages:"Autres pages",articles:"Top Expériences",places:"Adresses",categories:"Rubrique",events:"Evènements",minLength:"Merci de saisir au moins 3 caractères..."},en:{searchBoxPlaceholder:"What are you looking for?",statsTextTpl:function(e,t){return t`<strong>${e.nbHits}</strong>
4								${1<e.nbHits?" results found ":" result found"}
5								${""!=e.query?t` for <strong>${e.query}</strong>`:""}`},pages:"Other pages",articles:"Top Experiences",places:"Places",categories:"Category",events:"Events",minLength:"Please enter at least 3 characters..."},es:{searchBoxPlaceholder:"¿Qué busca?",statsTextTpl:function(e,t){return t`<strong>${e.nbHits}</strong>
6								${1<e.nbHits?" resultados encontrados ":" resultado encontrado"}
7								${""!=e.query?t` para <strong>${e.query}</strong>`:""}`},pages:"Otras páginas",articles:"Experiencias imprescindibles",places:"Direcciones",categories:"Sección",events:"Eventos",minLength:"Por Favor introduzca al menos 3 caracteres..."}},n={pages:"ico-document",articles:"icon-blog",places:"ico-marker",categories:"ico-label",events:"icon-calendar"};return{template:`<div class="v-algolia" :class="{ opened: opened }" v-on:click="!opened ? open() : null">
8						<div class="v-algolia-searchbox" ref="searchbox"></div>
9						<a class="v-algolia-closer ico-cross" @click.stop="close" v-if="opened"></a>
10						<div class="v-algolia-container" v-show="opened">
11							<div class="v-algolia-container-scrollable">
12								<div class="v-algolia-ui">
13									<div class="v-algolia-logo" v-if="logo"><span>Algolia</span></div>
14									<div class="v-algolia-propositions" v-show="emptyQuery && propositions && propositions.length">
15										<span class="v-algolia-proposition" v-for="(proposition, key) in propositions" :key="'prop-'+key"><a class="bouton flat" v-html="proposition" @click="setQuery(proposition)"></a></span>
16									</div>
17									<div class="v-algolia-message" ref="stats" v-show="message" v-html="message"></div>
18									<div class="v-algolia-stats" ref="stats" v-show="showResults"></div>
19									<div class="v-algolia-categories" ref="categories" v-show="showResults"></div>
20									<div class="v-algolia-hits" ref="hits" v-show="showResults"></div>
21								</div>
22							</div>
23							<div class="v-algolia-pagination" ref="pagination" v-show="showResults"></div>
24						</div>
25					</div>`,props:{enabled:[Boolean],index:[String],appId:[String],publicKey:[String],propositions:[Array],logo:[Boolean]},data:function(){return{opened:!1,inited:!1,currentQuery:"",tempSearchString:null}},computed:{currentIndex:function(){return this.index+"_"+LGG},emptyQuery:function(){return""==this.currentQuery},showResults:function(){return!this.emptyQuery&&3<=this.currentQuery.trim().length},message:function(){return this.currentQuery&&this.currentQuery.trim().length<3?r[LGG].minLength:null}},methods:{initSearch:function(){var t;i||(t=this,(i=instantsearch({indexName:t.currentIndex,searchClient:algoliasearch(t.appId,t.publicKey),insights:!0,numberLocale:LGG,searchFunction(e){t.currentQuery=e.state.query||"",e.state.query&&3<=e.state.query.trim().length&&e.search()}})).addWidgets([instantsearch.widgets.searchBox({container:t.$refs.searchbox,placeholder:r[LGG].searchBoxPlaceholder,showLoadingIndicator:!0,showSubmit:!1,queryHook:debounce(function(e,t){t(e)},500)})]),i.start())},init:function(){var s;this.inited||((s=this).initSearch(),i.addWidgets([instantsearch.widgets.refinementList({container:s.$refs.categories,attribute:"categories",sortBy:["count:desc","name:asc"],transformItems(e){return e.map(function(e){return e.label=r[LGG][e.value]||"...",e.icon=n[e.value]||null,e})},templates:{item(e,{html:t}){var{url:s,label:i,count:a,isRefined:r,icon:e}=e;return t`
26									<a href="${s}" class="${r?"select":""}${e?" "+e:""}">
27										<span>${i} (${a})</span>
28									</a>
29									`}}}),instantsearch.widgets.stats({container:s.$refs.stats,templates:{text(e,{html:t}){return 0===e.page&&e.query&&e.query!=a&&(a=e.query,s.trackSearch(e.query,e.nbHits)),r[LGG].statsTextTpl(e,t)}}}),instantsearch.widgets.hits({container:s.$refs.hits,templates:{item(e,{html:t,sendEvent:s}){return t`<div class="asearch-card${e.categories?" "+e.categories.join(" "):""}">
30										<a href="${e.permalink}" onClick="${()=>s("click",e,e.title)}" class="asearch-card-link">${e.title}</a>
31										${e.image_url?t`<img class="asearch-card-illust" src="${e.image_url.replace(/\.jpe?g$/i,".webp")}?v=algolia"/>`:""}
32										${e.icon_url?t`<span class="asearch-card-icon"><img src="${e.icon_url}"/></span>`:""}
33										${e.categories?t`<span class="asearch-card-category ${n[e.categories]}"><span>${r[LGG][e.categories]}</span></span>`:""}
34										<div class="asearch-card-content">
35											<h2 class="asearch-card-title">${e.title}</h2>
36											${e.subtitle?t`<p class="asearch-card-subtitle">${e.subtitle}</p>`:""}
37											<p class="asearch-card-overview">${e.overview}</p>
38										</div>
39									</div>
40									`},empty(e,{}){return null}}}),instantsearch.widgets.pagination({container:s.$refs.pagination,scrollTo:".v-algolia-ui"})]),this.inited=!0,e&&this.$nextTick(function(){this.focus()}),null!==this.tempSearchString&&this.$nextTick(function(){this.setQuery(this.tempSearchString)}))},open:function(){this.opened=!0},close:function(){this.opened=!1}
40,keyUp:function(e){27===e.keyCode&&this.close()},clickOut:function(e){var t,s,i;e&&(t=e.target,s=(i=this.$el.querySelector(".v-algolia-container-scrollable")).scrollHeight>i.clientHeight&&i.clientWidth+i.clientLeft-e.clientX<20,i=this.$el.querySelector(".v-algolia-ui"),0!==e.button||i===t||i.contains(t)||s||this.close())},resetQuery:function(){this.setQuery("")},setQuery:function(e){var t;i?((t={})[this.currentIndex]={query:e},i.setUiState(t),this.tempSearchString=null):this.tempSearchString=e},trackSearch:debounce(function(e,t){"undefined"!=typeof _paq&&_paq.push(["trackSiteSearch",e,!1,t])},1e3),focus(){i?document.querySelector(".ais-SearchBox-input").focus():e=!0}},watch:{opened:function(e){e?(this.init(),this.$emit("open")):this.$emit("close")},enabled:function(e){e&&this.$nextTick(this.initSearch)}},mounted:function(){},destroyed:function(){}}};Vue.component("v-algolia",vAlgolia());

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.