@videojs/react 10.0.0-beta.30 → 10.0.0-beta.32

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 (1563) hide show
  1. package/dist/default/i18n/context.js.map +1 -1
  2. package/dist/default/i18n/create-i18n.js +10 -5
  3. package/dist/default/i18n/create-i18n.js.map +1 -1
  4. package/dist/default/i18n/get-provider-root-props.js +4 -2
  5. package/dist/default/i18n/get-provider-root-props.js.map +1 -1
  6. package/dist/default/i18n/locales/all/register.js.map +1 -1
  7. package/dist/default/i18n/locales/ar/register.js.map +1 -1
  8. package/dist/default/i18n/locales/az/register.js.map +1 -1
  9. package/dist/default/i18n/locales/bg/register.js.map +1 -1
  10. package/dist/default/i18n/locales/bn/register.js.map +1 -1
  11. package/dist/default/i18n/locales/bs/register.js.map +1 -1
  12. package/dist/default/i18n/locales/ca/register.js.map +1 -1
  13. package/dist/default/i18n/locales/cs/register.js.map +1 -1
  14. package/dist/default/i18n/locales/cy/register.js.map +1 -1
  15. package/dist/default/i18n/locales/da/register.js.map +1 -1
  16. package/dist/default/i18n/locales/de/register.js.map +1 -1
  17. package/dist/default/i18n/locales/el/register.js.map +1 -1
  18. package/dist/default/i18n/locales/en/register.js.map +1 -1
  19. package/dist/default/i18n/locales/es/register.js.map +1 -1
  20. package/dist/default/i18n/locales/et/register.js.map +1 -1
  21. package/dist/default/i18n/locales/eu/register.js.map +1 -1
  22. package/dist/default/i18n/locales/fa/register.js.map +1 -1
  23. package/dist/default/i18n/locales/fi/register.js.map +1 -1
  24. package/dist/default/i18n/locales/fr/register.js.map +1 -1
  25. package/dist/default/i18n/locales/gd/register.js.map +1 -1
  26. package/dist/default/i18n/locales/gl/register.js.map +1 -1
  27. package/dist/default/i18n/locales/he/register.js.map +1 -1
  28. package/dist/default/i18n/locales/hi/register.js.map +1 -1
  29. package/dist/default/i18n/locales/hr/register.js.map +1 -1
  30. package/dist/default/i18n/locales/hu/register.js.map +1 -1
  31. package/dist/default/i18n/locales/id/register.js.map +1 -1
  32. package/dist/default/i18n/locales/it/register.js.map +1 -1
  33. package/dist/default/i18n/locales/ja/register.js.map +1 -1
  34. package/dist/default/i18n/locales/ko/register.js.map +1 -1
  35. package/dist/default/i18n/locales/lt/register.js.map +1 -1
  36. package/dist/default/i18n/locales/lv/register.js.map +1 -1
  37. package/dist/default/i18n/locales/mr/register.js.map +1 -1
  38. package/dist/default/i18n/locales/nb/register.js.map +1 -1
  39. package/dist/default/i18n/locales/ne/register.js.map +1 -1
  40. package/dist/default/i18n/locales/nl/register.js.map +1 -1
  41. package/dist/default/i18n/locales/nn/register.js.map +1 -1
  42. package/dist/default/i18n/locales/oc/register.js.map +1 -1
  43. package/dist/default/i18n/locales/pl/register.js.map +1 -1
  44. package/dist/default/i18n/locales/pt/register.js.map +1 -1
  45. package/dist/default/i18n/locales/pt-BR/register.js.map +1 -1
  46. package/dist/default/i18n/locales/pt-PT/register.js.map +1 -1
  47. package/dist/default/i18n/locales/ro/register.js.map +1 -1
  48. package/dist/default/i18n/locales/ru/register.js.map +1 -1
  49. package/dist/default/i18n/locales/sk/register.js.map +1 -1
  50. package/dist/default/i18n/locales/sl/register.js.map +1 -1
  51. package/dist/default/i18n/locales/sr/register.js.map +1 -1
  52. package/dist/default/i18n/locales/sv/register.js.map +1 -1
  53. package/dist/default/i18n/locales/te/register.js.map +1 -1
  54. package/dist/default/i18n/locales/th/register.js.map +1 -1
  55. package/dist/default/i18n/locales/tr/register.js.map +1 -1
  56. package/dist/default/i18n/locales/uk/register.js.map +1 -1
  57. package/dist/default/i18n/locales/vi/register.js.map +1 -1
  58. package/dist/default/i18n/locales/zh/register.js.map +1 -1
  59. package/dist/default/i18n/locales/zh-CN/register.js.map +1 -1
  60. package/dist/default/i18n/locales/zh-TW/register.js.map +1 -1
  61. package/dist/default/i18n/text.js.map +1 -1
  62. package/dist/default/i18n/use-ambient-lang.js.map +1 -1
  63. package/dist/default/i18n/use-lang-root-element.js.map +1 -1
  64. package/dist/default/i18n/use-lazy-translations.js.map +1 -1
  65. package/dist/default/i18n/use-locale-root-notifications.js.map +1 -1
  66. package/dist/default/i18n/use-merged-translations.js +4 -2
  67. package/dist/default/i18n/use-merged-translations.js.map +1 -1
  68. package/dist/default/icons/dist/react/default/airplay-enter.js +5 -2
  69. package/dist/default/icons/dist/react/default/airplay-enter.js.map +1 -1
  70. package/dist/default/icons/dist/react/default/airplay-exit.js +5 -2
  71. package/dist/default/icons/dist/react/default/airplay-exit.js.map +1 -1
  72. package/dist/default/icons/dist/react/default/captions-off.js +5 -2
  73. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
  74. package/dist/default/icons/dist/react/default/captions-on.js +5 -2
  75. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
  76. package/dist/default/icons/dist/react/default/cast-enter.js +5 -2
  77. package/dist/default/icons/dist/react/default/cast-enter.js.map +1 -1
  78. package/dist/default/icons/dist/react/default/cast-exit.js +5 -2
  79. package/dist/default/icons/dist/react/default/cast-exit.js.map +1 -1
  80. package/dist/default/icons/dist/react/default/check.js +5 -2
  81. package/dist/default/icons/dist/react/default/check.js.map +1 -1
  82. package/dist/default/icons/dist/react/default/chevron.js +5 -2
  83. package/dist/default/icons/dist/react/default/chevron.js.map +1 -1
  84. package/dist/default/icons/dist/react/default/fullscreen-enter.js +5 -2
  85. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  86. package/dist/default/icons/dist/react/default/fullscreen-exit.js +5 -2
  87. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  88. package/dist/default/icons/dist/react/default/gear.js +5 -2
  89. package/dist/default/icons/dist/react/default/gear.js.map +1 -1
  90. package/dist/default/icons/dist/react/default/pause.js +5 -2
  91. package/dist/default/icons/dist/react/default/pause.js.map +1 -1
  92. package/dist/default/icons/dist/react/default/pip-enter.js +5 -2
  93. package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
  94. package/dist/default/icons/dist/react/default/pip-exit.js +5 -2
  95. package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
  96. package/dist/default/icons/dist/react/default/play.js +5 -2
  97. package/dist/default/icons/dist/react/default/play.js.map +1 -1
  98. package/dist/default/icons/dist/react/default/quality.js +5 -2
  99. package/dist/default/icons/dist/react/default/quality.js.map +1 -1
  100. package/dist/default/icons/dist/react/default/restart.js +5 -2
  101. package/dist/default/icons/dist/react/default/restart.js.map +1 -1
  102. package/dist/default/icons/dist/react/default/seek.js +5 -2
  103. package/dist/default/icons/dist/react/default/seek.js.map +1 -1
  104. package/dist/default/icons/dist/react/default/speech.js +5 -2
  105. package/dist/default/icons/dist/react/default/speech.js.map +1 -1
  106. package/dist/default/icons/dist/react/default/speed.js +5 -2
  107. package/dist/default/icons/dist/react/default/speed.js.map +1 -1
  108. package/dist/default/icons/dist/react/default/spinner.js +5 -2
  109. package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
  110. package/dist/default/icons/dist/react/default/switches.js +5 -2
  111. package/dist/default/icons/dist/react/default/switches.js.map +1 -1
  112. package/dist/default/icons/dist/react/default/volume-high.js +5 -2
  113. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
  114. package/dist/default/icons/dist/react/default/volume-low.js +5 -2
  115. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
  116. package/dist/default/icons/dist/react/default/volume-off.js +5 -2
  117. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
  118. package/dist/default/icons/dist/react/minimal/airplay-enter.js +5 -2
  119. package/dist/default/icons/dist/react/minimal/airplay-enter.js.map +1 -1
  120. package/dist/default/icons/dist/react/minimal/airplay-exit.js +5 -2
  121. package/dist/default/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  122. package/dist/default/icons/dist/react/minimal/captions-off.js +5 -2
  123. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
  124. package/dist/default/icons/dist/react/minimal/captions-on.js +5 -2
  125. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
  126. package/dist/default/icons/dist/react/minimal/cast-enter.js +5 -2
  127. package/dist/default/icons/dist/react/minimal/cast-enter.js.map +1 -1
  128. package/dist/default/icons/dist/react/minimal/cast-exit.js +5 -2
  129. package/dist/default/icons/dist/react/minimal/cast-exit.js.map +1 -1
  130. package/dist/default/icons/dist/react/minimal/check.js +5 -2
  131. package/dist/default/icons/dist/react/minimal/check.js.map +1 -1
  132. package/dist/default/icons/dist/react/minimal/chevron.js +5 -2
  133. package/dist/default/icons/dist/react/minimal/chevron.js.map +1 -1
  134. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +5 -2
  135. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  136. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +5 -2
  137. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  138. package/dist/default/icons/dist/react/minimal/gear.js +5 -2
  139. package/dist/default/icons/dist/react/minimal/gear.js.map +1 -1
  140. package/dist/default/icons/dist/react/minimal/pause.js +5 -2
  141. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
  142. package/dist/default/icons/dist/react/minimal/pip-enter.js +5 -2
  143. package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
  144. package/dist/default/icons/dist/react/minimal/pip-exit.js +5 -2
  145. package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
  146. package/dist/default/icons/dist/react/minimal/play.js +5 -2
  147. package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
  148. package/dist/default/icons/dist/react/minimal/quality.js +5 -2
  149. package/dist/default/icons/dist/react/minimal/quality.js.map +1 -1
  150. package/dist/default/icons/dist/react/minimal/restart.js +5 -2
  151. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
  152. package/dist/default/icons/dist/react/minimal/seek.js +5 -2
  153. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
  154. package/dist/default/icons/dist/react/minimal/speech.js +5 -2
  155. package/dist/default/icons/dist/react/minimal/speech.js.map +1 -1
  156. package/dist/default/icons/dist/react/minimal/speed.js +5 -2
  157. package/dist/default/icons/dist/react/minimal/speed.js.map +1 -1
  158. package/dist/default/icons/dist/react/minimal/spinner.js +5 -2
  159. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
  160. package/dist/default/icons/dist/react/minimal/switches.js +5 -2
  161. package/dist/default/icons/dist/react/minimal/switches.js.map +1 -1
  162. package/dist/default/icons/dist/react/minimal/volume-high.js +5 -2
  163. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
  164. package/dist/default/icons/dist/react/minimal/volume-low.js +5 -2
  165. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
  166. package/dist/default/icons/dist/react/minimal/volume-off.js +5 -2
  167. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
  168. package/dist/default/icons/index.js +26 -26
  169. package/dist/default/icons/minimal/index.js +26 -26
  170. package/dist/default/index.js +15 -13
  171. package/dist/default/media/audio.js +3 -1
  172. package/dist/default/media/audio.js.map +1 -1
  173. package/dist/default/media/background-video/media.js +5 -3
  174. package/dist/default/media/background-video/media.js.map +1 -1
  175. package/dist/default/media/cloudflare-video/media.js +2 -1
  176. package/dist/default/media/cloudflare-video/media.js.map +1 -1
  177. package/dist/default/media/dash-video/media.js +5 -2
  178. package/dist/default/media/dash-video/media.js.map +1 -1
  179. package/dist/default/media/google-cast/google-cast.js +10 -10
  180. package/dist/default/media/google-cast/google-cast.js.map +1 -1
  181. package/dist/default/media/hls-audio/media.js +5 -2
  182. package/dist/default/media/hls-audio/media.js.map +1 -1
  183. package/dist/default/media/hls-background-video/media.js +15 -20
  184. package/dist/default/media/hls-background-video/media.js.map +1 -1
  185. package/dist/default/media/hls-video/media.js +5 -2
  186. package/dist/default/media/hls-video/media.js.map +1 -1
  187. package/dist/default/media/hlsjs-video/media.js +5 -2
  188. package/dist/default/media/hlsjs-video/media.js.map +1 -1
  189. package/dist/default/media/mux-audio/hls-js.js +5 -2
  190. package/dist/default/media/mux-audio/hls-js.js.map +1 -1
  191. package/dist/default/media/mux-audio/spf.js +5 -2
  192. package/dist/default/media/mux-audio/spf.js.map +1 -1
  193. package/dist/default/media/mux-data/mux-data.js +13 -17
  194. package/dist/default/media/mux-data/mux-data.js.map +1 -1
  195. package/dist/default/media/mux-video/hls-js.js +5 -2
  196. package/dist/default/media/mux-video/hls-js.js.map +1 -1
  197. package/dist/default/media/mux-video/spf.js +5 -2
  198. package/dist/default/media/mux-video/spf.js.map +1 -1
  199. package/dist/default/media/mux-video/storyboard.js +1 -4
  200. package/dist/default/media/mux-video/storyboard.js.map +1 -1
  201. package/dist/default/media/native-hls-video/media.js +5 -2
  202. package/dist/default/media/native-hls-video/media.js.map +1 -1
  203. package/dist/default/media/shaka-video/media.js +5 -2
  204. package/dist/default/media/shaka-video/media.js.map +1 -1
  205. package/dist/default/media/spotify-audio/media.js +2 -1
  206. package/dist/default/media/spotify-audio/media.js.map +1 -1
  207. package/dist/default/media/tiktok-video/media.js +2 -1
  208. package/dist/default/media/tiktok-video/media.js.map +1 -1
  209. package/dist/default/media/twitch-video/media.js +2 -1
  210. package/dist/default/media/twitch-video/media.js.map +1 -1
  211. package/dist/default/media/video.js +9 -1
  212. package/dist/default/media/video.js.map +1 -1
  213. package/dist/default/media/vimeo-video/media.js +2 -1
  214. package/dist/default/media/vimeo-video/media.js.map +1 -1
  215. package/dist/default/media/youtube-video/media.js +2 -1
  216. package/dist/default/media/youtube-video/media.js.map +1 -1
  217. package/dist/default/player/container.js +24 -9
  218. package/dist/default/player/container.js.map +1 -1
  219. package/dist/default/player/context.js +2 -1
  220. package/dist/default/player/context.js.map +1 -1
  221. package/dist/default/player/create-player.js +12 -11
  222. package/dist/default/player/create-player.js.map +1 -1
  223. package/dist/default/presets/audio/minimal-skin.css +347 -250
  224. package/dist/default/presets/audio/minimal-skin.js +66 -38
  225. package/dist/default/presets/audio/minimal-skin.js.map +1 -1
  226. package/dist/default/presets/audio/minimal-skin.tailwind.js +65 -38
  227. package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
  228. package/dist/default/presets/audio/player.js.map +1 -1
  229. package/dist/default/presets/audio/skin.css +328 -238
  230. package/dist/default/presets/audio/skin.js +48 -36
  231. package/dist/default/presets/audio/skin.js.map +1 -1
  232. package/dist/default/presets/audio/skin.tailwind.js +46 -35
  233. package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
  234. package/dist/default/presets/background/player.js.map +1 -1
  235. package/dist/default/presets/background/skin.js.map +1 -1
  236. package/dist/default/presets/live-audio/minimal-skin.css +347 -250
  237. package/dist/default/presets/live-audio/minimal-skin.js +42 -28
  238. package/dist/default/presets/live-audio/minimal-skin.js.map +1 -1
  239. package/dist/default/presets/live-audio/minimal-skin.tailwind.js +41 -25
  240. package/dist/default/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
  241. package/dist/default/presets/live-audio/player.js.map +1 -1
  242. package/dist/default/presets/live-audio/skin.css +328 -238
  243. package/dist/default/presets/live-audio/skin.js +24 -25
  244. package/dist/default/presets/live-audio/skin.js.map +1 -1
  245. package/dist/default/presets/live-audio/skin.tailwind.js +22 -22
  246. package/dist/default/presets/live-audio/skin.tailwind.js.map +1 -1
  247. package/dist/default/presets/live-video/minimal-skin.css +435 -365
  248. package/dist/default/presets/live-video/minimal-skin.js +103 -83
  249. package/dist/default/presets/live-video/minimal-skin.js.map +1 -1
  250. package/dist/default/presets/live-video/minimal-skin.tailwind.js +104 -83
  251. package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  252. package/dist/default/presets/live-video/player.js.map +1 -1
  253. package/dist/default/presets/live-video/skin.css +385 -320
  254. package/dist/default/presets/live-video/skin.js +87 -81
  255. package/dist/default/presets/live-video/skin.js.map +1 -1
  256. package/dist/default/presets/live-video/skin.tailwind.js +87 -81
  257. package/dist/default/presets/live-video/skin.tailwind.js.map +1 -1
  258. package/dist/default/presets/video/minimal-skin.css +435 -365
  259. package/dist/default/presets/video/minimal-skin.js +131 -91
  260. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  261. package/dist/default/presets/video/minimal-skin.tailwind.js +127 -96
  262. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  263. package/dist/default/presets/video/player.js.map +1 -1
  264. package/dist/default/presets/video/skin.css +385 -320
  265. package/dist/default/presets/video/skin.js +115 -91
  266. package/dist/default/presets/video/skin.js.map +1 -1
  267. package/dist/default/presets/video/skin.tailwind.js +111 -95
  268. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  269. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +10 -9
  270. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  271. package/dist/default/skins/dist/default/default/tailwind/components/badge.js +1 -1
  272. package/dist/default/skins/dist/default/default/tailwind/components/badge.js.map +1 -1
  273. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  274. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  275. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js +1 -1
  276. package/dist/default/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
  277. package/dist/default/skins/dist/default/default/tailwind/components/button.js +6 -6
  278. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  279. package/dist/default/skins/dist/default/default/tailwind/components/container.js +1 -1
  280. package/dist/default/skins/dist/default/default/tailwind/components/container.js.map +1 -1
  281. package/dist/default/skins/dist/default/default/tailwind/components/controls-backdrop.js +7 -0
  282. package/dist/default/skins/dist/default/default/tailwind/components/controls-backdrop.js.map +1 -0
  283. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  284. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  285. package/dist/default/skins/dist/default/default/tailwind/components/dialog.js +15 -0
  286. package/dist/default/skins/dist/default/default/tailwind/components/dialog.js.map +1 -0
  287. package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -1
  288. package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  289. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js +3 -2
  290. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -1
  291. package/dist/default/skins/dist/default/default/tailwind/components/menu.js +16 -11
  292. package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  293. package/dist/default/skins/dist/default/default/tailwind/components/popup.js +5 -4
  294. package/dist/default/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  295. package/dist/default/skins/dist/default/default/tailwind/components/poster.js +2 -2
  296. package/dist/default/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  297. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +13 -13
  298. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  299. package/dist/default/skins/dist/default/default/tailwind/components/surface.js +1 -1
  300. package/dist/default/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  301. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js +2 -2
  302. package/dist/default/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  303. package/dist/default/skins/dist/default/default/tailwind/components/time.js +2 -2
  304. package/dist/default/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  305. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +18 -17
  306. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  307. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +10 -10
  308. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  309. package/dist/default/skins/dist/default/minimal/tailwind/components/badge.js +1 -1
  310. package/dist/default/skins/dist/default/minimal/tailwind/components/badge.js.map +1 -1
  311. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  312. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  313. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
  314. package/dist/default/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  315. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +6 -6
  316. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  317. package/dist/default/skins/dist/default/minimal/tailwind/components/container.js +1 -1
  318. package/dist/default/skins/dist/default/minimal/tailwind/components/container.js.map +1 -1
  319. package/dist/default/skins/dist/default/minimal/tailwind/components/controls-backdrop.js +7 -0
  320. package/dist/default/skins/dist/default/minimal/tailwind/components/controls-backdrop.js.map +1 -0
  321. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  322. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  323. package/dist/default/skins/dist/default/minimal/tailwind/components/dialog.js +15 -0
  324. package/dist/default/skins/dist/default/minimal/tailwind/components/dialog.js.map +1 -0
  325. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  326. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  327. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js +5 -4
  328. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -1
  329. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +16 -11
  330. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  331. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js +5 -4
  332. package/dist/default/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  333. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js +2 -2
  334. package/dist/default/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  335. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +12 -12
  336. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  337. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js +2 -2
  338. package/dist/default/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  339. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js +3 -3
  340. package/dist/default/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  341. package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js +1 -1
  342. package/dist/default/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -1
  343. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +20 -20
  344. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  345. package/dist/default/ui/airplay-button/airplay-button.js.map +1 -1
  346. package/dist/default/ui/alert-dialog/alert-dialog-root.js +14 -45
  347. package/dist/default/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  348. package/dist/default/ui/alert-dialog/index.js +1 -2
  349. package/dist/default/ui/alert-dialog/index.parts.js +11 -9
  350. package/dist/default/ui/alert-dialog/index.parts.js.map +1 -1
  351. package/dist/default/ui/audio-track/use-audio-track-options.js +2 -2
  352. package/dist/default/ui/audio-track/use-audio-track-options.js.map +1 -1
  353. package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js +11 -11
  354. package/dist/default/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -1
  355. package/dist/default/ui/buffering-indicator/buffering-indicator.js +7 -7
  356. package/dist/default/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  357. package/dist/default/ui/captions-button/captions-button.js.map +1 -1
  358. package/dist/default/ui/captions-radio-group/captions-radio-group.js +11 -11
  359. package/dist/default/ui/captions-radio-group/captions-radio-group.js.map +1 -1
  360. package/dist/default/ui/captions-radio-group/use-captions-options.js +2 -3
  361. package/dist/default/ui/captions-radio-group/use-captions-options.js.map +1 -1
  362. package/dist/default/ui/controls/context.js.map +1 -1
  363. package/dist/default/ui/controls/controls-backdrop.js +28 -0
  364. package/dist/default/ui/controls/controls-backdrop.js.map +1 -0
  365. package/dist/default/ui/controls/controls-content.js +27 -0
  366. package/dist/default/ui/controls/controls-content.js.map +1 -0
  367. package/dist/default/ui/controls/controls-root.js +5 -20
  368. package/dist/default/ui/controls/controls-root.js.map +1 -1
  369. package/dist/default/ui/controls/index.parts.js +5 -1
  370. package/dist/default/ui/controls/index.parts.js.map +1 -1
  371. package/dist/default/ui/create-context-part.js.map +1 -1
  372. package/dist/default/ui/create-media-button.js.map +1 -1
  373. package/dist/default/ui/dialog/context.js +17 -0
  374. package/dist/default/ui/dialog/context.js.map +1 -0
  375. package/dist/default/ui/dialog/dialog-backdrop.js +26 -0
  376. package/dist/default/ui/dialog/dialog-backdrop.js.map +1 -0
  377. package/dist/default/ui/dialog/dialog-close.js +29 -0
  378. package/dist/default/ui/dialog/dialog-close.js.map +1 -0
  379. package/dist/default/ui/dialog/dialog-description.js +14 -0
  380. package/dist/default/ui/dialog/dialog-description.js.map +1 -0
  381. package/dist/default/ui/dialog/dialog-popup.js +28 -0
  382. package/dist/default/ui/dialog/dialog-popup.js.map +1 -0
  383. package/dist/default/ui/dialog/dialog-root.js +23 -0
  384. package/dist/default/ui/dialog/dialog-root.js.map +1 -0
  385. package/dist/default/ui/dialog/dialog-title.js +14 -0
  386. package/dist/default/ui/dialog/dialog-title.js.map +1 -0
  387. package/dist/default/ui/dialog/dialog-trigger.js +30 -0
  388. package/dist/default/ui/dialog/dialog-trigger.js.map +1 -0
  389. package/dist/default/ui/dialog/index.js +3 -0
  390. package/dist/default/ui/dialog/index.parts.js +22 -0
  391. package/dist/default/ui/dialog/index.parts.js.map +1 -0
  392. package/dist/default/ui/dialog/use-dialog-root.js +59 -0
  393. package/dist/default/ui/dialog/use-dialog-root.js.map +1 -0
  394. package/dist/default/ui/error-dialog/context.js +1 -0
  395. package/dist/default/ui/error-dialog/context.js.map +1 -1
  396. package/dist/default/ui/error-dialog/error-dialog-close.js +3 -2
  397. package/dist/default/ui/error-dialog/error-dialog-close.js.map +1 -1
  398. package/dist/default/ui/error-dialog/error-dialog-description.js +3 -2
  399. package/dist/default/ui/error-dialog/error-dialog-description.js.map +1 -1
  400. package/dist/default/ui/error-dialog/error-dialog-root.js +19 -34
  401. package/dist/default/ui/error-dialog/error-dialog-root.js.map +1 -1
  402. package/dist/default/ui/error-dialog/error-dialog-title.js +3 -2
  403. package/dist/default/ui/error-dialog/error-dialog-title.js.map +1 -1
  404. package/dist/default/ui/error-dialog/index.parts.js +5 -3
  405. package/dist/default/ui/error-dialog/index.parts.js.map +1 -1
  406. package/dist/default/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  407. package/dist/default/ui/gesture/use-doubletap-gesture.js +6 -0
  408. package/dist/default/ui/gesture/use-doubletap-gesture.js.map +1 -1
  409. package/dist/default/ui/gesture/use-tap-gesture.js +6 -0
  410. package/dist/default/ui/gesture/use-tap-gesture.js.map +1 -1
  411. package/dist/default/ui/hooks/create-radio-options-hook.js.map +1 -1
  412. package/dist/default/ui/hooks/use-button.js +15 -14
  413. package/dist/default/ui/hooks/use-button.js.map +1 -1
  414. package/dist/default/ui/hooks/use-slider.js +6 -7
  415. package/dist/default/ui/hooks/use-slider.js.map +1 -1
  416. package/dist/default/ui/hotkey/use-hotkey-shortcut.js +6 -0
  417. package/dist/default/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
  418. package/dist/default/ui/hotkey/use-hotkey.js +5 -0
  419. package/dist/default/ui/hotkey/use-hotkey.js.map +1 -1
  420. package/dist/default/ui/input-indicator/use-indicator-visibility.js.map +1 -1
  421. package/dist/default/ui/input-indicator/use-input-indicator-root.js +2 -1
  422. package/dist/default/ui/input-indicator/use-input-indicator-root.js.map +1 -1
  423. package/dist/default/ui/input-indicator/use-rendered-indicator-state.js.map +1 -1
  424. package/dist/default/ui/live-button/live-button.js +7 -10
  425. package/dist/default/ui/live-button/live-button.js.map +1 -1
  426. package/dist/default/ui/menu/context.js +10 -1
  427. package/dist/default/ui/menu/context.js.map +1 -1
  428. package/dist/default/ui/menu/index.parts.js +3 -1
  429. package/dist/default/ui/menu/index.parts.js.map +1 -1
  430. package/dist/default/ui/menu/menu-checkbox-item.js.map +1 -1
  431. package/dist/default/ui/menu/menu-content.js +44 -106
  432. package/dist/default/ui/menu/menu-content.js.map +1 -1
  433. package/dist/default/ui/menu/menu-item-indicator.js.map +1 -1
  434. package/dist/default/ui/menu/menu-item.js +22 -20
  435. package/dist/default/ui/menu/menu-item.js.map +1 -1
  436. package/dist/default/ui/menu/menu-keyboard.js.map +1 -1
  437. package/dist/default/ui/menu/menu-popup.js +69 -0
  438. package/dist/default/ui/menu/menu-popup.js.map +1 -0
  439. package/dist/default/ui/menu/menu-radio-item.js.map +1 -1
  440. package/dist/default/ui/menu/menu-root.js +28 -27
  441. package/dist/default/ui/menu/menu-root.js.map +1 -1
  442. package/dist/default/ui/menu/menu-trigger.js +2 -3
  443. package/dist/default/ui/menu/menu-trigger.js.map +1 -1
  444. package/dist/default/ui/menu/use-menu-group.js +2 -1
  445. package/dist/default/ui/menu/use-menu-group.js.map +1 -1
  446. package/dist/default/ui/play-button/play-button.js +8 -8
  447. package/dist/default/ui/play-button/play-button.js.map +1 -1
  448. package/dist/default/ui/playback-rate/use-playback-rate-options.js +2 -2
  449. package/dist/default/ui/playback-rate/use-playback-rate-options.js.map +1 -1
  450. package/dist/default/ui/playback-rate-button/playback-rate-button.js +8 -8
  451. package/dist/default/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  452. package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js +11 -11
  453. package/dist/default/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -1
  454. package/dist/default/ui/popover/context.js +1 -0
  455. package/dist/default/ui/popover/context.js.map +1 -1
  456. package/dist/default/ui/popover/popover-popup.js +7 -3
  457. package/dist/default/ui/popover/popover-popup.js.map +1 -1
  458. package/dist/default/ui/popover/popover-root.js +1 -1
  459. package/dist/default/ui/popover/popover-root.js.map +1 -1
  460. package/dist/default/ui/popover/use-popup-position.js +2 -1
  461. package/dist/default/ui/popover/use-popup-position.js.map +1 -1
  462. package/dist/default/ui/poster/poster.js +11 -13
  463. package/dist/default/ui/poster/poster.js.map +1 -1
  464. package/dist/default/ui/quality/use-quality-options.js +2 -3
  465. package/dist/default/ui/quality/use-quality-options.js.map +1 -1
  466. package/dist/default/ui/quality-radio-group/quality-radio-group.js +12 -12
  467. package/dist/default/ui/quality-radio-group/quality-radio-group.js.map +1 -1
  468. package/dist/default/ui/seek-button/seek-button.js +8 -8
  469. package/dist/default/ui/seek-button/seek-button.js.map +1 -1
  470. package/dist/default/ui/seek-indicator/context.js.map +1 -1
  471. package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +1 -1
  472. package/dist/default/ui/slider/context.js.map +1 -1
  473. package/dist/default/ui/slider/slider-root.js.map +1 -1
  474. package/dist/default/ui/slider/slider-thumbnail.js.map +1 -1
  475. package/dist/default/ui/status-announcer/status-announcer.js.map +1 -1
  476. package/dist/default/ui/status-indicator/context.js.map +1 -1
  477. package/dist/default/ui/status-indicator/index.parts.js.map +1 -1
  478. package/dist/default/ui/status-indicator/status-indicator-root.js +2 -1
  479. package/dist/default/ui/status-indicator/status-indicator-root.js.map +1 -1
  480. package/dist/default/ui/thumbnail/thumbnail.js +5 -6
  481. package/dist/default/ui/thumbnail/thumbnail.js.map +1 -1
  482. package/dist/default/ui/time/time-group.js +7 -7
  483. package/dist/default/ui/time/time-group.js.map +1 -1
  484. package/dist/default/ui/time/time-separator.js +4 -4
  485. package/dist/default/ui/time/time-separator.js.map +1 -1
  486. package/dist/default/ui/time/time-value.js +5 -5
  487. package/dist/default/ui/time/time-value.js.map +1 -1
  488. package/dist/default/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -1
  489. package/dist/default/ui/time-slider/time-slider-chapters/time-slider-chapters.js +1 -1
  490. package/dist/default/ui/time-slider/time-slider-root.js.map +1 -1
  491. package/dist/default/ui/title/title.js +5 -6
  492. package/dist/default/ui/title/title.js.map +1 -1
  493. package/dist/default/ui/tooltip/context.js +1 -0
  494. package/dist/default/ui/tooltip/context.js.map +1 -1
  495. package/dist/default/ui/tooltip/tooltip-popup.js +7 -3
  496. package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
  497. package/dist/default/ui/tooltip/tooltip-provider.js.map +1 -1
  498. package/dist/default/ui/tooltip/tooltip-root.js +4 -2
  499. package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
  500. package/dist/default/ui/tooltip/tooltip-shortcut.js.map +1 -1
  501. package/dist/default/ui/volume-indicator/context.js.map +1 -1
  502. package/dist/default/ui/volume-indicator/index.parts.js.map +1 -1
  503. package/dist/default/ui/volume-indicator/volume-indicator-fill.js +3 -2
  504. package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
  505. package/dist/default/ui/volume-indicator/volume-indicator-root.js +2 -1
  506. package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +1 -1
  507. package/dist/default/ui/volume-popover/context.js +13 -0
  508. package/dist/default/ui/volume-popover/context.js.map +1 -0
  509. package/dist/default/ui/volume-popover/index.js +2 -0
  510. package/dist/default/ui/volume-popover/index.parts.js +14 -0
  511. package/dist/default/ui/volume-popover/index.parts.js.map +1 -0
  512. package/dist/default/ui/volume-popover/volume-popover-popup.js +21 -0
  513. package/dist/default/ui/volume-popover/volume-popover-popup.js.map +1 -0
  514. package/dist/default/ui/volume-popover/volume-popover-root.js +47 -0
  515. package/dist/default/ui/volume-popover/volume-popover-root.js.map +1 -0
  516. package/dist/default/ui/volume-popover/volume-popover-trigger.js +32 -0
  517. package/dist/default/ui/volume-popover/volume-popover-trigger.js.map +1 -0
  518. package/dist/default/ui/volume-slider/volume-slider-root.js.map +1 -1
  519. package/dist/default/utils/merge-props.js +20 -30
  520. package/dist/default/utils/merge-props.js.map +1 -1
  521. package/dist/default/utils/use-attach-iframe.js.map +1 -1
  522. package/dist/default/utils/use-attach-media.js +5 -0
  523. package/dist/default/utils/use-attach-media.js.map +1 -1
  524. package/dist/default/utils/use-composed-refs.js +10 -8
  525. package/dist/default/utils/use-composed-refs.js.map +1 -1
  526. package/dist/default/utils/use-destroy.js +7 -9
  527. package/dist/default/utils/use-destroy.js.map +1 -1
  528. package/dist/default/utils/use-force-render.js.map +1 -1
  529. package/dist/default/utils/use-latest-ref.js +4 -2
  530. package/dist/default/utils/use-latest-ref.js.map +1 -1
  531. package/dist/default/utils/use-media-component.js +7 -6
  532. package/dist/default/utils/use-media-component.js.map +1 -1
  533. package/dist/default/utils/use-media-instance.js +8 -7
  534. package/dist/default/utils/use-media-instance.js.map +1 -1
  535. package/dist/default/utils/use-render.js +13 -15
  536. package/dist/default/utils/use-render.js.map +1 -1
  537. package/dist/default/utils/use-safe-id.js +3 -4
  538. package/dist/default/utils/use-safe-id.js.map +1 -1
  539. package/dist/default/utils/use-sync-props.js.map +1 -1
  540. package/dist/dev/i18n/context.d.ts +3 -1
  541. package/dist/dev/i18n/context.d.ts.map +1 -1
  542. package/dist/dev/i18n/context.js.map +1 -1
  543. package/dist/dev/i18n/create-i18n.d.ts +15 -16
  544. package/dist/dev/i18n/create-i18n.d.ts.map +1 -1
  545. package/dist/dev/i18n/create-i18n.js +10 -5
  546. package/dist/dev/i18n/create-i18n.js.map +1 -1
  547. package/dist/dev/i18n/get-provider-root-props.js +4 -2
  548. package/dist/dev/i18n/get-provider-root-props.js.map +1 -1
  549. package/dist/dev/i18n/locales/all/register.js.map +1 -1
  550. package/dist/dev/i18n/locales/ar/register.js.map +1 -1
  551. package/dist/dev/i18n/locales/az/register.js.map +1 -1
  552. package/dist/dev/i18n/locales/bg/register.js.map +1 -1
  553. package/dist/dev/i18n/locales/bn/register.js.map +1 -1
  554. package/dist/dev/i18n/locales/bs/register.js.map +1 -1
  555. package/dist/dev/i18n/locales/ca/register.js.map +1 -1
  556. package/dist/dev/i18n/locales/cs/register.js.map +1 -1
  557. package/dist/dev/i18n/locales/cy/register.js.map +1 -1
  558. package/dist/dev/i18n/locales/da/register.js.map +1 -1
  559. package/dist/dev/i18n/locales/de/register.js.map +1 -1
  560. package/dist/dev/i18n/locales/el/register.js.map +1 -1
  561. package/dist/dev/i18n/locales/en/register.js.map +1 -1
  562. package/dist/dev/i18n/locales/es/register.js.map +1 -1
  563. package/dist/dev/i18n/locales/et/register.js.map +1 -1
  564. package/dist/dev/i18n/locales/eu/register.js.map +1 -1
  565. package/dist/dev/i18n/locales/fa/register.js.map +1 -1
  566. package/dist/dev/i18n/locales/fi/register.js.map +1 -1
  567. package/dist/dev/i18n/locales/fr/register.js.map +1 -1
  568. package/dist/dev/i18n/locales/gd/register.js.map +1 -1
  569. package/dist/dev/i18n/locales/gl/register.js.map +1 -1
  570. package/dist/dev/i18n/locales/he/register.js.map +1 -1
  571. package/dist/dev/i18n/locales/hi/register.js.map +1 -1
  572. package/dist/dev/i18n/locales/hr/register.js.map +1 -1
  573. package/dist/dev/i18n/locales/hu/register.js.map +1 -1
  574. package/dist/dev/i18n/locales/id/register.js.map +1 -1
  575. package/dist/dev/i18n/locales/it/register.js.map +1 -1
  576. package/dist/dev/i18n/locales/ja/register.js.map +1 -1
  577. package/dist/dev/i18n/locales/ko/register.js.map +1 -1
  578. package/dist/dev/i18n/locales/lt/register.js.map +1 -1
  579. package/dist/dev/i18n/locales/lv/register.js.map +1 -1
  580. package/dist/dev/i18n/locales/mr/register.js.map +1 -1
  581. package/dist/dev/i18n/locales/nb/register.js.map +1 -1
  582. package/dist/dev/i18n/locales/ne/register.js.map +1 -1
  583. package/dist/dev/i18n/locales/nl/register.js.map +1 -1
  584. package/dist/dev/i18n/locales/nn/register.js.map +1 -1
  585. package/dist/dev/i18n/locales/oc/register.js.map +1 -1
  586. package/dist/dev/i18n/locales/pl/register.js.map +1 -1
  587. package/dist/dev/i18n/locales/pt/register.js.map +1 -1
  588. package/dist/dev/i18n/locales/pt-BR/register.js.map +1 -1
  589. package/dist/dev/i18n/locales/pt-PT/register.js.map +1 -1
  590. package/dist/dev/i18n/locales/ro/register.js.map +1 -1
  591. package/dist/dev/i18n/locales/ru/register.js.map +1 -1
  592. package/dist/dev/i18n/locales/sk/register.js.map +1 -1
  593. package/dist/dev/i18n/locales/sl/register.js.map +1 -1
  594. package/dist/dev/i18n/locales/sr/register.js.map +1 -1
  595. package/dist/dev/i18n/locales/sv/register.js.map +1 -1
  596. package/dist/dev/i18n/locales/te/register.js.map +1 -1
  597. package/dist/dev/i18n/locales/th/register.js.map +1 -1
  598. package/dist/dev/i18n/locales/tr/register.js.map +1 -1
  599. package/dist/dev/i18n/locales/uk/register.js.map +1 -1
  600. package/dist/dev/i18n/locales/vi/register.js.map +1 -1
  601. package/dist/dev/i18n/locales/zh/register.js.map +1 -1
  602. package/dist/dev/i18n/locales/zh-CN/register.js.map +1 -1
  603. package/dist/dev/i18n/locales/zh-TW/register.js.map +1 -1
  604. package/dist/dev/i18n/text.d.ts.map +1 -1
  605. package/dist/dev/i18n/text.js.map +1 -1
  606. package/dist/dev/i18n/use-ambient-lang.js.map +1 -1
  607. package/dist/dev/i18n/use-lang-root-element.js.map +1 -1
  608. package/dist/dev/i18n/use-lazy-translations.js.map +1 -1
  609. package/dist/dev/i18n/use-locale-root-notifications.js.map +1 -1
  610. package/dist/dev/i18n/use-merged-translations.js +4 -2
  611. package/dist/dev/i18n/use-merged-translations.js.map +1 -1
  612. package/dist/dev/icons/dist/react/default/airplay-enter.js +5 -2
  613. package/dist/dev/icons/dist/react/default/airplay-enter.js.map +1 -1
  614. package/dist/dev/icons/dist/react/default/airplay-exit.js +5 -2
  615. package/dist/dev/icons/dist/react/default/airplay-exit.js.map +1 -1
  616. package/dist/dev/icons/dist/react/default/captions-off.js +5 -2
  617. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
  618. package/dist/dev/icons/dist/react/default/captions-on.js +5 -2
  619. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
  620. package/dist/dev/icons/dist/react/default/cast-enter.js +5 -2
  621. package/dist/dev/icons/dist/react/default/cast-enter.js.map +1 -1
  622. package/dist/dev/icons/dist/react/default/cast-exit.js +5 -2
  623. package/dist/dev/icons/dist/react/default/cast-exit.js.map +1 -1
  624. package/dist/dev/icons/dist/react/default/check.js +5 -2
  625. package/dist/dev/icons/dist/react/default/check.js.map +1 -1
  626. package/dist/dev/icons/dist/react/default/chevron.js +5 -2
  627. package/dist/dev/icons/dist/react/default/chevron.js.map +1 -1
  628. package/dist/dev/icons/dist/react/default/fullscreen-enter.js +5 -2
  629. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  630. package/dist/dev/icons/dist/react/default/fullscreen-exit.js +5 -2
  631. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  632. package/dist/dev/icons/dist/react/default/gear.js +5 -2
  633. package/dist/dev/icons/dist/react/default/gear.js.map +1 -1
  634. package/dist/dev/icons/dist/react/default/index.d.ts +1 -1
  635. package/dist/dev/icons/dist/react/default/pause.js +5 -2
  636. package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
  637. package/dist/dev/icons/dist/react/default/pip-enter.js +5 -2
  638. package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
  639. package/dist/dev/icons/dist/react/default/pip-exit.js +5 -2
  640. package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
  641. package/dist/dev/icons/dist/react/default/play.js +5 -2
  642. package/dist/dev/icons/dist/react/default/play.js.map +1 -1
  643. package/dist/dev/icons/dist/react/default/quality.js +5 -2
  644. package/dist/dev/icons/dist/react/default/quality.js.map +1 -1
  645. package/dist/dev/icons/dist/react/default/restart.js +5 -2
  646. package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
  647. package/dist/dev/icons/dist/react/default/seek.js +5 -2
  648. package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
  649. package/dist/dev/icons/dist/react/default/speech.js +5 -2
  650. package/dist/dev/icons/dist/react/default/speech.js.map +1 -1
  651. package/dist/dev/icons/dist/react/default/speed.js +5 -2
  652. package/dist/dev/icons/dist/react/default/speed.js.map +1 -1
  653. package/dist/dev/icons/dist/react/default/spinner.js +5 -2
  654. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
  655. package/dist/dev/icons/dist/react/default/switches.js +5 -2
  656. package/dist/dev/icons/dist/react/default/switches.js.map +1 -1
  657. package/dist/dev/icons/dist/react/default/volume-high.js +5 -2
  658. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
  659. package/dist/dev/icons/dist/react/default/volume-low.js +5 -2
  660. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
  661. package/dist/dev/icons/dist/react/default/volume-off.js +5 -2
  662. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
  663. package/dist/dev/icons/dist/react/minimal/airplay-enter.js +5 -2
  664. package/dist/dev/icons/dist/react/minimal/airplay-enter.js.map +1 -1
  665. package/dist/dev/icons/dist/react/minimal/airplay-exit.js +5 -2
  666. package/dist/dev/icons/dist/react/minimal/airplay-exit.js.map +1 -1
  667. package/dist/dev/icons/dist/react/minimal/captions-off.js +5 -2
  668. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
  669. package/dist/dev/icons/dist/react/minimal/captions-on.js +5 -2
  670. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
  671. package/dist/dev/icons/dist/react/minimal/cast-enter.js +5 -2
  672. package/dist/dev/icons/dist/react/minimal/cast-enter.js.map +1 -1
  673. package/dist/dev/icons/dist/react/minimal/cast-exit.js +5 -2
  674. package/dist/dev/icons/dist/react/minimal/cast-exit.js.map +1 -1
  675. package/dist/dev/icons/dist/react/minimal/check.js +5 -2
  676. package/dist/dev/icons/dist/react/minimal/check.js.map +1 -1
  677. package/dist/dev/icons/dist/react/minimal/chevron.js +5 -2
  678. package/dist/dev/icons/dist/react/minimal/chevron.js.map +1 -1
  679. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +5 -2
  680. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  681. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +5 -2
  682. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  683. package/dist/dev/icons/dist/react/minimal/gear.js +5 -2
  684. package/dist/dev/icons/dist/react/minimal/gear.js.map +1 -1
  685. package/dist/dev/icons/dist/react/minimal/index.d.ts +1 -1
  686. package/dist/dev/icons/dist/react/minimal/pause.js +5 -2
  687. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
  688. package/dist/dev/icons/dist/react/minimal/pip-enter.js +5 -2
  689. package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
  690. package/dist/dev/icons/dist/react/minimal/pip-exit.js +5 -2
  691. package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
  692. package/dist/dev/icons/dist/react/minimal/play.js +5 -2
  693. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
  694. package/dist/dev/icons/dist/react/minimal/quality.js +5 -2
  695. package/dist/dev/icons/dist/react/minimal/quality.js.map +1 -1
  696. package/dist/dev/icons/dist/react/minimal/restart.js +5 -2
  697. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
  698. package/dist/dev/icons/dist/react/minimal/seek.js +5 -2
  699. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
  700. package/dist/dev/icons/dist/react/minimal/speech.js +5 -2
  701. package/dist/dev/icons/dist/react/minimal/speech.js.map +1 -1
  702. package/dist/dev/icons/dist/react/minimal/speed.js +5 -2
  703. package/dist/dev/icons/dist/react/minimal/speed.js.map +1 -1
  704. package/dist/dev/icons/dist/react/minimal/spinner.js +5 -2
  705. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
  706. package/dist/dev/icons/dist/react/minimal/switches.js +5 -2
  707. package/dist/dev/icons/dist/react/minimal/switches.js.map +1 -1
  708. package/dist/dev/icons/dist/react/minimal/volume-high.js +5 -2
  709. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
  710. package/dist/dev/icons/dist/react/minimal/volume-low.js +5 -2
  711. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
  712. package/dist/dev/icons/dist/react/minimal/volume-off.js +5 -2
  713. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
  714. package/dist/dev/icons/index.js +26 -26
  715. package/dist/dev/icons/minimal/index.js +26 -26
  716. package/dist/dev/index.d.ts +19 -14
  717. package/dist/dev/index.js +15 -13
  718. package/dist/dev/media/audio.js +3 -1
  719. package/dist/dev/media/audio.js.map +1 -1
  720. package/dist/dev/media/background-video/media.js +5 -3
  721. package/dist/dev/media/background-video/media.js.map +1 -1
  722. package/dist/dev/media/cloudflare-video/media.d.ts.map +1 -1
  723. package/dist/dev/media/cloudflare-video/media.js +2 -1
  724. package/dist/dev/media/cloudflare-video/media.js.map +1 -1
  725. package/dist/dev/media/dash-video/media.d.ts.map +1 -1
  726. package/dist/dev/media/dash-video/media.js +5 -2
  727. package/dist/dev/media/dash-video/media.js.map +1 -1
  728. package/dist/dev/media/google-cast/google-cast.d.ts +8 -9
  729. package/dist/dev/media/google-cast/google-cast.d.ts.map +1 -1
  730. package/dist/dev/media/google-cast/google-cast.js +10 -10
  731. package/dist/dev/media/google-cast/google-cast.js.map +1 -1
  732. package/dist/dev/media/hls-audio/media.d.ts.map +1 -1
  733. package/dist/dev/media/hls-audio/media.js +5 -2
  734. package/dist/dev/media/hls-audio/media.js.map +1 -1
  735. package/dist/dev/media/hls-background-video/media.d.ts +13 -19
  736. package/dist/dev/media/hls-background-video/media.d.ts.map +1 -1
  737. package/dist/dev/media/hls-background-video/media.js +15 -20
  738. package/dist/dev/media/hls-background-video/media.js.map +1 -1
  739. package/dist/dev/media/hls-video/media.d.ts.map +1 -1
  740. package/dist/dev/media/hls-video/media.js +5 -2
  741. package/dist/dev/media/hls-video/media.js.map +1 -1
  742. package/dist/dev/media/hlsjs-video/media.d.ts.map +1 -1
  743. package/dist/dev/media/hlsjs-video/media.js +5 -2
  744. package/dist/dev/media/hlsjs-video/media.js.map +1 -1
  745. package/dist/dev/media/mux-audio/hls-js.d.ts.map +1 -1
  746. package/dist/dev/media/mux-audio/hls-js.js +5 -2
  747. package/dist/dev/media/mux-audio/hls-js.js.map +1 -1
  748. package/dist/dev/media/mux-audio/spf.d.ts.map +1 -1
  749. package/dist/dev/media/mux-audio/spf.js +5 -2
  750. package/dist/dev/media/mux-audio/spf.js.map +1 -1
  751. package/dist/dev/media/mux-data/mux-data.d.ts +13 -17
  752. package/dist/dev/media/mux-data/mux-data.d.ts.map +1 -1
  753. package/dist/dev/media/mux-data/mux-data.js +13 -17
  754. package/dist/dev/media/mux-data/mux-data.js.map +1 -1
  755. package/dist/dev/media/mux-video/hls-js.d.ts.map +1 -1
  756. package/dist/dev/media/mux-video/hls-js.js +5 -2
  757. package/dist/dev/media/mux-video/hls-js.js.map +1 -1
  758. package/dist/dev/media/mux-video/spf.d.ts.map +1 -1
  759. package/dist/dev/media/mux-video/spf.js +5 -2
  760. package/dist/dev/media/mux-video/spf.js.map +1 -1
  761. package/dist/dev/media/mux-video/storyboard.js +1 -4
  762. package/dist/dev/media/mux-video/storyboard.js.map +1 -1
  763. package/dist/dev/media/native-hls-video/media.d.ts.map +1 -1
  764. package/dist/dev/media/native-hls-video/media.js +5 -2
  765. package/dist/dev/media/native-hls-video/media.js.map +1 -1
  766. package/dist/dev/media/shaka-video/media.d.ts.map +1 -1
  767. package/dist/dev/media/shaka-video/media.js +5 -2
  768. package/dist/dev/media/shaka-video/media.js.map +1 -1
  769. package/dist/dev/media/spotify-audio/media.d.ts.map +1 -1
  770. package/dist/dev/media/spotify-audio/media.js +2 -1
  771. package/dist/dev/media/spotify-audio/media.js.map +1 -1
  772. package/dist/dev/media/tiktok-video/media.d.ts.map +1 -1
  773. package/dist/dev/media/tiktok-video/media.js +2 -1
  774. package/dist/dev/media/tiktok-video/media.js.map +1 -1
  775. package/dist/dev/media/twitch-video/media.d.ts.map +1 -1
  776. package/dist/dev/media/twitch-video/media.js +2 -1
  777. package/dist/dev/media/twitch-video/media.js.map +1 -1
  778. package/dist/dev/media/video.d.ts +7 -0
  779. package/dist/dev/media/video.d.ts.map +1 -1
  780. package/dist/dev/media/video.js +9 -1
  781. package/dist/dev/media/video.js.map +1 -1
  782. package/dist/dev/media/vimeo-video/media.d.ts.map +1 -1
  783. package/dist/dev/media/vimeo-video/media.js +2 -1
  784. package/dist/dev/media/vimeo-video/media.js.map +1 -1
  785. package/dist/dev/media/youtube-video/media.d.ts.map +1 -1
  786. package/dist/dev/media/youtube-video/media.js +2 -1
  787. package/dist/dev/media/youtube-video/media.js.map +1 -1
  788. package/dist/dev/player/container.d.ts.map +1 -1
  789. package/dist/dev/player/container.js +24 -9
  790. package/dist/dev/player/container.js.map +1 -1
  791. package/dist/dev/player/context.d.ts +14 -12
  792. package/dist/dev/player/context.d.ts.map +1 -1
  793. package/dist/dev/player/context.js +2 -1
  794. package/dist/dev/player/context.js.map +1 -1
  795. package/dist/dev/player/create-player.d.ts +19 -3
  796. package/dist/dev/player/create-player.d.ts.map +1 -1
  797. package/dist/dev/player/create-player.js +12 -11
  798. package/dist/dev/player/create-player.js.map +1 -1
  799. package/dist/dev/presets/audio/minimal-skin.css +347 -250
  800. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
  801. package/dist/dev/presets/audio/minimal-skin.js +66 -38
  802. package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
  803. package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
  804. package/dist/dev/presets/audio/minimal-skin.tailwind.js +65 -38
  805. package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
  806. package/dist/dev/presets/audio/player.d.ts.map +1 -1
  807. package/dist/dev/presets/audio/player.js.map +1 -1
  808. package/dist/dev/presets/audio/skin.css +328 -238
  809. package/dist/dev/presets/audio/skin.d.ts.map +1 -1
  810. package/dist/dev/presets/audio/skin.js +48 -36
  811. package/dist/dev/presets/audio/skin.js.map +1 -1
  812. package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
  813. package/dist/dev/presets/audio/skin.tailwind.js +46 -35
  814. package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
  815. package/dist/dev/presets/background/player.d.ts.map +1 -1
  816. package/dist/dev/presets/background/player.js.map +1 -1
  817. package/dist/dev/presets/background/skin.d.ts.map +1 -1
  818. package/dist/dev/presets/background/skin.js.map +1 -1
  819. package/dist/dev/presets/live-audio/minimal-skin.css +347 -250
  820. package/dist/dev/presets/live-audio/minimal-skin.d.ts +3 -5
  821. package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +1 -1
  822. package/dist/dev/presets/live-audio/minimal-skin.js +42 -28
  823. package/dist/dev/presets/live-audio/minimal-skin.js.map +1 -1
  824. package/dist/dev/presets/live-audio/minimal-skin.tailwind.d.ts.map +1 -1
  825. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js +41 -25
  826. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js.map +1 -1
  827. package/dist/dev/presets/live-audio/player.d.ts.map +1 -1
  828. package/dist/dev/presets/live-audio/player.js.map +1 -1
  829. package/dist/dev/presets/live-audio/skin.css +328 -238
  830. package/dist/dev/presets/live-audio/skin.d.ts +3 -4
  831. package/dist/dev/presets/live-audio/skin.d.ts.map +1 -1
  832. package/dist/dev/presets/live-audio/skin.js +24 -25
  833. package/dist/dev/presets/live-audio/skin.js.map +1 -1
  834. package/dist/dev/presets/live-audio/skin.tailwind.d.ts.map +1 -1
  835. package/dist/dev/presets/live-audio/skin.tailwind.js +22 -22
  836. package/dist/dev/presets/live-audio/skin.tailwind.js.map +1 -1
  837. package/dist/dev/presets/live-video/minimal-skin.css +435 -365
  838. package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -1
  839. package/dist/dev/presets/live-video/minimal-skin.js +103 -83
  840. package/dist/dev/presets/live-video/minimal-skin.js.map +1 -1
  841. package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -1
  842. package/dist/dev/presets/live-video/minimal-skin.tailwind.js +104 -83
  843. package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -1
  844. package/dist/dev/presets/live-video/player.d.ts.map +1 -1
  845. package/dist/dev/presets/live-video/player.js.map +1 -1
  846. package/dist/dev/presets/live-video/skin.css +385 -320
  847. package/dist/dev/presets/live-video/skin.d.ts.map +1 -1
  848. package/dist/dev/presets/live-video/skin.js +87 -81
  849. package/dist/dev/presets/live-video/skin.js.map +1 -1
  850. package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -1
  851. package/dist/dev/presets/live-video/skin.tailwind.js +87 -81
  852. package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -1
  853. package/dist/dev/presets/types.d.ts +13 -10
  854. package/dist/dev/presets/types.d.ts.map +1 -1
  855. package/dist/dev/presets/video/minimal-skin.css +435 -365
  856. package/dist/dev/presets/video/minimal-skin.d.ts +9 -0
  857. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  858. package/dist/dev/presets/video/minimal-skin.js +131 -91
  859. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  860. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  861. package/dist/dev/presets/video/minimal-skin.tailwind.js +127 -96
  862. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  863. package/dist/dev/presets/video/player.d.ts.map +1 -1
  864. package/dist/dev/presets/video/player.js.map +1 -1
  865. package/dist/dev/presets/video/skin.css +385 -320
  866. package/dist/dev/presets/video/skin.d.ts +8 -0
  867. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  868. package/dist/dev/presets/video/skin.js +115 -91
  869. package/dist/dev/presets/video/skin.js.map +1 -1
  870. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  871. package/dist/dev/presets/video/skin.tailwind.js +111 -95
  872. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  873. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +10 -9
  874. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  875. package/dist/dev/skins/dist/default/default/tailwind/components/badge.js +1 -1
  876. package/dist/dev/skins/dist/default/default/tailwind/components/badge.js.map +1 -1
  877. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  878. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  879. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js +1 -1
  880. package/dist/dev/skins/dist/default/default/tailwind/components/button-group.js.map +1 -1
  881. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +6 -6
  882. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  883. package/dist/dev/skins/dist/default/default/tailwind/components/container.js +1 -1
  884. package/dist/dev/skins/dist/default/default/tailwind/components/container.js.map +1 -1
  885. package/dist/dev/skins/dist/default/default/tailwind/components/controls-backdrop.js +7 -0
  886. package/dist/dev/skins/dist/default/default/tailwind/components/controls-backdrop.js.map +1 -0
  887. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  888. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  889. package/dist/dev/skins/dist/default/default/tailwind/components/dialog.js +15 -0
  890. package/dist/dev/skins/dist/default/default/tailwind/components/dialog.js.map +1 -0
  891. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -1
  892. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  893. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js +3 -2
  894. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator.js.map +1 -1
  895. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js +16 -11
  896. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js.map +1 -1
  897. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js +5 -4
  898. package/dist/dev/skins/dist/default/default/tailwind/components/popup.js.map +1 -1
  899. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js +2 -2
  900. package/dist/dev/skins/dist/default/default/tailwind/components/poster.js.map +1 -1
  901. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +13 -13
  902. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  903. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js +1 -1
  904. package/dist/dev/skins/dist/default/default/tailwind/components/surface.js.map +1 -1
  905. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js +2 -2
  906. package/dist/dev/skins/dist/default/default/tailwind/components/thumbnail.js.map +1 -1
  907. package/dist/dev/skins/dist/default/default/tailwind/components/time.js +2 -2
  908. package/dist/dev/skins/dist/default/default/tailwind/components/time.js.map +1 -1
  909. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +18 -17
  910. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  911. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +10 -10
  912. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  913. package/dist/dev/skins/dist/default/minimal/tailwind/components/badge.js +1 -1
  914. package/dist/dev/skins/dist/default/minimal/tailwind/components/badge.js.map +1 -1
  915. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  916. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  917. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js +1 -1
  918. package/dist/dev/skins/dist/default/minimal/tailwind/components/button-group.js.map +1 -1
  919. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +6 -6
  920. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  921. package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js +1 -1
  922. package/dist/dev/skins/dist/default/minimal/tailwind/components/container.js.map +1 -1
  923. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls-backdrop.js +7 -0
  924. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls-backdrop.js.map +1 -0
  925. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  926. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  927. package/dist/dev/skins/dist/default/minimal/tailwind/components/dialog.js +15 -0
  928. package/dist/dev/skins/dist/default/minimal/tailwind/components/dialog.js.map +1 -0
  929. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  930. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  931. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js +5 -4
  932. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator.js.map +1 -1
  933. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js +16 -11
  934. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -1
  935. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js +5 -4
  936. package/dist/dev/skins/dist/default/minimal/tailwind/components/popup.js.map +1 -1
  937. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js +2 -2
  938. package/dist/dev/skins/dist/default/minimal/tailwind/components/poster.js.map +1 -1
  939. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +12 -12
  940. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  941. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js +2 -2
  942. package/dist/dev/skins/dist/default/minimal/tailwind/components/thumbnail.js.map +1 -1
  943. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js +3 -3
  944. package/dist/dev/skins/dist/default/minimal/tailwind/components/time.js.map +1 -1
  945. package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js +1 -1
  946. package/dist/dev/skins/dist/default/minimal/tailwind/components/volume-indicator.js.map +1 -1
  947. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +20 -20
  948. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  949. package/dist/dev/ui/airplay-button/airplay-button.d.ts.map +1 -1
  950. package/dist/dev/ui/airplay-button/airplay-button.js.map +1 -1
  951. package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts +4 -3
  952. package/dist/dev/ui/alert-dialog/alert-dialog-root.d.ts.map +1 -1
  953. package/dist/dev/ui/alert-dialog/alert-dialog-root.js +14 -45
  954. package/dist/dev/ui/alert-dialog/alert-dialog-root.js.map +1 -1
  955. package/dist/dev/ui/alert-dialog/index.d.ts +1 -2
  956. package/dist/dev/ui/alert-dialog/index.js +1 -2
  957. package/dist/dev/ui/alert-dialog/index.parts.d.ts +8 -6
  958. package/dist/dev/ui/alert-dialog/index.parts.js +11 -9
  959. package/dist/dev/ui/alert-dialog/index.parts.js.map +1 -1
  960. package/dist/dev/ui/audio-track/use-audio-track-options.d.ts +2 -2
  961. package/dist/dev/ui/audio-track/use-audio-track-options.js +2 -2
  962. package/dist/dev/ui/audio-track/use-audio-track-options.js.map +1 -1
  963. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts +10 -10
  964. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.d.ts.map +1 -1
  965. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js +11 -11
  966. package/dist/dev/ui/audio-track-radio-group/audio-track-radio-group.js.map +1 -1
  967. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts +7 -7
  968. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -1
  969. package/dist/dev/ui/buffering-indicator/buffering-indicator.js +7 -7
  970. package/dist/dev/ui/buffering-indicator/buffering-indicator.js.map +1 -1
  971. package/dist/dev/ui/captions-button/captions-button.d.ts.map +1 -1
  972. package/dist/dev/ui/captions-button/captions-button.js.map +1 -1
  973. package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts +10 -10
  974. package/dist/dev/ui/captions-radio-group/captions-radio-group.d.ts.map +1 -1
  975. package/dist/dev/ui/captions-radio-group/captions-radio-group.js +11 -11
  976. package/dist/dev/ui/captions-radio-group/captions-radio-group.js.map +1 -1
  977. package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts +2 -3
  978. package/dist/dev/ui/captions-radio-group/use-captions-options.d.ts.map +1 -1
  979. package/dist/dev/ui/captions-radio-group/use-captions-options.js +2 -3
  980. package/dist/dev/ui/captions-radio-group/use-captions-options.js.map +1 -1
  981. package/dist/dev/ui/controls/context.js.map +1 -1
  982. package/dist/dev/ui/controls/controls-backdrop.d.ts +16 -0
  983. package/dist/dev/ui/controls/controls-backdrop.d.ts.map +1 -0
  984. package/dist/dev/ui/controls/controls-backdrop.js +28 -0
  985. package/dist/dev/ui/controls/controls-backdrop.js.map +1 -0
  986. package/dist/dev/ui/controls/controls-content.d.ts +16 -0
  987. package/dist/dev/ui/controls/controls-content.d.ts.map +1 -0
  988. package/dist/dev/ui/controls/controls-content.js +27 -0
  989. package/dist/dev/ui/controls/controls-content.js.map +1 -0
  990. package/dist/dev/ui/controls/controls-root.d.ts +3 -4
  991. package/dist/dev/ui/controls/controls-root.d.ts.map +1 -1
  992. package/dist/dev/ui/controls/controls-root.js +5 -20
  993. package/dist/dev/ui/controls/controls-root.js.map +1 -1
  994. package/dist/dev/ui/controls/index.parts.d.ts +4 -2
  995. package/dist/dev/ui/controls/index.parts.js +5 -1
  996. package/dist/dev/ui/controls/index.parts.js.map +1 -1
  997. package/dist/dev/ui/create-context-part.js.map +1 -1
  998. package/dist/dev/ui/create-media-button.js.map +1 -1
  999. package/dist/dev/ui/dialog/context.d.ts +15 -0
  1000. package/dist/dev/ui/dialog/context.d.ts.map +1 -0
  1001. package/dist/dev/ui/dialog/context.js +17 -0
  1002. package/dist/dev/ui/dialog/context.js.map +1 -0
  1003. package/dist/dev/ui/dialog/dialog-backdrop.d.ts +13 -0
  1004. package/dist/dev/ui/dialog/dialog-backdrop.d.ts.map +1 -0
  1005. package/dist/dev/ui/dialog/dialog-backdrop.js +26 -0
  1006. package/dist/dev/ui/dialog/dialog-backdrop.js.map +1 -0
  1007. package/dist/dev/ui/dialog/dialog-close.d.ts +13 -0
  1008. package/dist/dev/ui/dialog/dialog-close.d.ts.map +1 -0
  1009. package/dist/dev/ui/dialog/dialog-close.js +29 -0
  1010. package/dist/dev/ui/dialog/dialog-close.js.map +1 -0
  1011. package/dist/dev/ui/dialog/dialog-description.d.ts +13 -0
  1012. package/dist/dev/ui/dialog/dialog-description.d.ts.map +1 -0
  1013. package/dist/dev/ui/dialog/dialog-description.js +14 -0
  1014. package/dist/dev/ui/dialog/dialog-description.js.map +1 -0
  1015. package/dist/dev/ui/dialog/dialog-popup.d.ts +13 -0
  1016. package/dist/dev/ui/dialog/dialog-popup.d.ts.map +1 -0
  1017. package/dist/dev/ui/dialog/dialog-popup.js +28 -0
  1018. package/dist/dev/ui/dialog/dialog-popup.js.map +1 -0
  1019. package/dist/dev/ui/dialog/dialog-root.d.ts +18 -0
  1020. package/dist/dev/ui/dialog/dialog-root.d.ts.map +1 -0
  1021. package/dist/dev/ui/dialog/dialog-root.js +23 -0
  1022. package/dist/dev/ui/dialog/dialog-root.js.map +1 -0
  1023. package/dist/dev/ui/dialog/dialog-title.d.ts +13 -0
  1024. package/dist/dev/ui/dialog/dialog-title.d.ts.map +1 -0
  1025. package/dist/dev/ui/dialog/dialog-title.js +14 -0
  1026. package/dist/dev/ui/dialog/dialog-title.js.map +1 -0
  1027. package/dist/dev/ui/dialog/dialog-trigger.d.ts +13 -0
  1028. package/dist/dev/ui/dialog/dialog-trigger.d.ts.map +1 -0
  1029. package/dist/dev/ui/dialog/dialog-trigger.js +30 -0
  1030. package/dist/dev/ui/dialog/dialog-trigger.js.map +1 -0
  1031. package/dist/dev/ui/dialog/index.d.ts +3 -0
  1032. package/dist/dev/ui/dialog/index.js +3 -0
  1033. package/dist/dev/ui/dialog/index.parts.d.ts +13 -0
  1034. package/dist/dev/ui/dialog/index.parts.d.ts.map +1 -0
  1035. package/dist/dev/ui/dialog/index.parts.js +22 -0
  1036. package/dist/dev/ui/dialog/index.parts.js.map +1 -0
  1037. package/dist/dev/ui/dialog/use-dialog-root.js +59 -0
  1038. package/dist/dev/ui/dialog/use-dialog-root.js.map +1 -0
  1039. package/dist/dev/ui/error-dialog/context.d.ts +1 -0
  1040. package/dist/dev/ui/error-dialog/context.d.ts.map +1 -1
  1041. package/dist/dev/ui/error-dialog/context.js +1 -0
  1042. package/dist/dev/ui/error-dialog/context.js.map +1 -1
  1043. package/dist/dev/ui/error-dialog/error-dialog-close.d.ts +4 -3
  1044. package/dist/dev/ui/error-dialog/error-dialog-close.d.ts.map +1 -1
  1045. package/dist/dev/ui/error-dialog/error-dialog-close.js +3 -2
  1046. package/dist/dev/ui/error-dialog/error-dialog-close.js.map +1 -1
  1047. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts +4 -3
  1048. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +1 -1
  1049. package/dist/dev/ui/error-dialog/error-dialog-description.js +3 -2
  1050. package/dist/dev/ui/error-dialog/error-dialog-description.js.map +1 -1
  1051. package/dist/dev/ui/error-dialog/error-dialog-root.d.ts +1 -0
  1052. package/dist/dev/ui/error-dialog/error-dialog-root.d.ts.map +1 -1
  1053. package/dist/dev/ui/error-dialog/error-dialog-root.js +19 -34
  1054. package/dist/dev/ui/error-dialog/error-dialog-root.js.map +1 -1
  1055. package/dist/dev/ui/error-dialog/error-dialog-title.d.ts +4 -3
  1056. package/dist/dev/ui/error-dialog/error-dialog-title.d.ts.map +1 -1
  1057. package/dist/dev/ui/error-dialog/error-dialog-title.js +3 -2
  1058. package/dist/dev/ui/error-dialog/error-dialog-title.js.map +1 -1
  1059. package/dist/dev/ui/error-dialog/index.parts.d.ts +5 -3
  1060. package/dist/dev/ui/error-dialog/index.parts.js +5 -3
  1061. package/dist/dev/ui/error-dialog/index.parts.js.map +1 -1
  1062. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +1 -1
  1063. package/dist/dev/ui/fullscreen-button/fullscreen-button.js.map +1 -1
  1064. package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts +6 -0
  1065. package/dist/dev/ui/gesture/use-doubletap-gesture.d.ts.map +1 -1
  1066. package/dist/dev/ui/gesture/use-doubletap-gesture.js +6 -0
  1067. package/dist/dev/ui/gesture/use-doubletap-gesture.js.map +1 -1
  1068. package/dist/dev/ui/gesture/use-tap-gesture.d.ts +6 -0
  1069. package/dist/dev/ui/gesture/use-tap-gesture.d.ts.map +1 -1
  1070. package/dist/dev/ui/gesture/use-tap-gesture.js +6 -0
  1071. package/dist/dev/ui/gesture/use-tap-gesture.js.map +1 -1
  1072. package/dist/dev/ui/hooks/create-radio-options-hook.js.map +1 -1
  1073. package/dist/dev/ui/hooks/use-button.d.ts +12 -12
  1074. package/dist/dev/ui/hooks/use-button.d.ts.map +1 -1
  1075. package/dist/dev/ui/hooks/use-button.js +15 -14
  1076. package/dist/dev/ui/hooks/use-button.js.map +1 -1
  1077. package/dist/dev/ui/hooks/use-slider.d.ts +2 -3
  1078. package/dist/dev/ui/hooks/use-slider.d.ts.map +1 -1
  1079. package/dist/dev/ui/hooks/use-slider.js +6 -7
  1080. package/dist/dev/ui/hooks/use-slider.js.map +1 -1
  1081. package/dist/dev/ui/hotkey/use-hotkey-shortcut.d.ts +6 -0
  1082. package/dist/dev/ui/hotkey/use-hotkey-shortcut.d.ts.map +1 -1
  1083. package/dist/dev/ui/hotkey/use-hotkey-shortcut.js +6 -0
  1084. package/dist/dev/ui/hotkey/use-hotkey-shortcut.js.map +1 -1
  1085. package/dist/dev/ui/hotkey/use-hotkey.d.ts +5 -0
  1086. package/dist/dev/ui/hotkey/use-hotkey.d.ts.map +1 -1
  1087. package/dist/dev/ui/hotkey/use-hotkey.js +5 -0
  1088. package/dist/dev/ui/hotkey/use-hotkey.js.map +1 -1
  1089. package/dist/dev/ui/input-indicator/use-indicator-visibility.js.map +1 -1
  1090. package/dist/dev/ui/input-indicator/use-input-indicator-root.js +2 -1
  1091. package/dist/dev/ui/input-indicator/use-input-indicator-root.js.map +1 -1
  1092. package/dist/dev/ui/input-indicator/use-rendered-indicator-state.js.map +1 -1
  1093. package/dist/dev/ui/live-button/live-button.d.ts +7 -10
  1094. package/dist/dev/ui/live-button/live-button.d.ts.map +1 -1
  1095. package/dist/dev/ui/live-button/live-button.js +7 -10
  1096. package/dist/dev/ui/live-button/live-button.js.map +1 -1
  1097. package/dist/dev/ui/menu/context.d.ts +3 -2
  1098. package/dist/dev/ui/menu/context.d.ts.map +1 -1
  1099. package/dist/dev/ui/menu/context.js +10 -1
  1100. package/dist/dev/ui/menu/context.js.map +1 -1
  1101. package/dist/dev/ui/menu/index.parts.d.ts +3 -2
  1102. package/dist/dev/ui/menu/index.parts.js +3 -1
  1103. package/dist/dev/ui/menu/index.parts.js.map +1 -1
  1104. package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +1 -1
  1105. package/dist/dev/ui/menu/menu-checkbox-item.js.map +1 -1
  1106. package/dist/dev/ui/menu/menu-content.d.ts +1 -1
  1107. package/dist/dev/ui/menu/menu-content.d.ts.map +1 -1
  1108. package/dist/dev/ui/menu/menu-content.js +44 -106
  1109. package/dist/dev/ui/menu/menu-content.js.map +1 -1
  1110. package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -1
  1111. package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -1
  1112. package/dist/dev/ui/menu/menu-item.d.ts.map +1 -1
  1113. package/dist/dev/ui/menu/menu-item.js +22 -20
  1114. package/dist/dev/ui/menu/menu-item.js.map +1 -1
  1115. package/dist/dev/ui/menu/menu-keyboard.js.map +1 -1
  1116. package/dist/dev/ui/menu/menu-popup.d.ts +13 -0
  1117. package/dist/dev/ui/menu/menu-popup.d.ts.map +1 -0
  1118. package/dist/dev/ui/menu/menu-popup.js +70 -0
  1119. package/dist/dev/ui/menu/menu-popup.js.map +1 -0
  1120. package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -1
  1121. package/dist/dev/ui/menu/menu-radio-item.js.map +1 -1
  1122. package/dist/dev/ui/menu/menu-root.d.ts.map +1 -1
  1123. package/dist/dev/ui/menu/menu-root.js +28 -27
  1124. package/dist/dev/ui/menu/menu-root.js.map +1 -1
  1125. package/dist/dev/ui/menu/menu-trigger.d.ts +2 -3
  1126. package/dist/dev/ui/menu/menu-trigger.d.ts.map +1 -1
  1127. package/dist/dev/ui/menu/menu-trigger.js +2 -3
  1128. package/dist/dev/ui/menu/menu-trigger.js.map +1 -1
  1129. package/dist/dev/ui/menu/use-menu-group.js +2 -1
  1130. package/dist/dev/ui/menu/use-menu-group.js.map +1 -1
  1131. package/dist/dev/ui/play-button/play-button.d.ts +8 -8
  1132. package/dist/dev/ui/play-button/play-button.js +8 -8
  1133. package/dist/dev/ui/play-button/play-button.js.map +1 -1
  1134. package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts +2 -2
  1135. package/dist/dev/ui/playback-rate/use-playback-rate-options.d.ts.map +1 -1
  1136. package/dist/dev/ui/playback-rate/use-playback-rate-options.js +2 -2
  1137. package/dist/dev/ui/playback-rate/use-playback-rate-options.js.map +1 -1
  1138. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts +8 -8
  1139. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts.map +1 -1
  1140. package/dist/dev/ui/playback-rate-button/playback-rate-button.js +8 -8
  1141. package/dist/dev/ui/playback-rate-button/playback-rate-button.js.map +1 -1
  1142. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts +10 -10
  1143. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.d.ts.map +1 -1
  1144. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js +11 -11
  1145. package/dist/dev/ui/playback-rate-radio-group/playback-rate-radio-group.js.map +1 -1
  1146. package/dist/dev/ui/popover/context.d.ts +1 -0
  1147. package/dist/dev/ui/popover/context.d.ts.map +1 -1
  1148. package/dist/dev/ui/popover/context.js +1 -0
  1149. package/dist/dev/ui/popover/context.js.map +1 -1
  1150. package/dist/dev/ui/popover/popover-popup.d.ts +4 -1
  1151. package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
  1152. package/dist/dev/ui/popover/popover-popup.js +7 -3
  1153. package/dist/dev/ui/popover/popover-popup.js.map +1 -1
  1154. package/dist/dev/ui/popover/popover-root.d.ts.map +1 -1
  1155. package/dist/dev/ui/popover/popover-root.js +1 -1
  1156. package/dist/dev/ui/popover/popover-root.js.map +1 -1
  1157. package/dist/dev/ui/popover/use-popup-position.js +2 -1
  1158. package/dist/dev/ui/popover/use-popup-position.js.map +1 -1
  1159. package/dist/dev/ui/poster/poster.d.ts +11 -13
  1160. package/dist/dev/ui/poster/poster.d.ts.map +1 -1
  1161. package/dist/dev/ui/poster/poster.js +11 -13
  1162. package/dist/dev/ui/poster/poster.js.map +1 -1
  1163. package/dist/dev/ui/quality/use-quality-options.d.ts +2 -3
  1164. package/dist/dev/ui/quality/use-quality-options.d.ts.map +1 -1
  1165. package/dist/dev/ui/quality/use-quality-options.js +2 -3
  1166. package/dist/dev/ui/quality/use-quality-options.js.map +1 -1
  1167. package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts +11 -11
  1168. package/dist/dev/ui/quality-radio-group/quality-radio-group.d.ts.map +1 -1
  1169. package/dist/dev/ui/quality-radio-group/quality-radio-group.js +12 -12
  1170. package/dist/dev/ui/quality-radio-group/quality-radio-group.js.map +1 -1
  1171. package/dist/dev/ui/seek-button/seek-button.d.ts +8 -8
  1172. package/dist/dev/ui/seek-button/seek-button.js +8 -8
  1173. package/dist/dev/ui/seek-button/seek-button.js.map +1 -1
  1174. package/dist/dev/ui/seek-indicator/context.js.map +1 -1
  1175. package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +1 -1
  1176. package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +1 -1
  1177. package/dist/dev/ui/slider/context.js.map +1 -1
  1178. package/dist/dev/ui/slider/slider-root.d.ts.map +1 -1
  1179. package/dist/dev/ui/slider/slider-root.js.map +1 -1
  1180. package/dist/dev/ui/slider/slider-thumbnail.d.ts.map +1 -1
  1181. package/dist/dev/ui/slider/slider-thumbnail.js.map +1 -1
  1182. package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +1 -1
  1183. package/dist/dev/ui/status-announcer/status-announcer.js.map +1 -1
  1184. package/dist/dev/ui/status-indicator/context.js.map +1 -1
  1185. package/dist/dev/ui/status-indicator/index.parts.js.map +1 -1
  1186. package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +1 -1
  1187. package/dist/dev/ui/status-indicator/status-indicator-root.js +2 -1
  1188. package/dist/dev/ui/status-indicator/status-indicator-root.js.map +1 -1
  1189. package/dist/dev/ui/thumbnail/thumbnail.d.ts.map +1 -1
  1190. package/dist/dev/ui/thumbnail/thumbnail.js +5 -6
  1191. package/dist/dev/ui/thumbnail/thumbnail.js.map +1 -1
  1192. package/dist/dev/ui/time/time-group.d.ts +7 -7
  1193. package/dist/dev/ui/time/time-group.js +7 -7
  1194. package/dist/dev/ui/time/time-group.js.map +1 -1
  1195. package/dist/dev/ui/time/time-separator.d.ts +4 -4
  1196. package/dist/dev/ui/time/time-separator.js +4 -4
  1197. package/dist/dev/ui/time/time-separator.js.map +1 -1
  1198. package/dist/dev/ui/time/time-value.d.ts +5 -5
  1199. package/dist/dev/ui/time/time-value.d.ts.map +1 -1
  1200. package/dist/dev/ui/time/time-value.js +5 -5
  1201. package/dist/dev/ui/time/time-value.js.map +1 -1
  1202. package/dist/dev/ui/time-slider/time-slider-chapters/slider-segments.js.map +1 -1
  1203. package/dist/dev/ui/time-slider/time-slider-chapters/time-slider-chapters.js +1 -1
  1204. package/dist/dev/ui/time-slider/time-slider-root.d.ts.map +1 -1
  1205. package/dist/dev/ui/time-slider/time-slider-root.js.map +1 -1
  1206. package/dist/dev/ui/title/title.d.ts +5 -6
  1207. package/dist/dev/ui/title/title.d.ts.map +1 -1
  1208. package/dist/dev/ui/title/title.js +5 -6
  1209. package/dist/dev/ui/title/title.js.map +1 -1
  1210. package/dist/dev/ui/tooltip/context.d.ts +1 -0
  1211. package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
  1212. package/dist/dev/ui/tooltip/context.js +1 -0
  1213. package/dist/dev/ui/tooltip/context.js.map +1 -1
  1214. package/dist/dev/ui/tooltip/tooltip-popup.d.ts +4 -1
  1215. package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
  1216. package/dist/dev/ui/tooltip/tooltip-popup.js +7 -3
  1217. package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
  1218. package/dist/dev/ui/tooltip/tooltip-provider.d.ts.map +1 -1
  1219. package/dist/dev/ui/tooltip/tooltip-provider.js.map +1 -1
  1220. package/dist/dev/ui/tooltip/tooltip-root.d.ts +1 -1
  1221. package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
  1222. package/dist/dev/ui/tooltip/tooltip-root.js +4 -2
  1223. package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
  1224. package/dist/dev/ui/tooltip/tooltip-shortcut.d.ts.map +1 -1
  1225. package/dist/dev/ui/tooltip/tooltip-shortcut.js.map +1 -1
  1226. package/dist/dev/ui/volume-indicator/context.js.map +1 -1
  1227. package/dist/dev/ui/volume-indicator/index.parts.js.map +1 -1
  1228. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +3 -2
  1229. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +1 -1
  1230. package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +1 -1
  1231. package/dist/dev/ui/volume-indicator/volume-indicator-root.js +2 -1
  1232. package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +1 -1
  1233. package/dist/dev/ui/volume-popover/context.js +13 -0
  1234. package/dist/dev/ui/volume-popover/context.js.map +1 -0
  1235. package/dist/dev/ui/volume-popover/index.d.ts +2 -0
  1236. package/dist/dev/ui/volume-popover/index.js +2 -0
  1237. package/dist/dev/ui/volume-popover/index.parts.d.ts +9 -0
  1238. package/dist/dev/ui/volume-popover/index.parts.d.ts.map +1 -0
  1239. package/dist/dev/ui/volume-popover/index.parts.js +14 -0
  1240. package/dist/dev/ui/volume-popover/index.parts.js.map +1 -0
  1241. package/dist/dev/ui/volume-popover/volume-popover-popup.d.ts +11 -0
  1242. package/dist/dev/ui/volume-popover/volume-popover-popup.d.ts.map +1 -0
  1243. package/dist/dev/ui/volume-popover/volume-popover-popup.js +21 -0
  1244. package/dist/dev/ui/volume-popover/volume-popover-popup.js.map +1 -0
  1245. package/dist/dev/ui/volume-popover/volume-popover-root.d.ts +14 -0
  1246. package/dist/dev/ui/volume-popover/volume-popover-root.d.ts.map +1 -0
  1247. package/dist/dev/ui/volume-popover/volume-popover-root.js +47 -0
  1248. package/dist/dev/ui/volume-popover/volume-popover-root.js.map +1 -0
  1249. package/dist/dev/ui/volume-popover/volume-popover-trigger.d.ts +11 -0
  1250. package/dist/dev/ui/volume-popover/volume-popover-trigger.d.ts.map +1 -0
  1251. package/dist/dev/ui/volume-popover/volume-popover-trigger.js +32 -0
  1252. package/dist/dev/ui/volume-popover/volume-popover-trigger.js.map +1 -0
  1253. package/dist/dev/ui/volume-slider/volume-slider-root.d.ts.map +1 -1
  1254. package/dist/dev/ui/volume-slider/volume-slider-root.js.map +1 -1
  1255. package/dist/dev/utils/merge-props.d.ts +14 -12
  1256. package/dist/dev/utils/merge-props.d.ts.map +1 -1
  1257. package/dist/dev/utils/merge-props.js +20 -30
  1258. package/dist/dev/utils/merge-props.js.map +1 -1
  1259. package/dist/dev/utils/types.d.ts +2 -4
  1260. package/dist/dev/utils/types.d.ts.map +1 -1
  1261. package/dist/dev/utils/use-attach-iframe.js.map +1 -1
  1262. package/dist/dev/utils/use-attach-media.d.ts +5 -0
  1263. package/dist/dev/utils/use-attach-media.d.ts.map +1 -1
  1264. package/dist/dev/utils/use-attach-media.js +5 -0
  1265. package/dist/dev/utils/use-attach-media.js.map +1 -1
  1266. package/dist/dev/utils/use-composed-refs.d.ts +10 -8
  1267. package/dist/dev/utils/use-composed-refs.d.ts.map +1 -1
  1268. package/dist/dev/utils/use-composed-refs.js +10 -8
  1269. package/dist/dev/utils/use-composed-refs.js.map +1 -1
  1270. package/dist/dev/utils/use-destroy.d.ts +7 -9
  1271. package/dist/dev/utils/use-destroy.d.ts.map +1 -1
  1272. package/dist/dev/utils/use-destroy.js +7 -9
  1273. package/dist/dev/utils/use-destroy.js.map +1 -1
  1274. package/dist/dev/utils/use-force-render.js.map +1 -1
  1275. package/dist/dev/utils/use-latest-ref.d.ts +4 -2
  1276. package/dist/dev/utils/use-latest-ref.d.ts.map +1 -1
  1277. package/dist/dev/utils/use-latest-ref.js +4 -2
  1278. package/dist/dev/utils/use-latest-ref.js.map +1 -1
  1279. package/dist/dev/utils/use-media-component.d.ts +7 -6
  1280. package/dist/dev/utils/use-media-component.d.ts.map +1 -1
  1281. package/dist/dev/utils/use-media-component.js +7 -6
  1282. package/dist/dev/utils/use-media-component.js.map +1 -1
  1283. package/dist/dev/utils/use-media-instance.d.ts +8 -7
  1284. package/dist/dev/utils/use-media-instance.d.ts.map +1 -1
  1285. package/dist/dev/utils/use-media-instance.js +8 -7
  1286. package/dist/dev/utils/use-media-instance.js.map +1 -1
  1287. package/dist/dev/utils/use-render.d.ts +11 -14
  1288. package/dist/dev/utils/use-render.d.ts.map +1 -1
  1289. package/dist/dev/utils/use-render.js +13 -15
  1290. package/dist/dev/utils/use-render.js.map +1 -1
  1291. package/dist/dev/utils/use-safe-id.js +3 -4
  1292. package/dist/dev/utils/use-safe-id.js.map +1 -1
  1293. package/dist/dev/utils/use-sync-props.js.map +1 -1
  1294. package/docs/README.md +1 -1
  1295. package/docs/concepts/browser-support.md +16 -8
  1296. package/docs/concepts/bundlers.md +43 -0
  1297. package/docs/concepts/media-sources.md +28 -4
  1298. package/docs/concepts/mux-data.md +3 -3
  1299. package/docs/concepts/overview.md +9 -25
  1300. package/docs/concepts/presets.md +2 -1
  1301. package/docs/concepts/skins.md +538 -465
  1302. package/docs/concepts/typescript.md +34 -0
  1303. package/docs/concepts/ui-components.md +12 -5
  1304. package/docs/concepts/why-videojs.md +14 -8
  1305. package/docs/how-to/add-a-background-video.md +210 -0
  1306. package/docs/how-to/add-a-poster-and-loading-placeholder.md +187 -0
  1307. package/docs/how-to/add-keyboard-shortcuts-and-gestures.md +97 -0
  1308. package/docs/how-to/add-quality-selector.md +249 -0
  1309. package/docs/how-to/autoplay.md +172 -0
  1310. package/docs/how-to/build-with-ai.md +2 -2
  1311. package/docs/how-to/build-your-own-component.md +131 -4
  1312. package/docs/how-to/cast-to-airplay-and-chromecast.md +158 -0
  1313. package/docs/how-to/customize-skins.md +10009 -1574
  1314. package/docs/how-to/go-fullscreen-and-lock-orientation.md +153 -0
  1315. package/docs/how-to/handle-playback-errors.md +92 -0
  1316. package/docs/how-to/installation.md +57 -15
  1317. package/docs/how-to/internationalize-the-player.md +358 -0
  1318. package/docs/how-to/migrate-from-media-chrome.md +94 -63
  1319. package/docs/how-to/migrate-from-mux-player.md +180 -54
  1320. package/docs/how-to/migrate-from-plyr.md +52 -33
  1321. package/docs/how-to/migrate-from-video-js-8.md +42 -34
  1322. package/docs/how-to/play-live-streams.md +135 -0
  1323. package/docs/how-to/remember-user-preferences.md +180 -0
  1324. package/docs/how-to/show-and-hide-controls.md +174 -0
  1325. package/docs/how-to/show-captions-and-subtitles.md +156 -0
  1326. package/docs/how-to/show-timeline-thumbnail-previews.md +163 -0
  1327. package/docs/how-to/use-picture-in-picture.md +150 -0
  1328. package/docs/llms.txt +70 -17
  1329. package/docs/reference/airplay-button.md +18 -18
  1330. package/docs/reference/alert-dialog.md +649 -0
  1331. package/docs/reference/audio-track-radio-group.md +32 -22
  1332. package/docs/reference/audio.md +78 -0
  1333. package/docs/reference/background-video.md +17 -45
  1334. package/docs/reference/buffering-indicator.md +8 -0
  1335. package/docs/reference/captions-button.md +24 -16
  1336. package/docs/reference/captions-radio-group.md +32 -22
  1337. package/docs/reference/cast-button.md +21 -19
  1338. package/docs/reference/cloudflare-video.md +223 -0
  1339. package/docs/reference/controls.md +252 -20
  1340. package/docs/reference/create-i18n.md +7 -3
  1341. package/docs/reference/create-player.md +81 -9
  1342. package/docs/reference/create-selector.md +4 -6
  1343. package/docs/reference/create-translator.md +15 -5
  1344. package/docs/reference/dash-video.md +57 -2
  1345. package/docs/reference/dialog.md +833 -0
  1346. package/docs/reference/error-dialog.md +586 -0
  1347. package/docs/reference/feature-buffer.md +10 -4
  1348. package/docs/reference/feature-controls.md +1 -1
  1349. package/docs/reference/feature-error.md +1 -1
  1350. package/docs/reference/feature-live.md +62 -7
  1351. package/docs/reference/feature-metadata.md +6 -4
  1352. package/docs/reference/feature-orientation-lock.md +1 -1
  1353. package/docs/reference/feature-quality.md +1 -1
  1354. package/docs/reference/feature-remote-playback.md +1 -1
  1355. package/docs/reference/feature-source.md +1 -1
  1356. package/docs/reference/feature-stream-type.md +14 -5
  1357. package/docs/reference/feature-text-tracks.md +5 -3
  1358. package/docs/reference/feature-time.md +1 -1
  1359. package/docs/reference/fullscreen-button.md +23 -23
  1360. package/docs/reference/gesture.md +201 -0
  1361. package/docs/reference/get-i18n-translations.md +5 -5
  1362. package/docs/reference/google-cast.md +4 -4
  1363. package/docs/reference/has-registered-locale.md +2 -2
  1364. package/docs/reference/hls-audio.md +33 -1
  1365. package/docs/reference/hls-background-video.md +75 -0
  1366. package/docs/reference/hls-video.md +45 -1
  1367. package/docs/reference/hlsjs-video.md +648 -3
  1368. package/docs/reference/hotkey.md +188 -0
  1369. package/docs/reference/i-18-n-context.md +92 -0
  1370. package/docs/reference/i18n-provider.md +2 -2
  1371. package/docs/reference/menu.md +476 -132
  1372. package/docs/reference/merge-props.md +56 -0
  1373. package/docs/reference/mute-button.md +26 -26
  1374. package/docs/reference/mux-audio.md +711 -3
  1375. package/docs/reference/mux-background-video.md +34 -0
  1376. package/docs/reference/mux-video.md +759 -12
  1377. package/docs/reference/native-hls-video.md +44 -3
  1378. package/docs/reference/pip-button.md +23 -23
  1379. package/docs/reference/play-button.md +11 -3
  1380. package/docs/reference/playback-rate-button.md +14 -6
  1381. package/docs/reference/playback-rate-radio-group.md +30 -20
  1382. package/docs/reference/player-container.md +22 -31
  1383. package/docs/reference/{player-provider.md → player.md} +11 -9
  1384. package/docs/reference/popover.md +173 -25
  1385. package/docs/reference/poster.md +8 -0
  1386. package/docs/reference/quality-radio-group.md +36 -26
  1387. package/docs/reference/register-i18n.md +2 -2
  1388. package/docs/reference/render-element.md +14 -2
  1389. package/docs/reference/seek-button.md +14 -6
  1390. package/docs/reference/seek-indicator.md +448 -0
  1391. package/docs/reference/shaka-video.md +395 -0
  1392. package/docs/reference/slider.md +316 -6
  1393. package/docs/reference/spotify-audio.md +188 -0
  1394. package/docs/reference/status-announcer.md +341 -0
  1395. package/docs/reference/status-indicator.md +535 -0
  1396. package/docs/reference/thumbnail.md +30 -2
  1397. package/docs/reference/tiktok-video.md +280 -0
  1398. package/docs/reference/time-slider.md +354 -20
  1399. package/docs/reference/time.md +83 -3
  1400. package/docs/reference/title.md +10 -2
  1401. package/docs/reference/tooltip.md +281 -75
  1402. package/docs/reference/translation-phrases.md +1 -1
  1403. package/docs/reference/twitch-video.md +211 -0
  1404. package/docs/reference/use-attach-media.md +59 -0
  1405. package/docs/reference/use-audio-track-options.md +44 -2
  1406. package/docs/reference/use-button.md +6 -2
  1407. package/docs/reference/use-captions-options.md +48 -2
  1408. package/docs/reference/use-composed-refs.md +59 -0
  1409. package/docs/reference/use-container.md +39 -0
  1410. package/docs/reference/use-destroy.md +89 -0
  1411. package/docs/reference/use-dialog-context.md +63 -0
  1412. package/docs/reference/use-double-tap-gesture.md +75 -0
  1413. package/docs/reference/use-error-dialog-context.md +41 -0
  1414. package/docs/reference/use-hotkey-shortcut.md +79 -0
  1415. package/docs/reference/use-hotkey.md +62 -0
  1416. package/docs/reference/use-latest-ref.md +73 -0
  1417. package/docs/reference/use-locale.md +3 -2
  1418. package/docs/reference/use-media-component.md +62 -0
  1419. package/docs/reference/use-media-instance.md +79 -0
  1420. package/docs/reference/use-media.md +31 -2
  1421. package/docs/reference/use-menu-context.md +101 -0
  1422. package/docs/reference/use-optional-container.md +33 -0
  1423. package/docs/reference/use-optional-menu-context.md +101 -0
  1424. package/docs/reference/use-optional-player.md +77 -0
  1425. package/docs/reference/use-playback-rate-options.md +58 -2
  1426. package/docs/reference/use-player-context.md +2 -2
  1427. package/docs/reference/use-player.md +1 -1
  1428. package/docs/reference/use-popover-context.md +95 -0
  1429. package/docs/reference/use-quality-options.md +44 -2
  1430. package/docs/reference/use-selector.md +7 -3
  1431. package/docs/reference/use-slider.md +133 -0
  1432. package/docs/reference/use-snapshot.md +25 -7
  1433. package/docs/reference/use-store.md +10 -6
  1434. package/docs/reference/use-tap-gesture.md +75 -0
  1435. package/docs/reference/use-tooltip-context.md +115 -0
  1436. package/docs/reference/video.md +82 -0
  1437. package/docs/reference/vimeo-video.md +734 -0
  1438. package/docs/reference/volume-indicator.md +601 -0
  1439. package/docs/reference/volume-popover.md +556 -0
  1440. package/docs/reference/volume-slider.md +237 -35
  1441. package/docs/reference/youtube-video.md +339 -0
  1442. package/package.json +33 -38
  1443. package/dist/default/__generated__/skins/default-video/styles/base.css +0 -25
  1444. package/dist/default/__generated__/skins/default-video/styles/buttons.css +0 -266
  1445. package/dist/default/__generated__/skins/default-video/styles/captions.css +0 -22
  1446. package/dist/default/__generated__/skins/default-video/styles/container.css +0 -158
  1447. package/dist/default/__generated__/skins/default-video/styles/controls.css +0 -460
  1448. package/dist/default/__generated__/skins/default-video/styles/dialog.css +0 -169
  1449. package/dist/default/__generated__/skins/default-video/styles/indicator.css +0 -459
  1450. package/dist/default/__generated__/skins/default-video/styles/menus.css +0 -254
  1451. package/dist/default/__generated__/skins/default-video/styles/overlays.css +0 -35
  1452. package/dist/default/__generated__/skins/default-video/styles/popups.css +0 -371
  1453. package/dist/default/__generated__/skins/default-video/styles/poster.css +0 -47
  1454. package/dist/default/__generated__/skins/default-video/styles/sliders.css +0 -436
  1455. package/dist/default/__generated__/skins/default-video/styles/styles.css +0 -2753
  1456. package/dist/default/__generated__/skins/default-video/styles/theme.css +0 -7
  1457. package/dist/default/__generated__/skins/default-video/styles/video.css +0 -29
  1458. package/dist/default/__generated__/skins/minimal-video/styles/base.css +0 -25
  1459. package/dist/default/__generated__/skins/minimal-video/styles/buttons.css +0 -266
  1460. package/dist/default/__generated__/skins/minimal-video/styles/captions.css +0 -22
  1461. package/dist/default/__generated__/skins/minimal-video/styles/container.css +0 -158
  1462. package/dist/default/__generated__/skins/minimal-video/styles/controls.css +0 -182
  1463. package/dist/default/__generated__/skins/minimal-video/styles/dialog.css +0 -77
  1464. package/dist/default/__generated__/skins/minimal-video/styles/indicator.css +0 -322
  1465. package/dist/default/__generated__/skins/minimal-video/styles/menus.css +0 -254
  1466. package/dist/default/__generated__/skins/minimal-video/styles/overlays.css +0 -35
  1467. package/dist/default/__generated__/skins/minimal-video/styles/popups.css +0 -371
  1468. package/dist/default/__generated__/skins/minimal-video/styles/poster.css +0 -47
  1469. package/dist/default/__generated__/skins/minimal-video/styles/sliders.css +0 -436
  1470. package/dist/default/__generated__/skins/minimal-video/styles/styles.css +0 -2246
  1471. package/dist/default/__generated__/skins/minimal-video/styles/theme.css +0 -7
  1472. package/dist/default/__generated__/skins/minimal-video/styles/video.css +0 -29
  1473. package/dist/default/skins/dist/default/default/tailwind/components/error.js +0 -14
  1474. package/dist/default/skins/dist/default/default/tailwind/components/error.js.map +0 -1
  1475. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +0 -7
  1476. package/dist/default/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +0 -1
  1477. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js +0 -7
  1478. package/dist/default/skins/dist/default/default/tailwind/components/overlay.js.map +0 -1
  1479. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js +0 -14
  1480. package/dist/default/skins/dist/default/minimal/tailwind/components/error.js.map +0 -1
  1481. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +0 -7
  1482. package/dist/default/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +0 -1
  1483. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js +0 -7
  1484. package/dist/default/skins/dist/default/minimal/tailwind/components/overlay.js.map +0 -1
  1485. package/dist/default/ui/alert-dialog/alert-dialog-close.js +0 -28
  1486. package/dist/default/ui/alert-dialog/alert-dialog-close.js.map +0 -1
  1487. package/dist/default/ui/alert-dialog/alert-dialog-description.js +0 -13
  1488. package/dist/default/ui/alert-dialog/alert-dialog-description.js.map +0 -1
  1489. package/dist/default/ui/alert-dialog/alert-dialog-popup.js +0 -29
  1490. package/dist/default/ui/alert-dialog/alert-dialog-popup.js.map +0 -1
  1491. package/dist/default/ui/alert-dialog/alert-dialog-title.js +0 -13
  1492. package/dist/default/ui/alert-dialog/alert-dialog-title.js.map +0 -1
  1493. package/dist/default/ui/alert-dialog/context.js +0 -13
  1494. package/dist/default/ui/alert-dialog/context.js.map +0 -1
  1495. package/dist/dev/__generated__/skins/default-video/styles/base.css +0 -25
  1496. package/dist/dev/__generated__/skins/default-video/styles/buttons.css +0 -266
  1497. package/dist/dev/__generated__/skins/default-video/styles/captions.css +0 -22
  1498. package/dist/dev/__generated__/skins/default-video/styles/container.css +0 -158
  1499. package/dist/dev/__generated__/skins/default-video/styles/controls.css +0 -460
  1500. package/dist/dev/__generated__/skins/default-video/styles/dialog.css +0 -169
  1501. package/dist/dev/__generated__/skins/default-video/styles/indicator.css +0 -459
  1502. package/dist/dev/__generated__/skins/default-video/styles/menus.css +0 -254
  1503. package/dist/dev/__generated__/skins/default-video/styles/overlays.css +0 -35
  1504. package/dist/dev/__generated__/skins/default-video/styles/popups.css +0 -371
  1505. package/dist/dev/__generated__/skins/default-video/styles/poster.css +0 -47
  1506. package/dist/dev/__generated__/skins/default-video/styles/sliders.css +0 -436
  1507. package/dist/dev/__generated__/skins/default-video/styles/styles.css +0 -2753
  1508. package/dist/dev/__generated__/skins/default-video/styles/theme.css +0 -7
  1509. package/dist/dev/__generated__/skins/default-video/styles/video.css +0 -29
  1510. package/dist/dev/__generated__/skins/minimal-video/styles/base.css +0 -25
  1511. package/dist/dev/__generated__/skins/minimal-video/styles/buttons.css +0 -266
  1512. package/dist/dev/__generated__/skins/minimal-video/styles/captions.css +0 -22
  1513. package/dist/dev/__generated__/skins/minimal-video/styles/container.css +0 -158
  1514. package/dist/dev/__generated__/skins/minimal-video/styles/controls.css +0 -182
  1515. package/dist/dev/__generated__/skins/minimal-video/styles/dialog.css +0 -77
  1516. package/dist/dev/__generated__/skins/minimal-video/styles/indicator.css +0 -322
  1517. package/dist/dev/__generated__/skins/minimal-video/styles/menus.css +0 -254
  1518. package/dist/dev/__generated__/skins/minimal-video/styles/overlays.css +0 -35
  1519. package/dist/dev/__generated__/skins/minimal-video/styles/popups.css +0 -371
  1520. package/dist/dev/__generated__/skins/minimal-video/styles/poster.css +0 -47
  1521. package/dist/dev/__generated__/skins/minimal-video/styles/sliders.css +0 -436
  1522. package/dist/dev/__generated__/skins/minimal-video/styles/styles.css +0 -2246
  1523. package/dist/dev/__generated__/skins/minimal-video/styles/theme.css +0 -7
  1524. package/dist/dev/__generated__/skins/minimal-video/styles/video.css +0 -29
  1525. package/dist/dev/skins/dist/default/default/tailwind/components/error.js +0 -14
  1526. package/dist/dev/skins/dist/default/default/tailwind/components/error.js.map +0 -1
  1527. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js +0 -7
  1528. package/dist/dev/skins/dist/default/default/tailwind/components/input-indicator-overlay.js.map +0 -1
  1529. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js +0 -7
  1530. package/dist/dev/skins/dist/default/default/tailwind/components/overlay.js.map +0 -1
  1531. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js +0 -14
  1532. package/dist/dev/skins/dist/default/minimal/tailwind/components/error.js.map +0 -1
  1533. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js +0 -7
  1534. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-indicator-overlay.js.map +0 -1
  1535. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js +0 -7
  1536. package/dist/dev/skins/dist/default/minimal/tailwind/components/overlay.js.map +0 -1
  1537. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts +0 -12
  1538. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts.map +0 -1
  1539. package/dist/dev/ui/alert-dialog/alert-dialog-close.js +0 -28
  1540. package/dist/dev/ui/alert-dialog/alert-dialog-close.js.map +0 -1
  1541. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts +0 -12
  1542. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts.map +0 -1
  1543. package/dist/dev/ui/alert-dialog/alert-dialog-description.js +0 -13
  1544. package/dist/dev/ui/alert-dialog/alert-dialog-description.js.map +0 -1
  1545. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts +0 -12
  1546. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts.map +0 -1
  1547. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js +0 -29
  1548. package/dist/dev/ui/alert-dialog/alert-dialog-popup.js.map +0 -1
  1549. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts +0 -12
  1550. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts.map +0 -1
  1551. package/dist/dev/ui/alert-dialog/alert-dialog-title.js +0 -13
  1552. package/dist/dev/ui/alert-dialog/alert-dialog-title.js.map +0 -1
  1553. package/dist/dev/ui/alert-dialog/context.d.ts +0 -13
  1554. package/dist/dev/ui/alert-dialog/context.d.ts.map +0 -1
  1555. package/dist/dev/ui/alert-dialog/context.js +0 -13
  1556. package/dist/dev/ui/alert-dialog/context.js.map +0 -1
  1557. package/docs/concepts/cast.md +0 -131
  1558. package/docs/concepts/i18n.md +0 -317
  1559. package/docs/how-to/add-a-poster-placeholder.md +0 -133
  1560. package/docs/how-to/i18n-override-translations.md +0 -114
  1561. package/docs/how-to/i18n-register-locale.md +0 -74
  1562. package/docs/how-to/i18n-ssr.md +0 -104
  1563. package/docs/how-to/i18n-switch-locale.md +0 -170
@@ -9,9 +9,12 @@ import { HlsJsMedia, hlsMediaDefaultProps } from "@videojs/media/dom/hls-js";
9
9
  //#region src/media/hlsjs-video/media.tsx
10
10
  const HlsJsVideo = forwardRef(function HlsJsVideo({ children, ...props }, ref) {
11
11
  const media = useMediaInstance(HlsJsMedia);
12
+ const attachRef = useAttachMedia(media);
13
+ const composedRef = useComposedRefs(attachRef, ref);
14
+ const htmlProps = useSyncProps(media, props, hlsMediaDefaultProps);
12
15
  return /* @__PURE__ */ jsx("video", {
13
- ref: useComposedRefs(useAttachMedia(media), ref),
14
- ...useSyncProps(media, props, hlsMediaDefaultProps),
16
+ ref: composedRef,
17
+ ...htmlProps,
15
18
  children
16
19
  });
17
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hlsjs-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { HlsJsMedia, hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface HlsJsVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsMediaProps>,\n Partial<HlsMediaProps> {\n children?: ReactNode;\n}\n\nexport const HlsJsVideo = forwardRef<HTMLVideoElement, HlsJsVideoProps>(function HlsJsVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(HlsJsMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace HlsJsVideo {\n export type Props = HlsJsVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,aAAa,WAA8C,SAAS,WAC/E,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CAKzC,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/hlsjs-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { HlsJsMedia, hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface HlsJsVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsMediaProps>, Partial<HlsMediaProps> {\n children?: ReactNode;\n}\n\nexport const HlsJsVideo = forwardRef<HTMLVideoElement, HlsJsVideoProps>(function HlsJsVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(HlsJsMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, hlsMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace HlsJsVideo {\n export type Props = HlsJsVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,aAAa,WAA8C,SAAS,WAC/E,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CACzC,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,oBAAoB;CAEjE,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -14,9 +14,12 @@ const muxAudioDefaultProps = {
14
14
  };
15
15
  const MuxAudio = forwardRef(function MuxAudio({ children, ...props }, ref) {
16
16
  const media = useMediaInstance(MuxMedia);
17
+ const attachRef = useAttachMedia(media);
18
+ const composedRef = useComposedRefs(attachRef, ref);
19
+ const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);
17
20
  return /* @__PURE__ */ jsx("audio", {
18
- ref: useComposedRefs(useAttachMedia(media), ref),
19
- ...useSyncProps(media, props, muxAudioDefaultProps),
21
+ ref: composedRef,
22
+ ...htmlProps,
20
23
  children
21
24
  });
22
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-audio/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxAudioProps\n extends Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAsBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CAKvC,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-audio/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxAudioProps\n extends\n Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAwBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CACvC,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,oBAAoB;CAEjE,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -14,9 +14,12 @@ const muxAudioDefaultProps = {
14
14
  };
15
15
  const MuxAudio = forwardRef(function MuxAudio({ children, ...props }, ref) {
16
16
  const media = useMediaInstance(MuxAudioMedia);
17
+ const attachRef = useAttachMedia(media);
18
+ const composedRef = useComposedRefs(attachRef, ref);
19
+ const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);
17
20
  return /* @__PURE__ */ jsx("audio", {
18
- ref: useComposedRefs(useAttachMedia(media), ref),
19
- ...useSyncProps(media, props, muxAudioDefaultProps),
21
+ ref: composedRef,
22
+ ...htmlProps,
20
23
  children
21
24
  });
22
25
  });
@@ -1 +1 @@
1
- {"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-audio/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsAudioMediaProps } from '@videojs/spf/hls-audio';\nimport { hlsAudioMediaDefaultProps } from '@videojs/spf/hls-audio';\nimport type { MuxMediaProps } from '@videojs/spf/mux-audio';\nimport { MuxAudioMedia, muxMediaDefaultProps } from '@videojs/spf/mux-audio';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxAudioProps\n extends Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsAudioMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsAudioMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsAudioMediaProps, 'src'> & MuxMediaProps = {\n ...hlsAudioMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxAudioMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAsBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-audio/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsAudioMediaProps } from '@videojs/spf/hls-audio';\nimport { hlsAudioMediaDefaultProps } from '@videojs/spf/hls-audio';\nimport type { MuxMediaProps } from '@videojs/spf/mux-audio';\nimport { MuxAudioMedia, muxMediaDefaultProps } from '@videojs/spf/mux-audio';\nimport type { AudioHTMLAttributes, ReactNode } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxAudioProps\n extends\n Omit<AudioHTMLAttributes<HTMLAudioElement>, keyof HlsAudioMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsAudioMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxAudioDefaultProps: Omit<HlsAudioMediaProps, 'src'> & MuxMediaProps = {\n ...hlsAudioMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxAudio = forwardRef<HTMLAudioElement, MuxAudioProps>(function MuxAudio({ children, ...props }, ref) {\n const media = useMediaInstance(MuxAudioMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxAudioDefaultProps);\n\n return (\n <audio ref={composedRef} {...htmlProps}>\n {children}\n </audio>\n );\n});\n\nexport namespace MuxAudio {\n export type Props = MuxAudioProps;\n}\n"],"mappings":";;;;;;;;;;AAwBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAC5C,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,oBAAoB;CAEjE,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -4,28 +4,24 @@ import { useSyncProps } from "../../utils/use-sync-props.js";
4
4
  import { MuxData, muxDataDefaultProps } from "@videojs/media/dom/mux";
5
5
  //#region src/media/mux-data/mux-data.tsx
6
6
  /**
7
- * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding
8
- * player's media.
7
+ * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding player's media.
9
8
  *
10
- * Renders nothing — place it inside the Player as a sibling of the
11
- * media component (e.g. `<MuxVideo />`) and it registers a `MuxData` media
12
- * component with the active media.
9
+ * Renders nothing — place it inside the Player as a sibling of the media component (e.g. `<MuxVideo />`) and it
10
+ * registers a `MuxData` media component with the active media.
13
11
  *
14
- * Mux-hosted playback needs no `envKey`: the view reports the Mux playback ID
15
- * as its `video_id`, which Mux attributes to the owning environment. Set
16
- * `envKey` to monitor sources Mux doesn't host.
12
+ * Mux-hosted playback needs no `envKey`: the view reports the Mux playback ID as its `video_id`, which Mux attributes
13
+ * to the owning environment. Set `envKey` to monitor sources Mux doesn't host.
17
14
  *
18
- * Any media component works. When the media plays through an hls.js or dash.js
19
- * engine, that engine is handed to the Mux Data SDK so the view also carries
20
- * stream-level detail such as rendition switches and request timing.
15
+ * Any media component works. When the media plays through an hls.js or dash.js engine, that engine is handed to the Mux
16
+ * Data SDK so the view also carries stream-level detail such as rendition switches and request timing.
21
17
  *
22
18
  * @example
23
- * ```tsx
24
- * <Player>
25
- * <MuxVideo source={{ playbackId: 'abc123' }} />
26
- * <MuxData playerSoftwareName="mux-video" />
27
- * </Player>
28
- * ```
19
+ * ```tsx
20
+ * <Player>
21
+ * <MuxVideo source={{ playbackId: 'abc123' }} />
22
+ * <MuxData playerSoftwareName="mux-video" />
23
+ * </Player>;
24
+ * ```;
29
25
  */
30
26
  function MuxData$1(props) {
31
27
  const component = useMediaComponent(MuxData);
@@ -1 +1 @@
1
- {"version":3,"file":"mux-data.js","names":["MuxData","MuxDataComponent"],"sources":["../../../../src/media/mux-data/mux-data.tsx"],"sourcesContent":["'use client';\n\nimport type { MuxDataProps as MuxDataComponentProps } from '@videojs/media/dom/mux';\nimport { MuxData as MuxDataComponent, muxDataDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type MuxDataProps = Partial<MuxDataComponentProps>;\n\n/**\n * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding\n * player's media.\n *\n * Renders nothing — place it inside the Player as a sibling of the\n * media component (e.g. `<MuxVideo />`) and it registers a `MuxData` media\n * component with the active media.\n *\n * Mux-hosted playback needs no `envKey`: the view reports the Mux playback ID\n * as its `video_id`, which Mux attributes to the owning environment. Set\n * `envKey` to monitor sources Mux doesn't host.\n *\n * Any media component works. When the media plays through an hls.js or dash.js\n * engine, that engine is handed to the Mux Data SDK so the view also carries\n * stream-level detail such as rendition switches and request timing.\n *\n * @example\n * ```tsx\n * <Player>\n * <MuxVideo source={{ playbackId: 'abc123' }} />\n * <MuxData playerSoftwareName=\"mux-video\" />\n * </Player>\n * ```\n */\nexport function MuxData(props: MuxDataProps): ReactNode {\n const component = useMediaComponent(MuxDataComponent);\n const { MuxDataSdk, ...rest } = props;\n\n // `useSyncProps` treats an `undefined` prop as \"reset to the default\", but\n // `MuxDataSdk={undefined}` is how consumers disable monitoring. Sync it here\n // instead: passing the prop wins even when its value is `undefined`, and only\n // omitting it falls back to the default SDK.\n const sdk = 'MuxDataSdk' in props ? MuxDataSdk : muxDataDefaultProps.MuxDataSdk;\n if (component.MuxDataSdk !== sdk) component.MuxDataSdk = sdk;\n\n useSyncProps(component, rest, muxDataDefaultProps);\n\n return null;\n}\n\nexport namespace MuxData {\n export type Props = MuxDataProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,SAAgBA,UAAQ,OAAgC;CACtD,MAAM,YAAY,kBAAkBC,OAAgB;CACpD,MAAM,EAAE,YAAY,GAAG,SAAS;CAMhC,MAAM,MAAM,gBAAgB,QAAQ,aAAa,oBAAoB;CACrE,IAAI,UAAU,eAAe,KAAK,UAAU,aAAa;CAEzD,aAAa,WAAW,MAAM,mBAAmB;CAEjD,OAAO;AACT"}
1
+ {"version":3,"file":"mux-data.js","names":["MuxData","MuxDataComponent"],"sources":["../../../../src/media/mux-data/mux-data.tsx"],"sourcesContent":["'use client';\n\nimport type { MuxDataProps as MuxDataComponentProps } from '@videojs/media/dom/mux';\nimport { MuxData as MuxDataComponent, muxDataDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode } from 'react';\n\nimport { useMediaComponent } from '../../utils/use-media-component';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport type MuxDataProps = Partial<MuxDataComponentProps>;\n\n/**\n * Adds [Mux Data](https://www.mux.com/data) monitoring to the surrounding player's media.\n *\n * Renders nothing — place it inside the Player as a sibling of the media component (e.g. `<MuxVideo />`) and it\n * registers a `MuxData` media component with the active media.\n *\n * Mux-hosted playback needs no `envKey`: the view reports the Mux playback ID as its `video_id`, which Mux attributes\n * to the owning environment. Set `envKey` to monitor sources Mux doesn't host.\n *\n * Any media component works. When the media plays through an hls.js or dash.js engine, that engine is handed to the Mux\n * Data SDK so the view also carries stream-level detail such as rendition switches and request timing.\n *\n * @example\n * ```tsx\n * <Player>\n * <MuxVideo source={{ playbackId: 'abc123' }} />\n * <MuxData playerSoftwareName=\"mux-video\" />\n * </Player>;\n * ```;\n */\nexport function MuxData(props: MuxDataProps): ReactNode {\n const component = useMediaComponent(MuxDataComponent);\n const { MuxDataSdk, ...rest } = props;\n\n // `useSyncProps` treats an `undefined` prop as \"reset to the default\", but\n // `MuxDataSdk={undefined}` is how consumers disable monitoring. Sync it here\n // instead: passing the prop wins even when its value is `undefined`, and only\n // omitting it falls back to the default SDK.\n const sdk = 'MuxDataSdk' in props ? MuxDataSdk : muxDataDefaultProps.MuxDataSdk;\n\n if (component.MuxDataSdk !== sdk) component.MuxDataSdk = sdk;\n\n useSyncProps(component, rest, muxDataDefaultProps);\n\n return null;\n}\n\nexport namespace MuxData {\n export type Props = MuxDataProps;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,SAAgBA,UAAQ,OAAgC;CACtD,MAAM,YAAY,kBAAkBC,OAAgB;CACpD,MAAM,EAAE,YAAY,GAAG,SAAS;CAMhC,MAAM,MAAM,gBAAgB,QAAQ,aAAa,oBAAoB;CAErE,IAAI,UAAU,eAAe,KAAK,UAAU,aAAa;CAEzD,aAAa,WAAW,MAAM,mBAAmB;CAEjD,OAAO;AACT"}
@@ -15,9 +15,12 @@ const muxVideoDefaultProps = {
15
15
  };
16
16
  const MuxVideo = forwardRef(function MuxVideo({ children, ...props }, ref) {
17
17
  const media = useMediaInstance(MuxMedia);
18
+ const attachRef = useAttachMedia(media);
19
+ const composedRef = useComposedRefs(attachRef, ref);
20
+ const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);
18
21
  return /* @__PURE__ */ jsxs("video", {
19
- ref: useComposedRefs(useAttachMedia(media), ref),
20
- ...useSyncProps(media, props, muxVideoDefaultProps),
22
+ ref: composedRef,
23
+ ...htmlProps,
21
24
  children: [/* @__PURE__ */ jsx(MuxStoryboard, { media }), children]
22
25
  });
23
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-video/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAuBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CAKvC,OACE,qBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAArC,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
1
+ {"version":3,"file":"hls-js.js","names":[],"sources":["../../../../src/media/mux-video/hls-js.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsMediaProps } from '@videojs/media/dom/hls-js';\nimport { hlsMediaDefaultProps } from '@videojs/media/dom/hls-js';\nimport type { MuxMediaProps } from '@videojs/media/dom/mux';\nimport { MuxMedia, muxMediaDefaultProps } from '@videojs/media/dom/mux';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `source` comes from `MuxMediaProps` only: `MuxSource` extends `HlsSource` with\n// Mux identity fields, so the narrower type has to win.\nexport interface MuxVideoProps\n extends\n Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsMediaProps, 'source'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsMediaProps, 'source'> & MuxMediaProps = {\n ...hlsMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAyBA,MAAM,uBAAsE;CAC1E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,QAAQ;CACvC,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,oBAAoB;CAEjE,OACE,qBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAA7B,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
@@ -15,9 +15,12 @@ const muxVideoDefaultProps = {
15
15
  };
16
16
  const MuxVideo = forwardRef(function MuxVideo({ children, ...props }, ref) {
17
17
  const media = useMediaInstance(MuxVideoMedia);
18
+ const attachRef = useAttachMedia(media);
19
+ const composedRef = useComposedRefs(attachRef, ref);
20
+ const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);
18
21
  return /* @__PURE__ */ jsxs("video", {
19
- ref: useComposedRefs(useAttachMedia(media), ref),
20
- ...useSyncProps(media, props, muxVideoDefaultProps),
22
+ ref: composedRef,
23
+ ...htmlProps,
21
24
  children: [/* @__PURE__ */ jsx(MuxStoryboard, { media }), children]
22
25
  });
23
26
  });
@@ -1 +1 @@
1
- {"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-video/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsVideoMediaProps } from '@videojs/spf/hls-video';\nimport { hlsVideoMediaDefaultProps } from '@videojs/spf/hls-video';\nimport type { MuxMediaProps } from '@videojs/spf/mux-video';\nimport { MuxVideoMedia, muxMediaDefaultProps } from '@videojs/spf/mux-video';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsVideoMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsVideoMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsVideoMediaProps, 'src'> & MuxMediaProps = {\n ...hlsVideoMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAuBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAK5C,OACE,qBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,oBAGN;EAArC,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
1
+ {"version":3,"file":"spf.js","names":[],"sources":["../../../../src/media/mux-video/spf.tsx"],"sourcesContent":["'use client';\n\nimport type { HlsVideoMediaProps } from '@videojs/spf/hls-video';\nimport { hlsVideoMediaDefaultProps } from '@videojs/spf/hls-video';\nimport type { MuxMediaProps } from '@videojs/spf/mux-video';\nimport { MuxVideoMedia, muxMediaDefaultProps } from '@videojs/spf/mux-video';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\nimport { MuxStoryboard } from './storyboard';\n\n// `src` and `source` come from `MuxMediaProps`: the Mux Media owns both, and its\n// `source` is the structured Mux one rather than the generic engine's.\nexport interface MuxVideoProps\n extends\n Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof HlsVideoMediaProps | keyof MuxMediaProps>,\n Partial<Omit<HlsVideoMediaProps, 'src'>>,\n Partial<MuxMediaProps> {\n children?: ReactNode;\n}\n\nconst muxVideoDefaultProps: Omit<HlsVideoMediaProps, 'src'> & MuxMediaProps = {\n ...hlsVideoMediaDefaultProps,\n ...muxMediaDefaultProps,\n};\n\nexport const MuxVideo = forwardRef<HTMLVideoElement, MuxVideoProps>(function MuxVideo({ children, ...props }, ref) {\n const media = useMediaInstance(MuxVideoMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, muxVideoDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n <MuxStoryboard media={media} />\n {children}\n </video>\n );\n});\n\nexport namespace MuxVideo {\n export type Props = MuxVideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAyBA,MAAM,uBAAwE;CAC5E,GAAG;CACH,GAAG;AACL;AAEA,MAAa,WAAW,WAA4C,SAAS,SAAS,EAAE,UAAU,GAAG,SAAS,KAAK;CACjH,MAAM,QAAQ,iBAAiB,aAAa;CAC5C,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,oBAAoB;CAEjE,OACE,qBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAA7B,UAAA,CACE,oBAAC,eAAD,EAAsB,MAAQ,CAAA,GAC7B,QACI;;AAEX,CAAC"}
@@ -3,10 +3,7 @@ import { MediaStreamTypes } from "@videojs/media";
3
3
  import { useCallback, useSyncExternalStore } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  //#region src/media/mux-video/storyboard.tsx
6
- /**
7
- * Renders the storyboard track in its own component so media changes don't
8
- * re-render the whole media component.
9
- */
6
+ /** Renders the storyboard track in its own component so media changes don't re-render the whole media component. */
10
7
  function MuxStoryboard({ media }) {
11
8
  const subscribe = useCallback((onChange) => {
12
9
  let cancelled = false;
@@ -1 +1 @@
1
- {"version":3,"file":"storyboard.js","names":[],"sources":["../../../../src/media/mux-video/storyboard.tsx"],"sourcesContent":["'use client';\n\nimport { type MediaStreamType, MediaStreamTypes } from '@videojs/media';\nimport type { MuxContentData } from '@videojs/media/dom/mux/source';\nimport { useCallback, useSyncExternalStore } from 'react';\n\n/**\n * What the storyboard track needs from whichever Mux Media renders it.\n *\n * Structural on purpose: the hls.js-backed `MuxMedia` and the SPF-backed one\n * satisfy it identically, so this component carries no engine.\n */\nexport interface MuxStoryboardMedia {\n readonly streamType: MediaStreamType | undefined;\n readonly contentData: MuxContentData;\n addEventListener(type: string, listener: () => void): void;\n removeEventListener(type: string, listener: () => void): void;\n}\n\n/**\n * Renders the storyboard track in its own component so media changes don't\n * re-render the whole media component.\n */\nexport function MuxStoryboard({ media }: { media: MuxStoryboardMedia }) {\n const subscribe = useCallback(\n (onChange: () => void) => {\n // `useSyncProps` writes `src` / `source` during render and those setters\n // dispatch `sourcechange` synchronously. Defer (and coalesce) notifications\n // so we never schedule an update while another component is rendering.\n let cancelled = false;\n let scheduled = false;\n const notify = () => {\n if (scheduled) return;\n scheduled = true;\n queueMicrotask(() => {\n scheduled = false;\n if (!cancelled) onChange();\n });\n };\n media.addEventListener('streamtypechange', notify);\n media.addEventListener('sourcechange', notify);\n return () => {\n cancelled = true;\n media.removeEventListener('streamtypechange', notify);\n media.removeEventListener('sourcechange', notify);\n };\n },\n [media]\n );\n\n // The stream type is detected at runtime and live streams have no storyboard.\n // The '' fallback keeps the snapshot a string rather than sometimes undefined.\n const getSnapshot = () => (media.streamType === MediaStreamTypes.LIVE ? '' : (media.contentData.storyboard ?? ''));\n const src = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n\n if (!src) return null;\n return <track kind=\"metadata\" label=\"thumbnails\" src={src} default />;\n}\n"],"mappings":";;;;;;;;;AAuBA,SAAgB,cAAc,EAAE,SAAwC;CACtE,MAAM,YAAY,aACf,aAAyB;EAIxB,IAAI,YAAY;EAChB,IAAI,YAAY;EAChB,MAAM,eAAe;GACnB,IAAI,WAAW;GACf,YAAY;GACZ,qBAAqB;IACnB,YAAY;IACZ,IAAI,CAAC,WAAW,SAAS;GAC3B,CAAC;EACH;EACA,MAAM,iBAAiB,oBAAoB,MAAM;EACjD,MAAM,iBAAiB,gBAAgB,MAAM;EAC7C,aAAa;GACX,YAAY;GACZ,MAAM,oBAAoB,oBAAoB,MAAM;GACpD,MAAM,oBAAoB,gBAAgB,MAAM;EAClD;CACF,GACA,CAAC,KAAK,CACR;CAIA,MAAM,oBAAqB,MAAM,eAAe,iBAAiB,OAAO,KAAM,MAAM,YAAY,cAAc;CAC9G,MAAM,MAAM,qBAAqB,WAAW,aAAa,WAAW;CAEpE,IAAI,CAAC,KAAK,OAAO;CACjB,OAAO,oBAAC,SAAD;EAAO,MAAK;EAAW,OAAM;EAAkB;EAAK,SAAA;CAAS,CAAA;AACtE"}
1
+ {"version":3,"file":"storyboard.js","names":[],"sources":["../../../../src/media/mux-video/storyboard.tsx"],"sourcesContent":["'use client';\n\nimport { type MediaStreamType, MediaStreamTypes } from '@videojs/media';\nimport type { MuxContentData } from '@videojs/media/dom/mux/source';\nimport { useCallback, useSyncExternalStore } from 'react';\n\n/**\n * What the storyboard track needs from whichever Mux Media renders it.\n *\n * Structural on purpose: the hls.js-backed `MuxMedia` and the SPF-backed one satisfy it identically, so this component\n * carries no engine.\n */\nexport interface MuxStoryboardMedia {\n readonly streamType: MediaStreamType | undefined;\n readonly contentData: MuxContentData;\n addEventListener(type: string, listener: () => void): void;\n removeEventListener(type: string, listener: () => void): void;\n}\n\n/** Renders the storyboard track in its own component so media changes don't re-render the whole media component. */\nexport function MuxStoryboard({ media }: { media: MuxStoryboardMedia }) {\n const subscribe = useCallback(\n (onChange: () => void) => {\n // `useSyncProps` writes `src` / `source` during render and those setters\n // dispatch `sourcechange` synchronously. Defer (and coalesce) notifications\n // so we never schedule an update while another component is rendering.\n let cancelled = false;\n let scheduled = false;\n const notify = () => {\n if (scheduled) return;\n\n scheduled = true;\n queueMicrotask(() => {\n scheduled = false;\n\n if (!cancelled) onChange();\n });\n };\n\n media.addEventListener('streamtypechange', notify);\n media.addEventListener('sourcechange', notify);\n return () => {\n cancelled = true;\n media.removeEventListener('streamtypechange', notify);\n media.removeEventListener('sourcechange', notify);\n };\n },\n [media]\n );\n\n // The stream type is detected at runtime and live streams have no storyboard.\n // The '' fallback keeps the snapshot a string rather than sometimes undefined.\n const getSnapshot = () => (media.streamType === MediaStreamTypes.LIVE ? '' : (media.contentData.storyboard ?? ''));\n const src = useSyncExternalStore(subscribe, getSnapshot, getSnapshot);\n if (!src) return null;\n\n return <track kind=\"metadata\" label=\"thumbnails\" src={src} default />;\n}\n"],"mappings":";;;;;;AAoBA,SAAgB,cAAc,EAAE,SAAwC;CACtE,MAAM,YAAY,aACf,aAAyB;EAIxB,IAAI,YAAY;EAChB,IAAI,YAAY;EAChB,MAAM,eAAe;GACnB,IAAI,WAAW;GAEf,YAAY;GACZ,qBAAqB;IACnB,YAAY;IAEZ,IAAI,CAAC,WAAW,SAAS;GAC3B,CAAC;EACH;EAEA,MAAM,iBAAiB,oBAAoB,MAAM;EACjD,MAAM,iBAAiB,gBAAgB,MAAM;EAC7C,aAAa;GACX,YAAY;GACZ,MAAM,oBAAoB,oBAAoB,MAAM;GACpD,MAAM,oBAAoB,gBAAgB,MAAM;EAClD;CACF,GACA,CAAC,KAAK,CACR;CAIA,MAAM,oBAAqB,MAAM,eAAe,iBAAiB,OAAO,KAAM,MAAM,YAAY,cAAc;CAC9G,MAAM,MAAM,qBAAqB,WAAW,aAAa,WAAW;CACpE,IAAI,CAAC,KAAK,OAAO;CAEjB,OAAO,oBAAC,SAAD;EAAO,MAAK;EAAW,OAAM;EAAkB;EAAK,SAAA;CAAS,CAAA;AACtE"}
@@ -9,9 +9,12 @@ import { NativeHlsMedia, nativeHlsMediaDefaultProps } from "@videojs/media/dom/n
9
9
  //#region src/media/native-hls-video/media.tsx
10
10
  const NativeHlsVideo = forwardRef(function NativeHlsVideo({ children, ...props }, ref) {
11
11
  const media = useMediaInstance(NativeHlsMedia);
12
+ const attachRef = useAttachMedia(media);
13
+ const composedRef = useComposedRefs(attachRef, ref);
14
+ const htmlProps = useSyncProps(media, props, nativeHlsMediaDefaultProps);
12
15
  return /* @__PURE__ */ jsx("video", {
13
- ref: useComposedRefs(useAttachMedia(media), ref),
14
- ...useSyncProps(media, props, nativeHlsMediaDefaultProps),
16
+ ref: composedRef,
17
+ ...htmlProps,
15
18
  children
16
19
  });
17
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/native-hls-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { NativeHlsMediaProps } from '@videojs/media/dom/native-hls';\nimport { NativeHlsMedia, nativeHlsMediaDefaultProps } from '@videojs/media/dom/native-hls';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface NativeHlsVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof NativeHlsMediaProps>,\n Partial<NativeHlsMediaProps> {\n children?: ReactNode;\n}\n\nexport const NativeHlsVideo = forwardRef<HTMLVideoElement, NativeHlsVideoProps>(function NativeHlsVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(NativeHlsMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, nativeHlsMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace NativeHlsVideo {\n export type Props = NativeHlsVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,iBAAiB,WAAkD,SAAS,eACvF,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,cAAc;CAK7C,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,0BAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/native-hls-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { NativeHlsMediaProps } from '@videojs/media/dom/native-hls';\nimport { NativeHlsMedia, nativeHlsMediaDefaultProps } from '@videojs/media/dom/native-hls';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface NativeHlsVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof NativeHlsMediaProps>, Partial<NativeHlsMediaProps> {\n children?: ReactNode;\n}\n\nexport const NativeHlsVideo = forwardRef<HTMLVideoElement, NativeHlsVideoProps>(function NativeHlsVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(NativeHlsMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, nativeHlsMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace NativeHlsVideo {\n export type Props = NativeHlsVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,iBAAiB,WAAkD,SAAS,eACvF,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,cAAc;CAC7C,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,0BAA0B;CAEvE,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -9,9 +9,12 @@ import { ShakaMedia, shakaMediaDefaultProps } from "@videojs/media/dom/shaka";
9
9
  //#region src/media/shaka-video/media.tsx
10
10
  const ShakaVideo = forwardRef(function ShakaVideo({ children, ...props }, ref) {
11
11
  const media = useMediaInstance(ShakaMedia);
12
+ const attachRef = useAttachMedia(media);
13
+ const composedRef = useComposedRefs(attachRef, ref);
14
+ const htmlProps = useSyncProps(media, props, shakaMediaDefaultProps);
12
15
  return /* @__PURE__ */ jsx("video", {
13
- ref: useComposedRefs(useAttachMedia(media), ref),
14
- ...useSyncProps(media, props, shakaMediaDefaultProps),
16
+ ref: composedRef,
17
+ ...htmlProps,
15
18
  children
16
19
  });
17
20
  });
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/shaka-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { ShakaMediaProps } from '@videojs/media/dom/shaka';\nimport { ShakaMedia, shakaMediaDefaultProps } from '@videojs/media/dom/shaka';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface ShakaVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof ShakaMediaProps>,\n Partial<ShakaMediaProps> {\n children?: ReactNode;\n}\n\nexport const ShakaVideo = forwardRef<HTMLVideoElement, ShakaVideoProps>(function ShakaVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(ShakaMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, shakaMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace ShakaVideo {\n export type Props = ShakaVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,aAAa,WAA8C,SAAS,WAC/E,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CAKzC,OACE,oBAAC,SAAD;EAAO,KAJW,gBADF,eAAe,KACW,GAAG,GAIvB;EAAG,GAHT,aAAa,OAAO,OAAO,sBAGN;EAClC;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/shaka-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { ShakaMediaProps } from '@videojs/media/dom/shaka';\nimport { ShakaMedia, shakaMediaDefaultProps } from '@videojs/media/dom/shaka';\nimport type { ReactNode, VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useAttachMedia } from '../../utils/use-attach-media';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface ShakaVideoProps\n extends Omit<VideoHTMLAttributes<HTMLVideoElement>, keyof ShakaMediaProps>, Partial<ShakaMediaProps> {\n children?: ReactNode;\n}\n\nexport const ShakaVideo = forwardRef<HTMLVideoElement, ShakaVideoProps>(function ShakaVideo(\n { children, ...props },\n ref\n) {\n const media = useMediaInstance(ShakaMedia);\n const attachRef = useAttachMedia(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const htmlProps = useSyncProps(media, props, shakaMediaDefaultProps);\n\n return (\n <video ref={composedRef} {...htmlProps}>\n {children}\n </video>\n );\n});\n\nexport namespace ShakaVideo {\n export type Props = ShakaVideoProps;\n}\n"],"mappings":";;;;;;;;;AAiBA,MAAa,aAAa,WAA8C,SAAS,WAC/E,EAAE,UAAU,GAAG,SACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CACzC,MAAM,YAAY,eAAe,KAAK;CACtC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,YAAY,aAAa,OAAO,OAAO,sBAAsB;CAEnE,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -10,7 +10,8 @@ import { SpotifyMedia, buildSpotifyIframeSrc, spotifyMediaDefaultProps } from "@
10
10
  const SpotifyAudio = forwardRef(function SpotifyAudio({ children, ...rawProps }, ref) {
11
11
  const media = useMediaInstance(SpotifyMedia);
12
12
  const props = { ...rawProps };
13
- const composedRef = useComposedRefs(useAttachIframe(media), ref);
13
+ const attachRef = useAttachIframe(media);
14
+ const composedRef = useComposedRefs(attachRef, ref);
14
15
  const [initialSrc] = useState(() => buildSpotifyIframeSrc(props.src || props.source?.src || "", {
15
16
  ...spotifyMediaDefaultProps,
16
17
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/spotify-audio/media.tsx"],"sourcesContent":["'use client';\n\nimport type { SpotifyMediaProps } from '@videojs/media/dom/spotify';\nimport { buildSpotifyIframeSrc, SpotifyMedia, spotifyMediaDefaultProps } from '@videojs/media/dom/spotify';\nimport type { CSSProperties, ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface SpotifyAudioProps extends Partial<SpotifyMediaProps> {\n children?: ReactNode;\n}\n\nexport const SpotifyAudio = forwardRef<HTMLIFrameElement, SpotifyAudioProps>(function SpotifyAudio(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(SpotifyMedia);\n const props: Partial<SpotifyMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name an entity, so honor it when `src` is absent.\n buildSpotifyIframeSrc(props.src || props.source?.src || '', { ...spotifyMediaDefaultProps, ...props })\n );\n const { style, ...iframeProps } = useSyncProps<SpotifyMediaProps, Record<string, unknown>>(\n media,\n props,\n spotifyMediaDefaultProps\n ) as Record<string, unknown> & { style?: CSSProperties };\n\n return (\n <iframe\n title=\"Spotify audio player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture\"\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.spotify?.referrerPolicy}\n {...iframeProps}\n // Without Spotify's own chrome the embed is a transport and nothing else:\n // its player UI would otherwise show through whatever skin is drawn over it.\n // Inline so a `className` cannot put it back on screen, merged so a\n // consumer's own styles survive. A hidden iframe still loads and plays.\n style={props.controls ? style : { ...style, display: 'none' }}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace SpotifyAudio {\n export type Props = SpotifyAudioProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,eAAe,WAAiD,SAAS,aACpF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,YAAY;CAC3C,MAAM,QAA8D,EAAE,GAAG,SAAS;CAElF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,sBAAsB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAA0B,GAAG;CAAM,CAAC,CACvG;CACA,MAAM,EAAE,OAAO,GAAG,gBAAgB,aAChC,OACA,OACA,wBACF;CAEA,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,SAAS;EAC/C,GAAI;EAKJ,OAAO,MAAM,WAAW,QAAQ;GAAE,GAAG;GAAO,SAAS;EAAO;EAC5D,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/spotify-audio/media.tsx"],"sourcesContent":["'use client';\n\nimport type { SpotifyMediaProps } from '@videojs/media/dom/spotify';\nimport { buildSpotifyIframeSrc, SpotifyMedia, spotifyMediaDefaultProps } from '@videojs/media/dom/spotify';\nimport type { CSSProperties, ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface SpotifyAudioProps extends Partial<SpotifyMediaProps> {\n children?: ReactNode;\n}\n\nexport const SpotifyAudio = forwardRef<HTMLIFrameElement, SpotifyAudioProps>(function SpotifyAudio(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(SpotifyMedia);\n const props: Partial<SpotifyMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name an entity, so honor it when `src` is absent.\n buildSpotifyIframeSrc(props.src || props.source?.src || '', { ...spotifyMediaDefaultProps, ...props })\n );\n const { style, ...iframeProps } = useSyncProps<SpotifyMediaProps, Record<string, unknown>>(\n media,\n props,\n spotifyMediaDefaultProps\n ) as Record<string, unknown> & { style?: CSSProperties };\n\n return (\n <iframe\n title=\"Spotify audio player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture\"\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.spotify?.referrerPolicy}\n {...iframeProps}\n // Without Spotify's own chrome the embed is a transport and nothing else:\n // its player UI would otherwise show through whatever skin is drawn over it.\n // Inline so a `className` cannot put it back on screen, merged so a\n // consumer's own styles survive. A hidden iframe still loads and plays.\n style={props.controls ? style : { ...style, display: 'none' }}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace SpotifyAudio {\n export type Props = SpotifyAudioProps;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAa,eAAe,WAAiD,SAAS,aACpF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,YAAY;CAC3C,MAAM,QAA8D,EAAE,GAAG,SAAS;CAClF,MAAM,YAAY,gBAAgB,KAAK;CACvC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,sBAAsB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAA0B,GAAG;CAAM,CAAC,CACvG;CACA,MAAM,EAAE,OAAO,GAAG,gBAAgB,aAChC,OACA,OACA,wBACF;CAEA,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,SAAS;EAC/C,GAAI;EAKJ,OAAO,MAAM,WAAW,QAAQ;GAAE,GAAG;GAAO,SAAS;EAAO;EAC5D,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
@@ -10,7 +10,8 @@ import { TikTokMedia, buildTikTokIframeSrc, tiktokMediaDefaultProps } from "@vid
10
10
  const TikTokVideo = forwardRef(function TikTokVideo({ children, ...rawProps }, ref) {
11
11
  const media = useMediaInstance(TikTokMedia);
12
12
  const props = { ...rawProps };
13
- const composedRef = useComposedRefs(useAttachIframe(media), ref);
13
+ const attachRef = useAttachIframe(media);
14
+ const composedRef = useComposedRefs(attachRef, ref);
14
15
  const [initialSrc] = useState(() => buildTikTokIframeSrc(props.src || props.source?.src || "", {
15
16
  ...tiktokMediaDefaultProps,
16
17
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/tiktok-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { TikTokMediaProps } from '@videojs/media/dom/tiktok';\nimport { buildTikTokIframeSrc, TikTokMedia, tiktokMediaDefaultProps } from '@videojs/media/dom/tiktok';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface TikTokVideoProps extends Partial<TikTokMediaProps> {\n children?: ReactNode;\n}\n\nexport const TikTokVideo = forwardRef<HTMLIFrameElement, TikTokVideoProps>(function TikTokVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(TikTokMedia);\n const props: Partial<TikTokMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildTikTokIframeSrc(props.src || props.source?.src || '', {\n ...tiktokMediaDefaultProps,\n ...props,\n // The frame reads mute once, out of the URL it is rendered with, and either\n // prop says to start muted. Rendering it any other way than the media\n // builds it would have the media rebuild the frame on mount.\n defaultMuted: !!(props.defaultMuted || props.muted),\n })\n );\n const iframeProps = useSyncProps<TikTokMediaProps, Record<string, unknown>>(media, props, tiktokMediaDefaultProps);\n\n return (\n <iframe\n title=\"TikTok video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.tiktok?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace TikTokVideo {\n export type Props = TikTokVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,WAAW;CAC1C,MAAM,QAA6D,EAAE,GAAG,SAAS;CAEjF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,qBAAqB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EACzD,GAAG;EACH,GAAG;EAIH,cAAc,CAAC,EAAE,MAAM,gBAAgB,MAAM;CAC/C,CAAC,CACH;CACA,MAAM,cAAc,aAAwD,OAAO,OAAO,uBAAuB;CAEjH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,QAAQ;EAC9C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/tiktok-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { TikTokMediaProps } from '@videojs/media/dom/tiktok';\nimport { buildTikTokIframeSrc, TikTokMedia, tiktokMediaDefaultProps } from '@videojs/media/dom/tiktok';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface TikTokVideoProps extends Partial<TikTokMediaProps> {\n children?: ReactNode;\n}\n\nexport const TikTokVideo = forwardRef<HTMLIFrameElement, TikTokVideoProps>(function TikTokVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(TikTokMedia);\n const props: Partial<TikTokMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildTikTokIframeSrc(props.src || props.source?.src || '', {\n ...tiktokMediaDefaultProps,\n ...props,\n // The frame reads mute once, out of the URL it is rendered with, and either\n // prop says to start muted. Rendering it any other way than the media\n // builds it would have the media rebuild the frame on mount.\n defaultMuted: !!(props.defaultMuted || props.muted),\n })\n );\n const iframeProps = useSyncProps<TikTokMediaProps, Record<string, unknown>>(media, props, tiktokMediaDefaultProps);\n\n return (\n <iframe\n title=\"TikTok video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.tiktok?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace TikTokVideo {\n export type Props = TikTokVideoProps;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,WAAW;CAC1C,MAAM,QAA6D,EAAE,GAAG,SAAS;CACjF,MAAM,YAAY,gBAAgB,KAAK;CACvC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,qBAAqB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EACzD,GAAG;EACH,GAAG;EAIH,cAAc,CAAC,EAAE,MAAM,gBAAgB,MAAM;CAC/C,CAAC,CACH;CACA,MAAM,cAAc,aAAwD,OAAO,OAAO,uBAAuB;CAEjH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,QAAQ;EAC9C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
@@ -10,7 +10,8 @@ import { TwitchMedia, buildTwitchIframeSrc, twitchMediaDefaultProps } from "@vid
10
10
  const TwitchVideo = forwardRef(function TwitchVideo({ children, ...rawProps }, ref) {
11
11
  const media = useMediaInstance(TwitchMedia);
12
12
  const props = { ...rawProps };
13
- const composedRef = useComposedRefs(useAttachIframe(media), ref);
13
+ const attachRef = useAttachIframe(media);
14
+ const composedRef = useComposedRefs(attachRef, ref);
14
15
  const [initialSrc] = useState(() => globalThis.location ? buildTwitchIframeSrc(props.src || props.source?.src || "", {
15
16
  ...twitchMediaDefaultProps,
16
17
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/twitch-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { TwitchMediaProps } from '@videojs/media/dom/twitch';\nimport { buildTwitchIframeSrc, TwitchMedia, twitchMediaDefaultProps } from '@videojs/media/dom/twitch';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface TwitchVideoProps extends Partial<TwitchMediaProps> {\n children?: ReactNode;\n}\n\nexport const TwitchVideo = forwardRef<HTMLIFrameElement, TwitchVideoProps>(function TwitchVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(TwitchMedia);\n const props: Partial<TwitchMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // Server rendering has no `location` to name as the embed's parent, and Twitch\n // refuses to play in a page its URL never named. Rendering no `src` leaves the\n // URL to `attach()`, which builds it where there is a hostname to name.\n globalThis.location\n ? // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildTwitchIframeSrc(props.src || props.source?.src || '', { ...twitchMediaDefaultProps, ...props })\n : ''\n );\n const iframeProps = useSyncProps<TwitchMediaProps, Record<string, unknown>>(media, props, twitchMediaDefaultProps);\n\n return (\n <iframe\n title=\"Twitch video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; picture-in-picture;\"\n sandbox=\"allow-modals allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox\"\n scrolling=\"no\"\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.twitch?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace TwitchVideo {\n export type Props = TwitchVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,WAAW;CAC1C,MAAM,QAA6D,EAAE,GAAG,SAAS;CAEjF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAInB,WAAW,WAEP,qBAAqB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAAyB,GAAG;CAAM,CAAC,IACnG,EACN;CACA,MAAM,cAAc,aAAwD,OAAO,OAAO,uBAAuB;CAEjH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,SAAQ;EACR,WAAU;EACV,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,QAAQ;EAC9C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/twitch-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { TwitchMediaProps } from '@videojs/media/dom/twitch';\nimport { buildTwitchIframeSrc, TwitchMedia, twitchMediaDefaultProps } from '@videojs/media/dom/twitch';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface TwitchVideoProps extends Partial<TwitchMediaProps> {\n children?: ReactNode;\n}\n\nexport const TwitchVideo = forwardRef<HTMLIFrameElement, TwitchVideoProps>(function TwitchVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(TwitchMedia);\n const props: Partial<TwitchMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // Server rendering has no `location` to name as the embed's parent, and Twitch\n // refuses to play in a page its URL never named. Rendering no `src` leaves the\n // URL to `attach()`, which builds it where there is a hostname to name.\n globalThis.location\n ? // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildTwitchIframeSrc(props.src || props.source?.src || '', { ...twitchMediaDefaultProps, ...props })\n : ''\n );\n const iframeProps = useSyncProps<TwitchMediaProps, Record<string, unknown>>(media, props, twitchMediaDefaultProps);\n\n return (\n <iframe\n title=\"Twitch video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; picture-in-picture;\"\n sandbox=\"allow-modals allow-scripts allow-same-origin allow-popups allow-popups-to-escape-sandbox\"\n scrolling=\"no\"\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.twitch?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace TwitchVideo {\n export type Props = TwitchVideoProps;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAa,cAAc,WAAgD,SAAS,YAClF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,WAAW;CAC1C,MAAM,QAA6D,EAAE,GAAG,SAAS;CACjF,MAAM,YAAY,gBAAgB,KAAK;CACvC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,CAAC,cAAc,eAInB,WAAW,WAEP,qBAAqB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAAyB,GAAG;CAAM,CAAC,IACnG,EACN;CACA,MAAM,cAAc,aAAwD,OAAO,OAAO,uBAAuB;CAEjH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,SAAQ;EACR,WAAU;EACV,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,QAAQ;EAC9C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
@@ -3,9 +3,17 @@ import { useMediaAttach } from "../player/context.js";
3
3
  import { forwardRef } from "react";
4
4
  import { jsx } from "react/jsx-runtime";
5
5
  //#region src/media/video.tsx
6
+ /**
7
+ * Renders a native `<video>` element and forwards its element ref.
8
+ *
9
+ * Inside a Player, the element is registered as the player's current media on mount and detached on unmount. It can
10
+ * also render independently when no Player context is present.
11
+ */
6
12
  const Video = forwardRef(function Video({ children, ...props }, ref) {
13
+ const setMedia = useMediaAttach();
14
+ const composedRef = useComposedRefs(ref, setMedia);
7
15
  return /* @__PURE__ */ jsx("video", {
8
- ref: useComposedRefs(ref, useMediaAttach()),
16
+ ref: composedRef,
9
17
  ...props,
10
18
  children
11
19
  });
@@ -1 +1 @@
1
- {"version":3,"file":"video.js","names":[],"sources":["../../../src/media/video.tsx"],"sourcesContent":["import type { VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useMediaAttach } from '../player/context';\nimport { useComposedRefs } from '../utils/use-composed-refs';\n\nexport interface VideoProps extends VideoHTMLAttributes<HTMLVideoElement> {}\n\nexport const Video = forwardRef<HTMLVideoElement, VideoProps>(function Video({ children, ...props }, ref) {\n const setMedia = useMediaAttach();\n const composedRef = useComposedRefs(ref, setMedia);\n\n return (\n <video ref={composedRef} {...props}>\n {children}\n </video>\n );\n});\n\nexport namespace Video {\n export type Props = VideoProps;\n}\n"],"mappings":";;;;;AAQA,MAAa,QAAQ,WAAyC,SAAS,MAAM,EAAE,UAAU,GAAG,SAAS,KAAK;CAIxG,OACE,oBAAC,SAAD;EAAO,KAHW,gBAAgB,KADnB,eAC+B,CAGxB;EAAG,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
1
+ {"version":3,"file":"video.js","names":[],"sources":["../../../src/media/video.tsx"],"sourcesContent":["import type { VideoHTMLAttributes } from 'react';\nimport { forwardRef } from 'react';\n\nimport { useMediaAttach } from '../player/context';\nimport { useComposedRefs } from '../utils/use-composed-refs';\n\n/** Native `<video>` attributes and children forwarded to the rendered media element. */\nexport interface VideoProps extends VideoHTMLAttributes<HTMLVideoElement> {}\n\n/**\n * Renders a native `<video>` element and forwards its element ref.\n *\n * Inside a Player, the element is registered as the player's current media on mount and detached on unmount. It can\n * also render independently when no Player context is present.\n */\nexport const Video = forwardRef<HTMLVideoElement, VideoProps>(function Video({ children, ...props }, ref) {\n const setMedia = useMediaAttach();\n const composedRef = useComposedRefs(ref, setMedia);\n\n return (\n <video ref={composedRef} {...props}>\n {children}\n </video>\n );\n});\n\nexport namespace Video {\n export type Props = VideoProps;\n}\n"],"mappings":";;;;;;;;;;;AAeA,MAAa,QAAQ,WAAyC,SAAS,MAAM,EAAE,UAAU,GAAG,SAAS,KAAK;CACxG,MAAM,WAAW,eAAe;CAChC,MAAM,cAAc,gBAAgB,KAAK,QAAQ;CAEjD,OACE,oBAAC,SAAD;EAAO,KAAK;EAAa,GAAI;EAC1B;CACI,CAAA;AAEX,CAAC"}
@@ -10,7 +10,8 @@ import { VimeoMedia, buildVimeoIframeSrc, vimeoMediaDefaultProps } from "@videoj
10
10
  const VimeoVideo = forwardRef(function VimeoVideo({ children, ...rawProps }, ref) {
11
11
  const media = useMediaInstance(VimeoMedia);
12
12
  const props = { ...rawProps };
13
- const composedRef = useComposedRefs(useAttachIframe(media), ref);
13
+ const attachRef = useAttachIframe(media);
14
+ const composedRef = useComposedRefs(attachRef, ref);
14
15
  const [initialSrc] = useState(() => buildVimeoIframeSrc(props.src || props.source?.src || "", {
15
16
  ...vimeoMediaDefaultProps,
16
17
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/vimeo-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { VimeoMediaProps } from '@videojs/media/dom/vimeo';\nimport { buildVimeoIframeSrc, VimeoMedia, vimeoMediaDefaultProps } from '@videojs/media/dom/vimeo';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface VimeoVideoProps extends Partial<VimeoMediaProps> {\n children?: ReactNode;\n}\n\nexport const VimeoVideo = forwardRef<HTMLIFrameElement, VimeoVideoProps>(function VimeoVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(VimeoMedia);\n const props: Partial<VimeoMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildVimeoIframeSrc(props.src || props.source?.src || '', { ...vimeoMediaDefaultProps, ...props })\n );\n const iframeProps = useSyncProps<VimeoMediaProps, Record<string, unknown>>(media, props, vimeoMediaDefaultProps);\n\n return (\n <iframe\n title=\"Vimeo video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.vimeo?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace VimeoVideo {\n export type Props = VimeoVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,aAAa,WAA+C,SAAS,WAChF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CACzC,MAAM,QAA4D,EAAE,GAAG,SAAS;CAEhF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,oBAAoB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAAwB,GAAG;CAAM,CAAC,CACnG;CACA,MAAM,cAAc,aAAuD,OAAO,OAAO,sBAAsB;CAE/G,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,OAAO;EAC7C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/vimeo-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { VimeoMediaProps } from '@videojs/media/dom/vimeo';\nimport { buildVimeoIframeSrc, VimeoMedia, vimeoMediaDefaultProps } from '@videojs/media/dom/vimeo';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface VimeoVideoProps extends Partial<VimeoMediaProps> {\n children?: ReactNode;\n}\n\nexport const VimeoVideo = forwardRef<HTMLIFrameElement, VimeoVideoProps>(function VimeoVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(VimeoMedia);\n const props: Partial<VimeoMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildVimeoIframeSrc(props.src || props.source?.src || '', { ...vimeoMediaDefaultProps, ...props })\n );\n const iframeProps = useSyncProps<VimeoMediaProps, Record<string, unknown>>(media, props, vimeoMediaDefaultProps);\n\n return (\n <iframe\n title=\"Vimeo video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.vimeo?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace VimeoVideo {\n export type Props = VimeoVideoProps;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAa,aAAa,WAA+C,SAAS,WAChF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,UAAU;CACzC,MAAM,QAA4D,EAAE,GAAG,SAAS;CAChF,MAAM,YAAY,gBAAgB,KAAK;CACvC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,oBAAoB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAAwB,GAAG;CAAM,CAAC,CACnG;CACA,MAAM,cAAc,aAAuD,OAAO,OAAO,sBAAsB;CAE/G,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,OAAO;EAC7C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
@@ -10,7 +10,8 @@ import { YouTubeMedia, buildYouTubeIframeSrc, youtubeMediaDefaultProps } from "@
10
10
  const YouTubeVideo = forwardRef(function YouTubeVideo({ children, ...rawProps }, ref) {
11
11
  const media = useMediaInstance(YouTubeMedia);
12
12
  const props = { ...rawProps };
13
- const composedRef = useComposedRefs(useAttachIframe(media), ref);
13
+ const attachRef = useAttachIframe(media);
14
+ const composedRef = useComposedRefs(attachRef, ref);
14
15
  const [initialSrc] = useState(() => buildYouTubeIframeSrc(props.src || props.source?.src || "", {
15
16
  ...youtubeMediaDefaultProps,
16
17
  ...props
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/youtube-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { YouTubeMediaProps } from '@videojs/media/dom/youtube';\nimport { buildYouTubeIframeSrc, YouTubeMedia, youtubeMediaDefaultProps } from '@videojs/media/dom/youtube';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface YouTubeVideoProps extends Partial<YouTubeMediaProps> {\n children?: ReactNode;\n}\n\nexport const YouTubeVideo = forwardRef<HTMLIFrameElement, YouTubeVideoProps>(function YouTubeVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(YouTubeMedia);\n const props: Partial<YouTubeMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildYouTubeIframeSrc(props.src || props.source?.src || '', { ...youtubeMediaDefaultProps, ...props })\n );\n const iframeProps = useSyncProps<YouTubeMediaProps, Record<string, unknown>>(media, props, youtubeMediaDefaultProps);\n\n return (\n <iframe\n title=\"YouTube video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.youtube?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace YouTubeVideo {\n export type Props = YouTubeVideoProps;\n}\n"],"mappings":";;;;;;;;;AAeA,MAAa,eAAe,WAAiD,SAAS,aACpF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,YAAY;CAC3C,MAAM,QAA8D,EAAE,GAAG,SAAS;CAElF,MAAM,cAAc,gBADF,gBAAgB,KACU,GAAG,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,sBAAsB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAA0B,GAAG;CAAM,CAAC,CACvG;CACA,MAAM,cAAc,aAAyD,OAAO,OAAO,wBAAwB;CAEnH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,SAAS;EAC/C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
1
+ {"version":3,"file":"media.js","names":[],"sources":["../../../../src/media/youtube-video/media.tsx"],"sourcesContent":["'use client';\n\nimport type { YouTubeMediaProps } from '@videojs/media/dom/youtube';\nimport { buildYouTubeIframeSrc, YouTubeMedia, youtubeMediaDefaultProps } from '@videojs/media/dom/youtube';\nimport type { ReactNode } from 'react';\nimport { forwardRef, useState } from 'react';\n\nimport { useAttachIframe } from '../../utils/use-attach-iframe';\nimport { useComposedRefs } from '../../utils/use-composed-refs';\nimport { useMediaInstance } from '../../utils/use-media-instance';\nimport { useSyncProps } from '../../utils/use-sync-props';\n\nexport interface YouTubeVideoProps extends Partial<YouTubeMediaProps> {\n children?: ReactNode;\n}\n\nexport const YouTubeVideo = forwardRef<HTMLIFrameElement, YouTubeVideoProps>(function YouTubeVideo(\n { children, ...rawProps },\n ref\n) {\n const media = useMediaInstance(YouTubeMedia);\n const props: Partial<YouTubeMediaProps> & Record<string, unknown> = { ...rawProps };\n const attachRef = useAttachIframe(media);\n const composedRef = useComposedRefs(attachRef, ref);\n const [initialSrc] = useState(() =>\n // `source.src` is the only other way to name a video, so honor it when `src` is absent.\n buildYouTubeIframeSrc(props.src || props.source?.src || '', { ...youtubeMediaDefaultProps, ...props })\n );\n const iframeProps = useSyncProps<YouTubeMediaProps, Record<string, unknown>>(media, props, youtubeMediaDefaultProps);\n\n return (\n <iframe\n title=\"YouTube video player\"\n // Empty means there is no embed to point at yet; React warns about `src=\"\"`,\n // and the media builds the URL itself once a source resolves.\n src={initialSrc || undefined}\n data-cross-origin-frame\n allow=\"accelerometer; fullscreen; autoplay; encrypted-media; gyroscope; picture-in-picture\"\n allowFullScreen\n frameBorder={0}\n width=\"100%\"\n height=\"100%\"\n referrerPolicy={props.source?.engine?.youtube?.referrerPolicy}\n {...iframeProps}\n ref={composedRef}\n >\n {children}\n </iframe>\n );\n});\n\nexport namespace YouTubeVideo {\n export type Props = YouTubeVideoProps;\n}\n"],"mappings":";;;;;;;;;AAgBA,MAAa,eAAe,WAAiD,SAAS,aACpF,EAAE,UAAU,GAAG,YACf,KACA;CACA,MAAM,QAAQ,iBAAiB,YAAY;CAC3C,MAAM,QAA8D,EAAE,GAAG,SAAS;CAClF,MAAM,YAAY,gBAAgB,KAAK;CACvC,MAAM,cAAc,gBAAgB,WAAW,GAAG;CAClD,MAAM,CAAC,cAAc,eAEnB,sBAAsB,MAAM,OAAO,MAAM,QAAQ,OAAO,IAAI;EAAE,GAAG;EAA0B,GAAG;CAAM,CAAC,CACvG;CACA,MAAM,cAAc,aAAyD,OAAO,OAAO,wBAAwB;CAEnH,OACE,oBAAC,UAAD;EACE,OAAM;EAGN,KAAK,cAAc,KAAA;EACnB,2BAAA;EACA,OAAM;EACN,iBAAA;EACA,aAAa;EACb,OAAM;EACN,QAAO;EACP,gBAAgB,MAAM,QAAQ,QAAQ,SAAS;EAC/C,GAAI;EACJ,KAAK;EAEJ;CACK,CAAA;AAEZ,CAAC"}
@@ -1,15 +1,20 @@
1
- import { useTranslator } from "../i18n/context.js";
1
+ import { I18nContext, useTranslator } from "../i18n/context.js";
2
2
  import { useComposedRefs } from "../utils/use-composed-refs.js";
3
- import { useContainerAttach } from "./context.js";
3
+ import { useContainerAttach, usePlayer } from "./context.js";
4
4
  import { PopupGroupProvider } from "./popup-group-context.js";
5
- import { DEFAULT_CONTAINER_ROLE, DEFAULT_CONTAINER_TAB_INDEX, createPopupGroup, focusContainer } from "@videojs/core/dom";
6
- import { forwardRef, useEffect, useRef, useState } from "react";
5
+ import { DEFAULT_CONTAINER_ROLE, DEFAULT_CONTAINER_TAB_INDEX, createPopupGroup, focusContainer, getStateDataAttrs, selectControls } from "@videojs/core/dom";
6
+ import { forwardRef, useContext, useEffect, useRef, useState } from "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
+ import { ContainerCore, ContainerDataAttrs } from "@videojs/core";
8
9
  import { labelText } from "@videojs/core/i18n/text/container";
10
+ import { getTextDirection } from "@videojs/utils/i18n";
9
11
  //#region src/player/container.tsx
10
- const Container = forwardRef(function Container({ children, tabIndex = DEFAULT_CONTAINER_TAB_INDEX, role = DEFAULT_CONTAINER_ROLE, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...props }, ref) {
12
+ const Container = forwardRef(function Container({ children, tabIndex = DEFAULT_CONTAINER_TAB_INDEX, role = DEFAULT_CONTAINER_ROLE, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, lang: langProp, dir: dirProp, ...props }, ref) {
11
13
  const setContainer = useContainerAttach();
12
14
  const translator = useTranslator();
15
+ const i18n = useContext(I18nContext);
16
+ const controls = usePlayer(selectControls);
17
+ const [core] = useState(() => new ContainerCore());
13
18
  const [popupGroup] = useState(() => createPopupGroup());
14
19
  const internalRef = useRef(null);
15
20
  const composedRef = useComposedRefs(ref, internalRef);
@@ -23,15 +28,25 @@ const Container = forwardRef(function Container({ children, tabIndex = DEFAULT_C
23
28
  if (!el) return;
24
29
  focusContainer(el);
25
30
  };
31
+ const accessibleNameProps = ariaLabel !== void 0 || ariaLabelledBy !== void 0 ? {
32
+ "aria-label": ariaLabel,
33
+ "aria-labelledby": ariaLabelledBy
34
+ } : { "aria-label": translator(labelText) };
35
+ const lang = langProp ?? (i18n?.localeFromProp ? i18n.locale : void 0);
36
+ const localeProps = {
37
+ lang,
38
+ dir: dirProp ?? (lang ? getTextDirection(lang) : void 0)
39
+ };
40
+ if (controls) core.setMedia(controls);
41
+ const stateAttrs = controls ? getStateDataAttrs(core.getState(), ContainerDataAttrs) : void 0;
26
42
  return /* @__PURE__ */ jsx("div", {
27
43
  ref: composedRef,
28
44
  role,
29
45
  tabIndex,
30
- ...ariaLabel !== void 0 || ariaLabelledBy !== void 0 ? {
31
- "aria-label": ariaLabel,
32
- "aria-labelledby": ariaLabelledBy
33
- } : { "aria-label": translator(labelText) },
46
+ ...accessibleNameProps,
47
+ ...localeProps,
34
48
  ...props,
49
+ ...stateAttrs,
35
50
  onPointerUp: handlePointerUp,
36
51
  children: /* @__PURE__ */ jsx(PopupGroupProvider, {
37
52
  value: popupGroup,
@@ -1 +1 @@
1
- {"version":3,"file":"container.js","names":[],"sources":["../../../src/player/container.tsx"],"sourcesContent":["import {\n createPopupGroup,\n DEFAULT_CONTAINER_ROLE,\n DEFAULT_CONTAINER_TAB_INDEX,\n focusContainer,\n} from '@videojs/core/dom';\nimport { labelText } from '@videojs/core/i18n/text/container';\nimport {\n forwardRef,\n type HTMLAttributes,\n type PointerEventHandler,\n type ReactNode,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport { useTranslator } from '../i18n/context';\nimport { useComposedRefs } from '../utils/use-composed-refs';\nimport { useContainerAttach } from './context';\nimport { PopupGroupProvider } from './popup-group-context';\n\nexport interface ContainerProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\nexport const Container = forwardRef<HTMLDivElement, ContainerProps>(function Container(\n {\n children,\n tabIndex = DEFAULT_CONTAINER_TAB_INDEX,\n role = DEFAULT_CONTAINER_ROLE,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...props\n },\n ref\n) {\n const setContainer = useContainerAttach();\n const translator = useTranslator();\n const [popupGroup] = useState(() => createPopupGroup());\n const internalRef = useRef<HTMLDivElement>(null);\n const composedRef = useComposedRefs(ref, internalRef);\n\n useEffect(() => {\n setContainer?.(internalRef.current);\n return () => setContainer?.(null);\n }, [setContainer]);\n\n const handlePointerUp: PointerEventHandler<HTMLDivElement> = (event) => {\n props.onPointerUp?.(event);\n const el = internalRef.current;\n if (!el) return;\n focusContainer(el);\n };\n\n const accessibleNameProps =\n ariaLabel !== undefined || ariaLabelledBy !== undefined\n ? { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy }\n : { 'aria-label': translator(labelText) };\n\n return (\n <div\n ref={composedRef}\n role={role}\n tabIndex={tabIndex}\n {...accessibleNameProps}\n {...props}\n onPointerUp={handlePointerUp}\n >\n <PopupGroupProvider value={popupGroup}>{children}</PopupGroupProvider>\n </div>\n );\n});\n\nexport namespace Container {\n export type Props = ContainerProps;\n}\n"],"mappings":";;;;;;;;;AAyBA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EACE,UACA,WAAW,6BACX,OAAO,wBACP,cAAc,WACd,mBAAmB,gBACnB,GAAG,SAEL,KACA;CACA,MAAM,eAAe,mBAAmB;CACxC,MAAM,aAAa,cAAc;CACjC,MAAM,CAAC,cAAc,eAAe,iBAAiB,CAAC;CACtD,MAAM,cAAc,OAAuB,IAAI;CAC/C,MAAM,cAAc,gBAAgB,KAAK,WAAW;CAEpD,gBAAgB;EACd,eAAe,YAAY,OAAO;EAClC,aAAa,eAAe,IAAI;CAClC,GAAG,CAAC,YAAY,CAAC;CAEjB,MAAM,mBAAwD,UAAU;EACtE,MAAM,cAAc,KAAK;EACzB,MAAM,KAAK,YAAY;EACvB,IAAI,CAAC,IAAI;EACT,eAAe,EAAE;CACnB;CAOA,OACE,oBAAC,OAAD;EACE,KAAK;EACC;EACI;EACV,GATF,cAAc,KAAA,KAAa,mBAAmB,KAAA,IAC1C;GAAE,cAAc;GAAW,mBAAmB;EAAe,IAC7D,EAAE,cAAc,WAAW,SAAS,EAAE;EAQxC,GAAI;EACJ,aAAa;EAEb,UAAA,oBAAC,oBAAD;GAAoB,OAAO;GAAa;EAA6B,CAAA;CAClE,CAAA;AAET,CAAC"}
1
+ {"version":3,"file":"container.js","names":[],"sources":["../../../src/player/container.tsx"],"sourcesContent":["import { ContainerCore, ContainerDataAttrs } from '@videojs/core';\nimport {\n createPopupGroup,\n DEFAULT_CONTAINER_ROLE,\n DEFAULT_CONTAINER_TAB_INDEX,\n focusContainer,\n getStateDataAttrs,\n selectControls,\n} from '@videojs/core/dom';\nimport { labelText } from '@videojs/core/i18n/text/container';\nimport { getTextDirection } from '@videojs/utils/i18n';\nimport {\n forwardRef,\n type HTMLAttributes,\n type PointerEventHandler,\n type ReactNode,\n useContext,\n useEffect,\n useRef,\n useState,\n} from 'react';\n\nimport { I18nContext, useTranslator } from '../i18n/context';\nimport { useComposedRefs } from '../utils/use-composed-refs';\nimport { useContainerAttach, usePlayer } from './context';\nimport { PopupGroupProvider } from './popup-group-context';\n\nexport interface ContainerProps extends HTMLAttributes<HTMLDivElement> {\n children?: ReactNode;\n}\n\nexport const Container = forwardRef<HTMLDivElement, ContainerProps>(function Container(\n {\n children,\n tabIndex = DEFAULT_CONTAINER_TAB_INDEX,\n role = DEFAULT_CONTAINER_ROLE,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n lang: langProp,\n dir: dirProp,\n ...props\n },\n ref\n) {\n const setContainer = useContainerAttach();\n const translator = useTranslator();\n const i18n = useContext(I18nContext);\n const controls = usePlayer(selectControls);\n const [core] = useState(() => new ContainerCore());\n\n const [popupGroup] = useState(() => createPopupGroup());\n\n const internalRef = useRef<HTMLDivElement>(null);\n const composedRef = useComposedRefs(ref, internalRef);\n\n useEffect(() => {\n setContainer?.(internalRef.current);\n return () => setContainer?.(null);\n }, [setContainer]);\n\n const handlePointerUp: PointerEventHandler<HTMLDivElement> = (event) => {\n props.onPointerUp?.(event);\n const el = internalRef.current;\n if (!el) return;\n\n focusContainer(el);\n };\n\n const accessibleNameProps =\n ariaLabel !== undefined || ariaLabelledBy !== undefined\n ? { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy }\n : { 'aria-label': translator(labelText) };\n const lang = langProp ?? (i18n?.localeFromProp ? i18n.locale : undefined);\n const localeProps = {\n lang,\n dir: dirProp ?? (lang ? getTextDirection(lang) : undefined),\n };\n\n if (controls) core.setMedia(controls);\n\n const stateAttrs = controls ? getStateDataAttrs(core.getState(), ContainerDataAttrs) : undefined;\n\n return (\n <div\n ref={composedRef}\n role={role}\n tabIndex={tabIndex}\n {...accessibleNameProps}\n {...localeProps}\n {...props}\n {...stateAttrs}\n onPointerUp={handlePointerUp}\n >\n <PopupGroupProvider value={popupGroup}>{children}</PopupGroupProvider>\n </div>\n );\n});\n\nexport namespace Container {\n export type Props = ContainerProps;\n}\n"],"mappings":";;;;;;;;;;;AA+BA,MAAa,YAAY,WAA2C,SAAS,UAC3E,EACE,UACA,WAAW,6BACX,OAAO,wBACP,cAAc,WACd,mBAAmB,gBACnB,MAAM,UACN,KAAK,SACL,GAAG,SAEL,KACA;CACA,MAAM,eAAe,mBAAmB;CACxC,MAAM,aAAa,cAAc;CACjC,MAAM,OAAO,WAAW,WAAW;CACnC,MAAM,WAAW,UAAU,cAAc;CACzC,MAAM,CAAC,QAAQ,eAAe,IAAI,cAAc,CAAC;CAEjD,MAAM,CAAC,cAAc,eAAe,iBAAiB,CAAC;CAEtD,MAAM,cAAc,OAAuB,IAAI;CAC/C,MAAM,cAAc,gBAAgB,KAAK,WAAW;CAEpD,gBAAgB;EACd,eAAe,YAAY,OAAO;EAClC,aAAa,eAAe,IAAI;CAClC,GAAG,CAAC,YAAY,CAAC;CAEjB,MAAM,mBAAwD,UAAU;EACtE,MAAM,cAAc,KAAK;EACzB,MAAM,KAAK,YAAY;EACvB,IAAI,CAAC,IAAI;EAET,eAAe,EAAE;CACnB;CAEA,MAAM,sBACJ,cAAc,KAAA,KAAa,mBAAmB,KAAA,IAC1C;EAAE,cAAc;EAAW,mBAAmB;CAAe,IAC7D,EAAE,cAAc,WAAW,SAAS,EAAE;CAC5C,MAAM,OAAO,aAAa,MAAM,iBAAiB,KAAK,SAAS,KAAA;CAC/D,MAAM,cAAc;EAClB;EACA,KAAK,YAAY,OAAO,iBAAiB,IAAI,IAAI,KAAA;CACnD;CAEA,IAAI,UAAU,KAAK,SAAS,QAAQ;CAEpC,MAAM,aAAa,WAAW,kBAAkB,KAAK,SAAS,GAAG,kBAAkB,IAAI,KAAA;CAEvF,OACE,oBAAC,OAAD;EACE,KAAK;EACC;EACI;EACV,GAAI;EACJ,GAAI;EACJ,GAAI;EACJ,GAAI;EACJ,aAAa;EAEb,UAAA,oBAAC,oBAAD;GAAoB,OAAO;GAAa;EAA6B,CAAA;CAClE,CAAA;AAET,CAAC"}
@@ -26,7 +26,8 @@ function usePlayer(selector) {
26
26
  }
27
27
  function useOptionalPlayer(selector) {
28
28
  const ctx = useContext(PlayerContext);
29
- const value = useStore(ctx?.store ?? EMPTY_STORE, ctx ? selector : void 0);
29
+ const store = ctx?.store ?? EMPTY_STORE;
30
+ const value = useStore(store, ctx ? selector : void 0);
30
31
  return ctx ? value : void 0;
31
32
  }
32
33
  /** Access the media element from within a Player. */