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