@maas/vue-equipment 0.12.0 → 0.13.0

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 (74) hide show
  1. package/dist/composables/index.d.mts +2 -2
  2. package/dist/composables/index.d.ts +2 -2
  3. package/dist/composables/index.js +5 -6
  4. package/dist/composables/index.js.map +1 -1
  5. package/dist/composables/index.mjs +0 -1
  6. package/dist/composables/index.mjs.map +1 -1
  7. package/dist/nuxt/module.json +2 -2
  8. package/dist/nuxt/module.mjs +2 -2
  9. package/dist/plugins/MagicConsent/nuxt.mjs +1 -1
  10. package/dist/plugins/MagicConsent/src/components/MagicConsent.vue +2 -189
  11. package/dist/plugins/MagicConsent/src/components/MagicConsent.vue.d.ts +26 -19
  12. package/dist/plugins/MagicConsent/src/composables/private/defineConsentApi.mjs +1 -1
  13. package/dist/plugins/MagicMarquee/nuxt.mjs +1 -1
  14. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue +2 -54
  15. package/dist/plugins/MagicMarquee/src/components/MagicMarquee.vue.d.ts +29 -20
  16. package/dist/plugins/MagicModal/nuxt.mjs +1 -3
  17. package/dist/plugins/MagicModal/src/components/MagicModal.vue +4 -101
  18. package/dist/plugins/MagicModal/src/components/MagicModal.vue.d.ts +31 -37
  19. package/dist/plugins/MagicModal/src/composables/useModalApi.d.ts +1 -1
  20. package/dist/plugins/MagicModal/src/composables/useModalApi.mjs +1 -1
  21. package/dist/plugins/MagicModal/src/utils/defaultOptions.d.ts +1 -1
  22. package/dist/plugins/MagicNoise/nuxt.mjs +1 -1
  23. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue +4 -42
  24. package/dist/plugins/MagicNoise/src/components/MagicNoise.vue.d.ts +26 -19
  25. package/dist/plugins/MagicNoise/src/utils/defaultOptions.d.ts +1 -1
  26. package/dist/plugins/MagicPlayer/nuxt.mjs +1 -1
  27. package/dist/plugins/MagicPlayer/src/components/MagicPlayer.vue +22 -31
  28. package/dist/plugins/MagicPlayer/src/components/MagicPlayer.vue.d.ts +32 -45
  29. package/dist/plugins/MagicPlayer/src/components/MagicPlayerControls.vue +7 -138
  30. package/dist/plugins/MagicPlayer/src/components/MagicPlayerControls.vue.d.ts +13 -11
  31. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue +4 -16
  32. package/dist/plugins/MagicPlayer/src/components/MagicPlayerMuxPopover.vue.d.ts +13 -18
  33. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue +5 -42
  34. package/dist/plugins/MagicPlayer/src/components/MagicPlayerOverlay.vue.d.ts +13 -11
  35. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue +4 -103
  36. package/dist/plugins/MagicPlayer/src/components/MagicPlayerTimeline.vue.d.ts +12 -10
  37. package/dist/plugins/MagicPlayer/src/components/icons/Waiting.vue +1 -23
  38. package/dist/plugins/MagicPlayer/src/composables/private/useControlsApi.d.ts +1 -1
  39. package/dist/plugins/MagicPlayer/src/composables/private/useControlsApi.mjs +3 -3
  40. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerInternalApi.mjs +3 -3
  41. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerStore.d.ts +4 -2
  42. package/dist/plugins/MagicPlayer/src/composables/private/usePlayerStore.mjs +12 -6
  43. package/dist/plugins/MagicPlayer/src/composables/usePlayerApi.d.ts +2 -1
  44. package/dist/plugins/MagicPlayer/src/composables/usePlayerApi.mjs +1 -1
  45. package/dist/plugins/MagicPlayer/src/types/index.d.ts +2 -2
  46. package/dist/plugins/MagicScroll/nuxt.mjs +1 -1
  47. package/dist/plugins/MagicScroll/src/components/MagicScrollCollision.vue.d.ts +13 -11
  48. package/dist/plugins/MagicScroll/src/components/MagicScrollMotion.vue.d.ts +31 -29
  49. package/dist/plugins/MagicScroll/src/components/MagicScrollProvider.vue.d.ts +26 -17
  50. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue +3 -3
  51. package/dist/plugins/MagicScroll/src/components/MagicScrollScene.vue.d.ts +30 -26
  52. package/dist/plugins/MagicScroll/src/components/MagicScrollTransform.vue.d.ts +46 -67
  53. package/dist/plugins/MagicScroll/src/composables/useScrollApi.d.ts +1 -1
  54. package/dist/plugins/MagicScroll/src/composables/useScrollApi.mjs +1 -1
  55. package/dist/plugins/MagicToast/demo/DemoToast.vue.d.ts +14 -12
  56. package/dist/plugins/MagicToast/nuxt.mjs +1 -1
  57. package/dist/plugins/MagicToast/src/components/MagicToast.vue +10 -118
  58. package/dist/plugins/MagicToast/src/components/MagicToast.vue.d.ts +19 -24
  59. package/dist/plugins/MagicToast/src/components/MagicToastComponent.vue +2 -41
  60. package/dist/plugins/MagicToast/src/components/MagicToastComponent.vue.d.ts +17 -36
  61. package/dist/plugins/MagicToast/src/composables/private/useToastInternalApi.d.ts +1 -1
  62. package/dist/plugins/MagicToast/src/composables/private/useToastInternalApi.mjs +1 -1
  63. package/dist/plugins/MagicToast/src/composables/useToastApi.mjs +1 -1
  64. package/dist/plugins/MagicToast/src/types/index.d.ts +1 -1
  65. package/dist/plugins/MagicToast/src/utils/defaultOptions.d.ts +1 -1
  66. package/dist/utils/{index.mjs → index.cjs} +38 -6
  67. package/dist/utils/index.cjs.map +1 -0
  68. package/dist/utils/{index.d.mts → index.d.cts} +1 -1
  69. package/dist/utils/index.d.ts +1 -1
  70. package/dist/utils/index.js +5 -37
  71. package/dist/utils/index.js.map +1 -1
  72. package/dist/utils/types/index.ts +2 -0
  73. package/package.json +15 -34
  74. package/dist/utils/index.mjs.map +0 -1
@@ -5,61 +5,48 @@ export type MagicPlayerProps = {
5
5
  src: string;
6
6
  ratio?: string;
7
7
  fill?: boolean;
8
+ autoplay?: boolean;
8
9
  };
9
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
10
- fill: {
11
- type: import("vue").PropType<boolean>;
12
- default: boolean;
13
- };
14
- id: {
15
- type: import("vue").PropType<string>;
16
- required: true;
17
- };
18
- srcType: {
19
- type: import("vue").PropType<SourceType>;
20
- default: string;
21
- };
22
- src: {
23
- type: import("vue").PropType<string>;
24
- required: true;
25
- default: string;
26
- };
27
- ratio: {
28
- type: import("vue").PropType<string>;
29
- default: string;
30
- };
31
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
32
- fill: {
33
- type: import("vue").PropType<boolean>;
34
- default: boolean;
35
- };
36
- id: {
37
- type: import("vue").PropType<string>;
38
- required: true;
39
- };
40
- srcType: {
41
- type: import("vue").PropType<SourceType>;
42
- default: string;
43
- };
44
- src: {
45
- type: import("vue").PropType<string>;
46
- required: true;
47
- default: string;
48
- };
49
- ratio: {
50
- type: import("vue").PropType<string>;
51
- default: string;
52
- };
53
- }>>, {
10
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MagicPlayerProps>, {
11
+ srcType: string;
12
+ src: string;
13
+ ratio: string;
14
+ fill: boolean;
15
+ autoplay: boolean;
16
+ }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_WithDefaults<__VLS_TypePropsToRuntimeProps<MagicPlayerProps>, {
17
+ srcType: string;
18
+ src: string;
19
+ ratio: string;
20
+ fill: boolean;
21
+ autoplay: boolean;
22
+ }>>>, {
54
23
  fill: boolean;
55
24
  srcType: SourceType;
56
25
  src: string;
57
26
  ratio: string;
27
+ autoplay: boolean;
58
28
  }, {}>, {
59
29
  poster?(_: {}): any;
60
30
  default?(_: {}): any;
61
31
  }>;
62
32
  export default _default;
33
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
34
+ type __VLS_TypePropsToRuntimeProps<T> = {
35
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
36
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
37
+ } : {
38
+ type: import('vue').PropType<T[K]>;
39
+ required: true;
40
+ };
41
+ };
42
+ type __VLS_WithDefaults<P, D> = {
43
+ [K in keyof Pick<P, keyof P>]: K extends keyof D ? __VLS_Prettify<P[K] & {
44
+ default: D[K];
45
+ }> : P[K];
46
+ };
47
+ type __VLS_Prettify<T> = {
48
+ [K in keyof T]: T[K];
49
+ } & {};
63
50
  type __VLS_WithTemplateSlots<T, S> = T & {
64
51
  new (): {
65
52
  $slots: S;
@@ -72,7 +72,7 @@
72
72
  </template>
73
73
 
74
74
  <script setup lang="ts">
75
- import { ref, toRefs } from 'vue'
75
+ import { ref } from 'vue'
76
76
  import { useIdle } from '@vueuse/core'
77
77
  import IconPlay from './icons/Play.vue'
78
78
  import IconPause from './icons/Pause.vue'
@@ -99,11 +99,9 @@ const { instance } = usePlayerApi({
99
99
  popoverRef: popoverRef,
100
100
  })
101
101
 
102
- const { playing, waiting, muted } = toRefs(instance.value?.mediaApi)
103
- const { touched, mouseEntered, isFullscreen } = toRefs(
104
- instance.value?.playerApi,
105
- )
106
- const { popoverOffsetX, seekedTime } = toRefs(instance.value?.controlsApi)
102
+ const { playing, waiting, muted } = instance.value.mediaApi
103
+ const { touched, mouseEntered, isFullscreen } = instance.value.playerApi
104
+ const { popoverOffsetX, seekedTime } = instance.value.controlsApi
107
105
 
108
106
  const { play, pause, mute, unmute, enterFullscreen, exitFullscreen } =
109
107
  instance.value.playerApi
@@ -111,137 +109,8 @@ const { play, pause, mute, unmute, enterFullscreen, exitFullscreen } =
111
109
  const { idle } = useIdle(3000)
112
110
  </script>
113
111
 
114
- <style lang="css">
115
- :root {
116
- --magic-player-controls-height: 3rem;
117
- --magic-player-controls-padding: 0.75rem;
118
- --magic-player-controls-bottom: 1.5rem;
119
- --magic-player-controls-left: 1.5rem;
120
- --magic-player-controls-width: calc(
121
- 100% - (var(--magic-player-controls-left) * 2)
122
- );
123
- --magic-player-controls-gap: 1rem;
124
- --magic-player-controls-border-radius: 50rem;
125
- --magic-player-controls-background-color: rgba(32, 32, 32, 0.8);
126
- --magic-player-controls-backdrop-filter: blur(80px);
127
- --magic-player-controls-color: rgba(255, 255, 255, 1);
128
- --magic-player-controls-icon-width: 1.25rem;
129
- --magic-player-controls-transition-duration: 300ms;
130
- --magic-player-controls-transition-timing-function: ease;
131
- }
132
-
133
- @media (max-width: 640px) {
134
- :root {
135
- --magic-player-controls-height: 2.5rem;
136
- --magic-player-controls-bottom: 0.75rem;
137
- --magic-player-controls-padding: 0.5rem;
138
- }
139
- }
140
-
141
- .magic-player-controls {
142
- position: absolute;
143
- inset: 0;
144
- width: 100%;
145
- pointer-events: none;
146
- }
147
-
148
- .magic-player-controls__bar {
149
- position: absolute;
150
- width: var(--magic-player-controls-width);
151
- bottom: var(--magic-player-controls-bottom);
152
- left: var(--magic-player-controls-left);
153
- margin: 0 auto;
154
- display: flex;
155
- flex-direction: column;
156
- align-items: flex-start;
157
- gap: var(--magic-player-controls-gap);
158
- transition-duration: var(--magic-player-controls-transition-duration);
159
- transition-timing-function: var(
112
+ <style>
113
+ :root{--magic-player-controls-height:3rem;--magic-player-controls-padding:0.75rem;--magic-player-controls-bottom:1.5rem;--magic-player-controls-left:1.5rem;--magic-player-controls-width:calc(100% - var(--magic-player-controls-left)*2);--magic-player-controls-gap:1rem;--magic-player-controls-border-radius:50rem;--magic-player-controls-background-color:rgba(32,32,32,.8);--magic-player-controls-backdrop-filter:blur(80px);--magic-player-controls-color:#fff;--magic-player-controls-icon-width:1.25rem;--magic-player-controls-transition-duration:300ms;--magic-player-controls-transition-timing-function:ease}@media (max-width:640px){:root{--magic-player-controls-height:2.5rem;--magic-player-controls-bottom:0.75rem;--magic-player-controls-padding:0.5rem}}.magic-player-controls{inset:0;pointer-events:none;position:absolute;width:100%}.magic-player-controls__bar{align-items:flex-start;bottom:var(--magic-player-controls-bottom);display:flex;flex-direction:column;gap:var(--magic-player-controls-gap);left:var(--magic-player-controls-left);margin:0 auto;pointer-events:auto;position:absolute;transition-duration:var(--magic-player-controls-transition-duration);transition-property:opacity,transform;transition-timing-function:var(
160
114
  --magic-player-controls-transition-timing-function
161
- );
162
- transition-property: opacity, transform;
163
- pointer-events: auto;
164
- }
165
-
166
- .magic-player-controls__bar--inner {
167
- width: 100%;
168
- box-sizing: border-box;
169
- height: var(--magic-player-controls-height);
170
- padding: 0 var(--magic-player-controls-padding);
171
- background-color: var(--magic-player-controls-background-color);
172
- backdrop-filter: var(--magic-player-controls-backdrop-filter);
173
- color: var(--magic-player-controls-color);
174
- border-radius: var(--magic-player-controls-border-radius);
175
- display: flex;
176
- align-items: center;
177
- }
178
-
179
- .magic-player-controls__item {
180
- display: inline-flex;
181
- align-items: center;
182
- user-select: none;
183
- }
184
-
185
- .magic-player-controls__item.-shrink-0 {
186
- flex-shrink: 0;
187
- }
188
-
189
- .magic-player-controls__item.-grow {
190
- flex-grow: 1;
191
- }
192
-
193
- .magic-player-controls__item button {
194
- background-color: transparent;
195
- color: inherit;
196
- border: 0;
197
- outline: none;
198
- appearance: none;
199
- padding: 0;
200
- border-radius: 0;
201
- cursor: pointer;
202
- width: var(--magic-player-controls-height);
203
- height: var(--magic-player-controls-height);
204
- display: flex;
205
- align-items: center;
206
- justify-content: center;
207
- }
208
-
209
- .magic-player-controls__item button svg {
210
- display: block;
211
- width: var(--magic-player-controls-icon-width);
212
- height: auto;
213
- }
214
-
215
- .magic-player-controls__timeline {
216
- width: 100%;
217
- }
218
-
219
- .magic-player-controls:not(.-standalone).-playing.-idle
220
- .magic-player-controls__bar,
221
- .magic-player-controls:not(.-standalone).-playing.-not-hover
222
- .magic-player-controls__bar,
223
- .magic-player-controls:not(.-standalone).-untouched
224
- .magic-player-controls__bar {
225
- opacity: 0;
226
- transform: translateY(25%);
227
- }
228
-
229
- .magic-player-controls.-standalone {
230
- position: relative;
231
- inset: unset;
232
- --magic-player-controls-width: 100%;
233
- --magic-player-controls-bottom: 0;
234
- --magic-player-controls-left: 0;
235
- --magic-player-controls-padding: 0;
236
- --magic-player-controls-background-color: unset;
237
- --magic-player-controls-border-radius: unset;
238
- --magic-player-controls-background-color: transparent;
239
- --magic-player-controls-backdrop-filter: none;
240
- --magic-player-controls-transition-duration: unset;
241
- --magic-player-controls-transition-timing-function: unset;
242
- }
243
-
244
- .magic-player-controls.-standalone .magic-player-controls__bar {
245
- position: relative;
246
- }
115
+ );width:var(--magic-player-controls-width)}.magic-player-controls__bar--inner{align-items:center;-webkit-backdrop-filter:var(--magic-player-controls-backdrop-filter);backdrop-filter:var(--magic-player-controls-backdrop-filter);background-color:var(--magic-player-controls-background-color);border-radius:var(--magic-player-controls-border-radius);box-sizing:border-box;color:var(--magic-player-controls-color);display:flex;height:var(--magic-player-controls-height);padding:0 var(--magic-player-controls-padding);width:100%}.magic-player-controls__item{align-items:center;display:inline-flex;-webkit-user-select:none;-moz-user-select:none;user-select:none}.magic-player-controls__item.-shrink-0{flex-shrink:0}.magic-player-controls__item.-grow{flex-grow:1}.magic-player-controls__item button{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;border-radius:0;color:inherit;cursor:pointer;display:flex;height:var(--magic-player-controls-height);justify-content:center;outline:none;padding:0;width:var(--magic-player-controls-height)}.magic-player-controls__item button svg{display:block;height:auto;width:var(--magic-player-controls-icon-width)}.magic-player-controls__timeline{width:100%}.magic-player-controls:not(.-standalone).-playing.-idle .magic-player-controls__bar,.magic-player-controls:not(.-standalone).-playing.-not-hover .magic-player-controls__bar,.magic-player-controls:not(.-standalone).-untouched .magic-player-controls__bar{opacity:0;transform:translateY(25%)}.magic-player-controls.-standalone{inset:unset;position:relative;--magic-player-controls-width:100%;--magic-player-controls-bottom:0;--magic-player-controls-left:0;--magic-player-controls-padding:0;--magic-player-controls-background-color:unset;--magic-player-controls-border-radius:unset;--magic-player-controls-background-color:transparent;--magic-player-controls-backdrop-filter:none;--magic-player-controls-transition-duration:unset;--magic-player-controls-transition-timing-function:unset}.magic-player-controls.-standalone .magic-player-controls__bar{position:relative}
247
116
  </style>
@@ -1,14 +1,7 @@
1
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
- id: {
3
- type: import("vue").PropType<string>;
4
- required: true;
5
- };
6
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- id: {
8
- type: import("vue").PropType<string>;
9
- required: true;
10
- };
11
- }>>, {}, {}>, {
1
+ interface Props {
2
+ id: string;
3
+ }
4
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
12
5
  seekPopover?(_: {}): any;
13
6
  playIcon?(_: {}): any;
14
7
  pauseIcon?(_: {}): any;
@@ -18,6 +11,15 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
18
11
  fullscreenEnterIcon?(_: {}): any;
19
12
  }>;
20
13
  export default _default;
14
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
15
+ type __VLS_TypePropsToRuntimeProps<T> = {
16
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
17
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
18
+ } : {
19
+ type: import('vue').PropType<T[K]>;
20
+ required: true;
21
+ };
22
+ };
21
23
  type __VLS_WithTemplateSlots<T, S> = T & {
22
24
  new (): {
23
25
  $slots: S;
@@ -14,7 +14,7 @@
14
14
  </div>
15
15
  </template>
16
16
  <script setup lang="ts">
17
- import { shallowRef, onMounted, watch, computed, toRefs, type Ref } from 'vue'
17
+ import { shallowRef, onMounted, watch, computed, type Ref } from 'vue'
18
18
  import { useDevicePixelRatio } from '@vueuse/core'
19
19
  import { usePlayerApi } from '../composables/usePlayerApi'
20
20
 
@@ -39,7 +39,7 @@ const props = defineProps<Props>()
39
39
 
40
40
  const { instance } = usePlayerApi(props.id)
41
41
 
42
- const { seekedTime } = toRefs(instance.value.controlsApi)
42
+ const { seekedTime } = instance.value.controlsApi
43
43
  const { pixelRatio } = useDevicePixelRatio()
44
44
 
45
45
  const canvas = shallowRef() as Ref<HTMLCanvasElement>
@@ -115,18 +115,6 @@ onMounted(init)
115
115
  watch(() => seekedTime?.value, drawFrame)
116
116
  </script>
117
117
 
118
- <style lang="css">
119
- :root {
120
- --magic-player-popover-border-radius: 0.25rem;
121
- }
122
-
123
- .magic-player-mux-popover {
124
- border-radius: var(--magic-player-popover-border-radius);
125
- overflow: hidden;
126
- }
127
-
128
- .magic-player-mux-popover canvas {
129
- width: 100%;
130
- height: auto;
131
- }
118
+ <style>
119
+ :root{--magic-player-popover-border-radius:0.25rem}.magic-player-mux-popover{border-radius:var(--magic-player-popover-border-radius);overflow:hidden}.magic-player-mux-popover canvas{height:auto;width:100%}
132
120
  </style>
@@ -1,20 +1,15 @@
1
- declare const _default: import("vue").DefineComponent<{
2
- id: {
3
- type: import("vue").PropType<string>;
4
- required: true;
5
- };
6
- playbackId: {
7
- type: import("vue").PropType<string>;
8
- required: true;
9
- };
10
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
11
- id: {
12
- type: import("vue").PropType<string>;
13
- required: true;
14
- };
15
- playbackId: {
16
- type: import("vue").PropType<string>;
1
+ type Props = {
2
+ id: string;
3
+ playbackId: string;
4
+ };
5
+ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
6
+ export default _default;
7
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
8
+ type __VLS_TypePropsToRuntimeProps<T> = {
9
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
10
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
11
+ } : {
12
+ type: import('vue').PropType<T[K]>;
17
13
  required: true;
18
14
  };
19
- }>>, {}, {}>;
20
- export default _default;
15
+ };
@@ -34,7 +34,7 @@
34
34
  </template>
35
35
 
36
36
  <script setup lang="ts">
37
- import { toRefs } from 'vue'
37
+ import {} from 'vue'
38
38
  import { useIdle } from '@vueuse/core'
39
39
  import IconPlay from './icons/Play.vue'
40
40
  import IconPause from './icons/Pause.vue'
@@ -49,49 +49,12 @@ const props = defineProps<Props>()
49
49
 
50
50
  const { instance } = usePlayerApi(props.id)
51
51
 
52
- const { playing, waiting } = toRefs(instance.value.mediaApi)
53
- const { mouseEntered } = toRefs(instance.value.playerApi)
54
- const { togglePlay } = instance.value.playerApi
52
+ const { playing, waiting } = instance.value.mediaApi
53
+ const { mouseEntered, togglePlay } = instance.value.playerApi
55
54
 
56
55
  const { idle } = useIdle(3000)
57
56
  </script>
58
57
 
59
- <style lang="css">
60
- :root {
61
- --magic-player-overlay-background-color: rgba(0, 0, 0, 0.3);
62
- --magic-player-overlay-color: rgba(255, 255, 255, 1);
63
- --magic-player-overlay-button-size: 2.5rem;
64
- }
65
-
66
- .magic-player-overlay {
67
- position: absolute;
68
- inset: 0;
69
- background-color: var(--magic-player-overlay-background-color);
70
- color: var(--magic-player-overlay-color);
71
- transition-duration: 300ms;
72
- transition-property: opacity;
73
- transition-timing-function: ease;
74
- display: flex;
75
- align-items: center;
76
- justify-content: center;
77
- cursor: pointer;
78
- }
79
-
80
- .magic-player-overlay__button {
81
- background-color: transparent;
82
- color: inherit;
83
- border: 0;
84
- border-radius: 0;
85
- padding: 0;
86
- outline: none;
87
- appearance: none;
88
- cursor: pointer;
89
- width: var(--magic-player-overlay-button-size);
90
- height: var(--magic-player-overlay-button-size);
91
- }
92
-
93
- .magic-player-overlay.-playing.-idle,
94
- .magic-player-overlay.-playing.-not-hover {
95
- opacity: 0;
96
- }
58
+ <style>
59
+ :root{--magic-player-overlay-background-color:rgba(0,0,0,.3);--magic-player-overlay-color:#fff;--magic-player-overlay-button-size:2.5rem}.magic-player-overlay{align-items:center;background-color:var(--magic-player-overlay-background-color);color:var(--magic-player-overlay-color);cursor:pointer;display:flex;inset:0;justify-content:center;position:absolute;transition-duration:.3s;transition-property:opacity;transition-timing-function:ease}.magic-player-overlay__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent;border:0;border-radius:0;color:inherit;cursor:pointer;height:var(--magic-player-overlay-button-size);outline:none;padding:0;width:var(--magic-player-overlay-button-size)}.magic-player-overlay.-playing.-idle,.magic-player-overlay.-playing.-not-hover{opacity:0}
97
60
  </style>
@@ -1,19 +1,21 @@
1
- declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
2
- id: {
3
- type: import("vue").PropType<string>;
4
- required: true;
5
- };
6
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- id: {
8
- type: import("vue").PropType<string>;
9
- required: true;
10
- };
11
- }>>, {}, {}>, {
1
+ interface Props {
2
+ id: string;
3
+ }
4
+ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>, {
12
5
  waitingIcon?(_: {}): any;
13
6
  playIcon?(_: {}): any;
14
7
  pauseIcon?(_: {}): any;
15
8
  }>;
16
9
  export default _default;
10
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
11
+ type __VLS_TypePropsToRuntimeProps<T> = {
12
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
13
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
14
+ } : {
15
+ type: import('vue').PropType<T[K]>;
16
+ required: true;
17
+ };
18
+ };
17
19
  type __VLS_WithTemplateSlots<T, S> = T & {
18
20
  new (): {
19
21
  $slots: S;
@@ -36,7 +36,7 @@
36
36
  </template>
37
37
 
38
38
  <script setup lang="ts">
39
- import { toRefs } from 'vue'
39
+ import {} from 'vue'
40
40
  import { usePlayerApi } from '../composables/usePlayerApi'
41
41
 
42
42
  interface Props {
@@ -51,7 +51,7 @@ const {
51
51
  seekedPercentage,
52
52
  scrubbedPercentage,
53
53
  bufferedPercentage,
54
- } = toRefs(instance.value.controlsApi)
54
+ } = instance.value.controlsApi
55
55
 
56
56
  const {
57
57
  onMouseenter,
@@ -62,105 +62,6 @@ const {
62
62
  } = instance.value.controlsApi
63
63
  </script>
64
64
 
65
- <style lang="css">
66
- :root {
67
- --magic-player-target-height: 56px;
68
- --magic-player-track-height: 4px;
69
- --magic-player-track-bg-color: rgba(250, 250, 250, 0.15);
70
- --magic-player-thumb-size: 1rem;
71
- --magic-player-thumb-bg-color: rgba(250, 250, 250, 1);
72
- }
73
-
74
- .magic-player-timeline {
75
- position: relative;
76
- width: 100%;
77
- height: var(--magic-player-track-height);
78
- display: flex;
79
- align-items: center;
80
- }
81
-
82
- .magic-player-timeline__target {
83
- position: relative;
84
- width: 100%;
85
- height: var(--magic-player-target-height);
86
- display: flex;
87
- align-items: center;
88
- cursor: pointer;
89
- }
90
-
91
- .magic-player-timeline__slider-track {
92
- position: relative;
93
- width: 100%;
94
- height: var(--magic-player-track-height);
95
- background: var(--magic-player-track-bg-color);
96
- border-radius: 50rem;
97
- }
98
-
99
- .magic-player-timeline__slider-inner-track {
100
- position: relative;
101
- border-radius: 50rem;
102
- overflow: hidden;
103
- width: 100%;
104
- height: 100%;
105
- top: 0;
106
- left: 0;
107
- z-index: 1;
108
- }
109
-
110
- .magic-player-timeline__slider-thumb {
111
- position: absolute;
112
- width: var(--magic-player-track-height);
113
- height: var(--magic-player-track-height);
114
- z-index: 10;
115
- }
116
-
117
- .magic-player-timeline__slider-thumb-handle {
118
- position: absolute;
119
- width: var(--magic-player-thumb-size);
120
- height: var(--magic-player-thumb-size);
121
- top: 50%;
122
- left: 50%;
123
- transform: translate(-50%, -50%) scale(0);
124
- transition: transform 300ms ease;
125
- z-index: 10;
126
- background-color: var(--magic-player-thumb-bg-color);
127
- border-radius: 50rem;
128
- }
129
-
130
- .magic-player-timeline__slider-scrubbed,
131
- .magic-player-timeline__slider-seeked,
132
- .magic-player-timeline__slider-buffered {
133
- position: absolute;
134
- left: 0;
135
- width: 100%;
136
- height: 100%;
137
- margin-left: calc(-100% + var(--magic-player-track-height));
138
- background: currentColor;
139
- border-radius: 50rem;
140
- }
141
-
142
- .magic-player-timeline__slider-scrubbed {
143
- z-index: 1;
144
- min-width: var(--magic-player-track-height);
145
- display: flex;
146
- }
147
-
148
- .magic-player-timeline__slider-seeked {
149
- opacity: 0.25;
150
- }
151
-
152
- .magic-player-timeline__slider-buffered {
153
- opacity: 0.15;
154
- }
155
-
156
- .magic-player-timeline:hover .magic-player-timeline__slider-thumb-handle {
157
- transform: translate(-50%, -50%) scale(1);
158
- }
159
-
160
- .magic-player-timeline__seek-popover {
161
- position: absolute;
162
- left: 0;
163
- bottom: 100%;
164
- transform: translateX(-50%);
165
- }
65
+ <style>
66
+ :root{--magic-player-target-height:56px;--magic-player-track-height:4px;--magic-player-track-bg-color:hsla(0,0%,98%,.15);--magic-player-thumb-size:1rem;--magic-player-thumb-bg-color:#fafafa}.magic-player-timeline{height:var(--magic-player-track-height)}.magic-player-timeline,.magic-player-timeline__target{align-items:center;display:flex;position:relative;width:100%}.magic-player-timeline__target{cursor:pointer;height:var(--magic-player-target-height)}.magic-player-timeline__slider-track{background:var(--magic-player-track-bg-color);border-radius:50rem;height:var(--magic-player-track-height);position:relative;width:100%}.magic-player-timeline__slider-inner-track{border-radius:50rem;height:100%;left:0;overflow:hidden;position:relative;top:0;width:100%;z-index:1}.magic-player-timeline__slider-thumb{height:var(--magic-player-track-height);position:absolute;width:var(--magic-player-track-height);z-index:10}.magic-player-timeline__slider-thumb-handle{background-color:var(--magic-player-thumb-bg-color);border-radius:50rem;height:var(--magic-player-thumb-size);left:50%;position:absolute;top:50%;transform:translate(-50%,-50%) scale(0);transition:transform .3s ease;width:var(--magic-player-thumb-size);z-index:10}.magic-player-timeline__slider-buffered,.magic-player-timeline__slider-scrubbed,.magic-player-timeline__slider-seeked{background:currentColor;border-radius:50rem;height:100%;left:0;margin-left:calc(-100% + var(--magic-player-track-height));position:absolute;width:100%}.magic-player-timeline__slider-scrubbed{display:flex;min-width:var(--magic-player-track-height);z-index:1}.magic-player-timeline__slider-seeked{opacity:.25}.magic-player-timeline__slider-buffered{opacity:.15}.magic-player-timeline:hover .magic-player-timeline__slider-thumb-handle{transform:translate(-50%,-50%) scale(1)}.magic-player-timeline__seek-popover{bottom:100%;left:0;position:absolute;transform:translateX(-50%)}
166
67
  </style>
@@ -1,12 +1,14 @@
1
- declare const _default: import("vue").DefineComponent<{
2
- id: {
3
- type: import("vue").PropType<string>;
4
- required: true;
5
- };
6
- }, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
7
- id: {
8
- type: import("vue").PropType<string>;
1
+ interface Props {
2
+ id: string;
3
+ }
4
+ declare const _default: import("vue").DefineComponent<__VLS_TypePropsToRuntimeProps<Props>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<__VLS_TypePropsToRuntimeProps<Props>>>, {}, {}>;
5
+ export default _default;
6
+ type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
7
+ type __VLS_TypePropsToRuntimeProps<T> = {
8
+ [K in keyof T]-?: {} extends Pick<T, K> ? {
9
+ type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
10
+ } : {
11
+ type: import('vue').PropType<T[K]>;
9
12
  required: true;
10
13
  };
11
- }>>, {}, {}>;
12
- export default _default;
14
+ };
@@ -12,27 +12,5 @@
12
12
  </template>
13
13
 
14
14
  <style scoped>
15
- svg > circle {
16
- fill: none;
17
- transform-origin: center;
18
- stroke-dasharray: 1, 200;
19
- stroke-dashoffset: 0;
20
- animation: spinner 2.5s ease-in-out infinite;
21
- stroke: currentColor;
22
- }
23
-
24
- @keyframes spinner {
25
- 0% {
26
- stroke-dasharray: 1, 200;
27
- transform: rotate(0deg);
28
- }
29
- 50% {
30
- stroke-dasharray: 100, 200;
31
- transform: rotate(360deg);
32
- }
33
- 100% {
34
- stroke-dasharray: 1, 200;
35
- transform: rotate(720deg);
36
- }
37
- }
15
+ svg>circle{fill:none;transform-origin:center;stroke-dasharray:1,200;stroke-dashoffset:0;animation:spinner 2.5s ease-in-out infinite;stroke:currentColor}@keyframes spinner{0%{stroke-dasharray:1,200;transform:rotate(0deg)}50%{stroke-dasharray:100,200;transform:rotate(1turn)}to{stroke-dasharray:1,200;transform:rotate(2turn)}}
38
16
  </style>
@@ -5,7 +5,7 @@ export declare function useControlsApi(args: UseControlsApiArgs): {
5
5
  seekedTime: import("vue").Ref<number>;
6
6
  seekedPercentage: import("vue").Ref<number>;
7
7
  scrubbedPercentage: import("vue").Ref<number>;
8
- bufferedPercentage: import("vue").ComputedRef<any>;
8
+ bufferedPercentage: import("vue").ComputedRef<number>;
9
9
  thumbPercentage: import("vue").Ref<number>;
10
10
  popoverOffsetX: import("vue").Ref<number>;
11
11
  onMouseenter: () => void;