UNPKG

@aotearoan/neon

Version:

Neon is a lightweight design library of Vue 3 components with minimal dependencies.

3 lines (2 loc) 856 B
"use strict";const e=require("vue"),c=require("../../../common/enums/NeonPosition.cjs.js"),d=require("../../../common/utils/NeonClosableUtils.cjs.js"),f=e.defineComponent({name:"NeonDrawer",props:{open:{type:Boolean,required:!0},dismissible:{type:Boolean,default:!0},fullWidth:{type:Boolean,default:!1},position:{type:String,default:c.NeonPosition.Left},overlay:{type:Boolean,default:!0}},emits:["close"],setup(n,{emit:u}){const l=e.ref(null),o=e.ref(null),a=()=>{u("close")},r=()=>{n.open&&a()};return e.onMounted(()=>{n.dismissible&&(o.value=l.value&&new d.NeonClosableUtils(l.value,r)||null)}),e.watch(()=>n.open,t=>{var s,i;return t?(s=o.value)==null?void 0:s.open():(i=o.value)==null?void 0:i.close()},{immediate:!0}),e.onUnmounted(()=>{var t;(t=o.value)==null||t.destroy()}),{drawer:l}}});module.exports=f; //# sourceMappingURL=NeonDrawer.cjs.js.map