@blossom-carousel/vue
Version:
A native-scroll-first carousel component for Vue.
2 lines (1 loc) • 968 B
JavaScript
(function(o,e){typeof exports=="object"&&typeof module<"u"?e(exports,require("vue")):typeof define=="function"&&define.amd?define(["exports","vue"],e):(o=typeof globalThis<"u"?globalThis:o||self,e(o.BlossomCarousel={},o.Vue))})(this,function(o,e){"use strict";const i={__name:"BlossomCarousel",props:{as:{type:String,default:"div"},load:{type:String,default:"conditional"}},setup(s,{expose:a}){const u=s,n=e.shallowRef(null);a({el:n});let t=null;return e.onMounted(async()=>{if(!window.matchMedia("(hover: hover) and (pointer: fine)").matches&&u.load!=="always")return;const{Blossom:l}=await import("@blossom-carousel/core");t=l(n.value),t.init()}),e.onBeforeUnmount(()=>{t==null||t.destroy()}),(r,l)=>(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.as),{ref_key:"root",ref:n,"blossom-carousel":"true"},{default:e.withCtx(()=>[e.renderSlot(r.$slots,"default")]),_:3},512))}};o.BlossomCarousel=i,Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});