@maas/vue-equipment 1.0.0-beta.2 → 1.0.0-beta.21

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 (217) hide show
  1. package/README.md +2 -2
  2. package/dist/composables/index.d.ts +5 -5
  3. package/dist/composables/index.js +23 -13
  4. package/dist/composables/index.js.map +1 -1
  5. package/dist/nuxt/module.d.mts +2 -1
  6. package/dist/nuxt/module.json +2 -2
  7. package/dist/nuxt/module.mjs +9 -2
  8. package/dist/nuxt/types.d.mts +3 -1
  9. package/dist/plugins/.turbo/turbo-lint.log +2 -10
  10. package/dist/plugins/MagicAccordion/nuxt.d.ts +1 -1
  11. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue +59 -82
  12. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue.d.ts +35 -22
  13. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue +17 -31
  14. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue.d.ts +12 -21
  15. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue +57 -62
  16. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue.d.ts +23 -59
  17. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue +34 -45
  18. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue.d.ts +17 -22
  19. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionTrigger.d.ts +1 -1
  20. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionTrigger.mjs +1 -0
  21. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionView.mjs +1 -0
  22. package/dist/plugins/MagicAccordion/src/composables/useMagicAccordion.mjs +1 -0
  23. package/dist/plugins/MagicAccordion/src/symbols/index.d.ts +2 -2
  24. package/dist/plugins/MagicCommand/nuxt.d.ts +1 -1
  25. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue +146 -152
  26. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue.d.ts +24 -13
  27. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue +42 -52
  28. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue.d.ts +12 -21
  29. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue +72 -87
  30. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue.d.ts +29 -28
  31. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue +37 -47
  32. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue.d.ts +12 -21
  33. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue +61 -77
  34. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue.d.ts +12 -58
  35. package/dist/plugins/MagicCommand/src/components/MagicCommandRenderer.vue +23 -39
  36. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue +80 -86
  37. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue.d.ts +25 -60
  38. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue +36 -48
  39. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue.d.ts +15 -22
  40. package/dist/plugins/MagicCommand/src/composables/private/useCommandScroll.d.ts +2 -2
  41. package/dist/plugins/MagicCommand/src/composables/private/useCommandState.mjs +1 -1
  42. package/dist/plugins/MagicCommand/src/composables/private/useCommandTrigger.d.ts +1 -1
  43. package/dist/plugins/MagicCommand/src/composables/private/useCommandTrigger.mjs +1 -0
  44. package/dist/plugins/MagicCommand/src/symbols/index.d.ts +4 -4
  45. package/dist/plugins/MagicCommand/src/types/index.d.ts +1 -1
  46. package/dist/plugins/MagicCookie/nuxt.d.ts +1 -1
  47. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue +34 -41
  48. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue.d.ts +13 -22
  49. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue +19 -36
  50. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue.d.ts +9 -21
  51. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue +40 -72
  52. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue.d.ts +21 -12
  53. package/dist/plugins/MagicCookie/src/composables/private/useCookieItem.mjs +0 -1
  54. package/dist/plugins/MagicCookie/src/symbols/index.d.ts +2 -2
  55. package/dist/plugins/MagicDraggable/nuxt.d.ts +1 -1
  56. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue +81 -100
  57. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue.d.ts +94 -22
  58. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.d.ts +2 -2
  59. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.mjs +43 -63
  60. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableScrollLock.mjs +34 -14
  61. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.d.ts +2 -15
  62. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.mjs +117 -64
  63. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableState.mjs +6 -5
  64. package/dist/plugins/MagicDraggable/src/types/index.d.ts +2 -1
  65. package/dist/plugins/MagicDraggable/src/utils/defaultOptions.mjs +1 -1
  66. package/dist/plugins/MagicDrawer/nuxt.d.ts +1 -1
  67. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue +271 -308
  68. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue.d.ts +165 -23
  69. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDOM.mjs +34 -14
  70. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.d.ts +2 -2
  71. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.mjs +3 -3
  72. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.d.ts +1 -1
  73. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.mjs +28 -10
  74. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerProgress.d.ts +2 -2
  75. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.d.ts +3 -3
  76. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.mjs +16 -14
  77. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerWheel.d.ts +1 -1
  78. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerWheel.mjs +1 -1
  79. package/dist/plugins/MagicDrawer/src/types/index.mjs +1 -0
  80. package/dist/plugins/MagicEmitter/nuxt.d.ts +1 -1
  81. package/dist/plugins/MagicEmitter/src/composables/useMagicEmitter.d.ts +100 -100
  82. package/dist/plugins/MagicMarquee/nuxt.d.ts +1 -1
  83. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue +38 -72
  84. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue.d.ts +14 -25
  85. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.d.ts +1 -1
  86. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.mjs +8 -2
  87. package/dist/plugins/MagicMarquee/src/composables/useMagicMarquee.d.ts +1 -1
  88. package/dist/plugins/MagicMenu/nuxt.d.ts +1 -1
  89. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue +51 -63
  90. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue.d.ts +18 -21
  91. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue +178 -214
  92. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue.d.ts +41 -24
  93. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue +171 -198
  94. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue.d.ts +40 -25
  95. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue +87 -113
  96. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue.d.ts +31 -28
  97. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue +82 -81
  98. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue.d.ts +12 -58
  99. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue +63 -86
  100. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue.d.ts +19 -23
  101. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue +94 -97
  102. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue.d.ts +27 -60
  103. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue +49 -61
  104. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue.d.ts +15 -22
  105. package/dist/plugins/MagicMenu/src/composables/private/useMenuCallback.mjs +1 -1
  106. package/dist/plugins/MagicMenu/src/composables/private/useMenuChannel.mjs +15 -5
  107. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.d.ts +3 -3
  108. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.mjs +4 -4
  109. package/dist/plugins/MagicMenu/src/composables/private/useMenuDOM.mjs +35 -15
  110. package/dist/plugins/MagicMenu/src/composables/private/useMenuKeyListener.mjs +6 -2
  111. package/dist/plugins/MagicMenu/src/composables/private/useMenuTrigger.d.ts +1 -1
  112. package/dist/plugins/MagicMenu/src/composables/private/useMenuTrigger.mjs +2 -0
  113. package/dist/plugins/MagicMenu/src/composables/private/useMenuView.mjs +18 -6
  114. package/dist/plugins/MagicMenu/src/composables/useMagicMenu.mjs +1 -0
  115. package/dist/plugins/MagicMenu/src/symbols/index.d.ts +4 -4
  116. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.d.ts +2 -2
  117. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.mjs +2 -2
  118. package/dist/plugins/MagicModal/nuxt.d.ts +1 -1
  119. package/dist/plugins/MagicModal/src/components/MagicModal.vue +133 -168
  120. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +44 -21
  121. package/dist/plugins/MagicModal/src/composables/private/useModalDOM.mjs +34 -14
  122. package/dist/plugins/MagicModal/src/types/index.mjs +1 -0
  123. package/dist/plugins/MagicNoise/nuxt.d.ts +1 -1
  124. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue +50 -81
  125. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue.d.ts +1 -10
  126. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.d.ts +3 -3
  127. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.mjs +2 -2
  128. package/dist/plugins/MagicPie/index.d.ts +7 -0
  129. package/dist/plugins/MagicPie/index.mjs +8 -0
  130. package/dist/plugins/MagicPie/nuxt.d.ts +2 -0
  131. package/dist/plugins/MagicPie/nuxt.mjs +23 -0
  132. package/dist/plugins/MagicPie/src/components/MagicPie.vue +168 -0
  133. package/dist/plugins/MagicPie/src/components/MagicPie.vue.d.ts +7 -0
  134. package/dist/plugins/MagicPie/src/composables/private/usePieState.d.ts +6 -0
  135. package/dist/plugins/MagicPie/src/composables/private/usePieState.mjs +33 -0
  136. package/dist/plugins/MagicPie/src/composables/useMagicPie.d.ts +13 -0
  137. package/dist/plugins/MagicPie/src/composables/useMagicPie.mjs +43 -0
  138. package/dist/plugins/MagicPie/src/types/index.d.ts +9 -0
  139. package/dist/plugins/MagicPie/src/types/index.mjs +0 -0
  140. package/dist/plugins/MagicPlayer/nuxt.d.ts +1 -1
  141. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudio.vue +58 -63
  142. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue +99 -127
  143. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue.d.ts +30 -26
  144. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue +32 -42
  145. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue.d.ts +1 -10
  146. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue +106 -105
  147. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue.d.ts +1 -10
  148. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue +51 -76
  149. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue.d.ts +29 -14
  150. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue +18 -37
  151. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue.d.ts +12 -11
  152. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue +41 -55
  153. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue.d.ts +23 -23
  154. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue +60 -109
  155. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideo.vue +74 -71
  156. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue +163 -209
  157. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue.d.ts +63 -33
  158. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.d.ts +0 -4
  159. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.mjs +6 -47
  160. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.d.ts +7 -34
  161. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.mjs +154 -235
  162. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.d.ts +3 -17
  163. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.mjs +17 -157
  164. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.d.ts +2 -3
  165. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.mjs +7 -25
  166. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerState.d.ts +7 -0
  167. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerState.mjs +56 -0
  168. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.d.ts +3 -8
  169. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.mjs +7 -62
  170. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.d.ts +32 -51
  171. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.mjs +49 -2
  172. package/dist/plugins/MagicPlayer/src/symbols/index.d.ts +5 -2
  173. package/dist/plugins/MagicPlayer/src/symbols/index.mjs +10 -1
  174. package/dist/plugins/MagicPlayer/src/types/index.d.ts +29 -0
  175. package/dist/plugins/MagicScroll/nuxt.d.ts +1 -1
  176. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue +54 -61
  177. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue.d.ts +9 -23
  178. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue +56 -71
  179. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue.d.ts +9 -23
  180. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue +26 -33
  181. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue.d.ts +45 -37
  182. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +63 -71
  183. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue.d.ts +13 -24
  184. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.d.ts +2 -2
  185. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.mjs +16 -6
  186. package/dist/plugins/MagicScroll/src/composables/private/useScrollApi.d.ts +2 -2
  187. package/dist/plugins/MagicScroll/src/composables/private/useScrollApi.mjs +41 -26
  188. package/dist/plugins/MagicScroll/src/symbols/index.d.ts +1 -1
  189. package/dist/plugins/MagicToast/nuxt.d.ts +1 -1
  190. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue +94 -118
  191. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue.d.ts +1 -10
  192. package/dist/plugins/MagicToast/src/components/MagicToastView.vue +54 -81
  193. package/dist/plugins/MagicToast/src/components/MagicToastView.vue.d.ts +24 -23
  194. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.d.ts +2 -2
  195. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.mjs +5 -5
  196. package/dist/plugins/MagicToast/src/composables/private/useToastDrag.mjs +22 -22
  197. package/dist/plugins/MagicToast/src/composables/private/useToastListener.mjs +1 -0
  198. package/dist/plugins/MagicToast/src/composables/private/useToastScrollLock.mjs +33 -15
  199. package/dist/plugins/MagicToast/src/composables/private/useToastView.mjs +1 -0
  200. package/dist/plugins/MagicToast/src/composables/useMagicToast.d.ts +1 -0
  201. package/dist/plugins/MagicToast/src/composables/useMagicToast.mjs +10 -2
  202. package/dist/plugins/MagicToast/src/types/index.d.ts +1 -1
  203. package/dist/plugins/MagicToast/src/utils/defaultOptions.mjs +1 -1
  204. package/dist/plugins/index.d.ts +1 -0
  205. package/dist/plugins/index.mjs +1 -0
  206. package/dist/utils/index.d.ts +9 -4
  207. package/dist/utils/index.js +39 -3
  208. package/dist/utils/index.js.map +1 -1
  209. package/package.json +17 -8
  210. package/dist/nuxt/module.cjs +0 -5
  211. package/dist/nuxt/module.d.ts +0 -9
  212. package/dist/nuxt/types.d.ts +0 -1
  213. package/dist/plugins/MagicAccordion/demo/data/footer.json +0 -117
  214. package/dist/plugins/MagicCommand/demo/data/about.json +0 -3
  215. package/dist/plugins/MagicCommand/demo/data/search.json +0 -594
  216. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerStateEmitter.d.ts +0 -15
  217. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerStateEmitter.mjs +0 -9
@@ -1,10 +1,63 @@
1
- <script>
2
- import { defineComponent as _defineComponent } from "vue";
3
- import { unref as _unref, renderSlot as _renderSlot, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, createSlots as _createSlots, createVNode as _createVNode, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, Transition as _Transition, renderList as _renderList, Fragment as _Fragment, normalizeStyle as _normalizeStyle, Teleport as _Teleport, createBlock as _createBlock } from "vue";
4
- const _hoisted_1 = ["data-id"];
5
- const _hoisted_2 = ["data-pointer-disabled"];
1
+ <template>
2
+ <teleport v-if="wrapperActive" to="body">
3
+ <transition
4
+ :name="mappedTransition"
5
+ :on-before-enter="onBeforeEnter"
6
+ :on-enter="onEnter"
7
+ :on-after-enter="onAfterEnter"
8
+ :on-before-leave="onBeforeLeave"
9
+ :on-leave="onLeave"
10
+ :on-after-leave="onAfterLeave"
11
+ >
12
+ <div
13
+ v-if="innerActive"
14
+ class="magic-menu-content"
15
+ :data-id="`${viewId}-content`"
16
+ v-bind="$attrs"
17
+ >
18
+ <magic-menu-float
19
+ :placement="view?.placement"
20
+ :middleware="middleware"
21
+ :arrow="arrow"
22
+ :reference-el="referenceEl"
23
+ >
24
+ <template v-if="$slots.arrow && arrow" #arrow>
25
+ <slot name="arrow" />
26
+ </template>
27
+ <template #default>
28
+ <div
29
+ class="magic-menu-content__inner"
30
+ :data-pointer-disabled="pointerDisabled"
31
+ >
32
+ <slot />
33
+ </div>
34
+ </template>
35
+ </magic-menu-float>
36
+ </div>
37
+ </transition>
38
+ <template v-if="state.options.debug">
39
+ <span
40
+ v-for="point in coords"
41
+ :key="`${point.x}${point.y}`"
42
+ :style="{
43
+ background: 'red',
44
+ position: 'fixed',
45
+ top: point.y + 'px',
46
+ left: point.x + 'px',
47
+ width: '4px',
48
+ height: '4px',
49
+ zIndex: 1e3,
50
+ pointerEvents: 'none',
51
+ transform: 'translate(-50%, -50%)'
52
+ }"
53
+ />
54
+ </template>
55
+ </teleport>
56
+ </template>
57
+
58
+ <script setup>
6
59
  import {
7
- ref,
60
+ shallowRef,
8
61
  inject,
9
62
  provide,
10
63
  nextTick,
@@ -26,218 +79,129 @@ import {
26
79
  } from "../symbols";
27
80
  import "@maas/vue-equipment/utils/css/animations/fade-in.css";
28
81
  import "@maas/vue-equipment/utils/css/animations/fade-out.css";
29
- export default /* @__PURE__ */ _defineComponent({
30
- ...{
31
- inheritAttrs: false
32
- },
33
- __name: "MagicMenuContent",
34
- props: {
35
- arrow: { type: Boolean, required: false, skipCheck: true, default: () => void 0 },
36
- middleware: { type: Array, required: false },
37
- transition: { type: String, required: false },
38
- referenceEl: { type: null, required: false }
39
- },
40
- setup(__props) {
41
- const contentRef = ref(void 0);
42
- const instanceId = inject(MagicMenuInstanceId, void 0);
43
- const viewId = inject(MagicMenuViewId, void 0);
44
- if (!instanceId) {
45
- throw new Error("MagicMenuContent must be nested inside MagicMenuProvider");
46
- }
47
- if (!viewId) {
48
- throw new Error("MagicMenuContent must be nested inside MagicMenuView");
49
- }
50
- const { getView, unselectView } = useMenuView(instanceId);
51
- const view = getView(viewId);
52
- const { initializeState } = useMenuState(instanceId);
53
- const state = initializeState();
54
- const pointerDisabled = computed(() => state.input.disabled.includes("pointer"));
55
- const mappedTransition = computed(() => {
56
- switch (true) {
57
- case !!__props.transition:
58
- return __props.transition;
59
- case !!view?.parent.item:
60
- return state.options.transition.content.nested;
61
- case !!state.options.transition.content.default:
62
- return state.options.transition.content.default;
63
- default:
64
- return ModeTransitions[state.options.mode];
65
- }
66
- });
67
- const innerActive = ref(false);
68
- const wrapperActive = ref(false);
69
- const {
70
- lockScroll,
71
- unlockScroll,
72
- addScrollLockPadding,
73
- removeScrollLockPadding
74
- } = useMenuDOM();
75
- const {
76
- onBeforeEnter,
77
- onEnter,
78
- onAfterEnter,
79
- onBeforeLeave,
80
- onLeave,
81
- onAfterLeave
82
- } = useMenuCallback({
83
- state,
84
- instanceId,
85
- viewId,
86
- innerActive,
87
- wrapperActive,
88
- lockScroll,
89
- unlockScroll,
90
- addScrollLockPadding,
91
- removeScrollLockPadding
92
- });
93
- async function onOpen() {
94
- wrapperActive.value = true;
95
- await nextTick();
96
- innerActive.value = true;
97
- await nextTick();
98
- initialize();
99
- }
100
- function onClose() {
101
- destroy();
102
- innerActive.value = false;
103
- }
104
- watch(
105
- () => view?.active,
106
- async (value) => {
107
- if (value) {
108
- await onOpen();
109
- } else {
110
- onClose();
111
- }
112
- }
113
- );
114
- const {
115
- coords,
116
- destroy,
117
- initialize,
118
- isInsideTriangle,
119
- isInsideTo,
120
- isInsideFrom
121
- } = useMenuCursor(view, state.options.debug);
122
- function disableCursor() {
123
- state.input.disabled = [...state.input.disabled, "pointer"];
82
+ defineOptions({
83
+ inheritAttrs: false
84
+ });
85
+ const { arrow = void 0, transition } = defineProps({
86
+ arrow: { type: Boolean, required: false, skipCheck: true },
87
+ middleware: { type: Array, required: false },
88
+ transition: { type: String, required: false },
89
+ referenceEl: { type: null, required: false }
90
+ });
91
+ const instanceId = inject(MagicMenuInstanceId, void 0);
92
+ const viewId = inject(MagicMenuViewId, void 0);
93
+ if (!instanceId) {
94
+ throw new Error("MagicMenuContent must be nested inside MagicMenuProvider");
95
+ }
96
+ if (!viewId) {
97
+ throw new Error("MagicMenuContent must be nested inside MagicMenuView");
98
+ }
99
+ const { getView, unselectView } = useMenuView(instanceId);
100
+ const view = getView(viewId);
101
+ const { initializeState } = useMenuState(instanceId);
102
+ const state = initializeState();
103
+ const pointerDisabled = computed(() => state.input.disabled.includes("pointer"));
104
+ const mappedTransition = computed(() => {
105
+ switch (true) {
106
+ case !!transition:
107
+ return transition;
108
+ case !!view?.parent.item:
109
+ return state.options.transition.content.nested;
110
+ case !!state.options.transition.content.default:
111
+ return state.options.transition.content.default;
112
+ default:
113
+ return ModeTransitions[state.options.mode];
114
+ }
115
+ });
116
+ const innerActive = shallowRef(false);
117
+ const wrapperActive = shallowRef(false);
118
+ const {
119
+ lockScroll,
120
+ unlockScroll,
121
+ addScrollLockPadding,
122
+ removeScrollLockPadding
123
+ } = useMenuDOM();
124
+ const {
125
+ onBeforeEnter,
126
+ onEnter,
127
+ onAfterEnter,
128
+ onBeforeLeave,
129
+ onLeave,
130
+ onAfterLeave
131
+ } = useMenuCallback({
132
+ state,
133
+ instanceId,
134
+ viewId,
135
+ innerActive,
136
+ wrapperActive,
137
+ lockScroll,
138
+ unlockScroll,
139
+ addScrollLockPadding,
140
+ removeScrollLockPadding
141
+ });
142
+ async function onOpen() {
143
+ wrapperActive.value = true;
144
+ await nextTick();
145
+ innerActive.value = true;
146
+ await nextTick();
147
+ initialize();
148
+ }
149
+ function onClose() {
150
+ destroy();
151
+ innerActive.value = false;
152
+ }
153
+ watch(
154
+ () => view?.active,
155
+ async (value) => {
156
+ if (value) {
157
+ await onOpen();
158
+ } else {
159
+ onClose();
124
160
  }
125
- function enableCursor() {
126
- state.input.disabled = state.input.disabled.filter((x) => x !== "pointer");
161
+ }
162
+ );
163
+ const {
164
+ coords,
165
+ destroy,
166
+ initialize,
167
+ isInsideTriangle,
168
+ isInsideTo,
169
+ isInsideFrom
170
+ } = useMenuCursor(view, state.options.debug);
171
+ function disableCursor() {
172
+ state.input.disabled = [...state.input.disabled, "pointer"];
173
+ }
174
+ function enableCursor() {
175
+ state.input.disabled = state.input.disabled.filter((x) => x !== "pointer");
176
+ }
177
+ watch(isInsideTriangle, (value) => {
178
+ if (value) {
179
+ disableCursor();
180
+ } else {
181
+ enableCursor();
182
+ }
183
+ });
184
+ watch(isInsideTo, (value) => {
185
+ if (value) {
186
+ enableCursor();
187
+ }
188
+ });
189
+ const isOutside = computed(
190
+ () => !isInsideTo.value && !isInsideFrom.value && !isInsideTriangle.value
191
+ );
192
+ watch(isOutside, (value, oldValue) => {
193
+ if (value && !oldValue) {
194
+ switch (state.options.mode) {
195
+ case "navigation":
196
+ const delay = state.options.delay?.mouseleave ?? ModeDelayMouseleave.navigation;
197
+ unselectView(viewId, delay);
127
198
  }
128
- watch(isInsideTriangle, (value) => {
129
- if (value) {
130
- disableCursor();
131
- } else {
132
- enableCursor();
133
- }
134
- });
135
- watch(isInsideTo, (value) => {
136
- if (value) {
137
- enableCursor();
138
- }
139
- });
140
- const isOutside = computed(
141
- () => !isInsideTo.value && !isInsideFrom.value && !isInsideTriangle.value
142
- );
143
- watch(isOutside, (value, oldValue) => {
144
- if (value && !oldValue) {
145
- switch (state.options.mode) {
146
- case "navigation":
147
- const delay = state.options.delay?.mouseleave ?? ModeDelayMouseleave.navigation;
148
- unselectView(viewId, delay);
149
- }
150
- }
151
- });
152
- onBeforeUnmount(() => {
153
- destroy();
154
- });
155
- provide(MagicMenuContentId, `${viewId}-content`);
156
- return (_ctx, _cache) => {
157
- const _component_magic_menu_float = _resolveComponent("magic-menu-float");
158
- return wrapperActive.value ? (_openBlock(), _createBlock(_Teleport, {
159
- key: 0,
160
- to: "body"
161
- }, [
162
- _createVNode(_Transition, {
163
- name: mappedTransition.value,
164
- "on-before-enter": _unref(onBeforeEnter),
165
- "on-enter": _unref(onEnter),
166
- "on-after-enter": _unref(onAfterEnter),
167
- "on-before-leave": _unref(onBeforeLeave),
168
- "on-leave": _unref(onLeave),
169
- "on-after-leave": _unref(onAfterLeave)
170
- }, {
171
- default: _withCtx(() => [
172
- innerActive.value ? (_openBlock(), _createElementBlock("div", _mergeProps({
173
- key: 0,
174
- class: "magic-menu-content",
175
- "data-id": `${_unref(viewId)}-content`
176
- }, _ctx.$attrs), [
177
- _createVNode(_component_magic_menu_float, {
178
- placement: _unref(view)?.placement,
179
- middleware: _ctx.middleware,
180
- arrow: _ctx.arrow,
181
- "reference-el": _ctx.referenceEl
182
- }, _createSlots({
183
- default: _withCtx(() => [
184
- _createElementVNode("div", {
185
- ref_key: "contentRef",
186
- ref: contentRef,
187
- class: "magic-menu-content__inner",
188
- "data-pointer-disabled": pointerDisabled.value
189
- }, [
190
- _renderSlot(_ctx.$slots, "default")
191
- ], 8, _hoisted_2)
192
- ]),
193
- _: 2
194
- /* DYNAMIC */
195
- }, [
196
- _ctx.$slots.arrow && _ctx.arrow ? {
197
- name: "arrow",
198
- fn: _withCtx(() => [
199
- _renderSlot(_ctx.$slots, "arrow")
200
- ]),
201
- key: "0"
202
- } : void 0
203
- ]), 1032, ["placement", "middleware", "arrow", "reference-el"])
204
- ], 16, _hoisted_1)) : _createCommentVNode("v-if", true)
205
- ]),
206
- _: 3
207
- /* FORWARDED */
208
- }, 8, ["name", "on-before-enter", "on-enter", "on-after-enter", "on-before-leave", "on-leave", "on-after-leave"]),
209
- _unref(state).options.debug ? (_openBlock(true), _createElementBlock(
210
- _Fragment,
211
- { key: 0 },
212
- _renderList(_unref(coords), (point) => {
213
- return _openBlock(), _createElementBlock(
214
- "span",
215
- {
216
- key: `${point.x}${point.y}`,
217
- style: _normalizeStyle({
218
- background: "red",
219
- position: "fixed",
220
- top: point.y + "px",
221
- left: point.x + "px",
222
- width: "4px",
223
- height: "4px",
224
- zIndex: 1e3,
225
- pointerEvents: "none",
226
- transform: "translate(-50%, -50%)"
227
- })
228
- },
229
- null,
230
- 4
231
- /* STYLE */
232
- );
233
- }),
234
- 128
235
- /* KEYED_FRAGMENT */
236
- )) : _createCommentVNode("v-if", true)
237
- ])) : _createCommentVNode("v-if", true);
238
- };
239
199
  }
240
200
  });
201
+ onBeforeUnmount(() => {
202
+ destroy();
203
+ });
204
+ provide(MagicMenuContentId, `${viewId}-content`);
241
205
  </script>
242
206
 
243
207
  <style>
@@ -8,31 +8,48 @@ interface MagicMenuContentProps {
8
8
  transition?: string;
9
9
  referenceEl?: MaybeRef<HTMLElement | ComponentPublicInstance>;
10
10
  }
11
- declare function __VLS_template(): {
12
- attrs: Partial<{}>;
13
- slots: {
14
- arrow?(_: {}): any;
15
- default?(_: {}): any;
16
- };
17
- refs: {
18
- contentRef: HTMLDivElement;
19
- };
20
- rootEl: any;
21
- };
22
- type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
23
- declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicMenuContentProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicMenuContentProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
24
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
11
+ declare const viewId: string | undefined;
12
+ declare const view: import("../types/index.js").MenuView | undefined;
13
+ declare const state: import("../types/index.js").MenuState;
14
+ declare const pointerDisabled: import("vue").ComputedRef<boolean>;
15
+ declare const mappedTransition: import("vue").ComputedRef<string>;
16
+ declare const innerActive: import("vue").ShallowRef<boolean, boolean>;
17
+ declare const wrapperActive: import("vue").ShallowRef<boolean, boolean>;
18
+ declare const onBeforeEnter: () => void, onEnter: () => void, onAfterEnter: () => void, onBeforeLeave: () => void, onLeave: () => void, onAfterLeave: () => void;
19
+ declare const coords: import("vue").Ref<{
20
+ x: number;
21
+ y: number;
22
+ }[], import("../types/index.js").Coordinates[] | {
23
+ x: number;
24
+ y: number;
25
+ }[]>;
26
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
27
+ declare var __VLS_13: {}, __VLS_15: {};
28
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
29
+ arrow?: (props: typeof __VLS_13) => any;
30
+ } & {
31
+ default?: (props: typeof __VLS_15) => any;
32
+ }>;
33
+ declare const __VLS_self: import("vue").DefineComponent<MagicMenuContentProps, {
34
+ viewId: typeof viewId;
35
+ view: typeof view;
36
+ state: typeof state;
37
+ pointerDisabled: typeof pointerDisabled;
38
+ mappedTransition: typeof mappedTransition;
39
+ innerActive: typeof innerActive;
40
+ wrapperActive: typeof wrapperActive;
41
+ onBeforeEnter: typeof onBeforeEnter;
42
+ onEnter: typeof onEnter;
43
+ onAfterEnter: typeof onAfterEnter;
44
+ onBeforeLeave: typeof onBeforeLeave;
45
+ onLeave: typeof onLeave;
46
+ onAfterLeave: typeof onAfterLeave;
47
+ coords: typeof coords;
48
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicMenuContentProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
49
+ declare const __VLS_component: import("vue").DefineComponent<MagicMenuContentProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicMenuContentProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
50
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
25
51
  export default _default;
26
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
27
- type __VLS_TypePropsToOption<T> = {
28
- [K in keyof T]-?: {} extends Pick<T, K> ? {
29
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
30
- } : {
31
- type: import('vue').PropType<T[K]>;
32
- required: true;
33
- };
34
- };
35
- type __VLS_WithTemplateSlots<T, S> = T & {
52
+ type __VLS_WithSlots<T, S> = T & {
36
53
  new (): {
37
54
  $slots: S;
38
55
  };