UNPKG

vue-instantsearch-ssr

Version:

👀 Lightning-fast Algolia search for Vue apps

3 lines (2 loc) • 4.39 kB
import{createSuitMixin as t}from"../mixins/suit.js";import{createWidgetMixin as e}from"../mixins/widget.js";import{connectPagination as s}from"instantsearch.js/es/connectors/index.js";import{createPanelConsumerMixin as a}from"../mixins/panel.js";export default{render:function(){var t,e,s,a,i=this,n=i.$createElement,r=i._self._c||n;return i.state?r("div",{class:i.suit()},[i._t("default",[r("ul",{class:i.suit("list")},[i.showFirst?r("li",{class:(t={},t[i.suit("item")]=!0,t[i.suit("item","firstPage")]=!0,t[i.suit("item","disabled")]=i.state.isFirstPage,t)},[i._t("first",[i.state.isFirstPage?[r("span",{class:i.suit("link"),attrs:{"aria-label":"First"}},[i._v("‹‹")])]:[r("a",{class:i.suit("link"),attrs:{"aria-label":"First",href:i.state.createURL(0)},on:{click:function(t){return t.preventDefault(),i.refine(0)}}},[i._v("‹‹")])]],{createURL:function(){return i.state.createURL(0)},isFirstPage:i.state.isFirstPage,refine:function(){return i.refine(0)}})],2):i._e(),i._v(" "),i.showPrevious?r("li",{class:(e={},e[i.suit("item")]=!0,e[i.suit("item","previousPage")]=!0,e[i.suit("item","disabled")]=i.state.isFirstPage,e)},[i._t("previous",[i.state.isFirstPage?[r("span",{class:i.suit("link"),attrs:{"aria-label":"Previous"}},[i._v("‹")])]:[r("a",{class:i.suit("link"),attrs:{"aria-label":"Previous",href:i.state.createURL(i.state.currentRefinement-1)},on:{click:function(t){return t.preventDefault(),i.refine(i.state.currentRefinement-1)}}},[i._v("‹")])]],{createURL:function(){return i.state.createURL(i.state.currentRefinement-1)},isFirstPage:i.state.isFirstPage,refine:function(){return i.refine(i.state.currentRefinement-1)}})],2):i._e(),i._v(" "),i._l(i.state.pages,function(t){var e;return r("li",{key:t,class:(e={},e[i.suit("item")]=!0,e[i.suit("item","selected")]=i.state.currentRefinement===t,e)},[i._t("item",[r("a",{class:i.suit("link"),attrs:{href:i.state.createURL(t)},on:{click:function(e){return e.preventDefault(),i.refine(t)}}},[i._v(i._s(t+1))])],{page:t,createURL:function(){return i.state.createURL(t)},isFirstPage:i.state.isFirstPage,isLastPage:i.state.isLastPage,refine:function(){return i.refine(t)}})],2)}),i._v(" "),i.showNext?r("li",{class:(s={},s[i.suit("item")]=!0,s[i.suit("item","nextPage")]=!0,s[i.suit("item","disabled")]=i.state.isLastPage,s)},[i._t("next",[i.state.isLastPage?[r("span",{class:i.suit("link"),attrs:{"aria-label":"Next"}},[i._v("›")])]:[r("a",{class:i.suit("link"),attrs:{"aria-label":"Next",href:i.state.createURL(i.state.currentRefinement+1)},on:{click:function(t){return t.preventDefault(),i.refine(i.state.currentRefinement+1)}}},[i._v("›")])]],{createURL:function(){return i.state.createURL(i.state.currentRefinement+1)},isLastPage:i.state.isLastPage,refine:function(){return i.refine(i.state.currentRefinement+1)}})],2):i._e(),i._v(" "),i.showLast?r("li",{class:(a={},a[i.suit("item")]=!0,a[i.suit("item","lastPage")]=!0,a[i.suit("item","disabled")]=i.state.isLastPage,a)},[i._t("last",[i.state.isLastPage?[r("span",{class:i.suit("link"),attrs:{"aria-label":"Last"}},[i._v("››")])]:[r("a",{class:i.suit("link"),attrs:{"aria-label":"Last",href:i.state.createURL(i.state.nbPages-1)},on:{click:function(t){return t.preventDefault(),i.refine(i.state.nbPages-1)}}},[i._v("››")])]],{createURL:function(){return i.state.createURL(i.state.nbPages-1)},isLastPage:i.state.isLastPage,refine:function(){return i.refine(i.state.nbPages-1)}})],2):i._e()],2)],{refine:i.refine,createURL:i.state.createURL,currentRefinement:i.state.currentRefinement,nbHits:i.state.nbHits,nbPages:i.state.nbPages,pages:i.state.pages,isFirstPage:i.state.isFirstPage,isLastPage:i.state.isLastPage})],2):i._e()},staticRenderFns:[],name:"AisPagination",mixins:[t({name:"Pagination"}),e({connector:s}),a({mapStateToCanRefine:function(t){return t.nbPages>1}})],props:{padding:{type:Number,default:void 0,validator:function(t){return t>0}},totalPages:{type:Number,default:void 0,validator:function(t){return t>0}},showFirst:{type:Boolean,default:!0},showLast:{type:Boolean,default:!0},showNext:{type:Boolean,default:!0},showPrevious:{type:Boolean,default:!0}},computed:{widgetParams:function(){return{padding:this.padding,totalPages:this.totalPages}}},emits:["page-change"],methods:{refine:function(t){var e=Math.min(Math.max(t,0),this.state.nbPages-1);this.state.refine(e),this.$emit("page-change",e)}}}; //# sourceMappingURL=Pagination.vue.js.map