@maas/vue-equipment 1.0.0-beta.1 → 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 (163) 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.json +1 -1
  6. package/dist/nuxt/module.mjs +9 -2
  7. package/dist/plugins/.turbo/turbo-lint.log +1 -9
  8. package/dist/plugins/MagicAccordion/demo/data/footer.json +1 -1
  9. package/dist/plugins/MagicAccordion/src/components/MagicAccordionContent.vue.d.ts +33 -22
  10. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue +2 -2
  11. package/dist/plugins/MagicAccordion/src/components/MagicAccordionProvider.vue.d.ts +12 -21
  12. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue +15 -13
  13. package/dist/plugins/MagicAccordion/src/components/MagicAccordionTrigger.vue.d.ts +23 -59
  14. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue +2 -1
  15. package/dist/plugins/MagicAccordion/src/components/MagicAccordionView.vue.d.ts +17 -22
  16. package/dist/plugins/MagicAccordion/src/composables/private/useAccordionTrigger.d.ts +1 -1
  17. package/dist/plugins/MagicAccordion/src/symbols/index.d.ts +2 -2
  18. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue +11 -4
  19. package/dist/plugins/MagicCommand/src/components/MagicCommandContent.vue.d.ts +24 -13
  20. package/dist/plugins/MagicCommand/src/components/MagicCommandDrawer.vue.d.ts +12 -21
  21. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue +0 -4
  22. package/dist/plugins/MagicCommand/src/components/MagicCommandItem.vue.d.ts +29 -28
  23. package/dist/plugins/MagicCommand/src/components/MagicCommandModal.vue.d.ts +12 -21
  24. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue +5 -7
  25. package/dist/plugins/MagicCommand/src/components/MagicCommandProvider.vue.d.ts +12 -58
  26. package/dist/plugins/MagicCommand/src/components/MagicCommandRenderer.vue +7 -7
  27. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue +7 -6
  28. package/dist/plugins/MagicCommand/src/components/MagicCommandTrigger.vue.d.ts +25 -60
  29. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue +2 -2
  30. package/dist/plugins/MagicCommand/src/components/MagicCommandView.vue.d.ts +15 -22
  31. package/dist/plugins/MagicCommand/src/composables/private/useCommandScroll.d.ts +2 -2
  32. package/dist/plugins/MagicCommand/src/composables/private/useCommandState.mjs +1 -1
  33. package/dist/plugins/MagicCommand/src/composables/private/useCommandTrigger.d.ts +1 -1
  34. package/dist/plugins/MagicCommand/src/symbols/index.d.ts +4 -4
  35. package/dist/plugins/MagicCommand/src/types/index.d.ts +1 -1
  36. package/dist/plugins/MagicCookie/src/components/MagicCookieItem.vue.d.ts +13 -22
  37. package/dist/plugins/MagicCookie/src/components/MagicCookieProvider.vue.d.ts +9 -21
  38. package/dist/plugins/MagicCookie/src/components/MagicCookieView.vue.d.ts +21 -12
  39. package/dist/plugins/MagicCookie/src/symbols/index.d.ts +2 -2
  40. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue +18 -24
  41. package/dist/plugins/MagicDraggable/src/components/MagicDraggable.vue.d.ts +94 -23
  42. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.d.ts +2 -2
  43. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableDrag.mjs +9 -5
  44. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableScrollLock.mjs +34 -14
  45. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.d.ts +6 -4
  46. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableSnap.mjs +54 -19
  47. package/dist/plugins/MagicDraggable/src/composables/private/useDraggableState.mjs +4 -4
  48. package/dist/plugins/MagicDraggable/src/types/index.d.ts +1 -1
  49. package/dist/plugins/MagicDraggable/src/utils/defaultOptions.mjs +1 -1
  50. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue +33 -24
  51. package/dist/plugins/MagicDrawer/src/components/MagicDrawer.vue.d.ts +165 -24
  52. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDOM.mjs +34 -14
  53. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.d.ts +2 -2
  54. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerDrag.mjs +3 -3
  55. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.d.ts +1 -1
  56. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerGuards.mjs +28 -10
  57. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerProgress.d.ts +2 -2
  58. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.d.ts +3 -3
  59. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerSnap.mjs +16 -14
  60. package/dist/plugins/MagicDrawer/src/composables/private/useDrawerWheel.d.ts +1 -1
  61. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue +15 -15
  62. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue.d.ts +14 -25
  63. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.d.ts +1 -1
  64. package/dist/plugins/MagicMarquee/src/composables/private/useMarqueeApi.mjs +8 -2
  65. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue +4 -5
  66. package/dist/plugins/MagicMenu/src/components/MagicMenuChannel.vue.d.ts +18 -21
  67. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue +3 -6
  68. package/dist/plugins/MagicMenu/src/components/MagicMenuContent.vue.d.ts +41 -24
  69. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue +5 -7
  70. package/dist/plugins/MagicMenu/src/components/MagicMenuFloat.vue.d.ts +40 -25
  71. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue +3 -14
  72. package/dist/plugins/MagicMenu/src/components/MagicMenuItem.vue.d.ts +31 -28
  73. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue +19 -8
  74. package/dist/plugins/MagicMenu/src/components/MagicMenuProvider.vue.d.ts +12 -58
  75. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue +28 -38
  76. package/dist/plugins/MagicMenu/src/components/MagicMenuRemote.vue.d.ts +19 -23
  77. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue +29 -19
  78. package/dist/plugins/MagicMenu/src/components/MagicMenuTrigger.vue.d.ts +27 -60
  79. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue +2 -2
  80. package/dist/plugins/MagicMenu/src/components/MagicMenuView.vue.d.ts +15 -22
  81. package/dist/plugins/MagicMenu/src/composables/private/useMenuCallback.mjs +1 -1
  82. package/dist/plugins/MagicMenu/src/composables/private/useMenuChannel.mjs +15 -5
  83. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.d.ts +3 -3
  84. package/dist/plugins/MagicMenu/src/composables/private/useMenuCursor.mjs +4 -4
  85. package/dist/plugins/MagicMenu/src/composables/private/useMenuDOM.mjs +35 -15
  86. package/dist/plugins/MagicMenu/src/composables/private/useMenuTrigger.d.ts +1 -1
  87. package/dist/plugins/MagicMenu/src/composables/private/useMenuView.mjs +18 -6
  88. package/dist/plugins/MagicMenu/src/symbols/index.d.ts +4 -4
  89. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.d.ts +2 -2
  90. package/dist/plugins/MagicMenu/src/utils/modeDelayDefaults.mjs +2 -2
  91. package/dist/plugins/MagicModal/src/components/MagicModal.vue +9 -9
  92. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +44 -22
  93. package/dist/plugins/MagicModal/src/composables/private/useModalDOM.mjs +34 -14
  94. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue +14 -14
  95. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue.d.ts +1 -10
  96. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.d.ts +3 -3
  97. package/dist/plugins/MagicNoise/src/composables/private/useNoiseApi.mjs +2 -2
  98. package/dist/plugins/MagicPie/index.d.ts +7 -0
  99. package/dist/plugins/MagicPie/index.mjs +8 -0
  100. package/dist/plugins/MagicPie/nuxt.d.ts +2 -0
  101. package/dist/plugins/MagicPie/nuxt.mjs +23 -0
  102. package/dist/plugins/MagicPie/src/components/MagicPie.vue +202 -0
  103. package/dist/plugins/MagicPie/src/components/MagicPie.vue.d.ts +7 -0
  104. package/dist/plugins/MagicPie/src/composables/private/usePieState.d.ts +6 -0
  105. package/dist/plugins/MagicPie/src/composables/private/usePieState.mjs +33 -0
  106. package/dist/plugins/MagicPie/src/composables/useMagicPie.d.ts +13 -0
  107. package/dist/plugins/MagicPie/src/composables/useMagicPie.mjs +43 -0
  108. package/dist/plugins/MagicPie/src/types/index.d.ts +9 -0
  109. package/dist/plugins/MagicPie/src/types/index.mjs +0 -0
  110. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudio.vue +14 -8
  111. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue +32 -38
  112. package/dist/plugins/MagicPlayer/src/components/MagicPlayerAudioControls.vue.d.ts +27 -26
  113. package/dist/plugins/MagicPlayer/src/components/MagicPlayerDisplayTime.vue.d.ts +1 -10
  114. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue +19 -8
  115. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue.d.ts +1 -10
  116. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue +2 -2
  117. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue.d.ts +29 -14
  118. package/dist/plugins/MagicPlayer/src/components/MagicPlayerPoster.vue.d.ts +13 -11
  119. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue +3 -4
  120. package/dist/plugins/MagicPlayer/src/components/MagicPlayerProvider.vue.d.ts +23 -23
  121. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideo.vue +3 -4
  122. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue +24 -25
  123. package/dist/plugins/MagicPlayer/src/components/MagicPlayerVideoControls.vue.d.ts +61 -33
  124. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.d.ts +2 -2
  125. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerAudioApi.mjs +3 -3
  126. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.d.ts +10 -10
  127. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerControlsApi.mjs +15 -9
  128. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.d.ts +13 -13
  129. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerMediaApi.mjs +18 -11
  130. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.d.ts +3 -3
  131. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerRuntime.mjs +3 -3
  132. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.d.ts +6 -6
  133. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerVideoApi.mjs +4 -4
  134. package/dist/plugins/MagicPlayer/src/composables/useMagicPlayer.d.ts +20 -20
  135. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue +17 -8
  136. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue.d.ts +9 -23
  137. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue +11 -11
  138. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue.d.ts +9 -23
  139. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue.d.ts +45 -37
  140. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +18 -10
  141. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue.d.ts +13 -24
  142. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.d.ts +2 -2
  143. package/dist/plugins/MagicScroll/src/composables/private/useCollisionDetection.mjs +3 -3
  144. package/dist/plugins/MagicScroll/src/composables/private/useScrollApi.mjs +14 -4
  145. package/dist/plugins/MagicScroll/src/symbols/index.d.ts +1 -1
  146. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue +23 -29
  147. package/dist/plugins/MagicToast/src/components/MagicToastProvider.vue.d.ts +1 -10
  148. package/dist/plugins/MagicToast/src/components/MagicToastView.vue +8 -11
  149. package/dist/plugins/MagicToast/src/components/MagicToastView.vue.d.ts +24 -23
  150. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.d.ts +2 -2
  151. package/dist/plugins/MagicToast/src/composables/private/useToastCallback.mjs +5 -5
  152. package/dist/plugins/MagicToast/src/composables/private/useToastDrag.mjs +22 -22
  153. package/dist/plugins/MagicToast/src/composables/private/useToastScrollLock.mjs +33 -15
  154. package/dist/plugins/MagicToast/src/composables/useMagicToast.d.ts +1 -0
  155. package/dist/plugins/MagicToast/src/composables/useMagicToast.mjs +10 -2
  156. package/dist/plugins/MagicToast/src/types/index.d.ts +1 -1
  157. package/dist/plugins/MagicToast/src/utils/defaultOptions.mjs +1 -1
  158. package/dist/plugins/index.d.ts +1 -0
  159. package/dist/plugins/index.mjs +1 -0
  160. package/dist/utils/index.d.ts +9 -4
  161. package/dist/utils/index.js +39 -3
  162. package/dist/utils/index.js.map +1 -1
  163. package/package.json +16 -7
@@ -1,13 +1,13 @@
1
- import { type MaybeRef } from 'vue';
1
+ import { type MaybeRef, type Ref } from 'vue';
2
2
  export type UsePlayerVideoApiArgs = {
3
3
  id: MaybeRef<string>;
4
- playerRef?: MaybeRef<HTMLElement | undefined>;
5
- videoRef?: MaybeRef<HTMLVideoElement | undefined>;
4
+ playerRef?: Ref<HTMLElement | null>;
5
+ videoRef?: Ref<HTMLVideoElement | null>;
6
6
  };
7
7
  export declare function usePlayerVideoApi(args: UsePlayerVideoApiArgs): {
8
- mouseEntered: import("vue").Ref<boolean, boolean>;
9
- isFullscreen: import("vue").Ref<boolean, boolean>;
10
- touched: import("vue").Ref<boolean, boolean>;
8
+ mouseEntered: import("vue").ShallowRef<boolean, boolean>;
9
+ isFullscreen: Ref<boolean, boolean>;
10
+ touched: import("vue").ShallowRef<boolean, boolean>;
11
11
  play: () => void;
12
12
  pause: () => void;
13
13
  togglePlay: () => void;
@@ -1,14 +1,14 @@
1
- import { ref, watch, toValue } from "vue";
1
+ import { ref, shallowRef, watch, toValue } from "vue";
2
2
  import { useFullscreen } from "@vueuse/core";
3
3
  import { isIOS } from "@maas/vue-equipment/utils";
4
4
  import { usePlayerStateEmitter } from "./usePlayerStateEmitter.mjs";
5
5
  import { usePlayerMediaApi } from "./usePlayerMediaApi.mjs";
6
6
  export function usePlayerVideoApi(args) {
7
7
  const { id, playerRef, videoRef } = args;
8
- const fullscreenTarget = ref(void 0);
8
+ const fullscreenTarget = ref(null);
9
9
  const { playing, currentTime, muted } = usePlayerMediaApi({ id });
10
- const touched = ref(false);
11
- const mouseEntered = ref(false);
10
+ const touched = shallowRef(false);
11
+ const mouseEntered = shallowRef(false);
12
12
  const { isFullscreen, enter, exit } = useFullscreen(fullscreenTarget);
13
13
  function play() {
14
14
  playing.value = true;
@@ -1,23 +1,23 @@
1
1
  import type { MaybeRef } from 'vue';
2
2
  export declare function useMagicPlayer(id: MaybeRef<string>): {
3
3
  mediaApi: {
4
- currentTime: import("vue").Ref<number, number>;
4
+ currentTime: import("vue").ShallowRef<number, number>;
5
5
  remainingTime: import("vue").ComputedRef<number>;
6
- duration: import("vue").Ref<number, number>;
7
- seeking: import("vue").Ref<boolean, boolean>;
8
- volume: import("vue").Ref<number, number>;
9
- rate: import("vue").Ref<number, number>;
10
- waiting: import("vue").Ref<boolean, boolean>;
11
- ended: import("vue").Ref<boolean, boolean>;
12
- playing: import("vue").Ref<boolean, boolean>;
13
- stalled: import("vue").Ref<boolean, boolean>;
6
+ duration: import("vue").ShallowRef<number, number>;
7
+ seeking: import("vue").ShallowRef<boolean, boolean>;
8
+ volume: import("vue").ShallowRef<number, number>;
9
+ rate: import("vue").ShallowRef<number, number>;
10
+ waiting: import("vue").ShallowRef<boolean, boolean>;
11
+ ended: import("vue").ShallowRef<boolean, boolean>;
12
+ playing: import("vue").ShallowRef<boolean, boolean>;
13
+ stalled: import("vue").ShallowRef<boolean, boolean>;
14
14
  buffered: import("vue").Ref<[number, number][], import("../types").Buffered | [number, number][]>;
15
- muted: import("vue").Ref<boolean, boolean>;
15
+ muted: import("vue").ShallowRef<boolean, boolean>;
16
16
  };
17
17
  videoApi: {
18
- mouseEntered: import("vue").Ref<boolean, boolean>;
18
+ mouseEntered: import("vue").ShallowRef<boolean, boolean>;
19
19
  isFullscreen: import("vue").Ref<boolean, boolean>;
20
- touched: import("vue").Ref<boolean, boolean>;
20
+ touched: import("vue").ShallowRef<boolean, boolean>;
21
21
  play: () => void;
22
22
  pause: () => void;
23
23
  togglePlay: () => void;
@@ -30,14 +30,14 @@ export declare function useMagicPlayer(id: MaybeRef<string>): {
30
30
  onMouseleave: () => void;
31
31
  };
32
32
  controlsApi: {
33
- mouseEntered: import("vue").Ref<boolean, boolean>;
34
- dragging: import("vue").Ref<boolean, boolean>;
35
- seekedTime: import("vue").Ref<number, number>;
36
- seekedPercentage: import("vue").Ref<number, number>;
37
- scrubbedPercentage: import("vue").Ref<number, number>;
33
+ mouseEntered: import("vue").ShallowRef<boolean, boolean>;
34
+ dragging: import("vue").ShallowRef<boolean, boolean>;
35
+ seekedTime: import("vue").ShallowRef<number, number>;
36
+ seekedPercentage: import("vue").ShallowRef<number, number>;
37
+ scrubbedPercentage: import("vue").ShallowRef<number, number>;
38
38
  bufferedPercentage: import("vue").ComputedRef<number>;
39
- thumbPercentage: import("vue").Ref<number, number>;
40
- popoverOffsetX: import("vue").Ref<number, number>;
39
+ thumbPercentage: import("vue").ShallowRef<number, number>;
40
+ popoverOffsetX: import("vue").ShallowRef<number, number>;
41
41
  onMouseenter: () => void;
42
42
  onMouseleave: () => void;
43
43
  onPointerdown: (e: MouseEvent | TouchEvent) => void;
@@ -66,7 +66,7 @@ export declare function useMagicPlayer(id: MaybeRef<string>): {
66
66
  } | undefined>;
67
67
  };
68
68
  playerRuntime: {
69
- loaded: import("vue").Ref<boolean, boolean>;
69
+ loaded: import("vue").ShallowRef<boolean, boolean>;
70
70
  initialize: () => void;
71
71
  destroy: () => void;
72
72
  };
@@ -1,7 +1,20 @@
1
1
  <script>
2
2
  import { defineComponent as _defineComponent } from "vue";
3
3
  import { renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
4
- import { ref, inject, computed, toValue, watch, useId, onMounted } from "vue";
4
+ const _hoisted_1 = {
5
+ ref: "el",
6
+ class: "magic-scroll-collision"
7
+ };
8
+ import {
9
+ shallowRef,
10
+ inject,
11
+ computed,
12
+ toValue,
13
+ watch,
14
+ useId,
15
+ onMounted,
16
+ useTemplateRef
17
+ } from "vue";
5
18
  import { useCollisionDetection } from "../composables/private/useCollisionDetection";
6
19
  import { MagicScrollReturn, MagicScrollTarget } from "../symbols";
7
20
  import { useIntersectionObserver } from "@vueuse/core";
@@ -19,8 +32,8 @@ export default /* @__PURE__ */ _defineComponent({
19
32
  "MagicScrollCollision must be used within a MagicScrollProvider"
20
33
  );
21
34
  }
22
- const intersecting = ref(false);
23
- const elRef = ref(void 0);
35
+ const intersecting = shallowRef(false);
36
+ const elRef = useTemplateRef("el");
24
37
  const scrollY = computed(() => toValue(scrollReturn?.y) || 0);
25
38
  const mappedId = computed(() => __props.id ?? `magic-scroll-collision-${useId()}`);
26
39
  const { observe } = useCollisionDetection({
@@ -51,11 +64,7 @@ export default /* @__PURE__ */ _defineComponent({
51
64
  return (_ctx, _cache) => {
52
65
  return _openBlock(), _createElementBlock(
53
66
  "div",
54
- {
55
- ref_key: "elRef",
56
- ref: elRef,
57
- class: "magic-scroll-collision"
58
- },
67
+ _hoisted_1,
59
68
  [
60
69
  _renderSlot(_ctx.$slots, "default")
61
70
  ],
@@ -3,30 +3,16 @@ interface MagicScrollCollisionProps {
3
3
  id?: string;
4
4
  offset?: CollisionOffset;
5
5
  }
6
- declare function __VLS_template(): {
7
- attrs: Partial<{}>;
8
- slots: {
9
- default?(_: {}): any;
10
- };
11
- refs: {
12
- elRef: HTMLDivElement;
13
- };
14
- rootEl: HTMLDivElement;
15
- };
16
- type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
17
- declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollCollisionProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollCollisionProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
18
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
6
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
7
+ declare var __VLS_1: {};
8
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
9
+ default?: (props: typeof __VLS_1) => any;
10
+ }>;
11
+ declare const __VLS_self: import("vue").DefineComponent<MagicScrollCollisionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollCollisionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_component: import("vue").DefineComponent<MagicScrollCollisionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollCollisionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
19
14
  export default _default;
20
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
21
- type __VLS_TypePropsToOption<T> = {
22
- [K in keyof T]-?: {} extends Pick<T, K> ? {
23
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
24
- } : {
25
- type: import('vue').PropType<T[K]>;
26
- required: true;
27
- };
28
- };
29
- type __VLS_WithTemplateSlots<T, S> = T & {
15
+ type __VLS_WithSlots<T, S> = T & {
30
16
  new (): {
31
17
  $slots: S;
32
18
  };
@@ -1,7 +1,11 @@
1
1
  <script>
2
2
  import { defineComponent as _defineComponent } from "vue";
3
3
  import { renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
4
- import { ref, inject, computed, onMounted, watch } from "vue";
4
+ const _hoisted_1 = {
5
+ ref: "el",
6
+ class: "magic-scroll-motion"
7
+ };
8
+ import { ref, inject, computed, onMounted, watch, useTemplateRef } from "vue";
5
9
  import { unrefElement } from "@vueuse/core";
6
10
  import defu from "defu";
7
11
  import {
@@ -17,7 +21,7 @@ export default /* @__PURE__ */ _defineComponent({
17
21
  },
18
22
  setup(__props) {
19
23
  const animation = ref(void 0);
20
- const elRef = ref(void 0);
24
+ const elRef = useTemplateRef("el");
21
25
  const injectedProgress = inject(
22
26
  MagicScrollProgress,
23
27
  computed(() => 0)
@@ -40,12 +44,9 @@ export default /* @__PURE__ */ _defineComponent({
40
44
  return [el, animation2, options];
41
45
  });
42
46
  animation.value = animate(mappedSequence, mappedSequenceOptions);
43
- animation.value.time = mappedProgress.value;
44
47
  animation.value.pause();
48
+ animation.value.time = mappedProgress.value;
45
49
  }
46
- onMounted(() => {
47
- createAnimation();
48
- });
49
50
  watch(mappedProgress, (value) => {
50
51
  if (!value && value !== 0 || !animation.value) {
51
52
  return;
@@ -61,14 +62,13 @@ export default /* @__PURE__ */ _defineComponent({
61
62
  deep: true
62
63
  }
63
64
  );
65
+ onMounted(() => {
66
+ createAnimation();
67
+ });
64
68
  return (_ctx, _cache) => {
65
69
  return _openBlock(), _createElementBlock(
66
70
  "div",
67
- {
68
- ref_key: "elRef",
69
- ref: elRef,
70
- class: "magic-scroll-motion"
71
- },
71
+ _hoisted_1,
72
72
  [
73
73
  _renderSlot(_ctx.$slots, "default")
74
74
  ],
@@ -5,30 +5,16 @@ interface MagicScrollMotionProps {
5
5
  sequenceOptions?: SequenceOptions;
6
6
  progress?: number;
7
7
  }
8
- declare function __VLS_template(): {
9
- attrs: Partial<{}>;
10
- slots: {
11
- default?(_: {}): any;
12
- };
13
- refs: {
14
- elRef: HTMLDivElement;
15
- };
16
- rootEl: HTMLDivElement;
17
- };
18
- type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
19
- declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollMotionProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollMotionProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
20
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
8
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
9
+ declare var __VLS_1: {};
10
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
11
+ default?: (props: typeof __VLS_1) => any;
12
+ }>;
13
+ declare const __VLS_self: import("vue").DefineComponent<MagicScrollMotionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollMotionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ declare const __VLS_component: import("vue").DefineComponent<MagicScrollMotionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollMotionProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
15
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
21
16
  export default _default;
22
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
23
- type __VLS_TypePropsToOption<T> = {
24
- [K in keyof T]-?: {} extends Pick<T, K> ? {
25
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
26
- } : {
27
- type: import('vue').PropType<T[K]>;
28
- required: true;
29
- };
30
- };
31
- type __VLS_WithTemplateSlots<T, S> = T & {
17
+ type __VLS_WithSlots<T, S> = T & {
32
18
  new (): {
33
19
  $slots: S;
34
20
  };
@@ -2,47 +2,55 @@ import { type MaybeElementRef } from '@vueuse/core';
2
2
  interface MagicScrollProviderProps {
3
3
  target?: MaybeElementRef<HTMLElement>;
4
4
  }
5
- declare function __VLS_template(): {
6
- attrs: Partial<{}>;
7
- slots: {
8
- default?(_: {
9
- scrollReturn: {
10
- x: import("vue").WritableComputedRef<number, number>;
11
- y: import("vue").WritableComputedRef<number, number>;
12
- isScrolling: import("vue").Ref<boolean, boolean>;
13
- arrivedState: {
14
- left: boolean;
15
- right: boolean;
16
- top: boolean;
17
- bottom: boolean;
18
- };
19
- directions: {
20
- left: boolean;
21
- right: boolean;
22
- top: boolean;
23
- bottom: boolean;
24
- };
25
- measure(): void;
26
- };
27
- }): any;
5
+ declare const scrollReturn: {
6
+ x: import("vue").WritableComputedRef<number, number>;
7
+ y: import("vue").WritableComputedRef<number, number>;
8
+ isScrolling: import("vue").Ref<boolean, boolean>;
9
+ arrivedState: {
10
+ left: boolean;
11
+ right: boolean;
12
+ top: boolean;
13
+ bottom: boolean;
28
14
  };
29
- refs: {};
30
- rootEl: HTMLDivElement;
15
+ directions: {
16
+ left: boolean;
17
+ right: boolean;
18
+ top: boolean;
19
+ bottom: boolean;
20
+ };
21
+ measure(): void;
31
22
  };
32
- type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
33
- declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollProviderProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollProviderProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
34
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
35
- export default _default;
36
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
37
- type __VLS_TypePropsToOption<T> = {
38
- [K in keyof T]-?: {} extends Pick<T, K> ? {
39
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
40
- } : {
41
- type: import('vue').PropType<T[K]>;
42
- required: true;
23
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
24
+ declare var __VLS_1: {
25
+ scrollReturn: {
26
+ x: import("vue").WritableComputedRef<number, number>;
27
+ y: import("vue").WritableComputedRef<number, number>;
28
+ isScrolling: import("vue").Ref<boolean, boolean>;
29
+ arrivedState: {
30
+ left: boolean;
31
+ right: boolean;
32
+ top: boolean;
33
+ bottom: boolean;
34
+ };
35
+ directions: {
36
+ left: boolean;
37
+ right: boolean;
38
+ top: boolean;
39
+ bottom: boolean;
40
+ };
41
+ measure(): void;
43
42
  };
44
43
  };
45
- type __VLS_WithTemplateSlots<T, S> = T & {
44
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
45
+ default?: (props: typeof __VLS_1) => any;
46
+ }>;
47
+ declare const __VLS_self: import("vue").DefineComponent<MagicScrollProviderProps, {
48
+ scrollReturn: typeof scrollReturn;
49
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollProviderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
50
+ declare const __VLS_component: import("vue").DefineComponent<MagicScrollProviderProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollProviderProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
51
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
52
+ export default _default;
53
+ type __VLS_WithSlots<T, S> = T & {
46
54
  new (): {
47
55
  $slots: S;
48
56
  };
@@ -1,7 +1,19 @@
1
1
  <script>
2
2
  import { defineComponent as _defineComponent } from "vue";
3
3
  import { renderSlot as _renderSlot, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue";
4
- import { ref, provide, inject, watch, nextTick, readonly } from "vue";
4
+ const _hoisted_1 = {
5
+ ref: "el",
6
+ class: "magic-scroll-scene"
7
+ };
8
+ import {
9
+ shallowRef,
10
+ provide,
11
+ inject,
12
+ watch,
13
+ nextTick,
14
+ readonly,
15
+ useTemplateRef
16
+ } from "vue";
5
17
  import { useIntersectionObserver } from "@vueuse/core";
6
18
  import { useScrollApi } from "../composables/private/useScrollApi";
7
19
  import {
@@ -17,13 +29,13 @@ export default /* @__PURE__ */ _defineComponent({
17
29
  },
18
30
  setup(__props) {
19
31
  const scrollReturn = inject(MagicScrollReturn, void 0);
20
- const scrollTarget = inject(MagicScrollTarget);
32
+ const scrollTarget = inject(MagicScrollTarget, void 0);
21
33
  if (!scrollTarget) {
22
34
  console.error("MagicScrollScene must be used within a MagicScrollProvider");
23
35
  }
24
- const progress = ref(0);
25
- const intersecting = ref(false);
26
- const elRef = ref(void 0);
36
+ const progress = shallowRef(0);
37
+ const intersecting = shallowRef(false);
38
+ const elRef = useTemplateRef("el");
27
39
  const { getCalculations, getProgress } = useScrollApi({
28
40
  child: elRef,
29
41
  parent: scrollTarget,
@@ -64,11 +76,7 @@ export default /* @__PURE__ */ _defineComponent({
64
76
  return (_ctx, _cache) => {
65
77
  return _openBlock(), _createElementBlock(
66
78
  "div",
67
- {
68
- ref_key: "elRef",
69
- ref: elRef,
70
- class: "magic-scroll-scene"
71
- },
79
+ _hoisted_1,
72
80
  [
73
81
  _renderSlot(_ctx.$slots, "default", { progress: progress.value })
74
82
  ],
@@ -3,32 +3,21 @@ interface MagicScrollSceneProps {
3
3
  from?: ScrollIntersection;
4
4
  to?: ScrollIntersection;
5
5
  }
6
- declare function __VLS_template(): {
7
- attrs: Partial<{}>;
8
- slots: {
9
- default?(_: {
10
- progress: number;
11
- }): any;
12
- };
13
- refs: {
14
- elRef: HTMLDivElement;
15
- };
16
- rootEl: HTMLDivElement;
6
+ declare const progress: import("vue").ShallowRef<number, number>;
7
+ declare const __VLS_ctx: InstanceType<__VLS_PickNotAny<typeof __VLS_self, new () => {}>>;
8
+ declare var __VLS_1: {
9
+ progress: number;
17
10
  };
18
- type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
19
- declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollSceneProps>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToOption<MagicScrollSceneProps>>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
20
- declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
11
+ type __VLS_Slots = __VLS_PrettifyGlobal<__VLS_OmitStringIndex<typeof __VLS_ctx.$slots> & {
12
+ default?: (props: typeof __VLS_1) => any;
13
+ }>;
14
+ declare const __VLS_self: import("vue").DefineComponent<MagicScrollSceneProps, {
15
+ progress: typeof progress;
16
+ }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollSceneProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_component: import("vue").DefineComponent<MagicScrollSceneProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<MagicScrollSceneProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
18
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
21
19
  export default _default;
22
- type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
23
- type __VLS_TypePropsToOption<T> = {
24
- [K in keyof T]-?: {} extends Pick<T, K> ? {
25
- type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
26
- } : {
27
- type: import('vue').PropType<T[K]>;
28
- required: true;
29
- };
30
- };
31
- type __VLS_WithTemplateSlots<T, S> = T & {
20
+ type __VLS_WithSlots<T, S> = T & {
32
21
  new (): {
33
22
  $slots: S;
34
23
  };
@@ -2,8 +2,8 @@ import { type MaybeRef } from 'vue';
2
2
  import type { CollisionOffset } from '../../types/index.js';
3
3
  type UseCollisionDetectionArgs = {
4
4
  id: string;
5
- child: MaybeRef<HTMLElement | undefined>;
6
- parent: MaybeRef<HTMLElement | undefined>;
5
+ child: MaybeRef<HTMLElement | null>;
6
+ parent: MaybeRef<HTMLElement | null | undefined>;
7
7
  scrollY: MaybeRef<number>;
8
8
  offset?: CollisionOffset;
9
9
  };
@@ -1,4 +1,4 @@
1
- import { ref, reactive, computed, toValue } from "vue";
1
+ import { shallowRef, reactive, computed, toValue } from "vue";
2
2
  import { useElementBounding } from "@vueuse/core";
3
3
  import { useMagicEmitter } from "@maas/vue-equipment/plugins";
4
4
  export function useCollisionDetection(args) {
@@ -28,8 +28,8 @@ export function useCollisionDetection(args) {
28
28
  const childBoundingRect = useElementBounding(child);
29
29
  const parentBoundingRect = useElementBounding(parent);
30
30
  const mappedOffset = { top: 0, bottom: 0, ...offset };
31
- const lastScrollY = ref(0);
32
- const scrollDirection = ref();
31
+ const lastScrollY = shallowRef(0);
32
+ const scrollDirection = shallowRef();
33
33
  const oppositeScrollDirection = computed(
34
34
  () => scrollDirection.value === "up" ? "down" : "up"
35
35
  );
@@ -1,4 +1,9 @@
1
- import { ref, inject, toValue } from "vue";
1
+ import {
2
+ ref,
3
+ shallowRef,
4
+ inject,
5
+ toValue
6
+ } from "vue";
2
7
  import { useWindowSize } from "@vueuse/core";
3
8
  import { MagicScrollReturn } from "../../symbols/index.mjs";
4
9
  import { clampValue } from "@maas/vue-equipment/utils";
@@ -7,8 +12,9 @@ export function useScrollApi(params) {
7
12
  const scrollReturn = inject(MagicScrollReturn, void 0);
8
13
  const childRect = ref(void 0);
9
14
  const parentRect = ref(void 0);
10
- const start = ref(0);
11
- const end = ref(0);
15
+ const start = shallowRef(0);
16
+ const end = shallowRef(0);
17
+ const { width: windowWidth, height: windowHeight } = useWindowSize();
12
18
  function splitLocation(location) {
13
19
  return {
14
20
  child: location.match(/^[a-z]+/)[0],
@@ -56,7 +62,11 @@ export function useScrollApi(params) {
56
62
  }
57
63
  function getCalculations() {
58
64
  childRect.value = toValue(child)?.getBoundingClientRect();
59
- parentRect.value = toValue(parent) ? toValue(parent)?.getBoundingClientRect() : { ...useWindowSize(), top: 0 };
65
+ parentRect.value = toValue(parent) ? toValue(parent)?.getBoundingClientRect() : {
66
+ width: windowWidth.value,
67
+ height: windowHeight.value,
68
+ top: 0
69
+ };
60
70
  start.value = getOffsetTop(splitLocation(from));
61
71
  end.value = getOffsetTop(splitLocation(to));
62
72
  }
@@ -1,6 +1,6 @@
1
1
  import type { InjectionKey, Ref, MaybeRef } from 'vue';
2
2
  import type { UseScrollReturn } from '@vueuse/core';
3
- declare const MagicScrollTarget: InjectionKey<MaybeRef<HTMLElement | undefined>>;
3
+ declare const MagicScrollTarget: InjectionKey<MaybeRef<HTMLElement | null | undefined>>;
4
4
  declare const MagicScrollProgress: InjectionKey<Ref<number>>;
5
5
  declare const MagicScrollReturn: InjectionKey<UseScrollReturn | undefined>;
6
6
  export { MagicScrollTarget, MagicScrollProgress, MagicScrollReturn };