@maas/vue-equipment 0.40.0 → 1.0.0-beta.10

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 (349) hide show
  1. package/README.md +6 -16
  2. package/dist/composables/index.d.ts +7 -18
  3. package/dist/composables/index.js +79 -132
  4. package/dist/composables/index.js.map +1 -1
  5. package/dist/nuxt/module.json +1 -1
  6. package/dist/nuxt/module.mjs +35 -42
  7. package/dist/plugins/.turbo/turbo-build.log +0 -0
  8. package/dist/plugins/.turbo/turbo-lint.log +5 -0
  9. package/dist/plugins/.turbo/turbo-release.log +7 -0
  10. package/dist/plugins/MagicAccordion/demo/data/footer.json +117 -0
  11. package/dist/plugins/MagicAccordion/index.d.ts +2 -0
  12. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue +103 -70
  13. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue.d.ts +39 -13
  14. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue +36 -30
  15. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue.d.ts +12 -12
  16. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue +73 -71
  17. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue.d.ts +24 -55
  18. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue +52 -50
  19. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue.d.ts +18 -14
  20. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionCallback.d.ts +6 -6
  21. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionCallback.mjs +6 -6
  22. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionState.mjs +10 -10
  23. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionTrigger.d.ts +1 -1
  24. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionView.mjs +11 -10
  25. package/dist/plugins/MagicAccordion/src/symbols/index.d.ts +2 -2
  26. package/dist/plugins/MagicAccordion/src/types/index.d.ts +4 -0
  27. package/dist/plugins/MagicAccordion/src/utils/defaultOptions.d.ts +2 -2
  28. package/dist/plugins/MagicAccordion/src/utils/defaultOptions.mjs +7 -2
  29. package/dist/plugins/MagicCommand/demo/data/about.json +3 -0
  30. package/dist/plugins/MagicCommand/demo/data/search.json +594 -0
  31. package/dist/plugins/MagicCommand/index.d.ts +2 -0
  32. package/dist/plugins/MagicCommand/index.mjs +9 -11
  33. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue +199 -0
  34. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue.d.ts +32 -0
  35. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue +60 -53
  36. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue.d.ts +14 -14
  37. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue +105 -80
  38. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue.d.ts +32 -22
  39. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue +55 -53
  40. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue.d.ts +12 -12
  41. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue +92 -62
  42. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue.d.ts +15 -16
  43. package/dist/plugins/MagicCommand/src/components/MagicCommandRenderer.vue +63 -0
  44. package/dist/plugins/MagicCommand/src/components/MagicCommandRenderer.vue.d.ts +2 -0
  45. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue +111 -0
  46. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue.d.ts +40 -0
  47. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue +56 -73
  48. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue.d.ts +16 -16
  49. package/dist/plugins/MagicCommand/src/composables/private/useCommandCallback.d.ts +14 -0
  50. package/dist/plugins/MagicCommand/src/composables/private/useCommandCallback.mjs +32 -0
  51. package/dist/plugins/MagicCommand/src/composables/private/useCommandItem.d.ts +15 -6
  52. package/dist/plugins/MagicCommand/src/composables/private/useCommandItem.mjs +77 -44
  53. package/dist/plugins/MagicCommand/src/composables/private/useCommandScroll.d.ts +24 -6
  54. package/dist/plugins/MagicCommand/src/composables/private/useCommandScroll.mjs +45 -28
  55. package/dist/plugins/MagicCommand/src/composables/private/useCommandState.d.ts +7 -0
  56. package/dist/plugins/MagicCommand/src/composables/private/useCommandState.mjs +49 -0
  57. package/dist/plugins/MagicCommand/src/composables/private/useCommandTrigger.d.ts +18 -0
  58. package/dist/plugins/MagicCommand/src/composables/private/useCommandTrigger.mjs +76 -0
  59. package/dist/plugins/MagicCommand/src/composables/private/useCommandView.d.ts +21 -5
  60. package/dist/plugins/MagicCommand/src/composables/private/useCommandView.mjs +193 -18
  61. package/dist/plugins/MagicCommand/src/composables/useMagicCommand.d.ts +14 -5
  62. package/dist/plugins/MagicCommand/src/composables/useMagicCommand.mjs +43 -13
  63. package/dist/plugins/MagicCommand/src/symbols/index.d.ts +9 -2
  64. package/dist/plugins/MagicCommand/src/symbols/index.mjs +18 -1
  65. package/dist/plugins/MagicCommand/src/types/index.d.ts +73 -13
  66. package/dist/plugins/MagicCommand/src/utils/defaultOptions.d.ts +3 -5
  67. package/dist/plugins/MagicCommand/src/utils/defaultOptions.mjs +8 -3
  68. package/dist/plugins/MagicCookie/index.d.ts +5 -3
  69. package/dist/plugins/MagicCookie/index.mjs +7 -3
  70. package/dist/plugins/MagicCookie/nuxt.mjs +5 -9
  71. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue +56 -0
  72. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue.d.ts +24 -0
  73. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue +43 -0
  74. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue.d.ts +20 -0
  75. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue +96 -0
  76. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue.d.ts +30 -0
  77. package/dist/plugins/MagicCookie/src/composables/private/useCookieCallback.d.ts +9 -0
  78. package/dist/plugins/MagicCookie/src/composables/private/useCookieCallback.mjs +31 -0
  79. package/dist/plugins/MagicCookie/src/composables/private/useCookieItem.d.ts +16 -0
  80. package/dist/plugins/MagicCookie/src/composables/private/useCookieItem.mjs +87 -0
  81. package/dist/plugins/MagicCookie/src/composables/private/useCookieState.d.ts +7 -0
  82. package/dist/plugins/MagicCookie/src/composables/private/useCookieState.mjs +43 -0
  83. package/dist/plugins/MagicCookie/src/composables/useMagicCookie.d.ts +15 -15
  84. package/dist/plugins/MagicCookie/src/composables/useMagicCookie.mjs +59 -60
  85. package/dist/plugins/MagicCookie/src/symbols/index.d.ts +5 -0
  86. package/dist/plugins/MagicCookie/src/symbols/index.mjs +4 -0
  87. package/dist/plugins/MagicCookie/src/types/index.d.ts +31 -13
  88. package/dist/plugins/MagicCookie/src/utils/defaultOptions.d.ts +4 -0
  89. package/dist/plugins/MagicCookie/src/utils/defaultOptions.mjs +10 -0
  90. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue +136 -97
  91. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue.d.ts +95 -18
  92. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.d.ts +8 -8
  93. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.mjs +12 -6
  94. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableScrollLock.mjs +34 -14
  95. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.d.ts +9 -8
  96. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.mjs +46 -8
  97. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableState.d.ts +2 -1
  98. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableState.mjs +10 -10
  99. package/dist/plugins/MagicDraggable/src/types/index.d.ts +11 -6
  100. package/dist/plugins/MagicDraggable/src/utils/defaultOptions.d.ts +3 -8
  101. package/dist/plugins/MagicDraggable/src/utils/defaultOptions.mjs +6 -6
  102. package/dist/plugins/MagicDrawer/nuxt.mjs +1 -1
  103. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue +501 -337
  104. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue.d.ts +166 -19
  105. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerCallback.d.ts +6 -6
  106. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerCallback.mjs +6 -6
  107. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDOM.mjs +34 -14
  108. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.d.ts +9 -11
  109. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.mjs +29 -19
  110. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.d.ts +3 -4
  111. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.mjs +28 -10
  112. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerProgress.d.ts +4 -4
  113. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerProgress.mjs +4 -2
  114. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.d.ts +8 -9
  115. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.mjs +45 -26
  116. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerState.d.ts +1 -1
  117. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerState.mjs +8 -8
  118. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerWheel.d.ts +3 -3
  119. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerWheel.mjs +23 -19
  120. package/dist/plugins/MagicDrawer/src/composables/useMagicDrawer.mjs +4 -3
  121. package/dist/plugins/MagicDrawer/src/types/index.d.ts +10 -3
  122. package/dist/plugins/MagicDrawer/src/utils/defaultOptions.d.ts +3 -11
  123. package/dist/plugins/MagicDrawer/src/utils/defaultOptions.mjs +1 -3
  124. package/dist/plugins/MagicEmitter/src/composables/useMagicEmitter.d.ts +190 -46
  125. package/dist/plugins/MagicEmitter/src/types/index.d.ts +1 -1
  126. package/dist/plugins/MagicMarquee/index.d.ts +4 -2
  127. package/dist/plugins/MagicMarquee/index.mjs +2 -1
  128. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue +121 -50
  129. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue.d.ts +18 -25
  130. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.d.ts +4 -8
  131. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.mjs +57 -43
  132. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeState.d.ts +7 -0
  133. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeState.mjs +42 -0
  134. package/dist/plugins/MagicMarquee/src/composables/useMagicMarquee.d.ts +11 -0
  135. package/dist/plugins/MagicMarquee/src/composables/useMagicMarquee.mjs +45 -0
  136. package/dist/plugins/MagicMarquee/src/types/index.d.ts +9 -0
  137. package/dist/plugins/MagicMarquee/src/types/index.mjs +0 -0
  138. package/dist/plugins/MagicMarquee/src/utils/defaultOptions.d.ts +4 -0
  139. package/dist/plugins/MagicMarquee/src/utils/defaultOptions.mjs +5 -0
  140. package/dist/plugins/MagicMenu/index.d.ts +2 -0
  141. package/dist/plugins/MagicMenu/nuxt.mjs +1 -1
  142. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue +78 -69
  143. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue.d.ts +17 -11
  144. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue +245 -216
  145. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue.d.ts +42 -14
  146. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue +234 -212
  147. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue.d.ts +42 -17
  148. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue +115 -124
  149. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue.d.ts +28 -16
  150. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue +105 -96
  151. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue.d.ts +14 -15
  152. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue +88 -87
  153. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue.d.ts +19 -14
  154. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue +121 -112
  155. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue.d.ts +27 -51
  156. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue +67 -70
  157. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue.d.ts +15 -11
  158. package/dist/plugins/MagicMenu/src/composables/private/useMenuCallback.d.ts +6 -6
  159. package/dist/plugins/MagicMenu/src/composables/private/useMenuCallback.mjs +9 -9
  160. package/dist/plugins/MagicMenu/src/composables/private/useMenuChannel.mjs +44 -25
  161. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.d.ts +3 -3
  162. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.mjs +16 -10
  163. package/dist/plugins/MagicMenu/src/composables/private/useMenuDOM.mjs +35 -15
  164. package/dist/plugins/MagicMenu/src/composables/private/useMenuItem.d.ts +1 -1
  165. package/dist/plugins/MagicMenu/src/composables/private/useMenuItem.mjs +20 -14
  166. package/dist/plugins/MagicMenu/src/composables/private/useMenuKeyListener.mjs +20 -13
  167. package/dist/plugins/MagicMenu/src/composables/private/useMenuState.mjs +10 -10
  168. package/dist/plugins/MagicMenu/src/composables/private/useMenuTrigger.d.ts +1 -1
  169. package/dist/plugins/MagicMenu/src/composables/private/useMenuTrigger.mjs +6 -3
  170. package/dist/plugins/MagicMenu/src/composables/private/useMenuView.d.ts +3 -3
  171. package/dist/plugins/MagicMenu/src/composables/private/useMenuView.mjs +111 -75
  172. package/dist/plugins/MagicMenu/src/symbols/index.d.ts +4 -4
  173. package/dist/plugins/MagicMenu/src/types/index.d.ts +1 -2
  174. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.d.ts +2 -2
  175. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.mjs +2 -2
  176. package/dist/plugins/MagicModal/src/components/MagicModal.vue +266 -166
  177. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +45 -17
  178. package/dist/plugins/MagicModal/src/composables/private/useModalCallback.d.ts +6 -6
  179. package/dist/plugins/MagicModal/src/composables/private/useModalCallback.mjs +6 -6
  180. package/dist/plugins/MagicModal/src/composables/private/useModalDOM.mjs +34 -14
  181. package/dist/plugins/MagicModal/src/composables/private/useModalStore.mjs +1 -1
  182. package/dist/plugins/MagicModal/src/types/index.d.ts +2 -2
  183. package/dist/plugins/MagicModal/src/utils/defaultOptions.mjs +2 -2
  184. package/dist/plugins/MagicNoise/index.d.ts +3 -1
  185. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue +120 -63
  186. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue.d.ts +2 -4
  187. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.d.ts +3 -3
  188. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.mjs +4 -4
  189. package/dist/plugins/MagicPie/index.d.ts +7 -0
  190. package/dist/plugins/MagicPie/index.mjs +8 -0
  191. package/dist/plugins/MagicPie/nuxt.mjs +23 -0
  192. package/dist/plugins/MagicPie/src/components/MagicPie.vue +202 -0
  193. package/dist/plugins/MagicPie/src/components/MagicPie.vue.d.ts +7 -0
  194. package/dist/plugins/MagicPie/src/composables/private/usePieState.d.ts +6 -0
  195. package/dist/plugins/MagicPie/src/composables/private/usePieState.mjs +33 -0
  196. package/dist/plugins/MagicPie/src/composables/useMagicPie.d.ts +13 -0
  197. package/dist/plugins/MagicPie/src/composables/useMagicPie.mjs +43 -0
  198. package/dist/plugins/MagicPie/src/types/index.d.ts +9 -0
  199. package/dist/plugins/MagicPie/src/types/index.mjs +0 -0
  200. package/dist/plugins/MagicPlayer/index.d.ts +4 -9
  201. package/dist/plugins/MagicPlayer/index.mjs +11 -17
  202. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudio.vue +84 -0
  203. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudio.vue.d.ts +2 -0
  204. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue +128 -0
  205. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue.d.ts +34 -0
  206. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue +45 -41
  207. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue.d.ts +2 -5
  208. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue +127 -114
  209. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue.d.ts +4 -5
  210. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue +111 -58
  211. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue.d.ts +30 -18
  212. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue +42 -23
  213. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue.d.ts +14 -15
  214. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue +82 -0
  215. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue.d.ts +34 -0
  216. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue +111 -65
  217. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue.d.ts +1 -4
  218. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideo.vue +93 -0
  219. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideo.vue.d.ts +2 -0
  220. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue +221 -0
  221. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue.d.ts +73 -0
  222. package/dist/plugins/MagicPlayer/src/components/icons/FullscreenEnter.vue.d.ts +1 -1
  223. package/dist/plugins/MagicPlayer/src/components/icons/FullscreenExit.vue.d.ts +1 -1
  224. package/dist/plugins/MagicPlayer/src/components/icons/Pause.vue.d.ts +1 -1
  225. package/dist/plugins/MagicPlayer/src/components/icons/Play.vue.d.ts +1 -1
  226. package/dist/plugins/MagicPlayer/src/components/icons/VolumeOff.vue.d.ts +1 -1
  227. package/dist/plugins/MagicPlayer/src/components/icons/VolumeOn.vue.d.ts +1 -1
  228. package/dist/plugins/MagicPlayer/src/components/icons/Waiting.vue +23 -1
  229. package/dist/plugins/MagicPlayer/src/components/icons/Waiting.vue.d.ts +1 -1
  230. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.d.ts +2 -2
  231. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.mjs +8 -9
  232. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.d.ts +10 -10
  233. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.mjs +33 -31
  234. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.d.ts +13 -13
  235. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.mjs +31 -24
  236. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.d.ts +5 -5
  237. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.mjs +7 -7
  238. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.d.ts +6 -6
  239. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.mjs +10 -12
  240. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.d.ts +22 -26
  241. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.mjs +5 -5
  242. package/dist/plugins/MagicPlayer/src/css/magic-player-audio-controls.css +95 -0
  243. package/dist/plugins/MagicPlayer/src/css/magic-player-display-time.css +10 -0
  244. package/dist/plugins/MagicPlayer/src/css/magic-player-timeline.css +89 -0
  245. package/dist/plugins/MagicPlayer/src/css/magic-player-video-controls.css +115 -0
  246. package/dist/plugins/MagicPlayer/src/symbols/index.d.ts +5 -0
  247. package/dist/plugins/MagicPlayer/src/symbols/index.mjs +3 -0
  248. package/dist/plugins/MagicPlayer/src/types/index.d.ts +11 -1
  249. package/dist/plugins/MagicPlayer/src/utils/defaultOptions.d.ts +3 -0
  250. package/dist/plugins/MagicPlayer/src/utils/defaultOptions.mjs +12 -0
  251. package/dist/plugins/MagicScroll/index.d.ts +4 -10
  252. package/dist/plugins/MagicScroll/index.mjs +2 -11
  253. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue +76 -31
  254. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue.d.ts +13 -17
  255. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue +78 -64
  256. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue.d.ts +13 -20
  257. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue +39 -39
  258. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue.d.ts +48 -34
  259. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +84 -73
  260. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue.d.ts +16 -21
  261. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.d.ts +13 -0
  262. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.mjs +130 -0
  263. package/dist/plugins/MagicScroll/src/composables/private/useScrollApi.d.ts +3 -3
  264. package/dist/plugins/MagicScroll/src/composables/private/useScrollApi.mjs +19 -7
  265. package/dist/plugins/MagicScroll/src/symbols/index.d.ts +2 -2
  266. package/dist/plugins/MagicScroll/src/symbols/index.mjs +2 -2
  267. package/dist/plugins/MagicScroll/src/types/index.d.ts +12 -22
  268. package/dist/plugins/MagicToast/index.d.ts +3 -2
  269. package/dist/plugins/MagicToast/index.mjs +3 -3
  270. package/dist/plugins/MagicToast/nuxt.mjs +2 -2
  271. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue +290 -0
  272. package/dist/plugins/MagicToast/src/components/{MagicToast.vue.d.ts → MagicToastProvider.vue.d.ts} +4 -4
  273. package/dist/plugins/MagicToast/src/components/MagicToastView.vue +152 -0
  274. package/dist/plugins/MagicToast/src/components/MagicToastView.vue.d.ts +34 -0
  275. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.d.ts +8 -31
  276. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.mjs +33 -28
  277. package/dist/plugins/MagicToast/src/composables/private/useToastDrag.d.ts +12 -0
  278. package/dist/plugins/MagicToast/src/composables/private/useToastDrag.mjs +312 -0
  279. package/dist/plugins/MagicToast/src/composables/private/useToastListener.d.ts +6 -0
  280. package/dist/plugins/MagicToast/src/composables/private/useToastListener.mjs +25 -0
  281. package/dist/plugins/MagicToast/src/composables/private/useToastScrollLock.d.ts +6 -0
  282. package/dist/plugins/MagicToast/src/composables/private/useToastScrollLock.mjs +59 -0
  283. package/dist/plugins/MagicToast/src/composables/private/useToastState.d.ts +7 -0
  284. package/dist/plugins/MagicToast/src/composables/private/useToastState.mjs +45 -0
  285. package/dist/plugins/MagicToast/src/composables/private/useToastView.d.ts +12 -0
  286. package/dist/plugins/MagicToast/src/composables/private/useToastView.mjs +51 -0
  287. package/dist/plugins/MagicToast/src/composables/useMagicToast.d.ts +14 -8
  288. package/dist/plugins/MagicToast/src/composables/useMagicToast.mjs +34 -23
  289. package/dist/plugins/MagicToast/src/types/index.d.ts +58 -17
  290. package/dist/plugins/MagicToast/src/utils/defaultOptions.d.ts +2 -3
  291. package/dist/plugins/MagicToast/src/utils/defaultOptions.mjs +21 -4
  292. package/dist/plugins/MagicToast/symbols/index.d.ts +3 -0
  293. package/dist/plugins/MagicToast/symbols/index.mjs +2 -0
  294. package/dist/plugins/index.d.ts +1 -1
  295. package/dist/plugins/index.mjs +1 -1
  296. package/dist/utils/css/animations/auto-size-out.css +12 -0
  297. package/dist/utils/css/animations/squash-y.css +5 -0
  298. package/dist/utils/css/animations.css +2 -1
  299. package/dist/utils/index.d.ts +10 -6
  300. package/dist/utils/index.js +41 -56
  301. package/dist/utils/index.js.map +1 -1
  302. package/package.json +62 -58
  303. package/dist/composables/index.d.mts +0 -108
  304. package/dist/composables/index.mjs +0 -383
  305. package/dist/composables/index.mjs.map +0 -1
  306. package/dist/plugins/MagicAutoSize/index.d.ts +0 -4
  307. package/dist/plugins/MagicAutoSize/index.mjs +0 -7
  308. package/dist/plugins/MagicAutoSize/nuxt.mjs +0 -14
  309. package/dist/plugins/MagicAutoSize/src/components/MagicAutoSize.vue +0 -152
  310. package/dist/plugins/MagicAutoSize/src/components/MagicAutoSize.vue.d.ts +0 -29
  311. package/dist/plugins/MagicCommand/src/components/MagicCommandBody.vue +0 -91
  312. package/dist/plugins/MagicCommand/src/components/MagicCommandBody.vue.d.ts +0 -19
  313. package/dist/plugins/MagicCommand/src/components/MagicCommandFooter.vue +0 -5
  314. package/dist/plugins/MagicCommand/src/components/MagicCommandFooter.vue.d.ts +0 -17
  315. package/dist/plugins/MagicCommand/src/components/MagicCommandGroup.vue +0 -5
  316. package/dist/plugins/MagicCommand/src/components/MagicCommandGroup.vue.d.ts +0 -17
  317. package/dist/plugins/MagicCommand/src/components/MagicCommandHead.vue +0 -5
  318. package/dist/plugins/MagicCommand/src/components/MagicCommandHead.vue.d.ts +0 -17
  319. package/dist/plugins/MagicCommand/src/composables/private/useCommandStore.d.ts +0 -35
  320. package/dist/plugins/MagicCommand/src/composables/private/useCommandStore.mjs +0 -67
  321. package/dist/plugins/MagicCookie/src/components/MagicCookie.vue +0 -117
  322. package/dist/plugins/MagicCookie/src/components/MagicCookie.vue.d.ts +0 -27
  323. package/dist/plugins/MagicCookie/src/composables/private/useCookieApi.d.ts +0 -29
  324. package/dist/plugins/MagicCookie/src/composables/private/useCookieApi.mjs +0 -22
  325. package/dist/plugins/MagicPlayer/src/components/MagicAudioPlayer.vue +0 -89
  326. package/dist/plugins/MagicPlayer/src/components/MagicAudioPlayer.vue.d.ts +0 -28
  327. package/dist/plugins/MagicPlayer/src/components/MagicAudioPlayerControls.vue +0 -95
  328. package/dist/plugins/MagicPlayer/src/components/MagicAudioPlayerControls.vue.d.ts +0 -24
  329. package/dist/plugins/MagicPlayer/src/components/MagicPlayer.vue +0 -125
  330. package/dist/plugins/MagicPlayer/src/components/MagicPlayer.vue.d.ts +0 -35
  331. package/dist/plugins/MagicPlayer/src/components/MagicPlayerControls.vue +0 -152
  332. package/dist/plugins/MagicPlayer/src/components/MagicPlayerControls.vue.d.ts +0 -38
  333. package/dist/plugins/MagicScroll/src/components/MagicScrollTransform.vue +0 -42
  334. package/dist/plugins/MagicScroll/src/components/MagicScrollTransform.vue.d.ts +0 -36
  335. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetect.d.ts +0 -56
  336. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetect.mjs +0 -140
  337. package/dist/plugins/MagicToast/src/components/MagicToast.vue +0 -141
  338. package/dist/plugins/MagicToast/src/components/MagicToastComponent.vue +0 -64
  339. package/dist/plugins/MagicToast/src/components/MagicToastComponent.vue.d.ts +0 -30
  340. package/dist/plugins/MagicToast/src/composables/private/useToastApi.d.ts +0 -5
  341. package/dist/plugins/MagicToast/src/composables/private/useToastApi.mjs +0 -22
  342. package/dist/plugins/MagicToast/src/composables/private/useToastInternalApi.d.ts +0 -4
  343. package/dist/plugins/MagicToast/src/composables/private/useToastInternalApi.mjs +0 -28
  344. package/dist/plugins/MagicToast/src/composables/private/useToastStore.d.ts +0 -27
  345. package/dist/plugins/MagicToast/src/composables/private/useToastStore.mjs +0 -41
  346. package/dist/utils/index.d.mts +0 -80
  347. package/dist/utils/index.mjs +0 -200
  348. package/dist/utils/index.mjs.map +0 -1
  349. /package/dist/plugins/{MagicAutoSize → MagicPie}/nuxt.d.ts +0 -0
@@ -18,8 +18,8 @@ export function useMenuKeyListener(instanceId) {
18
18
  } = useMenuView(instanceId);
19
19
  function keyStrokeGuard(e) {
20
20
  switch (true) {
21
- case !state.active:
22
- throw new Error("Menu is not active");
21
+ case (!state.active && state.options.debug):
22
+ throw new Error(`'MagicMenu ${state.id} is not active'`);
23
23
  default:
24
24
  state.input.type = "keyboard";
25
25
  e.preventDefault();
@@ -31,12 +31,13 @@ export function useMenuKeyListener(instanceId) {
31
31
  }
32
32
  function selectFirstItem(view) {
33
33
  const { selectItem } = useMenuItem({ instanceId, viewId: view.id });
34
- selectItem(getEnabledItems(view)[0]?.id);
34
+ selectItem(getEnabledItems(view)[0]?.id, true);
35
35
  }
36
36
  async function onArrowRight(e) {
37
37
  try {
38
38
  keyStrokeGuard(e);
39
- } catch (_e) {
39
+ } catch (e2) {
40
+ console.warn(e2);
40
41
  }
41
42
  if (!state.input.view) {
42
43
  return;
@@ -64,7 +65,8 @@ export function useMenuKeyListener(instanceId) {
64
65
  function onArrowLeft(e) {
65
66
  try {
66
67
  keyStrokeGuard(e);
67
- } catch (_e) {
68
+ } catch (e2) {
69
+ console.warn(e2);
68
70
  }
69
71
  if (!state.input.view) {
70
72
  return;
@@ -87,7 +89,8 @@ export function useMenuKeyListener(instanceId) {
87
89
  function onArrowUp(e) {
88
90
  try {
89
91
  keyStrokeGuard(e);
90
- } catch (_e) {
92
+ } catch (e2) {
93
+ console.warn(e2);
91
94
  }
92
95
  if (!state.input.view) {
93
96
  return;
@@ -99,18 +102,19 @@ export function useMenuKeyListener(instanceId) {
99
102
  const prevIndex = enabledItems.findIndex((item) => item.active) - 1;
100
103
  if (prevIndex >= 0) {
101
104
  const { selectItem } = useMenuItem({ instanceId, viewId });
102
- selectItem(enabledItems[prevIndex]?.id);
105
+ selectItem(enabledItems[prevIndex]?.id, true);
103
106
  unselectUnrelatedViews(viewId);
104
107
  } else if (prevIndex !== -1) {
105
108
  const { selectItem } = useMenuItem({ instanceId, viewId });
106
- selectItem(enabledItems[enabledItems.length - 1]?.id);
109
+ selectItem(enabledItems[enabledItems.length - 1]?.id, true);
107
110
  unselectUnrelatedViews(viewId);
108
111
  }
109
112
  }
110
113
  function onArrowDown(e) {
111
114
  try {
112
115
  keyStrokeGuard(e);
113
- } catch (_e) {
116
+ } catch (e2) {
117
+ console.warn(e2);
114
118
  }
115
119
  if (!state.input.view) {
116
120
  return;
@@ -122,14 +126,15 @@ export function useMenuKeyListener(instanceId) {
122
126
  const nextIndex = enabledItems.findIndex((item) => item.active) + 1;
123
127
  if (nextIndex >= 0) {
124
128
  const { selectItem } = useMenuItem({ instanceId, viewId });
125
- selectItem(enabledItems[nextIndex]?.id);
129
+ selectItem(enabledItems[nextIndex]?.id, true);
126
130
  unselectUnrelatedViews(viewId);
127
131
  }
128
132
  }
129
133
  function onEscape(e) {
130
134
  try {
131
135
  keyStrokeGuard(e);
132
- } catch (_e) {
136
+ } catch (e2) {
137
+ console.warn(e2);
133
138
  }
134
139
  state.active = false;
135
140
  state.input.view = "";
@@ -138,7 +143,8 @@ export function useMenuKeyListener(instanceId) {
138
143
  async function onEnter(e) {
139
144
  try {
140
145
  keyStrokeGuard(e);
141
- } catch (_e) {
146
+ } catch (e2) {
147
+ console.warn(e2);
142
148
  }
143
149
  if (!state.input.view) {
144
150
  return;
@@ -160,7 +166,8 @@ export function useMenuKeyListener(instanceId) {
160
166
  if (state.active) {
161
167
  try {
162
168
  keyStrokeGuard(e);
163
- } catch (_e) {
169
+ } catch (e2) {
170
+ console.warn(e2);
164
171
  }
165
172
  }
166
173
  }
@@ -6,7 +6,7 @@ export function useMenuState(instanceId) {
6
6
  function createState(id) {
7
7
  const state = {
8
8
  id,
9
- options: defaultOptions,
9
+ options: { ...defaultOptions },
10
10
  views: [],
11
11
  active: false,
12
12
  input: {
@@ -18,22 +18,22 @@ export function useMenuState(instanceId) {
18
18
  return reactive(state);
19
19
  }
20
20
  function addState(id) {
21
- const instance = createState(id);
22
- menuStateStore.value = [...menuStateStore.value, instance];
23
- return instance;
21
+ const state = createState(id);
22
+ menuStateStore.value = [...menuStateStore.value, state];
23
+ return state;
24
24
  }
25
25
  function initializeState(options) {
26
- let instance = menuStateStore.value.find((instance2) => {
27
- return instance2.id === toValue(instanceId);
26
+ let state = menuStateStore.value.find((entry) => {
27
+ return entry.id === toValue(instanceId);
28
28
  });
29
- if (!instance) {
30
- instance = addState(toValue(instanceId));
29
+ if (!state) {
30
+ state = addState(toValue(instanceId));
31
31
  }
32
32
  if (options) {
33
33
  const mappedOptions = defu(options, defaultOptions);
34
- instance.options = mappedOptions;
34
+ state.options = mappedOptions;
35
35
  }
36
- return instance;
36
+ return state;
37
37
  }
38
38
  function deleteState() {
39
39
  menuStateStore.value = menuStateStore.value.filter(
@@ -7,7 +7,7 @@ type UseMenuTriggerArgs = {
7
7
  itemId?: string;
8
8
  mappedDisabled: ComputedRef<boolean>;
9
9
  mappedTrigger: ComputedRef<Interaction[]>;
10
- elRef: Ref<InstanceType<typeof Primitive> | undefined>;
10
+ elRef: Ref<InstanceType<typeof Primitive> | null>;
11
11
  };
12
12
  export declare function useMenuTrigger(args: UseMenuTriggerArgs): {
13
13
  onMouseenter: () => void;
@@ -15,7 +15,7 @@ export function useMenuTrigger(args) {
15
15
  const { shift, control } = useMagicKeys();
16
16
  function onRightClick(e) {
17
17
  switch (e.button) {
18
- case 2:
18
+ case 2: {
19
19
  const delay = state.options.delay?.rightClick ?? 0;
20
20
  selectView(viewId, delay);
21
21
  state.active = true;
@@ -26,6 +26,7 @@ export function useMenuTrigger(args) {
26
26
  state.input.view = viewId;
27
27
  }
28
28
  break;
29
+ }
29
30
  default:
30
31
  state.active = false;
31
32
  unselectView(viewId);
@@ -58,7 +59,7 @@ export function useMenuTrigger(args) {
58
59
  function onClick(e) {
59
60
  if (mappedTrigger.value.includes("click") && !mappedDisabled.value && e.button === 0 && viewId) {
60
61
  switch (true) {
61
- case !state.active:
62
+ case !state.active: {
62
63
  const delay = state.options.delay?.click ?? ModeDelayClick[state.options.mode];
63
64
  state.active = true;
64
65
  selectView(viewId, delay);
@@ -66,10 +67,12 @@ export function useMenuTrigger(args) {
66
67
  state.input.view = viewId;
67
68
  }
68
69
  break;
69
- case (state.active && !itemId):
70
+ }
71
+ case (state.active && !itemId): {
70
72
  state.active = false;
71
73
  unselectView(viewId);
72
74
  break;
75
+ }
73
76
  }
74
77
  }
75
78
  if (mappedTrigger.value.includes("right-click") && viewId) {
@@ -2,13 +2,13 @@ import { type MaybeRef } from 'vue';
2
2
  import type { MenuView } from '../../types/index.js';
3
3
  type InitializeViewArgs = Pick<MenuView, 'id' | 'parent' | 'placement'>;
4
4
  export declare function useMenuView(instanceId: MaybeRef<string>): {
5
- currentView: import("vue").ComputedRef<MenuView>;
5
+ currentView: import("vue").ComputedRef<MenuView | undefined>;
6
6
  initializeView: (args: InitializeViewArgs) => MenuView;
7
7
  deleteView: (id: string) => void;
8
8
  getView: (id: string) => MenuView | undefined;
9
9
  getRelativeViewIndex: (id: string) => number;
10
- getNextView: (id: string) => MenuView;
11
- getPreviousView: (id: string) => MenuView;
10
+ getNextView: (id: string) => MenuView | undefined;
11
+ getPreviousView: (id: string) => MenuView | undefined;
12
12
  getTopLevelView: () => MenuView | undefined;
13
13
  getNestedView: (itemId: string) => MenuView | undefined;
14
14
  getParentView: (id: string) => MenuView | undefined;
@@ -1,19 +1,27 @@
1
1
  import { reactive, computed, toValue } from "vue";
2
2
  import { useMenuState } from "./useMenuState.mjs";
3
+ function isAbortError(error) {
4
+ return error instanceof DOMException && error.name === "AbortError";
5
+ }
3
6
  export function useMenuView(instanceId) {
4
7
  const { initializeState } = useMenuState(instanceId);
5
8
  const state = initializeState();
6
- const currentView = computed(
7
- () => state.views.filter((view) => view.active).reduce(
9
+ const currentInstanceId = toValue(instanceId);
10
+ const currentView = computed(() => {
11
+ const activeViews = state.views.filter((view) => view.active);
12
+ if (activeViews.length === 0) return void 0;
13
+ if (activeViews.length === 1) return activeViews[0];
14
+ return activeViews.reduce(
8
15
  (a, b) => a.parent.views.length >= b.parent.views.length ? a : b
9
- )
10
- );
16
+ );
17
+ });
18
+ const viewMap = /* @__PURE__ */ new Map();
11
19
  function createView(args) {
12
20
  const { id, parent, placement } = args;
13
21
  if (parent.views.length === 0) {
14
- parent.views.push(toValue(instanceId));
22
+ parent.views.push(currentInstanceId);
15
23
  }
16
- const view = {
24
+ const view = reactive({
17
25
  id,
18
26
  parent,
19
27
  active: false,
@@ -24,124 +32,152 @@ export function useMenuView(instanceId) {
24
32
  selectAbortController: new AbortController(),
25
33
  unselectAbortController: new AbortController()
26
34
  }
27
- };
28
- return reactive(view);
35
+ });
36
+ viewMap.set(id, view);
37
+ return view;
29
38
  }
30
39
  function addView(args) {
31
40
  const view = createView(args);
32
- state.views = [...state.views, view];
41
+ state.views.push(view);
33
42
  return view;
34
43
  }
35
44
  function delay(ms, signal) {
36
45
  return new Promise((resolve, reject) => {
37
46
  const timer = setTimeout(resolve, ms);
38
- signal.addEventListener("abort", () => {
47
+ const abortHandler = () => {
39
48
  clearTimeout(timer);
40
49
  reject(new DOMException("Aborted", "AbortError"));
41
- });
50
+ };
51
+ signal.addEventListener("abort", abortHandler, { once: true });
42
52
  });
43
53
  }
44
- function initializeView(args) {
45
- const { id } = args;
46
- let instance = getView(id);
47
- if (!instance) instance = addView(args);
48
- return instance;
54
+ function getView(id) {
55
+ let view = viewMap.get(id);
56
+ if (!view) {
57
+ view = state.views.find((v) => v.id === id);
58
+ if (view) viewMap.set(id, view);
59
+ }
60
+ return view;
49
61
  }
50
62
  function deleteView(id) {
51
- state.views = state.views?.filter((view) => view.id !== id);
52
- }
53
- function getView(id) {
54
- return state.views?.find((view) => view.id === id);
63
+ const index = state.views.findIndex((view) => view.id === id);
64
+ if (index !== -1) {
65
+ state.views.splice(index, 1);
66
+ viewMap.delete(id);
67
+ }
55
68
  }
56
69
  function getRelativeViewIndex(id) {
57
70
  const view = getView(id);
58
- const nestingLevel = view?.parent.views.length;
59
- return state.views?.filter((view2) => view2.parent.views.length === nestingLevel).findIndex((view2) => view2.id === id);
71
+ if (!view) {
72
+ return -1;
73
+ }
74
+ const nestingLevel = view.parent.views.length;
75
+ return state.views.findIndex(
76
+ (v) => v.parent.views.length === nestingLevel && v.id === id
77
+ );
60
78
  }
61
79
  function getNextView(id) {
62
- const index = state.views?.findIndex((view) => view.id === id);
63
- return state.views?.[index + 1];
80
+ const index = state.views.findIndex((view) => view.id === id);
81
+ return index !== -1 ? state.views[index + 1] : void 0;
64
82
  }
65
83
  function getPreviousView(id) {
66
- const index = state.views?.findIndex((view) => view.id === id);
67
- return state.views?.[index - 1];
84
+ const index = state.views.findIndex((view) => view.id === id);
85
+ return index > 0 ? state.views[index - 1] : void 0;
68
86
  }
69
87
  function getTopLevelView() {
70
- return state.views?.find((view) => view.active && !view.parent.item);
88
+ return state.views.find((view) => view.active && !view.parent.item);
71
89
  }
72
90
  function getNestedView(itemId) {
73
- return state.views?.find((view) => view.parent.item === itemId);
91
+ return state.views.find((view) => view.parent.item === itemId);
74
92
  }
75
93
  function getParentView(id) {
76
94
  const view = getView(id);
77
- const parentId = view?.parent.views[view.parent.views.length - 1];
78
- return getView(parentId ?? "");
95
+ if (!view) {
96
+ return void 0;
97
+ }
98
+ const parentId = view.parent.views[view.parent.views.length - 1];
99
+ return parentId ? getView(parentId) : void 0;
79
100
  }
80
101
  function getUnrelatedViews(id) {
81
- const argView = getView(id);
82
- return state.views?.filter(
83
- (view) => !view.parent.views.includes(id) && !argView?.parent.views.includes(view.id) && view.id !== id
84
- );
102
+ const view = getView(id);
103
+ if (!view) {
104
+ return [];
105
+ }
106
+ const parentViewsSet = new Set(view.parent.views);
107
+ return state.views.filter((v) => v.id !== id && !parentViewsSet.has(v.id));
85
108
  }
86
109
  function getDescendingViews(id) {
87
- const argView = getView(id);
88
- return state.views?.filter(
89
- (view) => view.id !== id && !argView?.parent.views.includes(view.id)
90
- );
110
+ const view = getView(id);
111
+ if (!view) {
112
+ return [];
113
+ }
114
+ const parentViewsSet = new Set(view.parent.views);
115
+ return state.views.filter((v) => v.id !== id && !parentViewsSet.has(v.id));
91
116
  }
92
117
  async function selectView(id, delayMs = 0) {
93
- const instance = getView(id);
94
- if (instance) {
95
- if (instance.state.unselectAbortController) {
96
- instance.state.unselectAbortController.abort();
97
- }
98
- const abortController = new AbortController();
99
- instance.state.selectAbortController = abortController;
100
- try {
118
+ const view = getView(id);
119
+ if (!view) {
120
+ return;
121
+ }
122
+ if (view.state.unselectAbortController) {
123
+ view.state.unselectAbortController.abort();
124
+ }
125
+ const abortController = new AbortController();
126
+ view.state.selectAbortController = abortController;
127
+ try {
128
+ if (delayMs > 0) {
101
129
  await delay(delayMs, abortController.signal);
102
- instance.active = true;
103
- unselectUnrelatedViews(id);
104
- } catch (error) {
105
- if (error.name === "AbortError" && state.options.debug) {
106
- console.log(
107
- `selectView() was interrupted by a call to unselectView()`
108
- );
109
- }
130
+ }
131
+ view.active = true;
132
+ unselectUnrelatedViews(id);
133
+ } catch (error) {
134
+ if (isAbortError(error) && state.options.debug) {
135
+ console.log("selectView() was interrupted by a call to unselectView()");
110
136
  }
111
137
  }
112
138
  }
113
139
  async function unselectView(id, delayMs = 0) {
114
- const instance = getView(id);
115
- if (instance) {
116
- if (instance.state.selectAbortController) {
117
- instance.state.selectAbortController.abort();
118
- }
119
- const abortController = new AbortController();
120
- instance.state.unselectAbortController = abortController;
121
- try {
140
+ const view = getView(id);
141
+ if (!view) {
142
+ return;
143
+ }
144
+ if (view.state.selectAbortController) {
145
+ view.state.selectAbortController.abort();
146
+ }
147
+ const abortController = new AbortController();
148
+ view.state.unselectAbortController = abortController;
149
+ try {
150
+ if (delayMs > 0) {
122
151
  await delay(delayMs, abortController.signal);
123
- instance.active = false;
124
- } catch (error) {
125
- if (error.name === "AbortError" && state.options.debug) {
126
- console.log(
127
- `unselectView() was interrupted by a call to selectView()`
128
- );
129
- }
152
+ }
153
+ view.active = false;
154
+ } catch (error) {
155
+ if (isAbortError(error) && state.options.debug) {
156
+ console.log("unselectView() was interrupted by a call to selectView()");
130
157
  }
131
158
  }
132
159
  }
133
160
  function unselectUnrelatedViews(id) {
134
- const unrelatedViews = getUnrelatedViews(id);
135
- unrelatedViews.forEach((view) => view.active = false);
161
+ const views = getUnrelatedViews(id);
162
+ for (const view of views) {
163
+ view.active = false;
164
+ }
136
165
  }
137
166
  function unselectDescendingViews(id) {
138
- const descendingViews = getDescendingViews(id);
139
- descendingViews.forEach((view) => view.active = false);
167
+ const views = getDescendingViews(id);
168
+ for (const view of views) {
169
+ view.active = false;
170
+ }
140
171
  }
141
172
  function unselectAllViews() {
142
- state.views?.forEach((view) => {
173
+ for (const view of state.views) {
143
174
  view.active = false;
144
- });
175
+ }
176
+ }
177
+ function initializeView(args) {
178
+ const { id } = args;
179
+ const view = getView(id) ?? addView(args);
180
+ return view;
145
181
  }
146
182
  return {
147
183
  currentView,
@@ -1,11 +1,11 @@
1
- import type { InjectionKey, MaybeRef } from 'vue';
1
+ import type { InjectionKey, MaybeRef, Ref } from 'vue';
2
2
  declare const MagicMenuInstanceId: InjectionKey<MaybeRef<string>>;
3
3
  declare const MagicMenuParentTree: InjectionKey<string[]>;
4
4
  declare const MagicMenuViewId: InjectionKey<string>;
5
- declare const MagicMenuViewActive: InjectionKey<boolean>;
5
+ declare const MagicMenuViewActive: InjectionKey<Ref<boolean>>;
6
6
  declare const MagicMenuContentId: InjectionKey<string>;
7
7
  declare const MagicMenuItemId: InjectionKey<string>;
8
- declare const MagicMenuItemActive: InjectionKey<boolean>;
8
+ declare const MagicMenuItemActive: InjectionKey<Ref<boolean>>;
9
9
  declare const MagicMenuChannelId: InjectionKey<string>;
10
- declare const MagicMenuChannelActive: InjectionKey<boolean>;
10
+ declare const MagicMenuChannelActive: InjectionKey<Ref<boolean>>;
11
11
  export { MagicMenuInstanceId, MagicMenuParentTree, MagicMenuViewId, MagicMenuViewActive, MagicMenuContentId, MagicMenuItemId, MagicMenuItemActive, MagicMenuChannelId, MagicMenuChannelActive, };
@@ -34,8 +34,7 @@ export interface RequiredMagicMenuOptions {
34
34
  channel: string;
35
35
  };
36
36
  }
37
- export interface OptionalMagicMenuOptions extends Pick<MagicMenuOptions, 'scrollLock' | 'floating' | 'delay'> {
38
- }
37
+ export type OptionalMagicMenuOptions = Pick<MagicMenuOptions, 'scrollLock' | 'floating' | 'delay'>;
39
38
  export type CombinedMagicMenuOptions = RequiredMagicMenuOptions & OptionalMagicMenuOptions;
40
39
  export type Interaction = 'click' | 'mouseenter' | 'right-click';
41
40
  export type Coordinates = {
@@ -2,10 +2,10 @@ export declare enum ModeDelayMouseenter {
2
2
  menubar = 0,
3
3
  dropdown = 0,
4
4
  context = 0,
5
- navigation = 50
5
+ navigation = 0
6
6
  }
7
7
  export declare enum ModeDelayMouseleave {
8
- navigation = 200
8
+ navigation = 100
9
9
  }
10
10
  export declare enum ModeDelayClick {
11
11
  menubar = 0,
@@ -2,11 +2,11 @@ export var ModeDelayMouseenter = /* @__PURE__ */ ((ModeDelayMouseenter2) => {
2
2
  ModeDelayMouseenter2[ModeDelayMouseenter2["menubar"] = 0] = "menubar";
3
3
  ModeDelayMouseenter2[ModeDelayMouseenter2["dropdown"] = 0] = "dropdown";
4
4
  ModeDelayMouseenter2[ModeDelayMouseenter2["context"] = 0] = "context";
5
- ModeDelayMouseenter2[ModeDelayMouseenter2["navigation"] = 50] = "navigation";
5
+ ModeDelayMouseenter2[ModeDelayMouseenter2["navigation"] = 0] = "navigation";
6
6
  return ModeDelayMouseenter2;
7
7
  })(ModeDelayMouseenter || {});
8
8
  export var ModeDelayMouseleave = /* @__PURE__ */ ((ModeDelayMouseleave2) => {
9
- ModeDelayMouseleave2[ModeDelayMouseleave2["navigation"] = 200] = "navigation";
9
+ ModeDelayMouseleave2[ModeDelayMouseleave2["navigation"] = 100] = "navigation";
10
10
  return ModeDelayMouseleave2;
11
11
  })(ModeDelayMouseleave || {});
12
12
  export var ModeDelayClick = /* @__PURE__ */ ((ModeDelayClick2) => {