@videojs/react 10.0.0-beta.26 → 10.0.0-beta.28

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 (1415) hide show
  1. package/dist/default/__generated__/skins/default-video/styles/base.css +25 -0
  2. package/dist/default/__generated__/skins/default-video/styles/buttons.css +152 -0
  3. package/dist/default/__generated__/skins/default-video/styles/container.css +45 -0
  4. package/dist/default/__generated__/skins/default-video/styles/controls.css +45 -0
  5. package/dist/default/__generated__/skins/default-video/styles/overlays.css +11 -0
  6. package/dist/default/__generated__/skins/default-video/styles/popups.css +45 -0
  7. package/dist/default/__generated__/skins/default-video/styles/poster.css +47 -0
  8. package/dist/default/__generated__/skins/default-video/styles/sliders.css +112 -0
  9. package/dist/default/__generated__/skins/default-video/styles/styles.css +514 -0
  10. package/dist/default/__generated__/skins/default-video/styles/theme.css +22 -0
  11. package/dist/default/i18n/context.js +3 -4
  12. package/dist/default/i18n/context.js.map +1 -1
  13. package/dist/default/i18n/create-i18n.js +0 -1
  14. package/dist/default/i18n/create-i18n.js.map +1 -1
  15. package/dist/default/i18n/locales/id/register.js +8 -0
  16. package/dist/default/i18n/locales/id/register.js.map +1 -0
  17. package/dist/default/i18n/locales/id.js +2 -0
  18. package/dist/default/i18n/locales/lt/register.js +8 -0
  19. package/dist/default/i18n/locales/lt/register.js.map +1 -0
  20. package/dist/default/i18n/locales/lt.js +2 -0
  21. package/dist/default/icons/dist/react/default/airplay-enter.js.map +1 -1
  22. package/dist/default/icons/dist/react/default/airplay-exit.js +1 -2
  23. package/dist/default/icons/dist/react/default/airplay-exit.js.map +1 -1
  24. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
  25. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
  26. package/dist/default/icons/dist/react/default/cast-enter.js +2 -45
  27. package/dist/default/icons/dist/react/default/cast-enter.js.map +1 -1
  28. package/dist/default/icons/dist/react/default/cast-exit.js +4 -61
  29. package/dist/default/icons/dist/react/default/cast-exit.js.map +1 -1
  30. package/dist/default/icons/dist/react/default/check.js.map +1 -1
  31. package/dist/default/icons/dist/react/default/chevron.js.map +1 -1
  32. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  33. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  34. package/dist/default/icons/dist/react/default/gear.js.map +1 -1
  35. package/dist/default/icons/dist/react/default/pause.js.map +1 -1
  36. package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
  37. package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
  38. package/dist/default/icons/dist/react/default/play.js.map +1 -1
  39. package/dist/default/icons/dist/react/default/quality.js +1 -1
  40. package/dist/default/icons/dist/react/default/quality.js.map +1 -1
  41. package/dist/default/icons/dist/react/default/restart.js.map +1 -1
  42. package/dist/default/icons/dist/react/default/seek.js.map +1 -1
  43. package/dist/default/icons/dist/react/default/speech.js.map +1 -1
  44. package/dist/default/icons/dist/react/default/speed.js.map +1 -1
  45. package/dist/default/icons/dist/react/default/spinner.js +1 -1
  46. package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
  47. package/dist/default/icons/dist/react/default/switches.js.map +1 -1
  48. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
  49. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
  50. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
  51. package/dist/default/icons/dist/react/minimal/airplay-enter.js.map +1 -1
  52. package/dist/default/icons/dist/react/minimal/airplay-exit.js +1 -2
  53. package/dist/default/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  54. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
  55. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
  56. package/dist/default/icons/dist/react/minimal/cast-enter.js +2 -45
  57. package/dist/default/icons/dist/react/minimal/cast-enter.js.map +1 -1
  58. package/dist/default/icons/dist/react/minimal/cast-exit.js +4 -61
  59. package/dist/default/icons/dist/react/minimal/cast-exit.js.map +1 -1
  60. package/dist/default/icons/dist/react/minimal/check.js.map +1 -1
  61. package/dist/default/icons/dist/react/minimal/chevron.js.map +1 -1
  62. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  63. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  64. package/dist/default/icons/dist/react/minimal/gear.js.map +1 -1
  65. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
  66. package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
  67. package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
  68. package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
  69. package/dist/default/icons/dist/react/minimal/quality.js +1 -1
  70. package/dist/default/icons/dist/react/minimal/quality.js.map +1 -1
  71. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
  72. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
  73. package/dist/default/icons/dist/react/minimal/speech.js +7 -40
  74. package/dist/default/icons/dist/react/minimal/speech.js.map +1 -1
  75. package/dist/default/icons/dist/react/minimal/speed.js.map +1 -1
  76. package/dist/default/icons/dist/react/minimal/spinner.js +1 -1
  77. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
  78. package/dist/default/icons/dist/react/minimal/switches.js.map +1 -1
  79. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
  80. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
  81. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
  82. package/dist/default/index.js +7 -3
  83. package/dist/default/media/audio.js +0 -1
  84. package/dist/default/media/audio.js.map +1 -1
  85. package/dist/default/media/cloudflare-video/index.js +2 -0
  86. package/dist/default/media/cloudflare-video/media.js +38 -0
  87. package/dist/default/media/cloudflare-video/media.js.map +1 -0
  88. package/dist/default/media/google-cast/google-cast.js +3 -3
  89. package/dist/default/media/google-cast/google-cast.js.map +1 -1
  90. package/dist/default/media/hls-audio/index.js +2 -0
  91. package/dist/default/media/hls-audio/media.js +21 -0
  92. package/dist/default/media/hls-audio/media.js.map +1 -0
  93. package/dist/default/media/hls-background-video/index.js +2 -0
  94. package/dist/default/media/hls-background-video/media.js +45 -0
  95. package/dist/default/media/hls-background-video/media.js.map +1 -0
  96. package/dist/default/media/hls-video/index.js +2 -0
  97. package/dist/{dev/media/simple-hls-video → default/media/hls-video}/media.js +6 -7
  98. package/dist/default/media/hls-video/media.js.map +1 -0
  99. package/dist/default/media/mux-audio/{media.js → hls-js.js} +2 -2
  100. package/dist/default/media/mux-audio/hls-js.js.map +1 -0
  101. package/dist/default/media/mux-audio/index.js +1 -1
  102. package/dist/default/media/mux-audio/spf.js +26 -0
  103. package/dist/default/media/mux-audio/spf.js.map +1 -0
  104. package/dist/default/media/mux-background-video/index.js +2 -0
  105. package/dist/default/media/mux-data/mux-data.js +7 -3
  106. package/dist/default/media/mux-data/mux-data.js.map +1 -1
  107. package/dist/default/media/mux-video/hls-js.js +27 -0
  108. package/dist/default/media/mux-video/hls-js.js.map +1 -0
  109. package/dist/default/media/mux-video/index.js +1 -1
  110. package/dist/default/media/mux-video/spf.js +27 -0
  111. package/dist/default/media/mux-video/spf.js.map +1 -0
  112. package/dist/default/media/mux-video/storyboard.js +43 -0
  113. package/dist/default/media/mux-video/storyboard.js.map +1 -0
  114. package/dist/default/media/spotify-audio/index.js +2 -0
  115. package/dist/default/media/spotify-audio/media.js +40 -0
  116. package/dist/default/media/spotify-audio/media.js.map +1 -0
  117. package/dist/default/media/tiktok-video/index.js +2 -0
  118. package/dist/default/media/tiktok-video/media.js +38 -0
  119. package/dist/default/media/tiktok-video/media.js.map +1 -0
  120. package/dist/default/media/twitch-video/index.js +2 -0
  121. package/dist/default/media/twitch-video/media.js +38 -0
  122. package/dist/default/media/twitch-video/media.js.map +1 -0
  123. package/dist/default/media/video.js +0 -1
  124. package/dist/default/media/video.js.map +1 -1
  125. package/dist/default/media/vimeo-video/media.js +4 -4
  126. package/dist/default/media/vimeo-video/media.js.map +1 -1
  127. package/dist/default/media/youtube-video/index.js +2 -0
  128. package/dist/default/media/youtube-video/media.js +37 -0
  129. package/dist/default/media/youtube-video/media.js.map +1 -0
  130. package/dist/default/player/container.js +8 -4
  131. package/dist/default/player/container.js.map +1 -1
  132. package/dist/default/player/context.js +6 -11
  133. package/dist/default/player/context.js.map +1 -1
  134. package/dist/default/player/create-player.js +44 -14
  135. package/dist/default/player/create-player.js.map +1 -1
  136. package/dist/default/player/popup-group-context.js +17 -0
  137. package/dist/default/player/popup-group-context.js.map +1 -0
  138. package/dist/default/presets/audio/index.js +8 -1
  139. package/dist/default/presets/audio/index.js.map +1 -0
  140. package/dist/default/presets/audio/minimal-skin.css +423 -295
  141. package/dist/default/presets/audio/minimal-skin.js +13 -19
  142. package/dist/default/presets/audio/minimal-skin.js.map +1 -1
  143. package/dist/default/presets/audio/minimal-skin.tailwind.js +82 -20
  144. package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
  145. package/dist/default/presets/audio/player.js +13 -0
  146. package/dist/default/presets/audio/player.js.map +1 -0
  147. package/dist/default/presets/audio/skin.css +459 -345
  148. package/dist/default/presets/audio/skin.js +14 -19
  149. package/dist/default/presets/audio/skin.js.map +1 -1
  150. package/dist/default/presets/audio/skin.tailwind.js +15 -19
  151. package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
  152. package/dist/default/presets/background/index.js +8 -1
  153. package/dist/default/presets/background/index.js.map +1 -0
  154. package/dist/default/presets/background/player.js +13 -0
  155. package/dist/default/presets/background/player.js.map +1 -0
  156. package/dist/default/presets/background/skin.css +3 -3
  157. package/dist/default/presets/background/skin.js +1 -0
  158. package/dist/default/presets/background/skin.js.map +1 -1
  159. package/dist/default/presets/live-audio/index.js +8 -1
  160. package/dist/default/presets/live-audio/index.js.map +1 -0
  161. package/dist/default/presets/live-audio/minimal-skin.css +423 -295
  162. package/dist/default/presets/live-audio/minimal-skin.js +3 -2
  163. package/dist/default/presets/live-audio/minimal-skin.js.map +1 -1
  164. package/dist/default/presets/live-audio/minimal-skin.tailwind.js +5 -4
  165. package/dist/default/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
  166. package/dist/default/presets/live-audio/player.js +13 -0
  167. package/dist/default/presets/live-audio/player.js.map +1 -0
  168. package/dist/default/presets/live-audio/skin.css +459 -345
  169. package/dist/default/presets/live-audio/skin.js +3 -2
  170. package/dist/default/presets/live-audio/skin.js.map +1 -1
  171. package/dist/default/presets/live-audio/skin.tailwind.js +5 -4
  172. package/dist/default/presets/live-audio/skin.tailwind.js.map +1 -1
  173. package/dist/default/presets/live-video/index.js +8 -1
  174. package/dist/default/presets/live-video/index.js.map +1 -0
  175. package/dist/default/presets/live-video/minimal-skin.css +656 -588
  176. package/dist/default/presets/live-video/minimal-skin.js +13 -12
  177. package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
  178. package/dist/default/presets/live-video/minimal-skin.tailwind.js +28 -26
  179. package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  180. package/dist/default/presets/live-video/player.js +13 -0
  181. package/dist/default/presets/live-video/player.js.map +1 -0
  182. package/dist/default/presets/live-video/skin.css +661 -622
  183. package/dist/default/presets/live-video/skin.js +12 -11
  184. package/dist/default/presets/live-video/skin.js.map +1 -1
  185. package/dist/default/presets/live-video/skin.tailwind.js +25 -112
  186. package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
  187. package/dist/default/presets/video/index.js +8 -1
  188. package/dist/default/presets/video/index.js.map +1 -0
  189. package/dist/default/presets/video/minimal-skin.css +656 -588
  190. package/dist/default/presets/video/minimal-skin.js +213 -211
  191. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  192. package/dist/default/presets/video/minimal-skin.tailwind.js +227 -233
  193. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  194. package/dist/default/presets/video/player.js +13 -0
  195. package/dist/default/presets/video/player.js.map +1 -0
  196. package/dist/default/presets/video/skin.css +661 -622
  197. package/dist/default/presets/video/skin.js +213 -207
  198. package/dist/default/presets/video/skin.js.map +1 -1
  199. package/dist/default/presets/video/skin.tailwind.js +225 -227
  200. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  201. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +6 -6
  202. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  203. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  204. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  205. package/dist/default/skins/dist/default/default/tailwind/components/button.js +4 -4
  206. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  207. package/dist/default/skins/dist/default/default/tailwind/components/container.js +8 -0
  208. package/dist/default/skins/dist/default/default/tailwind/components/container.js.map +1 -0
  209. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  210. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  211. package/dist/default/skins/dist/default/default/tailwind/components/error.js +1 -1
  212. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  213. package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -1
  214. package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  215. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +7 -0
  216. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +1 -0
  217. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js +9 -0
  218. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -0
  219. package/dist/default/skins/dist/default/default/tailwind/components/menu.js +8 -12
  220. package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  221. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +1 -1
  222. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  223. package/dist/default/skins/dist/default/default/tailwind/components/popup.js +1 -1
  224. package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  225. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +1 -1
  226. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  227. package/dist/default/skins/dist/default/default/tailwind/components/seek-indicator.js +12 -0
  228. package/dist/default/skins/dist/default/default/tailwind/components/seek-indicator.js.map +1 -0
  229. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +17 -9
  230. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  231. package/dist/default/skins/dist/default/default/tailwind/components/status-indicator.js +29 -0
  232. package/dist/default/skins/dist/default/default/tailwind/components/status-indicator.js.map +1 -0
  233. package/dist/default/skins/dist/default/default/tailwind/components/surface.js +1 -1
  234. package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  235. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js +3 -4
  236. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  237. package/dist/default/skins/dist/default/default/tailwind/components/time.js +2 -2
  238. package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  239. package/dist/default/skins/dist/default/default/tailwind/components/volume-indicator.js +18 -0
  240. package/dist/default/skins/dist/default/default/tailwind/components/volume-indicator.js.map +1 -0
  241. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +22 -19
  242. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  243. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +6 -6
  244. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  245. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  246. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  247. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +4 -4
  248. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  249. package/dist/default/skins/dist/default/minimal/tailwind/components/container.js +8 -0
  250. package/dist/default/skins/dist/default/minimal/tailwind/components/container.js.map +1 -0
  251. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  252. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  253. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +1 -1
  254. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  255. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  256. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  257. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +7 -0
  258. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +1 -0
  259. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js +10 -0
  260. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -0
  261. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +9 -13
  262. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  263. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
  264. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  265. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +2 -2
  266. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  267. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +1 -1
  268. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  269. package/dist/default/skins/dist/default/minimal/tailwind/components/seek-indicator.js +12 -0
  270. package/dist/default/skins/dist/default/minimal/tailwind/components/seek-indicator.js.map +1 -0
  271. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +17 -9
  272. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  273. package/dist/default/skins/dist/default/minimal/tailwind/components/status-indicator.js +29 -0
  274. package/dist/default/skins/dist/default/minimal/tailwind/components/status-indicator.js.map +1 -0
  275. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js +3 -5
  276. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  277. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +2 -2
  278. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  279. package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js +19 -0
  280. package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -0
  281. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +14 -15
  282. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  283. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js +22 -20
  284. package/dist/default/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  285. package/dist/default/ui/airplay-button/airplay-button.js +0 -1
  286. package/dist/default/ui/airplay-button/airplay-button.js.map +1 -1
  287. package/dist/default/ui/alert-dialog/alert-dialog-close.js +0 -1
  288. package/dist/default/ui/alert-dialog/alert-dialog-close.js.map +1 -1
  289. package/dist/default/ui/alert-dialog/alert-dialog-description.js +0 -1
  290. package/dist/default/ui/alert-dialog/alert-dialog-description.js.map +1 -1
  291. package/dist/default/ui/alert-dialog/alert-dialog-popup.js +0 -1
  292. package/dist/default/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
  293. package/dist/default/ui/alert-dialog/alert-dialog-root.js +0 -1
  294. package/dist/default/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  295. package/dist/default/ui/alert-dialog/alert-dialog-title.js +0 -1
  296. package/dist/default/ui/alert-dialog/alert-dialog-title.js.map +1 -1
  297. package/dist/default/ui/alert-dialog/context.js +0 -1
  298. package/dist/default/ui/alert-dialog/context.js.map +1 -1
  299. package/dist/default/ui/audio-track/use-audio-track-options.js +8 -24
  300. package/dist/default/ui/audio-track/use-audio-track-options.js.map +1 -1
  301. package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js +64 -0
  302. package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -0
  303. package/dist/default/ui/audio-track-radio-group/index.js +2 -0
  304. package/dist/default/ui/buffering-indicator/buffering-indicator.js +0 -1
  305. package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  306. package/dist/default/ui/captions-button/captions-button.js +0 -1
  307. package/dist/default/ui/captions-button/captions-button.js.map +1 -1
  308. package/dist/default/ui/captions-radio-group/captions-radio-group.js +64 -0
  309. package/dist/default/ui/captions-radio-group/captions-radio-group.js.map +1 -0
  310. package/dist/default/ui/captions-radio-group/index.js +2 -1
  311. package/dist/default/ui/captions-radio-group/use-captions-options.js +12 -30
  312. package/dist/default/ui/captions-radio-group/use-captions-options.js.map +1 -1
  313. package/dist/default/ui/cast-button/cast-button.js +0 -1
  314. package/dist/default/ui/cast-button/cast-button.js.map +1 -1
  315. package/dist/default/ui/controls/context.js +0 -1
  316. package/dist/default/ui/controls/context.js.map +1 -1
  317. package/dist/default/ui/controls/controls-group.js +0 -1
  318. package/dist/default/ui/controls/controls-group.js.map +1 -1
  319. package/dist/default/ui/controls/controls-root.js +0 -1
  320. package/dist/default/ui/controls/controls-root.js.map +1 -1
  321. package/dist/default/ui/create-context-part.js +0 -1
  322. package/dist/default/ui/create-context-part.js.map +1 -1
  323. package/dist/default/ui/create-media-button.js +0 -1
  324. package/dist/default/ui/create-media-button.js.map +1 -1
  325. package/dist/default/ui/error-dialog/context.js +0 -1
  326. package/dist/default/ui/error-dialog/context.js.map +1 -1
  327. package/dist/default/ui/error-dialog/error-dialog-close.js +0 -1
  328. package/dist/default/ui/error-dialog/error-dialog-close.js.map +1 -1
  329. package/dist/default/ui/error-dialog/error-dialog-description.js +0 -1
  330. package/dist/default/ui/error-dialog/error-dialog-description.js.map +1 -1
  331. package/dist/default/ui/error-dialog/error-dialog-root.js +0 -1
  332. package/dist/default/ui/error-dialog/error-dialog-root.js.map +1 -1
  333. package/dist/default/ui/error-dialog/error-dialog-title.js +0 -1
  334. package/dist/default/ui/error-dialog/error-dialog-title.js.map +1 -1
  335. package/dist/default/ui/fullscreen-button/fullscreen-button.js +0 -1
  336. package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  337. package/dist/default/ui/gesture/gesture.js +0 -1
  338. package/dist/default/ui/gesture/gesture.js.map +1 -1
  339. package/dist/default/ui/gesture/use-doubletap-gesture.js +0 -1
  340. package/dist/default/ui/gesture/use-doubletap-gesture.js.map +1 -1
  341. package/dist/default/ui/gesture/use-tap-gesture.js +0 -1
  342. package/dist/default/ui/gesture/use-tap-gesture.js.map +1 -1
  343. package/dist/default/ui/hooks/create-radio-options-hook.js +42 -0
  344. package/dist/default/ui/hooks/create-radio-options-hook.js.map +1 -0
  345. package/dist/default/ui/hooks/use-button.js +0 -1
  346. package/dist/default/ui/hooks/use-button.js.map +1 -1
  347. package/dist/default/ui/hooks/use-positioned-state.js +0 -1
  348. package/dist/default/ui/hooks/use-positioned-state.js.map +1 -1
  349. package/dist/default/ui/hooks/use-slider.js +49 -14
  350. package/dist/default/ui/hooks/use-slider.js.map +1 -1
  351. package/dist/default/ui/hotkey/hotkey.js +0 -1
  352. package/dist/default/ui/hotkey/hotkey.js.map +1 -1
  353. package/dist/default/ui/hotkey/use-hotkey-shortcut.js +0 -1
  354. package/dist/default/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
  355. package/dist/default/ui/hotkey/use-hotkey.js +0 -1
  356. package/dist/default/ui/hotkey/use-hotkey.js.map +1 -1
  357. package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-indicator-visibility.js +1 -2
  358. package/dist/default/ui/input-indicator/use-indicator-visibility.js.map +1 -0
  359. package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-input-action-subscription.js +1 -2
  360. package/dist/default/ui/input-indicator/use-input-action-subscription.js.map +1 -0
  361. package/dist/default/ui/{input-indicators → input-indicator}/use-input-indicator-root.js +1 -2
  362. package/dist/default/ui/input-indicator/use-input-indicator-root.js.map +1 -0
  363. package/dist/{dev/ui/input-indicators → default/ui/input-indicator}/use-rendered-indicator-state.js +1 -2
  364. package/dist/default/ui/input-indicator/use-rendered-indicator-state.js.map +1 -0
  365. package/dist/default/ui/live-button/live-button.js +0 -1
  366. package/dist/default/ui/live-button/live-button.js.map +1 -1
  367. package/dist/default/ui/menu/context.js +1 -12
  368. package/dist/default/ui/menu/context.js.map +1 -1
  369. package/dist/default/ui/menu/index.parts.js +3 -9
  370. package/dist/default/ui/menu/index.parts.js.map +1 -1
  371. package/dist/default/ui/menu/menu-checkbox-item.js +4 -2
  372. package/dist/default/ui/menu/menu-checkbox-item.js.map +1 -1
  373. package/dist/default/ui/menu/menu-content.js +78 -237
  374. package/dist/default/ui/menu/menu-content.js.map +1 -1
  375. package/dist/default/ui/menu/menu-group-label.js +0 -1
  376. package/dist/default/ui/menu/menu-group-label.js.map +1 -1
  377. package/dist/default/ui/menu/menu-group.js +0 -1
  378. package/dist/default/ui/menu/menu-group.js.map +1 -1
  379. package/dist/default/ui/menu/menu-item-indicator.js +0 -1
  380. package/dist/default/ui/menu/menu-item-indicator.js.map +1 -1
  381. package/dist/default/ui/menu/menu-item.js +11 -19
  382. package/dist/default/ui/menu/menu-item.js.map +1 -1
  383. package/dist/default/ui/menu/menu-keyboard.js +31 -0
  384. package/dist/default/ui/menu/menu-keyboard.js.map +1 -0
  385. package/dist/default/ui/menu/menu-radio-group.js +0 -1
  386. package/dist/default/ui/menu/menu-radio-group.js.map +1 -1
  387. package/dist/default/ui/menu/menu-radio-item.js +8 -7
  388. package/dist/default/ui/menu/menu-radio-item.js.map +1 -1
  389. package/dist/default/ui/menu/menu-root.js +46 -62
  390. package/dist/default/ui/menu/menu-root.js.map +1 -1
  391. package/dist/default/ui/menu/menu-separator.js +0 -1
  392. package/dist/default/ui/menu/menu-separator.js.map +1 -1
  393. package/dist/default/ui/menu/menu-trigger.js +75 -98
  394. package/dist/default/ui/menu/menu-trigger.js.map +1 -1
  395. package/dist/default/ui/menu/use-menu-group.js +0 -1
  396. package/dist/default/ui/menu/use-menu-group.js.map +1 -1
  397. package/dist/default/ui/mute-button/mute-button.js +2 -2
  398. package/dist/default/ui/mute-button/mute-button.js.map +1 -1
  399. package/dist/default/ui/pip-button/pip-button.js +0 -1
  400. package/dist/default/ui/pip-button/pip-button.js.map +1 -1
  401. package/dist/default/ui/play-button/play-button.js +0 -1
  402. package/dist/default/ui/play-button/play-button.js.map +1 -1
  403. package/dist/default/ui/playback-rate/use-playback-rate-options.js +14 -23
  404. package/dist/default/ui/playback-rate/use-playback-rate-options.js.map +1 -1
  405. package/dist/default/ui/playback-rate-button/playback-rate-button.js +0 -1
  406. package/dist/default/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  407. package/dist/default/ui/playback-rate-radio-group/index.js +2 -0
  408. package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js +64 -0
  409. package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -0
  410. package/dist/default/ui/popover/context.js +0 -1
  411. package/dist/default/ui/popover/context.js.map +1 -1
  412. package/dist/default/ui/popover/popover-arrow.js +0 -1
  413. package/dist/default/ui/popover/popover-arrow.js.map +1 -1
  414. package/dist/default/ui/popover/popover-popup.js +10 -81
  415. package/dist/default/ui/popover/popover-popup.js.map +1 -1
  416. package/dist/default/ui/popover/popover-root.js +2 -2
  417. package/dist/default/ui/popover/popover-root.js.map +1 -1
  418. package/dist/default/ui/popover/popover-trigger.js +4 -6
  419. package/dist/default/ui/popover/popover-trigger.js.map +1 -1
  420. package/dist/default/ui/popover/use-popup-position.js +33 -0
  421. package/dist/default/ui/popover/use-popup-position.js.map +1 -0
  422. package/dist/default/ui/poster/poster.js +8 -5
  423. package/dist/default/ui/poster/poster.js.map +1 -1
  424. package/dist/default/ui/quality/use-quality-options.js +9 -31
  425. package/dist/default/ui/quality/use-quality-options.js.map +1 -1
  426. package/dist/default/ui/quality-radio-group/index.js +2 -0
  427. package/dist/default/ui/quality-radio-group/quality-radio-group.js +65 -0
  428. package/dist/default/ui/quality-radio-group/quality-radio-group.js.map +1 -0
  429. package/dist/default/ui/seek-button/seek-button.js +0 -1
  430. package/dist/default/ui/seek-button/seek-button.js.map +1 -1
  431. package/dist/default/ui/seek-indicator/context.js +0 -1
  432. package/dist/default/ui/seek-indicator/context.js.map +1 -1
  433. package/dist/default/ui/seek-indicator/seek-indicator-root.js +1 -2
  434. package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +1 -1
  435. package/dist/default/ui/seek-indicator/seek-indicator-value.js +0 -1
  436. package/dist/default/ui/seek-indicator/seek-indicator-value.js.map +1 -1
  437. package/dist/default/ui/slider/context.js +7 -3
  438. package/dist/default/ui/slider/context.js.map +1 -1
  439. package/dist/default/ui/slider/slider-buffer.js +0 -1
  440. package/dist/default/ui/slider/slider-buffer.js.map +1 -1
  441. package/dist/default/ui/slider/slider-fill.js +0 -1
  442. package/dist/default/ui/slider/slider-fill.js.map +1 -1
  443. package/dist/default/ui/slider/slider-preview.js +2 -4
  444. package/dist/default/ui/slider/slider-preview.js.map +1 -1
  445. package/dist/default/ui/slider/slider-root.js +3 -2
  446. package/dist/default/ui/slider/slider-root.js.map +1 -1
  447. package/dist/default/ui/slider/slider-thumb.js +0 -1
  448. package/dist/default/ui/slider/slider-thumb.js.map +1 -1
  449. package/dist/default/ui/slider/slider-thumbnail.js +2 -3
  450. package/dist/default/ui/slider/slider-thumbnail.js.map +1 -1
  451. package/dist/default/ui/slider/slider-track.js +0 -1
  452. package/dist/default/ui/slider/slider-track.js.map +1 -1
  453. package/dist/default/ui/slider/slider-value.js +3 -3
  454. package/dist/default/ui/slider/slider-value.js.map +1 -1
  455. package/dist/default/ui/status-announcer/status-announcer.js +7 -5
  456. package/dist/default/ui/status-announcer/status-announcer.js.map +1 -1
  457. package/dist/default/ui/status-indicator/context.js +0 -1
  458. package/dist/default/ui/status-indicator/context.js.map +1 -1
  459. package/dist/default/ui/status-indicator/status-indicator-root.js +2 -3
  460. package/dist/default/ui/status-indicator/status-indicator-root.js.map +1 -1
  461. package/dist/default/ui/status-indicator/status-indicator-value.js +0 -1
  462. package/dist/default/ui/status-indicator/status-indicator-value.js.map +1 -1
  463. package/dist/default/ui/thumbnail/thumbnail.js +0 -1
  464. package/dist/default/ui/thumbnail/thumbnail.js.map +1 -1
  465. package/dist/default/ui/time/time-group.js +0 -1
  466. package/dist/default/ui/time/time-group.js.map +1 -1
  467. package/dist/default/ui/time/time-separator.js +0 -1
  468. package/dist/default/ui/time/time-separator.js.map +1 -1
  469. package/dist/default/ui/time/time-value.js +13 -6
  470. package/dist/default/ui/time/time-value.js.map +1 -1
  471. package/dist/default/ui/time-slider/index.parts.js +5 -1
  472. package/dist/default/ui/time-slider/index.parts.js.map +1 -1
  473. package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js +60 -0
  474. package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -0
  475. package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +45 -0
  476. package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +1 -0
  477. package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js +51 -0
  478. package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +1 -0
  479. package/dist/default/ui/time-slider/time-slider-root.js +6 -5
  480. package/dist/default/ui/time-slider/time-slider-root.js.map +1 -1
  481. package/dist/default/ui/tooltip/context.js +0 -1
  482. package/dist/default/ui/tooltip/context.js.map +1 -1
  483. package/dist/default/ui/tooltip/group-context.js +0 -1
  484. package/dist/default/ui/tooltip/group-context.js.map +1 -1
  485. package/dist/default/ui/tooltip/tooltip-arrow.js +0 -1
  486. package/dist/default/ui/tooltip/tooltip-arrow.js.map +1 -1
  487. package/dist/default/ui/tooltip/tooltip-label.js +0 -1
  488. package/dist/default/ui/tooltip/tooltip-label.js.map +1 -1
  489. package/dist/default/ui/tooltip/tooltip-popup.js +13 -83
  490. package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
  491. package/dist/default/ui/tooltip/tooltip-provider.js +0 -1
  492. package/dist/default/ui/tooltip/tooltip-provider.js.map +1 -1
  493. package/dist/default/ui/tooltip/tooltip-root.js +5 -2
  494. package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
  495. package/dist/default/ui/tooltip/tooltip-shortcut.js +0 -1
  496. package/dist/default/ui/tooltip/tooltip-shortcut.js.map +1 -1
  497. package/dist/default/ui/tooltip/tooltip-trigger.js +2 -5
  498. package/dist/default/ui/tooltip/tooltip-trigger.js.map +1 -1
  499. package/dist/default/ui/volume-indicator/context.js +0 -1
  500. package/dist/default/ui/volume-indicator/context.js.map +1 -1
  501. package/dist/default/ui/volume-indicator/volume-indicator-fill.js +0 -1
  502. package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
  503. package/dist/default/ui/volume-indicator/volume-indicator-root.js +1 -2
  504. package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +1 -1
  505. package/dist/default/ui/volume-indicator/volume-indicator-value.js +0 -1
  506. package/dist/default/ui/volume-indicator/volume-indicator-value.js.map +1 -1
  507. package/dist/default/ui/volume-slider/volume-slider-root.js +10 -5
  508. package/dist/default/ui/volume-slider/volume-slider-root.js.map +1 -1
  509. package/dist/default/utils/merge-props.js +0 -1
  510. package/dist/default/utils/merge-props.js.map +1 -1
  511. package/dist/default/utils/use-attach-iframe.js +0 -1
  512. package/dist/default/utils/use-attach-iframe.js.map +1 -1
  513. package/dist/default/utils/use-attach-media.js +0 -1
  514. package/dist/default/utils/use-attach-media.js.map +1 -1
  515. package/dist/default/utils/use-composed-refs.js +0 -1
  516. package/dist/default/utils/use-composed-refs.js.map +1 -1
  517. package/dist/default/utils/use-destroy.js +0 -1
  518. package/dist/default/utils/use-destroy.js.map +1 -1
  519. package/dist/default/utils/use-force-render.js +0 -1
  520. package/dist/default/utils/use-force-render.js.map +1 -1
  521. package/dist/default/utils/use-latest-ref.js +0 -1
  522. package/dist/default/utils/use-latest-ref.js.map +1 -1
  523. package/dist/default/utils/use-media-component.js +0 -1
  524. package/dist/default/utils/use-media-component.js.map +1 -1
  525. package/dist/default/utils/use-media-instance.js +0 -1
  526. package/dist/default/utils/use-media-instance.js.map +1 -1
  527. package/dist/default/utils/use-render.js +0 -1
  528. package/dist/default/utils/use-render.js.map +1 -1
  529. package/dist/default/utils/use-safe-id.js +0 -1
  530. package/dist/default/utils/use-safe-id.js.map +1 -1
  531. package/dist/dev/__generated__/skins/default-video/styles/base.css +25 -0
  532. package/dist/dev/__generated__/skins/default-video/styles/buttons.css +152 -0
  533. package/dist/dev/__generated__/skins/default-video/styles/container.css +45 -0
  534. package/dist/dev/__generated__/skins/default-video/styles/controls.css +45 -0
  535. package/dist/dev/__generated__/skins/default-video/styles/overlays.css +11 -0
  536. package/dist/dev/__generated__/skins/default-video/styles/popups.css +45 -0
  537. package/dist/dev/__generated__/skins/default-video/styles/poster.css +47 -0
  538. package/dist/dev/__generated__/skins/default-video/styles/sliders.css +112 -0
  539. package/dist/dev/__generated__/skins/default-video/styles/styles.css +514 -0
  540. package/dist/dev/__generated__/skins/default-video/styles/theme.css +22 -0
  541. package/dist/dev/_virtual/_rolldown/runtime.js +15 -1
  542. package/dist/dev/i18n/context.d.ts.map +1 -1
  543. package/dist/dev/i18n/context.js +3 -4
  544. package/dist/dev/i18n/context.js.map +1 -1
  545. package/dist/dev/i18n/create-i18n.d.ts.map +1 -1
  546. package/dist/dev/i18n/create-i18n.js +0 -1
  547. package/dist/dev/i18n/create-i18n.js.map +1 -1
  548. package/dist/dev/i18n/locales/id/register.d.ts +1 -0
  549. package/dist/dev/i18n/locales/id/register.js +8 -0
  550. package/dist/dev/i18n/locales/id/register.js.map +1 -0
  551. package/dist/dev/i18n/locales/id.d.ts +2 -0
  552. package/dist/dev/i18n/locales/id.js +2 -0
  553. package/dist/dev/i18n/locales/lt/register.d.ts +1 -0
  554. package/dist/dev/i18n/locales/lt/register.js +8 -0
  555. package/dist/dev/i18n/locales/lt/register.js.map +1 -0
  556. package/dist/dev/i18n/locales/lt.d.ts +2 -0
  557. package/dist/dev/i18n/locales/lt.js +2 -0
  558. package/dist/dev/icons/dist/react/default/airplay-enter.js.map +1 -1
  559. package/dist/dev/icons/dist/react/default/airplay-exit.js +1 -2
  560. package/dist/dev/icons/dist/react/default/airplay-exit.js.map +1 -1
  561. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
  562. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
  563. package/dist/dev/icons/dist/react/default/cast-enter.js +2 -45
  564. package/dist/dev/icons/dist/react/default/cast-enter.js.map +1 -1
  565. package/dist/dev/icons/dist/react/default/cast-exit.js +4 -61
  566. package/dist/dev/icons/dist/react/default/cast-exit.js.map +1 -1
  567. package/dist/dev/icons/dist/react/default/check.js.map +1 -1
  568. package/dist/dev/icons/dist/react/default/chevron.js.map +1 -1
  569. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  570. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  571. package/dist/dev/icons/dist/react/default/gear.js.map +1 -1
  572. package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
  573. package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
  574. package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
  575. package/dist/dev/icons/dist/react/default/play.js.map +1 -1
  576. package/dist/dev/icons/dist/react/default/quality.js +1 -1
  577. package/dist/dev/icons/dist/react/default/quality.js.map +1 -1
  578. package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
  579. package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
  580. package/dist/dev/icons/dist/react/default/speech.js.map +1 -1
  581. package/dist/dev/icons/dist/react/default/speed.js.map +1 -1
  582. package/dist/dev/icons/dist/react/default/spinner.js +1 -1
  583. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
  584. package/dist/dev/icons/dist/react/default/switches.js.map +1 -1
  585. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
  586. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
  587. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
  588. package/dist/dev/icons/dist/react/minimal/airplay-enter.js.map +1 -1
  589. package/dist/dev/icons/dist/react/minimal/airplay-exit.js +1 -2
  590. package/dist/dev/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  591. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
  592. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
  593. package/dist/dev/icons/dist/react/minimal/cast-enter.js +2 -45
  594. package/dist/dev/icons/dist/react/minimal/cast-enter.js.map +1 -1
  595. package/dist/dev/icons/dist/react/minimal/cast-exit.js +4 -61
  596. package/dist/dev/icons/dist/react/minimal/cast-exit.js.map +1 -1
  597. package/dist/dev/icons/dist/react/minimal/check.js.map +1 -1
  598. package/dist/dev/icons/dist/react/minimal/chevron.js.map +1 -1
  599. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  600. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  601. package/dist/dev/icons/dist/react/minimal/gear.js.map +1 -1
  602. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
  603. package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
  604. package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
  605. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
  606. package/dist/dev/icons/dist/react/minimal/quality.js +1 -1
  607. package/dist/dev/icons/dist/react/minimal/quality.js.map +1 -1
  608. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
  609. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
  610. package/dist/dev/icons/dist/react/minimal/speech.js +7 -40
  611. package/dist/dev/icons/dist/react/minimal/speech.js.map +1 -1
  612. package/dist/dev/icons/dist/react/minimal/speed.js.map +1 -1
  613. package/dist/dev/icons/dist/react/minimal/spinner.js +1 -1
  614. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
  615. package/dist/dev/icons/dist/react/minimal/switches.js.map +1 -1
  616. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
  617. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
  618. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
  619. package/dist/dev/index.d.ts +18 -2
  620. package/dist/dev/index.d.ts.map +1 -0
  621. package/dist/dev/index.js +7 -3
  622. package/dist/dev/media/audio.d.ts.map +1 -1
  623. package/dist/dev/media/audio.js +0 -1
  624. package/dist/dev/media/audio.js.map +1 -1
  625. package/dist/dev/media/cloudflare-video/index.d.ts +2 -0
  626. package/dist/dev/media/cloudflare-video/index.js +2 -0
  627. package/dist/dev/media/cloudflare-video/media.d.ts +13 -0
  628. package/dist/dev/media/cloudflare-video/media.d.ts.map +1 -0
  629. package/dist/dev/media/cloudflare-video/media.js +38 -0
  630. package/dist/dev/media/cloudflare-video/media.js.map +1 -0
  631. package/dist/dev/media/google-cast/google-cast.d.ts +3 -3
  632. package/dist/dev/media/google-cast/google-cast.js +3 -3
  633. package/dist/dev/media/google-cast/google-cast.js.map +1 -1
  634. package/dist/dev/media/hls-audio/index.d.ts +2 -0
  635. package/dist/dev/media/hls-audio/index.js +2 -0
  636. package/dist/dev/media/hls-audio/media.d.ts +13 -0
  637. package/dist/dev/media/hls-audio/media.d.ts.map +1 -0
  638. package/dist/dev/media/hls-audio/media.js +21 -0
  639. package/dist/dev/media/hls-audio/media.js.map +1 -0
  640. package/dist/dev/media/hls-background-video/index.d.ts +2 -0
  641. package/dist/dev/media/hls-background-video/index.js +2 -0
  642. package/dist/dev/media/hls-background-video/media.d.ts +28 -0
  643. package/dist/dev/media/hls-background-video/media.d.ts.map +1 -0
  644. package/dist/dev/media/hls-background-video/media.js +45 -0
  645. package/dist/dev/media/hls-background-video/media.js.map +1 -0
  646. package/dist/dev/media/hls-video/index.d.ts +2 -0
  647. package/dist/dev/media/hls-video/index.js +2 -0
  648. package/dist/dev/media/hls-video/media.d.ts +13 -0
  649. package/dist/dev/media/hls-video/media.d.ts.map +1 -0
  650. package/dist/{default/media/simple-hls-video → dev/media/hls-video}/media.js +6 -7
  651. package/dist/dev/media/hls-video/media.js.map +1 -0
  652. package/dist/dev/media/mux-audio/{media.d.ts → hls-js.d.ts} +3 -3
  653. package/dist/dev/media/mux-audio/hls-js.d.ts.map +1 -0
  654. package/dist/dev/media/mux-audio/{media.js → hls-js.js} +2 -2
  655. package/dist/dev/media/mux-audio/hls-js.js.map +1 -0
  656. package/dist/dev/media/mux-audio/index.d.ts +1 -1
  657. package/dist/dev/media/mux-audio/index.js +1 -1
  658. package/dist/dev/media/mux-audio/spf.d.ts +14 -0
  659. package/dist/dev/media/mux-audio/spf.d.ts.map +1 -0
  660. package/dist/dev/media/mux-audio/spf.js +26 -0
  661. package/dist/dev/media/mux-audio/spf.js.map +1 -0
  662. package/dist/dev/media/mux-background-video/index.d.ts +3 -0
  663. package/dist/dev/media/mux-background-video/index.js +2 -0
  664. package/dist/dev/media/mux-data/mux-data.d.ts +7 -3
  665. package/dist/dev/media/mux-data/mux-data.d.ts.map +1 -1
  666. package/dist/dev/media/mux-data/mux-data.js +7 -3
  667. package/dist/dev/media/mux-data/mux-data.js.map +1 -1
  668. package/dist/dev/media/mux-video/{media.d.ts → hls-js.d.ts} +3 -3
  669. package/dist/dev/media/mux-video/hls-js.d.ts.map +1 -0
  670. package/dist/dev/media/mux-video/hls-js.js +27 -0
  671. package/dist/dev/media/mux-video/hls-js.js.map +1 -0
  672. package/dist/dev/media/mux-video/index.d.ts +1 -1
  673. package/dist/dev/media/mux-video/index.js +1 -1
  674. package/dist/dev/media/mux-video/spf.d.ts +14 -0
  675. package/dist/dev/media/mux-video/spf.d.ts.map +1 -0
  676. package/dist/dev/media/mux-video/spf.js +27 -0
  677. package/dist/dev/media/mux-video/spf.js.map +1 -0
  678. package/dist/dev/media/mux-video/storyboard.js +43 -0
  679. package/dist/dev/media/mux-video/storyboard.js.map +1 -0
  680. package/dist/dev/media/spotify-audio/index.d.ts +2 -0
  681. package/dist/dev/media/spotify-audio/index.js +2 -0
  682. package/dist/dev/media/spotify-audio/media.d.ts +13 -0
  683. package/dist/dev/media/spotify-audio/media.d.ts.map +1 -0
  684. package/dist/dev/media/spotify-audio/media.js +40 -0
  685. package/dist/dev/media/spotify-audio/media.js.map +1 -0
  686. package/dist/dev/media/tiktok-video/index.d.ts +2 -0
  687. package/dist/dev/media/tiktok-video/index.js +2 -0
  688. package/dist/dev/media/tiktok-video/media.d.ts +13 -0
  689. package/dist/dev/media/tiktok-video/media.d.ts.map +1 -0
  690. package/dist/dev/media/tiktok-video/media.js +38 -0
  691. package/dist/dev/media/tiktok-video/media.js.map +1 -0
  692. package/dist/dev/media/twitch-video/index.d.ts +2 -0
  693. package/dist/dev/media/twitch-video/index.js +2 -0
  694. package/dist/dev/media/twitch-video/media.d.ts +13 -0
  695. package/dist/dev/media/twitch-video/media.d.ts.map +1 -0
  696. package/dist/dev/media/twitch-video/media.js +38 -0
  697. package/dist/dev/media/twitch-video/media.js.map +1 -0
  698. package/dist/dev/media/video.d.ts.map +1 -1
  699. package/dist/dev/media/video.js +0 -1
  700. package/dist/dev/media/video.js.map +1 -1
  701. package/dist/dev/media/vimeo-video/media.d.ts.map +1 -1
  702. package/dist/dev/media/vimeo-video/media.js +4 -4
  703. package/dist/dev/media/vimeo-video/media.js.map +1 -1
  704. package/dist/dev/media/youtube-video/index.d.ts +2 -0
  705. package/dist/dev/media/youtube-video/index.js +2 -0
  706. package/dist/dev/media/youtube-video/media.d.ts +13 -0
  707. package/dist/dev/media/youtube-video/media.d.ts.map +1 -0
  708. package/dist/dev/media/youtube-video/media.js +37 -0
  709. package/dist/dev/media/youtube-video/media.js.map +1 -0
  710. package/dist/dev/player/container.d.ts.map +1 -1
  711. package/dist/dev/player/container.js +8 -4
  712. package/dist/dev/player/container.js.map +1 -1
  713. package/dist/dev/player/context.d.ts +7 -8
  714. package/dist/dev/player/context.d.ts.map +1 -1
  715. package/dist/dev/player/context.js +6 -11
  716. package/dist/dev/player/context.js.map +1 -1
  717. package/dist/dev/player/create-player.d.ts +6 -8
  718. package/dist/dev/player/create-player.d.ts.map +1 -1
  719. package/dist/dev/player/create-player.js +45 -15
  720. package/dist/dev/player/create-player.js.map +1 -1
  721. package/dist/dev/player/popup-group-context.js +17 -0
  722. package/dist/dev/player/popup-group-context.js.map +1 -0
  723. package/dist/dev/presets/audio/index.d.ts +2 -1
  724. package/dist/dev/presets/audio/index.js +8 -1
  725. package/dist/dev/presets/audio/index.js.map +1 -0
  726. package/dist/dev/presets/audio/minimal-skin.css +423 -295
  727. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
  728. package/dist/dev/presets/audio/minimal-skin.js +13 -19
  729. package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
  730. package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
  731. package/dist/dev/presets/audio/minimal-skin.tailwind.js +82 -20
  732. package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
  733. package/dist/dev/presets/audio/player.d.ts +13 -0
  734. package/dist/dev/presets/audio/player.d.ts.map +1 -0
  735. package/dist/dev/presets/audio/player.js +13 -0
  736. package/dist/dev/presets/audio/player.js.map +1 -0
  737. package/dist/dev/presets/audio/skin.css +459 -345
  738. package/dist/dev/presets/audio/skin.d.ts.map +1 -1
  739. package/dist/dev/presets/audio/skin.js +14 -19
  740. package/dist/dev/presets/audio/skin.js.map +1 -1
  741. package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
  742. package/dist/dev/presets/audio/skin.tailwind.js +15 -19
  743. package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
  744. package/dist/dev/presets/background/index.d.ts +2 -1
  745. package/dist/dev/presets/background/index.js +8 -1
  746. package/dist/dev/presets/background/index.js.map +1 -0
  747. package/dist/dev/presets/background/player.d.ts +10 -0
  748. package/dist/dev/presets/background/player.d.ts.map +1 -0
  749. package/dist/dev/presets/background/player.js +13 -0
  750. package/dist/dev/presets/background/player.js.map +1 -0
  751. package/dist/dev/presets/background/skin.css +3 -3
  752. package/dist/dev/presets/background/skin.d.ts.map +1 -1
  753. package/dist/dev/presets/background/skin.js +1 -0
  754. package/dist/dev/presets/background/skin.js.map +1 -1
  755. package/dist/dev/presets/live-audio/index.d.ts +2 -1
  756. package/dist/dev/presets/live-audio/index.js +8 -1
  757. package/dist/dev/presets/live-audio/index.js.map +1 -0
  758. package/dist/dev/presets/live-audio/minimal-skin.css +423 -295
  759. package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +1 -1
  760. package/dist/dev/presets/live-audio/minimal-skin.js +3 -2
  761. package/dist/dev/presets/live-audio/minimal-skin.js.map +1 -1
  762. package/dist/dev/presets/live-audio/minimal-skin.tailwind.d.ts.map +1 -1
  763. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js +5 -4
  764. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
  765. package/dist/dev/presets/live-audio/player.d.ts +13 -0
  766. package/dist/dev/presets/live-audio/player.d.ts.map +1 -0
  767. package/dist/dev/presets/live-audio/player.js +13 -0
  768. package/dist/dev/presets/live-audio/player.js.map +1 -0
  769. package/dist/dev/presets/live-audio/skin.css +459 -345
  770. package/dist/dev/presets/live-audio/skin.d.ts.map +1 -1
  771. package/dist/dev/presets/live-audio/skin.js +3 -2
  772. package/dist/dev/presets/live-audio/skin.js.map +1 -1
  773. package/dist/dev/presets/live-audio/skin.tailwind.d.ts.map +1 -1
  774. package/dist/dev/presets/live-audio/skin.tailwind.js +5 -4
  775. package/dist/dev/presets/live-audio/skin.tailwind.js.map +1 -1
  776. package/dist/dev/presets/live-video/index.d.ts +2 -1
  777. package/dist/dev/presets/live-video/index.js +8 -1
  778. package/dist/dev/presets/live-video/index.js.map +1 -0
  779. package/dist/dev/presets/live-video/minimal-skin.css +656 -588
  780. package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
  781. package/dist/dev/presets/live-video/minimal-skin.js +13 -12
  782. package/dist/dev/presets/live-video/minimal-skin.js.map +1 -1
  783. package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -1
  784. package/dist/dev/presets/live-video/minimal-skin.tailwind.js +28 -26
  785. package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  786. package/dist/dev/presets/live-video/player.d.ts +13 -0
  787. package/dist/dev/presets/live-video/player.d.ts.map +1 -0
  788. package/dist/dev/presets/live-video/player.js +13 -0
  789. package/dist/dev/presets/live-video/player.js.map +1 -0
  790. package/dist/dev/presets/live-video/skin.css +661 -622
  791. package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
  792. package/dist/dev/presets/live-video/skin.js +12 -11
  793. package/dist/dev/presets/live-video/skin.js.map +1 -1
  794. package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -1
  795. package/dist/dev/presets/live-video/skin.tailwind.js +25 -112
  796. package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
  797. package/dist/dev/presets/video/index.d.ts +2 -1
  798. package/dist/dev/presets/video/index.js +8 -1
  799. package/dist/dev/presets/video/index.js.map +1 -0
  800. package/dist/dev/presets/video/minimal-skin.css +656 -588
  801. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  802. package/dist/dev/presets/video/minimal-skin.js +213 -211
  803. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  804. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  805. package/dist/dev/presets/video/minimal-skin.tailwind.js +227 -233
  806. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  807. package/dist/dev/presets/video/player.d.ts +13 -0
  808. package/dist/dev/presets/video/player.d.ts.map +1 -0
  809. package/dist/dev/presets/video/player.js +13 -0
  810. package/dist/dev/presets/video/player.js.map +1 -0
  811. package/dist/dev/presets/video/skin.css +661 -622
  812. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  813. package/dist/dev/presets/video/skin.js +213 -207
  814. package/dist/dev/presets/video/skin.js.map +1 -1
  815. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  816. package/dist/dev/presets/video/skin.tailwind.js +225 -227
  817. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  818. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +6 -6
  819. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  820. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  821. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  822. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +4 -4
  823. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  824. package/dist/dev/skins/dist/default/default/tailwind/components/container.js +8 -0
  825. package/dist/dev/skins/dist/default/default/tailwind/components/container.js.map +1 -0
  826. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  827. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  828. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +1 -1
  829. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +1 -1
  830. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -1
  831. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  832. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +7 -0
  833. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +1 -0
  834. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js +9 -0
  835. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -0
  836. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js +8 -12
  837. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  838. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +1 -1
  839. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +1 -1
  840. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +1 -1
  841. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  842. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +1 -1
  843. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  844. package/dist/dev/skins/dist/default/default/tailwind/components/seek-indicator.js +12 -0
  845. package/dist/dev/skins/dist/default/default/tailwind/components/seek-indicator.js.map +1 -0
  846. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +17 -9
  847. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  848. package/dist/dev/skins/dist/default/default/tailwind/components/status-indicator.js +29 -0
  849. package/dist/dev/skins/dist/default/default/tailwind/components/status-indicator.js.map +1 -0
  850. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +1 -1
  851. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  852. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js +3 -4
  853. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  854. package/dist/dev/skins/dist/default/default/tailwind/components/time.js +2 -2
  855. package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  856. package/dist/dev/skins/dist/default/default/tailwind/components/volume-indicator.js +18 -0
  857. package/dist/dev/skins/dist/default/default/tailwind/components/volume-indicator.js.map +1 -0
  858. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +22 -19
  859. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  860. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +6 -6
  861. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  862. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  863. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  864. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +4 -4
  865. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  866. package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js +8 -0
  867. package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js.map +1 -0
  868. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  869. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  870. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +1 -1
  871. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +1 -1
  872. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  873. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  874. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +7 -0
  875. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +1 -0
  876. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js +10 -0
  877. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -0
  878. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js +9 -13
  879. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  880. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +1 -1
  881. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +1 -1
  882. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +2 -2
  883. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  884. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +1 -1
  885. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  886. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek-indicator.js +12 -0
  887. package/dist/dev/skins/dist/default/minimal/tailwind/components/seek-indicator.js.map +1 -0
  888. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +17 -9
  889. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  890. package/dist/dev/skins/dist/default/minimal/tailwind/components/status-indicator.js +29 -0
  891. package/dist/dev/skins/dist/default/minimal/tailwind/components/status-indicator.js.map +1 -0
  892. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js +3 -5
  893. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  894. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +2 -2
  895. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  896. package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js +19 -0
  897. package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -0
  898. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +14 -15
  899. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  900. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js +22 -20
  901. package/dist/dev/skins/dist/default/shared/tailwind/icon-state.js.map +1 -1
  902. package/dist/dev/ui/airplay-button/airplay-button.d.ts.map +1 -1
  903. package/dist/dev/ui/airplay-button/airplay-button.js +0 -1
  904. package/dist/dev/ui/airplay-button/airplay-button.js.map +1 -1
  905. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts.map +1 -1
  906. package/dist/dev/ui/alert-dialog/alert-dialog-close.js +0 -1
  907. package/dist/dev/ui/alert-dialog/alert-dialog-close.js.map +1 -1
  908. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts.map +1 -1
  909. package/dist/dev/ui/alert-dialog/alert-dialog-description.js +0 -1
  910. package/dist/dev/ui/alert-dialog/alert-dialog-description.js.map +1 -1
  911. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts.map +1 -1
  912. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js +0 -1
  913. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js.map +1 -1
  914. package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts.map +1 -1
  915. package/dist/dev/ui/alert-dialog/alert-dialog-root.js +0 -1
  916. package/dist/dev/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  917. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts.map +1 -1
  918. package/dist/dev/ui/alert-dialog/alert-dialog-title.js +0 -1
  919. package/dist/dev/ui/alert-dialog/alert-dialog-title.js.map +1 -1
  920. package/dist/dev/ui/alert-dialog/context.d.ts.map +1 -1
  921. package/dist/dev/ui/alert-dialog/context.js +0 -1
  922. package/dist/dev/ui/alert-dialog/context.js.map +1 -1
  923. package/dist/dev/ui/audio-track/use-audio-track-options.d.ts +6 -6
  924. package/dist/dev/ui/audio-track/use-audio-track-options.d.ts.map +1 -1
  925. package/dist/dev/ui/audio-track/use-audio-track-options.js +9 -28
  926. package/dist/dev/ui/audio-track/use-audio-track-options.js.map +1 -1
  927. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts +43 -0
  928. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts.map +1 -0
  929. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js +64 -0
  930. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -0
  931. package/dist/dev/ui/audio-track-radio-group/index.d.ts +2 -0
  932. package/dist/dev/ui/audio-track-radio-group/index.js +2 -0
  933. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -1
  934. package/dist/dev/ui/buffering-indicator/buffering-indicator.js +0 -1
  935. package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  936. package/dist/dev/ui/captions-button/captions-button.d.ts.map +1 -1
  937. package/dist/dev/ui/captions-button/captions-button.js +0 -1
  938. package/dist/dev/ui/captions-button/captions-button.js.map +1 -1
  939. package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts +43 -0
  940. package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts.map +1 -0
  941. package/dist/dev/ui/captions-radio-group/captions-radio-group.js +64 -0
  942. package/dist/dev/ui/captions-radio-group/captions-radio-group.js.map +1 -0
  943. package/dist/dev/ui/captions-radio-group/index.d.ts +2 -1
  944. package/dist/dev/ui/captions-radio-group/index.js +2 -1
  945. package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts +6 -6
  946. package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts.map +1 -1
  947. package/dist/dev/ui/captions-radio-group/use-captions-options.js +13 -34
  948. package/dist/dev/ui/captions-radio-group/use-captions-options.js.map +1 -1
  949. package/dist/dev/ui/cast-button/cast-button.d.ts.map +1 -1
  950. package/dist/dev/ui/cast-button/cast-button.js +0 -1
  951. package/dist/dev/ui/cast-button/cast-button.js.map +1 -1
  952. package/dist/dev/ui/controls/context.js +0 -1
  953. package/dist/dev/ui/controls/context.js.map +1 -1
  954. package/dist/dev/ui/controls/controls-group.d.ts.map +1 -1
  955. package/dist/dev/ui/controls/controls-group.js +0 -1
  956. package/dist/dev/ui/controls/controls-group.js.map +1 -1
  957. package/dist/dev/ui/controls/controls-root.d.ts.map +1 -1
  958. package/dist/dev/ui/controls/controls-root.js +0 -1
  959. package/dist/dev/ui/controls/controls-root.js.map +1 -1
  960. package/dist/dev/ui/create-context-part.js +0 -1
  961. package/dist/dev/ui/create-context-part.js.map +1 -1
  962. package/dist/dev/ui/create-media-button.js +0 -1
  963. package/dist/dev/ui/create-media-button.js.map +1 -1
  964. package/dist/dev/ui/error-dialog/context.d.ts.map +1 -1
  965. package/dist/dev/ui/error-dialog/context.js +0 -1
  966. package/dist/dev/ui/error-dialog/context.js.map +1 -1
  967. package/dist/dev/ui/error-dialog/error-dialog-close.d.ts.map +1 -1
  968. package/dist/dev/ui/error-dialog/error-dialog-close.js +0 -1
  969. package/dist/dev/ui/error-dialog/error-dialog-close.js.map +1 -1
  970. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +1 -1
  971. package/dist/dev/ui/error-dialog/error-dialog-description.js +0 -1
  972. package/dist/dev/ui/error-dialog/error-dialog-description.js.map +1 -1
  973. package/dist/dev/ui/error-dialog/error-dialog-root.d.ts.map +1 -1
  974. package/dist/dev/ui/error-dialog/error-dialog-root.js +0 -1
  975. package/dist/dev/ui/error-dialog/error-dialog-root.js.map +1 -1
  976. package/dist/dev/ui/error-dialog/error-dialog-title.d.ts.map +1 -1
  977. package/dist/dev/ui/error-dialog/error-dialog-title.js +0 -1
  978. package/dist/dev/ui/error-dialog/error-dialog-title.js.map +1 -1
  979. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +1 -1
  980. package/dist/dev/ui/fullscreen-button/fullscreen-button.js +0 -1
  981. package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  982. package/dist/dev/ui/gesture/gesture.d.ts.map +1 -1
  983. package/dist/dev/ui/gesture/gesture.js +0 -1
  984. package/dist/dev/ui/gesture/gesture.js.map +1 -1
  985. package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts.map +1 -1
  986. package/dist/dev/ui/gesture/use-doubletap-gesture.js +0 -1
  987. package/dist/dev/ui/gesture/use-doubletap-gesture.js.map +1 -1
  988. package/dist/dev/ui/gesture/use-tap-gesture.d.ts.map +1 -1
  989. package/dist/dev/ui/gesture/use-tap-gesture.js +0 -1
  990. package/dist/dev/ui/gesture/use-tap-gesture.js.map +1 -1
  991. package/dist/dev/ui/hooks/create-radio-options-hook.d.ts +11 -0
  992. package/dist/dev/ui/hooks/create-radio-options-hook.d.ts.map +1 -0
  993. package/dist/dev/ui/hooks/create-radio-options-hook.js +45 -0
  994. package/dist/dev/ui/hooks/create-radio-options-hook.js.map +1 -0
  995. package/dist/dev/ui/hooks/use-button.d.ts.map +1 -1
  996. package/dist/dev/ui/hooks/use-button.js +0 -1
  997. package/dist/dev/ui/hooks/use-button.js.map +1 -1
  998. package/dist/dev/ui/hooks/use-positioned-state.js +0 -1
  999. package/dist/dev/ui/hooks/use-positioned-state.js.map +1 -1
  1000. package/dist/dev/ui/hooks/use-slider.d.ts +2 -1
  1001. package/dist/dev/ui/hooks/use-slider.d.ts.map +1 -1
  1002. package/dist/dev/ui/hooks/use-slider.js +49 -14
  1003. package/dist/dev/ui/hooks/use-slider.js.map +1 -1
  1004. package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -1
  1005. package/dist/dev/ui/hotkey/hotkey.js +0 -1
  1006. package/dist/dev/ui/hotkey/hotkey.js.map +1 -1
  1007. package/dist/dev/ui/hotkey/use-hotkey-shortcut.d.ts.map +1 -1
  1008. package/dist/dev/ui/hotkey/use-hotkey-shortcut.js +0 -1
  1009. package/dist/dev/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
  1010. package/dist/dev/ui/hotkey/use-hotkey.d.ts.map +1 -1
  1011. package/dist/dev/ui/hotkey/use-hotkey.js +0 -1
  1012. package/dist/dev/ui/hotkey/use-hotkey.js.map +1 -1
  1013. package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-indicator-visibility.js +1 -2
  1014. package/dist/dev/ui/input-indicator/use-indicator-visibility.js.map +1 -0
  1015. package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-input-action-subscription.js +1 -2
  1016. package/dist/dev/ui/input-indicator/use-input-action-subscription.js.map +1 -0
  1017. package/dist/dev/ui/{input-indicators → input-indicator}/use-input-indicator-root.js +1 -2
  1018. package/dist/dev/ui/input-indicator/use-input-indicator-root.js.map +1 -0
  1019. package/dist/{default/ui/input-indicators → dev/ui/input-indicator}/use-rendered-indicator-state.js +1 -2
  1020. package/dist/dev/ui/input-indicator/use-rendered-indicator-state.js.map +1 -0
  1021. package/dist/dev/ui/live-button/live-button.d.ts.map +1 -1
  1022. package/dist/dev/ui/live-button/live-button.js +0 -1
  1023. package/dist/dev/ui/live-button/live-button.js.map +1 -1
  1024. package/dist/dev/ui/menu/context.d.ts +1 -10
  1025. package/dist/dev/ui/menu/context.d.ts.map +1 -1
  1026. package/dist/dev/ui/menu/context.js +1 -12
  1027. package/dist/dev/ui/menu/context.js.map +1 -1
  1028. package/dist/dev/ui/menu/index.parts.d.ts +3 -6
  1029. package/dist/dev/ui/menu/index.parts.js +3 -9
  1030. package/dist/dev/ui/menu/index.parts.js.map +1 -1
  1031. package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +1 -1
  1032. package/dist/dev/ui/menu/menu-checkbox-item.js +4 -2
  1033. package/dist/dev/ui/menu/menu-checkbox-item.js.map +1 -1
  1034. package/dist/dev/ui/menu/menu-content.d.ts.map +1 -1
  1035. package/dist/dev/ui/menu/menu-content.js +78 -237
  1036. package/dist/dev/ui/menu/menu-content.js.map +1 -1
  1037. package/dist/dev/ui/menu/menu-group-label.d.ts.map +1 -1
  1038. package/dist/dev/ui/menu/menu-group-label.js +0 -1
  1039. package/dist/dev/ui/menu/menu-group-label.js.map +1 -1
  1040. package/dist/dev/ui/menu/menu-group.d.ts.map +1 -1
  1041. package/dist/dev/ui/menu/menu-group.js +0 -1
  1042. package/dist/dev/ui/menu/menu-group.js.map +1 -1
  1043. package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -1
  1044. package/dist/dev/ui/menu/menu-item-indicator.js +0 -1
  1045. package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -1
  1046. package/dist/dev/ui/menu/menu-item.d.ts +0 -3
  1047. package/dist/dev/ui/menu/menu-item.d.ts.map +1 -1
  1048. package/dist/dev/ui/menu/menu-item.js +11 -19
  1049. package/dist/dev/ui/menu/menu-item.js.map +1 -1
  1050. package/dist/dev/ui/menu/menu-keyboard.js +31 -0
  1051. package/dist/dev/ui/menu/menu-keyboard.js.map +1 -0
  1052. package/dist/dev/ui/menu/menu-radio-group.d.ts.map +1 -1
  1053. package/dist/dev/ui/menu/menu-radio-group.js +0 -1
  1054. package/dist/dev/ui/menu/menu-radio-group.js.map +1 -1
  1055. package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -1
  1056. package/dist/dev/ui/menu/menu-radio-item.js +8 -7
  1057. package/dist/dev/ui/menu/menu-radio-item.js.map +1 -1
  1058. package/dist/dev/ui/menu/menu-root.d.ts.map +1 -1
  1059. package/dist/dev/ui/menu/menu-root.js +46 -62
  1060. package/dist/dev/ui/menu/menu-root.js.map +1 -1
  1061. package/dist/dev/ui/menu/menu-separator.d.ts.map +1 -1
  1062. package/dist/dev/ui/menu/menu-separator.js +0 -1
  1063. package/dist/dev/ui/menu/menu-separator.js.map +1 -1
  1064. package/dist/dev/ui/menu/menu-trigger.d.ts +5 -5
  1065. package/dist/dev/ui/menu/menu-trigger.d.ts.map +1 -1
  1066. package/dist/dev/ui/menu/menu-trigger.js +75 -98
  1067. package/dist/dev/ui/menu/menu-trigger.js.map +1 -1
  1068. package/dist/dev/ui/menu/use-menu-group.js +0 -1
  1069. package/dist/dev/ui/menu/use-menu-group.js.map +1 -1
  1070. package/dist/dev/ui/mute-button/mute-button.d.ts.map +1 -1
  1071. package/dist/dev/ui/mute-button/mute-button.js +2 -2
  1072. package/dist/dev/ui/mute-button/mute-button.js.map +1 -1
  1073. package/dist/dev/ui/pip-button/pip-button.d.ts.map +1 -1
  1074. package/dist/dev/ui/pip-button/pip-button.js +0 -1
  1075. package/dist/dev/ui/pip-button/pip-button.js.map +1 -1
  1076. package/dist/dev/ui/play-button/play-button.d.ts.map +1 -1
  1077. package/dist/dev/ui/play-button/play-button.js +0 -1
  1078. package/dist/dev/ui/play-button/play-button.js.map +1 -1
  1079. package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts +6 -7
  1080. package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts.map +1 -1
  1081. package/dist/dev/ui/playback-rate/use-playback-rate-options.js +15 -27
  1082. package/dist/dev/ui/playback-rate/use-playback-rate-options.js.map +1 -1
  1083. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts.map +1 -1
  1084. package/dist/dev/ui/playback-rate-button/playback-rate-button.js +0 -1
  1085. package/dist/dev/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  1086. package/dist/dev/ui/playback-rate-radio-group/index.d.ts +2 -0
  1087. package/dist/dev/ui/playback-rate-radio-group/index.js +2 -0
  1088. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts +43 -0
  1089. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts.map +1 -0
  1090. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js +64 -0
  1091. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -0
  1092. package/dist/dev/ui/popover/context.d.ts.map +1 -1
  1093. package/dist/dev/ui/popover/context.js +0 -1
  1094. package/dist/dev/ui/popover/context.js.map +1 -1
  1095. package/dist/dev/ui/popover/popover-arrow.d.ts.map +1 -1
  1096. package/dist/dev/ui/popover/popover-arrow.js +0 -1
  1097. package/dist/dev/ui/popover/popover-arrow.js.map +1 -1
  1098. package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
  1099. package/dist/dev/ui/popover/popover-popup.js +10 -81
  1100. package/dist/dev/ui/popover/popover-popup.js.map +1 -1
  1101. package/dist/dev/ui/popover/popover-root.d.ts.map +1 -1
  1102. package/dist/dev/ui/popover/popover-root.js +2 -2
  1103. package/dist/dev/ui/popover/popover-root.js.map +1 -1
  1104. package/dist/dev/ui/popover/popover-trigger.d.ts.map +1 -1
  1105. package/dist/dev/ui/popover/popover-trigger.js +4 -6
  1106. package/dist/dev/ui/popover/popover-trigger.js.map +1 -1
  1107. package/dist/dev/ui/popover/use-popup-position.js +33 -0
  1108. package/dist/dev/ui/popover/use-popup-position.js.map +1 -0
  1109. package/dist/dev/ui/poster/poster.d.ts.map +1 -1
  1110. package/dist/dev/ui/poster/poster.js +8 -5
  1111. package/dist/dev/ui/poster/poster.js.map +1 -1
  1112. package/dist/dev/ui/quality/use-quality-options.d.ts +6 -8
  1113. package/dist/dev/ui/quality/use-quality-options.d.ts.map +1 -1
  1114. package/dist/dev/ui/quality/use-quality-options.js +10 -35
  1115. package/dist/dev/ui/quality/use-quality-options.js.map +1 -1
  1116. package/dist/dev/ui/quality-radio-group/index.d.ts +2 -0
  1117. package/dist/dev/ui/quality-radio-group/index.js +2 -0
  1118. package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts +44 -0
  1119. package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts.map +1 -0
  1120. package/dist/dev/ui/quality-radio-group/quality-radio-group.js +65 -0
  1121. package/dist/dev/ui/quality-radio-group/quality-radio-group.js.map +1 -0
  1122. package/dist/dev/ui/seek-button/seek-button.d.ts.map +1 -1
  1123. package/dist/dev/ui/seek-button/seek-button.js +0 -1
  1124. package/dist/dev/ui/seek-button/seek-button.js.map +1 -1
  1125. package/dist/dev/ui/seek-indicator/context.js +0 -1
  1126. package/dist/dev/ui/seek-indicator/context.js.map +1 -1
  1127. package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +1 -1
  1128. package/dist/dev/ui/seek-indicator/seek-indicator-root.js +1 -2
  1129. package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +1 -1
  1130. package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts.map +1 -1
  1131. package/dist/dev/ui/seek-indicator/seek-indicator-value.js +0 -1
  1132. package/dist/dev/ui/seek-indicator/seek-indicator-value.js.map +1 -1
  1133. package/dist/dev/ui/slider/context.js +7 -3
  1134. package/dist/dev/ui/slider/context.js.map +1 -1
  1135. package/dist/dev/ui/slider/slider-buffer.d.ts.map +1 -1
  1136. package/dist/dev/ui/slider/slider-buffer.js +0 -1
  1137. package/dist/dev/ui/slider/slider-buffer.js.map +1 -1
  1138. package/dist/dev/ui/slider/slider-fill.d.ts.map +1 -1
  1139. package/dist/dev/ui/slider/slider-fill.js +0 -1
  1140. package/dist/dev/ui/slider/slider-fill.js.map +1 -1
  1141. package/dist/dev/ui/slider/slider-preview.d.ts.map +1 -1
  1142. package/dist/dev/ui/slider/slider-preview.js +2 -4
  1143. package/dist/dev/ui/slider/slider-preview.js.map +1 -1
  1144. package/dist/dev/ui/slider/slider-root.d.ts.map +1 -1
  1145. package/dist/dev/ui/slider/slider-root.js +3 -2
  1146. package/dist/dev/ui/slider/slider-root.js.map +1 -1
  1147. package/dist/dev/ui/slider/slider-thumb.d.ts.map +1 -1
  1148. package/dist/dev/ui/slider/slider-thumb.js +0 -1
  1149. package/dist/dev/ui/slider/slider-thumb.js.map +1 -1
  1150. package/dist/dev/ui/slider/slider-thumbnail.d.ts.map +1 -1
  1151. package/dist/dev/ui/slider/slider-thumbnail.js +2 -3
  1152. package/dist/dev/ui/slider/slider-thumbnail.js.map +1 -1
  1153. package/dist/dev/ui/slider/slider-track.d.ts.map +1 -1
  1154. package/dist/dev/ui/slider/slider-track.js +0 -1
  1155. package/dist/dev/ui/slider/slider-track.js.map +1 -1
  1156. package/dist/dev/ui/slider/slider-value.d.ts.map +1 -1
  1157. package/dist/dev/ui/slider/slider-value.js +3 -3
  1158. package/dist/dev/ui/slider/slider-value.js.map +1 -1
  1159. package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +1 -1
  1160. package/dist/dev/ui/status-announcer/status-announcer.js +7 -5
  1161. package/dist/dev/ui/status-announcer/status-announcer.js.map +1 -1
  1162. package/dist/dev/ui/status-indicator/context.js +0 -1
  1163. package/dist/dev/ui/status-indicator/context.js.map +1 -1
  1164. package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +1 -1
  1165. package/dist/dev/ui/status-indicator/status-indicator-root.js +2 -3
  1166. package/dist/dev/ui/status-indicator/status-indicator-root.js.map +1 -1
  1167. package/dist/dev/ui/status-indicator/status-indicator-value.d.ts.map +1 -1
  1168. package/dist/dev/ui/status-indicator/status-indicator-value.js +0 -1
  1169. package/dist/dev/ui/status-indicator/status-indicator-value.js.map +1 -1
  1170. package/dist/dev/ui/thumbnail/thumbnail.d.ts.map +1 -1
  1171. package/dist/dev/ui/thumbnail/thumbnail.js +0 -1
  1172. package/dist/dev/ui/thumbnail/thumbnail.js.map +1 -1
  1173. package/dist/dev/ui/time/time-group.d.ts.map +1 -1
  1174. package/dist/dev/ui/time/time-group.js +0 -1
  1175. package/dist/dev/ui/time/time-group.js.map +1 -1
  1176. package/dist/dev/ui/time/time-separator.d.ts.map +1 -1
  1177. package/dist/dev/ui/time/time-separator.js +0 -1
  1178. package/dist/dev/ui/time/time-separator.js.map +1 -1
  1179. package/dist/dev/ui/time/time-value.d.ts.map +1 -1
  1180. package/dist/dev/ui/time/time-value.js +13 -6
  1181. package/dist/dev/ui/time/time-value.js.map +1 -1
  1182. package/dist/dev/ui/time-slider/index.parts.d.ts +4 -2
  1183. package/dist/dev/ui/time-slider/index.parts.js +5 -1
  1184. package/dist/dev/ui/time-slider/index.parts.js.map +1 -1
  1185. package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js +60 -0
  1186. package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -0
  1187. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts +19 -0
  1188. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.d.ts.map +1 -0
  1189. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js +45 -0
  1190. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapter-title.js.map +1 -0
  1191. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts +22 -0
  1192. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.d.ts.map +1 -0
  1193. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js +51 -0
  1194. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js.map +1 -0
  1195. package/dist/dev/ui/time-slider/time-slider-root.d.ts.map +1 -1
  1196. package/dist/dev/ui/time-slider/time-slider-root.js +6 -5
  1197. package/dist/dev/ui/time-slider/time-slider-root.js.map +1 -1
  1198. package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
  1199. package/dist/dev/ui/tooltip/context.js +0 -1
  1200. package/dist/dev/ui/tooltip/context.js.map +1 -1
  1201. package/dist/dev/ui/tooltip/group-context.js +0 -1
  1202. package/dist/dev/ui/tooltip/group-context.js.map +1 -1
  1203. package/dist/dev/ui/tooltip/tooltip-arrow.d.ts.map +1 -1
  1204. package/dist/dev/ui/tooltip/tooltip-arrow.js +0 -1
  1205. package/dist/dev/ui/tooltip/tooltip-arrow.js.map +1 -1
  1206. package/dist/dev/ui/tooltip/tooltip-label.d.ts.map +1 -1
  1207. package/dist/dev/ui/tooltip/tooltip-label.js +0 -1
  1208. package/dist/dev/ui/tooltip/tooltip-label.js.map +1 -1
  1209. package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
  1210. package/dist/dev/ui/tooltip/tooltip-popup.js +13 -83
  1211. package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
  1212. package/dist/dev/ui/tooltip/tooltip-provider.d.ts.map +1 -1
  1213. package/dist/dev/ui/tooltip/tooltip-provider.js +0 -1
  1214. package/dist/dev/ui/tooltip/tooltip-provider.js.map +1 -1
  1215. package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
  1216. package/dist/dev/ui/tooltip/tooltip-root.js +5 -2
  1217. package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
  1218. package/dist/dev/ui/tooltip/tooltip-shortcut.d.ts.map +1 -1
  1219. package/dist/dev/ui/tooltip/tooltip-shortcut.js +0 -1
  1220. package/dist/dev/ui/tooltip/tooltip-shortcut.js.map +1 -1
  1221. package/dist/dev/ui/tooltip/tooltip-trigger.d.ts.map +1 -1
  1222. package/dist/dev/ui/tooltip/tooltip-trigger.js +2 -5
  1223. package/dist/dev/ui/tooltip/tooltip-trigger.js.map +1 -1
  1224. package/dist/dev/ui/volume-indicator/context.js +0 -1
  1225. package/dist/dev/ui/volume-indicator/context.js.map +1 -1
  1226. package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts.map +1 -1
  1227. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +0 -1
  1228. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
  1229. package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +1 -1
  1230. package/dist/dev/ui/volume-indicator/volume-indicator-root.js +1 -2
  1231. package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +1 -1
  1232. package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts.map +1 -1
  1233. package/dist/dev/ui/volume-indicator/volume-indicator-value.js +0 -1
  1234. package/dist/dev/ui/volume-indicator/volume-indicator-value.js.map +1 -1
  1235. package/dist/dev/ui/volume-slider/volume-slider-root.d.ts.map +1 -1
  1236. package/dist/dev/ui/volume-slider/volume-slider-root.js +10 -5
  1237. package/dist/dev/ui/volume-slider/volume-slider-root.js.map +1 -1
  1238. package/dist/dev/utils/merge-props.d.ts.map +1 -1
  1239. package/dist/dev/utils/merge-props.js +0 -1
  1240. package/dist/dev/utils/merge-props.js.map +1 -1
  1241. package/dist/dev/utils/use-attach-iframe.js +0 -1
  1242. package/dist/dev/utils/use-attach-iframe.js.map +1 -1
  1243. package/dist/dev/utils/use-attach-media.d.ts.map +1 -1
  1244. package/dist/dev/utils/use-attach-media.js +0 -1
  1245. package/dist/dev/utils/use-attach-media.js.map +1 -1
  1246. package/dist/dev/utils/use-composed-refs.d.ts.map +1 -1
  1247. package/dist/dev/utils/use-composed-refs.js +0 -1
  1248. package/dist/dev/utils/use-composed-refs.js.map +1 -1
  1249. package/dist/dev/utils/use-destroy.d.ts.map +1 -1
  1250. package/dist/dev/utils/use-destroy.js +0 -1
  1251. package/dist/dev/utils/use-destroy.js.map +1 -1
  1252. package/dist/dev/utils/use-force-render.js +0 -1
  1253. package/dist/dev/utils/use-force-render.js.map +1 -1
  1254. package/dist/dev/utils/use-latest-ref.d.ts.map +1 -1
  1255. package/dist/dev/utils/use-latest-ref.js +0 -1
  1256. package/dist/dev/utils/use-latest-ref.js.map +1 -1
  1257. package/dist/dev/utils/use-media-component.d.ts.map +1 -1
  1258. package/dist/dev/utils/use-media-component.js +0 -1
  1259. package/dist/dev/utils/use-media-component.js.map +1 -1
  1260. package/dist/dev/utils/use-media-instance.d.ts.map +1 -1
  1261. package/dist/dev/utils/use-media-instance.js +0 -1
  1262. package/dist/dev/utils/use-media-instance.js.map +1 -1
  1263. package/dist/dev/utils/use-render.d.ts.map +1 -1
  1264. package/dist/dev/utils/use-render.js +0 -1
  1265. package/dist/dev/utils/use-render.js.map +1 -1
  1266. package/dist/dev/utils/use-safe-id.js +0 -1
  1267. package/dist/dev/utils/use-safe-id.js.map +1 -1
  1268. package/docs/README.md +1 -1
  1269. package/docs/concepts/cast.md +6 -6
  1270. package/docs/concepts/features.md +11 -8
  1271. package/docs/concepts/i18n.md +16 -26
  1272. package/docs/concepts/media-sources.md +461 -0
  1273. package/docs/concepts/mux-data.md +9 -7
  1274. package/docs/concepts/overview.md +15 -18
  1275. package/docs/concepts/presets.md +18 -19
  1276. package/docs/concepts/skins.md +868 -862
  1277. package/docs/concepts/ui-components.md +3 -3
  1278. package/docs/concepts/why-videojs.md +4 -4
  1279. package/docs/how-to/build-your-own-component.md +8 -6
  1280. package/docs/how-to/customize-skins.md +2679 -2369
  1281. package/docs/how-to/i18n-override-translations.md +3 -3
  1282. package/docs/how-to/i18n-register-locale.md +3 -3
  1283. package/docs/how-to/i18n-ssr.md +3 -3
  1284. package/docs/how-to/i18n-switch-locale.md +3 -3
  1285. package/docs/how-to/installation.md +3 -8
  1286. package/docs/how-to/migrate-from-media-chrome.md +412 -0
  1287. package/docs/how-to/migrate-from-mux-player.md +551 -0
  1288. package/docs/how-to/migrate-from-plyr.md +385 -0
  1289. package/docs/how-to/migrate-from-video-js-8.md +594 -0
  1290. package/docs/llms.txt +51 -39
  1291. package/docs/reference/airplay-button.md +6 -6
  1292. package/docs/reference/audio-track-radio-group.md +198 -29
  1293. package/docs/reference/buffering-indicator.md +6 -6
  1294. package/docs/reference/captions-button.md +6 -6
  1295. package/docs/reference/captions-radio-group.md +206 -29
  1296. package/docs/reference/cast-button.md +6 -6
  1297. package/docs/reference/controls.md +6 -6
  1298. package/docs/reference/create-player.md +22 -31
  1299. package/docs/reference/create-translator.md +1 -1
  1300. package/docs/reference/dash-video.md +14 -0
  1301. package/docs/reference/feature-controls.md +13 -1
  1302. package/docs/reference/feature-fullscreen.md +1 -1
  1303. package/docs/reference/feature-orientation-lock.md +2 -2
  1304. package/docs/reference/feature-text-tracks.md +3 -1
  1305. package/docs/reference/feature-volume.md +14 -2
  1306. package/docs/reference/fullscreen-button.md +6 -6
  1307. package/docs/reference/get-i18n-translations.md +1 -1
  1308. package/docs/reference/has-registered-locale.md +1 -1
  1309. package/docs/reference/{simple-hls-audio-only.md → hls-audio.md} +5 -5
  1310. package/docs/reference/{simple-hls-video.md → hls-video.md} +4 -4
  1311. package/docs/reference/hlsjs-video.md +17 -9
  1312. package/docs/reference/menu.md +65 -157
  1313. package/docs/reference/mute-button.md +94 -18
  1314. package/docs/reference/mux-audio.md +1 -107
  1315. package/docs/reference/mux-video.md +1 -107
  1316. package/docs/reference/native-hls-video.md +24 -0
  1317. package/docs/reference/pip-button.md +6 -6
  1318. package/docs/reference/play-button.md +6 -6
  1319. package/docs/reference/playback-rate-button.md +6 -6
  1320. package/docs/reference/playback-rate-radio-group.md +200 -29
  1321. package/docs/reference/player-container.md +25 -25
  1322. package/docs/reference/player-provider.md +24 -24
  1323. package/docs/reference/popover.md +6 -6
  1324. package/docs/reference/poster.md +6 -6
  1325. package/docs/reference/quality-radio-group.md +200 -31
  1326. package/docs/reference/register-i18n.md +1 -1
  1327. package/docs/reference/seek-button.md +6 -6
  1328. package/docs/reference/slider.md +1 -1
  1329. package/docs/reference/thumbnail.md +7 -7
  1330. package/docs/reference/time-slider.md +251 -7
  1331. package/docs/reference/time.md +78 -34
  1332. package/docs/reference/translation-phrases.md +27 -3
  1333. package/docs/reference/use-container-attach.md +5 -5
  1334. package/docs/reference/use-locale.md +1 -1
  1335. package/docs/reference/use-media-attach.md +2 -2
  1336. package/docs/reference/use-media.md +16 -10
  1337. package/docs/reference/use-player-context.md +2 -7
  1338. package/docs/reference/use-player.md +25 -19
  1339. package/docs/reference/use-store.md +15 -15
  1340. package/docs/reference/volume-slider.md +13 -11
  1341. package/package.json +28 -8
  1342. package/dist/default/media/mux-audio/media.js.map +0 -1
  1343. package/dist/default/media/mux-video/media.js +0 -56
  1344. package/dist/default/media/mux-video/media.js.map +0 -1
  1345. package/dist/default/media/simple-hls-audio-only/index.js +0 -2
  1346. package/dist/default/media/simple-hls-audio-only/media.js +0 -22
  1347. package/dist/default/media/simple-hls-audio-only/media.js.map +0 -1
  1348. package/dist/default/media/simple-hls-video/index.js +0 -2
  1349. package/dist/default/media/simple-hls-video/media.js.map +0 -1
  1350. package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js +0 -40
  1351. package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js.map +0 -1
  1352. package/dist/default/skins/dist/default/default/tailwind/components/root.js +0 -8
  1353. package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +0 -1
  1354. package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js +0 -41
  1355. package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +0 -1
  1356. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +0 -8
  1357. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +0 -1
  1358. package/dist/default/tailwind.css +0 -42
  1359. package/dist/default/ui/input-indicators/use-indicator-visibility.js.map +0 -1
  1360. package/dist/default/ui/input-indicators/use-input-action-subscription.js.map +0 -1
  1361. package/dist/default/ui/input-indicators/use-input-indicator-root.js.map +0 -1
  1362. package/dist/default/ui/input-indicators/use-rendered-indicator-state.js.map +0 -1
  1363. package/dist/default/ui/menu/menu-back.js +0 -34
  1364. package/dist/default/ui/menu/menu-back.js.map +0 -1
  1365. package/dist/default/ui/menu/menu-item-setting-provider.js +0 -77
  1366. package/dist/default/ui/menu/menu-item-setting-provider.js.map +0 -1
  1367. package/dist/default/ui/menu/menu-item-value.js +0 -28
  1368. package/dist/default/ui/menu/menu-item-value.js.map +0 -1
  1369. package/dist/default/ui/menu/menu-view.js +0 -23
  1370. package/dist/default/ui/menu/menu-view.js.map +0 -1
  1371. package/dist/dev/media/mux-audio/media.d.ts.map +0 -1
  1372. package/dist/dev/media/mux-audio/media.js.map +0 -1
  1373. package/dist/dev/media/mux-video/media.d.ts.map +0 -1
  1374. package/dist/dev/media/mux-video/media.js +0 -56
  1375. package/dist/dev/media/mux-video/media.js.map +0 -1
  1376. package/dist/dev/media/simple-hls-audio-only/index.d.ts +0 -2
  1377. package/dist/dev/media/simple-hls-audio-only/index.js +0 -2
  1378. package/dist/dev/media/simple-hls-audio-only/media.d.ts +0 -13
  1379. package/dist/dev/media/simple-hls-audio-only/media.d.ts.map +0 -1
  1380. package/dist/dev/media/simple-hls-audio-only/media.js +0 -22
  1381. package/dist/dev/media/simple-hls-audio-only/media.js.map +0 -1
  1382. package/dist/dev/media/simple-hls-video/index.d.ts +0 -2
  1383. package/dist/dev/media/simple-hls-video/index.js +0 -2
  1384. package/dist/dev/media/simple-hls-video/media.d.ts +0 -13
  1385. package/dist/dev/media/simple-hls-video/media.d.ts.map +0 -1
  1386. package/dist/dev/media/simple-hls-video/media.js.map +0 -1
  1387. package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js +0 -40
  1388. package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js.map +0 -1
  1389. package/dist/dev/skins/dist/default/default/tailwind/components/root.js +0 -8
  1390. package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +0 -1
  1391. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js +0 -41
  1392. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +0 -1
  1393. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +0 -8
  1394. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +0 -1
  1395. package/dist/dev/tailwind.css +0 -42
  1396. package/dist/dev/ui/input-indicators/use-indicator-visibility.js.map +0 -1
  1397. package/dist/dev/ui/input-indicators/use-input-action-subscription.js.map +0 -1
  1398. package/dist/dev/ui/input-indicators/use-input-indicator-root.js.map +0 -1
  1399. package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js.map +0 -1
  1400. package/dist/dev/ui/menu/menu-back.d.ts +0 -17
  1401. package/dist/dev/ui/menu/menu-back.d.ts.map +0 -1
  1402. package/dist/dev/ui/menu/menu-back.js +0 -34
  1403. package/dist/dev/ui/menu/menu-back.js.map +0 -1
  1404. package/dist/dev/ui/menu/menu-item-setting-provider.js +0 -77
  1405. package/dist/dev/ui/menu/menu-item-setting-provider.js.map +0 -1
  1406. package/dist/dev/ui/menu/menu-item-type.d.ts +0 -5
  1407. package/dist/dev/ui/menu/menu-item-type.d.ts.map +0 -1
  1408. package/dist/dev/ui/menu/menu-item-value.d.ts +0 -12
  1409. package/dist/dev/ui/menu/menu-item-value.d.ts.map +0 -1
  1410. package/dist/dev/ui/menu/menu-item-value.js +0 -28
  1411. package/dist/dev/ui/menu/menu-item-value.js.map +0 -1
  1412. package/dist/dev/ui/menu/menu-view.d.ts +0 -13
  1413. package/dist/dev/ui/menu/menu-view.d.ts.map +0 -1
  1414. package/dist/dev/ui/menu/menu-view.js +0 -23
  1415. package/dist/dev/ui/menu/menu-view.js.map +0 -1
@@ -11,10 +11,6 @@
11
11
  }
12
12
 
13
13
 
14
- /* ==========================================================================
15
- Reset
16
- ========================================================================== */
17
-
18
14
  .media-minimal-skin *,
19
15
  .media-minimal-skin *::before,
20
16
  .media-minimal-skin *::after {
@@ -39,28 +35,37 @@
39
35
  }
40
36
  }
41
37
 
42
- /* ==========================================================================
43
- Root Container
44
- ========================================================================== */
45
-
46
38
  .media-minimal-skin {
47
39
  /* Colors */
48
- --media-current-shadow-color: oklch(from currentColor 0 0 0 / clamp(0, calc((l - 0.5) * 0.5), 0.15));
49
- --media-current-shadow-color-subtle: oklch(from var(--media-current-shadow-color) l c h / calc(alpha * 0.4));
40
+ --accent-color: var(--media-accent-color, var(--default-accent-color));
41
+ --accent-contrast-color: contrast-color(var(--accent-color));
42
+ --accent-background-color: var(
43
+ --media-accent-color,
44
+ oklch(from var(--default-accent-color) l c h / calc(alpha * 0.1))
45
+ );
46
+ --accent-text-color: var(--media-accent-text-color, contrast-color(var(--media-accent-color, oklch(0 0 0))));
47
+ --shadow-current-color: oklch(from currentColor 0 0 0 / clamp(0, calc((l - 0.5) * 0.5), 0.15));
48
+ --shadow-subtle-current-color: oklch(from var(--shadow-current-color) l c h / calc(alpha * 0.4));
50
49
  --scrollbar-thumb-color: oklch(from currentColor l c h / 0.3);
51
- /* Scaling (used in video fullscreen) */
50
+
51
+ /* Scaling - used in video fullscreen to scale the UI. */
52
52
  --scale: 1;
53
- /* What value and unit to use - 1rem assumes the document font size remains at the default 16px */
54
- --base-size: 1rem;
55
- --size: calc(var(--base-size) * var(--scale));
56
- /* Create a Tailwind-like spacing unit. */
53
+ /* Fixed scaling unit to avoid inheriting the document's root font size. This must be a CSS <length>. */
54
+ --scale-unit: var(--media-scale-unit, 16px);
55
+ --size: calc(var(--scale-unit) * var(--scale));
56
+ /* Create a Tailwind-like spacing unit where 1 equals 4px with default scaling. */
57
57
  --spacing: calc(var(--size) / 4);
58
+
59
+ /* Font sizes */
58
60
  --font-size-medium: calc(0.9375 * var(--size)); /* 15px */
59
61
  --font-size-base: calc(0.8125 * var(--size)); /* 13px */
60
62
  --font-size-small: calc(0.6875 * var(--size)); /* 11px */
61
63
  --font-size-tiny: calc(0.5625 * var(--size)); /* 9px */
62
64
  --media-icon-size: calc(1.125 * var(--size)); /* 18px */
63
65
 
66
+ /* Radii */
67
+ --container-border-radius: var(--media-border-radius, 0.75rem);
68
+
64
69
  position: relative;
65
70
  display: block;
66
71
  width: 100%;
@@ -81,14 +86,14 @@
81
86
  outline-offset: -4px;
82
87
  scrollbar-color: var(--scrollbar-thumb-color) transparent;
83
88
  scrollbar-width: thin;
84
- border-radius: var(--media-border-radius, 0.75rem);
89
+ border-radius: var(--container-border-radius);
85
90
  isolation: isolate;
86
91
  transition-timing-function: ease-out;
87
92
  transition-duration: 100ms;
88
93
  transition-property: outline-offset, outline-color;
89
94
 
90
95
  &:focus-visible {
91
- outline-color: currentColor;
96
+ outline-color: var(--focus-ring-color);
92
97
  outline-offset: 2px;
93
98
  }
94
99
 
@@ -103,10 +108,6 @@
103
108
  }
104
109
  }
105
110
 
106
- /* ==========================================================================
107
- Media Element
108
- ========================================================================== */
109
-
110
111
  .media-minimal-skin ::slotted(video),
111
112
  .media-minimal-skin video {
112
113
  display: block;
@@ -116,7 +117,7 @@
116
117
  object-position: var(--media-object-position, center);
117
118
  }
118
119
  .media-minimal-skin ::slotted(video) {
119
- border-radius: var(--media-video-border-radius);
120
+ border-radius: var(--container-border-radius);
120
121
  }
121
122
  .media-minimal-skin video {
122
123
  border-radius: inherit;
@@ -127,10 +128,6 @@
127
128
  object-fit: contain;
128
129
  }
129
130
 
130
- /* ==========================================================================
131
- Overlay / Scrim
132
- ========================================================================== */
133
-
134
131
  .media-minimal-skin .media-overlay {
135
132
  position: absolute;
136
133
  inset: 0;
@@ -145,13 +142,13 @@
145
142
  opacity: 0;
146
143
  backdrop-filter: blur(0) saturate(1);
147
144
  transition-timing-function: ease-out;
148
- transition-duration: var(--media-controls-transition-duration);
145
+ transition-duration: var(--controls-transition-duration);
149
146
  transition-property: opacity, backdrop-filter;
150
147
  }
151
148
 
152
149
  .media-minimal-skin .media-error ~ .media-overlay {
153
- transition-delay: var(--media-error-dialog-transition-delay);
154
- transition-duration: var(--media-error-dialog-transition-duration);
150
+ transition-delay: var(--error-dialog-transition-delay);
151
+ transition-duration: var(--error-dialog-transition-duration);
155
152
  }
156
153
 
157
154
  .media-minimal-skin .media-controls[data-visible] ~ .media-overlay,
@@ -169,10 +166,6 @@
169
166
  backdrop-filter: blur(16px) saturate(1.2);
170
167
  }
171
168
 
172
- /* ==========================================================================
173
- Buffering Indicator
174
- ========================================================================== */
175
-
176
169
  .media-minimal-skin .media-buffering-indicator {
177
170
  position: absolute;
178
171
  inset: 0;
@@ -189,11 +182,11 @@
189
182
  &[data-visible] {
190
183
  display: grid;
191
184
  }
192
- }
193
185
 
194
- /* ==========================================================================
195
- Error Dialog
196
- ========================================================================== */
186
+ @media (prefers-reduced-motion: reduce) {
187
+ --media-spinner-animation: none;
188
+ }
189
+ }
197
190
 
198
191
  .media-minimal-skin .media-error:not([data-open]) {
199
192
  display: none;
@@ -213,7 +206,7 @@
213
206
  display: flex;
214
207
  gap: calc(var(--spacing) * 2);
215
208
 
216
- & > * {
209
+ > * {
217
210
  flex: 1;
218
211
  }
219
212
  }
@@ -222,10 +215,6 @@
222
215
  visibility: hidden;
223
216
  }
224
217
 
225
- /* ==========================================================================
226
- Controls
227
- ========================================================================== */
228
-
229
218
  .media-minimal-skin .media-controls {
230
219
  --media-popover-side-offset: calc(var(--spacing) * (var(--base-side-offset, 2) + 1));
231
220
  --media-tooltip-side-offset: var(--media-popover-side-offset);
@@ -236,15 +225,11 @@
236
225
  align-items: center;
237
226
  padding: calc(var(--spacing) * 1);
238
227
  container: media-controls / inline-size;
239
- text-shadow: 0 1px 0 var(--media-current-shadow-color);
240
- background-color: var(--media-controls-background-color);
241
- backdrop-filter: var(--media-controls-backdrop-filter);
228
+ text-shadow: 0 1px 0 var(--shadow-current-color);
229
+ background-color: var(--controls-background-color);
230
+ backdrop-filter: var(--controls-backdrop-filter);
242
231
  }
243
232
 
244
- /* ==========================================================================
245
- Time Controls & Display
246
- ========================================================================== */
247
-
248
233
  .media-minimal-skin .media-time-controls {
249
234
  display: flex;
250
235
  flex: 1;
@@ -279,7 +264,7 @@
279
264
  }
280
265
 
281
266
  &:focus-visible {
282
- outline-color: currentColor;
267
+ outline-color: var(--focus-ring-color);
283
268
  outline-offset: 2px;
284
269
  }
285
270
  }
@@ -305,10 +290,6 @@
305
290
  }
306
291
  }
307
292
 
308
- /* ==========================================================================
309
- Buttons
310
- ========================================================================== */
311
-
312
293
  /* Base button */
313
294
  .media-minimal-skin .media-button {
314
295
  display: flex;
@@ -333,18 +314,17 @@
333
314
  will-change: scale;
334
315
 
335
316
  &:focus-visible {
336
- outline-color: currentColor;
317
+ outline-color: var(--focus-ring-color);
337
318
  outline-offset: 2px;
338
319
  }
339
320
 
340
321
  &:active:not([aria-disabled="true"]) {
341
- scale: 0.98;
322
+ scale: 0.97;
342
323
  }
343
324
 
344
325
  &[aria-disabled="true"] {
345
326
  cursor: not-allowed;
346
327
  opacity: 0.5;
347
- filter: grayscale(1);
348
328
  }
349
329
  }
350
330
 
@@ -358,9 +338,9 @@
358
338
  /* Primary button variant */
359
339
  .media-minimal-skin .media-button--primary {
360
340
  font-weight: 500;
361
- color: oklch(0 0 0);
341
+ color: var(--accent-contrast-color);
362
342
  text-shadow: none;
363
- background: oklch(1 0 0);
343
+ background: var(--accent-color);
364
344
  }
365
345
 
366
346
  /* Subtle button variant */
@@ -369,10 +349,14 @@
369
349
  text-shadow: inherit;
370
350
  background: transparent;
371
351
 
372
- &:hover,
373
- &:focus-visible,
374
- &[aria-expanded="true"] {
375
- background: oklch(from currentColor l c h / 0.1);
352
+ &:not([aria-disabled="true"]) {
353
+ &:hover,
354
+ &:focus-visible,
355
+ &[aria-expanded="true"] {
356
+ color: var(--accent-text-color);
357
+ text-decoration: none;
358
+ background-color: var(--accent-background-color);
359
+ }
376
360
  }
377
361
  }
378
362
 
@@ -383,26 +367,25 @@
383
367
  padding: 0;
384
368
 
385
369
  &:active:not([aria-disabled="true"]) {
386
- scale: 0.9;
370
+ scale: 0.97;
387
371
  }
388
372
 
389
- & .media-icon__container {
373
+ .media-icon__container {
390
374
  display: grid;
391
375
  }
392
376
 
393
- & .media-icon {
377
+ .media-icon {
394
378
  grid-area: 1 / 1;
395
- transition-behavior: allow-discrete;
396
- transition-property: display, opacity;
397
- transition-duration: 150ms;
379
+ filter: drop-shadow(0 1px 0 var(--shadow-current-color));
398
380
  transition-timing-function: ease-out;
399
- filter: drop-shadow(0 1px 0 var(--media-current-shadow-color));
381
+ transition-duration: 150ms;
382
+ transition-property: opacity, scale;
400
383
  }
401
384
  }
402
385
 
403
386
  /* Seek button */
404
387
  .media-minimal-skin .media-button--seek {
405
- & .media-icon__label {
388
+ .media-icon__label {
406
389
  position: absolute;
407
390
  right: -1px;
408
391
  bottom: -3px;
@@ -435,7 +418,7 @@
435
418
 
436
419
  /* Settings button */
437
420
  .media-minimal-skin .media-button--settings {
438
- & .media-icon--settings {
421
+ .media-icon--settings {
439
422
  transition: transform 150ms ease-in-out;
440
423
 
441
424
  @media (prefers-reduced-motion: reduce) {
@@ -480,9 +463,13 @@
480
463
  }
481
464
  }
482
465
 
483
- /* ==========================================================================
484
- Button Groups
485
- ========================================================================== */
466
+ @media (prefers-reduced-motion: reduce) {
467
+ .media-minimal-skin .media-button {
468
+ scale: 1;
469
+ transition-property: background-color, outline-offset;
470
+ will-change: auto;
471
+ }
472
+ }
486
473
 
487
474
  .media-minimal-skin .media-button-group {
488
475
  display: flex;
@@ -490,10 +477,6 @@
490
477
  align-items: center;
491
478
  }
492
479
 
493
- /* ==========================================================================
494
- Badge
495
- ========================================================================== */
496
-
497
480
  .media-minimal-skin .media-badge {
498
481
  padding: calc(var(--spacing) * 1) calc(var(--spacing) * 1.5);
499
482
  font-size: var(--font-size-small);
@@ -505,10 +488,6 @@
505
488
  border-radius: calc(var(--spacing) * 1);
506
489
  }
507
490
 
508
- /* ==========================================================================
509
- Icons
510
- ========================================================================== */
511
-
512
491
  .media-minimal-skin .media-icon__container {
513
492
  position: relative;
514
493
  }
@@ -522,10 +501,6 @@
522
501
  scale: -1 1;
523
502
  }
524
503
 
525
- /* ==========================================================================
526
- Poster Image
527
- ========================================================================== */
528
-
529
504
  .media-minimal-skin media-poster,
530
505
  .media-minimal-skin > img {
531
506
  position: absolute;
@@ -548,7 +523,7 @@
548
523
  height: 100%;
549
524
  object-fit: var(--media-object-fit, contain);
550
525
  object-position: var(--media-object-position, center);
551
- border-radius: var(--media-video-border-radius);
526
+ border-radius: var(--container-border-radius);
552
527
  }
553
528
  .media-minimal-skin > img {
554
529
  object-fit: var(--media-object-fit, contain);
@@ -586,34 +561,33 @@
586
561
  object-fit: contain;
587
562
  }
588
563
 
589
- /* ==========================================================================
590
- Media thumbnail
591
- ========================================================================== */
592
-
593
564
  .media-minimal-skin .media-thumbnail {
565
+ position: relative;
594
566
  pointer-events: none;
567
+ background-color: oklch(0 0 0 / 0.9);
568
+ border-radius: calc(var(--spacing) * 2);
595
569
 
596
- & .media-thumbnail__image-wrapper {
597
- position: relative;
598
- background-color: oklch(0 0 0 / 0.9);
599
- border-radius: calc(var(--spacing) * 2);
600
- }
601
- & .media-thumbnail__image {
602
- display: block;
570
+ &::after {
571
+ position: absolute;
572
+ inset: 0;
573
+ content: "";
603
574
  border-radius: inherit;
575
+ box-shadow:
576
+ 0 0 0 1px oklch(0 0 0 / 0.05),
577
+ 0 1px 3px 0 oklch(0 0 0 / 0.2),
578
+ 0 1px 2px -1px oklch(0 0 0 / 0.2);
604
579
  }
605
580
 
606
- & .media-thumbnail__time {
581
+ .media-thumbnail__image {
582
+ position: relative;
607
583
  display: block;
608
- margin-top: calc(var(--spacing) * 2);
609
- text-align: center;
610
- }
611
-
612
- & .media-overlay {
613
- opacity: 1;
584
+ max-width: var(--thumbnail-max-width);
585
+ max-height: var(--max-height);
586
+ overflow: clip;
587
+ border-radius: inherit;
614
588
  }
615
589
 
616
- & .media-thumbnail__spinner {
590
+ .media-thumbnail__spinner {
617
591
  position: absolute;
618
592
  top: 50%;
619
593
  left: 50%;
@@ -621,32 +595,41 @@
621
595
  translate: -50% -50%;
622
596
  }
623
597
 
624
- & .media-thumbnail__image,
625
- & .media-thumbnail__spinner {
598
+ .media-thumbnail__image,
599
+ .media-thumbnail__spinner {
626
600
  transition: opacity 150ms ease-out;
627
601
  }
628
602
 
629
603
  &:not(:has(.media-thumbnail__image[data-loading])) {
630
- & .media-thumbnail__spinner {
604
+ .media-thumbnail__spinner {
631
605
  --media-spinner-animation: none;
632
606
  }
633
607
  }
634
608
 
609
+ @media (prefers-reduced-motion: reduce) {
610
+ --media-spinner-animation: none;
611
+ }
612
+
635
613
  &:has(.media-thumbnail__image[data-loading]) {
636
- & .media-thumbnail__image {
614
+ width: var(--thumbnail-max-width);
615
+ max-width: 100%;
616
+ aspect-ratio: 16 / 9;
617
+ overflow: hidden;
618
+
619
+ .media-thumbnail__image {
637
620
  opacity: 0;
638
621
  }
639
- & .media-thumbnail__spinner {
622
+ .media-thumbnail__spinner {
640
623
  opacity: 1;
641
624
  }
642
625
  }
643
626
  }
644
627
 
645
- /* ==========================================================================
646
- Slider
647
- ========================================================================== */
648
-
649
628
  .media-minimal-skin .media-slider {
629
+ --thumb-size: calc(var(--spacing) * 3);
630
+ --thumb-active-size: calc(var(--spacing) * 3);
631
+ --track-border-radius: calc(Infinity * 1px);
632
+
650
633
  position: relative;
651
634
  display: flex;
652
635
  flex: 1;
@@ -654,7 +637,7 @@
654
637
  justify-content: center;
655
638
  cursor: pointer;
656
639
  outline: none;
657
- border-radius: calc(Infinity * 1px);
640
+ border-radius: var(--track-border-radius);
658
641
 
659
642
  &[data-orientation="horizontal"] {
660
643
  width: var(--slider-width, 100%);
@@ -667,7 +650,7 @@
667
650
  }
668
651
 
669
652
  /* Track */
670
- & .media-slider__track {
653
+ .media-slider__track {
671
654
  position: relative;
672
655
  overflow: hidden;
673
656
  user-select: none;
@@ -686,18 +669,18 @@
686
669
  }
687
670
 
688
671
  /* Thumb */
689
- & .media-slider__thumb {
672
+ .media-slider__thumb {
690
673
  position: absolute;
691
674
  z-index: 10;
692
- width: calc(var(--spacing) * 3);
693
- height: calc(var(--spacing) * 3);
675
+ width: var(--thumb-size);
676
+ height: var(--thumb-size);
694
677
  user-select: none;
695
678
  outline: 2px solid transparent;
696
679
  outline-offset: -2px;
697
680
  background-color: currentColor;
698
681
  border-radius: calc(Infinity * 1px);
699
682
  box-shadow:
700
- 0 0 0 1px var(--media-current-shadow-color, oklch(0 0 0 / 0.15)),
683
+ 0 0 0 1px var(--shadow-current-color, oklch(0 0 0 / 0.15)),
701
684
  0 1px 3px 0 oklch(0 0 0 / 0.15),
702
685
  0 1px 2px -1px oklch(0 0 0 / 0.15);
703
686
  opacity: 0;
@@ -706,7 +689,6 @@
706
689
  translate: -50% -50%;
707
690
  transition-timing-function: ease-out;
708
691
  transition-duration: 150ms;
709
- transition-property: opacity, scale, outline-offset;
710
692
 
711
693
  &[data-orientation="horizontal"] {
712
694
  top: 50%;
@@ -718,67 +700,31 @@
718
700
  }
719
701
 
720
702
  &:focus-visible {
721
- outline-color: currentColor;
703
+ outline-color: var(--focus-ring-color);
722
704
  outline-offset: 2px;
723
705
  }
724
706
  }
725
707
 
726
- &:hover .media-slider__thumb,
727
708
  &:focus-within .media-slider__thumb,
728
- & .media-slider__thumb--persistent {
709
+ .media-slider__thumb--persistent {
710
+ width: var(--thumb-active-size);
711
+ height: var(--thumb-active-size);
729
712
  opacity: 1;
730
713
  scale: 1;
731
714
  }
732
715
 
733
- /* Preview */
734
- & .media-slider__preview {
735
- & .media-slider__value,
736
- &::before {
737
- opacity: 0;
738
- scale: 0.5;
739
- transition-timing-function: ease-out;
740
- transition-duration: 200ms;
741
- transition-property: opacity, scale;
742
- }
743
-
744
- & .media-slider__value {
745
- position: absolute;
746
- bottom: calc(var(--spacing) * 6);
747
- text-shadow: 0 1px 0 var(--media-current-shadow-color);
748
- filter: blur(8px);
749
- translate: -50% calc(var(--spacing) * 2);
750
- transition-property: filter, opacity, scale, translate;
751
- }
752
-
753
- &::before {
754
- display: block;
755
- content: "";
756
- background-color: oklch(from currentColor l c h / 0.35);
757
- }
758
-
759
- &[data-pointing] .media-slider__value,
760
- &[data-pointing]:not([data-dragging])::before {
716
+ @media (hover: hover) and (pointer: fine) {
717
+ &:hover .media-slider__thumb {
718
+ width: var(--thumb-active-size);
719
+ height: var(--thumb-active-size);
761
720
  opacity: 1;
762
721
  scale: 1;
763
722
  }
764
- &[data-pointing] .media-slider__value {
765
- filter: blur(0);
766
- translate: -50% 0;
767
- }
768
-
769
- &[data-orientation="horizontal"]::before {
770
- min-width: 1px;
771
- height: calc(var(--spacing) * 5);
772
- }
773
- &[data-orientation="vertical"]::before {
774
- width: calc(var(--spacing) * 5);
775
- min-height: 1px;
776
- }
777
723
  }
778
724
 
779
725
  /* Shared track fills */
780
- & .media-slider__buffer,
781
- & .media-slider__fill {
726
+ .media-slider__buffer,
727
+ .media-slider__fill {
782
728
  position: absolute;
783
729
  pointer-events: none;
784
730
  border-radius: inherit;
@@ -786,68 +732,261 @@
786
732
  &[data-orientation="horizontal"] {
787
733
  inset-block: 0;
788
734
  left: 0;
735
+ width: 100%;
736
+ transition-property: clip-path;
789
737
  }
790
738
  &[data-orientation="vertical"] {
791
739
  inset-inline: 0;
792
740
  bottom: 0;
741
+ height: 100%;
742
+ transition-property: clip-path;
793
743
  }
794
744
  }
795
745
 
796
746
  /* Buffer */
797
- & .media-slider__buffer {
747
+ .media-slider__buffer {
798
748
  background-color: oklch(from currentColor l c h / 0.2);
799
- transition-timing-function: ease-out;
800
- transition-duration: 0.25s;
801
749
 
802
750
  &[data-orientation="horizontal"] {
803
- width: var(--media-slider-buffer);
804
- transition-property: width;
751
+ clip-path: inset(0 calc(100% - var(--media-slider-buffer)) 0 0 round var(--track-border-radius));
805
752
  }
806
753
  &[data-orientation="vertical"] {
807
- height: var(--media-slider-buffer);
808
- transition-property: height;
754
+ clip-path: inset(calc(100% - var(--media-slider-buffer)) 0 0 0 round var(--track-border-radius));
809
755
  }
810
756
  }
811
757
 
812
758
  /* Fill */
813
- & .media-slider__fill {
814
- background-color: currentColor;
759
+ .media-slider__fill {
760
+ background-color: var(--accent-color);
815
761
 
816
762
  &[data-orientation="horizontal"] {
817
- width: var(--media-slider-fill);
763
+ clip-path: inset(0 calc(100% - var(--media-slider-fill)) 0 0 round var(--track-border-radius));
818
764
  }
819
765
  &[data-orientation="vertical"] {
820
- height: var(--media-slider-fill);
766
+ clip-path: inset(calc(100% - var(--media-slider-fill)) 0 0 0 round var(--track-border-radius));
767
+ }
768
+ }
769
+
770
+ /* Chapters */
771
+ .media-slider__chapters {
772
+ position: relative;
773
+ display: flex;
774
+ flex: 1;
775
+ align-items: center;
776
+ min-width: 0;
777
+ min-height: 0;
778
+ border-radius: inherit;
779
+
780
+ &[data-orientation="horizontal"] {
781
+ width: 100%;
782
+ height: 100%;
783
+ }
784
+ &[data-orientation="vertical"] {
785
+ flex-direction: column-reverse;
786
+ width: 100%;
787
+ height: 100%;
788
+ }
789
+ }
790
+
791
+ .media-slider__chapter {
792
+ --chapter-gap: calc(var(--spacing) * 1);
793
+ --chapter-inset-start: calc(var(--chapter-gap) / 2);
794
+ --chapter-inset-end: calc(var(--chapter-gap) / 2);
795
+ position: absolute;
796
+ inset: 0;
797
+ display: flex;
798
+ align-items: center;
799
+ justify-content: center;
800
+ min-width: 0;
801
+ min-height: 0;
802
+
803
+ &:first-child {
804
+ --chapter-inset-start: 0px;
805
+ }
806
+ &:last-child {
807
+ --chapter-inset-end: 0px;
808
+ }
809
+
810
+ .media-slider__chapter-track {
811
+ --chapter-track-size: calc(var(--spacing) * 0.75);
812
+ --chapter-track-highlighted-size: calc(var(--spacing) * 1.25);
813
+ border-radius: var(--track-border-radius);
814
+
815
+ @media (prefers-reduced-motion: no-preference) {
816
+ transition: 200ms ease-out;
817
+ transition-property: height, width;
818
+ }
819
+ }
820
+
821
+ &[data-orientation="horizontal"] {
822
+ clip-path: inset(0 calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start));
823
+
824
+ .media-slider__chapter-track {
825
+ height: var(--chapter-track-size);
826
+ clip-path: inset(
827
+ 0 calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0
828
+ calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) round var(--track-border-radius)
829
+ );
830
+ }
831
+
832
+ &[data-highlighted] .media-slider__chapter-track {
833
+ height: var(--chapter-track-highlighted-size);
834
+ }
835
+ }
836
+
837
+ &[data-orientation="vertical"] {
838
+ clip-path: inset(calc(100% - var(--media-slider-chapter-end)) 0 var(--media-slider-chapter-start) 0);
839
+
840
+ .media-slider__chapter-track {
841
+ width: var(--chapter-track-size);
842
+ clip-path: inset(
843
+ calc(100% - var(--media-slider-chapter-end) + var(--chapter-inset-end)) 0
844
+ calc(var(--media-slider-chapter-start) + var(--chapter-inset-start)) 0 round var(--track-border-radius)
845
+ );
846
+ }
847
+
848
+ &[data-highlighted] .media-slider__chapter-track {
849
+ width: var(--chapter-track-highlighted-size);
850
+ }
821
851
  }
822
852
  }
823
853
 
824
854
  /* Dragging — thumb and fill follow the pointer position */
825
855
  &[data-dragging] {
826
- & .media-slider__thumb[data-orientation="horizontal"] {
856
+ .media-slider__thumb[data-orientation="horizontal"] {
827
857
  left: var(--media-slider-pointer);
828
858
  }
829
- & .media-slider__thumb[data-orientation="vertical"] {
859
+ .media-slider__thumb[data-orientation="vertical"] {
830
860
  top: calc(100% - var(--media-slider-pointer));
831
861
  }
832
- & .media-slider__fill[data-orientation="horizontal"] {
833
- width: var(--media-slider-pointer);
862
+ .media-slider__fill[data-orientation="horizontal"] {
863
+ clip-path: inset(0 calc(100% - var(--media-slider-pointer)) 0 0 round var(--track-border-radius));
834
864
  }
835
- & .media-slider__fill[data-orientation="vertical"] {
836
- height: var(--media-slider-pointer);
865
+ .media-slider__fill[data-orientation="vertical"] {
866
+ clip-path: inset(calc(100% - var(--media-slider-pointer)) 0 0 0 round var(--track-border-radius));
837
867
  }
838
868
  }
839
- }
840
869
 
841
- /* ==========================================================================
842
- Popups & Animations
843
- ========================================================================== */
870
+ @media (prefers-reduced-motion: no-preference) {
871
+ .media-slider__thumb {
872
+ transition-property: opacity, scale, height, width, outline-offset, left, top;
873
+ }
874
+ .media-slider__fill {
875
+ transition-timing-function: linear;
876
+ transition-duration: 200ms;
877
+ }
878
+ .media-slider__buffer {
879
+ transition-timing-function: ease-out;
880
+ transition-duration: 250ms;
881
+ }
882
+ }
883
+
884
+ &[data-dragging],
885
+ &[data-seeking] {
886
+ .media-slider__thumb,
887
+ .media-slider__fill,
888
+ .media-slider__buffer {
889
+ transition-duration: 0ms;
890
+ }
891
+ }
892
+
893
+ /* Preview */
894
+ .media-slider__preview {
895
+ --max-width: min(calc(var(--spacing) * 48), 100cqi);
896
+ --max-height: calc(var(--spacing) * 32);
897
+
898
+ min-width: 100%;
899
+ height: calc(var(--spacing) * 1);
900
+
901
+ .media-slider__thumbnail,
902
+ .media-slider__value {
903
+ position: absolute;
904
+ left: var(--preview-left, var(--media-slider-pointer));
905
+ max-width: var(--max-width);
906
+ opacity: 0;
907
+ filter: blur(8px);
908
+ transform-origin: bottom;
909
+ scale: 0.8;
910
+ translate: -50% calc(var(--spacing) * 2);
911
+ transition-timing-function: ease-out;
912
+ transition-duration: 150ms;
913
+ transition-property: filter, opacity, scale;
914
+ }
915
+
916
+ .media-slider__thumbnail {
917
+ --thumbnail-max-width: var(--max-width);
918
+ bottom: calc(100% + (var(--spacing) * 12));
919
+ }
920
+
921
+ .media-slider__value {
922
+ bottom: calc(100% + (var(--spacing) * 5));
923
+ display: flex;
924
+ flex-direction: row-reverse;
925
+ gap: calc(var(--spacing) * 2);
926
+ justify-content: center;
927
+ padding-inline: calc(var(--spacing) * 3);
928
+ text-shadow: 0 1px 0 var(--shadow-current-color);
929
+ }
930
+
931
+ .media-slider__chapter-title {
932
+ min-width: 0;
933
+ overflow: hidden;
934
+ text-overflow: ellipsis;
935
+ white-space: nowrap;
936
+
937
+ &:empty {
938
+ display: none;
939
+ }
940
+ }
941
+
942
+ &::before {
943
+ position: absolute;
944
+ z-index: 1;
945
+ pointer-events: none;
946
+ content: "";
947
+ background-color: oklch(from currentColor l c h / 0.35);
948
+ opacity: 0;
949
+ scale: 0.5;
950
+ translate: -50% -50%;
951
+ transition-timing-function: ease-out;
952
+ transition-duration: 200ms;
953
+ transition-property: opacity, scale;
954
+ }
955
+
956
+ &[data-orientation="horizontal"]::before {
957
+ top: 50%;
958
+ left: var(--media-slider-pointer);
959
+ width: 1px;
960
+ height: calc(var(--spacing) * 5);
961
+ }
962
+ &[data-orientation="vertical"]::before {
963
+ top: calc(100% - var(--media-slider-pointer));
964
+ left: 50%;
965
+ width: calc(var(--spacing) * 5);
966
+ height: 1px;
967
+ }
968
+
969
+ &[data-pointing]:not([data-dragging])::before {
970
+ opacity: 1;
971
+ scale: 1;
972
+ }
973
+ }
974
+
975
+ &:is([data-pointing], :has(:focus-visible))
976
+ .media-slider__preview
977
+ :is(.media-slider__value, .media-slider__thumbnail) {
978
+ opacity: 1;
979
+ filter: blur(0);
980
+ scale: 1;
981
+ }
982
+ }
844
983
 
845
984
  .media-minimal-skin {
846
- --media-popup-transition:
847
- opacity var(--media-popup-transition-timing-function) var(--media-popup-transition-duration),
848
- filter var(--media-popup-transition-timing-function) var(--media-popup-transition-duration),
849
- transform var(--media-popup-transition-timing-function) var(--media-popup-transition-duration),
850
- scale var(--media-popup-transition-timing-function) var(--media-popup-transition-duration);
985
+ --popup-transition:
986
+ opacity var(--popup-transition-timing-function) var(--popup-transition-duration),
987
+ filter var(--popup-transition-timing-function) var(--popup-transition-duration),
988
+ transform var(--popup-transition-timing-function) var(--popup-transition-duration),
989
+ scale var(--popup-transition-timing-function) var(--popup-transition-duration);
851
990
  }
852
991
 
853
992
  .media-minimal-skin .media-popover,
@@ -857,7 +996,7 @@
857
996
  overflow: visible;
858
997
  color: inherit;
859
998
  border: 0;
860
- transition: var(--media-popup-transition);
999
+ transition: var(--popup-transition);
861
1000
 
862
1001
  &[data-starting-style],
863
1002
  &[data-ending-style] {
@@ -871,7 +1010,7 @@
871
1010
  filter: blur(4px);
872
1011
  transform: none;
873
1012
  /* Speed up the exit transition. */
874
- transition-duration: max(0ms, calc(var(--media-popup-transition-duration) - 50ms));
1013
+ transition-duration: max(0ms, calc(var(--popup-transition-duration) - 50ms));
875
1014
  }
876
1015
 
877
1016
  &[data-side="top"] {
@@ -937,15 +1076,15 @@
937
1076
  .media-minimal-skin .media-tooltip {
938
1077
  padding: calc(var(--spacing) * 1) calc(var(--spacing) * 2);
939
1078
  font-size: var(--font-size-base);
940
- color: var(--media-tooltip-text-color);
1079
+ color: var(--tooltip-text-color);
941
1080
  white-space: nowrap;
942
- background-color: var(--media-tooltip-background-color);
1081
+ background-color: var(--tooltip-background-color);
943
1082
  border-radius: calc(var(--spacing) * 2);
944
1083
  box-shadow:
945
- 0 0 0 1px var(--media-tooltip-border-color),
1084
+ 0 0 0 1px var(--tooltip-border-color),
946
1085
  0 4px 6px -1px oklch(0 0 0 / 0.2),
947
1086
  0 2px 4px -2px oklch(0 0 0 / 0.2);
948
- backdrop-filter: var(--media-tooltip-backdrop-filter);
1087
+ backdrop-filter: var(--tooltip-backdrop-filter);
949
1088
 
950
1089
  /* `display: flex` must not apply while closed — it overrides UA `[popover]` hiding. */
951
1090
  &[data-open] {
@@ -963,7 +1102,7 @@
963
1102
  width: var(--media-tooltip-side-offset);
964
1103
  }
965
1104
 
966
- & .media-tooltip__kbd {
1105
+ .media-tooltip__kbd {
967
1106
  min-width: 1.5em;
968
1107
  padding: 0.1em;
969
1108
  margin-right: calc(var(--spacing) * -1);
@@ -977,15 +1116,10 @@
977
1116
  }
978
1117
  }
979
1118
 
980
- .media-minimal-skin .media-popover--volume:has(media-volume-slider[data-availability="unsupported"]) {
1119
+ .media-minimal-skin .media-popover--volume:has(media-volume-slider[data-hidden]) {
981
1120
  display: none;
982
1121
  }
983
1122
 
984
- /* ==========================================================================
985
- Menus
986
- Note: Menus use `.media-popover` styles for positioning and transitions.
987
- ========================================================================== */
988
-
989
1123
  .media-minimal-skin .media-menu {
990
1124
  --menu-transition-duration: 250ms;
991
1125
  --menu-max-height: calc(var(--spacing) * 56);
@@ -999,81 +1133,49 @@
999
1133
  padding: var(--menu-padding);
1000
1134
  overflow: auto;
1001
1135
  overscroll-behavior: none;
1002
- background-color: var(--media-popover-background-color);
1136
+ background-color: var(--popover-background-color);
1003
1137
  border-radius: var(--menu-border-radius);
1004
1138
  box-shadow:
1005
- 0 0 0 1px var(--media-popover-border-color),
1139
+ 0 0 0 1px var(--popover-border-color),
1006
1140
  0 4px 6px -1px oklch(0 0 0 / 0.1),
1007
1141
  0 2px 4px -2px oklch(0 0 0 / 0.1);
1008
- backdrop-filter: var(--media-popover-backdrop-filter);
1142
+ backdrop-filter: var(--popover-backdrop-filter);
1009
1143
 
1010
1144
  @media (prefers-reduced-motion: reduce) {
1011
1145
  --menu-transition-duration: 0ms;
1012
1146
  }
1013
1147
 
1014
- & .media-menu__panel {
1148
+ & > .media-menu__panel {
1015
1149
  position: absolute;
1016
- inset: 0;
1150
+ inset-inline: 0;
1151
+ top: 0;
1152
+ z-index: 10;
1153
+ max-height: inherit;
1017
1154
  padding: var(--menu-padding);
1018
1155
  overflow: auto;
1019
1156
  overscroll-behavior: none;
1020
1157
  outline: none;
1021
1158
  translate: 0 0;
1022
- transition-timing-function: ease-in-out;
1159
+ transition-timing-function: ease-out;
1023
1160
  transition-duration: var(--menu-transition-duration);
1024
1161
  transition-property: translate, filter;
1025
1162
  will-change: translate, filter;
1026
1163
 
1027
- &[data-starting-style],
1028
- &[data-ending-style] {
1164
+ &:where([data-starting-style], [data-ending-style]) {
1029
1165
  overflow: hidden;
1030
- }
1031
-
1032
- /* Root settings view — slides out when a submenu is active */
1033
- &[data-menu-root-view][data-menu-view-state="inactive"] {
1166
+ pointer-events: none;
1034
1167
  filter: blur(8px);
1035
- translate: -100% 0;
1036
-
1037
- /* Hide the indicator while transitioning */
1038
- & .media-menu__group::before {
1039
- display: none;
1040
- }
1041
- }
1042
-
1043
- /* Submenu panels — slide in/out alongside the root view */
1044
- &[data-submenu] {
1045
- z-index: 10;
1046
-
1047
- &:not([data-open], [data-ending-style]) {
1048
- translate: -100% 0;
1049
- transition-property: none;
1050
- }
1051
-
1052
- &[data-starting-style],
1053
- &[data-ending-style] {
1054
- pointer-events: none;
1055
- filter: blur(8px);
1056
- }
1057
-
1058
- &[data-starting-style][data-direction="forward"],
1059
- &[data-ending-style][data-direction="back"] {
1060
- translate: 100% 0;
1061
- }
1062
-
1063
- &[data-ending-style][data-direction="forward"],
1064
- &[data-starting-style][data-direction="back"] {
1065
- translate: -100% 0;
1066
- }
1168
+ translate: 100% 0;
1067
1169
  }
1068
1170
  }
1069
1171
 
1070
- & .media-menu__separator {
1172
+ .media-menu__separator {
1071
1173
  margin: calc(var(--spacing) * 1) 0;
1072
1174
  border-bottom: 1px solid oklch(1 0 0 / 0.1);
1073
1175
  }
1074
1176
 
1075
- & .media-menu__group {
1076
- anchor-scope: --media-menu-item-highlight-anchor;
1177
+ .media-menu__group {
1178
+ anchor-scope: --menu-item-highlight-anchor;
1077
1179
  display: flex;
1078
1180
  flex-direction: column;
1079
1181
  gap: calc(var(--spacing) * 0.5);
@@ -1081,59 +1183,81 @@
1081
1183
  @supports (top: anchor(top)) {
1082
1184
  &::before {
1083
1185
  position: absolute;
1084
- position-anchor: --media-menu-item-highlight-anchor;
1186
+ position-anchor: --menu-item-highlight-anchor;
1085
1187
  inset: anchor(inside);
1188
+ /* Firefox treats the moving highlight as a content shift and re-scrolls
1189
+ the menu while hovering. Exclude it from scroll anchoring. */
1190
+ overflow-anchor: none;
1086
1191
  pointer-events: none;
1087
1192
  content: "";
1088
- background-color: oklch(from currentColor l c h / 0.1);
1193
+ background-color: var(--accent-background-color);
1089
1194
  border-radius: var(--menu-item-border-radius);
1090
- transition: inset ease-in-out 100ms;
1195
+ transition: inset 100ms ease-in-out;
1196
+ }
1197
+
1198
+ &:has([data-highlighted=""])::before {
1199
+ transition-duration: 0ms;
1091
1200
  }
1092
1201
  }
1093
1202
  }
1094
1203
 
1095
- & .media-menu__item,
1096
- & .media-menu__back {
1204
+ .media-menu__item,
1205
+ .media-menu__back {
1206
+ position: relative;
1097
1207
  display: flex;
1098
1208
  gap: calc(var(--spacing) * 1.5);
1099
1209
  align-items: center;
1100
1210
  padding: calc(var(--spacing) * 1.5) calc(var(--spacing) * 2);
1101
1211
  text-align: left;
1102
- text-shadow: 0 1px 0 var(--media-current-shadow-color);
1212
+ text-shadow: 0 1px 0 var(--shadow-current-color);
1103
1213
  cursor: pointer;
1104
1214
  user-select: none;
1105
1215
  outline: 2px solid transparent;
1106
1216
  outline-offset: -2px;
1107
1217
  border-radius: var(--menu-item-border-radius);
1108
1218
  transition: background-color, color;
1109
- transition-timing-function: ease-out;
1219
+ transition-timing-function: ease-in-out;
1110
1220
  transition-duration: 100ms;
1111
1221
 
1222
+ .media-icon {
1223
+ flex-shrink: 0;
1224
+ color: oklch(from currentColor l c h / 0.5);
1225
+ filter: drop-shadow(0 1px 0 var(--shadow-current-color));
1226
+ }
1227
+
1112
1228
  &:focus-visible {
1113
- outline-color: currentColor;
1229
+ outline-color: var(--focus-ring-color);
1114
1230
  outline-offset: 2px;
1115
1231
  }
1116
1232
 
1117
1233
  &:hover,
1118
1234
  &[data-highlighted] {
1119
- background-color: oklch(from currentColor l c h / 0.1);
1235
+ color: var(--accent-text-color);
1236
+ background-color: var(--accent-background-color);
1237
+
1238
+ .media-icon {
1239
+ color: inherit;
1240
+ }
1120
1241
  }
1121
1242
 
1122
- & .media-icon {
1123
- flex-shrink: 0;
1124
- color: oklch(from currentColor l c h / 0.5);
1125
- filter: drop-shadow(0 1px 0 var(--media-current-shadow-color));
1243
+ @supports (top: anchor(top)) {
1244
+ transition-duration: 50ms;
1245
+
1246
+ &:hover,
1247
+ &[data-highlighted] {
1248
+ transition-duration: 200ms;
1249
+ }
1126
1250
  }
1127
1251
  }
1128
1252
 
1129
- & .media-menu__indicator {
1253
+ .media-menu__indicator {
1130
1254
  flex-shrink: 0;
1131
1255
  margin-right: calc(var(--spacing) * -1);
1132
1256
  margin-left: auto;
1133
1257
  opacity: 0;
1134
1258
  }
1135
1259
 
1136
- & .media-menu__item {
1260
+ .media-menu__item {
1137
1261
  justify-content: space-between;
1138
1262
  font-variant-numeric: tabular-nums;
1139
1263
  color: inherit;
@@ -1153,16 +1277,15 @@
1153
1277
  display: none;
1154
1278
  }
1155
1279
 
1156
- &:hover,
1157
1280
  &[data-highlighted] {
1158
1281
  @supports (top: anchor(top)) {
1159
- anchor-name: --media-menu-item-highlight-anchor;
1282
+ anchor-name: --menu-item-highlight-anchor;
1160
1283
  background-color: transparent;
1161
1284
  }
1162
1285
  }
1163
1286
  }
1164
1287
 
1165
- & .media-menu__tier {
1288
+ .media-menu__tier {
1166
1289
  padding-top: 1px;
1167
1290
  padding-left: calc(var(--spacing) * 0.5);
1168
1291
  font-size: var(--font-size-tiny);
@@ -1171,12 +1294,12 @@
1171
1294
  color: oklch(from currentColor l c h / 0.7);
1172
1295
  }
1173
1296
 
1174
- & .media-menu__back {
1297
+ .media-menu__back {
1175
1298
  width: 100%;
1176
1299
  margin-bottom: calc(var(--spacing) * 0.5);
1177
1300
  }
1178
1301
 
1179
- & .media-menu__hint {
1302
+ .media-menu__hint {
1180
1303
  display: inline-flex;
1181
1304
  gap: calc(var(--spacing) * 1);
1182
1305
  align-items: center;
@@ -1186,14 +1309,14 @@
1186
1309
  color: oklch(from currentColor l c h / 0.65);
1187
1310
  }
1188
1311
 
1189
- & .media-menu__hint-label {
1312
+ .media-menu__hint-label {
1190
1313
  max-width: calc(var(--spacing) * 24);
1191
1314
  overflow: hidden;
1192
1315
  text-overflow: ellipsis;
1193
1316
  white-space: nowrap;
1194
1317
  }
1195
1318
 
1196
- & .media-menu__chevron {
1319
+ .media-menu__chevron {
1197
1320
  width: calc(var(--spacing) * 3.5);
1198
1321
  height: calc(var(--spacing) * 3.5);
1199
1322
  }
@@ -1204,31 +1327,46 @@
1204
1327
  min-width: calc(var(--spacing) * 48);
1205
1328
  height: var(--media-menu-height);
1206
1329
  overflow: hidden;
1207
- /* Add height and width transitions. */
1330
+ /* Only the menu size changes between panels. */
1208
1331
  transition:
1209
- var(--media-popup-transition),
1210
- height var(--media-popup-transition-timing-function) var(--menu-transition-duration),
1211
- width var(--media-popup-transition-timing-function) var(--menu-transition-duration);
1332
+ var(--popup-transition),
1333
+ width var(--popup-transition-timing-function) var(--menu-transition-duration),
1334
+ height var(--popup-transition-timing-function) var(--menu-transition-duration);
1212
1335
 
1213
- /* Don't transition width and height on open/close. */
1336
+ & > :not([data-submenu]) {
1337
+ translate: 0 0;
1338
+ transition:
1339
+ translate var(--menu-transition-duration) ease-out,
1340
+ filter var(--menu-transition-duration) ease-out;
1341
+ will-change: translate, filter;
1342
+ }
1343
+
1344
+ &[data-submenu-expanded="true"] > :not([data-submenu]) {
1345
+ filter: blur(8px);
1346
+ translate: -100% 0;
1347
+ }
1348
+
1349
+ /* WebKit can restart the covered-content transition while the
1350
+ anchor-positioned highlight remains active. */
1351
+ &[data-submenu-expanded] > :not([data-submenu])::before {
1352
+ display: none;
1353
+ }
1354
+
1355
+ /* Don't transition size on open/close. */
1214
1356
  &[data-starting-style],
1215
1357
  &[data-ending-style] {
1216
- transition: var(--media-popup-transition);
1358
+ transition: var(--popup-transition);
1217
1359
  }
1218
1360
  }
1219
1361
  }
1220
1362
 
1221
- /* ==========================================================================
1222
- Native Caption Track
1223
- ========================================================================== */
1224
-
1225
1363
  .media-minimal-skin {
1226
- --media-caption-track-duration: var(--media-controls-transition-duration);
1364
+ --media-caption-track-duration: var(--controls-transition-duration);
1227
1365
  --media-caption-track-delay: 25ms;
1228
1366
  --media-caption-track-y: calc(var(--spacing) * -2);
1229
1367
 
1230
1368
  &:has(.media-controls[data-visible]) {
1231
- --media-caption-track-y: calc(var(--spacing) * -20);
1369
+ --media-caption-track-y: calc(var(--spacing) * -18);
1232
1370
  }
1233
1371
 
1234
1372
  @container media-root (width > 42rem) {
@@ -1247,11 +1385,7 @@
1247
1385
  transition-delay: var(--media-caption-track-delay);
1248
1386
  }
1249
1387
 
1250
- /* ==========================================================================
1251
- Input Feedback
1252
- ========================================================================== */
1253
-
1254
- .media-minimal-skin .media-input-feedback {
1388
+ .media-minimal-skin .media-input-indicator-overlay {
1255
1389
  position: absolute;
1256
1390
  inset: 0;
1257
1391
  display: grid;
@@ -1259,110 +1393,129 @@
1259
1393
  align-items: center;
1260
1394
  justify-items: center;
1261
1395
  overflow: hidden;
1262
- color: var(--media-color-primary, oklch(1 0 0));
1396
+ color: oklch(1 0 0);
1263
1397
  pointer-events: none;
1264
1398
  border-radius: inherit;
1265
1399
  }
1266
1400
 
1267
- /* --- Feedback islands ------------------------------------------------------- */
1268
-
1269
- .media-minimal-skin .media-input-feedback-island {
1270
- position: absolute;
1271
- inset-inline: 0;
1272
- top: 0;
1273
- display: flex;
1274
- justify-content: center;
1275
- padding-top: calc(var(--spacing) * 3);
1276
- padding-bottom: calc(var(--spacing) * 32);
1277
- color: inherit;
1278
- text-shadow: 0 1px 0 var(--media-current-shadow-color);
1279
- pointer-events: none;
1280
- background-image: linear-gradient(
1281
- to bottom,
1282
- oklch(0 0 0 / 0.35),
1283
- oklch(0 0 0 / 0.2) calc(var(--spacing) * 12),
1284
- oklch(0 0 0 / 0)
1285
- );
1286
- transform-origin: top center;
1287
- transition-timing-function: ease-out;
1288
- transition-duration: 100ms;
1289
-
1290
- .media-input-feedback-island__content {
1401
+ .media-minimal-skin {
1402
+ .media-volume-indicator,
1403
+ .media-status-indicator--state {
1404
+ position: absolute;
1405
+ inset-inline: 0;
1406
+ top: 0;
1291
1407
  display: flex;
1292
- gap: calc(var(--spacing) * 2);
1293
- align-items: center;
1294
- justify-content: space-between;
1295
- padding: calc(var(--spacing) * 1) calc(var(--spacing) * 2.5);
1296
- }
1408
+ justify-content: center;
1409
+ padding-top: calc(var(--spacing) * 3);
1410
+ padding-bottom: calc(var(--spacing) * 32);
1411
+ color: inherit;
1412
+ text-shadow: 0 1px 0 var(--shadow-current-color);
1413
+ pointer-events: none;
1414
+ background-image: linear-gradient(
1415
+ to bottom,
1416
+ oklch(0 0 0 / 0.35),
1417
+ oklch(0 0 0 / 0.2) calc(var(--spacing) * 12),
1418
+ oklch(0 0 0 / 0)
1419
+ );
1420
+ transform-origin: top center;
1421
+ transition-timing-function: ease-out;
1422
+ transition-duration: 100ms;
1297
1423
 
1298
- .media-icon {
1299
- display: none;
1300
- flex-shrink: 0;
1301
- filter: drop-shadow(0 1px 0 var(--media-current-shadow-color));
1302
- }
1424
+ .media-volume-indicator__content,
1425
+ .media-status-indicator__content {
1426
+ display: flex;
1427
+ gap: calc(var(--spacing) * 2);
1428
+ align-items: center;
1429
+ justify-content: space-between;
1430
+ padding: calc(var(--spacing) * 1) calc(var(--spacing) * 2.5);
1431
+ }
1303
1432
 
1304
- .media-input-feedback-island__value {
1305
- margin-left: auto;
1306
- }
1433
+ .media-icon {
1434
+ display: none;
1435
+ flex-shrink: 0;
1436
+ filter: drop-shadow(0 1px 0 var(--shadow-current-color));
1437
+ }
1307
1438
 
1308
- @media (pointer: fine) {
1309
- transition-property: translate, filter, opacity;
1310
- will-change: translate, filter, opacity;
1311
- }
1439
+ .media-volume-indicator__value,
1440
+ .media-status-indicator__value {
1441
+ margin-left: auto;
1442
+ }
1312
1443
 
1313
- @media (pointer: coarse) {
1314
- transition-property: translate, opacity;
1315
- will-change: translate, opacity;
1316
- }
1444
+ @media (pointer: fine) {
1445
+ transition-property: translate, filter, opacity;
1446
+ will-change: translate, filter, opacity;
1447
+ }
1317
1448
 
1318
- @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
1319
- transition-property: translate, filter, opacity;
1320
- }
1449
+ @media (pointer: coarse) {
1450
+ transition-property: translate, opacity;
1451
+ will-change: translate, opacity;
1452
+ }
1321
1453
 
1322
- @media (prefers-reduced-transparency: reduce) or (prefers-contrast: more) {
1323
- .media-input-feedback-island__content {
1324
- background: var(--media-controls-background-color);
1325
- border-radius: calc(var(--spacing) * 2);
1454
+ @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
1455
+ transition-property: translate, filter, opacity;
1326
1456
  }
1327
- }
1328
1457
 
1329
- /* Default hidden state */
1330
- &[data-starting-style],
1331
- &[data-ending-style] {
1332
- opacity: 0;
1333
- transition-timing-function: ease-in;
1334
- transition-duration: 400ms;
1458
+ @media (prefers-reduced-transparency: reduce) or (prefers-contrast: more) {
1459
+ .media-volume-indicator__content,
1460
+ .media-status-indicator__content {
1461
+ background: var(--controls-background-color);
1462
+ border-radius: calc(var(--spacing) * 2);
1463
+ }
1464
+ }
1335
1465
 
1336
- @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
1337
- filter: blur(8px);
1466
+ &[data-starting-style],
1467
+ &[data-ending-style] {
1468
+ opacity: 0;
1469
+ transition-timing-function: ease-in;
1470
+ transition-duration: 400ms;
1471
+
1472
+ @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
1473
+ filter: blur(8px);
1474
+ }
1338
1475
  }
1339
1476
 
1340
- @media (prefers-reduced-motion: no-preference) {
1341
- &[data-ending-style] {
1477
+ &[data-ending-style] {
1478
+ @media (prefers-reduced-motion: no-preference) {
1342
1479
  translate: 0 -100%;
1343
1480
  }
1344
1481
  }
1345
1482
  }
1483
+
1484
+ .media-seek-indicator,
1485
+ .media-status-indicator--playback {
1486
+ display: grid;
1487
+ grid-row: 1;
1488
+ grid-column: 2;
1489
+ place-content: center;
1490
+ padding: calc(var(--spacing) * 4);
1491
+ text-align: center;
1492
+ }
1346
1493
  }
1347
1494
 
1348
- .media-minimal-skin .media-input-feedback-island--volume {
1349
- .media-input-feedback-island__content {
1495
+ .media-minimal-skin .media-volume-indicator {
1496
+ .media-volume-indicator__content {
1350
1497
  width: min(80%, calc(var(--spacing) * 56));
1498
+ transform: translateX(0);
1351
1499
  }
1352
1500
 
1353
- .media-input-feedback-island__progress {
1354
- --media-progress-fill: var(--media-volume-fill);
1501
+ .media-volume-indicator__progress {
1502
+ position: relative;
1355
1503
  width: 100%;
1356
1504
  height: calc(var(--spacing) * 0.75);
1357
- background-image: linear-gradient(
1358
- to right,
1359
- currentColor 0%,
1360
- currentColor var(--media-progress-fill),
1361
- oklch(from currentColor l c h / 0.2) var(--media-progress-fill),
1362
- oklch(from currentColor l c h / 0.2) 100%
1363
- );
1505
+ background: oklch(from currentColor l c h / 0.2);
1364
1506
  border-radius: calc(Infinity * 1px);
1365
- box-shadow: 0 1px 0 var(--media-current-shadow-color-subtle);
1507
+ box-shadow: 0 1px 0 var(--shadow-subtle-current-color);
1508
+
1509
+ &::before {
1510
+ position: absolute;
1511
+ inset-block: 0;
1512
+ left: 0;
1513
+ width: var(--media-volume-fill, 0%);
1514
+ content: "";
1515
+ background: var(--accent-color);
1516
+ border-radius: inherit;
1517
+ transition: width 200ms linear;
1518
+ }
1366
1519
  }
1367
1520
 
1368
1521
  &[data-level="high"] .media-icon--volume-high,
@@ -1372,14 +1525,15 @@
1372
1525
  }
1373
1526
 
1374
1527
  @media (prefers-reduced-motion: no-preference) {
1375
- &[data-min] .media-input-feedback-island__content,
1376
- &[data-max] .media-input-feedback-island__content {
1377
- animation: media-shake 300ms ease-in-out;
1528
+ &[data-min]:not([data-starting-style], [data-ending-style]) .media-volume-indicator__content,
1529
+ &[data-max]:not([data-starting-style], [data-ending-style]) .media-volume-indicator__content {
1530
+ transform: translateX(0.25px);
1531
+ transition: transform 300ms linear(0, -24 20%, 16 40%, -8 60%, 4 80%, 1);
1378
1532
  }
1379
1533
  }
1380
1534
  }
1381
1535
 
1382
- .media-minimal-skin .media-input-feedback-island--status {
1536
+ .media-minimal-skin .media-status-indicator--state {
1383
1537
  &[data-status="captions-on"] .media-icon--captions-on,
1384
1538
  &[data-status="captions-off"] .media-icon--captions-off,
1385
1539
  &[data-status="fullscreen"] .media-icon--fullscreen-enter,
@@ -1390,46 +1544,65 @@
1390
1544
  }
1391
1545
  }
1392
1546
 
1393
- /* --- Bubble ---------------------------------------------------------------- */
1394
-
1395
- .media-minimal-skin .media-input-feedback-bubble {
1396
- display: grid;
1397
- grid-row: 1;
1398
- grid-column: 2;
1399
- place-content: center;
1400
- padding: calc(var(--spacing) * 4);
1401
- text-align: center;
1547
+ .media-minimal-skin .media-status-indicator--playback {
1548
+ transition-timing-function: ease-out;
1549
+ transition-duration: 200ms;
1550
+ transition-property: opacity, scale;
1402
1551
 
1403
- /* Central bubble (play, pause) */
1404
- &:not([data-direction]) {
1552
+ .media-icon {
1553
+ grid-area: 1 / 1;
1554
+ width: calc(var(--media-icon-size) * 2);
1555
+ height: calc(var(--media-icon-size) * 2);
1556
+ opacity: 0;
1557
+ scale: 0;
1405
1558
  transition-timing-function: ease-out;
1406
- transition-duration: 200ms;
1559
+ transition-duration: 150ms;
1407
1560
  transition-property: opacity, scale;
1561
+ }
1408
1562
 
1409
- &[data-starting-style],
1410
- &[data-ending-style] {
1411
- opacity: 0;
1412
- scale: 0.85;
1413
- }
1563
+ &[data-status="pause"] .media-icon--pause,
1564
+ &[data-status="play"] .media-icon--play {
1565
+ opacity: 1;
1566
+ scale: 1;
1567
+ }
1414
1568
 
1415
- &[data-ending-style] {
1416
- transition-timing-function: ease-in;
1417
- transition-duration: 100ms;
1569
+ &[data-starting-style],
1570
+ &[data-ending-style] {
1571
+ opacity: 0;
1572
+ scale: 0.85;
1573
+ }
1574
+
1575
+ &[data-ending-style] {
1576
+ transition-timing-function: ease-in;
1577
+ transition-duration: 100ms;
1578
+ }
1579
+
1580
+ @media (prefers-reduced-motion: reduce) {
1581
+ transition-duration: 50ms;
1582
+ transition-property: opacity;
1583
+
1584
+ &[data-starting-style],
1585
+ &[data-ending-style],
1586
+ .media-icon {
1587
+ scale: 1;
1418
1588
  }
1419
1589
 
1420
- @media (prefers-reduced-motion: reduce) {
1590
+ .media-icon {
1421
1591
  transition-duration: 50ms;
1422
1592
  transition-property: opacity;
1423
1593
  }
1424
1594
  }
1595
+ }
1425
1596
 
1426
- /* Directional bubbles (seek) */
1427
- &[data-direction] {
1428
- gap: calc(var(--spacing) * 1);
1597
+ .media-minimal-skin .media-seek-indicator {
1598
+ gap: calc(var(--spacing) * 1);
1429
1599
 
1430
- @container media-root (width > 24rem) {
1431
- padding: calc(var(--spacing) * 6);
1432
- }
1600
+ .media-seek-indicator__value {
1601
+ font-variant-numeric: tabular-nums;
1602
+ }
1603
+
1604
+ @container media-root (width > 24rem) {
1605
+ padding: calc(var(--spacing) * 6);
1433
1606
  }
1434
1607
 
1435
1608
  &[data-direction="backward"] {
@@ -1442,24 +1615,12 @@
1442
1615
  justify-self: right;
1443
1616
  }
1444
1617
 
1445
- /* Icons */
1446
- .media-icon {
1447
- display: none;
1448
- width: calc(var(--media-icon-size) * 2);
1449
- height: calc(var(--media-icon-size) * 2);
1450
- }
1451
-
1452
1618
  .media-icon--seek {
1619
+ display: block;
1453
1620
  width: calc(var(--media-icon-size) * 1.5);
1454
1621
  height: calc(var(--media-icon-size) * 1.5);
1455
1622
  }
1456
1623
 
1457
- &[data-direction] .media-icon--seek,
1458
- &[data-status="pause"] .media-icon--pause,
1459
- &[data-status="play"] .media-icon--play {
1460
- display: block;
1461
- }
1462
-
1463
1624
  &[data-direction="backward"] .media-icon--seek {
1464
1625
  scale: -1 1;
1465
1626
  }
@@ -1479,6 +1640,7 @@
1479
1640
  &[data-direction="forward"][data-starting-style] .media-icon--seek {
1480
1641
  translate: -60% 0;
1481
1642
  }
1643
+
1482
1644
  &[data-direction="backward"][data-starting-style] .media-icon--seek {
1483
1645
  translate: 60% 0;
1484
1646
  }
@@ -1488,32 +1650,24 @@
1488
1650
  /* ==========================================================================
1489
1651
  Icon State Visibility for Video Skins
1490
1652
 
1491
- Data-attribute-driven visibility rules for multi-state icon buttons.
1492
- Uses :is() with both element selectors (for HTML custom element wrappers)
1493
- and class selectors (for React rendered SVG elements).
1653
+ Data-attribute-driven visibility rules for multi-state icon buttons shared
1654
+ by the HTML and React skins.
1494
1655
  ========================================================================== */
1495
1656
 
1496
1657
  /* --- All icons hidden by default --- */
1497
1658
 
1498
- .media-button--play .media-icon--restart,
1499
- .media-button--play .media-icon--play,
1500
- .media-button--play .media-icon--pause,
1501
- .media-button--mute .media-icon--volume-off,
1502
- .media-button--mute .media-icon--volume-low,
1503
- .media-button--mute .media-icon--volume-high,
1504
- .media-button--fullscreen .media-icon--fullscreen-enter,
1505
- .media-button--fullscreen .media-icon--fullscreen-exit,
1506
- .media-button--pip .media-icon--pip-enter,
1507
- .media-button--pip .media-icon--pip-exit,
1508
- .media-button--cast .media-icon--cast-enter,
1509
- .media-button--cast .media-icon--cast-exit,
1510
- .media-button--airplay .media-icon--airplay-enter,
1511
- .media-button--airplay .media-icon--airplay-exit,
1512
- .media-button--captions .media-icon--captions-off,
1513
- .media-button--captions .media-icon--captions-on {
1514
- display: none;
1659
+ .media-button--play .media-icon,
1660
+ .media-button--mute .media-icon,
1661
+ .media-button--fullscreen .media-icon,
1662
+ .media-button--pip .media-icon,
1663
+ .media-button--cast .media-icon,
1664
+ .media-button--airplay .media-icon,
1665
+ .media-button--captions .media-icon {
1515
1666
  opacity: 0;
1516
1667
  }
1668
+ .media-button--play .media-icon {
1669
+ scale: 0;
1670
+ }
1517
1671
 
1518
1672
  /* --- Active icon per state --- */
1519
1673
 
@@ -1550,8 +1704,8 @@
1550
1704
  .media-button--captions:not([data-active]) .media-icon--captions-off,
1551
1705
  /* Captions: active → captions on */
1552
1706
  .media-button--captions[data-active] .media-icon--captions-on {
1553
- display: block;
1554
1707
  opacity: 1;
1708
+ scale: 1;
1555
1709
  }
1556
1710
 
1557
1711
  /* --- Pause keyframe animations on inactive icons --- */
@@ -1565,97 +1719,72 @@
1565
1719
  --media-icon--airplay__triangle-animation: none;
1566
1720
  }
1567
1721
 
1568
- /* -------------------------------------------------------------------------- */
1569
- /* Global @keyframes for all video skins (CSS & Tailwind) */
1570
- /* -------------------------------------------------------------------------- */
1571
-
1572
- @keyframes media-shake {
1573
- 0%,
1574
- 100% {
1575
- translate: 0 0;
1576
- }
1577
- 20% {
1578
- translate: -6px 0;
1579
- }
1580
- 40% {
1581
- translate: 4px 0;
1582
- }
1583
- 60% {
1584
- translate: -2px 0;
1585
- }
1586
- 80% {
1587
- translate: 1px 0;
1722
+ @media (prefers-reduced-motion: reduce) {
1723
+ .media-button--airplay {
1724
+ --media-icon--airplay__fill-animation: none;
1725
+ --media-icon--airplay__triangle-animation: none;
1588
1726
  }
1589
1727
  }
1590
1728
 
1591
- /* -------------------------------------------------------------------------- */
1592
- /* Global @properties for all video skins (CSS & Tailwind) */
1593
- /* -------------------------------------------------------------------------- */
1594
1729
 
1595
- @property --media-progress-fill {
1596
- syntax: "<percentage>";
1597
- inherits: true;
1598
- initial-value: 0%;
1599
- }
1600
-
1601
-
1602
- /* ==========================================================================
1603
- Root
1604
- ========================================================================== */
1730
+ /* Container */
1605
1731
 
1606
1732
  .media-minimal-skin--video {
1607
- --media-border-color: oklch(0 0 0 / 0.15);
1608
- --media-video-border-radius: var(--media-border-radius, 0.75rem);
1733
+ --default-accent-color: oklch(1 0 0);
1734
+ --border-color: light-dark(oklch(0 0 0 / 0.15), oklch(1 0 0 / 0.15));
1735
+ --focus-ring-color: light-dark(oklch(0 0 0), oklch(1 0 0));
1736
+ --media-video-border-radius: var(--container-border-radius);
1609
1737
 
1610
- --media-controls-background-color: transparent;
1611
- --media-controls-transition-duration: 100ms;
1612
- --media-controls-transition-timing-function: ease-out;
1738
+ --controls-background-color: transparent;
1739
+ --controls-transition-duration: 100ms;
1740
+ --controls-transition-timing-function: ease-out;
1613
1741
 
1614
- --media-error-dialog-transition-duration: 150ms;
1615
- --media-error-dialog-transition-delay: 100ms;
1616
- --media-error-dialog-transition-timing-function: ease-out;
1742
+ --error-dialog-transition-duration: 150ms;
1743
+ --error-dialog-transition-delay: 100ms;
1744
+ --error-dialog-transition-timing-function: ease-out;
1617
1745
 
1618
- --media-popup-transition-duration: 100ms;
1619
- --media-popup-transition-timing-function: ease-out;
1746
+ --popup-transition-duration: 100ms;
1747
+ --popup-transition-timing-function: ease-out;
1620
1748
 
1621
- --media-popover-backdrop-filter: blur(16px) saturate(1.5);
1622
- --media-popover-background-color: oklch(0 0 0 / 0.5);
1623
- --media-popover-border-color: oklch(1 0 0 / 0.1);
1749
+ --popover-backdrop-filter: blur(16px) saturate(1.5);
1750
+ --popover-background-color: oklch(0 0 0 / 0.5);
1751
+ --popover-border-color: oklch(1 0 0 / 0.1);
1624
1752
 
1625
- --media-tooltip-backdrop-filter: var(--media-popover-backdrop-filter);
1626
- --media-tooltip-background-color: var(--media-popover-background-color);
1627
- --media-tooltip-border-color: var(--media-popover-border-color);
1753
+ --tooltip-backdrop-filter: var(--popover-backdrop-filter);
1754
+ --tooltip-background-color: var(--popover-background-color);
1755
+ --tooltip-border-color: var(--popover-border-color);
1628
1756
 
1629
- --media-tooltip-text-color: currentColor;
1757
+ --tooltip-text-color: currentColor;
1630
1758
 
1631
1759
  overflow: clip;
1632
1760
  background: oklch(0 0 0);
1633
1761
 
1634
1762
  @media (prefers-reduced-motion: reduce) {
1635
- --media-error-dialog-transition-duration: 50ms;
1636
- --media-error-dialog-transition-delay: 0ms;
1637
- --media-popup-transition-duration: 0ms;
1638
- }
1763
+ --error-dialog-transition-duration: 50ms;
1764
+ --error-dialog-transition-delay: 0ms;
1765
+ --popup-transition-duration: 0ms;
1639
1766
 
1640
- @media (prefers-color-scheme: dark) {
1641
- --media-border-color: oklch(1 0 0 / 0.15);
1767
+ .media-error__dialog {
1768
+ scale: 1;
1769
+ transition-property: opacity;
1770
+ }
1642
1771
  }
1643
1772
 
1644
1773
  @media (prefers-reduced-transparency: reduce) or (prefers-contrast: more) {
1645
- --media-controls-background-color: oklch(0 0 0);
1646
- --media-tooltip-background-color: oklch(0 0 0);
1774
+ --controls-background-color: oklch(0 0 0);
1775
+ --tooltip-background-color: oklch(0 0 0);
1647
1776
  }
1648
1777
 
1649
1778
  &:has(.media-controls:not([data-visible])) {
1650
1779
  /* Slight delay to hide controls on non-touch devices after interaction */
1651
1780
  @media (pointer: fine) {
1652
- --media-controls-transition-duration: 300ms;
1781
+ --controls-transition-duration: 300ms;
1653
1782
  }
1654
1783
  @media (pointer: coarse) {
1655
- --media-controls-transition-duration: 150ms;
1784
+ --controls-transition-duration: 150ms;
1656
1785
  }
1657
1786
  @media (prefers-reduced-motion: reduce) {
1658
- --media-controls-transition-duration: 50ms;
1787
+ --controls-transition-duration: 50ms;
1659
1788
  }
1660
1789
  }
1661
1790
 
@@ -1667,11 +1796,11 @@
1667
1796
  pointer-events: none;
1668
1797
  content: "";
1669
1798
  border-radius: inherit;
1670
- box-shadow: inset 0 0 0 1px var(--media-border-color);
1799
+ box-shadow: inset 0 0 0 1px var(--border-color);
1671
1800
  }
1672
1801
 
1673
1802
  &:fullscreen {
1674
- --media-border-radius: 0;
1803
+ --container-border-radius: 0;
1675
1804
 
1676
1805
  &::after {
1677
1806
  display: none;
@@ -1687,11 +1816,13 @@
1687
1816
  --scale: 1.75;
1688
1817
  }
1689
1818
  }
1819
+
1820
+ * {
1821
+ --focus-ring-color: oklch(1 0 0);
1822
+ }
1690
1823
  }
1691
1824
 
1692
- /* ==========================================================================
1693
- Error Dialog
1694
- ========================================================================== */
1825
+ /* Error Dialog */
1695
1826
 
1696
1827
  .media-minimal-skin--video .media-error {
1697
1828
  position: absolute;
@@ -1714,9 +1845,9 @@
1714
1845
  color: oklch(1 0 0);
1715
1846
  text-shadow: 0 1px 0 oklch(0 0 0 / 0.5);
1716
1847
  pointer-events: auto;
1717
- transition-delay: var(--media-error-dialog-transition-delay);
1718
- transition-timing-function: var(--media-error-dialog-transition-timing-function);
1719
- transition-duration: var(--media-error-dialog-transition-duration);
1848
+ transition-delay: var(--error-dialog-transition-delay);
1849
+ transition-timing-function: var(--error-dialog-transition-timing-function);
1850
+ transition-duration: var(--error-dialog-transition-duration);
1720
1851
  transition-property: opacity, scale;
1721
1852
  }
1722
1853
 
@@ -1734,18 +1865,16 @@
1734
1865
  .media-minimal-skin--video .media-error[data-starting-style] .media-error__dialog,
1735
1866
  .media-minimal-skin--video .media-error[data-ending-style] .media-error__dialog {
1736
1867
  opacity: 0;
1737
- scale: 0.5;
1868
+ scale: 0.95;
1738
1869
  }
1739
1870
  .media-minimal-skin--video .media-error[data-ending-style] .media-error__dialog {
1740
1871
  transition-delay: 0ms;
1741
1872
  }
1742
1873
 
1743
- /* ==========================================================================
1744
- Controls (hide/show behavior)
1745
- ========================================================================== */
1874
+ /* Controls (hide/show behavior) */
1746
1875
 
1747
1876
  .media-minimal-skin--video .media-controls {
1748
- --base-side-offset: 7;
1877
+ --base-side-offset: 5;
1749
1878
  --base-boundary-offset: 1;
1750
1879
  --inset-factor: 1;
1751
1880
  --inset: calc(var(--spacing) * var(--inset-factor));
@@ -1758,9 +1887,9 @@
1758
1887
  column-gap: calc(var(--spacing) * 2);
1759
1888
  color: oklch(1 0 0);
1760
1889
  border-radius: calc(var(--spacing) * 3);
1761
- transition-timing-function: var(--media-controls-transition-timing-function);
1890
+ transition-timing-function: var(--controls-transition-timing-function);
1762
1891
  /* Speed up the entry transition */
1763
- transition-duration: calc(var(--media-controls-transition-duration) / 2);
1892
+ transition-duration: calc(var(--controls-transition-duration) / 2);
1764
1893
 
1765
1894
  @media (pointer: fine) {
1766
1895
  transition-property: translate, filter, opacity;
@@ -1775,7 +1904,7 @@
1775
1904
  &:not([data-visible]) {
1776
1905
  pointer-events: none;
1777
1906
  opacity: 0;
1778
- transition-duration: var(--media-controls-transition-duration);
1907
+ transition-duration: var(--controls-transition-duration);
1779
1908
 
1780
1909
  @media (pointer: fine) and (prefers-reduced-motion: no-preference) {
1781
1910
  filter: blur(8px);
@@ -1786,7 +1915,7 @@
1786
1915
  }
1787
1916
  }
1788
1917
 
1789
- & .media-time-controls {
1918
+ .media-time-controls {
1790
1919
  --slider-height: calc(var(--spacing) * 5);
1791
1920
 
1792
1921
  flex: 0 0 100%;
@@ -1794,12 +1923,12 @@
1794
1923
  padding-inline: calc(var(--spacing) * 1.5);
1795
1924
  }
1796
1925
 
1797
- & .media-button-group:first-child {
1926
+ .media-button-group:first-child {
1798
1927
  flex: 1;
1799
1928
  text-align: left;
1800
1929
  }
1801
1930
 
1802
- & .media-button-group:last-child {
1931
+ .media-button-group:last-child {
1803
1932
  flex: 1;
1804
1933
  justify-content: end;
1805
1934
  }
@@ -1810,19 +1939,19 @@
1810
1939
 
1811
1940
  flex-wrap: nowrap;
1812
1941
 
1813
- & .media-time-controls {
1942
+ .media-time-controls {
1814
1943
  --slider-height: calc(var(--spacing) * 8);
1815
1944
 
1816
1945
  flex: 1;
1817
1946
  order: unset;
1818
1947
  }
1819
1948
 
1820
- & .media-button-group:first-child,
1821
- & .media-button-group:last-child {
1949
+ .media-button-group:first-child,
1950
+ .media-button-group:last-child {
1822
1951
  flex: 0 0 auto;
1823
1952
  }
1824
1953
 
1825
- & .media-time-controls {
1954
+ .media-time-controls {
1826
1955
  mask-position: 100% 0;
1827
1956
  mask-size: 200% 100%;
1828
1957
  transition: mask-position 50ms ease-out;
@@ -1847,86 +1976,25 @@
1847
1976
  cursor: none;
1848
1977
  }
1849
1978
 
1850
- /* ==========================================================================
1851
- Sliders
1852
- ========================================================================== */
1853
-
1854
- .media-minimal-skin--video .media-slider__track {
1855
- box-shadow: 0 0 0 1px oklch(0 0 0 / 0.05);
1856
- }
1857
-
1858
- /* ==========================================================================
1859
- Popups & Animations
1860
- ========================================================================== */
1979
+ /* Popups & Animations */
1861
1980
 
1862
1981
  .media-minimal-skin--video .media-popover--volume {
1863
1982
  padding: 0;
1864
1983
  background: transparent;
1865
1984
  }
1866
1985
 
1867
- /* ==========================================================================
1868
- Slider preview
1869
- ========================================================================== */
1986
+ /* Slider preview */
1870
1987
 
1871
- .media-minimal-skin--video .media-slider__thumbnail {
1872
- --max-width: calc(var(--spacing) * 44);
1873
- --max-height: calc(var(--spacing) * 32);
1874
- --padding: calc(var(--spacing) * -2);
1875
- /**
1876
- Inset is the difference between the container width and the slider (100%) width.
1877
- We only add to the end as we render the time there.
1878
- */
1879
- --thumbnail-inset: calc(100cqi - 100%);
1880
-
1881
- position: absolute;
1882
- bottom: 100%;
1883
- left: clamp(
1884
- calc(var(--max-width) / 2 + var(--padding)),
1988
+ .media-minimal-skin--video .media-slider .media-slider__preview {
1989
+ --preview-end-inset: calc(100cqi - 100%);
1990
+ --preview-left: clamp(
1991
+ calc(var(--max-width) / 2),
1885
1992
  var(--media-slider-pointer),
1886
- calc(100% - var(--max-width) / 2 - var(--padding) + var(--thumbnail-inset))
1993
+ calc(100% - var(--max-width) / 2 + var(--preview-end-inset))
1887
1994
  );
1888
- opacity: 0;
1889
- filter: blur(8px);
1890
- transform-origin: bottom;
1891
- scale: 0.8;
1892
- translate: -50%;
1893
- transition-timing-function: ease-out;
1894
- transition-duration: 150ms;
1895
- transition-property: scale, opacity, filter;
1896
1995
 
1897
1996
  @container media-root (width > 42rem) {
1898
- left: var(--media-slider-pointer);
1899
- }
1900
-
1901
- & .media-thumbnail__image-wrapper {
1902
- position: relative;
1903
-
1904
- &::after {
1905
- position: absolute;
1906
- inset: 0;
1907
- content: "";
1908
- border-radius: inherit;
1909
- box-shadow:
1910
- 0 0 0 1px oklch(0 0 0 / 0.05),
1911
- 0 1px 3px 0 oklch(0 0 0 / 0.2),
1912
- 0 1px 2px -1px oklch(0 0 0 / 0.2);
1913
- }
1997
+ --preview-left: var(--media-slider-pointer);
1914
1998
  }
1915
-
1916
- & .media-thumbnail__image {
1917
- max-width: var(--max-width);
1918
- max-height: var(--max-height);
1919
- }
1920
- }
1921
- .media-minimal-skin--video .media-slider[data-pointing] .media-slider__thumbnail:has([role="img"]:not([data-hidden])) {
1922
- opacity: 1;
1923
- filter: blur(0);
1924
- scale: 1;
1925
- }
1926
- .media-minimal-skin--video
1927
- .media-slider__thumbnail:has([role="img"]:not([data-hidden]))
1928
- + .media-slider__preview
1929
- .media-slider__value {
1930
- display: none;
1931
1999
  }
1932
2000