@videojs/react 10.0.0-beta.22 → 10.0.0-beta.24

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 (897) hide show
  1. package/README.md +6 -0
  2. package/dist/default/icons/dist/react/default/captions-off.js +1 -0
  3. package/dist/default/icons/dist/react/default/captions-off.js.map +1 -1
  4. package/dist/default/icons/dist/react/default/captions-on.js +3 -5
  5. package/dist/default/icons/dist/react/default/captions-on.js.map +1 -1
  6. package/dist/default/icons/dist/react/default/cast-enter.js +38 -11
  7. package/dist/default/icons/dist/react/default/cast-enter.js.map +1 -1
  8. package/dist/default/icons/dist/react/default/cast-exit.js +55 -14
  9. package/dist/default/icons/dist/react/default/cast-exit.js.map +1 -1
  10. package/dist/default/icons/dist/react/default/check.js +22 -0
  11. package/dist/default/icons/dist/react/default/check.js.map +1 -0
  12. package/dist/default/icons/dist/react/default/chevron.js +21 -0
  13. package/dist/default/icons/dist/react/default/chevron.js.map +1 -0
  14. package/dist/default/icons/dist/react/default/fullscreen-enter.js +3 -5
  15. package/dist/default/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  16. package/dist/default/icons/dist/react/default/fullscreen-exit.js +3 -5
  17. package/dist/default/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  18. package/dist/default/icons/dist/react/default/pause.js +2 -3
  19. package/dist/default/icons/dist/react/default/pause.js.map +1 -1
  20. package/dist/default/icons/dist/react/default/pip-enter.js +4 -10
  21. package/dist/default/icons/dist/react/default/pip-enter.js.map +1 -1
  22. package/dist/default/icons/dist/react/default/pip-exit.js +4 -10
  23. package/dist/default/icons/dist/react/default/pip-exit.js.map +1 -1
  24. package/dist/default/icons/dist/react/default/play.js +3 -5
  25. package/dist/default/icons/dist/react/default/play.js.map +1 -1
  26. package/dist/default/icons/dist/react/default/restart.js +3 -8
  27. package/dist/default/icons/dist/react/default/restart.js.map +1 -1
  28. package/dist/default/icons/dist/react/default/seek.js +3 -5
  29. package/dist/default/icons/dist/react/default/seek.js.map +1 -1
  30. package/dist/default/icons/dist/react/default/spinner.js +38 -117
  31. package/dist/default/icons/dist/react/default/spinner.js.map +1 -1
  32. package/dist/default/icons/dist/react/default/volume-high.js +3 -8
  33. package/dist/default/icons/dist/react/default/volume-high.js.map +1 -1
  34. package/dist/default/icons/dist/react/default/volume-low.js +3 -5
  35. package/dist/default/icons/dist/react/default/volume-low.js.map +1 -1
  36. package/dist/default/icons/dist/react/default/volume-off.js +3 -5
  37. package/dist/default/icons/dist/react/default/volume-off.js.map +1 -1
  38. package/dist/default/icons/dist/react/minimal/captions-off.js +1 -0
  39. package/dist/default/icons/dist/react/minimal/captions-off.js.map +1 -1
  40. package/dist/default/icons/dist/react/minimal/captions-on.js +3 -5
  41. package/dist/default/icons/dist/react/minimal/captions-on.js.map +1 -1
  42. package/dist/default/icons/dist/react/minimal/cast-enter.js +38 -7
  43. package/dist/default/icons/dist/react/minimal/cast-enter.js.map +1 -1
  44. package/dist/default/icons/dist/react/minimal/cast-exit.js +56 -11
  45. package/dist/default/icons/dist/react/minimal/cast-exit.js.map +1 -1
  46. package/dist/default/icons/dist/react/minimal/check.js +22 -0
  47. package/dist/default/icons/dist/react/minimal/check.js.map +1 -0
  48. package/dist/default/icons/dist/react/minimal/chevron.js +21 -0
  49. package/dist/default/icons/dist/react/minimal/chevron.js.map +1 -0
  50. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js +5 -13
  51. package/dist/default/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  52. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js +5 -13
  53. package/dist/default/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  54. package/dist/default/icons/dist/react/minimal/pause.js +2 -3
  55. package/dist/default/icons/dist/react/minimal/pause.js.map +1 -1
  56. package/dist/default/icons/dist/react/minimal/pip-enter.js +5 -14
  57. package/dist/default/icons/dist/react/minimal/pip-enter.js.map +1 -1
  58. package/dist/default/icons/dist/react/minimal/pip-exit.js +5 -14
  59. package/dist/default/icons/dist/react/minimal/pip-exit.js.map +1 -1
  60. package/dist/default/icons/dist/react/minimal/play.js +3 -5
  61. package/dist/default/icons/dist/react/minimal/play.js.map +1 -1
  62. package/dist/default/icons/dist/react/minimal/restart.js +3 -8
  63. package/dist/default/icons/dist/react/minimal/restart.js.map +1 -1
  64. package/dist/default/icons/dist/react/minimal/seek.js +3 -5
  65. package/dist/default/icons/dist/react/minimal/seek.js.map +1 -1
  66. package/dist/default/icons/dist/react/minimal/spinner.js +38 -117
  67. package/dist/default/icons/dist/react/minimal/spinner.js.map +1 -1
  68. package/dist/default/icons/dist/react/minimal/volume-high.js +3 -8
  69. package/dist/default/icons/dist/react/minimal/volume-high.js.map +1 -1
  70. package/dist/default/icons/dist/react/minimal/volume-low.js +3 -5
  71. package/dist/default/icons/dist/react/minimal/volume-low.js.map +1 -1
  72. package/dist/default/icons/dist/react/minimal/volume-off.js +3 -5
  73. package/dist/default/icons/dist/react/minimal/volume-off.js.map +1 -1
  74. package/dist/default/icons/index.js +19 -0
  75. package/dist/default/icons/minimal/index.js +19 -0
  76. package/dist/default/index.js +20 -12
  77. package/dist/default/media/dash-video/index.js +6 -6
  78. package/dist/default/media/dash-video/index.js.map +1 -1
  79. package/dist/default/media/hls-video/index.js +6 -6
  80. package/dist/default/media/hls-video/index.js.map +1 -1
  81. package/dist/default/media/mux-audio/index.js +9 -8
  82. package/dist/default/media/mux-audio/index.js.map +1 -1
  83. package/dist/default/media/mux-video/index.js +6 -6
  84. package/dist/default/media/mux-video/index.js.map +1 -1
  85. package/dist/default/media/native-hls-video/index.js +6 -6
  86. package/dist/default/media/native-hls-video/index.js.map +1 -1
  87. package/dist/default/media/simple-hls-video/index.js +6 -5
  88. package/dist/default/media/simple-hls-video/index.js.map +1 -1
  89. package/dist/default/player/context.js +9 -1
  90. package/dist/default/player/context.js.map +1 -1
  91. package/dist/default/player/create-player.js +4 -1
  92. package/dist/default/player/create-player.js.map +1 -1
  93. package/dist/default/presets/audio/minimal-skin.css +211 -100
  94. package/dist/default/presets/audio/minimal-skin.js +107 -7
  95. package/dist/default/presets/audio/minimal-skin.js.map +1 -1
  96. package/dist/default/presets/audio/minimal-skin.tailwind.js +41 -7
  97. package/dist/default/presets/audio/minimal-skin.tailwind.js.map +1 -1
  98. package/dist/default/presets/audio/skin.css +237 -100
  99. package/dist/default/presets/audio/skin.js +57 -22
  100. package/dist/default/presets/audio/skin.js.map +1 -1
  101. package/dist/default/presets/audio/skin.tailwind.js +115 -14
  102. package/dist/default/presets/audio/skin.tailwind.js.map +1 -1
  103. package/dist/default/presets/live-audio/index.js +7 -0
  104. package/dist/default/presets/live-audio/minimal-skin.css +846 -0
  105. package/dist/default/presets/live-audio/minimal-skin.js +164 -0
  106. package/dist/default/presets/live-audio/minimal-skin.js.map +1 -0
  107. package/dist/default/presets/live-audio/minimal-skin.tailwind.js +194 -0
  108. package/dist/default/presets/live-audio/minimal-skin.tailwind.js.map +1 -0
  109. package/dist/default/presets/live-audio/skin.css +888 -0
  110. package/dist/default/presets/live-audio/skin.js +163 -0
  111. package/dist/default/presets/live-audio/skin.js.map +1 -0
  112. package/dist/default/presets/live-audio/skin.tailwind.js +193 -0
  113. package/dist/default/presets/live-audio/skin.tailwind.js.map +1 -0
  114. package/dist/default/presets/live-video/index.js +7 -0
  115. package/dist/default/presets/live-video/minimal-skin.css +1542 -0
  116. package/dist/default/presets/live-video/minimal-skin.js +306 -0
  117. package/dist/default/presets/live-video/minimal-skin.js.map +1 -0
  118. package/dist/default/presets/live-video/minimal-skin.tailwind.js +341 -0
  119. package/dist/default/presets/live-video/minimal-skin.tailwind.js.map +1 -0
  120. package/dist/default/presets/live-video/skin.css +1544 -0
  121. package/dist/default/presets/live-video/skin.js +304 -0
  122. package/dist/default/presets/live-video/skin.js.map +1 -0
  123. package/dist/default/presets/live-video/skin.tailwind.js +426 -0
  124. package/dist/default/presets/live-video/skin.tailwind.js.map +1 -0
  125. package/dist/default/presets/video/minimal-skin.css +555 -139
  126. package/dist/default/presets/video/minimal-skin.js +205 -23
  127. package/dist/default/presets/video/minimal-skin.js.map +1 -1
  128. package/dist/default/presets/video/minimal-skin.tailwind.js +209 -24
  129. package/dist/default/presets/video/minimal-skin.tailwind.js.map +1 -1
  130. package/dist/default/presets/video/skin.css +565 -137
  131. package/dist/default/presets/video/skin.js +124 -52
  132. package/dist/default/presets/video/skin.js.map +1 -1
  133. package/dist/default/presets/video/skin.tailwind.js +208 -29
  134. package/dist/default/presets/video/skin.tailwind.js.map +1 -1
  135. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js +3 -2
  136. package/dist/default/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  137. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  138. package/dist/default/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  139. package/dist/default/skins/dist/default/default/tailwind/components/button.js +3 -2
  140. package/dist/default/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  141. package/dist/default/skins/dist/default/default/tailwind/components/controls.js +1 -1
  142. package/dist/default/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  143. package/dist/default/skins/dist/default/default/tailwind/components/icon.js +1 -1
  144. package/dist/default/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  145. package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js +40 -0
  146. package/dist/default/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
  147. package/dist/default/skins/dist/default/default/tailwind/components/menu.js +12 -0
  148. package/dist/default/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
  149. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  150. package/dist/default/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  151. package/dist/default/skins/dist/default/default/tailwind/components/preview.js +1 -1
  152. package/dist/default/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  153. package/dist/default/skins/dist/default/default/tailwind/components/reset.js +7 -0
  154. package/dist/default/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
  155. package/dist/default/skins/dist/default/default/tailwind/components/root.js +2 -1
  156. package/dist/default/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  157. package/dist/default/skins/dist/default/default/tailwind/components/slider.js +1 -1
  158. package/dist/default/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  159. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js +13 -4
  160. package/dist/default/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  161. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js +5 -3
  162. package/dist/default/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  163. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  164. package/dist/default/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  165. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js +3 -2
  166. package/dist/default/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  167. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  168. package/dist/default/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  169. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  170. package/dist/default/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  171. package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js +41 -0
  172. package/dist/default/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
  173. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
  174. package/dist/default/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
  175. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  176. package/dist/default/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  177. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js +1 -1
  178. package/dist/default/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  179. package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
  180. package/dist/default/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
  181. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js +2 -1
  182. package/dist/default/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  183. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
  184. package/dist/default/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  185. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js +7 -4
  186. package/dist/default/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  187. package/dist/default/tailwind.css +66 -0
  188. package/dist/default/ui/cast-button/cast-button.js +2 -2
  189. package/dist/default/ui/cast-button/cast-button.js.map +1 -1
  190. package/dist/default/ui/controls/context.js +4 -1
  191. package/dist/default/ui/controls/context.js.map +1 -1
  192. package/dist/default/ui/gesture/{media-gesture.js → gesture.js} +8 -5
  193. package/dist/default/ui/gesture/gesture.js.map +1 -0
  194. package/dist/default/ui/gesture/index.js +2 -0
  195. package/dist/default/ui/hotkey/{media-hotkey.js → hotkey.js} +7 -4
  196. package/dist/default/ui/hotkey/hotkey.js.map +1 -0
  197. package/dist/default/ui/hotkey/index.js +2 -0
  198. package/dist/default/ui/input-indicators/use-indicator-visibility.js +25 -0
  199. package/dist/default/ui/input-indicators/use-indicator-visibility.js.map +1 -0
  200. package/dist/default/ui/input-indicators/use-input-action-subscription.js +22 -0
  201. package/dist/default/ui/input-indicators/use-input-action-subscription.js.map +1 -0
  202. package/dist/default/ui/input-indicators/use-input-indicator-root.js +21 -0
  203. package/dist/default/ui/input-indicators/use-input-indicator-root.js.map +1 -0
  204. package/dist/default/ui/input-indicators/use-rendered-indicator-state.js +40 -0
  205. package/dist/default/ui/input-indicators/use-rendered-indicator-state.js.map +1 -0
  206. package/dist/default/ui/live-button/index.js +2 -0
  207. package/dist/default/ui/live-button/live-button.js +89 -0
  208. package/dist/default/ui/live-button/live-button.js.map +1 -0
  209. package/dist/default/ui/menu/context.js +29 -0
  210. package/dist/default/ui/menu/context.js.map +1 -0
  211. package/dist/default/ui/menu/index.js +3 -0
  212. package/dist/default/ui/menu/index.parts.js +34 -0
  213. package/dist/default/ui/menu/index.parts.js.map +1 -0
  214. package/dist/default/ui/menu/menu-back.js +31 -0
  215. package/dist/default/ui/menu/menu-back.js.map +1 -0
  216. package/dist/default/ui/menu/menu-checkbox-item.js +50 -0
  217. package/dist/default/ui/menu/menu-checkbox-item.js.map +1 -0
  218. package/dist/default/ui/menu/menu-content.js +284 -0
  219. package/dist/default/ui/menu/menu-content.js.map +1 -0
  220. package/dist/default/ui/menu/menu-group.js +26 -0
  221. package/dist/default/ui/menu/menu-group.js.map +1 -0
  222. package/dist/default/ui/menu/menu-item-indicator.js +24 -0
  223. package/dist/default/ui/menu/menu-item-indicator.js.map +1 -0
  224. package/dist/default/ui/menu/menu-item.js +53 -0
  225. package/dist/default/ui/menu/menu-item.js.map +1 -0
  226. package/dist/default/ui/menu/menu-label.js +23 -0
  227. package/dist/default/ui/menu/menu-label.js.map +1 -0
  228. package/dist/default/ui/menu/menu-radio-group.js +33 -0
  229. package/dist/default/ui/menu/menu-radio-group.js.map +1 -0
  230. package/dist/default/ui/menu/menu-radio-item.js +57 -0
  231. package/dist/default/ui/menu/menu-radio-item.js.map +1 -0
  232. package/dist/default/ui/menu/menu-root.js +136 -0
  233. package/dist/default/ui/menu/menu-root.js.map +1 -0
  234. package/dist/default/ui/menu/menu-separator.js +23 -0
  235. package/dist/default/ui/menu/menu-separator.js.map +1 -0
  236. package/dist/default/ui/menu/menu-trigger.js +124 -0
  237. package/dist/default/ui/menu/menu-trigger.js.map +1 -0
  238. package/dist/default/ui/menu/menu-view.js +23 -0
  239. package/dist/default/ui/menu/menu-view.js.map +1 -0
  240. package/dist/default/ui/playback-rate-menu/context.js +20 -0
  241. package/dist/default/ui/playback-rate-menu/context.js.map +1 -0
  242. package/dist/default/ui/playback-rate-menu/index.js +3 -0
  243. package/dist/default/ui/playback-rate-menu/index.parts.js +17 -0
  244. package/dist/default/ui/playback-rate-menu/index.parts.js.map +1 -0
  245. package/dist/default/ui/playback-rate-menu/playback-rate-menu-content.js +28 -0
  246. package/dist/default/ui/playback-rate-menu/playback-rate-menu-content.js.map +1 -0
  247. package/dist/default/ui/playback-rate-menu/playback-rate-menu-root.js +36 -0
  248. package/dist/default/ui/playback-rate-menu/playback-rate-menu-root.js.map +1 -0
  249. package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger.js +51 -0
  250. package/dist/default/ui/playback-rate-menu/playback-rate-menu-trigger.js.map +1 -0
  251. package/dist/default/ui/playback-rate-menu/use-playback-rate-menu.js +27 -0
  252. package/dist/default/ui/playback-rate-menu/use-playback-rate-menu.js.map +1 -0
  253. package/dist/default/ui/popover/context.js.map +1 -1
  254. package/dist/default/ui/popover/popover-popup.js +20 -7
  255. package/dist/default/ui/popover/popover-popup.js.map +1 -1
  256. package/dist/default/ui/popover/popover-root.js +20 -5
  257. package/dist/default/ui/popover/popover-root.js.map +1 -1
  258. package/dist/default/ui/seek-indicator/context.js +20 -0
  259. package/dist/default/ui/seek-indicator/context.js.map +1 -0
  260. package/dist/default/ui/seek-indicator/index.js +2 -0
  261. package/dist/default/ui/seek-indicator/index.parts.js +12 -0
  262. package/dist/default/ui/seek-indicator/index.parts.js.map +1 -0
  263. package/dist/default/ui/seek-indicator/seek-indicator-root.js +30 -0
  264. package/dist/default/ui/seek-indicator/seek-indicator-root.js.map +1 -0
  265. package/dist/default/ui/seek-indicator/seek-indicator-value.js +23 -0
  266. package/dist/default/ui/seek-indicator/seek-indicator-value.js.map +1 -0
  267. package/dist/default/ui/slider/context.js.map +1 -1
  268. package/dist/default/ui/status-announcer/index.js +2 -0
  269. package/dist/default/ui/status-announcer/status-announcer.js +36 -0
  270. package/dist/default/ui/status-announcer/status-announcer.js.map +1 -0
  271. package/dist/default/ui/status-indicator/context.js +20 -0
  272. package/dist/default/ui/status-indicator/context.js.map +1 -0
  273. package/dist/default/ui/status-indicator/index.js +2 -0
  274. package/dist/default/ui/status-indicator/index.parts.js +12 -0
  275. package/dist/default/ui/status-indicator/index.parts.js.map +1 -0
  276. package/dist/default/ui/status-indicator/status-indicator-root.js +34 -0
  277. package/dist/default/ui/status-indicator/status-indicator-root.js.map +1 -0
  278. package/dist/default/ui/status-indicator/status-indicator-value.js +23 -0
  279. package/dist/default/ui/status-indicator/status-indicator-value.js.map +1 -0
  280. package/dist/default/ui/tooltip/context.js.map +1 -1
  281. package/dist/default/ui/tooltip/tooltip-popup.js +20 -7
  282. package/dist/default/ui/tooltip/tooltip-popup.js.map +1 -1
  283. package/dist/default/ui/tooltip/tooltip-root.js +16 -4
  284. package/dist/default/ui/tooltip/tooltip-root.js.map +1 -1
  285. package/dist/default/ui/volume-indicator/context.js +20 -0
  286. package/dist/default/ui/volume-indicator/context.js.map +1 -0
  287. package/dist/default/ui/volume-indicator/index.js +2 -0
  288. package/dist/default/ui/volume-indicator/index.parts.js +14 -0
  289. package/dist/default/ui/volume-indicator/index.parts.js.map +1 -0
  290. package/dist/default/ui/volume-indicator/volume-indicator-fill.js +36 -0
  291. package/dist/default/ui/volume-indicator/volume-indicator-fill.js.map +1 -0
  292. package/dist/default/ui/volume-indicator/volume-indicator-root.js +30 -0
  293. package/dist/default/ui/volume-indicator/volume-indicator-root.js.map +1 -0
  294. package/dist/default/ui/volume-indicator/volume-indicator-value.js +23 -0
  295. package/dist/default/ui/volume-indicator/volume-indicator-value.js.map +1 -0
  296. package/dist/default/utils/use-attach-media.js +14 -0
  297. package/dist/default/utils/use-attach-media.js.map +1 -0
  298. package/dist/default/utils/use-render.js.map +1 -1
  299. package/dist/default/utils/use-sync-props.js +14 -0
  300. package/dist/default/utils/use-sync-props.js.map +1 -0
  301. package/dist/dev/icons/dist/react/default/captions-off.js +1 -0
  302. package/dist/dev/icons/dist/react/default/captions-off.js.map +1 -1
  303. package/dist/dev/icons/dist/react/default/captions-on.js +3 -5
  304. package/dist/dev/icons/dist/react/default/captions-on.js.map +1 -1
  305. package/dist/dev/icons/dist/react/default/cast-enter.js +38 -11
  306. package/dist/dev/icons/dist/react/default/cast-enter.js.map +1 -1
  307. package/dist/dev/icons/dist/react/default/cast-exit.js +55 -14
  308. package/dist/dev/icons/dist/react/default/cast-exit.js.map +1 -1
  309. package/dist/dev/icons/dist/react/default/check.js +22 -0
  310. package/dist/dev/icons/dist/react/default/check.js.map +1 -0
  311. package/dist/dev/icons/dist/react/default/chevron.js +21 -0
  312. package/dist/dev/icons/dist/react/default/chevron.js.map +1 -0
  313. package/dist/dev/icons/dist/react/default/fullscreen-enter.js +3 -5
  314. package/dist/dev/icons/dist/react/default/fullscreen-enter.js.map +1 -1
  315. package/dist/dev/icons/dist/react/default/fullscreen-exit.js +3 -5
  316. package/dist/dev/icons/dist/react/default/fullscreen-exit.js.map +1 -1
  317. package/dist/dev/icons/dist/react/default/index.d.ts +23 -0
  318. package/dist/dev/icons/dist/react/default/index.d.ts.map +1 -0
  319. package/dist/dev/icons/dist/react/default/pause.js +2 -3
  320. package/dist/dev/icons/dist/react/default/pause.js.map +1 -1
  321. package/dist/dev/icons/dist/react/default/pip-enter.js +4 -10
  322. package/dist/dev/icons/dist/react/default/pip-enter.js.map +1 -1
  323. package/dist/dev/icons/dist/react/default/pip-exit.js +4 -10
  324. package/dist/dev/icons/dist/react/default/pip-exit.js.map +1 -1
  325. package/dist/dev/icons/dist/react/default/play.js +3 -5
  326. package/dist/dev/icons/dist/react/default/play.js.map +1 -1
  327. package/dist/dev/icons/dist/react/default/restart.js +3 -8
  328. package/dist/dev/icons/dist/react/default/restart.js.map +1 -1
  329. package/dist/dev/icons/dist/react/default/seek.js +3 -5
  330. package/dist/dev/icons/dist/react/default/seek.js.map +1 -1
  331. package/dist/dev/icons/dist/react/default/spinner.js +38 -117
  332. package/dist/dev/icons/dist/react/default/spinner.js.map +1 -1
  333. package/dist/dev/icons/dist/react/default/volume-high.js +3 -8
  334. package/dist/dev/icons/dist/react/default/volume-high.js.map +1 -1
  335. package/dist/dev/icons/dist/react/default/volume-low.js +3 -5
  336. package/dist/dev/icons/dist/react/default/volume-low.js.map +1 -1
  337. package/dist/dev/icons/dist/react/default/volume-off.js +3 -5
  338. package/dist/dev/icons/dist/react/default/volume-off.js.map +1 -1
  339. package/dist/dev/icons/dist/react/minimal/captions-off.js +1 -0
  340. package/dist/dev/icons/dist/react/minimal/captions-off.js.map +1 -1
  341. package/dist/dev/icons/dist/react/minimal/captions-on.js +3 -5
  342. package/dist/dev/icons/dist/react/minimal/captions-on.js.map +1 -1
  343. package/dist/dev/icons/dist/react/minimal/cast-enter.js +38 -7
  344. package/dist/dev/icons/dist/react/minimal/cast-enter.js.map +1 -1
  345. package/dist/dev/icons/dist/react/minimal/cast-exit.js +56 -11
  346. package/dist/dev/icons/dist/react/minimal/cast-exit.js.map +1 -1
  347. package/dist/dev/icons/dist/react/minimal/check.js +22 -0
  348. package/dist/dev/icons/dist/react/minimal/check.js.map +1 -0
  349. package/dist/dev/icons/dist/react/minimal/chevron.js +21 -0
  350. package/dist/dev/icons/dist/react/minimal/chevron.js.map +1 -0
  351. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js +5 -13
  352. package/dist/dev/icons/dist/react/minimal/fullscreen-enter.js.map +1 -1
  353. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js +5 -13
  354. package/dist/dev/icons/dist/react/minimal/fullscreen-exit.js.map +1 -1
  355. package/dist/dev/icons/dist/react/minimal/index.d.ts +23 -0
  356. package/dist/dev/icons/dist/react/minimal/index.d.ts.map +1 -0
  357. package/dist/dev/icons/dist/react/minimal/pause.js +2 -3
  358. package/dist/dev/icons/dist/react/minimal/pause.js.map +1 -1
  359. package/dist/dev/icons/dist/react/minimal/pip-enter.js +5 -14
  360. package/dist/dev/icons/dist/react/minimal/pip-enter.js.map +1 -1
  361. package/dist/dev/icons/dist/react/minimal/pip-exit.js +5 -14
  362. package/dist/dev/icons/dist/react/minimal/pip-exit.js.map +1 -1
  363. package/dist/dev/icons/dist/react/minimal/play.js +3 -5
  364. package/dist/dev/icons/dist/react/minimal/play.js.map +1 -1
  365. package/dist/dev/icons/dist/react/minimal/restart.js +3 -8
  366. package/dist/dev/icons/dist/react/minimal/restart.js.map +1 -1
  367. package/dist/dev/icons/dist/react/minimal/seek.js +3 -5
  368. package/dist/dev/icons/dist/react/minimal/seek.js.map +1 -1
  369. package/dist/dev/icons/dist/react/minimal/spinner.js +38 -117
  370. package/dist/dev/icons/dist/react/minimal/spinner.js.map +1 -1
  371. package/dist/dev/icons/dist/react/minimal/volume-high.js +3 -8
  372. package/dist/dev/icons/dist/react/minimal/volume-high.js.map +1 -1
  373. package/dist/dev/icons/dist/react/minimal/volume-low.js +3 -5
  374. package/dist/dev/icons/dist/react/minimal/volume-low.js.map +1 -1
  375. package/dist/dev/icons/dist/react/minimal/volume-off.js +3 -5
  376. package/dist/dev/icons/dist/react/minimal/volume-off.js.map +1 -1
  377. package/dist/dev/icons/index.d.ts +2 -0
  378. package/dist/dev/icons/index.js +19 -0
  379. package/dist/dev/icons/minimal/index.d.ts +2 -0
  380. package/dist/dev/icons/minimal/index.js +19 -0
  381. package/dist/dev/index.d.ts +28 -12
  382. package/dist/dev/index.js +20 -12
  383. package/dist/dev/media/audio.d.ts +2 -2
  384. package/dist/dev/media/audio.d.ts.map +1 -1
  385. package/dist/dev/media/background-video/index.d.ts +2 -2
  386. package/dist/dev/media/background-video/index.d.ts.map +1 -1
  387. package/dist/dev/media/dash-video/index.d.ts +7 -8
  388. package/dist/dev/media/dash-video/index.d.ts.map +1 -1
  389. package/dist/dev/media/dash-video/index.js +6 -6
  390. package/dist/dev/media/dash-video/index.js.map +1 -1
  391. package/dist/dev/media/hls-video/index.d.ts +7 -8
  392. package/dist/dev/media/hls-video/index.d.ts.map +1 -1
  393. package/dist/dev/media/hls-video/index.js +6 -6
  394. package/dist/dev/media/hls-video/index.js.map +1 -1
  395. package/dist/dev/media/mux-audio/index.d.ts +11 -9
  396. package/dist/dev/media/mux-audio/index.d.ts.map +1 -1
  397. package/dist/dev/media/mux-audio/index.js +9 -8
  398. package/dist/dev/media/mux-audio/index.js.map +1 -1
  399. package/dist/dev/media/mux-video/index.d.ts +7 -8
  400. package/dist/dev/media/mux-video/index.d.ts.map +1 -1
  401. package/dist/dev/media/mux-video/index.js +6 -6
  402. package/dist/dev/media/mux-video/index.js.map +1 -1
  403. package/dist/dev/media/native-hls-video/index.d.ts +7 -8
  404. package/dist/dev/media/native-hls-video/index.d.ts.map +1 -1
  405. package/dist/dev/media/native-hls-video/index.js +6 -6
  406. package/dist/dev/media/native-hls-video/index.js.map +1 -1
  407. package/dist/dev/media/simple-hls-video/index.d.ts +7 -6
  408. package/dist/dev/media/simple-hls-video/index.d.ts.map +1 -1
  409. package/dist/dev/media/simple-hls-video/index.js +6 -5
  410. package/dist/dev/media/simple-hls-video/index.js.map +1 -1
  411. package/dist/dev/media/video.d.ts +2 -2
  412. package/dist/dev/media/video.d.ts.map +1 -1
  413. package/dist/dev/player/context.d.ts +7 -4
  414. package/dist/dev/player/context.d.ts.map +1 -1
  415. package/dist/dev/player/context.js +9 -1
  416. package/dist/dev/player/context.js.map +1 -1
  417. package/dist/dev/player/create-player.d.ts.map +1 -1
  418. package/dist/dev/player/create-player.js +4 -1
  419. package/dist/dev/player/create-player.js.map +1 -1
  420. package/dist/dev/presets/audio/minimal-skin.css +211 -100
  421. package/dist/dev/presets/audio/minimal-skin.d.ts.map +1 -1
  422. package/dist/dev/presets/audio/minimal-skin.js +107 -7
  423. package/dist/dev/presets/audio/minimal-skin.js.map +1 -1
  424. package/dist/dev/presets/audio/minimal-skin.tailwind.d.ts.map +1 -1
  425. package/dist/dev/presets/audio/minimal-skin.tailwind.js +41 -7
  426. package/dist/dev/presets/audio/minimal-skin.tailwind.js.map +1 -1
  427. package/dist/dev/presets/audio/skin.css +237 -100
  428. package/dist/dev/presets/audio/skin.d.ts.map +1 -1
  429. package/dist/dev/presets/audio/skin.js +57 -22
  430. package/dist/dev/presets/audio/skin.js.map +1 -1
  431. package/dist/dev/presets/audio/skin.tailwind.d.ts.map +1 -1
  432. package/dist/dev/presets/audio/skin.tailwind.js +115 -14
  433. package/dist/dev/presets/audio/skin.tailwind.js.map +1 -1
  434. package/dist/dev/presets/background/skin.d.ts +2 -2
  435. package/dist/dev/presets/background/skin.d.ts.map +1 -1
  436. package/dist/dev/presets/live-audio/index.d.ts +7 -0
  437. package/dist/dev/presets/live-audio/index.js +7 -0
  438. package/dist/dev/presets/live-audio/minimal-skin.css +846 -0
  439. package/dist/dev/presets/live-audio/minimal-skin.d.ts +16 -0
  440. package/dist/dev/presets/live-audio/minimal-skin.d.ts.map +1 -0
  441. package/dist/dev/presets/live-audio/minimal-skin.js +164 -0
  442. package/dist/dev/presets/live-audio/minimal-skin.js.map +1 -0
  443. package/dist/dev/presets/live-audio/minimal-skin.tailwind.d.ts +8 -0
  444. package/dist/dev/presets/live-audio/minimal-skin.tailwind.d.ts.map +1 -0
  445. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js +194 -0
  446. package/dist/dev/presets/live-audio/minimal-skin.tailwind.js.map +1 -0
  447. package/dist/dev/presets/live-audio/skin.css +888 -0
  448. package/dist/dev/presets/live-audio/skin.d.ts +15 -0
  449. package/dist/dev/presets/live-audio/skin.d.ts.map +1 -0
  450. package/dist/dev/presets/live-audio/skin.js +163 -0
  451. package/dist/dev/presets/live-audio/skin.js.map +1 -0
  452. package/dist/dev/presets/live-audio/skin.tailwind.d.ts +8 -0
  453. package/dist/dev/presets/live-audio/skin.tailwind.d.ts.map +1 -0
  454. package/dist/dev/presets/live-audio/skin.tailwind.js +193 -0
  455. package/dist/dev/presets/live-audio/skin.tailwind.js.map +1 -0
  456. package/dist/dev/presets/live-video/index.d.ts +7 -0
  457. package/dist/dev/presets/live-video/index.js +7 -0
  458. package/dist/dev/presets/live-video/minimal-skin.css +1542 -0
  459. package/dist/dev/presets/live-video/minimal-skin.d.ts +16 -0
  460. package/dist/dev/presets/live-video/minimal-skin.d.ts.map +1 -0
  461. package/dist/dev/presets/live-video/minimal-skin.js +306 -0
  462. package/dist/dev/presets/live-video/minimal-skin.js.map +1 -0
  463. package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts +8 -0
  464. package/dist/dev/presets/live-video/minimal-skin.tailwind.d.ts.map +1 -0
  465. package/dist/dev/presets/live-video/minimal-skin.tailwind.js +341 -0
  466. package/dist/dev/presets/live-video/minimal-skin.tailwind.js.map +1 -0
  467. package/dist/dev/presets/live-video/skin.css +1544 -0
  468. package/dist/dev/presets/live-video/skin.d.ts +15 -0
  469. package/dist/dev/presets/live-video/skin.d.ts.map +1 -0
  470. package/dist/dev/presets/live-video/skin.js +304 -0
  471. package/dist/dev/presets/live-video/skin.js.map +1 -0
  472. package/dist/dev/presets/live-video/skin.tailwind.d.ts +8 -0
  473. package/dist/dev/presets/live-video/skin.tailwind.d.ts.map +1 -0
  474. package/dist/dev/presets/live-video/skin.tailwind.js +426 -0
  475. package/dist/dev/presets/live-video/skin.tailwind.js.map +1 -0
  476. package/dist/dev/presets/video/minimal-skin.css +555 -139
  477. package/dist/dev/presets/video/minimal-skin.d.ts.map +1 -1
  478. package/dist/dev/presets/video/minimal-skin.js +205 -23
  479. package/dist/dev/presets/video/minimal-skin.js.map +1 -1
  480. package/dist/dev/presets/video/minimal-skin.tailwind.d.ts.map +1 -1
  481. package/dist/dev/presets/video/minimal-skin.tailwind.js +209 -24
  482. package/dist/dev/presets/video/minimal-skin.tailwind.js.map +1 -1
  483. package/dist/dev/presets/video/skin.css +565 -137
  484. package/dist/dev/presets/video/skin.d.ts.map +1 -1
  485. package/dist/dev/presets/video/skin.js +124 -52
  486. package/dist/dev/presets/video/skin.js.map +1 -1
  487. package/dist/dev/presets/video/skin.tailwind.d.ts.map +1 -1
  488. package/dist/dev/presets/video/skin.tailwind.js +208 -29
  489. package/dist/dev/presets/video/skin.tailwind.js.map +1 -1
  490. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js +3 -2
  491. package/dist/dev/skins/dist/default/default/tailwind/audio.tailwind.js.map +1 -1
  492. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js +1 -1
  493. package/dist/dev/skins/dist/default/default/tailwind/components/buffering.js.map +1 -1
  494. package/dist/dev/skins/dist/default/default/tailwind/components/button.js +3 -2
  495. package/dist/dev/skins/dist/default/default/tailwind/components/button.js.map +1 -1
  496. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js +1 -1
  497. package/dist/dev/skins/dist/default/default/tailwind/components/controls.js.map +1 -1
  498. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js +1 -1
  499. package/dist/dev/skins/dist/default/default/tailwind/components/icon.js.map +1 -1
  500. package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js +40 -0
  501. package/dist/dev/skins/dist/default/default/tailwind/components/input-feedback.js.map +1 -0
  502. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js +12 -0
  503. package/dist/dev/skins/dist/default/default/tailwind/components/menu.js.map +1 -0
  504. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js +1 -1
  505. package/dist/dev/skins/dist/default/default/tailwind/components/playback-rate.js.map +1 -1
  506. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js +1 -1
  507. package/dist/dev/skins/dist/default/default/tailwind/components/preview.js.map +1 -1
  508. package/dist/dev/skins/dist/default/default/tailwind/components/reset.js +7 -0
  509. package/dist/dev/skins/dist/default/default/tailwind/components/reset.js.map +1 -0
  510. package/dist/dev/skins/dist/default/default/tailwind/components/root.js +2 -1
  511. package/dist/dev/skins/dist/default/default/tailwind/components/root.js.map +1 -1
  512. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js +1 -1
  513. package/dist/dev/skins/dist/default/default/tailwind/components/slider.js.map +1 -1
  514. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js +13 -4
  515. package/dist/dev/skins/dist/default/default/tailwind/video.tailwind.js.map +1 -1
  516. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js +5 -3
  517. package/dist/dev/skins/dist/default/minimal/tailwind/audio.tailwind.js.map +1 -1
  518. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js +1 -1
  519. package/dist/dev/skins/dist/default/minimal/tailwind/components/buffering.js.map +1 -1
  520. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js +3 -2
  521. package/dist/dev/skins/dist/default/minimal/tailwind/components/button.js.map +1 -1
  522. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js +1 -1
  523. package/dist/dev/skins/dist/default/minimal/tailwind/components/controls.js.map +1 -1
  524. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js +1 -1
  525. package/dist/dev/skins/dist/default/minimal/tailwind/components/icon.js.map +1 -1
  526. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js +41 -0
  527. package/dist/dev/skins/dist/default/minimal/tailwind/components/input-feedback.js.map +1 -0
  528. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js +12 -0
  529. package/dist/dev/skins/dist/default/minimal/tailwind/components/menu.js.map +1 -0
  530. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js +6 -0
  531. package/dist/dev/skins/dist/default/minimal/tailwind/components/playback-rate.js.map +1 -0
  532. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js +1 -1
  533. package/dist/dev/skins/dist/default/minimal/tailwind/components/preview.js.map +1 -1
  534. package/dist/dev/skins/dist/default/minimal/tailwind/components/reset.js +7 -0
  535. package/dist/dev/skins/dist/default/minimal/tailwind/components/reset.js.map +1 -0
  536. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js +2 -1
  537. package/dist/dev/skins/dist/default/minimal/tailwind/components/root.js.map +1 -1
  538. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js +1 -1
  539. package/dist/dev/skins/dist/default/minimal/tailwind/components/slider.js.map +1 -1
  540. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js +7 -4
  541. package/dist/dev/skins/dist/default/minimal/tailwind/video.tailwind.js.map +1 -1
  542. package/dist/dev/tailwind.css +66 -0
  543. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts +2 -2
  544. package/dist/dev/ui/alert-dialog/alert-dialog-close.d.ts.map +1 -1
  545. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts +2 -2
  546. package/dist/dev/ui/alert-dialog/alert-dialog-description.d.ts.map +1 -1
  547. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts +2 -2
  548. package/dist/dev/ui/alert-dialog/alert-dialog-popup.d.ts.map +1 -1
  549. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts +2 -2
  550. package/dist/dev/ui/alert-dialog/alert-dialog-title.d.ts.map +1 -1
  551. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts +2 -2
  552. package/dist/dev/ui/buffering-indicator/buffering-indicator.d.ts.map +1 -1
  553. package/dist/dev/ui/captions-button/captions-button.d.ts +2 -2
  554. package/dist/dev/ui/captions-button/captions-button.d.ts.map +1 -1
  555. package/dist/dev/ui/cast-button/cast-button.d.ts +2 -2
  556. package/dist/dev/ui/cast-button/cast-button.d.ts.map +1 -1
  557. package/dist/dev/ui/cast-button/cast-button.js +2 -2
  558. package/dist/dev/ui/cast-button/cast-button.js.map +1 -1
  559. package/dist/dev/ui/controls/context.js +4 -1
  560. package/dist/dev/ui/controls/context.js.map +1 -1
  561. package/dist/dev/ui/controls/controls-group.d.ts +2 -2
  562. package/dist/dev/ui/controls/controls-group.d.ts.map +1 -1
  563. package/dist/dev/ui/controls/controls-root.d.ts +2 -2
  564. package/dist/dev/ui/controls/controls-root.d.ts.map +1 -1
  565. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts +2 -2
  566. package/dist/dev/ui/error-dialog/error-dialog-description.d.ts.map +1 -1
  567. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts +2 -2
  568. package/dist/dev/ui/fullscreen-button/fullscreen-button.d.ts.map +1 -1
  569. package/dist/dev/ui/gesture/gesture.d.ts +30 -0
  570. package/dist/dev/ui/gesture/gesture.d.ts.map +1 -0
  571. package/dist/dev/ui/gesture/{media-gesture.js → gesture.js} +8 -5
  572. package/dist/dev/ui/gesture/gesture.js.map +1 -0
  573. package/dist/dev/ui/gesture/index.d.ts +2 -0
  574. package/dist/dev/ui/gesture/index.js +2 -0
  575. package/dist/dev/ui/hotkey/hotkey.d.ts +28 -0
  576. package/dist/dev/ui/hotkey/hotkey.d.ts.map +1 -0
  577. package/dist/dev/ui/hotkey/{media-hotkey.js → hotkey.js} +7 -4
  578. package/dist/dev/ui/hotkey/hotkey.js.map +1 -0
  579. package/dist/dev/ui/hotkey/index.d.ts +2 -0
  580. package/dist/dev/ui/hotkey/index.js +2 -0
  581. package/dist/dev/ui/input-indicators/use-indicator-visibility.js +25 -0
  582. package/dist/dev/ui/input-indicators/use-indicator-visibility.js.map +1 -0
  583. package/dist/dev/ui/input-indicators/use-input-action-subscription.js +22 -0
  584. package/dist/dev/ui/input-indicators/use-input-action-subscription.js.map +1 -0
  585. package/dist/dev/ui/input-indicators/use-input-indicator-root.js +21 -0
  586. package/dist/dev/ui/input-indicators/use-input-indicator-root.js.map +1 -0
  587. package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js +40 -0
  588. package/dist/dev/ui/input-indicators/use-rendered-indicator-state.js.map +1 -0
  589. package/dist/dev/ui/live-button/index.d.ts +2 -0
  590. package/dist/dev/ui/live-button/index.js +2 -0
  591. package/dist/dev/ui/live-button/live-button.d.ts +34 -0
  592. package/dist/dev/ui/live-button/live-button.d.ts.map +1 -0
  593. package/dist/dev/ui/live-button/live-button.js +92 -0
  594. package/dist/dev/ui/live-button/live-button.js.map +1 -0
  595. package/dist/dev/ui/menu/context.d.ts +29 -0
  596. package/dist/dev/ui/menu/context.d.ts.map +1 -0
  597. package/dist/dev/ui/menu/context.js +29 -0
  598. package/dist/dev/ui/menu/context.js.map +1 -0
  599. package/dist/dev/ui/menu/index.d.ts +3 -0
  600. package/dist/dev/ui/menu/index.js +3 -0
  601. package/dist/dev/ui/menu/index.parts.d.ts +21 -0
  602. package/dist/dev/ui/menu/index.parts.d.ts.map +1 -0
  603. package/dist/dev/ui/menu/index.parts.js +34 -0
  604. package/dist/dev/ui/menu/index.parts.js.map +1 -0
  605. package/dist/dev/ui/menu/menu-back.d.ts +18 -0
  606. package/dist/dev/ui/menu/menu-back.d.ts.map +1 -0
  607. package/dist/dev/ui/menu/menu-back.js +31 -0
  608. package/dist/dev/ui/menu/menu-back.js.map +1 -0
  609. package/dist/dev/ui/menu/menu-checkbox-item.d.ts +22 -0
  610. package/dist/dev/ui/menu/menu-checkbox-item.d.ts.map +1 -0
  611. package/dist/dev/ui/menu/menu-checkbox-item.js +50 -0
  612. package/dist/dev/ui/menu/menu-checkbox-item.js.map +1 -0
  613. package/dist/dev/ui/menu/menu-content.d.ts +15 -0
  614. package/dist/dev/ui/menu/menu-content.d.ts.map +1 -0
  615. package/dist/dev/ui/menu/menu-content.js +284 -0
  616. package/dist/dev/ui/menu/menu-content.js.map +1 -0
  617. package/dist/dev/ui/menu/menu-group.d.ts +18 -0
  618. package/dist/dev/ui/menu/menu-group.d.ts.map +1 -0
  619. package/dist/dev/ui/menu/menu-group.js +26 -0
  620. package/dist/dev/ui/menu/menu-group.js.map +1 -0
  621. package/dist/dev/ui/menu/menu-item-indicator.d.ts +20 -0
  622. package/dist/dev/ui/menu/menu-item-indicator.d.ts.map +1 -0
  623. package/dist/dev/ui/menu/menu-item-indicator.js +24 -0
  624. package/dist/dev/ui/menu/menu-item-indicator.js.map +1 -0
  625. package/dist/dev/ui/menu/menu-item.d.ts +20 -0
  626. package/dist/dev/ui/menu/menu-item.d.ts.map +1 -0
  627. package/dist/dev/ui/menu/menu-item.js +53 -0
  628. package/dist/dev/ui/menu/menu-item.js.map +1 -0
  629. package/dist/dev/ui/menu/menu-label.d.ts +15 -0
  630. package/dist/dev/ui/menu/menu-label.d.ts.map +1 -0
  631. package/dist/dev/ui/menu/menu-label.js +23 -0
  632. package/dist/dev/ui/menu/menu-label.js.map +1 -0
  633. package/dist/dev/ui/menu/menu-radio-group.d.ts +22 -0
  634. package/dist/dev/ui/menu/menu-radio-group.d.ts.map +1 -0
  635. package/dist/dev/ui/menu/menu-radio-group.js +33 -0
  636. package/dist/dev/ui/menu/menu-radio-group.js.map +1 -0
  637. package/dist/dev/ui/menu/menu-radio-item.d.ts +20 -0
  638. package/dist/dev/ui/menu/menu-radio-item.d.ts.map +1 -0
  639. package/dist/dev/ui/menu/menu-radio-item.js +57 -0
  640. package/dist/dev/ui/menu/menu-radio-item.js.map +1 -0
  641. package/dist/dev/ui/menu/menu-root.d.ts +29 -0
  642. package/dist/dev/ui/menu/menu-root.d.ts.map +1 -0
  643. package/dist/dev/ui/menu/menu-root.js +136 -0
  644. package/dist/dev/ui/menu/menu-root.js.map +1 -0
  645. package/dist/dev/ui/menu/menu-separator.d.ts +15 -0
  646. package/dist/dev/ui/menu/menu-separator.d.ts.map +1 -0
  647. package/dist/dev/ui/menu/menu-separator.js +23 -0
  648. package/dist/dev/ui/menu/menu-separator.js.map +1 -0
  649. package/dist/dev/ui/menu/menu-trigger.d.ts +22 -0
  650. package/dist/dev/ui/menu/menu-trigger.d.ts.map +1 -0
  651. package/dist/dev/ui/menu/menu-trigger.js +124 -0
  652. package/dist/dev/ui/menu/menu-trigger.js.map +1 -0
  653. package/dist/dev/ui/menu/menu-view.d.ts +15 -0
  654. package/dist/dev/ui/menu/menu-view.d.ts.map +1 -0
  655. package/dist/dev/ui/menu/menu-view.js +23 -0
  656. package/dist/dev/ui/menu/menu-view.js.map +1 -0
  657. package/dist/dev/ui/mute-button/mute-button.d.ts +2 -2
  658. package/dist/dev/ui/mute-button/mute-button.d.ts.map +1 -1
  659. package/dist/dev/ui/pip-button/pip-button.d.ts +2 -2
  660. package/dist/dev/ui/pip-button/pip-button.d.ts.map +1 -1
  661. package/dist/dev/ui/play-button/play-button.d.ts +2 -2
  662. package/dist/dev/ui/play-button/play-button.d.ts.map +1 -1
  663. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts +2 -2
  664. package/dist/dev/ui/playback-rate-button/playback-rate-button.d.ts.map +1 -1
  665. package/dist/dev/ui/playback-rate-menu/context.js +20 -0
  666. package/dist/dev/ui/playback-rate-menu/context.js.map +1 -0
  667. package/dist/dev/ui/playback-rate-menu/index.d.ts +3 -0
  668. package/dist/dev/ui/playback-rate-menu/index.js +3 -0
  669. package/dist/dev/ui/playback-rate-menu/index.parts.d.ts +12 -0
  670. package/dist/dev/ui/playback-rate-menu/index.parts.d.ts.map +1 -0
  671. package/dist/dev/ui/playback-rate-menu/index.parts.js +17 -0
  672. package/dist/dev/ui/playback-rate-menu/index.parts.js.map +1 -0
  673. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.d.ts +14 -0
  674. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.d.ts.map +1 -0
  675. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.js +28 -0
  676. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-content.js.map +1 -0
  677. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.d.ts +23 -0
  678. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.d.ts.map +1 -0
  679. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.js +39 -0
  680. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-root.js.map +1 -0
  681. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.d.ts +14 -0
  682. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.d.ts.map +1 -0
  683. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.js +51 -0
  684. package/dist/dev/ui/playback-rate-menu/playback-rate-menu-trigger.js.map +1 -0
  685. package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.d.ts +26 -0
  686. package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.d.ts.map +1 -0
  687. package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.js +27 -0
  688. package/dist/dev/ui/playback-rate-menu/use-playback-rate-menu.js.map +1 -0
  689. package/dist/dev/ui/popover/context.d.ts +3 -1
  690. package/dist/dev/ui/popover/context.d.ts.map +1 -1
  691. package/dist/dev/ui/popover/context.js.map +1 -1
  692. package/dist/dev/ui/popover/popover-arrow.d.ts +2 -2
  693. package/dist/dev/ui/popover/popover-arrow.d.ts.map +1 -1
  694. package/dist/dev/ui/popover/popover-popup.d.ts +2 -2
  695. package/dist/dev/ui/popover/popover-popup.d.ts.map +1 -1
  696. package/dist/dev/ui/popover/popover-popup.js +20 -7
  697. package/dist/dev/ui/popover/popover-popup.js.map +1 -1
  698. package/dist/dev/ui/popover/popover-root.d.ts +4 -1
  699. package/dist/dev/ui/popover/popover-root.d.ts.map +1 -1
  700. package/dist/dev/ui/popover/popover-root.js +20 -5
  701. package/dist/dev/ui/popover/popover-root.js.map +1 -1
  702. package/dist/dev/ui/popover/popover-trigger.d.ts +2 -2
  703. package/dist/dev/ui/popover/popover-trigger.d.ts.map +1 -1
  704. package/dist/dev/ui/poster/poster.d.ts +2 -2
  705. package/dist/dev/ui/poster/poster.d.ts.map +1 -1
  706. package/dist/dev/ui/seek-button/seek-button.d.ts +2 -2
  707. package/dist/dev/ui/seek-button/seek-button.d.ts.map +1 -1
  708. package/dist/dev/ui/seek-indicator/context.js +20 -0
  709. package/dist/dev/ui/seek-indicator/context.js.map +1 -0
  710. package/dist/dev/ui/seek-indicator/index.d.ts +2 -0
  711. package/dist/dev/ui/seek-indicator/index.js +2 -0
  712. package/dist/dev/ui/seek-indicator/index.parts.d.ts +10 -0
  713. package/dist/dev/ui/seek-indicator/index.parts.d.ts.map +1 -0
  714. package/dist/dev/ui/seek-indicator/index.parts.js +12 -0
  715. package/dist/dev/ui/seek-indicator/index.parts.js.map +1 -0
  716. package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts +14 -0
  717. package/dist/dev/ui/seek-indicator/seek-indicator-root.d.ts.map +1 -0
  718. package/dist/dev/ui/seek-indicator/seek-indicator-root.js +30 -0
  719. package/dist/dev/ui/seek-indicator/seek-indicator-root.js.map +1 -0
  720. package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts +13 -0
  721. package/dist/dev/ui/seek-indicator/seek-indicator-value.d.ts.map +1 -0
  722. package/dist/dev/ui/seek-indicator/seek-indicator-value.js +23 -0
  723. package/dist/dev/ui/seek-indicator/seek-indicator-value.js.map +1 -0
  724. package/dist/dev/ui/slider/context.js.map +1 -1
  725. package/dist/dev/ui/slider/slider-buffer.d.ts +2 -2
  726. package/dist/dev/ui/slider/slider-buffer.d.ts.map +1 -1
  727. package/dist/dev/ui/slider/slider-fill.d.ts +2 -2
  728. package/dist/dev/ui/slider/slider-fill.d.ts.map +1 -1
  729. package/dist/dev/ui/slider/slider-preview.d.ts +2 -2
  730. package/dist/dev/ui/slider/slider-preview.d.ts.map +1 -1
  731. package/dist/dev/ui/slider/slider-root.d.ts +2 -2
  732. package/dist/dev/ui/slider/slider-root.d.ts.map +1 -1
  733. package/dist/dev/ui/slider/slider-thumb.d.ts +2 -2
  734. package/dist/dev/ui/slider/slider-thumb.d.ts.map +1 -1
  735. package/dist/dev/ui/slider/slider-thumbnail.d.ts +2 -2
  736. package/dist/dev/ui/slider/slider-thumbnail.d.ts.map +1 -1
  737. package/dist/dev/ui/slider/slider-track.d.ts +2 -2
  738. package/dist/dev/ui/slider/slider-track.d.ts.map +1 -1
  739. package/dist/dev/ui/slider/slider-value.d.ts +2 -2
  740. package/dist/dev/ui/slider/slider-value.d.ts.map +1 -1
  741. package/dist/dev/ui/status-announcer/index.d.ts +2 -0
  742. package/dist/dev/ui/status-announcer/index.js +2 -0
  743. package/dist/dev/ui/status-announcer/status-announcer.d.ts +14 -0
  744. package/dist/dev/ui/status-announcer/status-announcer.d.ts.map +1 -0
  745. package/dist/dev/ui/status-announcer/status-announcer.js +36 -0
  746. package/dist/dev/ui/status-announcer/status-announcer.js.map +1 -0
  747. package/dist/dev/ui/status-indicator/context.js +20 -0
  748. package/dist/dev/ui/status-indicator/context.js.map +1 -0
  749. package/dist/dev/ui/status-indicator/index.d.ts +2 -0
  750. package/dist/dev/ui/status-indicator/index.js +2 -0
  751. package/dist/dev/ui/status-indicator/index.parts.d.ts +10 -0
  752. package/dist/dev/ui/status-indicator/index.parts.d.ts.map +1 -0
  753. package/dist/dev/ui/status-indicator/index.parts.js +12 -0
  754. package/dist/dev/ui/status-indicator/index.parts.js.map +1 -0
  755. package/dist/dev/ui/status-indicator/status-indicator-root.d.ts +14 -0
  756. package/dist/dev/ui/status-indicator/status-indicator-root.d.ts.map +1 -0
  757. package/dist/dev/ui/status-indicator/status-indicator-root.js +34 -0
  758. package/dist/dev/ui/status-indicator/status-indicator-root.js.map +1 -0
  759. package/dist/dev/ui/status-indicator/status-indicator-value.d.ts +13 -0
  760. package/dist/dev/ui/status-indicator/status-indicator-value.d.ts.map +1 -0
  761. package/dist/dev/ui/status-indicator/status-indicator-value.js +23 -0
  762. package/dist/dev/ui/status-indicator/status-indicator-value.js.map +1 -0
  763. package/dist/dev/ui/thumbnail/thumbnail.d.ts +2 -2
  764. package/dist/dev/ui/thumbnail/thumbnail.d.ts.map +1 -1
  765. package/dist/dev/ui/time/time-group.d.ts +2 -2
  766. package/dist/dev/ui/time/time-group.d.ts.map +1 -1
  767. package/dist/dev/ui/time/time-separator.d.ts +2 -2
  768. package/dist/dev/ui/time/time-separator.d.ts.map +1 -1
  769. package/dist/dev/ui/time/time-value.d.ts +2 -2
  770. package/dist/dev/ui/time/time-value.d.ts.map +1 -1
  771. package/dist/dev/ui/time-slider/time-slider-root.d.ts +2 -2
  772. package/dist/dev/ui/time-slider/time-slider-root.d.ts.map +1 -1
  773. package/dist/dev/ui/tooltip/context.d.ts +3 -1
  774. package/dist/dev/ui/tooltip/context.d.ts.map +1 -1
  775. package/dist/dev/ui/tooltip/context.js.map +1 -1
  776. package/dist/dev/ui/tooltip/tooltip-arrow.d.ts +2 -2
  777. package/dist/dev/ui/tooltip/tooltip-arrow.d.ts.map +1 -1
  778. package/dist/dev/ui/tooltip/tooltip-popup.d.ts +2 -2
  779. package/dist/dev/ui/tooltip/tooltip-popup.d.ts.map +1 -1
  780. package/dist/dev/ui/tooltip/tooltip-popup.js +20 -7
  781. package/dist/dev/ui/tooltip/tooltip-popup.js.map +1 -1
  782. package/dist/dev/ui/tooltip/tooltip-root.d.ts +4 -1
  783. package/dist/dev/ui/tooltip/tooltip-root.d.ts.map +1 -1
  784. package/dist/dev/ui/tooltip/tooltip-root.js +16 -4
  785. package/dist/dev/ui/tooltip/tooltip-root.js.map +1 -1
  786. package/dist/dev/ui/tooltip/tooltip-trigger.d.ts +2 -2
  787. package/dist/dev/ui/tooltip/tooltip-trigger.d.ts.map +1 -1
  788. package/dist/dev/ui/volume-indicator/context.js +20 -0
  789. package/dist/dev/ui/volume-indicator/context.js.map +1 -0
  790. package/dist/dev/ui/volume-indicator/index.d.ts +2 -0
  791. package/dist/dev/ui/volume-indicator/index.js +2 -0
  792. package/dist/dev/ui/volume-indicator/index.parts.d.ts +11 -0
  793. package/dist/dev/ui/volume-indicator/index.parts.d.ts.map +1 -0
  794. package/dist/dev/ui/volume-indicator/index.parts.js +14 -0
  795. package/dist/dev/ui/volume-indicator/index.parts.js.map +1 -0
  796. package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts +13 -0
  797. package/dist/dev/ui/volume-indicator/volume-indicator-fill.d.ts.map +1 -0
  798. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js +36 -0
  799. package/dist/dev/ui/volume-indicator/volume-indicator-fill.js.map +1 -0
  800. package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts +14 -0
  801. package/dist/dev/ui/volume-indicator/volume-indicator-root.d.ts.map +1 -0
  802. package/dist/dev/ui/volume-indicator/volume-indicator-root.js +30 -0
  803. package/dist/dev/ui/volume-indicator/volume-indicator-root.js.map +1 -0
  804. package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts +13 -0
  805. package/dist/dev/ui/volume-indicator/volume-indicator-value.d.ts.map +1 -0
  806. package/dist/dev/ui/volume-indicator/volume-indicator-value.js +23 -0
  807. package/dist/dev/ui/volume-indicator/volume-indicator-value.js.map +1 -0
  808. package/dist/dev/ui/volume-slider/volume-slider-root.d.ts +2 -2
  809. package/dist/dev/ui/volume-slider/volume-slider-root.d.ts.map +1 -1
  810. package/dist/dev/utils/use-attach-media.d.ts +8 -0
  811. package/dist/dev/utils/use-attach-media.d.ts.map +1 -0
  812. package/dist/dev/utils/use-attach-media.js +14 -0
  813. package/dist/dev/utils/use-attach-media.js.map +1 -0
  814. package/dist/dev/utils/use-render.js.map +1 -1
  815. package/dist/dev/utils/use-sync-props.js +14 -0
  816. package/dist/dev/utils/use-sync-props.js.map +1 -0
  817. package/docs/README.md +7 -0
  818. package/docs/concepts/accessibility.md +60 -0
  819. package/docs/concepts/browser-support.md +37 -0
  820. package/docs/concepts/features.md +131 -0
  821. package/docs/concepts/overview.md +119 -0
  822. package/docs/concepts/presets.md +204 -0
  823. package/docs/concepts/skins.md +2094 -0
  824. package/docs/concepts/ui-components.md +83 -0
  825. package/docs/concepts/v10-roadmap.md +75 -0
  826. package/docs/concepts/why-videojs.md +113 -0
  827. package/docs/how-to/build-with-ai.md +39 -0
  828. package/docs/how-to/build-your-own-component.md +142 -0
  829. package/docs/how-to/customize-skins.md +5990 -0
  830. package/docs/how-to/installation.md +170 -0
  831. package/docs/llms.txt +91 -0
  832. package/docs/reference/buffering-indicator.md +152 -0
  833. package/docs/reference/captions-button.md +200 -0
  834. package/docs/reference/controls.md +238 -0
  835. package/docs/reference/create-player.md +261 -0
  836. package/docs/reference/create-selector.md +59 -0
  837. package/docs/reference/feature-buffer.md +54 -0
  838. package/docs/reference/feature-controls.md +74 -0
  839. package/docs/reference/feature-error.md +65 -0
  840. package/docs/reference/feature-fullscreen.md +94 -0
  841. package/docs/reference/feature-live.md +62 -0
  842. package/docs/reference/feature-pip.md +94 -0
  843. package/docs/reference/feature-playback-rate.md +70 -0
  844. package/docs/reference/feature-playback.md +109 -0
  845. package/docs/reference/feature-remote-playback.md +74 -0
  846. package/docs/reference/feature-source.md +70 -0
  847. package/docs/reference/feature-stream-type.md +46 -0
  848. package/docs/reference/feature-text-tracks.md +104 -0
  849. package/docs/reference/feature-time.md +84 -0
  850. package/docs/reference/feature-volume.md +99 -0
  851. package/docs/reference/fullscreen-button.md +212 -0
  852. package/docs/reference/mute-button.md +276 -0
  853. package/docs/reference/pip-button.md +212 -0
  854. package/docs/reference/play-button.md +224 -0
  855. package/docs/reference/playback-rate-button.md +169 -0
  856. package/docs/reference/player-container.md +103 -0
  857. package/docs/reference/player-provider.md +102 -0
  858. package/docs/reference/popover.md +527 -0
  859. package/docs/reference/poster.md +137 -0
  860. package/docs/reference/render-element.md +196 -0
  861. package/docs/reference/seek-button.md +213 -0
  862. package/docs/reference/slider.md +826 -0
  863. package/docs/reference/thumbnail.md +322 -0
  864. package/docs/reference/time-slider.md +741 -0
  865. package/docs/reference/time.md +495 -0
  866. package/docs/reference/tooltip.md +631 -0
  867. package/docs/reference/use-button.md +124 -0
  868. package/docs/reference/use-container-attach.md +42 -0
  869. package/docs/reference/use-media-attach.md +46 -0
  870. package/docs/reference/use-media.md +11 -0
  871. package/docs/reference/use-player-context.md +93 -0
  872. package/docs/reference/use-player.md +226 -0
  873. package/docs/reference/use-selector.md +132 -0
  874. package/docs/reference/use-snapshot.md +127 -0
  875. package/docs/reference/use-store.md +257 -0
  876. package/docs/reference/volume-slider.md +716 -0
  877. package/package.json +46 -12
  878. package/dist/default/ui/gesture/media-gesture.js.map +0 -1
  879. package/dist/default/ui/hotkey/media-hotkey.js.map +0 -1
  880. package/dist/default/utils/attach-media-element.js +0 -12
  881. package/dist/default/utils/attach-media-element.js.map +0 -1
  882. package/dist/default/utils/media-props.js +0 -19
  883. package/dist/default/utils/media-props.js.map +0 -1
  884. package/dist/dev/ui/gesture/media-gesture.d.ts +0 -23
  885. package/dist/dev/ui/gesture/media-gesture.d.ts.map +0 -1
  886. package/dist/dev/ui/gesture/media-gesture.js.map +0 -1
  887. package/dist/dev/ui/hotkey/media-hotkey.d.ts +0 -21
  888. package/dist/dev/ui/hotkey/media-hotkey.d.ts.map +0 -1
  889. package/dist/dev/ui/hotkey/media-hotkey.js.map +0 -1
  890. package/dist/dev/utils/attach-media-element.d.ts +0 -9
  891. package/dist/dev/utils/attach-media-element.d.ts.map +0 -1
  892. package/dist/dev/utils/attach-media-element.js +0 -12
  893. package/dist/dev/utils/attach-media-element.js.map +0 -1
  894. package/dist/dev/utils/media-props.d.ts +0 -8
  895. package/dist/dev/utils/media-props.d.ts.map +0 -1
  896. package/dist/dev/utils/media-props.js +0 -19
  897. package/dist/dev/utils/media-props.js.map +0 -1
@@ -0,0 +1,276 @@
1
+ # MuteButton
2
+
3
+ Accessible mute/unmute button with keyboard support and volume state reflection
4
+
5
+ ## Anatomy
6
+
7
+ tsx
8
+
9
+ ```
10
+ <MuteButton />
11
+ ```
12
+
13
+ ## Behavior
14
+
15
+ Toggles mute on and off, and exposes a derived `volumeLevel` based on the current volume and mute state.
16
+
17
+ ## Styling
18
+
19
+ Style the button based on muted state:
20
+
21
+ React renders a `<button>` element. Add a `className` to style it:
22
+
23
+ css
24
+
25
+ ```
26
+ .mute-button[data-muted] .icon-muted { display: inline; }
27
+ .mute-button:not([data-muted]) .icon-unmuted { display: inline; }
28
+ ```
29
+
30
+ Use `data-volume-level` for multi-level icon switching:
31
+
32
+ css
33
+
34
+ ```
35
+ .mute-button[data-volume-level="off"] .icon-off { display: inline; }
36
+ .mute-button[data-volume-level="low"] .icon-low { display: inline; }
37
+ .mute-button[data-volume-level="medium"] .icon-medium { display: inline; }
38
+ .mute-button[data-volume-level="high"] .icon-high { display: inline; }
39
+ ```
40
+
41
+ ## Accessibility
42
+
43
+ Renders a `<button>` with an automatic `aria-label`: “Unmute” when muted, “Mute” when unmuted. Override with the `label` prop. Keyboard activation: Enter / Space.
44
+
45
+ ## Examples
46
+
47
+ ### Basic Usage
48
+
49
+ Mute
50
+
51
+ App.tsx
52
+
53
+ App.css
54
+
55
+ ```
56
+ import { createPlayer, MuteButton } from '@videojs/react';
57
+ import { Video, videoFeatures } from '@videojs/react/video';
58
+
59
+ const Player = createPlayer({ features: videoFeatures });
60
+
61
+ export default function BasicUsage() {
62
+ return (
63
+ <Player.Provider>
64
+ <Player.Container className="media-container">
65
+ <Video
66
+ src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
67
+ autoPlay
68
+ muted
69
+ playsInline
70
+ loop
71
+ />
72
+ <MuteButton
73
+ className="media-mute-button"
74
+ render={(props, state) => <button {...props}>{state.muted ? 'Unmute' : 'Mute'}</button>}
75
+ />
76
+ </Player.Container>
77
+ </Player.Provider>
78
+ );
79
+ }
80
+ ```
81
+ ```
82
+ .media-container {
83
+ position: relative;
84
+ }
85
+
86
+ .media-container video {
87
+ width: 100%;
88
+ }
89
+
90
+ .media-mute-button {
91
+ position: absolute;
92
+ bottom: 10px;
93
+ left: 10px;
94
+ padding-block: 8px;
95
+ padding-inline: 20px;
96
+ color: black;
97
+ cursor: pointer;
98
+ background: rgba(255, 255, 255, 0.7);
99
+ border: 1px solid rgba(255, 255, 255, 0.3);
100
+ border-radius: 9999px;
101
+ backdrop-filter: blur(10px);
102
+ }
103
+ ```
104
+
105
+ ### Volume Levels
106
+
107
+ High
108
+
109
+ App.tsx
110
+
111
+ App.css
112
+
113
+ ```
114
+ import { createPlayer, MuteButton } from '@videojs/react';
115
+ import { Video, videoFeatures } from '@videojs/react/video';
116
+
117
+ const Player = createPlayer({ features: videoFeatures });
118
+
119
+ export default function VolumeLevels() {
120
+ return (
121
+ <Player.Provider>
122
+ <Player.Container className="media-container">
123
+ <Video
124
+ src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
125
+ autoPlay
126
+ muted
127
+ playsInline
128
+ loop
129
+ />
130
+ <MuteButton
131
+ className="media-mute-button"
132
+ render={(props, state) => (
133
+ <button {...props}>
134
+ {state.volumeLevel === 'off'
135
+ ? 'Off'
136
+ : state.volumeLevel === 'low'
137
+ ? 'Low'
138
+ : state.volumeLevel === 'medium'
139
+ ? 'Medium'
140
+ : 'High'}
141
+ </button>
142
+ )}
143
+ />
144
+ </Player.Container>
145
+ </Player.Provider>
146
+ );
147
+ }
148
+ ```
149
+ ```
150
+ .media-container {
151
+ position: relative;
152
+ }
153
+
154
+ .media-container video {
155
+ width: 100%;
156
+ }
157
+
158
+ .media-mute-button {
159
+ position: absolute;
160
+ bottom: 10px;
161
+ left: 10px;
162
+ padding-block: 8px;
163
+ padding-inline: 20px;
164
+ color: black;
165
+ cursor: pointer;
166
+ background: rgba(255, 255, 255, 0.7);
167
+ border: 1px solid rgba(255, 255, 255, 0.3);
168
+ border-radius: 9999px;
169
+ backdrop-filter: blur(10px);
170
+ }
171
+ ```
172
+
173
+ ## API Reference
174
+
175
+ ### Props
176
+
177
+ Prop
178
+
179
+ Type
180
+
181
+ Default
182
+
183
+ Details
184
+
185
+ `disabled`
186
+
187
+ `boolean`
188
+
189
+ `false`
190
+
191
+
192
+
193
+ Description
194
+
195
+ Whether the button is disabled.
196
+
197
+ `label`
198
+
199
+ `string | function`
200
+
201
+ `''`
202
+
203
+
204
+
205
+ Description
206
+
207
+ Custom label for the button.
208
+
209
+ Type
210
+
211
+ `string | ((state: MuteButtonState) => string)`
212
+
213
+ ### State
214
+
215
+ State is accessible via the `render`, `className`, and `style` props.
216
+
217
+ Property
218
+
219
+ Type
220
+
221
+ Details
222
+
223
+ `volumeLevel`
224
+
225
+ `'off' | 'low' | 'medium' | 'high'`
226
+
227
+
228
+
229
+ Description
230
+
231
+ Derived volume level:
232
+
233
+ * `off`: muted or volume is 0
234
+ * `low`: volume < 0.5
235
+ * `medium`: volume < 0.75
236
+ * `high`: volume >= 0.75
237
+
238
+ `muted`
239
+
240
+ `boolean`
241
+
242
+
243
+
244
+ Description
245
+
246
+ Whether audio is muted.
247
+
248
+ `label`
249
+
250
+ `string`
251
+
252
+ ### Data attributes
253
+
254
+ Attribute
255
+
256
+ Type
257
+
258
+ Details
259
+
260
+ `data-muted`
261
+
262
+
263
+
264
+ Description
265
+
266
+ Present when the media is muted.
267
+
268
+ `data-volume-level`
269
+
270
+ `'off' | 'medium' | 'low' | 'high'`
271
+
272
+
273
+
274
+ Description
275
+
276
+ Indicates the volume level.
@@ -0,0 +1,212 @@
1
+ # PiPButton
2
+
3
+ Accessible picture-in-picture toggle button with keyboard support and state reflection
4
+
5
+ ## Anatomy
6
+
7
+ tsx
8
+
9
+ ```
10
+ <PiPButton />
11
+ ```
12
+
13
+ ## Behavior
14
+
15
+ Toggles picture-in-picture (PiP) mode. Detects platform support through `availability` — when PiP is `"unsupported"`, the toggle does nothing.
16
+
17
+ ## Styling
18
+
19
+ You can style the button based on PiP state:
20
+
21
+ React renders a `<button>` element. Add a `className` to style it:
22
+
23
+ css
24
+
25
+ ```
26
+ /* In PiP mode */
27
+ .pip-button[data-pip] {
28
+ background: red;
29
+ }
30
+ ```
31
+
32
+ Consider hiding the button when unsupported:
33
+
34
+ css
35
+
36
+ ```
37
+ .pip-button[data-availability="unsupported"] {
38
+ display: none;
39
+ }
40
+ ```
41
+
42
+ ## Accessibility
43
+
44
+ Renders a `<button>` with an automatic `aria-label`: “Enter PiP” or “Exit PiP”. Override with the `label` prop. Keyboard activation: Enter / Space.
45
+
46
+ ## Examples
47
+
48
+ ### Basic Usage
49
+
50
+ Enter PiP
51
+
52
+ App.tsx
53
+
54
+ App.css
55
+
56
+ ```
57
+ import { createPlayer, PiPButton } from '@videojs/react';
58
+ import { Video, videoFeatures } from '@videojs/react/video';
59
+
60
+ const Player = createPlayer({ features: videoFeatures });
61
+
62
+ export default function BasicUsage() {
63
+ return (
64
+ <Player.Provider>
65
+ <Player.Container className="media-container">
66
+ <Video
67
+ src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
68
+ autoPlay
69
+ muted
70
+ playsInline
71
+ loop
72
+ />
73
+ <PiPButton
74
+ className="media-pip-button"
75
+ render={(props, state) => <button {...props}>{state.pip ? 'Exit PiP' : 'Enter PiP'}</button>}
76
+ />
77
+ </Player.Container>
78
+ </Player.Provider>
79
+ );
80
+ }
81
+ ```
82
+ ```
83
+ .media-container {
84
+ position: relative;
85
+ }
86
+
87
+ .media-container video {
88
+ width: 100%;
89
+ }
90
+
91
+ .media-pip-button {
92
+ position: absolute;
93
+ right: 10px;
94
+ bottom: 10px;
95
+ padding-block: 8px;
96
+ padding-inline: 20px;
97
+ color: black;
98
+ cursor: pointer;
99
+ background: rgba(255, 255, 255, 0.7);
100
+ border: 1px solid rgba(255, 255, 255, 0.3);
101
+ border-radius: 9999px;
102
+ backdrop-filter: blur(10px);
103
+ }
104
+ ```
105
+
106
+ ## API Reference
107
+
108
+ ### Props
109
+
110
+ Prop
111
+
112
+ Type
113
+
114
+ Default
115
+
116
+ Details
117
+
118
+ `disabled`
119
+
120
+ `boolean`
121
+
122
+ `false`
123
+
124
+
125
+
126
+ Description
127
+
128
+ Whether the button is disabled.
129
+
130
+ `label`
131
+
132
+ `string | function`
133
+
134
+ `''`
135
+
136
+
137
+
138
+ Description
139
+
140
+ Custom label for the button.
141
+
142
+ Type
143
+
144
+ `string | ((state: PiPButtonState) => string)`
145
+
146
+ ### State
147
+
148
+ State is accessible via the `render`, `className`, and `style` props.
149
+
150
+ Property
151
+
152
+ Type
153
+
154
+ Details
155
+
156
+ `availability`
157
+
158
+ `'available' | 'unavailable' | 'unsupp...`
159
+
160
+
161
+
162
+ Description
163
+
164
+ Whether picture-in-picture can be requested on this platform.
165
+
166
+ Type
167
+
168
+ `'available' | 'unavailable' | 'unsupported'`
169
+
170
+ `pip`
171
+
172
+ `boolean`
173
+
174
+
175
+
176
+ Description
177
+
178
+ Whether picture-in-picture mode is currently active.
179
+
180
+ `label`
181
+
182
+ `string`
183
+
184
+ ### Data attributes
185
+
186
+ Attribute
187
+
188
+ Type
189
+
190
+ Details
191
+
192
+ `data-pip`
193
+
194
+
195
+
196
+ Description
197
+
198
+ Present when picture-in-picture mode is active.
199
+
200
+ `data-availability`
201
+
202
+ `'available' | 'unavailable' | 'unsupp...`
203
+
204
+
205
+
206
+ Description
207
+
208
+ Indicates picture-in-picture availability (`available` or `unsupported`).
209
+
210
+ Type
211
+
212
+ `'available' | 'unavailable' | 'unsupported'`
@@ -0,0 +1,224 @@
1
+ # PlayButton
2
+
3
+ Accessible play/pause button with keyboard support and customizable rendering
4
+
5
+ ## Anatomy
6
+
7
+ tsx
8
+
9
+ ```
10
+ <PlayButton />
11
+ ```
12
+
13
+ ## Behavior
14
+
15
+ PlayButton is a three-state button: **play** , **pause** , and **replay** . When media reaches the end (`ended` state), clicking restarts playback from the beginning.
16
+
17
+ ## Styling
18
+
19
+ Style with the `[data-paused]` and `[data-ended]` attributes to show/hide play/pause/replay icons based on state. For example:
20
+
21
+ React renders a `<button>` element. Add a `className` to style it:
22
+
23
+ css
24
+
25
+ ```
26
+ /* Paused (but not ended) */
27
+ .play-button[data-paused]:not([data-ended]) .play-icon { display: inline; }
28
+
29
+ /* Playing */
30
+ .play-button:not([data-paused]) .pause-icon { display: inline; }
31
+
32
+ /* Ended */
33
+ .play-button[data-ended] .replay-icon { display: inline; }
34
+ ```
35
+
36
+ After first play, the `data-started` attribute is added and remains present until a new source is loaded. Use this to hide the play button when media hasn’t started yet:
37
+
38
+ css
39
+
40
+ ```
41
+ /* Hide play button before first play */
42
+ .play-button:not([data-started]) .play-icon { display: none; }
43
+ ```
44
+
45
+ ## Accessibility
46
+
47
+ Renders a `<button>` element with an automatic `aria-label` that updates based on state: “Play”, “Pause”, or “Replay”. Override with the `label` prop (accepts a string or function). Keyboard activation: Enter / Space.
48
+
49
+ ## Examples
50
+
51
+ ### Basic Usage
52
+
53
+ Play
54
+
55
+ App.tsx
56
+
57
+ App.css
58
+
59
+ ```
60
+ import { createPlayer, PlayButton } from '@videojs/react';
61
+ import { Video, videoFeatures } from '@videojs/react/video';
62
+
63
+ const Player = createPlayer({ features: videoFeatures });
64
+
65
+ export default function BasicUsage() {
66
+ return (
67
+ <Player.Provider>
68
+ <Player.Container className="media-container">
69
+ <Video
70
+ src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/highest.mp4"
71
+ autoPlay
72
+ muted
73
+ playsInline
74
+ />
75
+ <PlayButton
76
+ className="media-play-button"
77
+ render={(props, state) => (
78
+ <button {...props}>{state.ended ? 'Replay' : state.paused ? 'Play' : 'Pause'}</button>
79
+ )}
80
+ />
81
+ </Player.Container>
82
+ </Player.Provider>
83
+ );
84
+ }
85
+ ```
86
+ ```
87
+ .media-container {
88
+ position: relative;
89
+ }
90
+
91
+ .media-container video {
92
+ width: 100%;
93
+ }
94
+
95
+ .media-play-button {
96
+ position: absolute;
97
+ bottom: 10px;
98
+ left: 10px;
99
+ padding-block: 8px;
100
+ padding-inline: 20px;
101
+ color: black;
102
+ cursor: pointer;
103
+ background: rgba(255, 255, 255, 0.7);
104
+ border: 1px solid rgba(255, 255, 255, 0.3);
105
+ border-radius: 9999px;
106
+ backdrop-filter: blur(10px);
107
+ }
108
+ ```
109
+
110
+ ## API Reference
111
+
112
+ ### Props
113
+
114
+ Prop
115
+
116
+ Type
117
+
118
+ Default
119
+
120
+ Details
121
+
122
+ `disabled`
123
+
124
+ `boolean`
125
+
126
+ `false`
127
+
128
+
129
+
130
+ Description
131
+
132
+ Whether the button is disabled.
133
+
134
+ `label`
135
+
136
+ `string | function`
137
+
138
+ `''`
139
+
140
+
141
+
142
+ Description
143
+
144
+ Custom label for the button.
145
+
146
+ Type
147
+
148
+ `string | ((state: PlayButtonState) => string)`
149
+
150
+ ### State
151
+
152
+ State is accessible via the `render`, `className`, and `style` props.
153
+
154
+ Property
155
+
156
+ Type
157
+
158
+ Details
159
+
160
+ `paused`
161
+
162
+ `boolean`
163
+
164
+
165
+
166
+ Description
167
+
168
+ Whether playback is paused.
169
+
170
+ `ended`
171
+
172
+ `boolean`
173
+
174
+
175
+
176
+ Description
177
+
178
+ Whether playback has reached the end.
179
+
180
+ `started`
181
+
182
+ `boolean`
183
+
184
+
185
+
186
+ Description
187
+
188
+ Whether playback has started (played or seeked).
189
+
190
+ `label`
191
+
192
+ `string`
193
+
194
+ ### Data attributes
195
+
196
+ Attribute
197
+
198
+ Type
199
+
200
+ Details
201
+
202
+ `data-paused`
203
+
204
+
205
+
206
+ Description
207
+
208
+ Present when the media is paused.
209
+
210
+ `data-ended`
211
+
212
+
213
+
214
+ Description
215
+
216
+ Present when the media has ended.
217
+
218
+ `data-started`
219
+
220
+
221
+
222
+ Description
223
+
224
+ Present when playback has started.