@hanifhan1f/vidstack-react 1.12.13 → 1.12.14

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 (389) hide show
  1. package/dev/chunks/vidstack-B-FM4-oZ.js +668 -0
  2. package/dev/chunks/vidstack-B92UncBI.js +61 -0
  3. package/dev/chunks/vidstack-BDiAEW1N.js +11691 -0
  4. package/dev/chunks/vidstack-BZIhWvGa.js +1371 -0
  5. package/dev/chunks/vidstack-Bfi_jCvb.js +476 -0
  6. package/dev/chunks/vidstack-CBF7iUqu.js +22 -0
  7. package/dev/chunks/vidstack-CFZ0rYJz.js +34 -0
  8. package/dev/chunks/vidstack-CM82l-7o.js +551 -0
  9. package/dev/chunks/vidstack-CvWDiSTs.js +84 -0
  10. package/dev/chunks/vidstack-CzU-uC5f.js +189 -0
  11. package/dev/chunks/vidstack-D-hQD1eE.js +9 -0
  12. package/dev/chunks/vidstack-D6_9yy0x.js +643 -0
  13. package/dev/chunks/vidstack-DJQOTrl6.js +180 -0
  14. package/dev/chunks/vidstack-DNbKNc4R.js +288 -0
  15. package/dev/chunks/vidstack-D_bWd66h.js +2023 -0
  16. package/dev/chunks/vidstack-Dm1xEU9Q.js +36 -0
  17. package/dev/chunks/vidstack-f6WXkmfP.js +375 -0
  18. package/dev/chunks/vidstack-krOAtKMi.js +34 -0
  19. package/dev/chunks/vidstack-lYFZKRUc.js +401 -0
  20. package/dev/player/vidstack-default-components.js +14 -0
  21. package/dev/player/vidstack-default-icons.js +88 -0
  22. package/dev/player/vidstack-default-layout.js +14 -0
  23. package/dev/player/vidstack-plyr-icons.js +62 -0
  24. package/dev/player/vidstack-plyr-layout.js +636 -0
  25. package/dev/player/vidstack-remotion.js +345 -0
  26. package/dev/vidstack.js +587 -0
  27. package/dom.d.ts +91 -0
  28. package/google-cast.d.ts +1422 -0
  29. package/icons.d.ts +5 -0
  30. package/index.d.ts +8 -0
  31. package/package.json +9 -60
  32. package/player/layouts/default.d.ts +11392 -0
  33. package/player/layouts/plyr.d.ts +5 -0
  34. package/player/remotion.d.ts +5 -0
  35. package/player/styles/base.css +153 -0
  36. package/player/styles/default/buffering.css +55 -0
  37. package/player/styles/default/buttons.css +175 -0
  38. package/player/styles/default/captions.css +181 -0
  39. package/player/styles/default/chapter-title.css +26 -0
  40. package/player/styles/default/controls.css +56 -0
  41. package/player/styles/default/gestures.css +19 -0
  42. package/player/styles/default/icons.css +6 -0
  43. package/player/styles/default/keyboard.css +148 -0
  44. package/player/styles/default/layouts/audio.css +417 -0
  45. package/player/styles/default/layouts/video.css +1082 -0
  46. package/player/styles/default/menus.css +959 -0
  47. package/player/styles/default/poster.css +52 -0
  48. package/player/styles/default/sliders.css +391 -0
  49. package/player/styles/default/theme.css +2461 -0
  50. package/player/styles/default/thumbnail.css +40 -0
  51. package/player/styles/default/time.css +45 -0
  52. package/player/styles/default/tooltips.css +141 -0
  53. package/player/styles/plyr/theme.css +1237 -0
  54. package/prod/chunks/vidstack-0Foyib2F.js +34 -0
  55. package/prod/chunks/vidstack-BbPEqH3g.js +11196 -0
  56. package/prod/chunks/vidstack-Bh7M8kL6.js +663 -0
  57. package/prod/chunks/vidstack-BlPINAXN.js +189 -0
  58. package/prod/chunks/vidstack-C5Rzkyfp.js +375 -0
  59. package/prod/chunks/vidstack-CBF7iUqu.js +22 -0
  60. package/prod/chunks/vidstack-CZNlvfmV.js +288 -0
  61. package/prod/chunks/vidstack-CZgUA94N.js +1979 -0
  62. package/prod/chunks/vidstack-D0XCUWbp.js +159 -0
  63. package/prod/chunks/vidstack-DTyDOhwS.js +504 -0
  64. package/prod/chunks/vidstack-DhC5F6c8.js +470 -0
  65. package/prod/chunks/vidstack-Dm1xEU9Q.js +36 -0
  66. package/prod/chunks/vidstack-Ma9rwtR0.js +386 -0
  67. package/prod/chunks/vidstack-WsodkLQg.js +1371 -0
  68. package/prod/chunks/vidstack-jIPoNqhj.js +545 -0
  69. package/prod/chunks/vidstack-krOAtKMi.js +34 -0
  70. package/prod/chunks/vidstack-vqp2QaHR.js +9 -0
  71. package/prod/chunks/vidstack-xo_SmgiV.js +84 -0
  72. package/prod/chunks/vidstack-xvxeRtaN.js +61 -0
  73. package/prod/player/vidstack-default-components.js +14 -0
  74. package/prod/player/vidstack-default-icons.js +88 -0
  75. package/prod/player/vidstack-default-layout.js +14 -0
  76. package/prod/player/vidstack-plyr-icons.js +62 -0
  77. package/prod/player/vidstack-plyr-layout.js +636 -0
  78. package/prod/player/vidstack-remotion.js +335 -0
  79. package/prod/vidstack-icons.js +435 -0
  80. package/prod/vidstack.js +648 -0
  81. package/server/chunks/vidstack-2zMSe4ym.js +1371 -0
  82. package/server/chunks/vidstack-BtqWstSj.js +375 -0
  83. package/server/chunks/vidstack-C-HdFsZi.js +84 -0
  84. package/server/chunks/vidstack-C4iWXMC-.js +545 -0
  85. package/server/chunks/vidstack-C5zFBMwg.js +386 -0
  86. package/server/chunks/vidstack-CBF7iUqu.js +22 -0
  87. package/server/chunks/vidstack-CEh38XpD.js +288 -0
  88. package/server/chunks/vidstack-CkMAeO-e.js +34 -0
  89. package/server/chunks/vidstack-Cm0qnRvu.js +11196 -0
  90. package/server/chunks/vidstack-CoGzBr_V.js +663 -0
  91. package/server/chunks/vidstack-CyFwkPiu.js +470 -0
  92. package/server/chunks/vidstack-D-hQD1eE.js +9 -0
  93. package/server/chunks/vidstack-D_bWd66h.js +2023 -0
  94. package/server/chunks/vidstack-Dm1xEU9Q.js +36 -0
  95. package/server/chunks/vidstack-DtQSvsQr.js +189 -0
  96. package/server/chunks/vidstack-jlaBqZq5.js +61 -0
  97. package/server/chunks/vidstack-krOAtKMi.js +34 -0
  98. package/server/chunks/vidstack-rWs25cS9.js +159 -0
  99. package/server/chunks/vidstack-uyCXITen.js +504 -0
  100. package/server/player/vidstack-default-components.js +14 -0
  101. package/server/player/vidstack-default-icons.js +88 -0
  102. package/server/player/vidstack-default-layout.js +14 -0
  103. package/server/player/vidstack-plyr-icons.js +62 -0
  104. package/server/player/vidstack-plyr-layout.js +636 -0
  105. package/server/player/vidstack-remotion.js +335 -0
  106. package/server/vidstack.js +648 -0
  107. package/tailwind.cjs +101 -0
  108. package/tailwind.d.cts +15 -0
  109. package/.templates/sandbox/document.css +0 -27
  110. package/.templates/sandbox/favicon-32x32.png +0 -0
  111. package/.templates/sandbox/index.html +0 -21
  112. package/.templates/sandbox/main.tsx +0 -12
  113. package/.templates/sandbox/player.css +0 -39
  114. package/.templates/sandbox/player.tsx +0 -121
  115. package/.templates/sandbox/tracks.ts +0 -23
  116. package/analyze.config.ts +0 -7
  117. package/build/build-icons.js +0 -62
  118. package/rollup.config.ts +0 -256
  119. package/src/components/announcer.tsx +0 -47
  120. package/src/components/layouts/default/audio-layout.tsx +0 -231
  121. package/src/components/layouts/default/context.ts +0 -28
  122. package/src/components/layouts/default/hooks.ts +0 -13
  123. package/src/components/layouts/default/icons.tsx +0 -225
  124. package/src/components/layouts/default/index.ts +0 -11
  125. package/src/components/layouts/default/media-layout.tsx +0 -259
  126. package/src/components/layouts/default/slots.tsx +0 -98
  127. package/src/components/layouts/default/ui/announcer.tsx +0 -22
  128. package/src/components/layouts/default/ui/buttons.tsx +0 -301
  129. package/src/components/layouts/default/ui/captions.tsx +0 -16
  130. package/src/components/layouts/default/ui/controls.tsx +0 -12
  131. package/src/components/layouts/default/ui/keyboard-display.tsx +0 -132
  132. package/src/components/layouts/default/ui/menus/accessibility-menu.tsx +0 -100
  133. package/src/components/layouts/default/ui/menus/audio-menu.tsx +0 -167
  134. package/src/components/layouts/default/ui/menus/captions-menu.tsx +0 -61
  135. package/src/components/layouts/default/ui/menus/chapters-menu.tsx +0 -132
  136. package/src/components/layouts/default/ui/menus/font-menu.tsx +0 -331
  137. package/src/components/layouts/default/ui/menus/items/menu-checkbox.tsx +0 -72
  138. package/src/components/layouts/default/ui/menus/items/menu-items.tsx +0 -135
  139. package/src/components/layouts/default/ui/menus/items/menu-slider.tsx +0 -92
  140. package/src/components/layouts/default/ui/menus/playback-menu.tsx +0 -232
  141. package/src/components/layouts/default/ui/menus/settings-menu.tsx +0 -114
  142. package/src/components/layouts/default/ui/menus/utils.ts +0 -12
  143. package/src/components/layouts/default/ui/sliders.tsx +0 -136
  144. package/src/components/layouts/default/ui/time.tsx +0 -73
  145. package/src/components/layouts/default/ui/title.tsx +0 -24
  146. package/src/components/layouts/default/ui/tooltip.tsx +0 -27
  147. package/src/components/layouts/default/ui.ts +0 -8
  148. package/src/components/layouts/default/video-layout.tsx +0 -344
  149. package/src/components/layouts/plyr/context.ts +0 -26
  150. package/src/components/layouts/plyr/icons/plyr-airplay.js +0 -1
  151. package/src/components/layouts/plyr/icons/plyr-captions-off.js +0 -1
  152. package/src/components/layouts/plyr/icons/plyr-captions-on.js +0 -1
  153. package/src/components/layouts/plyr/icons/plyr-download.js +0 -1
  154. package/src/components/layouts/plyr/icons/plyr-enter-fullscreen.js +0 -1
  155. package/src/components/layouts/plyr/icons/plyr-exit-fullscreen.js +0 -1
  156. package/src/components/layouts/plyr/icons/plyr-fast-forward.js +0 -1
  157. package/src/components/layouts/plyr/icons/plyr-muted.js +0 -1
  158. package/src/components/layouts/plyr/icons/plyr-pause.js +0 -1
  159. package/src/components/layouts/plyr/icons/plyr-pip.js +0 -1
  160. package/src/components/layouts/plyr/icons/plyr-play.js +0 -1
  161. package/src/components/layouts/plyr/icons/plyr-restart.js +0 -1
  162. package/src/components/layouts/plyr/icons/plyr-rewind.js +0 -1
  163. package/src/components/layouts/plyr/icons/plyr-settings.js +0 -1
  164. package/src/components/layouts/plyr/icons/plyr-volume.js +0 -1
  165. package/src/components/layouts/plyr/icons.tsx +0 -71
  166. package/src/components/layouts/plyr/index.ts +0 -11
  167. package/src/components/layouts/plyr/layout.tsx +0 -1024
  168. package/src/components/layouts/plyr/props.ts +0 -104
  169. package/src/components/layouts/plyr/slots.tsx +0 -52
  170. package/src/components/layouts/remotion-ui.ts +0 -13
  171. package/src/components/layouts/utils.ts +0 -17
  172. package/src/components/player-callbacks.ts +0 -67
  173. package/src/components/player.tsx +0 -67
  174. package/src/components/primitives/instances.ts +0 -92
  175. package/src/components/primitives/nodes.tsx +0 -58
  176. package/src/components/primitives/slot.tsx +0 -132
  177. package/src/components/provider.tsx +0 -187
  178. package/src/components/text-track.tsx +0 -106
  179. package/src/components/ui/buttons/airplay-button.tsx +0 -53
  180. package/src/components/ui/buttons/caption-button.tsx +0 -55
  181. package/src/components/ui/buttons/fullscreen-button.tsx +0 -55
  182. package/src/components/ui/buttons/google-cast-button.tsx +0 -53
  183. package/src/components/ui/buttons/live-button.tsx +0 -56
  184. package/src/components/ui/buttons/mute-button.tsx +0 -60
  185. package/src/components/ui/buttons/pip-button.tsx +0 -54
  186. package/src/components/ui/buttons/play-button.tsx +0 -53
  187. package/src/components/ui/buttons/seek-button.tsx +0 -55
  188. package/src/components/ui/buttons/toggle-button.tsx +0 -51
  189. package/src/components/ui/caption.tsx +0 -70
  190. package/src/components/ui/captions.tsx +0 -41
  191. package/src/components/ui/chapter-title.tsx +0 -40
  192. package/src/components/ui/controls.tsx +0 -90
  193. package/src/components/ui/gesture.tsx +0 -43
  194. package/src/components/ui/menu.tsx +0 -251
  195. package/src/components/ui/poster.tsx +0 -101
  196. package/src/components/ui/radio-group.tsx +0 -88
  197. package/src/components/ui/sliders/audio-gain-slider.tsx +0 -55
  198. package/src/components/ui/sliders/quality-slider.tsx +0 -54
  199. package/src/components/ui/sliders/slider-callbacks.ts +0 -14
  200. package/src/components/ui/sliders/slider-value.tsx +0 -13
  201. package/src/components/ui/sliders/slider.tsx +0 -254
  202. package/src/components/ui/sliders/speed-slider.tsx +0 -54
  203. package/src/components/ui/sliders/time-slider.tsx +0 -379
  204. package/src/components/ui/sliders/volume-slider.tsx +0 -55
  205. package/src/components/ui/spinner.tsx +0 -105
  206. package/src/components/ui/thumbnail.tsx +0 -82
  207. package/src/components/ui/time.tsx +0 -77
  208. package/src/components/ui/title.tsx +0 -32
  209. package/src/components/ui/tooltip.tsx +0 -135
  210. package/src/globals.d.ts +0 -3
  211. package/src/hooks/create-text-track.ts +0 -22
  212. package/src/hooks/options/use-audio-gain-options.ts +0 -75
  213. package/src/hooks/options/use-audio-options.ts +0 -71
  214. package/src/hooks/options/use-caption-options.ts +0 -95
  215. package/src/hooks/options/use-chapter-options.ts +0 -97
  216. package/src/hooks/options/use-playback-rate-options.ts +0 -75
  217. package/src/hooks/options/use-video-quality-options.ts +0 -123
  218. package/src/hooks/use-active-text-cues.ts +0 -28
  219. package/src/hooks/use-active-text-track.ts +0 -19
  220. package/src/hooks/use-chapter-title.ts +0 -12
  221. package/src/hooks/use-dom.ts +0 -121
  222. package/src/hooks/use-media-context.ts +0 -6
  223. package/src/hooks/use-media-player.ts +0 -19
  224. package/src/hooks/use-media-provider.ts +0 -31
  225. package/src/hooks/use-media-remote.ts +0 -37
  226. package/src/hooks/use-media-state.ts +0 -58
  227. package/src/hooks/use-signals.ts +0 -24
  228. package/src/hooks/use-slider-preview.ts +0 -126
  229. package/src/hooks/use-slider-state.ts +0 -63
  230. package/src/hooks/use-state.ts +0 -47
  231. package/src/hooks/use-text-cues.ts +0 -33
  232. package/src/hooks/use-thumbnails.ts +0 -69
  233. package/src/icon.ts +0 -37
  234. package/src/icons.ts +0 -754
  235. package/src/index.ts +0 -181
  236. package/src/providers/remotion/index.ts +0 -10
  237. package/src/providers/remotion/layout-engine.ts +0 -123
  238. package/src/providers/remotion/loader.ts +0 -35
  239. package/src/providers/remotion/playback-engine.ts +0 -142
  240. package/src/providers/remotion/provider.tsx +0 -514
  241. package/src/providers/remotion/type-check.ts +0 -13
  242. package/src/providers/remotion/types.ts +0 -94
  243. package/src/providers/remotion/ui/context.tsx +0 -120
  244. package/src/providers/remotion/ui/error-boundary.tsx +0 -57
  245. package/src/providers/remotion/ui/poster.tsx +0 -33
  246. package/src/providers/remotion/ui/slider-thumbnail.tsx +0 -41
  247. package/src/providers/remotion/ui/thumbnail.tsx +0 -166
  248. package/src/providers/remotion/validate.ts +0 -220
  249. package/src/source.ts +0 -5
  250. package/src/utils.ts +0 -27
  251. package/tsconfig.build.json +0 -10
  252. package/tsconfig.json +0 -11
  253. package/types/react/src/components/announcer.d.ts +0 -16
  254. package/types/react/src/components/layouts/default/audio-layout.d.ts +0 -27
  255. package/types/react/src/components/layouts/default/context.d.ts +0 -14
  256. package/types/react/src/components/layouts/default/hooks.d.ts +0 -2
  257. package/types/react/src/components/layouts/default/icons.d.ts +0 -95
  258. package/types/react/src/components/layouts/default/index.d.ts +0 -5
  259. package/types/react/src/components/layouts/default/media-layout.d.ts +0 -133
  260. package/types/react/src/components/layouts/default/slots.d.ts +0 -22
  261. package/types/react/src/components/layouts/default/ui/announcer.d.ts +0 -6
  262. package/types/react/src/components/layouts/default/ui/buttons.d.ts +0 -54
  263. package/types/react/src/components/layouts/default/ui/captions.d.ts +0 -6
  264. package/types/react/src/components/layouts/default/ui/controls.d.ts +0 -6
  265. package/types/react/src/components/layouts/default/ui/keyboard-display.d.ts +0 -8
  266. package/types/react/src/components/layouts/default/ui/menus/accessibility-menu.d.ts +0 -10
  267. package/types/react/src/components/layouts/default/ui/menus/audio-menu.d.ts +0 -10
  268. package/types/react/src/components/layouts/default/ui/menus/captions-menu.d.ts +0 -10
  269. package/types/react/src/components/layouts/default/ui/menus/chapters-menu.d.ts +0 -7
  270. package/types/react/src/components/layouts/default/ui/menus/font-menu.d.ts +0 -6
  271. package/types/react/src/components/layouts/default/ui/menus/items/menu-checkbox.d.ts +0 -13
  272. package/types/react/src/components/layouts/default/ui/menus/items/menu-items.d.ts +0 -49
  273. package/types/react/src/components/layouts/default/ui/menus/items/menu-slider.d.ts +0 -26
  274. package/types/react/src/components/layouts/default/ui/menus/playback-menu.d.ts +0 -10
  275. package/types/react/src/components/layouts/default/ui/menus/settings-menu.d.ts +0 -15
  276. package/types/react/src/components/layouts/default/ui/menus/utils.d.ts +0 -1
  277. package/types/react/src/components/layouts/default/ui/sliders.d.ts +0 -24
  278. package/types/react/src/components/layouts/default/ui/time.d.ts +0 -30
  279. package/types/react/src/components/layouts/default/ui/title.d.ts +0 -6
  280. package/types/react/src/components/layouts/default/ui/tooltip.d.ts +0 -12
  281. package/types/react/src/components/layouts/default/ui.d.ts +0 -8
  282. package/types/react/src/components/layouts/default/video-layout.d.ts +0 -47
  283. package/types/react/src/components/layouts/plyr/context.d.ts +0 -12
  284. package/types/react/src/components/layouts/plyr/icons/plyr-airplay.d.ts +0 -2
  285. package/types/react/src/components/layouts/plyr/icons/plyr-captions-off.d.ts +0 -2
  286. package/types/react/src/components/layouts/plyr/icons/plyr-captions-on.d.ts +0 -2
  287. package/types/react/src/components/layouts/plyr/icons/plyr-download.d.ts +0 -2
  288. package/types/react/src/components/layouts/plyr/icons/plyr-enter-fullscreen.d.ts +0 -2
  289. package/types/react/src/components/layouts/plyr/icons/plyr-exit-fullscreen.d.ts +0 -2
  290. package/types/react/src/components/layouts/plyr/icons/plyr-fast-forward.d.ts +0 -2
  291. package/types/react/src/components/layouts/plyr/icons/plyr-muted.d.ts +0 -2
  292. package/types/react/src/components/layouts/plyr/icons/plyr-pause.d.ts +0 -2
  293. package/types/react/src/components/layouts/plyr/icons/plyr-pip.d.ts +0 -2
  294. package/types/react/src/components/layouts/plyr/icons/plyr-play.d.ts +0 -2
  295. package/types/react/src/components/layouts/plyr/icons/plyr-restart.d.ts +0 -2
  296. package/types/react/src/components/layouts/plyr/icons/plyr-rewind.d.ts +0 -2
  297. package/types/react/src/components/layouts/plyr/icons/plyr-settings.d.ts +0 -2
  298. package/types/react/src/components/layouts/plyr/icons/plyr-volume.d.ts +0 -2
  299. package/types/react/src/components/layouts/plyr/icons.d.ts +0 -25
  300. package/types/react/src/components/layouts/plyr/index.d.ts +0 -6
  301. package/types/react/src/components/layouts/plyr/layout.d.ts +0 -17
  302. package/types/react/src/components/layouts/plyr/props.d.ts +0 -71
  303. package/types/react/src/components/layouts/plyr/slots.d.ts +0 -9
  304. package/types/react/src/components/layouts/remotion-ui.d.ts +0 -3
  305. package/types/react/src/components/layouts/utils.d.ts +0 -1
  306. package/types/react/src/components/player-callbacks.d.ts +0 -6
  307. package/types/react/src/components/player.d.ts +0 -32
  308. package/types/react/src/components/primitives/instances.d.ts +0 -83
  309. package/types/react/src/components/primitives/nodes.d.ts +0 -15
  310. package/types/react/src/components/primitives/slot.d.ts +0 -11
  311. package/types/react/src/components/provider.d.ts +0 -26
  312. package/types/react/src/components/text-track.d.ts +0 -100
  313. package/types/react/src/components/ui/buttons/airplay-button.d.ts +0 -22
  314. package/types/react/src/components/ui/buttons/caption-button.d.ts +0 -24
  315. package/types/react/src/components/ui/buttons/fullscreen-button.d.ts +0 -24
  316. package/types/react/src/components/ui/buttons/google-cast-button.d.ts +0 -22
  317. package/types/react/src/components/ui/buttons/live-button.d.ts +0 -26
  318. package/types/react/src/components/ui/buttons/mute-button.d.ts +0 -30
  319. package/types/react/src/components/ui/buttons/pip-button.d.ts +0 -24
  320. package/types/react/src/components/ui/buttons/play-button.d.ts +0 -23
  321. package/types/react/src/components/ui/buttons/seek-button.d.ts +0 -25
  322. package/types/react/src/components/ui/buttons/toggle-button.d.ts +0 -22
  323. package/types/react/src/components/ui/caption.d.ts +0 -11
  324. package/types/react/src/components/ui/captions.d.ts +0 -20
  325. package/types/react/src/components/ui/chapter-title.d.ts +0 -20
  326. package/types/react/src/components/ui/controls.d.ts +0 -40
  327. package/types/react/src/components/ui/gesture.d.ts +0 -20
  328. package/types/react/src/components/ui/menu.d.ts +0 -102
  329. package/types/react/src/components/ui/poster.d.ts +0 -25
  330. package/types/react/src/components/ui/radio-group.d.ts +0 -39
  331. package/types/react/src/components/ui/sliders/audio-gain-slider.d.ts +0 -29
  332. package/types/react/src/components/ui/sliders/quality-slider.d.ts +0 -28
  333. package/types/react/src/components/ui/sliders/slider-callbacks.d.ts +0 -6
  334. package/types/react/src/components/ui/sliders/slider-value.d.ts +0 -9
  335. package/types/react/src/components/ui/sliders/slider.d.ts +0 -134
  336. package/types/react/src/components/ui/sliders/speed-slider.d.ts +0 -28
  337. package/types/react/src/components/ui/sliders/time-slider.d.ts +0 -124
  338. package/types/react/src/components/ui/sliders/volume-slider.d.ts +0 -29
  339. package/types/react/src/components/ui/spinner.d.ts +0 -31
  340. package/types/react/src/components/ui/thumbnail.d.ts +0 -26
  341. package/types/react/src/components/ui/time.d.ts +0 -20
  342. package/types/react/src/components/ui/title.d.ts +0 -15
  343. package/types/react/src/components/ui/tooltip.d.ts +0 -63
  344. package/types/react/src/hooks/create-text-track.d.ts +0 -7
  345. package/types/react/src/hooks/options/use-audio-gain-options.d.ts +0 -22
  346. package/types/react/src/hooks/options/use-audio-options.d.ts +0 -17
  347. package/types/react/src/hooks/options/use-caption-options.d.ts +0 -24
  348. package/types/react/src/hooks/options/use-chapter-options.d.ts +0 -18
  349. package/types/react/src/hooks/options/use-playback-rate-options.d.ts +0 -22
  350. package/types/react/src/hooks/options/use-video-quality-options.d.ts +0 -35
  351. package/types/react/src/hooks/use-active-text-cues.d.ts +0 -6
  352. package/types/react/src/hooks/use-active-text-track.d.ts +0 -5
  353. package/types/react/src/hooks/use-chapter-title.d.ts +0 -4
  354. package/types/react/src/hooks/use-dom.d.ts +0 -9
  355. package/types/react/src/hooks/use-media-context.d.ts +0 -1
  356. package/types/react/src/hooks/use-media-player.d.ts +0 -7
  357. package/types/react/src/hooks/use-media-provider.d.ts +0 -7
  358. package/types/react/src/hooks/use-media-remote.d.ts +0 -12
  359. package/types/react/src/hooks/use-media-state.d.ts +0 -15
  360. package/types/react/src/hooks/use-signals.d.ts +0 -5
  361. package/types/react/src/hooks/use-slider-preview.d.ts +0 -27
  362. package/types/react/src/hooks/use-slider-state.d.ts +0 -16
  363. package/types/react/src/hooks/use-state.d.ts +0 -18
  364. package/types/react/src/hooks/use-text-cues.d.ts +0 -6
  365. package/types/react/src/hooks/use-thumbnails.d.ts +0 -16
  366. package/types/react/src/icon.d.ts +0 -17
  367. package/types/react/src/icons.d.ts +0 -215
  368. package/types/react/src/index.d.ts +0 -78
  369. package/types/react/src/providers/remotion/index.d.ts +0 -7
  370. package/types/react/src/providers/remotion/layout-engine.d.ts +0 -8
  371. package/types/react/src/providers/remotion/loader.d.ts +0 -9
  372. package/types/react/src/providers/remotion/playback-engine.d.ts +0 -11
  373. package/types/react/src/providers/remotion/provider.d.ts +0 -26
  374. package/types/react/src/providers/remotion/type-check.d.ts +0 -6
  375. package/types/react/src/providers/remotion/types.d.ts +0 -91
  376. package/types/react/src/providers/remotion/ui/context.d.ts +0 -17
  377. package/types/react/src/providers/remotion/ui/error-boundary.d.ts +0 -21
  378. package/types/react/src/providers/remotion/ui/poster.d.ts +0 -18
  379. package/types/react/src/providers/remotion/ui/slider-thumbnail.d.ts +0 -17
  380. package/types/react/src/providers/remotion/ui/thumbnail.d.ts +0 -32
  381. package/types/react/src/providers/remotion/validate.d.ts +0 -12
  382. package/types/react/src/source.d.ts +0 -3
  383. package/types/react/src/utils.d.ts +0 -3
  384. package/types/vidstack/src/core/api/src-types.d.ts +0 -50
  385. package/types/vidstack/src/utils/mime.d.ts +0 -15
  386. package/types/vidstack/src/utils/network.d.ts +0 -17
  387. package/types/vidstack/src/utils/support.d.ts +0 -72
  388. package/vite.config.ts +0 -23
  389. /package/{npm/analyze.json.d.ts → analyze.json.d.ts} +0 -0
@@ -0,0 +1,148 @@
1
+ /*
2
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3
+ * Keyboard Action
4
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5
+ */
6
+
7
+ :where(.vds-kb-action.hidden) {
8
+ opacity: 0;
9
+ }
10
+
11
+ /*
12
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
13
+ * Keyboard Text
14
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
15
+ */
16
+
17
+ :where(.vds-kb-text-wrapper) {
18
+ text-align: center;
19
+ position: absolute;
20
+ left: 0;
21
+ right: 0;
22
+ top: var(--media-kb-text-top, 10%);
23
+ z-index: 20;
24
+ pointer-events: none;
25
+ }
26
+
27
+ :where(.vds-kb-text) {
28
+ display: inline-block;
29
+ font-size: var(--media-kb-text-size, 150%);
30
+ font-family: var(--media-font-family, sans-serif);
31
+ backdrop-filter: blur(2px);
32
+ border-radius: var(--media-kb-border-radius, 2.5px);
33
+ pointer-events: none;
34
+ }
35
+
36
+ .vds-kb-text {
37
+ color: var(--media-kb-text-color, var(--default-color));
38
+ background-color: var(--media-kb-text-bg, var(--default-bg));
39
+ padding: var(--media-kb-text-padding, 10px 20px);
40
+ }
41
+
42
+ .light .vds-kb-text {
43
+ --default-color: #1a1a1a;
44
+ --default-bg: rgb(240 240 240 / 0.6);
45
+ }
46
+
47
+ .dark .vds-kb-text {
48
+ --default-color: #f5f5f5;
49
+ --default-bg: rgb(10 10 10 / 0.6);
50
+ }
51
+
52
+ :where(.vds-kb-text:empty) {
53
+ display: none;
54
+ }
55
+
56
+ /*
57
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
58
+ * Keyboard Bezel
59
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
60
+ */
61
+
62
+ :where(.vds-kb-bezel) {
63
+ --size: var(--media-kb-bezel-size, 52px);
64
+ position: absolute;
65
+ left: 50%;
66
+ top: 45%;
67
+ display: flex;
68
+ flex-direction: column;
69
+ align-items: center;
70
+ justify-content: center;
71
+ width: var(--size);
72
+ height: var(--size);
73
+ margin-left: calc(-1 * calc(var(--size) / 2));
74
+ margin-right: calc(-1 * calc(var(--size) / 2));
75
+ z-index: 20;
76
+ backdrop-filter: blur(2px);
77
+ background-color: var(--media-kb-bezel-bg, var(--default-bg));
78
+ animation: var(--media-kb-bezel-animation, vds-bezel-fade 0.35s linear 1 normal forwards);
79
+ border-radius: var(--media-kb-bezel-border-radius, calc(var(--size) / 2));
80
+ pointer-events: none;
81
+ }
82
+
83
+ .vds-kb-bezel:not(:has(svg)) {
84
+ display: none !important;
85
+ }
86
+
87
+ .light .vds-kb-bezel {
88
+ --default-bg: rgb(255 255 255 / 0.6);
89
+ }
90
+
91
+ .dark .vds-kb-bezel {
92
+ --default-bg: rgb(10 10 10 / 0.6);
93
+ }
94
+
95
+ @media (prefers-reduced-motion) {
96
+ :where(.vds-kb-bezel) {
97
+ animation: none;
98
+ }
99
+ }
100
+
101
+ :where(.vds-kb-bezel:has(slot:empty)) {
102
+ opacity: 0;
103
+ }
104
+
105
+ :where(.vds-kb-action[data-action='seek-forward'] .vds-kb-bezel) {
106
+ top: 45%;
107
+ left: unset;
108
+ right: 10%;
109
+ }
110
+
111
+ :where(.vds-kb-action[data-action='seek-backward'] .vds-kb-bezel) {
112
+ top: 45%;
113
+ left: 10%;
114
+ }
115
+
116
+ /*
117
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
118
+ * Keyboard Icon
119
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
120
+ */
121
+
122
+ :where(.vds-kb-icon) {
123
+ --size: var(--media-kb-icon-size, 38px);
124
+ width: var(--size);
125
+ height: var(--size);
126
+ }
127
+
128
+ .vds-kb-icon {
129
+ color: var(--media-kb-icon-color, var(--default-color));
130
+ }
131
+
132
+ .light .vds-kb-icon {
133
+ --default-color: #1a1a1a;
134
+ }
135
+
136
+ .dark .vds-kb-icon {
137
+ --default-color: #f5f5f5;
138
+ }
139
+
140
+ @keyframes vds-bezel-fade {
141
+ 0% {
142
+ opacity: 1;
143
+ }
144
+ 100% {
145
+ opacity: 0;
146
+ transform: scale(2);
147
+ }
148
+ }
@@ -0,0 +1,417 @@
1
+ /*
2
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3
+ * Audio Layout
4
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
5
+ */
6
+
7
+ [data-media-player] .vds-audio-layout:not([data-match]) {
8
+ display: none !important;
9
+ }
10
+
11
+ :where([data-media-player][data-layout='audio']) {
12
+ border-radius: var(--audio-border-radius, 6px);
13
+ }
14
+
15
+ :where(.vds-audio-layout) {
16
+ position: relative;
17
+ display: inline-flex;
18
+ align-items: center;
19
+ min-width: 100%;
20
+ height: 60px;
21
+ color: var(--audio-controls-color, var(--default-color));
22
+ background-color: var(--audio-bg, var(--default-bg));
23
+ border-radius: var(--audio-border-radius, 6px);
24
+ box-sizing: border-box;
25
+ filter: var(
26
+ --audio-filter,
27
+ drop-shadow(0 4px 3px rgb(0 0 0 / 0.07)) drop-shadow(0 2px 2px rgb(0 0 0 / 0.06))
28
+ );
29
+ }
30
+
31
+ .vds-audio-layout {
32
+ border: var(--audio-border, 1px solid rgb(255 255 255 / 0.1));
33
+ }
34
+
35
+ :where([data-media-player][data-focus]:not([data-playing]) .vds-audio-layout) {
36
+ box-shadow: var(--media-focus-ring);
37
+ }
38
+
39
+ :where(.vds-audio-layout) {
40
+ --media-brand: var(--audio-brand, var(--default-brand));
41
+ --media-font-family: var(--audio-font-family, sans-serif);
42
+ --media-controls-color: var(--audio-controls-color, var(--default-controls-color));
43
+ --media-menu-y-offset: 18px;
44
+ --media-tooltip-y-offset: 18px;
45
+ --media-slider-track-bg: var(--audio-slider-track-bg, var(--default-slider-track-bg));
46
+ --media-slider-track-fill-bg: var(--audio-slider-track-bg, var(--media-brand));
47
+ --media-slider-track-progress-bg: var(
48
+ --audio-slider-progress-bg,
49
+ var(--default-slider-progress-bg)
50
+ );
51
+ --media-slider-value-border: var(--audio-slider-value-border, 1px solid rgb(255 255 255 / 0.1));
52
+ --media-slider-value-gap: var(--audio-slider-value-gap, 6px);
53
+ --media-focus-ring-color: var(--audio-focus-ring-color, rgb(78 156 246));
54
+ --media-focus-ring: var(--audio-focus-ring, 0 0 0 3px var(--media-focus-ring-color));
55
+ }
56
+
57
+ .vds-audio-layout.light,
58
+ .light .vds-audio-layout {
59
+ --default-brand: rgb(10 10 10);
60
+ --default-color: rgb(10 10 10);
61
+ --default-bg: rgb(250 250 250);
62
+ --default-controls-color: rgb(10 10 10);
63
+ --default-border: 1px solid rgb(100 100 100 /0.2);
64
+ --default-slider-track-bg: rgb(50 50 50 / 0.1);
65
+ --default-slider-progress-bg: rgb(10 10 10 / 0.2);
66
+ }
67
+
68
+ .vds-audio-layout.dark,
69
+ .dark .vds-audio-layout {
70
+ --default-brand: #f5f5f5;
71
+ --default-color: #f5f5f5;
72
+ --default-controls-color: #f5f5f5;
73
+ --default-bg: black;
74
+ --default-slider-track-bg: rgb(255 255 255 / 0.3);
75
+ --default-slider-progress-bg: rgb(255 255 255 / 0.5);
76
+ }
77
+
78
+ /*
79
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
80
+ * Controls
81
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
82
+ */
83
+
84
+ .vds-audio-layout .vds-controls {
85
+ padding-inline: 6px;
86
+ border-radius: var(--audio-border-radius, 6px);
87
+ }
88
+
89
+ :where(.vds-audio-layout .vds-controls-group) {
90
+ display: flex;
91
+ align-items: center;
92
+ pointer-events: auto;
93
+ width: 100%;
94
+ }
95
+
96
+ :where(.vds-audio-layout .vds-button) {
97
+ width: var(--audio-button-size, 36px);
98
+ height: var(--audio-button-size, 36px);
99
+ margin-right: 2.5px;
100
+ }
101
+
102
+ /*
103
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
104
+ * Buttons
105
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
106
+ */
107
+
108
+ :where(.vds-audio-layout .vds-play-tooltip) {
109
+ --media-tooltip-y-offset: 18px;
110
+ }
111
+
112
+ :where(.vds-audio-layout .vds-button) {
113
+ transition: max-width 140ms ease-in;
114
+ max-width: var(--audio-button-size, 36px);
115
+ }
116
+
117
+ :where(.vds-audio-layout .vds-play-button) {
118
+ --media-button-hover-transform: 0;
119
+ --media-button-border: var(--audio-play-button-border, var(--color));
120
+ --media-button-hover-bg: var(--bg-color);
121
+ --media-button-touch-hover-bg: var(--bg-color);
122
+ width: var(--audio-play-button-size, 32px);
123
+ height: var(--audio-play-button-size, 32px);
124
+ border-radius: var(--audio-play-button-border-radius, 100%);
125
+ pointer-events: auto;
126
+ margin-bottom: 2px;
127
+ overflow: hidden;
128
+ }
129
+
130
+ .vds-audio-layout .vds-play-button {
131
+ color: var(--audio-play-button-color, var(--default-color));
132
+ background-color: var(--audio-play-button-bg, var(--default-bg));
133
+ }
134
+
135
+ .light .vds-audio-layout .vds-play-button,
136
+ .vds-audio-layout.light .vds-play-button {
137
+ --default-color: #f5f5f5;
138
+ --default-bg: var(--media-brand);
139
+ }
140
+
141
+ .dark .vds-audio-layout .vds-play-button,
142
+ .vds-audio-layout.dark .vds-play-button {
143
+ --default-color: rgb(10 10 10);
144
+ --default-bg: var(--media-brand);
145
+ }
146
+
147
+ :where(.vds-audio-layout .vds-caption-button:not([data-active])) {
148
+ opacity: var(--audio-caption-button-off-opacity, 0.64);
149
+ }
150
+
151
+ :where(.vds-audio-layout .vds-live-button) {
152
+ margin-right: 8px;
153
+ }
154
+
155
+ :where(.vds-audio-layout .vds-seek-button) {
156
+ max-width: 0px;
157
+ visibility: hidden;
158
+ }
159
+
160
+ :where([data-playing] .vds-audio-layout .vds-seek-button) {
161
+ max-width: var(--audio-button-size, 36px);
162
+ visibility: visible;
163
+ }
164
+
165
+ :where(.vds-audio-layout .vds-settings-menu .vds-button) {
166
+ margin-right: 0;
167
+ }
168
+
169
+ @media (pointer: coarse) {
170
+ :where(.vds-audio-layout .vds-caption-button) {
171
+ display: none;
172
+ }
173
+ }
174
+
175
+ /*
176
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
177
+ * Title
178
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
179
+ */
180
+
181
+ :where(.vds-audio-layout .vds-title) {
182
+ display: flex;
183
+ align-items: center;
184
+ position: relative;
185
+ margin-left: 6px;
186
+ margin-right: auto;
187
+ max-width: 100%;
188
+ opacity: 1;
189
+ transition:
190
+ max-width 150ms ease-in,
191
+ opacity 150ms ease-in;
192
+ overflow: hidden;
193
+ text-wrap: nowrap;
194
+ white-space: nowrap;
195
+ transition-delay: 75ms;
196
+ }
197
+
198
+ :where([data-playing] .vds-audio-layout .vds-title) {
199
+ opacity: 0;
200
+ margin: 0;
201
+ max-width: 0px;
202
+ transition: none;
203
+ transition-delay: 0;
204
+ }
205
+
206
+ :where(.vds-audio-layout .vds-title-text) {
207
+ display: inline-flex;
208
+ align-items: center;
209
+ }
210
+
211
+ :where(.vds-audio-layout .vds-marquee .vds-title-text) {
212
+ animation: vds-marquee 8s linear infinite;
213
+ }
214
+
215
+ :where(.vds-audio-layout .vds-title:hover *) {
216
+ animation-play-state: paused;
217
+ }
218
+
219
+ :where(.vds-audio-layout .vds-title-text:nth-child(2)) {
220
+ margin-left: 16px;
221
+ }
222
+
223
+ @keyframes vds-marquee {
224
+ from {
225
+ transform: translateX(0%);
226
+ }
227
+ to {
228
+ transform: translateX(calc(-100% - 16px));
229
+ }
230
+ }
231
+
232
+ /*
233
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
234
+ * Time
235
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
236
+ */
237
+
238
+ :where(.vds-audio-layout .vds-time) {
239
+ margin-inline: 8px;
240
+ transition: max-width 140ms ease-in;
241
+ font-size: var(--audio-time-font-size, 15px);
242
+ }
243
+
244
+ /*
245
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
246
+ * Time Slider
247
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
248
+ */
249
+
250
+ :where(.vds-audio-layout .vds-time-slider) {
251
+ --media-slider-preview-offset: 14px;
252
+ opacity: 0;
253
+ max-width: 0px;
254
+ transform: scaleX(0);
255
+ transform-origin: center left;
256
+ transition: none;
257
+ visibility: hidden;
258
+ }
259
+
260
+ :where([data-media-player]:not([data-paused]) .vds-audio-layout .vds-time-slider) {
261
+ opacity: 1;
262
+ max-width: 100%;
263
+ transform: scaleX(1);
264
+ transition:
265
+ opacity 150ms ease-in,
266
+ transform 150ms ease-in;
267
+ transition-delay: 75ms;
268
+ visibility: visible;
269
+ }
270
+
271
+ :where(.vds-audio-layout .vds-slider-chapter-title) {
272
+ color: var(--audio-slider-chapter-title-color, black);
273
+ }
274
+
275
+ :where(.dark .vds-audio-layout .vds-slider-chapter-title) {
276
+ color: var(--audio-slider-chapter-title-color, white);
277
+ }
278
+
279
+ :where([data-buffering] .vds-audio-layout .vds-slider-progress) {
280
+ --stripe-color: var(--audio-buffering-stripe-color, rgb(0 0 0 / 0.25));
281
+ --stripe-size: var(--audio-buffering-stripe-size, 30px);
282
+ width: 100% !important;
283
+ background-image: linear-gradient(
284
+ -45deg,
285
+ var(--stripe-color) 25%,
286
+ transparent 25%,
287
+ transparent 50%,
288
+ var(--stripe-color) 50%,
289
+ var(--stripe-color) 75%,
290
+ transparent 75%,
291
+ transparent
292
+ );
293
+ background-size: var(--stripe-size) var(--stripe-size);
294
+ animation: vds-audio-track-progress var(--audio-buffering-stripe-speed, 2s) linear infinite;
295
+ }
296
+
297
+ @keyframes vds-audio-track-progress {
298
+ 0% {
299
+ background-position: 0 0;
300
+ }
301
+ 100% {
302
+ background-position: var(--stripe-size) var(--stripe-size);
303
+ }
304
+ }
305
+
306
+ /*
307
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
308
+ * Volume Slider
309
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
310
+ */
311
+
312
+ :where(.vds-audio-layout .vds-volume) {
313
+ --media-slider-height: var(--audio-volume-height, 96px);
314
+ --media-slider-preview-offset: 6px;
315
+ --gap: var(--audio-volume-gap, 16px);
316
+ position: relative;
317
+ display: flex;
318
+ align-items: center;
319
+ justify-content: center;
320
+ }
321
+
322
+ :where(.vds-audio-layout .vds-volume-popup) {
323
+ position: absolute;
324
+ bottom: calc(100% + var(--gap));
325
+ left: 50%;
326
+ opacity: 0;
327
+ transform: translateX(-50%);
328
+ transition:
329
+ opacity 150ms ease-out,
330
+ visibility 150ms ease-out;
331
+ border-radius: var(--audio-volume-border-radius, 8px);
332
+ filter: var(--media-volume-filter, drop-shadow(0 1px 1px rgb(0 0 0 / 0.05)));
333
+ visibility: hidden;
334
+ }
335
+
336
+ /* safe area. */
337
+ .vds-audio-layout .vds-volume-popup::after {
338
+ content: '';
339
+ position: fixed;
340
+ bottom: calc(-1 * var(--gap));
341
+ right: 0;
342
+ width: 100%;
343
+ height: var(--gap);
344
+ z-index: 1;
345
+ pointer-events: auto;
346
+ }
347
+
348
+ .vds-audio-layout .vds-volume-popup {
349
+ background-color: var(--audio-volume-bg, var(--media-menu-bg, var(--default-bg)));
350
+ border: var(--audio-volume-border, var(--default-border));
351
+ }
352
+
353
+ .light .vds-audio-layout .vds-volume-popup,
354
+ .vds-audio-layout.light .vds-volume-popup {
355
+ --default-bg: rgb(250 250 250);
356
+ --default-border: 1px solid rgb(10 10 10 / 0.1);
357
+ }
358
+
359
+ .dark .vds-audio-layout .vds-volume-popup,
360
+ .vds-audio-layout.dark .vds-volume-popup {
361
+ --default-bg: rgb(10 10 10);
362
+ --default-border: 1px solid rgb(255 255 255 / 0.1);
363
+ }
364
+
365
+ :where(.vds-audio-layout .vds-volume[data-active] .vds-volume-popup),
366
+ :where(.vds-audio-layout .vds-volume:has([data-active]) .vds-volume-popup) {
367
+ transition:
368
+ opacity 150ms ease-in,
369
+ visibility 150ms ease-in;
370
+ opacity: 1;
371
+ visibility: visible;
372
+ }
373
+
374
+ :where(.vds-audio-layout .vds-volume[data-active] .vds-tooltip-content) {
375
+ display: none !important;
376
+ }
377
+
378
+ /*
379
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
380
+ * Menus
381
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
382
+ */
383
+
384
+ :where(.vds-audio-layout .vds-menu-items[data-root]) {
385
+ max-height: var(--audio-menu-max-height, 320px);
386
+ }
387
+
388
+ /*
389
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
390
+ * Captions
391
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
392
+ */
393
+
394
+ :where(.vds-audio-layout .vds-captions) {
395
+ --cue-font-size: calc(var(--audio-cue-font-size, 14px) * var(--media-user-font-size, 1));
396
+ display: inline-block;
397
+ position: absolute;
398
+ width: 100%;
399
+ top: unset;
400
+ bottom: calc(100% + var(--audio-captions-offset, 4px));
401
+ text-align: center;
402
+ background-color: var(--media-user-display-bg, var(--media-cue-display-bg));
403
+ }
404
+
405
+ :where([data-preview] .vds-audio-layout .vds-captions),
406
+ :where([data-paused] .vds-audio-layout .vds-captions) {
407
+ opacity: 0;
408
+ }
409
+
410
+ @media (pointer: coarse) {
411
+ .vds-audio-layout[data-scrubbing] :where(.vds-button, .vds-time) {
412
+ max-width: 0 !important;
413
+ margin: 0 !important;
414
+ padding: 0 !important;
415
+ transition: max-width 150ms ease-out;
416
+ }
417
+ }