@maas/vue-equipment 1.0.0-beta.13 → 1.0.0-beta.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/dist/nuxt/module.json +1 -1
  2. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue +65 -82
  3. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue.d.ts +2 -2
  4. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue +24 -30
  5. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue +65 -61
  6. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue.d.ts +1 -1
  7. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue +41 -45
  8. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue.d.ts +1 -1
  9. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue +137 -150
  10. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue.d.ts +1 -1
  11. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue +45 -52
  12. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue +80 -82
  13. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue.d.ts +1 -1
  14. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue +40 -47
  15. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue +68 -74
  16. package/dist/plugins/MagicCommand/src/components/MagicCommandRenderer.vue +22 -38
  17. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue +95 -85
  18. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue.d.ts +1 -1
  19. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue +41 -47
  20. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue.d.ts +1 -1
  21. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue +41 -39
  22. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue.d.ts +2 -2
  23. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue +23 -34
  24. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue +40 -73
  25. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue.d.ts +1 -1
  26. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue +70 -86
  27. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue.d.ts +14 -13
  28. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue +263 -303
  29. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue.d.ts +50 -49
  30. package/dist/plugins/MagicEmitter/src/composables/useMagicEmitter.d.ts +100 -100
  31. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue +41 -69
  32. package/dist/plugins/MagicMarquee/src/composables/useMagicMarquee.d.ts +1 -1
  33. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue +54 -59
  34. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue.d.ts +2 -2
  35. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue +188 -208
  36. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue.d.ts +3 -3
  37. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue +181 -194
  38. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue +91 -100
  39. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue.d.ts +1 -1
  40. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue +83 -85
  41. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue +79 -75
  42. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue.d.ts +1 -1
  43. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue +106 -105
  44. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue.d.ts +1 -1
  45. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue +54 -60
  46. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue.d.ts +1 -1
  47. package/dist/plugins/MagicModal/src/components/MagicModal.vue +137 -163
  48. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +9 -8
  49. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue +53 -78
  50. package/dist/plugins/MagicPie/src/components/MagicPie.vue +147 -175
  51. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudio.vue +49 -65
  52. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue +87 -129
  53. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue +33 -41
  54. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue +99 -109
  55. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue +47 -75
  56. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue +16 -31
  57. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue +43 -44
  58. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue +52 -109
  59. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideo.vue +65 -72
  60. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue +154 -225
  61. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.d.ts +1 -1
  62. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue +49 -59
  63. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue +63 -70
  64. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue +29 -33
  65. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +59 -69
  66. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue +81 -94
  67. package/dist/plugins/MagicToast/src/components/MagicToastView.vue +52 -70
  68. package/dist/plugins/MagicToast/src/components/MagicToastView.vue.d.ts +2 -2
  69. package/package.json +1 -1
  70. package/dist/plugins/MagicAccordion/demo/data/footer.json +0 -117
  71. package/dist/plugins/MagicCommand/demo/data/about.json +0 -3
  72. package/dist/plugins/MagicCommand/demo/data/search.json +0 -594
@@ -1,16 +1,63 @@
1
- <script>
2
- import { defineComponent as _defineComponent } from "vue";
3
- import { unref as _unref, renderSlot as _renderSlot, vShow as _vShow, withModifiers as _withModifiers, createElementVNode as _createElementVNode, withDirectives as _withDirectives, Transition as _Transition, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createElementBlock as _createElementBlock, resolveDynamicComponent as _resolveDynamicComponent, normalizeStyle as _normalizeStyle, createVNode as _createVNode, mergeProps as _mergeProps, Teleport as _Teleport } from "vue";
4
- const _hoisted_1 = ["data-id", "data-dragging", "data-wheeling", "data-disabled", "data-position"];
5
- const _hoisted_2 = {
6
- ref: "wrapper",
7
- class: "magic-drawer__wrapper"
8
- };
9
- const _hoisted_3 = { class: "magic-drawer__content" };
10
- const _hoisted_4 = {
11
- key: 0,
12
- class: "magic-drawer__overlay"
13
- };
1
+ <template>
2
+ <teleport
3
+ v-if="wrapperActive"
4
+ :to="mappedOptions.teleport?.target"
5
+ :disabled="mappedOptions.teleport?.disabled"
6
+ >
7
+ <div
8
+ ref="drawer"
9
+ class="magic-drawer"
10
+ :data-id="mappedId"
11
+ :data-dragging="dragging"
12
+ :data-wheeling="wheeling"
13
+ :data-disabled="disabled"
14
+ :data-position="mappedOptions.position"
15
+ v-bind="$attrs"
16
+ aria-modal="true"
17
+ >
18
+ <transition
19
+ v-if="mappedOptions.backdrop || !!$slots.backdrop"
20
+ :name="backdropTransition"
21
+ >
22
+ <div
23
+ v-show="innerActive"
24
+ class="magic-drawer__backdrop"
25
+ @click.self="guardedClose"
26
+ >
27
+ <slot name="backdrop" />
28
+ </div>
29
+ </transition>
30
+
31
+ <div ref="wrapper" class="magic-drawer__wrapper">
32
+ <transition
33
+ :name="contentTransition"
34
+ @before-leave="onBeforeLeave"
35
+ @leave="onLeave"
36
+ @after-leave="onAfterLeave"
37
+ @before-enter="onBeforeEnter"
38
+ @enter="onEnter"
39
+ @after-enter="onAfterEnter"
40
+ >
41
+ <div v-show="innerActive" class="magic-drawer__content">
42
+ <component
43
+ :is="mappedOptions.tag"
44
+ ref="el"
45
+ class="magic-drawer__drag"
46
+ :style="style"
47
+ @pointerdown="guardedPointerdown"
48
+ @click="guardedClick"
49
+ >
50
+ <slot />
51
+ <div v-if="hasDragged" class="magic-drawer__overlay" />
52
+ </component>
53
+ </div>
54
+ </transition>
55
+ </div>
56
+ </div>
57
+ </teleport>
58
+ </template>
59
+
60
+ <script setup>
14
61
  import {
15
62
  useTemplateRef,
16
63
  shallowRef,
@@ -44,300 +91,213 @@ import "@maas/vue-equipment/utils/css/animations/slide-ltr-out.css";
44
91
  import "@maas/vue-equipment/utils/css/animations/slide-rtl-out.css";
45
92
  import "@maas/vue-equipment/utils/css/animations/slide-ttb-out.css";
46
93
  import "@maas/vue-equipment/utils/css/animations/slide-btt-out.css";
47
- export default /* @__PURE__ */ _defineComponent({
48
- ...{
49
- inheritAttrs: false
50
- },
51
- __name: "MagicDrawer",
52
- props: {
53
- id: { type: null, required: true },
54
- options: { type: Object, required: false, default: () => ({}) }
94
+ defineOptions({
95
+ inheritAttrs: false
96
+ });
97
+ const customDefu = createDefu((obj, key, value) => {
98
+ if (key === "close" || key === "snapPoints") {
99
+ obj[key] = value;
100
+ return true;
101
+ }
102
+ });
103
+ const { options = {}, id } = defineProps({
104
+ id: {
105
+ type: null,
106
+ required: true
55
107
  },
56
- setup(__props) {
57
- const customDefu = createDefu((obj, key, value) => {
58
- if (key === "close" || key === "snapPoints") {
59
- obj[key] = value;
60
- return true;
61
- }
62
- });
63
- const mappedOptions = customDefu(__props.options, defaultOptions);
64
- const elRef = useTemplateRef("el");
65
- const drawerRef = useTemplateRef("drawer");
66
- const wrapperRef = useTemplateRef("wrapper");
67
- const {
68
- trapFocus,
69
- releaseFocus,
70
- lockScroll,
71
- unlockScroll,
72
- addScrollLockPadding,
73
- removeScrollLockPadding
74
- } = useDrawerDOM({
75
- focusTarget: drawerRef,
76
- focusTrap: mappedOptions.focusTrap
77
- });
78
- const { isActive, open, close } = useMagicDrawer(__props.id);
79
- const overshoot = shallowRef(0);
80
- const {
81
- position,
82
- snapPoints,
83
- threshold,
84
- animation,
85
- preventDragClose,
86
- initial
87
- } = mappedOptions;
88
- const disabled = computed(() => {
89
- if (__props.options.disabled === void 0) {
90
- return defaultOptions.disabled;
91
- } else {
92
- return __props.options.disabled;
93
- }
94
- });
95
- const { onPointerdown, onClick, style, hasDragged } = useDrawerDrag({
96
- id: __props.id,
97
- elRef,
98
- wrapperRef,
99
- position,
100
- snapPoints,
101
- threshold,
102
- overshoot,
103
- animation,
104
- initial,
105
- preventDragClose,
106
- disabled
107
- });
108
- const { initializeWheelListener, destroyWheelListener } = useDrawerWheel({
109
- id: __props.id,
110
- elRef,
111
- position,
112
- disabled
113
- });
114
- const { initializeState, deleteState } = useDrawerState(__props.id);
115
- const state = initializeState();
116
- const { dragging, wheeling } = toRefs(state);
117
- const innerActive = shallowRef(false);
118
- const wrapperActive = shallowRef(false);
119
- const wasActive = shallowRef(false);
120
- const {
121
- onBeforeEnter,
122
- onEnter,
123
- onAfterEnter,
124
- onBeforeLeave,
125
- onLeave,
126
- onAfterLeave
127
- } = useDrawerCallback({
128
- id: __props.id,
129
- mappedOptions,
130
- addScrollLockPadding,
131
- removeScrollLockPadding,
132
- lockScroll,
133
- unlockScroll,
134
- trapFocus,
135
- releaseFocus,
136
- wrapperActive,
137
- wasActive
138
- });
139
- useDrawerProgress({ id: __props.id, elRef, drawerRef, position, overshoot });
140
- const { resetMetaViewport } = useMetaViewport();
141
- const preventTransition = computed(() => {
142
- return mappedOptions.initial.open && !mappedOptions.initial.transition && !wasActive.value;
143
- });
144
- const backdropTransition = computed(() => {
145
- return preventTransition.value ? void 0 : mappedOptions.transition?.backdrop;
146
- });
147
- const contentTransition = computed(() => {
148
- return preventTransition.value ? void 0 : mappedOptions.transition?.content;
149
- });
150
- function convertToPixels(value) {
151
- const regex = /^(\d*\.?\d+)\s*(rem|px)$/;
152
- const match = value.match(regex);
153
- if (!match) {
154
- console.error(
155
- `--magic-drawer-drag-overshoot (${value}) needs to be specified in px or rem`
156
- );
157
- return 0;
158
- }
159
- const numericValue = parseFloat(match[1]);
160
- const unit = match[2];
161
- const bodyFontSize = window.getComputedStyle(document.body).fontSize;
162
- const rootFontSize = parseFloat(bodyFontSize) || 16;
163
- switch (unit) {
164
- case "rem":
165
- return numericValue * rootFontSize;
166
- case "px":
167
- return numericValue;
168
- }
169
- }
170
- async function onOpen() {
171
- wrapperActive.value = true;
172
- await nextTick();
173
- innerActive.value = true;
174
- await nextTick();
175
- if (mappedOptions.enableMousewheel) {
176
- initializeWheelListener();
177
- }
178
- }
179
- function onClose() {
180
- innerActive.value = false;
181
- if (mappedOptions.enableMousewheel) {
182
- destroyWheelListener();
183
- }
184
- }
185
- function guardedPointerdown(event) {
186
- if (!disabled.value) {
187
- onPointerdown(event);
188
- }
189
- }
190
- function guardedClick(event) {
191
- if (!disabled.value) {
192
- onClick(event);
193
- }
194
- }
195
- function guardedClose() {
196
- if (!disabled.value) {
197
- close();
198
- }
199
- }
200
- function saveOvershoot() {
201
- const element = unrefElement(drawerRef);
202
- if (!element) {
203
- return;
204
- }
205
- const overshootVar = getComputedStyle(element, null).getPropertyValue(
206
- "--magic-drawer-drag-overshoot"
207
- );
208
- overshoot.value = convertToPixels(overshootVar) || 0;
209
- }
210
- if (mappedOptions.keyListener.close) {
211
- for (const key of mappedOptions.keyListener.close) {
212
- onKeyStroke(key, (e) => {
213
- close();
214
- e.preventDefault();
215
- });
216
- }
217
- }
218
- watch(isActive, async (value) => {
219
- if (value) {
220
- await onOpen();
221
- } else {
222
- onClose();
223
- }
224
- });
225
- watch(innerActive, () => {
226
- saveOvershoot();
227
- });
228
- onBeforeMount(async () => {
229
- if (mappedOptions.initial.open) {
230
- open();
231
- }
232
- });
233
- onBeforeUnmount(() => {
108
+ options: {
109
+ type: Object,
110
+ required: false
111
+ }
112
+ });
113
+ const mappedOptions = customDefu(options, defaultOptions);
114
+ const mappedId = toValue(id);
115
+ const elRef = useTemplateRef("el");
116
+ const drawerRef = useTemplateRef("drawer");
117
+ const wrapperRef = useTemplateRef("wrapper");
118
+ const {
119
+ trapFocus,
120
+ releaseFocus,
121
+ lockScroll,
122
+ unlockScroll,
123
+ addScrollLockPadding,
124
+ removeScrollLockPadding
125
+ } = useDrawerDOM({
126
+ focusTarget: drawerRef,
127
+ focusTrap: mappedOptions.focusTrap
128
+ });
129
+ const { isActive, open, close } = useMagicDrawer(id);
130
+ const overshoot = shallowRef(0);
131
+ const {
132
+ position,
133
+ snapPoints,
134
+ threshold,
135
+ animation,
136
+ preventDragClose,
137
+ initial
138
+ } = mappedOptions;
139
+ const disabled = computed(() => {
140
+ if (options.disabled === void 0) {
141
+ return defaultOptions.disabled;
142
+ } else {
143
+ return options.disabled;
144
+ }
145
+ });
146
+ const { onPointerdown, onClick, style, hasDragged } = useDrawerDrag({
147
+ id,
148
+ elRef,
149
+ wrapperRef,
150
+ position,
151
+ snapPoints,
152
+ threshold,
153
+ overshoot,
154
+ animation,
155
+ initial,
156
+ preventDragClose,
157
+ disabled
158
+ });
159
+ const { initializeWheelListener, destroyWheelListener } = useDrawerWheel({
160
+ id,
161
+ elRef,
162
+ position,
163
+ disabled
164
+ });
165
+ const { initializeState, deleteState } = useDrawerState(id);
166
+ const state = initializeState();
167
+ const { dragging, wheeling } = toRefs(state);
168
+ const innerActive = shallowRef(false);
169
+ const wrapperActive = shallowRef(false);
170
+ const wasActive = shallowRef(false);
171
+ const {
172
+ onBeforeEnter,
173
+ onEnter,
174
+ onAfterEnter,
175
+ onBeforeLeave,
176
+ onLeave,
177
+ onAfterLeave
178
+ } = useDrawerCallback({
179
+ id,
180
+ mappedOptions,
181
+ addScrollLockPadding,
182
+ removeScrollLockPadding,
183
+ lockScroll,
184
+ unlockScroll,
185
+ trapFocus,
186
+ releaseFocus,
187
+ wrapperActive,
188
+ wasActive
189
+ });
190
+ useDrawerProgress({ id, elRef, drawerRef, position, overshoot });
191
+ const { resetMetaViewport } = useMetaViewport();
192
+ const preventTransition = computed(() => {
193
+ return mappedOptions.initial.open && !mappedOptions.initial.transition && !wasActive.value;
194
+ });
195
+ const backdropTransition = computed(() => {
196
+ return preventTransition.value ? void 0 : mappedOptions.transition?.backdrop;
197
+ });
198
+ const contentTransition = computed(() => {
199
+ return preventTransition.value ? void 0 : mappedOptions.transition?.content;
200
+ });
201
+ function convertToPixels(value) {
202
+ const regex = /^(\d*\.?\d+)\s*(rem|px)$/;
203
+ const match = value.match(regex);
204
+ if (!match) {
205
+ console.error(
206
+ `--magic-drawer-drag-overshoot (${value}) needs to be specified in px or rem`
207
+ );
208
+ return 0;
209
+ }
210
+ const numericValue = parseFloat(match[1]);
211
+ const unit = match[2];
212
+ const bodyFontSize = window.getComputedStyle(document.body).fontSize;
213
+ const rootFontSize = parseFloat(bodyFontSize) || 16;
214
+ switch (unit) {
215
+ case "rem":
216
+ return numericValue * rootFontSize;
217
+ case "px":
218
+ return numericValue;
219
+ }
220
+ }
221
+ async function onOpen() {
222
+ wrapperActive.value = true;
223
+ await nextTick();
224
+ innerActive.value = true;
225
+ await nextTick();
226
+ if (mappedOptions.enableMousewheel) {
227
+ initializeWheelListener();
228
+ }
229
+ }
230
+ function onClose() {
231
+ innerActive.value = false;
232
+ if (mappedOptions.enableMousewheel) {
233
+ destroyWheelListener();
234
+ }
235
+ }
236
+ function guardedPointerdown(event) {
237
+ if (!disabled.value) {
238
+ onPointerdown(event);
239
+ }
240
+ }
241
+ function guardedClick(event) {
242
+ if (!disabled.value) {
243
+ onClick(event);
244
+ }
245
+ }
246
+ function guardedClose() {
247
+ if (!disabled.value) {
248
+ close();
249
+ }
250
+ }
251
+ function saveOvershoot() {
252
+ const element = unrefElement(drawerRef);
253
+ if (!element) {
254
+ return;
255
+ }
256
+ const overshootVar = getComputedStyle(element, null).getPropertyValue(
257
+ "--magic-drawer-drag-overshoot"
258
+ );
259
+ overshoot.value = convertToPixels(overshootVar) || 0;
260
+ }
261
+ if (mappedOptions.keyListener.close) {
262
+ for (const key of mappedOptions.keyListener.close) {
263
+ onKeyStroke(key, (e) => {
234
264
  close();
265
+ e.preventDefault();
235
266
  });
236
- onUnmounted(() => {
237
- if (mappedOptions.scrollLock) {
238
- unlockScroll();
239
- if (typeof mappedOptions.scrollLock === "object" && mappedOptions.scrollLock.padding) {
240
- removeScrollLockPadding();
241
- }
242
- }
243
- if (mappedOptions.focusTrap) {
244
- releaseFocus();
245
- }
246
- if (!mappedOptions.preventZoom) {
247
- resetMetaViewport();
248
- }
249
- deleteState();
250
- });
251
- return (_ctx, _cache) => {
252
- return wrapperActive.value ? (_openBlock(), _createBlock(_Teleport, {
253
- key: 0,
254
- to: _unref(mappedOptions).teleport?.target,
255
- disabled: _unref(mappedOptions).teleport?.disabled
256
- }, [
257
- _createElementVNode("div", _mergeProps({
258
- ref: "drawer",
259
- class: "magic-drawer",
260
- "data-id": toValue(_ctx.id),
261
- "data-dragging": _unref(dragging),
262
- "data-wheeling": _unref(wheeling),
263
- "data-disabled": disabled.value,
264
- "data-position": _unref(mappedOptions).position
265
- }, _ctx.$attrs, { "aria-modal": "true" }), [
266
- _unref(mappedOptions).backdrop || !!_ctx.$slots.backdrop ? (_openBlock(), _createBlock(_Transition, {
267
- key: 0,
268
- name: backdropTransition.value,
269
- persisted: ""
270
- }, {
271
- default: _withCtx(() => [
272
- _withDirectives(_createElementVNode(
273
- "div",
274
- {
275
- class: "magic-drawer__backdrop",
276
- onClick: _withModifiers(guardedClose, ["self"])
277
- },
278
- [
279
- _renderSlot(_ctx.$slots, "backdrop")
280
- ],
281
- 512
282
- /* NEED_PATCH */
283
- ), [
284
- [_vShow, innerActive.value]
285
- ])
286
- ]),
287
- _: 3
288
- /* FORWARDED */
289
- }, 8, ["name"])) : _createCommentVNode("v-if", true),
290
- _createElementVNode(
291
- "div",
292
- _hoisted_2,
293
- [
294
- _createVNode(_Transition, {
295
- name: contentTransition.value,
296
- onBeforeLeave: _unref(onBeforeLeave),
297
- onLeave: _unref(onLeave),
298
- onAfterLeave: _unref(onAfterLeave),
299
- onBeforeEnter: _unref(onBeforeEnter),
300
- onEnter: _unref(onEnter),
301
- onAfterEnter: _unref(onAfterEnter),
302
- persisted: ""
303
- }, {
304
- default: _withCtx(() => [
305
- _withDirectives(_createElementVNode(
306
- "div",
307
- _hoisted_3,
308
- [
309
- (_openBlock(), _createBlock(_resolveDynamicComponent(_unref(mappedOptions).tag), {
310
- ref: "el",
311
- class: "magic-drawer__drag",
312
- style: _normalizeStyle(_unref(style)),
313
- onPointerdown: guardedPointerdown,
314
- onClick: guardedClick
315
- }, {
316
- default: _withCtx(() => [
317
- _renderSlot(_ctx.$slots, "default"),
318
- _unref(hasDragged) ? (_openBlock(), _createElementBlock("div", _hoisted_4)) : _createCommentVNode("v-if", true)
319
- ]),
320
- _: 3
321
- /* FORWARDED */
322
- }, 40, ["style"]))
323
- ],
324
- 512
325
- /* NEED_PATCH */
326
- ), [
327
- [_vShow, innerActive.value]
328
- ])
329
- ]),
330
- _: 3
331
- /* FORWARDED */
332
- }, 8, ["name", "onBeforeLeave", "onLeave", "onAfterLeave", "onBeforeEnter", "onEnter", "onAfterEnter"])
333
- ],
334
- 512
335
- /* NEED_PATCH */
336
- )
337
- ], 16, _hoisted_1)
338
- ], 8, ["to", "disabled"])) : _createCommentVNode("v-if", true);
339
- };
340
267
  }
268
+ }
269
+ watch(isActive, async (value) => {
270
+ if (value) {
271
+ await onOpen();
272
+ } else {
273
+ onClose();
274
+ }
275
+ });
276
+ watch(innerActive, () => {
277
+ saveOvershoot();
278
+ });
279
+ onBeforeMount(async () => {
280
+ if (mappedOptions.initial.open) {
281
+ open();
282
+ }
283
+ });
284
+ onBeforeUnmount(() => {
285
+ close();
286
+ });
287
+ onUnmounted(() => {
288
+ if (mappedOptions.scrollLock) {
289
+ unlockScroll();
290
+ if (typeof mappedOptions.scrollLock === "object" && mappedOptions.scrollLock.padding) {
291
+ removeScrollLockPadding();
292
+ }
293
+ }
294
+ if (mappedOptions.focusTrap) {
295
+ releaseFocus();
296
+ }
297
+ if (!mappedOptions.preventZoom) {
298
+ resetMetaViewport();
299
+ }
300
+ deleteState();
341
301
  });
342
302
  </script>
343
303