UNPKG

vue-instantsearch

Version:

👀 Lightning-fast Algolia search for Vue apps

2 lines (1 loc) • 1.15 kB
import{_ as t}from"@swc/helpers/_/_define_property";import e from"mitt";import"../util/vue-compat/index-vue2.js";var n="instantSearchPanelEmitter",i="PANEL_CHANGE_EVENT",r=function(){var r;return r={props:{emitter:{type:Object,required:!1,default:function(){return e()}}},provide:function(){return t({},n,this.emitter)},data:function(){return{canRefine:!0}},created:function(){var t=this;this.emitter.on(i,function(e){t.updateCanRefine(e)})}},t(r,"beforeDestroy",function(){this.emitter.all.clear()}),t(r,"methods",{updateCanRefine:function(t){this.canRefine=t}}),r},a=function(){var t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).mapStateToCanRefine,e=void 0===t?function(t){return Boolean(t.canRefine)}:t;return{inject:{emitter:{from:n,default:function(){return{emit:function(){}}}}},data:function(){return{state:null,hasAlreadyEmitted:!1}},watch:{state:{immediate:!0,handler:function(t,n){if(t){var r=e(n||{}),a=e(t);this.hasAlreadyEmitted&&r===a||(this.emitter.emit(i,a),this.hasAlreadyEmitted=!0)}}}}}};export{i as PANEL_CHANGE_EVENT,n as PANEL_EMITTER_NAMESPACE,a as createPanelConsumerMixin,r as createPanelProviderMixin};