@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
@@ -5,14 +5,13 @@ import { useForceRender } from "../../utils/use-force-render.js";
5
5
  import { createSlider, selectControls } from "@videojs/core/dom";
6
6
  import { useSnapshot } from "@videojs/store/react";
7
7
  import { useCallback, useEffect, useLayoutEffect, useRef, useState } from "react";
8
- import { applyStyles, isRTL } from "@videojs/utils/dom";
8
+ import { applyStyles } from "@videojs/utils/dom";
9
9
  //#region src/ui/hooks/use-slider.ts
10
10
  /**
11
11
  * Manages slider input lifecycle for React.
12
12
  *
13
- * Wraps `createSlider()` from `@videojs/core/dom` and subscribes to its
14
- * input state via `useSnapshot`. Returns split props for the root
15
- * (pointer events) and thumb (keyboard/focus) elements.
13
+ * Wraps `createSlider()` from `@videojs/core/dom` and subscribes to its input state via `useSnapshot`. Returns split
14
+ * props for the root (pointer events) and thumb (keyboard/focus) elements.
16
15
  */
17
16
  function useSlider(options) {
18
17
  const optionsRef = useLatestRef(options);
@@ -27,11 +26,10 @@ function useSlider(options) {
27
26
  const thumbElementRef = useRef(null);
28
27
  const forceRender = useForceRender();
29
28
  const [slider] = useState(() => {
30
- return createSlider({
29
+ const stableOptions = {
31
30
  getElement: () => rootElementRef.current,
32
31
  getThumbElement: () => thumbElementRef.current,
33
32
  getOrientation: () => optionsRef.current.orientation ?? "horizontal",
34
- isRTL: () => rootElementRef.current ? isRTL(rootElementRef.current) : false,
35
33
  isDisabled: () => optionsRef.current.disabled ?? false,
36
34
  getPercent: () => optionsRef.current.getPercent(),
37
35
  getStepPercent: () => optionsRef.current.getStepPercent(),
@@ -48,7 +46,8 @@ function useSlider(options) {
48
46
  releaseControlsLock();
49
47
  optionsRef.current.onDragEnd?.();
50
48
  }
51
- });
49
+ };
50
+ return createSlider(stableOptions);
52
51
  });
53
52
  useDestroy(slider);
54
53
  const interaction = useSnapshot(slider.input, ({ dragging, pointing, focused }) => ({
@@ -1 +1 @@
1
- {"version":3,"file":"use-slider.js","names":[],"sources":["../../../../src/ui/hooks/use-slider.ts"],"sourcesContent":["import type { SliderInput, SliderState } from '@videojs/core';\nimport {\n createSlider,\n type SliderApi,\n type SliderOptions,\n type SliderRootProps,\n type SliderRootStyle,\n type SliderThumbProps,\n selectControls,\n} from '@videojs/core/dom';\nimport { useSnapshot } from '@videojs/store/react';\nimport { applyStyles, isRTL } from '@videojs/utils/dom';\nimport { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport { useOptionalPlayer } from '../../player/context';\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useForceRender } from '../../utils/use-force-render';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseSliderOptions<State extends SliderState = SliderState>\n extends Pick<\n SliderOptions,\n | 'getPercent'\n | 'getStepPercent'\n | 'getLargeStepPercent'\n | 'changeThrottle'\n | 'onValueChange'\n | 'onValueCommit'\n | 'onDragStart'\n | 'onDragEnd'\n > {\n computeState: (input: SliderInput) => State;\n orientation?: 'horizontal' | 'vertical' | undefined;\n disabled?: boolean | undefined;\n /** Adjust a raw 0–100 percent for thumb alignment. Called for fill and pointer percents. */\n adjustPercent?: ((rawPercent: number, thumbSize: number, trackSize: number) => number) | undefined;\n /** Compute CSS variable map from the (possibly alignment-adjusted) state. */\n getCSSVars: (state: State) => Record<string, string>;\n}\n\nexport interface UseSliderReturnValue<State extends SliderState = SliderState> {\n state: State;\n input: SliderApi['input'];\n cssVars: Record<string, string>;\n rootRef: React.RefCallback<HTMLElement>;\n thumbRef: React.RefCallback<HTMLElement>;\n rootProps: SliderRootProps;\n rootStyle: SliderRootStyle;\n thumbProps: SliderThumbProps;\n}\n\n/**\n * Manages slider input lifecycle for React.\n *\n * Wraps `createSlider()` from `@videojs/core/dom` and subscribes to its\n * input state via `useSnapshot`. Returns split props for the root\n * (pointer events) and thumb (keyboard/focus) elements.\n */\nexport function useSlider<State extends SliderState = SliderState>(\n options: UseSliderOptions<State>\n): UseSliderReturnValue<State> {\n const optionsRef = useLatestRef(options);\n const controls = useOptionalPlayer(selectControls);\n const requestControlsLock = controls?.requestControlsLock;\n const releaseControlsLockRef = useRef<(() => void) | null>(null);\n\n const releaseControlsLock = useCallback(() => {\n releaseControlsLockRef.current?.();\n releaseControlsLockRef.current = null;\n }, []);\n\n useEffect(() => releaseControlsLock, [releaseControlsLock]);\n\n const rootElementRef = useRef<HTMLElement | null>(null);\n const thumbElementRef = useRef<HTMLElement | null>(null);\n const forceRender = useForceRender();\n\n // Lazy-init the slider handle. Stable across re-renders.\n const [slider] = useState<SliderApi>(() => {\n const stableOptions: SliderOptions = {\n getElement: () => rootElementRef.current!,\n getThumbElement: () => thumbElementRef.current,\n getOrientation: () => optionsRef.current.orientation ?? 'horizontal',\n isRTL: () => (rootElementRef.current ? isRTL(rootElementRef.current) : false),\n isDisabled: () => optionsRef.current.disabled ?? false,\n getPercent: () => optionsRef.current.getPercent(),\n getStepPercent: () => optionsRef.current.getStepPercent(),\n getLargeStepPercent: () => optionsRef.current.getLargeStepPercent(),\n changeThrottle: optionsRef.current.changeThrottle,\n adjustPercent: optionsRef.current.adjustPercent,\n onValueChange: (percent) => optionsRef.current.onValueChange?.(percent),\n onValueCommit: (percent) => optionsRef.current.onValueCommit?.(percent),\n onDragStart: () => {\n releaseControlsLockRef.current ??= requestControlsLock?.() ?? null;\n optionsRef.current.onDragStart?.();\n },\n onDragEnd: () => {\n releaseControlsLock();\n optionsRef.current.onDragEnd?.();\n },\n };\n\n return createSlider(stableOptions);\n });\n\n useDestroy(slider);\n\n // Percentage changes are rendered directly below. React only needs to\n // re-render when interaction state changes.\n const interaction = useSnapshot(slider.input, ({ dragging, pointing, focused }) => ({\n dragging,\n pointing,\n focused,\n }));\n const input = { ...slider.input.current, ...interaction };\n\n // Compute derived state from input + caller-provided projection.\n const state = options.computeState(input);\n\n // Force a synchronous re-render after mount so edge thumb alignment\n // can read DOM measurements from the now-populated element refs.\n useLayoutEffect(() => {\n if (state.thumbAlignment === 'edge' && rootElementRef.current && thumbElementRef.current) {\n forceRender();\n }\n }, [state.thumbAlignment]);\n\n // Adjust CSS var percents for edge thumb alignment using live DOM measurements.\n const cssVars = options.getCSSVars(slider.adjustForAlignment(state));\n\n const syncStyles = useCallback(\n (element = rootElementRef.current) => {\n if (!element) return;\n const next = optionsRef.current.computeState(slider.input.current);\n applyStyles(element, optionsRef.current.getCSSVars(slider.adjustForAlignment(next)));\n },\n [slider]\n );\n\n useLayoutEffect(() => {\n syncStyles();\n return slider.input.subscribe(syncStyles);\n }, [slider, syncStyles]);\n\n // Ref callbacks for root and thumb elements.\n const rootRef = useCallback(\n (element: HTMLElement | null) => {\n rootElementRef.current = element;\n syncStyles(element);\n },\n [syncStyles]\n );\n\n const thumbRef = useCallback((element: HTMLElement | null) => {\n thumbElementRef.current = element;\n }, []);\n\n return {\n state,\n input: slider.input,\n cssVars,\n rootRef,\n thumbRef,\n rootProps: slider.rootProps,\n rootStyle: slider.rootStyle,\n thumbProps: slider.thumbProps,\n };\n}\n\nexport namespace useSlider {\n export type Options = UseSliderOptions;\n export type ReturnValue = UseSliderReturnValue;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAyDA,SAAgB,UACd,SAC6B;CAC7B,MAAM,aAAa,aAAa,OAAO;CAEvC,MAAM,sBADW,kBAAkB,cACA,CAAC,EAAE;CACtC,MAAM,yBAAyB,OAA4B,IAAI;CAE/D,MAAM,sBAAsB,kBAAkB;EAC5C,uBAAuB,UAAU;EACjC,uBAAuB,UAAU;CACnC,GAAG,CAAC,CAAC;CAEL,gBAAgB,qBAAqB,CAAC,mBAAmB,CAAC;CAE1D,MAAM,iBAAiB,OAA2B,IAAI;CACtD,MAAM,kBAAkB,OAA2B,IAAI;CACvD,MAAM,cAAc,eAAe;CAGnC,MAAM,CAAC,UAAU,eAA0B;EAwBzC,OAAO,aAAa;GAtBlB,kBAAkB,eAAe;GACjC,uBAAuB,gBAAgB;GACvC,sBAAsB,WAAW,QAAQ,eAAe;GACxD,aAAc,eAAe,UAAU,MAAM,eAAe,OAAO,IAAI;GACvE,kBAAkB,WAAW,QAAQ,YAAY;GACjD,kBAAkB,WAAW,QAAQ,WAAW;GAChD,sBAAsB,WAAW,QAAQ,eAAe;GACxD,2BAA2B,WAAW,QAAQ,oBAAoB;GAClE,gBAAgB,WAAW,QAAQ;GACnC,eAAe,WAAW,QAAQ;GAClC,gBAAgB,YAAY,WAAW,QAAQ,gBAAgB,OAAO;GACtE,gBAAgB,YAAY,WAAW,QAAQ,gBAAgB,OAAO;GACtE,mBAAmB;IACjB,uBAAuB,YAAY,sBAAsB,KAAK;IAC9D,WAAW,QAAQ,cAAc;GACnC;GACA,iBAAiB;IACf,oBAAoB;IACpB,WAAW,QAAQ,YAAY;GACjC;EAG8B,CAAC;CACnC,CAAC;CAED,WAAW,MAAM;CAIjB,MAAM,cAAc,YAAY,OAAO,QAAQ,EAAE,UAAU,UAAU,eAAe;EAClF;EACA;EACA;CACF,EAAE;CACF,MAAM,QAAQ;EAAE,GAAG,OAAO,MAAM;EAAS,GAAG;CAAY;CAGxD,MAAM,QAAQ,QAAQ,aAAa,KAAK;CAIxC,sBAAsB;EACpB,IAAI,MAAM,mBAAmB,UAAU,eAAe,WAAW,gBAAgB,SAC/E,YAAY;CAEhB,GAAG,CAAC,MAAM,cAAc,CAAC;CAGzB,MAAM,UAAU,QAAQ,WAAW,OAAO,mBAAmB,KAAK,CAAC;CAEnE,MAAM,aAAa,aAChB,UAAU,eAAe,YAAY;EACpC,IAAI,CAAC,SAAS;EACd,MAAM,OAAO,WAAW,QAAQ,aAAa,OAAO,MAAM,OAAO;EACjE,YAAY,SAAS,WAAW,QAAQ,WAAW,OAAO,mBAAmB,IAAI,CAAC,CAAC;CACrF,GACA,CAAC,MAAM,CACT;CAEA,sBAAsB;EACpB,WAAW;EACX,OAAO,OAAO,MAAM,UAAU,UAAU;CAC1C,GAAG,CAAC,QAAQ,UAAU,CAAC;CAGvB,MAAM,UAAU,aACb,YAAgC;EAC/B,eAAe,UAAU;EACzB,WAAW,OAAO;CACpB,GACA,CAAC,UAAU,CACb;CAEA,MAAM,WAAW,aAAa,YAAgC;EAC5D,gBAAgB,UAAU;CAC5B,GAAG,CAAC,CAAC;CAEL,OAAO;EACL;EACA,OAAO,OAAO;EACd;EACA;EACA;EACA,WAAW,OAAO;EAClB,WAAW,OAAO;EAClB,YAAY,OAAO;CACrB;AACF"}
1
+ {"version":3,"file":"use-slider.js","names":[],"sources":["../../../../src/ui/hooks/use-slider.ts"],"sourcesContent":["import type { SliderInput, SliderState } from '@videojs/core';\nimport {\n createSlider,\n type SliderApi,\n type SliderOptions,\n type SliderRootProps,\n type SliderRootStyle,\n type SliderThumbProps,\n selectControls,\n} from '@videojs/core/dom';\nimport { useSnapshot } from '@videojs/store/react';\nimport { applyStyles } from '@videojs/utils/dom';\nimport { useCallback, useEffect, useLayoutEffect, useRef, useState } from 'react';\n\nimport { useOptionalPlayer } from '../../player/context';\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useForceRender } from '../../utils/use-force-render';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseSliderOptions<State extends SliderState = SliderState> extends Pick<\n SliderOptions,\n | 'getPercent'\n | 'getStepPercent'\n | 'getLargeStepPercent'\n | 'changeThrottle'\n | 'onValueChange'\n | 'onValueCommit'\n | 'onDragStart'\n | 'onDragEnd'\n> {\n computeState: (input: SliderInput) => State;\n orientation?: 'horizontal' | 'vertical' | undefined;\n disabled?: boolean | undefined;\n /** Adjust a raw 0–100 percent for thumb alignment. Called for fill and pointer percents. */\n adjustPercent?: ((rawPercent: number, thumbSize: number, trackSize: number) => number) | undefined;\n /** Compute CSS variable map from the (possibly alignment-adjusted) state. */\n getCSSVars: (state: State) => Record<string, string>;\n}\n\nexport interface UseSliderReturnValue<State extends SliderState = SliderState> {\n state: State;\n input: SliderApi['input'];\n cssVars: Record<string, string>;\n rootRef: React.RefCallback<HTMLElement>;\n thumbRef: React.RefCallback<HTMLElement>;\n rootProps: SliderRootProps;\n rootStyle: SliderRootStyle;\n thumbProps: SliderThumbProps;\n}\n\n/**\n * Manages slider input lifecycle for React.\n *\n * Wraps `createSlider()` from `@videojs/core/dom` and subscribes to its input state via `useSnapshot`. Returns split\n * props for the root (pointer events) and thumb (keyboard/focus) elements.\n */\nexport function useSlider<State extends SliderState = SliderState>(\n options: UseSliderOptions<State>\n): UseSliderReturnValue<State> {\n const optionsRef = useLatestRef(options);\n\n const controls = useOptionalPlayer(selectControls);\n const requestControlsLock = controls?.requestControlsLock;\n const releaseControlsLockRef = useRef<(() => void) | null>(null);\n\n const releaseControlsLock = useCallback(() => {\n releaseControlsLockRef.current?.();\n releaseControlsLockRef.current = null;\n }, []);\n\n useEffect(() => releaseControlsLock, [releaseControlsLock]);\n\n const rootElementRef = useRef<HTMLElement | null>(null);\n const thumbElementRef = useRef<HTMLElement | null>(null);\n const forceRender = useForceRender();\n\n // Lazy-init the slider handle. Stable across re-renders.\n const [slider] = useState<SliderApi>(() => {\n const stableOptions: SliderOptions = {\n getElement: () => rootElementRef.current!,\n getThumbElement: () => thumbElementRef.current,\n getOrientation: () => optionsRef.current.orientation ?? 'horizontal',\n isDisabled: () => optionsRef.current.disabled ?? false,\n getPercent: () => optionsRef.current.getPercent(),\n getStepPercent: () => optionsRef.current.getStepPercent(),\n getLargeStepPercent: () => optionsRef.current.getLargeStepPercent(),\n changeThrottle: optionsRef.current.changeThrottle,\n adjustPercent: optionsRef.current.adjustPercent,\n onValueChange: (percent) => optionsRef.current.onValueChange?.(percent),\n onValueCommit: (percent) => optionsRef.current.onValueCommit?.(percent),\n onDragStart: () => {\n releaseControlsLockRef.current ??= requestControlsLock?.() ?? null;\n optionsRef.current.onDragStart?.();\n },\n onDragEnd: () => {\n releaseControlsLock();\n optionsRef.current.onDragEnd?.();\n },\n };\n\n return createSlider(stableOptions);\n });\n\n useDestroy(slider);\n\n // Percentage changes are rendered directly below. React only needs to\n // re-render when interaction state changes.\n const interaction = useSnapshot(slider.input, ({ dragging, pointing, focused }) => ({\n dragging,\n pointing,\n focused,\n }));\n const input = { ...slider.input.current, ...interaction };\n\n // Compute derived state from input + caller-provided projection.\n const state = options.computeState(input);\n\n // Force a synchronous re-render after mount so edge thumb alignment\n // can read DOM measurements from the now-populated element refs.\n useLayoutEffect(() => {\n if (state.thumbAlignment === 'edge' && rootElementRef.current && thumbElementRef.current) {\n forceRender();\n }\n }, [state.thumbAlignment]);\n\n // Adjust CSS var percents for edge thumb alignment using live DOM measurements.\n const cssVars = options.getCSSVars(slider.adjustForAlignment(state));\n\n const syncStyles = useCallback(\n (element = rootElementRef.current) => {\n if (!element) return;\n\n const next = optionsRef.current.computeState(slider.input.current);\n\n applyStyles(element, optionsRef.current.getCSSVars(slider.adjustForAlignment(next)));\n },\n [slider]\n );\n\n useLayoutEffect(() => {\n syncStyles();\n return slider.input.subscribe(syncStyles);\n }, [slider, syncStyles]);\n\n // Ref callbacks for root and thumb elements.\n const rootRef = useCallback(\n (element: HTMLElement | null) => {\n rootElementRef.current = element;\n syncStyles(element);\n },\n [syncStyles]\n );\n\n const thumbRef = useCallback((element: HTMLElement | null) => {\n thumbElementRef.current = element;\n }, []);\n\n return {\n state,\n input: slider.input,\n cssVars,\n rootRef,\n thumbRef,\n rootProps: slider.rootProps,\n rootStyle: slider.rootStyle,\n thumbProps: slider.thumbProps,\n };\n}\n\nexport namespace useSlider {\n export type Options = UseSliderOptions;\n export type ReturnValue = UseSliderReturnValue;\n}\n"],"mappings":";;;;;;;;;;;;;;;AAwDA,SAAgB,UACd,SAC6B;CAC7B,MAAM,aAAa,aAAa,OAAO;CAGvC,MAAM,sBADW,kBAAkB,cACA,CAAC,EAAE;CACtC,MAAM,yBAAyB,OAA4B,IAAI;CAE/D,MAAM,sBAAsB,kBAAkB;EAC5C,uBAAuB,UAAU;EACjC,uBAAuB,UAAU;CACnC,GAAG,CAAC,CAAC;CAEL,gBAAgB,qBAAqB,CAAC,mBAAmB,CAAC;CAE1D,MAAM,iBAAiB,OAA2B,IAAI;CACtD,MAAM,kBAAkB,OAA2B,IAAI;CACvD,MAAM,cAAc,eAAe;CAGnC,MAAM,CAAC,UAAU,eAA0B;EACzC,MAAM,gBAA+B;GACnC,kBAAkB,eAAe;GACjC,uBAAuB,gBAAgB;GACvC,sBAAsB,WAAW,QAAQ,eAAe;GACxD,kBAAkB,WAAW,QAAQ,YAAY;GACjD,kBAAkB,WAAW,QAAQ,WAAW;GAChD,sBAAsB,WAAW,QAAQ,eAAe;GACxD,2BAA2B,WAAW,QAAQ,oBAAoB;GAClE,gBAAgB,WAAW,QAAQ;GACnC,eAAe,WAAW,QAAQ;GAClC,gBAAgB,YAAY,WAAW,QAAQ,gBAAgB,OAAO;GACtE,gBAAgB,YAAY,WAAW,QAAQ,gBAAgB,OAAO;GACtE,mBAAmB;IACjB,uBAAuB,YAAY,sBAAsB,KAAK;IAC9D,WAAW,QAAQ,cAAc;GACnC;GACA,iBAAiB;IACf,oBAAoB;IACpB,WAAW,QAAQ,YAAY;GACjC;EACF;EAEA,OAAO,aAAa,aAAa;CACnC,CAAC;CAED,WAAW,MAAM;CAIjB,MAAM,cAAc,YAAY,OAAO,QAAQ,EAAE,UAAU,UAAU,eAAe;EAClF;EACA;EACA;CACF,EAAE;CACF,MAAM,QAAQ;EAAE,GAAG,OAAO,MAAM;EAAS,GAAG;CAAY;CAGxD,MAAM,QAAQ,QAAQ,aAAa,KAAK;CAIxC,sBAAsB;EACpB,IAAI,MAAM,mBAAmB,UAAU,eAAe,WAAW,gBAAgB,SAC/E,YAAY;CAEhB,GAAG,CAAC,MAAM,cAAc,CAAC;CAGzB,MAAM,UAAU,QAAQ,WAAW,OAAO,mBAAmB,KAAK,CAAC;CAEnE,MAAM,aAAa,aAChB,UAAU,eAAe,YAAY;EACpC,IAAI,CAAC,SAAS;EAEd,MAAM,OAAO,WAAW,QAAQ,aAAa,OAAO,MAAM,OAAO;EAEjE,YAAY,SAAS,WAAW,QAAQ,WAAW,OAAO,mBAAmB,IAAI,CAAC,CAAC;CACrF,GACA,CAAC,MAAM,CACT;CAEA,sBAAsB;EACpB,WAAW;EACX,OAAO,OAAO,MAAM,UAAU,UAAU;CAC1C,GAAG,CAAC,QAAQ,UAAU,CAAC;CAGvB,MAAM,UAAU,aACb,YAAgC;EAC/B,eAAe,UAAU;EACzB,WAAW,OAAO;CACpB,GACA,CAAC,UAAU,CACb;CAEA,MAAM,WAAW,aAAa,YAAgC;EAC5D,gBAAgB,UAAU;CAC5B,GAAG,CAAC,CAAC;CAEL,OAAO;EACL;EACA,OAAO,OAAO;EACd;EACA;EACA;EACA,WAAW,OAAO;EAClB,WAAW,OAAO;EAClB,YAAY,OAAO;CACrB;AACF"}
@@ -1,5 +1,11 @@
1
1
  import { HotkeyShortcutDetails } from "@videojs/core/dom";
2
2
  //#region src/ui/hotkey/use-hotkey-shortcut.d.ts
3
+ /**
4
+ * Returns display and ARIA metadata for a registered hotkey action in the current player.
5
+ *
6
+ * @param action - Hotkey action to look up. Returns empty details when absent.
7
+ * @param value - Optional action value used to match value-dependent shortcuts.
8
+ */
3
9
  declare function useHotkeyShortcut(action: string | undefined, value?: number | undefined): HotkeyShortcutDetails;
4
10
  //#endregion
5
11
  export { useHotkeyShortcut };
@@ -1 +1 @@
1
- {"version":3,"file":"use-hotkey-shortcut.d.ts","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey-shortcut.ts"],"mappings":";;iBAKgB,kBAAkB,4BAA4B,6BAA6B"}
1
+ {"version":3,"file":"use-hotkey-shortcut.d.ts","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey-shortcut.ts"],"mappings":";;;;;;;;iBAWgB,kBAAkB,4BAA4B,6BAA6B"}
@@ -2,6 +2,12 @@ import { useContainer } from "../../player/context.js";
2
2
  import { getHotkeyCoordinator } from "@videojs/core/dom";
3
3
  import { useEffect, useState } from "react";
4
4
  //#region src/ui/hotkey/use-hotkey-shortcut.ts
5
+ /**
6
+ * Returns display and ARIA metadata for a registered hotkey action in the current player.
7
+ *
8
+ * @param action - Hotkey action to look up. Returns empty details when absent.
9
+ * @param value - Optional action value used to match value-dependent shortcuts.
10
+ */
5
11
  function useHotkeyShortcut(action, value) {
6
12
  const container = useContainer();
7
13
  const [shortcut, setShortcut] = useState({});
@@ -1 +1 @@
1
- {"version":3,"file":"use-hotkey-shortcut.js","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey-shortcut.ts"],"sourcesContent":["import { getHotkeyCoordinator, type HotkeyShortcutDetails } from '@videojs/core/dom';\nimport { useEffect, useState } from 'react';\n\nimport { useContainer } from '../../player/context';\n\nexport function useHotkeyShortcut(action: string | undefined, value?: number | undefined): HotkeyShortcutDetails {\n const container = useContainer();\n\n const [shortcut, setShortcut] = useState<HotkeyShortcutDetails>({});\n\n useEffect(() => {\n if (!container || !action) {\n setShortcut({});\n return;\n }\n\n const coordinator = getHotkeyCoordinator(container);\n const update = () => setShortcut(coordinator.getShortcut(action, value));\n\n update();\n return coordinator.subscribeShortcutChanges(update);\n }, [container, action, value]);\n\n return shortcut;\n}\n"],"mappings":";;;;AAKA,SAAgB,kBAAkB,QAA4B,OAAmD;CAC/G,MAAM,YAAY,aAAa;CAE/B,MAAM,CAAC,UAAU,eAAe,SAAgC,CAAC,CAAC;CAElE,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ;GACzB,YAAY,CAAC,CAAC;GACd;EACF;EAEA,MAAM,cAAc,qBAAqB,SAAS;EAClD,MAAM,eAAe,YAAY,YAAY,YAAY,QAAQ,KAAK,CAAC;EAEvE,OAAO;EACP,OAAO,YAAY,yBAAyB,MAAM;CACpD,GAAG;EAAC;EAAW;EAAQ;CAAK,CAAC;CAE7B,OAAO;AACT"}
1
+ {"version":3,"file":"use-hotkey-shortcut.js","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey-shortcut.ts"],"sourcesContent":["import { getHotkeyCoordinator, type HotkeyShortcutDetails } from '@videojs/core/dom';\nimport { useEffect, useState } from 'react';\n\nimport { useContainer } from '../../player/context';\n\n/**\n * Returns display and ARIA metadata for a registered hotkey action in the current player.\n *\n * @param action - Hotkey action to look up. Returns empty details when absent.\n * @param value - Optional action value used to match value-dependent shortcuts.\n */\nexport function useHotkeyShortcut(action: string | undefined, value?: number | undefined): HotkeyShortcutDetails {\n const container = useContainer();\n\n const [shortcut, setShortcut] = useState<HotkeyShortcutDetails>({});\n\n useEffect(() => {\n if (!container || !action) {\n setShortcut({});\n return;\n }\n\n const coordinator = getHotkeyCoordinator(container);\n const update = () => setShortcut(coordinator.getShortcut(action, value));\n\n update();\n return coordinator.subscribeShortcutChanges(update);\n }, [container, action, value]);\n\n return shortcut;\n}\n"],"mappings":";;;;;;;;;;AAWA,SAAgB,kBAAkB,QAA4B,OAAmD;CAC/G,MAAM,YAAY,aAAa;CAE/B,MAAM,CAAC,UAAU,eAAe,SAAgC,CAAC,CAAC;CAElE,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ;GACzB,YAAY,CAAC,CAAC;GACd;EACF;EAEA,MAAM,cAAc,qBAAqB,SAAS;EAClD,MAAM,eAAe,YAAY,YAAY,YAAY,QAAQ,KAAK,CAAC;EAEvE,OAAO;EACP,OAAO,YAAY,yBAAyB,MAAM;CACpD,GAAG;EAAC;EAAW;EAAQ;CAAK,CAAC;CAE7B,OAAO;AACT"}
@@ -6,6 +6,11 @@ interface UseHotkeyOptions {
6
6
  repeatable?: boolean;
7
7
  disabled?: boolean;
8
8
  }
9
+ /**
10
+ * Registers a keyboard shortcut through the current player's hotkey coordinator.
11
+ *
12
+ * @param options - Shortcut keys, activation callback, scope, repeat behavior, and disabled state.
13
+ */
9
14
  declare function useHotkey(options: UseHotkeyOptions): void;
10
15
  //#endregion
11
16
  export { UseHotkeyOptions, useHotkey };
@@ -1 +1 @@
1
- {"version":3,"file":"use-hotkey.d.ts","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey.ts"],"mappings":";UAMiB;EACf;EACA,aAAa,OAAO,eAAe;EACnC;EACA;EACA;;iBAGc,UAAU,SAAS"}
1
+ {"version":3,"file":"use-hotkey.d.ts","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey.ts"],"mappings":";UAMiB;EACf;EACA,aAAa,OAAO,eAAe;EACnC;EACA;EACA;;;;;;;iBAQc,UAAU,SAAS"}
@@ -3,6 +3,11 @@ import { useLatestRef } from "../../utils/use-latest-ref.js";
3
3
  import { createHotkey } from "@videojs/core/dom";
4
4
  import { useEffect } from "react";
5
5
  //#region src/ui/hotkey/use-hotkey.ts
6
+ /**
7
+ * Registers a keyboard shortcut through the current player's hotkey coordinator.
8
+ *
9
+ * @param options - Shortcut keys, activation callback, scope, repeat behavior, and disabled state.
10
+ */
6
11
  function useHotkey(options) {
7
12
  const { keys, target = "player", repeatable = true, disabled = false } = options;
8
13
  const container = useContainer();
@@ -1 +1 @@
1
- {"version":3,"file":"use-hotkey.js","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey.ts"],"sourcesContent":["import { createHotkey } from '@videojs/core/dom';\nimport { useEffect } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseHotkeyOptions {\n keys: string;\n onActivate: (event: KeyboardEvent, key: string) => void;\n target?: 'player' | 'document';\n repeatable?: boolean;\n disabled?: boolean;\n}\n\nexport function useHotkey(options: UseHotkeyOptions): void {\n const { keys, target = 'player', repeatable = true, disabled = false } = options;\n const container = useContainer();\n const onActivateRef = useLatestRef(options.onActivate);\n\n useEffect(() => {\n if (!container || !keys || disabled) return;\n\n return createHotkey(container, {\n keys,\n target,\n repeatable,\n disabled,\n onActivate: (event, key) => onActivateRef.current(event, key),\n });\n }, [container, keys, target, repeatable, disabled]);\n}\n"],"mappings":";;;;;AAcA,SAAgB,UAAU,SAAiC;CACzD,MAAM,EAAE,MAAM,SAAS,UAAU,aAAa,MAAM,WAAW,UAAU;CACzE,MAAM,YAAY,aAAa;CAC/B,MAAM,gBAAgB,aAAa,QAAQ,UAAU;CAErD,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ,UAAU;EAErC,OAAO,aAAa,WAAW;GAC7B;GACA;GACA;GACA;GACA,aAAa,OAAO,QAAQ,cAAc,QAAQ,OAAO,GAAG;EAC9D,CAAC;CACH,GAAG;EAAC;EAAW;EAAM;EAAQ;EAAY;CAAQ,CAAC;AACpD"}
1
+ {"version":3,"file":"use-hotkey.js","names":[],"sources":["../../../../src/ui/hotkey/use-hotkey.ts"],"sourcesContent":["import { createHotkey } from '@videojs/core/dom';\nimport { useEffect } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport interface UseHotkeyOptions {\n keys: string;\n onActivate: (event: KeyboardEvent, key: string) => void;\n target?: 'player' | 'document';\n repeatable?: boolean;\n disabled?: boolean;\n}\n\n/**\n * Registers a keyboard shortcut through the current player's hotkey coordinator.\n *\n * @param options - Shortcut keys, activation callback, scope, repeat behavior, and disabled state.\n */\nexport function useHotkey(options: UseHotkeyOptions): void {\n const { keys, target = 'player', repeatable = true, disabled = false } = options;\n const container = useContainer();\n const onActivateRef = useLatestRef(options.onActivate);\n\n useEffect(() => {\n if (!container || !keys || disabled) return;\n\n return createHotkey(container, {\n keys,\n target,\n repeatable,\n disabled,\n onActivate: (event, key) => onActivateRef.current(event, key),\n });\n }, [container, keys, target, repeatable, disabled]);\n}\n"],"mappings":";;;;;;;;;;AAmBA,SAAgB,UAAU,SAAiC;CACzD,MAAM,EAAE,MAAM,SAAS,UAAU,aAAa,MAAM,WAAW,UAAU;CACzE,MAAM,YAAY,aAAa;CAC/B,MAAM,gBAAgB,aAAa,QAAQ,UAAU;CAErD,gBAAgB;EACd,IAAI,CAAC,aAAa,CAAC,QAAQ,UAAU;EAErC,OAAO,aAAa,WAAW;GAC7B;GACA;GACA;GACA;GACA,aAAa,OAAO,QAAQ,cAAc,QAAQ,OAAO,GAAG;EAC9D,CAAC;CACH,GAAG;EAAC;EAAW;EAAM;EAAQ;EAAY;CAAQ,CAAC;AACpD"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-indicator-visibility.js","names":[],"sources":["../../../../src/ui/input-indicator/use-indicator-visibility.ts"],"sourcesContent":["import type { IndicatorVisibilityHandle } from '@videojs/core';\nimport { getIndicatorVisibilityCoordinator } from '@videojs/core/dom';\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport function useIndicatorVisibility(close: () => void): () => void {\n const container = useContainer();\n const closeRef = useLatestRef(close);\n const coordinatorRef = useRef<ReturnType<typeof getIndicatorVisibilityCoordinator> | null>(null);\n const [handle] = useState<IndicatorVisibilityHandle>(() => ({\n close: () => closeRef.current(),\n }));\n\n useEffect(() => {\n if (!container) return;\n\n const coordinator = getIndicatorVisibilityCoordinator(container);\n coordinatorRef.current = coordinator;\n\n return coordinator.register(handle);\n }, [container, handle]);\n\n return useCallback(() => {\n coordinatorRef.current?.show(handle);\n }, [handle]);\n}\n"],"mappings":";;;;;AAOA,SAAgB,uBAAuB,OAA+B;CACpE,MAAM,YAAY,aAAa;CAC/B,MAAM,WAAW,aAAa,KAAK;CACnC,MAAM,iBAAiB,OAAoE,IAAI;CAC/F,MAAM,CAAC,UAAU,gBAA2C,EAC1D,aAAa,SAAS,QAAQ,EAChC,EAAE;CAEF,gBAAgB;EACd,IAAI,CAAC,WAAW;EAEhB,MAAM,cAAc,kCAAkC,SAAS;EAC/D,eAAe,UAAU;EAEzB,OAAO,YAAY,SAAS,MAAM;CACpC,GAAG,CAAC,WAAW,MAAM,CAAC;CAEtB,OAAO,kBAAkB;EACvB,eAAe,SAAS,KAAK,MAAM;CACrC,GAAG,CAAC,MAAM,CAAC;AACb"}
1
+ {"version":3,"file":"use-indicator-visibility.js","names":[],"sources":["../../../../src/ui/input-indicator/use-indicator-visibility.ts"],"sourcesContent":["import type { IndicatorVisibilityHandle } from '@videojs/core';\nimport { getIndicatorVisibilityCoordinator } from '@videojs/core/dom';\nimport { useCallback, useEffect, useRef, useState } from 'react';\n\nimport { useContainer } from '../../player/context';\nimport { useLatestRef } from '../../utils/use-latest-ref';\n\nexport function useIndicatorVisibility(close: () => void): () => void {\n const container = useContainer();\n const closeRef = useLatestRef(close);\n const coordinatorRef = useRef<ReturnType<typeof getIndicatorVisibilityCoordinator> | null>(null);\n const [handle] = useState<IndicatorVisibilityHandle>(() => ({\n close: () => closeRef.current(),\n }));\n\n useEffect(() => {\n if (!container) return;\n\n const coordinator = getIndicatorVisibilityCoordinator(container);\n\n coordinatorRef.current = coordinator;\n\n return coordinator.register(handle);\n }, [container, handle]);\n\n return useCallback(() => {\n coordinatorRef.current?.show(handle);\n }, [handle]);\n}\n"],"mappings":";;;;;AAOA,SAAgB,uBAAuB,OAA+B;CACpE,MAAM,YAAY,aAAa;CAC/B,MAAM,WAAW,aAAa,KAAK;CACnC,MAAM,iBAAiB,OAAoE,IAAI;CAC/F,MAAM,CAAC,UAAU,gBAA2C,EAC1D,aAAa,SAAS,QAAQ,EAChC,EAAE;CAEF,gBAAgB;EACd,IAAI,CAAC,WAAW;EAEhB,MAAM,cAAc,kCAAkC,SAAS;EAE/D,eAAe,UAAU;EAEzB,OAAO,YAAY,SAAS,MAAM;CACpC,GAAG,CAAC,WAAW,MAAM,CAAC;CAEtB,OAAO,kBAAkB;EACvB,eAAe,SAAS,KAAK,MAAM;CACrC,GAAG,CAAC,MAAM,CAAC;AACb"}
@@ -12,7 +12,8 @@ function useInputIndicatorRoot(createCore, props, options) {
12
12
  useInputActionSubscription((event, snapshot) => {
13
13
  if (core.processEvent(event, snapshot)) showIndicator();
14
14
  });
15
- return useRenderedIndicatorState(useSyncExternalStore((callback) => core.state.subscribe(callback), () => core.state.current, () => core.state.current), options);
15
+ const currentState = useSyncExternalStore((callback) => core.state.subscribe(callback), () => core.state.current, () => core.state.current);
16
+ return useRenderedIndicatorState(currentState, options);
16
17
  }
17
18
  //#endregion
18
19
  export { useInputIndicatorRoot };
@@ -1 +1 @@
1
- {"version":3,"file":"use-input-indicator-root.js","names":[],"sources":["../../../../src/ui/input-indicator/use-input-indicator-root.ts"],"sourcesContent":["import type { IndicatorLifecycleState, InputActionEvent, MediaSnapshot } from '@videojs/core';\nimport type { State as StoreState } from '@videojs/store';\nimport { useState, useSyncExternalStore } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useIndicatorVisibility } from './use-indicator-visibility';\nimport { useInputActionSubscription } from './use-input-action-subscription';\nimport { type RenderedIndicatorOptions, useRenderedIndicatorState } from './use-rendered-indicator-state';\n\ninterface InputIndicatorRootCore<IndicatorState extends IndicatorLifecycleState, Props> {\n readonly state: StoreState<IndicatorState>;\n setProps(props: Props): void;\n destroy(): void;\n close(): void;\n processEvent(event: InputActionEvent, snapshot: MediaSnapshot): boolean;\n}\n\nexport function useInputIndicatorRoot<IndicatorState extends IndicatorLifecycleState, Props>(\n createCore: () => InputIndicatorRootCore<IndicatorState, Props>,\n props: Props,\n options?: RenderedIndicatorOptions\n) {\n const [core] = useState(createCore);\n useDestroy(core);\n core.setProps(props);\n const showIndicator = useIndicatorVisibility(() => core.close());\n\n useInputActionSubscription((event, snapshot) => {\n if (core.processEvent(event, snapshot)) showIndicator();\n });\n\n const currentState = useSyncExternalStore(\n (callback) => core.state.subscribe(callback),\n () => core.state.current,\n () => core.state.current\n );\n\n return useRenderedIndicatorState(currentState, options);\n}\n"],"mappings":";;;;;;AAiBA,SAAgB,sBACd,YACA,OACA,SACA;CACA,MAAM,CAAC,QAAQ,SAAS,UAAU;CAClC,WAAW,IAAI;CACf,KAAK,SAAS,KAAK;CACnB,MAAM,gBAAgB,6BAA6B,KAAK,MAAM,CAAC;CAE/D,4BAA4B,OAAO,aAAa;EAC9C,IAAI,KAAK,aAAa,OAAO,QAAQ,GAAG,cAAc;CACxD,CAAC;CAQD,OAAO,0BANc,sBAClB,aAAa,KAAK,MAAM,UAAU,QAAQ,SACrC,KAAK,MAAM,eACX,KAAK,MAAM,OAGyB,GAAG,OAAO;AACxD"}
1
+ {"version":3,"file":"use-input-indicator-root.js","names":[],"sources":["../../../../src/ui/input-indicator/use-input-indicator-root.ts"],"sourcesContent":["import type { IndicatorLifecycleState, InputActionEvent, MediaSnapshot } from '@videojs/core';\nimport type { State as StoreState } from '@videojs/store';\nimport { useState, useSyncExternalStore } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\nimport { useIndicatorVisibility } from './use-indicator-visibility';\nimport { useInputActionSubscription } from './use-input-action-subscription';\nimport { type RenderedIndicatorOptions, useRenderedIndicatorState } from './use-rendered-indicator-state';\n\ninterface InputIndicatorRootCore<IndicatorState extends IndicatorLifecycleState, Props> {\n readonly state: StoreState<IndicatorState>;\n setProps(props: Props): void;\n destroy(): void;\n close(): void;\n processEvent(event: InputActionEvent, snapshot: MediaSnapshot): boolean;\n}\n\nexport function useInputIndicatorRoot<IndicatorState extends IndicatorLifecycleState, Props>(\n createCore: () => InputIndicatorRootCore<IndicatorState, Props>,\n props: Props,\n options?: RenderedIndicatorOptions\n) {\n const [core] = useState(createCore);\n\n useDestroy(core);\n core.setProps(props);\n const showIndicator = useIndicatorVisibility(() => core.close());\n\n useInputActionSubscription((event, snapshot) => {\n if (core.processEvent(event, snapshot)) showIndicator();\n });\n\n const currentState = useSyncExternalStore(\n (callback) => core.state.subscribe(callback),\n () => core.state.current,\n () => core.state.current\n );\n\n return useRenderedIndicatorState(currentState, options);\n}\n"],"mappings":";;;;;;AAiBA,SAAgB,sBACd,YACA,OACA,SACA;CACA,MAAM,CAAC,QAAQ,SAAS,UAAU;CAElC,WAAW,IAAI;CACf,KAAK,SAAS,KAAK;CACnB,MAAM,gBAAgB,6BAA6B,KAAK,MAAM,CAAC;CAE/D,4BAA4B,OAAO,aAAa;EAC9C,IAAI,KAAK,aAAa,OAAO,QAAQ,GAAG,cAAc;CACxD,CAAC;CAED,MAAM,eAAe,sBAClB,aAAa,KAAK,MAAM,UAAU,QAAQ,SACrC,KAAK,MAAM,eACX,KAAK,MAAM,OACnB;CAEA,OAAO,0BAA0B,cAAc,OAAO;AACxD"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-rendered-indicator-state.js","names":[],"sources":["../../../../src/ui/input-indicator/use-rendered-indicator-state.ts"],"sourcesContent":["import { getRenderedIndicatorState, type IndicatorLifecycleState, isIndicatorPresent } from '@videojs/core';\nimport { createTransition } from '@videojs/core/dom';\nimport { useLayoutEffect, useRef, useState, useSyncExternalStore } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\n\nexport interface RenderedIndicatorOptions {\n replayOnUpdate?: boolean | undefined;\n}\n\nexport function useRenderedIndicatorState<State extends IndicatorLifecycleState>(\n currentState: State,\n options: RenderedIndicatorOptions = {}\n) {\n const elementRef = useRef<HTMLElement>(null);\n const currentStateRef = useRef(currentState);\n const snapshotRef = useRef(currentState);\n const [transition] = useState(() => createTransition());\n useDestroy(transition);\n currentStateRef.current = currentState;\n\n const transitionState = useSyncExternalStore(\n (callback) => transition.state.subscribe(callback),\n () => transition.state.current,\n () => transition.state.current\n );\n\n const { generation, open } = currentState;\n\n useLayoutEffect(() => {\n if (open) {\n const nextState = currentStateRef.current;\n if (nextState.generation !== generation) return;\n\n snapshotRef.current = nextState;\n const transitionState = transition.state.current;\n if (!transitionState.active || options.replayOnUpdate !== false) {\n void transition.open(elementRef.current);\n } else if (transitionState.status === 'ending') {\n transition.cancel();\n }\n return;\n }\n\n const { active, status } = transition.state.current;\n if (active && status !== 'ending') {\n void transition.close(elementRef.current);\n }\n }, [generation, open, options.replayOnUpdate, transition]);\n\n return {\n elementRef,\n present: isIndicatorPresent(currentState, transitionState),\n state: getRenderedIndicatorState(currentState, snapshotRef.current, transitionState),\n };\n}\n"],"mappings":";;;;;AAUA,SAAgB,0BACd,cACA,UAAoC,CAAC,GACrC;CACA,MAAM,aAAa,OAAoB,IAAI;CAC3C,MAAM,kBAAkB,OAAO,YAAY;CAC3C,MAAM,cAAc,OAAO,YAAY;CACvC,MAAM,CAAC,cAAc,eAAe,iBAAiB,CAAC;CACtD,WAAW,UAAU;CACrB,gBAAgB,UAAU;CAE1B,MAAM,kBAAkB,sBACrB,aAAa,WAAW,MAAM,UAAU,QAAQ,SAC3C,WAAW,MAAM,eACjB,WAAW,MAAM,OACzB;CAEA,MAAM,EAAE,YAAY,SAAS;CAE7B,sBAAsB;EACpB,IAAI,MAAM;GACR,MAAM,YAAY,gBAAgB;GAClC,IAAI,UAAU,eAAe,YAAY;GAEzC,YAAY,UAAU;GACtB,MAAM,kBAAkB,WAAW,MAAM;GACzC,IAAI,CAAC,gBAAgB,UAAU,QAAQ,mBAAmB,OACxD,WAAgB,KAAK,WAAW,OAAO;QAClC,IAAI,gBAAgB,WAAW,UACpC,WAAW,OAAO;GAEpB;EACF;EAEA,MAAM,EAAE,QAAQ,WAAW,WAAW,MAAM;EAC5C,IAAI,UAAU,WAAW,UACvB,WAAgB,MAAM,WAAW,OAAO;CAE5C,GAAG;EAAC;EAAY;EAAM,QAAQ;EAAgB;CAAU,CAAC;CAEzD,OAAO;EACL;EACA,SAAS,mBAAmB,cAAc,eAAe;EACzD,OAAO,0BAA0B,cAAc,YAAY,SAAS,eAAe;CACrF;AACF"}
1
+ {"version":3,"file":"use-rendered-indicator-state.js","names":[],"sources":["../../../../src/ui/input-indicator/use-rendered-indicator-state.ts"],"sourcesContent":["import { getRenderedIndicatorState, type IndicatorLifecycleState, isIndicatorPresent } from '@videojs/core';\nimport { createTransition } from '@videojs/core/dom';\nimport { useLayoutEffect, useRef, useState, useSyncExternalStore } from 'react';\n\nimport { useDestroy } from '../../utils/use-destroy';\n\nexport interface RenderedIndicatorOptions {\n replayOnUpdate?: boolean | undefined;\n}\n\nexport function useRenderedIndicatorState<State extends IndicatorLifecycleState>(\n currentState: State,\n options: RenderedIndicatorOptions = {}\n) {\n const elementRef = useRef<HTMLElement>(null);\n const currentStateRef = useRef(currentState);\n const snapshotRef = useRef(currentState);\n const [transition] = useState(() => createTransition());\n\n useDestroy(transition);\n currentStateRef.current = currentState;\n\n const transitionState = useSyncExternalStore(\n (callback) => transition.state.subscribe(callback),\n () => transition.state.current,\n () => transition.state.current\n );\n\n const { generation, open } = currentState;\n\n useLayoutEffect(() => {\n if (open) {\n const nextState = currentStateRef.current;\n if (nextState.generation !== generation) return;\n\n snapshotRef.current = nextState;\n const transitionState = transition.state.current;\n\n if (!transitionState.active || options.replayOnUpdate !== false) {\n void transition.open(elementRef.current);\n } else if (transitionState.status === 'ending') {\n transition.cancel();\n }\n\n return;\n }\n\n const { active, status } = transition.state.current;\n\n if (active && status !== 'ending') {\n void transition.close(elementRef.current);\n }\n }, [generation, open, options.replayOnUpdate, transition]);\n\n return {\n elementRef,\n present: isIndicatorPresent(currentState, transitionState),\n state: getRenderedIndicatorState(currentState, snapshotRef.current, transitionState),\n };\n}\n"],"mappings":";;;;;AAUA,SAAgB,0BACd,cACA,UAAoC,CAAC,GACrC;CACA,MAAM,aAAa,OAAoB,IAAI;CAC3C,MAAM,kBAAkB,OAAO,YAAY;CAC3C,MAAM,cAAc,OAAO,YAAY;CACvC,MAAM,CAAC,cAAc,eAAe,iBAAiB,CAAC;CAEtD,WAAW,UAAU;CACrB,gBAAgB,UAAU;CAE1B,MAAM,kBAAkB,sBACrB,aAAa,WAAW,MAAM,UAAU,QAAQ,SAC3C,WAAW,MAAM,eACjB,WAAW,MAAM,OACzB;CAEA,MAAM,EAAE,YAAY,SAAS;CAE7B,sBAAsB;EACpB,IAAI,MAAM;GACR,MAAM,YAAY,gBAAgB;GAClC,IAAI,UAAU,eAAe,YAAY;GAEzC,YAAY,UAAU;GACtB,MAAM,kBAAkB,WAAW,MAAM;GAEzC,IAAI,CAAC,gBAAgB,UAAU,QAAQ,mBAAmB,OACxD,WAAgB,KAAK,WAAW,OAAO;QAClC,IAAI,gBAAgB,WAAW,UACpC,WAAW,OAAO;GAGpB;EACF;EAEA,MAAM,EAAE,QAAQ,WAAW,WAAW,MAAM;EAE5C,IAAI,UAAU,WAAW,UACvB,WAAgB,MAAM,WAAW,OAAO;CAE5C,GAAG;EAAC;EAAY;EAAM,QAAQ;EAAgB;CAAU,CAAC;CAEzD,OAAO;EACL;EACA,SAAS,mBAAmB,cAAc,eAAe;EACzD,OAAO,0BAA0B,cAAc,YAAY,SAAS,eAAe;CACrF;AACF"}
@@ -3,21 +3,18 @@ import { LiveButtonCore } from "@videojs/core";
3
3
  //#region src/ui/live-button/live-button.d.ts
4
4
  interface LiveButtonProps extends UIComponentProps<'button', LiveButtonCore.State>, LiveButtonCore.Props {}
5
5
  /**
6
- * A button that indicates live status and seeks to the live edge when
7
- * pressed. Exposes `data-live` while the stream is live (or DVR) and
8
- * `data-live-edge` while playing at the live edge so skins can style a
9
- * red-dot ↔ grey-dot treatment.
6
+ * A button that indicates live status and seeks to the live edge when pressed. Exposes `data-live` while the stream is
7
+ * live (or DVR) and `data-live-edge` while playing at the live edge so skins can style a red-dot ↔ grey-dot treatment.
10
8
  *
11
- * Selects from `live`, `time`, and `buffer` features and composes them
12
- * itself rather than going through `createMediaButton`, since the LiveButton
13
- * needs three feature slices to detect the live edge and seek.
9
+ * Selects from `live`, `time`, and `buffer` features and composes them itself rather than going through
10
+ * `createMediaButton`, since the LiveButton needs three feature slices to detect the live edge and seek.
14
11
  *
15
12
  * Displays the translated live badge when no children are provided.
16
13
  *
17
14
  * @example
18
- * ```tsx
19
- * <LiveButton />
20
- * ```
15
+ * ```tsx
16
+ * <LiveButton />;
17
+ * ```;
21
18
  *
22
19
  * @see https://github.com/video-dev/media-ui-extensions/blob/main/proposals/0007-live-edge.md
23
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"live-button.d.ts","names":[],"sources":["../../../../src/ui/live-button/live-button.tsx"],"mappings":";;;UAciB,wBAAwB,2BAA2B,eAAe,QAAQ,eAAe;;;;;;;;;;;;;;;;;;;;cAqB7F,4BAAU,0BAAA,KAAA,0CAAA,cAAA;kBA0EN;OACH,QAAQ;OACR,QAAQ,eAAe"}
1
+ {"version":3,"file":"live-button.d.ts","names":[],"sources":["../../../../src/ui/live-button/live-button.tsx"],"mappings":";;;UAciB,wBAAwB,2BAA2B,eAAe,QAAQ,eAAe;;;;;;;;;;;;;;;;;cAkB7F,4BAAU,0BAAA,KAAA,0CAAA,cAAA;kBA8EN;OACH,QAAQ;OACR,QAAQ,eAAe"}
@@ -10,21 +10,18 @@ import { LiveButtonCore, LiveButtonDataAttrs } from "@videojs/core";
10
10
  //#region src/ui/live-button/live-button.tsx
11
11
  const DISPLAY_NAME = "LiveButton";
12
12
  /**
13
- * A button that indicates live status and seeks to the live edge when
14
- * pressed. Exposes `data-live` while the stream is live (or DVR) and
15
- * `data-live-edge` while playing at the live edge so skins can style a
16
- * red-dot ↔ grey-dot treatment.
13
+ * A button that indicates live status and seeks to the live edge when pressed. Exposes `data-live` while the stream is
14
+ * live (or DVR) and `data-live-edge` while playing at the live edge so skins can style a red-dot ↔ grey-dot treatment.
17
15
  *
18
- * Selects from `live`, `time`, and `buffer` features and composes them
19
- * itself rather than going through `createMediaButton`, since the LiveButton
20
- * needs three feature slices to detect the live edge and seek.
16
+ * Selects from `live`, `time`, and `buffer` features and composes them itself rather than going through
17
+ * `createMediaButton`, since the LiveButton needs three feature slices to detect the live edge and seek.
21
18
  *
22
19
  * Displays the translated live badge when no children are provided.
23
20
  *
24
21
  * @example
25
- * ```tsx
26
- * <LiveButton />
27
- * ```
22
+ * ```tsx
23
+ * <LiveButton />;
24
+ * ```;
28
25
  *
29
26
  * @see https://github.com/video-dev/media-ui-extensions/blob/main/proposals/0007-live-edge.md
30
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"live-button.js","names":[],"sources":["../../../../src/ui/live-button/live-button.tsx"],"sourcesContent":["import { LiveButtonCore, LiveButtonDataAttrs, type LiveButtonMediaState } from '@videojs/core';\nimport { logMissingFeature, selectBuffer, selectLive, selectTime } from '@videojs/core/dom';\nimport { translateText } from '@videojs/core/i18n';\nimport { forwardRef, type ReactNode, useLayoutEffect, useState } from 'react';\n\nimport { useTranslator } from '../../i18n/context';\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useButton } from '../hooks/use-button';\nimport { useOptionalTooltipContext } from '../tooltip/context';\n\nconst DISPLAY_NAME = 'LiveButton';\n\nexport interface LiveButtonProps extends UIComponentProps<'button', LiveButtonCore.State>, LiveButtonCore.Props {}\n\n/**\n * A button that indicates live status and seeks to the live edge when\n * pressed. Exposes `data-live` while the stream is live (or DVR) and\n * `data-live-edge` while playing at the live edge so skins can style a\n * red-dot ↔ grey-dot treatment.\n *\n * Selects from `live`, `time`, and `buffer` features and composes them\n * itself rather than going through `createMediaButton`, since the LiveButton\n * needs three feature slices to detect the live edge and seek.\n *\n * Displays the translated live badge when no children are provided.\n *\n * @example\n * ```tsx\n * <LiveButton />\n * ```\n *\n * @see https://github.com/video-dev/media-ui-extensions/blob/main/proposals/0007-live-edge.md\n */\nexport const LiveButton = forwardRef<HTMLButtonElement, LiveButtonProps>(\n function LiveButton(componentProps, forwardedRef): ReactNode {\n const { children, render, className, style, label, disabled, ...elementProps } = componentProps;\n\n const live = usePlayer(selectLive);\n const time = usePlayer(selectTime);\n const buffer = usePlayer(selectBuffer);\n\n const media: LiveButtonMediaState | null =\n live && time && buffer\n ? {\n currentTime: time.currentTime,\n seek: time.seek,\n seekable: buffer.seekable,\n liveEdgeStart: live.liveEdgeStart,\n targetLiveWindow: live.targetLiveWindow,\n }\n : null;\n\n const tooltipCtx = useOptionalTooltipContext();\n const translator = useTranslator();\n const [core] = useState(() => new LiveButtonCore());\n core.setProps({ label, disabled });\n\n const { getButtonProps, buttonRef } = useButton({\n displayName: DISPLAY_NAME,\n onActivate: () => {\n if (media) core.seekToLive(media);\n },\n isDisabled: () => !!disabled || !media,\n });\n\n if (media) core.setMedia(media);\n const state = media ? core.getState() : null;\n const labelText = state ? translateText(core.getLabel(state), translator) : undefined;\n\n useLayoutEffect(() => {\n if (!tooltipCtx) return;\n tooltipCtx.setContent(labelText ? { label: labelText } : undefined);\n return () => tooltipCtx.setContent(undefined);\n }, [tooltipCtx, labelText]);\n\n if (!media || !state) {\n if (__DEV__) logMissingFeature(DISPLAY_NAME, selectLive.displayName ?? 'live');\n return null;\n }\n\n const attrs = core.getAttrs(state);\n const labelAttr = attrs['aria-label'];\n const content = children ?? translateText(LiveButtonCore.defaultText, translator);\n\n return renderElement(\n 'button',\n { render, className, style },\n {\n state,\n stateAttrMap: LiveButtonDataAttrs,\n ref: [forwardedRef, buttonRef],\n props: [\n attrs,\n {\n children: content,\n ...elementProps,\n 'aria-label': labelAttr ? translateText(labelAttr, translator) : labelAttr,\n },\n getButtonProps(),\n ],\n }\n );\n }\n);\n\nLiveButton.displayName = DISPLAY_NAME;\n\nexport namespace LiveButton {\n export type Props = LiveButtonProps;\n export type State = LiveButtonCore.State;\n}\n"],"mappings":";;;;;;;;;;AAYA,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;AAuBrB,MAAa,aAAa,WACxB,SAAS,WAAW,gBAAgB,cAAyB;CAC3D,MAAM,EAAE,UAAU,QAAQ,WAAW,OAAO,OAAO,UAAU,GAAG,iBAAiB;CAEjF,MAAM,OAAO,UAAU,UAAU;CACjC,MAAM,OAAO,UAAU,UAAU;CACjC,MAAM,SAAS,UAAU,YAAY;CAErC,MAAM,QACJ,QAAQ,QAAQ,SACZ;EACE,aAAa,KAAK;EAClB,MAAM,KAAK;EACX,UAAU,OAAO;EACjB,eAAe,KAAK;EACpB,kBAAkB,KAAK;CACzB,IACA;CAEN,MAAM,aAAa,0BAA0B;CAC7C,MAAM,aAAa,cAAc;CACjC,MAAM,CAAC,QAAQ,eAAe,IAAI,eAAe,CAAC;CAClD,KAAK,SAAS;EAAE;EAAO;CAAS,CAAC;CAEjC,MAAM,EAAE,gBAAgB,cAAc,UAAU;EAC9C,aAAa;EACb,kBAAkB;GAChB,IAAI,OAAO,KAAK,WAAW,KAAK;EAClC;EACA,kBAAkB,CAAC,CAAC,YAAY,CAAC;CACnC,CAAC;CAED,IAAI,OAAO,KAAK,SAAS,KAAK;CAC9B,MAAM,QAAQ,QAAQ,KAAK,SAAS,IAAI;CACxC,MAAM,YAAY,QAAQ,cAAc,KAAK,SAAS,KAAK,GAAG,UAAU,IAAI,KAAA;CAE5E,sBAAsB;EACpB,IAAI,CAAC,YAAY;EACjB,WAAW,WAAW,YAAY,EAAE,OAAO,UAAU,IAAI,KAAA,CAAS;EAClE,aAAa,WAAW,WAAW,KAAA,CAAS;CAC9C,GAAG,CAAC,YAAY,SAAS,CAAC;CAE1B,IAAI,CAAC,SAAS,CAAC,OAAO;EACP,kBAAkB,cAAc,WAAW,eAAe,MAAM;EAC7E,OAAO;CACT;CAEA,MAAM,QAAQ,KAAK,SAAS,KAAK;CACjC,MAAM,YAAY,MAAM;CACxB,MAAM,UAAU,YAAY,cAAc,eAAe,aAAa,UAAU;CAEhF,OAAO,cACL,UACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,cAAc;EACd,KAAK,CAAC,cAAc,SAAS;EAC7B,OAAO;GACL;GACA;IACE,UAAU;IACV,GAAG;IACH,cAAc,YAAY,cAAc,WAAW,UAAU,IAAI;GACnE;GACA,eAAe;EACjB;CACF,CACF;AACF,CACF;AAEA,WAAW,cAAc"}
1
+ {"version":3,"file":"live-button.js","names":[],"sources":["../../../../src/ui/live-button/live-button.tsx"],"sourcesContent":["import { LiveButtonCore, LiveButtonDataAttrs, type LiveButtonMediaState } from '@videojs/core';\nimport { logMissingFeature, selectBuffer, selectLive, selectTime } from '@videojs/core/dom';\nimport { translateText } from '@videojs/core/i18n';\nimport { forwardRef, type ReactNode, useLayoutEffect, useState } from 'react';\n\nimport { useTranslator } from '../../i18n/context';\nimport { usePlayer } from '../../player/context';\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useButton } from '../hooks/use-button';\nimport { useOptionalTooltipContext } from '../tooltip/context';\n\nconst DISPLAY_NAME = 'LiveButton';\n\nexport interface LiveButtonProps extends UIComponentProps<'button', LiveButtonCore.State>, LiveButtonCore.Props {}\n\n/**\n * A button that indicates live status and seeks to the live edge when pressed. Exposes `data-live` while the stream is\n * live (or DVR) and `data-live-edge` while playing at the live edge so skins can style a red-dot ↔ grey-dot treatment.\n *\n * Selects from `live`, `time`, and `buffer` features and composes them itself rather than going through\n * `createMediaButton`, since the LiveButton needs three feature slices to detect the live edge and seek.\n *\n * Displays the translated live badge when no children are provided.\n *\n * @example\n * ```tsx\n * <LiveButton />;\n * ```;\n *\n * @see https://github.com/video-dev/media-ui-extensions/blob/main/proposals/0007-live-edge.md\n */\nexport const LiveButton = forwardRef<HTMLButtonElement, LiveButtonProps>(\n function LiveButton(componentProps, forwardedRef): ReactNode {\n const { children, render, className, style, label, disabled, ...elementProps } = componentProps;\n\n const live = usePlayer(selectLive);\n const time = usePlayer(selectTime);\n const buffer = usePlayer(selectBuffer);\n\n const media: LiveButtonMediaState | null =\n live && time && buffer\n ? {\n currentTime: time.currentTime,\n seek: time.seek,\n seekable: buffer.seekable,\n liveEdgeStart: live.liveEdgeStart,\n targetLiveWindow: live.targetLiveWindow,\n }\n : null;\n\n const tooltipCtx = useOptionalTooltipContext();\n const translator = useTranslator();\n const [core] = useState(() => new LiveButtonCore());\n\n core.setProps({ label, disabled });\n\n const { getButtonProps, buttonRef } = useButton({\n displayName: DISPLAY_NAME,\n onActivate: () => {\n if (media) core.seekToLive(media);\n },\n isDisabled: () => !!disabled || !media,\n });\n\n if (media) core.setMedia(media);\n\n const state = media ? core.getState() : null;\n const labelText = state ? translateText(core.getLabel(state), translator) : undefined;\n\n useLayoutEffect(() => {\n if (!tooltipCtx) return;\n\n tooltipCtx.setContent(labelText ? { label: labelText } : undefined);\n return () => tooltipCtx.setContent(undefined);\n }, [tooltipCtx, labelText]);\n\n if (!media || !state) {\n if (__DEV__) logMissingFeature(DISPLAY_NAME, selectLive.displayName ?? 'live');\n\n return null;\n }\n\n const attrs = core.getAttrs(state);\n const labelAttr = attrs['aria-label'];\n const content = children ?? translateText(LiveButtonCore.defaultText, translator);\n\n return renderElement(\n 'button',\n { render, className, style },\n {\n state,\n stateAttrMap: LiveButtonDataAttrs,\n ref: [forwardedRef, buttonRef],\n props: [\n attrs,\n {\n children: content,\n ...elementProps,\n 'aria-label': labelAttr ? translateText(labelAttr, translator) : labelAttr,\n },\n getButtonProps(),\n ],\n }\n );\n }\n);\n\nLiveButton.displayName = DISPLAY_NAME;\n\nexport namespace LiveButton {\n export type Props = LiveButtonProps;\n export type State = LiveButtonCore.State;\n}\n"],"mappings":";;;;;;;;;;AAYA,MAAM,eAAe;;;;;;;;;;;;;;;;;AAoBrB,MAAa,aAAa,WACxB,SAAS,WAAW,gBAAgB,cAAyB;CAC3D,MAAM,EAAE,UAAU,QAAQ,WAAW,OAAO,OAAO,UAAU,GAAG,iBAAiB;CAEjF,MAAM,OAAO,UAAU,UAAU;CACjC,MAAM,OAAO,UAAU,UAAU;CACjC,MAAM,SAAS,UAAU,YAAY;CAErC,MAAM,QACJ,QAAQ,QAAQ,SACZ;EACE,aAAa,KAAK;EAClB,MAAM,KAAK;EACX,UAAU,OAAO;EACjB,eAAe,KAAK;EACpB,kBAAkB,KAAK;CACzB,IACA;CAEN,MAAM,aAAa,0BAA0B;CAC7C,MAAM,aAAa,cAAc;CACjC,MAAM,CAAC,QAAQ,eAAe,IAAI,eAAe,CAAC;CAElD,KAAK,SAAS;EAAE;EAAO;CAAS,CAAC;CAEjC,MAAM,EAAE,gBAAgB,cAAc,UAAU;EAC9C,aAAa;EACb,kBAAkB;GAChB,IAAI,OAAO,KAAK,WAAW,KAAK;EAClC;EACA,kBAAkB,CAAC,CAAC,YAAY,CAAC;CACnC,CAAC;CAED,IAAI,OAAO,KAAK,SAAS,KAAK;CAE9B,MAAM,QAAQ,QAAQ,KAAK,SAAS,IAAI;CACxC,MAAM,YAAY,QAAQ,cAAc,KAAK,SAAS,KAAK,GAAG,UAAU,IAAI,KAAA;CAE5E,sBAAsB;EACpB,IAAI,CAAC,YAAY;EAEjB,WAAW,WAAW,YAAY,EAAE,OAAO,UAAU,IAAI,KAAA,CAAS;EAClE,aAAa,WAAW,WAAW,KAAA,CAAS;CAC9C,GAAG,CAAC,YAAY,SAAS,CAAC;CAE1B,IAAI,CAAC,SAAS,CAAC,OAAO;EACP,kBAAkB,cAAc,WAAW,eAAe,MAAM;EAE7E,OAAO;CACT;CAEA,MAAM,QAAQ,KAAK,SAAS,KAAK;CACjC,MAAM,YAAY,MAAM;CACxB,MAAM,UAAU,YAAY,cAAc,eAAe,aAAa,UAAU;CAEhF,OAAO,cACL,UACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,cAAc;EACd,KAAK,CAAC,cAAc,SAAS;EAC7B,OAAO;GACL;GACA;IACE,UAAU;IACV,GAAG;IACH,cAAc,YAAY,cAAc,WAAW,UAAU,IAAI;GACnE;GACA,eAAe;EACjB;CACF,CACF;AACF,CACF;AAEA,WAAW,cAAc"}
@@ -1,5 +1,5 @@
1
1
  import { MediaContainer, MenuApi, PositioningBoundary } from "@videojs/core/dom";
2
- import { MenuCore, MenuState, StateAttrMap as StateAttrMap$1 } from "@videojs/core";
2
+ import { MenuCore, MenuState } from "@videojs/core";
3
3
  //#region src/ui/menu/context.d.ts
4
4
  interface MenuContextValue {
5
5
  core: MenuCore;
@@ -8,13 +8,14 @@ interface MenuContextValue {
8
8
  state: MenuState;
9
9
  preferredSide: MenuState['side'];
10
10
  setPositionedSide: (side: MenuState['side']) => void;
11
- stateAttrMap: StateAttrMap$1<MenuState>;
12
11
  contentId: string;
13
12
  anchorName: string;
14
13
  boundary: PositioningBoundary;
15
14
  container: MediaContainer | null;
16
15
  }
16
+ /** Returns the current menu compound-component context. Throws outside `Menu.Root`. */
17
17
  declare function useMenuContext(): MenuContextValue;
18
+ /** Returns the nearest menu context, or `null` outside `Menu.Root`. */
18
19
  declare function useOptionalMenuContext(): MenuContextValue | null;
19
20
  //#endregion
20
21
  export { MenuContextValue, useMenuContext, useOptionalMenuContext };
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"mappings":";;;UAIiB;EACf,MAAM;EACN,MAAM;EACN,QAAQ;EACR,OAAO;EACP,eAAe;EACf,oBAAoB,MAAM;EAC1B,cAAc,eAAa;EAC3B;EACA;EACA,UAAU;EACV,WAAW;;iBAOG,kBAAkB;iBAMlB,0BAA0B"}
1
+ {"version":3,"file":"context.d.ts","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"mappings":";;;UAIiB;EACf,MAAM;EACN,MAAM;EACN,QAAQ;EACR,OAAO;EACP,eAAe;EACf,oBAAoB,MAAM;EAC1B;EACA;EACA,UAAU;EACV,WAAW;;;iBAQG,kBAAkB;;iBAQlB,0BAA0B"}
@@ -2,14 +2,23 @@ import { createContext, useContext } from "react";
2
2
  //#region src/ui/menu/context.tsx
3
3
  const MenuContext = createContext(null);
4
4
  const MenuContextProvider = MenuContext.Provider;
5
+ /** Returns the current menu compound-component context. Throws outside `Menu.Root`. */
5
6
  function useMenuContext() {
6
7
  const ctx = useContext(MenuContext);
7
8
  if (!ctx) throw new Error("Menu compound components must be used within a Menu.Root");
8
9
  return ctx;
9
10
  }
11
+ /** Returns the nearest menu context, or `null` outside `Menu.Root`. */
10
12
  function useOptionalMenuContext() {
11
13
  return useContext(MenuContext);
12
14
  }
15
+ const MenuPopupContext = createContext(null);
16
+ const MenuPopupContextProvider = MenuPopupContext.Provider;
17
+ function useMenuPopupContext() {
18
+ const ctx = useContext(MenuPopupContext);
19
+ if (!ctx) throw new Error("Menu.Content must be used within a Menu.Popup");
20
+ return ctx;
21
+ }
13
22
  const MenuGroupContext = createContext(null);
14
23
  const MenuGroupContextProvider = MenuGroupContext.Provider;
15
24
  function useMenuGroupContext() {
@@ -33,6 +42,6 @@ function useOptionalMenuTriggerChildContext() {
33
42
  return useContext(MenuTriggerChildContext);
34
43
  }
35
44
  //#endregion
36
- export { MenuContextProvider, MenuGroupContextProvider, MenuRadioGroupContextProvider, MenuRadioItemContextProvider, MenuTriggerChildContextProvider, useMenuContext, useMenuGroupContext, useMenuRadioGroupContext, useOptionalMenuContext, useOptionalMenuRadioItemContext, useOptionalMenuTriggerChildContext };
45
+ export { MenuContextProvider, MenuGroupContextProvider, MenuPopupContextProvider, MenuRadioGroupContextProvider, MenuRadioItemContextProvider, MenuTriggerChildContextProvider, useMenuContext, useMenuGroupContext, useMenuPopupContext, useMenuRadioGroupContext, useOptionalMenuContext, useOptionalMenuRadioItemContext, useOptionalMenuTriggerChildContext };
37
46
 
38
47
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"sourcesContent":["import type { MenuCore, MenuState, StateAttrMap } from '@videojs/core';\nimport type { MediaContainer, MenuApi, PositioningBoundary } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface MenuContextValue {\n core: MenuCore;\n menu: MenuApi;\n parent: MenuContextValue | null;\n state: MenuState;\n preferredSide: MenuState['side'];\n setPositionedSide: (side: MenuState['side']) => void;\n stateAttrMap: StateAttrMap<MenuState>;\n contentId: string;\n anchorName: string;\n boundary: PositioningBoundary;\n container: MediaContainer | null;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nexport const MenuContextProvider = MenuContext.Provider;\n\nexport function useMenuContext(): MenuContextValue {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu compound components must be used within a Menu.Root');\n return ctx;\n}\n\nexport function useOptionalMenuContext(): MenuContextValue | null {\n return useContext(MenuContext);\n}\n\n// ---------------------------------------------------------------------------\n// Group context — shared by group-like parts and MenuGroupLabel\n// ---------------------------------------------------------------------------\n\nexport interface MenuGroupContextValue {\n registerLabel: (id: string) => () => void;\n}\n\nconst MenuGroupContext = createContext<MenuGroupContextValue | null>(null);\n\nexport const MenuGroupContextProvider = MenuGroupContext.Provider;\n\nexport function useMenuGroupContext(): MenuGroupContextValue | null {\n return useContext(MenuGroupContext);\n}\n\n// ---------------------------------------------------------------------------\n// Radio group context — shared between MenuRadioGroup and MenuRadioItem\n// ---------------------------------------------------------------------------\n\nexport interface MenuRadioGroupContextValue {\n value: string;\n onValueChange: (value: string) => void;\n}\n\nconst MenuRadioGroupContext = createContext<MenuRadioGroupContextValue | null>(null);\n\nexport const MenuRadioGroupContextProvider = MenuRadioGroupContext.Provider;\n\nexport function useMenuRadioGroupContext(): MenuRadioGroupContextValue {\n const ctx = useContext(MenuRadioGroupContext);\n if (!ctx) throw new Error('Menu.RadioItem must be used within a Menu.RadioGroup');\n return ctx;\n}\n\nconst MenuRadioItemContext = createContext(false);\n\nexport const MenuRadioItemContextProvider = MenuRadioItemContext.Provider;\n\nexport function useOptionalMenuRadioItemContext(): boolean {\n return useContext(MenuRadioItemContext);\n}\n\n// ---------------------------------------------------------------------------\n// Root trigger render context — provided by Menu.Trigger for render children.\n// ---------------------------------------------------------------------------\n\nconst MenuTriggerChildContext = createContext(false);\n\nexport const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;\n\nexport function useOptionalMenuTriggerChildContext(): boolean {\n return useContext(MenuTriggerChildContext);\n}\n"],"mappings":";;AAkBA,MAAM,cAAc,cAAuC,IAAI;AAE/D,MAAa,sBAAsB,YAAY;AAE/C,SAAgB,iBAAmC;CACjD,MAAM,MAAM,WAAW,WAAW;CAClC,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,0DAA0D;CACpF,OAAO;AACT;AAEA,SAAgB,yBAAkD;CAChE,OAAO,WAAW,WAAW;AAC/B;AAUA,MAAM,mBAAmB,cAA4C,IAAI;AAEzE,MAAa,2BAA2B,iBAAiB;AAEzD,SAAgB,sBAAoD;CAClE,OAAO,WAAW,gBAAgB;AACpC;AAWA,MAAM,wBAAwB,cAAiD,IAAI;AAEnF,MAAa,gCAAgC,sBAAsB;AAEnE,SAAgB,2BAAuD;CACrE,MAAM,MAAM,WAAW,qBAAqB;CAC5C,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,sDAAsD;CAChF,OAAO;AACT;AAEA,MAAM,uBAAuB,cAAc,KAAK;AAEhD,MAAa,+BAA+B,qBAAqB;AAEjE,SAAgB,kCAA2C;CACzD,OAAO,WAAW,oBAAoB;AACxC;AAMA,MAAM,0BAA0B,cAAc,KAAK;AAEnD,MAAa,kCAAkC,wBAAwB;AAEvE,SAAgB,qCAA8C;CAC5D,OAAO,WAAW,uBAAuB;AAC3C"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../../src/ui/menu/context.tsx"],"sourcesContent":["import type { MenuCore, MenuState } from '@videojs/core';\nimport type { MediaContainer, MenuApi, MenuPopupApi, PositioningBoundary } from '@videojs/core/dom';\nimport { createContext, useContext } from 'react';\n\nexport interface MenuContextValue {\n core: MenuCore;\n menu: MenuApi;\n parent: MenuContextValue | null;\n state: MenuState;\n preferredSide: MenuState['side'];\n setPositionedSide: (side: MenuState['side']) => void;\n contentId: string;\n anchorName: string;\n boundary: PositioningBoundary;\n container: MediaContainer | null;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nexport const MenuContextProvider = MenuContext.Provider;\n\n/** Returns the current menu compound-component context. Throws outside `Menu.Root`. */\nexport function useMenuContext(): MenuContextValue {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu compound components must be used within a Menu.Root');\n\n return ctx;\n}\n\n/** Returns the nearest menu context, or `null` outside `Menu.Root`. */\nexport function useOptionalMenuContext(): MenuContextValue | null {\n return useContext(MenuContext);\n}\n\nexport interface MenuPopupContextValue {\n popup: MenuPopupApi;\n element: HTMLElement | null;\n}\n\nconst MenuPopupContext = createContext<MenuPopupContextValue | null>(null);\n\nexport const MenuPopupContextProvider = MenuPopupContext.Provider;\n\nexport function useMenuPopupContext(): MenuPopupContextValue {\n const ctx = useContext(MenuPopupContext);\n if (!ctx) throw new Error('Menu.Content must be used within a Menu.Popup');\n\n return ctx;\n}\n\n// ---------------------------------------------------------------------------\n// Group context — shared by group-like parts and MenuGroupLabel\n// ---------------------------------------------------------------------------\n\nexport interface MenuGroupContextValue {\n registerLabel: (id: string) => () => void;\n}\n\nconst MenuGroupContext = createContext<MenuGroupContextValue | null>(null);\n\nexport const MenuGroupContextProvider = MenuGroupContext.Provider;\n\nexport function useMenuGroupContext(): MenuGroupContextValue | null {\n return useContext(MenuGroupContext);\n}\n\n// ---------------------------------------------------------------------------\n// Radio group context — shared between MenuRadioGroup and MenuRadioItem\n// ---------------------------------------------------------------------------\n\nexport interface MenuRadioGroupContextValue {\n value: string;\n onValueChange: (value: string) => void;\n}\n\nconst MenuRadioGroupContext = createContext<MenuRadioGroupContextValue | null>(null);\n\nexport const MenuRadioGroupContextProvider = MenuRadioGroupContext.Provider;\n\nexport function useMenuRadioGroupContext(): MenuRadioGroupContextValue {\n const ctx = useContext(MenuRadioGroupContext);\n if (!ctx) throw new Error('Menu.RadioItem must be used within a Menu.RadioGroup');\n\n return ctx;\n}\n\nconst MenuRadioItemContext = createContext(false);\n\nexport const MenuRadioItemContextProvider = MenuRadioItemContext.Provider;\n\nexport function useOptionalMenuRadioItemContext(): boolean {\n return useContext(MenuRadioItemContext);\n}\n\n// ---------------------------------------------------------------------------\n// Root trigger render context — provided by Menu.Trigger for render children.\n// ---------------------------------------------------------------------------\n\nconst MenuTriggerChildContext = createContext(false);\n\nexport const MenuTriggerChildContextProvider = MenuTriggerChildContext.Provider;\n\nexport function useOptionalMenuTriggerChildContext(): boolean {\n return useContext(MenuTriggerChildContext);\n}\n"],"mappings":";;AAiBA,MAAM,cAAc,cAAuC,IAAI;AAE/D,MAAa,sBAAsB,YAAY;;AAG/C,SAAgB,iBAAmC;CACjD,MAAM,MAAM,WAAW,WAAW;CAClC,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,0DAA0D;CAEpF,OAAO;AACT;;AAGA,SAAgB,yBAAkD;CAChE,OAAO,WAAW,WAAW;AAC/B;AAOA,MAAM,mBAAmB,cAA4C,IAAI;AAEzE,MAAa,2BAA2B,iBAAiB;AAEzD,SAAgB,sBAA6C;CAC3D,MAAM,MAAM,WAAW,gBAAgB;CACvC,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,+CAA+C;CAEzE,OAAO;AACT;AAUA,MAAM,mBAAmB,cAA4C,IAAI;AAEzE,MAAa,2BAA2B,iBAAiB;AAEzD,SAAgB,sBAAoD;CAClE,OAAO,WAAW,gBAAgB;AACpC;AAWA,MAAM,wBAAwB,cAAiD,IAAI;AAEnF,MAAa,gCAAgC,sBAAsB;AAEnE,SAAgB,2BAAuD;CACrE,MAAM,MAAM,WAAW,qBAAqB;CAC5C,IAAI,CAAC,KAAK,MAAM,IAAI,MAAM,sDAAsD;CAEhF,OAAO;AACT;AAEA,MAAM,uBAAuB,cAAc,KAAK;AAEhD,MAAa,+BAA+B,qBAAqB;AAEjE,SAAgB,kCAA2C;CACzD,OAAO,WAAW,oBAAoB;AACxC;AAMA,MAAM,0BAA0B,cAAc,KAAK;AAEnD,MAAa,kCAAkC,wBAAwB;AAEvE,SAAgB,qCAA8C;CAC5D,OAAO,WAAW,uBAAuB;AAC3C"}
@@ -5,13 +5,14 @@ import { MenuGroup, MenuGroupProps } from "./menu-group.js";
5
5
  import { MenuGroupLabel, MenuGroupLabelProps } from "./menu-group-label.js";
6
6
  import { MenuItem, MenuItemProps } from "./menu-item.js";
7
7
  import { MenuItemIndicator, MenuItemIndicatorProps } from "./menu-item-indicator.js";
8
+ import { MenuPopup, MenuPopupProps } from "./menu-popup.js";
8
9
  import { MenuRadioGroup, MenuRadioGroupProps } from "./menu-radio-group.js";
9
10
  import { MenuRoot, MenuRootProps } from "./menu-root.js";
10
11
  import { MenuSeparator, MenuSeparatorProps } from "./menu-separator.js";
11
12
  import { MenuTrigger, MenuTriggerProps } from "./menu-trigger.js";
12
13
  declare namespace index_parts_d_exports {
13
- export { MenuCheckboxItem as CheckboxItem, MenuCheckboxItemProps as CheckboxItemProps, MenuContent as Content, MenuContentProps as ContentProps, MenuGroup as Group, MenuGroupLabel as GroupLabel, MenuGroupLabelProps as GroupLabelProps, MenuGroupProps as GroupProps, MenuItem as Item, MenuItemIndicator as ItemIndicator, MenuItemIndicatorProps as ItemIndicatorProps, MenuItemProps as ItemProps, MenuRadioGroup as RadioGroup, MenuRadioGroupProps as RadioGroupProps, MenuRadioItem as RadioItem, MenuRadioItemProps as RadioItemProps, MenuRoot as Root, MenuRootProps as RootProps, MenuSeparator as Separator, MenuSeparatorProps as SeparatorProps, MenuTrigger as Trigger, MenuTriggerProps as TriggerProps };
14
+ export { MenuCheckboxItem as CheckboxItem, MenuCheckboxItemProps as CheckboxItemProps, MenuContent as Content, MenuContentProps as ContentProps, MenuGroup as Group, MenuGroupLabel as GroupLabel, MenuGroupLabelProps as GroupLabelProps, MenuGroupProps as GroupProps, MenuItem as Item, MenuItemIndicator as ItemIndicator, MenuItemIndicatorProps as ItemIndicatorProps, MenuItemProps as ItemProps, MenuPopup as Popup, MenuPopupProps as PopupProps, MenuRadioGroup as RadioGroup, MenuRadioGroupProps as RadioGroupProps, MenuRadioItem as RadioItem, MenuRadioItemProps as RadioItemProps, MenuRoot as Root, MenuRootProps as RootProps, MenuSeparator as Separator, MenuSeparatorProps as SeparatorProps, MenuTrigger as Trigger, MenuTriggerProps as TriggerProps };
14
15
  }
15
16
  //#endregion
16
- export { MenuCheckboxItem as CheckboxItem, type MenuCheckboxItemProps as CheckboxItemProps, MenuContent as Content, type MenuContentProps as ContentProps, MenuGroup as Group, MenuGroupLabel as GroupLabel, type MenuGroupLabelProps as GroupLabelProps, type MenuGroupProps as GroupProps, MenuItem as Item, MenuItemIndicator as ItemIndicator, type MenuItemIndicatorProps as ItemIndicatorProps, type MenuItemProps as ItemProps, MenuRadioGroup as RadioGroup, type MenuRadioGroupProps as RadioGroupProps, MenuRadioItem as RadioItem, type MenuRadioItemProps as RadioItemProps, MenuRoot as Root, type MenuRootProps as RootProps, MenuSeparator as Separator, type MenuSeparatorProps as SeparatorProps, MenuTrigger as Trigger, type MenuTriggerProps as TriggerProps, index_parts_d_exports };
17
+ export { MenuCheckboxItem as CheckboxItem, type MenuCheckboxItemProps as CheckboxItemProps, MenuContent as Content, type MenuContentProps as ContentProps, MenuGroup as Group, MenuGroupLabel as GroupLabel, type MenuGroupLabelProps as GroupLabelProps, type MenuGroupProps as GroupProps, MenuItem as Item, MenuItemIndicator as ItemIndicator, type MenuItemIndicatorProps as ItemIndicatorProps, type MenuItemProps as ItemProps, MenuPopup as Popup, type MenuPopupProps as PopupProps, MenuRadioGroup as RadioGroup, type MenuRadioGroupProps as RadioGroupProps, MenuRadioItem as RadioItem, type MenuRadioItemProps as RadioItemProps, MenuRoot as Root, type MenuRootProps as RootProps, MenuSeparator as Separator, type MenuSeparatorProps as SeparatorProps, MenuTrigger as Trigger, type MenuTriggerProps as TriggerProps, index_parts_d_exports };
17
18
  //# sourceMappingURL=index.parts.d.ts.map
@@ -6,6 +6,7 @@ import { MenuGroup } from "./menu-group.js";
6
6
  import { MenuGroupLabel } from "./menu-group-label.js";
7
7
  import { MenuItem } from "./menu-item.js";
8
8
  import { MenuItemIndicator } from "./menu-item-indicator.js";
9
+ import { MenuPopup } from "./menu-popup.js";
9
10
  import { MenuRadioItem } from "./menu-radio-item.js";
10
11
  import { MenuRoot } from "./menu-root.js";
11
12
  import { MenuSeparator } from "./menu-separator.js";
@@ -18,6 +19,7 @@ var index_parts_exports = /* @__PURE__ */ __exportAll({
18
19
  GroupLabel: () => MenuGroupLabel,
19
20
  Item: () => MenuItem,
20
21
  ItemIndicator: () => MenuItemIndicator,
22
+ Popup: () => MenuPopup,
21
23
  RadioGroup: () => MenuRadioGroup,
22
24
  RadioItem: () => MenuRadioItem,
23
25
  Root: () => MenuRoot,
@@ -25,6 +27,6 @@ var index_parts_exports = /* @__PURE__ */ __exportAll({
25
27
  Trigger: () => MenuTrigger
26
28
  });
27
29
  //#endregion
28
- export { MenuCheckboxItem as CheckboxItem, MenuContent as Content, MenuGroup as Group, MenuGroupLabel as GroupLabel, MenuItem as Item, MenuItemIndicator as ItemIndicator, MenuRadioGroup as RadioGroup, MenuRadioItem as RadioItem, MenuRoot as Root, MenuSeparator as Separator, MenuTrigger as Trigger, index_parts_exports };
30
+ export { MenuCheckboxItem as CheckboxItem, MenuContent as Content, MenuGroup as Group, MenuGroupLabel as GroupLabel, MenuItem as Item, MenuItemIndicator as ItemIndicator, MenuPopup as Popup, MenuRadioGroup as RadioGroup, MenuRadioItem as RadioItem, MenuRoot as Root, MenuSeparator as Separator, MenuTrigger as Trigger, index_parts_exports };
29
31
 
30
32
  //# sourceMappingURL=index.parts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/ui/menu/index.parts.ts"],"sourcesContent":["export {\n MenuCheckboxItem as CheckboxItem,\n type MenuCheckboxItemProps as CheckboxItemProps,\n} from './menu-checkbox-item';\nexport { MenuContent as Content, type MenuContentProps as ContentProps } from './menu-content';\nexport { MenuGroup as Group, type MenuGroupProps as GroupProps } from './menu-group';\nexport { MenuGroupLabel as GroupLabel, type MenuGroupLabelProps as GroupLabelProps } from './menu-group-label';\nexport { MenuItem as Item, type MenuItemProps as ItemProps } from './menu-item';\nexport {\n MenuItemIndicator as ItemIndicator,\n type MenuItemIndicatorProps as ItemIndicatorProps,\n} from './menu-item-indicator';\nexport { MenuRadioGroup as RadioGroup, type MenuRadioGroupProps as RadioGroupProps } from './menu-radio-group';\nexport { MenuRadioItem as RadioItem, type MenuRadioItemProps as RadioItemProps } from './menu-radio-item';\nexport { MenuRoot as Root, type MenuRootProps as RootProps } from './menu-root';\nexport { MenuSeparator as Separator, type MenuSeparatorProps as SeparatorProps } from './menu-separator';\nexport { MenuTrigger as Trigger, type MenuTriggerProps as TriggerProps } from './menu-trigger';\n"],"mappings":""}
1
+ {"version":3,"file":"index.parts.js","names":[],"sources":["../../../../src/ui/menu/index.parts.ts"],"sourcesContent":["export {\n MenuCheckboxItem as CheckboxItem,\n type MenuCheckboxItemProps as CheckboxItemProps,\n} from './menu-checkbox-item';\nexport { MenuContent as Content, type MenuContentProps as ContentProps } from './menu-content';\nexport { MenuGroup as Group, type MenuGroupProps as GroupProps } from './menu-group';\nexport { MenuGroupLabel as GroupLabel, type MenuGroupLabelProps as GroupLabelProps } from './menu-group-label';\nexport { MenuItem as Item, type MenuItemProps as ItemProps } from './menu-item';\nexport {\n MenuItemIndicator as ItemIndicator,\n type MenuItemIndicatorProps as ItemIndicatorProps,\n} from './menu-item-indicator';\nexport { MenuPopup as Popup, type MenuPopupProps as PopupProps } from './menu-popup';\nexport { MenuRadioGroup as RadioGroup, type MenuRadioGroupProps as RadioGroupProps } from './menu-radio-group';\nexport { MenuRadioItem as RadioItem, type MenuRadioItemProps as RadioItemProps } from './menu-radio-item';\nexport { MenuRoot as Root, type MenuRootProps as RootProps } from './menu-root';\nexport { MenuSeparator as Separator, type MenuSeparatorProps as SeparatorProps } from './menu-separator';\nexport { MenuTrigger as Trigger, type MenuTriggerProps as TriggerProps } from './menu-trigger';\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"menu-checkbox-item.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-checkbox-item.tsx"],"mappings":";;;UAOiB,8BAA8B,wBAAwB;;EAErE;;EAEA,kBAAkB;;EAElB;;;cAIW,kCAAgB,0BAAA,KAAA,gDAAA,cAAA;kBAgDZ;OACH,QAAQ;OACR,QAAQ"}
1
+ {"version":3,"file":"menu-checkbox-item.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-checkbox-item.tsx"],"mappings":";;;UAOiB,8BAA8B,wBAAwB;;EAErE;;EAEA,kBAAkB;;EAElB;;;cAIW,kCAAgB,0BAAA,KAAA,gDAAA,cAAA;kBAmDZ;OACH,QAAQ;OACR,QAAQ"}
@@ -1 +1 @@
1
- {"version":3,"file":"menu-checkbox-item.js","names":[],"sources":["../../../../src/ui/menu/menu-checkbox-item.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef, useCallback, useEffect, useRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext } from './context';\n\nexport interface MenuCheckboxItemProps extends UIComponentProps<'div', MenuState> {\n /** Whether the item is currently checked. */\n checked: boolean;\n /** Called when the checked state should change. */\n onCheckedChange: (checked: boolean) => void;\n /** Whether the item is disabled. */\n disabled?: boolean;\n}\n\n/** A checkbox-style menu item. Renders a `<div>` with `role=\"menuitemcheckbox\"`. */\nexport const MenuCheckboxItem = forwardRef<HTMLDivElement, MenuCheckboxItemProps>(function MenuCheckboxItem(\n { render, className, style, checked, onCheckedChange, disabled, onClick, ...elementProps },\n forwardedRef\n) {\n const { menu, state } = useMenuContext();\n const elementRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const element = elementRef.current;\n if (!element) return;\n return menu.registerItem(element);\n }, [menu]);\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) return;\n onClick?.(event);\n onCheckedChange(!checked);\n },\n [disabled, onClick, onCheckedChange, checked]\n );\n\n const handlePointerEnter = useCallback(() => {\n const element = elementRef.current;\n if (!element || disabled) return;\n menu.highlight(element, { focus: false, pointer: true });\n }, [menu, disabled]);\n\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef, elementRef],\n props: [\n {\n role: 'menuitemcheckbox' as const,\n 'aria-checked': checked,\n 'aria-disabled': disabled ? true : undefined,\n onClick: handleClick,\n onPointerEnter: handlePointerEnter,\n },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace MenuCheckboxItem {\n export type Props = MenuCheckboxItemProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;AAiBA,MAAa,mBAAmB,WAAkD,SAAS,iBACzF,EAAE,QAAQ,WAAW,OAAO,SAAS,iBAAiB,UAAU,SAAS,GAAG,gBAC5E,cACA;CACA,MAAM,EAAE,MAAM,UAAU,eAAe;CACvC,MAAM,aAAa,OAAuB,IAAI;CAE9C,gBAAgB;EACd,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,SAAS;EACd,OAAO,KAAK,aAAa,OAAO;CAClC,GAAG,CAAC,IAAI,CAAC;CAET,MAAM,cAAc,aACjB,UAA4C;EAC3C,IAAI,UAAU;EACd,UAAU,KAAK;EACf,gBAAgB,CAAC,OAAO;CAC1B,GACA;EAAC;EAAU;EAAS;EAAiB;CAAO,CAC9C;CAEA,MAAM,qBAAqB,kBAAkB;EAC3C,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,WAAW,UAAU;EAC1B,KAAK,UAAU,SAAS;GAAE,OAAO;GAAO,SAAS;EAAK,CAAC;CACzD,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OAAO,cACL,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,cAAc,UAAU;EAC9B,OAAO,CACL;GACE,MAAM;GACN,gBAAgB;GAChB,iBAAiB,WAAW,OAAO,KAAA;GACnC,SAAS;GACT,gBAAgB;EAClB,GACA,YACF;CACF,CACF;AACF,CAAC"}
1
+ {"version":3,"file":"menu-checkbox-item.js","names":[],"sources":["../../../../src/ui/menu/menu-checkbox-item.tsx"],"sourcesContent":["import type { MenuState } from '@videojs/core';\nimport { forwardRef, useCallback, useEffect, useRef } from 'react';\n\nimport type { UIComponentProps } from '../../utils/types';\nimport { renderElement } from '../../utils/use-render';\nimport { useMenuContext } from './context';\n\nexport interface MenuCheckboxItemProps extends UIComponentProps<'div', MenuState> {\n /** Whether the item is currently checked. */\n checked: boolean;\n /** Called when the checked state should change. */\n onCheckedChange: (checked: boolean) => void;\n /** Whether the item is disabled. */\n disabled?: boolean;\n}\n\n/** A checkbox-style menu item. Renders a `<div>` with `role=\"menuitemcheckbox\"`. */\nexport const MenuCheckboxItem = forwardRef<HTMLDivElement, MenuCheckboxItemProps>(function MenuCheckboxItem(\n { render, className, style, checked, onCheckedChange, disabled, onClick, ...elementProps },\n forwardedRef\n) {\n const { menu, state } = useMenuContext();\n const elementRef = useRef<HTMLDivElement>(null);\n\n useEffect(() => {\n const element = elementRef.current;\n if (!element) return;\n\n return menu.registerItem(element);\n }, [menu]);\n\n const handleClick = useCallback(\n (event: React.MouseEvent<HTMLDivElement>) => {\n if (disabled) return;\n\n onClick?.(event);\n onCheckedChange(!checked);\n },\n [disabled, onClick, onCheckedChange, checked]\n );\n\n const handlePointerEnter = useCallback(() => {\n const element = elementRef.current;\n if (!element || disabled) return;\n\n menu.highlight(element, { focus: false, pointer: true });\n }, [menu, disabled]);\n\n return renderElement(\n 'div',\n { render, className, style },\n {\n state,\n ref: [forwardedRef, elementRef],\n props: [\n {\n role: 'menuitemcheckbox' as const,\n 'aria-checked': checked,\n 'aria-disabled': disabled ? true : undefined,\n onClick: handleClick,\n onPointerEnter: handlePointerEnter,\n },\n elementProps,\n ],\n }\n );\n});\n\nexport namespace MenuCheckboxItem {\n export type Props = MenuCheckboxItemProps;\n export type State = MenuState;\n}\n"],"mappings":";;;;;AAiBA,MAAa,mBAAmB,WAAkD,SAAS,iBACzF,EAAE,QAAQ,WAAW,OAAO,SAAS,iBAAiB,UAAU,SAAS,GAAG,gBAC5E,cACA;CACA,MAAM,EAAE,MAAM,UAAU,eAAe;CACvC,MAAM,aAAa,OAAuB,IAAI;CAE9C,gBAAgB;EACd,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,SAAS;EAEd,OAAO,KAAK,aAAa,OAAO;CAClC,GAAG,CAAC,IAAI,CAAC;CAET,MAAM,cAAc,aACjB,UAA4C;EAC3C,IAAI,UAAU;EAEd,UAAU,KAAK;EACf,gBAAgB,CAAC,OAAO;CAC1B,GACA;EAAC;EAAU;EAAS;EAAiB;CAAO,CAC9C;CAEA,MAAM,qBAAqB,kBAAkB;EAC3C,MAAM,UAAU,WAAW;EAC3B,IAAI,CAAC,WAAW,UAAU;EAE1B,KAAK,UAAU,SAAS;GAAE,OAAO;GAAO,SAAS;EAAK,CAAC;CACzD,GAAG,CAAC,MAAM,QAAQ,CAAC;CAEnB,OAAO,cACL,OACA;EAAE;EAAQ;EAAW;CAAM,GAC3B;EACE;EACA,KAAK,CAAC,cAAc,UAAU;EAC9B,OAAO,CACL;GACE,MAAM;GACN,gBAAgB;GAChB,iBAAiB,WAAW,OAAO,KAAA;GACnC,SAAS;GACT,gBAAgB;EAClB,GACA,YACF;CACF,CACF;AACF,CAAC"}
@@ -2,7 +2,7 @@ import { UIComponentProps } from "../../utils/types.js";
2
2
  import { MenuState } from "@videojs/core";
3
3
  //#region src/ui/menu/menu-content.d.ts
4
4
  interface MenuContentProps extends UIComponentProps<'div', MenuState> {}
5
- /** Container for menu items. Positioned relative to the trigger at root level; renders in-place as a submenu panel when nested. */
5
+ /** Accessible item and focus scope for exactly one root or nested menu page. */
6
6
  declare const MenuContent: import("react").ForwardRefExoticComponent<Omit<MenuContentProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
7
7
  declare namespace MenuContent {
8
8
  type Props = MenuContentProps;
@@ -1 +1 @@
1
- {"version":3,"file":"menu-content.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-content.tsx"],"mappings":";;;UAkBiB,yBAAyB,wBAAwB;;cAGrD,6BAAW,0BAAA,KAAA,2CAAA,cAAA;kBA2MP;OACH,QAAQ;OACR,QAAQ"}
1
+ {"version":3,"file":"menu-content.d.ts","names":[],"sources":["../../../../src/ui/menu/menu-content.tsx"],"mappings":";;;UAWiB,yBAAyB,wBAAwB;;cAGrD,6BAAW,0BAAA,KAAA,2CAAA,cAAA;kBAkGP;OACH,QAAQ;OACR,QAAQ"}